/* ── VOCÊ MERECE VENCER — Brand CSS ── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;0,900;1,700&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap');

:root {
  --gold:    #F5BF2A;
  --gold2:   #D4A843;
  --dark:    #1A1209;
  --darker:  #0D0D0D;
  --white:   #F5F0E8;
  --muted:   #8A7F72;
  --bs-body-font-family: 'Plus Jakarta Sans', sans-serif;
  --bs-body-color: #1A1209;
}

/* ── TYPOGRAPHY ── */
body { font-family: 'Plus Jakarta Sans', sans-serif; color: var(--dark); }
h1, h2, h3, h4, h5 { font-family: 'Playfair Display', serif; font-weight: 700; }
.font-serif { font-family: 'Playfair Display', serif; }
.text-gold  { color: var(--gold2) !important; }
.text-muted-brand { color: var(--muted); }

/* ── NAVBAR ── */
.navbar-vmv {
  background: var(--darker);
  border-bottom: 1px solid rgba(245,191,42,0.15);
  padding: 16px 0;
}
.navbar-vmv .navbar-brand {
  font-family: 'Playfair Display', serif;
  font-size: 1.3rem; font-weight: 900;
  color: var(--gold) !important;
  letter-spacing: -0.01em;
}
.navbar-vmv .nav-link {
  color: rgba(245,240,232,0.7) !important;
  font-size: 14px; font-weight: 500;
  transition: color 0.2s;
}
.navbar-vmv .nav-link:hover { color: var(--gold) !important; }
.navbar-vmv .navbar-toggler { border-color: rgba(245,191,42,0.3); }
.navbar-vmv .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(245,191,42,0.8)' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* ── BUTTONS ── */
.btn-gold {
  background: var(--gold); color: var(--dark);
  border: none; font-weight: 700; font-size: 15px;
  padding: 14px 32px; border-radius: 6px;
  transition: background 0.2s, transform 0.15s;
  letter-spacing: 0.02em;
}
.btn-gold:hover { background: #ffd04a; color: var(--dark); transform: translateY(-1px); }

.btn-outline-gold {
  border: 2px solid var(--gold); color: var(--gold);
  background: transparent; font-weight: 700; font-size: 15px;
  padding: 12px 30px; border-radius: 6px;
  transition: all 0.2s;
}
.btn-outline-gold:hover { background: var(--gold); color: var(--dark); }

/* ── SECTIONS ── */
.section-dark  { background: var(--darker); color: var(--white); }
.section-dark2 { background: var(--dark);   color: var(--white); }
.section-gold  { background: var(--gold);   color: var(--dark);  }
.section-light { background: #FDF9F3;        color: var(--dark);  }

/* ── DECO LINE ── */
.deco-line {
  display: block; width: 48px; height: 3px;
  background: var(--gold); border-radius: 2px; margin: 0 auto 20px;
}
.deco-line-left { margin: 0 0 20px; }

/* ── CARDS ── */
.card-vmv {
  background: #1C1C1C; border: 1px solid rgba(245,191,42,0.15);
  border-radius: 12px; padding: 28px;
  transition: border-color 0.2s, transform 0.2s;
}
.card-vmv:hover { border-color: rgba(245,191,42,0.4); transform: translateY(-3px); }

.card-light {
  background: #FDF9F3; border: 1px solid rgba(26,18,9,0.08);
  border-radius: 12px; padding: 28px;
  transition: box-shadow 0.2s, transform 0.2s;
}
.card-light:hover { box-shadow: 0 8px 30px rgba(26,18,9,0.1); transform: translateY(-3px); }

/* ── QUOTE STYLE ── */
.quote-text {
  font-family: 'Playfair Display', serif;
  font-style: italic; font-weight: 700;
  line-height: 1.4;
}

/* ── FORM ── */
.form-vmv .form-control {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(245,191,42,0.2);
  color: var(--white); border-radius: 6px;
  padding: 14px 16px; font-size: 15px;
  transition: border-color 0.2s;
}
.form-vmv .form-control:focus {
  background: rgba(255,255,255,0.08);
  border-color: var(--gold); box-shadow: 0 0 0 3px rgba(245,191,42,0.15);
  color: var(--white);
}
.form-vmv .form-control::placeholder { color: rgba(245,240,232,0.4); }
.form-vmv label { color: rgba(245,240,232,0.7); font-size: 13px; font-weight: 500; margin-bottom: 6px; }

.form-light .form-control {
  background: #fff; border: 1px solid rgba(26,18,9,0.15);
  border-radius: 6px; padding: 14px 16px; font-size: 15px;
  transition: border-color 0.2s;
}
.form-light .form-control:focus {
  border-color: var(--gold2); box-shadow: 0 0 0 3px rgba(212,168,67,0.15);
}

/* ── BADGE ── */
.badge-vmv {
  display: inline-block;
  border: 1px solid rgba(245,191,42,0.35);
  color: var(--gold); background: rgba(245,191,42,0.08);
  font-size: 11px; font-weight: 700; letter-spacing: 0.1em;
  text-transform: uppercase; padding: 5px 14px; border-radius: 100px;
  margin-bottom: 16px;
}

/* ── FOOTER ── */
.footer-vmv {
  background: var(--darker);
  border-top: 1px solid rgba(245,191,42,0.1);
  padding: 48px 0 32px;
  color: rgba(245,240,232,0.5);
  font-size: 13px;
}
.footer-vmv a { color: rgba(245,240,232,0.5); text-decoration: none; transition: color 0.2s; }
.footer-vmv a:hover { color: var(--gold); }
.footer-vmv .footer-brand {
  font-family: 'Playfair Display', serif;
  font-size: 1.2rem; font-weight: 900; color: var(--gold);
}

/* ── UTILITIES ── */
.hero-min { min-height: 90vh; }
.rounded-vmv { border-radius: 12px; }
.shadow-gold { box-shadow: 0 8px 40px rgba(245,191,42,0.15); }
.border-gold  { border: 1px solid rgba(245,191,42,0.25) !important; }
.bg-darker { background: var(--darker); }
.glow-dot {
  width: 10px; height: 10px; border-radius: 50%;
  background: var(--gold); display: inline-block;
  animation: pulse 2s infinite;
}
@keyframes pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.5; transform: scale(0.85); }
}

/* Fade-in animation */
.fade-up {
  opacity: 0; transform: translateY(20px);
  animation: fadeUp 0.6s ease forwards;
}
@keyframes fadeUp {
  to { opacity: 1; transform: translateY(0); }
}
.delay-1 { animation-delay: 0.1s; }
.delay-2 { animation-delay: 0.2s; }
.delay-3 { animation-delay: 0.3s; }
.delay-4 { animation-delay: 0.4s; }
