@media screen and (min-width:1366px) {
    .container {
        max-width: 1250px
    }
}

@media screen and (max-width:1399px) and (min-width:1024px) {
    .cardType1 img {
        border-radius: 14px;
        width: 100%;
        object-fit: cover;
        object-position: top;
        height: 200px !important
    }

    .navbar-light .navbar-brand {
        margin: 0 !important
    }

    .navbar-light .navbar-brand img {
        max-width: 190px
    }

    nav#mainNav .nav-item>a {
        font-size: 12px !important
    }
}

@media (min-width:1200px) and (max-width:1275px) {
    nav#mainNav .nav-item>a {
        font-size: 11px !important
    }
}

@media screen and (max-width:1200px) and (min-width:1024px) {
    .cardType1 img {
        border-radius: 14px;
        width: 100%;
        object-fit: cover;
        object-position: top;
        height: 165px !important
    }

    .team-card-footer a:first-child,
    .team-card-footer a:nth-child(2) {
        padding: 8px;
        font-size: 11px
    }

    .cardType1Footer {
        padding: 10px;
        font-size: 14px
    }

    .newsCaption-content,
    .team-card .team-text p {
        font-size: 12px !important
    }

    .upcoming-events .newsCaption-title {
        font-size: 13px
    }

    .team-card .team-text p {
        height: 50px !important
    }

    .call-icon {
        display: none !important
    }

    .banner-caption {
        padding-top: 180px !important
    }

    .banner-caption h2 {
        font-size: 25px !important
    }

    .navbar-light .navbar-brand img {
        max-width: 140px !important
    }

    nav#mainNav .nav-item>a {
        font-size: 10px !important
    }

    .contactUs,
    .contactUs.portnerActive {
        background-size: 550px 100%
    }

    .caseStudyWrp .owl-nav button {
        left: -20px;
        opacity: .5
    }

    .caseStudyWrp .owl-nav button.owl-next {
        right: -20px
    }

    .colorBx h3 {
        font-size: 18px
    }
}

@media (min-width:1200px) {
    .map-wrapper iframe {
        height: 450px
    }

    .map-wrapper.style-2 {
        overflow: hidden;
        height: 297px;
        position: relative
    }
}

@media (min-width:992px) and (max-width:1199px) {
    .card-box {
        padding: 25px
    }

    .contact-form input,
    .contact-form textarea {
        font-size: 15px
    }

    .bottom-icon {
        width: 40px;
        height: 40px
    }

    .map-wrapper iframe {
        height: 400px
    }

    .map-wrapper.style-2 {
        overflow: hidden;
        height: 297px;
        position: relative
    }
}

