* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: "Nunito", sans-serif;
    color: white;
   
}

html{
    scroll-behavior: smooth;
}



.navbar {
    height: 96px;
    background: #102050;

    display: flex;
    align-items: center;

    padding: 0 8%;

    position: relative;
    z-index: 10;
}


/* LOGO */

.logo {
    display: flex;
    align-items: center;

    font-size: 42px;
    font-weight: 900;

    min-width: 320px;
}

.logo-icon {
    width: 42px;
    height: 42px;

    margin-right: 12px;

    background: #13a5bd;

    border-radius: 7px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: white;

    font-size: 24px;
}

.logo-highlight {
    color: #13a5bd;
}


/* NAVIGATION */

.nav-links {
    display: flex;
    height: 100%;
    align-items: center;

    margin-left: auto;
}

.nav-links a {
    height: 100%;

    display: flex;
    align-items: center;

    padding: 0 18px;

    color: white;

    text-decoration: none;

    font-size: 16px;
    font-weight: 700;

    position: relative;

    transition: 0.3s;
}

.nav-links a:hover,
.nav-links a.active {
    background: rgba(20, 165, 190, 0.25);
}

.nav-links a.active::after {
    content: "";

    position: absolute;

    bottom: 0;
    left: 20px;
    right: 20px;

    height: 3px;

    background: white;
}


/* NAV ACTIONS */

.nav-actions {
    display: flex;
    align-items: center;

    gap: 12px;

    margin-left: 20px;
}

.search-btn {
    width: 60px;
    height: 60px;

    border: none;
    border-radius: 50%;

    background: #5b55e8;

    color: white;

    font-size: 20px;

    cursor: pointer;
}
.appointment-btn {
    padding: 17px 30px;

    background: #14a4bd;

    color: white;

    text-decoration: none;

    border-radius: 35px;

    font-weight: 800;

    white-space: nowrap;

    transition: 0.3s;
}

.appointment-btn:hover {
    background: #0e91a8;
}




.hero {
    min-height: calc(100vh - 96px);

    position: relative;

    overflow: hidden;

    background:
        linear-gradient(
            90deg,
            rgba(5, 30, 55, 0.96),
            rgba(7, 59, 88, 0.46)
        ),
        url("/images/bg.png");

    background-size: cover;
    background-position: center;
}


/* DARK BLUE OVERLAY */

.hero-overlay {
    position: absolute;

    inset: 0;

    background:
        radial-gradient(
            circle at 80% 50%,
            rgba(20, 157, 191, 0.35),
            transparent 45%
        );
}




.hero-content {
    position: relative;
    z-index: 3;

    width: 100%;
    max-width: 1400px;

    margin: auto;

    padding: 100px 2%;
}
/* .headerImg{
    width: 10%;
    height: 20%;
}
.headerImg img{
    height: auto;
    width: 800px;
    position: absolute;
    left: 550px;
    top: -50px;
} */


.hero-card {
    width: 80%;
    display: flex;
    padding: 55px 65px;
    margin: 10px;
    border-radius: 28px;

     background: linear-gradient(
        to right,
        rgba(18, 148, 173, 0.75) 0%,
        rgba(18, 148, 173, 0) 65%,
        rgba(18, 148, 173, 0) 85%,
        rgba(18, 148, 173, 0) 100%
    );

    backdrop-filter: blur(5px);

    border: 1px solid rgba(255, 255, 255, 0.05);
}


/* SMALL TITLE */

.small-title {
    display: flex;
    align-items: center;

    gap: 12px;

    font-size: 18px;

    font-weight: 800;

    margin-bottom: 25px;
}

.small-title i {
    font-size: 20px;
}




.hero h1 {
    font-size: clamp(45px, 5vw, 70px);

    line-height: 1.05;

    font-weight: 900;

    margin-bottom: 25px;

    letter-spacing: -1px;
}

.hero h1 span {
    color: #14a8c1;
}


/* DESCRIPTION */

.hero p {
    max-width: 650px;

    font-size: 17px;

    line-height: 1.7;

    font-weight: 600;

    color: rgba(255,255,255,0.92);

    margin-bottom: 35px;
}




.hero-actions {
    display: flex;
    align-items: center;

    gap: 28px;
}


.primary-btn {
    padding: 17px 32px;

    border-radius: 35px;

    background: #101f61;

    color: white;

    text-decoration: none;

    font-weight: 800;

    transition: 0.3s;
}

.primary-btn:hover {
    background: #0b174b;

    transform: translateY(-2px);
}




.emergency {
    display: flex;
    align-items: center;

    gap: 15px;
}

.emergency-icon {
    width: 58px;
    height: 58px;

    background: white;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #14a4bd;

    font-size: 20px;
}

.emergency span {
    display: block;

    font-size: 15px;

    font-weight: 700;

    margin-bottom: 3px;
}

.emergency strong {
    display: block;

    font-size: 17px;

    font-weight: 900;
}




