:root{
  --navy:#0d1b2a;
  --navy-2:#132238;
  --gold:#c8a96a;
  --gold-2:#d7bc82;
  --bg:#f4f6fa;
  --card:#ffffff;
  --text:#101828;
  --muted:#667085;
  --border:rgba(16,24,40,.08);
}

body{
  background:var(--bg);
  color:var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

a{
  text-decoration:none;
}

.brand-nav{
  background:linear-gradient(135deg, var(--navy), var(--navy-2));
  box-shadow:0 12px 30px rgba(11,19,32,.22);
}

.navbar .nav-link, .navbar .navbar-brand{
  color:#fff !important;
}

.hero-panel{
  border-radius:28px;
  background:
    radial-gradient(circle at top right, rgba(200,169,106,.22), transparent 28%),
    linear-gradient(135deg, var(--navy), #101f33 80%);
  color:#fff;
  box-shadow:0 24px 60px rgba(11,19,32,.18);
}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:.4rem;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.72rem;
  font-weight:700;
  color:var(--gold);
}

.btn-gold{
  background:linear-gradient(135deg, var(--gold), var(--gold-2));
  color:#1d1d1d;
  border:none;
  font-weight:700;
  box-shadow:0 12px 25px rgba(200,169,106,.24);
}
.btn-gold:hover{
  background:linear-gradient(135deg, var(--gold-2), var(--gold));
  color:#111;
}

.panel-card, .info-card, .section-card, .property-card, .stat-card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:24px;
  box-shadow:0 16px 40px rgba(16,24,40,.06);
}

.panel-card{
  color:var(--text);
}

.info-card, .section-card, .property-card, .stat-card{
  padding:1.25rem;
}

.info-card h3, .section-card h2{
  margin-top:0;
}

.icon-pill{
  display:inline-flex;
  width:42px;
  height:42px;
  border-radius:50%;
  align-items:center;
  justify-content:center;
  background:rgba(200,169,106,.16);
  color:var(--navy);
  font-weight:800;
  margin-bottom:1rem;
}

.list-check{
  list-style:none;
  padding-left:0;
  margin-bottom:0;
}
.list-check li{
  position:relative;
  padding-left:1.5rem;
  margin-bottom:.85rem;
}
.list-check li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--gold);
  font-weight:800;
}

.timeline-demo{
  display:grid;
  gap:.6rem;
}
.timeline-demo div{
  border:1px solid var(--border);
  border-radius:16px;
  padding:.85rem 1rem;
  background:#fafbff;
}

.before-after-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1rem;
}
.ba-box{
  min-height:180px;
  border-radius:22px;
  padding:1.25rem;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  color:#fff;
  background:linear-gradient(135deg, #42536c, #1d2e45);
}
.ba-box.after{
  background:linear-gradient(135deg, #7d6230, #b48a45);
}
.ba-box span{
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:.72rem;
  opacity:.8;
}
.ba-box strong{
  font-size:1.35rem;
}

.mini-metrics{
  display:grid;
  gap:.8rem;
}
.mini-metrics div, .property-meta div, .property-detail-grid div{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  border-bottom:1px solid var(--border);
  padding-bottom:.65rem;
}
.mini-metrics span, .property-meta span, .property-detail-grid span{
  color:var(--muted);
}

.property-card{
  color:inherit;
  transition:transform .15s ease, box-shadow .15s ease;
}
.property-card:hover{
  transform:translateY(-2px);
  box-shadow:0 20px 50px rgba(16,24,40,.09);
  color:inherit;
}

.stat-card{
  display:flex;
  flex-direction:column;
  gap:.25rem;
  min-height:100%;
}
.stat-card span{
  color:var(--muted);
  font-size:.9rem;
}
.stat-card strong{
  font-size:1.75rem;
  line-height:1;
}

.pipeline-grid{
  display:grid;
  grid-template-columns:repeat(8, minmax(230px, 1fr));
  gap:1rem;
  overflow-x:auto;
  padding-bottom:.5rem;
}
.pipeline-column{
  min-width:230px;
}
.pipeline-header{
  font-weight:700;
  margin-bottom:.75rem;
  color:var(--navy);
}
.pipeline-card{
  display:block;
  background:#fff;
  border:1px solid var(--border);
  border-radius:18px;
  padding:1rem;
  margin-bottom:.75rem;
  color:inherit;
  box-shadow:0 10px 24px rgba(16,24,40,.05);
}
.pipeline-card:hover{
  color:inherit;
  border-color:rgba(200,169,106,.5);
}

.stack-list{
  display:grid;
  gap:.75rem;
}
.stack-item{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:1rem;
  border:1px solid var(--border);
  border-radius:18px;
  padding:1rem;
  color:inherit;
  background:#fff;
}

.form-control, .form-select, textarea, input[type="text"], input[type="url"], input[type="email"], input[type="number"], input[type="date"], input[type="password"]{
  border-radius:14px !important;
  border:1px solid #d0d5dd !important;
  box-shadow:none !important;
  padding:.8rem 1rem !important;
}

input[type="checkbox"]{
  width:1.1rem;
  height:1.1rem;
  margin-top:.2rem;
}

.alert{
  border-radius:18px;
}

@media (max-width: 992px){
  .before-after-grid{
    grid-template-columns:1fr;
  }
}
