/* =====================================================
    1199px
====================================================== */
@media (max-width: 1199px) {
    .custom-container {
        padding-inline: 15px;
    }

    .logo {
        max-width: 410px;
    }

    .header-right {
        max-width: 680px;
        gap: 15px;
    }

    .main-nav {
        gap: clamp(14px, 1.8vw, 22px);
    }

    .main-nav>a,
    .nav-dropdown-toggle {
        font-size: 13px;
    }

    .header-buttons {
        max-width: 445px;
        gap: 8px;
    }

    .appointment-btn {
        max-width: 225px;
        padding: 13px 15px;
        font-size: 13px;
    }

    .phone-btn {
        max-width: 210px;
        padding: 13px 15px;
        font-size: 13px;
    }

    .appointment-btn i,
    .phone-btn i {
        font-size: 16px;
    }

    .oasis-diagnostic-section {
        padding: 60px 0 70px;
    }

    .oasis-section-heading h2 {
        font-size: 28px;
    }

    .oasis-service-card {
        padding: 14px 9px 13px;
    }

    .oasis-service-title {
        font-size: 13px;
    }

    .oasis-service-image {
        height: 150px;
    }

    .oasis-reviews-layout {
        grid-template-columns: minmax(0, 2.5fr) minmax(270px, 1fr);
    }

    .oasis-review-card {
        min-height: 205px;
        padding: 18px;
    }

    .oasis-review-text {
        font-size: 14px;
    }

    .oasis-google-reviews {
        padding: 30px 20px;
    }

    .oasis-footer-column {
        padding: 0 20px;
    }

    .oasis-footer-column h2 {
        font-size: 19px;
    }

    .oasis-footer-info a,
    .oasis-footer-address address,
    .oasis-working-hours strong,
    .oasis-working-hours span {
        font-size: 13px;
    }

    .oasis-footer-map {
        height: 190px;
    }

    .oasis-about-main {
        padding: 70px 0;
    }

    .oasis-about-main-image {
        height: 500px;
    }

    .oasis-about-main-content h2 {
        font-size: 34px;
    }

    .oasis-about-cta-inner {
        padding: 45px;
    }
}

