/* L'Heure De Voyage — brand color overrides only (no layout changes) */

.navbar-brand img {
    height: 55px;
    width: auto;
    object-fit: contain;
}

.footer-logo img {
    height: 70px;
    width: auto;
    object-fit: contain;
}

.user-profile,
.login-area {
    margin-top: 120px;
}

.dashboard-page {
    background: #E7E6DD;
}

.dashboard-page .navbar .nav-link,
.dashboard-page .navbar .dropdown-toggle,
.dashboard-page .navbar .menu-link {
    color: var(--theme-color) !important;
}

.dashboard-page .navbar {
    background: #fff;
}

.dashboard-page .brand-text {
    color: var(--theme-color);
}

.logo-wrapper {
    position: relative;
}

.brand-text {
    font-size: 24px;
    font-weight: 700;
    color: #f1f2f3;
    white-space: nowrap;
}

.navbar.fixed-top .brand-text {
    color: var(--color-dark);
}

.footer-brand-text {
    font-size: 22px;
    font-weight: 700;
    color: #ffffff;
    white-space: nowrap;
}

.footer-logo {
    text-decoration: none;
}

.footer-logo-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
}

.footer-logo-stack img {
    margin-bottom: 0 !important;
    max-width: 180px;
}

.footer-logo-stack .footer-brand-text {
    margin-left: 0 !important;
    line-height: 1.3;
    white-space: normal;
}

.footer-legal-menu {
    text-align: center;
}

.copyright .footer-social {
    justify-content: flex-end;
}

/* Footer — yellow accent on dark background (navy theme-color is unreadable here) */
.footer-area .footer-list li a i,
.footer-area .footer-list li a:hover {
    color: var(--theme-color2);
}

.footer-area .copyright .copyright-text a {
    color: var(--theme-color2);
    font-weight: 600;
}

.footer-area .copyright .copyright-text a:hover {
    color: var(--brand-gold-light);
}

.footer-area .footer-call-icon i,
.footer-area .footer-call-info a {
    color: var(--theme-color2) !important;
}

.footer-area .footer-call-info a:hover {
    color: var(--brand-gold-light) !important;
}

.footer-area .footer-contact li i {
    background: var(--theme-color2);
    color: var(--brand-footer);
}

.footer-area .footer-contact .footer-address-item {
    align-items: flex-start;
}

.footer-area .footer-contact .footer-address-item i {
    flex-shrink: 0;
    margin-top: 2px;
}

.footer-area .footer-contact .footer-address-text {
    color: var(--footer-text-color);
    font-style: normal;
    line-height: 1.6;
}

.footer-area .footer-social li a i {
    color: var(--theme-color2);
    background: rgba(232, 175, 48, 0.12);
    border: 1px solid rgba(232, 175, 48, 0.35);
}

.footer-area .footer-social li a i:hover {
    background: var(--theme-color2);
    color: var(--brand-footer);
}

/* About / Contact — space above FAQ block */
.inner-page-faq {
    margin-top: 4rem;
    padding-top: 5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.contact-map + .inner-page-faq {
    margin-top: 5rem;
}

/* Breadcrumb backgrounds (component uses background-image) */
.site-breadcrumb {
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
}

@media all and (max-width: 991px) {
    .footer-legal-menu {
        text-align: left;
        margin-top: 12px;
        margin-bottom: 8px;
    }

    .copyright .footer-social {
        justify-content: flex-start;
    }
}

/* Buttons & CTAs — accent yellow */
.theme-btn {
    background: var(--theme-color2);
}

.theme-btn::before {
    background: var(--brand-gold-light);
}

#scroll-top {
    background: var(--theme-color2);
}

#scroll-top:hover {
    background: var(--brand-gold-light);
}

/* Search tabs — active tab accent */
.search-nav .nav-link.active {
    background: var(--theme-color2);
}

.search-nav .nav-link.active i {
    color: var(--color-white);
}

.search-nav .nav-link i {
    color: var(--theme-color);
}

.search-nav .nav-link:hover,
.search-nav .nav-link:focus-visible {
    background: var(--theme-color2);
    color: var(--color-dark);
}

.search-nav .nav-link:hover i,
.search-nav .nav-link:focus-visible i {
    color: var(--color-dark);
}

