/* Connected monochrome exhibition. All imagery and motion stay inside the brand world. */
:root{--exhibition-ease:cubic-bezier(.16,1,.3,1)}
html{scroll-padding-top:132px}
.prelaunch{--press:0 -.5px .5px #0005,0 1px .6px #fff;--brass:#555}
.prelaunch::-webkit-scrollbar-thumb{background:#777}
.prelaunch .masthead{grid-template-columns:1fr 250px 1fr;height:122px;color:#111;background:#f5f5f2;border-color:#d0d0ca;text-shadow:none;mix-blend-mode:normal;padding-inline:4%}
.prelaunch .masthead .brand-lockup{gap:10px;max-width:none}
.prelaunch .masthead .brand-monogram{width:62px;height:66px}
.prelaunch .masthead .brand-wordmark{width:250px;height:auto;max-height:none}
.prelaunch .masthead .brand-lockup img{filter:none}
.prelaunch-home .masthead{position:fixed;inset:0 0 auto;z-index:30;transition:background .3s,color .3s;border:0;box-shadow:0 1px 0 #0001}
.prelaunch-home.is-film-top .masthead{color:#fff;background:linear-gradient(#0006,transparent);box-shadow:none}
.prelaunch-home.is-film-top .masthead .brand-lockup img{filter:brightness(0) invert(1)}
.prelaunch .masthead nav{gap:26px}.prelaunch .masthead nav a{font-size:11px}
.prelaunch .masthead .launch-status{font-size:10px}
.placeholder-open .placeholder-brand{gap:14px}.placeholder-open .placeholder-brand img:first-child{width:76px;height:81px}.placeholder-open .placeholder-brand img:last-child{width:280px;height:auto;max-width:78vw}
.placeholder-open .coming-placeholder{padding-top:28px;background-size:448px}
.placeholder-open .placeholder-centre{padding-block:24px}
.placeholder-open .placeholder-centre h1{font-size:clamp(34px,3.4vw,50px)}
.placeholder-open .folded-frame{height:clamp(245px,50svh,560px)}
/* One continuous film-to-paper transformation, driven by native scroll. */
.perspective-film{position:relative;height:240svh;--story:0;--reveal:0;--intro:1;--frame:0;--film:1;--lift:0px;--scale:1;--controls:1}
.film-sticky{position:sticky;top:0;height:100svh;min-height:680px;overflow:hidden;background:#f5f5f2;background-image:var(--paper);background-size:448px;isolation:isolate;text-shadow:none}
.film-window{position:absolute;inset:0;clip-path:inset(calc(var(--frame)*17%) calc(var(--frame)*6%) calc(var(--frame)*12%) calc(var(--frame)*52%));background:#111;will-change:clip-path;overflow:hidden}
.film-window>:is(img,video){position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:64% 42%;filter:grayscale(1)}
.film-window .campaign-film{opacity:var(--film);transform:scale(var(--scale));will-change:opacity}
.film-story-still{opacity:var(--story);object-position:68% 40%!important}
.film-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0009,transparent 85%),linear-gradient(0deg,#0006,transparent 70%);opacity:var(--intro)}
.film-intro-copy{position:absolute;left:7%;bottom:21%;opacity:var(--intro);transform:translateY(var(--lift));will-change:opacity,transform;color:#fff;z-index:2;pointer-events:none}
.film-intro-copy h1{font-size:clamp(44px,5.7vw,82px);line-height:1.12;letter-spacing:-.035em;max-width:800px;color:#fff}
.film-intro-copy>p{font-size:13px;margin-top:30px}
.film-story-copy{position:absolute;top:50%;left:7%;width:39%;transform:translateY(-41%);opacity:var(--reveal);pointer-events:none}
.film-story-copy.is-readable{pointer-events:auto}
.film-story-copy h2{font-size:clamp(36px,4vw,57px);line-height:1.18;text-shadow:var(--press)}
.film-story-copy p{font-size:12px;line-height:1.9;margin-top:22px}.film-story-copy p:first-of-type{font-size:14px;margin-top:28px}
.film-story-copy .text-link{margin-top:32px}
.film-bottom{position:absolute;bottom:30px;left:4%;right:4%;display:flex;justify-content:space-between;align-items:center;gap:24px;color:#fff;font-size:10px;opacity:var(--controls);z-index:3}
.film-bottom button{font-size:11px;min-height:44px;padding:10px 0;color:inherit;text-decoration:underline;text-underline-offset:5px}
.film-scroll{display:flex;align-items:center;gap:20px;min-height:44px}.film-scroll span{display:block;height:1px;width:80px;background:#fff;transform-origin:left;transform:scaleX(calc(1 - var(--frame)*.8))}
.film-sticky a:focus-visible,.film-sticky button:focus-visible{outline-color:currentColor}
.thought-interlude{padding:90px 6% 130px;text-align:center}.thought-interlude h2{font-size:clamp(30px,3.2vw,46px);line-height:1.28}.thought-interlude p{font-size:12px;margin:30px auto 0}
/* Product: a generous single stage; explanations point the camera rather than decorating cards. */
.prelaunch .frame-inspection{padding:75px 4% 65px;background:#e9eae7;scroll-margin-top:122px;border-block:1px solid #d1d2cd}
.inspection-heading{align-items:start;margin-bottom:0;padding-inline:1%}.inspection-heading h2{font-size:clamp(40px,4.4vw,64px)}
.inspection-heading>p{font-size:11px;text-align:right;line-height:1.9;color:#40403b;padding-top:8px}
.inspection-layout{grid-template-columns:240px minmax(0,1fr) 160px;gap:18px}
.frame-explainer{padding-top:25px;align-self:center;position:relative;z-index:2}
.frame-explainer h3{font-size:23px;line-height:1.35;letter-spacing:-.03em;margin-bottom:40px}
.frame-detail{min-height:56px;font-size:12px;align-items:center;padding:15px 0;border-top:1px solid #aeb1aa;transition:opacity .2s}
.frame-detail:last-child{border-bottom:1px solid #aeb1aa}.frame-detail svg{flex-shrink:0;transition:transform .4s var(--exhibition-ease)}
.frame-detail.is-active svg{transform:rotate(45deg)}.frame-detail:hover{opacity:.6}
.frame-explainer [data-feature-copy]{min-height:128px;font-size:12px;line-height:1.85;margin-top:24px;color:#41413c;padding:0}
.frame-explainer .reference-photo{font-size:10px;margin-top:15px}
.inspection-centre{position:relative}.frame-viewer{height:580px;overflow:hidden}
.frame-viewer canvas{filter:grayscale(1);transition:filter .5s}.frame-viewer.original-colour canvas{filter:none}
.viewer-hint{bottom:8px;font-size:10px;color:#41413c}.frame-hotspots{position:absolute;inset:0;z-index:3;pointer-events:none;transition:opacity .25s}
.frame-hotspots.is-hidden{opacity:0;visibility:hidden}
.frame-hotspot{position:absolute;width:44px;height:44px;border:1px solid #fff;background:#f7f7f2df;display:grid;place-items:center;pointer-events:auto;border-radius:50%;box-shadow:0 3px 12px #0002;transition:background .2s,transform .3s}
.frame-hotspot:hover,.frame-hotspot[aria-pressed=true]{background:#111;color:#fff;border-color:#111;transform:scale(1.08)}
.hotspot-brow{left:29%;top:37%}.hotspot-lens{left:59%;top:47%}.hotspot-temple{left:77%;top:40%}
.angle-readout{gap:18px;margin-top:7px}.angle-readout input{width:180px}.angle-readout span{font-size:10px;color:#45453f;min-width:34px}
.view-controls{gap:0}.view-controls button{border:0;border-bottom:1px solid #b8bbb3;min-width:52px;padding:10px 12px;font-size:10px}
.view-controls button[aria-pressed=true]{background:#111;color:#fff}
.zoom-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:13px;font-size:10px;color:#41413c}.zoom-controls button{font-size:10px;min-height:44px;padding:8px 0;text-underline-offset:5px;text-decoration:underline}.zoom-controls button:disabled{opacity:.4;cursor:default}
.zoom-controls [data-frame-colour]{border-left:1px solid #b5b6ae;padding-left:18px}
.model-disclosure{font-size:10px;line-height:1.75;max-width:480px;margin-top:13px;color:#50514b}
.inspection-note{align-self:center;padding-top:95px}.inspection-note>p:first-child{font-size:15px;line-height:1.6;margin-top:0;margin-bottom:36px}.inspection-note .button{font-size:10px;background:transparent;color:#111;border:1px solid #9da096;padding-inline:12px}.inspection-note .button:hover{background:#111;color:#fff}.inspection-note .save-note{font-size:10px;min-height:38px;margin:14px 0 8px}.inspection-note .text-link{font-size:10px}
/* An image archive with real spatial exploration, plus an accessible linear index. */
.perspective-archive{padding:110px 4% 32px;background:#f5f5f2;background-image:var(--paper);background-size:448px;color:#111;text-shadow:none;scroll-margin-top:122px}
.archive-heading{display:grid;grid-template-columns:1.3fr 1fr auto;align-items:end;gap:40px;margin-bottom:56px}.archive-heading h2{font-size:clamp(36px,4.4vw,64px);line-height:1.15;text-shadow:var(--press)}
.archive-heading p{font-size:11px;line-height:1.8}.archive-instruction{margin-top:12px;color:#52524c}.archive-mode{font-size:11px;min-height:44px;padding:10px 0;border-bottom:1px solid #111}
.archive-shell{position:relative;border:1px solid #a9aba4;overflow:hidden}
.archive-viewport{height:660px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#90928b transparent;cursor:grab;touch-action:pan-x pan-y;position:relative;outline-offset:-5px}
.archive-viewport.is-dragging{cursor:grabbing;user-select:none;scroll-behavior:auto}
.archive-world{width:1800px;height:1170px;position:relative}
.archive-portrait{position:absolute;left:var(--px);top:var(--py);width:var(--pw);margin:0;transition:filter .4s}
.archive-portrait button{display:block;width:100%;padding:0;text-align:left;overflow:hidden;cursor:zoom-in;position:relative}
.archive-portrait img{width:100%;height:var(--ph);object-fit:cover;object-position:50% 30%;filter:grayscale(1);pointer-events:none;transition:transform .8s var(--exhibition-ease);user-select:none}
.archive-portrait button:hover img{transform:scale(1.035)}
.archive-portrait figcaption{font-size:10px;line-height:1.6;margin-top:13px;display:flex;gap:18px}.archive-portrait figcaption>span{color:#5e5e57}
.archive-perimeter{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.archive-perimeter>span{position:absolute;background:#111;transition:transform .12s,opacity .12s;opacity:.45}
.perimeter-top{height:2px;width:23%;left:17%;top:0}.perimeter-bottom{height:2px;width:31%;right:13%;bottom:0}.perimeter-left{width:2px;height:18%;left:0;top:24%}.perimeter-right{width:2px;height:24%;right:0;top:58%}
.archive-shell.is-shifting .perimeter-top{transform:translateX(72%);opacity:1}.archive-shell.is-shifting .perimeter-bottom{transform:translateX(-45%);opacity:1}.archive-shell.is-shifting .perimeter-left{transform:translateY(120%)}.archive-shell.is-shifting .perimeter-right{transform:translateY(-100%)}
.archive-footer{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:20px;font-size:10px}.archive-footer>div{display:flex;gap:14px}.archive-footer button{display:grid;place-items:center;width:50px;min-height:44px;border:1px solid #b9bbb3}.archive-footer button:hover{background:#111;color:#fff;border-color:#111}
.perspective-archive.is-index .archive-viewport{height:auto;overflow:visible;cursor:auto}
.perspective-archive.is-index .archive-world{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:55px 30px;width:auto;height:auto;padding:40px}
.perspective-archive.is-index .archive-portrait{position:relative;left:auto;top:auto;width:auto}.perspective-archive.is-index .archive-portrait img{height:auto;aspect-ratio:4/5;object-fit:cover}.perspective-archive.is-index .archive-footer>div{display:none}
/* Selected portraits keep the whole photograph visible, with product access. */
.portrait-dialog{width:100vw;max-width:none;height:100svh;max-height:none;margin:0;border:0;padding:24px 4%;background:#101010;color:#fff;overflow:auto;text-shadow:none}
.portrait-dialog::backdrop{background:#101010}.portrait-dialog[open]{display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.portrait-dialog-top{display:flex;justify-content:space-between;align-items:center;font-size:11px}.portrait-dialog-top button{font-size:11px;min-height:44px;color:#fff;text-decoration:underline;text-underline-offset:5px}
.portrait-dialog-media{display:grid;grid-template-columns:100px minmax(0,1fr) 100px;align-items:center;gap:30px;min-height:0;flex:1}
.portrait-dialog-media img{width:100%;height:100%;max-height:calc(100svh - 220px);object-fit:contain;filter:grayscale(1)}
.portrait-dialog-media button{min-height:44px;font-size:11px;color:#fff;text-decoration:underline;text-underline-offset:5px}
.portrait-dialog footer{display:flex;justify-content:space-between;align-items:end;gap:30px}.portrait-dialog h2{font-size:clamp(24px,3vw,38px);margin-top:10px;line-height:1.2}.portrait-dialog footer span{font-size:10px;color:#c6c6c0}.portrait-dialog footer a{font-size:11px}.portrait-dialog button:focus-visible,.portrait-dialog a:focus-visible{outline-color:white}
body.portrait-open{overflow:hidden}
.exhibition-close{display:grid;grid-template-columns:1fr 1fr;padding:100px 7% 120px;gap:10%;align-items:center}
.closing-photo{height:600px;overflow:hidden}.closing-photo img{height:100%;width:100%;object-fit:cover;object-position:50% 30%;filter:grayscale(1)}
.closing-copy h2{font-size:clamp(34px,3.6vw,51px);line-height:1.2}.closing-copy p{font-size:12px;margin-top:28px}.closing-copy .button{margin-top:35px;font-size:11px}
@media(min-width:1700px){.frame-viewer{height:690px}.inspection-layout{grid-template-columns:270px minmax(0,1fr) 190px;gap:30px}.frame-explainer h3{font-size:27px}}
@media(max-width:1100px){.prelaunch .masthead{grid-template-columns:1fr 220px 1fr}.prelaunch .masthead .brand-wordmark{width:220px}.prelaunch .masthead nav{gap:18px}.inspection-layout{grid-template-columns:200px minmax(0,1fr)}.inspection-note{grid-column:1/-1;padding:20px 0 0;display:flex;gap:24px;align-items:center;justify-content:center}.inspection-note>p:first-child{display:none}.inspection-note .button{width:auto;min-width:160px}.inspection-note .save-note{max-width:200px;min-height:0;margin:0}.inspection-note .text-link{white-space:nowrap}.frame-viewer{height:530px}.frame-explainer h3{font-size:21px}.archive-heading{grid-template-columns:1fr 1fr;gap:25px}.archive-mode{justify-self:end;grid-column:2;grid-row:1}.archive-heading>div{grid-row:2;grid-column:1/-1}.archive-heading h2{grid-column:1;grid-row:1}.exhibition-close{gap:7%;padding-inline:5%}.closing-photo{height:480px}}
@media(max-width:700px){
 html{scroll-padding-top:112px}.prelaunch .masthead{height:112px;padding-inline:22px;grid-template-columns:1fr 210px 1fr;gap:6px}.prelaunch .masthead .brand-monogram{width:55px;height:58px}.prelaunch .masthead .brand-wordmark{width:210px}.prelaunch .masthead .brand-lockup{gap:10px}.prelaunch .masthead nav{gap:0}.prelaunch .masthead nav a{display:none}.prelaunch .masthead .mobile-menu{display:block;font-size:10px;padding-block:14px}.prelaunch .masthead .launch-status{font-size:9px;max-width:44px;line-height:1.6;text-align:right}.placeholder-open .placeholder-brand img:first-child{width:66px;height:70px}.placeholder-open .placeholder-brand img:last-child{width:265px}.placeholder-open .folded-frame{height:clamp(245px,48svh,500px)}
 .perspective-film{height:260svh}.film-sticky{min-height:650px}.film-window{clip-path:inset(calc(var(--frame)*56%) calc(var(--frame)*6%) calc(var(--frame)*7%) calc(var(--frame)*34%))}.film-window>:is(img,video){object-position:63% 45%}.film-intro-copy{left:7%;bottom:25%;right:5%}.film-intro-copy h1{font-size:clamp(37px,8.2vw,56px);line-height:1.17}.film-intro-copy>p{font-size:11px;margin-top:23px}.film-story-copy{left:7%;top:19%;width:86%;transform:none}.film-story-copy h2{font-size:clamp(28px,7.6vw,40px);line-height:1.17}.film-story-copy p{font-size:10px;line-height:1.75;margin-top:12px}.film-story-copy p:first-of-type{font-size:11px;margin-top:16px}.film-story-copy .text-link{font-size:10px;margin-top:17px}.film-bottom{bottom:24px;left:7%;right:7%;font-size:9px}.film-caption{display:none}.film-scroll{gap:13px}.film-scroll span{width:36px}.film-bottom button{font-size:10px}
 .thought-interlude{padding:75px 7% 85px}.thought-interlude h2{font-size:28px;line-height:1.3}.thought-interlude p{font-size:10px;margin-top:25px}
 .prelaunch .frame-inspection{padding:48px 6% 45px;scroll-margin-top:112px}.inspection-heading{display:block}.inspection-heading h2{font-size:40px}.inspection-heading>p{text-align:left;margin-top:15px;font-size:10px}.inspection-layout{display:flex;flex-direction:column;gap:0}.inspection-centre{width:100%;order:0}.frame-explainer{order:1;width:100%;padding-top:40px;display:grid;grid-template-columns:1fr;gap:0}.frame-explainer h3{font-size:26px;margin-bottom:25px}.frame-explainer [data-feature-copy]{min-height:90px;font-size:11px;margin-top:22px}.frame-explainer .reference-photo{justify-self:start;margin-top:4px}.feature-list{width:100%}.frame-detail{font-size:11px;min-height:54px}.frame-viewer{height:390px;margin-top:5px;margin-inline:-6%;width:112%}.viewer-hint{font-size:9px}.frame-hotspot{width:44px;height:44px}.hotspot-brow{left:23%;top:39%}.hotspot-lens{left:62%;top:47%}.hotspot-temple{left:82%;top:39%}.view-controls button{padding-inline:10px;min-width:43px;font-size:9px}.angle-readout input{width:140px}.zoom-controls{gap:14px;font-size:9px}.zoom-controls button{font-size:9px}.zoom-controls [data-frame-colour]{padding-left:12px}.model-disclosure{font-size:9px;max-width:310px;margin-top:8px}.inspection-note{order:2;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:32px;padding:0;justify-content:start}.inspection-note .button{min-width:0;justify-self:start;width:100%}.inspection-note .save-note{font-size:9px;max-width:none;grid-row:2;grid-column:1/-1}.inspection-note .text-link{justify-self:end}
 .perspective-archive{padding:65px 6% 25px;scroll-margin-top:112px}.archive-heading{gap:20px;margin-bottom:30px}.archive-heading h2{font-size:30px}.archive-heading>div{font-size:10px}.archive-heading p{font-size:10px}.archive-mode{font-size:10px}.archive-instruction{margin-top:6px}.archive-viewport{height:560px}.archive-world{width:1260px;height:820px}.archive-portrait{left:calc(var(--px)*.7);top:calc(var(--py)*.7);width:calc(var(--pw)*.7)}.archive-portrait img{height:calc(var(--ph)*.7)}.archive-portrait figcaption{font-size:9px;gap:10px;margin-top:10px}.archive-footer{font-size:9px;align-items:start}.archive-footer>p{max-width:170px}.archive-footer>div{gap:8px}.archive-footer button{width:44px}.perspective-archive.is-index .archive-world{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px;gap:28px 14px}.perspective-archive.is-index .archive-portrait figcaption{font-size:8px;gap:6px}
 .portrait-dialog{padding:16px 5% 22px}.portrait-dialog-top{font-size:10px}.portrait-dialog-top button{font-size:10px}.portrait-dialog-media{grid-template-columns:1fr 1fr;gap:8px}.portrait-dialog-media img{grid-row:1;grid-column:1/-1;height:calc(100svh - 265px);max-height:none}.portrait-dialog-media button{grid-row:2;font-size:10px}.portrait-dialog-media button:first-child{justify-self:start}.portrait-dialog-media button:last-child{justify-self:end}.portrait-dialog footer{align-items:start;gap:20px}.portrait-dialog h2{font-size:24px}.portrait-dialog footer a{font-size:10px;max-width:100px;text-align:right}.portrait-dialog footer span{font-size:9px}
 .exhibition-close{grid-template-columns:1fr;padding:65px 7% 75px;gap:40px}.closing-photo{height:460px}.closing-copy h2{font-size:34px}.closing-copy p{font-size:11px}.closing-copy .button{font-size:10px;margin-top:28px}
}
@media(max-width:360px){.prelaunch .masthead{grid-template-columns:1fr 185px 1fr;padding-inline:15px}.prelaunch .masthead .brand-wordmark{width:185px}.prelaunch .masthead .launch-status{font-size:8px}.film-story-copy h2{font-size:27px}.film-story-copy p{font-size:9px}.zoom-controls{gap:9px}.archive-heading h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.prelaunch-home .masthead{transition:none}.perspective-film{height:auto}.film-sticky{position:relative;height:auto;min-height:0;overflow:visible;padding-top:100svh}.film-window{clip-path:none;height:100svh;bottom:auto}.film-window .campaign-film{display:none}.film-intro-copy{bottom:auto;top:40svh;opacity:1;transform:none}.film-story-copy{position:relative;inset:auto;width:auto;max-width:700px;padding:70px 7%;transform:none;opacity:1;pointer-events:auto}.film-story-still{display:none}.film-shade{opacity:1}.film-bottom{top:calc(100svh - 70px);bottom:auto}.film-bottom [data-film-pause]{display:none}.film-scroll span{transform:none}.archive-perimeter>span,.archive-portrait img,.frame-hotspot{transition:none}.thought-interlude{padding-top:40px}}

/* The interface is monochrome. Photographs retain their natural full colour. */
.prelaunch img:not([src$=".svg"]):not(.model-fallback){filter:none}
.prelaunch .model-fallback,.prelaunch .frame-viewer canvas,.film-window .campaign-film{filter:none}
.archive-viewport{overscroll-behavior-x:contain;overscroll-behavior-y:auto}
/* Readable original lettering: size the writing for its actual cap height. */
.prelaunch .masthead{grid-template-columns:1fr 310px 1fr}
.prelaunch .masthead .brand-wordmark{width:310px;max-width:none}
.placeholder-open .placeholder-brand img:last-child{width:336px;max-width:86vw}
@media(max-width:900px) and (min-width:701px){.prelaunch .masthead nav{gap:15px}.prelaunch .masthead nav a{font-size:10px}.prelaunch .masthead{padding-inline:3%;grid-template-columns:1fr 290px 1fr}.prelaunch .masthead .brand-wordmark{width:290px}}
@media(max-width:700px){.prelaunch .masthead{grid-template-columns:1fr 210px 1fr}.prelaunch .masthead .brand-wordmark{width:300px}.prelaunch .masthead .brand-lockup{width:300px}.placeholder-open .placeholder-brand img:last-child{width:336px;max-width:86vw}}
@media(max-width:360px){.prelaunch .masthead{grid-template-columns:1fr 185px 1fr}.prelaunch .masthead .brand-wordmark,.prelaunch .masthead .brand-lockup{width:270px}}
/* The still resizes into the revealed aperture, keeping the face in view on narrow screens. */
.film-window>.film-story-still{inset:calc(var(--frame)*17%) calc(var(--frame)*6%) calc(var(--frame)*12%) calc(var(--frame)*52%);width:calc(100% - var(--frame)*58%);height:calc(100% - var(--frame)*29%);object-position:65% 30%!important}
@media(max-width:700px){.film-window>.film-story-still{inset:calc(var(--frame)*56%) calc(var(--frame)*6%) calc(var(--frame)*7%) calc(var(--frame)*34%);width:calc(100% - var(--frame)*40%);height:calc(100% - var(--frame)*63%);object-position:65% 30%!important}}

.static-frame .frame-detail:disabled{opacity:1;cursor:default;font-weight:400;color:#45453e}
.static-frame .frame-detail:disabled:hover{opacity:1}
.static-frame .model-fallback{padding:12%;mix-blend-mode:multiply}
/* Product imagery is always fully contained; no square cover crop can cut the temples. */
.prelaunch .product-page{grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);gap:5%;padding-inline:4%}
.prelaunch .main-product-image{background:#efefec;overflow:visible;display:flex;align-items:center;justify-content:center;min-height:340px}
.prelaunch .main-product-image img{width:100%;height:auto;max-height:660px;aspect-ratio:auto;object-fit:contain;object-position:center}
.prelaunch .thumbs img{object-fit:contain;background:#efefec}
/* Fine cotton stock runs through the identity; offset highlights make the ink feel pressed. */
.prelaunch .masthead{background-color:#f5f5f2;background-image:var(--paper);background-size:448px}
.prelaunch .brand-lockup img,.placeholder-brand img{filter:drop-shadow(0 -0.65px .35px #0007) drop-shadow(.4px 1px .35px #fff)!important;image-rendering:auto}
.prelaunch .masthead .brand-wordmark{height:24px;object-fit:contain}
.prelaunch .masthead .brand-monogram{filter:drop-shadow(0 -.7px .3px #0008) drop-shadow(.4px 1px .4px #fff)!important}
.prelaunch-home.is-film-top .masthead{background-image:linear-gradient(#0007,transparent)}
.prelaunch-home.is-film-top .brand-lockup img{filter:brightness(0) invert(1) drop-shadow(0 1px 1px #0005)!important}
.placeholder-open .placeholder-brand img:last-child{height:26px;object-fit:contain}
@media(max-width:700px){.prelaunch .product-page{display:block;padding:24px 5% 50px}.prelaunch .main-product-image{min-height:220px}.prelaunch .main-product-image img{max-height:480px}.prelaunch .masthead .brand-wordmark{height:23px}.placeholder-open .placeholder-brand img:last-child{height:26px}}
.video-stage{background:#f7f7f8;overflow:hidden}.product-turntable{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;transform-origin:50% 50%;transition:transform .5s cubic-bezier(.16,1,.3,1)}
.video-stage .frame-hotspots{display:none}.video-stage .viewer-hint{background:#f7f7f8dd;padding:5px 10px}.video-stage.turntable-failed .product-turntable{display:none}
/* Continuous cotton stock and a visible pressed impression across pale surfaces. */
.prelaunch .frame-inspection,.prelaunch .video-stage,.prelaunch .main-product-image{background-color:#f5f5f2;background-image:var(--paper);background-size:448px}
.prelaunch .product-turntable{mix-blend-mode:multiply}
.prelaunch .video-stage .viewer-hint{background:transparent;text-shadow:var(--press)}
.prelaunch .frame-inspection :is(h2,h3,.frame-detail,.inspection-note>p),.prelaunch .brand-lockup{--press:0 1.2px .5px #fff,0 -.65px .4px #0006;text-shadow:var(--press)}
.prelaunch .brand-lockup img,.prelaunch .masthead .brand-monogram,.placeholder-open .placeholder-brand img{filter:drop-shadow(.2px 1.2px .35px #fff)!important}
.prelaunch-home.is-film-top .brand-lockup img{filter:brightness(0) invert(1) drop-shadow(0 1px 1px #0005)!important}
/* Campaign editorial: whole looks and real settings, with a readable linear journey. */
.campaign-gallery{padding:110px 5% 65px;scroll-margin-top:122px;background:#f5f5f2 var(--paper);background-size:448px}
.shoot-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;align-items:end;padding-bottom:55px}.shoot-heading h2{font-size:clamp(38px,4.8vw,68px);line-height:1.16}.shoot-heading>div{justify-self:end;padding-bottom:4px}.shoot-heading p{font-size:12px;line-height:1.9}.shoot-heading .shoot-total{font-size:10px;color:#50504a;margin-top:22px}
.shoot-toolbar{display:flex;justify-content:space-between;align-items:center;gap:25px;border-block:1px solid #b9bbb2;margin-bottom:50px;padding-block:8px;text-shadow:none}.shoot-filters{display:flex;gap:30px}.shoot-toolbar button{font-size:11px;min-height:44px;padding:10px 0;color:#4f5048}.shoot-toolbar button[aria-pressed=true]{color:#111;text-decoration:underline;text-underline-offset:8px}.shoot-toolbar button:hover{color:#111}
.shoot-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:65px 35px;align-items:start}
.shoot-image{margin:0;min-width:0;grid-column:span 6}.shoot-image button{display:block;padding:0;width:100%;cursor:zoom-in;overflow:hidden;background:#e8e8e3}
.shoot-image img{display:block;width:100%;height:auto;max-height:none;filter:none;transition:transform .9s cubic-bezier(.16,1,.3,1)}
.shoot-image button:hover img{transform:scale(1.015)}
.shoot-wide{grid-column:1/-1;margin-top:30px}.shoot-wide:first-child{margin-top:0}.shoot-tall{grid-column:span 7}.shoot-small{grid-column:span 5;padding:100px 6% 0}
.shoot-small+.shoot-tall{grid-column:span 7}.shoot-image figcaption{display:flex;justify-content:space-between;gap:15px;font-size:10px;line-height:1.7;margin-top:15px;text-shadow:none}.shoot-image figcaption>span:last-child{color:#57584f;white-space:nowrap}
.shoot-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:65px;font-size:11px}.shoot-footer .text-link{font-size:11px}
.campaign-gallery.is-contact-sheet .shoot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:35px 22px}.campaign-gallery.is-contact-sheet .shoot-image{grid-column:auto;padding:0;margin:0}.campaign-gallery.is-contact-sheet .shoot-image button{height:270px;background:transparent;display:flex;align-items:center;justify-content:center}.campaign-gallery.is-contact-sheet img{width:100%;height:100%;object-fit:contain}.campaign-gallery.is-contact-sheet figcaption{font-size:9px;display:block}.campaign-gallery.is-contact-sheet figcaption>span{display:block}
@media(max-width:1000px){.shoot-filters{gap:22px}.shoot-grid{gap:45px 22px}.shoot-small{padding-top:60px;padding-inline:0}.shoot-image figcaption{display:block}.shoot-image figcaption>span{display:block}.campaign-gallery.is-contact-sheet .shoot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.campaign-gallery{padding:65px 6% 45px;scroll-margin-top:112px}.shoot-heading{display:block;padding-bottom:28px}.shoot-heading h2{font-size:36px;line-height:1.2}.shoot-heading>div{margin-top:24px}.shoot-heading p{font-size:11px}.shoot-heading .shoot-total{margin-top:14px;font-size:10px}.shoot-toolbar{align-items:start;gap:10px;margin-bottom:28px;padding-block:5px}.shoot-filters{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.shoot-toolbar button{font-size:10px;text-align:left}.shoot-toolbar>[data-shoot-layout]{white-space:nowrap}.shoot-grid{display:block}.shoot-image,.shoot-tall,.shoot-small,.shoot-wide{padding:0;margin:0 0 34px}.shoot-image figcaption{display:flex;font-size:9px;gap:12px;margin-top:12px}.shoot-small{width:78%;margin-left:auto;margin-block:45px}.shoot-wide{width:calc(100% + 12.8%);max-width:none;margin-left:-6.4%;margin-bottom:36px}.shoot-wide figcaption{padding-inline:6%}.shoot-footer{padding-top:15px;font-size:10px}.shoot-footer .text-link{font-size:10px}.campaign-gallery.is-contact-sheet .shoot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.campaign-gallery.is-contact-sheet .shoot-image{width:auto;max-width:100%}.campaign-gallery.is-contact-sheet .shoot-image button{height:230px}.campaign-gallery.is-contact-sheet .shoot-image figcaption{padding:0;display:block;font-size:8px}.campaign-gallery.is-contact-sheet .shoot-image figcaption>span{white-space:normal}}
@media(prefers-reduced-motion:reduce){.shoot-image img{transition:none}.shoot-image button:hover img{transform:none}}
/* Match cuts: photographs stay still; only their scene changes. */
.hero-matchcut{position:absolute;inset:0;opacity:var(--film);overflow:hidden;isolation:isolate}
.hero-matchcut .matchcut-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 45%;opacity:0;transition:opacity .12s linear;filter:none!important;transform:none}
.hero-matchcut .matchcut-frame.is-current{opacity:1}
.matchcut-controls{display:flex;align-items:center;gap:24px}.matchcut-dots{display:flex;gap:5px}.matchcut-dots button{min-width:35px;min-height:44px;position:relative;border:0;padding:10px}.matchcut-dots button::after{content:"";position:absolute;left:9px;right:9px;top:22px;height:2px;background:#ffffff60}.matchcut-dots button[aria-pressed=true]::after{background:#fff}
.film-intro-copy{bottom:17%;max-width:40%}.film-intro-copy h1{font-size:clamp(38px,4.5vw,65px)}
@media(max-width:700px){.film-intro-copy{bottom:19%;max-width:85%}.film-intro-copy h1{font-size:clamp(33px,8vw,48px)}.matchcut-controls{gap:10px}.matchcut-dots{gap:0}.matchcut-dots button{min-width:25px;padding:5px}.matchcut-dots button::after{left:5px;right:5px}.film-bottom [data-film-pause]{font-size:9px}.hero-matchcut .matchcut-frame{object-position:62% 45%}}
@media(prefers-reduced-motion:reduce){.hero-matchcut{opacity:1}.hero-matchcut .matchcut-frame{transition:none}.film-bottom [data-film-pause]{display:none}.film-intro-copy{max-width:85%}}
.hero-matchcut .matchcut-frame{transform-origin:63% 52.6%}
.hero-matchcut .matchcut-frame:nth-child(2){transform:translate(-.4%,2.1%) scale(.968)}
.hero-matchcut .matchcut-frame:nth-child(3){transform:translate(.1%,4.9%) scale(1.098)}
@media(max-width:700px){.hero-matchcut{top:15%;bottom:auto;height:52%;background:#111}.film-window:has(.hero-matchcut){background:#111}.hero-matchcut .matchcut-frame{object-position:63% 52.6%}.film-intro-copy{top:71%;bottom:auto;left:7%;max-width:86%}.film-intro-copy h1{font-size:29px;line-height:1.15}.film-intro-copy h1 br{display:none}.film-intro-copy>p{font-size:10px;margin-top:15px}}
.film-window:has(.hero-matchcut)>.film-poster{opacity:0}
@media(max-width:700px){.hero-matchcut .matchcut-frame{object-position:76% 52.6%}.film-window:has(.hero-matchcut) .film-shade{background:linear-gradient(0deg,#0005,transparent 65%)}.film-intro-copy{top:72%}.film-intro-copy h1{font-size:29px;line-height:1.2}}
.hero-matchcut{background:#111 url('/brand/hero-hand-v7.jpg') 62% 45%/cover no-repeat}
@media(max-width:700px){.hero-matchcut{background-image:url('/brand/hero-hand-v7.jpg');background-position:76% 52.6%;background-size:cover}}
/* Edge-only feather hides registration padding; it never touches the eyewear. */
.hero-matchcut .matchcut-frame:nth-child(2){mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent),linear-gradient(to bottom,transparent,#000 5%,#000 95%,transparent);mask-composite:intersect}
.hero-matchcut{background:#111}
.hero-matchcut::before{content:"";position:absolute;inset:-35px;background:url('/brand/hero-hand-v7.jpg') 62% 45%/cover no-repeat;filter:blur(28px);z-index:-1}
@media(max-width:700px){.hero-matchcut{background-image:none}.hero-matchcut::before{background-position:76% 52.6%}}
/* Purpose-made tall scenes fill mobile; photographic content sits behind the lettering. */
.hero-matchcut{inset:0;height:100%;background:#111}
.hero-matchcut::before{display:none}
.hero-matchcut .matchcut-frame{inset:0;width:100%;height:100%;display:block;transform:none!important;mask:none!important;transition:opacity 40ms linear;object-fit:initial}
.hero-matchcut .matchcut-frame img{width:100%;height:100%;object-fit:cover;object-position:63% 45%;display:block;filter:none;transform:none}
.hero-matchcut .matchcut-frame[data-scene=hand]{transform:translate(-.4%,2.1%) scale(.968)!important}
.hero-matchcut .matchcut-frame[data-scene=face]{transform:translate(.1%,4.9%) scale(1.098)!important}
.hero-matchcut .matchcut-frame[data-scene=hand] img{object-fit:cover}
.scene-picker select{appearance:none;color:white;background:#1116;border:1px solid #fff6;padding:10px 12px;min-height:44px;font-size:10px;max-width:210px;text-shadow:none;cursor:pointer}.scene-picker option{color:#111;background:#f5f5f2}
.matchcut-controls{gap:16px}.matchcut-controls>[data-match-step]{font-size:10px;min-height:44px}.film-bottom .film-caption{display:none}.film-bottom{gap:20px}
@media(max-width:700px){.hero-matchcut{top:0;bottom:0;height:100%;inset:0}.hero-matchcut .matchcut-frame img{object-position:50% 43%}.hero-matchcut .matchcut-frame[data-scene=hand],.hero-matchcut .matchcut-frame[data-scene=face]{transform:none!important}.film-window:has(.hero-matchcut) .film-shade{background:linear-gradient(0deg,#000b,transparent 52%),linear-gradient(180deg,#0008,transparent 24%)}.film-intro-copy{top:auto;bottom:20%;left:7%;max-width:86%;right:7%}.film-intro-copy h1{font-size:clamp(30px,8.6vw,40px);line-height:1.17}.film-intro-copy>p{font-size:11px;margin-top:20px}.film-bottom{bottom:18px;flex-wrap:wrap;gap:8px;left:7%;right:7%}.film-scroll{min-height:35px;font-size:9px}.film-scroll span{width:30px}.matchcut-controls{width:100%;justify-content:space-between;gap:8px}.scene-picker select{max-width:165px;padding:8px;font-size:9px}.matchcut-controls>[data-match-step]{font-size:9px}.film-bottom [data-film-pause]{font-size:9px;white-space:nowrap}.matchcut-controls label{flex:0 1 auto}}
@media(prefers-reduced-motion:reduce){.hero-matchcut .matchcut-frame{transition:none}.film-intro-copy{top:40svh;bottom:auto}.film-bottom{top:calc(100svh - 130px);bottom:auto}}
/* Reset prior three-shot calibration; each responsive image has its own framing. */
.hero-matchcut .matchcut-frame[data-scene]{transform:none!important;mask:none!important}
.hero-matchcut .matchcut-frame img{image-rendering:auto;object-position:63% 45%}
@media(max-width:700px){.hero-matchcut .matchcut-frame img{object-position:50% 43%}.film-intro-copy{bottom:20%;top:auto;text-shadow:0 2px 12px #0007}.film-intro-copy h1{font-size:clamp(30px,8vw,40px);line-height:1.18}.film-window:has(.hero-matchcut) .film-shade{background:linear-gradient(0deg,#000b 0%,#0006 25%,transparent 57%),linear-gradient(180deg,#0008,transparent 24%)}}
/* Eyewear leads: large face crops remove outfit storytelling. */
.shoot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 36px}
.shoot-image,.shoot-tall,.shoot-small,.shoot-wide{grid-column:auto;padding:0;margin:0}
.shoot-image button{aspect-ratio:4/5}.shoot-image img{height:100%;width:100%;object-fit:cover;object-position:50% 24%}
.shoot-image:nth-child(5) img{object-position:50% 19%;transform:scale(1.24);transform-origin:50% 27%}
.shoot-image:nth-child(6) img,.shoot-image:nth-child(8) img,.shoot-image:nth-child(9) img{transform:scale(1.5);transform-origin:50% 26%}
.shoot-image:nth-child(7) img{transform:scale(1.2);transform-origin:50% 28%}
.shoot-image button:hover img{filter:brightness(1.025)}
@media(max-width:700px){.shoot-grid{display:grid;grid-template-columns:1fr;gap:35px}.shoot-image,.shoot-tall,.shoot-small,.shoot-wide{width:100%;margin:0;padding:0}.shoot-image figcaption{padding:0}.shoot-heading h2{font-size:37px}.shoot-image button{aspect-ratio:4/5}}
.campaign-gallery.is-contact-sheet .shoot-image img{object-fit:contain;transform:none!important}
@media(max-width:700px){.hero-matchcut .matchcut-frame{isolation:isolate}.hero-matchcut .matchcut-frame::before{content:"";position:absolute;inset:-30px;background-image:var(--mobile-scene);background-position:50% 43%;background-size:cover;filter:blur(25px);z-index:-1}.hero-matchcut .matchcut-frame img{object-fit:contain;object-position:center;mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 88%,transparent)}.scene-picker select{max-width:155px}.matchcut-controls{gap:7px}}
/* Eyewear exhibition: one photograph commands the room; the strip is its index. */
.campaign-gallery{background:#101010;color:#fff;text-shadow:none;padding:90px 5% 65px}
.shoot-heading{grid-template-columns:1fr 1fr;padding-bottom:32px;align-items:end}
.shoot-heading h2{font-size:clamp(36px,4vw,58px);line-height:1.15}
.shoot-heading h2 br:last-child{display:none}
.shoot-heading .shoot-total,.shoot-heading p{color:#d4d4ce}
.shoot-toolbar{border-color:#ffffff40;margin-bottom:28px}
.shoot-toolbar button{color:#d4d4ce}.shoot-toolbar button:hover,.shoot-toolbar button[aria-pressed=true]{color:#fff}
.gallery-stage{position:relative;min-height:670px;height:76svh;max-height:960px;background:#171717;overflow:hidden}
.gallery-open{display:block;width:100%;height:100%;padding:0;cursor:zoom-in}
.gallery-open img{display:block;width:100%;height:100%;object-fit:contain;object-position:62% center}
.gallery-stage-caption{position:absolute;left:3%;bottom:70px;max-width:210px;pointer-events:none;text-shadow:0 2px 12px #0009}
.gallery-stage-caption p{font-size:11px;color:#ddd;margin-bottom:16px;font-variant-numeric:tabular-nums}
.gallery-stage-caption h3{font-size:28px;line-height:1.25;letter-spacing:-.025em;color:#fff}
.gallery-stage-caption button{pointer-events:auto;margin-top:22px;color:#fff;min-height:44px;font-size:11px}
.gallery-stage-controls{position:absolute;left:3%;right:3%;bottom:12px;display:flex;justify-content:space-between;pointer-events:none}
.gallery-stage-controls button{pointer-events:auto;color:#fff;min-height:44px;padding:10px 0;font-size:11px;text-decoration:underline;text-underline-offset:6px}
.campaign-gallery .shoot-grid{display:flex;gap:12px;overflow-x:auto;padding:20px 2px 10px;scrollbar-color:#777 #171717;scroll-snap-type:x proximity}
.campaign-gallery .shoot-image{flex:0 0 100px;width:100px;margin:0;padding:0;scroll-snap-align:start}
.campaign-gallery .shoot-image[hidden]{display:none}
.campaign-gallery .shoot-image button{aspect-ratio:4/5;border:2px solid transparent;opacity:.55;cursor:pointer;padding:3px;background:transparent;transition:opacity .2s}
.campaign-gallery .shoot-image button[aria-pressed=true]{border-color:#fff;opacity:1}
.campaign-gallery .shoot-image button:hover{opacity:1}
.campaign-gallery .shoot-image img{transform:none;object-fit:cover;object-position:50% 24%;filter:none}
.campaign-gallery .shoot-image:nth-child(n) img{transform:none}
.campaign-gallery .shoot-image figcaption{display:none}
.shoot-footer{padding-top:30px;color:#ddd}.shoot-footer a{color:#fff}
.campaign-gallery :is(button,a):focus-visible{outline:2px solid #fff;outline-offset:4px}
.campaign-gallery.is-contact-sheet .gallery-stage{display:none}
.campaign-gallery.is-contact-sheet .shoot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px 22px;overflow:visible}
.campaign-gallery.is-contact-sheet .shoot-image{width:auto}
.campaign-gallery.is-contact-sheet .shoot-image button{height:auto;aspect-ratio:4/5}
.campaign-gallery.is-contact-sheet .shoot-image figcaption{display:block;color:#fff}
.campaign-gallery.is-contact-sheet .shoot-image figcaption span:last-child{color:#ccc}
/* The scroll reveal uses a close face study, never the old outfit photograph. */
.film-window .film-story-still{object-fit:cover;object-position:50% 35%!important;filter:none}
/* Closing photographic sequence: stationary product, full-bleed image, one clear action. */
.exhibition-close{position:relative;display:block;padding:0;height:100svh;min-height:700px;max-height:1200px;overflow:hidden;background:#111;color:#fff;text-shadow:none;isolation:isolate}
.closing-scenes,.closing-scene{position:absolute;inset:0;width:100%;height:100%}
.closing-scene{opacity:0;transition:opacity 80ms linear}
.closing-scene.is-current{opacity:1}
.closing-scene img{display:block;width:100%;height:100%;object-fit:cover;object-position:63% 45%;filter:none}
.exhibition-close::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000d,transparent 76%);pointer-events:none}
.closing-copy{position:absolute;left:7%;right:7%;bottom:17%;z-index:1;max-width:730px}
.closing-copy h2{font-size:clamp(38px,4.3vw,64px);line-height:1.15;letter-spacing:-.03em;color:#fff;text-shadow:0 2px 12px #0006}
.closing-copy p{font-size:14px;line-height:1.7;margin-top:24px;color:#fff}
.closing-copy .button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;width:290px;min-height:60px;padding:18px 24px;background:#fff;color:#111;border:1px solid #fff;margin-top:28px;font-size:12px;text-shadow:none;transition:background .2s,color .2s}
.closing-copy .button:hover{background:#111;color:#fff}
.closing-copy .button:focus-visible{outline:2px solid white;outline-offset:6px}
.closing-availability{display:block;font-size:11px;color:#eee;margin-top:16px}
.closing-sequence-controls{position:absolute;z-index:1;bottom:28px;left:7%;right:7%;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;font-variant-numeric:tabular-nums;color:#fff}
.closing-sequence-controls button{min-height:44px;font-size:11px;color:#fff;text-decoration:underline;text-underline-offset:6px}
@media(max-width:1000px){.gallery-stage-caption{max-width:170px}.gallery-stage-caption h3{font-size:24px}.gallery-open img{object-position:right center}}
@media(max-width:700px){
 .campaign-gallery{padding:55px 6% 40px}.shoot-heading{padding-bottom:24px}.shoot-heading h2{font-size:35px}.shoot-heading>div{margin-top:20px}.shoot-heading .shoot-total{display:none}
 .shoot-toolbar{margin-bottom:18px;gap:20px}.shoot-toolbar>[data-shoot-layout]{white-space:normal;text-align:right;max-width:100px}.shoot-filters{gap:0 16px}
 .gallery-stage{height:auto;min-height:0;max-height:none;background:#171717;margin-inline:-6.8%}
 .gallery-open{height:66svh;min-height:400px}.gallery-open img{object-position:center;object-fit:contain}
 .gallery-stage-caption{position:relative;inset:auto;max-width:none;padding:22px 6% 0;text-shadow:none}.gallery-stage-caption p{margin-bottom:12px}.gallery-stage-caption h3{font-size:27px}.gallery-stage-caption button{margin-top:10px}
 .gallery-stage-controls{position:relative;inset:auto;padding:0 6% 15px;margin-top:8px}
 .campaign-gallery .shoot-grid{gap:9px;padding-top:18px}.campaign-gallery .shoot-image{flex-basis:76px;width:76px}
 .campaign-gallery.is-contact-sheet .shoot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}
 .shoot-footer{align-items:start;font-size:10px}.shoot-footer p{max-width:100px}.shoot-footer .text-link{font-size:10px}
 .film-window .film-story-still{object-position:50% 30%!important}
 .exhibition-close{height:100svh;min-height:680px;max-height:none}.closing-scene img{object-position:50% 42%}
 .closing-copy{left:7%;right:7%;bottom:16%;max-width:none}.closing-copy h2{font-size:clamp(32px,8.2vw,42px);line-height:1.19}.closing-copy p{font-size:12px;margin-top:20px}.closing-copy .button{width:100%;max-width:320px;min-height:56px;margin-top:22px;font-size:11px}.closing-availability{font-size:10px;margin-top:13px}
 .closing-sequence-controls{bottom:18px;font-size:10px}.closing-sequence-controls button{font-size:10px}
}
@media(prefers-reduced-motion:reduce){.closing-scene{transition:none}.campaign-gallery .shoot-image button{transition:none}}
/* Resize the revealed photograph with its window rather than cutting a face out of a viewport-sized image. */
.film-window .film-story-still{left:calc(var(--frame)*52%);top:calc(var(--frame)*17%);right:auto;bottom:auto;width:calc(100% - var(--frame)*58%);height:calc(100% - var(--frame)*29%);object-position:center!important}
@media(max-width:700px){
 .film-window .film-story-still{left:calc(var(--frame)*34%);top:calc(var(--frame)*56%);width:calc(100% - var(--frame)*40%);height:calc(100% - var(--frame)*63%);object-position:center!important}
 .closing-scene{isolation:isolate}.closing-scene::before{content:"";position:absolute;inset:-25px;background:var(--closing-mobile) center/cover;filter:blur(25px);z-index:-1}
 .closing-scene img{object-fit:contain;object-position:center;mask-image:linear-gradient(transparent,#000 12%,#000 88%,transparent)}
}
@media(prefers-reduced-motion:reduce){.film-window .film-story-still{left:0;top:0;width:100%;height:100%}}
/* Registered desktop match cuts keep the eyewear at the same optical centre. */
@media(min-width:701px){.hero-matchcut .matchcut-frame img{position:absolute;max-width:none;object-fit:fill;object-position:center;mask-image:none}}
/* Fill the entire mobile stage, including the area behind the transparent masthead. */
@media(max-width:700px){
 .hero-matchcut .matchcut-frame::before{z-index:0;inset:-35px;background-position:center;background-size:cover}
 .hero-matchcut .matchcut-frame img{position:relative;z-index:1}
 .prelaunch-home.is-film-top .masthead{background:transparent;box-shadow:none}
}
/* A full photograph fills the stage; the registered foreground preserves both lenses. */
@media(min-width:701px){
 .hero-matchcut .matchcut-frame{isolation:isolate}
 .hero-matchcut .matchcut-frame::before{content:"";position:absolute;inset:-30px;background:var(--desktop-scene) center/cover;filter:blur(22px);z-index:0}
 .hero-matchcut .matchcut-frame img{z-index:1;mask-image:linear-gradient(to right,transparent,#000 10%,#000 90%,transparent),linear-gradient(to bottom,transparent,#000 12%,#000 88%,transparent);mask-composite:intersect}
}
@media(max-width:700px){.hero-matchcut .matchcut-frame::before{filter:none;inset:0}.hero-matchcut .matchcut-frame img{mask-image:linear-gradient(to bottom,transparent,#000 9%,#000 91%,transparent)}}