/* =====================================================
    991px
====================================================== */
@media (max-width: 991px) {

    .top-bar {
        padding-block: 8px;
    }

    .top-bar .custom-container {
        gap: 15px;
    }

    .address {
        font-size: 13px;
    }

    .email {
        display: none;
    }

    .main-header {
        padding-block: 10px;
    }

    .logo {
        max-width: 360px;
    }

    .header-right {
        max-width: none;
        flex: 1 1 100%;
        align-items: flex-end;
        gap: 15px;
    }

    .mobile-menu-btn {
        display: inline-flex;
    }

    .main-nav {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        max-width: none;
        padding: 10px 20px;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        background: #fff;
        box-shadow: 0 8px 20px rgba(0, 0, 0, .12);
        z-index: 9999;
    }

    .main-nav.menu-open {
        display: flex;
    }

    .main-nav>a,
    .nav-dropdown-toggle {
        width: 100%;
        padding: 14px 10px;
        justify-content: space-between;
        font-size: 14px;
        border-bottom: 1px solid #eee;
    }

    .main-nav>a.active::after {
        display: none;
    }

    .nav-dropdown {
        width: 100%;
    }

    .nav-dropdown:hover>.submenu {
        opacity: 0;
        visibility: hidden;
        transform: none;
    }

    .nav-dropdown.submenu-open>.submenu {
        opacity: 1;
        visibility: visible;
        transform: none;
    }

    .submenu {
        position: static;
        width: 100%;
        max-width: none;
        min-width: 0;
        padding: 0 0 0 15px;
        border-top: 0;
        box-shadow: none;
        display: none;
    }

    .nav-dropdown.submenu-open>.submenu {
        display: block;
    }

    .submenu>a,
    .submenu-dropdown>button {
        padding: 12px 15px;
        font-size: 13px;
        border-bottom: 1px solid #eee;
    }

    .nested-submenu {
        position: static;
        width: 100%;
        max-width: none;
        min-width: 0;
        padding: 0 0 0 15px;
        border-top: 0;
        box-shadow: none;
        display: none;
        transform: none;
    }

    .submenu-dropdown:hover>.nested-submenu {
        display: none;
        opacity: 0;
        visibility: hidden;
    }

    .submenu-dropdown.nested-open>.nested-submenu {
        display: block;
        opacity: 1;
        visibility: visible;
        transform: none;
    }

    .nested-submenu a {
        padding: 11px 15px;
        font-size: 12px;
        border-bottom: 1px solid #eee;
    }

    .header-buttons {
        display: none;
    }

    .appointment-btn {
        max-width: 230px;
        padding: 13px 15px;
        font-size: 13px;
    }

    .phone-btn {
        max-width: 215px;
        padding: 13px 15px;
        font-size: 13px;
    }

    .logo img {
        max-width: 260px;
    }

    .oasis-slide {
        height: auto;
        flex-direction: column;
    }

    .oasis-content-position {
        order: 1;
        padding: 40px 0 40px;
        text-align: center;
    }

    .hero-description {
        font-size: 15px;
    }

    .oasis-slide-content {
        margin: 0 auto;
        width: 100%;
    }

    .hero-features {
        margin: 30px auto 0;
    }

    .hero-buttons {
        justify-content: center;
    }

    .hero-description {
        margin-left: auto;
        margin-right: auto;
    }

    #oasisHeroSlider .carousel-item {
        height: 600px;
    }

    .carousel-indicators {
        margin-bottom: 0;
    }

    .oasis-indicators {
        bottom: 15px;
    }

    .feature-text {
        font-size: 13px;
    }

    .oasis-doctor-details {
        font-size: 14px;
    }

    .oasis-reviews-layout {
        grid-template-columns: 1fr;
    }


    .oasis-google-reviews {
        min-height: 260px;
        height: auto;
        padding: 35px 25px;
    }

    .oasis-review-card {
        min-height: 190px;
    }

    .oasis-google-reviews {
        display: none;
    }

    .oasis-section-heading h2 {
        font-size: 25px;
    }

    .osx-service-detail {
        padding: 70px 0 85px;
    }

    .osx-service-sidebar {
        position: static;
    }

    .osx-detail-image {
        height: 400px;
    }

    .oasis-footer-main {
        padding: 35px 0 30px;
    }

    .oasis-footer-row>div:nth-child(2) .oasis-footer-column {
        border-right: 0;
    }

    .oasis-footer-row>div:nth-child(-n+2) {
        margin-bottom: 30px;
    }

    .oasis-footer-column {
        min-height: auto;
    }

    .oasis-footer-map {
        height: 220px;
    }

    .oasis-about-main {
        padding: 60px 0;
    }

    .oasis-about-main-image {
        height: 450px;
    }

    .oasis-about-main-content {
        padding-left: 0;
    }

    .oasis-about-main-content h2 {
        font-size: 32px;
    }

    .oasis-about-cta {
        margin-bottom: 50px;
        background: #fff;
        font-family: "Montserrat", sans-serif;
    }


    .oasis-about-cta-inner {
        flex-direction: column;
        align-items: flex-start;
        padding: 45px;
    }

    .osx-contact-section {
        padding: 90px 0;
    }

    .osx-contact-content {
        padding-right: 0;
    }

    .osx-contact-content h2 {
        font-size: 38px;
    }

    .osx-contact-form {
        padding: 35px;
    }

    .osx-gallery-section {
        padding: 60px 0;
    }

    .osx-gallery-card {
        height: 260px;
    }
}