.hero-image {
    position: absolute;
    z-index: 4;
    right: 10%;
    bottom: -90px;
    width: 43%;
    display: flex;
    justify-content: center;
}

.hero-image img {
    width: 180%;
    max-height: 800px;
    object-fit: contain;
    object-position: bottom;
    filter: drop-shadow(
        0 20px 30px rgba(0,0,0,0.25)
    );
}

.service-section{
    color: black;
    padding: 5%;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2,1fr);
    text-align: center;
}
.service-img{
   display: flex;
   gap: 40px;
   flex-wrap: wrap;
   justify-content: space-between;
   align-items: center;
}
.main-img img{
    height: 500px;
    object-fit: fill;
    
    
}
#serviceImg{
    width: calc((100% - 20px) / 4);
    flex-grow: 2;
}
.mini-img{
        display: flex;
        flex-direction: column;
        flex-grow: 0;
        justify-content: space-around;
        padding: 10px 60px;
        flex-wrap: wrap;
        gap: 40px;
        width: calc((100% - 20px) / 2);

    }
.mini-img .text{
    background-color:#101f61;
    padding: 5px 40px;
    font-size: 1.5rem;
    border-radius: 10px;
}
.mini-img .text span:first-child{
    color: #14a4bd;
    font-weight: bolder;
    font-size: 4rem;
}
.mini-img .text p{
    color: white;
    margin-bottom: 15px;
    margin-top: -15px;
    font-size: 1rem;
    font-weight: 600;
}
/* .service-details{
    display: flex;
    flex-direction: column;
    gap: 10px;
} */
 .service-details h2{
    font-size: 3rem;
    text-align: left;
    font-weight: bold;
    color: #101f61;
    margin: 20px 0px;
    
 }
 .service-details p:not(.pabout),
 .read-more-panel{
    line-height: 25px;
    text-align: left;
    font-size: 1rem;
    color: #6f6f72;
    margin: 5px 0px;
 }
 .read-more-panel button{
    padding: 20px 5px;
    background-color: #13a5bd;
    color: white;
    width: 50%;
    border: 0px;
    border-radius: 30px;
    font-size: 1rem;
    margin-top: 30px;
 }
 .read-more-panel{
    display: flex;
    flex-direction: column;
    gap: 2px;
 }
 .read-more-panel li{
    list-style: none;
    display: flex;
    gap: 10px;
    font-size: 1.1rem;
 }
 .read-more-panel i{
    background-color: #13a5bd;
    color: white;
    padding:5px ;
    border-radius: 100%;
    font-size: 0.9rem;
 }
