/* Homepage redesign, scoped to main so the header and inner pages stay intact. */
body.z7-cinematic-home main { --gold:#a9bad0;--cyan:#a9bad0;--green:#a9bad0;--red:#a9bad0;--violet:#a9bad0;--text:#f4f2ee;--muted:#aaa9a6;--dim:#777775;--line:rgba(255,255,255,.16);color:var(--text);background:#050505 }
body.z7-cinematic-home main :is(.service-loop,.chapter,.manifest) { background-color:#050505 }
body.z7-cinematic-home main :is(.service-loop,.chapter) { border-top:1px solid rgba(255,255,255,.13) }
body.z7-cinematic-home main :is(.eyebrow,.chapter__number) { color:#b7b2a8 }
body.z7-cinematic-home main .eyebrow { font-size:.7rem;letter-spacing:.28em;text-transform:uppercase }
body.z7-cinematic-home main :is(.chapter__intro h2,.pin-copy h2,.web-copy h2,.reach-copy h2,.film-copy h2,.ai-heading h2,.studio-suite__intro h2) { color:#f4f2ee;font-weight:550;letter-spacing:-.055em;text-wrap:balance }
body.z7-cinematic-home main .chapter__number { font-weight:500;letter-spacing:-.09em }
body.z7-cinematic-home main .button { --button-shine:rgba(255,255,255,.17);border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.055);color:#f4f2ee }
body.z7-cinematic-home main .button:hover { border-color:rgba(255,255,255,.75);background:rgba(255,255,255,.14) }

/* Poster-backed editorial index replaces the floating service badges. */
body.z7-cinematic-home main .service-loop { padding:clamp(90px,11vw,170px) clamp(20px,5vw,80px);background:#050505 }
body.z7-cinematic-home main .service-loop__inner { width:min(1540px,100%);display:block }
body.z7-cinematic-home main .service-loop__intro { display:block;margin-bottom:clamp(38px,6vw,90px) }
body.z7-cinematic-home main .service-loop__intro h2 { max-width:1000px;margin-top:22px;font-size:clamp(3.2rem,6.1vw,7.7rem);font-weight:520;line-height:.93;letter-spacing:-.065em }
body.z7-cinematic-home main .service-orbit { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.17);border:1px solid rgba(255,255,255,.17) }
body.z7-cinematic-home main .service-card { min-height:clamp(230px,24vw,370px);padding:clamp(19px,2.2vw,34px);display:flex;flex-direction:column;justify-content:space-between;border:0;border-radius:0;background:#0b0b0b;animation:none;isolation:isolate }
body.z7-cinematic-home main .service-card::before { inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.72)),var(--service-image) center/cover;opacity:.64;animation:none;transition:opacity .5s ease,transform .7s ease;z-index:-1 }
body.z7-cinematic-home main .service-card:hover::before { opacity:.95;transform:scale(1.04) }
body.z7-cinematic-home main .service-card span { width:auto;height:auto;margin:0;place-items:unset;border:0;border-radius:0;background:none;color:#fff;font-size:.72rem;letter-spacing:.26em }
body.z7-cinematic-home main .service-card strong { max-width:260px;font-size:clamp(1.6rem,2.2vw,3rem);font-weight:550;letter-spacing:-.05em;line-height:1 }

/* A different visual rhythm for each film chapter. */
body.z7-cinematic-home main .chapter { padding:clamp(85px,9vw,145px) clamp(22px,5vw,80px) }
body.z7-cinematic-home main .chapter--architecture { background:#0b0b0b }
body.z7-cinematic-home main .chapter--architecture .chapter__intro { width:min(1540px,100%);grid-template-columns:100px minmax(0,1.15fr) minmax(240px,.45fr);align-items:start;margin-bottom:clamp(55px,7vw,110px) }
body.z7-cinematic-home main .chapter--architecture .chapter__intro h2 { max-width:1000px;font-size:clamp(3rem,5.8vw,7.2rem);line-height:.96 }
body.z7-cinematic-home main .stats-strip { width:min(1540px,100%);margin-bottom:clamp(60px,7vw,110px);border:0;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);border-radius:0;background:transparent }
body.z7-cinematic-home main .stats-strip div { background:transparent;border-right:1px solid rgba(255,255,255,.15) }
body.z7-cinematic-home main .stats-strip div:last-child { border-right:0 }
body.z7-cinematic-home main .immersive-gallery { margin-top:clamp(85px,11vw,170px) }
body.z7-cinematic-home main .gallery-copy h3 { font-size:clamp(2.6rem,5vw,6rem);letter-spacing:-.06em;line-height:.98 }
body.z7-cinematic-home main :is(.media-tile,.manifest__media,.film-player,.compare) { border-radius:2px;border-color:rgba(255,255,255,.2) }
body.z7-cinematic-home main .chapter--horizontal { background:#030303;min-height:90vh;grid-template-columns:minmax(320px,35%) 1fr;gap:6vw }
body.z7-cinematic-home main .pin-copy h2 { font-size:clamp(3.1rem,4.4vw,6rem);line-height:.96 }
body.z7-cinematic-home main .media-rail .media-tile { width:clamp(270px,28vw,480px);min-height:clamp(400px,43vw,680px) }
body.z7-cinematic-home main .chapter--web { min-height:85vh;padding:0;background:#060606 }
body.z7-cinematic-home main .web-stage { position:relative;width:100%;min-height:85vh;display:flex;align-items:end;padding:clamp(70px,8vw,130px) clamp(22px,6vw,100px);background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.35) 65%,rgba(0,0,0,.05)),linear-gradient(0deg,#050505,transparent 50%),url('/media/posters/website_project/26.jpg') center/cover }
body.z7-cinematic-home main .web-copy { position:relative;z-index:1;max-width:850px;margin:0;text-align:left;justify-items:start }
body.z7-cinematic-home main .web-stage { isolation:isolate;background:#050505 }
body.z7-cinematic-home main .web-stage__video { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.82;filter:saturate(.8) brightness(.78);z-index:0 }
body.z7-cinematic-home main .web-stage::after { position:absolute;inset:0;z-index:1;pointer-events:none;content:"";background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.48) 63%,rgba(0,0,0,.18)),linear-gradient(0deg,#050505,transparent 42%,rgba(0,0,0,.15)) }
body.z7-cinematic-home main .web-copy { z-index:2 }
body.z7-cinematic-home main .web-copy h2 { font-size:clamp(3.6rem,6.2vw,8.3rem);line-height:.94 }
body.z7-cinematic-home main .web-copy p:not(.eyebrow):not(.chapter__number) { max-width:510px }
body.z7-cinematic-home main .chapter--reach { min-height:75vh;grid-template-columns:minmax(0,1.2fr) minmax(290px,.65fr);background:#101010 }
body.z7-cinematic-home main .reach-copy { justify-self:start;max-width:850px }
body.z7-cinematic-home main .reach-copy h2 { font-size:clamp(3.5rem,6vw,7.8rem);line-height:.94 }
body.z7-cinematic-home main .reach-metric { min-height:380px;border:0;border-left:1px solid rgba(255,255,255,.24);border-radius:0;box-shadow:none;background:transparent }
body.z7-cinematic-home main .reach-metric::before { display:none }
body.z7-cinematic-home main .reach-metric strong { text-shadow:none;font-weight:500;letter-spacing:-.09em }
body.z7-cinematic-home main .chapter--presentations { background:#050505 }
body.z7-cinematic-home main .chapter--presentations .chapter__intro { width:min(1540px,100%);margin-bottom:70px }
body.z7-cinematic-home main .chapter--presentations h2 { max-width:1000px;font-size:clamp(3.2rem,6vw,7.8rem);line-height:.94 }
body.z7-cinematic-home main .presentation-stack { width:min(1540px,100%);gap:2px;perspective:none }
body.z7-cinematic-home main .presentation-stack .media-tile { min-height:clamp(350px,36vw,610px);transform:none }
body.z7-cinematic-home main .presentation-stack .media-tile:hover { transform:none }
body.z7-cinematic-home main .chapter--film { min-height:90vh;grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);background:#0d0d0d }
body.z7-cinematic-home main .film-copy h2 { font-size:clamp(3rem,4.5vw,6rem);line-height:.97 }
body.z7-cinematic-home main .film-player { min-height:clamp(470px,52vw,760px);border-radius:2px }
body.z7-cinematic-home main .chapter--ai { display:block;background:#050505;text-align:left }
body.z7-cinematic-home main .ai-heading { width:min(1540px,100%);justify-items:start;margin:0 auto clamp(55px,6vw,95px) }
body.z7-cinematic-home main .ai-heading h2 { max-width:1100px;font-size:clamp(3.5rem,6.2vw,8rem);line-height:.95 }
body.z7-cinematic-home main .timeline { width:min(1540px,100%);margin:0 auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:visible;border:1px solid rgba(255,255,255,.16);border-radius:0;background:rgba(255,255,255,.16) }
body.z7-cinematic-home main .timeline article { min-height:250px;padding:clamp(22px,2.3vw,36px);background:#111;transition:background .25s ease }
body.z7-cinematic-home main .timeline article:hover { background:#1c1c1c }
body.z7-cinematic-home main .timeline span { color:#b7b2a8 }
body.z7-cinematic-home main .button--wide { width:min(1540px,100%);margin:30px auto 0 }

body.z7-cinematic-home main .chapter--studio-suite { display:block;background:#0b0b0b }
body.z7-cinematic-home main .studio-suite__intro { max-width:1540px;margin:0 auto clamp(60px,7vw,110px);grid-template-columns:minmax(0,1.3fr) minmax(240px,.6fr);column-gap:8vw;align-items:end }
body.z7-cinematic-home main .studio-suite__intro :is(.chapter__number,.eyebrow,.studio-signals,.behance-cta) { grid-column:1 / -1 }
body.z7-cinematic-home main .studio-suite__intro h2 { max-width:1000px;font-size:clamp(3.2rem,5.8vw,7.4rem);line-height:.94 }
body.z7-cinematic-home main .studio-suite__grid { width:min(1540px,100%);margin:auto;gap:2px }
body.z7-cinematic-home main .studio-card { min-height:clamp(410px,39vw,620px);border:0;border-radius:0 }
body.z7-cinematic-home main .studio-card__image { opacity:.76;filter:saturate(.75) contrast(1.07) brightness(.72) }
body.z7-cinematic-home main .studio-signals span { background:none;border-color:rgba(255,255,255,.2) }
@media (max-width:900px) { body.z7-cinematic-home main .service-orbit{grid-template-columns:repeat(2,minmax(0,1fr))}body.z7-cinematic-home main .chapter--architecture .chapter__intro{grid-template-columns:62px 1fr}body.z7-cinematic-home main .chapter--architecture .chapter__intro>p:last-child{grid-column:2}body.z7-cinematic-home main .timeline{grid-template-columns:repeat(2,minmax(0,1fr))}body.z7-cinematic-home main .chapter--reach{grid-template-columns:1fr}body.z7-cinematic-home main .reach-metric{border-left:0;border-top:1px solid rgba(255,255,255,.2)}body.z7-cinematic-home main .chapter--film{grid-template-columns:1fr}body.z7-cinematic-home main .studio-suite__intro{grid-template-columns:1fr} }
@media (max-width:640px) { body.z7-cinematic-home main .service-orbit{grid-template-columns:repeat(2,minmax(0,1fr))}body.z7-cinematic-home main .service-card{min-height:210px}body.z7-cinematic-home main .service-card strong{font-size:clamp(1.35rem,5vw,2rem)}body.z7-cinematic-home main .chapter--architecture .chapter__intro{display:block}body.z7-cinematic-home main .chapter--architecture .chapter__intro>*{margin-bottom:20px}body.z7-cinematic-home main .stats-strip{grid-template-columns:repeat(3,1fr)}body.z7-cinematic-home main .chapter--horizontal{display:block}body.z7-cinematic-home main .pin-copy{margin-bottom:45px}body.z7-cinematic-home main .media-rail .media-tile{width:72vw;min-height:94vw}body.z7-cinematic-home main .web-stage{min-height:75vh;background-position:55% center}body.z7-cinematic-home main .presentation-stack{grid-template-columns:1fr}body.z7-cinematic-home main .film-player{min-height:57vh}body.z7-cinematic-home main .timeline{grid-template-columns:1fr}body.z7-cinematic-home main .timeline article{min-height:160px}body.z7-cinematic-home main .studio-suite__grid{grid-template-columns:1fr}body.z7-cinematic-home main .studio-card{min-height:70vw} }
