/*
  MyChefVision — Restaurant Theme
  Applies the warm burgundy · aged gold · parchment palette
  globally across all pages. Loaded after style.css.
*/

/* ================================================================
   TYPOGRAPHY
================================================================ */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-display, 'Fraunces', 'Playfair Display', Georgia, serif);
  letter-spacing: -0.02em;
}

.section-title, .page-title {
  font-family: var(--font-display, 'Fraunces', 'Playfair Display', Georgia, serif);
}

/* ================================================================
   PUBLIC NAV / SITE HEADER — cream bar + colourful logo plate
================================================================ */
.site-header {
  background:
    linear-gradient(180deg, rgba(255,252,247,0.98), rgba(250,244,234,0.94)) !important;
  border-bottom: 1px solid rgba(201,150,42,0.22) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset;
}
.site-header.scrolled {
  background: rgba(255, 252, 247, 0.98) !important;
  backdrop-filter: blur(18px) saturate(140%);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  box-shadow: 0 10px 28px -16px rgba(26,10,0,0.18) !important;
  border-bottom-color: rgba(201,150,42,0.32) !important;
}

.hd-inner {
  max-width: 1280px !important;
  padding: 0.55rem 1.5rem !important;
  gap: 1.25rem !important;
}

/* Prevent logo PNG from stretching to fill container width.
   The global img { max-width:100%; height:auto } overrides HTML height attrs
   on wide PNGs (logo is 6400x1920 native), so we opt logo images out of that
   rule AND set a sensible default max-height. Component-level rules with
   `height: Npx !important` (header, footer) still take precedence. */
img[src*="logo.png"],
img[src*="logo-mcv"] {
  max-width: none !important;
  width: auto !important;
  max-height: 64px;
}

/* Header logo — cream plate for full-colour mark */
.site-header .hd-logo {
  display: inline-flex;
  align-items: center;
  background: #FFFCF7;
  padding: 0.35rem 0.85rem;
  border-radius: 12px;
  border: 1px solid rgba(201,150,42,0.28);
  box-shadow: 0 1px 0 rgba(255,255,255,0.9) inset, 0 6px 16px -10px rgba(26,10,0,0.18);
}
.site-header .hd-logo:hover { transform: translateY(-1px) scale(1.02); }
.site-header .hd-logo img {
  height: 44px !important;
  width: auto;
  display: block;
}