/* =====================================================
    767px
====================================================== */
@media (max-width: 767px) {

    .top-bar .custom-container {
        justify-content: center;
    }

    .address {
        text-align: center;
        white-space: normal;
        font-size: 13px;
    }

    .top-right {
        display: none;
    }

    .main-header {
        padding-block: 20px;
    }

    .logo {
        width: 100%;
        max-width: 300px;
    }

    .logo img {
        max-width: 220px;
    }

    .mobile-menu-btn {
        max-width: 46px;
    }

    .header-buttons {
        flex-direction: column;
        align-items: center;
        width: 100%;
    }

    .appointment-btn,
    .phone-btn {
        max-width: 320px;
        padding: 14px 20px;
    }

    .hero-btn {
        flex: 1;
        padding: 12px 10px;
        font-size: 12px;
        text-align: center;
    }

    #oasisHeroSlider .carousel-item {
        height: 480px;
    }

    .feature-icon img {
        height: 30px;
    }

    .hero-subtitle {
        font-size: 15px;
    }

    .hero-description {
        font-size: 14px;
    }

    .oasis-diagnostic-section {
        padding: 50px 0 60px;
    }

    .oasis-section-heading {
        gap: 12px;
        margin-bottom: 26px;
    }

    .oasis-heading-line {
        width: 45px;
    }

    .oasis-section-heading h2 {
        font-size: 24px;
    }

    .oasis-services-swiper {
        padding-left: 22px;
        padding-right: 22px;
    }

    .oasis-service-card {
        padding: 14px 9px 13px;
    }

    .oasis-service-title {
        font-size: 13px;
    }

    .oasis-service-image {
        height: 165px;
    }

    .oasis-radiologists-section {
        padding: 50px 0 60px;
    }

    .oasis-radiologists-slider {
        padding-left: 22px;
        padding-right: 22px;
    }

    .oasis-doctor-image {
        width: 42%;
        flex-basis: 42%;
    }

    .oasis-doctor-content {
        width: 58%;
        padding: 18px 14px;
    }

    .oasis-doctor-name {
        font-size: 18px;
    }

    .oasis-doctor-details {
        font-size: 13px;
    }

    .oasis-reviews-left .oasis-section-heading {
        margin-bottom: 25px;
    }

    .oasis-reviews-slider {
        padding: 2px 5px;
    }

    .oasis-review-card {
        min-height: 185px;
        padding: 18px;
    }

    .oasis-review-text {
        font-size: 14px;
        line-height: 1.5;
    }

    .oasis-google-reviews {
        min-height: 245px;
    }

    .oasis-section-heading h2 {
        font-size: 22px;
    }

    .osx-service-detail {
        padding: 55px 0 65px;
    }

    .osx-detail-image {
        height: 300px;
        margin-bottom: 28px;
    }

    .osx-detail-text h2 {
        font-size: 23px;
    }

    .osx-detail-text p,
    .osx-detail-list li {
        font-size: 14px;
    }

    .oasis-footer-main {
        padding: 40px 0 30px;
    }

    .oasis-footer-column {
        padding: 0;
        border-right: 0;
    }

    .oasis-footer-row>div {
        margin-bottom: 30px;
    }

    .oasis-footer-row>div:last-child {
        margin-bottom: 0;
    }

    .oasis-footer-column h2 {
        font-size: 20px;
    }

    .oasis-footer-info a,
    .oasis-footer-address address,
    .oasis-working-hours strong,
    .oasis-working-hours span {
        font-size: 14px;
    }

    .oasis-footer-map {
        height: 240px;
        border-radius: 12px;
    }

    .oasis-footer-bottom {
        padding: 13px 0;
    }

    .oasis-footer-bottom-inner {
        flex-direction: column;
        text-align: center;
        gap: 5px;
    }

    .oasis-about-main {
        padding: 50px 0;
    }

    .oasis-about-main-image {
        height: 350px;
        border-radius: 15px;
    }

    .oasis-about-main-content h2 {
        font-size: 28px;
    }

    .oasis-about-main-content>p {
        font-size: 14px;
        line-height: 1.8;
    }

    .oasis-about-info-box {
        padding: 18px;
    }

    .oasis-about-cta {
        margin-bottom: 40px;
    }


    .oasis-about-cta-inner {
        padding: 32px 25px;
        border-radius: 16px;
    }

    .oasis-about-cta h2 {
        font-size: 27px;
    }


    .osx-contact-section {
        padding: 70px 0;
    }

    .osx-contact-content h2 {
        font-size: 32px;
    }

    .osx-contact-content>p {
        font-size: 15px;
    }

    .osx-contact-form {
        padding: 28px 22px;
        border-radius: 15px;
    }

    .osx-contact-form-heading h3 {
        font-size: 24px;
    }

    .osx-contact-location {
        padding: 70px 0;
    }

    .osx-contact-location-heading h2 {
        font-size: 32px;
    }

    .osx-contact-map {
        height: 340px;
        border-radius: 15px;
    }

    .osx-gallery-section {
        padding: 40px 0;
    }

    .osx-gallery-tabs {
        margin-bottom: 30px;
    }

    .osx-gallery-tab {
        min-width: 115px;
        padding: 12px 20px;
        font-size: 13px;
    }

    .osx-gallery-card {
        height: 240px;
        border-radius: 12px;
    }

    .osx-gallery-video {
        border-radius: 12px;
    }

    .osx-gallery-lightbox {
        padding: 20px;
    }

    .osx-lightbox-close {
        top: 15px;
        right: 15px;
    }

    .osx-lightbox-prev {
        left: 12px;
    }

    .osx-lightbox-next {
        right: 12px;
    }
}

