/* Terra installations: stone, light and glass. Scoped to successful enhancement. */
.to-atelier .to-hero-scene-ready { padding:50px 28px 48px; overflow:visible; }
.to-atelier .to-hero-scene-ready > .to-wrap { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.13fr); gap:clamp(28px,4vw,68px); align-items:center; opacity:1; filter:none; transform:none; }
.to-installation-copy { min-width:0; }
.to-atelier .to-hero-scene-ready .to-eyebrow { display:block; margin:0 0 24px; font-size:9px; letter-spacing:.19em; line-height:1.8; }
.to-atelier .to-hero-scene-ready h1 { font:400 clamp(40px,4.5vw,70px)/1.045 var(--to-serif); letter-spacing:-.045em; margin:0; max-width:16ch; text-wrap:balance; }
.to-atelier .to-hero-scene-ready .to-lead { margin:28px 0 0; padding:0; border:0; font-size:14px; line-height:1.95; max-width:45em; color:#6d6253; }
.to-installation { --pointer-x:0; --pointer-y:0; margin:0; position:relative; min-width:0; padding:15px 0 0 15px; isolation:isolate; }
.to-installation::before { content:''; position:absolute; inset:0 16px 74px 0; border:1px solid #c9af7e55; border-radius:150px 16px 16px; z-index:-1; }
.to-installation__stage { position:relative; isolation:isolate; overflow:hidden; width:100%; aspect-ratio:1.14; --stage-radius:130px 12px 12px; border-radius:var(--stage-radius); clip-path:inset(0 round var(--stage-radius)); background:#eee7da; box-shadow:0 25px 50px -30px #846c4750,inset 0 0 0 1px #fff; transform:perspective(1000px) rotateY(calc(var(--pointer-x)*2.7deg)) rotateX(calc(var(--pointer-y)*-2deg)); transition:transform .18s ease-out; }
.to-installation__image { display:block; position:absolute; inset:-4%; max-width:none; width:108%; height:108%; object-fit:cover; filter:brightness(var(--image-brightness,1)); transform:translate(calc(var(--pointer-x)*-5px),calc(var(--pointer-y)*-4px)); transition:filter .15s,transform .2s ease-out; }
.to-installation__ray { position:absolute; inset:-35%; pointer-events:none; opacity:var(--light-strength,.2); background:linear-gradient(var(--light-angle,0deg),transparent 35%,#ffedba 48%,#fff8dc 51%,transparent 64%); mix-blend-mode:screen; transform:translateX(calc((var(--pointer-x))*8px)); }
.to-installation__glass { position:absolute; right:6%; top:9%; width:13%; height:79%; border-radius:60px 60px 9px 9px; border:1px solid #fff8; background:linear-gradient(105deg,#ffffff2b,#ffffff05 60%,#fffbef30); backdrop-filter:blur(2px); box-shadow:inset 1px 0 #fffc,12px 10px 35px -22px #6f5b3980; transform:translateX(var(--glass-offset,0px)); pointer-events:none; }
.to-installation__orbit { position:absolute; width:70px; height:70px; right:24px; bottom:22px; border:1px solid #fffb; border-radius:50%; box-shadow:0 0 0 8px #ffffff16,inset 0 0 0 8px #ffffff16; pointer-events:none; }
.to-installation__controls { position:relative; padding:22px 3px 0; }
.to-installation__label { display:flex; gap:25px; align-items:center; justify-content:space-between; color:#796342; }
.to-installation__control-text { flex:none; font:500 10px/1.6 var(--to-sans,sans-serif); letter-spacing:.12em; text-transform:uppercase; }
.to-installation__range { --range-progress:50%; appearance:none; -webkit-appearance:none; width:min(180px,45%); height:44px; margin:0; background:transparent; cursor:ew-resize; touch-action:pan-y; }
.to-installation__range::-webkit-slider-runnable-track { height:2px; border-radius:4px; background:linear-gradient(to right,#b99965 var(--range-progress),#d9ccb4 var(--range-progress)); }
.to-installation__range::-webkit-slider-thumb { appearance:none; -webkit-appearance:none; width:19px; height:19px; margin-top:-8.5px; border:1px solid #b49a70; border-radius:50%; background:#faf6ec; box-shadow:0 2px 8px #9d865733,inset 0 0 0 4px #fffc; }
.to-installation__range::-moz-range-track { height:2px; background:#d9ccb4; }
.to-installation__range::-moz-range-progress { height:2px; background:#b99965; }
.to-installation__range::-moz-range-thumb { width:18px; height:18px; border:1px solid #b49a70; border-radius:50%; background:#faf6ec; }
.to-installation__range:focus-visible { outline:2px solid #937346; outline-offset:3px; border-radius:8px; }
.to-installation__track { display:block; margin-top:5px; height:1px; background:linear-gradient(90deg,#ccb58d66,transparent); }
.to-installation[data-material=network] .to-installation__stage { --stage-radius:14px 120px 14px 14px; border-radius:var(--stage-radius); }
.to-installation[data-material=network]::before { border-radius:14px 140px 14px 14px; }
.to-installation[data-material=team] .to-installation__stage { --stage-radius:180px 180px 10px 10px; border-radius:var(--stage-radius); }
.to-installation[data-material=team]::before { border-radius:200px 200px 10px 10px; }
.to-installation[data-material=contact] .to-installation__stage { --stage-radius:170px 170px 15px 15px; border-radius:var(--stage-radius); }
.to-installation[data-material=contact]::before { border-radius:190px 190px 15px 15px; }
.to-installation[data-material=showroom] .to-installation__glass { left:12%; right:auto; width:17%; }
.to-installation[data-material=team] .to-installation__glass { width:7%; height:65%; top:20%; right:7%; }
.to-installation--compact { max-width:320px; justify-self:end; }
.to-installation--compact .to-installation__stage { aspect-ratio:1.4; --stage-radius:70px 8px 8px; border-radius:var(--stage-radius); }
.to-installation--compact::before { border-radius:90px 8px 8px; }
.to-installation--compact .to-installation__glass,.to-installation--compact .to-installation__orbit { display:none; }
.to-installation--compact .to-installation__controls { padding-top:5px; }
.to-atelier-legal .to-hero-scene-ready > .to-wrap { grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); }
.to-atelier-legal .to-hero-scene-ready h1 { max-width:20ch; font-size:clamp(39px,4.5vw,64px); }
.to-page-texture { display:block; opacity:0; position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:right center; pointer-events:none; z-index:-2; }
.to-page-illustrated { isolation:isolate; position:relative; overflow:hidden; }
.to-page-illustrated > .to-page-texture { display:block; opacity:.5; }
.to-page-illustrated > .to-scene-art { opacity:0; }
.to-scenes-ready .to-page-illustrated::after { background:linear-gradient(100deg,#fcfaf5f5,#fcfaf5dd 52%,#fcfaf59e); }
.to-page-scenes-ready .to-page-illustrated .to-service { background:#fffcf2d9; }
.to-page-scenes-ready .to-person__list li { transition:transform .25s,box-shadow .25s; }
@media(hover:hover) and (pointer:fine) {
 .to-page-scenes-ready .to-person__list li:hover { transform:translateX(5px); box-shadow:0 14px 26px -24px #80643980; }
 .to-page-scenes-ready .to-service:hover { border-color:#baa17b; }
}
@media(min-width:1500px) { .to-atelier .to-hero-scene-ready { padding-block:65px; } .to-installation__stage { max-height:570px; } }
@media(max-width:1100px) and (min-width:861px) {
 .to-atelier .to-hero-scene-ready { padding:40px 22px; }
 .to-atelier .to-hero-scene-ready > .to-wrap { gap:25px; grid-template-columns:1fr 1fr; }
 .to-atelier .to-hero-scene-ready h1 { font-size:46px; }
 .to-atelier .to-hero-scene-ready .to-lead { font-size:13px; line-height:1.85; }
 .to-installation__label { gap:8px; }
 .to-installation__control-text { font-size:8px; }
}
@media(max-width:860px) {
 .to-atelier .to-hero-scene-ready { padding:30px 15px 35px; }
 .to-atelier .to-hero-scene-ready > .to-wrap { display:flex; flex-direction:column; align-items:stretch; gap:0; }
 .to-installation-copy { display:contents; }
 .to-atelier .to-hero-scene-ready .to-eyebrow { order:0; margin:0 0 15px; }
 .to-atelier .to-hero-scene-ready h1 { order:1; max-width:20ch; font-size:clamp(37px,7vw,58px); margin:0 0 26px; }
 .to-hero-scene-ready .to-installation { order:2; margin:0 0 25px; padding:10px 0 0 10px; width:100%; max-width:620px; align-self:center; }
 .to-installation__stage { aspect-ratio:1.6; border-top-left-radius:90px; }
 .to-installation__controls { padding-top:7px; }
 .to-installation::before { inset:0 14px 62px 0; border-top-left-radius:100px; }
 .to-installation__image { object-position:center 53%; }
 .to-atelier .to-hero-scene-ready .to-lead { order:3; margin:0; font-size:14px; line-height:1.9; max-width:none; }
 .to-installation[data-material=team] .to-installation__stage { --stage-radius:100px 100px 10px 10px; border-radius:var(--stage-radius); }
 .to-installation[data-material=contact] .to-installation__stage { --stage-radius:100px 100px 10px 10px; border-radius:var(--stage-radius); }
 .to-installation--compact .to-installation__stage { aspect-ratio:2.4; }
 .to-hero-scene-ready .to-installation--compact { max-width:400px; align-self:flex-start; margin-bottom:0; }
 .to-installation--compact .to-installation__image { object-fit:cover; object-position:center 65%; }
 .to-page-scenes-ready .to-main { gap:25px; }
}
@media(max-width:400px) {
 .to-atelier .to-hero-scene-ready { padding-inline:9px; }
 .to-atelier .to-hero-scene-ready h1 { font-size:37px; }
 .to-installation__stage { aspect-ratio:1.35; }
 .to-installation__control-text { font-size:9px; letter-spacing:.06em; }
 .to-installation__label { gap:10px; }
 .to-installation__orbit { width:46px; height:46px; right:18px; bottom:16px; }
}
@media(prefers-reduced-motion:reduce) {
 .to-installation__stage,.to-installation__image,.to-installation__glass { transform:none!important; transition:none!important; }
 .to-installation__ray { transition:none!important; }
 .to-page-scenes-ready .to-person__list li { transform:none!important; transition:none!important; }
}

/* Requested portrait in the team hero; other installations remain interactive. */
.to-hero-scene-ready .to-installation--portrait { width:100%; max-width:460px; justify-self:center; padding:0; }
.to-installation--portrait::before { display:none; }
.to-installation--portrait[data-material=team] .to-installation__stage { --stage-radius:160px 160px 16px 16px; aspect-ratio:4/5; max-height:none; transform:none; transition:none; }
.to-installation--portrait .to-installation__image { inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 38%; filter:none; transform:none; transition:none; }
@media(max-width:860px) {
 .to-hero-scene-ready .to-installation--portrait { max-width:360px; padding:0; margin-bottom:28px; }
 .to-installation--portrait[data-material=team] .to-installation__stage { --stage-radius:120px 120px 12px 12px; aspect-ratio:4/5; }
}

/* Subtle motion only on the two team pages; no media or copy changes. */
.to-team-motion .to-io { filter:none; transform:translateY(8px); transition:opacity .65s ease,transform .65s cubic-bezier(.2,.65,.3,1); transition-delay:0s; }
.to-team-motion .to-io.is-in { transform:none; }
.to-team-motion .to-hero-scene-ready > .to-wrap { opacity:1; transform:none; }
.to-team-motion .to-hero-scene-ready h1 { animation:to-team-arrive .65s both; }
.to-team-motion .to-installation--portrait { animation:to-team-arrive .7s .12s both; }
@keyframes to-team-arrive { from { opacity:.2; translate:0 8px; } to { opacity:1; translate:0 0; } }
.to-team-motion .to-installation--portrait .to-installation__stage { transition:box-shadow .4s ease; }
.to-team-motion .to-installation--portrait .to-installation__stage::after { content:''; position:absolute; inset:0; border:1px solid #c8a46c66; border-radius:inherit; pointer-events:none; transition:border-color .4s ease; }
.to-team-motion .to-person h2::after { content:''; display:block; width:42px; height:1px; margin-top:19px; background:#bc955e; transform-origin:left; transition:transform .4s ease,opacity .4s ease; opacity:.55; }
.to-team-motion .to-person__list li { position:relative; isolation:isolate; border-color:#d9c5a24d!important; transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease; }
/* The mask exposes only a thin outline; the light never crosses the text. */
@supports (mask-composite:exclude) or (-webkit-mask-composite:xor) {
 .to-team-motion .to-person__list li::after { content:''; position:absolute; inset:-1px; border-radius:inherit; padding:1.5px; pointer-events:none; background:linear-gradient(115deg,transparent 38%,#c6a16c99 46%,#ffe3ae 50%,#bd8d4cbb 54%,transparent 62%) 100% 0 / 320% 100%; -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); -webkit-mask-composite:xor; mask-composite:exclude; opacity:0; }
 .to-team-motion .to-person__list li.is-gold-glint::after { animation:to-team-gold-glint 2.4s ease-in-out both; }
}
@keyframes to-team-gold-glint { 0% { background-position:100% 0; opacity:0; } 18% { opacity:.9; } 80% { opacity:.9; } 100% { background-position:0% 0; opacity:0; } }
.to-team-motion .to-btn { transition:background-color .25s ease,box-shadow .25s ease,transform .2s ease; }
.to-team-motion .to-btn::after { transition:transform .25s ease; }
.to-team-motion .to-btn:focus-visible { box-shadow:0 5px 18px #bf9e6330; }
.to-team-motion .to-btn:focus-visible::after { transform:translateX(3px); }
.to-team-motion .to-btn:active { transform:translateY(1px) scale(.99); }
.to-team-motion .to-person:focus-within h2::after { transform:scaleX(1.55); opacity:1; }
@media (hover:hover) and (pointer:fine) {
 .to-team-motion .to-installation--portrait:hover .to-installation__stage { box-shadow:0 24px 50px -28px #b8956266; }
 .to-team-motion .to-installation--portrait:hover .to-installation__stage::after { border-color:#c49b60bb; }
 .to-team-motion .to-person:hover h2::after { transform:scaleX(1.55); opacity:1; }
 .to-team-motion .to-person__list li:hover { transform:translateY(-3px); border-color:#c7ac7d99!important; box-shadow:0 14px 26px -24px #80643980; }
 .to-team-motion .to-btn:hover { background-color:#efdfbf; box-shadow:0 6px 20px #bf9e6330; transform:none; }
 .to-team-motion .to-btn:hover::after { transform:translateX(3px); }
 .to-team-motion .to-btn:active { transform:translateY(1px) scale(.99); }
}
@media (prefers-reduced-motion:reduce) {
 .to-team-motion .to-io { opacity:1; transform:none; transition:none; }
 .to-team-motion .to-hero-scene-ready h1,.to-team-motion .to-installation--portrait,.to-team-motion .to-person__list li::after { animation:none!important; }
 .to-team-motion .to-person h2::after,.to-team-motion .to-person__list li,.to-team-motion .to-btn,.to-team-motion .to-btn::after,.to-team-motion .to-installation__stage,.to-team-motion .to-installation__stage::after { transition:none!important; transform:none!important; }
}

/* Client's actual display cases, 24 September; native, on-demand media. */
.to-atelier .to-display-gallery { padding:clamp(26px,4vw,52px) clamp(18px,3vw,38px); }
.to-display-gallery h2 { margin:0 0 26px; font:400 clamp(34px,4vw,54px)/1.1 var(--to-serif); color:#3c3529; }
.to-display-gallery__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; max-width:960px; margin-inline:auto; }
.to-display-gallery__photo,.to-display-gallery__film { display:block; min-width:0; aspect-ratio:9/16; max-height:480px; overflow:hidden; border:1px solid #d8c3a180; border-radius:12px 38px 12px 12px; background:#ede5d7; box-shadow:0 16px 28px -25px #83684266; }
.to-display-gallery__photo img,.to-display-gallery__film video { display:block; width:100%; height:100%; object-fit:contain; }
.to-display-gallery__photo { transition:box-shadow .25s ease,border-color .25s ease; }
.to-display-gallery__photo:focus-visible { outline:2px solid #987448; outline-offset:4px; }
@media (hover:hover) { .to-display-gallery__photo:hover { border-color:#b89662; box-shadow:0 18px 32px -23px #83684299; } }
@media (max-width:650px) {
 .to-display-gallery__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .to-display-gallery__photo,.to-display-gallery__film { border-radius:10px 24px 10px 10px; }
 .to-display-gallery__film { grid-column:1/-1; justify-self:center; width:min(100%,260px); max-height:none; }
}
@media (prefers-reduced-motion:reduce) { .to-display-gallery__photo { transition:none; } }

/* Authentic client photograph, 25 September. Only the showroom hero. */
.to-hero-scene-ready .to-installation--showroom-photo { width:100%; max-width:460px; justify-self:center; padding:0; }
.to-installation--showroom-photo::before { inset:-10px 12px 12px -10px; border-radius:140px 16px 16px; }
.to-installation--showroom-photo .to-installation__stage { --stage-radius:130px 12px 12px; aspect-ratio:4/5; max-height:none; transform:none; transition:box-shadow .45s ease; }
.to-installation--showroom-photo .to-installation__image { inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 52%; filter:none; transform:none; transition:transform 1.1s cubic-bezier(.2,.65,.3,1); }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .to-installation--showroom-photo:hover .to-installation__image { transform:scale(1.018); }
 .to-installation--showroom-photo:hover .to-installation__stage { box-shadow:0 26px 50px -30px #846c4770; }
}
@media(max-width:860px) {
 .to-hero-scene-ready .to-installation--showroom-photo { max-width:360px; padding:0; margin-block:8px 28px; }
 .to-installation--showroom-photo .to-installation__stage { --stage-radius:95px 12px 12px; aspect-ratio:4/5; }
 .to-installation--showroom-photo::before { inset:-7px 10px 10px -7px; border-radius:105px 16px 16px; }
}
@media(prefers-reduced-motion:reduce) { .to-installation--showroom-photo .to-installation__stage { transition:none; } }

/* Two selected real views: location and meeting area. */
.to-showroom-visit { padding:clamp(26px,4vw,52px) clamp(18px,3vw,38px); }
.to-showroom-visit__grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(18px,4vw,44px); max-width:960px; margin:auto; }
.to-showroom-visit figure { margin:0; min-width:0; }
.to-showroom-visit figure:nth-child(2) { padding-top:48px; }
.to-showroom-visit a { display:block; aspect-ratio:4/5; overflow:hidden; border-radius:90px 12px 12px; border:1px solid #d8c3a180; }
.to-showroom-visit figure:nth-child(2) a { border-radius:12px 90px 12px 12px; }
.to-showroom-visit img { width:100%; height:100%; display:block; object-fit:cover; object-position:center 40%; transition:transform .8s ease; }
.to-showroom-visit figcaption { padding-top:15px; color:#796342; font:400 25px/1.3 var(--to-serif); }
.to-showroom-visit a:focus-visible { outline:2px solid #987448; outline-offset:5px; }
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) { .to-showroom-visit a:hover img { transform:scale(1.018); } }
@media(max-width:650px) { .to-showroom-visit__grid { grid-template-columns:1fr; max-width:360px; gap:25px; } .to-showroom-visit figure:nth-child(2) { padding-top:0; } }
@media(prefers-reduced-motion:reduce) { .to-showroom-visit img { transition:none; } }

/* Client-supplied portraits, deliberately modest in scale. */
.to-atelier-subpage .to-person--portrait .to-person__grid { grid-template-columns:minmax(210px,.65fr) minmax(0,1.35fr); gap:clamp(28px,4vw,60px); align-items:start; }
.to-atelier-subpage .to-person--portrait .to-person__photo:has(img) { width:100%; max-width:340px; margin:0 auto; border:1px solid #d7c3a180; border-radius:130px 130px 14px 14px; overflow:hidden; aspect-ratio:4/5; }
.to-atelier-subpage .to-person--portrait .to-person__photo img { display:block; width:100%; height:100%; object-fit:cover; object-position:46% 38%; }
.to-atelier-subpage .to-person--portrait .to-person__grid > div:last-child { display:block; min-width:0; }
.to-atelier-subpage .to-person--portrait .to-person__list { margin-top:26px; }
.to-atelier-subpage .to-person--portrait h2 { font-size:clamp(38px,4.5vw,62px); }
.to-films28 { padding:clamp(24px,4vw,50px) clamp(18px,3vw,38px); }
.to-films28__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(18px,3vw,32px); max-width:1040px; margin:auto; }
.to-films28 figure { margin:0; min-width:0; }
.to-films28 video { display:block; width:100%; height:auto; aspect-ratio:9/16; object-fit:contain; border:1px solid #d7c3a180; border-radius:70px 12px 12px; background:#e9e2d7; }
.to-films28 figcaption { padding:14px 2px 0; color:#796342; font:400 24px/1.35 var(--to-serif); }
@media(max-width:860px) {
 .to-atelier-subpage .to-person--portrait .to-person__grid { grid-template-columns:1fr; gap:30px; }
 .to-atelier-subpage .to-person--portrait .to-person__photo:has(img) { max-width:300px; }
}
@media(max-width:650px) { .to-films28__grid { grid-template-columns:1fr; max-width:340px; gap:32px; } }
/* 1 / 3 / 5: champagne daylight, editorial cinema and restrained glass cards. */
.to-scenes-ready .to-champagne-section::after { background:linear-gradient(105deg,#fcfaf533,#fcfaf522 65%,#fcfaf511); }
.to-page-illustrated.to-champagne-section > .to-page-texture { opacity:.92; }
.to-page-scenes-ready .to-material-card { position:relative; isolation:isolate; border:1px solid #d8c5a780!important; border-radius:22px; background:linear-gradient(135deg,#ffffffeb,#fbf7eee0)!important; box-shadow:inset 0 1px 0 #fff,0 10px 26px -23px #71553780; transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease; }
.to-paper-section .to-material-card { background:linear-gradient(115deg,#fffaf4dd,#fffaf4bb),url('./page-art/champagne-glass-small.webp') center / cover!important; }
.to-page-scenes-ready .to-material-card::after { content:''; position:absolute; inset:-1px; border-radius:inherit; padding:1.5px; pointer-events:none; opacity:0; background:linear-gradient(115deg,transparent 38%,#c6a16c99 46%,#ffe3ae 50%,#bd8d4cbb 54%,transparent 62%) 100% 0 / 320% 100%; }
@supports (mask-composite:exclude) or (-webkit-mask-composite:xor) {
 .to-page-scenes-ready .to-material-card::after { -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); -webkit-mask-composite:xor; mask-composite:exclude; }
 .to-page-scenes-ready .to-material-card.is-gold-glint::after { animation:to-team-gold-glint 2.4s ease-in-out both; }
}
.to-page-scenes-ready .to-material-card:focus-within { border-color:#aa874e!important; box-shadow:inset 0 1px 0 #fff,0 12px 28px -22px #71553799; }
.to-films-cinema.to-films28__grid { grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); grid-template-rows:1fr 1fr; gap:28px 44px; max-width:920px; align-items:stretch; }
.to-films-cinema .to-film-card { min-width:0; display:flex; flex-direction:column; }
.to-films-cinema .to-film-card:first-child { grid-row:span 2; }
.to-films-cinema .to-film-trigger { position:relative; display:block; width:100%; min-height:0; height:220px; padding:0; overflow:hidden; border:1px solid #d7c3a180; border-radius:20px; background:#ede5d7; cursor:pointer; box-shadow:inset 0 1px 0 #fff,0 18px 34px -26px #72563570; transition:border-color .3s,box-shadow .3s; }
.to-films-cinema .to-film-card:first-child .to-film-trigger { flex:1; height:auto; min-height:360px; border-radius:110px 20px 20px; }
.to-film-trigger__poster { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .7s cubic-bezier(.2,.65,.3,1); }
.to-film-trigger__play { position:absolute; display:grid; place-items:center; left:50%; top:50%; translate:-50% -50%; width:62px; height:62px; border-radius:50%; border:1px solid #fffa; background:#fff7eae8; box-shadow:0 6px 24px #33271333,inset 0 1px #fff; transition:transform .3s,background .3s; }
.to-film-trigger__play::after { content:''; display:block; width:0; height:0; border-top:9px solid transparent; border-bottom:9px solid transparent; border-left:14px solid #735735; margin-left:4px; }
.to-films-cinema figcaption { padding:16px 3px 0; color:#68563c; font-size:clamp(22px,2.3vw,29px); }
.to-film-trigger:focus-visible { outline:2px solid #92713d; outline-offset:5px; }
.to-films28 video[hidden] { display:none!important; }
html.to-cinema-open { overflow:hidden; }
.to-film-dialog { box-sizing:border-box; width:min(94vw,760px); max-width:none; max-height:95vh; max-height:95dvh; margin:auto; padding:52px 20px 18px; overflow:auto; border:1px solid #e0cfb5; border-radius:26px; background:#f8f3eaf7; color:#43382b; box-shadow:0 24px 100px #30251e66; }
.to-film-dialog::backdrop { background:#282219c9; }
.to-film-dialog__close { position:absolute; top:8px; right:10px; display:grid; place-items:center; width:40px; height:40px; padding:0; border:1px solid #d4c1a4; border-radius:50%; background:#fffaf1; color:#59452b; font:300 28px/1 sans-serif; cursor:pointer; }
.to-film-dialog__close:focus-visible { outline:2px solid #92713d; outline-offset:3px; }
.to-film-dialog__screen video { display:block; width:100%; height:min(70vh,740px); height:min(70dvh,740px); object-fit:contain; background:#171512; border-radius:12px; }
.to-film-dialog__title { margin:16px 0 0; text-align:center; font:400 25px/1.3 var(--to-serif,serif); color:#594b39; }
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .to-page-scenes-ready .to-material-card:hover { transform:translateY(-3px); border-color:#b69a6f!important; box-shadow:inset 0 1px 0 #fff,0 18px 32px -24px #71553788; }
 .to-film-trigger:hover .to-film-trigger__poster { transform:scale(1.025); }
 .to-film-trigger:hover .to-film-trigger__play { transform:scale(1.06); background:#fffaf1; }
 .to-film-trigger:hover { border-color:#b69a6f; box-shadow:0 20px 36px -24px #72563599; }
}
@media(max-width:700px) {
 .to-films-cinema.to-films28__grid { grid-template-columns:minmax(0,1fr); grid-template-rows:none; max-width:400px; gap:30px; }
 .to-films-cinema .to-film-card:first-child { grid-row:auto; }
 .to-films-cinema .to-film-card:first-child .to-film-trigger { flex:none; height:440px; min-height:0; border-radius:80px 18px 18px; }
 .to-films-cinema .to-film-trigger { height:230px; }
 .to-film-dialog { padding:50px 10px 14px; border-radius:20px; }
 .to-film-dialog__title { font-size:22px; }
}
@media(prefers-reduced-motion:reduce) {
 .to-page-scenes-ready .to-material-card,.to-film-trigger,.to-film-trigger__poster,.to-film-trigger__play { transition:none!important; transform:none!important; }
 .to-page-scenes-ready .to-material-card::after { animation:none!important; }
}

.to-page-scenes-ready .to-material-card { backdrop-filter:none; -webkit-backdrop-filter:none; }
.to-page-scenes-ready .to-contact .to-facts:has(.to-material-card) { gap:12px; background:none; border:0; box-shadow:none; backdrop-filter:none; padding:0; }
/* Compact credentials: original headings remain the controls. */
.to-team-motion .to-person-accordion { gap:10px; }
.to-team-motion .to-person-accordion .to-person-topic { display:block; padding:0!important; overflow:hidden; border-radius:16px; }
.to-person-topic__summary { position:relative; padding:18px 58px 18px 22px; list-style:none; cursor:pointer; min-height:60px; box-sizing:border-box; }
.to-person-topic__summary::-webkit-details-marker { display:none; }
.to-team-motion .to-person-topic__summary > strong { display:block; margin:0; font:400 clamp(21px,2.1vw,26px)/1.25 var(--to-serif); color:#685338; }
.to-person-topic__summary::after { content:'+'; position:absolute; right:20px; top:50%; translate:0 -50%; font:300 24px/1 var(--to-sans,sans-serif); color:#987344; }
.to-person-topic__details[open] > summary::after { content:'−'; }
.to-person-topic__details[open] > summary { border-bottom:1px solid #d8c5a745; }
.to-person-topic__summary:focus-visible { outline:2px solid #987344; outline-offset:-4px; border-radius:14px; }
.to-person-topic__content { padding:16px 22px 22px; }
.to-person-topic__details[open] .to-person-topic__content { animation:to-topic-open .22s ease-out; }
@keyframes to-topic-open { from { opacity:.4; transform:translateY(-3px); } to { opacity:1; transform:none; } }
@media(max-width:700px) { .to-person-topic__summary { padding:17px 48px 17px 18px; } .to-person-topic__content { padding:14px 18px 18px; } }
@media(prefers-reduced-motion:reduce) { .to-person-topic__content { animation:none!important; } }
/* Client's new collection photographs. Full garment stays inside every frame. */
.to-noon-gallery { padding:clamp(24px,4vw,50px) clamp(18px,3vw,38px); }
.to-noon-gallery__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(14px,2.5vw,28px); max-width:920px; margin:auto; }
.to-noon-gallery a { display:block; min-width:0; overflow:hidden; border:1px solid #d7c3a180; border-radius:64px 16px 16px; background:#e9e2d7; }
.to-noon-gallery img { display:block; width:100%; height:auto; object-fit:contain; }
.to-noon-gallery a:focus-visible { outline:2px solid #92713d; outline-offset:4px; }
@media(max-width:650px) { .to-noon-gallery__grid { grid-template-columns:1fr; max-width:310px; gap:22px; } }

/* Client ABLUSH materials, 2026-10-01: full frames, click-to-play. */
.to-ablush-gallery { padding: clamp(28px,5vw,64px) 0; scroll-margin-top: 150px; }
.to-ablush-gallery h2 { margin: 0 0 26px; }
.to-ablush-gallery__grid { display: grid; grid-template-columns: minmax(0,1fr) 270px; align-items: center; gap: clamp(20px,4vw,48px); max-width: 920px; margin: auto; }
.to-ablush-gallery__photo, .to-ablush-gallery__film { display: block; overflow: hidden; border: 1px solid rgba(178,137,82,.22); border-radius: 48px 14px 14px; background-color: #f8f5ee; }
.to-ablush-gallery__photo img { display: block; width: 100%; height: auto; max-height: 480px; object-fit: contain; }
.to-ablush-gallery__film video { display: block; width: 100%; height: auto; aspect-ratio: 9/16; object-fit: contain; }
.to-ablush-gallery__photo:focus-visible { outline: 2px solid #987147; outline-offset: 5px; }
@media (max-width: 650px) {
  .to-ablush-gallery__grid { grid-template-columns: minmax(0,1fr); max-width: 430px; }
  .to-ablush-gallery__film { width: min(100%,270px); justify-self: center; }
  .to-ablush-gallery__photo, .to-ablush-gallery__film { border-radius: 32px 12px 12px; }
}

/* Oznaczenie grafik generatywnych (zgloszenie klienta 06.10.2026).
   Dyskretny podpis pod scena; nie zasiania obrazu i nie zmienia ukladu. */
.to-installation__ai {
  margin-top: .55rem;
  font: 400 .68rem/1.35 var(--to-sans, system-ui, sans-serif);
  letter-spacing: .08em;
  text-transform: uppercase;
  color: color-mix(in srgb, currentColor 48%, transparent);
  display: flex;
  align-items: center;
  gap: .45em;
}

.to-installation__ai::before {
  content: "";
  width: 1.05em;
  height: 1.05em;
  flex: none;
  border-radius: 50%;
  border: 1px solid currentColor;
  opacity: .55;
  background:
    linear-gradient(currentColor, currentColor) center/.46em 1px no-repeat,
    linear-gradient(currentColor, currentColor) center/1px .46em no-repeat;
}

.to-installation--compact .to-installation__ai {
  font-size: .62rem;
  margin-top: .4rem;
}

@media (max-width: 860px) {
  .to-installation__ai { font-size: .64rem; }
}

/* Wystawy: ta sama siatka co Gablota, ale przy jednym lub dwóch kafelkach nie zostawiamy pustych kolumn. */
.to-exhibit + .to-exhibit { padding-top:0; }
.to-exhibit .to-display-gallery__grid:has(> :first-child:last-child) { grid-template-columns:minmax(0,300px); justify-content:center; }
.to-exhibit .to-display-gallery__grid:has(> :nth-child(2):last-child) { grid-template-columns:repeat(2,minmax(0,300px)); justify-content:center; }
@media (max-width:650px) {
 .to-exhibit .to-display-gallery__grid:has(> :nth-child(2):last-child) { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