.service-details .about-icon{
    display: flex;
    gap: 20px;
    font-size: 1.4rem;
    color: #0b174b;
    font-weight: 800;
}
.service-details .about-icon i{
    color: #13a5bd;
}
.question-section{
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(2,1fr);
    
}
.question-panel{
    background-color: #c7eff5ec;
    width: 100%;
    margin-top: 15px;
    padding: 20px 30px;
    border-radius: 20px;
}
.question-section h4{
    color: #102050;
    font-size: 1.4rem;
    font-weight: 700;
    text-align: left;
}
.service-details .emergency{
    display: flex;
}
.service-details .emergency label{
   display: flex;
   flex-direction: column;
   padding: 0px;
}
.service-details .emergency label{
    text-align: left;
    display: flex;
    flex-direction: column;
    margin-top: 10px;
    gap: 5px;
}
.service-details .emergency i{
    background-color: #0e91a8;
    padding: 20px;
    border-radius: 50%;
    border-top-right-radius: 20% ;
    color: white;
    cursor: pointer;
}
.service-details .emergency label p{
    margin-top: 0px;
    font-size: 1.2rem;
    color: #101f61;
    font-weight: 900;
}
.service-details .emergency label:not(p){
    font-size: 1.1rem;
    color: red;
    font-weight: 600;
    color: #6f6f72;
}
.img img{
    width: 100%;
    height: 100%;
}
.doctor-section{
    padding: 100px;
    color: black;
    background:
        url("/images/herobg.png");

    background-size: cover;
    background-position:right;
    height: auto;
    min-height: 100px;
    width: 100%;
    
}
.details{
    text-align: center;
}
.details h2{
    font-size: 3rem;
    color:#0b174b;
    text-align: center;
     padding: 20px 350px;
     line-height: 60px;
}
.cards{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    height: fit-content;
}
.card3 img{
    width: 100%;
    height: 100%;
}
.card1{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.card1 li{
    list-style: none;
    color: #0b174b;
    border-radius: 20px;
    padding: 25px;
    width: 90%;
    font-weight: 800;
    font-size: 1.5rem;
    box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);
    

}
.card1 li:first-child,
.card1 li:hover{
    background-color: #0e91a8;
    color: white;
    transition: 0.5s;
    cursor: pointer;

}
.card2{
    padding: 20px;
    margin-right: 20px;
    margin-bottom: 50px;
    color: white;
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    background-color: #0b174b;
}
.card2 .tag{
    align-self: flex-start;
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: -35px;
    position: relative;
}
.tag label{
    position: absolute;
    left: 330px;
    letter-spacing: 2px;
    top: -2px;
    color: #5b55e8;
    font-size: 2.3rem;
    font-weight: 500;
}
.icon-handler,
.icon-div{
    font-size: 30px;
}
.icon-handler i,
.icon-div i{
    color: #008ca8;
    margin: 0px 10px;
}
.tag i{
    position: absolute;
    padding: 20px;
    margin-left: 10px;
    background-color: #0e91a8;
    border-radius: 10px;
    font-size: 50px;
}
.card2 p{
    font-size: 1.1rem;
    line-height: 30px;
    margin-top: 60px;
    padding-bottom: 40px;
    border-bottom: 0.5px solid #9eb3b6;
}
.card2 button{
    padding: 20px;
    border: none;
    width: 50%;
    border-radius: 40px;
    font-size: 1.2rem;
    color: white;
    background-color: #0e91a8;
}
.card3{
    height: 94.5%;
}
.section3{
    height: auto;
}
.section3 main{
    position: relative;
    color: black;
    display: grid;
    height: auto;
    padding: 100px;
    grid-template-columns: repeat(2,1fr);
}
.section3 img{
    width: 80%;
    height: 100%;
    border-radius: 40px;
}
.main-body{
    margin-left: -100px;
}
.choose-section{
    display: flex;
    gap: 10px;
}
.choose-section h3{
    font-size: 1.2rem;
    font-weight: 700;
    color: #101f61;
    font-family:"Fira Sans", sans-serif;
}
.main-body h2{
    font-size: 3rem;
    color: #101f61;
}
.main-body .p {
    padding: 40px 0px;
    position: relative;
    padding-bottom: 30px;
    border-bottom: 0.2px solid #ddd;
}
.main-body .p::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 30%;
    height: 1px;
    background: #0099b5;
}
.btn-section{
    padding: 40px 0px;
    display: flex;
    gap: 40px;
}
.btn-section button{
    transition: 0.5s;
    cursor: pointer;
    width: 30%;
    padding: 15px 45px;
    color: white;
    background-color: #0099b5;
    border-radius: 50px;
    border: none;
    font-size: 1.2rem;
}
.btn-section button:hover{
    background-color: #0b174b;
}
.hospitality{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    background-color:#F1F7F3;
    position: absolute;
    left: -100px;
    width: 67%;
    border-radius: 20px;
    width: 100%;
}
.hospitality .card{
    width: 100%;
    transition: 1s;
    padding: 38px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    border-right: 1px solid white;
}
.hospitality .card:first-child:hover{
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    background-color: white;
}
.hospitality .card:last-child:hover{
    border-bottom-right-radius: 20px;
    border-top-right-radius: 20px;
    background-color: white;
}
.hospitality .card:hover{
    background-color: white;
}
.card:hover h3 {
    transition: 2s;
    color: white;
    background-color: #ddf2f3 !important;
}
.hospitality .card h4{
    font-size: 1.2rem;
    color: #101f61;
    font-weight: 900;
    margin: 9px 0px;
}
.hospitality .card p{
    font-size: 1rem;
    line-height: 25px;
}
.hospitality .card h3{
    background-color: white;
    width: fit-content;
    padding: 15px;
    border-radius: 10px;
    font-size: 1.5rem;
    font-weight: bold;
    color: #13a5bd;
}
.section4{
    padding: 100px;
    padding-bottom: 400px;
    color: black;
    background-color: #F1F7F3 ;
}
.section-text{
    text-align: center;
} 
.section-text .icon-div{
    margin-bottom: 20px;
}
.section-text .icon-div label{
    font-size: 1.2rem;
    color: #101f61;
    font-weight: 800;
    margin: 0px 10px;
}
.section-text .text-div h2{
    font-size: 3rem;
    font-weight: bolder;
    color: #0b174b;
}
.text-div span{
    position: relative;
}
.text-div span::after{
    background-color: #0099b5;
    content: "";
    top: -10px;
    position: absolute;
    bottom: -1px;
    left: 8px;
    width: 50%;
    height: 1px;
    background: #0099b5;
}
.gallery-section{
    display: grid;
    gap: 40px;
    text-align: center;
    margin-top: 30px;
    grid-template-columns: repeat(3,1fr);
}
.gallery-card{
    position: relative;
}
.gallery-card .card-tag{
    z-index: 10;
    position: absolute;
    top: 30px;
    left: 30px;
    background-color:#147cc1;
    padding: 5px 10px;
    border-radius: 10px;
    color: white;
}
.gallery-card img{
    cursor: pointer;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 40px;
}
.gallery-card::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 40px;
    box-shadow: inset 0px 0 250px 30px rgba(58, 54, 54, 0.7);
    pointer-events: none;
}
.gallery-card:hover .card-description{
    transition: 0.9s;
    cursor: pointer;
    background-color: #101f61;
    color: white;
}
.gallery-card:hover .card-description i{
    background-color: #147cc1;
    color: white;
}
.card-description{
    box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.1);
    padding: 8px 20px;
    margin: 10px 0px;
    background-color: white;
    border-radius: 20px;
    display: flex;
    font-size: 1.4rem;
    font-weight: bold;
    color: #101f61;
    align-items: center;
    justify-content: space-between;
}
.card-description i{
    padding: 15px;
    color: white;
    background-color: #101f61;
    border-radius: 10px;
}
.appointment-section{
    padding: 120px;
    display: grid;
    align-content: space-around;
    
}
.appointment-section main{
    display: grid;
    grid-template-columns: repeat(2,1fr);
    align-content: space-around;
    margin-top: -330px;
    background:
    url("/images/background.png");
    background-size: cover;
    background-position: center;
    padding:100px 90px;
    border-radius: 20px;
    
}
.appointIcon{
    display: flex;
    gap: 10px;
    align-items: center;
}
.appointIcon label{
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 1px;
}
main h2{
    font-size: 3rem;
    font-weight: 800;
    margin: 15px 0px;
    margin-bottom: 40px;
}
.head-icon{
    display: flex;
    align-items: center;
    gap: 10px;
}
.icon-container{
    width: 64px;
    height: 64px;
    background: #08a8c2;
    border-radius: 12px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}