/* =====================================================
    575px
====================================================== */
@media (max-width: 575px) {
    .custom-container {
        padding-inline: 12px;
    }

    .top-bar {
        padding-block: 9px;
    }

    .address {
        font-size: 11px;
    }

    .logo {
        max-width: 300px;
    }

    .logo img {
        max-width: 200px;
    }

    .main-nav {
        padding-inline: 15px;
    }

    .oasis-diagnostic-section {
        padding: 45px 0 55px;
    }

    .oasis-section-heading {
        gap: 9px;
        margin-bottom: 24px;
    }

    .oasis-heading-line {
        width: 30px;
    }

    .oasis-section-heading h2 {
        font-size: 21px;
    }

    .oasis-services-swiper {
        padding-left: 28px;
        padding-right: 28px;
    }

    .oasis-service-image {
        height: 145px;
    }

    .oasis-radiologists-section {
        padding: 45px 0 55px;
    }

    .oasis-radiologists-slider {
        padding-left: 15px;
        padding-right: 15px;
    }

    .oasis-doctor-image {
        width: 40%;
        flex-basis: 40%;
    }

    .oasis-doctor-content {
        width: 60%;
        padding: 16px 12px;
    }

    .oasis-doctor-name {
        font-size: 17px;
    }

    .oasis-doctor-degree {
        font-size: 12px;
    }

    .oasis-doctor-details {
        font-size: 12px;
        line-height: 1.5;
    }

    .oasis-doctor-details li {
        margin-bottom: 5px;
    }

    .oasis-reviews-left .oasis-section-heading {
        margin-bottom: 22px;
    }

    .oasis-review-card {
        min-height: 175px;
        padding: 17px;
    }

    .oasis-review-quote {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
    }

    .oasis-review-stars svg {
        width: 70px;
        height: 16px;
    }

    .oasis-review-text {
        font-size: 13px;
    }

    .oasis-review-author {
        font-size: 14px;
    }

    .oasis-google-reviews {
        min-height: 235px;
        padding: 30px 20px;
    }

    .oasis-google-logo {
        width: 55px;
        height: 55px;
    }

    .oasis-google-rating-number {
        font-size: 27px;
    }

    .oasis-google-stars svg {
        width: 80px;
        height: 18px;
    }

    .osx-service-detail {
        padding: 45px 0 55px;
    }

    .osx-detail-image {
        height: 250px;
    }

    .osx-detail-text h2 {
        font-size: 21px;
    }

    .oasis-footer-main {
        padding: 35px 0 25px;
    }

    .oasis-footer-map {
        height: 220px;
    }

    .oasis-footer-bottom-inner {
        gap: 7px;
    }

    .oasis-footer-bottom p {
        font-size: 12px;
    }

    .oasis-about-main-image {
        height: 280px;
    }

    .oasis-about-main-content h2 {
        font-size: 24px;
    }

    .oasis-about-info-box {
        gap: 12px;
        padding: 16px;
    }

    .oasis-about-info-icon {
        flex-basis: 43px;
        width: 43px;
        height: 43px;
    }

    .oasis-about-cta-inner {
        padding: 28px 20px;
    }

    .oasis-about-cta h2 {
        font-size: 24px;
    }

    .oasis-about-cta-buttons {
        width: 100%;
        flex-direction: column;
    }

    .oasis-about-cta-buttons a {
        width: 100%;
    }

    .osx-contact-content h2 {
        font-size: 28px;
    }

    .osx-contact-info {
        padding: 14px;
    }

    .osx-contact-icon {
        flex-basis: 46px;
        width: 46px;
        height: 46px;
    }

    .osx-contact-info span {
        font-size: 14px;
    }

    .osx-contact-info p,
    .osx-contact-info a {
        font-size: 13px;
    }

    .osx-contact-form {
        padding: 24px 17px;
    }

    .osx-contact-location-heading h2 {
        font-size: 28px;
    }

    .osx-contact-map {
        height: 280px;
    }

    .osx-gallery-tabs {
        gap: 6px;
    }

    .osx-gallery-tab {
        min-width: 105px;
        padding: 11px 16px;
    }

    .osx-gallery-card {
        height: 220px;
    }

    .osx-lightbox-prev,
    .osx-lightbox-next {
        width: 40px;
        height: 40px;
    }
}

/* =====================================================
    380px
====================================================== */
@media (max-width: 380px) {
    .logo {
        max-width: 270px;
    }

    .logo img {
        max-width: 180px;
    }

    .appointment-btn,
    .phone-btn {
        font-size: 12px;
        padding-inline: 15px;
    }
}