@charset "UTF-8";

/* ======================================
   TRAVELGUIDEATLAS — CUSTOM OVERRIDES
   ====================================== */

/* Header: dark background always (transparent theme default causes invisible links on inner pages) */
header {
    background-color: #1a1a2e;
}

/* Sticky header becomes white */
header.sticky {
    background-color: #fff !important;
}

header.sticky .main-menu > ul > li > a {
    color: #333 !important;
}

header.sticky ul#top_tools a {
    color: #333 !important;
}

/* Top line: slightly lighter than header */
#top_line {
    background-color: rgba(0,0,0,0.25);
}

/* Logo + nav vertical alignment — forces header row to 76px on all sizes */
#logo {
    margin-top: 0;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    height: 56px;
}

#logo h1 {
    margin: 0;
    padding: 0;
    line-height: 1;
}

nav {
    margin-top: 0 !important;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    height: 56px;
}

/* Top line link colors */
#top_line a {
    color: rgba(255,255,255,0.75);
}

#top_line a:hover {
    color: #fff;
}

header.sticky #top_line a {
    color: #666;
}

/* Footer: always full width, never fixed */
footer {
    position: static !important;
    width: 100% !important;
    margin-bottom: 0 !important;
}

/* Footer link contrast improvement */
footer ul li a {
    color: #ccc;
}

footer ul li a:hover {
    color: #fff;
}

/* Remove previous element box-shadow set by footer-reveal */
footer + * {
    box-shadow: none !important;
}

/* ======================================
   MOBILE: hamburger + search icon alignment
   ====================================== */

/* Vertically center the hamburger button and search icon within the 56px nav */
@media (max-width: 991px) {
    .cmn-toggle-switch {
        top: 50% !important;
        transform: translateY(-50%) !important;
    }

    ul#top_tools,
    .sticky ul#top_tools {
        top: 50% !important;
        transform: translateY(-50%) !important;
        margin: 0 40px 0 0 !important;
    }
}

/* ======================================
   RESPONSIVE FIXES
   ====================================== */

@media (max-width: 767px) {
    .hero-h1 { font-size: 1.8rem !important; }
    .hero-p { font-size: 0.95rem !important; }
}

@media (max-width: 575px) {
    #top_links li { display: block; margin: 6px 0; text-align: left; }
    #top_links { text-align: left !important; }
    .cta-btn { display: block; margin: 8px 0 !important; width: calc(100% - 20px); }
}
