:root{--gold:#c9a96e;--gold2:#ead6a6;--ink:#0f0f0f;--ch:#181818;--cream:#f5f1ea}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#e9e9e9;font:17px/1.7 Questrial,"Century Gothic","Didact Gothic",sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%}a{color:inherit}.wrap{max-width:1240px;margin:auto;padding:0 28px;position:relative}
h1,h2,h3,h4,.eyebrow,.btn,nav a,.brand,.stats b,.timeline b,.five i,.filters button,.views,.ticker{font-family:"Bebas Neue",Impact,sans-serif;font-weight:400;letter-spacing:.03em}
h1{font-size:clamp(54px,8.4vw,128px);line-height:.92;margin:.15em 0 .3em;max-width:13ch}
h2{font-size:clamp(40px,5.2vw,76px);line-height:.98;margin:.1em 0 .45em;max-width:18ch}h3{font-size:32px;margin:0 0 6px}h4{font-size:26px;margin:0 0 4px}
.gold{background:linear-gradient(180deg,var(--gold2),var(--gold) 60%,#9c7c45);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{color:var(--gold);font-size:19px;letter-spacing:.2em;margin:0}.lead{font-size:clamp(18px,1.6vw,21px);max-width:620px;color:#bdbdbd}.muted{color:#777;font-size:15px}
section{padding:clamp(80px,11vw,150px) 0;position:relative;overflow:hidden}
.dark{background:var(--ink)}.dark:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.light{background:var(--cream);color:#1b1b1b}.light .lead,.light p{color:#4a4a4a}.light .eyebrow{color:#9c7c45}.white{background:#fff;color:#1b1b1b}.white .eyebrow{color:#9c7c45}
.glow{position:absolute;width:900px;height:900px;right:-250px;top:-300px;background:radial-gradient(circle,#c9a96e2e,transparent 60%);pointer-events:none}
/* header */
header{position:fixed;inset:0 0 auto;z-index:20;transition:.3s}header.s{background:#0f0f0fd9;backdrop-filter:blur(12px);box-shadow:0 1px 0 #c9a96e30}
.nav{display:flex;align-items:center;justify-content:space-between;height:78px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:26px;color:#fff}.brand img{height:34px}.brand em{font-style:normal;color:var(--gold);margin-left:6px}
nav{display:flex;gap:30px;align-items:center}nav a{text-decoration:none;font-size:20px;color:#ddd;position:relative}nav a:not(.btn):after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:0;background:var(--gold);transition:.3s}nav a:hover:after{width:100%}
.btn{display:inline-block;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#111!important;padding:9px 22px;border-radius:40px;border:0;cursor:pointer;text-decoration:none;font-size:20px;transition:.25s}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px #c9a96e55}.btn.big{font-size:23px;padding:14px 34px}
.burger{display:none;background:none;border:0;width:34px;padding:0;cursor:pointer}.burger i{display:block;height:2px;background:var(--gold);margin:7px 0}
/* hero */
.hero{padding-top:170px;padding-bottom:0;min-height:100vh}.hero h1{position:relative;z-index:2}.hero-row{display:flex;gap:40px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;position:relative;z-index:2}
.cta{display:flex;gap:26px;align-items:center}.link{color:var(--gold2);text-decoration:none;font-size:18px}
.hero-crest{position:absolute;right:20px;top:-30px;width:min(34vw,400px);opacity:.92;z-index:1;animation:float 7s ease-in-out infinite}@keyframes float{50%{transform:translateY(-14px)}}
.stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:90px;border-top:1px solid #ffffff1c}.stats div{padding:34px 20px 40px 0}.stats b{display:block;font-size:clamp(48px,5.5vw,84px);line-height:1;color:#fff}.stats span{color:#9a9a9a;font-size:15px}
.ticker{border-block:1px solid #c9a96e40;overflow:hidden;white-space:nowrap;color:var(--gold);font-size:28px;padding:14px 0}.ticker div{display:inline-block;animation:mq 30s linear infinite}
/* about */
.split{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;align-items:start}
.tl-head{display:flex;justify-content:space-between;align-items:end;margin-top:80px}.arrows button{width:48px;height:48px;border-radius:50%;border:1px solid #1b1b1b33;background:none;font-size:20px;cursor:pointer;margin-left:8px;transition:.2s}.arrows button:hover{background:#1b1b1b;color:#fff}
.timeline{list-style:none;display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:30px max(28px,calc((100vw - 1184px)/2)) 20px;margin:0;scrollbar-width:none}.timeline::-webkit-scrollbar{display:none}
.timeline li{flex:0 0 300px;scroll-snap-align:start;background:#fff;border-radius:18px;padding:28px;border-top:4px solid var(--gold);box-shadow:0 10px 30px #0000000d;transition:.3s}.timeline li:hover{transform:translateY(-6px);box-shadow:0 20px 40px #00000018}
.timeline b{font-size:44px;color:#9c7c45;line-height:1}.timeline p{margin:4px 0 0;font-size:15px}
/* five */
.five{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#ffffff1a;margin-top:50px;border:1px solid #ffffff1a;border-radius:18px;overflow:hidden}
.five div{background:var(--ink);padding:36px 26px;transition:.35s}.five div:hover{background:#1d1a14}.five i{font-style:normal;font-size:64px;color:transparent;-webkit-text-stroke:1px var(--gold);line-height:1;display:block;margin-bottom:22px}.five p{color:#999;font-size:15px;margin:0}
/* services */
.cards{display:grid;grid-template-columns:repeat(6,1fr);gap:22px;margin-top:40px}.card{grid-column:span 2;background:#fff;border-radius:22px;padding:36px;transition:.35s;position:relative;overflow:hidden}.card:nth-child(4),.card:nth-child(5){grid-column:span 3}
.card:hover{transform:translateY(-6px);box-shadow:0 24px 50px #0000001a}.card svg{width:52px;height:52px;fill:none;stroke:#9c7c45;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;padding:12px;background:#f5efe3;border-radius:14px;margin-bottom:22px}
.card p{font-size:16px}.metric{display:inline-block;margin-top:6px;font-size:14px;padding:6px 14px;border-radius:30px;background:#111;color:var(--gold2)}
/* work */
.filters{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 40px}.filters button{background:none;border:1px solid #ffffff30;color:#ccc;border-radius:30px;padding:8px 20px;font-size:19px;cursor:pointer;transition:.2s}.filters button.on,.filters button:hover{background:var(--gold);color:#111;border-color:var(--gold)}
.masonry{columns:3 340px;column-gap:22px}.item{break-inside:avoid;margin:0 0 22px;border-radius:16px;overflow:hidden;background:#1a1a1a;position:relative;cursor:zoom-in}
.item img{display:block;width:100%;transition:transform .6s}.item:hover img{transform:scale(1.04)}.item figcaption{padding:16px 18px}.item b{display:block;color:#fff;font-weight:400;font-size:17px}.item span{color:var(--gold2);font-size:14px}
/* reels */
.reels{display:flex;gap:18px;overflow-x:auto;padding:40px max(28px,calc((100vw - 1184px)/2)) 10px;scroll-snap-type:x mandatory;scrollbar-width:thin}
.reel{flex:0 0 230px;aspect-ratio:9/16;border-radius:20px;overflow:hidden;position:relative;scroll-snap-align:start;box-shadow:0 14px 34px #0000002a;transition:.35s}.reel:hover{transform:translateY(-8px) rotate(-1deg)}
.reel img{width:100%;height:100%;object-fit:cover}.views{position:absolute;left:12px;bottom:12px;background:#000000b3;backdrop-filter:blur(6px);color:#fff;padding:6px 14px;border-radius:30px;font-size:20px}
/* clients */
.marquee{overflow:hidden;margin-top:30px;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.track{display:flex;gap:56px;width:max-content;animation:mq 70s linear infinite;align-items:center}.rev .track{animation-direction:reverse}
.track img{height:76px;width:auto;max-width:170px;object-fit:contain;filter:grayscale(1);opacity:.7;transition:.3s}.track img:hover{filter:none;opacity:1}.marquee:hover .track{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
/* contact */
.contact{list-style:none;padding:0;font-size:22px}.contact a{color:var(--gold2);text-decoration:none}.contact li{padding:12px 0;border-bottom:1px solid #ffffff14}
.form{background:#ffffff08;border:1px solid #ffffff1a;border-radius:22px;padding:34px}.form label{display:block;font-size:14px;color:#aaa;margin-bottom:16px}.form input,.form textarea{width:100%;margin-top:6px;background:transparent;border:0;border-bottom:1px solid #555;color:#fff;padding:10px 0;font:inherit;transition:.2s}.form input:focus,.form textarea:focus{outline:none;border-color:var(--gold)}#ok{color:var(--gold2)}
footer{background:#0a0a0a;padding:60px 0;color:#777;font-size:14px}.foot{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}.foot img{width:130px}.foot a{color:var(--gold);text-decoration:none}
#lb{position:fixed;inset:0;background:#000e;display:none;z-index:50;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}#lb.on{display:flex}#lb img{max-height:100%;border-radius:8px}
/* reveal */
.rv{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s ease}.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}.track,.ticker div,.hero-crest{animation:none}}
@media(max-width:1000px){.five{grid-template-columns:1fr 1fr}.five div:last-child{grid-column:span 2}.cards{grid-template-columns:1fr 1fr}.card,.card:nth-child(4),.card:nth-child(5){grid-column:span 1}.card:last-child{grid-column:span 2}}
@media(max-width:760px){.burger{display:block}nav{display:none;position:fixed;inset:78px 0 auto;background:#0f0f0f;flex-direction:column;padding:30px;gap:20px}body.open nav{display:flex}body.open header{background:#0f0f0f}
.hero{padding-top:120px;min-height:0}.hero-crest{position:relative;display:block;width:200px;margin:30px auto 0;right:auto;top:auto}.stats{grid-template-columns:1fr 1fr;margin-top:40px}.stats div{padding:24px 10px 24px 0}
.split{grid-template-columns:1fr;gap:20px}.five,.cards{grid-template-columns:1fr}.five div:last-child,.card:last-child{grid-column:auto}.timeline li{flex-basis:260px}.reel{flex-basis:180px}.track img{height:56px}.cta{flex-wrap:wrap}}
.masonry.collapsed .item:nth-child(n+13){display:none}.more{text-align:center;margin-top:20px}@media(max-width:760px){.masonry.collapsed .item:nth-child(n+7){display:none}}
nav{gap:22px}nav a{font-size:17px}nav a.on{color:var(--gold)}nav a.on:not(.btn):after{width:100%}
.phero{padding:170px 0 90px;position:relative;overflow:hidden}.phero h1{font-size:clamp(48px,8vw,110px);line-height:.95;margin:.1em 0 .25em;max-width:14ch}.phero .lead{max-width:60ch}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.cta-band{padding:90px 0;position:relative;overflow:hidden}.ctaw{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}.ctaw h2{margin:0;max-width:18ch}
.foot3{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding:60px 0 40px;align-items:start}.foot3 img{width:190px}.foot3 h5{font-family:'Bebas Neue';font-size:22px;letter-spacing:1px;color:var(--gold);margin:0 0 12px;font-weight:400}.foot3 a{display:block;color:#bbb;text-decoration:none;margin:0 0 8px;font-size:15px}.foot3 a:hover{color:var(--gold)}.foot3 p{color:#888;font-size:14px}
.lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px;margin-top:30px}.lg{background:#fff;border:1px solid #eee;border-radius:16px;aspect-ratio:3/2;display:flex;align-items:center;justify-content:center;padding:14px;transition:.25s}.lg:hover{transform:translateY(-3px);box-shadow:0 12px 30px #0001}.lg img{max-width:100%;max-height:100%;object-fit:contain}
.fgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:34px}.zoom{margin:0;border-radius:16px;overflow:hidden;cursor:zoom-in}.zoom img{width:100%;display:block;aspect-ratio:1;object-fit:cover;transition:.5s}.zoom:hover img{transform:scale(1.05)}
.ticks{list-style:none;padding:0}.ticks li{padding:10px 0 10px 30px;position:relative;border-bottom:1px solid #0000001a}.ticks li:before{content:"✦";position:absolute;left:0;color:var(--gold)}
.vstats{margin-top:0}.light .vstats b{color:#111}.spacer{height:80px;background:var(--ink)}
.legal .prose{max-width:820px}.prose h2{font-size:34px;margin:1.6em 0 .4em}.prose h3{font-size:22px;margin:1.2em 0 .3em}.prose li{margin:.4em 0}.prose a{color:#8a6a2f}
.formbox{background:#ffffff08;border:1px solid #ffffff1a;border-radius:22px;padding:34px}
.formbox .form-field{margin-bottom:18px}.formbox .form-label{display:block;font-size:14px;color:#aaa}.formbox .form-required{color:var(--gold);margin-left:3px}
.formbox .form-control{width:100%;margin-top:6px;background:transparent;border:0;border-bottom:1px solid #555;color:#fff;padding:10px 0;font:inherit;transition:.2s;resize:vertical}.formbox textarea.form-control{min-height:110px}
.formbox .form-control:focus{outline:none;border-color:var(--gold)}.formbox [aria-invalid=true]{border-color:#e46a5a}.formbox .form-error{color:#ff8a7a;font-size:13px;margin-top:4px}.formbox .form-error:empty{display:none}.formbox .form-help{color:#888;font-size:13px}
.formbox .form-submit{display:inline-block;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#111;padding:14px 34px;border-radius:40px;border:0;cursor:pointer;font:inherit;font-size:23px;transition:.25s}.formbox .form-submit:hover{transform:translateY(-2px);box-shadow:0 10px 30px #c9a96e55}.formbox .form-submit[disabled]{opacity:.6}
.formbox .form-form-error{color:#ff8a7a}.formbox .form-success{font-size:22px;color:var(--gold2);padding:30px 0}.formnote{font-size:13px;color:#888;margin:14px 0 0}.formnote a,.fallback a{color:var(--gold)}
.dark-link{color:#111!important}
@media(max-width:1180px){.burger{display:block}nav{display:none;position:fixed;inset:78px 0 auto;background:#0f0f0f;flex-direction:column;align-items:flex-start;padding:30px;gap:18px;max-height:calc(100vh - 78px);overflow:auto}nav a{font-size:24px}body.open nav{display:flex}body.open header{background:#0f0f0f}}
@media(max-width:760px){.foot3{grid-template-columns:1fr 1fr}.phero{padding:130px 0 60px}.formbox{padding:24px}}
.formbox form.form{background:none;border:0;padding:0;border-radius:0}.formbox fieldset{border:0;padding:0;margin:0;min-width:0}.foot3 img{width:140px}
.phero.withimg .wrap{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:center}.phimg{width:100%;border-radius:24px;box-shadow:0 30px 80px #0008}
@media(max-width:900px){.phero.withimg .wrap{grid-template-columns:1fr}}
