/* ==========================================================================
   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:  Red #dd312a  |  White #ffffff
     - Header                -> RED #dd312a  (white text on top)
     - Top nav bar           -> RED #dd312a  (white text on top)
     - Footer                -> RED #dd312a  (white text on top)
     - All accents (links, icons, borders, nav, CTA, prices) -> RED

   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: Red #dd312a (single accent) === */
    --accent-color: #dd312a;
    --accent-color-dark: #b32219;
    --accent-color-light: #e8706b;
    --accent-color-mid: #e04a44;

    /* -----------------------------------------------------------------
       CTA COLOR  ->  RED (same as accent)
       ----------------------------------------------------------------- */
    --cta-color: #dd312a;
    --cta-color-dark: #b32219;
    --cta-color-light: #e8706b;

    /* -----------------------------------------------------------------
       ACCENT TRANSPARENT VARIANTS  (RED)
       ----------------------------------------------------------------- */
    --accent-glow-strong: rgba(221, 49, 42, 1);
    --accent-glow: rgba(221, 49, 42, 0.7);
    --accent-glow-soft: rgba(221, 49, 42, 0.45);
    --accent-glow-dim: rgba(221, 49, 42, 0.35);
    --accent-glow-faint: rgba(221, 49, 42, 0.08);
    --accent-bg-subtle: rgba(221, 49, 42, 0.12);
    --accent-bg-glass: rgba(221, 49, 42, 0.10);
    --accent-bg-radial: rgba(221, 49, 42, 0.15);
    --accent-border-subtle: rgba(221, 49, 42, 0.22);
    --accent-border-medium: rgba(221, 49, 42, 0.30);
    --accent-text-85: rgba(221, 49, 42, 0.85);
    --accent-text-70: rgba(221, 49, 42, 0.70);

    /* -----------------------------------------------------------------
       CTA TRANSPARENT VARIANTS  (RED)
       ----------------------------------------------------------------- */
    --cta-glow: rgba(221, 49, 42, 0.7);
    --cta-glow-soft: rgba(221, 49, 42, 0.45);
    --cta-bg-subtle: rgba(221, 49, 42, 0.12);
    --cta-border-medium: rgba(221, 49, 42, 0.30);

    /* -----------------------------------------------------------------
       ACTION BUTTONS
       NOTE: --success/--success-dark were GREEN (#10B981/#059669).
       Remapped to the palette so no green appears on hover states.
       ----------------------------------------------------------------- */
    --warning: #dd312a;
    --error: #dd312a;
    --success: #dd312a;
    --success-dark: #b32219;

    /* -----------------------------------------------------------------
       TOP NAVIGATION BAR  ->  RED
       ----------------------------------------------------------------- */
    --topbar-bg: #dd312a;
    --topbar-text: #ffffff;

    /* -----------------------------------------------------------------
       TEXT COLORS
       ----------------------------------------------------------------- */
    --text-color: #333;
    --text-muted: #dd312a;

    /* -----------------------------------------------------------------
       BACKGROUNDS
       ----------------------------------------------------------------- */
    --light-bg: #f8f9fa;
    --white: #ffffff;
    --dark-bg: #b32219;

    /* -----------------------------------------------------------------
       BORDERS
       ----------------------------------------------------------------- */
    --border-color: #e2e8f0;

    /* -----------------------------------------------------------------
       FLATPICKR DATE PICKER
       ----------------------------------------------------------------- */
    --flatpickr-hover-bg: #dd312a;
    --flatpickr-hover-text: #ffffff;
}


/* ==========================================================================
   QUICK REFERENCE
   ==========================================================================
   RED     #dd312a  -> Header, footer, top nav bar, links, icons, borders,
                       focus, cards, badges, CTA buttons, prices
   D-RED   #b32219  -> Hover states
   WHITE   #ffffff  -> All text/icons on header & footer, page background
   ========================================================================== */


/* 1. Labels */
.ez-sf-field label {
    font-weight: 600 !important;
    font-size: 0.73rem !important;
}


/* ==========================================================================
   2. TOP NAV BAR (RED)  --  WHITE TEXT
   ========================================================================== */
