/* ==========================================================================
   CUSTOM.CSS - Per-Company Customization
   ==========================================================================
   This file is loaded AFTER style.css and overrides the default theme.
   Each company gets their own copy of this file.

   PALETTE:  Navy #093f89  |  Orange #f1571f  |  White #ffffff
     - Header                -> WHITE  #ffffff  (black text on top)
     - Top nav bar           -> NAVY   #093f89  (white text on top)
     - Footer                -> WHITE  #ffffff  (black text on top)
     - Main accents (links, icons, borders, nav) -> NAVY
     - CTA buttons / prices / highlights          -> ORANGE

   INSTRUCTIONS:
   - Change ONLY the :root variables below to customize colors
   - Add company-specific overrides in Section 2
   - DO NOT edit style.css - it is shared across all installations
   ========================================================================== */


/* ==========================================================================
   1. COLOR VARIABLES
   ========================================================================== */
:root {

    /* === PRESET: Navy #093f89 (primary) + Orange #f1571f (secondary) === */
    --accent-color: #093f89;
    --accent-color-dark: #062e66;
    --accent-color-light: #5a7fb3;
    --accent-color-mid: #2f5f9d;

    /* -----------------------------------------------------------------
       SECONDARY / CTA COLOR  ->  ORANGE
       ----------------------------------------------------------------- */
    --cta-color: #f1571f;
    --cta-color-dark: #c8430f;
    --cta-color-light: #f68a5c;

    /* -----------------------------------------------------------------
       ACCENT TRANSPARENT VARIANTS  (NAVY)
       ----------------------------------------------------------------- */
    --accent-glow-strong: rgba(9, 63, 137, 1);
    --accent-glow: rgba(9, 63, 137, 0.7);
    --accent-glow-soft: rgba(9, 63, 137, 0.45);
    --accent-glow-dim: rgba(9, 63, 137, 0.35);
    --accent-glow-faint: rgba(9, 63, 137, 0.08);
    --accent-bg-subtle: rgba(9, 63, 137, 0.12);
    --accent-bg-glass: rgba(6, 46, 102, 0.10);
    --accent-bg-radial: rgba(9, 63, 137, 0.15);
    --accent-border-subtle: rgba(9, 63, 137, 0.22);
    --accent-border-medium: rgba(9, 63, 137, 0.30);
    --accent-text-85: rgba(6, 46, 102, 0.85);
    --accent-text-70: rgba(6, 46, 102, 0.70);

    /* -----------------------------------------------------------------
       CTA TRANSPARENT VARIANTS  (ORANGE)
       ----------------------------------------------------------------- */
    --cta-glow: rgba(241, 87, 31, 0.7);
    --cta-glow-soft: rgba(241, 87, 31, 0.45);
    --cta-bg-subtle: rgba(241, 87, 31, 0.12);
    --cta-border-medium: rgba(241, 87, 31, 0.30);

    /* -----------------------------------------------------------------
       ACTION BUTTONS
       NOTE: --success/--success-dark were GREEN (#10B981/#059669).
       Remapped to the palette so no green appears on hover states.
       ----------------------------------------------------------------- */
    --warning: #f1571f;
    --error: #f1571f;
    --success: #093f89;
    --success-dark: #062e66;

    /* -----------------------------------------------------------------
       TOP NAVIGATION BAR  ->  NAVY
       ----------------------------------------------------------------- */
    --topbar-bg: #093f89;
    --topbar-text: #ffffff;

    /* -----------------------------------------------------------------
       TEXT COLORS
       ----------------------------------------------------------------- */
    --text-color: #333;
    --text-muted: #6c757d;

    /* -----------------------------------------------------------------
       BACKGROUNDS
       ----------------------------------------------------------------- */
    --light-bg: #f8f9fa;
    --white: #ffffff;
    --dark-bg: #062e66;

    /* -----------------------------------------------------------------
       BORDERS
       ----------------------------------------------------------------- */
    --border-color: #e2e8f0;

    /* -----------------------------------------------------------------
       FLATPICKR DATE PICKER
       ----------------------------------------------------------------- */
    --flatpickr-hover-bg: #093f89;
    --flatpickr-hover-text: #ffffff;
}


/* ==========================================================================
   QUICK REFERENCE
   ==========================================================================
   NAVY    #093f89  -> Top nav bar, links, icons, borders, selected states,
                       badges
   D-NAVY  #062e66  -> Hover states on navy elements
   ORANGE  #f1571f  -> CTA buttons, prices, key highlights
   D-ORANGE#c8430f  -> Hover states on CTAs
   WHITE   #ffffff  -> Header & Footer background
   BLACK   #000000  -> Header & Footer text
   ========================================================================== */


/* 1. Labels */
.ez-sf-field label {
    font-weight: 600 !important;
    font-size: 0.73rem !important;
}


