/* One shared category surface: the exact existing Natural dark-section color. */
:root{--category-backdrop:#111416}
.story-section{background:var(--category-backdrop)}
.story-section[data-tone=light]{background:var(--paper)}
[hidden],.collections .collection-links a[hidden]{display:none!important}
.reference-piece[data-category=furniture] .reference-art{background:#17191b}
.reference-piece[data-category=architecture] .reference-art{background:#f4f2eb}
.reference-piece[data-category=product] .reference-art{background:#17191b;--caption-wash:18 20 21;--caption-ink:#faf8f3}
.reference-piece[data-category=motion] .reference-art{background:#080707}
.reference-piece[data-category=ai] .reference-art{background:#f4f2eb;--caption-wash:244 242 235;--caption-ink:#111315}
.reference-piece[data-category=ai] .panel-name{font-size:clamp(12px,1.65vw,31px)}
.reference-piece[data-category=motion] .panel-name{font-size:clamp(11px,1.4vw,27px)}
.category-entry{background:var(--category-backdrop);color:var(--paper);width:100vw;scroll-behavior:auto;overflow-anchor:none}
.category-entry::backdrop{background:transparent}
.category-entry .entry-sheet{position:relative;min-height:100dvh;background:var(--category-backdrop);box-shadow:none;transform:none}
.entry-top-backdrop{position:fixed;inset:0;background:var(--paper);z-index:2;will-change:transform;pointer-events:none;overflow:hidden}
.category-entry .entry-tile{position:fixed;z-index:3}
.category-entry .entry-seam{position:fixed;z-index:3}
.category-entry .entry-template{height:auto;min-height:100dvh;padding:0 5%;color:var(--paper)}
.entry-navigation{height:90px;padding:0 195px 0 0!important;border-bottom:1px solid #ffffff25!important}
.entry-brand{font-size:clamp(19px,1.6vw,30px)}
.entry-brand{color:inherit;text-decoration:none;display:inline-flex}
.entry-settings{display:flex;gap:18px;font-size:10px;margin-left:auto}
.entry-settings button{padding:10px 0}.entry-settings span{margin-left:4px;display:inline-block;padding:3px 6px;border-radius:20px;background:#ffffff15}
.entry-settings [aria-pressed=true] span{background:var(--accent-light);color:#17191b}
.category-entry .entry-back{position:fixed;top:26px;right:5%;background:var(--category-backdrop);border-color:#ffffff40;color:var(--paper);z-index:5}
.category-entry .entry-back:hover{background:#ffffff10}
.category-entry[data-phase=entering] .entry-back,.category-entry[data-phase=leaving] .entry-back{opacity:0;pointer-events:none}
.entry-content>h1{margin-top:15vh}
.product-hero{min-height:calc(100svh - 90px);display:flex;flex-direction:column;padding:32px 0 0}
.product-hero-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:22px}
.product-eyebrow{font-size:9px;letter-spacing:.13em;line-height:1.6;text-transform:uppercase;color:#b8bcbe;margin:0 0 14px}
.entry-template .product-hero h1{margin:0;font-size:clamp(36px,4vw,76px);line-height:.98;font-weight:400;letter-spacing:-.05em}
.product-hero h1 br{display:none}.product-hero h1 em{font-style:normal;color:#b7bec1}
.product-hero-heading>p{margin:0;font-size:12px;color:#bfc3c5;line-height:1.65}
.product-film-stage{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:16/9;width:100%;background:#07090a;max-height:calc(100svh - 330px);min-height:260px;flex:1}
.product-film{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 1.2s ease-in-out;pointer-events:none}
.product-film.is-front{opacity:1}
.product-film-shade{position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0009);pointer-events:none;z-index:2}
.product-film-caption{position:absolute;inset:auto 28px 25px;z-index:3;display:flex;gap:24px;align-items:flex-end;color:#fff}
.film-number{font-size:9px;letter-spacing:.15em;padding-bottom:5px;opacity:.75}
.film-maker{display:block;font-size:10px;opacity:.75;margin-bottom:5px}
.film-name{font-size:clamp(27px,3vw,50px);font-weight:400;letter-spacing:-.035em;line-height:1}
.film-toggle{margin-left:auto;font-size:10px;border-bottom:1px solid #ffffff70;padding:8px 0}
.product-film-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:18px 0 25px;border-bottom:1px solid #ffffff26}
.product-timeline{flex:1;min-width:0;max-width:1100px}
.product-seek-label,.product-timeline-meta{display:flex;justify-content:space-between;gap:14px;font-size:9px;color:#bec5c8;letter-spacing:.04em}
.product-seek-label span{color:#899398}
.product-timeline-meta{font-size:8px;color:#929da2}
.product-film-seek{--film-progress:0%;appearance:none;-webkit-appearance:none;display:block;width:100%;height:30px;margin:3px 0;background:transparent;cursor:pointer;touch-action:pan-y;border:0;padding:0;color:#ff8a45}
.product-film-seek::-webkit-slider-runnable-track{height:3px;border-radius:3px;background:linear-gradient(to right,#ff8a45 var(--film-progress),#ffffff30 var(--film-progress))}
.product-film-seek::-moz-range-track{height:3px;border-radius:3px;background:#ffffff30}
.product-film-seek::-moz-range-progress{height:3px;background:#ff8a45}
.product-film-seek::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:10px;height:10px;border-radius:50%;background:#ff8a45;margin-top:-3.5px;border:0}
.product-film-seek::-moz-range-thumb{width:10px;height:10px;border-radius:50%;background:#ff8a45;border:0}
.product-film-seek:focus-visible{outline:1px solid #ff8a45;outline-offset:3px;border-radius:4px}
.product-film-footer nav{display:flex;gap:clamp(16px,3vw,54px)}
.product-film-footer button{font-size:11px;color:#9ca4a8;padding:5px 0;border-bottom:1px solid transparent}
.product-film-footer button span{font-size:8px;margin-right:8px;opacity:.5}
.product-film-footer button[aria-pressed=true]{color:#faf8f3;border-color:#ff8a45}
.product-discover{font-size:10px;white-space:nowrap;color:#c7cbcd}
.product-editorial{padding-top:clamp(70px,10vw,180px)}
.product-introduction{display:grid;grid-template-columns:1.7fr 1fr;gap:35px 10%;padding:0 6% 120px;align-items:end}
.product-introduction>.product-eyebrow{grid-column:1/-1}
.product-introduction h2{font-size:clamp(38px,5vw,83px);font-weight:400;line-height:1.06;letter-spacing:-.05em;margin:0}
.product-introduction h2 em{font-style:normal;color:#9ca6aa}
.product-introduction>p:last-child{font-size:13px;line-height:1.9;color:#bfc3c5}
.product-project{padding:0 0 clamp(90px,11vw,190px);scroll-margin-top:32px}
.entry-template .product-project-heading{display:grid;grid-template-columns:65px 1fr auto;gap:24px;align-items:end;padding:25px 0 35px;border-top:1px solid #ffffff35;border-bottom:0}
.product-project-number{font-size:13px;color:var(--project-accent);align-self:start;padding-top:3px}
.product-project-heading h2{font-size:clamp(48px,7vw,116px);font-weight:400;letter-spacing:-.065em;line-height:1;margin:0;color:var(--project-accent)}
.product-project-heading .product-eyebrow{margin-bottom:13px}
.product-project-heading>p{font-size:13px;letter-spacing:-.015em;color:#c8ced0;margin:0 0 5px}
.product-project-images{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:50px 3%;align-items:start}
.product-image{margin:0;min-width:0;overflow:hidden}
.product-image img{display:block;width:100%;height:auto;object-fit:contain;background:#0a0b0c}
.product-image figcaption{font-size:9px;letter-spacing:.035em;color:#9da7ac;margin-top:13px}
.image-major{grid-column:1/10}.image-detail{grid-column:8/13;grid-row:2;margin-top:8%}
.image-offset{grid-column:1/7;grid-row:2;margin-top:15%}
.image-wide{grid-column:1/-1}
.project-op1 .image-detail{grid-column:1/8;margin-top:0}.project-op1 .image-offset{grid-column:9/13;margin-top:25%}
.project-playdate .image-major{grid-column:3/13}.project-playdate .image-offset{grid-column:2/8;margin-top:12%}.project-playdate .image-detail{grid-column:9/13;margin-top:0}
.project-ode .image-detail{grid-column:1/6;margin-top:12%}.project-ode .image-offset{grid-column:7/13;margin-top:0}
.product-process{margin-top:55px;border-top:1px solid #ffffff25}
.product-process summary{list-style:none;display:flex;justify-content:space-between;cursor:pointer;font-size:11px;padding:20px 0;color:#c8ced0}
.product-process summary::-webkit-details-marker{display:none}.product-process summary .gallery-icon{font-size:19px}.product-process[open] summary .gallery-icon{transform:rotate(45deg)}
.product-expanded-gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:75px 8%;padding:40px 4% 65px}
.product-process:not([open])>.product-expanded-gallery{display:none}
.expanded-view{grid-column:span 6;align-self:start}
.expanded-view:nth-child(2n+3){margin-top:12%}
.expanded-wireframe{grid-column:2/12;margin-bottom:30px}
.image-process{max-width:75%;margin:20px auto 0}
.product-end{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #ffffff25;padding:30px 0 45px;font-size:9px;letter-spacing:.06em;color:#a5afb4}
@media(max-width:1000px){.entry-navigation{height:78px}.product-hero{min-height:calc(100svh - 78px)}.product-film-stage{max-height:none;flex:none;min-height:0}.product-hero-heading{gap:20px}.product-introduction{padding-left:0;padding-right:0}.entry-template .product-project-heading{grid-template-columns:35px 1fr auto}.product-project-images{gap:30px 3%}}
@media(max-width:700px){
 .category-entry .entry-template{padding:0 6%}.entry-navigation{height:70px;padding-right:140px!important;gap:8px!important}.entry-brand{font-size:15px}.entry-settings{gap:9px;font-size:9px}.entry-settings button{font-size:9px}.category-entry .entry-back{top:23px;right:6%;font-size:10px;padding:7px 10px}
 .product-hero{padding-top:25px;min-height:calc(100svh - 70px);justify-content:center}.product-hero-heading{display:block}.product-hero h1 br{display:block}.entry-template .product-hero h1{font-size:48px}.product-hero-heading>p{margin-top:20px;font-size:11px}.product-eyebrow{font-size:8px}
 .product-film-stage{aspect-ratio:4/3;min-height:0;flex:none}.product-film{object-fit:contain}.product-film-caption{inset:auto 14px 15px;gap:10px}.film-number{font-size:7px}.film-maker{font-size:8px}.film-name{font-size:27px}.film-toggle{font-size:9px}
 .product-film-footer{display:block;padding-top:18px}.product-film-footer nav{justify-content:space-between;gap:8px}.product-film-footer button{font-size:10px}.product-film-footer button span{display:none}.product-discover{display:block;margin-top:24px}
 .product-editorial{padding-top:70px}.product-introduction{display:block;padding-bottom:60px}.product-introduction h2{font-size:39px}.product-introduction>p:last-child{margin-top:25px;font-size:12px}
 .entry-template .product-project-heading{grid-template-columns:24px 1fr;gap:15px;padding-bottom:25px}.product-project-heading>p{grid-column:2}.product-project-heading h2{font-size:62px}.product-project-heading .product-eyebrow{font-size:7px}
 .product-project-images{display:flex;flex-direction:column;gap:30px}.product-image{width:100%;margin:0!important}.product-image img{object-fit:contain}.product-image.image-offset{width:88%;align-self:flex-end}.product-image.image-detail{width:88%;align-self:flex-start}.image-process{max-width:100%}.product-process{margin-top:30px}.product-end{line-height:1.7}
 /* Keep the approved fan on small screens, with usable captions and hit areas. */
 .reference-hero{padding:0 3.5%}.reference-composition{aspect-ratio:1/.98}.reference-header nav{gap:14px}.reference-studio{display:none}.reference-brand{font-size:17px}.reference-header nav{font-size:10px}.reference-intro{top:16%;translate:none}.reference-intro h1{white-space:normal;font-size:clamp(22px,5vw,33px)}.reference-intro p{font-size:12px;margin-top:9px}.reference-chapters{inset:26% 0 4%;translate:none}.reference-piece{top:10%;height:80%}.reference-art>.panel-name{font-size:clamp(9px,2.3vw,16px);padding:8px 4%;min-height:23%}.reference-piece[data-category=motion] .panel-name{font-size:clamp(8px,2vw,14px)}.reference-piece[data-category=ai] .panel-name{font-size:clamp(10px,2.5vw,17px)}
}
@media(max-width:480px){.entry-settings{position:absolute;top:77px;right:6%;z-index:1}.entry-navigation{height:70px}.product-hero{padding-top:40px}.product-hero-heading>.product-eyebrow{margin-right:120px}.product-film-stage{aspect-ratio:1.1}.product-film-caption{inset:auto 12px 13px}.film-number{display:none}}
@supports (-webkit-touch-callout: none){
 @media(max-width:700px){
  .category-entry .entry-brand,.category-entry .entry-back{-webkit-tap-highlight-color:transparent}
  .category-entry .entry-brand:focus,.category-entry .entry-back:focus{outline:none;box-shadow:none}
 }
}
@media(prefers-reduced-motion:reduce){.product-film{transition:none}.category-entry{scroll-behavior:auto}.entry-top-backdrop{will-change:auto}}
.product-highlight+.product-highlight{padding-top:clamp(60px,8vw,110px)}
.entry-template .product-highlight h2{font-size:clamp(36px,4vw,76px);font-weight:400;letter-spacing:-.05em;line-height:1.05;margin:0}
.product-highlight h2 em{font-style:normal;color:#b7bec1}
.product-highlight-nav{display:flex;flex-wrap:wrap;gap:18px 35px;font-size:11px;color:#c7cbcd;padding:0 0 22px}
.product-highlight-nav a:hover{color:#ff8a45}
/* One selected object: film and corresponding imagery stay together. */
.product-browser{padding-top:30px}
.product-browser-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}
.entry-template .product-browser-heading h1{font:400 clamp(38px,4.5vw,76px)/1.02 Arial;letter-spacing:-.055em;margin:0;max-width:none}
.product-browser-heading h1 em{font-style:normal;color:#aeb6b9}
.product-browser-heading>p{font-size:12px;line-height:1.7;color:#bfc5c8;margin:0}
.product-selector{position:sticky;top:0;z-index:4;background:var(--category-backdrop);padding:14px 0 20px;border-bottom:1px solid #ffffff25;margin-bottom:30px}
.product-selector-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:8px;letter-spacing:.1em;color:#a8b1b5}
.product-selector-heading button{border:1px solid #ffffff30;width:30px;height:26px;margin-left:8px;font-size:15px}
.product-selector-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.product-selector-cards button{display:flex;align-items:center;gap:15px;text-align:left;border:1px solid #ffffff25;background:#ffffff03;padding:8px;color:inherit;min-width:0;transition:border-color .2s,background .2s}
.product-selector-cards button[aria-selected=true]{border-color:#ff8a45;background:#ff8a450b}
.product-selector-cards button:focus-visible{outline:2px solid #ff8a45;outline-offset:3px}
.product-selector-cards img{width:64px;height:45px;object-fit:contain;background:#07090a}
.product-selector-cards strong{display:block;font-size:16px;font-weight:400;letter-spacing:-.02em}
.product-selector-cards small{display:block;font-size:8px;color:#9da7ac;margin-top:5px}
.product-browser-workspace{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);gap:36px;align-items:start}
.product-browser-films{position:sticky;top:138px;min-width:0}
.product-browser .product-highlight{min-height:0;padding:0;display:block}
.product-browser .product-film-stage{aspect-ratio:16/9;min-height:0;max-height:none;flex:none}
.product-browser .product-film-footer{display:block;padding-bottom:16px}
.product-browser .product-discover{display:none}
.product-browser .product-editorial{padding:0;min-width:0}
.product-browser .product-project{padding:0}
.product-browser .product-project-heading{grid-template-columns:20px 1fr;padding:0 0 18px;gap:12px;border:0}
.product-browser .product-project-heading h2{font-size:32px}
.product-browser .product-project-heading>p{grid-column:2;font-size:11px;margin:0}
.product-browser .product-project-heading .product-eyebrow{font-size:8px;margin-bottom:7px}
.product-browser .product-project-images,.product-browser .product-expanded-gallery{display:flex;flex-direction:column;gap:28px;padding:0}
.product-browser .product-image{width:100%;margin:0!important;align-self:stretch}
.product-browser .product-process{margin-top:28px}
.product-browser .product-process summary{font-size:10px;line-height:1.6;gap:12px}
.product-browser .product-end{line-height:1.7;font-size:8px;margin-top:28px}
@media(max-width:800px){
 .product-browser-heading{display:block}.product-browser-heading>p{margin-top:15px;font-size:11px}
 .product-selector{position:relative;margin-bottom:22px}.product-selector-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.product-selector-cards button{gap:9px}.product-selector-cards img{width:48px;height:38px}.product-selector-cards strong{font-size:15px}.product-selector-cards small{font-size:7px}
 .product-browser-workspace{display:block}.product-browser-films{position:sticky;top:0;background:var(--category-backdrop);z-index:2;padding:10px 0}.product-browser .product-film-stage{max-height:38svh}.product-browser .product-film-caption{inset:auto 12px 14px}.product-browser .film-name{font-size:25px}.product-browser .product-editorial{padding-top:25px}.product-browser .product-film-footer{padding:12px 0 4px}.product-browser .product-film-footer .product-seek-label span{font-size:8px}
}
.product-selector-heading{padding-right:155px}
@media(max-width:800px){.product-selector-heading{padding-right:0}}

/* Selector belongs to the film column on every device. */
.entry-template .product-browser-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}
.entry-template .product-browser-heading>p{width:auto;max-width:36rem;margin:0;white-space:normal;word-break:normal}
.product-browser-films{top:20px}
.product-browser .product-selector{position:relative;top:auto;padding:20px 0;margin:0;z-index:1}
.product-browser .product-selector-heading{padding-right:0}
.product-browser .product-selector-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:800px){.product-browser-films{position:relative;top:auto}.entry-template .product-browser-heading h1{font-size:clamp(34px,8vw,52px)}.product-browser .product-selector{padding-bottom:12px}}

.entry-template .product-browser-heading{padding:0 0 26px}

/* Full-width product study: film, selector, then the photo gallery. */
.product-browser-workspace{display:block}
.product-browser-films{position:relative;top:auto;padding:0}
.product-browser .product-film-stage{width:100%;aspect-ratio:16/9;max-height:none}
.product-browser .product-selector-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.product-browser .product-editorial{padding-top:48px}
.product-browser .product-project-heading{grid-template-columns:28px 1fr auto;align-items:end;padding-bottom:28px}
.product-browser .product-project-heading>p{grid-column:auto}
.product-browser .product-project-heading h2{font-size:clamp(40px,5vw,72px)}
.product-browser .product-project-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.product-browser .product-project-images .product-image{grid-column:auto;grid-row:auto;align-self:start}
.product-browser .product-project-images .product-image:first-child{grid-column:1/-1}
.product-browser .product-expanded-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.product-browser .expanded-view{grid-column:auto}
.product-browser .expanded-wireframe{grid-column:1/-1}
.product-browser .product-highlight:not([hidden]){animation:product-study-enter .38s ease-out both}
@keyframes product-study-enter{from{opacity:.55;transform:translateX(var(--product-slide-offset,30px))}to{opacity:1;transform:translateX(0)}}
@media(max-width:800px){
 .product-browser .product-selector-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
 .product-browser .product-editorial{padding-top:30px}
 .product-browser .product-project-heading{grid-template-columns:24px 1fr}
 .product-browser .product-project-heading>p{grid-column:2}
 .product-browser .product-project-images,.product-browser .product-expanded-gallery{grid-template-columns:minmax(0,1fr);gap:24px}
}
@media(prefers-reduced-motion:reduce){.product-browser .product-highlight:not([hidden]){animation:none}}

.product-selector-actions{display:flex;align-items:center;gap:8px}
.product-selector-heading button[data-product-all]{width:auto;min-height:30px;height:auto;margin:0;padding:7px 12px;font-size:10px;letter-spacing:0;white-space:nowrap}
.product-selector-heading button[data-product-all][aria-pressed=true]{border-color:#ff8a45;color:#ffb07d}
.product-gallery-heading{font-size:11px;color:#c8ced0;padding:20px 0;margin:0}
.product-browser .product-project+.product-project:not([hidden]){margin-top:75px;border-top:1px solid #ffffff25;padding-top:35px}
.product-browser .product-process-expanded .product-expanded-gallery{display:grid}
@media(max-width:480px){.product-selector-heading{align-items:start;gap:12px;flex-wrap:wrap}.product-selector-actions{margin-left:auto}}

/* Reserve room for contour brackets and keep adjacent frames in their cells. */
.product-browser .product-project-images,.product-browser .product-expanded-gallery{gap:56px;padding:14px}
.product-browser .portfolio-contour{transform:scale(var(--contour-scale,1));transform-origin:center}
@media(max-width:800px){.product-browser .product-project-images,.product-browser .product-expanded-gallery{gap:42px;padding:14px}}

.product-browser .product-timeline{width:100%;max-width:none}

/* Keep category geometry stable while the landing cover enters and returns. */
.category-entry{width:100%;scrollbar-gutter:stable}

.entry-top-backdrop .phone-category-row::before{opacity:var(--captured-preview-opacity,0);transition:none}