@media only screen and (max-width:991px) {
    .bannerWrp .item img {
        height: 420px;
        object-fit: cover
    }

    body {
        padding-top: 50px;
        overflow-x: hidden
    }

    section {
        overflow: hidden
    }

    .banner-image img {
        width: auto
    }

    .mobile {
        display: block !important
    }

    .desktop {
        display: none !important
    }

    .navbar-toggler i {
        color: #000;
        font-size: 28px
    }

    .navbar-brand img {
        height: 50px
    }

    .navbar-light .navbar-brand {
        margin: 0 25px !important
    }

    nav#mainNav .nav-item>a {
        padding: 10px 0;
        display: flex;
        justify-content: space-between;
        color: #fff !important
    }

    nav#mainNav .nav-item {
        padding: 0;
        border-bottom: 1px dashed #ffffff78
    }

    nav#mainNav {
        padding: 12px 15px;
        background: #fff !important;
        margin: 0
    }

    .navbar-light .navbar-toggler {
        border: none;
        padding: 0;
        outline: 0
    }

    div#navbarSupportedContent {
        position: fixed;
        top: 0;
        width: 320px;
        left: 0;
        background: #fff;
        height: 100vh;
        padding: 60px 20px 20px;
        z-index: 9;
        display: block;
        transform: translateX(-320px);
        transition: .4s
    }

    .cross-toggler {
        background: #fff;
        border: none;
        color: #000;
        padding: 0;
        width: 30px;
        height: 30px;
        border-radius: 50%;
        margin-bottom: 10px;
        position: absolute;
        right: 20px;
        top: 20px;
        z-index: 9999
    }

    .beTheTeacher .col-md-6,
    .colorBx,
    .imgWithContent,
    .searchBox,
    .subscribe {
        margin-bottom: 30px
    }

    ul.navbar-nav.ml-auto {
        overflow: auto
    }

    div#navbarSupportedContent.active {
        left: 320px;
        transition: .4s
    }

    .overLay {
        position: fixed;
        width: 100%;
        height: 100vh;
        background: rgb(0 0 0 / 51%);
        top: 0;
        left: 0;
        display: none
    }

    .filterBx .unorderList.active,
    .overLay.active {
        display: block
    }

    section.banner,
    section.inrBanner {
        padding: 0
    }

    section.banner .container {
        display: flex;
        flex-direction: column-reverse;
        flex-wrap: wrap;
        gap: 30px;
        margin: 30px auto
    }

    .bannerContent h1 {
        font-size: 26px;
        line-height: 30px;
        margin: 0 0 10px
    }

    .bannerContent h3 {
        font-size: 22px;
        line-height: 20px
    }

    .bannerContent .listInline {
        margin-top: 15px
    }

    .sectionHeading h2 {
        font-size: 32px
    }

    .sectionHeading h3 {
        font-size: 20px
    }

    .teacherBx .d-flex,
    .teacherBx .listInline,
    .trust .listInline {
        flex-wrap: wrap
    }

    .trust {
        padding: 30px 0
    }

    .caseStudyWrp h3 {
        font-size: 24px;
        line-height: 30px
    }

    .caseStudyWrp p {
        font-size: 15px;
        line-height: 22px
    }

    .caseStudyWrp .owl-nav button {
        width: 40px;
        left: -20px;
        opacity: .5
    }

    .testimonialWrp .owl-nav button {
        width: 40px
    }

    .teacherBx .d-flex a,
    .testimonialWrp {
        width: 100%
    }

    .testimonialWrp .owl-nav {
        right: 0
    }

    .testimonialWrp .owl-dots {
        max-width: 100%
    }

    .caseStudyWrp .owl-nav button.owl-next {
        right: -20px
    }

    .footerLinkBx {
        width: auto;
        min-width: 100px
    }

    .colorBx h3 {
        font-size: 18px
    }

    .dropMenuContainer h3,
    .teacherBx h3,
    .tileBx p {
        font-size: 16px
    }

    .footerLink {
        gap: 20px
    }

    img.bannerImg {
        min-width: 100%;
        position: static
    }

    .searchBox {
        width: 100%
    }

    .circleBx {
        width: 244px
    }

    .applyWrp {
        flex-wrap: wrap;
        justify-content: space-evenly
    }

    .inerBannerContent h1 {
        font-size: 24px
    }

    section.inrBanner>img {
        min-height: 190px;
        object-fit: cover
    }

    .filterBx .unorderList {
        display: none
    }

    .teacherBx .listInline li,
    .teacherBx p {
        font-size: 14px
    }

    .mobileLogo {
        padding: 10px;
        background: #fff;
        margin: 15px 0
    }

    .navbar-nav {
        padding: 0 15px !important;
        justify-content: start;
        text-align: left;
        background: #00a052;
        margin: 0 !important
    }

    .dropmenu ul li:not(:first-child) {
        border-bottom: 1px dashed #ccc
    }

    .dropmenu ul li a {
        padding: 9px 10px;
        font-size: 14px
    }

    .dropmenu .dropmenu>.fas {
        background: 0 0;
        color: #000;
        margin-right: 5px;
        position: static
    }

    .navbar-nav>li {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between
    }

    .dropmenu>ul>li>.fas,
    .navbar-nav>li>.fas {
        background: no-repeat;
        padding: 0;
        transform: rotate(270deg);
        font-size: 20px;
        color: #fff
    }

    .backBtn,
    .dropmenu>ul>li>.fas {
        background: #00a052;
        color: #fff
    }

    .dropMenuContainer {
        transform: translateY(0) !important;
        transform: translateX(-460px) !important;
        position: absolute;
        top: 0;
        height: 100%;
        opacity: 1 !important;
        visibility: visible !important;
        transition: .5s
    }

    .dropmenu,
    li.nav-item.dropmenu {
        position: static
    }

    .backBtn {
        padding: 10px;
        display: flex !important;
        gap: 10px;
        align-items: center;
        border-radius: 7px
    }

    .dropMenuContainer.active,
    .dropmenu>ul.active {
        transform: translateX(0) !important;
        transition: .5s;
        max-height: 100vh;
        overflow-x: auto
    }

    .dropMenuContainer .col {
        max-width: 50%;
        width: 50%;
        flex-basis: auto
    }

    .dropmenu>ul {
        opacity: 1;
        visibility: visible;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 9999;
        transform: translateX(-120%) !important;
        transform: translateY(0)
    }

    .dropmenu {
        justify-content: space-between
    }

    .dropmenu>ul .dropmenu ul {
        height: 100%;
        left: auto;
        top: 0
    }
}

