/* One shared grid: 12 columns on desktop, 4 on compact screens. */
:root {
  --page-margin:clamp(24px,5.4vw,108px);
  --grid-gap:clamp(16px,1.8vw,32px);
  --space-small:24px;
  --space-medium:48px;
  --space-large:96px;
  --section-space:clamp(72px,9vw,160px);
  --type-section:clamp(52px,7.6vw,140px);
  --image-radius:6px;
}
.section,.hero,.interlude,.sound-threshold,.sound-lab,.architecture-return,.site-footer,.full-menu { padding-inline:var(--page-margin); }
.section,.sound-threshold,.sound-lab,.architecture-return { padding-block:var(--section-space); }
.site-header { padding-inline:var(--page-margin); }
.site-header::before { left:calc(var(--page-margin) - 16px); }
.hero-topline { left:var(--page-margin);right:var(--page-margin); }
.listen-stage,.noise-stage { padding-inline:var(--page-margin); }
.interlude-copy,.journey-heading,.formats-header,.type-search,.lab-hosts,.studio-notes,.studio-seat,.architecture-return,.contact,.stories .story-grid { display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap); }
.interlude-copy > :first-child,.journey-heading > :first-child,.formats-header > :first-child { display:none; }
.interlude-copy > :last-child,.journey-heading h2,.formats-header > :last-child { grid-column:5/-1; }
.interlude-title,.journey-heading h2,.formats-header h2,.stories-head h2,.sound-lab h2 { font-size:var(--type-section);line-height:.95;letter-spacing:-.075em; }
.journey-heading { margin-bottom:var(--space-large); }
.formats-header { padding-bottom:var(--space-medium); }
.type-search { overflow:clip; }
.type-search figure { grid-column:1/7;grid-row:1;width:100%; }
.type-search > div { grid-column:5/-1;grid-row:1;align-self:center; }
.type-search > div > p { margin:var(--space-medium) 0 0 calc((100% + var(--grid-gap)) / 4);max-width:none;font-family:var(--sans);font-size:clamp(20px,2vw,34px);font-weight:400;letter-spacing:-.035em;line-height:1.25; }
.type-search #threshold-title { margin-left:0; }
.type-search #threshold-title .search-word:nth-child(2) { margin-left:calc((100vw - 2 * var(--page-margin) + var(--grid-gap)) / 12); }
.sound-lab-heading { margin:0 0 var(--space-medium); }
.sound-lab-heading h2 { margin:0; }
.sound-lab .lab-hosts { grid-template-columns:repeat(12,minmax(0,1fr));padding:var(--space-large) 0 var(--space-small); }
.lab-hosts > h3 { grid-column:1/7; }
.lab-hosts > div { grid-column:8/-1; }
.studio-notes { padding:var(--space-medium) 0 var(--space-large); }
.studio-notes .studio-life { grid-column:1/8; }
.studio-notes .studio-detail { grid-column:9/-1;margin-top:var(--space-large); }
.studio-seat { margin:0;padding-top:var(--space-large); }
.studio-seat > div { grid-column:1/7; }
.studio-seat > figure { grid-column:9/-1; }
.stories .story-grid { grid-template-columns:1.05fr .9fr 1fr; }
.stories .story-grid > .story-card { grid-column:auto;aspect-ratio:auto; }
.stories .story-card { height:clamp(380px,38vw,650px); }
.stories .story-card:nth-child(2) { height:clamp(420px,42vw,730px); }
.stories-head h2 { font-size:clamp(52px,7.5vw,112px);line-height:.9;letter-spacing:-.075em; }
.stories .story-card:nth-child(2) { margin-top:var(--space-large); }
.stories .story-card:nth-child(3) { margin-top:var(--space-medium); }
.stories-head { margin-bottom:var(--space-medium);gap:var(--grid-gap); }
.architecture-return > figure { grid-column:1/7; }
.architecture-return > .architecture-copy { grid-column:8/-1; }
.architecture-return figure { width:100%; }
.contact-copy { grid-column:1/8; }
.contact-form { grid-column:9/-1; }
.format-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.journey-step { grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--grid-gap); }
.journey-step h3 { grid-column:1/7; }

