:root{
  --ink:#0B0D12; --ink-2:#12151D; --panel:#171B25; --line:rgba(200,164,77,.22);
  --gold:#C8A44D; --gold-2:#E7CE84; --cream:#F6F2E8; --muted:#A7AEBC; --white:#fff;
  --maxw:1160px; --r:14px;
  --font-h:"Cormorant Garamond",Cardo,Georgia,"Times New Roman",serif;
  --font-b:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--cream);font-family:var(--font-b);font-size:17px;line-height:1.72;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--gold-2);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{font-family:var(--font-h);font-weight:600;line-height:1.15;letter-spacing:-.01em;margin:0 0 .5em}
h1{font-size:clamp(2.3rem,5.2vw,3.9rem)}
h2{font-size:clamp(1.75rem,3.4vw,2.6rem)}
h3{font-size:clamp(1.25rem,2.1vw,1.55rem)}
p{margin:0 0 1.1em}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.narrow{max-width:800px}
.eyebrow{font-family:var(--font-b);font-size:.88rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--gold);margin:0 0 .9rem}
.lede{font-size:1.2rem;color:#DCD6C6}
.muted{color:var(--muted)}
small,.small{font-size:.88rem}
/* Touch targets: any inline tel or mail link is a conversion control. */
a[href^="tel:"],a[href^="mailto:"]{display:inline-flex;align-items:center;min-height:48px;padding:2px 0}
#callbar a[href^="tel:"],.btn[href^="tel:"]{min-height:48px}
section{padding:74px 0}
section.tight{padding:52px 0}
.alt{background:var(--ink-2)}
.rule{height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent);border:0;margin:0}