@media only screen and (max-width:767px) {
    .bottom-card-margin {
        margin-bottom: 40px
    }

    .faq-div {
        border-radius: 30px;
        padding: 30px 40px;
        margin-left: 10px !important;
        margin-right: 10px !important
    }

    .breakthroughSection {
        color: #00a052;
        font-size: 24px
    }

    .international-patient-services .section-title {
        font-size: 25px;
        color: #00a052;
        margin-bottom: 30px
    }

    .appointment-form h4,
    .blog-section h2,
    .excellence-section h2,
    .expert-advice-section h2,
    .international-patients h2,
    .mainHeading h2,
    .news-section h2,
    .our-services h2,
    .upcoming-events-card h5 {
        font-size: 24px
    }

    .expert-advice-section {
        margin-top: 20px
    }

    .doctor-banner {
        text-align: center;
        padding: 40px 15px
    }

    .doctor-banner-info {
        padding-left: 0;
        margin-top: 20px
    }

    .doctor-banner-img img {
        max-width: 200px
    }

    .doctor-info h3 {
        font-size: 20px;
        margin: 0;
        font-weight: 700
    }

    .who-we-are .section-title {
        font-size: 22px !important
    }

    .medicity-stats-card h2 {
        font-size: 24px !important
    }

    .green-overlay {
        height: 100%;
        width: 90%
    }

    .stats-yashoda-medicity-section h4 {
        font-size: 30px !important;
        line-height: inherit
    }

    .stats-yashoda-medicity-section span {
        line-height: 0 !important
    }

    .stats-yashoda-medicity-section {
        width: 92% !important;
        top: 0 !important;
        padding-left: 15px;
        padding-right: 15px;
        margin: 20px;
        z-index: auto
    }

    .banner-yashoda {
        height: 30vh !important
    }

    .banner-yashoda::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        background: 0 0 !important;
        z-index: 0
    }

    .banner-yashoda-caption {
        position: absolute;
        color: #fff;
        z-index: 9;
        padding: 100px 7% 0;
        width: 100%
    }

    .stats-section {
        margin-top: 100px;
        top: 0
    }

    .bg-overlay-div {
        padding: 2rem 1rem
    }

    /* .leadership-section .leader-card img {
        margin-top: 70px
    } */

    .leadership-text {
        margin-top: 50px
    }

    .search_form_hero_banner .col-md-3 {
        padding-left: 10px;
        padding-right: 10px
    }

    .formBanner {
        background-color: #f2f2f2;
        padding-top: 10px;
        padding-bottom: 20px
    }

    .search_form_hero_banner .row {
        margin-left: 0;
        margin-right: 0
    }

    .search_form_hero_banner {
        margin-top: 5px;
        border-radius: 8px;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
        box-sizing: border-box
    }

    .search_form_hero_banner button,
    .search_form_hero_banner select {
        padding: 8px;
        margin-right: 6px
    }

    .international-patients {
        padding: 0 0 30px !important
    }

    .card-box {
        padding: 20px;
        height: auto;
        margin-bottom: 20px
    }

    .bottom-card-text,
    .contact-info p,
    .white-btn {
        font-size: 13px
    }

    .bottom-card {
        padding: 12px;
        flex-direction: row
    }

    .bottom-icon {
        width: 35px;
        height: 35px;
        font-size: 1rem
    }

    .bottom-title {
        font-size: .75rem
    }

    .banner-caption2 h2 {
        font-size: 24px;
        text-align: center
    }

    .breadcrumb {
        font-size: 13px;
        justify-content: center
    }

    .map-wrapper iframe {
        height: 300px
    }

    .map-wrapper.style-2 {
        overflow: hidden;
        height: 297px;
        position: relative
    }

    .enquiry-box {
        border-radius: 30px;
        flex-direction: column;
        gap: 15px;
        flex-direction: column;
        gap: 10px
    }

    .contact-form input,
    .contact-form textarea {
        width: 100%;
        font-size: 15px
    }

    .enquiry-box>div {
        width: 100%
    }

    .search-btn-filter {
        padding: 0 !important
    }

    .faq-section .accordion-button::before,
    faq-section .accordion-button:not(.collapsed) {
        width: 32px
    }

    .filterSelected {
        justify-content: space-between
    }

    .footerLink {
        margin-top: 30px
    }

    .banner-caption {
        width: 100%;
        padding-top: 200px
    }

    .banner-text-bg {
        background-color: #fff9f98f;
        padding: 7px 10px
    }

    .banner-caption p {
        font-size: 19px;
        font-weight: 700
    }

    .banner-caption h2 {
        margin-bottom: 0 !important;
        font-size: 25px
    }

    .features-list {
        padding: 15px 0 10px !important
    }

    .our-networks {
        padding: 50px 0
    }

    .center-of-excellence .icon-content h3 {
        font-size: 18px
    }

    .appointment-container .appointment-form {
        border-bottom-left-radius: 22px;
        border-bottom-right-radius: 22px;
        border-top-right-radius: 0
    }

    .stats-section h4 {
        font-size: 28.65px
    }

    .our-services,
    .team-section {
        padding: 30px 0 !important
    }

    .international-patients img {
        height: 350px;
        object-fit: contain
    }

    .international-patients .international-patients-p {
        font-size: 19px
    }

    .checked-list::before {
        font-size: 9px;
        width: 16px;
        height: 16px;
        line-height: 16px
    }

    .upcoming-event-minor-card .event-details p {
        font-size: 13.2px
    }

    .testimonial-major-card h4 {
        font-size: 20px;
        line-height: 33px
    }

    .testimonial-section {
        padding: 50px 0 30px !important
    }

    .testimonial-img img {
        width: 100px !important
    }

    .footer-logo {
        width: 225px
    }

    .testimonial-section .owl-carousel .item {
        padding: 0 0 0 40px
    }

    .testimonial-section .owl-carousel .item:last-child {
        padding: 0
    }

    .health-packages h2 {
        font-size: 20px;
        margin-top: 30px
    }

    .mobile-nav {
        display: flex;
        border-radius: 0 !important;
        margin: 0
    }

    .bloc-icon {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        padding: 10px 0;
        text-align: center;
        font-size: 11px;
        line-height: 16px;
        font-weight: 600;
        color: #000
    }

    .mobile-nav img {
        width: 50%;
        height: 40px;
        object-fit: contain
    }

    .desktopOnly {
        display: none
    }

    .director-msg .green-box {
        position: static;
        transform: none;
        max-width: 100%;
        margin-top: 1rem
    }
}

