/**
 * Lowest Flight Fares brand theme
 * Brand colors: navy #0a2464 and secondary blue #1a8db9
 */
:root {
    --brand-navy: #0a2464;
    --brand-secondary: #0a2464;
    --brand-white: #FFFFFF;

    /* Shared aliases used by the existing layout styles. */
    --navy: var(--brand-navy);
    --secondary: var(--brand-secondary);
    --ink: var(--brand-navy);
}

/* Global brand application. This stylesheet loads last in the site layout. */
.lff-theme,
.lff-theme h1,
.lff-theme h2,
.lff-theme h3,
.lff-theme h4,
.lff-theme h5,
.lff-theme h6,
.lff-theme .nav-link,
.lff-theme .phone-deal {
    color: var(--brand-navy);
}

.lff-theme a:hover,
.lff-theme .eyebrow.secondary,
.lff-theme .experience-badge strong,
.lff-theme .stats strong,
.lff-theme .contact-list > * > i,
.lff-theme .deal-card p strong,
.lff-theme .stars {
    color: var(--brand-secondary);
}

.lff-theme .btn-navy,
.lff-theme .search-btn {
    background-color: var(--brand-navy);
    color: var(--brand-white);
}

.lff-theme .btn-navy:hover,
.lff-theme .search-btn:hover {
    background-color: #00163f;
    color: var(--brand-white);
}

.lff-theme .btn-brand-secondary,
.lff-theme .trip-tabs button.active {
    background-color: var(--brand-secondary);
    color: var(--brand-white);
}

.lff-theme .btn-brand-secondary:hover,
.lff-theme .trip-tabs button.active:hover {
    background-color: #157694;
    color: var(--brand-white);
}

.lff-theme .trip-tabs button[data-trip="oneway"] {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
}

.lff-theme .form-control:focus,
.lff-theme .form-select:focus {
    border-color: var(--brand-secondary);
    box-shadow: 0 0 0 .2rem rgba(26, 141, 185, .16);
}

/* Passenger selector brand colors. */
.lff-theme .passenger-dropdown .pax-btn[data-pax-action="increase"],
.lff-theme .passenger-dropdown .passenger-done-btn {
    background-color: var(--brand-secondary) !important;
    color: var(--brand-white) !important;
}

.lff-theme .passenger-dropdown .pax-btn[data-pax-action="decrease"]:not(:disabled) {
    background-color: var(--brand-navy) !important;
    color: var(--brand-white) !important;
}

.lff-theme .passenger-dropdown .pax-btn:hover:not(:disabled),
.lff-theme .passenger-dropdown .passenger-done-btn:hover {
    filter: brightness(.9);
    color: var(--brand-white) !important;
}

.lff-theme .passenger-dropdown .pax-btn:focus-visible,
.lff-theme .passenger-dropdown .passenger-done-btn:focus-visible {
    outline: 3px solid rgba(26, 141, 185, .28);
    outline-offset: 2px;
}

.lff-theme .passenger-dropdown .pax-controls > span,
.lff-theme .passenger-dropdown strong {
    color: var(--brand-navy);
}

.lff-theme .site-footer,
.lff-theme .footer-original,
.lff-theme .footer-newsletter {
    background-color: var(--brand-navy) !important;
}

.lff-theme .footer-original .footer-bottom,
.lff-theme .site-footer .footer-bottom {
    background-color: #011845 !important;
}

.lff-theme .footer-original .footer-tabs .nav-link.active::after,
.lff-theme .footer-static .footer-links-nav .footer-tab.active::after {
    background: var(--brand-secondary);
}

.lff-theme .footer-original .footer-logo {
    display: block;
    width: 330px;
    max-width: 100%;
    height: 105px;
    object-fit: contain;
    object-position: left center;
    filter: brightness(0) invert(1);
}

@media (max-width: 575px) {
    .lff-theme .footer-original .footer-logo {
        width: 280px;
        height: 94px;
    }
}

.lff-theme .help-block.form-error {
    display: block;
    margin-top: 5px;
    color: #dc3545;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.35;
}

/* Modern responsive homepage hero. */
.lff-theme .hero-section {
    background-image:
        linear-gradient(90deg, rgba(255, 255, 255, .98) 0%, rgba(255, 255, 255, .90) 31%, rgba(255, 255, 255, .48) 52%, rgba(255, 255, 255, .06) 76%),
        url('../img/landing/hero-modern-lff-optimized.jpg');
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.lff-theme .hero-copy-new h1,
.lff-theme .hero-copy-new .lead,
.lff-theme .hero-copy-new .hero-badge {
    color: var(--brand-navy);
}

.lff-theme .hero-copy-new h1 em,
.lff-theme .hero-copy-new .hero-badge i {
    color: var(--brand-secondary);
}

.lff-theme .search-card-new {
    border: 1px solid rgba(26, 141, 185, .38);
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 18px 45px rgba(2, 30, 87, .18);
    backdrop-filter: blur(10px);
}

@media (max-width: 991px) {
    .lff-theme .hero-section {
        background-image:
            linear-gradient(90deg, rgba(255, 255, 255, .97) 0%, rgba(255, 255, 255, .82) 56%, rgba(255, 255, 255, .20) 100%),
            url('../img/landing/hero-modern-lff-optimized.jpg');
        background-position: 68% center;
    }
}

@media (max-width: 575px) {
    .lff-theme .hero-section {
        background-image:
            linear-gradient(180deg, rgba(255, 255, 255, .96) 0%, rgba(255, 255, 255, .74) 45%, rgba(255, 255, 255, .32) 100%),
            url('../img/landing/hero-modern-lff-optimized.jpg');
        background-position: 70% center;
    }

    .lff-theme .search-card-new {
        background: rgba(255, 255, 255, .94);
    }
}
