.case-passport{margin:24px 0;font-size:14px;line-height:1.65;color:#ded3df}
.case-passport dt{margin-top:16px;color:#ef9cca;font-size:11px;letter-spacing:1px;text-transform:uppercase}
.case-passport dd{margin:5px 0 0}
.neon-intro .case-inquiry{margin:12px 0 20px;width:100%;text-align:left}
.archive-category-view[data-selection=featured] .archive-project-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;grid-auto-flow:row;gap:28px;align-content:start}
.archive-category-view[data-selection=featured] .archive-project-card{width:100%!important;height:auto!important;grid-column:auto!important;grid-row:auto!important;background:#110d16;border:1px solid #55424e}
.archive-category-view[data-selection=featured] .archive-project-card[data-project="shoes53045-bumpair-neon"]{grid-column:1/-1!important}
.archive-category-view[data-selection=featured] .case-card-visual{aspect-ratio:auto!important;height:auto!important;display:block}
.archive-category-view[data-selection=featured] .case-card-visual img{position:static;display:block;width:100%;height:auto;max-height:480px;object-fit:contain;filter:none!important;transform:none!important}
.archive-category-view[data-selection=featured] .case-card-visual:after,.archive-category-view[data-selection=featured] .case-card-number{display:none}
.archive-category-view[data-selection=featured] .case-card-copy{position:relative;inset:auto;padding:20px 64px 20px 20px;min-height:88px;background:#110d16}
.archive-category-view[data-selection=featured] .case-card-copy:before{display:none}
.archive-category-view[data-selection=featured] .case-card-copy strong{font-size:18px;line-height:1.3}
.archive-category-view[data-selection=featured] .case-card-copy small{font-size:13px;color:#c7b9c6}
.archive-category-view[data-selection=featured] .gallery-scroll-hint,.archive-category-view[data-selection=featured] .category-reset{display:none}
.archive-displays .archive-screen img{object-fit:contain;background:#0a080e}
@media(min-width:1367px){.neon-intro{padding-top:0}}
@media(max-width:1366px){.archive-category-view[data-selection=featured] .archive-project-cards{height:auto;overflow:visible}
.case-passport{font-size:14px}
.neon-intro .case-inquiry{width:auto}}
@media(max-width:600px){.archive-category-view[data-selection=featured] .archive-project-cards{grid-template-columns:1fr;gap:20px}
.archive-category-view[data-selection=featured] .case-card-copy strong{font-size:16px}}
.case-details summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:#ef9cca;font-size:13px}
.case-details summary:after{content:' +';margin-left:10px}
.case-details[open] summary:after{content:' −'}
.case-details .case-passport{margin-top:0}
@media(max-width:1366px){.archive-room{display:flex;flex-direction:column;padding:104px 16px 90px}
.archive-room .archive-ui{position:relative!important;inset:auto!important;order:0;flex:none;width:100%!important}
.archive-room .archive-ui h1{margin:0 0 12px}
.archive-room .archive-title-art{width:120px;height:auto}
.archive-room .archive-ui nav{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;width:100%;padding-bottom:6px}
.archive-room .archive-ui nav button{flex:none;min-height:44px;width:auto;padding:10px 12px}
.archive-room .archive-category-view{order:1;margin-top:24px!important;flex:none}
.archive-room .archive-stage{order:2;margin-top:24px!important;flex:none}
.archive-room[data-state=archive-filtered] .archive-stage{display:none}
.archive-room[data-state=project-placeholder]{padding:0;overflow:hidden}
.archive-room[data-state=project-placeholder] .archive-ui{display:none}
.neon-intro img{max-width:100px}
.neon-intro .case-inquiry{margin:8px 0 12px}}
@media(min-width:801px) and (max-width:1366px){.neon-intro{grid-column:span 4}
.neon-art.neon-hero{grid-column:span 8}
.neon-art{grid-column:span 6}}
@media(min-width:801px) and (max-width:1366px){.neon-content>.neon-intro{grid-column:span 4!important}
.neon-content>.neon-art.neon-hero{grid-column:span 8!important}
.neon-content>.neon-art:not(.neon-hero){grid-column:span 6!important}}
.archive-category-view[data-selection=featured] .case-card-copy strong,.archive-category-view[data-selection=featured] .case-card-copy small{white-space:normal;overflow:visible;text-overflow:clip;-webkit-line-clamp:unset}
@media(max-width:1366px){.archive-room .archive-ui nav{max-width:none}
.archive-room .archive-ui{max-width:none}
.archive-room .archive-ui nav{scrollbar-width:none}
.archive-room .archive-ui nav::-webkit-scrollbar{display:none}}
.archive-category-view[data-selection=featured] .archive-project-cards{grid-template-rows:none!important;grid-auto-rows:max-content!important;align-items:start}
.archive-category-view[data-selection=featured] .archive-project-card{min-height:0!important;align-self:start}
.archive-category-view[data-selection=featured] .case-card-visual{flex:none}
/* Free gallery: one viewport scroll, original artwork proportions. */
body:has(.archive-room:not([hidden])) #back,body:has(.archive-room:not([hidden])) #global-sound{display:none!important}
.archive-room:not([hidden]){position:fixed!important;inset:0!important;width:100%!important;height:100dvh!important;box-sizing:border-box;overflow:auto!important;display:block!important;padding:130px clamp(20px,5vw,90px) 80px!important;background:radial-gradient(ellipse at 90% 0,#39213926,transparent 55%),#0b0910!important;scrollbar-width:thin;scrollbar-color:#65515f #0b0910}
.archive-room:not([data-state=archive-overview]) .archive-stage{display:none!important}
.archive-room .archive-ui{position:relative!important;inset:auto!important;width:100%!important;max-width:none!important;display:block!important;margin:0 auto 44px;z-index:2}
.archive-ui h1,.archive-press-link,.category-index,.category-reset,.gallery-scroll-hint,.archive-catalog-link{display:none!important}
.archive-room .archive-ui nav{display:flex!important;flex-wrap:wrap!important;gap:8px 20px;max-width:none!important;width:100%!important;overflow:visible!important}
.archive-room .archive-ui nav button{width:auto!important;flex:none;min-height:44px;padding:8px 0!important;border:0!important;background:none!important;font-size:12px!important;border-radius:0!important}
.archive-ui nav button[aria-pressed=true]{box-shadow:inset 0 -1px #ed87c7!important;color:#ed87c7!important}
.archive-ui nav button::before,.category-plus{display:none!important}
.archive-room .archive-category-view{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;margin:0!important;padding:0!important;overflow:visible!important;max-width:1500px}
.archive-room[data-state=archive-filtered]{display:flex!important;flex-direction:column}
.archive-room .archive-ui{order:0!important}.archive-room .archive-category-view{order:1!important}
.archive-category-view header{position:relative!important;display:flex;flex-wrap:wrap;align-items:end;gap:20px; margin-bottom:40px!important}
.archive-category-view header h2{font-size:clamp(27px,3.8vw,58px)!important;line-height:1.08!important;letter-spacing:-1.5px}
.archive-category-view header p{max-width:650px;line-height:1.6!important;font-size:14px!important;color:#b6abb6}
.archive-search{position:static!important;width:250px!important;max-width:100%;margin-left:auto!important;border:0!important;border-bottom:1px solid #645362!important;border-radius:0!important;background:transparent!important;min-height:44px}
.archive-room .archive-project-cards{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:none!important;grid-auto-rows:max-content!important;gap:64px 32px!important;height:auto!important;max-height:none!important;overflow:visible!important;padding:0!important;align-items:start!important}
.archive-room .archive-project-card{display:block!important;width:auto!important;height:auto!important;min-height:0!important;grid-column:auto!important;grid-row:auto!important;background:none!important;border:0!important;border-radius:0!important;overflow:visible!important;box-shadow:none!important;transition:transform .5s cubic-bezier(.22,1,.36,1)!important}
.archive-room .archive-project-card[hidden]{display:none!important}
.archive-room .archive-project-card .case-card-visual{display:block!important;position:relative;aspect-ratio:auto!important;height:auto!important;background:none!important;overflow:visible!important;transform:none!important}
.archive-room .case-card-visual img{position:static!important;display:block!important;width:100%!important;height:auto!important;max-height:620px!important;object-fit:contain!important;filter:none!important;transform:none!important;border-radius:3px;transition:box-shadow .5s}
.archive-room .case-card-visual::after,.archive-room .case-card-number{display:none!important}
.archive-room .archive-project-card .case-card-copy{position:relative!important;inset:auto!important;padding:18px 38px 0 0!important;min-height:0!important;background:none!important}
.archive-room .case-card-copy::before{display:none!important}
.archive-room .case-card-copy strong{font-size:clamp(15px,1.3vw,20px)!important;white-space:normal!important;overflow:visible!important;line-height:1.4!important}
.archive-room .case-card-copy small{font-size:12px!important;white-space:normal!important;color:#b9aeb9!important}
.archive-room .case-card-arrow{border:0!important;right:0!important;bottom:auto!important;top:16px!important;width:28px!important;height:28px!important;background:none!important}
.archive-room .archive-project-card:hover{transform:translateY(-6px)!important}.archive-room .archive-project-card:hover img{box-shadow:0 20px 45px #0005}
.archive-room .archive-project-card:focus-visible{outline:2px solid #ef94cc;outline-offset:8px}
.archive-room[data-state=project-placeholder]{padding:0!important;overflow:hidden!important}.archive-room[data-state=project-placeholder] .archive-ui,.archive-room[data-state=project-placeholder] .archive-category-view{display:none!important}
.archive-room .archive-case-page.neon-viewer{position:absolute!important;inset:0!important;width:100%!important;height:100dvh!important;box-sizing:border-box;padding:155px clamp(20px,5vw,90px) 100px!important;overflow-y:auto!important}
.archive-room .neon-rail{display:none!important}
.archive-room .neon-content{gap:64px 32px!important}
.archive-room .neon-intro{grid-column:span 3!important;padding-top:0!important}
.archive-room .neon-hero{grid-column:span 9!important;margin:0!important}
.archive-room .neon-art:not(.neon-hero){grid-column:span 4!important}
.archive-room .neon-video{grid-column:1/-1!important}
.archive-room .neon-viewer>.archive-project-back{top:108px!important;left:clamp(20px,5vw,90px)!important;min-height:36px;border:0!important;background:none!important;box-shadow:none!important}
.archive-room .neon-intro .case-inquiry{font-size:12px;min-height:44px;background:none;border:0;border-bottom:1px solid #ae6895;border-radius:0;padding:12px 0}
@media(max-width:800px){
 .archive-room:not([hidden]){padding:110px 20px 60px!important}
 .archive-room .archive-ui{margin-bottom:28px}.archive-room .archive-ui nav{gap:4px 16px}
 .archive-category-view header{margin-bottom:28px!important}.archive-search{width:100%!important;margin:0!important}
 .archive-room .archive-project-cards{grid-template-columns:1fr!important;gap:38px!important}
 .archive-room .archive-case-page.neon-viewer{padding:150px 20px 50px!important}
 .archive-room .neon-content{gap:30px!important}.archive-room .neon-content>*{grid-column:1/-1!important}
 .archive-room .neon-intro img{display:none}.archive-room .neon-intro h2{margin-bottom:8px!important}
 .archive-room .neon-intro .case-inquiry{margin:0}.archive-room .neon-intro p{margin:8px 0!important}
}
@media(prefers-reduced-motion:reduce){.archive-room .archive-project-card{transition:none!important}.archive-room .archive-project-card:hover{transform:none!important}}
.archive-room .archive-ui nav{flex-direction:row!important;align-items:center!important}.archive-room .archive-ui nav button{flex:0 0 auto!important;max-width:max-content!important;margin:0!important}
.archive-category-view[data-selection=featured] .archive-project-card[data-project="shoes53045-bumpair-neon"]{max-width:1100px;justify-self:center;width:100%!important}
.archive-category-view[data-selection=featured] .case-card-visual img{max-height:none!important}
.archive-room .archive-ui nav{column-gap:24px!important;row-gap:6px!important}.archive-room .archive-ui nav button{padding:10px 4px!important}
.archive-room .archive-ui{margin-bottom:30px!important}
.archive-room .case-card-visual::before{content:'ОТКРЫТЬ ↗';position:absolute;right:18px;bottom:18px;z-index:3;padding:11px 15px;border-radius:30px;background:#151019ed;color:#fff;font-size:11px;letter-spacing:1px;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .4s;pointer-events:none}
.archive-project-card:hover .case-card-visual::before,.archive-project-card:focus-visible .case-card-visual::before{opacity:1;transform:none}
@media(hover:none){.archive-room .case-card-visual::before{display:none}}
.gallery-category-select{display:none}
@media(max-width:800px){.archive-room .archive-ui nav{display:none!important}.gallery-category-select{display:block;width:100%;min-height:48px;background:#100c15;color:#eedbe7;border:0;border-bottom:1px solid #6d4a60;border-radius:0;padding:12px;font:inherit;font-size:12px}.archive-room .archive-ui{margin-bottom:28px!important}.archive-category-view header h2{letter-spacing:-.7px}}
/* Composition refinement: shared edges and compact first screen. */
.archive-room:not([hidden]){padding-top:112px!important}
.archive-room .archive-ui,.archive-room .archive-category-view{max-width:1120px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important}
.archive-room .archive-ui{margin-bottom:22px!important;display:flex!important;gap:20px;align-items:center}
.archive-room .archive-ui nav{flex:1;gap:6px 18px!important}
.archive-room-entry{flex:none;background:none;border:0;color:#bda9ba;font:inherit;font-size:11px;min-height:44px;cursor:pointer}
.archive-category-view header{margin-bottom:26px!important}.archive-category-view header h2{font-size:clamp(28px,3vw,42px)!important;letter-spacing:-1px!important}.archive-category-view header p{margin:10px 0 0!important}.archive-search[hidden]{display:none!important}
.archive-category-view[data-selection=featured] .archive-project-card[data-project="shoes53045-bumpair-neon"]{max-width:850px!important;justify-self:start!important}
.archive-room .archive-project-card .case-card-copy{height:auto!important;padding-top:14px!important}
.archive-room .case-card-copy strong{font-size:20px!important;margin-bottom:5px!important}.archive-room .case-card-copy small{font-size:14px!important;line-height:1.5!important;color:#c7bac6!important}
.archive-room .archive-project-cards{gap:44px 32px!important}
.gallery-ending{border-top:1px solid #493644;margin-top:64px;padding:36px 0 0;display:flex;flex-wrap:wrap;gap:18px;align-items:center}.gallery-ending h3{font-size:clamp(23px,3vw,34px);margin:0 auto 0 0;max-width:510px;line-height:1.25}.gallery-ending a{color:#cdb9c9;font-size:13px;padding:14px 0}
@media(max-width:800px){.archive-room .archive-ui{display:block!important;margin-bottom:20px!important}.archive-room-entry{display:block;margin-left:auto;min-height:32px;font-size:10px}.archive-room:not([hidden]){padding-top:98px!important}.archive-category-view header p{font-size:13px!important}.archive-category-view header{margin-bottom:22px!important}.archive-room .case-card-copy strong{font-size:16px!important}.archive-room .case-card-copy small{font-size:13px!important}.archive-room .archive-project-cards{gap:34px!important}.gallery-ending{margin-top:40px;padding-top:24px}.gallery-ending h3{width:100%}}
body:has(.archive-room:not([hidden])) .dd-cursor{display:none!important}body.custom-cursor:has(.archive-room:not([hidden])),body.custom-cursor .archive-room *{cursor:auto!important}body.custom-cursor .archive-room a,body.custom-cursor .archive-room button,body.custom-cursor .archive-room a *{cursor:pointer!important}
.archive-category-view header,.archive-category-view header>div,.archive-category-view .category-heading{padding:0!important;margin-top:0!important}.archive-category-view .category-heading h2{margin:0!important}.archive-category-view header p{margin:10px 0 0!important}.archive-room .archive-ui{margin-bottom:20px!important}.archive-room .archive-category-view{padding-top:0!important}.archive-room .archive-category-view header{min-height:0!important}

.archive-category-view header{height:auto!important;align-items:flex-start!important}.archive-category-view header>div{height:auto!important}.archive-room .archive-ui nav button{box-shadow:none!important}.archive-room .archive-ui nav button[aria-pressed=true]{box-shadow:inset 0 -1px #ed87c7!important}
/* Editorial catalog and case composition. */
.archive-category-view[data-selection=featured] .category-total{display:none}
.archive-room .archive-catalog-link{display:inline-flex!important;position:static;min-height:44px;align-items:center;color:#efa2d2;font-size:14px;margin-left:auto}
.archive-category-view[data-selection=featured] .archive-project-card[data-project="shoes53045-bumpair-neon"]{display:grid!important;grid-template-columns:minmax(0,1.8fr) minmax(220px,1fr);gap:40px;max-width:none!important;grid-column:1/-1!important;align-items:center}
.archive-category-view[data-selection=featured] .archive-project-card[data-project="shoes53045-bumpair-neon"] .case-card-copy{padding:0!important}
.archive-room .case-card-action{display:block;margin-top:22px;font-size:13px;color:#f1abd7}.archive-room .case-card-year{display:block;margin-top:8px;color:#938493!important}
.archive-room .case-card-arrow{display:none}.archive-room .archive-project-card:hover{transform:none!important}.archive-room .case-card-copy{transition:translate .4s}.archive-room .archive-project-card:hover .case-card-copy{translate:0 -3px}
.archive-room .neon-content{max-width:1440px;margin:auto;gap:40px 24px!important}
.archive-room .neon-intro{grid-column:1/-1!important;display:grid;grid-template-columns:1fr 1fr;gap:8px 40px;position:relative}
.archive-room .neon-intro h2{grid-column:1;max-width:90%;font-size:clamp(22px,2.8vw,38px)!important;letter-spacing:-.5px;margin:0!important}
.archive-room .neon-intro>p{grid-column:1;margin:0!important;font-size:14px!important;line-height:1.6}
.archive-room .neon-intro .case-visible-role{grid-column:2;grid-row:1/4;max-width:550px;color:#c8bdcc!important;font-size:14px!important}
.archive-room .neon-intro .case-brand-mark{display:block;position:absolute;right:0;bottom:0;width:65px;max-width:65px;height:auto}
.archive-room .neon-intro .case-details{grid-column:2;grid-row:4}.archive-room .neon-intro .case-inquiry{grid-column:1;justify-self:start;margin:0;width:auto}.archive-room .neon-intro .case-press-link{grid-column:1}
.archive-room .neon-hero{grid-column:1/-1!important}.archive-room .neon-hero img{max-height:none}
@media(min-width:1100px) and (max-width:1366px){body:has(.archive-room:not([hidden])) .canvas .header{height:84px;flex-wrap:nowrap}body:has(.archive-room:not([hidden])) .canvas .header nav{display:flex;position:static;order:0;width:auto;margin:auto;gap:24px;overflow:visible}body:has(.archive-room:not([hidden])) .canvas .header nav button{font-size:12px;min-height:44px}body:has(.archive-room:not([hidden])) .canvas .header .mobile-menu{display:none}body:has(.archive-room:not([hidden])) .canvas .header .contact{margin:0}}
@media(max-width:800px){.archive-category-view[data-selection=featured] .archive-project-card[data-project="shoes53045-bumpair-neon"]{display:block!important}.archive-category-view[data-selection=featured] .archive-project-card[data-project="shoes53045-bumpair-neon"] .case-card-copy{padding-top:14px!important}.archive-room .neon-intro{display:flex;flex-direction:column;gap:12px}.archive-room .neon-intro .case-brand-mark{display:none}.archive-room .case-card-action{margin-top:12px}.archive-room .neon-intro .case-visible-role{font-size:13px!important}.archive-room .neon-content{gap:30px!important}}
@media(prefers-reduced-motion:reduce){.archive-room .case-card-copy{transition:none;translate:none!important}}
.archive-room .neon-content>.neon-art.neon-hero{grid-column:1/-1!important}
.archive-room .neon-content>.neon-art:not(.neon-hero){grid-column:span 4!important}
.archive-room .neon-intro{gap:8px 40px;grid-template-rows:auto auto auto}.archive-room .neon-intro .case-details{grid-row:2/4;align-self:start}.archive-room .neon-intro .case-visible-role{grid-row:1}.archive-room .neon-intro .case-brand-mark{bottom:8px}
@media(max-width:800px){.archive-room .neon-content>.neon-art:not(.neon-hero){grid-column:1/-1!important}}
.archive-room .case-card-visual::before{display:none!important}
.archive-room .neon-content>.neon-art.neon-hero img{width:auto;max-width:100%;max-height:85vh;margin-inline:auto}.archive-room .neon-intro:has(.case-visible-role){align-items:start}
/* Light sits behind the artwork; original pixels remain untouched. */
.archive-room .case-card-visual{isolation:isolate}
.archive-room .case-card-visual::after{content:'';display:block!important;position:absolute;inset:12% 5%;z-index:-1;background:radial-gradient(ellipse,var(--accent,#be73a4),transparent 70%);filter:blur(24px);opacity:0;transition:opacity .55s;pointer-events:none}
@media(hover:hover) and (pointer:fine){.archive-room .archive-project-card:hover .case-card-visual::after{opacity:.22}}
@media(prefers-reduced-motion:reduce){.archive-room .case-card-visual::after{transition:none}.tv-spill{transition:none}}
.case-campaign-presentation{grid-column:1/-1;margin-top:24px;border-top:1px solid #ffffff20;padding-top:36px}.case-campaign-presentation h3{font-size:clamp(22px,3vw,38px);letter-spacing:-.5px;margin:0 0 12px}.case-campaign-presentation>p{color:#c6b6c8;max-width:650px;line-height:1.7;margin-bottom:28px}.case-campaign-presentation figure{margin:0}.case-campaign-presentation figcaption{font-size:12px;color:#b5a4b7;line-height:1.5;margin-top:14px}
.case-character-study a{display:block;cursor:zoom-in;border-radius:4px;overflow:hidden}.case-character-study a:focus-visible{outline:2px solid #ef94cc;outline-offset:6px}.case-character-study .neon-art:hover img{transform:none;box-shadow:none}.case-character-study{padding-top:40px}.case-character-study h3{letter-spacing:.01em}
.archive-room .neon-content.neon-content-longform>.neon-art.neon-hero img{width:100%;height:auto;max-height:none;object-fit:contain}

.archive-room .neon-content-longform>.neon-art{grid-column:1/-1!important}.archive-room .neon-content-longform>.neon-art img{width:100%;height:auto;max-height:none}.archive-room .neon-content-longform>.neon-art figcaption{margin-top:14px;color:#aaa4af;font-size:12px;line-height:1.6}


.alphabet-specimen{grid-column:1/-1;padding:24px 0;border-top:1px solid #514952}.alphabet-specimen summary{cursor:pointer;font-size:18px;padding:12px 0}.alphabet-glyphs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0}.alphabet-glyphs figure{margin:0;background:#f5f4f2;color:#292621;padding:10px}.alphabet-glyph{position:relative;aspect-ratio:1;overflow:hidden}.alphabet-glyph img{position:absolute;width:400%!important;max-width:none!important;height:auto!important}.alphabet-glyphs figcaption{text-align:center;padding:8px;font-size:12px}.alphabet-specimen>a{color:inherit}@media(max-width:600px){.alphabet-glyphs{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}


/* One viewport-based header for home and every portfolio section. */
#site-header{position:fixed!important;inset:0 0 auto!important;width:100%!important;height:84px!important;box-sizing:border-box;padding:12px clamp(20px,3vw,48px)!important;display:flex;align-items:center;gap:24px;transform:none!important;transform-origin:initial!important;z-index:100!important;isolation:isolate;background:linear-gradient(#0b0910e8,#0b0910b8)!important;opacity:1;pointer-events:auto}
#site-header::before{display:none!important}
#site-header .logo{width:120px;height:58px;flex:0 0 120px;margin:0}
#site-header .logo img{object-fit:contain}
#site-header nav{display:flex;position:static;align-items:center;gap:clamp(18px,2.3vw,40px);width:auto;margin:0 auto;overflow:visible;white-space:nowrap}
#site-header nav button{font-size:13px;min-height:44px;padding:8px 0;box-sizing:border-box;border-bottom:2px solid transparent}
#site-header nav button.active{border-bottom-color:#ff78ce}
#site-header .contact{margin:0;min-height:44px;white-space:nowrap;font-size:12px;flex-shrink:0}
#site-header .mobile-menu{display:none}
#site-header.scene-hidden{opacity:0!important;visibility:hidden;pointer-events:none}
@media(max-width:1000px){
 #site-header{gap:12px;padding:12px 18px!important}
 #site-header .logo{width:86px;height:40px;flex-basis:86px}
 #site-header .contact{margin-left:auto;font-size:10px;padding:8px;gap:5px}
 #site-header .mobile-menu{display:block;flex:none;padding:8px 10px;min-height:44px;border:1px solid #ffffff30;border-radius:9px;font-size:12px}
 #site-header nav{display:none}
 #site-header.mobile-nav-open nav{display:grid;position:absolute;top:100%;left:0;width:100%;box-sizing:border-box;grid-template-columns:1fr 1fr;gap:4px 16px;margin:0;padding:12px 18px 20px;background:#0b0910f5}
 #site-header nav button{font-size:14px;min-height:48px}
}
@media(max-width:380px){#site-header{padding:12px!important;gap:8px}#site-header .logo{width:70px;flex-basis:70px}#site-header .contact{font-size:9px;padding:6px}#site-header .mobile-menu{padding:8px;font-size:11px}}
/* Bring the logo into the central desktop composition without moving navigation. */
@media(min-width:1001px){#site-header .logo{position:relative;left:max(0px,calc((100vw - 1376px)/2))}}

/* About: a cinematic introduction, followed by real work on a shared grid. */
.ideas-room{overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#895170 #0b0910;scroll-behavior:smooth}
.ideas-room::before{display:none}
.about-hero{position:relative;height:max(760px,100dvh);overflow:hidden;isolation:isolate}
.about-hero::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#090710d9, #090710a8 23%,transparent 52%),linear-gradient(0deg,#0b0910,transparent 17%)}
.about-hero .ideas-welcome{left:max(38px,calc((100vw - 1280px)/2));top:clamp(150px,23vh,230px);bottom:auto;width:360px;max-height:none;overflow:visible;padding:0;z-index:3}
.about-hero .ideas-welcome h1{font-size:clamp(36px,3vw,52px);line-height:1.08;margin:22px 0;letter-spacing:-1.5px}
.about-hero .ideas-welcome p{max-width:340px;font-size:15px;line-height:1.7;color:#eee4ed}
.about-hero .ideas-welcome .ideas-role{color:#f5bddf;margin-bottom:14px}
.about-hero-actions{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:26px}
.about-hero-actions button{min-height:44px;padding:10px 0;border-bottom:1px solid #b76d98;font-size:13px;color:#ffc3e7}
.about-hero .ideas-chapters{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:22px;max-width:330px}
.about-hero .ideas-chapters button{min-height:44px;font-size:12px;padding:8px 0}
.about-hero .ideas-hint{opacity:1;bottom:108px;right:5%;display:block;color:#efd4e5;background:#100b16c9;padding:8px 12px}
.about-hero .ideas-cta{bottom:50px;right:5%;min-height:44px}
.ideas-room .ideas-dossier{position:fixed;z-index:5;top:110px;left:max(24px,calc((100vw - 1280px)/2));width:min(580px,calc(100vw - 48px));box-sizing:border-box;max-height:calc(100dvh - 134px)}
.about-content{position:relative;z-index:2;background:#0b0910;padding:90px max(38px,calc((100vw - 1280px)/2)) 80px}
.about-content section+section{margin-top:110px}
.about-content small{font-size:10px;letter-spacing:2px;color:#eda6d0}
.about-content h2{font-size:clamp(30px,3.5vw,52px);font-weight:500;line-height:1.1;letter-spacing:-1.3px;margin:18px 0 36px}
.about-content h3{font-weight:500;line-height:1.3}
.about-content p{font-size:15px;line-height:1.75;color:#c9bcc9}
.about-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.about-project-grid a{display:block;color:inherit;text-decoration:none}
.about-project-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;margin-bottom:22px}
.about-project-grid small{font-size:9px;letter-spacing:1px;line-height:1.6}
.about-project-grid h3{font-size:21px;margin:12px 0}
.about-project-grid a:hover h3{color:#ffa4dc}
.about-process{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:center}
.about-process figure{margin:0}.about-process img{width:100%;height:auto;display:block}.about-process figcaption{font-size:12px;line-height:1.6;color:#b5a5b5;margin-top:14px}
.about-process a{color:#ffb8df;display:inline-block;min-height:44px;padding:12px 0}.about-process figure a{padding:0;display:block}
.about-content .about-note{font-size:12px;color:#a99aab}
.about-workflow ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;list-style:none;padding:0;margin:0}
.about-workflow li{border-top:1px solid #ffffff28;padding-top:22px}.about-workflow li span{color:#e99dcc;font-size:13px}.about-workflow h3{font-size:19px}
.about-invite{margin-top:60px;display:flex;justify-content:space-between;gap:24px;align-items:center;border-top:1px solid #ffffff28;padding-top:32px}.about-invite h3{font-size:26px}.about-invite button{min-height:48px;border:1px solid #cf6daa;border-radius:28px;padding:12px 24px;color:#ffb8df}
.ideas-room a:focus-visible,.ideas-room button:focus-visible{outline:2px solid #ffb8df;outline-offset:5px}
@media(max-width:1000px){.about-hero{height:920px}.about-hero .ideas-welcome{left:24px;top:130px;width:min(360px,calc(100% - 48px))}.about-hero::after{background:linear-gradient(180deg,#090710db, #090710c9 42%,transparent 75%,#0b0910)}.about-hero .ideas-scene{top:280px;height:941px;transform:scale(.68);left:calc(50% - 870px)}.about-hero .ideas-hint{bottom:88px;right:24px}.about-hero .ideas-cta{bottom:32px;right:24px}.about-content{padding:60px 24px}.about-project-grid{gap:20px}.about-process{grid-template-columns:1fr;gap:28px}.about-workflow ol{grid-template-columns:1fr 1fr}.about-content section+section{margin-top:72px}}
@media(max-width:600px){.about-hero .ideas-welcome h1{font-size:38px}.about-hero .ideas-welcome p{font-size:14px}.about-hero .ideas-chapters{margin-top:12px}.about-project-grid{grid-template-columns:1fr;gap:42px}.about-project-grid img{aspect-ratio:4/3;object-fit:contain;background:#100d14}.about-workflow ol{grid-template-columns:1fr}.about-invite{align-items:flex-start;flex-direction:column}.about-content h2{font-size:34px}.ideas-room .ideas-dossier{left:12px;top:100px;width:calc(100vw - 24px);max-height:calc(100dvh - 112px)}}
@media(prefers-reduced-motion:reduce){.ideas-room{scroll-behavior:auto}}
.about-hero .ideas-scene::before{background-image:url('assets/environment/ideas/ideas-room-olya.png')}
.about-hero .ideas-zone{background-image:none}
.about-content{scroll-margin-top:84px}
@media(max-width:600px){.about-hero{height:1080px}.about-hero .ideas-scene{top:610px;left:calc(50% - 410px);transform:scale(.36)}.about-hero::after{background:linear-gradient(180deg,#090710 0%,#090710 50%,transparent 62%,transparent 88%,#0b0910 100%)}.about-hero .ideas-hint{bottom:88px;font-size:11px}.about-hero .ideas-cta{bottom:28px}}
/* Open, borderless stories from the ideas board. */
.ideas-room .ideas-dossier{inset:84px 0 0;width:100%;max-height:none;padding:40px max(28px,calc((100vw - 1280px)/2)) 64px;border:0;border-radius:0;box-shadow:none;background:#0d0a11;overflow:auto}
.ideas-dossier .ideas-close{position:sticky;display:block;float:none;top:0;margin:0 0 30px auto;width:auto;height:auto;padding:10px 0;background:#0d0a11;border:0;border-radius:0;font-size:13px;color:#efb2d7}
.ideas-story-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,96px);align-items:start}
.ideas-story-copy h2{font-size:clamp(30px,3.4vw,48px);margin:22px 0;line-height:1.12}
.ideas-story-copy>p{color:#d1c2d0;line-height:1.8;font-size:15px}
.ideas-story-copy>small{font-size:10px;letter-spacing:1.8px;color:#ef88c9}
.ideas-dossier .ideas-art{margin:0}
.ideas-dossier .ideas-art img{width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:initial;border-radius:0;background:none}
.ideas-dossier .ideas-film{align-items:flex-start;gap:16px;margin:24px 0 0;flex-wrap:wrap}
.ideas-dossier .ideas-film button{width:80px;max-width:25%;padding:0 0 8px;background:none;border:0;border-radius:0;opacity:.55}
.ideas-dossier .ideas-film button[aria-pressed=true]{opacity:1;box-shadow:0 2px 0 #e981bf}
.ideas-dossier .ideas-film img{width:100%;height:auto;object-fit:initial}
.ideas-dossier .ideas-actions{border:0;margin-top:28px;padding:0}
.ideas-dossier .ideas-story-footer{border:0;margin-top:48px;padding:0}
.about-project-grid img{height:auto;aspect-ratio:auto;object-fit:initial;background:none}
@media(max-width:700px){.ideas-room .ideas-dossier{inset:84px 0 0;width:100%;max-height:none;padding:20px 24px 44px}.ideas-story-layout{grid-template-columns:1fr;gap:32px}.ideas-story-copy h2{font-size:32px}.ideas-dossier .ideas-close{margin-bottom:24px}.about-project-grid img{aspect-ratio:auto;background:none}}
/* Soft lighting behind the introduction, with clear primary actions. */
.about-hero .ideas-welcome{isolation:isolate}
.about-hero .ideas-welcome::before{content:'';position:absolute;z-index:-1;inset:-64px -72px -48px -90px;pointer-events:none;background:radial-gradient(ellipse at 40% 46%,rgba(10,7,16,.97) 0%,rgba(10,7,16,.91) 40%,rgba(10,7,16,.6) 62%,transparent 78%);filter:blur(18px)}
.about-hero .ideas-welcome h1{color:#fff;text-shadow:0 2px 24px #08050c80}
.about-hero .ideas-welcome p{color:#f4edf3}
.about-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}
.about-hero-actions button{min-height:52px;padding:12px 10px;border:0;border-radius:8px;font-size:12px;font-weight:600;line-height:1.4;cursor:pointer;transition:background .2s,box-shadow .2s,transform .2s}
.about-hero-actions .about-projects{color:#fff;background:linear-gradient(120deg,#ad337c,#852c68);box-shadow:0 6px 28px #c332872d,inset 0 1px 0 #ffffff25}
.about-hero-actions .about-contact{color:#ffe3f4;background:#392334;box-shadow:inset 0 0 0 1px #c182aa66}
@media(hover:hover){.about-hero-actions .about-projects:hover{background:linear-gradient(120deg,#c44291,#9a3578);box-shadow:0 8px 32px #d740974d;transform:translateY(-2px)}.about-hero-actions .about-contact:hover{background:#503046;box-shadow:inset 0 0 0 1px #e1a0c7;transform:translateY(-2px)}}
.about-hero-actions button:active{transform:translateY(1px)}
@media(max-width:600px){.about-hero .ideas-welcome::before{inset:-30px -24px;background:radial-gradient(ellipse,#090710 40%,transparent 75%);filter:none}.about-hero-actions{gap:10px}.about-hero-actions button{padding:12px 8px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.about-hero-actions button{transition:none;transform:none!important}}
/* Scroll reveal for every portfolio category; only artwork moves. */
.archive-room .archive-project-card .case-card-visual{transform:var(--case-reveal,none)!important;transform-origin:50% 30%;backface-visibility:hidden;transition:transform 180ms ease-out!important}
@media(prefers-reduced-motion:reduce){.archive-room .archive-project-card .case-card-visual{transform:none!important;transition:none!important}}
/* Shared header fades into each scene instead of ending in a hard strip. */
#site-header{background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:visible!important}
#site-header::before{content:'';display:block!important;position:absolute;inset:0 0 auto;height:150px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(8,6,13,.97) 0%,rgba(8,6,13,.93) 34%,rgba(8,6,13,.77) 54%,rgba(8,6,13,.38) 76%,rgba(8,6,13,0) 100%);border:0;box-shadow:none}
#site-header nav button{color:#eee7ef;text-shadow:0 1px 9px #000b}
#site-header nav button.active{color:#ff8bd5}
#site-header .logo img{transform:scale(1.17);transform-origin:center;filter:drop-shadow(0 2px 7px #0007)}
@media(max-width:1000px){#site-header::before{height:128px}#site-header .logo img{transform:scale(1.1)}}
@media(max-width:380px){#site-header .logo img{transform:scale(1.06)}}

/* Real project prints on the home coffee table. */
.home-projects{position:absolute;left:47%;bottom:18px;translate:-50% 0;width:620px;z-index:7;isolation:isolate}
.home-projects::before{content:"";position:absolute;inset:-38px -36px -24px;z-index:-1;background:radial-gradient(ellipse at 50% 80%,#100914ed,transparent 75%);pointer-events:none}
.home-projects-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.home-projects-heading h2{font-size:17px;line-height:1.3;margin:0;text-shadow:0 2px 12px #000}
.home-projects-heading>a{font-size:12px;color:#ff9bd9;white-space:nowrap}
.home-projects-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;perspective:1200px}
.home-project{--angle:-5deg;--tilt:5deg;display:block;position:relative;color:#fff;text-decoration:none;transform:rotate(var(--angle)) rotateY(var(--tilt));transform-origin:50% 85%;transition:transform .45s cubic-bezier(.2,.75,.2,1),filter .45s;filter:drop-shadow(0 12px 16px #0008);animation:project-drift 7s ease-in-out infinite}
.home-project:nth-child(2){--angle:2deg;--tilt:0deg;animation-delay:-2s}.home-project:nth-child(3){--angle:5deg;--tilt:-5deg;animation-delay:-4s}
.home-project img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;border-radius:7px;margin-bottom:10px}
.home-project strong,.home-project span,.home-project em{display:block;padding:0 5px;text-shadow:0 2px 8px #000}
.home-project strong{font-size:15px}.home-project span{font-size:12px;color:#d3c6d2;margin-top:5px}.home-project em{font-size:12px;font-style:normal;color:#ff9bd9;margin-top:8px}
.home-project:focus-visible{outline:2px solid #ff9bd9;outline-offset:7px;z-index:3;animation:none;transform:translateY(-22px) scale(1.1)}
@media(hover:hover) and (pointer:fine){.home-project:hover{z-index:3;animation:none;transform:translateY(-24px) rotate(0) scale(1.12);filter:drop-shadow(0 20px 22px #000b)}.home-project:hover strong{color:#ffb1e2}}
@keyframes project-drift{0%,100%{translate:0 0}50%{translate:0 -5px}}
.canvas.in-scene .home-projects{visibility:hidden;animation:none}
@media(max-width:1366px){.home-projects{width:min(590px,calc(100% - 240px));left:43%;bottom:18px}.home-projects-heading h2{font-size:15px}.home-projects-list{gap:14px}.home-project strong{font-size:13px}.home-project span,.home-project em{font-size:11px}}
@media(max-width:600px){.home-projects{left:0;translate:none;bottom:108px;width:100%;padding:0 18px}.home-projects-heading{margin-bottom:8px;gap:10px}.home-projects-heading h2{font-size:12px;max-width:220px}.home-projects-heading>a{font-size:11px}.home-projects-list{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:14px 8px 12px;scrollbar-width:none}.home-project{flex:0 0 58%;scroll-snap-align:center;animation:none}.home-project img{margin-bottom:6px}.home-project strong{font-size:12px}.home-project span,.home-project em{font-size:10px}.home-project:focus-visible{transform:translateY(-4px) scale(1.02)} }
@media(prefers-reduced-motion:reduce){.home-project{animation:none;transition:none}.home-project:hover,.home-project:focus-visible{transform:none}}
/* Contact: open editorial composition, without nested panels. */
.contact-panel{inset:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0;padding:clamp(76px,10vh,120px) max(24px,calc((100vw - 1160px)/2));border:0;border-radius:0;box-shadow:none;background:radial-gradient(ellipse at 8% 30%,#6d194039,transparent 52%),radial-gradient(ellipse at 95% 90%,#49217530,transparent 50%),#0c0911;backdrop-filter:none;scroll-padding:36px}
.contact-panel::backdrop{background:#0c0911ed}
.contact-content{display:grid;grid-template-columns:1.15fr 1fr;column-gap:clamp(40px,7vw,110px);align-items:start;max-width:1160px;margin:auto}
.contact-heading{grid-column:1;grid-row:1}
.contact-panel .contact-kicker{color:#ff90cd;font-size:11px;letter-spacing:2.4px;margin-bottom:28px}
.contact-panel h2{font-size:clamp(40px,4.8vw,68px);line-height:1.06;letter-spacing:-2.4px;font-weight:600;margin-bottom:24px}
.contact-panel .contact-lead{font-size:15px;line-height:1.8;max-width:460px;color:#c4b7c9;margin-bottom:32px}
.contact-content>form{grid-column:2;grid-row:1/4;padding-top:0}
.contact-panel .contact-field{margin:0 0 24px}
.contact-panel label{font-size:13px;color:#e9dfe9;margin-bottom:8px}
.contact-panel input,.contact-panel textarea{border:0;border-bottom:1px solid #786274;border-radius:0;background:transparent;padding:12px 0;font-size:16px;box-shadow:none}
.contact-panel input:focus,.contact-panel textarea:focus{border-color:#ff91d4;box-shadow:0 2px 0 #ff91d4}
.contact-panel [aria-invalid=true]{border-color:#ff91a8}
.contact-panel textarea{min-height:120px;max-height:240px}
.contact-panel .contact-types{border:0;background:none;gap:14px}
.contact-panel .contact-types button{border:0;border-radius:0;background:none;box-shadow:none;padding:8px 0;color:#aa98af;min-height:44px}
.contact-panel .contact-types button[aria-pressed=true]{color:#ff9bd6;background:none;border-bottom:2px solid #ff9bd6}
.contact-panel .contact-submit{width:100%;justify-content:space-between;border:0;border-radius:0;background:#cc418f;color:white;padding:18px 22px;min-height:58px;font-size:12px;letter-spacing:.8px;transition:background .2s}
.contact-panel .contact-submit:hover{background:#e552a4}.contact-panel .contact-submit span{font-size:26px}
.contact-panel .contact-direct{grid-column:1;grid-row:2;border:0;padding:12px 0 0;margin:0;gap:12px;font-size:12px;color:#b6a5bc}
.contact-panel .contact-direct a{font-size:clamp(20px,2.1vw,30px);color:#ff94d2;letter-spacing:-.6px;overflow-wrap:anywhere}
.contact-panel .contact-close{position:fixed;right:28px;top:20px;width:48px;height:48px;border:0;border-radius:0;background:none;font-size:36px;color:#ff9bd6}
.contact-panel .contact-mail-note{font-size:11px;line-height:1.6;color:#b5a3bd}
.contact-panel .contact-status{grid-column:1/-1;font-size:15px}
.contact-panel :focus-visible{outline:2px solid #ff9bd6;outline-offset:5px}
@media(max-width:700px){.contact-panel{padding:82px 24px 40px;height:100dvh;max-height:100dvh}.contact-content{display:flex;flex-direction:column;gap:20px}.contact-panel h2{font-size:42px;letter-spacing:-1.6px}.contact-panel .contact-lead{font-size:14px;margin-bottom:0}.contact-panel .contact-kicker{margin-bottom:20px}.contact-content>form{width:100%;order:2}.contact-panel .contact-direct{order:1;padding:0 0 10px}.contact-panel .contact-status{order:3}.contact-panel .contact-direct a{font-size:24px}.contact-panel .contact-close{top:14px;right:14px}.contact-panel .contact-field{margin-bottom:22px}}
/* Phone and tablet home: readable projects without room controls. */
@media(max-width:1024px){
 body .canvas:not(.in-scene){overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}
 body .canvas:not(.in-scene) .hotspots,
 body .canvas:not(.in-scene) .global-sound,
 body .canvas:not(.in-scene) #vibes,
 body .canvas:not(.in-scene) #restore-vibes,
 body .canvas:not(.in-scene) .chats,
 body .canvas:not(.in-scene) .pet-egg,
 body .canvas:not(.in-scene) .social-phone-trigger,
 body .canvas:not(.in-scene) .intro .explore,
 body .canvas:not(.in-scene) .intro .explore-hint,
 body .canvas:not(.in-scene) .tv{display:none!important}
 body .canvas:not(.in-scene) #world{pointer-events:none;max-height:760px}
 body .canvas:not(.in-scene) .intro{display:block;top:110px;left:24px;right:24px;z-index:3}
 body .canvas:not(.in-scene) .intro p{display:block;max-width:320px;font-size:15px;line-height:1.6;text-shadow:0 2px 10px #000}
 body .canvas:not(.in-scene) .intro .selected-work{pointer-events:auto;min-height:48px}
 body .canvas:not(.in-scene) .home-projects{position:relative;inset:auto;left:auto;bottom:auto;translate:none;width:100%;margin:650px 0 0;padding:36px 24px 42px;background:linear-gradient(180deg,transparent,#0b0810 70px);z-index:7}
 .home-projects::before{display:none}
 .home-projects-list{display:grid;grid-template-columns:1fr;gap:30px;overflow:visible;padding:0;perspective:none;scroll-snap-type:none}
 .home-project{transform:none;translate:none;animation:none;filter:none}
 .home-project img{border-radius:5px;margin-bottom:12px}
 .home-project strong{font-size:17px}.home-project span{font-size:13px;line-height:1.5}.home-project em{font-size:13px;margin-top:10px;min-height:32px;padding-top:6px}
 .home-project:focus-visible{transform:none}
}
/* Static matte grain stays behind content and never intercepts interaction. */
:root{--studio-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='linear' slope='.075'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}
.archive-room:not([hidden]){background-image:var(--studio-grain),radial-gradient(ellipse at 0% 24%,#57445112,transparent 55%),radial-gradient(ellipse at 95% 72%,#41485818,transparent 58%)!important;background-color:#101116!important;background-size:180px 180px,100% 100%,100% 100%!important;background-repeat:repeat,no-repeat,no-repeat!important}
.contact-panel{background-image:var(--studio-grain),radial-gradient(ellipse at 8% 30%,#9b285346,transparent 55%),radial-gradient(ellipse at 95% 85%,#6539913b,transparent 58%);background-color:#0d0a12;background-size:180px 180px,100% 100%,100% 100%;background-repeat:repeat,no-repeat,no-repeat}

/* Tablet keeps the simplified flow with a wider, readable project grid. */
@media(min-width:701px) and (max-width:1024px){
 body .canvas:not(.in-scene) .home-projects{padding:40px 36px 56px;margin-top:760px}
 .home-projects-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}
 .home-project:last-child{grid-column:1/-1;max-width:560px;width:100%;justify-self:center}
 body .canvas:not(.in-scene) .intro{left:36px;right:36px}
 .contact-panel{padding:96px 36px 44px}.contact-content{column-gap:32px}.contact-panel h2{font-size:42px;letter-spacing:-1.5px}
}
@media(max-width:1024px) and (orientation:landscape){
 body .canvas:not(.in-scene) .home-projects{margin-top:max(440px,100dvh)}
}

/* The journal shares the textured gallery surface. */
/* Shared close control: the visible mark and the hit area have separate sizes. */
button.ui-close.ui-close{--close-size:64px;--close-mark:48px;display:inline-flex;align-items:center;justify-content:center;flex:none;width:var(--close-size);height:var(--close-size);min-width:var(--close-size);min-height:var(--close-size);padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#ffaddd;line-height:1;z-index:5;transition:color .18s ease}
button.ui-close.ui-close:hover{color:#fff0f9}
button.ui-close.ui-close:focus-visible{outline:2px solid #ffaddd;outline-offset:3px;border-radius:6px}
button.ui-close .close-mark{position:relative;display:block;flex:none;width:var(--close-mark);height:var(--close-mark);margin:0;color:inherit;pointer-events:none;filter:drop-shadow(0 1px 3px #080610)}
.close-mark::before,.close-mark::after{content:'';position:absolute;top:calc(50% - 1px);left:0;width:100%;height:2px;border-radius:2px;background:currentColor;transform:rotate(45deg)}
.close-mark::after{transform:rotate(-45deg)}
button.ui-close .close-shortcut{display:none}
.contact-panel .contact-close.ui-close{top:max(16px,env(safe-area-inset-top));right:max(24px,env(safe-area-inset-right))}
.ideas-dossier .ideas-close.ui-close{margin:0 0 20px auto}
.social-phone-close.ui-close{top:max(20px,env(safe-area-inset-top));right:max(24px,env(safe-area-inset-right))}
.mobile-room-sheet h2{margin-right:68px}
.pet-close.ui-close{margin-left:16px}
.canvas[data-mode=sofa] .scene-controls #back.ui-close{left:auto;right:24px;top:24px;padding:0;border:0;border-radius:0;background:transparent}
body .canvas[data-mode=sofa] .scene-controls #back.ui-close .close-mark{display:block}
button.close-player.ui-close{--close-size:44px;--close-mark:34px;top:2px;right:2px}
.vibes .player-title{max-width:calc(100% - 139px)}
.vibes .player-title small{max-width:100%}
@media(max-width:700px){button.ui-close.ui-close{--close-size:56px;--close-mark:40px}.contact-panel .contact-close.ui-close,.social-phone-close.ui-close{top:max(10px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right))}.canvas[data-mode=sofa] .back.ui-close{top:16px;right:16px;left:auto}button.close-player.ui-close{--close-size:44px;--close-mark:34px}}
.blog-room{background-image:var(--studio-grain),radial-gradient(ellipse at 0% 24%,#57445112,transparent 55%),radial-gradient(ellipse at 95% 72%,#41485818,transparent 58%);background-color:#101116;background-size:180px 180px,100% 100%,100% 100%;background-repeat:repeat,no-repeat,no-repeat}

/* Large, thin navigation arrows stay alongside the films, in reserved gutters. */
.studio-carousel{position:relative;padding:0 72px}
.studio-gallery.is-arrow-scrolling{scroll-snap-type:none;scroll-behavior:auto}
.studio-carousel .studio-arrows{position:absolute;inset:0;pointer-events:none}
.studio-carousel .studio-arrows button{position:absolute;top:50%;translate:0 -50%;display:grid;place-items:center;width:64px;height:64px;min-width:64px;min-height:64px;padding:8px;border:0;border-radius:0;background:transparent;color:#ffaddd;pointer-events:auto;transition:color .2s,opacity .2s}
.studio-carousel .studio-arrows button:first-child{left:0}
.studio-carousel .studio-arrows button:last-child{right:0}
.studio-carousel .studio-arrows svg{display:block;width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 5px #080610)}
.studio-carousel .studio-arrows button:hover:not(:disabled){color:#fff0f9}
.studio-carousel .studio-arrows button:disabled{opacity:.4}
.studio-carousel .studio-arrows button:focus-visible{outline:2px solid #ffaddd;outline-offset:2px}
.studio-contact{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:15px 25px;border:1px solid #ff9bd5;border-radius:12px;background:linear-gradient(115deg,#bf368d,#922966);box-shadow:0 6px 26px #cd328635;color:#fff;font-size:13px;font-weight:600;transition:background .2s,box-shadow .2s,transform .2s}
.studio-contact:hover{background:linear-gradient(115deg,#d647a0,#aa347d);box-shadow:0 8px 30px #e3419955;transform:translateY(-2px)}
.studio-contact:focus-visible{outline:2px solid #ffd5ed;outline-offset:4px}
@media(max-width:600px){.studio-carousel{padding:0 48px}.studio-carousel .studio-arrows button{width:48px;min-width:48px;height:56px;min-height:56px;padding:4px}.studio-carousel .studio-arrows svg{width:40px;height:40px}.studio-carousel .studio-gallery{padding:8px 0 14px}.studio-carousel .studio-film{width:100%;min-width:0}.studio-contact{min-height:52px;padding:14px 22px}.studio-invite{gap:16px}}
@media(prefers-reduced-motion:reduce){.studio-contact{transition:none}.studio-contact:hover{transform:none}}
