:root{
  --bg:#0B0B09;
  --bg-surface:#131209;
  --bg-surface-2:#17150F;
  --gold:#C9A84C;
  --gold-dim:rgba(201,168,76,0.35);
  --ink:#EDEAE0;
  --ink-muted:#9C9686;
  --hairline:rgba(201,168,76,0.18);
}

*{margin:0;padding:0;box-sizing:border-box;}

html{scroll-behavior:smooth;}

body{
  background:var(--bg);
  color:var(--ink);
  font-family:'Montserrat',sans-serif;
  font-weight:300;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;
  color:var(--ink);
  letter-spacing:0.01em;
}

a{color:inherit;text-decoration:none;}

.container{
  max-width:1080px;
  margin:0 auto;
  padding:0 32px;
}

/* Header / nav */
.site-nav{
  position:sticky;
  top:0;
  z-index:100;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:28px 40px;
  background:rgba(11,11,9,0.85);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--hairline);
}
.site-nav .logo{
  font-family:'Cormorant Garamond',serif;
  font-size:22px;
  letter-spacing:0.04em;
}
.site-nav .logo span{color:var(--gold);}
.site-nav .links{display:flex;gap:36px;}
.site-nav .links a{
  font-size:11px;
  letter-spacing:2.4px;
  text-transform:uppercase;
  color:var(--ink);
  padding-bottom:8px;
  border-bottom:1px solid transparent;
  transition:border-color .2s, color .2s;
}
.site-nav .links a:hover{border-color:var(--gold);color:var(--gold);}
.nav-toggle{display:none;background:none;border:none;flex-direction:column;gap:5px;cursor:pointer;}
.nav-toggle span{width:22px;height:1px;background:var(--ink);display:block;}

@media (max-width:760px){
  .nav-toggle{display:flex;}
  .site-nav .links{
    position:fixed;top:78px;left:0;right:0;
    background:var(--bg);
    flex-direction:column;
    gap:0;
    padding:8px 40px 24px;
    border-bottom:1px solid var(--hairline);
    display:none;
  }
  .site-nav .links.open{display:flex;}
  .site-nav .links a{padding:14px 0;border-bottom:1px solid var(--hairline);}
}

/* Simple page (privacy/terms) layout */
.legal-page{
  max-width:760px;
  margin:0 auto;
  padding:80px 32px 120px;
}
.legal-page h1{font-size:42px;margin-bottom:8px;}
.legal-page .updated{color:var(--ink-muted);font-size:13px;letter-spacing:.04em;text-transform:uppercase;margin-bottom:48px;}
.legal-page h2{font-size:24px;color:var(--gold);margin:40px 0 14px;font-weight:400;}
.legal-page p{margin-bottom:16px;color:var(--ink);opacity:0.92;font-size:15px;}
.legal-page ul{margin:0 0 16px 20px;color:var(--ink);opacity:0.92;font-size:15px;}
.legal-page li{margin-bottom:8px;}
.legal-page a{color:var(--gold);border-bottom:1px solid var(--gold-dim);}

/* Success page */
.success-wrap{
  min-height:70vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:40px 32px;
}
.success-wrap h1{font-size:44px;margin-bottom:16px;}
.success-wrap p{color:var(--ink-muted);max-width:480px;margin-bottom:32px;}
.btn-link{
  font-size:11px;letter-spacing:2.4px;text-transform:uppercase;
  color:var(--gold);border-bottom:1px solid var(--gold);padding-bottom:6px;
}

/* Footer */
footer{
  border-top:1px solid var(--hairline);
  padding:56px 40px 40px;
  text-align:center;
  color:var(--ink-muted);
}
footer .logo{
  font-family:'Cormorant Garamond',serif;
  font-size:20px;
  display:inline-block;
  margin-bottom:24px;
}
footer .logo span{color:var(--gold);}
footer nav.links, footer nav.legal-links{
  display:flex;justify-content:center;gap:28px;flex-wrap:wrap;
  margin-bottom:16px;
}
footer nav a{
  font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--ink-muted);
}
footer nav a:hover{color:var(--gold);}
footer .copyright{font-size:12px;color:var(--ink-muted);opacity:.7;}