/* Flight / holiday trip type — hover uses brand yellow */
.flight-search .flight-type .form-check-inline,
.holiday-search .flight-type .form-check-inline {
    cursor: pointer;
    border-radius: 50px;
    padding: 4px 14px 4px 6px;
    margin-right: 0.35rem;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.flight-search .flight-type .form-check-inline:hover,
.flight-search .flight-type .form-check-inline:focus-within,
.holiday-search .flight-type .form-check-inline:hover,
.holiday-search .flight-type .form-check-inline:focus-within {
    background: rgba(232, 175, 48, 0.18);
}

.flight-search .flight-type .form-check-inline:hover .form-check-label,
.flight-search .flight-type .form-check-inline:focus-within .form-check-label,
.holiday-search .flight-type .form-check-inline:hover .form-check-label,
.holiday-search .flight-type .form-check-inline:focus-within .form-check-label {
    color: var(--theme-color2);
}

.flight-search .flight-type .form-check-inline:hover .form-check-input,
.flight-search .flight-type .form-check-inline:focus-within .form-check-input,
.holiday-search .flight-type .form-check-inline:hover .form-check-input,
.holiday-search .flight-type .form-check-inline:focus-within .form-check-input {
    border-color: var(--theme-color2);
}

.flight-search .flight-type .form-check-input:checked,
.holiday-search .flight-type .form-check-input:checked {
    background-color: var(--theme-color2);
    border-color: var(--theme-color2);
}

.flight-search .search-form .multicity-btn:hover,
.flight-search .search-form .multicity-btn:focus-visible {
    color: var(--theme-color2);
}

/* Main navbar — yellow hover */
.navbar .nav-item:hover .nav-link,
.navbar .nav-item .nav-link.active,
.navbar.fixed-top .nav-item:hover .nav-link,
.navbar.fixed-top .nav-item .nav-link.active {
    color: var(--theme-color2) !important;
}

.home-3 .navbar:not(.fixed-top) .nav-item:hover .nav-link,
.home-3 .navbar:not(.fixed-top) .nav-item .nav-link.active {
    color: var(--theme-color2) !important;
}

.header-top-right .account a:hover,
.top-contact-info ul li a:hover,
.top-social a:hover {
    color: var(--theme-color2) !important;
}

.top-social a:hover {
    border-color: var(--theme-color2);
}

/* Footer navigation — yellow hover */
.footer-list li a:hover {
    color: var(--theme-color2) !important;
}

.footer-list li a:hover i {
    color: var(--theme-color2) !important;
}

.footer-social a:hover {
    color: var(--theme-color2) !important;
    background: rgba(232, 175, 48, 0.15);
}

/* Sticky header + search spacing (no overlap on scroll) */
.header {
    position: relative;
    z-index: 1040;
}

.navbar.fixed-top {
    z-index: 1050;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
}

@media (min-width: 992px) {
    body.is-scrolled .header-top {
        max-height: 0;
        padding-top: 0;
        padding-bottom: 0;
        overflow: hidden;
        opacity: 0;
        border: none;
        transition: max-height 0.25s ease, opacity 0.25s ease, padding 0.25s ease;
    }
}

body.is-scrolled .navbar.fixed-top .nav-item .nav-link {
    padding-top: 18px;
    padding-bottom: 18px;
}

/* Homepage search — fixed header spacing; template tab pill overlap */
.home-3 .hero-single {
    padding-top: 220px;
    padding-bottom: 4rem;
}

.home-3 .search-header {
    position: relative;
    z-index: 5;
    margin-top: -12px;
}

body.is-scrolled .home-3 .search-area {
    scroll-margin-top: 90px;
}

@media all and (max-width: 991px) {
    .home-3 .hero-single {
        padding-top: 150px;
        padding-bottom: 3rem;
    }

    .navbar.fixed-top .navbar-collapse {
        background: #fff;
        border-radius: 12px;
        padding: 0.75rem 1rem;
        margin-top: 0.5rem;
        box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    }

    .navbar.fixed-top .nav-item .nav-link {
        color: var(--color-dark) !important;
        padding: 0.65rem 0 !important;
    }
}

/* Admin panel buttons */
.admin-main .btn-primary {
    background-color: var(--theme-color2);
    border-color: var(--theme-color2);
    color: var(--color-dark);
}

.admin-main .btn-primary:hover,
.admin-main .btn-primary:focus {
    background-color: var(--brand-gold-light);
    border-color: var(--brand-gold-light);
    color: var(--color-dark);
}

.admin-main .btn-outline-primary {
    color: var(--theme-color);
    border-color: var(--theme-color);
}

.admin-main .btn-outline-primary:hover {
    background-color: var(--theme-color);
    border-color: var(--theme-color);
    color: #fff;
}

/* Homepage hero — tighter spacing on smaller screens */
.home-3 .hero-single .hero-content {
    padding-top: 0 !important;
    padding-bottom: 0.5rem !important;
    margin-bottom: 1rem !important;
}

.home-3 .hero-single .hero-content .hero-title {
    margin-top: 0;
    margin-bottom: 0.75rem;
}

@media all and (max-width: 991px) {
    .home-3 .hero-single {
        padding-top: 160px;
        padding-bottom: 120px;
    }
}

@media all and (max-width: 767px) {
    .home-3 .hero-single {
        padding-top: 140px;
        padding-bottom: 100px;
    }

    .home-3 .hero-single .hero-content .hero-title {
        font-size: 36px;
    }
}
