/* Keep sections together; ScrollTrigger pins their common main temporarily. */
html.has-scroll-hero,html:has([data-hero-scroll]){scroll-snap-type:none}
/* Pinning already controls the scroll geometry. Native anchoring and global
   smooth scrolling must not compensate again when the pin changes position.
   Explicit smooth navigation buttons continue to opt in to that behavior. */
html:has([data-hero-scroll]){scroll-behavior:auto;overflow-anchor:none}
html:has([data-hero-scroll]) body,html:has([data-hero-scroll]) .pin-spacer{overflow-anchor:none}
body:has([data-hero-scroll]){padding-top:122px}
body:has([data-hero-scroll]) header:not(.is-compact) .nav{height:122px;min-height:122px;padding-block:18px}
@media(min-width:761px){
 body:has([data-hero-scroll]) header .nav{transition:height .65s cubic-bezier(.22,1,.36,1),min-height .65s cubic-bezier(.22,1,.36,1),padding .65s cubic-bezier(.22,1,.36,1)}
 body:has([data-hero-scroll]) header .header-brand{transition:width .65s cubic-bezier(.22,1,.36,1),height .65s cubic-bezier(.22,1,.36,1),flex-basis .65s cubic-bezier(.22,1,.36,1)}
}
@media(prefers-reduced-motion:reduce){
 body:has([data-hero-scroll]) header .nav,body:has([data-hero-scroll]) header .header-brand{transition:none}
}
.hero-scroll{--hero-height:clamp(300px,32vw,450px);position:relative}
.hero-scroll .hero{height:var(--hero-height);min-height:0}
.hero-canvas-section .hero-art{inset:0;background:#fcf0e2;transform:none!important}
.hero-canvas-section .hero-art::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#fcf0e2ed,#fcf0e280 25%,transparent 52%);pointer-events:none}
.hero-canvas{display:block;width:100%;height:100%;opacity:0;pointer-events:none}
.is-frame-ready .hero-canvas{opacity:1}
.hero-canvas-section .hero-inner{z-index:1;padding-block:12px}
.hero-canvas-section .hero-copy{padding:10px 20px}
.hero-canvas-section h1{font-size:clamp(36px,3.6vw,52px)}
.hero-canvas-section .hero-copy p{font-size:clamp(17px,1.65vw,22px);margin-block:12px;line-height:1.25}
@media(max-width:760px){
 body:has([data-hero-scroll]){padding-top:104px}
 body:has([data-hero-scroll]) header:not(.is-compact) .nav{height:104px;min-height:104px;padding-block:15px}
 .hero-scroll{--hero-height:clamp(440px,calc(125vw - 40px),550px)}
 .hero-canvas-section .hero-art{inset:auto 0 0;height:auto;aspect-ratio:6028 / 2014}
 .hero-canvas-section .hero-art::after{display:none}
 .hero-canvas-section .hero-inner{padding-top:18px;align-items:flex-start}
 .hero-canvas-section .hero-copy{padding:8px 14px}
 .hero-canvas-section h1{font-size:clamp(34px,9vw,44px)}
 .hero-canvas-section .hero-copy p{font-size:17px;margin-block:10px;max-width:330px}
 .hero-canvas-section .hero-copy .button{font-size:17px;padding:10px 16px}
}
