/* ============================================================
   Compact / spacing pass — loaded LAST, overrides the theme.
   Goal: remove oversized vertical whitespace, tighten the menu,
   and bring the whole site into a balanced, compact rhythm.
   Theme used a 165px section rhythm + fixed 1010/778px blocks;
   this scales everything down consistently across all pages.
   ============================================================ */

/* ---- Section vertical rhythm: top + bottom (165px -> 64px) ---- */
.about-us,
.all-blog,
.contact-form,
.food-reviews-one,
.food-reviews-three,
.single-blog,
.specialties-two,
.testimonial,
.menu-detail,
.clint-logo {
    padding-top: 64px;
    padding-bottom: 64px;
}

/* ---- Section rhythm: top only (165px -> 64px) ---- */
.our-services-one,
.our-services-two,
.our-services-three,
.specialties-one,
.specialties-three,
.table-reservation-one,
.table-reservation-two,
.table-reservation-three,
.reservation-form,
.sec-padding,
.our-chef,
.blog-one,
.blog-two,
.blog-three,
.popular-food-one,
.popular-food-three,
.map {
    padding-top: 64px;
}

/* ---- Page title / breadcrumb blocks ---- */
.title {
    padding: 40px 0 30px 0;
}
.error {
    padding: 72px 0 40px 0;
}

/* ---- Fixed-header clearance ----
   The header is position:fixed. The theme used each page's huge first-section
   padding (165px) to clear it. We compact the logo (-> ~76px header) and offset
   the content with main's padding-top instead, so section padding can stay tight
   without anything hiding behind the header. */
.header-three a.navbar-brand img {
    max-height: 56px !important;
    width: auto !important;
    height: auto !important;
}
main {
    padding-top: 84px;
}

/* ---- Hero: drop the fixed 1010px height, let it hug content ---- */
.banner-three {
    height: auto;
    min-height: 0;
    padding: 36px 0 50px 0;
}
.banner-one {
    padding-top: 96px;
}
.banner-two {
    padding-top: 90px;
}
.banner-three .banner-text p {
    margin-bottom: 34px;
}

/* ---- Fixed-height inner blocks that created empty bands ---- */
.table-reservation-three .table-slider {
    height: auto;
    min-height: 460px;
}

/* ---- Section heading spacing ---- */
.main-title-three {
    margin-bottom: 34px;
}
.our-services-three .our-three-bg {
    padding: 28px 0;
}

/* ---- Footer ---- */
footer {
    padding: 48px 0 24px 0;
}

/* ============================================================
   Header / menu — balance the layout and tighten the spacing.
   ============================================================ */
.header-three .navbar {
    padding: 10px 0;
}
.header-three a.nav-link {
    margin-right: 32px;
}
/* Center the menu+social group (kills the huge justify-around gap) */
.header-three #navbarSupportedContent {
    justify-content: center !important;
}
.header-three .header-social-icons {
    gap: 18px;
    margin-left: 48px;
}

/* ============================================================
   Responsive — keep the compact rhythm on smaller screens.
   ============================================================ */
@media (max-width: 1199.98px) {
    .about-us, .all-blog, .contact-form,
    .food-reviews-one, .food-reviews-three, .single-blog,
    .specialties-two, .testimonial, .menu-detail, .clint-logo {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .our-services-one, .our-services-two, .our-services-three,
    .specialties-one, .specialties-three,
    .table-reservation-one, .table-reservation-two, .table-reservation-three,
    .reservation-form, .sec-padding, .our-chef,
    .blog-one, .blog-two, .blog-three,
    .popular-food-one, .popular-food-three, .map {
        padding-top: 50px;
    }
    .title { padding: 52px 0 24px 0; }
    .banner-three { padding-top: 80px; }
    .main-title-three { margin-bottom: 26px; }
    .table-reservation-three .table-slider { min-height: 400px; }
}

@media (max-width: 991.98px) {
    .header-three #navbarSupportedContent {
        justify-content: flex-start !important;
    }
    .header-three .header-social-icons {
        margin-left: 0;
        margin-top: 8px;
    }
    .header-three a.nav-link {
        margin-right: 0;
    }
}