.topbar,
.top-bar,
.ez-topbar,
.ez-top-bar {
    background-color: #dd312a !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: #ffd6d4 !important;
}


/* ==========================================================================
   3. HEADER (RED)  &  FOOTER (RED)  -- WHITE TEXT
   ========================================================================== */

/* --- Header --- RED background --- */
header.bg-gray-950.text-gray-300.shadow-sm.sticky.top-0.z-50 {
    background-color: #dd312a;
}

/* --- Nav links --- WHITE on red --- */
.ez-nav-link {
    color: #ffffff !important;
}
.ez-nav-link:hover {
    color: #ffd6d4 !important;
}

button#nav-toggle {
    color: #ffffff;
}

/* --- Mobile nav --- RED (matches header) --- */
@media (max-width: 1024px) {
    #nav-menu.nav-menu--open {
        background-color: #dd312a;
    }
}


/* --- Footer --- RED background --- */
footer.bg-gray-950.text-gray-300.py-12.relative.overflow-hidden.font-sans {
    background-color: #dd312a;
}

/* --- Everything inside header & footer --- WHITE --- */
header.bg-gray-950.text-gray-300.shadow-sm.sticky.top-0.z-50 *,
footer.bg-gray-950.text-gray-300.py-12.relative.overflow-hidden.font-sans * {
    color: #ffffff !important;
}
header.bg-gray-950.text-gray-300.shadow-sm.sticky.top-0.z-50 a:hover,
header.bg-gray-950.text-gray-300.shadow-sm.sticky.top-0.z-50 a:hover i,
footer.bg-gray-950.text-gray-300.py-12.relative.overflow-hidden.font-sans a:hover,
footer.bg-gray-950.text-gray-300.py-12.relative.overflow-hidden.font-sans a:hover i {
    color: #ffd6d4 !important;
}

footer .text-custom-accent {
    color: #ffffff;
}
footer .border-custom-accent\/30 {
    border-color: rgba(255, 255, 255, 0.35);
}

/* --- Footer texts --- WHITE --- */
footer .footer-link-item {
    color: #ffffff;
}
footer .footer-link-item:hover {
    color: #ffd6d4;
}
p.flex.items-center.text-gray-400.hover\:text-custom-accent.transition {
    color: #ffffff;
}
p.flex.items-center.text-gray-400.hover\:text-custom-accent.transition:hover {
    color: #ffd6d4;
}
p.text-gray-400.text-base.max-w-sm.leading-relaxed.hover\:text-custom-accent {
    color: #ffffff;
}
.text-center.md\:text-center.space-y-0\.5.w-full.mt-4 {
    color: #ffffff;
}
footer .hover\:text-custom-accent {
    color: #ffffff;
}
footer .hover\:text-custom-accent:hover {
    color: #ffd6d4;
}

/* --- Footer headings --- WHITE --- */
h5.font-bold.text-white.mb-4.uppercase.tracking-widest.text-sm.border-b.border-custom-accent\/30.pb-2 {
    color: #ffffff;
}
h5.font-bold.text-white.mb-5.uppercase.tracking-widest.text-sm.border-b.border-custom-accent\/30.pb-2 {
    color: #ffffff;
}


/* ==========================================================================
   4. CTA BUTTONS & PRICES  ->  RED
   ========================================================================== */
.btn-primary,
.btn-cta,
.ez-btn-primary,
button[type="submit"] {
    background-color: #dd312a;
    border-color: #dd312a;
    color: #ffffff;
}
.btn-primary:hover,
.btn-cta:hover,
.ez-btn-primary:hover,
button[type="submit"]:hover {
    background-color: #b32219;
    border-color: #b32219;
    color: #ffffff;
}

/* --- Prices --- RED --- */
.price,
.model-price,
.ez-price {
    color: #dd312a;
}


/* ==========================================================================
   5. MISC ACCENTS  ->  RED
   ========================================================================== */
.model-spec-item:hover {
    border-color: #dd312a;
}
.model-includes-title i {
    color: #dd312a;
}

/* --- 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 --- RED --- */
.form-group input[type="text"]:focus, .form-group input[type="date"]:focus,
.form-group input[type="time"]:focus, .form-group select:focus {
    border-color: #dd312a;
    outline: none;
}

