:root{
  --bg: #0f0f0b;          /* deep black/olive */
  --panel: #1a1810;       /* dark */
  --panel2:#14120c;
  --text:#f2f0ea;         /* off-white */
  --muted:#c7c2b4;
  --gold:#d2ae63;         /* sign gold */
  --gold2:#e9cf93;        /* lighter gold */
  --olive:#56502f;        /* green/olive */
  --line:#2b271a;
  --shadow: 0 12px 30px rgba(0,0,0,.45);
  --radius: 16px;
}

*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; background:var(--bg); color:var(--text); font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
a{ color:inherit; text-decoration:none; }
.container{ width:min(1120px, 92vw); margin:0 auto; }

.topbar{
  position:sticky; top:0; z-index:50;
  backdrop-filter: blur(10px);
  background: rgba(15,15,11,.72);
  border-bottom:1px solid rgba(210,174,99,.25);
}
.topbar__inner{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 0;
  gap:14px;
}
.brand{ display:flex; align-items:center; gap:10px; min-width: 220px; }
.brand__mark{
  width:14px; height:14px; border-radius:3px;
  background: linear-gradient(135deg, var(--gold), var(--gold2));
  box-shadow: 0 0 0 3px rgba(210,174,99,.15);
}
.brand__name{ font-weight:800; letter-spacing:.4px; font-size:14px; color:var(--gold2); }

.nav{ display:flex; gap:18px; }
.nav a{ color:var(--muted); font-weight:650; font-size:14px; }
.nav a:hover{ color:var(--gold2); }

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 14px;
  border-radius: 12px;
  border:1px solid transparent;
  font-weight:800;
  letter-spacing:.2px;
  cursor:pointer;
  transition: transform .08s ease, filter .15s ease, border-color .15s ease, background .15s ease;
}
.btn:active{ transform: translateY(1px); }
.btn--primary{
  background: linear-gradient(180deg, var(--gold2), var(--gold));
  color:#1a1810;
  border-color: rgba(233,207,147,.35);
}
.btn--secondary{
  background: rgba(86,80,47,.30);
  border-color: rgba(210,174,99,.35);
  color: var(--text);
}
.btn--ghost{
  background: transparent;
  border-color: rgba(210,174,99,.35);
  color: var(--gold2);
}
.btn--full{ width:100%; }

.hero{
  position:relative;
  min-height: calc(100vh - 66px);
  display:grid;
  place-items:center;
  overflow:hidden;
  border-bottom: 1px solid rgba(210,174,99,.18);
}
.hero__bg{
  position:absolute; inset:0;
  background-image:
    linear-gradient(to bottom, rgba(15,15,11,.30), rgba(15,15,11,.85)),
    url("assets/hero.jpg");
  background-size: cover;
  background-position: center;
  transform: scale(1.02);
  filter: contrast(1.05) saturate(1.05);
}
.hero__content{ position:relative; padding: 60px 0; width:100%; }
.hero__card{
  width:min(620px, 100%);
  background: rgba(26,24,16,.78);
  border:1px solid rgba(210,174,99,.35);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 22px;
}
.kicker{
  margin:0 0 10px 0;
  color: var(--gold2);
  font-weight: 900;
  letter-spacing: 2px;
  font-size: 12px;
}
.hero h1{
  margin:0;
  font-size: clamp(30px, 4vw, 44px);
  line-height: 1.05;
}
.sub{
  margin: 10px 0 16px 0;
  color: var(--muted);
  font-weight: 650;
}
.hero__actions{ display:flex; gap:12px; flex-wrap:wrap; margin: 10px 0 14px 0; }
.hero__badges{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 10px; }
.badge{
  display:inline-flex;
  padding:8px 10px;
  border-radius: 999px;
  background: rgba(86,80,47,.28);
  border:1px solid rgba(210,174,99,.25);
  color: var(--text);
  font-weight: 800;
  font-size: 12px;
}
.micro{ margin: 12px 0 0 0; font-size: 12px; color: rgba(233,228,229,.70); }

