/* Media Queries for responsive design */
@media (max-width: 575.98px) {
    .site-footer .container {
        padding: 0 1rem;
    }

    .btn.btn-filled-brown {
        width: 160px;
        border-radius: 10px;
        padding-top: 12px;
        padding-bottom: 12px;
        font-size: 12px !important;
    }

    .gallery-section,
    .info-highlight-section {
        padding-bottom: 1.5rem;
    }


    .booking-info-section {
        padding-top: 3rem;
        padding-bottom: 0;
    }

    .info-highlight-section,
    .map-section {
        padding-top: 1.5rem;
    }

    .footer-bottom .logo img {
        max-width: 150px;
        height: auto;
    }

    .map-embed-wrapper iframe {
        width: 100%;
        height: 300px;
    }

    .discover-content img {
        height: 300px;
    }

    .footer-bottom .logo img {
        max-width: 150px;
        height: auto;
    }

    .info-highlight-section img {
        max-width: 100%;
        height: 300px;
    }

    .map-section,
    .discover-section,
    .about-us {
        padding-bottom: 3rem;
    }

    .gallery-section,
    .discover-section,
    .about-us {
        padding-top: 3rem;
    }

    .hero {
        max-height: 500px;
    }

    /***************************
    // Navbar
    ***************************/
    .navbar-toggler {
        right: 24px;
    }

    .navbar-custom .container {
        margin: 0 0.5rem;
    }

    .navbar-custom .container {
        padding: 0.5rem 1.5rem;
    }

    .navbar-custom a.navbar-brand img {
        width: 80%;
        height: auto;
    }

    .navbar-top {
        display: none;
    }

    .navbar-bottom li.nav-item.mobileshow {
        display: block;
    }

    .navbar-collapse {
        display: flex;
        justify-content: flex-end;
    }

    .navbar:has(.navbar-collapse.show) .container {
        border-bottom-right-radius: 0 !important;
    }

    .navbar-nav {
        padding: 15px;
        background: #fff;
        position: absolute;
        top: 78px;
        width: 200px;
        right: 0;
        border-radius: 0px 0px 20px 20px;
    }

    .navbar-nav .dropdown-menu {
        position: absolute !important;
    }

    /***************************
    // End Navbar
    ***************************/

    /***************************
    // Font Sizes
    ***************************/
    .font-size-64 * {
        font-size: calc(64px/1.8) !important;
    }

    .font-size-48 * {
        font-size: calc(48px/1.8) !important;
    }

    .font-size-40 * {
        font-size: calc(40px/1.6) !important;
    }

    .font-size-32 * {
        font-size: calc(32px/1.45) !important;
    }

    .font-size-24 * {
        font-size: calc(24px/1.3) !important;
    }

    .font-size-20 * {
        font-size: calc(20px/1.2) !important;
    }

    .font-size-18 * {
        font-size: calc(18px/1.15) !important;
    }

    .font-size-16 * {
        font-size: calc(16px/1.1) !important;
    }

    .font-size-15 * {
        font-size: calc(15px) !important;
    }

    .font-size-14 * {
        font-size: calc(14px) !important;
    }

    .font-size-13 * {
        font-size: calc(13px) !important;
    }

    .font-size-12 * {
        font-size: calc(12px) !important;
    }

    .font-size-11 * {
        font-size: calc(11px) !important;
    }
}