/* ==========================================================================
   2. TOP NAV BAR (NAVY)  --  WHITE TEXT
   ========================================================================== */
.topbar,
.top-bar,
.ez-topbar,
.ez-top-bar {
    background-color: #093f89 !important;
    color: #ffffff !important;
}
.topbar a,
.top-bar a,
.ez-topbar a,
.ez-top-bar a,
.topbar i,
.top-bar i,
.ez-topbar i,
.ez-top-bar i {
    color: #ffffff !important;
}
.topbar a:hover,
.top-bar a:hover,
.ez-topbar a:hover,
.ez-top-bar a:hover {
    color: #f1571f !important;
}


/* ==========================================================================
   3. HEADER (WHITE)  &  FOOTER (WHITE)  -- BLACK TEXT
   ========================================================================== */

/* --- Header --- WHITE background --- */
header.bg-gray-950.text-gray-300.shadow-sm.sticky.top-0.z-50 {
    background-color: #ffffff;
}

/* --- Nav links --- BLACK on white, hover NAVY --- */
.ez-nav-link {
    color: #000000 !important;
}
.ez-nav-link:hover {
    color: #093f89 !important;
}

button#nav-toggle {
    color: #000000;
}

/* --- Mobile nav --- WHITE (matches header) --- */
@media (max-width: 1024px) {
    #nav-menu.nav-menu--open {
        background-color: #ffffff;
    }
}


/* --- Footer --- WHITE background --- */
footer.bg-gray-950.text-gray-300.py-12.relative.overflow-hidden.font-sans {
    background-color: #ffffff;
}
footer .text-custom-accent {
    color: #093f89;
}
footer .border-custom-accent\/30 {
    border-color: rgba(9, 63, 137, 0.30);
}

/* --- Footer texts --- BLACK --- */
footer .footer-link-item {
    color: #000000;
}
footer .footer-link-item:hover {
    color: #093f89;
}
p.flex.items-center.text-gray-400.hover\:text-custom-accent.transition {
    color: #000000;
}
p.flex.items-center.text-gray-400.hover\:text-custom-accent.transition:hover {
    color: #093f89;
}
p.text-gray-400.text-base.max-w-sm.leading-relaxed.hover\:text-custom-accent {
    color: #000000;
}
.text-center.md\:text-center.space-y-0\.5.w-full.mt-4 {
    color: #000000;
}
footer .hover\:text-custom-accent {
    color: #000000;
}
footer .hover\:text-custom-accent:hover {
    color: #093f89;
}

/* --- Footer headings --- BLACK --- */
h5.font-bold.text-white.mb-4.uppercase.tracking-widest.text-sm.border-b.border-custom-accent\/30.pb-2 {
    color: #000000;
}
h5.font-bold.text-white.mb-5.uppercase.tracking-widest.text-sm.border-b.border-custom-accent\/30.pb-2 {
    color: #000000;
}


/* ==========================================================================
   4. CTA BUTTONS & PRICES  ->  ORANGE
   ========================================================================== */
.btn-primary,
.btn-cta,
.ez-btn-primary,
button[type="submit"] {
    background-color: #f1571f;
    border-color: #f1571f;
    color: #ffffff;
}
.btn-primary:hover,
.btn-cta:hover,
.ez-btn-primary:hover,
button[type="submit"]:hover {
    background-color: #c8430f;
    border-color: #c8430f;
    color: #ffffff;
}

/* --- Prices --- ORANGE --- */
.price,
.model-price,
.ez-price {
    color: #f1571f;
}


/* ==========================================================================
   5. MISC ACCENTS
   ========================================================================== */
.model-spec-item:hover {
    border-color: #093f89;
}
.model-includes-title i {
    color: #093f89;
}

/* --- Form borders --- subtle GRAY --- */
.form-group input[type="text"], .form-group input[type="date"],
.form-group input[type="time"], .form-group select {
    border: 1px solid #c5c8c7;
}

/* --- Form focus --- NAVY --- */
.form-group input[type="text"]:focus, .form-group input[type="date"]:focus,
.form-group input[type="time"]:focus, .form-group select:focus {
    border-color: #093f89;
    outline: none;
}

/* --- Form field icons --- */
.mf-field label i {
    color: #093f89 !important;
}
.model-spec-icon {
    color: #9f9b9b;
}


/* ==========================================================================
   6. NO-GREEN HOVER OVERRIDES
   ========================================================================== */

/* --- Generic link hover --- NAVY --- */
a:hover {
    color: #093f89;
}

/* --- Success / green-ish buttons --- NAVY --- */
.btn-success,
.ez-btn-success,
.btn-secondary {
    background-color: #093f89;
    border-color: #093f89;
    color: #ffffff;
}
.btn-success:hover,
.ez-btn-success:hover,
.btn-secondary:hover {
    background-color: #062e66;
    border-color: #062e66;
    color: #ffffff;
}

