:root{--bg:#0a0a0b;--card:#131316;--line:#24242a;--ink:#f4f1ea;--mute:#9a978f;--acc:#d6a24a;--acc2:#f0c77a}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font:16px/1.6 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit}img,video{display:block;max-width:100%}
h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:700;line-height:1.05;letter-spacing:-.02em}
.nav{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:16px clamp(20px,5vw,64px);background:rgba(10,10,11,.8);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.logo{font-family:Fraunces,serif;font-weight:700;letter-spacing:.14em;text-decoration:none}
.nav nav{display:flex;gap:28px;align-items:center}.nav nav a{text-decoration:none;color:var(--mute);font-size:14px}.nav nav a:hover{color:var(--ink)}
.btn{display:inline-block;background:var(--acc);color:#111!important;text-decoration:none;font-weight:600;padding:14px 26px;border-radius:999px;transition:.2s;border:1px solid var(--acc)}
.btn:hover{background:var(--acc2)}.btn.ghost{background:transparent;color:var(--ink)!important;border-color:#444}.btn.ghost:hover{border-color:var(--ink)}.btn.sm{padding:8px 18px;color:#111!important}
.eyebrow{color:var(--acc);text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:600;margin-bottom:14px}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;max-width:1240px;margin:0 auto;padding:88px clamp(20px,5vw,64px) 72px}
h1{font-size:clamp(56px,9vw,120px)}.lead{font-size:clamp(18px,1.6vw,21px);color:#d8d5cc;margin:24px 0;max-width:560px}
.facts{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:32px}.facts li{border:1px solid var(--line);background:var(--card);padding:7px 14px;border-radius:999px;font-size:14px;color:#cfcbc2}
.ctas{display:flex;gap:14px;flex-wrap:wrap}
.hpic{position:relative}.hpic img{border-radius:28px;aspect-ratio:1;object-fit:cover;width:100%;box-shadow:0 30px 80px rgba(0,0,0,.6)}.hpic:before{content:"";position:absolute;inset:-14px 14px 14px -14px;border:1px solid var(--acc);border-radius:32px;opacity:.4}
.sec{max-width:1240px;margin:0 auto;padding:88px clamp(20px,5vw,64px);border-top:1px solid var(--line)}
.sh{margin-bottom:44px}h2{font-size:clamp(36px,5vw,58px)}.sub{color:var(--mute);margin-top:12px}.sub a{color:var(--acc)}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.vid .play{all:unset;cursor:pointer;position:relative;display:block;border-radius:18px;overflow:hidden;background:#000;aspect-ratio:9/16;border:1px solid var(--line)}
.vid.r720x900 .play{aspect-ratio:9/16}.vid video{width:100%;height:100%;object-fit:cover}
.vid.r16x9{grid-column:span 2}.vid.r16x9 .play{aspect-ratio:auto;height:calc(100% - 58px)}.vid.r16x9 video{object-fit:contain;background:#000}
.pi{position:absolute;left:50%;top:50%;width:62px;height:62px;margin:-31px;border-radius:50%;background:rgba(10,10,11,.6);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.3);transition:.2s}
.pi:after{content:"";position:absolute;left:25px;top:20px;border-left:18px solid #fff;border-top:11px solid transparent;border-bottom:11px solid transparent}
.vid.playing .pi{opacity:0}.play:focus-visible{outline:2px solid var(--acc)}
.vid figcaption{padding:12px 4px 0}.vid strong{display:block;font-size:16px}.vid figcaption span{color:var(--mute);font-size:13px}
.wall{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden}
.wall li{background:var(--bg);height:92px;display:flex;align-items:center;justify-content:center;text-align:center;padding:10px;font-family:Fraunces,serif;font-weight:500;font-size:18px;color:#bdb9b0;letter-spacing:.01em;transition:.2s}.wall li:hover{color:var(--ink);background:var(--card)}
.revs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rev{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column}
.stars{color:var(--acc);letter-spacing:3px;margin-bottom:14px}.rev blockquote{font-family:Fraunces,serif;font-size:19px;line-height:1.4;flex:1}
.rev figcaption{margin-top:20px;font-weight:600;font-size:14px}.rev figcaption span{color:var(--mute);font-weight:400}
.svcs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.svcs article{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:32px}
.svcs span{color:var(--acc);font-family:Fraunces,serif;font-size:15px}.svcs h3{font-size:28px;margin:14px 0 4px}.k{color:var(--acc2);font-size:13px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:14px}.svcs p:last-child{color:#cfcbc2}
.addons{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.addons>div{border:1px solid var(--line);border-radius:18px;padding:32px}
.addons h3{font-size:24px;margin-bottom:16px}.addons ul{list-style:none}.addons li{padding:12px 0;border-bottom:1px solid var(--line);color:#d8d5cc}.addons li:before{content:"+ ";color:var(--acc)}
.quote{background:linear-gradient(140deg,#1d1810,#131316)}.big{font-family:Fraunces,serif;font-size:44px;color:var(--acc2);line-height:1.1}.quote p{margin-bottom:20px;color:#cfcbc2}
.contact{text-align:center}.contact h2{font-size:clamp(44px,7vw,88px);margin-bottom:32px}.ctas.c{justify-content:center}
.links{list-style:none;display:flex;justify-content:center;gap:28px;flex-wrap:wrap;margin-top:36px}.links a{color:var(--mute)}.links a:hover{color:var(--acc)}
footer{text-align:center;color:#66645f;font-size:13px;padding:32px;border-top:1px solid var(--line)}
@media(max-width:980px){.grid{grid-template-columns:repeat(2,1fr)}.revs,.svcs{grid-template-columns:1fr 1fr}.hero{grid-template-columns:1fr;gap:40px;padding-top:48px}.hpic{max-width:440px}}
@media(max-width:640px){.nav nav a:not(.btn){display:none}.grid{gap:12px}.revs,.svcs,.addons{grid-template-columns:1fr}.sec{padding:64px 20px}.wall{grid-template-columns:repeat(2,1fr)}.wall li{font-size:15px;height:72px}.btn{padding:13px 22px}.vid.r16x9 .play{height:auto;aspect-ratio:16/9}.ctas .btn{flex:1;text-align:center}.hpic:before{display:none}.big{font-size:36px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto}}
