.process{position:relative;overflow:hidden;background:radial-gradient(circle at 50% 100%,rgba(98,29,32,.1),transparent 50%),#0b0706;color:#f7f2eb}
.process-inner{max-width:1440px;margin:0 auto;padding:140px 64px 120px}
.process-intro{text-align:center}
.process-eyebrow{display:flex;align-items:center;justify-content:center;gap:19px;margin:0 0 27px;color:#e6be78;font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}
.process-eyebrow span{width:48px;height:1px;background:rgba(230,190,120,.65)}
.process-intro h2{margin:0;font-family:"Iowan Old Style",Baskerville,"Palatino Linotype",Georgia,serif;font-size:clamp(4rem,5.5vw,6rem);font-weight:400;line-height:.94;letter-spacing:-.035em}
.process-intro h2 em,.process-cta h3 em{color:#e6be78;font-style:italic}
.process-description{max-width:720px;margin:26px auto 0;color:#b8aca3;font-size:18px;line-height:1.6}
.process-timeline{--line-progress:1;position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48px;margin:106px 0 0;padding:0;list-style:none}
.process-timeline::before,.process-timeline::after{content:"";position:absolute;z-index:0;top:33px;left:33px;right:33px;height:1px;pointer-events:none}
.process-timeline::before{background:rgba(230,190,120,.18)}
.process-timeline::after{background:linear-gradient(90deg,#c9964d,#e6be78);transform:scaleX(var(--line-progress));transform-origin:left;transition:transform 1.8s cubic-bezier(.22,.75,.22,1)}
.process-step{position:relative;min-width:0;padding-top:85px}
.process-number{position:absolute;top:-48px;left:-4px;color:rgba(247,242,235,.035);font-family:"Iowan Old Style",Baskerville,Georgia,serif;font-size:clamp(7rem,10vw,11rem);line-height:.7;pointer-events:none}
.process-point{position:absolute;z-index:1;top:0;left:0;display:grid;place-items:center;width:66px;height:66px;border:1px solid rgba(230,190,120,.45);border-radius:50%;background:#110907;color:#e6be78;transition:border-color .5s,box-shadow .5s,transform .4s}
.process-point svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.process-step.is-active .process-point{border-color:#e6be78;box-shadow:0 0 30px rgba(230,190,120,.1)}
.process-step-copy{transition:transform .35s}
.process-step h3{min-height:76px;margin:0 0 11px;font-family:"Iowan Old Style",Baskerville,"Palatino Linotype",Georgia,serif;font-size:clamp(1.8rem,2.45vw,2.25rem);font-weight:400;line-height:1.05;letter-spacing:-.02em;transition:color .35s}
.process-step p{max-width:245px;margin:0;color:#b8aca3;font-size:16px;line-height:1.55}
@media(hover:hover){.process-step:hover .process-point{border-color:#e6be78;box-shadow:0 0 30px rgba(230,190,120,.12)}.process-step:hover .process-step-copy{transform:translateY(-3px)}.process-step:hover h3{color:#e6be78}}
.process-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:60px;margin-top:104px;padding:44px 56px;border:1px solid rgba(230,190,120,.16);border-radius:24px;background:linear-gradient(135deg,rgba(63,28,18,.3),rgba(20,11,8,.5))}
.process-cta-eyebrow{margin:0 0 10px;color:#e6be78;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.process-cta h3{margin:0;font-family:"Iowan Old Style",Baskerville,"Palatino Linotype",Georgia,serif;font-size:clamp(2.8rem,4vw,4.4rem);font-weight:400;line-height:.98;letter-spacing:-.035em}
.process-cta-action{display:flex;flex-direction:column;align-items:center;gap:14px}
.process-cta-action a{display:inline-flex;align-items:center;justify-content:center;gap:17px;min-height:64px;padding:0 30px;border-radius:14px;background:#e6be78;color:#110907;font-size:13px;font-weight:700;text-transform:uppercase;white-space:nowrap;transition:transform .25s,background .25s,box-shadow .25s}
.process-cta-action a:hover{transform:translateY(-2px);background:#f0cb87;box-shadow:0 12px 35px rgba(230,190,120,.12)}
.process-cta-action a svg{width:23px;height:23px}.process-cta-action a span:last-child{font-size:22px;font-weight:400}
.process-cta-action p{margin:0;color:#a99e96;font-size:13px;text-align:center}
.process.js-ready .process-reveal,.process.js-ready .process-step-copy{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.process.js-ready .process-reveal.is-visible,.process.js-ready .process-step.is-active .process-step-copy{opacity:1;transform:translateY(0)}
@media(max-width:1100px){.process-inner{padding-right:40px;padding-left:40px}.process-timeline{gap:25px}.process-step h3{font-size:clamp(1.7rem,2.7vw,2.1rem)}.process-step p{font-size:15px}.process-cta{gap:35px;padding:38px}}
@media(max-width:850px){.process-inner{padding:100px 32px}.process-timeline{display:block;max-width:620px;margin:88px auto 0}.process-timeline::before,.process-timeline::after{top:33px;bottom:33px;left:32px;right:auto;width:1px;height:auto}.process-timeline::after{background:linear-gradient(#c9964d,#e6be78);transform:scaleY(var(--line-progress));transform-origin:top;transition:none}.process-step{display:grid;grid-template-columns:66px minmax(0,1fr);gap:22px;min-height:165px;padding:0 0 52px}.process-step:last-child{min-height:0;padding-bottom:0}.process-point{grid-column:1}.process-number{top:-30px;left:90px;font-size:8rem}.process-step-copy{grid-column:2;position:relative;z-index:1;padding-top:4px}.process-step h3{min-height:0;margin-bottom:9px;font-size:2rem}.process-step p{max-width:440px}.process-cta{grid-template-columns:1fr;gap:30px;margin-top:90px}.process-cta-action{align-items:stretch}.process-cta-action p{text-align:left}}
@media(max-width:600px){.process-inner{padding:90px 20px}.process-eyebrow{gap:10px;font-size:10px;letter-spacing:.14em}.process-eyebrow span{width:20px}.process-intro h2{font-size:clamp(3rem,12vw,4rem)}.process-description{font-size:16px}.process-timeline{margin-top:82px}.process-step{gap:20px;min-height:180px}.process-step h3{font-size:1.9rem}.process-step p{font-size:15px}.process-cta{margin-top:85px;padding:30px 23px}.process-cta h3{font-size:clamp(2.6rem,9vw,3.5rem)}.process-cta-action a{width:100%;gap:11px;padding:0 16px;font-size:11px}.process-cta-action a span:nth-child(2){flex:1}.process-cta-action p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.process-timeline::after,.process-point,.process-step-copy,.process-step h3,.process-cta-action a,.process.js-ready .process-reveal,.process.js-ready .process-step-copy{transition:none!important}.process.js-ready .process-reveal,.process.js-ready .process-step-copy{opacity:1;transform:none}.process-step:hover .process-step-copy,.process-cta-action a:hover{transform:none}}