.strip{
  background: radial-gradient(1200px 400px at 50% 0%, rgba(210,174,99,.18), transparent 60%);
}
.strip__grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  padding: 18px 0;
}
.strip__item{
  display:flex; gap:12px; align-items:flex-start;
  background: rgba(20,18,12,.55);
  border:1px solid rgba(210,174,99,.18);
  border-radius: var(--radius);
  padding: 14px;
}
.strip__icon{ font-size:20px; line-height:1; }
.strip__title{ font-weight: 900; color: var(--gold2); }
.strip__text{ color: var(--muted); font-weight: 650; font-size: 13px; margin-top:4px; }

.section{ padding: 58px 0; }
.section--alt{ background: rgba(20,18,12,.65); border-top:1px solid rgba(210,174,99,.12); border-bottom:1px solid rgba(210,174,99,.12); }
.section__head{ margin-bottom: 18px; }
.section__head h2{ margin:0 0 8px 0; font-size: 30px; }
.section__head p{ margin:0; color: var(--muted); font-weight: 650; max-width: 70ch; }

.cards{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
}
.card{
  background: rgba(26,24,16,.55);
  border:1px solid rgba(210,174,99,.18);
  border-radius: var(--radius);
  padding: 18px;
  box-shadow: 0 10px 22px rgba(0,0,0,.22);
}
.card h3{ margin:0 0 10px 0; color: var(--gold2); }
.card ul{ margin:0; padding-left: 18px; color: var(--muted); font-weight:650; }
.card li{ margin: 8px 0; }

.grid-2{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 14px;
}
.panel{
  background: rgba(26,24,16,.55);
  border:1px solid rgba(210,174,99,.18);
  border-radius: var(--radius);
  padding: 18px;
}
.panel h3{ margin:0 0 10px 0; color: var(--gold2); }
.muted{ color: var(--muted); }
.divider{ height:1px; background: rgba(210,174,99,.18); margin: 16px 0; }

.chips{ display:flex; gap:10px; flex-wrap:wrap; margin-top: 10px; }
.chip{
  padding:8px 10px; border-radius:999px;
  background: rgba(86,80,47,.22);
  border:1px solid rgba(210,174,99,.18);
  font-weight:800; font-size:12px; color: var(--text);
}

.checklist{ margin:0; padding-left: 18px; color: var(--muted); font-weight:650; }
.checklist li{ margin: 8px 0; }

.about{
  display:grid;
  grid-template-columns: 1.4fr .6fr;
  gap: 14px;
}
.about__box{
  background: rgba(26,24,16,.55);
  border:1px solid rgba(210,174,99,.18);
  border-radius: var(--radius);
  padding: 18px;
}
.about__box--quote{
  display:grid; place-items:center;
  text-align:center;
  background: linear-gradient(180deg, rgba(86,80,47,.25), rgba(26,24,16,.55));
}
.quote{
  font-weight: 1000;
  font-size: 20px;
  color: var(--gold2);
  margin:0;
}

.form{ display:grid; gap: 12px; }
label{ display:grid; gap:6px; font-weight:800; color: var(--gold2); }
input, textarea{
  width:100%;
  padding: 12px 12px;
  border-radius: 12px;
  border:1px solid rgba(210,174,99,.22);
  background: rgba(15,15,11,.55);
  color: var(--text);
  outline:none;
}
input:focus, textarea:focus{
  border-color: rgba(233,207,147,.55);
  box-shadow: 0 0 0 4px rgba(210,174,99,.10);
}

.phone a{
  font-size: 26px;
  font-weight: 1000;
  color: var(--gold2);
}

.footer{
  padding: 26px 0;
  border-top:1px solid rgba(210,174,99,.12);
  background: rgba(15,15,11,.85);
}
.footer__inner{ display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; }
.footer__brand{ font-weight: 1000; color: var(--gold2); }

/* Mobile */
@media (max-width: 900px){
  .nav{ display:none; }
  .strip__grid{ grid-template-columns: 1fr; }
  .cards{ grid-template-columns: 1fr; }
  .grid-2{ grid-template-columns: 1fr; }
  .about{ grid-template-columns: 1fr; }
  .hero__card{ padding: 18px; }
}
