/* STD GEN 3.1 — original local visual system. No font/CDN/library requests. */
:root{--paper:#f1ecdf;--surface:#fffaf0;--ink:#191713;--muted:#6b6254;--accent:#825334;--on-accent:#fff;--display:Georgia,serif;--body:"Segoe UI",Arial,sans-serif;--max:1500px;--pad:clamp(20px,4vw,72px);--line:color-mix(in srgb,var(--ink) 18%,transparent);--radius:18px;--header:76px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px;background:var(--paper);color:var(--ink)}body{margin:0;font-family:var(--body);font-size:16px;line-height:1.55;overflow-x:clip}main,section,article,div{min-width:0}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{color:inherit;cursor:pointer}button,a,input,select{touch-action:manipulation}button:disabled{cursor:default;opacity:.4}[hidden]{display:none!important}img{display:block;max-width:100%}figure{margin:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.02;text-wrap:balance;overflow-wrap:anywhere}p{overflow-wrap:anywhere}h2{font-size:clamp(36px,5vw,78px);letter-spacing:-.04em}h3{letter-spacing:-.025em}address{font-style:normal}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:5px}a,button{ -webkit-tap-highlight-color:transparent}summary{cursor:pointer}.skip-link{position:fixed;left:20px;top:-100px;background:var(--ink);color:var(--paper);padding:12px 20px;z-index:1000}.skip-link:focus{top:10px}.kicker,.eyebrow{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;line-height:1.5}.kicker{color:var(--muted);margin-bottom:18px}.section-wrap{max-width:var(--max);margin-inline:auto;padding:90px var(--pad)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.section-heading h2{max-width:13ch}.concept-note{font-size:12px;line-height:1.6;color:var(--muted);max-width:54ch}.section-heading>.concept-note{max-width:36ch}.icon-button{display:inline-grid;place-items:center;border:1px solid var(--line);background:transparent;width:42px;height:42px;border-radius:50%;font-size:20px;flex-shrink:0;transition:background .25s,transform .25s}.icon-button:hover{background:var(--surface);transform:translateY(-2px)}.button{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);display:inline-flex;align-items:center;justify-content:center;gap:32px;padding:16px 25px;min-height:50px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;text-align:center;transition:transform .24s,box-shadow .3s,background .24s;position:relative;isolation:isolate}.button>span{display:inline-block;transform:translate(var(--mx,0px),var(--my,0px));transition:transform .18s ease-out}.button:hover{transform:translateY(-3px);box-shadow:0 4px 7px #0000000c,0 14px 30px #00000019}.button:active{transform:translateY(1px) scale(.985);box-shadow:0 1px 3px #0000001a}.button.quiet{background:transparent;color:var(--ink);border-color:var(--line)}.quiet-link{font-size:13px;border-bottom:1px solid currentColor;padding-block:7px}.buttons-square .button{border-radius:0}.buttons-soft .button{border-radius:12px}.type-modern h1,.type-modern h2{font-weight:500;letter-spacing:-.055em}.type-condensed h1,.type-condensed h2{text-transform:uppercase;letter-spacing:-.035em;font-weight:700}.type-humanist h1,.type-humanist h2{font-weight:600;letter-spacing:-.045em}
/* A compact header with real links only. */
.ticker{overflow:hidden;background:var(--ink);color:var(--paper);font-size:10px;letter-spacing:.13em;text-transform:uppercase;line-height:1.4}.ticker-track{display:flex;width:max-content;padding-block:8px;gap:44px;max-width:none}.ticker-track>div{display:flex;gap:44px;white-space:nowrap}.ticker b{font-size:13px;margin-inline-start:42px;font-weight:400}.v3-enhanced:not([data-motion-off="true"]) .ticker-track{animation:ticker-move 32s linear infinite}@keyframes ticker-move{to{transform:translateX(-50%)}}.site-header{position:sticky;top:0;z-index:40;min-height:var(--header);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:14px var(--pad);gap:20px;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:inline-flex;gap:12px;align-items:center;min-width:0;font-family:var(--display);font-size:24px;line-height:1.1}.brand img{flex-shrink:0}.brand>span{overflow-wrap:anywhere}.site-header #site-nav{display:flex;align-items:center;gap:26px;font-size:12px}.site-header #site-nav a{position:relative;padding-block:8px}.site-header #site-nav a:after{content:"";height:1px;background:currentColor;position:absolute;inset-inline:0;bottom:1px;transform:scaleX(0);transform-origin:left;transition:transform .28s}.site-header #site-nav a:hover:after{transform:scaleX(1)}.header-tools{display:flex;align-items:center;justify-content:flex-end;gap:15px}.header-tools .social-links{display:flex;flex-wrap:nowrap;gap:10px}.header-tools .social-link{padding:5px;border:0;min-height:32px}.header-tools .social-link>span{display:none}.header-tools .social-link svg{width:17px;height:17px}.motion-toggle{font-size:13px;width:31px;height:31px}.header-centered .brand{grid-column:2;grid-row:1;justify-self:center}.header-centered #site-nav{grid-column:1;grid-row:1}.header-centered .header-tools{grid-column:3;grid-row:1}.header-line{border-top:1px solid var(--line);--header:60px}.header-minimal{--header:58px;border-bottom:0;padding-block:9px}.header-minimal .brand{font-size:20px}.header-minimal #site-nav{gap:18px}.ticker-micro{font-size:8px;letter-spacing:.17em}.ticker-micro .ticker-track{padding-block:5px;gap:28px}.ticker-micro .ticker-track>div{gap:28px}.ticker-micro b{margin-inline-start:26px;font-size:10px}.menu-toggle{display:none}.social-links{display:flex;flex-wrap:wrap;gap:9px}.social-link{display:inline-flex;align-items:center;gap:9px;padding:12px 14px;border:1px solid var(--line);font-size:12px;min-height:42px;transition:background .25s,transform .25s}.social-link svg{width:18px;height:18px;flex-shrink:0}.social-link:hover{background:var(--surface);transform:translateY(-2px)}.social-arrow{margin-inline-start:10px}.social-compact .social-arrow{display:none}
/* Hero allocation: 60% cinematic, 40% five alternative compositions. */
.hero{position:relative;isolation:isolate;min-height:clamp(530px,82svh,900px);margin:0;overflow:hidden}.hero-copy{position:relative;z-index:3;padding:clamp(55px,7vw,130px) var(--pad) 100px;max-width:var(--max);margin-inline:auto;width:100%}.hero h1{font-size:clamp(58px,7.8vw,135px);line-height:.91;letter-spacing:-.045em;max-width:11ch;margin:22px 0 28px}.hero-subtitle{font-size:clamp(15px,1.3vw,19px);max-width:45ch;line-height:1.65}.hero-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:32px}.hero.copy-compact .hero-copy{max-width:min(760px,80vw)}.hero.copy-compact h1{font-size:clamp(52px,6.6vw,112px);max-width:10ch}.hero.copy-edge .hero-copy{padding-inline-start:max(var(--pad),8vw);padding-inline-end:max(var(--pad),3vw)}.hero.actions-stacked .hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.hero.actions-stacked .button{min-width:190px}.hero.actions-minimal .hero-actions .quiet-link{display:none}.hero.actions-minimal .button{background:transparent;color:currentColor;border-color:currentColor;box-shadow:none}.hero-cinematic.actions-minimal .button,.hero-diagonal.actions-minimal .button{background:transparent;color:white;border-color:#fff}.hero-cinematic.treatment-plaque.actions-minimal .button{color:var(--ink);border-color:var(--ink)}.hero-media{position:relative;overflow:hidden}.hero-media img{width:100%;height:100%;object-fit:cover;will-change:auto}.hero-cinematic{background:var(--ink);color:#fff;display:flex;align-items:center}.hero-cinematic .hero-media,.hero-diagonal-media{position:absolute;inset:0;z-index:-2}.hero-cinematic .hero-copy{background:transparent}.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#000b 0%,#0005 46%,#0000 78%),linear-gradient(0deg,#0006,transparent 40%)}.hero-cinematic .eyebrow,.hero-diagonal .eyebrow{color:#f5eedb}.hero-cinematic .hero-subtitle,.hero-diagonal .hero-subtitle{color:#ffffffdf}.hero-cinematic .button,.hero-diagonal .button{background:var(--paper);color:var(--ink);border-color:var(--paper)}.hero-cinematic .hero-socials,.hero-diagonal .hero-socials{color:white;--line:#ffffff66}.hero-cinematic .hero-socials .social-link:hover,.hero-diagonal .hero-socials .social-link:hover{background:#ffffff20}.hero-socials{position:absolute;z-index:5;bottom:25px;right:var(--pad);max-width:60%;}.hero-socials .social-link{font-size:11px;padding:10px 12px}.scroll-cue{position:absolute;bottom:22px;left:var(--pad);display:grid;place-items:center;width:34px;height:44px;border:1px solid currentColor;border-radius:999px;z-index:4}.scroll-cue span{font-size:22px;transition:transform .25s}.scroll-cue:hover span{transform:translateY(5px)}.hero-cinematic.treatment-center .hero-copy{text-align:center;display:flex;flex-direction:column;align-items:center}.hero-cinematic.treatment-center .hero-shade{background:linear-gradient(0deg,#000a,#0004 65%)}.hero-cinematic.treatment-center h1{max-width:14ch}.hero-cinematic.treatment-plaque{align-items:end;padding:clamp(25px,4vw,70px);}.hero-cinematic.treatment-plaque .hero-copy{margin:0 0 35px;padding:38px;max-width:640px;background:var(--paper);color:var(--ink)}.hero-cinematic.treatment-plaque .eyebrow,.hero-cinematic.treatment-plaque .hero-subtitle{color:var(--muted)}.hero-cinematic.treatment-plaque h1{font-size:clamp(44px,5vw,80px);max-width:14ch}.hero-cinematic.treatment-plaque .button{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.hero-split,.hero-offset{display:grid;grid-template-columns:44% 56%;align-items:stretch;min-height:690px}.hero-split .hero-copy,.hero-offset .hero-copy{padding:clamp(45px,6vw,110px) var(--pad) 110px;align-self:center}.hero-split h1,.hero-offset h1{font-size:clamp(50px,6vw,102px);max-width:12ch}.hero-split .hero-media{min-height:650px}.photo-label{position:absolute;bottom:20px;right:20px;color:white;font-size:10px;letter-spacing:.17em;background:#0006;padding:8px 12px}.hero-offset{grid-template-columns:52% 48%;padding:35px var(--pad) 80px;gap:24px}.hero-offset .hero-copy{padding-inline:0}.hero-offset .hero-media{align-self:center;aspect-ratio:4/5;max-height:620px;width:100%;transform:rotate(2deg);border:1px solid var(--line)}.hero-offset h1{font-style:italic}.hero-diagonal{color:white;background:var(--ink);display:flex;align-items:center}.hero-diagonal-media{display:flex}.hero-diagonal-media>div{position:absolute;inset:0;width:70%;}.hero-diagonal-media>div:first-child{clip-path:polygon(0 0,100% 0,66% 100%,0 100%);z-index:2}.hero-diagonal-media>div:last-child{left:45%;width:55%;}.hero-diagonal-media img{width:100%;height:100%;object-fit:cover}.hero-diagonal .hero-shade{z-index:0;background:linear-gradient(90deg,#000b,#0003 65%)}.hero-diagonal .hero-copy{z-index:3}.hero-triptych,.hero-rail{padding-bottom:85px}.hero-triptych .hero-copy,.hero-rail .hero-copy{padding:45px var(--pad) 32px;display:grid;grid-template-columns:1fr 1fr;gap:14px 42px}.hero-triptych .hero-copy h1,.hero-rail .hero-copy h1{grid-column:1;grid-row:2/4;font-size:clamp(44px,5vw,82px);max-width:15ch;margin:0}.hero-triptych .hero-copy .hero-subtitle,.hero-rail .hero-copy .hero-subtitle{grid-column:2;grid-row:2}.hero-triptych .hero-actions,.hero-rail .hero-actions{grid-column:2;grid-row:3;margin-top:0}.hero-triptych .hero-triptych{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:18px;padding:15px var(--pad) 0;min-height:0;align-items:center}.hero-triptych figure{height:340px;overflow:hidden;position:relative}.hero-triptych figure:nth-child(2){height:420px}.hero-triptych figure img{width:100%;height:100%;object-fit:cover}.hero-triptych figcaption{position:absolute;bottom:12px;left:15px;color:white}.hero-picture-rail{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px var(--pad) 28px;scrollbar-width:thin}.hero-rail-card{position:relative;flex:0 0 27%;height:410px;scroll-snap-align:center;overflow:hidden}.hero-rail-card:nth-child(even){height:360px;margin-top:50px}.hero-rail-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.hero-rail-card:hover img{transform:scale(1.04)}.hero-rail-card span{position:absolute;bottom:15px;left:20px;color:white;font-size:13px}
/* Primary editorial interaction lives immediately beneath the hero. */
.motion-block{padding:55px var(--pad) 70px;max-width:var(--max);margin-inline:auto}.motion-heading{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:40px}.motion-heading h2{font-size:clamp(36px,5vw,70px)}.motion-heading>p{max-width:38ch;color:var(--muted);font-size:14px}.scene-card{position:relative;overflow:hidden;min-width:0;background:var(--ink);color:#fff}.scene-card>img{width:100%;height:500px;object-fit:cover}.scene-copy{padding:35px;position:absolute;inset:auto 0 0;background:linear-gradient(0deg,#000c,#0000);padding-top:75px}.scene-copy h3{font-size:clamp(26px,3.8vw,60px);max-width:15ch;margin:10px 0 15px}.scene-copy p{max-width:50ch;font-size:14px;line-height:1.65;color:#ffffffe0}.scene-index{font-family:var(--display);font-size:18px;font-style:italic;color:#ffffffd0}.scene-track{display:grid;gap:25px}.scene-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:18px 5px 0}.scene-dots{display:flex;gap:10px}.scene-dot{background:transparent;color:var(--ink);border:1px solid var(--line);width:42px;height:36px;border-radius:999px;font-size:11px}.scene-dot[aria-pressed=true]{background:var(--ink);color:var(--paper)}.motion-meter{height:2px;background:var(--line);width:150px;overflow:hidden}.motion-meter i{display:block;width:100%;height:100%;background:var(--accent);transform:scaleX(var(--progress,0));transform-origin:left}.v3-enhanced .motion-stack3d .scroll-track{height:285svh}.v3-enhanced .motion-horizontal .scroll-track{height:245svh}.v3-enhanced .motion-stickygrid .scroll-track{height:210svh}.v3-enhanced .scroll-pin{position:sticky;top:calc(var(--header) + 12px);height:calc(100svh - var(--header) - 45px);max-height:880px;min-height:380px;display:flex;flex-direction:column}.v3-enhanced .scene-window{position:relative;flex:1;min-height:0;overflow:hidden;perspective:1400px;border-radius:var(--radius)}.v3-enhanced .motion-stack3d .scene-track{display:block;height:100%;position:relative}.v3-enhanced .motion-stack3d .scene-card{position:absolute;inset:0;border-radius:var(--radius);box-shadow:0 -8px 25px #0002;transform-origin:center top}.v3-enhanced .motion-stack3d .scene-card>img{height:100%;}.v3-enhanced .motion-horizontal .scene-track{display:flex;height:100%;gap:24px;direction:ltr}.v3-enhanced .motion-horizontal .scene-card{flex:0 0 78%;height:100%;border-radius:var(--radius)}.v3-enhanced .motion-horizontal .scene-card>img{height:100%}.v3-enhanced .motion-stickygrid .scene-track{height:100%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:16px;padding:20px;align-items:stretch}.motion-stickygrid .scene-card{border-radius:6px}.v3-enhanced .motion-stickygrid .scene-card>img{height:100%}.motion-stickygrid .scene-copy{padding:20px;padding-top:55px}.motion-stickygrid .scene-copy h3{font-size:clamp(20px,2.2vw,36px)}.motion-stickygrid .scene-copy p{display:none}.motion-collapse .collapse-deck{position:relative;display:grid;gap:50px}.motion-collapse .scene-card{position:sticky;top:calc(var(--header) + 18px);height:clamp(480px,75svh,780px);box-shadow:0 -12px 25px #0002;border-radius:var(--radius);}.motion-collapse .scene-card>img{height:100%;width:64%;margin-inline-start:auto}.motion-collapse .scene-copy{inset:0 auto 0 0;width:42%;padding:50px 40px;display:flex;flex-direction:column;justify-content:center;background:var(--ink)}.motion-collapse .scene-copy h3{font-size:clamp(32px,4.2vw,68px)}.motion-collapse .scene-card:nth-child(2){top:calc(var(--header) + 30px)}.motion-collapse .scene-card:nth-child(3){top:calc(var(--header) + 42px)}.motion-collage{max-width:none;background:color-mix(in srgb,var(--accent) 13%,var(--paper));padding-top:60px}.motion-collage .motion-heading{max-width:var(--max);margin-inline:auto}.collage-stage{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:30px;align-items:start;padding:90px 0 50px;max-width:var(--max);margin:auto}.motion-collage .scene-card{background:transparent;color:var(--ink);overflow:visible}.motion-collage .scene-card>img{height:clamp(380px,42vw,680px);border:2px solid var(--accent);object-fit:cover}.motion-collage .scene-card:first-child{margin-top:70px}.motion-collage .scene-card:last-child{margin-top:160px}.motion-collage .scene-card:nth-child(2)>img{height:clamp(460px,47vw,760px)}.motion-collage .scene-copy{position:relative;background:none;padding:20px 0;color:var(--ink)}.motion-collage .scene-copy h3{font-size:32px}.motion-collage .scene-copy p{color:var(--muted);font-size:13px}.motion-collage .scene-index{color:var(--muted)}
/* A typographic index, expanding panels, and a real sequential timeline. */
.index-layout{display:grid;grid-template-columns:40% 60%;gap:0;min-height:540px}.typographic-index{padding-inline-end:45px;display:flex;flex-direction:column;justify-content:center}.index-item{display:grid;grid-template-columns:30px 1fr 20px;align-items:center;gap:16px;text-align:start;padding:27px 4px;border:0;border-top:1px solid var(--line);background:transparent;width:100%;}.index-item span:nth-child(2){font:400 clamp(22px,2.6vw,40px)/1.05 var(--display)}.index-item span:first-child{font-size:10px;color:var(--muted)}.index-item[aria-pressed=true]{color:var(--accent)}.index-item[aria-pressed=true] span:last-child{transform:translate(3px,-3px)}.index-stage{position:relative;min-height:550px;overflow:hidden}.index-panel{position:relative;min-height:520px;background:var(--ink);color:#fff}.index-panel>img{width:100%;height:100%;object-fit:cover}.v3-enhanced .motion-hoverrail .index-panel{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .4s}.v3-enhanced .motion-hoverrail .index-panel.is-active{opacity:1;pointer-events:auto}.index-panel .scene-copy h3{font-size:32px}.motion-expanding .index-layout{display:flex;flex-direction:column;gap:20px}.motion-expanding .typographic-index{display:flex;flex-direction:row;padding:0;gap:20px}.motion-expanding .index-item{padding:16px 0;gap:10px;grid-template-columns:20px 1fr}.motion-expanding .index-item span:nth-child(2){font-size:20px}.motion-expanding .index-item span:last-child{display:none}.motion-expanding .index-stage{display:flex;height:580px;gap:10px}.motion-expanding .index-panel{flex:1;min-width:0;overflow:hidden;transition:flex .5s cubic-bezier(.2,.65,.25,1)}.motion-expanding .index-panel.is-active{flex:3}.motion-expanding .index-panel .scene-copy{padding:20px 14px;padding-top:60px}.motion-expanding .index-panel:not(.is-active) .scene-copy p{display:none}.motion-expanding .index-panel:not(.is-active) .scene-copy h3{font-size:22px}.timeline-layout{display:grid;grid-template-columns:52% 1fr;gap:70px;align-items:start}.timeline-stage{position:sticky;top:calc(var(--header) + 25px);height:65svh;min-height:450px;overflow:hidden}.timeline-photo{position:relative;height:100%}.timeline-photo img{height:100%;width:100%;object-fit:cover}.v3-enhanced .timeline-photo{position:absolute;inset:0;opacity:0;transition:opacity .5s}.v3-enhanced .timeline-photo.is-active{opacity:1}.timeline-steps{border-inline-start:1px solid var(--line)}.timeline-step{padding:55px 0 75px 35px;min-height:46svh;border-inline-start:2px solid transparent;margin-inline-start:-1px}.timeline-step.is-active{border-inline-start-color:var(--accent)}.timeline-step>span{font:400 70px/1 var(--display);color:var(--muted);opacity:.6}.timeline-step h3{font-size:38px;margin:20px 0}.timeline-step p{color:var(--muted);max-width:38ch}.gallery-deck>.button{margin-bottom:30px}.deck-stage{display:grid;grid-template-columns:1fr 1fr;gap:25px}.motion-stackgallery .scene-card{min-height:470px;border-radius:var(--radius)}.motion-stackgallery .scene-card>img{height:100%;position:absolute;inset:0}.v3-enhanced .gallery-deck:not(.is-open) .deck-stage{position:relative;height:660px;display:block;overflow:hidden}.v3-enhanced .gallery-deck:not(.is-open) .scene-card{position:absolute;width:65%;height:520px;inset:55px auto auto 18%;transform:translate(calc(var(--i)*14px),calc(var(--i)*12px)) rotate(calc(-6deg + var(--i)*5deg));box-shadow:0 12px 50px #0003;z-index:calc(10 - var(--i))}.motion-stackgallery .scene-copy p{font-size:13px}.filter-controls{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:28px}.filter-controls button{padding:11px 18px;border:1px solid var(--line);background:transparent;border-radius:999px;font-size:12px}.filter-controls button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.filter-stage{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.motion-filtergrid .scene-card{background:transparent;color:var(--ink)}.motion-filtergrid .scene-card>img{height:380px}.motion-filtergrid .scene-copy{position:relative;background:none;padding:18px 0}.motion-filtergrid .scene-copy h3{font-size:24px}.motion-filtergrid .scene-copy p,.motion-filtergrid .scene-index{color:var(--muted);font-size:12px}
/* Concept catalogue: clear demo prices, no fake cart or checkout. */
.catalogue{border-top:1px solid var(--line)}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 22px}.product-picture{position:relative;display:block;overflow:hidden;aspect-ratio:3/4;background:var(--surface);transform-style:preserve-3d;border:1px solid var(--line)}.product-picture img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.6,.3,1)}.product-picture:hover img{transform:scale(1.045)}.product-picture .object-index{position:absolute;top:15px;left:16px;background:var(--paper);color:var(--ink);padding:5px 9px;font-size:10px;letter-spacing:.1em}.round-arrow{position:absolute;bottom:18px;right:18px;display:grid;place-items:center;border-radius:50%;width:42px;height:42px;background:var(--surface);color:var(--ink);font-size:23px;transition:transform .3s}.product-picture:hover .round-arrow{transform:rotate(45deg)}.product-info{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding-top:20px}.product-info h3{font-size:25px;line-height:1.12}.price{font-size:14px;white-space:nowrap;font-weight:500}.product-summary{font-size:12px;line-height:1.6;color:var(--muted);margin-top:12px;max-width:50ch}.price-caption{font-size:10px;display:block;color:var(--muted);margin-top:8px;letter-spacing:.04em}.layout-rail .product-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:25px;padding:4px 0 25px;scrollbar-width:thin}.layout-rail .product-card{flex:0 0 29%;scroll-snap-align:start}.rail-controls{display:none;gap:10px;justify-content:flex-end;margin:-15px 0 20px}.layout-rail .rail-controls{display:flex}.layout-editorial .product-grid{grid-template-columns:1.2fr 1fr;align-items:start;gap:60px}.layout-editorial .product-card:nth-child(even){padding-top:90px}.editorial-story{display:grid;grid-template-columns:58% 42%;background:var(--surface);margin-block:30px 80px;min-height:600px}.story-image{overflow:hidden;min-height:600px}.story-image img{width:100%;height:100%;object-fit:cover}.story-copy{padding:clamp(35px,5vw,100px);align-self:center}.story-copy h2{font-size:clamp(40px,4.7vw,75px);margin-bottom:30px}.story-copy>p:not(.kicker){font-size:16px;line-height:1.85;color:var(--muted);margin-bottom:30px}.story-frame .story-image{padding:35px}.story-frame .story-image img{border:1px solid var(--line)}.story-index .story-copy{border-inline-start:1px solid var(--line)}.story-rule .story-copy h2:before{content:"";display:block;width:80px;height:1px;background:var(--accent);margin-bottom:28px}.image-diptych{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:var(--max);margin:auto;padding:0 var(--pad)}.image-diptych figure:nth-child(2){padding-top:85px}.image-diptych img{width:100%;height:430px;object-fit:cover}.image-diptych figcaption{font-size:11px;color:var(--muted);display:flex;gap:20px;padding:15px 0}.image-diptych figcaption>span{font-family:var(--display);font-size:16px;color:var(--ink)}.faq{display:grid;grid-template-columns:40% 1fr;gap:60px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{font-family:var(--display);font-size:23px;line-height:1.3;display:flex;gap:20px;justify-content:space-between;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary span{flex-shrink:0;font:400 18px var(--body);transition:transform .25s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:14px;line-height:1.8;color:var(--muted);padding-top:18px;max-width:65ch}.closing{border-top:1px solid var(--line);display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center}.closing h2{font-size:clamp(40px,6vw,96px);margin-bottom:25px}.closing p:not(.kicker){color:var(--muted);max-width:45ch}.closing>div:last-child{display:flex;flex-direction:column;align-items:start;gap:25px}.site-footer{background:var(--ink);color:var(--paper);padding:65px var(--pad) 25px;--line:#ffffff30}.footer-top{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1.1fr 1fr .5fr;gap:70px}.footer-brand{font:400 clamp(36px,4vw,65px)/1 var(--display);overflow-wrap:anywhere}.footer-tagline{font-size:12px;margin-top:18px;opacity:.7}.foundation{font-size:12px;margin:22px 0 14px}.foundation time{font-size:16px;font-family:var(--display);margin-inline-start:8px}.footer-top .social-links{margin-top:22px}.footer-top .social-link:hover{background:#ffffff15}.contact-block{font-style:normal;display:flex;flex-direction:column;gap:10px;font-size:13px;line-height:1.65;overflow-wrap:anywhere}.contact-block a{border-bottom:1px solid var(--line);width:fit-content;max-width:100%;}.footer-top>nav{display:flex;flex-direction:column;gap:12px;font-size:12px}.footer-bottom{margin:50px auto 0;max-width:var(--max);padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:45px;font-size:10px}.footer-bottom .concept-note{color:var(--paper);opacity:.7;font-size:10px}.page-title{padding-top:70px}.page-title h1,.policy h1{font-size:clamp(46px,7vw,100px);margin-bottom:45px}.page-title>.concept-note{margin-bottom:35px}.about-layout,.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about-layout>img,.contact-layout>img{width:100%;height:600px;object-fit:cover}.about-layout p{font-size:18px;color:var(--muted);line-height:1.9;margin-bottom:25px}.contact-layout .social-links{margin-top:28px}.policy{max-width:1000px;padding-block:70px 120px}.policy h1{font-size:clamp(44px,6vw,78px)}.policy .contact-block{border-block:1px solid var(--line);padding-block:25px;margin-bottom:40px}.policy>section{margin:32px 0}.policy h2{font-size:26px;letter-spacing:0;margin-bottom:16px}.policy p{font-size:15px;line-height:1.85;color:var(--muted)}.product-dialog{border:0;max-width:min(1100px,94vw);width:100%;max-height:90svh;padding:0;background:var(--paper);color:var(--ink);box-shadow:0 25px 100px #0007;overflow-y:auto}.product-dialog:not([open]){display:none}.product-dialog::backdrop{background:#000a;backdrop-filter:blur(3px)}.dialog-close{position:absolute;top:14px;right:14px;z-index:5;background:var(--paper)}.dialog-layout{display:grid;grid-template-columns:1fr 1fr;min-height:550px}.dialog-layout>img{height:100%;min-height:550px;width:100%;object-fit:cover}.dialog-copy{padding:60px 40px;align-self:center}.dialog-copy h2{font-size:48px;margin-bottom:25px}.dialog-copy>p:not(.kicker){margin-bottom:20px}.dialog-price{font-size:26px;font-family:var(--display)}.dialog-copy .button{margin-top:15px}.chooser-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}.chooser-layout>img{height:650px;width:100%;object-fit:cover}.chooser-copy h2{font-size:42px;margin-bottom:20px}.steps{font-size:11px;letter-spacing:.2em;color:var(--muted)}.chooser-copy fieldset{border:0;margin:24px 0;padding:0}.chooser-copy legend{font-size:22px;font-family:var(--display);margin-bottom:20px}.chooser-copy label{display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:16px;margin-bottom:10px;cursor:pointer}.chooser-copy input{accent-color:var(--accent);width:16px;height:16px}.choice-number{font-size:10px;opacity:.65}.choice-controls{display:flex;justify-content:space-between;gap:15px;margin-block:20px}.choice-error{min-height:20px;color:var(--accent);font-size:13px}.local-note{font-size:11px;color:var(--muted);margin-top:25px}.choice-result h3{font-size:32px;margin-bottom:20px}.choice-result p{margin-bottom:20px}.demo-banner{font-size:10px;text-align:center;letter-spacing:.1em;padding:7px;background:#ecd989;color:#17232b}
/* Identity-specific details without a heavy theme/runtime. */
.direction-resort .hero-triptych,.direction-resort .collage-stage{gap:35px}.direction-resort .product-picture{border:2px solid var(--accent)}.direction-street{--radius:0}.direction-street .ticker{background:var(--accent);color:var(--on-accent)}.direction-street .product-picture{border-color:var(--line)}.direction-gallery{--radius:0}.direction-gallery .site-header{font-family:Arial,sans-serif}.direction-gallery .image-diptych{gap:2px}.direction-nocturne{--radius:2px}.direction-nocturne .hero-cinematic .hero-shade{background:linear-gradient(90deg,#000d,transparent 90%)}.direction-service{--radius:24px}.direction-service .product-picture,.direction-studio .product-picture{border-radius:18px}.direction-atelier .kicker:before{content:"";display:inline-block;width:28px;height:1px;background:var(--accent);margin-inline-end:12px;vertical-align:middle}.direction-cobalt .motion-block{--radius:4px}.direction-clay .button{box-shadow:0 5px 15px #63322214}
[dir=rtl] .hero-shade{transform:scaleX(-1)}[dir=rtl] .hero-cinematic.treatment-center .hero-shade{transform:none}[dir=rtl] .hero-socials{left:var(--pad);right:auto}[dir=rtl] .scroll-cue{right:var(--pad);left:auto}[dir=rtl] .scene-card{direction:rtl}[dir=rtl] .timeline-step{padding:55px 35px 75px 0}[dir=rtl] .hero-diagonal .hero-copy{direction:rtl}[dir=rtl] .hero-diagonal-media{transform:scaleX(-1)}[dir=rtl] .hero-diagonal-media img{transform:scaleX(-1)}
/* No-script and reduced-motion views retain all content; nothing requires hover. */
body[data-motion-off=true] .ticker-track{animation:none!important}body[data-motion-off=true] .scroll-track{height:auto!important}body[data-motion-off=true] .scroll-pin{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;max-height:none!important}body[data-motion-off=true] .scene-window{overflow:visible!important}body[data-motion-off=true] .scene-track{display:grid!important;grid-template-columns:1fr!important;height:auto!important;transform:none!important}body[data-motion-off=true] .scene-card{position:relative!important;inset:auto!important;transform:none!important;opacity:1!important;min-height:360px}body[data-motion-off=true] .scene-card>img{height:450px!important}body[data-motion-off=true] .scene-footer{display:none}body[data-motion-off=true] .collage-stage{padding-top:0}body[data-motion-off=true] .collage-stage .scene-card{margin:0}body[data-motion-off=true] .timeline-stage{position:relative;top:auto}body[data-motion-off=true] .gallery-deck:not(.is-open) .deck-stage{height:auto;display:grid;gap:20px}body[data-motion-off=true] .gallery-deck:not(.is-open) .scene-card{width:100%;height:auto}
@media(max-width:1150px){.site-header{grid-template-columns:1fr auto;gap:18px}.header-centered .brand{grid-column:1;justify-self:start}.header-centered #site-nav{grid-column:2}.header-tools{display:none}.site-header #site-nav{gap:20px}.hero h1{font-size:clamp(58px,8.2vw,108px)}.hero-split,.hero-offset{min-height:620px}.hero-split .hero-media{min-height:600px}.hero-split h1,.hero-offset h1{font-size:clamp(50px,6.7vw,90px)}.motion-expanding .index-item span:nth-child(2){font-size:17px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-rail .product-card{flex-basis:40%}.footer-top{gap:30px}.scene-copy{padding:28px}.hero-cinematic.treatment-plaque h1{font-size:64px}.motion-collapse .scene-copy{padding:25px}.filter-stage{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){:root{--pad:20px;--header:66px;--radius:10px}.section-wrap{padding:60px var(--pad)}.ticker{font-size:9px}.site-header{padding:12px 20px;grid-template-columns:1fr auto;min-height:66px}.brand{font-size:22px}.brand img{width:28px;height:28px}.menu-toggle{display:flex;border:0;background:none;gap:15px;align-items:center;font-size:12px;grid-column:2;grid-row:1;min-height:35px}.site-header #site-nav{display:flex;grid-column:1/-1!important;grid-row:2!important;gap:18px;flex-wrap:wrap}.v3-enhanced .site-header #site-nav{display:none}.v3-enhanced .site-header.menu-open #site-nav{display:flex;padding:15px 0}.header-centered .brand{grid-row:1;grid-column:1}.header-tools{display:none}.motion-toggle{display:none}.hero{min-height:600px}.hero h1{font-size:clamp(45px,12.8vw,80px);max-width:12ch;margin:20px 0}.hero-copy{padding:65px 25px 125px}.hero-subtitle{font-size:15px;max-width:35ch}.hero-actions{gap:18px;margin-top:26px}.hero-socials{bottom:24px;right:20px;max-width:78%}.hero-socials .social-link{padding:8px 10px;min-height:34px;font-size:10px}.hero-socials .social-link svg{width:14px;height:14px}.hero-socials .social-link span{display:none}.scroll-cue{bottom:24px}.hero-shade{background:linear-gradient(90deg,#000a,#0003),linear-gradient(0deg,#0008,transparent 50%)}.hero-cinematic.treatment-plaque{padding:25px 20px 85px;min-height:630px}.hero-cinematic.treatment-plaque .hero-copy{padding:25px;margin:0;max-width:100%}.hero-cinematic.treatment-plaque h1{font-size:clamp(40px,11.8vw,68px);max-width:12ch}.hero-split,.hero-offset{display:grid;grid-template-columns:1fr;min-height:0;padding:0 0 80px;gap:0}.hero-split .hero-copy,.hero-offset .hero-copy{padding:40px 22px 30px}.hero-split h1,.hero-offset h1{font-size:clamp(44px,11.8vw,72px);max-width:16ch}.hero-split .hero-media,.hero-offset .hero-media{min-height:0;height:300px;aspect-ratio:auto;max-height:none;transform:none}.hero-offset .hero-media{margin-inline:22px;width:calc(100% - 44px);height:320px;transform:rotate(1deg)}.hero-split .scroll-cue,.hero-offset .scroll-cue{bottom:19px}.hero-triptych .hero-copy,.hero-rail .hero-copy{display:block;padding:40px 22px 25px}.hero-triptych .hero-copy h1,.hero-rail .hero-copy h1{font-size:clamp(40px,10.8vw,65px);margin-bottom:20px}.hero-triptych .hero-copy .hero-subtitle,.hero-rail .hero-copy .hero-subtitle{font-size:14px}.hero-triptych .hero-actions,.hero-rail .hero-actions{margin-top:20px}.hero-triptych .hero-triptych{grid-template-columns:1fr 1.2fr 1fr;gap:8px;padding:10px 15px 0}.hero-triptych figure{height:220px}.hero-triptych figure:nth-child(2){height:265px}.hero-picture-rail{gap:15px;padding-inline:20px}.hero-rail-card{flex-basis:62%;height:275px}.hero-rail-card:nth-child(even){height:240px;margin-top:35px}.hero-diagonal-media>div:first-child{width:80%;clip-path:polygon(0 0,100% 0,65% 100%,0 100%)}.hero-diagonal-media>div:last-child{left:30%;width:70%}.section-heading,.motion-heading{display:block;margin-bottom:30px}.section-heading>.concept-note{margin-top:20px;max-width:45ch}.motion-heading>p{margin-top:20px;max-width:48ch;font-size:13px}.motion-block{padding:40px 20px 50px}.motion-heading h2{font-size:42px}.motion-heading .kicker{margin-bottom:12px}.v3-enhanced .motion-stack3d .scroll-track{height:215svh}.v3-enhanced .scroll-pin{min-height:360px;height:calc(100svh - 110px);top:76px}.scene-copy h3{font-size:36px}.scene-copy p{font-size:13px}.scene-copy{padding:25px;padding-top:60px}.v3-enhanced .motion-horizontal .scroll-track{height:auto}.v3-enhanced .motion-horizontal .scroll-pin{position:relative;top:auto;height:500px;}.v3-enhanced .motion-horizontal .scene-window{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}.v3-enhanced .motion-horizontal .scene-track{transform:none!important;gap:14px}.v3-enhanced .motion-horizontal .scene-card{flex-basis:87%;scroll-snap-align:center}.v3-enhanced .motion-stickygrid .scroll-track{height:160svh}.v3-enhanced .motion-stickygrid .scene-track{padding:5px;gap:8px}.motion-stickygrid .scene-copy{padding:12px;padding-top:45px}.motion-stickygrid .scene-copy h3{font-size:22px}.motion-stickygrid .scene-index{font-size:14px}.motion-collapse .collapse-deck{gap:25px}.motion-collapse .scene-card{height:580px;min-height:0;top:76px}.motion-collapse .scene-card>img{width:100%;height:100%}.motion-collapse .scene-copy{inset:auto 0 0;width:100%;background:linear-gradient(0deg,#000e,#0000);padding:80px 25px 30px;color:white;display:block}.motion-collapse .scene-copy h3{font-size:38px}.motion-collapse .scene-card:nth-child(2){top:88px}.motion-collapse .scene-card:nth-child(3){top:100px}.collage-stage{grid-template-columns:1fr 1fr;gap:15px;padding:25px 0 30px}.motion-collage .scene-card:first-child{margin-top:45px}.motion-collage .scene-card:last-child{margin-top:0;grid-column:1/-1;max-width:65%;margin-inline:auto}.motion-collage .scene-card>img{height:290px}.motion-collage .scene-card:nth-child(2)>img{height:360px}.motion-collage .scene-copy h3{font-size:24px}.motion-collage .scene-copy p{display:none}.motion-collage .scene-copy{padding:12px 0}.index-layout{grid-template-columns:1fr;gap:20px}.typographic-index{padding:0}.index-item{padding:17px 0;gap:12px}.index-item span:nth-child(2){font-size:24px}.index-stage{min-height:480px}.index-panel{min-height:480px}.index-panel .scene-copy h3{font-size:34px}.motion-expanding .typographic-index{flex-wrap:wrap;gap:8px 15px}.motion-expanding .index-item{width:calc(50% - 8px);border-top:0;padding:8px 0}.motion-expanding .index-item span:nth-child(2){font:12px var(--body)}.motion-expanding .index-stage{height:500px;min-height:500px;gap:6px}.motion-expanding .index-panel{min-height:0}.motion-expanding .index-panel:not(.is-active) .scene-copy h3{display:none}.motion-expanding .index-panel .scene-copy{padding:12px;padding-top:70px}.motion-expanding .index-panel.is-active{flex:5}.motion-expanding .index-panel .scene-copy h3{font-size:25px}.motion-expanding .index-panel .scene-copy p{font-size:12px}.timeline-layout{grid-template-columns:1fr;gap:15px}.timeline-stage{position:relative;top:auto;height:400px;min-height:0}.timeline-step{min-height:0;padding:30px 0 40px 25px}.timeline-step>span{font-size:45px}.timeline-step h3{font-size:32px;margin:14px 0}.timeline-step p{font-size:14px}.deck-stage{grid-template-columns:1fr}.v3-enhanced .gallery-deck:not(.is-open) .deck-stage{height:500px}.v3-enhanced .gallery-deck:not(.is-open) .scene-card{height:380px;min-height:0;width:80%;left:5%;}.motion-stackgallery .scene-card{min-height:450px}.filter-stage{gap:22px 12px}.motion-filtergrid .scene-card>img{height:240px}.motion-filtergrid .scene-copy h3{font-size:22px}.motion-filtergrid .scene-copy p{display:none}.product-grid{gap:30px 15px}.product-info{gap:8px;flex-direction:column;padding-top:14px}.product-info h3{font-size:22px}.price{font-size:13px}.product-summary{font-size:11px}.price-caption{font-size:9px}.layout-rail .product-card{flex-basis:78%}.layout-rail .product-info{flex-direction:row}.layout-rail .product-info h3{font-size:26px}.layout-editorial .product-grid{gap:25px 15px;grid-template-columns:1fr 1fr}.layout-editorial .product-card:nth-child(even){padding-top:45px}.product-picture .object-index{top:10px;left:10px;font-size:8px}.round-arrow{width:32px;height:32px;right:10px;bottom:10px;font-size:18px}.editorial-story{grid-template-columns:1fr;min-height:0;margin-block:10px 50px}.story-image{min-height:0;height:400px}.story-frame .story-image{padding:20px}.story-copy{padding:40px 25px}.story-copy h2{font-size:45px}.story-copy>p:not(.kicker){font-size:15px}.image-diptych{gap:15px}.image-diptych img{height:260px}.image-diptych figure:nth-child(2){padding-top:50px}.image-diptych figcaption{font-size:10px;gap:10px}.faq{grid-template-columns:1fr;gap:25px}.faq summary{font-size:22px}.closing{grid-template-columns:1fr;gap:28px}.closing h2{font-size:53px}.footer-top{grid-template-columns:1fr;gap:30px}.footer-top>nav{flex-direction:row;flex-wrap:wrap;gap:12px 22px}.footer-bottom{flex-direction:column;gap:18px;margin-top:30px}.footer-brand{font-size:45px}.site-footer{padding-top:45px}.about-layout,.contact-layout{grid-template-columns:1fr;gap:30px}.about-layout>img,.contact-layout>img{height:390px}.about-layout p{font-size:16px}.dialog-layout{grid-template-columns:1fr;min-height:0}.dialog-layout>img{height:320px;min-height:0}.dialog-copy{padding:28px 25px}.dialog-copy h2{font-size:36px}.dialog-copy .button{width:100%}.chooser-layout{grid-template-columns:1fr;gap:28px}.chooser-layout>img{height:280px}.chooser-copy h2{font-size:38px}.choice-controls .button{gap:0;padding:13px 18px}.hero .button{padding:14px 20px}.policy p{font-size:14px}.policy h2{font-size:24px}}
@media(prefers-reduced-motion:reduce) and (update:none){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.scroll-track{height:auto!important}.scroll-pin{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;max-height:none!important}.scene-window{overflow:visible!important}.scene-track{display:grid!important;grid-template-columns:1fr!important;height:auto!important;transform:none!important}.scene-card{position:relative!important;inset:auto!important;transform:none!important;opacity:1!important;min-height:360px}.scene-card>img{height:450px!important}.scene-footer{display:none}.collage-stage{padding-top:0}.collage-stage .scene-card{margin:0!important}.timeline-stage{position:relative;top:auto}.gallery-deck:not(.is-open) .deck-stage{height:auto!important;display:grid!important;gap:20px}.gallery-deck:not(.is-open) .scene-card{width:100%!important;height:auto!important}}

/* Motion controls remain available on touch screens; no hidden moving ticker. */
@media(max-width:1150px){.site-header{grid-template-columns:1fr auto auto}.header-tools{display:flex;grid-column:3;grid-row:1;gap:0}.header-tools .social-links{display:none}.motion-toggle{display:inline-flex;width:34px;height:34px}.site-header #site-nav{grid-column:2;grid-row:1}}
@media(max-width:760px){.site-header{gap:10px}.menu-toggle{grid-column:2!important}.header-tools{grid-column:3;display:flex}.header-tools .social-links{display:none}.brand{min-width:0}.brand>span{overflow-wrap:anywhere}.motion-toggle{display:inline-flex}.hero h1{overflow-wrap:anywhere}}
/* Progressive enhancement: all story content stays readable without scripts. */
body:not(.v3-enhanced) .index-stage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));height:auto;gap:20px}
body:not(.v3-enhanced) .index-panel{position:relative;opacity:1;visibility:visible;display:block;height:480px;flex:1}
body:not(.v3-enhanced) .timeline-stage{display:none}
body:not(.v3-enhanced) .typographic-index,body:not(.v3-enhanced) .scene-footer,body:not(.v3-enhanced) .motion-toggle,body:not(.v3-enhanced) .deck-toggle,body:not(.v3-enhanced) .filter-bar{display:none}
@media(max-width:760px){body:not(.v3-enhanced) .index-stage{grid-template-columns:1fr}}

/* Motion profiles belong to the art direction, not a separate user setting. */
body[data-motion-profile=calm] .button,body[data-motion-profile=calm] .index-panel{transition-duration:.4s}
body[data-motion-profile=crisp] .button,body[data-motion-profile=crisp] .index-panel{transition-duration:.18s}
body[data-motion-profile=flow] .button,body[data-motion-profile=flow] .index-panel{transition-duration:.28s}
body[data-motion-profile=calm] .ticker-track{animation-duration:42s!important}
body[data-motion-profile=crisp] .ticker-track{animation-duration:30s!important}

/* STD GEN 3.2 — independent, responsive composition grammar. No external assets. */
.v32{--gutter:52px;--space-section:110px;--heading-weight:400;--heading-track:-.045em;--heading-case:none;--line:color-mix(in srgb,var(--ink) 18%,transparent);font-family:var(--body);color:var(--ink);background:var(--paper);overflow-x:clip}
.v32 *, .v32 *:before,.v32 *:after{box-sizing:border-box}.v32 main{min-width:0}.v32 figure{margin:0;min-width:0}.v32 img{max-width:100%}.v32 h1,.v32 h2,.v32 h3{font-family:var(--display);font-weight:var(--heading-weight);letter-spacing:var(--heading-track);text-transform:var(--heading-case);overflow-wrap:anywhere}.v32 .section-wrap{padding:var(--space-section) var(--gutter);width:100%;max-width:1800px;margin-inline:auto}.v32 .section-heading{align-items:end;gap:35px;margin-bottom:42px}.v32 .section-heading h2{font-size:clamp(2rem,4vw,5.2rem);line-height:1.08}.v32 .section-heading .concept-note{max-width:46ch;font-size:12px}.v32 .button{min-height:44px;white-space:normal;text-align:center;line-height:1.2;gap:25px;max-width:100%;cursor:pointer}.v32 .quiet-link{font:14px var(--body);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px;max-width:100%;width:fit-content}.v32 .eyebrow,.v32 .kicker{font:11px var(--body);text-transform:uppercase;letter-spacing:.17em;line-height:1.6;overflow-wrap:anywhere}.v32 a:focus-visible,.v32 button:focus-visible,.v32 summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.v32 .demo-banner{position:relative;z-index:100;padding:5px;text-align:center;font:10px Arial;background:#ffedaa;color:#202020}.v32 .page-title h1{font-size:clamp(2.6rem,6vw,7.5rem)}
/* Ten navigation topologies, each with five genuine treatments. */
.v32 .header32{position:relative;top:auto;inset-inline:auto;display:grid;grid-template-columns:minmax(120px,1fr) auto minmax(36px,1fr);align-items:center;gap:20px;padding:22px var(--gutter);background:var(--paper);color:var(--ink);border:0;z-index:40;max-width:100%;width:auto;min-height:78px;backdrop-filter:none}
.v32 .header32 .brand{grid-column:1;grid-row:1;display:flex;align-items:center;gap:12px;font:clamp(16px,1.7vw,26px) var(--display);min-width:0;max-width:100%;color:inherit;line-height:1.15}.v32 .header32 .brand>span{overflow-wrap:anywhere}.v32 .header32 .brand>img{width:36px;height:36px;flex-shrink:0}.v32 .header32 #site-nav{display:flex;align-items:center;justify-content:center;gap:24px;grid-column:2;grid-row:1;min-width:0;max-width:100%;background:none;color:inherit;position:static;padding:0}.v32 .header32 #site-nav a{font:12px var(--body);color:inherit;line-height:1.4;text-decoration:none;display:flex;gap:6px;align-items:center;white-space:normal}.v32 .header32 #site-nav a:hover{text-decoration:underline;text-underline-offset:5px}.v32 .header32 .nav-number{display:none}.v32 .header32 .header-tools{display:flex;grid-column:3;grid-row:1;justify-content:end;gap:12px;min-width:0}.v32 .header32 .header-tools .social-links{display:flex;gap:8px}.v32 .header32 .header-tools .social-links a{padding:0;min-width:22px}.v32 .header32 .menu-toggle{display:none}.v32 .motion-toggle32{display:none;place-items:center;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);font:14px Arial;width:36px;height:36px;flex:0 0 36px;cursor:pointer}.v32.js32 .motion-toggle32{display:grid}
.v32 .header32.nav32-centered{grid-template-columns:1fr minmax(160px,auto) 1fr}.v32 .nav32-centered .brand{grid-column:2;justify-content:center}.v32 .nav32-centered #site-nav{grid-column:1;justify-content:start;gap:18px}.v32 .nav32-centered #site-nav a{font-size:11px}
.v32 .header32.nav32-splitnav{grid-template-columns:1fr 1fr minmax(180px,auto) 1fr 1fr;gap:12px}.v32 .nav32-splitnav .brand{grid-column:3;justify-content:center}.v32 .nav32-splitnav #site-nav{display:contents}.v32 .nav32-splitnav #site-nav a{grid-row:1;justify-content:center}.v32 .nav32-splitnav #site-nav a:nth-child(1){grid-column:1}.v32 .nav32-splitnav #site-nav a:nth-child(2){grid-column:2}.v32 .nav32-splitnav #site-nav a:nth-child(3){grid-column:4}.v32 .nav32-splitnav #site-nav a:nth-child(4){grid-column:5}.v32 .nav32-splitnav .header-tools{grid-row:2;grid-column:3;justify-content:center}.v32 .nav32-splitnav .header-tools .social-links{display:none}
.v32 .header32.nav32-stacked{grid-template-columns:1fr auto;gap:14px}.v32 .nav32-stacked .brand{grid-column:1/3;justify-content:center;font-size:32px}.v32 .nav32-stacked #site-nav{grid-column:1;grid-row:2;justify-content:center;border-top:1px solid var(--line);padding-top:15px}.v32 .nav32-stacked .header-tools{grid-column:2;grid-row:2}
.v32 .header32.nav32-floating{margin:18px var(--gutter);padding:18px 28px;border:1px solid var(--line);border-radius:80px;box-shadow:0 10px 26px #0001;background:var(--surface)}
.v32 .header32.nav32-overlay{position:absolute;top:18px;inset-inline:var(--gutter);background:color-mix(in srgb,var(--surface) 93%,transparent);padding:20px 24px;backdrop-filter:blur(8px);border:1px solid var(--line)}.v32.nav32-overlay .hero32{padding-top:138px}.v32.nav32-overlay:not(.page32-index) main{padding-top:110px}
.v32 .header32.nav32-editorial{grid-template-columns:1fr auto;align-items:end;border-bottom:3px double var(--ink)}.v32 .nav32-editorial .brand{grid-column:1;font-size:clamp(26px,3vw,48px)}.v32 .nav32-editorial #site-nav{grid-column:1;grid-row:2;justify-content:start;gap:35px}.v32 .nav32-editorial .header-tools{grid-column:2;grid-row:1/3}.v32 .nav32-editorial #site-nav .nav-number{display:inline;font-size:9px;color:var(--muted)}
.v32.nav32-vertical>header{float:inline-start;width:175px;position:sticky;top:0;grid-template-columns:1fr;padding:30px 20px;gap:30px;min-height:90vh;border-inline-end:1px solid var(--line)}.v32 .nav32-vertical .brand{grid-column:1;grid-row:1;flex-direction:column;text-align:center}.v32 .nav32-vertical #site-nav{grid-column:1;grid-row:2;flex-direction:column;align-items:start;gap:28px}.v32 .nav32-vertical .header-tools{grid-column:1;grid-row:3;justify-content:center;flex-wrap:wrap}.v32.nav32-vertical>main{margin-inline-start:175px}.v32.nav32-vertical>footer{clear:both}
.v32 .header32.nav32-index{grid-template-columns:1fr 2fr auto;align-items:stretch}.v32 .nav32-index #site-nav{justify-content:space-between;gap:0}.v32 .nav32-index #site-nav a{border-inline-start:1px solid var(--line);padding:7px 18px;flex-direction:column;align-items:start}.v32 .nav32-index #site-nav .nav-number{display:block;font-size:10px;color:var(--muted)}.v32 .nav32-index .header-tools{align-items:center}
.v32 .header32.nav32-compact{grid-template-columns:auto 1fr auto;padding-block:14px;min-height:64px}.v32 .nav32-compact .brand{font-size:18px}.v32 .nav32-compact .brand img{width:26px;height:26px}.v32 .nav32-compact #site-nav{justify-content:end}.v32 .nav32-compact .header-tools .social-links{display:none}
.v32 .header32.skin32-rule{border-bottom:1px solid var(--ink)}.v32 .header32.skin32-rule #site-nav a{border-bottom:1px solid var(--line);padding-block:8px}.v32 .header32.skin32-capsule #site-nav a{padding:9px 13px;border:1px solid var(--line);border-radius:40px}.v32 .header32.skin32-capsule #site-nav{gap:8px}.v32 .header32.skin32-solid{background:var(--accent);color:var(--on-accent)}.v32 .header32.skin32-solid .motion-toggle32{border-color:transparent}.v32 .header32.skin32-solid #site-nav .nav-number{color:inherit;opacity:.7}.v32 .header32 .header-context32{grid-column:1/-1;grid-row:1;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:11px;font:10px var(--body);letter-spacing:.15em;text-transform:uppercase}.v32 .header32.skin32-micro .brand,.v32 .header32.skin32-micro #site-nav,.v32 .header32.skin32-micro .header-tools{grid-row:2}.v32 .header32.nav32-stacked.skin32-micro #site-nav,.v32 .header32.nav32-stacked.skin32-micro .header-tools{grid-row:3}.v32 .header32.nav32-splitnav.skin32-micro #site-nav a{grid-row:2}.v32 .header32.nav32-splitnav.skin32-micro .header-tools{grid-row:3}.v32 .header32.nav32-editorial.skin32-micro #site-nav{grid-row:3}.v32 .header32.nav32-vertical.skin32-micro #site-nav{grid-row:3}.v32 .header32.nav32-vertical.skin32-micro .header-tools{grid-row:4}.v32 .header32.nav32-vertical .header-context32{flex-direction:column}
/* Twenty opening compositions. No rotations used to make portrait media fit. */
.v32 .hero32{position:relative;isolation:isolate;padding:60px var(--gutter) 34px;display:grid;gap:30px;align-items:center;min-width:0;width:100%;min-height:560px;max-width:1920px;margin-inline:auto;overflow:clip}.v32 .hero32-copy{position:relative;z-index:2;min-width:0;max-width:700px}.v32 .hero32 h1{font-size:clamp(3rem,5.8vw,7.1rem);line-height:.98;margin:18px 0 24px;max-width:16ch}.v32 .hero32-subtitle{font:clamp(14px,1.15vw,18px)/1.65 var(--body);max-width:54ch;color:var(--muted);margin:0}.v32 .hero32-actions{display:flex;align-items:center;gap:28px;margin-top:30px;flex-wrap:wrap}.v32 .hero32-tail{grid-column:1/-1;position:relative;z-index:3;display:flex;gap:20px;justify-content:space-between;align-items:center;font-size:12px;align-self:end;margin-top:4px}.v32 .hero32-tail>.quiet-link{margin-inline-start:auto;display:flex;gap:12px}.v32 .hero32-tail .social-links:empty{display:none}.v32 .hero32 figcaption{font:10px/1.5 var(--body);color:var(--muted);padding-top:10px;display:flex;justify-content:space-between;gap:20px}.v32 .hero32 img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.v32 .hero32-main{min-width:0;width:100%;height:500px;position:relative}.v32 .hero32-main img{height:calc(100% - 32px)}
.v32 .h32-cinematic-left,.v32 .h32-cinematic-center,.v32 .h32-cinematic-bottom{min-height:min(760px,88svh);padding-top:75px;color:#fff;max-width:none;background:#202622}.v32 .hero32-backdrop{position:absolute;inset:0;z-index:0}.v32 .hero32-backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#07100cd9,#07100c44 68%,#07100c25)}.v32 [class*=h32-cinematic] .hero32-subtitle{color:#f5f5ed}.v32 [class*=h32-cinematic] .hero32-tail,.v32 [class*=h32-cinematic] .hero32-tail a{color:#fff}.v32 .h32-cinematic-center .hero32-copy{margin-inline:auto;text-align:center;max-width:900px}.v32 .h32-cinematic-center h1{max-width:17ch;margin-inline:auto}.v32 .h32-cinematic-center .hero32-subtitle{margin-inline:auto}.v32 .h32-cinematic-center .hero32-actions{justify-content:center}.v32 .h32-cinematic-center .hero32-backdrop:after{background:#06100f70}.v32 .h32-cinematic-bottom{align-content:end;min-height:780px}.v32 .h32-cinematic-bottom .hero32-copy{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);max-width:none;gap:15px 60px;align-items:end}.v32 .h32-cinematic-bottom .hero32-copy>.eyebrow{grid-column:1/-1}.v32 .h32-cinematic-bottom h1{grid-column:1;grid-row:2/4;margin:0}.v32 .h32-cinematic-bottom .hero32-subtitle{grid-column:2}.v32 .h32-cinematic-bottom .hero32-actions{grid-column:2;margin:0}.v32 .h32-cinematic-bottom .hero32-backdrop:after{background:linear-gradient(0deg,#06100fed,transparent 95%)}
.v32 .h32-split,.v32 .h32-reverse,.v32 .h32-offset,.v32 .h32-window,.v32 .h32-book,.v32 .h32-framed,.v32 .h32-pedestal{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:35px 6vw}.v32 .h32-reverse .hero32-copy{grid-column:2;grid-row:1}.v32 .h32-reverse .hero32-main{grid-column:1;grid-row:1}.v32 .h32-offset{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start}.v32 .h32-offset .hero32-main{height:450px;margin-top:70px}.v32 .h32-window .hero32-main{background:var(--accent);padding:28px;border-radius:50% 50% 0 0;overflow:hidden;height:490px}.v32 .h32-window .hero32-main img{border-radius:50% 50% 0 0}.v32 .hero32-orbit{position:absolute;inset:40% 4% auto auto;width:130px;height:130px;border:1px solid var(--accent);border-radius:50%;z-index:-1}.v32 .h32-book{gap:0;padding-top:40px}.v32 .h32-book .hero32-copy{border:1px solid var(--line);border-inline-end:0;padding:38px;height:100%;display:flex;flex-direction:column;justify-content:center}.v32 .h32-book .hero32-main{padding:20px;border:1px solid var(--line);height:560px}.v32 .h32-book h1{font-size:clamp(2.8rem,4.5vw,6rem)}.v32 .h32-framed{border:14px solid var(--accent);width:calc(100% - var(--gutter)*2);margin:20px auto;padding:35px}.v32 .h32-framed .hero32-main{height:460px}.v32 .h32-framed h1{font-size:clamp(2.8rem,4.7vw,6rem)}.v32 .h32-pedestal{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);background:var(--surface)}.v32 .h32-pedestal .hero32-main{height:500px;padding:30px 40px;border-bottom:20px solid var(--line)}.v32 .h32-pedestal .hero32-main img{object-fit:contain}
.v32 .h32-panorama,.v32 .h32-poster,.v32 .h32-stacked{display:block}.v32 .h32-panorama .hero32-copy{display:grid;grid-template-columns:1.3fr 1fr;max-width:none;gap:20px 60px;align-items:center}.v32 .h32-panorama h1{grid-column:1;grid-row:2/4;margin:0;font-size:clamp(2.8rem,5vw,6rem)}.v32 .h32-panorama .eyebrow{grid-column:1/-1;margin:0}.v32 .h32-panorama .hero32-subtitle,.v32 .h32-panorama .hero32-actions{grid-column:2;margin:0}.v32 .hero32-panorama{height:295px;margin-top:34px!important}.v32 .hero32-panorama img{height:calc(100% - 30px)}.v32 .h32-panorama .hero32-tail{margin-top:16px}.v32 .h32-poster .hero32-copy{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:18px 50px;align-items:center}.v32 .h32-poster h1{grid-column:1/-1;max-width:none;font-size:clamp(3.4rem,7vw,9rem);margin:0}.v32 .h32-poster .eyebrow{grid-column:1/-1;margin:0}.v32 .h32-poster .hero32-subtitle{max-width:65ch}.v32 .h32-poster .hero32-actions{justify-content:end;margin:0}.v32 .hero32-wide{height:300px;margin:30px 0}.v32 .h32-stacked .hero32-copy{max-width:880px;margin-inline:auto;text-align:center}.v32 .h32-stacked h1{max-width:22ch;font-size:clamp(2.8rem,5vw,6rem)}.v32 .h32-stacked .hero32-subtitle{margin-inline:auto;max-width:60ch}.v32 .h32-stacked .hero32-actions{justify-content:center}.v32 .h32-stacked .hero32-wide{height:260px;width:80%;margin-inline:auto}
.v32 .h32-triptych{display:block}.v32 .h32-triptych .hero32-copy{max-width:none;display:grid;grid-template-columns:1.4fr 1fr;gap:12px 60px;align-items:center}.v32 .h32-triptych .eyebrow{grid-column:1/-1}.v32 .h32-triptych h1{grid-column:1;grid-row:2/4;margin:0;font-size:clamp(2.8rem,4.6vw,5.8rem)}.v32 .h32-triptych .hero32-actions{margin:0}.v32 .hero32-triptych{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:22px;margin-top:30px}.v32 .hero32-triptych figure{height:350px}.v32 .hero32-triptych figure:first-child{padding-top:36px}.v32 .hero32-triptych figure:last-child{padding-top:65px}.v32 .hero32-triptych img{height:calc(100% - 26px)}
.v32 .h32-rail{grid-template-columns:1fr 1.2fr;align-items:center}.v32 .hero32-rail{display:flex;min-width:0;overflow-x:auto;gap:18px;scroll-snap-type:x proximity;padding-block:8px 20px}.v32 .hero32-rail figure{flex:0 0 70%;height:470px;scroll-snap-align:start}.v32 .hero32-rail img{height:calc(100% - 35px)}.v32 .h32-rail .hero32-copy h1{font-size:clamp(2.8rem,5vw,6rem)}
.v32 .h32-mosaic,.v32 .h32-layers,.v32 .h32-catalogue{grid-template-columns:1fr 1.15fr;gap:36px}.v32 .hero32-board{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0}.v32 .hero32-tile{position:relative;display:block;min-width:0;height:215px;overflow:hidden;background:var(--surface)}.v32 .hero32-tile>span{position:absolute;inset:12px auto auto 12px;background:var(--surface);color:var(--ink);padding:5px 8px;font:10px var(--body)}.v32 .h32-mosaic .tile-0{grid-column:1/3;height:270px}.v32 .h32-mosaic .tile-3{display:none}.v32 .h32-layers .hero32-board{padding:26px 15px;gap:20px}.v32 .h32-layers .tile-0{margin-top:24px}.v32 .h32-layers .tile-1{margin-top:-15px}.v32 .h32-layers .tile-2{margin-inline-start:25px}.v32 .h32-layers .tile-3{margin-top:-32px}.v32 .h32-catalogue{grid-template-columns:1fr}.v32 .h32-catalogue .hero32-copy{display:grid;max-width:none;grid-template-columns:1.3fr 1fr;gap:12px 60px}.v32 .h32-catalogue .hero32-copy .eyebrow{grid-column:1/-1}.v32 .h32-catalogue h1{grid-column:1;grid-row:2/4;margin:0;font-size:clamp(2.6rem,4.5vw,6rem)}.v32 .h32-catalogue .hero32-actions{margin:0}.v32 .h32-catalogue .hero32-board{grid-template-columns:repeat(4,minmax(0,1fr))}.v32 .h32-catalogue .hero32-tile{height:300px}
.v32 .h32-diptych,.v32 .h32-diagonal{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.v32 .hero32-double{display:flex;gap:15px;height:480px;min-width:0}.v32 .hero32-double img{width:calc(50% - 8px)}.v32 .hero32-double img:nth-child(2){margin-top:45px;height:calc(100% - 45px)}.v32 .h32-diagonal .hero32-double{gap:0;clip-path:polygon(12% 0,100% 0,88% 100%,0 100%)}.v32 .h32-diagonal .hero32-double img{width:50%;height:100%;margin:0}
/* Twelve catalogue structures, six story/galleries, eight footer structures. */
.v32 .catalogue32 .product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 30px;min-width:0}.v32 .product-card{min-width:0}.v32 .product-info{align-items:start;flex-wrap:wrap;gap:10px}.v32 .product-info h3{font-size:clamp(24px,2.5vw,40px);min-width:0}.v32 .product-picture{max-height:580px}.v32 .product-summary{font-size:14px;line-height:1.65;max-width:56ch}.v32 .product-picture img{object-fit:cover}.v32 .grid32-columns .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.v32 .grid32-columns .product-info{flex-direction:column}.v32 .grid32-columns h3{font-size:26px}.v32 .grid32-ledger .product-grid{grid-template-columns:1fr;gap:0}.v32 .grid32-ledger .product-card{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(0,1.1fr) minmax(0,1fr);gap:25px;align-items:center;border-top:1px solid var(--line);padding:24px 0}.v32 .grid32-ledger .product-picture{grid-row:1/3;height:180px;aspect-ratio:4/3}.v32 .grid32-ledger .product-info{display:block}.v32 .grid32-ledger .price-caption{grid-column:2/4}.v32 .grid32-stagger .product-card:nth-child(even){margin-top:100px}.v32 .grid32-stagger .product-grid{column-gap:8vw}.v32 .grid32-feature .product-grid{grid-template-columns:1.4fr 1fr}.v32 .grid32-feature .product-card:first-child{grid-row:span 2}.v32 .grid32-feature .product-card:first-child .product-picture{height:670px;max-height:none}.v32 .grid32-feature .product-card:not(:first-child) .product-picture{height:250px;aspect-ratio:auto}.v32 .grid32-feature .product-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:20px}.v32 .grid32-feature .product-card:last-child .product-picture{grid-row:span 3}.v32 .grid32-portraits .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.v32 .grid32-portraits .product-picture{aspect-ratio:2/3}.v32 .grid32-portraits .product-info{display:block}.v32 .grid32-portraits h3{font-size:28px}.v32 .grid32-rail .product-grid{display:flex;overflow-x:auto;scroll-snap-type:x proximity;padding:10px 0 30px;gap:25px}.v32 .grid32-rail .product-card{flex:0 0 36%;scroll-snap-align:start}.v32 .grid32-gallery .product-grid{gap:100px 10vw;grid-template-columns:repeat(2,minmax(0,1fr))}.v32 .grid32-gallery .product-picture{padding:30px;background:var(--surface)}.v32 .grid32-gallery .product-picture img{object-fit:contain}.v32 .grid32-bento .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.v32 .grid32-bento .product-card{padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:24px}.v32 .grid32-bento .product-card:first-child{grid-column:span 2}.v32 .grid32-bento .product-card:first-child .product-picture{aspect-ratio:16/9}.v32 .grid32-bento .product-card:last-child{grid-column:span 2}.v32 .grid32-bento .product-card:last-child .product-picture{aspect-ratio:16/9}.v32 .grid32-mosaic .product-grid{grid-template-columns:1fr 1fr 1fr;align-items:start}.v32 .grid32-mosaic .product-card:nth-child(2){margin-top:80px}.v32 .grid32-mosaic .product-card:nth-child(3){margin-top:160px}.v32 .grid32-mosaic .product-card:nth-child(4){grid-column:1/4;max-width:65%;margin:auto}.v32 .grid32-contact .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;border:1px solid var(--ink);padding:8px}.v32 .grid32-contact .product-card{padding:10px;border:1px solid var(--line)}.v32 .grid32-contact .product-info h3{font-size:23px}.v32 .grid32-contact .product-info{display:block}.v32 .grid32-contact .product-summary{font-size:12px}.v32 .grid32-strip .product-grid{grid-template-columns:1fr;gap:60px}.v32 .grid32-strip .product-card{display:grid;grid-template-columns:1.3fr 1fr;gap:20px 6vw;align-items:center}.v32 .grid32-strip .product-picture{grid-row:1/4;aspect-ratio:16/9}.v32 .grid32-strip .product-card:nth-child(even) .product-picture{grid-column:2}.v32 .grid32-strip .product-card:nth-child(even)>:not(.product-picture){grid-column:1}
.v32 .editorial-story{margin:0 var(--gutter) var(--space-section);gap:6vw;min-height:0;overflow:clip}.v32 .story-image{height:600px;min-height:0;overflow:hidden}.v32 .story-image img{width:100%;height:100%;object-fit:cover}.v32 .story-copy{padding:40px 0;align-self:center}.v32 .story-copy h2{font-size:clamp(2.5rem,4.5vw,5.8rem)}.v32 .story-copy>p:not(.kicker){font:clamp(15px,1.3vw,20px)/1.7 var(--body)}.v32 .story32-reverse .story-image{grid-column:2;grid-row:1}.v32 .story32-reverse .story-copy{grid-column:1;grid-row:1}.v32 .story32-center{display:flex;flex-direction:column;align-items:center;text-align:center;gap:25px}.v32 .story32-center .story-copy{max-width:850px;order:-1}.v32 .story32-center .story-copy .quiet-link{margin-inline:auto}.v32 .story32-center .story-image{width:80%;height:450px}.v32 .story32-inset{background:var(--surface);padding:50px;border:1px solid var(--line)}.v32 .story32-inset .story-image{height:450px}.v32 .story32-columns{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:9vw}.v32 .story32-columns .story-image{height:450px;align-self:center}.v32 .story32-columns .story-copy>p:not(.kicker){column-count:2;column-gap:35px;font-size:16px}.v32 .story32-caption{display:block;position:relative}.v32 .story32-caption .story-image{height:620px}.v32 .story32-caption .story-copy{position:absolute;inset:auto 4% 4% auto;width:50%;padding:35px;background:var(--paper);border:1px solid var(--line)}.v32 .story32-caption h2{font-size:40px}.v32 .story32-caption .story-copy>p{font-size:15px}
.v32 .gallery32{padding-top:20px}.v32 .gallery32-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;align-items:start}.v32 .gallery32 figure{min-width:0}.v32 .gallery32 img{display:block;width:100%;height:340px;object-fit:cover}.v32 .gallery32 figcaption{display:flex;gap:16px;font:11px/1.5 var(--body);padding:13px 0;color:var(--muted)}.v32 .gallery32-mosaic figure:nth-child(4n+1){grid-column:span 2}.v32 .gallery32-mosaic figure:nth-child(4n+1) img{height:420px}.v32 .gallery32-columns .gallery32-grid{column-count:3;column-gap:25px;display:block}.v32 .gallery32-columns figure{break-inside:avoid;margin-bottom:24px}.v32 .gallery32-columns figure:nth-child(2n) img{height:470px}.v32 .gallery32-strip .gallery32-grid{display:flex;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:20px}.v32 .gallery32-strip figure{flex:0 0 42%;scroll-snap-align:center}.v32 .gallery32-contact .gallery32-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:10px;border:1px solid var(--line)}.v32 .gallery32-contact img{height:235px}.v32 .gallery32-contact figcaption{font-size:10px}.v32 .gallery32-stagger figure:nth-child(3n+2){margin-top:75px}.v32 .gallery32-stagger figure:nth-child(3n){margin-top:150px}.v32 .gallery32-framed figure{padding:22px;background:var(--surface);border:1px solid var(--line)}.v32 .gallery32-framed img{object-fit:contain;height:290px}
.v32 .faq{padding-top:20px;grid-template-columns:1fr 1.7fr;gap:8vw}.v32 .faq summary{display:flex;align-items:baseline;gap:14px;font-size:clamp(22px,2vw,32px);line-height:1.4;padding:24px 0}.v32 .faq summary>span:last-child{margin-inline-start:auto}.v32 .faq-index32{font:11px var(--body);color:var(--muted)}.v32 .faq details p{font:15px/1.7 var(--body);max-width:75ch}.v32 .closing{border-top:1px solid var(--line)}
.v32 .site-footer{padding:70px var(--gutter) 30px;color:var(--ink);background:var(--surface);border-top:1px solid var(--line);max-width:100%}.v32 .footer-top{grid-template-columns:1.2fr 1fr .65fr;gap:6vw}.v32 .footer-brand{font-family:var(--display);font-size:clamp(32px,4vw,60px);overflow-wrap:anywhere;line-height:1.1}.v32 .footer-top nav a{font-size:13px}.v32 .footer-bottom{align-items:start}.v32 .footer32-statement .footer-top{grid-template-columns:1.3fr 1fr}.v32 .footer32-statement .footer-top>div:first-child{grid-column:1/-1}.v32 .footer32-statement .footer-brand{font-size:clamp(50px,10vw,150px)}.v32 .footer32-statement nav{flex-direction:row;flex-wrap:wrap}.v32 .footer32-split .footer-top{grid-template-columns:1fr 1fr;gap:35px}.v32 .footer32-split .footer-top>nav{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:25px}.v32 .footer32-band .footer-top{display:flex;align-items:start;gap:50px;flex-wrap:wrap}.v32 .footer32-band .footer-top>*{flex:1 1 250px}.v32 .footer32-band nav{flex-direction:row;flex-wrap:wrap}.v32 .footer32-ledger .footer-top{gap:0}.v32 .footer32-ledger .footer-top>*{padding:0 25px;border-inline-start:1px solid var(--line)}.v32 .footer32-center .footer-top{display:flex;flex-direction:column;align-items:center;text-align:center;gap:35px}.v32 .footer32-center .social-links{justify-content:center}.v32 .footer32-center nav{flex-direction:row;flex-wrap:wrap;justify-content:center}.v32 .footer32-index .footer-top{grid-template-columns:1fr 1fr}.v32 .footer32-index .footer-top>nav{grid-column:1/-1;counter-reset:links;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.v32 .footer32-index nav a{border-top:1px solid var(--line);padding-top:16px;counter-increment:links}.v32 .footer32-index nav a:before{content:counter(links,decimal-leading-zero) " / ";font:10px var(--body);opacity:.6}.v32 .footer32-framed{margin:35px var(--gutter);padding:40px;border:1px solid var(--ink)}
/* Responsive collapse is deliberately structural, not scale-to-fit. */
@media(max-width:1120px){.v32{--gutter:36px!important}.v32 .header32 #site-nav{gap:15px}.v32 .header32 .header-tools .social-links{display:none}.v32 .header32 .brand{font-size:20px}.v32 .hero32 h1{font-size:clamp(2.8rem,5.6vw,5.7rem)}.v32 .h32-triptych .hero32-copy,.v32 .h32-panorama .hero32-copy{gap:15px 30px}.v32 .grid32-columns .product-grid,.v32 .grid32-portraits .product-grid,.v32 .grid32-contact .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v32 .hero32-main{height:470px}.v32 .h32-cinematic-bottom{min-height:730px}.v32 .story32-caption .story-copy{width:65%}.v32.nav32-vertical>header{width:145px;padding-inline:14px}.v32.nav32-vertical>main{margin-inline-start:145px}}
@media(max-width:760px){.v32{--gutter:20px!important;--space-section:60px!important}.v32 .section-wrap{padding-inline:20px}.v32 .section-heading{display:block;margin-bottom:28px}.v32 .section-heading>.concept-note{margin-top:15px}.v32 .header32,.v32.nav32-vertical>header,.v32 .header32.nav32-overlay{float:none;position:relative;inset:auto;top:auto;width:auto;min-height:68px;height:auto;margin:0;grid-template-columns:minmax(0,1fr) auto auto!important;gap:10px;padding:17px 20px!important;z-index:50;border-radius:0}.v32 .header32.nav32-floating{margin:12px;border-radius:16px}.v32 .header32 .brand{grid-column:1!important;grid-row:1!important;justify-content:start;flex-direction:row;text-align:start;font-size:19px!important;gap:10px}.v32 .header32 .brand>img{width:28px;height:28px}.v32 .header32 .header-tools{grid-column:3!important;grid-row:1!important;justify-content:end}.v32 .header32 .header-tools .social-links{display:none!important}.v32 .header32 .motion-toggle32{width:34px;height:34px;flex-basis:34px}.v32 .header32 .menu-toggle{display:flex!important;grid-column:2!important;grid-row:1!important;align-items:center;gap:9px;color:inherit;font:12px var(--body);border:0;background:transparent;padding:9px 3px;min-height:40px}.v32 .header32 #site-nav{display:none!important;position:absolute;inset:100% 0 auto!important;grid-column:auto!important;grid-row:auto!important;padding:20px!important;gap:10px!important;background:var(--surface)!important;color:var(--ink)!important;border-bottom:1px solid var(--line);box-shadow:0 12px 15px #0001;max-height:65svh;overflow-y:auto;z-index:70}.v32 .header32.menu-open #site-nav{display:flex!important;flex-direction:column;align-items:stretch!important}.v32 .header32 #site-nav a{display:flex!important;width:100%;padding:12px!important;flex-direction:row!important;font-size:15px!important;justify-content:start!important;border:0!important}.v32 .header32 .header-context32{display:none}.v32.nav32-vertical>main{margin-inline-start:0}.v32.nav32-overlay .hero32{padding-top:35px}.v32.nav32-overlay:not(.page32-index) main{padding-top:0}
.v32 .hero32{padding:35px 20px 26px;min-height:0;display:flex!important;flex-direction:column;align-items:stretch;gap:25px;width:100%;border-width:0}.v32 .hero32 h1{font-size:clamp(2.5rem,10vw,3.8rem)!important;line-height:1.03;max-width:18ch;margin:14px 0 20px}.v32 .hero32-copy{max-width:100%;display:block!important;padding:0;border:0;height:auto}.v32 .hero32-subtitle{font-size:14px;line-height:1.65;max-width:55ch}.v32 .hero32-actions{gap:23px;margin-top:24px!important;justify-content:start!important}.v32 .hero32 .button{padding:15px 20px;font-size:12px;gap:22px}.v32 .hero32-tail{margin-top:5px;width:100%}.v32 .hero32-tail .social-links a{font-size:10px}.v32 .hero32-main{height:360px!important;max-width:100%;margin:0!important}.v32 .hero32-main img{height:calc(100% - 27px)}.v32 .hero32 figcaption{font-size:9px}.v32 .h32-reverse .hero32-main{order:0}.v32 .h32-reverse .hero32-copy{order:1}.v32 .h32-reverse .hero32-tail{order:2}.v32 .h32-cinematic-left,.v32 .h32-cinematic-center,.v32 .h32-cinematic-bottom{min-height:700px;justify-content:center}.v32 .h32-cinematic-bottom{justify-content:end}.v32 [class*=h32-cinematic] .hero32-tail{margin-top:auto}.v32 .h32-cinematic-center .hero32-actions{justify-content:center!important}.v32 .h32-cinematic-center .hero32-copy{margin-block:auto}.v32 .h32-offset .hero32-main{width:86%;align-self:end}.v32 .h32-window .hero32-main{padding:20px;height:360px!important}.v32 .h32-book .hero32-copy{padding:20px;border:1px solid var(--line)}.v32 .h32-book .hero32-main{padding:15px;border:1px solid var(--line)}.v32 .h32-framed{border:8px solid var(--accent);width:calc(100% - 26px);padding:25px 18px;margin-block:13px}.v32 .h32-framed .hero32-main{height:320px!important}.v32 .h32-pedestal .hero32-main{padding:20px 35px;height:340px!important}.v32 .h32-stacked .hero32-actions{justify-content:center!important}.v32 .hero32-wide{margin:0!important;height:240px!important;width:100%!important}.v32 .hero32-panorama{margin:0!important;height:260px!important}.v32 .hero32-triptych{margin:0;gap:10px;width:100%;grid-template-columns:1fr 1fr 1fr}.v32 .hero32-triptych figure{height:260px}.v32 .hero32-triptych figure:first-child{padding-top:20px}.v32 .hero32-triptych figure:last-child{padding-top:40px}.v32 .hero32-rail{gap:12px}.v32 .hero32-rail figure{height:320px;flex-basis:75%}.v32 .hero32-board{width:100%;gap:10px!important;padding:0!important}.v32 .hero32-tile{height:165px!important}.v32 .h32-mosaic .tile-0{height:210px!important}.v32 .h32-layers .hero32-board{padding:20px 0!important}.v32 .h32-layers .hero32-tile{height:150px!important}.v32 .h32-catalogue .hero32-board{grid-template-columns:repeat(4,minmax(0,1fr))}.v32 .h32-catalogue .hero32-tile{height:155px!important}.v32 .hero32-double{height:330px;width:100%}.v32 .hero32-orbit{display:none}
.v32 .catalogue32 .product-grid{gap:28px 15px}.v32 .product-info h3{font-size:25px}.v32 .product-summary{font-size:12px}.v32 .grid32-ledger .product-card{grid-template-columns:120px minmax(0,1fr);gap:12px 18px}.v32 .grid32-ledger .product-picture{height:155px;grid-row:1/4}.v32 .grid32-ledger .product-info,.v32 .grid32-ledger .product-summary,.v32 .grid32-ledger .price-caption{grid-column:2}.v32 .grid32-ledger .product-info h3{font-size:23px}.v32 .grid32-stagger .product-card:nth-child(even){margin-top:40px}.v32 .grid32-feature .product-grid{grid-template-columns:1fr}.v32 .grid32-feature .product-card{grid-column:auto!important;grid-row:auto!important}.v32 .grid32-feature .product-card:first-child .product-picture{height:410px}.v32 .grid32-feature .product-card:last-child{display:block}.v32 .grid32-rail .product-card{flex-basis:82%}.v32 .grid32-gallery .product-grid{gap:35px 16px}.v32 .grid32-gallery .product-picture{padding:12px}.v32 .grid32-bento .product-grid{grid-template-columns:1fr 1fr}.v32 .grid32-bento .product-card{padding:12px;grid-column:auto!important;border-radius:16px}.v32 .grid32-bento .product-card .product-picture{aspect-ratio:3/4!important}.v32 .grid32-mosaic .product-grid{grid-template-columns:1fr 1fr}.v32 .grid32-mosaic .product-card:nth-child(2){margin-top:40px}.v32 .grid32-mosaic .product-card:nth-child(3){margin-top:0}.v32 .grid32-mosaic .product-card:nth-child(4){max-width:none;margin-top:40px;grid-column:auto}.v32 .grid32-contact .product-card{padding:7px}.v32 .grid32-contact h3{font-size:22px}.v32 .grid32-strip .product-card{display:block}.v32 .grid32-strip .product-picture{margin-bottom:18px}
.v32 .editorial-story{margin:0 20px 60px;grid-template-columns:1fr!important;display:grid;gap:25px}.v32 .story-image{height:360px!important;grid-column:1!important;grid-row:auto!important;width:100%!important}.v32 .story-copy{padding:0;grid-column:1!important;grid-row:auto!important}.v32 .story-copy h2{font-size:38px}.v32 .story-copy>p:not(.kicker){font-size:15px}.v32 .story32-inset{padding:22px;margin-inline:13px}.v32 .story32-center .story-copy{order:0}.v32 .story32-center .story-image{height:320px!important}.v32 .story32-columns .story-copy>p:not(.kicker){column-count:1}.v32 .story32-caption{display:block}.v32 .story32-caption .story-copy{position:relative;inset:auto;width:100%;padding:25px;border:1px solid var(--line);margin-top:-35px;z-index:2}.v32 .gallery32-grid{grid-template-columns:1fr 1fr!important;gap:22px 12px}.v32 .gallery32 img{height:235px!important}.v32 .gallery32-mosaic figure:nth-child(4n+1){grid-column:span 2}.v32 .gallery32-mosaic figure:nth-child(4n+1) img{height:320px!important}.v32 .gallery32-columns .gallery32-grid{column-count:2}.v32 .gallery32-strip figure{flex-basis:82%}.v32 .gallery32-contact .gallery32-grid{gap:8px;padding:7px}.v32 .gallery32-contact img{height:190px!important}.v32 .gallery32-stagger figure:nth-child(3n+2),.v32 .gallery32-stagger figure:nth-child(3n){margin-top:0}.v32 .gallery32-stagger figure:nth-child(even){margin-top:45px}.v32 .gallery32-framed figure{padding:10px}.v32 .gallery32-framed img{height:200px!important}.v32 .gallery32 figcaption{font-size:10px;gap:9px}
.v32 .faq{grid-template-columns:1fr;gap:24px}.v32 .faq summary{font-size:24px}.v32 .closing{grid-template-columns:1fr;gap:28px}.v32 .closing h2{font-size:48px}.v32 .site-footer{padding:45px 20px 25px}.v32 .footer-top{display:flex!important;flex-direction:column;gap:30px!important}.v32 .footer-top>*{padding:0!important;border:0!important;flex-basis:auto!important}.v32 .footer-top nav{display:flex!important;flex-direction:row;flex-wrap:wrap;gap:14px 24px}.v32 .footer32-statement .footer-brand{font-size:60px}.v32 .footer32-framed{margin:20px 13px;padding:30px 20px}.v32 .footer-bottom{flex-direction:column;gap:18px}.v32 .about-layout,.v32 .contact-layout{grid-template-columns:1fr}.v32 .policy{padding-top:45px}.v32 .policy h1{font-size:40px}.v32 .policy h2{font-size:25px}.v32 .dialog-copy h2{font-size:33px}}
@media(prefers-reduced-motion:reduce){.v32,.v32 *{scroll-behavior:auto!important}.v32 *,.v32 *:before,.v32 *:after{animation:none!important;transition:none!important}}
@media(max-width:760px){.v32:not(.js32) .header32 .menu-toggle{display:none!important}.v32:not(.js32) .header32 #site-nav{display:flex!important;position:static!important;grid-column:1/-1!important;grid-row:2!important;flex-wrap:wrap;max-height:none;box-shadow:none}.v32:not(.js32) .header32 #site-nav a{width:auto;font-size:13px!important}}

/* 50 motion patterns / progressive enhancement. Static content is the baseline. */
.scroll32{position:relative;padding:var(--space-section,80px) 0;isolation:isolate}
.m32-heading{padding:0 var(--gutter,48px) 32px;max-width:1040px}.m32-heading h2{font-family:var(--display);font-size:clamp(36px,5vw,84px);line-height:1.02;margin:12px 0 24px}.m32-statement{max-width:68ch;line-height:1.6}.m32-progress{margin:0 var(--gutter,48px);height:2px;background:color-mix(in srgb,var(--ink) 14%,transparent)}.m32-progress i{display:block;height:100%;background:var(--accent);transform:scaleX(var(--p32,0));transform-origin:left}
.m32-track{position:relative}.m32-pin{padding:28px var(--gutter,48px)}.m32-stage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;perspective:1600px}.m32-card{min-width:0;position:relative;display:flex;flex-direction:column;margin:0;background:var(--surface);color:var(--ink);transform-origin:center;overflow:hidden}.m32-card picture{display:block;overflow:hidden;min-width:0}.m32-card picture img{display:block;width:100%;height:clamp(220px,27vw,430px);object-fit:cover}.m32-copy{padding:22px;min-width:0}.m32-copy h3{font-size:clamp(20px,2.2vw,36px);font-family:var(--display);line-height:1.12;margin:12px 0}.m32-copy p{font-size:15px;line-height:1.6;margin:0;max-width:52ch;overflow-wrap:anywhere}.m32-index{font-size:11px;letter-spacing:.14em;text-transform:uppercase}.m32-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;align-items:stretch}.m32-controls button{display:flex;gap:12px;align-items:center;border:1px solid color-mix(in srgb,var(--ink) 28%,transparent);color:var(--ink);background:transparent;text-align:start;padding:12px 16px;max-width:calc(100% - 8px);font:inherit;cursor:pointer}.m32-controls button>span:first-child{font-size:11px}.m32-controls button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.m32-controls button:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.m32-count{margin-inline-start:auto;align-self:center;white-space:nowrap;font-size:12px}.m32-compare{position:relative;height:380px;overflow:hidden;margin-bottom:24px}.m32-compare>picture,.compare-crop{position:absolute;inset:0}.m32-compare img{width:100%;height:100%;object-fit:cover}.compare-crop{clip-path:inset(0 50% 0 0);border-inline-end:2px solid var(--paper)}.compare-crop img{transform:scale(1.55);transform-origin:60% 50%}.m32-compare>span{position:absolute;bottom:16px;left:16px;background:var(--paper);padding:8px 14px}
/* Distinct layout grammars, including their readable non-animated states. */
.s32-timeline .m32-stage,.s32-steps .m32-stage{grid-template-columns:1fr;max-width:1080px;margin:auto}.s32-timeline .m32-card,.s32-steps .m32-card{display:grid;grid-template-columns:1fr 1.3fr}.s32-timeline .m32-card{border-inline-start:3px solid var(--accent);margin-inline-start:24px}.s32-timeline .m32-card:before{content:'';width:14px;height:14px;position:absolute;left:-8px;top:32px;background:var(--accent);border-radius:50%}.s32-steps .m32-index{font-family:var(--display);font-size:32px}
.s32-masonry .m32-stage{align-items:start}.s32-masonry .m32-card:nth-child(2){margin-top:70px}.s32-masonry .m32-card:nth-child(3){margin-top:24px}.s32-masonry .m32-card:nth-child(2) img{height:400px}.s32-alternating .m32-stage{gap:40px}.s32-alternating .m32-card:nth-child(2){flex-direction:column-reverse}.s32-contact .m32-stage{gap:8px;padding:8px;background:var(--ink)}.s32-contact .m32-card{border:8px solid var(--paper)}.s32-frame .m32-stage{border:24px solid var(--ink);gap:0}.s32-frame .m32-copy{border-inline-end:1px solid var(--ink)}.s32-overlap .m32-card{border:1px solid var(--ink)}.s32-overlap .m32-card:nth-child(2){margin-top:45px}.s32-overlap .m32-card:nth-child(3){margin-top:90px}.s32-color .m32-stage,.s32-theme .m32-stage{padding:24px;border:1px solid currentColor}.s32-words .m32-statement{font-size:clamp(24px,3.3vw,54px);font-family:var(--display);line-height:1.25}.s32-type-scale .m32-heading h2,.s32-type-track .m32-heading h2,.s32-marquee .m32-heading h2{font-size:clamp(48px,8vw,130px);overflow-wrap:anywhere}.s32-orbit .m32-card,.s32-float .m32-card{border-radius:24px}.s32-counter .m32-index{font-size:clamp(40px,6vw,84px);font-family:var(--display);color:var(--accent)}.s32-snap .m32-stage,.s32-softsnap .m32-stage{display:flex;overflow-x:auto;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-width:thin}.s32-snap .m32-card{flex:0 0 84%;scroll-snap-align:center;display:grid;grid-template-columns:1.4fr 1fr;align-items:center}.s32-softsnap .m32-card{flex:0 0 60%;scroll-snap-align:start}.s32-snap .m32-card img{height:440px}.s32-softsnap .m32-card img{height:360px}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){
.motion-enabled32 .s32-heavy .m32-track{height:230vh;min-height:1800px}.motion-enabled32 .s32-heavy .m32-pin{position:sticky;top:20px;height:calc(100svh - 30px);max-height:1020px;display:flex;flex-direction:column;justify-content:center;overflow:clip}.motion-enabled32 .s32-heavy .m32-stage{position:relative;display:grid;grid-template-columns:1fr;flex:1;min-height:0;max-height:700px}.motion-enabled32 .s32-heavy .m32-card{grid-area:1/1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;min-height:0;box-shadow:0 16px 45px #00000015}.motion-enabled32 .s32-heavy .m32-card picture{height:100%}.motion-enabled32 .s32-heavy .m32-card img{height:100%;max-height:700px}.motion-enabled32 .s32-heavy .m32-copy{padding:clamp(24px,4vw,72px)}.motion-enabled32 .s32-heavy .m32-copy h3{font-size:clamp(26px,4vw,60px)}.motion-enabled32 .s32-heavy .m32-controls{flex-shrink:0}.motion-enabled32 .s32-horizontal .m32-stage,.motion-enabled32 .s32-journey .m32-stage{display:flex;gap:24px;overflow:visible}.motion-enabled32 .s32-horizontal .m32-card,.motion-enabled32 .s32-journey .m32-card{flex:0 0 85%;display:flex;flex-direction:column;justify-content:space-between}.motion-enabled32 .s32-horizontal .m32-card picture,.motion-enabled32 .s32-journey .m32-card picture{height:60%;width:100%}.motion-enabled32 .s32-horizontal .m32-copy,.motion-enabled32 .s32-journey .m32-copy{padding:18px 28px}.motion-enabled32 .s32-horizontal .m32-copy h3,.motion-enabled32 .s32-journey .m32-copy h3{font-size:30px}.motion-enabled32 .s32-journey .m32-card{flex-direction:row;align-items:center}.motion-enabled32 .s32-journey .m32-card picture{height:100%;width:55%}.motion-enabled32 .s32-journey .m32-copy{width:45%}.motion-enabled32 .s32-pin-hero .m32-card,.motion-enabled32 .s32-background .m32-card,.motion-enabled32 .s32-sequence .m32-card{display:block}.motion-enabled32 .s32-pin-hero .m32-copy,.motion-enabled32 .s32-background .m32-copy,.motion-enabled32 .s32-sequence .m32-copy{position:absolute;bottom:6%;left:5%;max-width:55%;background:var(--paper);color:var(--ink);padding:28px}.motion-enabled32 .s32-split .m32-card,.motion-enabled32 .s32-sync .m32-card{grid-template-columns:1fr 1fr}.motion-enabled32 .s32-product .m32-card{grid-template-columns:1fr 1.1fr}.motion-enabled32 .s32-product img{object-fit:contain!important;background:var(--paper)}.motion-enabled32 .s32-compare .m32-compare{height:54svh;flex-shrink:0}.motion-enabled32 .s32-compare .m32-stage{max-height:190px;min-height:160px}.motion-enabled32 .s32-compare .m32-card{display:block}.motion-enabled32 .s32-compare .m32-card picture{display:none}.motion-enabled32 .s32-compare .m32-copy{padding:12px 24px}.motion-enabled32 .s32-compare .m32-copy h3{font-size:24px}.motion-enabled32 .s32-depth .m32-stage{perspective:1200px}.motion-enabled32 .s32-page .m32-card{transform-origin:left center;backface-visibility:hidden}.motion-enabled32 .s32-stack .m32-card,.motion-enabled32 .s32-unstack .m32-card{border:1px solid var(--ink)}
}
@media(max-width:900px){.m32-heading{padding-bottom:18px}.m32-stage{grid-template-columns:1fr}.m32-card{display:grid;grid-template-columns:1fr 1fr}.m32-card img{height:100%!important;min-height:220px;max-height:440px}.m32-card .m32-copy{padding:22px}.m32-card h3{font-size:25px}.m32-controls button{font-size:12px;padding:10px}.m32-count{display:none}.s32-masonry .m32-card,.s32-overlap .m32-card{margin-top:0!important}.s32-frame .m32-stage{border-width:10px}.s32-snap .m32-card,.s32-softsnap .m32-card{flex:0 0 92%;display:flex;flex-direction:column}.s32-timeline .m32-card{margin-inline-start:0}.s32-type-track .m32-heading,.s32-marquee .m32-heading{overflow-wrap:anywhere}}
@media(max-width:540px){.m32-card,.s32-timeline .m32-card,.s32-steps .m32-card{display:flex;flex-direction:column}.m32-card img{height:280px!important;min-height:0}.m32-controls{gap:6px}.m32-controls button{width:100%;max-width:100%}.m32-heading h2{font-size:36px}.m32-compare{height:300px}.s32-frame .m32-stage{border-width:8px}.s32-alternating .m32-card:nth-child(2){flex-direction:column}}
/* Explicit pause / accessibility always restores readable document flow. */
body:not(.motion-enabled32) .scroll32 .m32-card,body:not(.motion-enabled32) [data-secondary32]{transform:none!important;opacity:1!important;filter:none!important;clip-path:none!important}body:not(.motion-enabled32) .m32-heading,body:not(.motion-enabled32) .m32-statement span{transform:none!important;opacity:1!important}body:not(.motion-enabled32) .m32-progress i{transform:none}
@media(prefers-reduced-motion:reduce){.scroll32 *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.scroll32 .m32-card,.scroll32 .m32-card img,.scroll32 .m32-stage,.scroll32 .m32-heading,.scroll32 .m32-statement span,[data-secondary32]{transform:none!important;opacity:1!important;filter:none!important;clip-path:none!important}.m32-track{height:auto!important;min-height:0!important}.m32-pin{position:static!important;height:auto!important;max-height:none!important}.m32-stage{overflow:visible!important;display:grid!important}.m32-card{position:relative!important;grid-area:auto!important}.m32-progress i{transform:none}}
/* Clip only decorative horizontal displacement; clip does not create a scroll container. */
.scroll32{overflow-x:clip}.m32-heading{overflow-x:clip}

/* 3.2.2: Image slot contract.  visual_assets.picture() emits a bare <img>,
   not a nested <picture>. Earlier rules targeted "picture img", so images
   grew to native dimensions and covered the adjacent copy/entire viewport. */
.scroll32 .m32-card>img{
  display:block;width:100%;height:clamp(220px,27vw,410px);max-width:100%;
  object-fit:cover;object-position:center;aspect-ratio:4/3;
  flex:0 0 auto;min-width:0;min-height:0;
}
.scroll32 .m32-card{min-width:0;min-height:0;overflow:hidden}
.scroll32 .m32-copy{min-width:0;overflow-wrap:anywhere}
.scroll32 .m32-copy h3{max-width:18ch;line-height:1.1;overflow-wrap:anywhere}
.scroll32 .m32-copy p{max-width:60ch;line-height:1.6}
/* Background/scene and horizontal modes need their own bounded media areas. */
@media (min-width:901px) and (prefers-reduced-motion:no-preference){
  .motion-enabled32 .s32-heavy .m32-card{height:100%;min-height:0;max-height:100%;overflow:hidden}
  .motion-enabled32 .s32-heavy .m32-card>img{
    height:100%;width:100%;max-height:none;aspect-ratio:auto;object-fit:cover;
    min-height:0;min-width:0;align-self:stretch;flex:0 0 auto;
  }
  .motion-enabled32 .s32-heavy .m32-card .m32-copy{
    display:flex;flex-direction:column;justify-content:center;gap:12px;
    height:100%;min-height:0;max-height:100%;overflow-y:auto;overscroll-behavior:contain;
    scrollbar-width:thin;
  }
  .motion-enabled32 .s32-heavy .m32-copy h3{margin:0;max-width:16ch;font-size:clamp(26px,3.5vw,54px)}
  .motion-enabled32 .s32-heavy .m32-copy p{font-size:clamp(14px,1.08vw,17px);margin:0;line-height:1.6}
  .motion-enabled32 .s32-horizontal .m32-card>img,
  .motion-enabled32 .s32-journey .m32-card>img{height:59%;width:100%;flex:0 0 59%}
  .motion-enabled32 .s32-horizontal .m32-card .m32-copy{
    height:41%;padding:18px 28px;justify-content:center;
  }
  .motion-enabled32 .s32-journey .m32-card>img{height:100%;width:55%;flex:0 0 55%}
  .motion-enabled32 .s32-journey .m32-card .m32-copy{height:100%;width:45%;padding:25px}
  .motion-enabled32 .s32-pin-hero .m32-card>img,
  .motion-enabled32 .s32-background .m32-card>img,
  .motion-enabled32 .s32-sequence .m32-card>img{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  }
  .motion-enabled32 .s32-pin-hero .m32-copy,
  .motion-enabled32 .s32-background .m32-copy,
  .motion-enabled32 .s32-sequence .m32-copy{
    position:absolute;bottom:5%;left:4%;width:min(560px,55%);
    max-width:55%;height:auto;max-height:88%;background:var(--paper);color:var(--ink);
    padding:clamp(18px,3vw,36px);overflow:auto;
  }
  .motion-enabled32 .s32-compare .m32-card>img{display:none}
}
@media(max-width:900px){
  .scroll32 .m32-card>img{height:clamp(220px,30vw,360px)!important;min-height:0!important;width:100%;object-fit:cover}
  .scroll32 .m32-card .m32-copy{height:auto;overflow:visible}
  .scroll32 .m32-card h3{max-width:23ch;font-size:clamp(21px,3vw,31px)}
}
@media(max-width:540px){
  .scroll32 .m32-card>img{height:clamp(210px,66vw,295px)!important;aspect-ratio:4/3}
  .scroll32 .m32-copy{padding:18px 18px 22px!important}
  .scroll32 .m32-controls{margin-top:14px}
  .scroll32 .m32-heading{padding-top:0;padding-bottom:22px}
}

/* 3.2.3 Original local interaction signatures; readable when JS is disabled. */
.v32 .sig323{--sig-paper:var(--paper); --sig-ink:var(--ink); position:relative;overflow:clip;padding:clamp(36px,7vw,120px) max(16px,var(--gutter)) 56px;background:var(--paper);color:var(--ink)}
.v32 .sig323-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:end;gap:40px;max-width:1450px;margin:0 auto clamp(35px,5vw,76px)}
.v32 .sig323-intro h2{font-size:clamp(42px,6vw,108px);line-height:.99;letter-spacing:-.055em;overflow-wrap:anywhere;max-width:14ch}
.v32 .sig323-intro>p{max-width:54ch;font-size:clamp(14px,1.3vw,19px);line-height:1.65}
.v32 .sig323-track{position:relative;max-width:1450px;margin:auto}
.v32 .sig323-sticky{position:relative}
.v32 .sig323-viewport{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,32px);perspective:1500px}
.v32 .sig323-panel{position:relative;min-width:0;overflow:hidden;background:var(--surface);isolation:isolate}
.v32 .sig323-image{width:100%;height:clamp(240px,35vw,590px);position:relative;overflow:hidden}
.v32 .sig323-image>img,.v32 .sig323-image>picture,.v32 .sig323-image picture img{display:block;width:100%;height:100%;object-fit:cover;max-width:100%;max-height:none}
.v32 .sig323-caption{position:relative;padding:clamp(19px,2.3vw,38px);min-height:165px;background:var(--surface);color:var(--ink);overflow-wrap:anywhere}
.v32 .sig323-caption h3{font-size:clamp(24px,3.2vw,48px);font-family:var(--display);font-weight:400;line-height:1.08;max-width:22ch}
.v32 .sig323-caption p{max-width:55ch;font-size:clamp(13px,1.1vw,16px);line-height:1.6;margin-top:12px}
.v32 .sig323-n{font-size:11px;letter-spacing:.15em;display:block;margin-bottom:15px}
.v32 .sig323-footer{display:flex;align-items:center;gap:clamp(15px,2vw,32px);padding:22px 5px;max-width:1450px;margin:auto}
.v32 .sig323-progress{flex:1;height:2px;background:color-mix(in srgb,var(--ink) 24%,transparent);overflow:hidden}
.v32 .sig323-progress span{display:block;width:100%;height:100%;background:var(--accent);transform:scaleX(var(--sig-p,0));transform-origin:0 50%}
.v32 .sig323-footer nav{display:flex;gap:7px;align-items:center}
.v32 .sig323-footer nav button{min-width:42px;min-height:42px;border:1px solid currentColor;background:transparent;color:inherit;font-size:12px}
.v32 .sig323-footer nav button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.v32 .sig323-footer nav button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.v32 .sig323-current{font-size:12px;letter-spacing:.1em;white-space:nowrap}
.v32 .sig323-fallback-note{max-width:1450px;margin:18px auto 0;color:var(--muted);font-size:14px}
/* A signature occupies one distinct stage in each site; every stage changes
   photographic geometry and not just an animation name. */
@media(min-width:901px) and (prefers-reduced-motion:no-preference){
body.js32.motion-enabled32 .sig323-track{height:340vh;max-width:none}
body.js32.motion-enabled32 .sig323-sticky{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;justify-content:center;max-width:1500px;margin:auto;min-height:680px}
body.js32.motion-enabled32 .sig323-viewport{height:min(75svh,790px);width:100%;min-height:0;display:block;overflow:hidden;perspective:1500px}
body.js32.motion-enabled32 .sig323-panel{position:absolute;inset:0;display:flex;align-items:stretch;flex-direction:row;opacity:0;transform:translate3d(0,0,0);will-change:transform,opacity,clip-path}
body.js32.motion-enabled32 .sig323-image{height:100%;flex:1 1 65%;min-width:0}
body.js32.motion-enabled32 .sig323-caption{flex:0 1 35%;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:clamp(25px,3vw,60px)}
body.js32.motion-enabled32 .sig323-caption h3{font-size:clamp(33px,4vw,68px)}
body.js32.motion-enabled32 .sig323-fallback-note{display:none}
body.js32.motion-enabled32 .sig323-cinematic-chapters .sig323-panel{display:block}
body.js32.motion-enabled32 .sig323-cinematic-chapters .sig323-image{position:absolute;inset:0;width:100%;height:100%}
body.js32.motion-enabled32 .sig323-cinematic-chapters .sig323-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.72),transparent 90%),linear-gradient(0deg,rgba(5,5,5,.5),transparent 65%);pointer-events:none}
body.js32.motion-enabled32 .sig323-cinematic-chapters .sig323-caption{position:absolute;left:5%;bottom:7%;max-width:min(60ch,68%);padding:0;min-height:0;background:transparent;color:white}
body.js32.motion-enabled32 .sig323-cinematic-chapters .sig323-caption h3{font-size:clamp(42px,5.5vw,90px)}
body.js32.motion-enabled32 .sig323-sideways-runway .sig323-viewport{display:flex;gap:3vw;overflow:clip}
body.js32.motion-enabled32 .sig323-sideways-runway .sig323-panel{position:relative;flex:0 0 80%;opacity:1;display:flex;flex-direction:row}
body.js32.motion-enabled32 .sig323-unfurl-3d .sig323-panel{top:10%;bottom:10%;left:8%;right:8%;display:block;transform-style:preserve-3d;backface-visibility:hidden}
body.js32.motion-enabled32 .sig323-unfurl-3d .sig323-image{position:absolute;inset:0;height:100%;width:100%}
body.js32.motion-enabled32 .sig323-unfurl-3d .sig323-caption{position:absolute;bottom:0;left:0;right:0;min-height:0;padding:18px 36px;background:color-mix(in srgb,var(--surface) 94%,transparent);max-height:35%;overflow:auto}
body.js32.motion-enabled32 .sig323-unfurl-3d .sig323-caption h3{font-size:clamp(28px,3vw,42px)}
body.js32.motion-enabled32 .sig323-converge .sig323-panel{width:45%;height:45%;inset:auto;display:block;opacity:1}
body.js32.motion-enabled32 .sig323-converge .sig323-image{height:100%;width:100%}
body.js32.motion-enabled32 .sig323-converge .sig323-caption{position:absolute;inset:auto 0 0 0;min-height:0;padding:12px 20px;background:color-mix(in srgb,var(--surface) 94%,transparent)}
body.js32.motion-enabled32 .sig323-converge .sig323-caption h3{font-size:clamp(18px,2vw,28px)}
body.js32.motion-enabled32 .sig323-converge .sig323-caption p{display:none}
body.js32.motion-enabled32 .sig323-sticky-split .sig323-panel{display:flex;flex-direction:row}
body.js32.motion-enabled32 .sig323-sticky-split .sig323-image{flex-basis:55%}
body.js32.motion-enabled32 .sig323-sticky-split .sig323-caption{flex-basis:45%}
body.js32.motion-enabled32 .sig323-stack-stage .sig323-panel{width:88%;left:6%;right:6%;border:1px solid var(--line);box-shadow:0 16px 55px rgba(0,0,0,.22);transform-origin:center bottom}
body.js32.motion-enabled32 .sig323-expand-reveal .sig323-viewport{overflow:visible}
body.js32.motion-enabled32 .sig323-expand-reveal .sig323-panel{inset:0;display:block;clip-path:inset(30% 35% round 30px)}
body.js32.motion-enabled32 .sig323-expand-reveal .sig323-image{position:absolute;inset:0;height:100%;width:100%}
body.js32.motion-enabled32 .sig323-expand-reveal .sig323-caption{position:absolute;bottom:0;left:0;right:0;min-height:0;padding:24px 36px;background:color-mix(in srgb,var(--surface) 94%,transparent)}
body.js32.motion-enabled32 .sig323-gallery-focus .sig323-panel{width:82%;left:9%;right:9%;top:6%;bottom:6%;box-shadow:0 18px 65px #0004}
}
@media(max-width:900px){.v32 .sig323{padding:60px 22px 35px}.v32 .sig323-intro{display:block;margin-bottom:35px}.v32 .sig323-intro h2{font-size:clamp(37px,8vw,60px)}.v32 .sig323-intro>p{margin-top:22px}.v32 .sig323-track{height:auto!important}.v32 .sig323-sticky{position:relative!important;height:auto!important;min-height:0!important}.v32 .sig323-viewport{display:grid!important;grid-template-columns:1fr 1fr;gap:14px;overflow:visible!important;height:auto!important}.v32 .sig323-panel{position:relative!important;display:block!important;opacity:1!important;transform:none!important;clip-path:none!important;filter:none!important;inset:auto!important;width:auto!important;height:auto!important;max-height:none!important}.v32 .sig323-image{height:280px!important;width:100%!important}.v32 .sig323-caption{position:relative!important;color:var(--ink)!important;background:var(--surface)!important;min-height:0!important;max-width:none!important;max-height:none!important;flex:auto!important;padding:20px!important}.v32 .sig323-caption h3{font-size:clamp(23px,3vw,34px)!important}.v32 .sig323-footer{gap:12px}.v32 .sig323-footer nav button{min-width:38px;min-height:38px}.v32 .sig323-fallback-note{display:block!important}}
@media(max-width:560px){.v32 .sig323-viewport{grid-template-columns:1fr!important}.v32 .sig323-image{height:clamp(260px,70vw,420px)!important}.v32 .sig323-intro h2{font-size:clamp(34px,10vw,51px)}.v32 .sig323-progress{display:none}.v32 .sig323-footer{flex-wrap:wrap;justify-content:space-between}.v32 .sig323-caption p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.v32 .sig323 *{transition:none!important;animation:none!important;transform:none!important;clip-path:none!important;opacity:1!important}.v32 .sig323-track{height:auto!important}.v32 .sig323-panel{position:relative!important;display:block!important}.v32 .sig323-sticky{position:relative!important;height:auto!important}}
/* FAB is distinct from removed motion-toggle: actions must have real href. */
.v32 .sig323-fab{position:fixed;inset:auto clamp(16px,2vw,30px) clamp(18px,2vw,32px) auto;z-index:120;display:grid;justify-items:end;gap:12px;max-width:calc(100vw - 32px)}
.v32 .sig323-fab>button{display:flex;align-items:center;gap:10px;border:0;background:var(--ink);color:var(--paper);border-radius:50px;min-height:54px;min-width:54px;padding:10px 18px;box-shadow:0 12px 40px #0003;font-size:13px;cursor:pointer}
.v32 .sig323-fab>button>span:first-child{font-size:25px;transition:transform .3s}
.v32 .sig323-fab[data-open=true]>button>span:first-child{transform:rotate(45deg)}
.v32 .sig323-fab-menu{display:grid;gap:8px;transform:translateY(12px) scale(.94);transform-origin:bottom right;opacity:0;pointer-events:none;visibility:hidden;transition:transform .32s cubic-bezier(.16,1,.3,1),opacity .25s,visibility .25s}
.v32 .sig323-fab[data-open=true] .sig323-fab-menu{transform:none;opacity:1;pointer-events:auto;visibility:visible}
.v32 .sig323-fab-menu a{display:flex;align-items:center;gap:12px;max-width:min(360px,calc(100vw - 40px));padding:12px 19px;background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:0 10px 25px #0002;border-radius:10px;white-space:normal;overflow-wrap:anywhere;font-size:13px;text-align:start}
.v32 .sig323-fab-menu a span:first-child{font-size:22px;flex:0 0 24px}
@media(max-width:560px){.v32 .sig323-fab>button{min-width:48px;min-height:48px}.v32 .sig323-fab-label{font-size:12px}}
@media(prefers-reduced-motion:reduce){.v32 .sig323-fab *{transition:none!important}}
/* Premium restrained 3D/pointer and gallery interactions; no text hidden by default. */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .v32 [data-sig-tilt]{--sig-rx:0deg;--sig-ry:0deg;transform:perspective(1000px) rotateX(var(--sig-rx)) rotateY(var(--sig-ry));transition:transform .24s ease-out;transform-style:preserve-3d}
 .v32 [data-sig-magnet]{translate:var(--mag-x,0px) var(--mag-y,0px);transition:translate .25s cubic-bezier(.15,.75,.3,1)}
 .v32 [data-sig-shimmer]:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at var(--sig-x,50%) var(--sig-y,50%),rgba(255,255,255,.28),transparent 56%);opacity:0;transition:opacity .25s}
 .v32 [data-sig-shimmer]:hover:after{opacity:1}
}
.v32 .sig323-trail{position:absolute;inset:0;z-index:6;pointer-events:none;overflow:hidden}
.v32 .sig323-trail>img{position:absolute;top:0;left:0;width:clamp(65px,9vw,130px);height:clamp(75px,11vw,160px);object-fit:cover;pointer-events:none;opacity:0;will-change:transform,opacity;border:3px solid var(--paper);box-shadow:0 8px 25px #0005}
.v32 .hero32 [data-sig-shimmer]{position:relative}
.v32 .sig323-progress-nav{position:fixed;left:0;top:0;height:3px;width:100%;z-index:180;pointer-events:none;background:var(--accent);transform:scaleX(var(--progress323,0));transform-origin:left}
.v32 .sig323-mask-wipe{position:relative;overflow:clip}
.v32 .sig323-mask-wipe::after{content:'';position:absolute;inset:0;background:var(--accent);pointer-events:none;transform:scaleX(0);transform-origin:right}
.v32 .sig323-mask-wipe.sig323-in::after{animation:sig323-wipe .85s cubic-bezier(.65,0,.35,1) both}
@keyframes sig323-wipe{0%{transform:scaleX(1)}100%{transform:scaleX(0)}}
.v32 .sig323-lightbox{border:0;padding:0;max-width:94vw;max-height:94svh;background:#111;color:white;overflow:hidden;box-shadow:0 20px 80px #000a}
.v32 .sig323-lightbox::backdrop{background:rgba(0,0,0,.86)}
.v32 .sig323-lightbox img{display:block;max-width:90vw;max-height:82svh;width:auto;height:auto;object-fit:contain;margin:auto}
.v32 .sig323-lightbox header{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:12px 22px;background:#111}
.v32 .sig323-lightbox button{background:#333;border:1px solid #aaa;color:white;min-width:42px;min-height:42px;border-radius:50%}
.v32 .sig323-lightbox button:focus-visible{outline:2px solid white;outline-offset:3px}
/* Curated gallery treatments. All images remain accessible and independently viewable. */
.v32 [data-gallery323="masonry-lightbox"] .gallery32-grid{display:block;columns:3;column-gap:clamp(12px,2vw,32px)}
.v32 [data-gallery323="masonry-lightbox"] figure{display:inline-block;break-inside:avoid;width:100%;margin:0 0 26px}
.v32 [data-gallery323="masonry-lightbox"] figure:nth-child(3n+2) img{height:clamp(240px,27vw,420px)!important}
.v32 [data-gallery323="masonry-lightbox"] figure:nth-child(3n+1) img{height:clamp(250px,35vw,500px)!important}
.v32 [data-gallery323="hover-expand"] .gallery32-grid{display:flex;gap:10px;min-height:500px}
.v32 [data-gallery323="hover-expand"] figure{min-width:0;flex:1 1 0;transition:flex-grow .6s cubic-bezier(.16,1,.3,1)}
.v32 [data-gallery323="hover-expand"] figure:first-child{flex-grow:3}
@media(hover:hover) and (pointer:fine){.v32 [data-gallery323="hover-expand"] figure:hover,.v32 [data-gallery323="hover-expand"] figure:focus-within{flex-grow:4}}
.v32 [data-gallery323="hover-expand"] figure img{height:clamp(400px,38vw,620px)!important;object-fit:cover}
.v32 [data-gallery323="photo-deck"] .gallery32-grid,.v32 [data-gallery323="thumbnail-carousel"] .gallery32-grid{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;overscroll-behavior-x:contain;padding-bottom:20px}
.v32 [data-gallery323="photo-deck"] figure,.v32 [data-gallery323="thumbnail-carousel"] figure{flex:0 0 clamp(260px,46%,730px);scroll-snap-align:center;min-width:0}
.v32 [data-gallery323="photo-deck"] figure img,.v32 [data-gallery323="thumbnail-carousel"] figure img{height:clamp(330px,38vw,580px)!important}
.v32 [data-gallery323="photo-deck"] figure:nth-child(even){margin-top:30px}
.v32 [data-gallery323="framed-photos"] figure{padding:12px;border:1px solid var(--line);background:var(--surface)}
.v32 [data-gallery323="framed-photos"] figure:nth-child(3n+2){transform:translateY(22px)}
.v32 [data-gallery323="framed-photos"] figure img{height:clamp(260px,29vw,500px)!important}
.v32 [data-gallery323="zoom-blur-gallery"] figure img{transition:transform .75s cubic-bezier(.2,.8,.2,1),filter .5s}
@media(hover:hover) and (pointer:fine){.v32 [data-gallery323="zoom-blur-gallery"] figure:hover img,.v32 [data-gallery323="zoom-blur-gallery"] figure:focus-within img{transform:scale(1.08);filter:contrast(1.08)}}
.v32 [data-gallery323="gallery-tilt"] figure,.v32 [data-gallery323="gallery-spotlight"] figure{position:relative;transform-style:preserve-3d;perspective:1200px;transition:transform .35s}
.v32 [data-gallery323="gallery-tilt"] figure img,.v32 [data-gallery323="gallery-spotlight"] figure img{border-radius:5px}
.v32 .sig323-gallery-controls{display:flex;justify-content:end;gap:8px;margin:-12px 0 20px}
.v32 .sig323-gallery-controls button{width:50px;height:50px;display:grid;place-items:center;background:transparent;color:var(--ink);border:1px solid var(--line);font-size:20px}
.v32 .sig323-gallery-controls button:hover{background:var(--ink);color:var(--paper)}
@media(max-width:900px){.v32 [data-gallery323="masonry-lightbox"] .gallery32-grid{columns:2}.v32 [data-gallery323="hover-expand"] .gallery32-grid{flex-wrap:wrap;min-height:0}.v32 [data-gallery323="hover-expand"] figure{flex:1 1 45%}.v32 [data-gallery323="hover-expand"] figure img{height:320px!important}}
@media(max-width:560px){.v32 [data-gallery323="masonry-lightbox"] .gallery32-grid{columns:1}.v32 [data-gallery323="hover-expand"] figure{flex:0 0 100%}.v32 [data-gallery323="hover-expand"] figure img{height:310px!important}.v32 [data-gallery323="framed-photos"] figure:nth-child(3n+2){transform:none}.v32 [data-gallery323="photo-deck"] figure,.v32 [data-gallery323="thumbnail-carousel"] figure{flex-basis:86%}}
/* Navigation recipes: alternative geometry rather than placeholder icon buttons. */
@media(min-width:761px){
 .v32 .sig323-nav-immersive-menu .menu-toggle{display:flex!important;align-items:center;gap:8px;min-height:44px;border:1px solid currentColor;background:transparent;color:inherit;padding:10px 16px;grid-area:auto!important}
 .v32 .sig323-nav-immersive-menu #site-nav{position:fixed!important;inset:0!important;min-height:100svh!important;width:100vw!important;z-index:100!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;gap:clamp(4px,2vh,28px)!important;padding:8vh 8vw!important;background:var(--ink)!important;color:var(--paper)!important;transform:translateY(-102%);opacity:0;pointer-events:none;transition:transform .8s cubic-bezier(.76,0,.24,1),opacity .2s}
 .v32 .sig323-nav-immersive-menu.menu-open #site-nav{transform:translateY(0);opacity:1;pointer-events:auto}
 .v32 .sig323-nav-immersive-menu #site-nav a{font:400 clamp(34px,6vw,105px)/1 var(--display);color:var(--paper);border:0!important;letter-spacing:-.05em;text-transform:none;min-height:1.2em}
 .v32 .sig323-nav-immersive-menu #site-nav .nav-number{font-size:12px;margin-inline-end:16px;vertical-align:top}
 .v32 .sig323-nav-immersive-menu .menu-toggle{position:relative;z-index:140!important}
 .v32 .sig323-nav-immersive-menu.menu-open .brand{position:relative;z-index:140;color:var(--paper)}
 .v32 .sig323-nav-immersive-menu.menu-open .menu-toggle{color:var(--paper);background:transparent}
 .v32 .sig323-nav-motion-navigation #site-nav a{position:relative}
 .v32 .sig323-nav-motion-navigation #site-nav a:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s}
 .v32 .sig323-nav-motion-navigation #site-nav a:hover:after,.v32 .sig323-nav-motion-navigation #site-nav a:focus-visible:after{transform:scaleX(1);transform-origin:left}
}
.v32 .sig323-nav-floating-menu .menu-toggle{display:flex!important;min-height:44px;align-items:center;gap:10px;border:1px solid currentColor;background:transparent;padding:10px 15px}
@media(prefers-reduced-motion:reduce){.v32 [data-gallery323] *, .v32 .sig323-nav-immersive-menu #site-nav{transition:none!important;animation:none!important}}
/* Distinct content grammars from the annotated recipe library. */
.v32 [data-content323="accordion-spring"] details{transition:background-color .3s}
.v32 [data-content323="accordion-spring"] details[open]{background:color-mix(in srgb,var(--accent) 7%,var(--paper))}
.v32 [data-content323="pinned-steps"] details summary{font-family:var(--display);font-size:clamp(20px,2vw,32px);letter-spacing:-.035em}
.v32 [data-content323="progress-timeline"] details{border-left:3px solid color-mix(in srgb,var(--accent) 32%,transparent);padding-inline-start:20px}
.v32 [data-content323="progress-timeline"] details[open]{border-left-color:var(--accent)}
.v32 [data-content323="kinetic-cards"] details{margin-bottom:12px;background:var(--surface);border:1px solid var(--line);padding:clamp(14px,2vw,30px);transition:transform .3s}
@media(hover:hover) and (pointer:fine){.v32 [data-content323="kinetic-cards"] details:hover{transform:translateY(-3px)}}
.v32 [data-content323="comparison-reveal"] details[open]{border-color:var(--accent)}
.v32 [data-content323="scroll-copy"] details>p{max-width:65ch;line-height:1.85}
.v32 [data-content323="inline-choices"] summary{padding:clamp(16px,2vw,28px);border:1px solid var(--line)}
.v32 [data-sig-typography323="masked-overline"] .hero32 .eyebrow{transition:letter-spacing .8s,opacity .8s;letter-spacing:.18em}
.v32 [data-sig-typography323="masked-overline"] .hero32 .eyebrow.sig323-in{letter-spacing:.28em}
.v32 .sig323-word{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.11em;margin-bottom:-.11em}
.v32 .sig323-word>i{display:inline-block;font:inherit;font-style:normal;animation:sig323-word-in .65s cubic-bezier(.16,1,.3,1) both;animation-delay:calc(var(--word-i,0)*50ms)}
@keyframes sig323-word-in{from{opacity:.1;transform:translateY(95%)}to{opacity:1;transform:none}}
.v32 .sig323-cycle{font-size:clamp(11px,1vw,14px);letter-spacing:.12em;text-transform:uppercase;margin:10px 0 0;min-height:1.5em;color:var(--muted)}
.v32 .sig323-cycle span{display:inline-block;transition:opacity .3s,transform .3s}
.v32 .sig323-marquee{position:relative;overflow:hidden;padding:12px 0;border-block:1px solid var(--line);font-family:var(--display);font-size:clamp(17px,2vw,32px);white-space:nowrap;margin-bottom:25px}
.v32 .sig323-marquee span{display:inline-block;padding-inline-end:50px;will-change:transform}
.v32 .sig323-mark{background:linear-gradient(transparent 62%,color-mix(in srgb,var(--accent) 25%,transparent) 62%);box-decoration-break:clone;-webkit-box-decoration-break:clone}
@media(prefers-reduced-motion:reduce){.v32 .sig323-word>i{animation:none!important}.v32 .sig323-cycle *{transition:none!important}}
/* Smaller card photos keep their natural premium colour; no artificial poster filters. */
.v32 .gallery32 img,.v32 .product-card img,.v32 .sig323 img{filter:none}
.v32 .sig323-fab-fab-fan .sig323-fab-menu a{transform:translateY(16px) scale(.97);opacity:0;transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .25s}
.v32 .sig323-fab-fab-fan[data-open=true] .sig323-fab-menu a{transform:none;opacity:1}
.v32 .sig323-fab-fab-fan .sig323-fab-menu a:nth-child(2){transition-delay:45ms}
.v32 .sig323-fab-fab-fan .sig323-fab-menu a:nth-child(3){transition-delay:90ms}
.v32 .sig323-fab-fab-slide[data-open=true] .sig323-fab-menu{transform:translateX(0)}
.v32 .sig323-sheet{position:fixed;inset:auto 0 0;max-width:min(640px,100vw);width:min(640px,100vw);max-height:75svh;min-height:260px;overflow:auto;margin:auto auto 0;padding:clamp(22px,4vw,40px);background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:22px 22px 0 0;box-shadow:0 0 80px rgba(0,0,0,.35)}
.v32 .sig323-sheet::backdrop{background:rgba(4,4,4,.65)}
.v32 .sig323-sheet header{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}
.v32 .sig323-sheet header h2{font-size:clamp(30px,4vw,52px)}
.v32 .sig323-sheet header button{font-size:22px;border:1px solid var(--line);background:transparent;color:inherit;border-radius:50%;min-width:44px;min-height:44px}
.v32 .sig323-sheet-links{display:grid;gap:12px}
.v32 .sig323-sheet-links a{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--line);overflow-wrap:anywhere}
.v32 .sig323-sheet-links a span:first-child{font-size:24px}
.v32 .sig323-scrollspy{position:fixed;right:14px;top:50%;transform:translateY(-50%);z-index:110;background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--line);padding:10px;display:grid;gap:4px;box-shadow:0 8px 30px #0002;max-width:180px}
.v32 .sig323-scrollspy a{display:block;text-align:right;font-size:11px;color:var(--muted);padding:8px 9px;border-right:2px solid transparent;overflow-wrap:anywhere}
.v32 .sig323-scrollspy a[aria-current=location]{color:var(--ink);font-weight:700;border-color:var(--accent)}
.v32 .sig323-scrollspy a:hover,.v32 .sig323-scrollspy a:focus-visible{color:var(--ink);text-decoration:underline}
@media(max-width:1080px){.v32 .sig323-scrollspy{display:none}}
@media(max-width:560px){
 .v32 .sig323-fab-mobile-action-rail{inset:auto 0 0;width:100vw;max-width:none;display:block;box-shadow:0 -4px 25px #0002;background:var(--surface);padding:7px max(10px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}
 .v32 .sig323-fab-mobile-action-rail>button{display:none}
 .v32 .sig323-fab-mobile-action-rail .sig323-fab-menu{display:flex;align-items:stretch;justify-content:center;gap:5px;position:static;transform:none;opacity:1;pointer-events:auto;visibility:visible}
 .v32 .sig323-fab-mobile-action-rail .sig323-fab-menu>a{flex:1;min-width:0;max-width:none;display:flex;flex-direction:column;gap:2px;align-items:center;border:0;box-shadow:none;padding:6px 3px;text-align:center;font-size:11px;overflow-wrap:anywhere}
 .v32 .sig323-fab-mobile-action-rail .sig323-fab-menu>a>span:first-child{font-size:22px}
 .v32:has(.sig323-fab-mobile-action-rail){padding-bottom:90px}
}

.v32.family32-scrollstory .section-heading .kicker{border:1px solid var(--line);padding:5px 10px;display:inline-block;border-radius:30px}
.v32.family32-scrollstory .product-info h3{max-width:12ch}
.v32.family32-scrollstory .story-copy{padding-block:70px}
.v32.family32-scrollstory .faq details{border-top:2px solid var(--accent)}
.v32.family32-scrollstory .closing h2{font-style:italic}
@media(max-width:760px){.v32.family32-scrollstory .story-copy p{column-count:1}.v32.family32-scrollstory .story-copy{padding-inline:0}.v32.family32-scrollstory .section-heading{display:block;max-width:100%;text-align:start}.v32.family32-scrollstory .section-heading h2{font-size:40px}.v32.family32-scrollstory .catalogue32.grid32-ledger .product-card{padding-inline:0!important}.v32.family32-scrollstory .hero32-copy{padding-inline:0}.v32.family32-scrollstory .section-wrap{max-width:100%}.v32.family32-scrollstory .product-picture{box-shadow:none}}
:root{--paper:#f1ecdf;--surface:#fffaf0;--ink:#191713;--muted:#6b6254;--accent:#825334;--on-accent:#ffffff;--display:"Trebuchet MS","Segoe UI",sans-serif;--body:"Segoe UI",Arial,sans-serif;--heading-weight:500;--heading-track:-.035em;--heading-case:normal;--space-section:110px;--gutter:56px;--font-factor:1.0;}
.v32 img[data-original="assets/images/image_01.webp"]{object-position:57% 50%;}
.v32 img[data-original="assets/images/image_02.webp"]{object-position:48% 55%;}
.v32 img[data-original="assets/images/image_03.webp"]{object-position:58% 58%;}
.v32 img[data-original="assets/images/image_04.webp"]{object-position:57% 58%;}
.v32 img[data-original="assets/images/image_05.webp"]{object-position:50% 50%;}
.v32 img[data-original="assets/images/image_06.webp"]{object-position:50% 55%;}
.v32 img[data-original="assets/images/image_07.webp"]{object-position:52% 48%;}
.v32 img[data-original="assets/images/image_08.webp"]{object-position:50% 58%;}

/* Motion Heritage v3.2.4. Original local adaptation of user-tested R4, scoped to .hp324. */
.hp324 figure,.hp324 p,.hp324 h1,.hp324 h2,.hp324 h3{margin:0}
.hp324 figure{margin:0}
.hp324 input{font:inherit}
.hp324 [hidden]{display:none!important}
.hp324 ::selection{color:#101711;background:var(--accent)}
.hp324.motion-stage{position:relative;height:var(--stage-height,340svh);min-height:0;background:var(--bg)}
.hp324.motion-stage [data-image-index],.hp324.motion-stage .expand-panel,.hp324.motion-stage .hoverrail-image{user-select:none;-webkit-user-select:none;-webkit-user-drag:none}
.hp324.motion-stage.is-dragging .stickygrid-shell,.hp324.motion-stage.is-dragging .stack3d-shell,.hp324.motion-stage.is-dragging .horizontal-viewport,.hp324.motion-stage.is-dragging .runway-viewport,.hp324.motion-stage.is-dragging .unfurl-shell,.hp324.motion-stage.is-dragging .chapters-shell{cursor:grabbing}
.hp324 .stage-pin{position:sticky;top:0;isolation:isolate;width:100%;height:100vh;height:100svh;min-height:520px;overflow:hidden;background:var(--bg)}
.hp324 .stage-pin>div:not(.hero-caption):not(.stage-hud):not(.stage-scrim){pointer-events:auto}
.hp324 .stage-scrim{pointer-events:none;position:absolute;z-index:17;inset:0;background:linear-gradient(90deg,rgba(3,7,5,.82),rgba(3,7,5,.51) 32%,rgba(3,7,5,.05) 73%),linear-gradient(0deg,rgba(3,7,5,.75),transparent 27%)}
.hp324 .hero-caption{position:absolute;z-index:30;max-width:min(650px,46vw);left:clamp(22px,5.5vw,115px);bottom:clamp(112px,14vh,180px);color:#fefaf2;pointer-events:none;text-shadow:0 2px 25px #0006;}
.hp324 .hero-caption.pos-left-mid{bottom:27%}
.hp324 .hero-caption.pos-top-left{top:clamp(136px,20vh,218px);bottom:auto}
.hp324 .hero-caption>*{pointer-events:auto}
.hp324 .hero-caption .eyebrow{font:700 11px/1.5 "Segoe UI",sans-serif;letter-spacing:.23em;color:var(--accent);margin:0 0 19px}
.hp324 .hero-caption h1{font:400 clamp(52px,6.3vw,118px)/.93 Georgia,serif;letter-spacing:-.066em;text-wrap:balance;max-width:11ch}
.hp324 .hero-desc,.hp324 .discrete-caption>p:last-child{font-size:clamp(13px,1.15vw,17px);line-height:1.7;max-width:46ch;margin:20px 0 24px;color:#fffdf3e8}
.hp324 .hero-caption.discrete-caption{top:clamp(135px,18vh,190px);left:clamp(20px,5.5vw,100px);bottom:auto;max-width:min(500px,39vw);}
.hp324 .hero-caption.discrete-caption h1{font-size:clamp(44px,5.5vw,96px)}
.hp324 .button{font:750 11px/1 "Segoe UI",sans-serif;letter-spacing:.13em;min-height:52px;min-width:176px;padding:16px 20px;border-radius:4px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;position:relative;overflow:hidden;border:1px solid #fff5;isolation:isolate;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,background .3s,color .3s;cursor:pointer}
.hp324 .button span{font:24px/1 Georgia;transition:transform .3s}
.hp324 .button:hover span{transform:translate(4px,-4px)}
.hp324 .button-primary{background:var(--accent);border-color:color-mix(in srgb,var(--accent),white 25%);color:#111a14;box-shadow:0 7px 0 color-mix(in srgb,var(--accent),black 36%),0 15px 22px #0007, inset 0 1px 0 #ffffffe8}
.hp324 .button-primary:hover{transform:translateY(-5px);box-shadow:0 12px 0 color-mix(in srgb,var(--accent),black 36%),0 23px 34px #0009,inset 0 1px 0 white}
.hp324 .button-primary:active{transform:translateY(4px) scale(.985);box-shadow:0 3px 0 color-mix(in srgb,var(--accent),black 36%),0 5px 9px #0008,inset 0 1px 0 #fff8}
.hp324 .button-secondary{background:#ffffff0d;color:var(--ink);border-color:#ffffff55;box-shadow:0 5px 10px #0005,inset 0 1px 0 #ffffff55}
.hp324 .button-secondary:hover{transform:translateY(-4px);background:#ffffff20;box-shadow:0 13px 27px #0007,inset 0 1px 0 #ffffff55}
.hp324 .button-secondary:active{transform:translateY(2px) scale(.99)}
.hp324 .round-button{display:grid;place-items:center;border:1px solid #ffffff88;border-radius:50%;background:#111a16ce;color:white;width:50px;height:50px;backdrop-filter:blur(10px);box-shadow:0 7px 0 #070e0acb,0 14px 29px #0007,inset 0 1px 0 #ffffff7d;transition:transform .2s,box-shadow .2s,background .2s}
.hp324 .round-button:hover{transform:translateY(-4px);box-shadow:0 11px 0 #070e0acb,0 21px 32px #0008,inset 0 1px 0 #ffffffbb;background:#1b3324}
.hp324 .round-button:active{transform:translateY(3px);box-shadow:0 3px 0 #070e0acb,0 6px 14px #0008}
.hp324 .stage-hud{position:absolute;z-index:40;bottom:clamp(20px,3vh,40px);left:clamp(20px,5.5vw,110px);right:clamp(20px,5.5vw,110px);pointer-events:none;color:#fff;text-shadow:0 2px 12px #0008}
.hp324 .stage-hud-top,.hp324 .hud-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;font:650 10px/1.4 monospace;letter-spacing:.16em}
.hp324 .stage-hud-top{padding-bottom:5px}
.hp324 .hud-track{height:20px;position:relative;overflow:visible;pointer-events:auto;cursor:ew-resize}
.hp324 .hud-track::before{content:"";position:absolute;left:0;right:0;top:9px;height:2px;background:#ffffff63;pointer-events:none}
.hp324 .hud-track i{display:block;position:absolute;left:0;right:0;top:9px;height:2px;background:var(--accent);transform-origin:left;transform:scaleX(var(--motion-p,0));will-change:transform;pointer-events:none}
.hp324 .motion-scrubber{appearance:none;-webkit-appearance:none;position:absolute;inset:0;width:100%;height:20px;padding:0;margin:0;border:0;background:transparent;cursor:ew-resize;pointer-events:auto;outline:none}
.hp324 .motion-scrubber::-webkit-slider-runnable-track{height:20px;background:transparent}
.hp324 .motion-scrubber::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:17px;height:17px;margin-top:1.5px;border:3px solid #19100ad9;background:var(--accent);border-radius:50%;box-shadow:0 0 0 1px #fff9,0 2px 8px #000c;transition:box-shadow .18s,transform .18s}
.hp324 .motion-scrubber:is(:hover,.hp324 :focus-visible)::-webkit-slider-thumb{transform:scale(1.22);box-shadow:0 0 0 4px #fffc,0 3px 12px #000e}
.hp324 .motion-scrubber::-moz-range-track{height:20px;background:transparent;border:0}
.hp324 .motion-scrubber::-moz-range-thumb{width:13px;height:13px;border:3px solid #19100a;background:var(--accent);border-radius:50%;box-shadow:0 0 0 1px white,0 2px 8px #000c}
.hp324 .hud-bottom{padding-top:3px;color:#ffffffbd}
.hp324 .hud-bottom span:last-child{font-size:22px}
.hp324 .stage-hud .hud-type{font-weight:700}
.hp324 .hud-scene-controls{display:flex;align-items:center;gap:12px;pointer-events:auto}
.hp324 .hud-scene-controls [data-current]{min-width:51px;text-align:center}
.hp324 .hud-scene-arrow{width:34px;height:31px;display:grid;place-items:center;border:1px solid #ffffff7c;background:#090b09b8;color:#fff;border-radius:30px;font:17px/1 Georgia,serif;cursor:pointer;transition:background .2s,transform .2s}
.hp324 .hud-scene-arrow:hover{background:var(--accent);color:#0b170f;transform:scale(1.12)}
.hp324 .hud-scene-arrow:active{transform:scale(.91)}
.hp324 .hud-scene-arrow:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.hp324.motion-hoverrail,.hp324.motion-expanding,.hp324.motion-stackgallery,.hp324.motion-focus{--stage-height:100svh}
.hp324 .stickygrid-shell{position:absolute;inset:9% 3.3% 12% 34%;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:1.2vw;transform-style:preserve-3d;perspective:1600px;transform:rotateX(var(--pointer-rx,0deg)) rotateY(var(--pointer-ry,0deg));transition:transform .24s ease-out;cursor:grab}
.hp324 .sticky-tile{position:relative;overflow:hidden;border:1px solid #fff6;box-shadow:0 25px 35px #0007;will-change:transform;cursor:pointer}
.hp324 .sticky-tile img{width:100%;height:100%;object-fit:cover;filter:saturate(.9)}
.hp324 .sticky-tile figcaption{position:absolute;bottom:14px;left:18px;font:10px monospace;background:#0006;padding:6px 9px;letter-spacing:.18em}
.hp324 .sticky-tile:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.hp324.motion-stickygrid .stage-scrim{background:linear-gradient(90deg,var(--bg) 0%,var(--bg) 28%,transparent 69%),linear-gradient(0deg,#0009,transparent 15%)}
.hp324 .stack3d-shell{position:absolute;inset:12% 7% 13% 38%;perspective:1400px;transform-style:preserve-3d}
.hp324 .stack3d-card{position:absolute;inset:0;background:#111;transform-origin:center top;overflow:hidden;border-radius:10px;border:1px solid #ffffff66;box-shadow:0 25px 70px #000b;will-change:transform,opacity}
.hp324 .stack3d-card img{width:100%;height:100%;object-fit:cover}
.hp324 .stack3d-card figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:20px;align-items:end;padding:25px 30px;color:#fff;background:linear-gradient(0deg,#000b,transparent)}
.hp324 .stack3d-card figcaption b{font:400 60px/.8 Georgia,serif}
.hp324 .stack3d-card figcaption span{font:12px monospace;letter-spacing:.16em}
.hp324.motion-stack3d .stage-scrim{background:linear-gradient(90deg,var(--bg) 0%,var(--bg) 25%,transparent 70%)}
.hp324 .horizontal-viewport{position:absolute;inset:12% 0 11%;overflow:hidden}
.hp324 .horizontal-track{height:100%;display:flex;align-items:stretch;gap:clamp(16px,2vw,30px);padding:0 4vw 0 35vw;width:max-content;will-change:transform}
.hp324 .horizontal-card{position:relative;flex:0 0 67vw;height:100%;background:#101110;overflow:hidden;box-shadow:0 20px 60px #0009}
.hp324 .horizontal-card img{height:100%;width:100%;object-fit:cover}
.hp324 .horizontal-card figcaption,.hp324 .runway-card figcaption{position:absolute;inset:auto 0 0;display:flex;align-items:end;justify-content:space-between;padding:24px 30px;color:white;background:linear-gradient(0deg,#000d,transparent);font:13px monospace}
.hp324 .horizontal-card strong,.hp324 .runway-card strong{font:400 clamp(22px,3vw,52px)/.95 Georgia,serif;letter-spacing:-.035em}
.hp324.motion-horizontal .stage-scrim{background:linear-gradient(90deg,var(--bg) 0%,var(--bg) 22%,transparent 48%)}
.hp324 .hoverrail-shell{position:absolute;top:21%;bottom:11%;left:30%;right:3%;display:grid;grid-template-columns:28% 72%;gap:2vw}
.hp324 .hoverrail-choices{display:flex;flex-direction:column;justify-content:center;gap:0}
.hp324 .hoverrail-choice{appearance:none;border:0;border-top:1px solid #ffffff4a;background:transparent;display:grid;align-items:center;grid-template-columns:30px 1fr 20px;gap:10px;padding:clamp(16px,3vh,28px) 4px;text-align:left;transition:color .2s,transform .25s;min-height:65px}
.hp324 .hoverrail-choice:last-child{border-bottom:1px solid #ffffff4a}
.hp324 .hoverrail-choice>span{font:11px monospace}
.hp324 .hoverrail-choice strong{font:400 clamp(24px,3.2vw,59px)/1 Georgia,serif;letter-spacing:-.05em}
.hp324 .hoverrail-choice[aria-pressed=true]{color:var(--accent);transform:translateX(9px)}
.hp324 .hoverrail-gallery{position:relative;overflow:hidden;border-radius:6px;box-shadow:0 22px 60px #000b}
.hp324 .hoverrail-image{position:absolute;inset:0;opacity:0;transform:scale(1.15);transition:opacity .48s,transform 1.0s cubic-bezier(.16,1,.3,1)}
.hp324 .hoverrail-image.is-active{opacity:1;transform:scale(1)}
.hp324 .hoverrail-image img{width:100%;height:100%;object-fit:cover}
.hp324 .hoverrail-image figcaption{position:absolute;bottom:20px;left:20px;color:#fff;background:#0009;font:11px monospace;padding:7px 14px}
.hp324.motion-hoverrail .hero-caption{max-width:24vw}
.hp324.motion-expanding .hero-caption{max-width:30vw}
.hp324.motion-hoverrail .hero-caption h1{font-size:clamp(42px,4vw,72px)}
.hp324.motion-expanding .hero-caption h1{font-size:clamp(45px,4.8vw,88px)}
.hp324 .expanding-shell{position:absolute;inset:33% 4.4% 12%;display:flex;gap:9px;overflow:visible;border-radius:8px;perspective:1600px}
.hp324 .expand-panel{padding:0;border:0;position:relative;flex:1;min-width:0;overflow:hidden;transition:flex 800ms cubic-bezier(.16,1,.3,1),filter 600ms,transform .27s ease-out;background:#101914;box-shadow:0 25px 70px #0008;transform:perspective(1600px) rotateX(var(--panel-rx,0deg)) rotateY(var(--panel-ry,0deg))}
.hp324 .expand-panel.is-active{flex:3.5}
.hp324 .expand-panel img{height:100%;width:100%;object-fit:cover;filter:saturate(.85);transition:transform 1s,filter 1s}
.hp324 .expand-panel.is-active img{filter:saturate(1.1);transform:scale(1.045)}
.hp324 .expand-panel .expanding-label{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;align-items:end;gap:8px;background:linear-gradient(0deg,#000e,transparent);padding:30px 20px 20px;color:#fff}
.hp324 .expanding-label em{font:12px monospace}
.hp324 .expanding-label b{font:400 clamp(18px,2.8vw,44px)/1 Georgia,serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hp324.motion-expanding .hero-caption{top:14%;bottom:auto}
.hp324.motion-expanding .hero-caption h1{font-size:clamp(42px,4.4vw,78px)}
.hp324 .hoverrail-gallery{transform:perspective(1500px) rotateX(var(--gallery-rx,0deg)) rotateY(var(--gallery-ry,0deg));transition:transform .27s ease-out}
.hp324 .stackgallery-shell{position:absolute;inset:7% 3% 11% 36%;display:grid;align-items:center;justify-items:center}
.hp324 .stackgallery-deck{position:relative;width:min(100%,760px);height:min(75vh,690px);perspective:1400px}
.hp324 .stackgallery-card{position:absolute;inset:5% 8%;overflow:hidden;transform-origin:50% 100%;border:5px solid #f2eada;box-shadow:0 15px 60px #000b;transition:transform 750ms cubic-bezier(.19,1,.22,1),inset 600ms,opacity 500ms;will-change:transform}
.hp324 .stackgallery-card img{width:100%;height:100%;object-fit:cover}
.hp324 .stackgallery-card figcaption{position:absolute;inset:auto 10px 10px auto;font:11px monospace;background:#fff;color:#111;padding:6px 10px}
.hp324 .stackgallery-actions{position:absolute;bottom:0;left:20%;right:10%;display:flex;justify-content:center;gap:13px;align-items:center}
.hp324 .stackgallery-actions .button{margin-right:15px}
.hp324.motion-stackgallery .hero-caption{max-width:34vw;bottom:35%}
.hp324.motion-stackgallery .hero-caption h1{font-size:clamp(55px,6vw,94px)}
.hp324 .chapters-shell{position:absolute;inset:0;background:#070a07}
.hp324 .chapters-frame{position:absolute;inset:0;opacity:0;transform:scale(1.12);transition:none;overflow:hidden}
.hp324 .chapters-frame.is-active{opacity:1}
.hp324 .chapters-frame img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);will-change:transform}
.hp324 .chapters-frame figcaption{position:absolute;right:5vw;top:50%;writing-mode:vertical-rl;transform:translateY(-50%);font:12px monospace;letter-spacing:.2em;text-shadow:0 1px 15px #000}
.hp324 .chapters-side{position:absolute;right:3vw;bottom:8vh;writing-mode:vertical-rl;font:10px monospace;letter-spacing:.2em}
.hp324 .chapters-side i{display:inline-block;height:55px;width:1px;background:var(--accent);margin-block:14px}
.hp324 .runway-viewport{position:absolute;inset:15% 0 15%;overflow:hidden}
.hp324 .runway-track{height:100%;display:flex;align-items:center;gap:clamp(20px,3vw,50px);width:max-content;padding:0 4vw 0 38vw;will-change:transform}
.hp324 .runway-card{position:relative;flex:0 0 58vw;height:95%;overflow:hidden;background:#101010;border:1px solid #ffffff44;box-shadow:0 20px 70px #000a;transition:filter .5s;transform-style:preserve-3d;will-change:transform}
.hp324 .runway-card img{width:100%;height:100%;object-fit:cover}
.hp324 .runway-card:nth-child(even){flex-basis:49vw;height:74%;align-self:flex-end}
.hp324 .runway-card figcaption{font-size:12px;padding:18px 24px}
.hp324.motion-runway .stage-scrim{background:linear-gradient(90deg,var(--bg) 0%,var(--bg) 26%,transparent 57%)}
.hp324 .unfurl-shell{position:absolute;inset:0;overflow:hidden;perspective:1100px;background:radial-gradient(ellipse at 74% 50%,#315348 1%,var(--bg) 60%)}
.hp324 .unfurl-wall{position:absolute;inset:9% -19% 7% 31%;display:flex;gap:1.25vw;transform-style:preserve-3d;will-change:transform;perspective:1600px}
.hp324 .unfurl-column{height:118%;flex:1;display:flex;gap:1.4vw;flex-direction:column;transform-style:preserve-3d;will-change:transform}
.hp324 .unfurl-column img{min-width:0;width:100%;height:52%;object-fit:cover;box-shadow:0 18px 50px #000a;border:1px solid #ffffff35}
.hp324.motion-unfurl3d .stage-scrim{background:linear-gradient(90deg,var(--bg) 0%,#060d0ae6 19%,transparent 68%)}
.hp324 .converge-shell{position:absolute;inset:0;background:#071210;overflow:hidden;perspective:1400px}
.hp324 .converge-tile{position:absolute;width:43%;height:52%;overflow:hidden;box-shadow:0 22px 60px #000a;border:2px solid #e8efe3aa;will-change:transform,opacity}
.hp324 .converge-tile:nth-child(1){top:5%;left:9%}
.hp324 .converge-tile:nth-child(2){top:5%;right:6%}
.hp324 .converge-tile:nth-child(3){bottom:4%;left:9%}
.hp324 .converge-tile:nth-child(4){bottom:4%;right:6%}
.hp324 .converge-tile img{width:100%;height:100%;object-fit:cover}
.hp324 .converge-tile figcaption{position:absolute;bottom:12px;left:16px;color:white;font:10px monospace;text-shadow:0 2px 15px #000}
.hp324.motion-converge .stage-scrim{background:linear-gradient(90deg,#03120fdb 0%,transparent 55%),linear-gradient(0deg,#03120faf,transparent 40%)}
.hp324 .expand-reveal-shell{position:absolute;inset:0;background:var(--bg)}
.hp324 .expand-reveal-main{position:absolute;top:50%;left:50%;width:100%;height:100%;overflow:hidden;will-change:transform,clip-path,filter;background:#0d130f;border:1px solid #ffffff55}
.hp324 .expand-reveal-main img{width:100%;height:100%;object-fit:cover}
.hp324 .expand-reveal-main figcaption{position:absolute;right:3vw;bottom:10vh;color:#fff;font:11px monospace;letter-spacing:.18em;text-shadow:0 1px 10px #000;}
.hp324 .expand-reveal-detail{position:absolute;right:6vw;top:12%;width:16vw;height:27vh;overflow:hidden;border:3px solid #fffaf3;box-shadow:0 22px 50px #000a;will-change:transform,opacity}
.hp324 .expand-reveal-detail img{height:100%;width:100%;object-fit:cover}
.hp324.motion-expand .stage-scrim{background:linear-gradient(90deg,#090c09e6,transparent 65%),linear-gradient(0deg,#090c09ad,transparent 45%)}
.hp324 .focus-shell{position:absolute;inset:0;background:radial-gradient(circle at 65% 50%,#254036,var(--bg) 65%);perspective:1800px;overflow:hidden}
.hp324 .focus-images{position:absolute;inset:13% -8% 18% 35%;perspective:1800px;transform-style:preserve-3d}
.hp324 .focus-image{position:absolute;top:0;left:0;width:64%;height:100%;border:1px solid #ffffff75;box-shadow:0 25px 75px #000d;overflow:hidden;transition:transform 950ms cubic-bezier(.16,1,.3,1),opacity 800ms,filter 800ms;will-change:transform,opacity;transform-origin:center center}
.hp324 .focus-image img{width:100%;height:100%;object-fit:cover}
.hp324 .focus-image figcaption{position:absolute;bottom:14px;right:16px;background:#000a;padding:8px 12px;color:#fff;font:10px monospace}
.hp324 .focus-image[data-pos="0"]{z-index:3;transform:translate3d(0,0,100px) rotateY(0) scale(1);opacity:1;filter:saturate(1.13)}
.hp324 .focus-image[data-pos="1"]{z-index:2;transform:translate3d(66%,0,-160px) rotateY(-23deg) scale(.73);opacity:.7}
.hp324 .focus-image[data-pos="-1"]{z-index:2;transform:translate3d(-65%,0,-160px) rotateY(23deg) scale(.73);opacity:.68}
.hp324 .focus-image[data-pos="2"]{z-index:1;transform:translate3d(110%,0,-300px) rotateY(-42deg) scale(.55);opacity:.05;pointer-events:none}
.hp324 .focus-image[data-pos="-2"]{z-index:1;transform:translate3d(-110%,0,-300px) rotateY(42deg) scale(.55);opacity:.05;pointer-events:none}
.hp324 .focus-controls{position:absolute;right:8%;bottom:10%;z-index:15;display:flex;align-items:center;gap:22px}
.hp324 .focus-controls [data-count]{font:13px monospace;letter-spacing:.15em}
.hp324.motion-focus .stage-scrim{background:linear-gradient(90deg,var(--bg) 0%,#07130de6 18%,transparent 72%)}
.hp324 .tiny-label,.hp324 .end-corner{font:11px/1.5 monospace;letter-spacing:.18em;color:var(--accent)}
@media (max-width:1100px){.hp324 .hero-caption h1{font-size:clamp(50px,7vw,90px)}
.hp324 .hero-caption{max-width:46vw}
.hp324 .hoverrail-shell{left:33%;right:4%}
.hp324 .hoverrail-choice strong{font-size:clamp(21px,3vw,38px)}
.hp324.motion-hoverrail .hero-caption{max-width:24vw}
.hp324.motion-expanding .hero-caption{max-width:30vw}
.hp324 .runway-card{flex-basis:65vw}
.hp324 .stackgallery-actions{left:5%;right:0}}
@media (max-width:700px){.hp324.motion-stage{height:var(--stage-height,260svh)}
.hp324.motion-hoverrail,.hp324.motion-expanding,.hp324.motion-stackgallery,.hp324.motion-focus{--stage-height:100svh}
.hp324 .stage-pin{min-height:520px}
.hp324 .hero-caption{left:20px;right:20px;bottom:106px;max-width:min(450px,90vw)}
.hp324 .hero-caption.pos-left-mid{bottom:132px}
.hp324 .hero-caption.pos-top-left{top:126px;bottom:auto}
.hp324 .hero-caption h1{font-size:clamp(45px,12vw,66px);max-width:10.5ch}
.hp324 .hero-caption .eyebrow{font-size:9px;margin-bottom:10px}
.hp324 .hero-desc{font-size:12px;line-height:1.5;max-width:40ch;margin:13px 0 15px}
.hp324 .hero-caption .button{min-height:42px;padding:10px 15px;font-size:9px;min-width:155px}
.hp324 .button-primary{box-shadow:0 5px 0 color-mix(in srgb,var(--accent),black 36%),0 9px 18px #0009}
.hp324 .hero-caption.discrete-caption{left:20px;right:20px;top:105px;bottom:auto;max-width:none}
.hp324 .hero-caption.discrete-caption h1,.hp324.motion-hoverrail .hero-caption h1,.hp324.motion-expanding .hero-caption h1{font-size:clamp(38px,10vw,58px);max-width:13ch}
.hp324 .hero-caption.discrete-caption p:last-child{display:none}
.hp324 .stage-hud{left:20px;right:20px;bottom:20px}
.hp324 .hud-instruction{font-size:9px;max-width:65%}
.hp324 .hud-type{font-size:9px}
.hp324 .stage-hud-top{font-size:9px}
.hp324 .stage-scrim{background:linear-gradient(0deg,#000b 0%,transparent 72%),linear-gradient(90deg,#0006,transparent)}
.hp324 .stickygrid-shell{inset:9% 5% 9% 5%;gap:9px}
.hp324 .sticky-tile{border-radius:5px}
.hp324.motion-stickygrid .hero-caption{bottom:120px;background:#08130eab;padding:16px;backdrop-filter:blur(4px);border-left:3px solid var(--accent)}
.hp324.motion-stickygrid .hero-caption h1{font-size:50px}
.hp324.motion-stickygrid .hero-desc{display:none}
.hp324.motion-stickygrid .stage-scrim{background:linear-gradient(0deg,#000b,transparent 60%)}
.hp324 .stack3d-shell{inset:15% 5% 10% 5%}
.hp324 .stack3d-card{inset:0 4% 0 4%}
.hp324.motion-stack3d .stage-scrim{background:linear-gradient(0deg,#000c,transparent 60%)}
.hp324.motion-stack3d .hero-caption{bottom:128px}
.hp324.motion-stack3d .hero-caption h1{font-size:48px}
.hp324 .horizontal-viewport{inset:33% 0 12%}
.hp324 .horizontal-track{padding-left:6vw;gap:12px}
.hp324 .horizontal-card{flex-basis:84vw}
.hp324.motion-horizontal .hero-caption{top:95px;bottom:auto}
.hp324.motion-horizontal .hero-caption h1{font-size:clamp(35px,10vw,45px)}
.hp324.motion-horizontal .hero-desc{display:none}
.hp324.motion-horizontal .stage-scrim{background:linear-gradient(0deg,#000c,transparent 60%)}
.hp324 .hoverrail-shell{top:37%;left:4%;right:4%;bottom:14%;grid-template-columns:36% 62%;gap:2%}
.hp324 .hoverrail-choice{min-height:50px;padding:11px 1px;grid-template-columns:16px 1fr 0;gap:3px}
.hp324 .hoverrail-choice strong{font-size:clamp(17px,5vw,29px)}
.hp324 .hoverrail-choice>span:last-child{display:none}
.hp324.motion-hoverrail .hero-caption{max-width:100%}
.hp324 .hoverrail-gallery{border-radius:0}
.hp324 .hoverrail-image figcaption{font-size:9px}
.hp324 .expanding-shell{top:31%;bottom:13%;left:4%;right:4%;gap:5px}
.hp324 .expand-panel.is-active{flex:3}
.hp324 .expanding-label{padding:12px!important}
.hp324 .expanding-label b{font-size:18px}
.hp324 .expanding-label em{display:none}
.hp324.motion-expanding .hero-caption{top:100px}
.hp324 .stackgallery-shell{inset:33% 2% 15%}
.hp324 .stackgallery-deck{height:100%;width:90%;max-width:520px}
.hp324 .stackgallery-card{inset:0 6%}
.hp324 .stackgallery-actions{left:2%;right:2%;bottom:-20px;justify-content:center}
.hp324 .stackgallery-actions .button{min-width:0;min-height:42px;padding:9px 12px;margin-right:0;font-size:9px;gap:4px}
.hp324 .stackgallery-actions .button span{font-size:18px}
.hp324 .stackgallery-actions .round-button{width:42px;height:42px}
.hp324.motion-stackgallery .hero-caption{max-width:none;bottom:auto;top:93px}
.hp324.motion-stackgallery .hero-caption h1{font-size:44px}
.hp324.motion-stackgallery .hero-desc{display:none}
.hp324 .chapters-frame figcaption,.hp324 .chapters-side{display:none}
.hp324.motion-chapters .hero-caption h1{font-size:52px}
.hp324 .runway-viewport{inset:35% 0 14%}
.hp324 .runway-track{padding-left:5vw;gap:12px}
.hp324 .runway-card,.hp324 .runway-card:nth-child(even){flex-basis:78vw;height:95%}
.hp324.motion-runway .hero-caption{top:110px;bottom:auto}
.hp324.motion-runway .hero-caption h1{font-size:clamp(37px,10vw,46px)}
.hp324.motion-runway .hero-desc{display:none}
.hp324.motion-runway .stage-scrim{background:linear-gradient(0deg,#000b,transparent 60%)}
.hp324 .unfurl-wall{inset:17% -30% 12% 3%;gap:8px}
.hp324 .unfurl-column{gap:10px}
.hp324.motion-unfurl3d .stage-scrim{background:linear-gradient(0deg,#000c,transparent 65%)}
.hp324.motion-unfurl3d .hero-caption{bottom:130px}
.hp324 .converge-tile{width:53%;height:41%}
.hp324 .converge-tile:nth-child(1){top:13%;left:0}
.hp324 .converge-tile:nth-child(2){top:13%;right:0}
.hp324 .converge-tile:nth-child(3){bottom:7%;left:0}
.hp324 .converge-tile:nth-child(4){bottom:7%;right:0}
.hp324.motion-converge .stage-scrim{background:linear-gradient(0deg,#000c,transparent 70%)}
.hp324 .expand-reveal-detail{width:28vw;height:18vh;right:4vw;top:17%}
.hp324.motion-expand .hero-caption{bottom:126px}
.hp324.motion-expand .hero-caption h1{font-size:48px}
.hp324 .focus-images{inset:16% -12% 17% 9%}
.hp324 .focus-image{width:80%}
.hp324.motion-focus .stage-scrim{background:linear-gradient(0deg,#000c,transparent 64%)}
.hp324.motion-focus .hero-caption{bottom:125px}
.hp324.motion-focus .hero-caption h1{font-size:50px}
.hp324.motion-focus .hero-desc{display:none}
.hp324 .focus-controls{right:12%;bottom:25%;gap:10px}
.hp324 .focus-controls .round-button{width:43px;height:43px}
.hp324 .focus-controls [data-count]{font-size:10px}}
@media (max-height:680px) and (min-width:701px){.hp324 .hero-caption{bottom:100px}
.hp324 .hero-caption h1{font-size:clamp(40px,5vw,76px)}
.hp324 .hero-desc{max-width:48ch;font-size:13px;margin:12px 0}
.hp324 .stage-pin{min-height:480px}
.hp324 .stack3d-shell,.hp324 .stickygrid-shell{bottom:10%}
.hp324 .stage-hud{bottom:15px}}
.hp324.motion-stage[data-playback="auto"]{height:100svh;min-height:520px}
.hp324.motion-stage[data-playback="auto"] .stage-pin{position:relative}
.hp324 .hud-auto-control{pointer-events:auto;margin-left:10px;white-space:nowrap;min-height:32px;padding:7px 12px;border-radius:99px;border:1px solid color-mix(in srgb,var(--accent) 78%,white 22%);background:color-mix(in srgb,var(--accent) 16%,#10140fb8);color:#fff9e7;font:700 10px/1.15 ui-monospace,Consolas,monospace;letter-spacing:.065em;box-shadow:0 4px 12px #0008,inset 0 1px 0 #fff3;transition:transform .2s,background-color .25s,color .25s}
.hp324 .hud-auto-control:is(:hover,.hp324 :focus-visible){transform:translateY(-2px);background:var(--accent);color:#101710}
.hp324 .hud-auto-control:active{transform:translateY(2px)}
.hp324 .hud-auto-control:disabled{opacity:.65;cursor:default;transform:none}
.hp324.motion-stage[data-playback="auto"][data-auto-state="playing"] .hud-track::before{background:#ffffffb0}
.hp324.motion-stage[data-playback="auto"][data-auto-state="paused"] .hud-track::before{background:#ffffff55}
@keyframes  r3CameraBreath{0%{transform:scale(1.01) translate3d(-.3%,-.2%,0)}100%{transform:scale(1.09) translate3d(.3%,.2%,0)}}
.hp324.motion-stage[data-playback="auto"][data-auto-state="playing"] .hoverrail-image.is-active img{animation:r3CameraBreath 5.6s ease-in-out infinite alternate}
.hp324.motion-stage[data-playback="auto"][data-auto-state="playing"] .focus-image[data-pos="0"] img{animation:r3CameraBreath 6.8s ease-in-out infinite alternate}
.hp324.motion-stage[data-playback="auto"][data-auto-state="playing"] .expand-panel.is-active img{animation:r3CameraBreath 6.2s ease-in-out infinite alternate}
@media (max-width:700px){.hp324 .stage-hud-top{flex-wrap:wrap;row-gap:5px}
.hp324 .stage-hud-top>.hud-type{min-width:0;font-size:9px}
.hp324 .hud-scene-controls{gap:5px;margin-left:auto}
.hp324 .hud-scene-arrow{width:28px;height:29px}
.hp324 .hud-scene-controls [data-current]{min-width:45px;font-size:9px}
.hp324 .hud-auto-control{margin-left:3px;padding:6px 8px;font-size:8px;min-height:29px}
.hp324.motion-stage[data-playback="auto"] .hud-bottom{gap:9px}
.hp324.motion-stage[data-playback="auto"] .hud-instruction{font-size:8px}}
@media (max-width:700px){.hp324.motion-unfurl3d .unfurl-wall{inset:25% -22% 12% 13%;gap:12px}
.hp324.motion-unfurl3d .unfurl-column{flex:0 0 48%;gap:12px}
.hp324.motion-unfurl3d .unfurl-column:nth-child(n/**/+3){display:none}}
.hp324 .hud-motion-optin{pointer-events:auto;min-height:34px;padding:7px 12px;border-radius:999px;border:1px solid #f5dc95;background:#d3aa72;color:#15110b;font:700 10px/1.2 Arial,sans-serif;cursor:pointer;box-shadow:0 6px 15px #0008}
.hp324 .hud-motion-optin[hidden]{display:none!important}
.hp324 .hud-motion-optin:hover{background:#f5dc95}
@media (max-width:700px){.hp324 .hud-motion-optin{font-size:9px;min-height:28px;padding:5px 8px}
.hp324 .hud-instruction{max-width:100%}}
/* Production-only integration: large photography from first paint. */
.hp324.motion-stage{display:block;position:relative;max-width:none;overflow:visible;color:var(--ink);isolation:isolate}
.hp324 .stage-pin{min-height:min(520px,100svh)}
.hp324 .hero-caption h1{font-family:var(--display,Georgia,serif);font-size:clamp(48px,6.1vw,110px)}
.hp324 .hero-caption .eyebrow,.hp324 .hud-type{letter-spacing:.14em}
.hp324 .hero-caption .button-primary{box-shadow:0 7px 0 color-mix(in srgb,var(--accent),black 36%),0 15px 22px #0008,inset 0 1px 0 #ffffffb8}
.hp324 .motion-scrubber{opacity:.94}
.hp324 .hud-motion-optin{display:none!important}
.hp324 .hero-caption{z-index:31}
.hp324 .stage-hud{z-index:43}
.hp324 .hero-caption .hero-desc{max-width:46ch}
.hp324 .stage-scrim{z-index:17}
/* Three high-level composition variants multiply homepage structures without reusing one template. */
.hp324.bp324-a .hero-caption{left:clamp(22px,5.5vw,115px)}
.hp324.bp324-b .hero-caption{left:auto;right:clamp(24px,5vw,92px);max-width:min(580px,46vw)}
.hp324.bp324-b .stage-scrim{background:linear-gradient(270deg,#050704dc,transparent 75%),linear-gradient(0deg,#000a,transparent 24%)}
.hp324.bp324-c .hero-caption{left:clamp(24px,7vw,155px);bottom:clamp(125px,21vh,245px)}
.hp324.bp324-c .hero-caption h1{font-size:clamp(56px,6.7vw,124px)}
@media(max-width:700px){
 .hp324.bp324-b .hero-caption{left:18px;right:18px;max-width:none}
 .hp324.bp324-c .hero-caption{left:18px;right:18px;bottom:120px}
 .hp324 .hero-caption h1{font-size:clamp(38px,10vw,60px)}
 .hp324 .stage-pin{min-height:520px}
}
/* The user explicitly requested automatic motion on entry, with no opt-in overlay.
   A contextual Pause Auto button remains for voluntarily stopping timed animations. */
.hp324[data-playback=auto][data-auto-state=playing] .hoverrail-image.is-active img,
.hp324[data-playback=auto][data-auto-state=playing] .focus-image[data-pos="0"] img,
.hp324[data-playback=auto][data-auto-state=playing] .expand-panel.is-active img{animation:r3CameraBreath 6s ease-in-out infinite alternate}
.page32-index.hp324-release>.site-header{position:absolute!important;z-index:100;top:0;left:0;right:0;background:linear-gradient(to bottom,#06100dc9,#06100d06)!important;color:#fff!important;border-color:transparent!important;min-height:80px}
.page32-index.hp324-release>.site-header .brand,.page32-index.hp324-release>.site-header a,.page32-index.hp324-release>.site-header button{color:#fff!important}
.page32-index.hp324-release>.site-header .brand img{box-shadow:0 8px 22px #0006}
.page32-index.hp324-release .sig323-fab{z-index:200}

/* The 175px vertical navigation is a real header family, not an empty margin. */
.page32-index.hp324-release.nav32-vertical{background:#151311!important}
.page32-index.hp324-release.nav32-vertical>.site-header{
 position:fixed!important;inset:0 auto 0 0!important;min-height:100svh!important;
 background:#161916!important;box-shadow:10px 0 32px #0004!important;
 border-right:1px solid #ffffff22!important;border-bottom:0!important}
.page32-index.hp324-release.nav32-vertical>.site-header #site-nav{color:#fff!important}
/* The normal top-header families float above the photograph without causing a white gap. */
.page32-index.hp324-release:not(.nav32-vertical)>main{margin-inline:0!important;max-width:none!important}
.page32-index.hp324-release:not(.nav32-vertical)>main>.hp324{width:100%;max-width:none!important}
/* Unwanted lab status panels are never emitted by the compiler. */

/* R4 premium visual directions: a minority of families use airy light scenes,
   without any caption falling below WCAG contrast on the paper background. */
.hp324.hp324-light .stage-pin{background:var(--bg)}
.hp324.hp324-light .stage-scrim,
.hp324.hp324-light.motion-stickygrid .stage-scrim,
.hp324.hp324-light.motion-stack3d .stage-scrim,
.hp324.hp324-light.motion-horizontal .stage-scrim{
 background:linear-gradient(90deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 93%,transparent) 23%,transparent 70%),linear-gradient(0deg,color-mix(in srgb,var(--bg) 60%,transparent),transparent 22%)!important;
}
.hp324.hp324-light .hero-caption{color:#11241c!important;text-shadow:0 1px 7px #fff8!important}
.hp324.hp324-light .hero-desc{color:#243b32!important}
.hp324.hp324-light .stage-hud{color:#13251d!important;text-shadow:0 1px 7px #fffd}
.hp324.hp324-light .hud-bottom{color:#1d392b!important}
.hp324.hp324-light .hud-track::before{background:#1b2c2059}
.hp324.hp324-light figure figcaption{color:#fff}
.hp324.hp324-light .hero-caption .eyebrow{color:var(--accent)}
.hp324.hp324-light .button-primary{background:#223c31;color:#fff;border-color:#d5cfaa6e;box-shadow:0 7px 0 #0b2014,0 15px 24px #0d241c5e,inset 0 1px 0 #fff8}
.hp324.hp324-light .button-primary:hover{box-shadow:0 12px 0 #0b2014,0 24px 34px #0d241c70,inset 0 1px 0 #fff8}
.hp324.hp324-light .hud-scene-arrow{background:#fff9;border-color:#18332790;color:#152c21}
.hp324.hp324-light .hud-scene-arrow:hover{background:#173a29;color:#fff}
.hp324.hp324-light .hud-auto-control{background:#fff9;border-color:#152b2260;color:#14281e}
.page32-index.hp324-release:has(.hp324-light)>.site-header{background:linear-gradient(to bottom,#f7f4e9f8,#f7f4e900)!important;color:#152b21!important}
.page32-index.hp324-release:has(.hp324-light)>.site-header .brand,
.page32-index.hp324-release:has(.hp324-light)>.site-header a,
.page32-index.hp324-release:has(.hp324-light)>.site-header button{color:#152b21!important}
.page32-index.hp324-release.nav32-vertical:has(.hp324-light)>.site-header{background:#f2efe7!important;color:#152b21!important}


/* STD GEN / 50 Signature Scene Lab: 38 genuinely animated original layouts. */
:root{--lab-ease:cubic-bezier(.19,1,.22,1)}
body{--font-display:Georgia,serif;--font-body:"Segoe UI",Arial,sans-serif;--font-track:-.052em;--font-weight:400}
body .hero-caption h1,body .brand,body .hook-head h2,body .card-body h3,body .end-panel p,body .future-title{font-family:var(--font-display)!important;letter-spacing:var(--font-track)!important;font-weight:var(--font-weight)!important}
body .hero-caption .eyebrow,body .hero-desc,body .button,body .hook-section p,body .page-nav,body .hook-content,body .hk-action-main{font-family:var(--font-body)!important}
body .hero-caption h1{text-wrap:balance}
body.type-rounded .hero-caption h1,body.type-trebuchet .hero-caption h1,body.type-verdana .hero-caption h1{letter-spacing:-.035em!important}
body.type-franklin .hero-caption h1{font-weight:750!important;text-transform:uppercase;font-size:clamp(47px,6.3vw,110px)}
body.type-bodoni .hero-caption h1,body.type-times .hero-caption h1{font-weight:400!important;letter-spacing:-.075em!important}
body.type-segoe .hero-caption h1,body.type-arial .hero-caption h1{font-weight:650!important}
body .future-stage{position:relative;height:var(--future-height,340svh);background:var(--bg);overflow:clip}
body .future-stage[data-playback="auto"]{height:100svh;min-height:600px}
.future-pin{position:sticky;top:0;isolation:isolate;height:100svh;min-height:520px;overflow:hidden;background:var(--bg)}
.future-space{position:absolute;inset:0;isolation:isolate;overflow:hidden;perspective:1400px;transform-style:preserve-3d;--f-p:0}
.future-space:before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 70% 40%,color-mix(in srgb,var(--accent) 15%,transparent),transparent 56%);pointer-events:none}
.future-frame{position:absolute;left:50%;top:50%;width:var(--fw,45vw);height:var(--fh,66vh);overflow:hidden;border-radius:var(--fr,8px);background:color-mix(in srgb,var(--ink) 8%,var(--bg));border:1px solid #ffffff22;box-shadow:0 20px 65px #0009;backface-visibility:hidden;transform-style:preserve-3d;will-change:transform,opacity,clip-path;cursor:pointer;transition:filter .4s,box-shadow .4s}
.future-frame>img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none;user-select:none;-webkit-user-drag:none}
.future-frame:hover{box-shadow:0 35px 85px #000d;filter:saturate(1.08)}
.future-frame.is-focused{outline:2px solid var(--accent);outline-offset:2px}
.future-scrim{position:absolute;inset:0;pointer-events:none;z-index:15;background:linear-gradient(90deg,#050706bf 0%,#0507069c 23%,transparent 62%),linear-gradient(0deg,#030505b5,transparent 32%)}
.future-caption{position:absolute;z-index:25;left:clamp(22px,5.2vw,105px);bottom:clamp(125px,16vh,200px);width:min(650px,48vw);max-width:none;color:white;pointer-events:none;text-shadow:0 6px 25px #000a}
.future-caption>*{pointer-events:auto}.future-caption h1{font-family:var(--font-display)!important;letter-spacing:var(--font-track)!important;font-weight:var(--font-weight)!important;font-size:clamp(52px,7vw,130px);line-height:.9;margin:16px 0 20px;max-width:11ch}
.future-caption .eyebrow{font:700 11px/1.5 var(--font-body);letter-spacing:.19em;text-transform:uppercase;color:var(--accent)}
.future-caption .hero-desc{max-width:42ch;font-size:clamp(13px,1.1vw,17px);line-height:1.6;margin:0 0 25px}
.future-caption .button{color:#141713}
.future-hud{position:absolute;z-index:45;bottom:clamp(16px,3vh,33px);left:clamp(22px,5.2vw,105px);right:clamp(22px,5.2vw,105px);color:white;text-shadow:0 2px 15px #000;display:grid;gap:9px;font:650 10px/1.2 ui-monospace,Consolas,monospace;letter-spacing:.15em;text-transform:uppercase}
.future-hud .future-hud-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.future-hud button{pointer-events:auto;border-radius:50px;padding:7px 12px;background:#090a09ab;border:1px solid #ffffff77;color:white;min-height:34px;backdrop-filter:blur(9px);font-size:11px}.future-hud button:hover{background:var(--accent);color:#131410}
.future-progress{height:2px;background:#ffffff60;position:relative}.future-progress>i{display:block;height:100%;width:100%;transform:scaleX(var(--f-p,0));transform-origin:left;background:var(--accent)}
.future-range{width:100%;height:10px;appearance:none;-webkit-appearance:none;position:absolute;inset:-4px 0 auto;background:transparent;cursor:pointer;margin:0;accent-color:var(--accent)}.future-range::-webkit-slider-thumb{appearance:none;width:12px;height:12px;border-radius:50%;background:var(--accent);border:2px solid #fff;box-shadow:0 0 0 3px #0008}
.future-ui-hint{font-size:10px;letter-spacing:.12em;color:#fffccf;max-width:48ch}
.future-overlaid-title{position:absolute;z-index:18;inset:42% 2% auto;text-align:center;font-family:var(--font-display);font-size:clamp(80px,17vw,330px);font-weight:700;line-height:1;letter-spacing:-.12em;color:#fffc;pointer-events:none;mix-blend-mode:screen}
.future-satellite-nav{position:absolute;z-index:21;top:40%;right:4%;display:flex;flex-direction:column;gap:8px}
.future-satellite-nav button{background:#101310c9;color:white;border:1px solid #fff6;border-radius:999px;width:46px;height:46px;font:700 12px Consolas,monospace;box-shadow:0 12px 28px #0008}.future-satellite-nav button[aria-pressed=true]{background:var(--accent);color:#1d1915}
.future-swatches{position:absolute;z-index:22;right:4%;bottom:17%;display:flex;gap:8px}.future-swatches button{width:42px;height:42px;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 3px #000a;transition:scale .2s}.future-swatches button[aria-pressed=true]{scale:1.18;outline:2px solid var(--accent)}
.future-compare{position:absolute;z-index:21;top:19%;right:6%;color:white;font:600 10px Consolas,monospace;letter-spacing:.15em;max-width:180px}
.future-frame[data-future-i="0"]{z-index:5}
.future-keyline{position:absolute;z-index:3;left:15%;top:50%;width:70%;height:1px;background:var(--accent);opacity:.3;transform:rotate(-18deg);pointer-events:none}
.future-hotspot{position:absolute;inset:0;pointer-events:none;z-index:8;mask-image:radial-gradient(circle 200px at var(--mx,50%) var(--my,40%),#000 30%,transparent 100%);-webkit-mask-image:radial-gradient(circle 200px at var(--mx,50%) var(--my,40%),#000 30%,transparent 100%);background:#ffffff20;mix-blend-mode:screen}
.future-trail-img{position:absolute;width:86px;height:98px;object-fit:cover;pointer-events:none;z-index:16;border:3px solid white;box-shadow:0 12px 28px #000a;opacity:0}
.future-scenetag{position:absolute;right:4%;top:22%;font:700 11px/1.6 Consolas,monospace;color:var(--accent);letter-spacing:.16em;text-transform:uppercase;z-index:22}
/* The look remains intentional even before JS is loaded. */
.future-frame:nth-child(1){--fw:66vw;--fh:78vh;transform:translate(-20%,-50%) rotate(-3deg)}
.future-frame:nth-child(2){--fw:31vw;--fh:48vh;transform:translate(-125%,-70%) rotate(4deg)}
.future-frame:nth-child(3){--fw:24vw;--fh:42vh;transform:translate(60%,-20%) rotate(-6deg)}
.future-frame:nth-child(4){--fw:24vw;--fh:48vh;transform:translate(-10%,-120%) rotate(8deg)}
.future-frame:nth-child(n+5){--fw:21vw;--fh:38vh;opacity:.5}
@media(max-width:800px){
.future-pin{height:100svh;min-height:620px}.future-stage[data-playback="auto"]{min-height:620px}
.future-caption{width:calc(100vw - 34px);left:18px;bottom:clamp(130px,19vh,200px)}
.future-caption h1{font-size:clamp(43px,11.2vw,70px);max-width:10.5ch}.future-caption .hero-desc{font-size:13px;max-width:35ch}
.future-hud{left:18px;right:18px;bottom:21px}.future-frame{border-radius:6px}.future-satellite-nav{right:4%;top:29%}.future-overlaid-title{font-size:26vw}
.future-scrim{background:linear-gradient(0deg,#050706e8,transparent 68%),linear-gradient(90deg,#0507065a,transparent 90%)}
}
@media(prefers-reduced-motion:reduce){.future-frame{transition:none!important}.future-space .future-frame{will-change:auto}.future-hud *{transition:none!important}}

/* Keep functional floating CTAs clear of scene timeline and arrow controls. */
body:has(.future-stage) .hook-action-layer{bottom:118px;right:20px}
body:has(.future-stage) .hook-action-layer[data-hook-action="mobile-action-rail"]{bottom:85px;left:16px;right:16px}
body:has(.future-stage) .brand>span:last-child{display:flex;flex-direction:column;gap:3px}
@media(max-width:800px){body:has(.future-stage) .hook-action-layer{bottom:104px;right:14px}}
/* Independent material selectors and photo navigation must remain clickable above the contextual FAB. */
.future-swatches{bottom:29%;right:5%;z-index:90}
.future-satellite-nav{top:27%;right:5%;z-index:90}
.future-swatches button,.future-satellite-nav button{position:relative;z-index:100;pointer-events:auto}
@media(max-width:800px){.future-swatches{bottom:34%;right:5%}.future-satellite-nav{top:24%;right:4%}.future-satellite-nav button{width:40px;height:40px}}

/* HOOK LAB — original, self-contained vanilla CSS, version 1.0.
 * Hooks attach to existing Motion Heritage R4 scenes without modifying their 3D geometry.
 */
:root{--hk-gold:#d8b779;--hk-dark:#171d19;--hk-line:rgba(232,213,176,.28)}
html.lab-motion-optin body{scroll-behavior:smooth}
.hook-count{position:absolute;right:clamp(12px,2vw,32px);top:88px;z-index:75;padding:7px 11px;border-radius:4px;border:1px solid #fff6;background:#131815b9;color:#f2e7d1;font:700 10px/1.3 ui-monospace,monospace;letter-spacing:.09em;pointer-events:none}
.hook-scene{position:relative;isolation:isolate}
.hook-scene::after{pointer-events:none}
.hook-labelbar{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.hook-labelbar span{display:inline-flex;gap:6px;align-items:center;border:1px solid color-mix(in srgb,var(--accent) 50%,transparent);color:var(--ink);border-radius:30px;padding:8px 12px;font:600 10px/1.1 ui-monospace,Consolas,monospace;letter-spacing:.035em;background:color-mix(in srgb,var(--accent) 8%,transparent)}
.hook-labelbar b{color:var(--accent);font-weight:800}
.hook-section{position:relative;max-width:1440px;margin:auto;padding:clamp(60px,7vw,118px) clamp(22px,5vw,75px);background:var(--bg);color:var(--ink)}
.hook-overline{display:inline-block;font:750 11px/1.4 ui-monospace,monospace;letter-spacing:.19em;text-transform:uppercase;color:var(--accent);margin-bottom:20px}
.hook-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(210px,.7fr);gap:22px 50px;align-items:end;margin-bottom:26px}
.hook-head h2{font:400 clamp(40px,6.4vw,105px)/.97 Georgia,serif;letter-spacing:-.045em;max-width:13ch;overflow-wrap:anywhere;position:relative}
.hook-head p{max-width:46ch;font:15px/1.68 'Segoe UI',Arial,sans-serif;opacity:.82}
.hook-controls-tip{font:10px/1.4 ui-monospace,monospace;letter-spacing:.1em;opacity:.65;text-transform:uppercase;margin:20px 0 14px}
.hook-media{position:relative;isolation:isolate;min-height:380px;overflow:hidden;border-radius:13px;background:color-mix(in srgb,var(--ink) 8%,var(--bg));box-shadow:0 16px 45px #0005}
.hook-media figure{position:relative;overflow:hidden}
.hook-media img{display:block;width:100%;height:100%;object-fit:cover}
.hook-media button,.hook-content button{cursor:pointer}
.hk-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:9px;min-height:420px}
.hk-photo-grid figure{min-height:210px;aspect-ratio:4/5}
.hk-photo-grid figure:nth-child(1){grid-row:span 2;aspect-ratio:auto}
.hk-photo-grid figure:nth-child(4){grid-column:span 2;aspect-ratio:16/9}
.hk-photo-grid figure img{position:absolute;inset:0}
.hk-photo-grid figcaption{position:absolute;left:12px;bottom:12px;padding:6px 8px;background:#080a08a8;color:white;font:10px ui-monospace,monospace}
.hook-media .hk-image-button{position:relative;overflow:hidden;cursor:pointer;border:0;background:transparent;display:block;width:100%;padding:0;color:white}
.hk-image-button img{position:absolute;inset:0;transition:transform .6s cubic-bezier(.18,.8,.22,1)}
.hk-image-button:hover img,.hk-image-button:focus-visible img{transform:scale(1.04)}
.hk-frame-label{position:absolute;left:12px;bottom:12px;z-index:2;font:700 12px ui-monospace,monospace;letter-spacing:.12em;text-shadow:0 2px 10px #000;padding:7px;background:#1014128e;border-radius:2px}
.hook-media[data-gallery='hover-expand'] .hk-photo-grid{display:flex;gap:8px;height:420px}
.hook-media[data-gallery='hover-expand'] .hk-photo-grid figure{flex:1;min-width:0;aspect-ratio:auto;transition:flex .65s cubic-bezier(.17,.8,.3,1)}
.hook-media[data-gallery='hover-expand'] .hk-photo-grid figure:is(:hover,:focus-within),.hook-media[data-gallery='hover-expand'] .hk-photo-grid figure.is-active{flex:3.3}
.hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:125px}
.hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid figure{aspect-ratio:auto;min-height:0;grid-row:span 2}
.hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid figure:first-child{grid-row:span 3}
.hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid figure:nth-child(4){grid-column:auto;grid-row:span 1}
.hook-media[data-gallery='framed-photos'] .hk-photo-grid{background:#c7ba9c12;gap:26px;padding:30px;align-items:center}
.hook-media[data-gallery='framed-photos'] figure{border:9px solid #f3eee1;box-shadow:0 22px 45px #0008,0 2px 5px #0006;aspect-ratio:4/5;max-height:450px}
.hook-media[data-gallery='framed-photos'] figure:nth-child(2){transform:translateY(26px) rotate(4deg)}
.hook-media[data-gallery='framed-photos'] figure:nth-child(3){transform:translateY(-14px) rotate(-6deg)}
.hook-media[data-gallery='framed-photos'] figure:nth-child(n+4){display:none}
.hook-media[data-gallery='gallery-tilt'] figure,.hook-media[data-gallery='gallery-spotlight'] figure{transform:perspective(900px) rotateX(var(--hkrx,0deg)) rotateY(var(--hkry,0deg));transition:transform .2s ease;box-shadow:0 15px 24px #0005;border-radius:8px;transform-style:preserve-3d}
.hook-media[data-gallery='gallery-spotlight'] figure::after{content:'';pointer-events:none;position:absolute;inset:0;opacity:var(--hkglow,0);background:radial-gradient(circle at var(--hkpx,50%) var(--hkpy,50%),#fff8,transparent 58%);mix-blend-mode:soft-light;transition:opacity .25s}
.hk-feature{height:min(60vw,490px);max-height:68vh;min-height:310px;position:relative;overflow:hidden}
.hk-feature img{position:absolute;inset:0;object-fit:cover}
.hk-feature .hk-feature-image{width:100%;height:100%;display:block}
.hk-feature .hk-feature-image.hk-going{animation:hkFadeZoom .58s both}
@keyframes hkFadeZoom{from{opacity:.26;transform:scale(1.15);filter:blur(8px)}to{opacity:1;transform:scale(1);filter:blur(0)}}
.hk-gallery-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:16px 20px;background:#141711;color:#f8f0e0}
.hk-gallery-controls button{background:#cdb182;color:#191811;border:0;border-radius:30px;min-height:40px;min-width:40px;padding:7px 14px;font:750 12px ui-monospace,monospace}
.hk-thumb-list{display:flex;gap:8px;align-items:center;overflow:auto;max-width:70%}
.hk-thumb-list button{padding:3px;background:transparent;border:1px solid #fff6;border-radius:2px;width:64px;height:48px;min-height:48px}
.hk-thumb-list button.on{border:2px solid #d8b779}
.hk-thumb-list img{width:100%;height:100%;object-fit:cover}
.hk-deck{height:460px;position:relative;perspective:1100px;display:grid;place-items:center;overflow:hidden}
.hk-deck figure{position:absolute;width:min(62%,550px);height:82%;left:50%;top:50%;transform:translate(-50%,-50%) translate3d(calc(var(--d)*17px),calc(var(--d)*13px),calc(var(--d)*-90px)) rotate(calc(var(--d)*5deg));z-index:calc(10 - var(--d));transition:transform .7s cubic-bezier(.18,.8,.25,1),opacity .5s;box-shadow:0 22px 55px #000a;border:7px solid #fff8}
.hk-deck figure[aria-hidden=true]{opacity:.8}
.hk-deck .hk-gallery-controls{position:absolute;bottom:0;width:100%;z-index:20}
.hk-compare{height:460px;position:relative;overflow:hidden}
.hk-compare>img{position:absolute;inset:0}
.hk-compare .hk-after{clip-path:inset(0 calc(100% - var(--split,50%)) 0 0)}
.hk-compare:after{content:'';position:absolute;width:2px;background:#eee;left:var(--split,50%);top:0;bottom:0;pointer-events:none}
.hk-compare input{position:absolute;left:4%;right:4%;bottom:18px;width:92%;z-index:4;accent-color:#e6c690}
.hk-media-fab{position:absolute;right:14px;top:14px;z-index:5;border-radius:100px!important;width:42px;height:42px;border:1px solid #fff8!important;background:#d5b67e!important;color:#191711!important}
.hk-dialog{border:0;padding:0;max-width:min(95vw,1050px);max-height:92vh;background:#161713;color:#fff9ec;border-radius:12px;box-shadow:0 30px 90px #000b}
.hk-dialog::backdrop{background:#030404d9;backdrop-filter:blur(8px)}
.hk-dialog img{max-width:90vw;max-height:78vh;width:auto;height:auto;object-fit:contain;display:block}
.hk-dialog .hk-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;gap:20px}
.hk-dialog button{background:#d7b782;border:0;padding:10px 15px;color:#191711;border-radius:30px;cursor:pointer}
/* Nav add-ons. Every nav link resolves to a real section of the demo page. */
.hook-navigation{position:fixed;right:25px;top:50%;transform:translateY(-50%);z-index:240;display:grid;gap:7px}
.hook-navigation a,.hook-navigation button{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:42px;padding:9px 12px;border:1px solid #f2dfbb75;background:#172018ed;color:#fff8e8;border-radius:30px;text-decoration:none;font:700 10px ui-monospace,monospace;transition:transform .3s,background .3s}
.hook-navigation a.on{background:#dbbd82;color:#14190f}
.hook-navigation a:hover,.hook-navigation button:hover{transform:translateX(-4px);background:#d3b57b;color:#13190d}
.hook-navigation[data-hook-navigation='reading-progress']{position:fixed;top:0;left:0;right:0;height:5px;transform:none;display:block;pointer-events:none}
.hk-read-bar{display:block;height:100%;width:100%;background:linear-gradient(to right,#d5b878,#fae8c1);transform:scaleX(var(--read-p,0));transform-origin:left}
.hook-navigation[data-hook-navigation='motion-navigation']{top:88px;right:5vw;transform:none;display:flex;gap:5px}
.hook-navigation[data-hook-navigation='scroll-spy']{right:14px}
.hook-navigation[data-hook-navigation='immersive-menu']{top:95px;right:20px;transform:none}
.hook-navigation[data-hook-navigation='floating-menu']{top:auto;right:auto;bottom:26px;left:50%;transform:translateX(-50%);z-index:260}
.hk-overlay-menu{position:fixed;inset:0;background:#131916f7;display:grid;place-content:center;gap:22px;z-index:350;clip-path:inset(0 0 100% 0);transition:clip-path .8s cubic-bezier(.7,0,.3,1);pointer-events:none}
.hk-overlay-menu.on{clip-path:inset(0);pointer-events:auto}
.hk-overlay-menu a{font:400 clamp(36px,7vw,95px)/1 Georgia,serif;text-decoration:none;color:#faf2df}
.hk-overlay-menu button{position:absolute;right:30px;top:25px;background:#d5b67e;color:#15190e;border:0;border-radius:99px;padding:12px 18px}
.hk-floating-pop{display:grid;gap:8px;grid-template-rows:0fr;max-height:0;opacity:0;overflow:hidden;transition:max-height .45s,opacity .3s;pointer-events:none}
.hk-floating-pop.on{max-height:300px;opacity:1;pointer-events:auto}
/* Typography effects; use actual DOM text, not baked inside photos. */
.hook-overline[data-hook='masked-overline']{clip-path:inset(0 100% 0 0);transition:clip-path 1.1s cubic-bezier(.2,.7,.25,1)}
.hook-overline[data-hook='masked-overline'].on{clip-path:inset(0)}
.hook-head h2[data-hook='double-wipe-text']{width:fit-content;isolation:isolate}
.hook-head h2[data-hook='double-wipe-text']::before,.hook-head h2[data-hook='double-wipe-text']::after{content:'';position:absolute;inset:-.07em;background:var(--ink);transform-origin:right;transform:scaleX(1);z-index:4;transition:transform .7s cubic-bezier(.7,0,.2,1)}
.hook-head h2[data-hook='double-wipe-text']::before{background:var(--accent);z-index:3;transition-delay:.14s}
.hook-head h2[data-hook='double-wipe-text'].on::before,.hook-head h2[data-hook='double-wipe-text'].on::after{transform:scaleX(0)}
.hook-head h2[data-hook='text-lines'] .hk-word{display:inline-block;transform:translateY(40px);opacity:0;transition:transform .7s cubic-bezier(.12,.8,.3,1),opacity .6s;transition-delay:calc(var(--i)*70ms)}
.hook-head h2[data-hook='text-lines'].on .hk-word{transform:translateY(0);opacity:1}
.hook-head h2[data-hook='highlight-text']{width:fit-content;background:linear-gradient(transparent 77%,color-mix(in srgb,var(--accent) 68%,transparent) 77%) left bottom/0% 100% no-repeat;transition:background-size 1.2s}
.hook-head h2[data-hook='highlight-text'].on{background-size:100% 100%}
.hook-head h2[data-hook='shutter-headline'] .hk-letter{display:inline-block;opacity:0;transform:translateY(.3em);filter:blur(8px);transition:opacity .45s,transform .6s,filter .6s;transition-delay:calc(var(--i)*45ms)}
.hook-head h2[data-hook='shutter-headline'].on .hk-letter{opacity:1;transform:none;filter:blur(0)}
.hook-head h2[data-hook='type-cycle'] .hk-cycle{display:inline-block;border-bottom:2px solid var(--accent);min-width:4ch;color:var(--accent);transition:opacity .25s,transform .25s}
.hk-marquee{display:flex;gap:24px;overflow:hidden;white-space:nowrap;font:800 12px/1.5 ui-monospace,monospace;letter-spacing:.13em;text-transform:uppercase;color:var(--ink);border-block:1px solid var(--hk-line);margin:24px 0;user-select:none}
.hk-marquee span{padding:10px 0;display:inline-block;translate:var(--marquee-x,0px) 0;will-change:translate}
/* Pointer effects draw over an isolated layer without hijacking click/scroll. */
.hk-pointer-layer{position:absolute;inset:0;pointer-events:none;z-index:7;overflow:hidden}
.hk-pointer-sprite{position:absolute;width:84px;height:104px;pointer-events:none;object-fit:cover;box-shadow:0 11px 35px #0009;border:4px solid #e3d4b6;display:block;left:0;top:0;opacity:0}
.hk-cursor-preview{position:absolute;width:170px;height:200px;left:0;top:0;display:none;border:4px solid #f1e3cb;box-shadow:0 20px 52px #0009;object-fit:cover;pointer-events:none;z-index:8}
.hk-cursor-label{position:absolute;background:#e5c893;color:#14150d;padding:9px 13px;border-radius:30px;font:750 11px ui-monospace,monospace;display:none;z-index:8;pointer-events:none}
.hook-scene .button-primary[data-hk-magnetic]{translate:var(--mag-x,0px) var(--mag-y,0px)}
/* Content components: real clicks, real DOM state. */
.hook-content{margin:48px 0 0;border:1px solid var(--hk-line);padding:clamp(18px,3vw,36px);background:color-mix(in srgb,var(--ink) 4%,var(--bg));border-radius:14px;min-height:175px}
.hook-content h3{font:400 clamp(24px,2.8vw,40px)/1.15 Georgia,serif;margin:0 0 24px}
.hk-tab-controls,.hk-choices,.hk-timeline{display:flex;gap:9px;flex-wrap:wrap}
.hook-content button{border:1px solid var(--hk-line);background:transparent;color:var(--ink);border-radius:30px;padding:12px 18px;min-height:44px;font:600 12px ui-monospace,monospace;transition:background .2s,color .2s,transform .2s}
.hook-content button[aria-selected=true],.hook-content button[aria-pressed=true],.hook-content button:hover{background:var(--accent);color:#17140f}
.hook-content button:active{transform:scale(.96)}
.hk-tab-panel,.hk-timeline-content{margin-top:22px;max-width:70ch;font:16px/1.6 'Segoe UI',Arial,sans-serif}
.hk-accordion details{border-bottom:1px solid var(--hk-line);padding:16px 0}
.hk-accordion summary{font:600 17px/1.5 'Segoe UI',Arial,sans-serif;cursor:pointer;list-style:none}
.hk-accordion summary::after{content:'+';float:right;color:var(--accent);font-size:26px}
.hk-accordion details[open] summary::after{content:'−'}
.hk-accordion details p{max-width:72ch;opacity:.78;margin-top:10px}
.hk-pinned-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}
.hk-step-card{border:1px solid var(--hk-line);padding:22px;min-height:180px;background:#fff1;transform:translateY(var(--offset,0px)) rotate(var(--angle,0deg));transition:transform .5s,background .3s;box-shadow:0 16px 40px #0003}
.hk-step-card.on{background:color-mix(in srgb,var(--accent) 24%,transparent);transform:translateY(-8px)}
.hk-step-card strong{display:block;font:700 12px ui-monospace,monospace;margin-bottom:20px;color:var(--accent)}
.hk-step-card p{font-size:15px;line-height:1.5}
.hk-kinetic{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;perspective:1000px}
.hk-kinetic .hk-step-card:hover{transform:translateY(-16px) rotateY(-8deg) scale(1.025)}
.hk-choice{display:flex;align-items:center;gap:12px;min-height:48px;padding:12px 16px;border:1px solid var(--hk-line);border-radius:7px;cursor:pointer;flex:1 1 140px}
.hk-choice:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,transparent)}
.hk-choice input{accent-color:var(--accent)}
.hk-choice:focus-within{outline:2px solid var(--accent);outline-offset:2px}
.hk-compare-split{--split:50%;height:310px;position:relative;overflow:hidden;border-radius:10px}
.hk-compare-split img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hk-compare-split img:last-of-type{clip-path:inset(0 calc(100% - var(--split)) 0 0)}
.hk-compare-split input{position:absolute;bottom:12px;left:7%;width:86%;accent-color:var(--accent);z-index:4}
.hk-scroll-copy{font:400 clamp(25px,3vw,43px)/1.25 Georgia,serif;max-width:27ch}
.hk-scroll-copy span{color:color-mix(in srgb,var(--ink) 30%,var(--bg));transition:color .3s}
.hk-scroll-copy span.on{color:var(--accent)}
/* Floating action modules. Only the selected module is emitted. */
.floating-controls:has(+ .hook-action-layer){display:none!important}
.hook-action-layer{position:fixed;right:26px;bottom:26px;z-index:350;display:grid;justify-items:end;gap:8px;max-width:min(90vw,340px)}
.hook-action-layer .hk-action-main{display:inline-flex;align-items:center;justify-content:center;min-height:54px;border:1px solid #fff6;background:var(--accent,#d8b779);color:#17140f;border-radius:30px;padding:14px 21px;box-shadow:0 16px 30px #0008,0 2px 2px #fff4 inset;font:800 11px ui-monospace,monospace;letter-spacing:.05em}
.hk-action-list{display:grid;gap:8px;max-height:0;overflow:hidden;opacity:0;transition:max-height .38s,opacity .3s}
.hk-action-list.on{max-height:350px;opacity:1}
.hk-action-list a,.hk-action-list button{display:block;padding:12px 18px;border-radius:30px;background:#e2c38a;color:#151812;border:1px solid #fff6;min-height:44px;font:800 11px ui-monospace,monospace;text-decoration:none;cursor:pointer;box-shadow:0 7px 15px #0004}
.hook-action-layer[data-hook-action='fab-slide'] .hk-action-list.on{display:flex}
.hook-action-layer[data-hook-action='contact-card'] .hk-action-list{max-height:500px;opacity:1}
.hook-action-layer[data-hook-action='mobile-action-rail']{left:12px;right:12px;bottom:10px;max-width:none;justify-items:stretch}
.hook-action-layer[data-hook-action='mobile-action-rail'] .hk-action-list{display:flex;max-height:none;opacity:1;justify-content:center;overflow:visible}
.hook-action-layer[data-hook-action='mobile-action-rail'] .hk-action-main{display:none}
.hook-action-layer[data-hook-action='mobile-action-rail'] .hk-action-list a{flex:1;text-align:center}
.hook-action-layer[data-hook-action='contact-drawer'] .hk-action-main{border-radius:8px}
.hk-contact-dialog{border:0;margin:auto auto 0;width:min(580px,100%);max-width:100%;border-radius:20px 20px 0 0;background:#e9d5ae;color:#17190f;padding:35px;box-shadow:0 -20px 80px #0007}
.hk-contact-dialog::backdrop{background:#050805b0}
.hk-contact-dialog h2{font:400 38px/1 Georgia,serif;margin:0 0 15px}
.hk-contact-dialog a{display:inline-block;color:#151a13;padding:14px;border:1px solid #3337;border-radius:20px;margin:8px 8px 0 0;text-decoration:none}
.hk-contact-dialog button{float:right;border:0;background:#162319;color:#f2e1c5;padding:12px 18px;border-radius:20px}
.hk-shine{position:relative;overflow:hidden}
.hk-shine::after{content:'';pointer-events:none;position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#ffffff4d 47%,transparent 64%);transform:translateX(-130%);transition:transform .8s}
.hk-shine:hover::after{transform:translateX(130%)}
/* Accessibility & responsive composition */
.hook-section button:focus-visible,.hook-navigation :is(a,button):focus-visible,.hook-action-layer :is(button,a):focus-visible{outline:3px solid #f0d6a2;outline-offset:3px}
@media(max-width:900px){.hook-head{grid-template-columns:1fr}.hook-media{min-height:270px}.hook-navigation{right:8px}.hook-navigation[data-hook-navigation='motion-navigation']{top:80px}.hook-count{top:72px}}
@media(max-width:700px){.hook-section{padding:65px 18px}.hook-count{font-size:9px;top:75px}.hook-labelbar{gap:7px}.hook-labelbar span{font-size:9px;padding:6px 9px}.hk-photo-grid{grid-template-columns:repeat(2,1fr);min-height:310px}.hk-photo-grid figure{min-height:155px}.hk-photo-grid figure:nth-child(4){grid-column:auto}.hook-media[data-gallery='hover-expand'] .hk-photo-grid{height:310px}.hook-media[data-gallery='framed-photos'] .hk-photo-grid{gap:11px;padding:16px}.hk-feature,.hk-deck{min-height:260px;height:340px}.hk-deck figure{width:77%;height:75%}.hook-navigation:not([data-hook='reading-progress']):not([data-hook='floating-menu']){top:auto;bottom:90px;right:8px;transform:none}.hook-navigation[data-hook-navigation='motion-navigation']{top:auto}.hook-navigation a,.hook-navigation button{font-size:9px;min-width:40px;min-height:38px}.hk-pinned-steps,.hk-kinetic{grid-template-columns:1fr}.hook-action-layer{right:13px;bottom:15px}.hook-action-layer[data-hook-action='mobile-action-rail']{bottom:7px}.hk-action-list a,.hk-action-list button{font-size:10px}.hk-compare-split{height:270px}.hook-head h2{font-size:clamp(37px,8.5vw,64px)}}
@media(prefers-reduced-motion:reduce){.hook-media *, .hook-content *, .hook-navigation *, .hook-action-layer *,.hook-head *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
body.hook-lab .floating-controls{display:none!important}
body.hook-lab .end-panel{min-height:clamp(280px,40vh,460px)}
body.hook-lab .hook-section>.hook-layout{isolation:isolate}
body.hook-lab [data-hook-pointer] .hk-pointer-layer{z-index:5}
.hook-photo-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;color:var(--ink);font-size:12px;opacity:.8}
.hook-gallery-wrapper{min-width:0}
.hook-demo-note{font:12px/1.5 ui-monospace,monospace;color:var(--ink);opacity:.7}

.hook-media .hk-photo-grid .hk-image-button{height:100%;min-height:inherit}
/* Keep the user's first-screen mouse effects visually on top, but never intercept controls. */
.hook-scene .hk-pointer-layer,.hook-scene .hk-pointer-layer *{pointer-events:none!important}
/* IO must see the overline's box: a clip-path that fully clips the observed element
 * yields a zero intersection in Chromium, so animate a covering pseudo-element instead. */
.hook-overline[data-hook='masked-overline']{position:relative;clip-path:none;isolation:isolate;opacity:1}
.hook-overline[data-hook='masked-overline']::after{content:'';position:absolute;inset:-.1em;background:var(--bg);pointer-events:none;transform-origin:right;transform:scaleX(1);transition:transform .75s cubic-bezier(.23,.8,.23,1)}
.hook-overline[data-hook='masked-overline'].on::after{transform:scaleX(0)}
/* Disciplined premium image rhythm: keep gallery photos large but never let
 * intrinsic portrait aspect-ratios stretch an entire section to 1000+ px. */
.hook-media:not([data-gallery='hover-expand']):not([data-gallery='masonry-lightbox']):not([data-gallery='framed-photos']) .hk-photo-grid{
  grid-template-columns:minmax(0,1.16fr) minmax(0,.84fr);grid-template-rows:repeat(3,150px);min-height:0;gap:8px;
}
.hook-media:not([data-gallery='hover-expand']):not([data-gallery='masonry-lightbox']):not([data-gallery='framed-photos']) .hk-photo-grid figure{min-height:0;aspect-ratio:auto;grid-column:auto;grid-row:auto}
.hook-media:not([data-gallery='hover-expand']):not([data-gallery='masonry-lightbox']):not([data-gallery='framed-photos']) .hk-photo-grid figure:first-child{grid-area:1/1/4/2}
.hook-media:not([data-gallery='hover-expand']):not([data-gallery='masonry-lightbox']):not([data-gallery='framed-photos']) .hk-photo-grid figure:nth-child(2){grid-area:1/2/2/3}
.hook-media:not([data-gallery='hover-expand']):not([data-gallery='masonry-lightbox']):not([data-gallery='framed-photos']) .hk-photo-grid figure:nth-child(3){grid-area:2/2/3/3}
.hook-media:not([data-gallery='hover-expand']):not([data-gallery='masonry-lightbox']):not([data-gallery='framed-photos']) .hk-photo-grid figure:nth-child(4){grid-area:3/2/4/3}
.hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,155px);grid-auto-rows:155px;min-height:0}
.hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid figure{min-height:0;aspect-ratio:auto;grid-column:auto;grid-row:auto}
.hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid figure:nth-child(1){grid-area:1/1/4/2}
.hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid figure:nth-child(2){grid-area:1/2/3/3}
.hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid figure:nth-child(3){grid-area:1/3/2/4}
.hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid figure:nth-child(4){grid-area:2/3/4/4}
.hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid figure:nth-child(5){grid-area:3/2/4/3}
.hook-media[data-gallery='hover-expand'] .hk-photo-grid figure{min-height:0;aspect-ratio:auto;grid-column:auto;grid-row:auto}
.hook-media[data-gallery='framed-photos'] .hk-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:380px;min-height:0}
.hook-media[data-gallery='framed-photos'] .hk-photo-grid figure{min-height:0;aspect-ratio:auto;grid-row:auto;grid-column:auto}
@media(max-width:700px){
  .hook-media:not([data-gallery='hover-expand']):not([data-gallery='masonry-lightbox']):not([data-gallery='framed-photos']) .hk-photo-grid{grid-template-rows:repeat(3,115px)}
  .hook-media[data-gallery='masonry-lightbox'] .hk-photo-grid{grid-template-rows:repeat(3,115px);grid-auto-rows:115px}
  .hook-media[data-gallery='framed-photos'] .hk-photo-grid{grid-template-rows:245px}
}

.hook-media[data-gallery='framed-photos'] .hk-photo-grid{align-items:stretch}
.hook-media[data-gallery='framed-photos'] .hk-photo-grid figure{height:100%}
.hook-media[data-gallery='framed-photos'] .hk-photo-grid .hk-image-button{height:100%}

/* Familiar editorial, premium and retail typography. 0 external font downloads. */
body{--font-display:Georgia,serif;--font-body:"Segoe UI",Arial,sans-serif;--font-track:-.052em;--font-weight:400}
body .hero-caption h1,body .brand,body .hook-head h2,body .end-panel p{font-family:var(--font-display)!important;letter-spacing:var(--font-track)!important;font-weight:var(--font-weight)!important}
body .hero-caption .eyebrow,body .hero-desc,body .button,body .hook-section p,body .page-nav,body .hook-content{font-family:var(--font-body)!important}
body.type-rounded .hero-caption h1,body.type-trebuchet .hero-caption h1,body.type-verdana .hero-caption h1{letter-spacing:-.035em!important}
body.type-franklin .hero-caption h1{font-weight:750!important;text-transform:uppercase;font-size:clamp(47px,6.3vw,110px)}
body.type-segoe .hero-caption h1,body.type-arial .hero-caption h1{font-weight:650!important}

/* Fourteen cohesive, familiar design systems rather than identical headings with different family names. */
body.type-baskerville :is(.future-caption,.hero-caption) h1{font-style:italic!important;font-weight:400!important;letter-spacing:-.065em!important}
body.type-palatino :is(.future-caption,.hero-caption) h1{font-weight:400!important;font-size:clamp(49px,6.4vw,112px);letter-spacing:-.045em!important}
body.type-garamond :is(.future-caption,.hero-caption) h1{font-size:clamp(56px,7.5vw,137px);letter-spacing:-.065em!important}
body.type-bodoni :is(.future-caption,.hero-caption) h1{text-transform:uppercase;font-size:clamp(44px,6.5vw,105px);line-height:.88;letter-spacing:-.08em!important}
body.type-times :is(.future-caption,.hero-caption) h1{font-size:clamp(48px,6.8vw,119px);letter-spacing:-.04em!important}
body.type-segoe :is(.future-caption,.hero-caption) h1{font-weight:650!important;line-height:.99;letter-spacing:-.062em!important}
body.type-arial :is(.future-caption,.hero-caption) h1{font-weight:700!important;line-height:1.01;letter-spacing:-.063em!important}
body.type-verdana :is(.future-caption,.hero-caption) h1{font-size:clamp(39px,5.6vw,94px);line-height:1.07;letter-spacing:-.045em!important;font-weight:600!important}
body.type-trebuchet :is(.future-caption,.hero-caption) h1{font-size:clamp(45px,6.6vw,106px);line-height:1.03;letter-spacing:-.043em!important;font-weight:650!important}
body.type-tahoma :is(.future-caption,.hero-caption) h1{text-transform:uppercase;font-size:clamp(41px,5.65vw,98px);font-weight:700!important;letter-spacing:-.04em!important}
body.type-century :is(.future-caption,.hero-caption) h1{text-transform:uppercase;font-size:clamp(40px,5.3vw,92px);letter-spacing:.025em!important;font-weight:500!important}
body.type-franklin :is(.future-caption,.hero-caption) h1{text-transform:uppercase;font-size:clamp(47px,6.3vw,108px);font-weight:800!important;letter-spacing:-.03em!important}
body.type-rounded :is(.future-caption,.hero-caption) h1{font-size:clamp(45px,6.9vw,111px);line-height:1.02;letter-spacing:-.03em!important;font-weight:700!important}
body.type-rounded .button,body.type-trebuchet .button,body.type-verdana .button{border-radius:999px!important}
body.type-rounded .future-space:before,body.type-trebuchet .future-space:before{background:radial-gradient(circle at 25% 25%,color-mix(in srgb,var(--accent) 25%,transparent),transparent 65%)}

/* STD GEN 3.2.5 — deterministic copy-position grammar, readable on every viewport. */
.hp325-stage{--font-display:var(--display,Georgia,serif);isolation:isolate}
.hp325-stage .hp325-caption{font-family:var(--font-body,'Segoe UI',sans-serif);box-sizing:border-box}
.hp325-stage .hp325-caption h1{font-family:var(--font-display)!important;letter-spacing:var(--font-track,-.05em)!important;font-weight:var(--font-weight,400)!important;line-height:.99;overflow-wrap:anywhere;text-wrap:balance}
.hp325-stage .hp325-caption .hero-desc{max-width:52ch;line-height:1.55}
.hp325-stage .hp325-caption .button{box-shadow:0 5px 0 color-mix(in srgb,var(--accent),black 35%),0 12px 35px #0008, inset 0 1px #fff7;transition:transform .23s,box-shadow .23s}
.hp325-stage .hp325-caption .button:hover{transform:translateY(-3px);box-shadow:0 8px 0 color-mix(in srgb,var(--accent),black 35%),0 18px 38px #0009,inset 0 1px #fff7}
.hp325-stage .hp325-caption .button:active{transform:translateY(3px);box-shadow:0 2px 0 color-mix(in srgb,var(--accent),black 35%),0 4px 10px #0008}
/* Distinct silhouette: exact caption position chosen by prepaid-free planner. */
.hp325-stage .hp325-caption-overlay-left{left:clamp(22px,5vw,95px)!important;right:auto!important;top:auto!important;bottom:clamp(135px,19vh,225px)!important;text-align:left;max-width:min(590px,43vw)!important;width:min(590px,43vw)!important}
.hp325-stage .hp325-caption-overlay-right{right:clamp(22px,5vw,95px)!important;left:auto!important;top:auto!important;bottom:clamp(145px,19vh,225px)!important;text-align:right;max-width:min(580px,40vw)!important;width:min(580px,40vw)!important}
.hp325-stage .hp325-caption-overlay-right .hero-desc{margin-left:auto}
.hp325-stage .hp325-caption-overlay-top{top:clamp(125px,15vh,180px)!important;bottom:auto!important;left:50%!important;right:auto!important;transform:translateX(-50%);text-align:center;max-width:min(930px,85vw)!important;width:min(930px,85vw)!important}
.hp325-stage .hp325-caption-overlay-top h1{max-width:none;margin-left:auto;margin-right:auto}
.hp325-stage .hp325-caption-overlay-top .hero-desc{margin-left:auto;margin-right:auto}
.hp325-stage .hp325-caption-overlay-bottom{top:auto!important;bottom:clamp(145px,19vh,205px)!important;left:50%!important;right:auto!important;transform:translateX(-50%);text-align:center;max-width:min(1050px,87vw)!important;width:min(1050px,87vw)!important}
.hp325-stage .hp325-caption-overlay-bottom h1{max-width:none;margin-left:auto;margin-right:auto}
.hp325-stage .hp325-caption-overlay-bottom .hero-desc{margin-left:auto;margin-right:auto}
.hp325-stage .hp325-caption-side-left{top:27%!important;bottom:auto!important;left:clamp(25px,5vw,110px)!important;right:auto!important;max-width:min(480px,34vw)!important;width:min(480px,34vw)!important;padding:24px!important;background:#0c130fbd;border-left:2px solid var(--accent);backdrop-filter:blur(5px)}
.hp325-stage .hp325-caption-side-right{top:27%!important;bottom:auto!important;left:auto!important;right:clamp(25px,5vw,110px)!important;max-width:min(480px,34vw)!important;width:min(480px,34vw)!important;padding:24px!important;background:#0c130fbd;border-right:2px solid var(--accent);backdrop-filter:blur(5px)}
.hp325-copy-band{padding:clamp(50px,7vh,100px) clamp(22px,5vw,100px);background:var(--paper,#f0eee6);color:var(--ink,#192b22)}
.hp325-copy-band .hp325-caption{position:relative!important;inset:auto!important;transform:none!important;pointer-events:auto!important;color:inherit!important;text-shadow:none!important;width:min(100%,1350px)!important;max-width:1350px!important;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.65fr);gap:10px 65px;align-items:center}
.hp325-copy-band .eyebrow{grid-column:1/-1;font:700 11px/1.5 'Segoe UI',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.hp325-copy-band h1{font:var(--font-weight,400) clamp(44px,6.5vw,126px)/.95 var(--font-display,Georgia,serif);letter-spacing:var(--font-track,-.055em);max-width:17ch;grid-row:2/4;overflow-wrap:anywhere}
.hp325-copy-band .hero-desc{font:clamp(15px,1.15vw,20px)/1.6 var(--font-body,'Segoe UI',sans-serif);max-width:47ch;grid-column:2;grid-row:2}
.hp325-copy-band .button{grid-column:2;grid-row:3;justify-self:start;border-radius:var(--button-rad,10px);box-shadow:0 6px 0 color-mix(in srgb,var(--accent),black 45%),0 13px 26px #0003}
.hp325-band-below{border-top:3px solid var(--accent);border-bottom:1px solid #0002}
.hp325-band-above{border-bottom:3px solid var(--accent)}
body.type-rounded .hp325-copy-band .button,body.type-trebuchet .hp325-copy-band .button{border-radius:999px}
/* Lab gallery widgets become normal story sections with per-site photos. */
.hp325-release .hook-section{--bg:var(--paper,#f0eee6);--ink:var(--ink,#192b22);--accent:var(--accent,#af7b4e);background:var(--paper,#f0eee6);color:var(--ink,#192b22);max-width:none;padding:clamp(50px,7vw,120px) clamp(22px,5vw,100px)}
.hp325-release .hook-overline{color:var(--accent);font-weight:700}
.hp325-release .hook-head h2{font-family:var(--font-display,Georgia,serif)!important;font-weight:var(--font-weight,400)!important;letter-spacing:var(--font-track,-.05em)!important}
.hp325-release .hook-action-layer{z-index:55;right:clamp(12px,3vw,45px);bottom:clamp(14px,3vh,35px)}
.hp325-release .hook-section .hk-photo-grid img{object-fit:cover}
.hp325-release .future-scenetag,.hp325-release .hook-controls-tip,.hp325-release .hook-labelbar{display:none!important}
@media(max-width:850px){
 .hp325-stage .hp325-caption{left:20px!important;right:20px!important;top:auto!important;bottom:115px!important;transform:none!important;width:auto!important;max-width:none!important;text-align:left!important;padding:15px!important;background:#07100dc9!important;border-left:2px solid var(--accent)!important;border-right:0!important;backdrop-filter:blur(3px)}
 .hp325-stage .hp325-caption h1{font-size:clamp(36px,9vw,65px)!important;max-width:16ch!important;line-height:1!important}
 .hp325-stage .hp325-caption .hero-desc{font-size:clamp(12px,3vw,15px)!important;margin:8px 0 12px!important;max-width:45ch!important}
 .hp325-stage .hp325-caption .button{min-height:42px!important}
 .hp325-copy-band .hp325-caption{grid-template-columns:minmax(0,1fr)!important;gap:15px!important}
 .hp325-copy-band .hp325-caption>*{grid-column:1!important;grid-row:auto!important}
 .hp325-copy-band h1{font-size:clamp(45px,11vw,80px)!important}
 .hp325-release .hook-section{padding:60px 20px}
 .hp325-release .future-stage .future-caption{left:20px!important;right:20px!important;top:auto!important;bottom:118px!important}
}