.search-box,
.suggestions-box {
    position: relative;
    max-width: 450px
}

@media only screen and (max-width:460px) {
    .stats-section {
        margin-top: 0
    }

    .search_form_hero_banner {
        order: 2
    }

    .features-list {
        order: 1
    }

    .faq-section .accordion-button::before,
    .faq-section .accordion-button:not(.collapsed)::before {
        width: 32px
    }

    .faq-section .accordion-button:not(.collapsed) {
        width: 100%
    }

    .footer .col {
        min-width: 100%;
        flex-grow: auto
    }
}

@media only screen and (min-width:767px) {
    .our-services-vertical-slider .col-md-6 .icon-bx-wraper:nth-child(3n) {
        margin-top: 3.5rem !important
    }
}

@media only screen and (min-width:320px) {
    .our-values {
        margin-top: 20px
    }

    .cardType1Footer {
        padding: 10px;
        font-size: 14px
    }

    .newsCaption-content,
    .team-card .team-text p {
        font-size: 12px !important
    }

    .upcoming-events .newsCaption-title {
        font-size: 13px
    }

    .team-card .team-text p {
        height: 50px !important
    }
}

@media (min-width:768px) {
    .director-msg .green-box {
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        max-width: 50%;
        box-shadow: 0 4px 15px rgba(0, 0, 0, .1)
    }
}

.blog-card-img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block
}

.category-widget {
    border: 1px solid #ddd;
    border-radius: 12px;
    padding: 20px;
    background: #fff
}

.category-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px;
    color: #000
}

.category-list {
    list-style: none;
    margin: 0;
    padding: 0
}

.category-list li {
    margin-bottom: 10px
}

.category-list li a {
    color: #000;
    text-decoration: none;
    font-size: 15px;
    display: inline-block
}

.category-list li a i {
    margin-right: 5px;
    color: #00a052
}

.category-list li a:hover {
    text-decoration: none;
    color: #018042ff
}

.category-list li a.active-cat {
    font-weight: 700;
    color: #017f42ff
}

.recent-post-widget {
    border: 1px solid #e5e5e5;
    border-radius: 12px;
    padding: 15px 20px;
    background: #fff
}

.recent-post-widget .recent-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px
}

.recent-post-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #eee
}

.recent-post-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0
}

.recent-img {
    flex: 0 0 65px;
    height: 65px;
    margin-right: 12px
}

.recent-img img {
    width: 65px;
    height: 65px;
    object-fit: cover;
    border-radius: 6px
}

.recent-content {
    flex: 1
}

.recent-meta {
    font-size: 13px;
    color: #666;
    margin-bottom: 5px
}

