@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Manrope:wght@400;500;600&display=swap');
:root{--ink:#11110f;--paper:#f2eee7;--white:#fbfaf7;--gold:#c7a34e;--muted:#aea99f;--line:rgba(17,17,15,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px;line-height:1.55}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.skip{position:fixed;left:1rem;top:-5rem;z-index:99;background:var(--gold);padding:.8rem 1rem}.skip:focus{top:1rem}.topbar{position:absolute;z-index:20;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:1.4rem 4vw;border-bottom:1px solid rgba(255,255,255,.22);color:#fff}.brand img{width:180px;height:auto}.topbar nav{display:flex;gap:2rem;align-items:center;font-size:.86rem;letter-spacing:.04em}.topbar nav a{opacity:.82}.topbar nav a:hover,.topbar nav a:focus-visible{opacity:1}.nav-cta{border:1px solid rgba(255,255,255,.6);padding:.7rem 1rem}.menu{display:none;background:none;border:0;color:#fff}.hero{position:relative;min-height:100svh;background:#171612;color:#fff;display:grid;align-items:end;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,8,7,.9) 0%,rgba(8,8,7,.57) 44%,rgba(8,8,7,.08) 76%),linear-gradient(0deg,rgba(8,8,7,.7),transparent 45%)}.hero-content{position:relative;z-index:2;padding:12rem 7vw 8rem;max-width:900px}.eyebrow,.section-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.2em;font-weight:600}.eyebrow{color:var(--gold)}h1,h2{font-family:"Manrope",sans-serif;margin:0;line-height:1.06;letter-spacing:-.035em;font-weight:500}h1{font-size:clamp(3.4rem,7.2vw,7.5rem)}h1 em,h2 em{font-style:normal;color:var(--gold)}.lead{max-width:640px;font-size:clamp(1.05rem,1.6vw,1.35rem);color:rgba(255,255,255,.76);margin:2rem 0}.hero-actions{display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.button{display:inline-flex;padding:1rem 1.35rem;font-weight:600;letter-spacing:.03em}.button.gold{background:var(--gold);color:#15130e}.button:hover{transform:translateY(-2px)}.text-link{border-bottom:1px solid rgba(255,255,255,.5);padding:.8rem 0}.text-link span{color:var(--gold);margin-left:.6rem}.hero-note{position:absolute;z-index:2;right:4vw;bottom:2rem;text-transform:uppercase;letter-spacing:.18em;font-size:.68rem}.section{padding:8rem 7vw}.section-label{display:flex;align-items:center;gap:1rem;color:#5a574f}.section-label span{color:var(--gold)}.section-label.light{color:rgba(255,255,255,.55)}.intro{display:grid;grid-template-columns:.7fr 1.5fr 1fr;gap:4vw;align-items:start}.intro-copy .kicker{color:var(--gold);font-size:.85rem;text-transform:uppercase;letter-spacing:.12em}.intro h2,.audiences h2,.values h2{font-size:clamp(2.4rem,4.4vw,5rem);margin:.8rem 0 1.5rem}.intro-copy>p:last-child,.audience-intro>p,.values-head>p{font-size:1.08rem;color:#5f5c55;max-width:660px}.image-card img{aspect-ratio:4/5;object-fit:cover}.image-card figcaption{font-size:.8rem;color:#6b675f;margin-top:.8rem}.mission{grid-column:2/4;border-top:1px solid var(--line);padding-top:2rem;display:grid;grid-template-columns:.7fr 2fr;gap:2rem}.mission span{text-transform:uppercase;font-size:.76rem;letter-spacing:.15em;color:var(--gold)}.mission p{margin:0;font-size:1.25rem}.services{background:var(--ink);color:#fff;display:grid;grid-template-columns:.78fr 1.5fr;gap:7vw}.section-heading h2,.portfolio h2,.contact h2{font-size:clamp(3rem,5.7vw,6.3rem);margin:2rem 0}.section-heading>p{color:var(--muted);max-width:340px}.service-grid{list-style:none;padding:0;margin:0;border-top:1px solid rgba(255,255,255,.2)}.service-grid li{display:grid;grid-template-columns:60px 1fr;gap:1rem;padding:1.7rem 0;border-bottom:1px solid rgba(255,255,255,.2)}.service-grid b,.audience-list span,.value-grid span{color:var(--gold);font-size:.77rem;letter-spacing:.12em}.service-grid h3,.audience-list h3,.value-grid h3{margin:0 0 .35rem;font-size:1rem;text-transform:uppercase;letter-spacing:.08em}.service-grid p{margin:0;color:var(--muted)}.portfolio{background:#181816;color:#fff;padding:8rem 0 0}.portfolio-copy{padding:0 7vw 5rem}.portfolio-copy p{color:var(--muted)}.portfolio-grid{display:grid;grid-template-columns:1.6fr 1fr;height:62vw;max-height:780px}.portfolio-grid figure{margin:0;position:relative;overflow:hidden}.portfolio-grid img{width:100%;height:100%;object-fit:cover;filter:saturate(.8)}.portfolio-grid figure:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.58),transparent 40%)}.portfolio-grid figcaption{position:absolute;z-index:2;bottom:1.5rem;left:1.5rem;text-transform:uppercase;letter-spacing:.18em;font-size:.78rem}.audiences{display:grid;grid-template-columns:.7fr 1.3fr 1fr;gap:4vw}.audience-intro{grid-column:2/4}.audience-list{grid-column:2/4;border-top:1px solid var(--line)}.audience-list article{display:grid;grid-template-columns:45px 1.2fr 1.2fr;gap:1.5rem;padding:1.4rem 0;border-bottom:1px solid var(--line);align-items:baseline}.audience-list p{margin:0;color:#6d6961}.values{background:#e6dfd5;display:grid;grid-template-columns:.7fr 2.3fr;gap:4vw}.values-head{display:flex;justify-content:space-between;align-items:end;gap:2rem}.values-head p{margin-bottom:2rem}.value-grid{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.value-grid article{padding:2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:200px}.value-grid h3{margin-top:2rem}.value-grid p{color:#666159}.contact{background:var(--ink);color:#fff;padding:9rem 7vw 5rem;display:grid;grid-template-columns:1.5fr 1fr;gap:8vw}.contact-main>p:not(.eyebrow){color:var(--muted);max-width:550px;font-size:1.1rem}.contact .button{margin-top:1.5rem}address{align-self:end;font-style:normal;border-top:1px solid rgba(255,255,255,.25);padding-top:1.5rem}.address-title{color:var(--gold);text-transform:uppercase;letter-spacing:.15em;font-size:.76rem}.contact address div{display:grid;grid-template-columns:80px 1fr;padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.12)}.contact address span{color:var(--muted)}footer{background:#0b0b0a;color:#aaa;padding:2rem 7vw;display:flex;align-items:center;gap:2rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em}footer img{width:150px}footer a{margin-left:auto;color:var(--gold)}
@media(max-width:850px){.topbar{position:absolute;padding:1rem 5vw}.brand img{width:145px}.menu{display:flex;flex-direction:column;gap:7px;padding:.7rem;z-index:3}.menu span{display:block;width:25px;height:1px;background:#fff}.topbar nav{display:none;position:absolute;top:0;right:0;width:min(320px,88vw);padding:6rem 2rem 2rem;background:#171713;flex-direction:column;align-items:stretch}.topbar nav.open{display:flex}.hero-content{padding:10rem 6vw 6rem}.hero-shade{background:linear-gradient(0deg,rgba(8,8,7,.9),rgba(8,8,7,.18) 85%)}.hero-note{left:6vw;right:auto;bottom:1.5rem}.section{padding:6rem 6vw}.intro,.services,.audiences,.values,.contact{grid-template-columns:1fr}.intro-copy,.image-card,.mission,.section-heading,.service-grid,.audience-intro,.audience-list,.values-head,.value-grid{grid-column:1}.image-card{margin:1.5rem 0}.mission{grid-template-columns:1fr}.services{gap:3rem}.portfolio-copy{padding:0 6vw 3rem}.portfolio-grid{grid-template-columns:1fr;height:auto}.portfolio-grid figure{height:62vw;min-height:300px}.audiences{gap:2rem}.audience-list article{grid-template-columns:40px 1fr}.audience-list p{grid-column:2}.values{gap:2rem}.values-head{display:block}.value-grid{grid-template-columns:1fr 1fr}.contact{padding:6rem 6vw;gap:4rem}footer{padding:2rem 6vw;flex-wrap:wrap}footer p{display:none}}
@media(max-width:520px){h1{font-size:3.1rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:.5rem}.value-grid{grid-template-columns:1fr}.contact address div{grid-template-columns:1fr}.contact address a{overflow-wrap:anywhere}.portfolio-grid figure{height:90vw}}
@media(prefers-reduced-motion:no-preference){.button,.topbar nav a{transition:.2s ease}.hero-content{animation:reveal .8s ease-out both}@keyframes reveal{from{opacity:0;transform:translateY(24px)}}}
.flow{background:#d8cbb9}.flow-intro{display:grid;grid-template-columns:1.25fr 1fr;gap:6vw;align-items:end;margin:2.2rem 0 4rem}.flow-intro h2,.stories-head h2{font-size:clamp(2.7rem,5vw,5.8rem)}.flow-intro p{font-size:1.12rem;color:#5b554d;max-width:570px}.flow-steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(17,17,15,.25);border-left:1px solid rgba(17,17,15,.25)}.flow-steps article{padding:2rem;min-height:245px;border-right:1px solid rgba(17,17,15,.25);border-bottom:1px solid rgba(17,17,15,.25)}.flow-steps span,.story-copy span{color:#8c6b21;font-size:.74rem;text-transform:uppercase;letter-spacing:.14em}.flow-steps h3{font-family:"Manrope",sans-serif;font-size:1.4rem;margin:2.5rem 0 .7rem}.flow-steps p{color:#5d574f;margin:0}.why{margin-top:3rem;padding:2.2rem 0 0;border-top:1px solid rgba(17,17,15,.25);display:grid;grid-template-columns:1fr 2.2fr;gap:2rem}.why p{color:#8c6b21;text-transform:uppercase;letter-spacing:.16em;font-size:.76rem}.why strong{font-family:"Manrope",sans-serif;font-weight:500;font-size:clamp(1.7rem,3vw,3.2rem);line-height:1.2}.project-stories{background:var(--white)}.stories-head{margin:2rem 0 4rem;display:flex;justify-content:space-between;align-items:end;gap:4rem}.stories-head>p{max-width:520px;color:#666159;font-size:1.08rem}.stories-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:2.2rem}.stories-grid article{grid-column:span 4}.story-image{overflow:hidden;background:#ddd;aspect-ratio:4/5}.story-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.stories-grid article:hover img{transform:scale(1.025)}.story-copy{padding:1.5rem 0}.story-copy h3{font-family:"Manrope",sans-serif;font-size:1.7rem;margin:.5rem 0}.story-copy p{color:#666159;margin:0}
@media(max-width:850px){.flow-intro{grid-template-columns:1fr}.flow-steps{grid-template-columns:1fr 1fr}.why{grid-template-columns:1fr}.stories-head{display:block}.stories-head>p{margin-top:1.5rem}.stories-grid article{grid-column:span 12}.story-image{aspect-ratio:16/10}}
@media(max-width:520px){.flow-steps{grid-template-columns:1fr}}
.hero-video,.hero-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-poster{display:none}@media(prefers-reduced-motion:reduce){.hero-video{display:none}.hero-poster{display:block}}
