@font-face{font-family:FilmSans;src:url('../assets/fonts/ibm-plex-sans-latin.woff2') format('woff2');font-weight:100 900;font-display:swap}@font-face{font-family:FilmDisplay;src:url('../assets/fonts/barlow-condensed-600.woff2') format('woff2');font-weight:600;font-display:swap}
:root{--ink:#fff;--navy:#0e1a33;--red:#af2736;--cream:#eeede8}*{box-sizing:border-box}html{scroll-behavior:auto;background:var(--navy)}body{margin:0;font-family:FilmSans,Arial,sans-serif;color:#fff;background:var(--navy)}button,a,input{ -webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:7px}button{cursor:pointer}::selection{background:#af2736;color:white}.film-skip{position:fixed;top:8px;left:8px;z-index:100;background:white;color:#0e1a33;padding:12px;transform:translateY(-150%)}.film-skip:focus{transform:none}
.film-header{position:fixed;z-index:30;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:28px 4vw;color:var(--ink);pointer-events:none}.film-header>*{pointer-events:auto}.film-brand{display:flex;gap:10px;align-items:center;font-weight:600;font-size:17px;letter-spacing:-.025em;line-height:1}.film-brand img{object-fit:contain;width:31px;height:42px}.film-brand small{display:block;letter-spacing:.3em;font-size:8px;margin-top:7px}.film-header>p{font-size:9px;letter-spacing:.15em;margin:0 0 0 5vw}.film-header nav{display:flex;gap:36px;align-items:center;font-size:12px}.film-header nav a{display:flex;gap:25px;align-items:center}.film-header nav a>span{font-size:19px}.film-header .talk-link{border:1px solid color-mix(in srgb,currentColor 35%,transparent);padding:12px 18px;backdrop-filter:none}
.film-scroll{height:1080svh;position:relative}.film-stage{height:100svh;position:sticky;top:0;overflow:hidden;background:#070f1d;color:var(--ink);isolation:isolate}#parts-film,.film-fallback,.film-shade,.film-grain{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}#parts-film{display:block}.film-fallback{background:#0e1a33;z-index:-1}.film-fallback img{width:85%;position:absolute;right:-10%;top:20%;mix-blend-mode:luminosity;opacity:.25}.film-shade{background:linear-gradient(180deg,#050c1619,transparent 25%,transparent 75%,#050c1620);z-index:2}.film-grain{z-index:3;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 150 150' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.65' d='M0 0h150v150H0z'/%3E%3C/svg%3E");background-size:150px 150px}
.chapter-copy{position:absolute;z-index:6;left:6vw;top:24%;max-width:83%;pointer-events:none;will-change:opacity,transform}.chapter-copy[hidden]{display:none}.chapter-copy a{pointer-events:auto;font-size:12px;display:inline-flex;align-items:center;gap:50px;padding:11px 0;border-bottom:1px solid color-mix(in srgb,currentColor 45%,transparent)}.chapter-copy a:hover{border-bottom-color:currentColor}.chapter-copy a>span{font-size:22px}.chapter-label{font-size:9px;letter-spacing:.19em;margin:0 0 25px;font-weight:500}.chapter-copy h1,.chapter-copy h2{font:600 clamp(64px,10.5vw,172px)/.85 FilmDisplay,Impact,sans-serif;letter-spacing:-.025em;margin:0;white-space:nowrap}.chapter-copy h1 span{color:transparent;-webkit-text-stroke:1px #ffffffb0}.chapter-description{font-size:14px;line-height:1.65;margin:30px 0 15px}.opening-copy{margin-top:35px;display:flex;align-items:center;gap:9vw}.opening-copy p{font-size:14px;line-height:1.6;margin:0}.chapter-copy[data-chapter="0"]{top:23%}.chapter-copy[data-chapter="1"]{top:27%;left:7vw}.chapter-copy[data-chapter="1"] h2{font-size:clamp(78px,11vw,174px)}.chapter-copy[data-chapter="2"]{top:22%}.chapter-copy[data-chapter="2"] h2{font-size:clamp(65px,8.6vw,142px)}.chapter-copy[data-chapter="3"]{top:24%}.chapter-copy[data-chapter="4"]{top:26%;left:0;width:100%;max-width:none;text-align:center}.chapter-copy[data-chapter="4"] h2{font-size:clamp(90px,11vw,172px)}.chapter-copy[data-chapter="4"] .chapter-description{margin-top:25px}.chapter-copy[data-chapter="4"] a{gap:50px}
.chapter-rail{position:absolute;z-index:10;right:2.2vw;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:7px}.chapter-rail button{border:0;background:none;color:inherit;display:flex;justify-content:flex-end;align-items:center;position:relative;min-width:35px;min-height:34px;padding:7px}.chapter-rail button i{height:18px;width:2px;background:currentColor;opacity:.3;display:block}.chapter-rail button[aria-current="step"] i{height:28px;opacity:1}.chapter-rail button span{opacity:0;position:absolute;right:34px;white-space:nowrap;font-size:9px;text-transform:uppercase;letter-spacing:.1em;background:#0e1a33cc;color:white;padding:7px 9px;pointer-events:none}.chapter-rail button:hover span,.chapter-rail button:focus-visible span{opacity:1}
.film-footer{position:absolute;z-index:8;bottom:30px;left:4vw;right:4vw;display:flex;justify-content:space-between;align-items:center;gap:30px;color:inherit}.scroll-directive{font-size:8px;letter-spacing:.15em;display:flex;align-items:center;gap:14px;white-space:nowrap}.scroll-directive>b{font-size:23px;line-height:1;font-weight:300}.film-caption{font-size:8px;letter-spacing:.11em;max-width:42%;text-align:center;line-height:1.6}.chapter-progress{width:95px;height:1px;background:color-mix(in srgb,currentColor 25%,transparent);display:block}.chapter-progress i{display:block;height:1px;width:100%;background:currentColor;transform:scaleX(0);transform-origin:0 50%}
.film-contact{background:#0e1a33;color:#fff;padding:105px 6vw 0;position:relative;z-index:4;scroll-margin-top:60px}.contact-topline{display:flex;justify-content:space-between;gap:25px;font-size:9px;letter-spacing:.13em;padding-bottom:60px;border-top:1px solid #ffffff30;padding-top:25px}.film-contact h2{font:600 clamp(75px,14vw,215px)/.86 FilmDisplay,Impact,sans-serif;letter-spacing:-.03em;margin:0}.film-contact h2 em{font-style:normal;color:transparent;-webkit-text-stroke:1px #ffffff80}.contact-detail{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:end;padding:60px 0 80px}.contact-detail>p{font-size:18px;line-height:1.7;font-weight:300;margin:0}.contact-detail>div>a{font-size:clamp(18px,2.7vw,37px);padding:22px 0;border-bottom:1px solid #ffffff36;display:flex;align-items:center;gap:25px;letter-spacing:-.04em}.contact-detail a small{font-size:8px;letter-spacing:.13em;width:45px;color:#aeb8c8}.contact-detail a>span{margin-left:auto;font-size:24px}.future-line{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid #ffffff36;border-bottom:1px solid #ffffff36;padding:24px 0}.future-line>a{display:flex;align-items:center;gap:30px}.future-line img{width:170px;height:95px;object-fit:cover}.future-line a>span{display:flex;flex-direction:column;gap:11px}.future-line small{font-size:8px;letter-spacing:.1em;color:#afbacb}.future-line strong{font-size:25px;font-weight:400;letter-spacing:-.02em}.future-line span>span{font-size:11px}.future-line>p{font-size:11px;line-height:1.7;color:#afbacb}.film-contact footer{padding:30px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;color:#b0bbcc}.no-script-message{position:absolute;bottom:100px;left:6vw;font-size:14px;z-index:25}
@media(max-width:900px){.film-header>p{display:none}.film-header nav{gap:24px}.chapter-copy h1{font-size:12vw}.chapter-copy[data-chapter="2"] h2{font-size:10vw}.film-caption{max-width:42%;font-size:7px}.contact-detail{gap:25px}.contact-detail>p{font-size:15px}.future-line>p{max-width:190px}.future-line strong{font-size:21px}}
@media(max-width:600px){.film-scroll{height:1000svh}.film-header{padding:19px 5vw}.film-brand{font-size:14px;gap:8px}.film-brand img{width:26px;height:35px}.film-brand small{font-size:7px;margin-top:6px}.film-header nav{gap:16px;font-size:10px}.film-header nav a{gap:13px}.film-header nav a>span{font-size:15px}.film-header .talk-link{padding:9px 11px}.chapter-copy{left:7vw;top:24%;max-width:87%}.chapter-label{font-size:7px;letter-spacing:.11em;margin-bottom:20px;line-height:1.6;max-width:280px}.chapter-copy h1,.chapter-copy h2{font-size:19.4vw}.chapter-copy h1 span{-webkit-text-stroke:.65px #ffffffb0}.chapter-copy[data-chapter="0"]{top:24%}.opening-copy{display:block;margin-top:30px}.opening-copy p{font-size:12px;margin-bottom:11px}.chapter-copy a{font-size:10px;gap:50px}.chapter-copy a>span{font-size:18px}.chapter-copy[data-chapter="1"]{top:21%}.chapter-copy[data-chapter="1"] h2{font-size:22vw}.chapter-copy[data-chapter="2"]{top:20%}.chapter-copy[data-chapter="2"] h2{font-size:16.3vw}.chapter-copy[data-chapter="3"]{top:19%}.chapter-copy[data-chapter="3"] h2{font-size:21vw}.chapter-description{font-size:11px;margin:24px 0 8px;line-height:1.6}.chapter-copy[data-chapter="4"]{top:31%;padding:0 7vw}.chapter-copy[data-chapter="4"] h2{font-size:23vw}.chapter-copy[data-chapter="4"] .chapter-label{max-width:none}.chapter-copy[data-chapter="4"] .chapter-description{font-size:11px}.chapter-rail{right:1%;gap:1px;top:54%}.chapter-rail button{min-height:27px;padding:6px;min-width:27px}.chapter-rail button i{height:12px}.chapter-rail button[aria-current="step"] i{height:22px}.film-footer{bottom:21px;left:6vw;right:6vw;gap:12px;align-items:end;flex-wrap:wrap}.scroll-directive{font-size:7px;gap:10px}.film-caption{font-size:6px;max-width:52%;text-align:right}.chapter-progress{position:absolute;left:0;right:0;bottom:-9px;width:100%;opacity:.5}.film-contact{padding:85px 7vw 0;scroll-margin-top:55px}.contact-topline{font-size:7px;padding-bottom:44px;line-height:1.6}.contact-topline span:last-child{max-width:160px;text-align:right}.film-contact h2{font-size:20vw}.contact-detail{grid-template-columns:1fr;gap:27px;padding:35px 0 45px}.contact-detail>p{font-size:13px}.contact-detail>div>a{font-size:25px;padding:19px 0}.contact-detail a small{font-size:7px;width:35px}.future-line{display:block}.future-line>a{gap:15px}.future-line img{width:100px;height:83px}.future-line a>span{gap:8px}.future-line small{font-size:6px;letter-spacing:.05em}.future-line strong{font-size:20px}.future-line span>span{font-size:10px}.future-line>p{max-width:none;font-size:10px;margin:18px 0 0}.film-contact footer{font-size:8px;flex-wrap:wrap;gap:20px;line-height:1.5}.film-contact footer span{order:3;flex-basis:100%}.film-contact footer>a:last-child{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.film-scroll{height:100svh}.film-contact{padding-top:65px}}
@media(max-width:600px){.chapter-copy h1{font-size:18.4vw}.chapter-copy[data-chapter="3"] h2{font-size:20vw}.chapter-rail button span{display:none}.film-header nav a{min-height:38px}}

@media(max-width:600px){.chapter-copy[data-chapter="1"]{top:17%}.chapter-copy[data-chapter="1"] .chapter-description{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}.chapter-copy[data-chapter="1"]>a{margin-top:19px}}
@media(max-width:600px) and (max-height:740px){.chapter-copy[data-chapter="0"]{top:17%}.chapter-copy[data-chapter="0"] .opening-copy{margin-top:22px}.chapter-copy[data-chapter="1"]{top:13%}.chapter-copy[data-chapter="1"] h2{font-size:19vw}}

/* Brand refinement: the approved type and compositions remain the foundation. */
.film-header .talk-link{background:#af2736;color:#fff;border-color:#af2736;padding:13px 19px;box-shadow:0 4px 24px #af27361a}
.film-header .talk-link:hover{background:#c13445;border-color:#c13445}
.chapter-label{display:flex;align-items:center;gap:11px}.chapter-label::before{content:"";width:23px;height:2px;background:#af2736;flex:0 0 23px}
.chapter-copy[data-chapter="4"] .chapter-label{justify-content:center}
.chapter-copy a{border-bottom-color:#bf3a4b}.chapter-copy a>span{color:#de7f8c}.chapter-copy a:hover>span{color:inherit}
body[data-scene="protection"] .chapter-copy a>span,body[data-scene="collection"] .chapter-copy a>span{color:#af2736}
.chapter-rail button[aria-current="step"] i{background:#d45063}
.chapter-progress i{background:#d45063;height:2px}


.film-contact h2 em{-webkit-text-stroke:1px #d96d7d}.contact-topline{border-top-color:#af2736}
.contact-detail>div>a:hover,.supplier-line>a:hover{color:#e89aa5}
.supplier-line{border-top:1px solid #ffffff36;border-bottom:1px solid #ffffff36;padding:27px 0;display:flex;justify-content:space-between;align-items:center;gap:24px}
.supplier-line>span{font-size:9px;letter-spacing:.14em;color:#b8c2d2}.supplier-line>a{font-size:16px;display:flex;align-items:center;gap:60px}.supplier-line>a>span{color:#df7989;font-size:22px}
@media(max-width:600px){.film-header .talk-link{padding:9px 11px}.chapter-label{gap:8px}.chapter-label::before{width:16px;flex-basis:16px}.supplier-line{padding:24px 0;gap:20px}.supplier-line>span{font-size:7px;max-width:135px;line-height:1.6}.supplier-line>a{font-size:12px;gap:15px}}

.film-caption{margin-left:auto;text-align:right}

.film-grain{opacity:.015}
@media(max-width:600px){.chapter-copy[data-chapter="2"] h2{font-size:14vw}}

.film-contact{scroll-margin-top:0}.film-contact h2 em{color:#d56879;-webkit-text-stroke:0}

/* Keep portrait tablets composed as a complete studio, with room for the parts. */
@media(min-width:601px) and (max-width:900px) and (max-aspect-ratio:8/9){
 .chapter-copy{left:7vw;max-width:87%}.chapter-label{font-size:9px;margin-bottom:22px}
 .chapter-copy[data-chapter="0"]{top:16%}.chapter-copy h1{font-size:15.2vw}.opening-copy{display:block;margin-top:24px}.opening-copy p{margin-bottom:10px}
 .chapter-copy[data-chapter="1"]{top:14%}.chapter-copy[data-chapter="1"] h2{font-size:17vw}.chapter-copy[data-chapter="1"] .chapter-description{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}.chapter-copy[data-chapter="1"]>a{margin-top:24px}
 .chapter-copy[data-chapter="2"]{top:15%}.chapter-copy[data-chapter="2"] h2{font-size:13.8vw}.chapter-copy[data-chapter="3"]{top:15%}.chapter-copy[data-chapter="3"] h2{font-size:17vw}
 .chapter-copy[data-chapter="4"]{top:29%}.chapter-copy[data-chapter="4"] h2{font-size:19vw}
}
@media(max-width:600px){.chapter-rail{right:0;gap:0}.chapter-rail button{min-height:40px;min-width:40px;padding:9px 12px}.film-header{column-gap:14px}}
@media(max-width:360px){.film-header nav>a:first-child>span{display:none}.film-header nav{gap:11px}.film-brand{font-size:13px;gap:7px}.film-header .talk-link{padding:9px 10px}.contact-detail>div>a{font-size:22px;gap:14px}}
.film-still .film-scroll{height:100svh}.film-still .chapter-rail{display:flex}.film-still .scroll-directive{visibility:visible}.film-still .chapter-rail button[aria-current="step"] span{display:block;opacity:1}.film-still .chapter-progress{display:none}
.film-contact footer .motion-version{white-space:nowrap}
@media(max-width:600px){.film-contact footer .motion-version{margin-left:0}}

.chapter-copy h1 span em{font-style:normal;color:#d56879;-webkit-text-stroke:0}

/* Scroll sets every transition value; there is no timed tail after input stops. */
.film-header{background:linear-gradient(180deg,var(--header-wash,transparent),transparent)}
.chapter-copy{color:#fff}
.chapter-copy[data-chapter="2"],.chapter-copy[data-chapter="4"]{color:#0e1a33}
.chapter-copy[data-chapter="2"] a>span,.chapter-copy[data-chapter="4"] a>span{color:#af2736}

/* The cached incoming scene blends on the compositor instead of through a
   second full-frame canvas draw. Values are set only by scroll; no CSS tween. */
.film-transition{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;transform-origin:0 0;will-change:transform,opacity;z-index:1}
#parts-film{transform:translateZ(0)}