/* Extra small devices (phones, less than 576px) */
@media (min-width: 576px) and (max-width: 767.98px) {
    .btn.btn-filled-brown {
        width: 160px;
        border-radius: 10px;
        padding-top: 14px;
        padding-bottom: 14px;
        font-size: 13px !important;
    }

    .gallery-section,
    .info-highlight-section {
        padding-bottom: 1.5rem;
    }

    .booking-info-section {
        padding-top: 3rem;
        padding-bottom: 0;
    }

    .info-highlight-section,
    .map-section {
        padding-top: 1.5rem;
    }

    .gallery-img {
        height: 160px;
    }

    .footer-bottom .logo img {
        max-width: 150px;
        height: auto;
    }

    .map-embed-wrapper iframe {
        width: 100%;
        height: 300px;
    }

    .discover-content img {
        height: 300px;
    }

    .footer-bottom .logo img {
        max-width: 150px;
        height: auto;
    }

    .info-highlight-section img {
        max-width: 100%;
        height: 300px;
    }

    .map-section,
    .discover-section,
    .about-us {
        padding-bottom: 3rem;
    }

    .gallery-section,
    .discover-section,
    .about-us {
        padding-top: 3rem;
    }

    .hero {
        max-height: 500px;
    }

    /***************************
    // Navbar
    ***************************/
    .navbar-toggler {
        right: 24px;
    }

    .navbar-custom .container {
        padding: 0.5rem 1.5rem;
    }

    .navbar-custom a.navbar-brand img {
        width: 80%;
        height: auto;
    }

    .navbar-top {
        display: none;
    }

    .navbar-bottom li.nav-item.mobileshow {
        display: block;
    }

    .navbar-collapse {
        display: flex;
        justify-content: flex-end;
    }

    .navbar:has(.navbar-collapse.show) .container {
        border-bottom-right-radius: 0 !important;
    }

    .navbar-nav {
        padding: 15px;
        background: #fff;
        position: absolute;
        top: 78px;
        width: 200px;
        right: 0;
        border-radius: 0px 0px 20px 20px;
    }

    .navbar-nav .dropdown-menu {
        position: absolute !important;
    }

    /***************************
    // End Navbar
    ***************************/

    /***************************
    // Font Sizes
    ***************************/
    .font-size-64 * {
        font-size: calc(64px/1.65) !important;
    }

    .font-size-48 * {
        font-size: calc(48px/1.65) !important;
    }

    .font-size-40 * {
        font-size: calc(40px/1.35) !important;
    }

    .font-size-32 * {
        font-size: calc(32px/1.25) !important;
    }

    .font-size-24 * {
        font-size: calc(24px/1.18) !important;
    }

    .font-size-20 * {
        font-size: calc(20px/1.13) !important;
    }

    .font-size-18 * {
        font-size: calc(18px/1.1) !important;
    }

    .font-size-16 * {
        font-size: calc(16px/1.07) !important;
    }

    .font-size-15 * {
        font-size: calc(15px) !important;
    }

    .font-size-14 * {
        font-size: calc(14px) !important;
    }

    .font-size-13 * {
        font-size: calc(13px) !important;
    }

    .font-size-12 * {
        font-size: calc(12px) !important;
    }

    .font-size-11 * {
        font-size: calc(11px) !important;
    }
}

/* Medium devices (tablets, less than 992px) */
@media (min-width: 768px) and (max-width: 991.98px) {

    .gallery-section,
    .info-highlight-section {
        padding-bottom: 1.5rem;
    }

    .booking-info-section {
        padding-top: 3rem;
        padding-bottom: 0;
    }

    .info-highlight-section,
    .map-section {
        padding-top: 1.5rem;
    }

    .footer-bottom .logo img {
        max-width: 150px;
        height: auto;
    }

    .map-embed-wrapper iframe {
        width: 100%;
        height: 360px;
    }

    .info-highlight-section img {
        max-width: 100%;
        height: 360px;
    }

    .map-section,
    .discover-section,
    .about-us {
        padding-bottom: 3rem;
    }

    .gallery-section,
    .discover-section,
    .about-us {
        padding-top: 3rem;
    }

    .hero {
        max-height: 600px;
    }

    /***************************
    // Navbar
    ***************************/
    .navbar-toggler {
        right: 24px;
    }

    .navbar-custom .container {
        padding: 0.5rem 1.5rem;
    }

    .navbar-custom a.navbar-brand img {
        width: 80%;
        height: auto;
    }

    .navbar-top {
        display: none;
    }

    .navbar-bottom li.nav-item.mobileshow {
        display: block;
    }

    .navbar-collapse {
        display: flex;
        justify-content: flex-end;
    }

    .navbar:has(.navbar-collapse.show) .container {
        border-bottom-right-radius: 0 !important;
    }

    .navbar-nav {
        padding: 15px;
        background: #fff;
        position: absolute;
        top: 78px;
        width: 250px;
        right: 0;
        border-radius: 0px 0px 20px 20px;
    }

    .navbar-nav .dropdown-menu {
        position: absolute !important;
    }

    /***************************
    // End Navbar
    ***************************/

    /***************************
    // Font Sizes
    ***************************/
    .font-size-64 * {
        font-size: calc(64px/1.2) !important;
    }

    .font-size-48 * {
        font-size: calc(48px/1.25) !important;
    }

    .font-size-40 * {
        font-size: calc(40px/1.18) !important;
    }

    .font-size-32 * {
        font-size: calc(32px/1.13) !important;
    }

    .font-size-24 * {
        font-size: calc(24px/1.09) !important;
    }

    .font-size-20 * {
        font-size: calc(20px/1.07) !important;
    }

    .font-size-18 * {
        font-size: calc(18px/1.05) !important;
    }

    .font-size-16 * {
        font-size: calc(16px/1.03) !important;
    }

    .font-size-15 * {
        font-size: calc(15px) !important;
    }

    .font-size-14 * {
        font-size: calc(14px) !important;
    }

    .font-size-13 * {
        font-size: calc(13px) !important;
    }

    .font-size-12 * {
        font-size: calc(12px) !important;
    }

    .font-size-11 * {
        font-size: calc(11px) !important;
    }

    /***************************
    // End Font Sizes
    ***************************/
}

