:root{
  --lime:#caff00;
  --cream:#f4f0e7;
  --black:#0b0b0b;
  --blue:#4f8fa9;
  --line:rgba(11,11,11,.18);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--black);font-family:"DM Sans",Arial,sans-serif}
a{color:inherit;text-decoration:none}
.site-header{position:absolute;z-index:10;top:0;left:0;width:100%;padding:22px 3.2vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:start;font-size:12px;font-weight:700}
.brand{display:flex;gap:18px;align-items:flex-start}.brand-mark{font-size:34px;line-height:.8;font-weight:900;letter-spacing:-2px}.brand-mark span{font-size:9px;vertical-align:top}.brand-sub{font-size:11px;line-height:1.05}
.nav{display:flex;gap:44px}.location{justify-self:end}
.hero{height:88vh;min-height:620px;position:relative;overflow:hidden;background:var(--blue)}
.hero-image{position:absolute;inset:0;background:linear-gradient(125deg,#5d9bb0 0%,#2b6984 48%,#8ba77c 100%)}
.image-placeholder{display:grid;place-items:center;color:rgba(255,255,255,.5);font-size:12px;letter-spacing:2px}
.hero-image:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,transparent 15%,rgba(0,0,0,.28) 100%)}
.hero-overlay{position:absolute;inset:0;padding:12vh 3.2vw 5vh;display:flex;flex-direction:column;justify-content:center}
.hero h1{font-family:"Archivo Black",Impact,sans-serif;font-size:clamp(90px,14.8vw,240px);line-height:.78;letter-spacing:-.065em;margin:0;position:relative;z-index:2;color:var(--lime)}
.hero h1 em{font-style:normal;margin-left:2.5vw}
.hero-tagline{font-size:27px;line-height:.95;margin:38px 0 0 1vw;color:white;font-weight:600}
.scribble{font-size:20px;line-height:1.0;font-weight:700;font-style:italic;transform:rotate(-7deg);color:var(--lime)}
.hero-overlay>.scribble{position:absolute;right:17%;top:13%;z-index:3}
.circle-link{margin:25px 0 0 1vw;border:1px solid white;color:white;width:44px;height:44px;border-radius:50%;display:grid;place-items:center}
.section{padding:90px 3.2vw;border-bottom:1px solid var(--line)}
.services{background:var(--lime)}
.section-head{display:grid;grid-template-columns:1.2fr 1fr auto;gap:40px;align-items:end;margin-bottom:38px}
.section-head.compact{grid-template-columns:1fr auto}
.eyebrow{font-size:12px;font-weight:700;margin-bottom:8px}
h2{font-family:"Archivo Black",Impact,sans-serif;font-size:clamp(54px,7vw,110px);line-height:.82;letter-spacing:-.05em;margin:0}
.serif{font-family:Georgia,serif;font-style:italic;font-size:27px;margin:8px 0 0}
.section-intro{font-size:16px;line-height:1.2;margin:0}
.text-link{font-weight:700;font-size:12px;white-space:nowrap}.text-link span{font-size:22px;margin-left:16px}
.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.service-card{position:relative;min-height:370px;background:#222;overflow:hidden;color:white}
.card-image{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .65s}
.service-card:hover .card-image{transform:scale(1.07);filter:saturate(1.15)}
.placeholder-film{background:linear-gradient(135deg,#243331,#82a34d 48%,#101010)}
.placeholder-photo{background:linear-gradient(135deg,#c5a27d,#6c4735 55%,#152c31)}
.placeholder-social{background:linear-gradient(135deg,#80a7aa,#284e55 50%,#151c1b)}
.placeholder-ai{background:linear-gradient(135deg,#17201c,#89a848 52%,#151515)}
.card-image span,.work-image span{font-size:10px;letter-spacing:2px;opacity:.35}
.card-content{position:absolute;inset:auto 22px 20px;z-index:2}.card-content h3{font-family:"Archivo Black",Impact,sans-serif;font-size:38px;line-height:.9;margin:0 0 14px;color:var(--lime);letter-spacing:-.04em}.card-content p{font-size:14px;line-height:1.12;margin:0}.arrow{position:absolute;right:0;bottom:0;font-size:25px}
.work{background:var(--cream)}
.work-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:28px;align-items:start}.work-large{grid-row:span 2}.work-image{height:250px;background:#aaa;display:grid;place-items:center;overflow:hidden}.work-large .work-image{height:560px}
.placeholder-work-1{background:linear-gradient(145deg,#69aeb5,#d3d0bb 50%,#355c40)}.placeholder-work-2{background:linear-gradient(145deg,#241c1c,#c04c2c,#f0b05c)}.placeholder-work-3{background:linear-gradient(145deg,#65784a,#1e2b19,#91a353)}.placeholder-work-4{background:linear-gradient(145deg,#3c94ad,#dbd5b4,#518e8c)}
.work-meta{display:flex;gap:14px;margin-top:12px;font-size:12px}.work-meta strong,.work-meta small{display:block}.work-meta small{opacity:.6;margin-top:3px}
.about{background:#ece7dc}.about-layout{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:35px;align-items:center}.body-copy{max-width:330px;font-size:16px;line-height:1.35;margin:28px 0}.pill-link{display:inline-flex;gap:30px;border:1px solid var(--black);padding:12px 17px;border-radius:999px;font-size:11px;font-weight:700}.about-image{min-height:390px;background:linear-gradient(145deg,#758e96,#343b35 55%,#9b9a77);position:relative}.bottom-scribble{position:absolute;left:30px;bottom:20px}.movement{font-family:"Archivo Black",Impact,sans-serif;font-size:clamp(42px,4.5vw,74px);line-height:.88;letter-spacing:-.045em;margin:0}
.contact{padding:90px 3.2vw;display:grid;grid-template-columns:auto 1fr auto auto;gap:35px;align-items:end;background:var(--lime)}.contact-title{font-family:"Archivo Black",Impact,sans-serif;font-size:clamp(55px,7vw,110px);line-height:.8;letter-spacing:-.05em}.contact-info{font-size:14px;line-height:1.3}.contact-info a{text-decoration:underline}.cta{border:1px solid var(--black);border-radius:999px;padding:16px 23px;font-size:11px;font-weight:800;white-space:nowrap}.cta span{font-size:20px;margin-left:28px}
.footer{padding:22px 3.2vw;display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;font-size:10px;align-items:center}.footer>strong{font-size:28px;letter-spacing:-2px}.footer>div{justify-self:end;display:flex;gap:25px}
@media(max-width:900px){
 .site-header{grid-template-columns:1fr auto}.nav{display:none}.location{display:none}
 .hero{height:78vh;min-height:570px}.hero h1{font-size:18vw}.hero-overlay>.scribble{right:7%;top:16%;font-size:15px}
 .section{padding:65px 5vw}.section-head{grid-template-columns:1fr;gap:18px}.section-head.compact{grid-template-columns:1fr}.section-intro{max-width:420px}.text-link{justify-self:start}
 .services-grid{grid-template-columns:1fr 1fr}.service-card{min-height:330px}
 .work-grid{grid-template-columns:1fr 1fr}.work-large{grid-row:auto}.work-large .work-image,.work-image{height:340px}
 .about-layout{grid-template-columns:1fr}.movement{max-width:600px}
 .contact{grid-template-columns:1fr;align-items:start}.cta{justify-self:start}.footer{grid-template-columns:1fr}.footer>div{justify-self:start}
}
@media(max-width:600px){
 .site-header{padding:18px 5vw}.brand-mark{font-size:29px}.brand-sub{font-size:9px}
 .hero{min-height:520px}.hero h1{font-size:20vw;line-height:.82}.hero h1 em{margin-left:0}.hero-tagline{font-size:21px;margin-top:26px}
 .services-grid,.work-grid{grid-template-columns:1fr}.service-card{min-height:360px}.work-large .work-image,.work-image{height:390px}
 .contact-title{font-size:17vw}
}
