:root{
  --bg:#0b0d10;
  --panel:#11151b;
  --panel-2:#0f1318;
  --text:#e9eef5;
  --muted:#b7c0ce; /* brighter for better contrast */
  --border:rgba(255,255,255,.10);
  --accent:#caa85c;     /* gold */
  --accent-2:#f3d28a;   /* lighter gold */
  --shadow: 0 14px 40px rgba(0,0,0,.45);
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  background: radial-gradient(1200px 600px at 15% -10%, rgba(202,168,92,.18), transparent 55%),
              radial-gradient(900px 500px at 90% 10%, rgba(202,168,92,.10), transparent 60%),
              var(--bg);
  color: var(--text);
  letter-spacing: .2px;
}

a{ color: inherit; text-decoration:none; }
a:hover{ color: var(--accent-2); }
.text-muted{ color: var(--muted) !important; }

.container-narrow{ max-width: 1100px; }

/* Header */
.navbar{
  background: rgba(11,13,16,.78);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--border);
}
.navbar-brand{
  font-weight: 900;
  letter-spacing: .6px;
}
.nav-link{
  color: rgba(233,238,245,.85) !important;
  font-weight: 700;
}
.nav-link:hover, .nav-link.active{
  color: var(--accent-2) !important;
}

/* Buttons */
.btn-accent{
  --bs-btn-bg: var(--accent);
  --bs-btn-border-color: var(--accent);
  --bs-btn-hover-bg: var(--accent-2);
  --bs-btn-hover-border-color: var(--accent-2);
  --bs-btn-color: #121212;
  --bs-btn-hover-color: #121212;
  font-weight: 900;
  box-shadow: 0 10px 30px rgba(202,168,92,.18);
}
.btn-outline-accent{
  border: 1px solid rgba(202,168,92,.7);
  color: var(--accent-2);
  font-weight: 900;
}
.btn-outline-accent:hover{
  background: rgba(202,168,92,.12);
  border-color: var(--accent-2);
  color: var(--accent-2);
}

/* Hero */
.hero{
  padding: 110px 0 70px;
}
.hero-kicker{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.45rem .75rem;
  border:1px solid var(--border);
  background: rgba(17,21,27,.55);
  border-radius: 999px;
  font-weight: 800;
  color: rgba(233,238,245,.9);
}
.hero h1, .hero .display-5, .hero .display-4{
  font-weight: 950;
  letter-spacing: -.6px;
  line-height: 1.05;
}
.hero p.lead{
  color: rgba(233,238,245,.82);
  max-width: 52ch;
}

/* Cards */
.card{
  background: linear-gradient(180deg, rgba(17,21,27,.92), rgba(15,19,24,.92));
  border: 1px solid var(--border);
  box-shadow: var(--shadow);
  border-radius: 18px;
  color: var(--text);
}
.card .card-title{ font-weight: 900; }

.badge-soft{
  background: rgba(202,168,92,.14);
  border: 1px solid rgba(202,168,92,.25);
  color: var(--accent-2);
  font-weight: 900;
}

/* Sections */
.section{ padding: 70px 0; }
.section-title{
  font-weight: 950;
  letter-spacing: -.4px;
}
.section-subtitle{
  color: var(--muted);
  max-width: 70ch;
}

/* Icon pill (forces readable icon color) */
.icon-pill{
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: rgba(202,168,92,.14);
  border: 1px solid rgba(202,168,92,.25);
  color: var(--accent-2) !important; /* never black */
  font-size: 20px;
}
.icon-pill i,
.icon-pill svg{
  color: var(--accent-2) !important;
  fill: currentColor;
  stroke: currentColor;
}

/* Branch actions */
.branch-actions .btn{ width: 100%; }

.hr-soft{
  border-top: 1px solid var(--border);
  opacity: 1;
}

/* Mobile Call Bar */
.callbar{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1030;
  background: rgba(11,13,16,.86);
  border-top: 1px solid var(--border);
  backdrop-filter: blur(10px);
  padding: .65rem .85rem;
}
.callbar .btn{ width: 100%; }

/* Footer */
footer{
  border-top: 1px solid var(--border);
  background: rgba(11,13,16,.65);
  color: var(--text);
}
footer .footer-title{ font-weight: 950; }

/* Forms */
.form-control, .form-select, textarea{
  background: rgba(17,21,27,.75) !important;
  border: 1px solid var(--border) !important;
  color: var(--text) !important;
  border-radius: 14px !important;
}
.form-control::placeholder, textarea::placeholder{ color: rgba(183,192,206,.75); }
.form-control:focus, textarea:focus{
  border-color: rgba(202,168,92,.65) !important;
  box-shadow: 0 0 0 .25rem rgba(202,168,92,.18) !important;
}

.alert-dark{
  background: rgba(17,21,27,.9);
  border: 1px solid var(--border);
  color: rgba(233,238,245,.92);
  border-radius: 16px;
}

/* Utility */
.shadow-soft{ box-shadow: var(--shadow); }
.rounded-2xl{ border-radius: 22px !important; }