/* Large devices (desktops, less than 1200px) */
@media (min-width: 992px) and (max-width: 1199.98px) {

    .booking-info-section {
        padding-top: 4rem;
    }

    .gallery-section {
        padding-bottom: 4rem;
    }

    /***************************
    // Navbar
    ***************************/
    .navbar-toggler {
        right: 48px;
    }

    .navbar-custom a.navbar-brand img {
        width: 80%;
        height: auto;
    }

    .navbar-top {
        display: none;
    }

    .navbar-bottom li.nav-item.mobileshow {
        display: block;
    }

    .navbar-collapse {
        display: none;
    }

    .navbar-collapse {
        display: flex;
        justify-content: flex-end;
    }

    .navbar:has(.navbar-collapse.show) .container {
        border-bottom-right-radius: 0 !important;
    }

    .navbar-nav {
        padding: 15px;
        background: #fff;
        position: absolute;
        top: 94px;
        width: 250px;
        right: 0;
        border-radius: 0px 0px 20px 20px;
    }

    .navbar-nav .dropdown-menu {
        position: absolute !important;
    }

    /***************************
    // End Navbar
    ***************************/

    /***************************
    // Font Sizes
    ***************************/
    .font-size-64 * {
        font-size: calc(64px/1.2) !important;
    }

    .font-size-48 * {
        font-size: calc(48px/1.1) !important;
    }

    .font-size-40 * {
        font-size: calc(40px/1.08) !important;
    }

    .font-size-32 * {
        font-size: calc(32px/1.06) !important;
    }

    .font-size-24 * {
        font-size: calc(24px/1.04) !important;
    }

    .font-size-20 * {
        font-size: calc(20px/1.03) !important;
    }

    .font-size-18 * {
        font-size: calc(18px/1.02) !important;
    }

    .font-size-16 * {
        font-size: calc(16px/1.01) !important;
    }

    .font-size-15 * {
        font-size: calc(15px) !important;
    }

    .font-size-14 * {
        font-size: calc(14px) !important;
    }

    .font-size-13 * {
        font-size: calc(13px) !important;
    }

    .font-size-12 * {
        font-size: calc(12px) !important;
    }

    .font-size-11 * {
        font-size: calc(11px) !important;
    }

    /***************************
    // End Font Sizes
    ***************************/
}










@media (max-width: 768px) {
    .booking-features .col-md-6 {
        margin-bottom: 1rem;
        padding-bottom: 1rem;
    }

}

/* md nézet – 2 oszlopos grid */
@media (max-width: 991.98px) {
    .discover-tabs {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
}

/* sm nézet – egymás alatt */
@media (max-width: 767.98px) {
    .discover-tabs {
        grid-template-columns: 1fr;
    }
}