
:root{
  --vvm-burgundy:#7f1d1d;
  --vvm-gold:#c7a34a;
  --vvm-cream:#faf7f0;
  --vvm-charcoal:#212529;
  --vvm-muted:#6c757d;
}
html{
  scroll-behavior:smooth;
}
body{
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color: var(--vvm-charcoal);
  background:#fff;
  line-height:1.7;
}
.navbar{
  box-shadow:0 2px 14px rgba(0,0,0,.06);
  background:rgba(255,255,255,.96)!important;
  backdrop-filter: blur(8px);
}
.navbar-brand img{
  height:42px;
  width:auto;
}
.nav-link{
  font-weight:600;
}
.nav-link.active,
.nav-link:hover{
  color: var(--vvm-burgundy)!important;
}
.hero{
  min-height: 92vh;
  display:flex;
  align-items:center;
  background:
    linear-gradient(rgba(250,247,240,.92), rgba(255,255,255,.98)),
    radial-gradient(circle at top, rgba(199,163,74,.18), transparent 35%);
  padding-top: 5rem;
}
.hero-logo{
  width: min(220px, 48vw);
  height:auto;
  margin-bottom:1.5rem;
  filter: drop-shadow(0 10px 18px rgba(0,0,0,.08));
}
.display-title{
  font-weight:800;
  letter-spacing:.3px;
}
.lead-strong{
  font-size:1.15rem;
  color:#343a40;
}
.btn-vvm{
  background:var(--vvm-burgundy);
  border-color:var(--vvm-burgundy);
  color:#fff;
}
.btn-vvm:hover{
  background:#681313;
  border-color:#681313;
  color:#fff;
}
.btn-vvm-outline{
  border:2px solid var(--vvm-burgundy);
  color:var(--vvm-burgundy);
}
.btn-vvm-outline:hover{
  background:var(--vvm-burgundy);
  color:#fff;
}
.section{
  padding: 4.75rem 0;
}
.section-alt{
  background: var(--vvm-cream);
}
.section-title{
  font-weight:800;
  margin-bottom:1rem;
}
.card-soft{
  border:none;
  border-radius:1rem;
  box-shadow:0 8px 24px rgba(0,0,0,.06);
  height:100%;
}
.quote-box{
  border-left:4px solid var(--vvm-gold);
  background:#fff;
  padding:1rem 1.25rem;
  border-radius:.75rem;
}
.feature-icon{
  width:52px;
  height:52px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(127,29,29,.08);
  color:var(--vvm-burgundy);
  font-size:1.25rem;
  margin-bottom:1rem;
}
.page-hero{
  padding:8rem 0 3rem;
  background:linear-gradient(180deg, var(--vvm-cream), #fff);
}
.page-hero h1{
  font-weight:800;
}
.content-section{
  padding: 1.25rem 0 4rem;
}
.list-check li{
  margin-bottom:.75rem;
}
.cta-banner{
  background:linear-gradient(135deg, var(--vvm-burgundy), #4b1010);
  color:#fff;
  border-radius:1.25rem;
  padding:2rem;
  box-shadow:0 12px 24px rgba(0,0,0,.10);
}
footer{
  background:#111;
  color:#f8f9fa;
  padding:2rem 0;
}
footer a{
  color:#f8f9fa;
  text-decoration:none;
}
footer a:hover{
  text-decoration:underline;
}
.small-muted{
  color: var(--vvm-muted);
}
.logo-card img{
  max-width:260px;
  width:100%;
  height:auto;
}
@media (max-width: 991.98px){
  .navbar-collapse{
    background:#fff;
    padding:1rem;
    border-radius:1rem;
    margin-top:.75rem;
    box-shadow:0 12px 24px rgba(0,0,0,.08);
  }
}
@media (max-width: 767.98px){
  .hero{
    text-align:center;
    min-height:auto;
    padding:7rem 0 4rem;
  }
  .section{
    padding: 3.5rem 0;
  }
  .page-hero{
    padding:7rem 0 2rem;
  }
}


.card-soft .btn{align-self:flex-start;}
.navbar-brand span{font-size:1rem;}
@media (max-width: 575.98px){
  .navbar-brand span{font-size:.92rem;}
  .navbar-brand img{height:38px;}
  .cta-banner{padding:1.5rem;}
}