@media (max-width: 767.98px) {
    .about-us, .all-blog, .contact-form,
    .food-reviews-one, .food-reviews-three, .single-blog,
    .specialties-two, .testimonial, .menu-detail, .clint-logo {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .our-services-one, .our-services-two, .our-services-three,
    .specialties-one, .specialties-three,
    .table-reservation-one, .table-reservation-two, .table-reservation-three,
    .reservation-form, .sec-padding, .our-chef,
    .blog-one, .blog-two, .blog-three,
    .popular-food-one, .popular-food-three, .map {
        padding-top: 40px;
    }
    .title { padding: 42px 0 20px 0; }
    .banner-three { padding-top: 70px; }
    .main-title-three { margin-bottom: 22px; }
    footer { padding: 36px 0 20px 0; }
}

/* ============================================================
   Refinements v2 — modern header, readable hero, language pill.
   (Appended last so these win over the earlier header rules.)
   ============================================================ */

/* ---- Logo: a touch smaller, and not glued to the screen edge ---- */
.header-three .container-fluid {
    padding-left: 40px;
    padding-right: 40px;
}
.header-three a.navbar-brand img {
    max-height: 50px !important;
}

/* ---- Menu: bigger, bolder text; tighter, balanced layout ----
   logo (left) · nav (centered) · social + language (right) */
.header-three .navbar {
    padding: 8px 0;
}
.header-three .navbar-nav .nav-item .nav-link {
    font-size: 17px;
    font-weight: 600;
    color: #2a2f36;
}
.header-three a.nav-link {
    margin-right: 26px;
}
.header-three .navbar-nav .nav-item .nav-link:hover,
.header-three .navbar-nav .nav-item .nav-link.active {
    color: #27aae2;
}
.header-three #navbarSupportedContent {
    justify-content: flex-start !important;
}
.header-three .navbar-nav {
    margin-left: auto !important;
    margin-right: auto !important;
}
.header-three .header-social-icons {
    gap: 16px;
    margin-left: 0;
}
/* header is ~66px now (smaller logo) — offset content to clear it */
main {
    padding-top: 74px;
}

/* ---- Modern language selector (Google Translate widget) ----
   turn Google's default "exe-button" gadget into a clean blue pill:
   [globe]  Dili Seçin  [chevron] */
#google_translate_element {
    display: inline-block;
    line-height: 0;
}
#google_translate_element .goog-te-gadget {
    font-size: 0 !important;
    color: transparent !important;
}
#google_translate_element .goog-te-gadget-simple {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #f1f9fe;
    border: 1px solid #cfeaf7;
    border-radius: 999px;
    padding: 7px 14px;
    line-height: 1;
    cursor: pointer;
    transition: border-color .2s ease, background-color .2s ease;
}
#google_translate_element .goog-te-gadget-simple:hover {
    border-color: #27aae2;
    background: #e6f4fd;
}
#google_translate_element .goog-te-gadget-simple img {
    display: none !important;
}
#google_translate_element .goog-te-gadget-simple span,
#google_translate_element .goog-te-gadget-simple a {
    color: #1f9bd8 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    border: none !important;
    vertical-align: middle;
}
#google_translate_element .goog-te-gadget-simple::before {
    content: "\f0ac";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #1f9bd8;
    font-size: 13px;
}
#google_translate_element .goog-te-gadget-simple::after {
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #1f9bd8;
    font-size: 11px;
}

/* ---- Hero readability: dark heading + blue accent word ---- */
.banner-three .banner-text h1 {
    color: #20303a;
}

/* ---- Open up the gap between the hero and the section below ---- */
.our-services-three {
    padding-top: 96px;
}

/* ---- Mobile hero: make it fit and stay readable ---- */
@media (max-width: 767.98px) {
    .banner-three .container {
        max-width: 100%;
        padding-left: 16px;
        padding-right: 16px;
    }
    .banner-three .banner-text {
        text-align: center;
    }
    .banner-three .banner-text h1 {
        font-size: 30px;
        line-height: 38px;
    }
    .banner-three .banner-text p {
        font-size: 15px;
        line-height: 22px;
        max-width: 100%;
        margin: 0 auto 24px auto;
    }
    .banner-three .banner-right-img img {
        max-width: 100%;
        height: auto;
    }
    /* guard: keep hero content visible even if AOS doesn't fire */
    .banner-three [data-aos] {
        opacity: 1 !important;
        transform: none !important;
    }
    .our-services-three {
        padding-top: 56px;
    }
}
