.process-section .section-inner{max-width:var(--maxw);margin:0 auto;position:relative;z-index:1}.process-section .section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:2.5px;color:#8a2c0a;margin-bottom:16px;display:inline-block}@keyframes plane-drift{0%,to{transform:translate(-50%) translateY(0) rotate(-9deg)}50%{transform:translate(-50%) translateY(-26px) rotate(-1deg)}}.process-section{position:relative;background:linear-gradient(180deg,var(--cream) 0%,#FAF0E6 55%,#F8EADD 100%)}.process-section .section-inner{position:relative;z-index:1}.process-balloon{position:absolute;top:-34px;left:50%;width:clamp(170px,20vw,260px);height:auto;opacity:.98;z-index:2;pointer-events:none;transform:translate(-50%) rotate(-9deg);animation:plane-drift 7s ease-in-out infinite;filter:drop-shadow(0 18px 28px color-mix(in srgb,var(--ink) 20%,transparent))}@media (max-width:900px){.process-balloon{width:130px;top:-22px}}@media (prefers-reduced-motion:reduce){.process-balloon{animation:none!important}}.process-section{background:var(--cream-dark);overflow:visible;padding:var(--section-y) var(--gutter)}.process-section h2{font-family:var(--font-display);font-size:var(--step-4);line-height:1.06;font-weight:400;color:var(--dark);margin-bottom:20px}.process-section h2 em{font-style:normal;color:var(--accent)}.process-deco{position:absolute;left:0;right:0;bottom:0;z-index:0;height:clamp(96px,12vw,160px);pointer-events:none}.process-deco svg{display:block;width:100%;height:100%}.process-deco path{fill:none;stroke:color-mix(in srgb,var(--ink) 9%,transparent);stroke-width:1.5;vector-effect:non-scaling-stroke}.process-section .section-label{color:#8a2c0a}.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:56px}.process-closer{margin:44px auto 0;max-width:640px;text-align:center;font-family:"DM Serif Display",Georgia,serif;font-size:clamp(19px,2.3vw,23px);line-height:1.35;color:var(--dark)}.process-closer em{font-style:italic;color:var(--orange-dark)}.process-step{display:flex;flex-direction:column;gap:14px;position:relative}.process-step:after{content:"";position:absolute;top:34px;right:-20px;width:40px;height:1px;background:var(--border)}.process-step:last-child:after{display:none}.step-ill{width:68px;height:68px;color:var(--dark)}.step-ill svg{width:100%;height:100%;display:block;overflow:visible}.step-ill svg [stroke]{vector-effect:non-scaling-stroke}.step-ill .accent{stroke:var(--orange)}.step-ill .dot{fill:var(--orange);stroke:none;transform-box:fill-box}@keyframes ill-type{0%,55%,to{transform:translateY(0);opacity:.5}28%{transform:translateY(-3px);opacity:1}}.step-ill .dot{animation:ill-type 1.5s ease-in-out infinite}.step-ill .d2{animation-delay:.2s}.step-ill .d3{animation-delay:.4s}@keyframes ill-write{0%,to{transform:translate(0) rotate(0)}30%{transform:translate(.7px,-.5px) rotate(2deg)}65%{transform:translate(.4px,.6px) rotate(-2deg)}}.step-ill .pencil{animation:ill-write 1.9s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@keyframes ill-fly{0%,to{transform:translate(0)}50%{transform:translate(3.5px,-3.5px)}}.step-ill .plane{animation:ill-fly 2.4s ease-in-out infinite}@keyframes ill-zoom{0%,to{opacity:.2}50%{opacity:1}}.step-ill .zoom{animation:ill-zoom 2.4s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.step-ill .dot,.step-ill .pencil,.step-ill .plane,.step-ill .zoom{animation:none!important}}.step-row{display:flex;align-items:center;gap:14px}.step-num{width:34px;height:34px;background:var(--orange);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:"DM Serif Display",Georgia,serif;font-size:15px;font-weight:400;color:var(--white);flex-shrink:0}.step-title{font-family:Inter,system-ui,sans-serif;font-size:18px;font-weight:700;color:var(--dark)}.step-desc{font-size:14px;color:var(--warm-gray);line-height:1.6}.step-num{transition:transform .3s cubic-bezier(.2,.7,.2,1),background .3s ease}.process-step:hover .step-num{transform:scale(1.09)}@media (max-width:720px){.process-steps{grid-template-columns:1fr!important;gap:26px;margin-top:34px}.process-step:after{display:none}.process-closer{margin-top:30px}}
