@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Instrument+Serif:ital@0;1&display=swap');
:root{--ink:#10203d;--blue:#183b69;--sky:#dce8f2;--cream:#f5efe4;--paper:#fffdfa;--red:#e74b35;--amber:#e6a548;--text:#16213a;--muted:#6d7685;--line:rgba(16,32,61,.16);--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,textarea,select{font:inherit}.page{display:none}.page.active{display:block}
.site-header{position:fixed;z-index:100;top:0;left:0;right:0;height:82px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;color:#fff;transition:.25s}.site-header.scrolled{background:rgba(16,32,61,.94);backdrop-filter:blur(14px);height:70px}.wordmark{display:flex;align-items:center;gap:12px;font-size:.76rem;font-weight:600;letter-spacing:.16em}.mark{display:grid;place-items:center;width:32px;height:32px;background:var(--red);color:#fff;border-radius:50%;font:italic 1.15rem var(--serif)}.desktop-nav{display:flex;gap:34px}.desktop-nav a{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;opacity:.72}.desktop-nav a:hover,.desktop-nav a.active{opacity:1;color:#ffd6c8}.menu-toggle{display:none;background:none;border:0;width:44px;height:44px}.menu-toggle span{display:block;width:24px;height:1px;background:#fff;margin:7px}.mobile-nav{display:none}
.hero{position:relative;min-height:780px;background-size:cover;background-position:center;display:flex;align-items:flex-end;color:#fff}.home-hero{background-image:url('assets/vsp-home-hero.png')}.sub-hero{min-height:650px}.services-hero{background-image:url('assets/vsp-services-hero.png')}.about-hero{background-image:url('assets/vsp-about-hero.png')}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,20,40,.72) 0%,rgba(9,20,40,.22) 54%,rgba(9,20,40,.08)),linear-gradient(0deg,rgba(9,20,40,.4),transparent 55%)}.hero-copy{position:relative;z-index:1;padding:0 7vw 8vw;max-width:950px}.kicker,.section-label{margin:0 0 22px;text-transform:uppercase;letter-spacing:.22em;font-size:.72rem;font-weight:600}.kicker{color:#ffd0c1}.hero h1,.not-found h1{font:400 clamp(4.6rem,9vw,9rem)/.78 var(--serif);letter-spacing:-.045em;margin:0}.hero h1 em,.cta-block h2 em,.not-found em{color:#ffc36b;font-weight:400}.hero-deck{font-size:1.15rem;max-width:530px;margin:32px 0;color:rgba(255,255,255,.85)}.hero-actions{display:flex;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 26px;border:1px solid currentColor;text-transform:uppercase;font-size:.7rem;letter-spacing:.16em;font-weight:600;cursor:pointer}.button-primary{background:var(--red);border-color:var(--red);color:#fff}.button-primary:hover{background:#c93b28}.button-ghost{color:#fff;background:rgba(255,255,255,.08);backdrop-filter:blur(6px)}.hero-index{position:absolute;z-index:2;right:4vw;bottom:4vw;display:flex;gap:28px;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.band,.section-pad{padding:110px 7vw}.manifesto{background:var(--cream);display:grid;grid-template-columns:1fr 3fr;gap:8vw}.manifesto h2,.section-top h2,.service-intro h2,.about-lead h2,.contact-layout h2,.about-feature h2{font:400 clamp(3rem,6vw,6.4rem)/.92 var(--serif);letter-spacing:-.035em;margin:0 0 28px;color:var(--ink)}.manifesto>div{display:grid;grid-template-columns:1.7fr 1fr;gap:5vw;align-items:end}.manifesto p:last-child,.service-intro>div>p,.about-lead p,.about-feature p,.contact-layout>div>p{color:var(--muted);max-width:620px}.section-top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:54px}.section-note{max-width:320px;color:var(--muted)}
.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.project-card{position:relative;overflow:hidden;background:var(--ink);aspect-ratio:4/5;color:#fff}.project-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.project-card::after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(8,16,32,.92))}.project-card:hover img{transform:scale(1.035)}.project-meta{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:26px}.project-meta span{font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:#ffbfaa}.project-meta h3{font:400 2.4rem/1 var(--serif);margin:10px 0 8px}.project-meta p{font-size:.86rem;color:rgba(255,255,255,.72);margin:0}.numbers-strip{display:grid;grid-template-columns:repeat(3,1fr);background:var(--sky);padding:60px 7vw;gap:30px}.numbers-strip div{display:flex;align-items:center;gap:18px}.numbers-strip b{font:400 3rem var(--serif);color:var(--red)}.numbers-strip span{font-size:.82rem;text-transform:uppercase;letter-spacing:.12em}
.cta-block{position:relative;padding:110px 7vw;background:var(--blue);color:#fff}.cta-block.warm{background:var(--red)}.cta-block h2{font:400 clamp(4rem,8vw,8rem)/.82 var(--serif);letter-spacing:-.04em;margin:0}.round-link{position:absolute;right:8vw;bottom:110px;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:#ffc36b;color:var(--ink);font-size:2rem;transition:.2s}.round-link:hover{transform:rotate(12deg) scale(1.05)}
.service-intro,.about-lead{display:grid;grid-template-columns:1fr 3fr;gap:8vw}.service-intro>div,.about-lead>div{max-width:980px}.service-list{padding:0 7vw 100px}.service-list article{display:grid;grid-template-columns:80px 1.2fr 1fr;gap:30px;align-items:center;border-top:1px solid var(--line);padding:34px 0}.service-list span,.belief-grid span{color:var(--red);font-size:.75rem}.service-list h3,.belief-grid h3{font:400 2.6rem var(--serif);margin:0}.service-list p,.belief-grid p{margin:0;color:var(--muted)}.process-band{background:var(--ink);color:#fff;padding:90px 7vw}.process-track{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:24px;margin-top:42px}.process-track div{display:grid;gap:5px}.process-track b{color:#ffc36b;font:400 1.7rem var(--serif)}.process-track span{font-size:.72rem;color:#b9c4d4}.process-track i{height:1px;background:#4c5e7c}
.about-lead .lead{font:400 1.7rem/1.35 var(--serif);color:var(--ink);max-width:760px}.belief-grid{background:var(--cream);display:grid;grid-template-columns:repeat(2,1fr);gap:1px}.belief-grid article{background:var(--paper);padding:45px;min-height:250px}.belief-grid h3{margin:30px 0 14px}.about-feature{display:grid;grid-template-columns:1.2fr 1fr;min-height:660px;background:#d8e6ef}.about-feature-image{background:url('assets/vsp-about-hero.png') center/cover}.about-feature>div:last-child{padding:90px 7vw 70px 6vw;align-self:center}.text-link{display:inline-block;margin-top:24px;color:var(--red);font-weight:600}.partner-band{padding:100px 7vw;background:var(--amber);color:var(--ink)}.partner-band h2{font:400 clamp(3.3rem,7vw,7.5rem)/.92 var(--serif);margin:0}
.contact-visual{height:570px;position:relative;background:url('assets/vsp-contact-collaboration.jpg') center/cover;color:#fff}.contact-head{position:absolute;z-index:2;left:7vw;bottom:65px}.contact-head h1{font:400 clamp(4rem,8vw,8rem)/.82 var(--serif);margin:0}.contact-head h1 em{color:#ffc36b;font-weight:400}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.contact-detail{border-top:1px solid var(--line);padding:20px 0;display:grid;gap:6px}.contact-detail span{font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-form label{display:grid;gap:8px;font-size:.67rem;letter-spacing:.15em;color:var(--blue)}.contact-form label:nth-child(4){grid-column:1/-1}.contact-form input,.contact-form textarea,.contact-form select{border:0;border-bottom:1px solid var(--line);padding:12px 0;background:transparent;color:var(--ink);outline:none;border-radius:0}.contact-form textarea{min-height:140px;resize:vertical}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--red)}.contact-form button{justify-self:start}.form-status{grid-column:1/-1;color:var(--red);font-size:.82rem}
.site-footer{background:#0e1c35;color:#fff;padding:70px 7vw 30px;display:grid;grid-template-columns:1.6fr 1fr .7fr 1fr;gap:40px}.footer-brand{display:flex;gap:14px;align-items:start;letter-spacing:.1em}.site-footer>div:not(.footer-brand){display:grid;align-content:start;gap:8px}.site-footer span{font-size:.63rem;letter-spacing:.16em;color:#9fb0ca}.site-footer p,.site-footer a{font-size:.85rem;margin:0;color:#e0e6ef}.site-footer small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:25px;margin-top:35px;font-size:.6rem;letter-spacing:.12em;color:#7e8da5}.to-top{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--red);color:#fff;opacity:0;transform:translateY(12px);transition:.2s;pointer-events:none}.to-top.show{opacity:1;transform:none;pointer-events:auto}.not-found{min-height:100vh;background:var(--blue);color:#fff;display:grid;place-content:center;text-align:center;gap:25px}.not-found h1{color:#ffc36b}
@media(max-width:800px){.site-header{height:68px;padding:0 20px}.wordmark{font-size:.62rem}.desktop-nav{display:none}.menu-toggle{display:block}.mobile-nav{position:fixed;z-index:99;top:0;right:0;bottom:0;width:min(82vw,360px);background:var(--blue);color:#fff;padding:110px 38px;display:flex;flex-direction:column;gap:30px;transform:translateX(100%);transition:.3s}.mobile-nav.open{transform:none}.mobile-nav a{font:400 2.2rem var(--serif)}.hero{min-height:680px}.home-hero{background-position:63% center}.sub-hero{min-height:610px}.hero-copy{padding:0 24px 72px}.hero h1{font-size:4.2rem}.hero-deck{font-size:1rem}.hero-index{display:none}.band,.section-pad{padding:72px 24px}.manifesto,.service-intro,.about-lead{grid-template-columns:1fr;gap:32px}.manifesto>div{grid-template-columns:1fr}.manifesto h2,.section-top h2,.service-intro h2,.about-lead h2,.contact-layout h2,.about-feature h2{font-size:3.5rem}.section-top{display:block}.section-note{margin-top:20px}.project-grid{grid-template-columns:1fr}.project-card{aspect-ratio:4/5}.numbers-strip{grid-template-columns:1fr;padding:45px 24px}.cta-block{padding:80px 24px 140px}.cta-block h2{font-size:4rem}.round-link{left:24px;right:auto;bottom:35px;width:70px;height:70px}.service-list{padding:0 24px 70px}.service-list article{grid-template-columns:44px 1fr}.service-list p{grid-column:2}.process-band{padding:70px 24px}.process-track{grid-template-columns:1fr 1fr}.process-track i{display:none}.belief-grid{grid-template-columns:1fr;padding:24px}.belief-grid article{padding:32px}.about-feature{grid-template-columns:1fr}.about-feature-image{min-height:420px}.about-feature>div:last-child{padding:70px 24px}.partner-band{padding:70px 24px}.contact-visual{height:610px}.contact-head{left:24px;bottom:55px}.contact-layout{grid-template-columns:1fr;gap:55px}.contact-form{grid-template-columns:1fr}.contact-form label:nth-child(4){grid-column:auto}.site-footer{grid-template-columns:1fr 1fr;padding:55px 24px 25px}.site-footer .footer-brand{grid-column:1/-1}.site-footer small{grid-column:1/-1}.hero-actions{flex-direction:column;align-items:flex-start}}
.desktop-nav{align-items:center;gap:28px}.desktop-nav .nav-cta{opacity:1;border:1px solid rgba(255,255,255,.5);padding:11px 15px;margin-left:6px}.desktop-nav .nav-cta.active{background:var(--red);border-color:var(--red);color:#fff}.hero-deck{margin-bottom:0}.hero-scroll{position:absolute;z-index:2;left:7vw;bottom:34px;display:flex;align-items:center;gap:14px;color:rgba(255,255,255,.8);font-size:.65rem;letter-spacing:.18em;text-transform:uppercase}.hero-scroll b{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.55);border-radius:50%;font-size:.9rem}.hero-scroll:hover{color:#fff}.home-hero .hero-copy{padding-bottom:10vw}
@media(max-width:800px){.home-hero .hero-copy{padding-bottom:130px}.hero-scroll{left:24px;bottom:34px}.hero-scroll span{font-size:.63rem}}
.home-hero{min-height:100svh}

/* Editorial art direction */
body{background:#f8f5ef}.page{overflow:hidden}.page.active{animation:page-in .55s ease both}@keyframes page-in{from{opacity:.65}to{opacity:1}}
.site-header.scrolled{background:#10203d;color:#fff;box-shadow:0 8px 30px rgba(5,18,40,.16)}
.hero::before{content:'';position:absolute;z-index:1;inset:18px;border:1px solid rgba(255,255,255,.15);pointer-events:none}.home-hero .hero-shade{background:linear-gradient(100deg,rgba(5,18,40,.82) 0%,rgba(5,18,40,.3) 47%,rgba(5,18,40,.02) 78%),linear-gradient(0deg,rgba(5,18,40,.42),transparent 55%)}.home-hero .hero-copy{max-width:760px;padding-left:7.3vw}.hero h1{letter-spacing:-.06em}.hero h1 em{display:inline-block;margin-left:.36em}.home-hero .hero-deck{padding-left:5px;border-left:38px solid var(--red);padding-inline-start:18px}
.kicker,.section-label{display:flex;align-items:center;gap:14px}.kicker::before,.section-label::before{content:'';width:28px;height:1px;background:currentColor}.section-label{color:var(--red)}
.manifesto{position:relative;padding-top:135px;padding-bottom:135px;background:linear-gradient(120deg,#f1eadf 0 65%,#e5a64d 65%)}.manifesto>div{position:relative}.manifesto h2{font-size:clamp(4.2rem,7vw,7.8rem);max-width:760px}.manifesto p:last-child{background:rgba(255,253,250,.86);padding:32px;margin-bottom:-55px;box-shadow:0 24px 55px rgba(16,32,61,.09)}
.projects-section{padding-top:140px;padding-bottom:180px}.section-top{align-items:flex-start}.section-top h2{font-size:clamp(4.6rem,7vw,7.4rem)}.section-note{margin-top:62px;border-top:1px solid var(--line);padding-top:18px}.project-grid{gap:26px;align-items:start}.project-card{box-shadow:0 28px 70px rgba(16,32,61,.14)}.project-card:nth-child(2){margin-top:82px}.project-card:nth-child(3){margin-top:24px}.project-card::before{content:'';position:absolute;z-index:2;inset:14px;border:1px solid rgba(255,255,255,.24);pointer-events:none}.project-meta{padding:38px}.project-meta h3{font-size:3rem}.project-meta span{display:flex;align-items:center;gap:10px}.project-meta span::before{content:'';width:22px;height:1px;background:currentColor}
.slate-section{background:#10203d;color:#fff;padding-top:140px;padding-bottom:150px}.slate-heading{display:grid;grid-template-columns:1fr 1.7fr 1fr;gap:5vw;align-items:end;margin-bottom:70px}.slate-heading .section-label{align-self:start;color:#ffbea8}.slate-heading h2{font:400 clamp(3.8rem,6vw,6.6rem)/.9 var(--serif);letter-spacing:-.04em;margin:0}.slate-heading>p:last-child{color:#aebbd0;margin:0}.slate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 22px}.slate-card{background:#172b4d;box-shadow:0 28px 55px rgba(0,0,0,.2);transition:transform .35s ease}.slate-card:hover{transform:translateY(-9px)}.slate-card img{width:100%;aspect-ratio:4/5;object-fit:cover}.slate-card>div{padding:26px 26px 30px}.slate-card span{font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:#ffbea8}.slate-card h3{font:400 2.4rem/1 var(--serif);margin:10px 0 12px}.slate-card p{font-size:.84rem;color:#b8c3d4;margin:0}
.numbers-strip{position:relative;z-index:2;margin:-70px 4vw 0;padding:48px 4vw;background:#dce8f2;box-shadow:0 22px 60px rgba(16,32,61,.12)}.numbers-strip div+div{border-left:1px solid rgba(16,32,61,.16);padding-left:32px}.numbers-strip b{font-size:4rem;font-style:italic}
.cta-block{margin-top:110px;padding-top:145px;padding-bottom:145px}.cta-block::before{content:'VSP';position:absolute;right:4vw;top:-.18em;font:400 17vw/.8 var(--serif);color:rgba(255,255,255,.045);letter-spacing:-.08em}.cta-block .section-label,.cta-block h2{position:relative;z-index:1}.cta-block h2 em{margin-left:.7em}.round-link{z-index:2;border:10px solid rgba(255,255,255,.08)}
.sub-hero .hero-copy{max-width:980px}.service-intro,.about-lead{padding-top:140px;padding-bottom:140px}.service-intro>div,.about-lead>div{border-left:1px solid var(--line);padding-left:6vw}.service-list article{position:relative;padding:46px 24px;transition:.3s}.service-list article::after{content:'↗';position:absolute;right:20px;top:50%;transform:translateY(-50%);font:400 2rem var(--serif);color:transparent;transition:.25s}.service-list article:hover{background:var(--cream);padding-left:40px}.service-list article:hover::after{color:var(--red)}
.process-band{position:relative;padding-top:120px;padding-bottom:120px}.process-band::after{content:'';position:absolute;width:420px;height:420px;border:1px solid rgba(255,195,107,.18);border-radius:50%;right:-160px;top:-150px}.process-track{margin-top:70px}.process-track b{font-size:2.15rem}
.about-lead .lead{font-size:2.05rem}.belief-grid{position:relative;padding-top:130px;padding-bottom:130px;background:var(--blue);gap:18px}.belief-grid article{min-height:290px;background:#f8f5ef;box-shadow:0 24px 55px rgba(3,14,31,.18)}.belief-grid article:nth-child(2),.belief-grid article:nth-child(4){transform:translateY(34px)}.belief-grid h3{font-size:3rem}.about-feature{margin:0 4vw;min-height:720px;box-shadow:0 30px 80px rgba(16,32,61,.14)}.about-feature-image{margin:24px 0 24px 24px}.about-feature>div:last-child{padding-right:8vw}.partner-band{margin-top:120px;padding-top:130px;padding-bottom:130px}.partner-band h2{max-width:1100px}
.about-lead{position:relative;background:#f8f5ef;isolation:isolate}.about-lead::after{content:'ABOUT';position:absolute;z-index:-1;right:-.04em;bottom:-.22em;font:italic 21vw/.75 var(--serif);letter-spacing:-.08em;color:rgba(16,32,61,.035)}.about-lead>div{position:relative;padding-top:35px;padding-bottom:35px}.about-lead>div::before,.about-lead>div::after{content:'';position:absolute;left:-1px;width:5px;background:var(--red)}.about-lead>div::before{top:0;height:70px}.about-lead>div::after{bottom:0;height:24px;background:var(--amber)}.about-lead .lead{max-width:820px;padding:25px 0 25px 5vw;margin:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.belief-grid{grid-template-columns:1.12fr .88fr;gap:28px;padding-left:10vw;padding-right:10vw}.belief-grid::before{content:'04 PRINCIPLES';position:absolute;left:2.8vw;top:50%;transform:translateY(-50%) rotate(-90deg);transform-origin:center;font-size:.63rem;letter-spacing:.23em;color:#92a6c3}.belief-grid article{position:relative;overflow:hidden;padding:56px 58px;min-height:310px;border-radius:0;box-shadow:0 26px 60px rgba(3,14,31,.24);transition:transform .35s ease}.belief-grid article:nth-child(1){background:#f8f5ef}.belief-grid article:nth-child(2){background:#e5a64d;color:#10203d;transform:translateY(54px)}.belief-grid article:nth-child(3){background:#dbe8f2;transform:translateX(7vw)}.belief-grid article:nth-child(4){background:#e74b35;color:#fff;transform:translate(7vw,54px)}.belief-grid article::after{content:attr(data-mark);position:absolute;right:-.02em;bottom:-.28em;font:italic 12rem/1 var(--serif);color:rgba(16,32,61,.055)}.belief-grid article:nth-child(4)::after{color:rgba(255,255,255,.1)}.belief-grid h3{font-size:3.45rem;max-width:600px}.belief-grid article:nth-child(2) p,.belief-grid article:nth-child(4) p{color:currentColor;opacity:.75}
.team-section{display:grid;grid-template-columns:1.15fr 1fr;gap:7vw;align-items:center;background:#f1eadf}.team-image{position:relative}.team-image::after{content:'';position:absolute;inset:18px;border:1px solid rgba(255,255,255,.55)}.team-image img{width:100%;min-height:620px;object-fit:cover}.team-copy h2{font:400 clamp(4rem,6vw,6.8rem)/.9 var(--serif);letter-spacing:-.04em;margin:0 0 26px}.team-lead{color:var(--muted);font-size:1.05rem;max-width:620px}.team-roles{margin-top:42px;border-top:1px solid var(--line)}.team-roles article{display:grid;grid-template-columns:46px 130px 1fr;gap:18px;align-items:start;padding:22px 0;border-bottom:1px solid var(--line)}.team-roles span{color:var(--red);font-size:.68rem}.team-roles h3{font:400 1.55rem var(--serif);margin:0}.team-roles p{font-size:.78rem;color:var(--muted);margin:0}
.contact-visual{height:70vh;min-height:600px}.contact-visual::before{content:'';position:absolute;z-index:2;inset:18px;border:1px solid rgba(255,255,255,.15)}.contact-layout{padding-top:140px;padding-bottom:140px}.contact-layout>div:first-child{padding-right:5vw;border-right:1px solid var(--line)}.contact-form{background:#f1eadf;padding:44px;box-shadow:0 26px 65px rgba(16,32,61,.1)}
.contact-email a{font:400 clamp(1.45rem,2.2vw,2.35rem) var(--serif);color:var(--red);word-break:break-word}.footer-email{margin-top:6px!important;color:#ffbea8!important;text-decoration:underline;text-underline-offset:4px}
.belief-grid article:nth-child(1)::after{content:'01'}.belief-grid article:nth-child(2)::after{content:'02'}.belief-grid article:nth-child(3)::after{content:'03'}.belief-grid article:nth-child(4)::after{content:'04'}

/* Expanded drama slate on home */
.home-premieres{background:#10203d;color:#fff;padding-top:120px;padding-bottom:135px}.premieres-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:54px;border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:30px}.premieres-head h2{font:400 clamp(3.7rem,7vw,7.6rem)/.86 var(--serif);letter-spacing:-.055em;margin:0}.premieres-grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:18px;align-items:start}.premieres-grid article{position:relative;background:#162a4c;overflow:hidden}.premieres-grid article:nth-child(2){margin-top:74px}.premieres-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;filter:saturate(.88);transition:transform .7s ease,filter .5s ease}.premieres-grid article:first-child img{aspect-ratio:5/4}.premieres-grid article:hover img{transform:scale(1.025);filter:saturate(1)}.premieres-grid article div{padding:24px 25px 30px}.premieres-grid span{font-size:.69rem;letter-spacing:.12em;text-transform:uppercase;color:#ffbd73}.premieres-grid h3{font:400 clamp(2.1rem,3.4vw,4rem)/1 var(--serif);margin:10px 0 12px}.premieres-grid p{color:#c6cedb;margin:0;max-width:500px}

/* Work page: an editorial production journal */
.work-opening{display:grid;grid-template-columns:1.35fr .65fr;gap:8vw;align-items:end;background:#f8f5ef}.work-opening h2{font:400 clamp(4.2rem,8vw,8.5rem)/.84 var(--serif);letter-spacing:-.06em;margin:20px 0 0}.work-opening h2 em{color:var(--red)}.work-opening>p{max-width:520px;color:var(--muted);font-size:1.08rem;padding-bottom:12px}.work-journal{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;background:#10203d;color:#fff;padding-top:0;padding-bottom:130px}.work-journal figure{margin:0;background:#15294a;overflow:hidden}.work-journal figure:nth-child(3){margin-top:-120px}.work-journal-lead{grid-column:1/-1;display:grid;grid-template-columns:1.45fr .55fr;align-items:stretch}.work-journal img{width:100%;height:470px;object-fit:cover;display:block;filter:saturate(.82);transition:filter .45s ease,transform .65s ease}.work-journal-lead img{height:660px}.work-journal-team img{height:610px}.work-journal figure:hover img{filter:saturate(1);transform:scale(1.018)}.work-journal figcaption{padding:35px 36px 42px}.work-journal-lead figcaption{display:flex;flex-direction:column;justify-content:flex-end;padding:56px}.work-journal figcaption span{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:#ffbd73}.work-journal h2{font:400 clamp(2.6rem,4.6vw,5.2rem)/.92 var(--serif);letter-spacing:-.045em;margin:14px 0 18px}.work-journal p{color:#c5cfdd;margin:0;max-width:520px}.work-journal-team{margin-top:70px!important}

@media(max-width:800px){.premieres-head{display:block}.premieres-head h2{font-size:3.7rem}.premieres-grid{grid-template-columns:1fr}.premieres-grid article:nth-child(2){margin-top:0}.premieres-grid img,.premieres-grid article:first-child img{aspect-ratio:4/3}.work-opening{grid-template-columns:1fr;gap:28px}.work-opening h2{font-size:4.2rem}.work-journal{grid-template-columns:1fr;padding-left:20px;padding-right:20px}.work-journal-lead{grid-column:auto;display:block}.work-journal figure:nth-child(3),.work-journal-team{margin-top:0!important}.work-journal img,.work-journal-lead img,.work-journal-team img{height:auto;aspect-ratio:4/3}.work-journal-lead figcaption,.work-journal figcaption{padding:28px 24px 34px}}

/* Keep editorial offsets without allowing cards to overlap copy. */
.work-journal{align-items:start}.work-journal figure:nth-child(3){margin-top:0}.work-journal-lead figcaption{min-width:0}.work-journal-team{grid-column:1/-1;display:grid;grid-template-columns:.9fr 1.1fr;margin-top:36px!important}.work-journal-team figcaption{display:flex;flex-direction:column;justify-content:flex-end;padding:54px}.work-journal-team img{height:540px}
@media(max-width:800px){.work-journal-team{grid-column:auto;display:block;margin-top:0!important}.work-journal-team figcaption{padding:28px 24px 34px}.work-journal-team img{height:auto}}

/* Work journal — wide editorial rows, generous copy and breathing room. */
.work-journal{display:block;background:#f8f5ef;color:#10203d;padding:20px 9vw 150px}.work-journal figure,.work-journal .work-journal-lead,.work-journal .work-journal-team{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);align-items:center;gap:clamp(48px,7vw,120px);margin:0!important;padding:72px 0;border-top:1px solid rgba(16,32,61,.18);background:transparent;overflow:visible}.work-journal figure:first-child{border-top:0;padding-top:30px}.work-journal figure:nth-child(even) img{order:2}.work-journal figure:nth-child(even) figcaption{order:1}.work-journal img,.work-journal-lead img,.work-journal-team img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;box-shadow:0 24px 55px rgba(16,32,61,.12)}.work-journal figcaption,.work-journal-lead figcaption,.work-journal-team figcaption{display:block;padding:20px 0;min-width:0}.work-journal figcaption>span{display:block;color:var(--red);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;margin-bottom:22px}.work-journal h2{font:400 clamp(3.2rem,5.1vw,6rem)/.9 var(--serif);letter-spacing:-.05em;margin:0 0 30px;max-width:680px}.work-journal p{color:#5f6d82;font-size:1rem;line-height:1.75;margin:0 0 18px;max-width:620px}.work-facts{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:32px;padding-top:22px;border-top:1px solid rgba(16,32,61,.16)}.work-facts b{font-size:.69rem;letter-spacing:.11em;text-transform:uppercase;color:#10203d}.work-facts b::before{content:'—';margin-right:8px;color:var(--red)}
@media(max-width:900px){.work-journal{padding:20px 24px 95px}.work-journal figure,.work-journal .work-journal-lead,.work-journal .work-journal-team{grid-template-columns:1fr;gap:28px;padding:54px 0}.work-journal figure:nth-child(even) img,.work-journal figure:nth-child(even) figcaption{order:initial}.work-journal img,.work-journal-lead img,.work-journal-team img{aspect-ratio:16/10}.work-journal h2{font-size:3.5rem}.work-journal figcaption,.work-journal-lead figcaption,.work-journal-team figcaption{padding:0 2px}}
.site-footer{position:relative;padding-top:90px}.site-footer::before{content:'';position:absolute;left:7vw;right:7vw;top:34px;height:1px;background:rgba(255,255,255,.15)}
@media(max-width:800px){.hero::before,.contact-visual::before{inset:10px}.hero h1 em{margin-left:0}.home-hero .hero-deck{border-left-width:24px}.manifesto{background:#f1eadf;padding-top:82px;padding-bottom:90px}.manifesto p:last-child{margin:0;padding:24px}.projects-section{padding-top:90px;padding-bottom:90px}.section-note{margin-top:28px}.project-card:nth-child(2),.project-card:nth-child(3){margin-top:0}.project-meta{padding:30px}.numbers-strip{margin:0;padding:40px 24px}.numbers-strip div+div{border-left:0;border-top:1px solid rgba(16,32,61,.16);padding:24px 0 0}.cta-block{margin-top:0;padding-top:90px;padding-bottom:150px}.cta-block h2 em{margin-left:0}.service-intro>div,.about-lead>div{border-left:0;padding-left:0}.service-list article{padding:34px 0}.service-list article:hover{padding-left:0}.belief-grid{padding-top:60px;padding-bottom:60px}.belief-grid article:nth-child(2),.belief-grid article:nth-child(4){transform:none}.about-feature{margin:0;min-height:0}.about-feature-image{margin:0}.partner-band{margin-top:0}.contact-layout>div:first-child{padding-right:0;border-right:0}.contact-form{padding:28px}.site-footer{padding-top:70px}}
@media(max-width:800px){.about-lead::after,.belief-grid::before{display:none}.about-lead>div::before,.about-lead>div::after{display:none}.about-lead .lead{padding-left:0}.belief-grid{grid-template-columns:1fr;padding:60px 24px;gap:16px}.belief-grid article{padding:38px 30px;min-height:260px}.belief-grid article:nth-child(2),.belief-grid article:nth-child(3),.belief-grid article:nth-child(4){transform:none}.belief-grid h3{font-size:2.65rem}}
@media(max-width:800px){.slate-section{padding-top:90px;padding-bottom:90px}.slate-heading{grid-template-columns:1fr;gap:24px;margin-bottom:44px}.slate-grid{grid-template-columns:1fr;gap:24px}.slate-card h3{font-size:2.5rem}.team-section{grid-template-columns:1fr;gap:45px}.team-image img{min-height:380px}.team-roles article{grid-template-columns:38px 1fr}.team-roles p{grid-column:2}}

/* Set the point-of-view copy directly into the gold triangle. */
.manifesto p:last-child{align-self:end;background:transparent;padding:22px 0 0;margin:0 0 8px;box-shadow:none;border-top:1px solid rgba(16,32,61,.48);color:#10203d;max-width:390px;font-size:1rem;line-height:1.68}
@media(max-width:800px){.manifesto p:last-child{padding:22px 0 0;margin:0;border-top-color:rgba(16,32,61,.22)}}

/* Aligned two-row slate */
.premieres-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}.premieres-grid article,.premieres-grid article:nth-child(2){display:flex;flex-direction:column;margin-top:0}.premieres-grid img,.premieres-grid article:first-child img{aspect-ratio:16/10}.premieres-grid article>div{display:flex;flex:1;flex-direction:column}.premieres-grid h3{font-size:clamp(2rem,2.8vw,3.35rem)}.premieres-grid p{margin-top:auto}

/* Production photo wall and more expressive type. */
.work-photo-wall{position:relative;min-height:610px}.work-photo-wall img{position:absolute!important;height:auto!important;aspect-ratio:16/10!important;object-fit:cover;border:8px solid #fffdfa;box-shadow:0 22px 48px rgba(16,32,61,.2);transition:transform .45s ease}.work-photo-wall img:nth-child(1){z-index:2;width:68%;left:1%;top:4%;transform:rotate(-2deg)}.work-photo-wall img:nth-child(2){z-index:1;width:48%;right:0;top:0;transform:rotate(2.5deg)}.work-photo-wall img:nth-child(3){z-index:4;width:49%;left:8%;bottom:1%;transform:rotate(1.5deg)}.work-photo-wall img:nth-child(4){z-index:3;width:43%;right:4%;bottom:5%;transform:rotate(-3deg)}.work-photo-wall:hover img:nth-child(1){transform:rotate(-3deg) translate(-4px,-4px)}.work-photo-wall:hover img:nth-child(2){transform:rotate(3.5deg) translate(4px,-3px)}.work-journal h2 em{display:block;color:var(--red);font-weight:400;font-style:italic;font-size:1.18em;line-height:.72;margin-left:.55em}

/* Give each route a distinct opening composition. */
.services-hero{min-height:720px;background:#10203d;align-items:center;overflow:hidden}.services-hero .hero-shade{left:52%;background:url('assets/vsp-services-hero.png') center/cover}.services-hero .hero-copy{width:52%;max-width:none;padding:120px 6vw 70px}.services-hero h1{font-size:clamp(4.8rem,7.2vw,8rem)}.services-hero h1 em{margin-left:.12em}
.about-hero{min-height:720px;background:#f3eee5;color:#10203d;align-items:center;overflow:hidden}.about-hero .hero-shade{left:46%;background:url('assets/vsp-about-hero.png') center/cover}.about-hero .hero-copy{width:46%;max-width:none;padding:130px 5.8vw 70px}.about-hero .kicker{color:var(--red)}.about-hero h1{font-size:clamp(4.7rem,7vw,7.5rem)}.about-hero h1 em{color:var(--red);margin-left:.16em}.about-hero .hero-deck{color:#667083;max-width:470px}.about-hero::before{border-color:rgba(16,32,61,.17)}
.contact-visual{height:72vh;min-height:620px;background-position:center 42%}.contact-visual .hero-shade{background:linear-gradient(rgba(7,19,38,.24),rgba(7,19,38,.54))}.contact-head{left:50%;bottom:auto;top:52%;transform:translate(-50%,-50%);width:min(900px,84vw);text-align:center;padding:52px 70px;border:1px solid rgba(255,255,255,.42);background:rgba(8,20,40,.34);backdrop-filter:blur(3px)}.contact-head h1{font-size:clamp(4.4rem,7vw,7.8rem)}
body:has(.page[data-page="about"].active) .site-header{background:rgba(16,32,61,.94)}

@media(max-width:900px){.premieres-grid{grid-template-columns:1fr}.premieres-grid img,.premieres-grid article:first-child img{aspect-ratio:16/10}.work-photo-wall{min-height:430px}.services-hero,.about-hero{min-height:720px;align-items:flex-end}.services-hero .hero-shade,.about-hero .hero-shade{inset:0;background-size:cover;background-position:center}.services-hero .hero-shade::after,.about-hero .hero-shade::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,19,38,.88),rgba(7,19,38,.12) 70%)}.services-hero .hero-copy,.about-hero .hero-copy{width:100%;padding:0 24px 74px;color:#fff}.about-hero .kicker{color:#ffd0c1}.about-hero .hero-deck{color:rgba(255,255,255,.82)}.about-hero h1 em{color:#ffc36b}.contact-head{padding:38px 24px}.contact-head h1{font-size:4.2rem}}

/* Follow the triangle's diagonal instead of placing copy in a box. */
.manifesto>div{grid-template-columns:1.68fr 1fr;gap:2vw;align-items:center}.triangle-copy{align-self:center;color:#10203d;max-width:470px;margin-top:58px}.manifesto .triangle-copy p{background:transparent;border:0;box-shadow:none;padding:0;margin:0;font-size:1.03rem;line-height:1.58;color:#10203d;max-width:none}.triangle-copy p span{display:block;white-space:nowrap}.triangle-copy p span:nth-child(1){margin-left:96px}.triangle-copy p span:nth-child(2){margin-left:72px}.triangle-copy p span:nth-child(3){margin-left:48px}.triangle-copy p span:nth-child(4){margin-left:24px}.triangle-copy p span:nth-child(5){margin-left:0}.triangle-copy small{display:block;margin:28px 0 0 0;padding-top:16px;border-top:1px solid rgba(16,32,61,.42);font:italic 1.28rem/1.2 var(--serif);color:#10203d}
@media(max-width:900px){.manifesto>div{grid-template-columns:1fr;gap:28px}.triangle-copy{margin-top:0;max-width:620px}.triangle-copy p span{white-space:normal!important;margin-left:0!important}.triangle-copy small{margin-top:22px}}

/* PlotVibe library: nine titles per row, three rows on wide screens. */
.slate-library{padding-left:4vw;padding-right:4vw}.slate-library .slate-heading{grid-template-columns:.8fr 1.6fr .8fr;margin-bottom:64px}.slate-library .slate-heading h2{font-size:clamp(3.5rem,5.4vw,6rem)}.slate-library .slate-grid{grid-template-columns:repeat(9,minmax(0,1fr));gap:12px}.slate-library .slate-card{position:relative;overflow:hidden;min-width:0;background:#172b4d;box-shadow:none}.slate-library .slate-card:hover{transform:translateY(-5px)}.slate-library .slate-card img{width:100%;aspect-ratio:3/4;object-fit:cover;filter:saturate(.84);transition:transform .5s ease,filter .4s ease}.slate-library .slate-card:hover img{transform:scale(1.035);filter:saturate(1)}.slate-library .slate-card>div{position:absolute;left:0;right:0;bottom:0;padding:48px 10px 12px;background:linear-gradient(transparent,rgba(7,16,32,.94))}.slate-library .slate-card span{display:block;font-size:.5rem;letter-spacing:.1em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slate-library .slate-card h3{font-size:clamp(1rem,1.25vw,1.42rem);line-height:.95;margin:5px 0 0}.plotvibe-invite{display:grid;grid-template-columns:.75fr 1.6fr .9fr;gap:4vw;align-items:end;margin-top:80px;padding:52px 0 8px;border-top:1px solid rgba(255,255,255,.22)}.plotvibe-invite p{margin:0;color:#ffbea8;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}.plotvibe-invite h3{font:400 clamp(2.7rem,4.6vw,5rem)/.92 var(--serif);margin:0}.plotvibe-invite h3 em{color:#ffc36b;font-weight:400}.plotvibe-invite span{color:#aebbd0;font-size:.9rem;line-height:1.65}
@media(max-width:1200px){.slate-library .slate-grid{grid-template-columns:repeat(5,1fr)}.slate-library .slate-card h3{font-size:1.35rem}.plotvibe-invite{grid-template-columns:1fr 2fr}}
@media(max-width:700px){.slate-library{padding-left:18px;padding-right:18px}.slate-library .slate-grid{grid-template-columns:repeat(2,1fr);gap:10px}.slate-library .slate-card h3{font-size:1.4rem}.slate-library .slate-heading{display:block}.slate-library .slate-heading>p:last-child{margin-top:20px}.plotvibe-invite{grid-template-columns:1fr;gap:20px;margin-top:55px;padding-top:38px}.plotvibe-invite h3{font-size:3rem}}

/* Series introductions are editorial story features, not poster cards. */
.series-features .project-grid{display:grid;grid-template-columns:1fr;gap:72px}
.series-features .project-card{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,.75fr);aspect-ratio:auto;overflow:visible;background:#f4efe7;color:var(--ink);box-shadow:none;min-height:520px}
.series-features .project-card:nth-child(2),.series-features .project-card:nth-child(3){margin-top:0}
.series-features .project-card:nth-child(even){grid-template-columns:minmax(360px,.75fr) minmax(0,1.45fr)}
.series-features .project-card:nth-child(even) img{order:2}
.series-features .project-card::after,.series-features .project-card::before{display:none}
.series-features .project-card img{height:100%;min-height:520px;aspect-ratio:16/10;object-fit:cover}
.series-features .project-card:hover img{transform:none}
.series-features .project-meta{position:static;display:flex;flex-direction:column;justify-content:center;padding:54px 50px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.series-features .project-meta span{color:var(--red);font-size:.68rem}
.series-features .project-meta h3{font-size:clamp(3.2rem,4vw,5.2rem);margin:24px 0 24px;letter-spacing:-.035em}
.series-features .project-meta p{color:#526074;font-size:1rem;line-height:1.75;margin:0}
.series-points{display:flex;flex-wrap:wrap;gap:9px;margin-top:34px}
.series-points b{font-size:.67rem;letter-spacing:.1em;text-transform:uppercase;border:1px solid rgba(16,32,61,.2);padding:9px 11px;font-weight:600}

/* Dense nine-column catalog with complete show information. */
.slate-library .slate-grid{align-items:stretch;row-gap:22px}
.slate-library .slate-card{display:flex;flex-direction:column;background:#172b4d;border:1px solid rgba(255,255,255,.09)}
.slate-library .slate-card img{aspect-ratio:4/5;flex:none}
.slate-library .slate-card>div{position:static;display:flex;flex:1;flex-direction:column;padding:13px 12px 12px;background:none}
.slate-library .slate-card h3{font-size:clamp(1.05rem,1.15vw,1.32rem);line-height:1;margin:6px 0 9px}
.slate-library .slate-card p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4;min-height:5.8em;color:#aebbd0;font-size:.74rem;line-height:1.48;margin:0 0 15px}
.slate-library .slate-card .card-stats{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:10px;border-top:1px solid rgba(255,255,255,.12)}
.slate-library .card-stats b,.slate-library .card-stats strong{font:600 .58rem/1 var(--sans);letter-spacing:.1em;color:#dbe3ef}
.slate-library .card-stats strong{color:#ffb15c}

@media(max-width:1200px){.series-features .project-card,.series-features .project-card:nth-child(even){grid-template-columns:1.2fr .8fr}.series-features .project-meta{padding:40px 34px}.series-features .project-card img{min-height:460px}}
@media(max-width:700px){.series-features .project-grid{gap:44px}.series-features .project-card,.series-features .project-card:nth-child(even){display:flex;flex-direction:column;min-height:0}.series-features .project-card:nth-child(even) img{order:0}.series-features .project-card img{min-height:0;aspect-ratio:16/10}.series-features .project-meta{padding:30px 24px}.series-features .project-meta h3{font-size:3.2rem}.series-features .project-meta p{font-size:.95rem}.slate-library .slate-card>div{padding:12px 10px}.slate-library .slate-card p{font-size:.68rem}.slate-library .card-stats b,.slate-library .card-stats strong{font-size:.55rem}}

/* Revised homepage density: one lead story, two supporting stories, five shows per row. */
.triangle-details{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.triangle-details span{border:1px solid rgba(16,32,61,.42);padding:7px 9px;font-size:.6rem;line-height:1;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.manifesto .triangle-copy .triangle-note{max-width:370px;margin:16px 0 0;padding:0;border:0;background:transparent;box-shadow:none;color:#27384f;font-size:.78rem;line-height:1.5}

.series-features .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 28px}
.series-features .project-card:first-child{grid-column:1/-1}
.series-features .project-card:nth-child(n+2){display:flex;flex-direction:column;min-height:0}
.series-features .project-card:nth-child(n+2) img{order:0;width:100%;height:auto;min-height:0;aspect-ratio:16/9}
.series-features .project-card:nth-child(n+2) .project-meta{flex:1;justify-content:flex-start;padding:38px 36px}
.series-features .project-card:nth-child(n+2) .project-meta h3{font-size:clamp(2.8rem,3.4vw,4.2rem);margin:18px 0}
.series-features .project-card:nth-child(n+2) .project-meta p{font-size:.95rem;line-height:1.68}

.slate-library .slate-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px 18px}
.slate-library .slate-card h3{font-size:clamp(1.35rem,1.55vw,1.8rem)}
.slate-library .slate-card p{font-size:.78rem;min-height:2.8em}
.slate-library .slate-card>div{padding:17px 16px 15px}
.slate-library .slate-card>div>span{min-height:2.5em;line-height:1.35;color:#ffb08f}

@media(max-width:900px){.series-features .project-grid{grid-template-columns:1fr}.series-features .project-card:first-child{grid-column:auto}.series-features .project-card,.series-features .project-card:first-child{display:flex;flex-direction:column;min-height:0}.series-features .project-card img,.series-features .project-card:first-child img{order:0;width:100%;height:auto;min-height:0;aspect-ratio:16/10}.series-features .project-meta,.series-features .project-card:first-child .project-meta{padding:34px 28px}.slate-library .slate-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.triangle-details{margin-top:18px}.manifesto .triangle-copy .triangle-note{font-size:.8rem}.slate-library .slate-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.slate-library .slate-card h3{font-size:1.35rem}.slate-library .slate-card p{font-size:.69rem}.slate-library .slate-card>div{padding:12px 10px}}

/* Contact — cinematic typography, no framed overlay */
.contact-visual::before{display:none}
.contact-head{left:7vw;right:auto;top:auto;bottom:74px;transform:none;width:min(980px,82vw);padding:0;text-align:left;border:0;background:none;backdrop-filter:none}
.contact-head::before{content:'';display:block;width:78px;height:2px;margin-bottom:24px;background:#ff654d}
.contact-head h1{max-width:920px;font-size:clamp(5rem,8.4vw,9.5rem);line-height:.83;letter-spacing:-.035em}
.contact-head .kicker{margin:0 0 22px;color:#ffd3c5}
.contact-tagline{margin:30px 0 0;font-size:.78rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.86)}
.contact-index{display:none}
.contact-index::before{content:'';position:absolute;left:0;top:50%;width:50px;height:1px;background:rgba(255,255,255,.55)}

/* Legal pages */
.legal-page{background:#f6f1e9;color:var(--ink)}
.legal-hero{min-height:430px;padding:150px 7vw 80px;background:var(--blue);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:60px;position:relative;overflow:hidden}
.legal-hero::after{content:'';position:absolute;right:-8vw;top:-190px;width:520px;height:650px;background:#e5a64d;transform:rotate(27deg);opacity:.95}
.legal-hero>p,.legal-hero h1{position:relative;z-index:1}
.legal-hero>.kicker{grid-column:1;align-self:end}
.legal-hero h1{grid-column:1;max-width:900px;margin:18px 0 0;font:400 clamp(4.5rem,8vw,8.5rem)/.88 var(--serif);letter-spacing:-.035em}
.legal-hero h1 em{color:#ffc36b;font-weight:400}
.legal-hero>p:last-child{grid-column:2;grid-row:1/3;align-self:end;max-width:230px;margin:0 9vw 8px 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.35);font-size:.72rem;line-height:1.7;letter-spacing:.15em;text-transform:uppercase}
.legal-shell{max-width:1420px;margin:auto;padding:110px 7vw 140px;display:grid;grid-template-columns:240px minmax(0,760px);justify-content:space-between;gap:9vw}
.legal-shell>aside{align-self:start;position:sticky;top:110px;padding-top:18px;border-top:2px solid #ff6048;display:grid;gap:14px}
.legal-shell>aside .section-label{margin:0 0 8px;font-size:.65rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:#f04c38}
.legal-shell>aside a{display:block;font-size:.78rem;color:#526078;text-decoration:none}
.legal-shell>aside a:hover{color:#f04c38}
.legal-copy{font-size:1.02rem;line-height:1.82;color:#46536a}
.legal-copy .legal-lead{margin:0 0 68px;font:400 clamp(1.7rem,2.4vw,2.6rem)/1.35 var(--serif);color:var(--ink)}
.legal-copy section{padding:0 0 52px;margin:0 0 52px;border-bottom:1px solid rgba(16,32,61,.16)}
.legal-copy section:last-child{border-bottom:0}
.legal-copy h2{margin:0 0 24px;font:400 clamp(2rem,3vw,3rem)/1.05 var(--serif);color:var(--ink)}
.legal-copy h3{margin:28px 0 10px;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:#f04c38}
.legal-copy p,.legal-copy li{max-width:72ch}
.legal-copy a{color:#d84634;text-decoration-thickness:1px;text-underline-offset:3px}
.legal-copy ul{padding-left:20px}

/* Footer legal navigation */
.site-footer .footer-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14)}
.site-footer .footer-bottom small{grid-column:auto;margin:0;padding:0;border:0}
.legal-links{display:flex;gap:26px}
.legal-links a{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.legal-links a:hover{color:#ffc36b}

@media(max-width:800px){
  .contact-head{left:24px;bottom:78px;width:calc(100% - 48px)}
  .contact-head h1{font-size:clamp(3.8rem,17vw,5.4rem)}
  .contact-tagline{font-size:.62rem;line-height:1.7}
  .contact-index{display:none}
  .legal-hero{min-height:390px;padding:130px 24px 60px;grid-template-columns:1fr;gap:30px}
  .legal-hero::after{right:-300px;opacity:.72}
  .legal-hero h1{font-size:4.3rem}
  .legal-hero>.kicker,.legal-hero h1,.legal-hero>p:last-child{grid-column:1;grid-row:auto}
  .legal-hero>p:last-child{margin:0}
  .legal-shell{padding:70px 24px 100px;grid-template-columns:1fr;gap:55px}
  .legal-shell>aside{position:static;grid-template-columns:1fr 1fr}
  .legal-shell>aside .section-label{grid-column:1/-1}
  .site-footer .footer-bottom{align-items:flex-start;flex-direction:column}
  .legal-links{flex-wrap:wrap}
}

/* Three signature series share one continuous editorial row. */
@media(min-width:901px){
  .series-features .project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
  .series-features .project-card,.series-features .project-card:first-child,.series-features .project-card:nth-child(n+2){grid-column:auto;display:flex;flex-direction:column;min-height:0}
  .series-features .project-card img,.series-features .project-card:first-child img,.series-features .project-card:nth-child(n+2) img{order:0;width:100%;height:auto;min-height:0;aspect-ratio:4/3;object-fit:cover}
  .series-features .project-meta,.series-features .project-card:first-child .project-meta,.series-features .project-card:nth-child(n+2) .project-meta{flex:1;justify-content:flex-start;padding:34px 30px}
  .series-features .project-meta h3,.series-features .project-card:first-child .project-meta h3,.series-features .project-card:nth-child(n+2) .project-meta h3{font-size:clamp(2.6rem,3.1vw,4rem);margin:18px 0}
  .series-features .project-meta p{font-size:.92rem;line-height:1.68}
  .series-features .series-points{margin-top:auto;padding-top:28px}
}

/* Home hero — animated editorial photo wall */
.home-hero{background:#08172d;overflow:hidden;isolation:isolate}
.home-mosaic{position:absolute;z-index:0;inset:78px 2.5vw 30px 32vw;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:7px;transform:rotate(-1.2deg) scale(1.04);transform-origin:center;perspective:1200px}
.mosaic-tile{margin:-6px;overflow:hidden;position:relative;background:#162845;box-shadow:0 18px 45px rgba(0,0,0,.28);transform-style:preserve-3d;animation:mosaic-front 14s cubic-bezier(.45,.05,.2,1) infinite}
.mosaic-tile:nth-child(2n){animation-name:mosaic-back;animation-duration:17s;animation-delay:-7s}
.mosaic-tile:nth-child(3n){animation-duration:20s;animation-delay:-11s}
.mosaic-tile:nth-child(5n){animation-name:mosaic-cross;animation-duration:18s;animation-delay:-4s}
.mosaic-tile img{width:100%;height:100%;object-fit:cover;filter:saturate(.84) contrast(1.04)}
.tile-a{grid-column:1/3;grid-row:1/3}.tile-b{grid-column:3;grid-row:1/2}.tile-c{grid-column:4/6;grid-row:1/2}.tile-d{grid-column:6;grid-row:1/3}.tile-e{grid-column:3/5;grid-row:2/4}.tile-f{grid-column:5;grid-row:2/3}.tile-g{grid-column:1;grid-row:3/5}.tile-h{grid-column:2/3;grid-row:3/4}.tile-i{grid-column:5/7;grid-row:3/5}.tile-j{grid-column:2/4;grid-row:4/5}.tile-k{grid-column:4/5;grid-row:4/5}.tile-l{grid-column:1;grid-row:1/2}.tile-m{grid-column:2/3;grid-row:3/4;transform:translate(8px,8px)}.tile-n{grid-column:4/5;grid-row:3/4;transform:translate(7px,-6px)}
.home-hero .hero-shade{z-index:1;background:linear-gradient(90deg,#08172d 0%,rgba(8,23,45,.96) 23%,rgba(8,23,45,.62) 42%,rgba(8,23,45,.12) 70%),linear-gradient(0deg,rgba(8,23,45,.76),transparent 48%)}
.home-hero .hero-copy{z-index:2;max-width:650px;padding-left:7vw;padding-bottom:9vw}
.home-hero h1{font-size:clamp(4.6rem,7.5vw,8.2rem)}
.home-hero .hero-index{z-index:3}
@keyframes mosaic-front{0%,100%{translate:-5px 8px;transform:translateZ(-25px) rotate(-.4deg);z-index:1;filter:brightness(.82)}42%{translate:10px -9px;transform:translateZ(55px) rotate(.35deg);z-index:4;filter:brightness(1)}70%{translate:3px 5px;transform:translateZ(10px);z-index:2;filter:brightness(.92)}}
@keyframes mosaic-back{0%,100%{translate:8px -7px;transform:translateZ(40px) rotate(.35deg);z-index:4;filter:brightness(1)}48%{translate:-11px 10px;transform:translateZ(-35px) rotate(-.3deg);z-index:1;filter:brightness(.78)}76%{translate:2px -3px;transform:translateZ(5px);z-index:2;filter:brightness(.9)}}
@keyframes mosaic-cross{0%,100%{translate:-12px 2px;transform:translateZ(-10px) rotate(-.5deg);z-index:2}50%{translate:15px -5px;transform:translateZ(65px) rotate(.5deg);z-index:5}}

@media(max-width:900px){
  .home-mosaic{inset:68px -22vw 0 18vw;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));opacity:.92}
  .tile-a{grid-column:1/3;grid-row:1/3}.tile-b{grid-column:3;grid-row:1}.tile-c{grid-column:4;grid-row:1/3}.tile-d{grid-column:3;grid-row:2/4}.tile-e{grid-column:1/3;grid-row:3/5}.tile-f{grid-column:4;grid-row:3}.tile-g{grid-column:3/5;grid-row:4/6}.tile-h{grid-column:1;grid-row:5}.tile-i{grid-column:2;grid-row:5}.tile-j,.tile-k,.tile-l,.tile-m,.tile-n{display:none}
  .home-hero .hero-shade{background:linear-gradient(90deg,rgba(8,23,45,.94),rgba(8,23,45,.58) 72%,rgba(8,23,45,.28)),linear-gradient(0deg,rgba(8,23,45,.85),transparent 55%)}
}
@media(prefers-reduced-motion:reduce){.mosaic-tile{animation:none}}

/* Legal documents — deliberately plain, readable text. */
.legal-page{background:#fff;color:#171717}
.legal-page .legal-hero{min-height:0;display:block;padding:150px max(7vw,24px) 58px;background:#fff;color:#171717;border-bottom:1px solid #d9d9d9}
.legal-page .legal-hero::after{display:none}
.legal-page .legal-hero>.kicker{margin:0 0 18px;color:#666;font:600 .72rem/1.4 var(--sans);letter-spacing:.16em}
.legal-page .legal-hero h1{max-width:820px;margin:0;font:600 clamp(2.8rem,5vw,4.8rem)/1.05 var(--sans);letter-spacing:-.035em}
.legal-page .legal-hero h1 br{display:none}
.legal-page .legal-hero h1 em{color:inherit;font-style:normal;font-weight:600}
.legal-page .legal-hero>p:last-child{position:static;max-width:none;margin:22px 0 0;padding:0;border:0;color:#666;font:400 .86rem/1.5 var(--sans);letter-spacing:0;text-transform:none}
.legal-page .legal-shell{display:block;max-width:900px;margin:0 auto;padding:72px 32px 120px}
.legal-page .legal-shell>aside{display:none}
.legal-page .legal-copy{font:400 1rem/1.75 var(--sans);color:#292929}
.legal-page .legal-copy .legal-lead{margin:0 0 54px;font:400 1.1rem/1.75 var(--sans);color:#292929}
.legal-page .legal-copy section{padding:0;margin:0;border:0}
.legal-page .legal-copy h2{margin:52px 0 16px;font:600 1.4rem/1.3 var(--sans);letter-spacing:0;color:#171717}
.legal-page .legal-copy h3{margin:30px 0 10px;font:600 1rem/1.4 var(--sans);letter-spacing:0;text-transform:none;color:#171717}
.legal-page .legal-copy p,.legal-page .legal-copy li{max-width:none}
.legal-page .legal-copy a{color:#171717;text-underline-offset:3px}
@media(max-width:800px){.legal-page .legal-hero{padding:115px 24px 42px}.legal-page .legal-hero h1{font-size:2.65rem}.legal-page .legal-shell{padding:52px 24px 90px}}