.icon-container::before{
    content: "";
    position: absolute;
    inset: -6px;
    border: 2px dashed #008ca8;
    border-radius: 14px;
}
.icon-container:first-child{
    margin-bottom: 40px;
}
.head-icon i{
    color: white;
    font-size: 40px;
}
.head-icon label{
    display: flex;
    flex-direction: column;
    align-content: space-between;
    margin-bottom: 40px;
    height: 64px;
    justify-content: space-between;
    margin-left: 10px;
    font-size: 1.2rem;
}
.form{
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}
.form .input{
    display: flex;
    justify-content: space-around;
}
.input input,
.input select,
.form textarea,
.form button{
    transition: 1s;
    align-items: flex-start;
    width: 45%;
    padding: 15px;
    background-color: rgba(255, 255, 255, 0);
    border: 2px solid #0099b5;
    border-radius: 10px;
    color: white;
    font-size: 1.2rem;
    outline: none;
}
input::placeholder,
textarea::placeholder{
    color: white;
}
textarea{
    height: 100px;
}
.form button{
    border-radius: 30px;
    background: linear-gradient(
        to right,
        rgba(18, 148, 173, 0.75) 0%,
        rgb(196, 133, 238) 15%,
        rgba(18, 147, 173, 0.651) 55%,
        rgb(196, 133, 238) 85%,
        rgba(108, 208, 228, 0.726) 100%
    );
}
.form textarea,
.form button{
    width: 95%;
    align-self: center;
}
.input select:hover,
.input input:hover{
    background-color: white;
    color: #101f61;
}
input:hover::placeholder{
    color: #101f61;
}
.sponsors{
    color: black;
    padding: 0px 120px;
    
}
.s-card-container{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 40px;
}
.sponsors .s-card img{
    width: 100%;
    height: 80%;
    object-fit: cover;
    border-radius: 20px;
}
.card-des{
    background: url("/images/background.png");
    object-fit: cover;
    object-position: center;
    color: white;
    padding: 20px;
    border-radius: 10px;
    position: relative;
}
.card-des::before{
    position: absolute;
    top: -40px;
    left: 20px;
    content: "Plateau The Beautiful";
    background: url("/images/background.png");
    padding: 2px 10px;
    border-radius: 10px;
}
.card-des h2{
    font-size: 1.5rem;
}
.sponsors h1{
    text-align: center;
    margin-bottom: 50px;
    font-size: 3rem;
    color: #0b174b;
    font-weight: 700;
}
.blog{
    margin-top: 60px;
   padding:60px 120px;
   color: black;
   background: url("/images/herobg.png");
   margin-bottom: 150px;
   height: auto;
   
}
.blog-card-container{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 30px;
}
.blog-card{
    border-radius: 20px;
    background: url("/images/background.png");
    object-fit: cover;
    object-position: top;
    box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);
    height: max-content;
}
.text-card{
    padding: 20px;
    margin-top: 0px;
}
.text-card .admin{
    display: flex;
    gap: 80px;
}
.admin label{
    display: flex;
    gap: 10px;
}
.text-card h2{
    font-size: 1.8rem;
    font-weight: 700;
    color: white;
    text-decoration: underline;
    margin: 20px 0px;
}
.blog-card img{
    /* margin-top: -20px; */
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.blog-text label{
    color: #0b174b;
    font-size: 1.2rem;
    font-weight: 700;
}
.blog h1{
    font-size: 2.5rem;
    font-weight: 700;
    color: #0b174b;
    margin-bottom: 30px;
}
.blog-card label{
    font-size: 1rem;
    color: white;
} 
.text-card .button{
    display: flex;
    color: black;
    align-items: center;
    justify-content: space-between;
}
.text-card .button button{
    background-color: #0099b5;
    color: white;
    border: none;
    padding: 15px 30px;
    border-radius: 20px;
    font-size: 1.1rem;

}
.text-card .button i{
    text-align: center;
    background-color: white;
    padding: 10px 10px;
    font-size: 20px;
    border-radius: 10px;
    color: #0b174b;
}
footer{
    background-color: #0b174b;
    padding: 100px;
    color: white;
     background-color: #0b174b;

}
footer main{
    background-color: #13a5bd;
    display: grid;
    justify-content: space-around;
    grid-template-columns: repeat(3,1fr);
    padding: 30px 20px;
    border-radius: 10px;
}
.footer-container{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.footer-container i{
    background-color: #0b174b;
    font-size: 40px;
    position: relative;
    padding: 20px;
    border-radius: 10px;
    
}
.footer-container i::after{
    content: "";
    position: absolute;
    border: 2px dashed #0b174b;
    inset: -6px;
    border-radius: 14px;

}
.alertDisply{
    background-color: #0b174b;
    color: white;
    padding: 20px 10px;
    border-top: 2px solid #008ca8;
    overflow: hidden;
    font-size: 22px;
}
.alertDisply p{
    animation: animate 20s linear infinite;
}
@keyframes animate {
    from{
        transform: translateX(100%);
    }
    to{
        transform: translateX(-100%);
    }
}
.loader{
    position: fixed;
    inset: 0;
    left: 0;
    top: 0;
    width: 100%;
    height: 100dvh;
    overflow-y: hidden;
    background-color: white;
    z-index: 9999999;
    text-align: center;
    align-content: center;
    transition: 0.5s;
}

.loader img{
    display: block;
    height: auto;
    position: relative;
    z-index: 1;
    width: min(400px, 80vw);
    /* animation: scaleImg 2.5s linear infinite;
    animation-delay: 3s; */
}
.loadContainer{
    position: relative;
    display: inline-block;
}
.loadContainer::before{
    content: "";
    inset: -6px;
    top: -6px;
    left: -6px;
    right: -6px;
    bottom: -6px;
    border: 5px solid green;
    position: absolute;
    z-index: 10;
    border-radius: 50%; 
    border-left: 0px;
    animation: rotateIcon 2.5s linear infinite;
}
@keyframes scaleImg {
    from{
        transform: scale(0.1);
        
    }
    to{
        transform: scale(1);
    }
}
@keyframes rotateIcon {
    0%{
        transform: rotate(0deg);
        border-color: #08a8c2;
    }
    25%{
        transform: rotate(90deg);
        border-color: #008ca8;
    }
    50%{
        transform: rotate(180deg);
        border-color: #0b174b;
    }
    75%{
        transform: rotate(270deg);
        border-color: #102050;
    }
    100%{
        transform: rotate(360deg);
        border-color: #9eb3b6;
    }
}

.hospitality{
    
}
/* .card3 img{
    height: 90%;
} */

/* Responsiveness */
@media(max-width : 711px){
    .main-img img{
    height: 300px;
    width: 620px;
    object-fit: cover;
    object-position: top; 
    
}
.mini-img{
    width: auto;
}
}

@media (max-width: 1200px) {
    .cards{
        display:grid;
    grid-template-columns: repeat(2,1fr);
}
.section3 main img{
   display: none;
}
.section3 main{
    
}
.s-card-container{
    grid-template-columns: repeat(2, 1fr);
}
.section4{
    margin-top: 50px;
    margin-left: -50px;
}
.hospitality{
    left: 0px;
    width: 100%;
}
.main-body{
    text-align: left;
    margin-left: -420px;
}
.appointment-section{
    padding: 50px;
}
.doctor-section img{
    display: none;
}
.blog-card-container{
    grid-template-columns: repeat(2,1fr);
}
.blog{
   
   padding:60px 60px;
   
}
.details h2{
    text-align: left;
    padding: 0;
    line-height: 50px;
    font-size: 2rem;
}
.sponsors{
    padding: 0px 50px;
}
.sponsors .s-card{
    height: 90%;
    width: 90%;
}
.s-card-container{
    gap: 0px;
}
.details{
    text-align: left;
    height: fit-content;
}
    .mini-img{
        margin-left: 150px;
    }
    .service-section{
        grid-template-columns: 1fr;
    }
    .navbar {
        padding: 0 4%;
    }

    .logo {
        min-width: 220px;
        font-size: 34px;
    }

    .nav-links a {
        padding: 0 10px;
        font-size: 14px;
    }

    .hero-content {
        padding-left: 5%;
    }

    .hero-card {
        width: 65%;
    }

  .service-img{
    gap: 20px;
 }

}


@media (max-width: 900px) {
     .service-img{
    gap: 25px;
 }
    .navbar {
        height: 75px;
    }

    .nav-links {
        display: none;
    }

    .logo {
        min-width: auto;
        font-size: 30px;
    }

    .nav-actions {
        margin-left: auto;
    }

    .search-btn {
        width: 48px;
        height: 48px;
    }

    .appointment-btn {
        padding: 13px 20px;
    }


    .hero {
        min-height: 850px;
    }

    .hero-content {
        padding: 80px 6% 0;
    }

    .hero-card {
        width: 100%;

        padding: 40px;
    }

    .hero-image {
        width: 75%;

        right: 50%;

        transform: translateX(50%);

        opacity: 0.35;
    }
}


@media (max-width: 600px) {
        .mini-img{
        margin-left: ;
    }
    .navbar {
        padding: 0 20px;
    }

    .logo {
        font-size: 27px;
    }

    .logo-icon {
        width: 35px;
        height: 35px;
        font-size: 19px;
    }

    .search-btn {
        display: none;
    }
    .appointment-btn {
        padding: 11px 16px;
        font-size: 14px;
    }

    .hero {
        min-height: 780px;
    }

    .hero-content {
        padding: 50px 20px 0;
    }

    .hero-card {
        padding: 35px 25px;

        border-radius: 20px;
    }

    .small-title {
        font-size: 15px;
    }

    .hero h1 {
        font-size: 43px;
    }

    .hero p {
        font-size: 15px;
    }

    .hero-actions {
        flex-direction: column;
        align-items: flex-start;

        gap: 22px;
    }

    .hero-image {
        width: 100%;
    }
    .question-section{
    grid-template-columns: repeat(1,1fr);
    

}
}
@media (max-width:680px){

}

/* =========================================================
   RESPONSIVE OVERRIDES
   The original CSS above has NOT been changed.
   These rules are added at the end to make the layout
   responsive across desktop, tablet and mobile widths.
   ========================================================= */

/* Prevent accidental horizontal overflow */
html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

img {
    max-width: 100%;
}

/* Large screens */
@media (max-width: 1400px) {
    .navbar {
        padding-left: 4%;
        padding-right: 4%;
    }

    .logo {
        min-width: auto;
        font-size: clamp(28px, 3vw, 42px);
    }

    .nav-links a {
        padding-left: 12px;
        padding-right: 12px;
    }

    .hero-content {
        padding-left: 4%;
        padding-right: 4%;
    }

    .hero-card {
        width: min(80%, 1050px);
    }

    .hero-image {
        right: 3%;
        width: 46%;
    }

    .doctor-section {
        padding-left: 6%;
        padding-right: 6%;
    }

    .section3 main {
        padding-left: 6%;
        padding-right: 6%;
    }

    .section4 {
        padding-left: 6%;
        padding-right: 6%;
    }

    .appointment-section {
        padding-left: 7%;
        padding-right: 7%;
    }

    .sponsors,
    .blog {
        padding-left: 7%;
        padding-right: 7%;
    }
}

/* Tablets / smaller laptops */
@media (max-width: 1100px) {
    .navbar {
        height: 82px;
    }

    .logo {
        font-size: 30px;
    }

    .logo-icon {
        width: 38px;
        height: 38px;
        font-size: 21px;
    }

    .nav-links a {
        font-size: 13px;
        padding-left: 8px;
        padding-right: 8px;
    }

    .nav-actions {
        gap: 7px;
        margin-left: 8px;
    }

    .appointment-btn {
        padding: 13px 18px;
    }

    .search-btn {
        width: 48px;
        height: 48px;
    }

    .hero {
        min-height: 720px;
    }

    .hero-content {
        padding-top: 70px;
    }

    .hero-card {
        width: 72%;
        padding: 45px;
    }

    .hero-image {
        width: 48%;
        right: 0;
        bottom: -50px;
    }

    .service-section {
        grid-template-columns: 1fr;
        padding: 7%;
    }

    .service-img {
        width: 100%;
    }

    #serviceImg {
        width: 60%;
    }

    .main-img img {
        width: 100%;
        height: auto;
        min-height: 350px;
        object-fit: cover;
    }

    .mini-img {
        width: 35%;
        padding: 10px 20px;
    }

    .mini-img .text {
        padding: 15px 20px;
    }

    .mini-img .text span:first-child {
        font-size: 3rem;
    }

    .service-details h2 {
        font-size: clamp(2rem, 4vw, 3rem);
    }

    .doctor-section {
        padding: 70px 6%;
    }

    .details h2 {
        padding: 20px 10%;
        font-size: clamp(2rem, 4vw, 3rem);
        line-height: 1.3;
    }

    .cards {
        grid-template-columns: 1fr 1fr;
        gap: 25px;
    }

    .card3 {
        grid-column: 1 / -1;
        height: auto;
        max-height: 500px;
    }

    .card3 img {
        object-fit: cover;
    }

    .section3 main {
        grid-template-columns: 1fr;
        padding: 70px 7%;
    }

    .section3 .imageBody {
        display: none;
    }

    .main-body {
        margin-left: 0;
    }

    .hospitality {
        position: static;
        width: 100%;
        margin-top: 30px;
    }

    .section4 {
        padding-bottom: 100px;
    }

    .gallery-section {
        grid-template-columns: repeat(2, 1fr);
    }

    .appointment-section {
        padding: 80px 6%;
    }

    .appointment-section main {
        margin-top: 0;
        padding: 70px 6%;
    }

    .s-card-container,
    .blog-card-container {
        grid-template-columns: repeat(2, 1fr);
    }

    footer {
        padding: 70px 6%;
    }
}

/* Main mobile breakpoint */
@media (max-width: 768px) {
    .navbar {
        height: auto;
        min-height: 70px;
        padding: 12px 20px;
        gap: 10px;
    }

    .logo {
        font-size: clamp(22px, 5vw, 30px);
        flex-shrink: 1;
    }

    .logo-icon {
        width: 34px;
        height: 34px;
        min-width: 34px;
        font-size: 18px;
        margin-right: 8px;
    }

    .nav-links {
        display: none;
    }

    .nav-actions {
        margin-left: auto;
    }

    .search-btn {
        display: none;
    }

    .appointment-btn {
        padding: 10px 15px;
        font-size: 13px;
    }

    .hero {
        min-height: 760px;
    }

    .hero-content {
        padding: 55px 20px 30px;
    }

    .hero-card {
        width: 100%;
        margin: 0;
        padding: 35px 25px;
        border-radius: 20px;
    }

    .hero h1 {
        font-size: clamp(38px, 9vw, 55px);
    }

    .hero p {
        font-size: 15px;
        line-height: 1.6;
    }

    .hero-actions {
        flex-wrap: wrap;
        align-items: flex-start;
    }

    .hero-image {
        width: 95%;
        right: 50%;
        transform: translateX(50%);
        bottom: -30px;
        opacity: .28;
        pointer-events: none;
    }

    .service-section {
        display: grid;
        grid-template-columns: 1fr;
        padding: 55px 20px;
    }

    .service-img {
        display: flex;
        flex-direction: column;
        gap: 20px;
        padding: 15px;
    }

    #serviceImg {
        width: 100%;
    }

    .main-img img {
        width: 100%;
        height: auto;
        min-height: 0;
        object-fit: cover;
    }

    .mini-img {
        width: 100%;
        margin-left: 0;
        padding: 0;
        gap: 20px;
    }

    .mini-img .text {
        width: 100%;
        text-align: center;
    }

    .mini-img .img {
        width: 100%;
    }

    .service-details h2 {
        font-size: clamp(2rem, 8vw, 2.7rem);
        line-height: 1.15;
    }

    .question-section {
        grid-template-columns: 1fr;
    }

    .read-more-panel button {
        width: 100%;
    }

    .doctor-section {
        padding: 60px 20px;
    }

    .details {
        text-align: center;
    }

    .details h2 {
        padding: 15px 0;
        text-align: center;
        line-height: 1.25;
        font-size: clamp(1.9rem, 7vw, 2.7rem);
    }

    .cards {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .card1 li {
        width: 100%;
        font-size: 1.15rem;
        padding: 20px;
    }

    .card2 {
        margin-right: 0;
        margin-bottom: 0;
        min-height: 350px;
    }

    .card2 .tag {
        margin-top: 0;
    }

    .tag label {
        position: static;
        margin-left: auto;
        font-size: 2rem;
    }

    .tag i {
        position: static;
        font-size: 35px;
        padding: 15px;
        margin-left: 0;
    }

    .card3 {
        height: auto;
        max-height: none;
    }

    .section3 main {
        padding: 60px 20px;
    }

    .main-body h2 {
        font-size: clamp(2rem, 8vw, 2.8rem);
        line-height: 1.2;
    }

    .btn-section {
        gap: 15px;
    }

    .btn-section button {
        width: auto;
        padding: 13px 28px;
    }

    .hospitality {
        grid-template-columns: 1fr;
    }

    .hospitality .card {
        padding: 25px;
        border-right: none;
        border-bottom: 1px solid white;
    }

    .hospitality .card:last-child {
        border-bottom: none;
    }

    .section4 {
        padding: 60px 20px;
    }

    .section-text .text-div h2 {
        font-size: clamp(2rem, 8vw, 2.7rem);
        line-height: 1.2;
    }

    .gallery-section {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .gallery-card img {
        height: auto;
        min-height: 350px;
    }

    .appointment-section {
        padding: 60px 20px;
    }

    .appointment-section main {
        grid-template-columns: 1fr;
        padding: 50px 25px;
        margin-top: 0;
        gap: 35px;
    }

    .appointment-section main h2 {
        font-size: clamp(2rem, 8vw, 2.7rem);
        line-height: 1.2;
    }

    .form .input {
        flex-direction: column;
        gap: 15px;
    }

    .input input,
    .input select,
    .form textarea,
    .form button {
        width: 100%;
    }

    .sponsors {
        padding: 0 20px;
    }

    .sponsors h1 {
        font-size: clamp(2rem, 8vw, 2.7rem);
        line-height: 1.2;
    }

    .s-card-container {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .sponsors .s-card {
        width: 100%;
        height: auto;
    }

    .sponsors .s-card img {
        height: auto;
    }

    .blog {
        padding: 50px 20px;
        margin-bottom: 70px;
    }

    .blog h1 {
        font-size: clamp(2rem, 8vw, 2.7rem);
        line-height: 1.2;
    }

    .blog-card-container {
        grid-template-columns: 1fr;
    }

    .text-card .admin {
        gap: 20px;
        flex-wrap: wrap;
    }

    footer {
        padding: 60px 20px;
    }

    footer main {
        grid-template-columns: 1fr;
        gap: 25px;
        padding: 30px 20px;
    }

    .footer-container {
        justify-content: flex-start;
    }

    .alertDisply {
        font-size: 16px;
    }
}

/* Small phones */
@media (max-width: 480px) {
    .navbar {
        padding: 10px 15px;
    }

    .logo {
        font-size: 21px;
    }

    .logo-icon {
        width: 30px;
        height: 30px;
        min-width: 30px;
        font-size: 16px;
    }

    .appointment-btn {
        padding: 9px 12px;
        font-size: 12px;
    }

    .hero {
        min-height: 700px;
    }

    .hero-content {
        padding: 40px 15px 20px;
    }

    .hero-card {
        padding: 28px 20px;
    }

    .small-title {
        font-size: 13px;
        gap: 7px;
    }

    .hero h1 {
        font-size: clamp(34px, 10vw, 45px);
    }

    .hero p {
        font-size: 14px;
    }

    .primary-btn {
        width: 100%;
        text-align: center;
        padding: 14px 20px;
    }

    .service-section,
    .section3 main,
    .doctor-section,
    .section4,
    .appointment-section {
        padding-left: 15px;
        padding-right: 15px;
    }

    .service-details h2,
    .main-body h2 {
        font-size: 2rem;
    }

    .question-panel {
        padding: 18px;
    }

    .question-section h4 {
        font-size: 1.2rem;
    }

    .card2 {
        padding: 18px;
    }

    .card2 p {
        font-size: 1rem;
        line-height: 1.6;
    }

    .gallery-card img {
        min-height: 280px;
    }

    .card-description {
        font-size: 1rem;
    }

    .appointment-section main {
        padding: 40px 18px;
    }

    .head-icon {
        align-items: flex-start;
    }

    .icon-container {
        width: 52px;
        height: 52px;
        min-width: 52px;
    }

    .head-icon i {
        font-size: 28px;
    }

    .head-icon label {
        font-size: 1rem;
        height: auto;
        margin-bottom: 25px;
    }

    .head-icon label h3 {
        font-size: 1rem;
        word-break: break-word;
    }

    .form {
        width: 100%;
    }

    .input input,
    .input select,
    .form textarea,
    .form button {
        font-size: 1rem;
    }

    .sponsors,
    .blog {
        padding-left: 15px;
        padding-right: 15px;
    }

    .text-card h2 {
        font-size: 1.35rem;
    }

    footer {
        padding: 50px 15px;
    }

    .footer-container {
        gap: 15px;
    }

    .footer-container i {
        font-size: 25px;
        padding: 15px;
        min-width: 55px;
        text-align: center;
    }

    .footer-container label h3 {
        font-size: .95rem;
    }
}


/* =========================================================
   SUBTLE SCROLL-REVEAL EFFECTS
   CSS-only. Modern browsers support scroll-driven
   view-timeline animations.
   ========================================================= */

@supports (animation-timeline: view()) {
    .service-section,
    .doctor-section,
    .section3,
    .section4,
    .appointment-section,
    .sponsors
     {
        animation: sectionReveal linear both;
        animation-timeline: view();
        animation-range: entry 0% cover 25%;
    }

    .gallery-card,
    .s-card {
        animation: cardReveal linear both;
        animation-timeline: view();
        animation-range: entry 0% cover 25%;
    }

    .service-img,
    .service-details,
    .details,
    .main-body,
    .section-text {
        animation: softSlide linear both;
        animation-timeline: view();
        animation-range: entry 0% cover 30%;
    }

    @keyframes sectionReveal {
        from {
            opacity: 0;
            transform: translateY(45px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    @keyframes cardReveal {
        from {
            opacity: 0;
            transform: translateY(35px) scale(.97);
        }
        to {
            opacity: 1;
            transform: translateY(0) scale(1);
        }
    }

    @keyframes softSlide {
        from {
            opacity: 0;
            transform: translateX(35px);
        }
        to {
            opacity: 1;
            transform: translateX(0);
        }
    }
}

/* Respect users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }
}