/* --- Form field icons --- */
.mf-field label i {
    color: #dd312a !important;
}
.model-spec-icon {
    color: #9f9b9b;
}


/* ==========================================================================
   6. NO-GREEN HOVER OVERRIDES  ->  RED
   ========================================================================== */

/* --- Generic link hover --- RED --- */
a:hover {
    color: #dd312a;
}

/* --- Success / green-ish buttons --- RED --- */
.btn-success,
.ez-btn-success,
.btn-secondary {
    background-color: #dd312a;
    border-color: #dd312a;
    color: #ffffff;
}
.btn-success:hover,
.ez-btn-success:hover,
.btn-secondary:hover {
    background-color: #b32219;
    border-color: #b32219;
    color: #ffffff;
}

/* --- Outline / ghost buttons --- RED on hover --- */
.btn-outline:hover,
.ez-btn-outline:hover {
    background-color: #b32219;
    border-color: #b32219;
    color: #ffffff;
}

/* --- Cards / list items --- RED border on hover --- */
.card:hover,
.model-card:hover,
.ez-card:hover {
    border-color: #dd312a;
}

/* --- Icons --- RED on hover --- */
a:hover i,
.icon:hover,
.ez-icon:hover {
    color: #dd312a;
}

/* --- Badges / tags --- RED --- */
.badge-success,
.tag-success {
    background-color: #dd312a;
    color: #ffffff;
}

/* --- Flatpickr selected/hover --- RED --- */
.flatpickr-day:hover,
.flatpickr-day.selected,
.flatpickr-day.selected:hover {
    background: #b32219;
    border-color: #b32219;
    color: #ffffff;
}

/* --- Dropdown / select option hover --- RED --- */
option:checked,
option:hover,
.select-option:hover {
    background-color: #b32219;
    color: #ffffff;
}


/* ==========================================================================
   7. BOX-SHADOW  --  NO GREEN
   ========================================================================== */

/* --- Buttons --- RED 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(221, 49, 42, 0.35);
}

/* --- CTA buttons --- RED glow --- */
.btn-cta:hover,
.btn-primary:hover,
.ez-btn-primary:hover,
button[type="submit"]:hover {
    box-shadow: 0 4px 14px rgba(221, 49, 42, 0.30);
}

/* --- Focus rings on inputs --- RED --- */
.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(221, 49, 42, 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(221, 49, 42, 0.18);
}

/* --- Selected / active states --- no glow --- */
.selected,
.is-active,
.active {
    box-shadow: 0 0 0 2px rgba(221, 49, 42, 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  (RED CTA)
   ========================================================================== */

.booking-form button {
    background-color: #dd312a !important;
    border-color: #dd312a !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(221, 49, 42, 0.22) !important;
}

.booking-form button:hover {
    background-color: #b32219 !important;
    border-color: #b32219 !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(221, 49, 42, 0.35) !important;
}

.booking-form button:focus,
.booking-form button:focus-visible {
    box-shadow: 0 0 0 3px rgba(221, 49, 42, 0.25) !important;
    outline: none !important;
}

.booking-form button:active {
    background-color: #8f1a13 !important;
    box-shadow: 0 1px 4px rgba(221, 49, 42, 0.25) !important;
}


/* ==========================================================================
   9. INSURANCE / PRICE CARDS  --  NO GREEN
   ========================================================================== */

.ez-ins-card:hover {
    border-color: #dd312a !important;
    box-shadow: 0 6px 18px rgba(221, 49, 42, 0.18) !important;
}

.ez-ins-card:hover i,
.ez-ins-card:hover .ez-ins-title,
.ez-ins-card:hover a {
    color: #dd312a !important;
}

.ez-price-card--selected {
    background-color: rgba(221, 49, 42, 0.08) !important;
    border-color: #dd312a !important;
}

.border-green-500 {
    border-color: #dd312a !important;
}

.affiliateNextBtn {
    box-shadow: 0 6px 15px rgba(221, 49, 42, 0.14);
}
.affiliateNextBtn:hover {
    box-shadow: 0 10px 20px rgba(221, 49, 42, 0) !important;
}
