/* Pass the Salt reference: a square film opens sideways, the brand exits,
   then the headline crosses the film edge. The video plane never scales. */
.salt-hero .header{transform:none!important;box-shadow:none;z-index:20}
.salt-hero .header.is-compact .brand-home{transform:none}
.salt-hero .hero-scene{height:300svh;min-height:0;margin-bottom:0;background:var(--warm)}
.salt-hero .hero{position:sticky;top:108px;height:calc(100svh - 108px);min-height:0;padding:0;display:block;background:var(--warm);isolation:isolate;overflow:hidden}
.salt-hero .hero-media{top:var(--film-top,32px);bottom:auto;width:100%;height:var(--film-size,65svh);z-index:2;transform:none;clip-path:inset(0 28%);overflow:hidden;background:var(--navy);will-change:clip-path}
.salt-hero .hero-media::after{content:'';position:absolute;inset:0;z-index:2;background:linear-gradient(0deg,#071b305c,transparent 40%);pointer-events:none}
.salt-hero .hero-film{transform:translateZ(0);z-index:1}
.salt-hero .hero-photo{object-position:center;z-index:0}
.salt-hero .hero-shade{display:none}
.hero-brand{position:absolute;bottom:26px;left:50%;width:calc(var(--film-size,65svh)*.97);z-index:3;transform:translateX(-50%);transform-origin:center bottom;will-change:transform,opacity;background:transparent;mix-blend-mode:screen;padding:5px 0;pointer-events:none}
.hero-brand-crop{position:relative;display:block;width:100%;aspect-ratio:200/48;overflow:hidden;mix-blend-mode:normal}
.hero-brand-crop img{position:absolute;width:137%;max-width:none;height:auto;left:-20%;top:-106.25%;filter:grayscale(1) invert(1) brightness(3) contrast(3)}
.salt-hero .hero-copy{position:absolute;left:48px;right:48px;width:auto;max-width:none;margin:0;z-index:1;will-change:transform}
.salt-hero .hero h1,.hero-scroll-title{font-family:Space,Inter,sans-serif;font-size:clamp(44px,6.1vw,92px);font-weight:700;line-height:.99;letter-spacing:-.045em;max-width:none;margin:0}
.salt-hero .hero h1 .headline-line,.salt-hero .hero h1 .headline-line>span{color:var(--navy)}
.salt-hero .hero .headline-line{overflow:visible;padding:0;margin:0}
.salt-hero .hero h1 .headline-line>span{transform:none!important}
.hero-scroll-title{position:absolute;left:48px;right:48px;z-index:4;color:var(--warm);pointer-events:none;will-change:transform}
.hero-scroll-title>span{display:block;white-space:nowrap}
.salt-hero .hero-bottom,.salt-hero .hero-copy .note{display:none}
.hero-context{position:absolute;bottom:26px;left:48px;margin:0;color:var(--secondary);font-size:10px;letter-spacing:.16em;z-index:5}
.salt-hero .hero-controls{position:absolute;bottom:15px;right:48px;left:auto;gap:12px;z-index:6}
.salt-hero .hero-controls button{color:var(--navy);background:var(--warm);border-color:#102a4340;min-height:36px;font-size:10px;padding:7px 10px}
.salt-hero .hero-controls button:hover{background:#e9e7e2}
.salt-hero .film-label{display:none}
.salt-hero .hero-scroll{bottom:26px;left:50%;transform:translateX(-50%);color:var(--navy);font-size:9px;gap:13px;z-index:5;white-space:nowrap}
.salt-hero .scroll-track{background:#102a4326;width:45px}
.salt-hero .photo-credit{display:none}
.salt-hero .manifesto{box-shadow:none;padding-top:100px;border-top:1px solid #102a4318}
.salt-hero .manifesto h2{max-width:22ch}
.salt-hero.motion-paused .hero-scene{height:auto}
.salt-hero.motion-paused .hero{position:relative;top:0}
.salt-hero.motion-paused .hero-scroll{display:none}
.salt-hero.motion-paused .hero-copy{transform:none!important}
@media(max-width:1199px){.salt-hero .hero-copy,.hero-scroll-title{left:32px;right:32px}.hero-context{left:32px}.salt-hero .hero-controls{right:32px}}
@media(max-width:900px){.salt-hero .hero{top:96px;height:calc(100svh - 96px)}.salt-hero .hero-scene{height:270svh}}
@media(max-width:767px){
 .salt-hero .hero-scene{height:230svh}
 .salt-hero .hero{top:96px;height:calc(100svh - 96px);min-height:0;padding:0}
 .salt-hero .hero-copy,.hero-scroll-title{left:16px;right:16px}
 .salt-hero .hero h1,.hero-scroll-title{font-size:clamp(24px,7.5vw,50px);line-height:1.04;letter-spacing:-.045em;max-width:none}
 .hero-brand{bottom:18px;padding-block:3px}
 .hero-context{left:16px;bottom:77px;font-size:8px}
 .salt-hero .hero-controls{left:16px;right:auto;bottom:20px;gap:8px}
 .salt-hero .hero-controls button{min-height:44px;font-size:10px}
 .salt-hero .hero-scroll{display:flex;bottom:36px;left:auto;right:16px;transform:none;font-size:8px}
 .salt-hero .hero-scroll .scroll-track{display:none}
 .salt-hero .manifesto{padding-top:72px}
}
@media(prefers-reduced-motion:reduce){
 .salt-hero .hero-scene{height:auto}
 .salt-hero .hero{position:relative;top:0}
 .salt-hero .hero-scroll,.hero-brand,.hero-context{display:none}
 .salt-hero .hero-media,.salt-hero .hero-copy,.hero-scroll-title{will-change:auto}
}

/* Keep native video out of clipped/transformed compositor layers. The outer
   frame changes width; the film itself stays at a constant pixel size. */
.salt-hero .hero-media{clip-path:none;will-change:auto;backface-visibility:visible;transform:none!important;isolation:isolate}
.salt-hero .hero-film,.salt-hero .hero-photo{width:var(--film-plane-width,100vw);max-width:none;left:50%;right:auto;margin-left:calc(var(--film-plane-width,100vw)*-.5);transform:none!important;backface-visibility:visible;will-change:auto}

/* The video edge sits between the headline lines: white over film, navy below. */
.salt-hero .hero-copy{z-index:3}
.salt-hero .hero h1{background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.salt-hero .hero h1 .headline-line,.salt-hero .hero h1 .headline-line>span{color:transparent;-webkit-text-fill-color:transparent}
.hero-baseline{display:inline-block;width:0;height:0;padding:0;margin:0;vertical-align:baseline}
