@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Instrument+Serif:ital@0;1&display=swap');
:root{--ink:#0b0b0a;--paper:#efeee9;--muted:#aaa9a3;--orange:#f15a24;--line:rgba(239,238,233,.18);--serif:'Instrument Serif',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button{font:inherit}.skip{position:fixed;left:1rem;top:-5rem;background:var(--paper);color:var(--ink);padding:.75rem 1rem;z-index:99}.skip:focus{top:1rem}.wrap{width:min(1280px,calc(100% - 80px));margin:auto}.site-header{position:absolute;top:0;left:0;width:100%;height:100px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;z-index:10;border-bottom:1px solid rgba(255,255,255,.18)}.brand{font-size:.8rem;line-height:.95;letter-spacing:.16em}.brand span,.brand b{display:block}.brand b{color:var(--orange)}nav{display:flex;gap:2.2rem;align-items:center;font-size:.78rem;text-transform:uppercase;letter-spacing:.13em}nav a:not(.nav-cta):hover{color:var(--orange)}.nav-cta{border:1px solid rgba(255,255,255,.55);padding:.8rem 1rem}.menu{display:none;background:none;border:0;color:inherit;text-transform:uppercase;letter-spacing:.12em}.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;padding:170px 6vw 9vh}.hero-media,.hero-shade{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.72);transform:scale(1.02);animation:heroZoom 12s ease-out both}.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.2) 65%),linear-gradient(0deg,rgba(0,0,0,.85),transparent 50%)}.hero-copy{position:relative;z-index:2;max-width:950px}.eyebrow,.section-no{text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;font-weight:600}.eyebrow{color:#ddd;margin:0 0 1.6rem}.hero h1{font-size:clamp(4.5rem,10vw,9.5rem);font-weight:400;line-height:.75;letter-spacing:-.055em;margin:0}.hero h1 em,.contact h2 em,.statement em{font-family:var(--serif);font-weight:400;color:var(--orange)}.dek{font-size:clamp(1rem,1.6vw,1.25rem);max-width:510px;color:#d3d2ce;margin:2.2rem 0}.actions{display:flex;gap:.8rem;flex-wrap:wrap}.button{border:0;cursor:pointer;padding:1rem 1.25rem;text-transform:uppercase;letter-spacing:.12em;font-size:.7rem}.button span{margin-left:1.2rem}.primary{background:var(--orange);color:white}.ghost{background:rgba(10,10,10,.35);border:1px solid rgba(255,255,255,.45);color:white}.scroll-cue{position:absolute;z-index:2;right:4vw;bottom:4vh;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.16em;font-size:.65rem}.scroll-cue span{margin-top:1rem}.intro{display:grid;grid-template-columns:1fr 2fr;padding:10rem 0 7rem}.section-no{color:#777}.statement{font-family:var(--serif);font-size:clamp(2.8rem,5.7vw,5.8rem);line-height:.95;margin:0;max-width:900px}.project{margin-bottom:7rem}.project-media{position:relative;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#171716;overflow:hidden;cursor:pointer;display:block;color:white}.project-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s;filter:saturate(.8)}.project-media:hover img{transform:scale(1.035);filter:saturate(1)}.play-disc{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:4.2rem;height:4.2rem;border-radius:50%;background:var(--orange);font-size:.9rem;padding-left:.15rem;transition:transform .25s}.project-media:hover .play-disc{transform:translate(-50%,-50%) scale(1.1)}.project-copy{display:grid;grid-template-columns:1fr 2fr 1fr;gap:2rem;border-top:1px solid var(--line);padding-top:1rem;margin-top:1.2rem}.project-copy p{color:#777;text-transform:uppercase;letter-spacing:.15em;font-size:.65rem;margin:0}.project-copy h2{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,3.5vw,3.5rem);line-height:1;margin:0}.project-copy span{color:#8c8b86;font-size:.85rem}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.project-grid .project:nth-child(even){margin-top:8rem}.text-link,.about-copy a{display:inline-block;border-bottom:1px solid var(--orange);padding-bottom:.5rem;margin:0 0 8rem;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem}.text-link span,.about-copy a span{color:var(--orange);margin-left:1rem}.services{background:var(--paper);color:var(--ink);padding:9rem 0}.services .wrap{display:grid;grid-template-columns:1fr 1.6fr;gap:7rem}.services-head h2,.about h2{font-family:var(--serif);font-weight:400;font-size:clamp(3.5rem,6vw,6.8rem);line-height:.85;margin:3rem 0}.service-list article{display:grid;grid-template-columns:3rem 1fr;gap:0 1rem;border-top:1px solid #c8c6be;padding:2rem 0}.service-list article:last-child{border-bottom:1px solid #c8c6be}.service-list span{color:var(--orange);font-size:.7rem}.service-list h3{font-size:1.25rem;margin:0}.service-list p{grid-column:2;color:#65645f;max-width:470px;margin:.7rem 0 0}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:8rem;padding:11rem 0}.about-mark{border:1px solid var(--line);aspect-ratio:1;display:grid;place-items:center;position:relative}.about-mark>span{font-family:var(--serif);font-size:22vw;color:var(--orange);line-height:.7}.about-mark small{position:absolute;bottom:2rem;left:2rem;letter-spacing:.2em}.about-copy>p:not(.section-no){color:#aaa;font-size:1.1rem;max-width:640px}.about-copy a{margin-top:2rem}.clients{padding:2rem 0 9rem;border-top:1px solid var(--line)}.client-row{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:4rem;align-items:center}.client-row span{color:#777;font-weight:600;font-size:.85rem;line-height:1.15;letter-spacing:.08em}.contact{background:var(--orange);color:#fff;padding:10rem 0}.contact h2{font-family:var(--serif);font-size:clamp(5rem,11vw,11rem);font-weight:400;letter-spacing:-.04em;line-height:.75;margin:1rem 0 4rem}.contact h2 em{color:var(--ink)}.contact a{font-size:clamp(1rem,2vw,1.5rem);border-bottom:1px solid white;padding-bottom:.5rem}.contact a span{margin-left:1rem}footer{padding:2rem 4vw;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end;color:#777;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}footer p:nth-child(2){text-align:center}footer p:last-child{text-align:right}.video-modal{width:min(1100px,92vw);padding:0;border:0;background:#000;overflow:visible}.video-modal::backdrop{background:rgba(0,0,0,.92);backdrop-filter:blur(8px)}.video-frame{aspect-ratio:16/9}.video-frame iframe{width:100%;height:100%;border:0}.close{position:absolute;right:0;top:-2.5rem;background:none;color:white;border:0;cursor:pointer;text-transform:uppercase;letter-spacing:.1em}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}@keyframes heroZoom{from{transform:scale(1.08)}to{transform:scale(1.02)}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.site-header{height:76px;padding:0 20px}.menu{display:block}nav{position:absolute;top:76px;left:0;width:100%;background:var(--ink);padding:1.5rem 20px;display:none;flex-direction:column;align-items:flex-start;border-top:1px solid var(--line)}nav.open{display:flex}.hero{padding:130px 20px 9vh}.hero h1{font-size:clamp(4rem,20vw,6rem)}.scroll-cue{display:none}.intro{grid-template-columns:1fr;gap:2rem;padding:7rem 0 5rem}.project{margin-bottom:4rem}.project-grid{grid-template-columns:1fr;gap:0}.project-grid .project:nth-child(even){margin-top:0}.project-copy{grid-template-columns:1fr}.project-copy h2{font-size:2.4rem}.project-copy span{max-width:350px}.services{padding:7rem 0}.services .wrap{grid-template-columns:1fr;gap:2rem}.about{grid-template-columns:1fr;gap:4rem;padding:7rem 0}.about-mark{max-width:420px}.about-mark>span{font-size:60vw}.client-row{grid-template-columns:1fr 1fr;gap:3rem}.contact{padding:8rem 0}.contact h2{font-size:20vw}footer{grid-template-columns:1fr;gap:1.2rem}footer p:nth-child(2),footer p:last-child{text-align:left;margin:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-media img{animation:none}.reveal{opacity:1;transform:none;transition:none}}

/* Keep the Meru landscape clear while protecting headline contrast. */
.hero-media img{object-position:center center;filter:saturate(.82) contrast(1.05)}
.hero-shade{background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.32) 48%,rgba(0,0,0,.06) 78%),linear-gradient(0deg,rgba(0,0,0,.72),transparent 55%)}
