:root{--black:#090a09;--panel:#121310;--paper:#f0ede5;--muted:#9b9c96;--line:rgba(240,237,229,.16);--accent:#ff5938;--pad:clamp(20px,5vw,88px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--black)}
body{margin:0;overflow-x:hidden;background:var(--black);color:var(--paper);font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}
body:before{position:fixed;z-index:20;inset:0;pointer-events:none;content:"";opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:soft-light}
::selection{color:var(--black);background:var(--accent)}
a{color:inherit;text-decoration:none}
button,input,select,textarea{color:inherit;font:inherit}
button,select{cursor:pointer}
button{border:0}
video{display:block;max-width:100%}
h1,h2,h3,p,figure,blockquote{margin:0}
:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.skip-link{position:fixed;z-index:200;top:8px;left:8px;padding:12px 16px;color:#000;background:#fff;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.eyebrow,.meta{color:var(--muted);font-family:"Courier New",monospace;font-size:.67rem;font-weight:700;letter-spacing:.12em;line-height:1.5;text-transform:uppercase}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.22,1,.36,1)}
.reveal.visible{opacity:1;transform:none}
.header{position:fixed;z-index:50;top:0;left:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;min-height:82px;padding:0 var(--pad);border-bottom:1px solid transparent;transition:.3s}
.header.scrolled{min-height:68px;border-color:var(--line);background:rgba(9,10,9,.88);backdrop-filter:blur(16px)}
.wordmark{justify-self:start;font-size:.8rem;font-weight:750;letter-spacing:.16em;text-transform:uppercase}
.header nav{display:flex;gap:clamp(22px,3vw,46px)}
.header nav a{font-size:.74rem;color:#d5d3cc}
.header nav a:hover{color:var(--accent)}
.header-cta{display:flex;align-items:center;justify-self:end;min-height:44px;gap:14px;padding:0 18px;border:1px solid var(--line);font-size:.69rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;transition:.25s}
.header-cta:hover{color:#000;background:var(--paper)}
.menu-button{display:none}
.hero{position:relative;display:grid;grid-template-columns:minmax(0,.87fr) minmax(420px,.86fr);align-items:center;min-height:100svh;gap:clamp(42px,6vw,110px);padding:128px var(--pad) 70px;background:radial-gradient(circle at 75% 45%,rgba(65,108,102,.14),transparent 34%),linear-gradient(135deg,#090a09 30%,#11130f)}
.hero:before{position:absolute;top:0;right:17%;width:1px;height:100%;content:"";background:linear-gradient(transparent,var(--line) 15%,var(--line) 85%,transparent)}
.hero-copy{z-index:1;max-width:730px;animation:hero-copy .9s cubic-bezier(.22,1,.36,1) both}
.hero-copy>.eyebrow{margin-bottom:24px}
.hero h1{font-size:clamp(3.5rem,6vw,7.2rem);font-weight:520;letter-spacing:-.075em;line-height:.89}
.hero h1 span{display:block;margin-bottom:22px;color:var(--accent);font-family:"Courier New",monospace;font-size:clamp(.7rem,1vw,.88rem);font-weight:700;letter-spacing:.18em;line-height:1;text-transform:uppercase}
.hero-lead{max-width:590px;margin-top:34px;color:#b1b3ac;font-size:clamp(1rem,1.35vw,1.22rem);line-height:1.65}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:37px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;gap:22px;padding:0 24px;border:1px solid transparent;background:transparent;font-size:.7rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase;transition:.25s}
.button:hover{transform:translateY(-2px)}
.button-accent{background:var(--accent)}
.button-accent:hover{color:#000;background:var(--paper)}
.button-ghost{border-color:var(--line)}
.button-ghost:hover{border-color:var(--paper)}
.availability{display:flex;align-items:center;gap:11px;margin-top:28px;color:var(--muted);font-family:"Courier New",monospace;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase}
.availability i{width:7px;height:7px;border-radius:50%;background:#95c685;box-shadow:0 0 0 5px rgba(149,198,133,.09)}
.hero-film{position:relative;justify-self:center;width:min(100%,620px);padding-left:56px;animation:hero-media 1s .1s cubic-bezier(.22,1,.36,1) both}
.side-meta{position:absolute;top:0;bottom:38px;left:0;display:flex;align-items:center;justify-content:space-between;color:#747671;font-family:"Courier New",monospace;font-size:.56rem;letter-spacing:.08em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg)}
.film-frame{position:relative;overflow:hidden;aspect-ratio:9/13;background:#151614;clip-path:inset(0 0 100% 0);animation:film-reveal 1s .2s cubic-bezier(.22,1,.36,1) forwards}
.film-frame:before{position:absolute;z-index:2;right:0;bottom:0;left:0;height:35%;content:"";pointer-events:none;background:linear-gradient(transparent,rgba(4,5,4,.65))}
.film-frame video{width:100%;height:100%;object-fit:cover;object-position:center 43%}
.center-play{position:absolute;z-index:3;top:50%;left:50%;display:grid;place-items:center;width:94px;height:94px;border:1px solid rgba(255,255,255,.55);border-radius:50%;color:#fff;background:rgba(8,9,8,.18);font-size:.65rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;backdrop-filter:blur(5px);transform:translate(-50%,-50%);transition:.25s}
.center-play:hover{background:rgba(255,89,56,.84);transform:translate(-50%,-50%) scale(1.05)}
.video-controls{position:absolute;z-index:3;right:14px;bottom:13px;left:14px;display:flex;gap:7px}
.video-controls button{min-height:44px;padding:0 12px;color:#fff;background:rgba(7,8,7,.65);font-family:"Courier New",monospace;font-size:.57rem;letter-spacing:.05em;text-transform:uppercase;backdrop-filter:blur(8px)}
.video-controls button:last-child{margin-left:auto}
.hero-film figcaption{display:flex;justify-content:space-between;gap:20px;padding-top:15px;color:var(--muted);font-family:"Courier New",monospace;font-size:.56rem;letter-spacing:.08em;text-transform:uppercase}
.service-line{position:absolute;right:var(--pad);bottom:26px;color:#6f716c;font-family:"Courier New",monospace;font-size:.57rem;letter-spacing:.1em;text-transform:uppercase}
.section{padding:clamp(100px,11vw,180px) var(--pad)}
.section-heading,.inside-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);align-items:end;gap:50px;margin-bottom:clamp(58px,8vw,116px)}
.section-heading h2,.inside h2,.why h2,.about h2,.expectations h2,.contact h2{margin-top:17px;font-size:clamp(3rem,6.5vw,7rem);font-weight:520;letter-spacing:-.068em;line-height:.93}
.section-heading>p,.inside-heading>p{max-width:470px;color:var(--muted);line-height:1.72}
.work{background:#0b0c0b}
.projects{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(60px,8vw,120px) clamp(24px,4vw,64px)}
.project{grid-column:1/span 8;display:grid;grid-template-columns:minmax(300px,.8fr) minmax(260px,1fr);align-items:end;gap:clamp(28px,4vw,52px)}
.project-offset{grid-column:6/span 7;margin-top:55px}
.project-wide{grid-column:2/span 10}
.project-media{position:relative;overflow:hidden;aspect-ratio:9/13.3;background:#151615}
.project-media:after{position:absolute;inset:0;content:"";pointer-events:none;background:linear-gradient(transparent 60%,rgba(4,5,4,.68))}
.project-media video{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.22,1,.36,1)}
.project:hover .project-media video{transform:scale(1.025)}
.preview-button{position:absolute;z-index:2;bottom:15px;left:15px;display:flex;align-items:center;min-height:48px;gap:11px;padding:0 14px 0 7px;color:#fff;background:rgba(8,9,8,.68);font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(8px)}
.preview-button b{display:grid;place-items:center;width:34px;height:34px;color:#000;background:var(--paper);font-size:.62rem}
.runtime{position:absolute;z-index:2;right:16px;bottom:31px;font-family:"Courier New",monospace;font-size:.58rem}
.project-copy{padding-bottom:10px;border-bottom:1px solid var(--line)}
.project-kicker{display:flex;justify-content:space-between;gap:18px;margin-bottom:23px;color:var(--muted);font-family:"Courier New",monospace;font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}
.project h3{font-size:clamp(2.3rem,3.8vw,4.8rem);font-weight:520;letter-spacing:-.062em;line-height:.94}
.project-copy>p:not(.project-kicker,.meta){max-width:540px;margin-top:23px;color:var(--muted);font-size:.94rem;line-height:1.72}
.project .meta{display:flex;flex-wrap:wrap;gap:8px 20px;margin:25px 0 27px;font-size:.56rem}
.text-link{display:inline-flex;align-items:center;min-height:44px;gap:18px;padding:0;color:var(--paper);background:transparent;font-size:.7rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.text-link span{transition:transform .25s}
.text-link:hover span{transform:translateX(5px)}
.manifesto{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.62fr);align-items:center;min-height:100svh;gap:8vw;padding:130px var(--pad);color:#090a09;background:var(--paper)}
.manifesto h2{font-size:clamp(4rem,9vw,10rem);font-weight:540;letter-spacing:-.085em;line-height:.82}
.manifesto h2 span{display:block;color:var(--accent)}
.manifesto p{max-width:590px;margin-top:50px;color:#4c4d48;font-size:clamp(1rem,1.4vw,1.22rem);line-height:1.7}
.manifesto-still{position:relative;min-height:570px;background:linear-gradient(transparent 60%,rgba(7,8,7,.35)),url("media/hero-poster.webp") center 44%/cover}
.manifesto-still:before,.manifesto-still:after{position:absolute;width:38px;height:38px;content:""}
.manifesto-still:before{top:-12px;left:-12px;border-top:1px solid var(--accent);border-left:1px solid var(--accent)}
.manifesto-still:after{right:-12px;bottom:-12px;border-right:1px solid var(--accent);border-bottom:1px solid var(--accent)}
.manifesto-still span{position:absolute;right:14px;bottom:13px;color:#fff;font-family:"Courier New",monospace;font-size:.58rem}
.services{background:#0a0b0a}
.service-list{border-top:1px solid var(--line)}
.service-list article{display:grid;grid-template-columns:80px minmax(220px,.65fr) minmax(260px,1fr) 30px;align-items:center;gap:30px;min-height:125px;border-bottom:1px solid var(--line);transition:.3s}
.service-list article:hover{padding:0 20px;background:#121311}
.service-list article>span,.edit-notes article>span,.why-list article>span{color:var(--accent);font-family:"Courier New",monospace;font-size:.61rem}
.service-list h3{font-size:clamp(1.4rem,2.2vw,2.5rem);font-weight:540;letter-spacing:-.04em}
.service-list p{max-width:560px;color:var(--muted);font-size:.92rem;line-height:1.65}
.service-list i{position:relative;width:28px;height:28px}
.service-list i:before,.service-list i:after{position:absolute;top:50%;left:50%;width:22px;height:1px;content:"";background:#62645f}
.service-list i:after{transform:rotate(90deg)}
.inside{background:#141513}
.film-strip{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:8px;min-height:480px}
.film-strip div{position:relative;background:url("media/hero-poster.webp") center/cover}
.film-strip div:nth-child(1){background-position:center 17%}
.film-strip div:nth-child(2){background-position:center 48%;filter:saturate(.7) contrast(1.08)}
.film-strip div:nth-child(3){background-position:center 78%;filter:hue-rotate(-12deg)}
.film-strip div:after{position:absolute;inset:0;content:"";background:linear-gradient(transparent 55%,rgba(6,7,6,.65))}
.film-strip span{position:absolute;z-index:1;bottom:15px;left:16px;font-family:"Courier New",monospace;font-size:.57rem;letter-spacing:.08em;text-transform:uppercase}
.edit-notes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:70px;border-top:1px solid var(--line)}
.edit-notes article{min-height:300px;padding:26px 23px;border-right:1px solid var(--line)}
.edit-notes article:first-child{padding-left:0}.edit-notes article:last-child{border-right:0}
.edit-notes h3{margin-top:78px;font-size:1.14rem;font-weight:600}
.edit-notes p{margin-top:17px;color:var(--muted);font-size:.81rem;line-height:1.65}
.why{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(500px,1fr);gap:8vw;background:#0a0b0a}
.why>header{position:sticky;top:130px;align-self:start}
.why-list{border-top:1px solid var(--line)}
.why-list article{position:relative;min-height:255px;padding:38px 30px 40px 86px;border-bottom:1px solid var(--line)}
.why-list article>span{position:absolute;top:42px;left:0}
.why-list h3{font-size:clamp(2rem,3.5vw,4rem);font-weight:520;letter-spacing:-.06em;line-height:1}
.why-list p{max-width:560px;margin-top:26px;color:var(--muted);line-height:1.7}
.process{color:#090a09;background:#dddbd3}.process .eyebrow,.process .section-heading>p{color:#666760}
.timeline{position:relative;display:grid;grid-template-columns:repeat(4,1fr)}
.timeline:before{position:absolute;top:41px;right:0;left:0;height:1px;content:"";background:rgba(8,9,8,.25)}
.timeline article{position:relative;padding-right:34px}
.timeline article>span{display:block;margin-bottom:24px;font-family:"Courier New",monospace;font-size:.61rem}
.timeline article>i{position:relative;z-index:1;display:block;width:13px;height:13px;margin-bottom:55px;border:3px solid #dddbd3;border-radius:50%;background:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.timeline h3{font-size:clamp(1.45rem,2vw,2.25rem);font-weight:550;letter-spacing:-.04em;line-height:1.05}
.timeline p{max-width:290px;margin-top:20px;color:#5d5e58;font-size:.9rem;line-height:1.65}
.about{display:grid;grid-template-columns:minmax(420px,.9fr) minmax(340px,.8fr);align-items:center;gap:9vw;background:#0b0c0b}
.about-visual{position:relative;min-height:680px}
.about-visual div{position:absolute;background-size:cover;background-position:center;box-shadow:0 28px 70px rgba(0,0,0,.35)}
.about-visual div:nth-child(1){top:0;left:0;width:53%;height:72%;background-image:url("media/project-2.webp")}
.about-visual div:nth-child(2){z-index:2;top:21%;right:4%;width:55%;height:69%;border:8px solid #0b0c0b;background-image:url("media/hero-poster.webp")}
.about-visual div:nth-child(3){z-index:3;right:26%;bottom:0;width:27%;height:32%;border:6px solid #0b0c0b;background-image:url("media/project-3.webp");filter:grayscale(1)}
.about-visual>span{position:absolute;bottom:4%;left:0;color:#777a74;font-family:"Courier New",monospace;font-size:.56rem;letter-spacing:.1em;writing-mode:vertical-rl;transform:rotate(180deg)}
.about-copy>p{max-width:600px;margin-top:24px;color:var(--muted);line-height:1.72}
.about-copy .about-lead{margin-top:38px;color:var(--paper);font-size:clamp(1.25rem,1.8vw,1.7rem);line-height:1.48}
.about blockquote{max-width:620px;margin-top:52px;padding:28px 0 0 28px;border-top:1px solid var(--line);border-left:2px solid var(--accent);color:#a7a9a3;line-height:1.7}
.about blockquote strong{display:block;color:var(--paper);font-size:1.35rem;font-weight:540}
.expectations{display:grid;grid-template-columns:.75fr 1fr;gap:8vw;color:#090a09;background:var(--paper)}
.expectations header{position:sticky;top:130px;align-self:start}
.expectations .eyebrow{color:#676862}
.expectations ol{padding:0;margin:0;list-style:none;border-top:1px solid rgba(8,9,8,.2)}
.expectations li{display:grid;grid-template-columns:50px 1fr;align-items:center;min-height:92px;border-bottom:1px solid rgba(8,9,8,.2);font-size:clamp(1.05rem,1.6vw,1.45rem);font-weight:550}
.expectations li span{color:var(--accent);font-family:"Courier New",monospace;font-size:.58rem}
.contact{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(500px,1fr);gap:10vw;padding:clamp(100px,11vw,180px) var(--pad);background:linear-gradient(130deg,rgba(255,89,56,.12),transparent 35%),#111210}
.contact-copy{position:sticky;top:130px;align-self:start}
.contact-copy>p:not(.eyebrow){max-width:530px;margin-top:32px;color:var(--muted);line-height:1.72}
.contact-copy .text-link{margin-top:30px}
form{display:grid;gap:20px;padding:clamp(24px,4vw,52px);border:1px solid var(--line);background:rgba(6,7,6,.42)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
form label{display:grid;gap:9px}
form label>span{color:#a9aaa4;font-family:"Courier New",monospace;font-size:.6rem;letter-spacing:.07em;text-transform:uppercase}
form input,form select,form textarea{width:100%;min-height:50px;padding:13px 0;border:0;border-bottom:1px solid #3b3d38;border-radius:0;outline:0;color:var(--paper);background:transparent;font-size:.9rem}
form textarea{min-height:128px;resize:vertical}
form select{color-scheme:dark}
form input:focus,form select:focus,form textarea:focus{border-color:var(--accent)}
form input::placeholder,form textarea::placeholder{color:#62645f}
.form-submit{width:100%;color:#000;background:var(--paper)}
.form-submit:hover{color:#fff;background:var(--accent)}
.form-status{min-height:18px;color:#9ab68f;font-family:"Courier New",monospace;font-size:.63rem}
footer{display:grid;grid-template-columns:1.2fr 1fr .7fr;gap:40px;padding:70px var(--pad) 32px;border-top:1px solid var(--line)}
footer>a{font-size:clamp(2.4rem,4.7vw,5.5rem);font-weight:520;letter-spacing:-.07em;line-height:.9}
footer div p{color:var(--muted);font-size:.75rem;line-height:1.8}
footer nav{display:grid;align-self:start;gap:12px;font-size:.75rem}
footer small{grid-column:1/-1;margin-top:65px;padding-top:20px;border-top:1px solid var(--line);color:#656762;font-family:"Courier New",monospace;font-size:.54rem;letter-spacing:.08em;text-transform:uppercase}
dialog{width:min(1060px,calc(100% - 40px));max-height:calc(100svh - 40px);padding:clamp(20px,4vw,50px);border:1px solid var(--line);color:var(--paper);background:#10110f;box-shadow:0 40px 100px rgba(0,0,0,.58)}
dialog::backdrop{background:rgba(1,2,1,.87);backdrop-filter:blur(14px)}
dialog[open]{display:grid;grid-template-columns:minmax(290px,.72fr) minmax(300px,.8fr);align-items:center;gap:clamp(30px,5vw,72px);animation:dialog-in .35s cubic-bezier(.22,1,.36,1)}
.dialog-close{position:absolute;z-index:2;top:14px;right:16px;min-height:44px;padding:0 10px;color:#fff;background:rgba(8,9,8,.75);font-size:.64rem;letter-spacing:.07em;text-transform:uppercase}
.dialog-close span{margin-left:8px;color:var(--accent);font-size:1.25rem}
.dialog-media{justify-self:center;width:min(100%,390px)}
.dialog-media video{width:100%;aspect-ratio:9/16;background:#050605}
.dialog-copy h2{margin-top:16px;font-size:clamp(3rem,5vw,5.7rem);font-weight:520;letter-spacing:-.07em;line-height:.92}
.dialog-copy>p:not(.eyebrow){margin-top:24px;color:var(--muted);line-height:1.7}
.dialog-copy .meta{display:block;margin-top:22px}
@keyframes hero-copy{from{opacity:0;transform:translateY(24px)}}@keyframes hero-media{from{opacity:0;transform:translateX(32px)}}@keyframes film-reveal{to{clip-path:inset(0)}}@keyframes dialog-in{from{opacity:0;transform:translateY(22px) scale(.985)}}
@media(max-width:1100px){.hero{grid-template-columns:minmax(0,.9fr) minmax(370px,.72fr);gap:42px}.project{grid-column:1/-1}.project-offset{margin-left:12%}.project-wide{margin-right:10%}.edit-notes{grid-template-columns:repeat(3,1fr)}.edit-notes article{border-bottom:1px solid var(--line)}}
@media(max-width:900px){:root{--pad:28px}.header{grid-template-columns:1fr auto;min-height:70px}.header nav{position:absolute;top:100%;right:0;left:0;display:grid;gap:0;padding:18px 28px 28px;border-bottom:1px solid var(--line);background:rgba(9,10,9,.98);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.25s}.header nav.open{opacity:1;visibility:visible;transform:none}.header nav a{display:flex;align-items:center;min-height:49px;border-bottom:1px solid var(--line);font-size:1rem}.header-cta{display:none}.menu-button{display:flex;align-items:center;justify-content:flex-end;min-height:44px;gap:12px;color:#fff;background:transparent;font-family:"Courier New",monospace;font-size:.63rem;text-transform:uppercase}.menu-button i{position:relative;width:18px;height:1px;background:currentColor}.menu-button i:after{position:absolute;top:5px;left:0;width:18px;height:1px;content:"";background:currentColor}.hero{grid-template-columns:1fr;min-height:auto;gap:50px;padding-top:122px}.hero:before{display:none}.hero h1{font-size:clamp(4rem,11vw,6.3rem)}.hero-film{width:min(100%,650px);margin-left:auto}.film-frame{aspect-ratio:4/5}.service-line{position:static;grid-column:1;margin-top:-16px}.section-heading,.inside-heading,.why,.about,.expectations,.contact{grid-template-columns:1fr}.manifesto{grid-template-columns:1fr;min-height:auto}.manifesto-still{width:60%;min-height:540px;margin-left:auto}.why>header,.expectations header,.contact-copy{position:static}.timeline{grid-template-columns:1fr 1fr;gap:70px 24px}.timeline:before{display:none}.about-visual{width:min(100%,700px)}.contact{gap:70px}}
@media(max-width:650px){:root{--pad:18px}.header{padding:0 18px}.wordmark{font-size:.72rem}.hero{min-height:100svh;gap:38px;padding-top:103px;padding-bottom:50px}.hero-copy>.eyebrow{margin-bottom:17px}.hero h1{font-size:clamp(3.15rem,15vw,4.65rem);line-height:.89}.hero h1 span{margin-bottom:15px}.hero-lead{margin-top:23px;font-size:.95rem;line-height:1.55}.hero-actions{margin-top:26px}.hero-actions .button{width:100%}.availability{margin-top:22px}.hero-film{padding-left:0}.side-meta{display:none}.film-frame{aspect-ratio:9/12.3}.center-play{width:76px;height:76px}.hero-film figcaption{font-size:.51rem}.section{padding-top:90px;padding-bottom:90px}.section-heading,.inside-heading{grid-template-columns:1fr;gap:28px;margin-bottom:50px}.section-heading h2,.inside h2,.why h2,.about h2,.expectations h2,.contact h2{font-size:clamp(2.8rem,14vw,4.55rem)}.work{overflow:hidden}.projects{display:grid;grid-template-columns:minmax(0,1fr);gap:92px}.project,.project-offset,.project-wide{grid-column:1/-1;grid-template-columns:minmax(0,1fr);min-width:0;width:100%;margin:0}.project-media,.project-offset .project-media{width:100vw;max-width:none;margin-left:-18px;aspect-ratio:9/16}.project-media video{object-position:center}.preview-button{bottom:18px;left:18px}.runtime{right:18px;bottom:34px}.project-copy{width:100%;padding-top:4px}.project h3{font-size:clamp(2.5rem,12vw,4rem)}.manifesto{display:block;padding:98px 18px}.manifesto h2{font-size:clamp(3.9rem,18vw,6.4rem)}.manifesto p{margin-top:34px}.manifesto-still{width:68%;min-height:375px;margin-top:58px}.service-list article{grid-template-columns:44px 1fr 26px;gap:12px;min-height:110px;padding:20px 0}.service-list article:hover{padding:20px 0}.service-list p{grid-column:2/-1;padding-right:16px}.service-list i{grid-column:3;grid-row:1}.film-strip{grid-template-columns:.8fr 1.2fr;min-height:390px}.film-strip div:nth-child(3){display:none}.edit-notes{grid-template-columns:1fr;margin-top:48px}.edit-notes article,.edit-notes article:first-child{min-height:auto;padding:28px 0;border-right:0}.edit-notes h3{margin-top:24px;font-size:1.35rem}.why{gap:58px}.why-list article{min-height:auto;padding:34px 0 38px 43px}.why-list h3{font-size:2.3rem}.timeline{grid-template-columns:1fr;gap:0;padding-left:30px}.timeline:before{display:block;top:0;bottom:0;left:5px;width:1px;height:auto}.timeline article{min-height:215px;padding:0 0 48px 18px}.timeline article>i{position:absolute;top:2px;left:-31px}.about{gap:66px}.about-visual{min-height:480px}.about-copy .about-lead{margin-top:29px}.expectations{gap:52px}.expectations li{min-height:80px}.contact{gap:52px;padding:90px 18px}form{padding:24px 18px}.form-grid{grid-template-columns:1fr}footer{grid-template-columns:1fr;padding:62px 18px 30px}footer small{margin-top:30px}dialog{width:calc(100% - 24px);padding:16px}dialog[open]{grid-template-columns:1fr;align-items:start;gap:28px}.dialog-media{width:min(100%,310px)}.dialog-copy h2{font-size:3.15rem}}
@media(max-width:360px){.hero h1{font-size:3rem}.button{padding:0 17px}.preview-button{right:10px;bottom:10px;left:10px}}
@media(max-width:650px){
  .work .section-heading{
    justify-items:start;
    width:100%;
    text-align:left;
  }
  .work .section-heading>p{
    width:100%;
    max-width:none;
    margin:0;
  }
  .project-copy{
    width:100%;
    max-width:none;
    margin:0;
    padding-top:26px;
    text-align:left;
  }
  .project-kicker{
    justify-content:space-between;
    flex-wrap:nowrap;
    gap:16px;
    margin-bottom:20px;
    line-height:1.5;
  }
  .project-kicker span:last-child{
    text-align:right;
  }
  .project h3{
    width:100%;
    max-width:none;
    margin:0;
    font-size:clamp(2.45rem,10.5vw,3.55rem);
    line-height:.96;
  }
  .project-copy>p:not(.project-kicker,.meta){
    width:100%;
    max-width:none;
    margin-right:0;
    margin-left:0;
    font-size:.96rem;
    line-height:1.68;
  }
  .project .meta{
    justify-content:flex-start;
    width:100%;
    max-width:none;
    margin-right:0;
    margin-left:0;
    line-height:1.65;
  }
  .project-copy .text-link{
    justify-content:flex-start;
    margin-right:0;
    margin-left:0;
  }
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.film-frame{clip-path:none}}
