/* ==========================================================================
   Funked Up Travel — base theme
   --------------------------------------------------------------------------
   Brand colours are defined ONCE here as CSS custom properties and referenced
   everywhere. When the real logo/palette lands, the rebrand is a variable swap,
   not a find-and-replace. Starting direction: muted, light-blue lean.
   ========================================================================== */

:root {
  --fut-primary:      #5b7fa6;  /* muted light blue */
  --fut-primary-dark: #3f5d7d;
  --fut-accent:       #c9a66b;  /* muted warm sand */
  --fut-ink:          #2b2f36;  /* body text */
  --fut-muted:        #8a9099;
  --fut-bg:           #f7f9fb;

  /* Bridge our palette into Bootstrap component colours */
  --bs-primary:       var(--fut-primary);
  --bs-primary-rgb:   91, 127, 166;
}

body {
  color: var(--fut-ink);
  background: #fff;
}

/* ---- Buttons / links tuned to brand ------------------------------------- */
.btn-primary {
  --bs-btn-bg:          var(--fut-primary);
  --bs-btn-border-color:var(--fut-primary);
  --bs-btn-hover-bg:    var(--fut-primary-dark);
  --bs-btn-hover-border-color: var(--fut-primary-dark);
  --bs-btn-active-bg:   var(--fut-primary-dark);
}
.btn-outline-primary {
  --bs-btn-color:       var(--fut-primary);
  --bs-btn-border-color:var(--fut-primary);
  --bs-btn-hover-bg:    var(--fut-primary);
  --bs-btn-hover-border-color: var(--fut-primary);
}
a { color: var(--fut-primary-dark); }

/* ==========================================================================
   CONTENT PROMPTS
   Greyed, italic placeholders that tell the owner what copy to supply.
   Greppable by class so we can confirm none survive to launch.
   ========================================================================== */
.content-prompt {
  color: var(--fut-muted);
  font-style: italic;
}

/* ==========================================================================
   NAV
   ========================================================================== */
.fut-navbar {
  background: #fff;
  box-shadow: 0 1px 6px rgba(0, 0, 0, .08);
}
.fut-navbar .navbar-brand {
  font-weight: 700;
  color: var(--fut-primary-dark);
}
.fut-navbar .nav-link { color: var(--fut-ink); font-weight: 500; }
.fut-navbar .nav-link.active,
.fut-navbar .nav-link:hover { color: var(--fut-primary); }

/* ==========================================================================
   HERO
   favoriteday.net-style bright imagery; larger on the home page.
   ========================================================================== */
.hero {
  position: relative;
  background-size: cover;
  background-position: center;
  background-color: var(--fut-primary-dark); /* fallback before image loads */
  color: #fff;
  text-align: center;
}
.hero--inner { min-height: 38vh; }
.hero--home  { min-height: 64vh; }

.hero__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(43,47,54,.30), rgba(43,47,54,.55));
}
.hero__content { position: relative; z-index: 1; padding: 3rem 1rem; }
.hero__content h1 {
  font-weight: 700;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .35);
}

/* ==========================================================================
   SECTIONS
   ========================================================================== */
.page-intro   { padding: 3rem 0 1rem; font-size: 1.125rem; }
.page-section { padding: 3rem 0; }
.page-section:nth-of-type(even) { background: var(--fut-bg); }

.section-heading {
  font-weight: 700;
  color: var(--fut-primary-dark);
  margin-bottom: 1rem;
}
.section-img { width: 100%; object-fit: cover; }

/* ==========================================================================
   HOME — pillar cards / partners / CTA
   ========================================================================== */
.pillar-card {
  border: 0;
  box-shadow: 0 4px 18px rgba(0, 0, 0, .08);
  transition: transform .15s ease, box-shadow .15s ease;
}
.pillar-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(0, 0, 0, .12);
}
.pillar-card .card-img-top { height: 200px; object-fit: cover; }

.partners-band .partner-logo {
  max-height: 64px;
  width: auto;
  filter: grayscale(100%);
  opacity: .75;
  transition: filter .2s ease, opacity .2s ease;
}
.partners-band .partner-logo:hover { filter: none; opacity: 1; }

.cta-band {
  background: var(--fut-primary-dark);
  color: #fff;
}
.cta-band .content-prompt { color: rgba(255, 255, 255, .75); }

/* ==========================================================================
   FOOTER
   ========================================================================== */
.fut-footer {
  background: var(--fut-ink);
  color: #cfd4da;
  padding: 3rem 0 1.5rem;
}
.fut-footer a { color: #fff; text-decoration: none; }
.fut-footer a:hover { text-decoration: underline; }
.fut-footer .footer-links li { margin-bottom: .35rem; }
.fut-footer .footer-rule { border-color: rgba(255, 255, 255, .15); margin: 2rem 0 1rem; }
.fut-footer .footer-brand { color: #fff; }