.recent-date {
    margin-right: 10px
}

.recent-category {
    float: right;
    font-weight: 500;
    color: #999
}

.recent-title-link {
    font-size: 14px;
    font-weight: 600;
    color: #222;
    text-decoration: none;
    line-height: 1.4;
    display: block
}

.blog-title:hover,
.recent-title-link:hover {
    color: #00a052
}

.search-box {
    display: flex;
    align-items: center;
    margin: 10px auto 0;
    background: #fff;
    border: 2px solid #ddd;
    border-radius: 50px;
    overflow: visible
}

.search-box input {
    border: none;
    outline: 0;
    padding: 10px 15px;
    flex: 1;
    font-size: 16px;
    border-radius: 50px 0 0 50px
}

.search-box button {
    background: #00a052;
    border: none;
    outline: 0;
    padding: 10px 13px;
    border-radius: 50%;
    cursor: pointer;
    transition: .3s
}

.search-box button:hover {
    background: #00783e
}

.search-box button i {
    color: #fff;
    font-size: 18px
}

.suggestions-box {
    display: none;
    margin: 6px auto 0;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 10px;
    box-shadow: 0 6px 16px rgba(0, 0, 0, .1);
    max-height: 260px;
    overflow-y: auto;
    z-index: 999
}

.suggestion-item {
    padding: 10px 12px;
    cursor: pointer;
    font-size: 15px;
    line-height: 1.3
}

.suggestion-item.active,
.suggestion-item:hover {
    background: #f5f5f5
}

.suggestion-empty {
    padding: 12px;
    color: #777;
    font-style: italic
}

.news-detail-card {
    margin-bottom: 30px
}

.news-detail-img img {
    border-radius: 10px
}

.news-meta {
    font-size: 14px;
    color: #666
}

.news-date {
    font-weight: 500
}

.news-description {
    font-size: 16px;
    line-height: 1.7;
    color: #333
}

.read-more:hover {
    color: #018143
}

.blog-title {
    color: #000;
    font-weight: 600
}

@media only screen and (max-width:768px) {
    .banner-image img {
        width: 100%;
        height: 450px;
        padding-top: 50px;
        margin-right: 0 !important
    }

    .bannerHeight {
        height: 200px
    }

    .font-mobile-size-heading {
        font-size: 26px
    }

    .mobile-space {
        margin-top: 50px
    }

    .testimonial-section .owl-carousel .item {
        padding: 0 0 0 40px
    }

    .testimonial-section .owl-carousel .item:last-child {
        padding: 0
    }
}

@media only screen and (max-width: 991px) {
    .navbar-brand img {
        width: 100%;
        height: 50px;
        object-fit: contain;
    }

    .footer-logo {
        width: 225px;
        height: auto;
        object-fit: contain;
    }

    .socialIcons img {
        width: 230px;
        height: 60px;
        object-fit: contain;
    }
}

/* ================================
   MOBILE CLS FIX – HERO BANNER
   Applies ONLY on mobile
   ================================ */
@media (max-width: 767px) {

    /* Reserve space for entire banner */
    .banner-caption {
        min-height: 520px;
        padding: 16px 16px 24px;
        box-sizing: border-box;
    }

    .newsletter-dropdown {
        margin-top: 15px;
    }

    /* Prevent text jump due to font loading */
    .banner-text-bg {
        padding: 12px 0;
    }

    .banner-text-bg p {
        min-height: 22px;
        margin-bottom: 6px;
        font-size: 14px;
        line-height: 1.4;
        margin: 5px;
    }

    .banner-text-bg h1 {
        min-height: 44px;
        font-size: 24px;
        line-height: 1.3;
        margin-bottom: 12px;
        margin: 5px;
    }

    /* Search form wrapper */
    .search_form_hero_banner {
        margin-top: 12px;
    }

    /* Reserve space for form block */
    .formBanner {
        min-height: 260px;
        row-gap: 12px;
        box-sizing: border-box;
    }

    /* Column spacing fix */
    .formBanner .col-md-3 {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    /* Normalize all form elements height */
    .form-select,
    .search-theme-btn {
        height: 48px;
        line-height: 48px;
        font-size: 14px;
    }

    /* Remove border shift issues */
    .form-select,
    .search-theme-btn {
        height: 48px;
        font-size: 14px;
    }

    .form-select {
        padding: 10px 12px;
        line-height: normal;
    }

    .search-theme-btn {
        line-height: 48px;
        /* OK for button */
    }

    /* Prevent unexpected image or font shifts */
    .banner-caption * {
        box-sizing: border-box;
        margin-top: 30vh;
    }
}