/* --- Outline / ghost buttons --- NAVY on hover --- */
.btn-outline:hover,
.ez-btn-outline:hover {
    background-color: #093f89;
    border-color: #093f89;
    color: #ffffff;
}

/* --- Cards / list items --- NAVY border on hover --- */
.card:hover,
.model-card:hover,
.ez-card:hover {
    border-color: #093f89;
}

/* --- Icons --- NAVY on hover --- */
a:hover i,
.icon:hover,
.ez-icon:hover {
    color: #093f89;
}

/* --- Badges / tags --- NAVY --- */
.badge-success,
.tag-success {
    background-color: #093f89;
    color: #ffffff;
}

/* --- Flatpickr selected/hover --- NAVY --- */
.flatpickr-day:hover,
.flatpickr-day.selected,
.flatpickr-day.selected:hover {
    background: #093f89;
    border-color: #093f89;
    color: #ffffff;
}

/* --- Dropdown / select option hover --- NAVY --- */
option:checked,
option:hover,
.select-option:hover {
    background-color: #093f89;
    color: #ffffff;
}


/* ==========================================================================
   7. BOX-SHADOW  --  NO GREEN
   ========================================================================== */

/* --- Buttons --- NAVY glow --- */
.btn:hover,
.btn-secondary:hover,
.btn-success:hover,
.btn-outline:hover,
.ez-btn-success:hover,
.ez-btn-outline:hover {
    box-shadow: 0 4px 14px rgba(9, 63, 137, 0.35);
}

/* --- CTA (orange) buttons keep an ORANGE glow --- */
.btn-cta:hover,
.btn-primary:hover,
.ez-btn-primary:hover,
button[type="submit"]:hover {
    box-shadow: 0 4px 14px rgba(241, 87, 31, 0.35);
}

/* --- Focus rings on inputs --- NAVY --- */
.form-group input[type="text"]:focus,
.form-group input[type="date"]:focus,
.form-group input[type="time"]:focus,
.form-group select:focus,
input:focus,
textarea:focus,
select:focus {
    box-shadow: 0 0 0 3px rgba(9, 63, 137, 0.20);
}

/* --- Cards / panels --- NEUTRAL gray shadow --- */
.card,
.model-card,
.ez-card,
.panel {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.card:hover,
.model-card:hover,
.ez-card:hover,
.panel:hover {
    box-shadow: 0 6px 18px rgba(9, 63, 137, 0.18);
}

/* --- Selected / active states --- no glow --- */
.selected,
.is-active,
.active {
    box-shadow: 0 0 0 2px rgba(9, 63, 137, 0) !important;
}

/* --- Badges / tags --- no colored glow --- */
.badge,
.badge-success,
.tag,
.tag-success {
    box-shadow: none;
}

/* --- Flatpickr --- */
.flatpickr-day.selected,
.flatpickr-day:hover {
    box-shadow: none;
}
.flatpickr-calendar {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}


/* ==========================================================================
   8. BOOKING FORM BUTTON  --  TARGETED OVERRIDE
   ========================================================================== */

.booking-form button {
    background-color: #f1571f !important;
    border-color: #f1571f !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(241, 87, 31, 0.25) !important;
}

.booking-form button:hover {
    background-color: #c8430f !important;
    border-color: #c8430f !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(241, 87, 31, 0.40) !important;
}

.booking-form button:focus,
.booking-form button:focus-visible {
    box-shadow: 0 0 0 3px rgba(241, 87, 31, 0.30) !important;
    outline: none !important;
}

.booking-form button:active {
    background-color: #9e330a !important;
    box-shadow: 0 1px 4px rgba(241, 87, 31, 0.30) !important;
}


/* ==========================================================================
   9. INSURANCE / PRICE CARDS  --  NO GREEN
   ========================================================================== */

.ez-ins-card:hover {
    border-color: #093f89 !important;
    box-shadow: 0 6px 18px rgba(9, 63, 137, 0.18) !important;
}

.ez-ins-card:hover i,
.ez-ins-card:hover .ez-ins-title,
.ez-ins-card:hover a {
    color: #093f89 !important;
}

.ez-price-card--selected {
    background-color: rgba(241, 87, 31, 0.08) !important;
    border-color: #f1571f !important;
}

.border-green-500 {
    border-color: #093f89 !important;
}

.affiliateNextBtn {
    box-shadow: 0 6px 15px rgba(9, 63, 137, 0.14);
}
.affiliateNextBtn:hover {
    box-shadow: 0 10px 20px rgba(9, 63, 137, 0) !important;
}

.ez-accent-link:hover {
    color: #062e66!important;

}