/* The photo and the moving type settle onto the same column axes. */
.noise-cut { height:250svh; }
.noise-stage { display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:1fr auto;gap:var(--grid-gap);align-items:center;padding-block:clamp(96px,12svh,144px) var(--space-medium); }
.noise-stage h2 { position:relative;z-index:2;grid-column:1/10;grid-row:1;margin:0;align-self:center;pointer-events:none; }
.noise-prefix { font-size:clamp(40px,6.4vw,120px); }
.noise-music { font-size:clamp(72px,11.6vw,212px); }
.noise-stage p { position:relative;z-index:2;grid-column:1/8;grid-row:2;margin:0; }
.noise-picture { position:relative;grid-column:9/-1;grid-row:1;margin:0;aspect-ratio:3/4;align-self:center;overflow:hidden; }
.noise-picture img { display:block;width:100%;height:100%;object-fit:cover;transform:none; }
.noise-magnifier { position:fixed;z-index:120;width:clamp(180px,22vw,280px);aspect-ratio:1;border-radius:50%;border:2px solid var(--cream,#f2eddf);box-shadow:0 12px 40px #0004,0 0 0 1px #10100e40;background-color:#eee8d5;background-repeat:no-repeat;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .14s ease; }
.noise-magnifier.is-active { opacity:1;visibility:visible; }
@media(hover:hover) and (pointer:fine) { .noise-picture { cursor:crosshair; } }
@media(prefers-reduced-motion:reduce) { .noise-magnifier { transition:none; } }
.noise-music { position:relative; }
.noise-music i { transform:translateY(var(--fall-y,-120vh)) rotate(var(--fall-r,0deg));transform-origin:50% 90%;will-change:transform; }
.noise-music i:last-child { visibility:hidden; }
.noise-dot { position:absolute;top:0;left:0;z-index:4;width:clamp(12px,1.8vw,28px);aspect-ratio:1;border-radius:0;background:var(--tomato);border:0;box-shadow:none;pointer-events:none;will-change:transform; }
@media(max-width:780px) {
  :root { --page-margin:24px;--grid-gap:16px;--space-large:64px;--space-medium:32px;--section-space:72px;--type-section:clamp(42px,12vw,80px); }
  .interlude-copy,.journey-heading,.formats-header,.type-search,.lab-hosts,.studio-notes,.studio-seat,.architecture-return,.contact,.stories .story-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .sound-lab .lab-hosts { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .interlude-copy > :last-child,.journey-heading h2,.formats-header > :last-child,.lab-hosts > h3,.lab-hosts > div,.architecture-return > figure,.architecture-return > .architecture-copy,.contact-copy,.contact-form { grid-column:1/-1; }
  .type-search figure { grid-column:1/4;grid-row:auto; }
  .type-search > div { grid-column:1/-1;grid-row:auto; }
  .type-search > div > p { margin:var(--space-medium) 0 0;font-size:clamp(21px,5.6vw,28px); }
  .type-search #threshold-title { font-size:17vw; }
  .type-search #threshold-title .search-word:nth-child(2) { margin-left:calc((100vw - 2 * var(--page-margin) + var(--grid-gap)) / 4); }
  .studio-notes .studio-life { grid-column:1/-1; }
  .studio-notes .studio-detail { grid-column:2/-1;margin-top:var(--space-small);width:100%; }
  .studio-seat > div { grid-column:1/-1; }
  .studio-seat > figure { grid-column:2/-1;width:100%; }
  .stories .story-grid > .story-card { grid-column:1/-1;width:100%;margin-top:0; }
  .stories .story-grid > .story-card:nth-child(2) { grid-column:2/-1; }
  .contact { gap:var(--space-medium); }
  .format-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .journey-step { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .journey-step h3 { grid-column:1/3;max-width:none; }
  .noise-cut { height:220svh; }
  .noise-stage { grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto auto auto;align-content:center;gap:var(--space-small);padding-top:112px;padding-bottom:40px; }
  .noise-stage h2 { grid-column:1/-1;grid-row:1; }
  .noise-prefix { font-size:9vw; }
  .noise-music { font-size:16.2vw; }
  .noise-picture { grid-column:2/-1;grid-row:2;max-height:43svh;max-width:100%;justify-self:end; }
  .noise-stage p { grid-column:1/-1;grid-row:3;font-size:16px; }
}
@media(prefers-reduced-motion:reduce) {
  .noise-cut { height:auto; }
  .noise-stage { position:relative;height:auto;min-height:100svh; }
  .noise-picture img { transform:none; }
}

/* A small shared radius and a barely perceptible image drift. */
main figure,main img:not(.studio-sequence-image),.stories .story-card,.journey-film { border-radius:var(--image-radius); }
main figure { overflow:hidden; }
.sound-lab .studio-sequence-frame { border-radius:var(--image-radius); }
.image-motion-window { position:relative;overflow:hidden;aspect-ratio:3/4; }
.image-motion-plane { position:absolute;inset:-2%;transform:translate3d(0,var(--image-shift,0px),0);will-change:transform; }
.image-motion-plane > img { width:100%;height:100%;object-fit:cover; }
.stories .story-card .image-motion-plane { z-index:0; }
.stories .story-card .image-motion-plane img { transform:none!important; }
.stories .story-card:nth-child(3) .image-motion-plane img { transform:scale(1.16)!important; }
.brand-lockup.on-light-surface .original-logo,.brand-lockup.on-light-surface:hover .original-logo,.menu-open .brand-lockup .original-logo { filter:brightness(0); }
.original-logo { transition:filter .25s ease,transform 1.15s var(--ease); }
.process { background:var(--ink);color:var(--cream);padding-top:0; }
.process-list .journey-step { min-height:clamp(145px,15vw,190px); }
main [data-aos] { transition:opacity .85s var(--ease),transform .85s var(--ease); }
main figure[data-aos] { transform:translateY(24px); }
main figure[data-aos].is-visible { transform:translateY(0); }
main figure[data-aos] img { transform:none!important; }
@media(prefers-reduced-motion:reduce) { main [data-aos],main [data-aos] > * { opacity:1!important;transform:none!important;transition:none!important; } }
.sound-lab .image-motion-plane > img { width:100%;height:100%;object-fit:cover; }
.studio-notes .studio-detail { margin-top:var(--space-large); }
.studio-seat > figure,.noise-picture { margin-top:0; }
@media(max-width:780px) {
  .noise-picture,.studio-seat > figure { margin-top:0; }
  .studio-notes .studio-detail { margin-top:var(--space-small); }
}
@media(prefers-reduced-motion:reduce) { .image-motion-plane { transform:none;will-change:auto; } }
.architecture-pair { align-items:start; }
.architecture-pair > .architecture-primary { grid-column:1/7;grid-row:1/3; }
.architecture-pair > .architecture-copy { grid-column:8/-1;grid-row:1;align-self:center; }
.architecture-pair > .architecture-secondary { grid-column:9/-1;grid-row:2;margin-top:var(--space-medium); }
.architecture-secondary .image-motion-plane > img { width:100%;height:100%;object-fit:cover; }
.host-accordion { --host-row-height:160px; }
.host-accordion .journey-step { grid-template-rows:var(--host-row-height) auto;row-gap:0;padding:0;min-height:var(--host-row-height); }
.host-accordion .journey-step h3 { grid-row:1;align-self:center; }
.host-accordion .journey-film { left:50%;right:0;top:0;bottom:auto;height:var(--host-row-height); }
.host-accordion .journey-toggle::after { inset:0 0 auto;height:var(--host-row-height); }
.host-toggle-symbol { position:absolute;left:calc(50% - 48px);top:calc(var(--host-row-height) / 2 - 18px);font:300 36px/1 var(--sans);color:var(--cream);transition:transform .5s var(--ease); }
.host-accordion .is-open .host-toggle-symbol { transform:rotate(45deg);color:var(--orange); }
.host-panel { grid-column:7/-1;grid-row:2;display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .65s var(--ease),opacity .5s ease,visibility .65s; }
.host-panel-inner { min-height:0;overflow:hidden; }
.host-panel-content { padding:var(--space-medium) 0; }
.host-panel-content img { display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover; }
.host-panel-content h4 { font-size:clamp(24px,2.5vw,40px);font-weight:500;letter-spacing:-.045em;line-height:1.1;margin:var(--space-small) 0 16px; }
.host-panel-content p { max-width:29em;margin:0;font-size:clamp(18px,1.6vw,25px);line-height:1.4;color:rgba(242,237,223,.85); }
.host-accordion .is-open .host-panel { grid-template-rows:1fr;opacity:1;visibility:visible; }
@media(max-width:780px) {
  .architecture-pair > .architecture-primary { grid-column:1/4;grid-row:1; }
  .architecture-pair > .architecture-copy { grid-column:1/-1;grid-row:2; }
  .architecture-pair > .architecture-secondary { grid-column:2/-1;grid-row:3;margin-top:var(--space-small); }
  .host-accordion { --host-row-height:128px; }
  .host-panel { grid-column:3/-1; }
  .host-panel-content { padding:var(--space-small) 0; }
  .host-panel-content h4 { font-size:22px; }
  .host-panel-content p { font-size:16px;line-height:1.4; }
  .host-toggle-symbol { left:calc(50% - 32px);top:calc(var(--host-row-height) / 2 - 14px);font-size:28px; }
}
@media(prefers-reduced-motion:reduce) { .host-panel,.host-toggle-symbol { transition:none; } }

/* Forest below a single smoked-glass surface, opening only on the right. */
.host-accordion { border:0;display:grid;gap:var(--space-small); }
.host-accordion .journey-step { border:0;isolation:isolate; }
.host-accordion .journey-film { inset:0;width:100%;height:100%;z-index:0;border-radius:0; }
.host-accordion .journey-film video { opacity:1;object-position:50% 50%; }
.host-accordion .journey-film::after { display:none; }
.host-accordion .journey-step::before { content:'';position:absolute;inset:0;z-index:1;background:rgba(17,22,18,.54);backdrop-filter:blur(7px) saturate(.65);-webkit-backdrop-filter:blur(7px) saturate(.65);pointer-events:none; }
.host-accordion .journey-step h3 { z-index:2;padding-left:var(--space-small); }
.host-accordion .host-toggle-symbol { left:auto;right:var(--space-small); }
.host-accordion .host-panel { position:relative;z-index:2;margin-left:calc(var(--grid-gap) / -2); }
.host-accordion .host-panel-content { min-height:480px;padding:32px 32px 256px; }
.host-accordion .host-panel-content h4 { margin-top:0; }
.host-portrait { --portrait-size:80px;position:absolute;z-index:3;pointer-events:none;width:var(--portrait-size);height:var(--portrait-size);left:calc(var(--space-small) + clamp(140px,15vw,225px));top:calc(var(--host-row-height) / 2 - var(--portrait-size) / 2);object-fit:cover;border:1px solid rgba(242,237,223,.4);transition:left .65s var(--ease),top .65s var(--ease),width .65s var(--ease),height .65s var(--ease); }
.host-accordion .is-open .host-portrait { --portrait-size:clamp(160px,15vw,220px);left:calc(100% - var(--portrait-size) - 24px);top:calc(100% - var(--portrait-size) - 24px); }
@media(max-width:780px) {
  .host-accordion { --host-row-height:112px; }
  .host-portrait { --portrait-size:56px;left:132px; }
  .host-accordion .journey-step h3 { padding-left:16px;font-size:32px; }
  .host-accordion .host-toggle-symbol { right:16px; }
  .host-accordion .host-panel-content { padding:20px 16px 160px;min-height:440px; }
  .host-accordion .host-panel-content h4 { font-size:20px; }
  .host-accordion .host-panel-content p { font-size:15px; }
  .host-accordion .is-open .host-portrait { --portrait-size:112px;left:calc(100% - var(--portrait-size) - 16px);top:calc(100% - var(--portrait-size) - 20px); }
}
@media(prefers-reduced-motion:reduce) { .host-portrait { transition:none; } }
