@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');

:root {
  --brand-red: #8F0000;
  --brand-gold: #fcc352;
  --brand-black: #111111;
  --brand-cream: #fffaf1;
}
body { font-family: 'Manrope', system-ui, -apple-system, Segoe UI, sans-serif; color:#222; }
a { text-decoration:none; }
.navbar-brand img { height:72px; width:auto; display:block; }
.navbar { box-shadow:0 2px 16px rgba(0,0,0,.07); }
.btn-brand { background:var(--brand-red); color:#fff; border:none; }
.btn-brand:hover { background:#6f0000; color:#fff; }
.btn-gold { background:var(--brand-gold); color:#111; font-weight:700; }
.hero {
  background: radial-gradient(circle at 80% 20%, rgba(213,154,38,.2), transparent 32%),
              linear-gradient(135deg, #fff 0%, var(--brand-cream) 100%);
  padding: 78px 0 58px;
}
.hero h1 { font-size:clamp(2.2rem, 5vw, 4.3rem); font-weight:800; line-height:1.05; }
.text-brand { color:var(--brand-red); }
.badge-soft { background:#fff1d8; color:#6a3f00; border:1px solid #f2ce89; }
.booking-card { background:#fff; border-radius:22px; box-shadow:0 18px 60px rgba(70,20,0,.12); padding:26px; }
.section-title { font-weight:800; color:#171717; }
.route-card { border:1px solid #eee; border-radius:18px; transition:.2s; height:100%; }
.route-card:hover { transform:translateY(-4px); box-shadow:0 14px 35px rgba(0,0,0,.08); border-color:#e0b35a; }
.icon-circle { width:52px; height:52px; border-radius:50%; display:grid; place-items:center; background:#fff1d8; color:var(--brand-red); font-size:1.35rem; }
.why-card { border:0; border-radius:18px; box-shadow:0 8px 30px rgba(0,0,0,.06); }
.cta-strip { background:linear-gradient(135deg,var(--brand-red),#5d0000); color:#fff; border-radius:24px; }
footer { background:#111; color:#ddd; }
footer a { color:#ddd; }
footer a:hover { color:#fff; }
.whatsapp-float {
 position:fixed; right:18px; bottom:18px; z-index:999;
 width:58px; height:58px; border-radius:50%; display:grid; place-items:center;
 background:#25D366; color:#fff; box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.whatsapp-float svg { width:31px; height:31px; }
.route-hero { background:linear-gradient(135deg,#fff8ec,#fff); padding:65px 0; }
.small-note { color:#666; font-size:.92rem; }
.form-control,.form-select { min-height:48px; border-radius:12px; }
.accordion-button:not(.collapsed) { background:#fff4df; color:var(--brand-red); }
@media(max-width:991px) {
  .navbar-brand img { height:60px; }
  .hero { padding-top:48px; }
}

.navbar .nav-link { font-weight: 500; color: #222; }
.navbar .nav-link:hover { color: var(--brand-red); }
.btn-brand { border-radius: 12px; font-weight: 600; padding: .8rem 1.2rem; }
.btn-gold { border-radius: 12px; }
.hero p.lead, .route-hero p.lead { font-size: 1.08rem; line-height: 1.8; }
.section-title { letter-spacing: -.02em; }