/* Contact form (matches live site's field/consent structure) */
.field label{display:block;font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--ink-muted);margin-bottom:8px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;}
.field{margin-bottom:20px;}
input[type=text],input[type=email],input[type=tel],select,textarea{
  width:100%;
  background:var(--bg-surface);
  border:1px solid var(--hairline);
  color:var(--ink);
  padding:12px 14px;
  font-family:'Montserrat',sans-serif;
  font-size:14px;
  border-radius:2px;
}
textarea{min-height:100px;resize:vertical;}
.honeypot{position:absolute;left:-9999px;opacity:0;}
.consent-field{display:flex;align-items:flex-start;gap:10px;margin:24px 0;}
.consent-field input[type=checkbox]{margin-top:4px;width:16px;height:16px;flex:none;accent-color:var(--gold);}
.consent-field .consent-text{font-size:12.5px;color:var(--ink-muted);line-height:1.5;}
.consent-field .consent-text a{color:var(--gold);border-bottom:1px solid var(--gold-dim);}
.submit-btn{
  background:var(--gold);
  color:var(--bg);
  border:none;
  padding:14px 32px;
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
  cursor:pointer;
  border-radius:2px;
}
.privacy-note{margin-top:16px;font-size:12px;color:var(--ink-muted);}

@media (max-width:760px){
  .form-row{grid-template-columns:1fr;}
}

/* Hero */
.hero{
  min-height:88vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:60px 32px;
}
.hero .eyebrow{font-size:12px;letter-spacing:4px;color:var(--gold);text-transform:uppercase;margin-bottom:20px;}
.hero h1{font-size:clamp(40px,7vw,84px);line-height:1.05;margin-bottom:24px;}
.hero .sub{color:var(--ink-muted);font-size:17px;max-width:520px;margin:0 auto 40px;}
.btn-primary{
  display:inline-block;
  font-size:11px;letter-spacing:2.4px;text-transform:uppercase;
  color:var(--ink);border-bottom:1px solid var(--gold);padding-bottom:8px;
}
.scroll-hint{margin-top:60px;font-size:11px;letter-spacing:2px;color:var(--ink-muted);text-transform:uppercase;}

/* Ticker */
.ticker-wrap{
  border-top:1px solid var(--hairline);
  border-bottom:1px solid var(--hairline);
  overflow:hidden;
  padding:18px 0;
  background:var(--bg-surface);
}
.ticker{
  display:flex;gap:24px;white-space:nowrap;
  animation:ticker 30s linear infinite;
  font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);
}
@keyframes ticker{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}

/* Generic section */
section{padding:100px 32px;}
.section-head{text-align:center;max-width:640px;margin:0 auto 64px;}
.section-head .eyebrow{font-size:12px;letter-spacing:4px;color:var(--gold);text-transform:uppercase;margin-bottom:16px;}
.section-head h2{font-size:clamp(28px,4vw,42px);}

/* About */
#about .about-copy{max-width:680px;margin:0 auto 56px;text-align:center;color:var(--ink-muted);font-size:16px;}
#about .about-copy p{margin-bottom:16px;}
.stat-row{display:flex;justify-content:center;gap:56px;flex-wrap:wrap;text-align:center;}
.stat-row .num{font-family:'Cormorant Garamond',serif;font-size:40px;color:var(--gold);}
.stat-row .label{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--ink-muted);margin-top:6px;}

/* Process */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;max-width:1000px;margin:0 auto;}
.step .step-num{font-family:'Cormorant Garamond',serif;color:var(--gold);font-size:15px;letter-spacing:2px;text-transform:uppercase;margin-bottom:12px;}
.step h3{font-size:24px;margin-bottom:12px;}
.step p{color:var(--ink-muted);font-size:14.5px;}
@media (max-width:800px){.steps{grid-template-columns:1fr;}}

/* Who we serve */
.serve-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;max-width:900px;margin:0 auto 64px;}
.serve-card{border:1px solid var(--hairline);padding:32px;background:var(--bg-surface);}
.serve-card h3{font-size:20px;margin-bottom:10px;}
.serve-card p{color:var(--ink-muted);font-size:14.5px;}
@media (max-width:700px){.serve-grid{grid-template-columns:1fr;}}
.testimonial{max-width:640px;margin:0 auto;text-align:center;}
.testimonial blockquote{font-family:'Cormorant Garamond',serif;font-size:24px;font-style:italic;color:var(--ink);margin-bottom:16px;}
.testimonial cite{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--ink-muted);font-style:normal;}

/* Contact */
#contact .contact-wrap{display:grid;grid-template-columns:0.85fr 1.15fr;gap:64px;max-width:1000px;margin:0 auto;}
#contact .contact-info p{color:var(--ink-muted);margin-bottom:32px;}
#contact .info-block{margin-bottom:28px;}
#contact .info-block .label{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:var(--gold);margin-bottom:6px;}
@media (max-width:800px){#contact .contact-wrap{grid-template-columns:1fr;}}