/* header */
.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;z-index:200;background:var(--gold);color:#111;padding:14px 18px;border-radius:8px;min-height:48px;display:inline-flex;align-items:center}
header.site{position:sticky;top:0;z-index:60;background:rgba(11,13,18,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(200,164,77,.16)}
.bar{display:flex;align-items:center;gap:18px;min-height:70px}
.brand{display:flex;align-items:center;flex:0 0 auto;min-height:48px}
.brand img{height:38px;width:auto}
nav.main{margin-left:auto;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
nav.main a{color:var(--cream);font-size:.95rem;padding:14px 11px;border-radius:8px;text-decoration:none;white-space:nowrap}
nav.main a:hover{background:rgba(200,164,77,.12);color:var(--gold-2);text-decoration:none}
nav.main a.on{color:var(--gold-2)}
.hdr-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(180deg,var(--gold-2),var(--gold));color:#14100A !important;font-weight:700;font-size:.95rem;min-height:48px;padding:12px 18px;border-radius:999px}
.hdr-cta:hover{text-decoration:none;filter:brightness(1.07)}
.menu-btn{display:none;margin-left:auto;background:transparent;border:1px solid var(--line);color:var(--cream);border-radius:10px;min-height:48px;padding:11px 16px;font-size:.95rem;font-family:var(--font-b);cursor:pointer}
@media (max-width:980px){
  .bar{flex-wrap:wrap}
  .menu-btn{display:block}
  nav.main{display:none;order:3;width:100%;flex:1 0 100%;flex-direction:column;align-items:stretch;gap:0;padding:8px 0 16px;margin-left:0}
  body.nav-open nav.main{display:flex}
  nav.main a{padding:13px 6px;border-bottom:1px solid rgba(200,164,77,.12);border-radius:0}
  .hdr-cta{margin-top:12px;justify-content:center}
}

/* hero */
.hero{position:relative;padding:96px 0 78px;overflow:hidden;border-bottom:1px solid rgba(200,164,77,.16)}
.hero::before{content:"";position:absolute;inset:0;background:
  radial-gradient(900px 460px at 78% 8%,rgba(200,164,77,.20),transparent 62%),
  radial-gradient(700px 520px at 6% 92%,rgba(200,164,77,.10),transparent 60%);pointer-events:none}
.hero .wrap{position:relative}
.hero h1{max-width:15ch}
.hero p.sub{font-size:1.22rem;max-width:60ch;color:#DED8C8}
.hero-sm{padding:70px 0 46px}
.hero-sm h1{max-width:22ch;font-size:clamp(2rem,4.2vw,3.15rem)}

.btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:26px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;font-size:1rem;padding:15px 26px;border-radius:999px;border:1px solid transparent;cursor:pointer;font-family:var(--font-b)}
.btn-primary{background:linear-gradient(180deg,var(--gold-2),var(--gold));color:#14100A}
.btn-primary:hover{text-decoration:none;filter:brightness(1.07)}
.btn-ghost{border-color:var(--line);color:var(--cream);background:rgba(255,255,255,.02)}
.btn-ghost:hover{text-decoration:none;border-color:var(--gold);color:var(--gold-2)}

/* proof strip */
.proof{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(200,164,77,.18);border:1px solid rgba(200,164,77,.18);border-radius:var(--r);overflow:hidden;margin-top:46px}
.proof div{background:var(--ink-2);padding:22px 18px}
.proof b{display:block;font-family:var(--font-h);font-size:2rem;color:var(--gold-2);line-height:1.1}
.proof span{display:block;font-size:.93rem;font-weight:600}
.proof small{display:block;color:var(--muted);font-size:.88rem;margin-top:4px}
@media (max-width:820px){.proof{grid-template-columns:repeat(2,1fr)}}

/* cards */
.grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
@media (max-width:900px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.card{background:var(--panel);border:1px solid rgba(200,164,77,.16);border-radius:var(--r);padding:26px}
.card h3{margin-bottom:.45em}
.card p:last-child{margin-bottom:0}
a.card{color:inherit;display:block}
a.card:hover{text-decoration:none;border-color:var(--gold);transform:translateY(-2px);transition:.18s}
a.card .more{color:var(--gold-2);font-weight:600;font-size:.95rem}

.steps{counter-reset:s;display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}
@media (max-width:900px){.steps{grid-template-columns:1fr}}
.step{border-left:2px solid var(--gold);padding:4px 0 4px 20px}
.step b{font-family:var(--font-h);color:var(--gold);font-size:1.5rem;display:block}
.step h3{font-size:1.15rem;margin:.2em 0 .35em}
.step p{margin:0;color:#CFC9BA;font-size:.98rem}

/* prose */
.prose h2{margin-top:1.9em}
.prose h2:first-child{margin-top:0}
.prose ul{padding-left:1.15em;margin:0 0 1.2em}
.prose li{margin-bottom:.6em}
.prose li::marker{color:var(--gold)}

/* faq */
details.faq{border:1px solid rgba(200,164,77,.18);border-radius:12px;background:var(--panel);margin-bottom:12px;overflow:hidden}
details.faq summary{cursor:pointer;list-style:none;padding:18px 22px;font-weight:600;font-family:var(--font-h);font-size:1.16rem;display:flex;gap:14px;align-items:flex-start}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";margin-left:auto;color:var(--gold);font-size:1.35rem;line-height:1;font-family:var(--font-b)}
details.faq[open] summary::after{content:"\2013"}
details.faq .a{padding:0 22px 18px;color:#CFC9BA}
details.faq .a p:last-child{margin-bottom:0}

/* cta band */
.band{background:linear-gradient(135deg,#191307,#0B0D12 62%);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band ul{list-style:none;padding:0;margin:18px 0 0}
.band li{padding-left:28px;position:relative;margin-bottom:10px}
.band li::before{content:"";position:absolute;left:0;top:.62em;width:11px;height:11px;background:var(--gold);transform:rotate(45deg)}

/* form */
form.lead{background:var(--panel);border:1px solid rgba(200,164,77,.2);border-radius:var(--r);padding:26px}
form.lead label{display:block;font-size:.9rem;font-weight:600;letter-spacing:.03em;margin:0 0 6px;color:#D8D2C2}
form.lead input,form.lead select,form.lead textarea{width:100%;padding:13px 14px;margin-bottom:16px;background:#0D1017;border:1px solid rgba(200,164,77,.24);border-radius:10px;color:var(--cream);font-family:var(--font-b);font-size:1rem}
form.lead input:focus,form.lead select:focus,form.lead textarea:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
form.lead .hp{position:absolute;left:-9999px}
form.lead button{width:100%}
.form-note{font-size:.88rem;color:var(--muted);margin:12px 0 0}

/* tables/breadcrumbs */
.crumbs{font-size:.9rem;color:var(--muted);padding:16px 0 0}
.crumbs a{color:var(--muted)}
.crumbs a:hover{color:var(--gold-2)}

/* footer */
footer.site{background:#080A0E;border-top:1px solid rgba(200,164,77,.18);padding:56px 0 108px;font-size:.94rem}
footer.site h4{font-family:var(--font-b);font-size:.88rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
footer.site ul{list-style:none;padding:0;margin:0}
footer.site li{margin-bottom:2px}
footer.site li a{display:inline-flex;align-items:center;min-height:48px}
.legal a{display:inline-flex;align-items:center;min-height:48px}
footer.site a{color:#C6CBD6}
footer.site a:hover{color:var(--gold-2)}
footer .fbrand img{height:38px;margin-bottom:16px}
.legal{border-top:1px solid rgba(255,255,255,.07);margin-top:34px;padding-top:20px;color:var(--muted);font-size:.9rem;display:flex;gap:16px;flex-wrap:wrap;align-items:center}
@media (min-width:900px){footer .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:34px}}
@media (max-width:899px){footer .cols>div{margin-bottom:30px}}

/* sticky mobile call bar */
#callbar{position:fixed;left:0;right:0;bottom:0;z-index:80;display:none;gap:1px;background:rgba(0,0,0,.4);transform:translateY(110%);transition:transform .22s ease}
#callbar.show{transform:translateY(0)}
#callbar a{flex:1;text-align:center;padding:15px 8px;font-weight:700;font-size:1rem;text-decoration:none}
#callbar .c1{background:linear-gradient(180deg,var(--gold-2),var(--gold));color:#14100A}
#callbar .c2{background:#1A1F2B;color:var(--cream)}
@media (max-width:820px){#callbar{display:flex}}
/* ported WordPress content */
.wp-port{max-width:820px;margin:0 auto}.wp-port img{max-width:100%;height:auto;border-radius:12px;display:block;margin:18px auto}.wp-port figure{margin:0}.wp-port .tbl{overflow-x:auto}.wp-port table{border-collapse:collapse;width:100%}.wp-port td,.wp-port th{border:1px solid rgba(0,0,0,.12);padding:8px}.wp-port h2{margin-top:1.6em}.wp-port h3{margin-top:1.3em}.wp-port ul,.wp-port ol{padding-left:1.3em}.post-card{padding:18px 0;border-bottom:1px solid rgba(0,0,0,.1)}
