.lab-header{justify-content:space-between}.lab-header .header-contact{margin-left:auto}
.lab-intro{padding-top:4.3rem}.lab-intro .section-number{margin-bottom:1.1rem}.lab-intro h1{font-size:clamp(2.5rem,4.5vw,4.8rem);line-height:1.08;margin-bottom:1rem}.lab-intro>p:last-of-type{max-width:47rem;color:#465559;line-height:1.75;font-size:1rem;margin-bottom:1.7rem}
.variant-picker{display:flex;flex-wrap:wrap;gap:.55rem}.variant-picker button{appearance:none;border:1px solid #a9b2ad;background:transparent;color:var(--ink);padding:.75rem 1rem;font:600 .85rem Poppins,Arial,sans-serif;cursor:pointer;min-height:3rem}.variant-picker button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.variant-picker button span{font-size:.7rem;opacity:.65;margin-right:.6rem}.variant-picker button:focus-visible,.film-play:focus-visible,.film-replay:focus-visible{outline:3px solid #b18a00;outline-offset:4px}
.lab-hero{padding-top:3.6rem;padding-bottom:2rem}.lab-hero .hero-copy h2{font-size:clamp(3.7rem,6.15vw,7.2rem);letter-spacing:-.068em;line-height:1.02;font-weight:600;max-width:16ch;margin-bottom:2.15rem}.lab-hero .hero-copy{align-self:center}
.film-panel{height:clamp(30rem,43vw,37rem);position:relative;overflow:hidden;align-self:stretch;background:var(--deep);box-shadow:0 18px 40px rgba(23,42,43,.14)}.film-panel.studio{background:#eee9dc}.film-panel video{display:block;width:100%;height:100%;object-fit:cover}.film-panel .film-caption{position:absolute;left:8%;right:8%;top:11%;font-size:clamp(1.5rem,2.2vw,2.6rem);font-weight:600;line-height:1.14;letter-spacing:-.045em;max-width:13ch;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.65);pointer-events:none}.film-panel.studio .film-caption{color:var(--ink);text-shadow:0 1px 9px rgba(245,244,239,.9)}.film-panel .film-caption.long{max-width:12ch}.film-panel .film-caption.last{top:auto;bottom:12%}.film-panel.studio .film-caption.last{background:rgba(245,244,239,.78);box-shadow:0 0 1.2rem 1rem rgba(245,244,239,.78)}
.film-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border:0;background:var(--yellow);color:var(--ink);padding:.9rem 1.2rem;font:600 .9rem Poppins,Arial,sans-serif;cursor:pointer;white-space:nowrap;min-height:3.2rem}.film-play span{margin-left:.5rem}
.film-panel.bridge.light-phase .film-caption{color:var(--ink);text-shadow:0 1px 9px rgba(245,244,239,.9)}.film-panel.bridge.light-phase .film-caption.last{background:rgba(245,244,239,.78);box-shadow:0 0 1.2rem 1rem rgba(245,244,239,.78)}
.contact-card h2{font-size:clamp(2.5rem,3.5vw,4.1rem);letter-spacing:-.07em;line-height:1.06;font-weight:600;margin:0 0 1.25rem}
.contact-card{position:absolute;inset:0;background:#eee8db;color:var(--ink);padding:clamp(1rem,2vw,1.8rem)}.contact-card-inner{height:100%;border:1px solid #cbc4b6;padding:clamp(1.3rem,2.5vw,2.2rem);display:flex;flex-direction:column}.contact-kicker{font-size:.66rem;letter-spacing:.19em;text-transform:uppercase;font-weight:600;margin:0 0 auto}.contact-card h3{font-size:clamp(2.5rem,3.5vw,4.1rem);letter-spacing:-.07em;line-height:1.06;font-weight:600;margin:0 0 1.25rem}.contact-roles{font-weight:600;font-size:clamp(.78rem,1vw,.93rem);line-height:1.65;margin-bottom:.35rem}.contact-roles span{color:#a5a7a0;padding:0 .16rem}.contact-places{color:#566263;font-size:clamp(.69rem,.88vw,.82rem);line-height:1.65;margin-bottom:1.2rem}.contact-places span{color:#9a8b47;padding:0 .1rem}.contact-link{background:var(--ink);color:white;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;min-height:3.25rem;font-size:.82rem;font-weight:600;margin-top:auto}.contact-link:hover{background:#314245}.contact-link span{color:var(--yellow);font-size:1.25rem}.film-replay{appearance:none;border:0;background:transparent;color:#556467;text-decoration:underline;text-underline-offset:3px;padding:.8rem 0 0;text-align:left;cursor:pointer;font:500 .72rem Poppins,Arial,sans-serif}.film-replay span{margin-left:.2rem}.lab-note{padding-top:1rem;padding-bottom:4rem}.lab-note p{border-top:1px solid var(--line);padding-top:1.2rem;font-size:.86rem;line-height:1.7;color:#566263;max-width:55rem}.lab-note strong{color:var(--ink)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[hidden]{display:none!important}
@media(max-width:1000px){.lab-hero .hero-copy h2{font-size:clamp(3.4rem,6vw,5.7rem)}.film-panel{height:32rem}.film-panel .film-caption{font-size:clamp(1.55rem,2.7vw,2.2rem)}.contact-card h3{font-size:3rem}.contact-roles{font-size:.78rem}}
@media(max-width:1000px){.contact-card h2{font-size:3rem}}
@media(max-width:760px){.lab-intro{padding-top:3rem}.lab-hero{padding-top:2.5rem}.lab-hero .hero-copy h2{font-size:clamp(3.2rem,9vw,5.4rem)}.film-panel{width:min(100%,30rem);height:clamp(29rem,115vw,37rem)}.film-panel .film-caption{font-size:clamp(1.8rem,6vw,2.6rem)}.contact-card h3{font-size:clamp(3rem,9vw,4.2rem)}.contact-roles{font-size:clamp(.8rem,2.8vw,1rem)}.contact-places{font-size:clamp(.72rem,2.6vw,.88rem)}}
@media(max-width:760px){.contact-card h2{font-size:clamp(3rem,9vw,4.2rem)}}
@media(max-width:520px){.lab-header .brand-name{display:inline}.lab-intro h1{font-size:2.9rem}.lab-hero .hero-copy h2{font-size:clamp(2.7rem,12vw,4.4rem)}.film-panel{height:125vw;max-height:33rem;min-height:27rem}.film-panel .film-caption{font-size:clamp(1.75rem,7vw,2.25rem)}.contact-card{padding:.85rem}.contact-card-inner{padding:1.2rem}.contact-card h3{font-size:clamp(2.75rem,11vw,3.55rem)}.contact-roles{font-size:.75rem}.contact-places{font-size:.72rem}}
@media(max-width:520px){.contact-card h2{font-size:clamp(2.75rem,11vw,3.55rem)}}