/* Nav links — espresso on cream */
.hd-nav-link {
  color: #3D2B1F !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em;
  border-radius: 999px !important;
}
.hd-nav-link:hover {
  color: #8B1A2E !important;
  background: rgba(139,26,46,0.06) !important;
}
.hd-nav-link i.dropdown-arrow { width: 14px; height: 14px; opacity: 0.55; }
.hd-signin {
  color: #3D2B1F !important;
  font-weight: 600 !important;
  border-radius: 999px !important;
}
.hd-signin:hover {
  color: #8B1A2E !important;
  background: rgba(139,26,46,0.06) !important;
}
header.site-header a:not(.btn):not(.hd-mega-link) { color: #3D2B1F !important; }
header.site-header a:not(.btn):not(.hd-mega-link):hover { color: #8B1A2E !important; }
.site-header * { -webkit-text-fill-color: initial !important; }

.hd-menu-toggle {
  border: 1px solid rgba(201,150,42,0.28) !important;
  background: #FFFCF7 !important;
  color: #3D2B1F !important;
  border-radius: 10px !important;
}
.hd-menu-toggle:hover { background: #F7EEDC !important; }

/* Book demo CTA */
.hd-cta {
  background: linear-gradient(180deg, #D4A574, #C9962A 40%, #A67720) !important;
  border: 1px solid rgba(139,90,20,0.35) !important;
  color: #1A0A00 !important;
  font-weight: 700 !important;
  border-radius: 999px !important;
  box-shadow: 0 6px 16px -6px rgba(201,150,42,0.55), 0 1px 0 rgba(255,255,255,0.35) inset !important;
}
.hd-cta,
.hd-cta span,
.hd-cta i {
  color: #1A0A00 !important;
  -webkit-text-fill-color: #1A0A00 !important;
}
.hd-cta:hover {
  box-shadow: 0 10px 22px -8px rgba(201,150,42,0.65) !important;
  color: #1A0A00 !important;
}

/* Mega menu */
.hd-dropdown {
  border-color: rgba(201,150,42,0.22) !important;
  border-radius: 1.1rem !important;
  box-shadow:
    0 28px 56px -18px rgba(26,10,0,0.22),
    0 0 0 1px rgba(201,150,42,0.08) !important;
  padding: 1.15rem !important;
}
.hd-mega-h {
  color: #8B1A2E !important;
  font-family: var(--font-display, 'Fraunces', Georgia, serif);
  letter-spacing: 0.06em;
}
.hd-mega-link strong { color: #2C1810; }
.hd-mega-link:hover { background: rgba(201,150,42,0.07) !important; }
.hd-mega-ic {
  background: #F7EEDC;
  color: #8B1A2E;
  border: 1px solid rgba(201,150,42,0.2);
}
.hd-mega-ic[data-tone="wine"] { background: #FDF0F2; color: #8B1A2E; border-color: rgba(139,26,46,0.18); }
.hd-mega-ic[data-tone="green"] { background: #E8F5EF; color: #1F6B4A; border-color: rgba(42,96,73,0.18); }
.hd-mega-ic[data-tone="sky"] { background: #EAF4FB; color: #1E5A7A; border-color: rgba(30,90,122,0.16); }
.hd-mega-ic[data-tone="amber"] { background: #FFF4E0; color: #9A6400; border-color: rgba(201,150,42,0.28); }
.hd-mega-ic[data-tone="gold"] { background: #F7E9C4; color: #7A5508; border-color: rgba(201,150,42,0.35); }
.hd-mega-ic[data-tone="espresso"] { background: #2C1810; color: #F0D060; border-color: transparent; }
.hd-mega-promo {
  background:
    radial-gradient(120% 80% at 0% 0%, rgba(240,208,96,0.28), transparent 55%),
    linear-gradient(160deg, #FFF8EE, #FDF0F2) !important;
  border-color: rgba(139,26,46,0.18) !important;
  border-radius: 1rem !important;
}
.hd-mega-promo-badge {
  background: #8B1A2E !important;
  border-radius: 6px !important;
  letter-spacing: 0.06em;
}
.hd-mega-promo h4 {
  font-family: var(--font-display, 'Fraunces', Georgia, serif);
  color: #1A0A00;
}
.hd-mega-promo .btn {
  background: linear-gradient(180deg, #C9962A, #A67720) !important;
  border: 0 !important;
  color: #1A0A00 !important;
  font-weight: 700;
  border-radius: 999px;
}

/* Mobile drawer */
.hd-drawer-content {
  background:
    radial-gradient(80% 40% at 100% 0%, rgba(201,150,42,0.16), transparent 55%),
    linear-gradient(180deg, #241208, #1A0A00) !important;
  border-left: 1px solid rgba(201,150,42,0.22);
}
.hd-drawer-head {
  border-color: rgba(201,150,42,0.2) !important;
}
.hd-drawer-head .hd-logo {
  display: inline-flex;
  background: #FFFCF7;
  padding: 0.3rem 0.7rem;
  border-radius: 10px;
  border: 1px solid rgba(201,150,42,0.28);
}
.hd-drawer-head .hd-logo img {
  filter: none !important;
  height: 34px !important;
  width: auto;
}
.hd-drawer-section h4 { color: #C9962A !important; }
.hd-drawer-section a { color: #D4C4A8 !important; }
.hd-drawer-section a:hover { background: rgba(201,150,42,0.12) !important; color: #F0D060 !important; }
.hd-drawer-section a i { color: #A89070 !important; }
.hd-drawer-close {
  color: #D4C4A8 !important;
  border: 1px solid rgba(201,150,42,0.25);
  border-radius: 10px;
}
.hd-drawer-close:hover { background: rgba(201,150,42,0.12) !important; color: #F0D060 !important; }
.hd-drawer-cta {
  border-top-color: rgba(201,150,42,0.18) !important;
  gap: 0.65rem !important;
}
.hd-drawer-cta .btn-primary {
  background: linear-gradient(180deg, #C9962A, #A67720) !important;
  color: #1A0A00 !important;
  border: 0 !important;
  font-weight: 700;
}
.hd-drawer-cta .btn-secondary {
  background: transparent !important;
  border: 1px solid rgba(201,150,42,0.35) !important;
  color: #F0D060 !important;
}

/* Status chip */
.nav-status-chip { background: rgba(42,96,73,0.15); color: #3DAB7E; }

/* ================================================================
   DASHBOARD / APP SIDEBAR + TOPBAR
================================================================ */
.sidebar {
  background: #1A0A00 !important;
  border-right-color: rgba(201,150,42,0.15) !important;
}
.sidebar-brand, .sidebar-logo { color: #F0D060 !important; }
.sidebar-brand strong, .sidebar-brand span { color: #F0D060 !important; }

/* Colorful logo on a cream plate — readable on the dark espresso sidebar */
.sidebar-brand {
  display: flex;
  align-items: center;
  text-decoration: none;
  padding: 0.55rem 0.55rem 1.05rem;
  margin-bottom: 0.75rem;
}
.sidebar-brand__plate {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 0.7rem 0.85rem;
  border-radius: 0.95rem;
  background: #FDF8F0;
  box-shadow: 0 10px 24px -14px rgba(0, 0, 0, 0.55);
}
.sidebar-brand__plate img {
  display: block;
  height: 52px !important;
  width: auto !important;
  max-width: 100%;
  max-height: none !important;
  filter: none !important;
}

.nav-item { color: #D4C4A8 !important; }
.nav-item:hover, .nav-item.active {
  background: rgba(201,150,42,0.1) !important;
  color: #F0D060 !important;
}
.nav-item.active { border-left: 3px solid #C9962A !important; }
.nav-section-label { color: #7A6550 !important; }

.topbar {
  background: white !important;
  border-bottom: 1px solid var(--gray-200) !important;
}
.topbar-title { font-family: var(--font-display, 'Fraunces', Georgia, serif); color: var(--gray-900); }

/* ================================================================
   ADMIN PANEL HEADER
================================================================ */
.admin-header, [class*="admin-nav"],
.staff-banner, [style*="background: linear-gradient(90deg, var(--dark)"] {
  background: linear-gradient(90deg, #1A0A00, #2C1510) !important;
  border-bottom-color: rgba(201,150,42,0.2) !important;
}

/* ================================================================
   CHEF APP HEADER
================================================================ */
.chef-header, .chef-topbar,
[style*="background:linear-gradient(135deg,var(--primary)"] {
  background: linear-gradient(135deg, #8B1A2E, #C9962A) !important;
}

/* ================================================================
   AUTH PAGES
================================================================ */
.auth-side, .auth-left {
  /* Photo + overlay live on .auth-side via inline --auth-side-photo;
     keep a deep espresso fallback only when no photo is set. */
  color: #FFF8EE !important;
}
.auth-side h1, .auth-side h2, .auth-side h3,
.auth-side .auth-side__title { color: #FFF8EE !important; }
.auth-side p,
.auth-side .auth-side__lead { color: #D4C4A8 !important; }
.auth-side .eyebrow,
.auth-side .badge,
.auth-side .auth-side__eyebrow { color: #F0D060 !important; }
.auth-side .auth-quote p { color: #FFF8EE !important; }
.auth-form-wrap .btn-primary.auth-submit,
.auth-panel .btn-primary.auth-submit,
.auth-form-wrap .btn-primary,
.auth-panel .btn-primary {
  background: linear-gradient(180deg, #D4A574, #C9962A 42%, #A67720) !important;
  color: #1A0A00 !important;
  border: 1px solid rgba(139,90,20,0.3) !important;
}
.auth-form-wrap .btn-primary.auth-submit:hover,
.auth-panel .btn-primary.auth-submit:hover,
.auth-form-wrap .btn-primary:hover,
.auth-panel .btn-primary:hover {
  box-shadow: 0 16px 32px -14px rgba(201,150,42,0.75) !important;
}

/* ================================================================
   BUTTONS — global overrides
================================================================ */
.btn-primary {
  background: linear-gradient(180deg, #C9962A 0%, #A67720 100%) !important;
  color: white !important;
}
.btn-primary:hover { box-shadow: 0 8px 20px -4px rgba(201,150,42,0.6) !important; }

.btn-soft-primary {
  background: var(--primary-light) !important;
  color: var(--primary) !important;
}
.btn-soft-info {
  background: var(--primary-light) !important;
  color: var(--primary) !important;
}
.badge-info { background: var(--primary-light) !important; color: var(--primary) !important; }
.badge-primary { background: var(--primary-light) !important; color: var(--primary-dark) !important; }

/* ================================================================
   CARDS
================================================================ */
.card { border-color: var(--gray-200); }
.card:hover { border-color: var(--gray-300); }
.card-hover:hover { box-shadow: 0 20px 40px -12px rgba(139,26,46,0.1); }

.feature-card:hover {
  border-color: rgba(201,150,42,0.45);
  box-shadow: 0 24px 50px -16px rgba(139,26,46,0.12);
}

/* ================================================================
   FORMS — focus ring
================================================================ */
.input:focus, .select:focus, .textarea:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(201,150,42,0.15);
}

/* ================================================================
   TABLES
================================================================ */
.table thead th { background: var(--gray-50); color: var(--gray-600); border-color: var(--gray-200); }
.table tbody tr:hover { background: #FDF8F0; }

/* ================================================================
   SECTION BACKGROUNDS
================================================================ */
body { background: var(--gray-50); }
.section { background: white; }

/* ================================================================
   EYEBROW CHIPS
================================================================ */
.eyebrow {
  color: var(--accent);
  background: rgba(201,150,42,0.1);
  border-color: rgba(201,150,42,0.3);
}

/* ================================================================
   SECTION TITLES — gradient sweep
================================================================ */
.section-title {
  font-family: var(--font-display, 'Fraunces', Georgia, serif) !important;
  background: linear-gradient(120deg,
    var(--gray-900) 0%, var(--gray-900) 38%,
    var(--primary) 50%,
    var(--gray-900) 62%, var(--gray-900) 100%
  ) !important;
  background-size: 250% 100% !important;
  background-position: 100% 50% !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  transition: background-position 1.4s ease;
}
.section-title.in-view { background-position: 0% 50% !important; }
.section-title .accent { -webkit-text-fill-color: var(--primary) !important; color: var(--primary); }

/* Hero h1 accent → gold on dark background */
.hero h1 .accent,
.hero h1 span.accent,
.hero-slider h1 .accent {
  color: #F0D060 !important;
  -webkit-text-fill-color: #F0D060 !important;
  text-shadow: 0 2px 24px rgba(201,150,42,0.45);
}

/* ================================================================
   COMPLIANCE BADGES
================================================================ */
.compliance-badge { border-color: var(--gray-200); color: var(--gray-600); }
.compliance-badge:hover { border-color: var(--accent); color: var(--accent); box-shadow: 0 12px 24px -8px rgba(201,150,42,0.18); }
.compliance-badge i { color: var(--accent); }

/* ================================================================
   TESTIMONIAL CARDS
================================================================ */
.testi-card:hover { border-color: var(--accent); box-shadow: 0 24px 50px -16px rgba(201,150,42,0.2); }
.testi-card .quote-mark { color: var(--accent); }

/* ================================================================
   FAQ
================================================================ */
.faq-card { background: white; border-color: var(--gray-200); }
.faq-card:hover { border-color: rgba(201,150,42,0.4); }
.faq-card[open] { border-color: var(--primary); box-shadow: 0 20px 40px -12px rgba(139,26,46,0.18); }
.faq-card[open] summary { background: linear-gradient(135deg, var(--primary-light), transparent); }
.faq-card[open] .faq-toggle { background: var(--primary); }
.faq-filter.active { background: var(--primary); border-color: var(--primary); }
.faq-filter:hover { border-color: var(--primary); color: var(--primary); }
.faq-footer-card .ff-icon { background: linear-gradient(135deg, var(--primary), var(--accent)); }
.faq-aside h2 { font-family: var(--font-display, 'Fraunces', Georgia, serif); }
.faq-aside-actions a i { color: var(--primary); }
.faq-aside-actions a:hover { border-color: var(--primary); color: var(--primary); }
.faq-aside-card { background: linear-gradient(135deg, var(--primary-light), white); border-color: rgba(139,26,46,0.2); }

/* ================================================================
   PRESS / AWARDS
================================================================ */
.press-strip { background: var(--gray-50); border-color: var(--gray-200); }
.press-logo { color: var(--gray-400); }
.press-logo:hover { color: var(--gray-700); }
.award-badge { background: linear-gradient(135deg, #FEF3C7, #FDE68A); border-color: #D4A017; color: #7C4A00; }

/* ================================================================
   WORKFLOW VIZ
================================================================ */
.workflow-viz { background: linear-gradient(180deg, var(--gray-100), var(--gray-50)); }
.wf-node { background: white; border-color: var(--gray-200); }
.wf-node:hover { border-color: var(--accent); box-shadow: 0 24px 50px -16px rgba(139,26,46,0.12); }
.wf-line { background: linear-gradient(90deg, var(--primary), var(--accent)); }
.wf-particle { background: #F0D060; box-shadow: 0 0 12px #C9962A, 0 0 20px rgba(201,150,42,0.4); }

/* ================================================================
   BENTO GRID
================================================================ */
.bento-card { background: white; border-color: var(--gray-200); }
.bento-card:hover { border-color: rgba(201,150,42,0.5); box-shadow: 0 24px 50px -16px rgba(139,26,46,0.14); }
.bento-big { background: linear-gradient(135deg, var(--primary-light), white); }
.bento-tag { background: var(--primary-light); color: var(--primary); }

/* ================================================================
   INTEGRATION CARDS
================================================================ */
.integration-card { border-color: var(--gray-200); }
.integration-card:hover { border-color: var(--accent); box-shadow: 0 12px 24px -8px rgba(201,150,42,0.2); }

/* ================================================================
   LOGO WALL
================================================================ */
.logo-wall-card { background: white; border-color: var(--gray-200); }
.logo-wall-card:hover { border-color: var(--accent); box-shadow: 0 18px 32px -12px rgba(201,150,42,0.22); }

/* ================================================================
   RESOURCE CARDS
================================================================ */
.resource-card { background: white; border-color: var(--gray-200); }
.resource-card:hover { border-color: var(--accent); box-shadow: 0 24px 50px -16px rgba(201,150,42,0.2); }
.resource-card .rc-cat { color: var(--primary); }

/* ================================================================
   FOUNDER CARDS
================================================================ */
.founder-card { background: white; border-color: var(--gray-200); }
.founder-card:hover { border-color: var(--accent); box-shadow: 0 20px 40px -12px rgba(139,26,46,0.12); }
.founder-card .role { color: var(--primary); }

/* ================================================================
   TOUR TABS
================================================================ */
.tour-shell { border-color: var(--gray-200); }
.tour-tabs { background: var(--gray-100); border-color: var(--gray-200); }
.tour-tab { color: var(--gray-500); }
.tour-tab:hover { color: var(--gray-800); }
.tour-tab.active { color: var(--primary); box-shadow: 0 -2px 0 0 var(--primary) inset; }

/* ================================================================
   ROI MINI (dark section)
================================================================ */
.roi-mini { background: linear-gradient(135deg, #1A0A00, #2C1510, #3D1A05) !important; }
.roi-mini::before {
  background: radial-gradient(circle at 80% 20%, rgba(201,150,42,0.18), transparent 50%),
              radial-gradient(circle at 20% 80%, rgba(139,26,46,0.2), transparent 50%) !important;
}
.roi-result { background: rgba(201,150,42,0.06); border-color: rgba(201,150,42,0.2); }
.roi-result .big { background: linear-gradient(120deg, #F0D060, #FDE68A); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.roi-slider { accent-color: #C9962A; }
.rv { color: #F0D060 !important; }

/* ================================================================
   CASE STUDY CARD
================================================================ */
.case-study-card { background: linear-gradient(135deg, #1A0A00, #2C1510); }
.case-metric .v { background: linear-gradient(120deg, #F0D060, #FDE68A); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }

/* ================================================================
   NEWSLETTER
================================================================ */
.newsletter { background: linear-gradient(135deg, var(--primary-light), white); border-color: var(--primary-soft); }
.newsletter input[type="email"]:focus { border-color: var(--primary); box-shadow: 0 0 0 4px rgba(139,26,46,0.1); }

/* ================================================================
   STICKY CTA BUTTON
================================================================ */
.sticky-cta {
  background: linear-gradient(135deg, #C9962A, #A67720) !important;
  box-shadow: 0 20px 40px -10px rgba(201,150,42,0.6), 0 0 0 1px rgba(201,150,42,0.25) !important;
  color: white !important;
}

/* ================================================================
   ACTIVITY TICKER
================================================================ */
.activity-ticker { background: rgba(26,10,0,0.94); border-color: rgba(201,150,42,0.3); }
.activity-ticker .at-head { color: #3DAB7E; }
.activity-ticker .at-row .num { color: #F0D060; }

/* ================================================================
   TOAST NOTIFICATIONS
================================================================ */
.toast-item.toast-critical { border-left-color: var(--primary); }
.toast-item.toast-success { border-left-color: var(--secondary); }
.toast-item.toast-warning { border-left-color: var(--warning); }

/* ================================================================
   CALENDAR / BOOKING
================================================================ */
.cal-shell { border-color: var(--gray-200); }
.cal-info { background: linear-gradient(180deg, var(--gray-100), white); border-color: var(--gray-200); }
.cal-info-host .av { background: linear-gradient(135deg, #C9962A, #8B1A2E); }
.cal-info-meta i { color: var(--primary); }
.cal-info-list li i { color: var(--secondary); }
.cal-day:hover, .cal-day.selected { border-color: var(--primary); color: var(--primary); background: var(--primary-light); }

/* ================================================================
   SCROLL PROGRESS BAR
================================================================ */
.scroll-progress {
  background: linear-gradient(90deg, var(--primary), var(--accent), var(--primary)) !important;
  background-size: 200% 100% !important;
}

/* ================================================================
   COUNTERS / STATS
================================================================ */
.counter { color: var(--primary) !important; }
[data-count] { color: var(--primary); }

/* ================================================================
   COMPARE STRIP
================================================================ */
.compare-strip { border-color: var(--gray-200); }
.compare-strip .compare-col.compare-win { background: linear-gradient(135deg, var(--primary-light), white); }
.compare-strip .compare-head.win { color: var(--primary); }
.compare-strip .compare-row.w > div { color: var(--primary); }
.compare-strip .compare-row.w > div::before { color: var(--secondary); }

/* ================================================================
   FOOTER
================================================================ */
.site-footer,
footer {
  background:
    radial-gradient(70% 50% at 10% 0%, rgba(139,26,46,0.22), transparent 55%),
    radial-gradient(50% 40% at 90% 10%, rgba(201,150,42,0.12), transparent 50%),
    #1A0A00 !important;
  border-top: 1px solid rgba(201,150,42,0.22) !important;
  color: #A89070;
  padding: 0 0 1.75rem !important;
}

.footer-cta {
  border-bottom: 1px solid rgba(201,150,42,0.16);
  background:
    linear-gradient(90deg, rgba(139,26,46,0.28), transparent 45%),
    linear-gradient(180deg, rgba(255,252,247,0.04), transparent);
}
.footer-cta__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 2.25rem 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  flex-wrap: wrap;
}
.footer-cta__eyebrow {
  margin: 0 0 0.35rem;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #C9962A;
}
.footer-cta__title {
  margin: 0 0 0.35rem;
  font-size: clamp(1.35rem, 2.4vw, 1.85rem);
  color: #FFF8EE;
  font-family: var(--font-display, 'Fraunces', Georgia, serif);
  letter-spacing: -0.02em;
  line-height: 1.15;
}
.footer-cta__lead {
  margin: 0;
  color: #A89070;
  font-size: 0.95rem;
}
.footer-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  align-items: center;
}
.footer-cta__actions .btn-primary {
  background: linear-gradient(180deg, #D4A574, #C9962A 40%, #A67720) !important;
  color: #1A0A00 !important;
  border: 0 !important;
  font-weight: 700;
  border-radius: 999px;
}
.footer-cta__ghost {
  color: #F0D060 !important;
  border: 1px solid rgba(201,150,42,0.35) !important;
  border-radius: 999px;
  background: transparent !important;
}
.footer-cta__ghost:hover { background: rgba(201,150,42,0.1) !important; color: #FFF8EE !important; }

.footer-inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 2.5rem 1.5rem 0;
  gap: 2.25rem;
}
.footer-brand { max-width: 280px; }
.footer-brand p {
  margin: 0 0 1rem;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #A89070;
}
.footer-logo {
  display: inline-flex !important;
  align-items: center;
  background: #FFFCF7 !important;
  padding: 0.4rem 0.85rem !important;
  border-radius: 12px !important;
  border: 1px solid rgba(201,150,42,0.3);
  margin-bottom: 1rem !important;
  box-shadow: 0 8px 20px -14px rgba(0,0,0,0.5);
}
.footer-logo img {
  height: 40px !important;
  width: auto;
  display: block;
}
.footer-social {
  display: flex;
  gap: 0.5rem;
}
.footer-social a {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  border: 1px solid rgba(201,150,42,0.22);
  color: #D4C4A8 !important;
  background: rgba(255,252,247,0.03);
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.footer-social a:hover {
  color: #F0D060 !important;
  border-color: rgba(201,150,42,0.45);
  background: rgba(201,150,42,0.12);
}
.footer-social a i { width: 16px; height: 16px; }

footer h4,
.footer-col h4 {
  color: #FFF8EE !important;
  font-family: var(--font-display, 'Fraunces', Georgia, serif);
  font-size: 0.95rem !important;
  font-weight: 600;
  margin: 0 0 0.85rem !important;
}
.footer-col a {
  color: #A89070 !important;
  padding: 0.28rem 0;
  transition: color 0.15s ease, padding-left 0.15s ease;
}
.footer-col a:hover {
  color: #F0D060 !important;
  padding-left: 0.2rem;
}

.footer-bottom {
  max-width: 1280px;
  margin: 2rem auto 0 !important;
  padding: 1.25rem 1.5rem 0 !important;
  color: #7A6550 !important;
  border-top-color: rgba(201,150,42,0.14) !important;
  font-size: 0.8rem;
}
.footer-bottom a { color: #C9962A !important; }
.footer-bottom a:hover { color: #F0D060 !important; }

@media (max-width: 768px) {
  .footer-cta__inner { padding: 1.75rem 1.25rem; }
  .footer-brand { max-width: none; }
  .footer-social { justify-content: center; }
}

/* ================================================================
   ONBOARDING / STEP PAGES
================================================================ */
.onboarding-sidebar { background: linear-gradient(160deg, #1A0A00, #2C1510) !important; }
.step-active { background: rgba(201,150,42,0.15) !important; border-color: rgba(201,150,42,0.4) !important; color: #F0D060 !important; }
.step-done { color: #3DAB7E !important; }

/* ================================================================
   MOBILE / RESPONSIVE OVERRIDES
================================================================ */
@media (max-width: 768px) {
  .site-header { background: rgba(255,252,247,0.98) !important; }
  .site-header .hd-logo img { height: 36px !important; }
  .hd-inner { padding: 0.45rem 1rem !important; }
}
