/* =========================================================
   LIFE LINE DIAGNOSTIC LAB - FUTURISTIC MODERN CSS
   
========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Poppins',sans-serif;
    background:#f5f9ff;
    overflow-x:hidden;
    color:#1a1a1a;
}

/* =========================================
   GLOBAL
========================================= */

section{
    position:relative;
}

h1,h2,h3,h4{
    font-weight:700;
}

img{
    max-width:100%;
    display:block;
}

a{
    transition:0.3s ease;
}

/* =========================================
   SCROLLBAR
========================================= */

::-webkit-scrollbar{
    width:10px;
}

::-webkit-scrollbar-track{
    background:#dfe9ff;
}

::-webkit-scrollbar-thumb{
    background:linear-gradient(#0055cc,#00bfff);
    border-radius:20px;
}

/* =========================================
   TOP BAR
========================================= */

.top-bar{

    background:
    linear-gradient(
    135deg,
    #001f4d,
    #003580,
    #0055cc
    );

    color:white;

    padding:12px 45px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    flex-wrap:wrap;

    gap:12px;

    font-size:14px;
}

.top-bar a{

    color:white;

    text-decoration:none;

    margin-left:18px;

    font-weight:500;
}

.top-bar a:hover{
    color:#90c8ff;
}

/* =========================================
   NAVBAR
========================================= */

.navbar{

    position:sticky;

    top:0;

    width:100%;

    z-index:9999;

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:18px 50px;

    background:rgba(255,255,255,0.75);

    backdrop-filter:blur(22px);

    border-bottom:1px solid rgba(255,255,255,0.3);

    transition:0.4s ease;
}

.navbar.scrolled{

    background:
    rgba(255,255,255,0.82);

    backdrop-filter:blur(24px);

    box-shadow:
    0 10px 40px rgba(0,0,0,0.12);

    border-bottom:
    1px solid rgba(255,255,255,0.15);
}

.logo{

    text-decoration:none;

    font-size:23px;

    font-weight:800;

    color:#003580;
}

.nav-links{

    display:flex;

    align-items:center;

    gap:28px;
}

.nav-links a{

    text-decoration:none;

    color:#222;

    font-size:15px;

    font-weight:600;

    position:relative;
}

.nav-links a::after{

    content:"";

    position:absolute;

    bottom:-7px;

    left:0;

    width:0;

    height:2px;

    background:#0055cc;

    transition:0.35s ease;
}

.nav-links a:hover::after{
    width:100%;
}

.nav-links a:hover{
    color:#0055cc;
}

.nav-book-btn{

    background:
    linear-gradient(
    135deg,
    #00bfff,
    #0055cc
    );

    color:white;

    padding:13px 24px;

    border-radius:14px;

    text-decoration:none;

    font-weight:600;

    box-shadow:
    0 10px 25px rgba(0,85,204,0.25);
}

.nav-book-btn:hover{

    transform:translateY(-4px);

    box-shadow:
    0 14px 35px rgba(0,85,204,0.35);
}

.menu-toggle{

    display:none;

    border:none;

    background:#0055cc;

    color:white;

    padding:10px 18px;

    border-radius:10px;

    font-weight:600;

    cursor:pointer;
}

/* =========================================
   PAGE BANNER
========================================= */

.page-banner{

    padding:120px 40px;

    text-align:center;

    color:white;

    position:relative;

    overflow:hidden;

    background:
    radial-gradient(circle at top right,#00bfff55,transparent 25%),
    radial-gradient(circle at bottom left,#2f7cff44,transparent 25%),
    linear-gradient(135deg,#001f4d,#003580,#0055cc);
}

.page-banner::before{

    content:"";

    position:absolute;

    width:500px;
    height:500px;

    background:rgba(255,255,255,0.04);

    border-radius:50%;

    top:-180px;
    right:-120px;

    animation:float 7s infinite ease-in-out;
}

.page-banner h1{

    font-size:58px;

    margin-bottom:15px;

    position:relative;

    z-index:2;
}

.page-banner p{

    font-size:17px;

    color:#d7ebff;

    position:relative;

    z-index:2;
}

.page-banner::after{

    content:"";

    position:absolute;

    inset:0;

    background:
    linear-gradient(
    135deg,
    rgba(255,255,255,0.05),
    transparent
    );

    backdrop-filter:blur(2px);

    z-index:1;
}

/* =========================================
   HERO
========================================= */

/* =========================================
   PARTICLES
========================================= */

.particles span{

    position:absolute;

    width:8px;
    height:8px;

    background:rgba(255,255,255,0.7);

    border-radius:50%;

    animation:particleFloat 12s linear infinite;
}

.particles span:nth-child(1){
    left:10%;
    top:80%;
    animation-delay:0s;
}

.particles span:nth-child(2){
    left:30%;
    top:90%;
    animation-delay:2s;
}

.particles span:nth-child(3){
    left:55%;
    top:85%;
    animation-delay:4s;
}

.particles span:nth-child(4){
    left:75%;
    top:95%;
    animation-delay:6s;
}

.particles span:nth-child(5){
    left:90%;
    top:88%;
    animation-delay:8s;
}

@keyframes particleFloat{

    from{
        transform:translateY(0);
        opacity:0;
    }

    20%{
        opacity:1;
    }

    to{
        transform:translateY(-100vh);
        opacity:0;
    }
}

.hero{

    min-height:100vh;

    display:grid;

    grid-template-columns:1fr 1fr;

    align-items:center;

    gap:60px;

    padding:80px 70px;

    position:relative;

    overflow:hidden;

    background:
    radial-gradient(circle at top right,#00bfff55,transparent 28%),
    radial-gradient(circle at bottom left,#2f7cff55,transparent 30%),
    linear-gradient(135deg,#001f4d,#003580,#0055cc);
}

.hero::before{

    content:"";

    position:absolute;

    width:700px;
    height:700px;

    border-radius:50%;

    background:rgba(255,255,255,0.04);

    top:-250px;
    right:-180px;

    animation:float 6s infinite ease-in-out;
}

.hero::after{

    content:"";

    position:absolute;

    width:400px;
    height:400px;

    border-radius:50%;

    background:rgba(255,255,255,0.04);

    bottom:-140px;
    left:-120px;

    animation:float 9s infinite ease-in-out;
}

.hero-text{

    position:relative;

    z-index:2;

    max-width:650px;

}

.hero-text h4{

    color:#90c8ff;

    margin-bottom:18px;

    letter-spacing:3px;

    text-transform:uppercase;
}

.hero-text h1{

    font-size:
    clamp(4rem,8vw,6rem);

    line-height:0.95;

    font-weight:700;

    letter-spacing:-3px;
}

.hero-text h1 span{
    color:#90c8ff;
}

.hero-text p{

    color:#dcecff;

    line-height:1.9;

    margin-bottom:35px;

    max-width:600px;
}

.hero-buttons{

    display:flex;

    gap:20px;

    flex-wrap:wrap;
}

.btn-primary{

    background:
    linear-gradient(
    135deg,
    #00bfff,
    #0055cc
    );

    color:white;

    padding:16px 32px;

    border-radius:16px;

    text-decoration:none;

    font-weight:600;

    box-shadow:
    0 10px 30px rgba(0,85,204,0.3);
}

.btn-primary:hover{

    transform:
    translateY(-5px)
    scale(1.04);

    box-shadow:
    0 20px 50px rgba(0,191,255,0.45);
}

.btn-secondary{

    border:2px solid rgba(255,255,255,0.5);

    color:white;

    padding:16px 32px;

    border-radius:16px;

    text-decoration:none;

    font-weight:600;

    backdrop-filter:blur(10px);
}

.btn-secondary:hover{

    background:white;

    color:#003580;
}

/* =========================================
   HERO NOISE TEXTURE
========================================= */

.hero-noise{

    position:absolute;

    inset:0;

    background-image:
    url("https://www.transparenttextures.com/patterns/asfalt-dark.png");

    opacity:0.15;

    mix-blend-mode:soft-light;

    z-index:1;
}

/* =========================================
   LIGHT BEAMS
========================================= */

.light-beam{

    position:absolute;

    width:300px;

    height:120%;

    background:
    linear-gradient(
    to bottom,
    transparent,
    rgba(255,255,255,0.05),
    transparent
    );

    transform:
    rotate(25deg);

    filter:blur(10px);

    z-index:1;

    animation:
    beamMove 10s linear infinite;
}

.beam1{
    left:10%;
}

.beam2{
    left:60%;
    animation-delay:5s;
}

@keyframes beamMove{

    from{
        transform:
        translateY(-100%)
        rotate(25deg);
    }

    to{
        transform:
        translateY(100%)
        rotate(25deg);
    }
}

/* =========================================
   AI HOLOGRAM RINGS
========================================= */

.hologram-ring{

    position:absolute;

    border-radius:50%;

    border:
    1px solid rgba(255,255,255,0.12);

    z-index:1;

    animation:
    rotateRing linear infinite;
}

.ring1{

    width:500px;
    height:500px;

    right:8%;
    top:50%;

    transform:
    translateY(-50%);

    animation-duration:20s;
}

.ring2{

    width:650px;
    height:650px;

    right:2%;
    top:50%;

    transform:
    translateY(-50%);

    animation-duration:35s;
}

.ring3{

    width:800px;
    height:800px;

    right:-5%;
    top:50%;

    transform:
    translateY(-50%);

    animation-duration:50s;
}

@keyframes rotateRing{

    from{
        rotate:0deg;
    }

    to{
        rotate:360deg;
    }
}

.hero-image{

    position:relative;

    z-index:2;

    display:flex;

    justify-content:center;

    align-items:center;

}

.hero-image video{

    width:100%;

    height:650px;

    object-fit:cover;

    border-radius:34px;

    box-shadow:
    0 30px 70px rgba(0,0,0,0.35);

    border:
    1px solid rgba(255,255,255,0.12);

    animation:
    floatImage 5s infinite ease-in-out,
    rotateCard 10s infinite ease-in-out;
}

/* =========================================
   FLOATING AI PANELS
========================================= */

.floating-panel{

    position:absolute;

    background:
    rgba(255,255,255,0.08);

    backdrop-filter:blur(18px);

    border:
    1px solid rgba(255,255,255,0.12);

    color:white;

    padding:18px 26px;

    border-radius:20px;

    z-index:3;

    font-weight:600;

    box-shadow:
    0 10px 35px rgba(0,0,0,0.2);

    animation:
    floatPanel 5s ease-in-out infinite;
}

.panel1{
    top:18%;
    right:8%;
}

.panel2{
    bottom:20%;
    right:38%;
}

.panel3{
    bottom:10%;
    right:10%;
}

@media (max-width: 768px) {

  .panel1{
    top: 30px !important; /* adjust as needed */
  }

  .panel2{
    bottom: 320px !important; /* adjust as needed */
  }

    .panel3{
        bottom: -5px !important; /* adjust as needed */
    }

}

@keyframes floatPanel{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-15px);
    }
}

/* =========================================
   SECTION TITLES
========================================= */

section h4{

    color:#0055cc;

    font-size:14px;

    letter-spacing:3px;

    text-transform:uppercase;

    margin-bottom:14px;

    text-align:center;
}

section h2{

    font-size:42px;

    text-align:center;

    margin-bottom:55px;

    color:#001f4d;
}

/* =========================================
   STATS
========================================= */

.stats{

    padding:70px 40px;

    background:
    linear-gradient(
    135deg,
    #002f66,
    #0055cc
    );

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));

    gap:30px;

    text-align:center;

    color:white;
}

.stat-item{

    padding:25px;

    border-radius:22px;

    background:rgba(255,255,255,0.08);

    backdrop-filter:blur(12px);

    transition:0.4s ease;
}

.stat-item:hover{

    transform:translateY(-10px);
}

.stat-item h2{

    font-size:54px;

    color:#90c8ff;

    margin-bottom:8px;
}

.stat-item p{

    color:#dbeaff;
}

/* =========================================
   CARD DESIGN
========================================= */

.why-us,
.services-section,
.values-section,
.packages-section,
.contact-section,
.booking-section,
.facilities-section,
.about-section{

    padding:90px 40px;
}

/* =========================================
   ABOUT FUTURISTIC EFFECTS
========================================= */

.about-section{

    position:relative;

    overflow:hidden;
}

.about-glow{

    position:absolute;

    width:400px;

    height:400px;

    border-radius:50%;

    background:
    radial-gradient(
    circle,
    rgba(0,191,255,0.12),
    transparent 70%
    );

    animation:float 8s infinite ease-in-out;
}

.glow1{

    top:-100px;

    left:-100px;
}

.glow2{

    bottom:-120px;

    right:-120px;
}


.ai-badge{

    position:absolute;

    background:
    rgba(255,255,255,0.12);

    backdrop-filter:blur(14px);

    border:
    1px solid rgba(255,255,255,0.2);

    color:white;

    padding:14px 20px;

    border-radius:18px;

    font-size:14px;

    font-weight:600;

    box-shadow:
    0 10px 35px rgba(0,0,0,0.2);

    z-index:3;

    animation:float 5s infinite ease-in-out;
}

.badge1{

    top:30px;

    left:-40px;
}

.badge2{

    bottom:40px;

    right:-30px;
}

/* =====================================================
   FUTURISTIC UNIVERSAL CARD SYSTEM
===================================================== */

.why-cards,
.service-grid,
.values-grid,
.contact-cards,
.doctors-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(320px,1fr));

    gap:32px;
}


/* =========================================
   MAIN CARD DESIGN
========================================= */

.why-card,
.service-card2,
.value-card,
.contact-card,
.doctor-card,
.step{

    position:relative;

    overflow:hidden;

    isolation:isolate;

    background:
    linear-gradient(
    135deg,
    rgba(255,255,255,0.16),
    rgba(255,255,255,0.05)
    );

    backdrop-filter:blur(22px);

    border-radius:30px;

    padding:35px;

    border:
    1px solid rgba(255,255,255,0.18);

    box-shadow:
    0 10px 40px rgba(0,0,0,0.08);

    transition:
    transform 0.5s ease,
    box-shadow 0.5s ease;

    transform-style:preserve-3d;
}


/* =========================================
   FUTURISTIC GLOW BORDER
========================================= */

.why-card::before,
.service-card2::before,
.value-card::before,
.contact-card::before,
.doctor-card::before,
.step::before{

    content:"";

    position:absolute;

    inset:0;

    border-radius:inherit;

    padding:1px;

    background:
    linear-gradient(
    135deg,
    rgba(0,191,255,0.9),
    transparent,
    rgba(0,85,204,0.9)
    );

    -webkit-mask:          
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
    mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
    -webkit-mask-composite:xor;

    mask-composite:exclude;

    opacity:0;

    transition:0.5s ease;
}


/* =========================================
   AI LIGHT SCAN
========================================= */

.why-card::after,
.service-card2::after,
.value-card::after,
.contact-card::after,
.doctor-card::after,
.step::after{

    content:"";

    position:absolute;

    top:-120%;

    left:-50%;

    width:55%;

    height:320%;

    background:
    linear-gradient(
    to bottom,
    transparent,
    rgba(255,255,255,0.45),
    transparent
    );

    transform:rotate(25deg);

    opacity:0;

    transition:1s ease;
}


/* =========================================
   HOVER EFFECT
========================================= */

.why-card:hover,
.service-card2:hover,
.value-card:hover,
.contact-card:hover,
.doctor-card:hover,
.step:hover{

    transform:
    translateY(-14px)
    scale(1.02)
    rotateX(2deg)
    rotateY(-2deg);

    box-shadow:
    0 0 25px rgba(0,191,255,0.22),
    0 0 60px rgba(0,85,204,0.16),
    0 25px 60px rgba(0,0,0,0.18);
}


.why-card:hover::before,
.service-card2:hover::before,
.value-card:hover::before,
.contact-card:hover::before,
.doctor-card:hover::before,
.step:hover::before{

    opacity:1;
}


.why-card:hover::after,
.service-card2:hover::after,
.value-card:hover::after,
.contact-card:hover::after,
.doctor-card:hover::after,
.step:hover::after{

    left:140%;

    opacity:1;
}


/* =========================================
   ICONS
========================================= */

.icon{

    font-size:50px;

    margin-bottom:22px;

    position:relative;

    z-index:2;

    animation:floatIcon 4s ease-in-out infinite;
}


@keyframes floatIcon{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-8px);
    }
}


/* =========================================
   HEADINGS
========================================= */

.why-card h3,
.service-card2 h3,
.value-card h3,
.contact-card h3,
.doctor-card h3{

    color:#002b66;

    margin-bottom:14px;

    font-size:24px;

    position:relative;

    z-index:2;
}


/* =========================================
   PARAGRAPHS
========================================= */

.why-card p,
.service-card2 p,
.value-card p,
.contact-card p,
.doctor-card p{

    color:#4d5c75;

    line-height:1.9;

    position:relative;

    z-index:2;
}

/* =========================================
   SERVICES CARDS
========================================= */

/* =========================================
   FUTURISTIC SERVICES SECTION
========================================= */

.services-section{

    position:relative;

    overflow:hidden;

    background:
    radial-gradient(circle at top left,#dcecff55,transparent 30%),
    radial-gradient(circle at bottom right,#90c8ff33,transparent 35%),
    linear-gradient(135deg,#f5f9ff,#eef5ff);
}


/* GRID BACKGROUND */

.services-grid-bg{

    position:absolute;

    inset:0;

    background-image:
    linear-gradient(rgba(0,85,204,0.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,85,204,0.05) 1px,transparent 1px);

    background-size:50px 50px;

    z-index:0;
}


/* FLOATING ORBS */

.service-orb{

    position:absolute;

    border-radius:50%;

    filter:blur(90px);

    opacity:0.25;

    animation:floatOrb 10s infinite ease-in-out;
}

.service-orb.orb1{

    width:260px;
    height:260px;

    background:#00bfff;

    top:-70px;
    left:-80px;
}

.service-orb.orb2{

    width:220px;
    height:220px;

    background:#0055cc;

    bottom:-70px;
    right:-60px;

    animation-delay:3s;
}

.service-orb.orb3{

    width:180px;
    height:180px;

    background:#90c8ff;

    top:45%;
    left:45%;

    animation-delay:5s;
}


/* SERVICE CARD */

.service-card2{

    position:relative;

    z-index:2;
}


/* SERVICE TAG */

.service-tag{

    position:absolute;

    top:18px;
    left:18px;

    background:
    linear-gradient(
    135deg,
    #00bfff,
    #0055cc
    );

    color:white;

    padding:8px 15px;

    border-radius:50px;

    font-size:12px;

    font-weight:700;

    letter-spacing:1px;

    z-index:5;

    box-shadow:
    0 10px 25px rgba(0,85,204,0.25);
}

.service-tag.advanced{

    background:
    linear-gradient(
    135deg,
    #8a2be2,
    #0055cc
    );
}

.service-tag.fast{

    background:
    linear-gradient(
    135deg,
    #00c896,
    #00bfff
    );
}

.service-tag.precision{

    background:
    linear-gradient(
    135deg,
    #ff4b4b,
    #ff7a7a
    );
}


/* SCAN EFFECT */

.service-scan{

    position:absolute;

    top:-120%;

    left:0;

    width:100%;
    height:120px;

    background:
    linear-gradient(
    to bottom,
    transparent,
    rgba(255,255,255,0.2),
    transparent
    );

    animation:scanMove 5s linear infinite;

    pointer-events:none;
}


/* FLOATING PANELS */

.floating-service-panel{

    position:absolute;

    background:
    rgba(255,255,255,0.1);

    backdrop-filter:blur(14px);

    border:
    1px solid rgba(255,255,255,0.2);

    padding:14px 22px;

    border-radius:18px;

    color:#003580;

    font-weight:700;

    z-index:3;

    box-shadow:
    0 10px 35px rgba(0,0,0,0.08);

    animation:floatPanel 5s ease-in-out infinite;
}

.panel-left{

    top:120px;
    left:50px;
}

.panel-right{

    bottom:80px;
    right:50px;

    animation-delay:2s;
}

@media (max-width: 768px) {

  .panel-left{
    top: 20px !important; /* adjust as needed */
  }

  .panel-right{
    bottom: 20px !important; /* adjust as needed */
  }

}



/* IMAGE EFFECT */

.service-card2 img{

    transition:
    transform 0.6s ease,
    filter 0.6s ease;
}

.service-card2:hover img{

    transform:scale(1.08);

    filter:brightness(1.08);
}


/* EXTRA GLOW */

.service-card2:hover{

    box-shadow:
    0 0 25px rgba(0,191,255,0.22),
    0 0 70px rgba(0,85,204,0.15),
    0 25px 60px rgba(0,0,0,0.18);
}

.service-card2{

    padding:0;

    overflow:hidden;
}

.service-card2 img{

    width:100%;

    height:220px;

    object-fit:cover;

    transition:0.5s ease;
}

.service-card2:hover img{

    transform:scale(1.08);
}

.service-card2-body{
    padding:28px;
}

/* =========================================
   ABOUT
========================================= */

.about-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:70px;

    align-items:center;
}


/* =========================================
   ABOUT IMAGE SLIDESHOW
========================================= */

.about-image{

    position:relative;

    width:100%;

    height:500px;

    overflow:hidden;

    border-radius:32px;

    box-shadow:
    0 25px 70px rgba(0,0,0,0.25);

    border:
    1px solid rgba(255,255,255,0.15);
}

.about-slider{

    width:100%;

    height:100%;

    position:relative;
}

.about-slide{

    position:absolute;

    width:100%;

    height:100%;

    opacity:0;

    transition:opacity 1s ease-in-out;
}

.about-slide.active{

    opacity:1;
}

.about-slide img{

    width:100%;

    height:100%;

    object-fit:cover;

    border-radius:32px;
}

.about-text p{

    line-height:1.9;

    margin-bottom:18px;

    color:#555;
}

.about-list{

    list-style:none;

    margin-top:24px;
}

.about-list li{

    padding:14px 0;

    border-bottom:1px solid #d9e7ff;

    display:flex;

    gap:10px;
}

/* =========================================
   PACKAGES
========================================= */

/* PACKAGES */

/* =========================================
   FUTURISTIC PACKAGE EFFECTS
========================================= */

.packages-section{

    position:relative;

    overflow:hidden;
}


/* GRID BACKGROUND */

.packages-bg-grid{

    position:absolute;

    inset:0;

    background-image:
    linear-gradient(rgba(0,85,204,0.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,85,204,0.05) 1px,transparent 1px);

    background-size:50px 50px;

    z-index:0;
}


/* FLOATING ORBS */

.package-orb{

    position:absolute;

    border-radius:50%;

    filter:blur(90px);

    opacity:0.25;

    animation:floatOrb 10s infinite ease-in-out;
}

.orb1{

    width:280px;
    height:280px;

    background:#00bfff;

    top:-80px;
    left:-100px;
}

.orb2{

    width:240px;
    height:240px;

    background:#0055cc;

    bottom:-80px;
    right:-80px;

    animation-delay:3s;
}

.orb3{

    width:180px;
    height:180px;

    background:#90c8ff;

    top:45%;
    left:45%;

    animation-delay:5s;
}


/* PACKAGE TAG */

.package-tag{

    position:absolute;

    top:18px;
    left:18px;

    background:
    linear-gradient(
    135deg,
    #00bfff,
    #0055cc
    );

    color:white;

    padding:8px 16px;

    border-radius:50px;

    font-size:12px;

    font-weight:700;

    z-index:5;

    letter-spacing:1px;

    box-shadow:
    0 10px 25px rgba(0,85,204,0.25);
}

.package-tag.premium{

    background:
    linear-gradient(
    135deg,
    #8a2be2,
    #0055cc
    );
}

.package-tag.urgent{

    background:
    linear-gradient(
    135deg,
    #ff4b4b,
    #ff7a7a
    );
}


/* SCAN LINE */

.scan-line{

    position:absolute;

    top:-100%;

    left:0;

    width:100%;
    height:120px;

    background:
    linear-gradient(
    to bottom,
    transparent,
    rgba(255,255,255,0.18),
    transparent
    );

    animation:scanMove 5s linear infinite;

    pointer-events:none;
}

@keyframes scanMove{

    from{
        top:-100%;
    }

    to{
        top:120%;
    }
}


/* PACKAGE CARD EXTRA EFFECT */

.package-card{

    position:relative;

    z-index:2;
}


/* HOVER GLOW */

.package-card:hover{

    box-shadow:
    0 0 25px rgba(0,191,255,0.25),
    0 0 70px rgba(0,85,204,0.15),
    0 25px 60px rgba(0,0,0,0.18);
}


/* IMAGE ZOOM */

.package-card img{

    transition:
    transform 0.6s ease,
    filter 0.6s ease;
}

.package-card:hover img{

    transform:scale(1.08);

    filter:brightness(1.05);
}


/* BUTTON EFFECT */

.package-card-body a{

    position:relative;

    overflow:hidden;
}

.package-card-body a::before{

    content:"";

    position:absolute;

    top:0;
    left:-100%;

    width:100%;
    height:100%;

    background:
    linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,0.35),
    transparent
    );

    transition:0.6s ease;
}

.package-card-body a:hover::before{

    left:100%;
}

.packages-section{
    padding:90px 50px;
    background:
    radial-gradient(circle at top left,#dcecff,transparent 30%),
    radial-gradient(circle at bottom right,#b8dbff55,transparent 35%),
    linear-gradient(135deg,#f4f8ff,#eef5ff);
    text-align:center;
    position:relative;
    overflow:hidden;
}

.packages-section h4{
    color:#0055cc;
    font-size:15px;
    letter-spacing:3px;
    text-transform:uppercase;
    margin-bottom:12px;
    font-weight:700;
}

.packages-section h2{
    font-size:46px;
    color:#001f4d;
    margin-bottom:60px;
    font-weight:800;
}

.packages-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(420px,1fr));
    gap:35px;
    max-width:1500px;
    margin:auto;
}


/* PACKAGE CARD */

.package-card{

    position:relative;

    background:rgba(255,255,255,0.75);

    backdrop-filter:blur(16px);

    border-radius:28px;

    overflow:hidden;

    box-shadow:
    0 10px 35px rgba(0,0,0,0.08),
    inset 0 0 0 1px rgba(255,255,255,0.5);

    transition:0.45s ease;

    border:1px solid rgba(255,255,255,0.5);

    transform-style:preserve-3d;
}

.package-card:hover{

    transform:
    translateY(-14px)
    rotateX(3deg)
    rotateY(-3deg);

    box-shadow:
    0 25px 55px rgba(152, 189, 241, 0.22);
}


/* GLOW BORDER */

.package-card::before{

    content:"";

    position:absolute;

    inset:-2px;

    background:
    linear-gradient(
    135deg,
    #00bfff,
    #7db0f7,
    #90c8ff,
    #6099e9
    );

    z-index:-1;

    border-radius:30px;

    opacity:0;

    transition:0.5s ease;
}

.package-card:hover::before{
    opacity:1;
}


/* IMAGE */

.package-card img{

    width:100%;

    height:240px;

    object-fit:cover;

    transition:0.5s ease;
}

.package-card:hover img{
    transform:scale(1.08);
}


/* CARD BODY */

.package-card-body{

    padding:28px;
    text-align:left;
}

.package-card-body h3{

    font-size:24px;

    color:#001f4d;

    margin-bottom:18px;

    font-weight:800;
}


/* TEST LIST */

.package-card-body ul{

    list-style:none;

    margin-bottom:22px;
}

.package-card-body ul li{

    padding:10px 0;

    border-bottom:1px solid #e6efff;

    color:#555;

    font-size:15px;

    display:flex;

    align-items:center;

    gap:10px;
}

.package-card-body ul li::before{

    content:"✦";

    color:#0055cc;

    font-size:14px;
}


/* PRICE */

/* PRICE WITH STRIKETHROUGH */
.price {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 15px;
}

.original-price {
    font-size: 16px;
    color: #999;
    text-decoration: line-through;
    font-weight: 500;
}

.discounted-price {
    font-size: 22px;
    font-weight: 900;
    color: #003580;
}

.discount-badge {
    background: linear-gradient(135deg, #ff4444, #ff6b6b);
    color: white;
    padding: 3px 10px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: bold;
    animation: pulse-badge 1.5s ease-in-out infinite;
}

@keyframes pulse-badge {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.08); }
}


/* BUTTON */

.package-card-body a{

    display:inline-block;

    width:100%;

    text-align:center;

    background:
    linear-gradient(
    135deg,
    #00bfff,
    #0055cc
    );

    color:white;

    padding:15px 20px;

    border-radius:14px;

    text-decoration:none;

    font-weight:700;

    transition:0.4s ease;

    box-shadow:
    0 10px 25px rgba(0,85,204,0.2);
}

.package-card-body a:hover{

    transform:translateY(-3px);

    box-shadow:
    0 15px 35px rgba(0,85,204,0.35);
}

/* =========================================
   FUTURISTIC LOADER
========================================= */

.page-loader{

    position:fixed;

    inset:0;

    background:
    linear-gradient(
    135deg,
    #001f4d,
    #003580,
    #0055cc
    );

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    z-index:999999;

    transition:0.6s ease;
}

.loader-core{

    width:120px;
    height:120px;

    border-radius:50%;

    border:
    3px solid rgba(255,255,255,0.1);

    border-top:
    3px solid #00bfff;

    animation:
    spin 1.2s linear infinite;

    margin-bottom:30px;

    box-shadow:
    0 0 40px rgba(0,191,255,0.4);
}

.page-loader h2{

    color:white;

    font-size:22px;

    letter-spacing:2px;
}

@keyframes spin{

    from{
        rotate:0deg;
    }

    to{
        rotate:360deg;
    }
}


/* RESPONSIVE */

@media(max-width:768px){

    .packages-section{
        padding:70px 20px;
    }

    .packages-section h2{
        font-size:34px;
    }

    .packages-grid{
        grid-template-columns:1fr;
    }
}

/* =========================================
   BOOKING
========================================= */

.steps{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(220px,1fr));

    gap:25px;

    margin-bottom:60px;
}

.booking-wrapper{

    max-width:900px;

    margin:auto;

    border-radius:30px;

    overflow:hidden;

    box-shadow:
    0 20px 50px rgba(0,0,0,0.12);

    background:white;

    padding:20px;
}

/* =====================================================
   FUTURISTIC BOOKING PAGE
===================================================== */

.futuristic-booking{

    position:relative;

    overflow:hidden;

    background:
    radial-gradient(circle at top left,#d9ecff55,transparent 30%),
    radial-gradient(circle at bottom right,#90c8ff33,transparent 35%),
    linear-gradient(135deg,#f5f9ff,#edf5ff);

}


/* =========================================
   GRID BACKGROUND
========================================= */

.booking-bg-grid{

    position:absolute;

    inset:0;

    background-image:
    linear-gradient(rgba(0,85,204,0.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,85,204,0.05) 1px,transparent 1px);

    background-size:45px 45px;

    z-index:0;
}


/* =========================================
   FLOATING GLOW ORBS
========================================= */

.booking-floating{

    position:absolute;

    border-radius:50%;

    filter:blur(90px);

    opacity:0.35;

    animation:floatOrb 10s infinite ease-in-out;
}

.booking-float1{

    width:300px;
    height:300px;

    background:#00bfff;

    top:-80px;
    left:-80px;
}

.booking-float2{

    width:260px;
    height:260px;

    background:#0055cc;

    bottom:-70px;
    right:-60px;

    animation-delay:2s;
}

.booking-float3{

    width:180px;
    height:180px;

    background:#90c8ff;

    top:50%;
    left:45%;

    animation-delay:4s;
}


@keyframes floatOrb{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-25px);
    }
}


/* =========================================
   BOOKING TEXT
========================================= */

.booking-subtext{

    text-align:center;

    color:#4c6280;

    margin-top:-30px;

    margin-bottom:55px;

    font-size:17px;

    position:relative;

    z-index:2;
}


/* =========================================
   STEP NUMBER
========================================= */

.step-number{

    position:absolute;

    top:20px;
    right:22px;

    font-size:50px;

    font-weight:800;

    color:rgba(0,85,204,0.08);

    z-index:0;
}


/* =========================================
   BOOKING WRAPPER
========================================= */

.booking-wrapper{

    position:relative;

    overflow:hidden;

    background:
    rgba(255,255,255,0.55);

    backdrop-filter:blur(18px);

    border:
    1px solid rgba(255,255,255,0.2);

    padding:20px;

    z-index:2;
}


/* TOP LIGHT */

.booking-top-glow{

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:5px;

    background:
    linear-gradient(
    90deg,
    #00bfff,
    #0055cc,
    #90c8ff
    );

    animation:glowMove 4s linear infinite;
}


@keyframes glowMove{

    0%{
        transform:translateX(-100%);
    }

    100%{
        transform:translateX(100%);
    }
}


/* =========================================
   IFRAME
========================================= */

.booking-wrapper iframe{

    border:none;

    border-radius:22px;

    background:white;
}

/* =========================================
   CONTACT TABS
========================================= */

.tabs{

    display:flex;

    justify-content:center;

    gap:15px;

    flex-wrap:wrap;

    margin-bottom:35px;
}

.tab-btn{

    padding:14px 24px;

    border:none;

    background:white;

    border-radius:14px;

    font-weight:600;

    cursor:pointer;

    box-shadow:
    0 8px 25px rgba(0,0,0,0.08);
}

.tab-btn.active{

    background:#0055cc;

    color:white;
}

.tab-content{

    display:none;

    background:white;

    padding:35px;

    border-radius:28px;

    box-shadow:
    0 15px 40px rgba(0,0,0,0.08);
}

.tab-content.active{
    display:block;
}

/* =====================================================
   FUTURISTIC CONTACT PAGE
===================================================== */

.futuristic-contact{

    position:relative;

    overflow:hidden;

    background:
    radial-gradient(circle at top left,#dcecff55,transparent 30%),
    radial-gradient(circle at bottom right,#90c8ff33,transparent 35%),
    linear-gradient(135deg,#f5f9ff,#edf5ff);
}


/* =========================================
   GRID BACKGROUND
========================================= */

.contact-grid-bg{

    position:absolute;

    inset:0;

    background-image:
    linear-gradient(rgba(0,85,204,0.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,85,204,0.05) 1px,transparent 1px);

    background-size:45px 45px;

    z-index:0;
}


/* =========================================
   FLOATING ORBS
========================================= */

.contact-orb{

    position:absolute;

    border-radius:50%;

    filter:blur(90px);

    opacity:0.35;

    animation:contactFloat 10s infinite ease-in-out;
}

.orb1{

    width:260px;
    height:260px;

    background:#00bfff;

    top:-70px;
    left:-70px;
}

.orb2{

    width:220px;
    height:220px;

    background:#0055cc;

    bottom:-60px;
    right:-50px;

    animation-delay:2s;
}

.orb3{

    width:180px;
    height:180px;

    background:#90c8ff;

    top:50%;
    left:45%;

    animation-delay:4s;
}


@keyframes contactFloat{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-22px);
    }
}


/* =========================================
   SUBTITLE
========================================= */

.contact-subtitle{

    text-align:center;

    color:#50637f;

    margin-top:-28px;

    margin-bottom:55px;

    position:relative;

    z-index:2;
}


/* =========================================
   CARD NUMBER
========================================= */

.contact-number{

    position:absolute;

    top:18px;
    right:20px;

    font-size:46px;

    font-weight:800;

    color:rgba(0,85,204,0.08);
}


/* =========================================
   MAP WRAPPER
========================================= */

.map-wrapper{

    position:relative;

    margin-top:70px;

    border-radius:32px;

    overflow:hidden;

    background:
    rgba(255,255,255,0.55);

    backdrop-filter:blur(18px);

    padding:20px;

    z-index:2;
}


/* TOP LIGHT */

.map-top-line{

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:5px;

    background:
    linear-gradient(
    90deg,
    #00bfff,
    #0055cc,
    #90c8ff
    );

    animation:mapGlow 4s linear infinite;
}


@keyframes mapGlow{

    0%{
        transform:translateX(-100%);
    }

    100%{
        transform:translateX(100%);
    }
}


/* MAP */

.map-wrapper iframe{

    border-radius:24px;
}

/* =========================================
   FUTURISTIC FACILITIES SECTION
========================================= */

.facilities-section{

    position:relative;

    overflow:hidden;

    background:
    radial-gradient(circle at top left,#dcecff66,transparent 30%),
    radial-gradient(circle at bottom right,#90c8ff44,transparent 35%),
    linear-gradient(135deg,#f5f9ff,#eef5ff);
}


/* =========================================
   GRID BACKGROUND
========================================= */

.facilities-grid-bg{

    position:absolute;

    inset:0;

    background-image:
    linear-gradient(rgba(0,85,204,0.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,85,204,0.04) 1px,transparent 1px);

    background-size:50px 50px;

    z-index:0;
}


/* =========================================
   GLOW ORBS
========================================= */

.facility-orb{

    position:absolute;

    border-radius:50%;

    filter:blur(90px);

    opacity:0.3;

    animation:float 8s infinite ease-in-out;
}

.orb1{

    width:320px;
    height:320px;

    background:#00bfff;

    top:-100px;
    left:-100px;
}

.orb2{

    width:280px;
    height:280px;

    background:#0055cc;

    bottom:-100px;
    right:-100px;

    animation-delay:3s;
}


/* =========================================
   MEDICAL LIGHT LINE
========================================= */

.medical-line{

    position:absolute;

    top:0;
    left:-20%;

    width:140%;
    height:2px;

    background:
    linear-gradient(
    90deg,
    transparent,
    #00bfff,
    transparent
    );

    animation:lineMove 6s linear infinite;
}

@keyframes lineMove{

    from{
        transform:translateX(-20%);
    }

    to{
        transform:translateX(20%);
    }
}


/* =========================================
   DOCTOR CARDS
========================================= */

.doctor-card{

    position:relative;

    text-align:center;

    z-index:2;
}


/* =========================================
   DOCTOR BADGES
========================================= */

.doctor-badge{

    position:absolute;

    top:18px;
    right:18px;

    background:
    linear-gradient(
    135deg,
    #00bfff,
    #0055cc
    );

    color:white;

    padding:8px 14px;

    border-radius:50px;

    font-size:11px;

    font-weight:700;

    letter-spacing:1px;

    box-shadow:
    0 8px 20px rgba(0,85,204,0.25);
}


/* =========================================
   ICON DESIGN
========================================= */

.doctor-card .icon{

    width:90px;
    height:90px;

    margin:auto auto 24px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:26px;

    background:
    linear-gradient(
    135deg,
    rgba(0,191,255,0.15),
    rgba(0,85,204,0.10)
    );

    box-shadow:
    0 10px 35px rgba(0,85,204,0.12);
}


/* =========================================
   CARD HOVER
========================================= */

.doctor-card:hover{

    transform:
    translateY(-14px)
    scale(1.03);

    box-shadow:
    0 0 30px rgba(0,191,255,0.18),
    0 25px 60px rgba(0,0,0,0.15);
}

/* =========================================
   BOOK BANNER
========================================= */

.book-banner{

    padding:90px 40px;

    text-align:center;

    color:white;

    position:relative;

    overflow:hidden;

    background:
    linear-gradient(
    135deg,
    #dfea9c,
    #ebecd4,
    #e1e18c
    );
}

.book-banner h2{

    font-size:48px;

    margin-bottom:18px;

    color:#f110cbc9
}

.book-banner p{

    color:#1574e8;

    margin-bottom:35px;

    font-size: 25px;
}

.book-banner a{

    background:white;

    color:#003580;

    padding:16px 34px;

    border-radius:16px;

    text-decoration:none;

    font-weight:700;

    display:inline-block;
}

.book-banner a:hover{

    transform:translateY(-5px);
}

/* =========================================
   FOOTER
========================================= */

.footer{

    background:
    linear-gradient(
    135deg,
    #000d26,
    #001f4d,
    #002b5c
    );

    color:#cce0ff;

    padding:80px 40px 20px;
}

.footer-grid{

    display:grid;

    grid-template-columns:
    repeat(auto-fit,minmax(220px,1fr));

    gap:45px;

    margin-bottom:40px;
}

.footer-col h3{

    color:white;

    margin-bottom:20px;
}

.footer-col p,
.footer-col li{

    line-height:2;
}

.footer-col a{

    color:#cce0ff;

    text-decoration:none;
}

.footer-col a:hover{

    color:#90c8ff;

    padding-left:5px;
}

.footer-bottom{

    border-top:1px solid rgba(255,255,255,0.1);

    padding-top:22px;

    text-align:center;
}

/* =========================================
   WHATSAPP
========================================= */

.whatsapp-btn{

    position:fixed;

    right:25px;

    bottom:25px;

    width:65px;

    height:65px;

    background:#25D366;

    color:white;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:30px;

    text-decoration:none;

    z-index:9999;

    box-shadow:
    0 10px 30px rgba(37,211,102,0.35);

    animation:bounce 2s infinite;
}

/* =========================================
   SCROLL TOP
========================================= */

.scroll-top{

    position:fixed;

    bottom:105px;

    right:30px;

    width:50px;

    height:50px;

    border:none;

    border-radius:50%;

    background:#0055cc;

    color:white;

    font-size:20px;

    cursor:pointer;

    opacity:0;

    transition:0.4s ease;

    z-index:9999;
}

.scroll-top.visible{
    opacity:1;
}

/* =========================================
   ANIMATIONS
========================================= */

.fade-up{

    opacity:0;

    transform:translateY(50px);

    transition:0.8s ease;
}

.fade-up.visible{

    opacity:1;

    transform:translateY(0);
}

.fade-left{

    opacity:0;

    transform:translateX(-50px);

    transition:0.8s ease;
}

.fade-left.visible{

    opacity:1;

    transform:translateX(0);
}

.fade-right{

    opacity:0;

    transform:translateX(50px);

    transition:0.8s ease;
}

.fade-right.visible{

    opacity:1;

    transform:translateX(0);
}

@keyframes float{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-20px);
    }
}

@keyframes floatImage{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-18px);
    }
}

@keyframes bounce{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-10px);
    }
}

/* =========================================
   RESPONSIVE
========================================= */

@media(max-width:992px){

    .hero{
        grid-template-columns:1fr;
        text-align:center;
        gap:50px;
    }

    .hero-text h1{
        font-size:52px;
    }

    .about-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:768px){

    .navbar{
        flex-wrap:wrap;
        padding:18px 20px;
    }

    .menu-toggle{
        display:block;
    }

    .nav-links{

        display:none;

        width:100%;

        flex-direction:column;

        margin-top:20px;

        background:white;

        padding:20px;

        border-radius:20px;
    }

    .nav-links.open{
        display:flex;
    }

    .nav-book-btn{
        display:none;
    }

    .hero{
        padding:70px 25px;
    }

    .hero-text h1{
        font-size:40px;
    }

    .page-banner h1{
        font-size:42px;
    }

    section h2{
        font-size:32px;
    }

    .book-banner h2{
        font-size:36px;
    }

    .top-bar{
        padding:12px 20px;
    }

    .footer{
        padding:60px 20px 20px;
    }
}

/* ===================================================== */
/* IPAD / TABLET FUTURISTIC HERO FIX */
/* ===================================================== */

@media screen and (min-width: 768px) and (max-width: 1180px){

    .hero{

        min-height:auto;

        grid-template-columns:1fr 1fr;

        gap:40px;

        padding:
        70px 45px 90px;

        align-items:center;

        overflow:hidden;

        position:relative;

        border-bottom-left-radius:50px;

        border-bottom-right-radius:50px; 
 
    }

    .hero::before{

        width:500px;
        height:500px;

        top:-120px;
        right:-180px;

        opacity:0.6;
    }

    .hero::after{

        width:320px;
        height:320px;

        bottom:-120px;
        left:-120px;

        opacity:0.5;
    }


    /* TEXT SIDE */

    .hero-text{

        z-index:2;

        position:relative;
    }

    .hero-text h4{

        font-size:13px;

        letter-spacing:3px;

        margin-bottom:18px;
    }

    .hero-text h1{

        font-size:58px;

        line-height:1.05;

        margin-bottom:22px;
    }

    .hero-text p{

        font-size:15px;

        line-height:1.9;

        max-width:500px;

        margin-bottom:30px;
    }


    /* BUTTONS */

    .hero-buttons{

        gap:18px;
    }

    .btn-primary,
    .btn-secondary{

        padding:15px 28px;

        border-radius:14px;

        font-size:14px;
    }


    /* IMAGE SIDE */

    .hero-image{

        position:relative;

        display:flex;

        justify-content:center;

        align-items:center;

        /* transform:scale(1.08); */

    }

    .hero-image::before{

        content:"";

        position:absolute;

        width:500px;
        height:500px;

        background:
        radial-gradient(
        circle,
        rgba(255,255,255,0.12),
        transparent 65%
        );

        z-index:0;

        animation:pulseGlow 5s ease infinite;
    }

    @keyframes pulseGlow{

        0%,100%{
            transform:scale(1);
            opacity:0.7;
        }

        50%{
            transform:scale(1.08);
            opacity:1;
        }
    }

    .hero-image img{

        width:100%;

        max-width:520px;

        height:520px;

        object-fit:cover;

        border-radius:34px;

        position:relative;

        z-index:2;

        box-shadow:
        0 20px 60px rgba(0,0,0,0.35);

        border:
        1px solid rgba(255,255,255,0.15);
    }


    /* ADD GLASS PANEL */

    .hero-text::before{

        content:"";

        position:absolute;

        inset:-35px;

        background:
        rgba(255,255,255,0.03);

        backdrop-filter:blur(10px);

        border:
        1px solid rgba(255,255,255,0.08);

        border-radius:28px;

        z-index:-1;
    }

}


/* ===================================================== */
/* SMALLER TABLETS */
/* ===================================================== */

@media screen and (min-width: 768px) and (max-width: 920px){

    .hero{

        grid-template-columns:1fr;

        text-align:center;

        gap:50px;

        padding:80px 40px;
    }

    .hero-text p{

        margin:auto auto 30px;
    }

    .hero-buttons{

        justify-content:center;
    }

    .hero-image img{

        max-width:600px;

        width:100%;

        height:auto;
    }

    .hero-text::before{

        inset:-25px;
    }
}

/* =========================================
   AI GLOW CURSOR
========================================= */

.glow-cursor{

    position:fixed;

    width:220px;
    height:220px;

    border-radius:50%;

    background:
    radial-gradient(
    circle,
    rgba(0,191,255,0.22),
    transparent 70%
    );

    pointer-events:none;

    transform:
    translate(-50%,-50%);

    z-index:999;

    mix-blend-mode:screen;

    filter:blur(10px);

    transition:
    transform 0.08s linear;
}

.why-card,
.package-card,
.doctor-card,
.contact-card,
.value-card,
.service-card2{

    transform-style:preserve-3d;

    perspective:1000px;
}

.why-card:hover,
.package-card:hover,
.doctor-card:hover,
.contact-card:hover,
.value-card:hover,
.service-card2:hover{

    transform:
    rotateX(6deg)
    rotateY(-6deg)
    translateY(-12px);
}

.hero-grid{

    position:absolute;

    inset:0;

    background-image:
    linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px);

    background-size:60px 60px;

    mask-image:
    radial-gradient(circle at center,
    black 30%,
    transparent 90%);

    animation:gridMove 18s linear infinite;

    z-index:1;
}

@keyframes gridMove{

    from{
        transform:translateY(0);
    }

    to{
        transform:translateY(60px);
    }
}

.hero-text h1{

    animation:
    heroText 1.2s ease;
}

@keyframes heroText{

    from{
        opacity:0;
        transform:
        translateY(60px);
    }

    to{
        opacity:1;
        transform:
        translateY(0);
    }
}

.navbar{

    border-bottom:
    1px solid rgba(255,255,255,0.08);

    box-shadow:
    0 8px 40px rgba(0,0,0,0.12);
}

.hero-beam{

    position:absolute;

    width:300px;
    height:900px;

    background:
    linear-gradient(
    to bottom,
    transparent,
    rgba(255,255,255,0.08),
    transparent
    );

    transform:rotate(25deg);

    filter:blur(10px);

    animation:beamMove 12s linear infinite;

    z-index:1;
}

.hero-beam:nth-child(2){

    left:60%;

    animation-delay:5s;
}

@keyframes beamMove{

    from{
        transform:
        translateY(-120%) rotate(25deg);
    }

    to{
        transform:
        translateY(120%) rotate(25deg);
    }
}

section{

    animation:
    sectionFade 1s ease;
}

@keyframes sectionFade{

    from{
        opacity:0;
        transform:
        translateY(40px);
    }

    to{
        opacity:1;
        transform:
        translateY(0);
    }
}

.why-card::after,
.service-card2::after,
.value-card::after,
.contact-card::after,
.doctor-card::after,
.package-card::after,
.step::after{

    content:"";

    position:absolute;

    width:200px;
    height:200px;

    background:
    radial-gradient(
    circle,
    rgba(0,191,255,0.18),
    transparent 70%
    );

    top:-100px;
    right:-100px;

    transition:0.5s ease;

    opacity:0;
}

.why-card:hover::after,
.service-card2:hover::after,
.value-card:hover::after,
.contact-card:hover::after,
.doctor-card:hover::after,
.package-card:hover::after,
.step:hover::after{

    opacity:1;
}

body{

    overflow-x:hidden;
}

/* section{

    opacity:0;

    transform:translateY(60px);

    transition:1s ease;
}

section.visible-section{

    opacity:1;

    transform:translateY(0);
} */

/* =========================================
   FINAL HERO FIX
========================================= */

.hero{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    gap:60px;
    padding:80px 70px;
    min-height:100vh;
}

/* TEXT LEFT */
.hero-text{
    grid-column:1;
}

/* VIDEO RIGHT */
.hero-image{
    grid-column:2;

    display:flex;
    justify-content:center;
    align-items:center;
}

.hero-image video{
    width:100%;
    max-width:650px;
    height:550px;
    object-fit:cover;
    border-radius:34px;

    box-shadow:
    0 30px 70px rgba(0,0,0,0.35);

    border:
    1px solid rgba(255,255,255,0.12);

    animation:
    floatImage 5s infinite ease-in-out;
}

/* TABLET + MOBILE */

@media(max-width:992px){

    .hero{
        grid-template-columns:1fr;
        text-align:center;
        padding:80px 25px;
    }

    .hero-text{
        grid-column:auto;
    }

    .hero-image{
        grid-column:auto;
    }

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

    .hero-image video{
        height:420px;
    }
}

@media(max-width:768px){

    .hero-text h1{
        font-size:42px;
    }

    .hero-image video{
        height:300px;
    }
}

/* =========================================
   AUTO SLIDESHOW BANNER
========================================= */

.auto-banner{
    position:relative;
    width:90%;
    max-width:1400px;
    margin:80px auto;
    height:520px;
    overflow:hidden;

    border-radius:32px;

    background:
    radial-gradient(ellipse at 20% 50%, rgba(120,0,255,0.18) 0%, transparent 60%),
    radial-gradient(ellipse at 80% 20%, rgba(180,0,255,0.12) 0%, transparent 50%),
    linear-gradient(135deg,#0d0520 0%,#180a35 40%,#0d0520 100%);

    box-shadow:
    0 25px 80px rgba(0,0,0,0.18),
    0 10px 40px rgba(120,0,255,0.15);

    border:1px solid rgba(255,255,255,0.15);
}

.banner-section{
    background:#fff;
    padding:40px 0;
}

/* FUTURISTIC DIVIDER SHAPE */
.sweep-line {
  position: absolute;
  top: 0;
  left: 42%;
  width: 200px;
  height: 100%;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0, 191, 255, 0.06) 40%,
    rgba(0, 85, 204, 0.12) 50%,
    rgba(0, 191, 255, 0.06) 60%,
    transparent 100%
  );
  transform: skewX(-8deg);
  z-index: 2;
  pointer-events: none;
}

/* GLOWING EDGE LINE */
.sweep-line::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  width: 2px;
  height: 100%;
  background: linear-gradient(
    180deg,
    transparent 0%,
    rgba(0, 191, 255, 0.8) 20%,
    rgba(0, 85, 204, 1) 50%,
    rgba(0, 191, 255, 0.8) 80%,
    transparent 100%
  );
  box-shadow:
    0 0 8px rgba(0, 191, 255, 0.6),
    0 0 20px rgba(0, 85, 204, 0.4),
    0 0 40px rgba(0, 191, 255, 0.2);
}

/* MOVING GLOW DOT ON THE LINE */
.sweep-line::after {
  content: '';
  position: absolute;
  top: -60px;
  left: calc(50% - 6px);
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #00bfff;
  box-shadow:
    0 0 10px rgba(0, 191, 255, 1),
    0 0 25px rgba(0, 191, 255, 0.8),
    0 0 50px rgba(0, 85, 204, 0.5);
  animation: glowDot 3s ease-in-out infinite;
}

@keyframes glowDot {
  0%   { top: -60px; opacity: 0; }
  10%  { opacity: 1; }
  90%  { opacity: 1; }
  100% { top: 110%; opacity: 0; }
}

/* SWEEP ANIMATION */
@keyframes sweepIn {
  from { left: -20%; opacity: 0; }
  30%  { opacity: 1; }
  to   { left: 42%; opacity: 1; }
}

.auto-banner.animating .sweep-line {
  animation: sweepIn 0.6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

/* GRID DOTS BACKGROUND */
.auto-banner::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(0, 85, 204, 0.08) 1px, transparent 1px);
  background-size: 30px 30px;
  z-index: 0;
}

/* GLOW ORB */
.auto-banner::after {
  content: '';
  position: absolute;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 191, 255, 0.07), transparent 70%);
  top: -200px;
  right: -100px;
  z-index: 0;
  animation: float 8s ease-in-out infinite;
}

/* EACH SLIDE */
.auto-slide {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  padding: 40px 70px;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
}

.auto-slide.active {
  opacity: 1;
  pointer-events: all;
}

/* TEXT SIDE */
.auto-text {
  position: relative;
  z-index: 4;
  width: 45%;
}

/* TAG */
.auto-tag {
  display: inline-block;
  background: linear-gradient(135deg, #00bfff, #0055cc);
  color: white;
  padding: 6px 16px;
  border-radius: 50px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
  margin-bottom: 16px;
  box-shadow: 0 4px 15px rgba(0, 85, 204, 0.3);
  opacity: 0;
  transform: translateY(22px);
}

/* HEADING */
.auto-text h2 {
  font-size: 46px;
  color: #ffffff;
  margin-bottom: 14px;
  text-align: left;
  line-height: 1.1;
  font-weight: 800;
  text-shadow: 0 0 30px rgba(0,191,255,0.2);
  opacity: 0;
  transform: translateY(22px);
}

.auto-text h2 span {
  color: #00bfff;
}

.auto-text p {
  color: #a8c4e0;
  line-height: 1.85;
  font-size: 14px;
  margin-bottom: 22px;
  max-width: 400px;
  opacity: 0;
  transform: translateY(22px);
}

.auto-stat strong {
  display: block;
  font-size: 22px;
  font-weight: 800;
  color: #00bfff;
  line-height: 1;
}

.auto-stat small {
  font-size: 11px;
  color: #6a8aaa;
  font-weight: 500;
}

.auto-divider {
  width: 1px;
  height: 35px;
  background: rgba(0, 191, 255, 0.25);
}

/* BUTTON */
.auto-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #00bfff, #0055cc);
  color: white;
  padding: 13px 28px;
  border-radius: 14px;
  text-decoration: none;
  font-weight: 700;
  font-size: 14px;
  box-shadow: 0 8px 25px rgba(0, 85, 204, 0.3);
  position: relative;
  overflow: hidden;
  opacity: 0;
  transform: translateY(22px);
}

.auto-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
  transition: 0.5s ease;
}

.auto-btn:hover::before { left: 100%; }

.auto-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 35px rgba(0, 85, 204, 0.4);
}

/* IMAGE SIDE */
.auto-image {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  right: 0;
  top: 0;
  width: 50%;
  height: 100%;
  z-index: 3;
  opacity: 0;
  transform: translateX(40px);
  overflow: hidden;
  background: transparent;
}

.auto-image img {
  width: 90%;
  height: 90%;
  object-fit: contain;
  object-position: center;
  background: transparent;
  filter: drop-shadow(0 20px 40px rgba(0, 85, 204, 0.18));
  border-radius: 16px;
  padding: 10px;
}

/* DOTS */
.auto-dots {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
  z-index: 10;
}

.auto-dots .dot {
  width: 24px;
  height: 5px;
  border-radius: 3px;
  background: rgba(0, 85, 204, 0.2);
  cursor: pointer;
  transition: 0.3s ease;
  border: none;
}

.auto-dots .dot.active {
  background: #0055cc;
  width: 40px;
  box-shadow: 0 0 8px rgba(0, 85, 204, 0.4);
}

/* PROGRESS BAR */
.auto-progress {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: rgba(0, 85, 204, 0.08);
  z-index: 10;
}

.auto-progress-bar {
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, #00bfff, #0055cc);
}


/* =========================================
   PREMIUM BANNER INTERACTION
========================================= */

.auto-banner{
    --mouse-x:50%;
    --mouse-y:50%;
}

/* Mouse-following glow */

.auto-banner::before{
    content:"";
    position:absolute;
    inset:0;

    background:
    radial-gradient(
        250px circle at var(--mouse-x) var(--mouse-y),
        rgba(0,191,255,0.12),
        transparent 70%
    );

    pointer-events:none;
    z-index:1;
}

/* Subtle tech dots */

.tech-dots{
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:0;

    background-image:
    radial-gradient(
        circle,
        rgba(0,191,255,0.25) 1.5px,
        transparent 1.5px
    );

    background-size:120px 120px;

    opacity:.4;
}

/* =========================================
   SERVICES MOVING CARDS
========================================= */

.services-marquee-section{

    padding:90px 0;

    overflow:hidden;

    text-align:center;

    background:
    radial-gradient(circle at top left,#1a2f5f,transparent 30%),
    radial-gradient(circle at bottom right,#003580,transparent 35%),
    linear-gradient(
    135deg,
    #07152f,
    #0b1f45,
    #102d63
    );
}

/* TITLES */

.services-marquee-section h4{

    color:#0055cc;

    letter-spacing:3px;

    font-size:14px;

    margin-bottom:15px;
}

.services-marquee-section h2{

    font-size:42px;

    color:#001f4d;

    margin-bottom:60px;
}

/* MARQUEE */

.services-marquee{

    width:100%;

    overflow:hidden;

    position:relative;
}

/* TRACK */

.services-track{

    display:flex;

    gap:30px;

    width:max-content;

    animation:
    marqueeMove 28s linear infinite;
}

/* PAUSE ON HOVER */

.services-track:hover{

    animation-play-state:paused;
}

/* CARD */

.service-item{

    min-width:280px;

    padding:20px;

    border-radius:28px;

    background:
    rgba(255,255,255,0.08);

    backdrop-filter:blur(18px);

    border:
    1px solid rgba(255,255,255,0.12);

    box-shadow:
    0 10px 35px rgba(0,0,0,0.25);

    transition:0.4s ease;
}

/* HOVER */

.service-item:hover{

    transform:
    translateY(-10px);

    box-shadow:
    0 20px 45px rgba(0,85,204,0.16);
}

/* TITLE */

.service-item h3{

    font-size:24px;

    color:#003580;

    margin-bottom:25px;
}

/* BUTTON */

.service-item a{

    display:inline-block;

    width:100%;

    text-align:center;

    padding:13px 18px;

    border-radius:14px;

    text-decoration:none;

    font-weight:600;

    background:
    linear-gradient(
    135deg,
    #00bfff,
    #0055cc
    );

    color:rgb(235, 236, 229);

    transition:0.4s ease;
}

.service-item a:hover{

    transform:translateY(-3px);
}

/* ANIMATION */

@keyframes marqueeMove{

    from{
        transform:translateX(0);
    }

    to{
        transform:translateX(-50%);
    }
}

/* RESPONSIVE */

@media(max-width:768px){

    .services-marquee-section{

        padding:70px 0;
    }

    .services-marquee-section h2{

        font-size:32px;
    }

    .service-item{

        min-width:220px;
    }
}

.services-marquee-section h4{
    color:#90c8ff;
}

.services-marquee-section h2{
    color:white;
}

.service-item h3{
    color:white;
}

.services-marquee-section{

    background-color:#081b3a;

    background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);

    background-size:40px 40px;
}

.social-icons{

    display:flex;

    align-items:center;

    gap:14px;
}

.social-icons a{

    width:40px;

    height:40px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:
    linear-gradient(
    135deg,
    #007bff,
    #00bfff
    );

    color:white;

    font-size:17px;

    transition:0.3s ease;

    box-shadow:
    0 5px 15px rgba(0,123,255,0.25);
}

.social-icons a:hover{

    transform:translateY(-4px);

    box-shadow:
    0 8px 20px rgba(0,191,255,0.4);
}

/* medical ticker */

.ticker-wrap {
    width: 100%;
    background:#ebefeb;
    border-bottom: 4px solid #00e5ff;
    box-shadow:
    0 0 8px rgba(0,229,255,.6),
    0 0 18px rgba(0,229,255,.4);
    padding: 10px 0;
    overflow: hidden;
    position: relative;
    z-index: 999;
  }
  .ticker-wrap::before, .ticker-wrap::after {
    content: '';
    position: absolute;
    top: 0; bottom: 0;
    width: 60px;
    z-index: 2;
  }
  .ticker-wrap::before { left: 0; background: linear-gradient(to right, #0a1628, transparent); }
  .ticker-wrap::after  { right: 0; background: linear-gradient(to left,  #0a1628, transparent); }
  .ticker-track {
    display: flex;
    width: max-content;
    animation: ticker 150s linear infinite;
  }
  .ticker-track:hover { animation-play-state: paused; }
  .ticker-item {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 0 28px;
    white-space: nowrap;
    font-family: 'Segoe UI', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: #0000;
    letter-spacing: 0.5px;
  }
  .ticker-item .dot   { width: 6px; height: 6px; border-radius: 50%; background: #f66624; flex-shrink: 0; }
  .ticker-item .label { color: #c22424; font-weight: 700; font-size: 25px; }
  .ticker-item .desc  { color: #dd1717; font-weight: 600; font-size: 25px; }
  .ticker-sep { color: #0a0c01; font-size: 18px; padding: 0 4px; align-self: center; }
  @keyframes ticker {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
  }

  /* =========================================
   IMAGE STACK - FULL BOX ACTIVE
========================================= */

.about-image {
    position: relative;
    width: 100%;
    height: 480px;
    overflow: visible;
}

.image-stack {
    position: relative;
    width: 100%;
    height: 480px;
}

.stack-img {
    position: absolute;
    width: 100%;
    height: 480px;
    border-radius: 28px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.15);
    box-shadow: 0 25px 60px rgba(0,0,0,0.25);
    transition: all 1.2s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
}

.stack-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.8s ease;
}

.stack-img:hover img {
    transform: scale(1.05);
}

/* STACKED (waiting) positions */

.stack-img.pos-1 {
    top: 0; left: 0;
    width: 100%; height: 480px;
    z-index: 4;
    transform: rotate(0deg);
    filter: brightness(1);
}

.stack-img.pos-2 {
    top: 12px; left: 12px;
    width: 96%; height: 460px;
    z-index: 3;
    transform: rotate(1.5deg);
    filter: brightness(0.75);
}

.stack-img.pos-3 {
    top: 24px; left: 24px;
    width: 92%; height: 440px;
    z-index: 2;
    transform: rotate(-1.5deg);
    filter: brightness(0.5);
}

.stack-img.pos-4 {
    top: 36px; left: 36px;
    width: 88%; height: 420px;
    z-index: 1;
    transform: rotate(1deg);
    filter: brightness(0.3);
}

/* ACTIVE = covers full box perfectly */

.stack-img.active {
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 480px !important;
    z-index: 5 !important;
    transform: rotate(0deg) scale(1) !important;
    filter: brightness(1) !important;
    box-shadow:
        0 0 35px rgba(0,191,255,0.3),
        0 30px 70px rgba(0,0,0,0.35);
}

/* SCAN LINE on active */

.stack-img.active::after {
    content: '';
    position: absolute;
    top: -20%;
    left: 0;
    width: 100%;
    height: 80px;
    background: linear-gradient(
        to bottom,
        transparent,
        rgba(0,191,255,0.15),
        transparent
    );
    animation: stackScan 3s linear infinite;
    pointer-events: none;
}

@keyframes stackScan {
    from { top: -20%; }
    to   { top: 120%; }
}

/* BORDER PULSE on active */

.stack-img.active::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 28px;
    border: 1.5px solid rgba(0,191,255,0.6);
    z-index: 3;
    animation: borderPulse 2.5s ease-in-out infinite;
    pointer-events: none;
}

@keyframes borderPulse {
    0%, 100% { opacity: 0.4; }
    50%       { opacity: 1;   }
}

/* BADGES */

.ai-badge.badge1 {
    top: 20px;
    left: -20px;
    z-index: 10;
}

.ai-badge.badge2 {
    bottom: 30px;
    right: 20px;
    z-index: 10;
}

/* =========================
   GOOGLE TRANSLATE CUSTOM
========================= */

#google_translate_element {
    display: flex;
    align-items: center;
}

.goog-te-gadget {
    font-family: 'Poppins', sans-serif !important;
    color: transparent !important;
}

.goog-te-gadget .goog-te-combo {
    background: rgba(255,255,255,0.75);
    backdrop-filter: blur(18px);
    border: 1px solid rgba(0,85,204,0.15);
    border-radius: 14px;
    padding: 10px 14px;
    color: #003580;
    font-weight: 600;
    font-size: 14px;
    cursor: pointer;
    outline: none;
    transition: 0.3s ease;
    box-shadow: 0 8px 20px rgba(0,85,204,0.10);
}

.goog-te-combo:hover {
    border-color: #00bfff;
    box-shadow: 0 12px 25px rgba(0,191,255,0.18);
}

.goog-te-combo:focus {
    border-color: #0055cc;
}

.goog-logo-link,
.goog-te-gadget span {
    display: none !important;
}

.goog-te-banner-frame.skiptranslate {
    display: none !important;
}

body {
    top: 0 !important;
}

/* offer-popup */

.offer-popup-overlay{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.65);
    display:flex;
    justify-content:center;
    align-items:center;
    z-index:99999;

    opacity:0;
    visibility:hidden;
    transition:.4s ease;
}

.offer-popup-overlay.show{
    opacity:1;
    visibility:visible;
}

.offer-popup{
    width:90%;
    max-width:500px;
    background:#fff;
    border-radius:30px;
    padding:40px;
    text-align:center;
    position:relative;

    box-shadow:
    0 25px 80px rgba(0,0,0,.2);
}

.offer-icon{
    font-size:52px;
    margin-bottom:15px;
}

.offer-popup h2{
    color:#003580;
    margin-bottom:12px;
}

.offer-subtitle{
    color:#666;
    line-height:1.7;
    margin-bottom:25px;
}

.benefit-box{
    background:linear-gradient(
        135deg,
        rgba(0,191,255,.08),
        rgba(0,85,204,.08)
    );

    border:1px solid rgba(0,191,255,.15);
    border-radius:20px;

    padding:20px;
    margin-bottom:25px;

    text-align:left;
}

.benefit-box div{
    margin:12px 0;
    color:#003580;
    font-weight:600;
}

.offer-btn{
    display:inline-block;
    width:100%;
    padding:15px;

    border-radius:14px;

    text-decoration:none;
    color:#fff;

    font-weight:700;

    background:
    linear-gradient(
        135deg,
        #00bfff,
        #0055cc
    );

    box-shadow:
    0 10px 25px rgba(0,85,204,.25);

    transition:.3s ease;
}

.offer-btn:hover{
    transform:translateY(-3px);
}

.offer-close{
    position:absolute;
    top:12px;
    right:18px;
    border:none;
    background:none;
    font-size:28px;
    cursor:pointer;
}

.offer-badge{
    display:inline-block;
    padding:8px 18px;
    border-radius:50px;
    background:linear-gradient(135deg,#00bfff,#0055cc);
    color:white;
    font-size:11px;
    font-weight:700;
    letter-spacing:2px;
    margin-bottom:18px;
}

/* =========================================
   STACKED SCROLL + CARD IMAGE FIX - MOBILE
========================================= */

@media (max-width: 768px) {

    /* Every grid becomes a vertical column */
    .why-cards,
    .service-grid,
    .values-grid,
    .doctors-grid,
    .packages-grid,
    .facilities-grid,
    .contact-cards,
    .steps {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: unset !important;
        gap: 0 !important;
        overflow: visible !important;
    }

    /* Every card full width */
    .why-card,
    .service-card2,
    .value-card,
    .doctor-card,
    .package-card,
    .contact-card,
    .step {
        width: 100% !important;
        margin-bottom: 16px !important;
        flex-shrink: 0;
    }

    /* Sections must not clip overflow — sticky needs this */
    .why-us,
    .services-section,
    .values-section,
    .facilities-section,
    .packages-section,
    .contact-section,
    .booking-section {
        overflow: visible !important;
    }

    /* Package card — flex column, image on top */
    .package-card {
        display: flex !important;
        flex-direction: column !important;
        min-width: unset !important;
        border-radius: 22px !important;
        overflow: hidden !important;
    }

    .package-card img {
        order: -1 !important;
        width: 100% !important;
        height: 200px !important;
        object-fit: cover !important;
        display: block !important;
        flex-shrink: 0 !important;
        border-radius: 0 !important;
    }

    .package-tag {
        position: absolute !important;
        top: 12px !important;
        left: 12px !important;
        z-index: 5 !important;
    }

    .package-card-body {
        padding: 20px !important;
    }

    /* Service card image fix */
    .service-card2 img {
        width: 100% !important;
        height: 180px !important;
        object-fit: cover !important;
        display: block !important;
    }

    /* AUTO BANNER - MOBILE RESPONSIVE */
@media (max-width: 768px) {

    .auto-banner {
        height: auto !important;
        min-height: 520px !important;
        border-radius: 20px !important;
    }

    .auto-slide {
        display: grid !important;
        grid-template-columns: 1fr !important;
        align-items: center !important;
        padding: 24px 18px 50px !important;
        gap: 20px !important;
        min-height: auto !important;
        text-align: center !important;
    }

    .auto-text {
        width: 100% !important;
        position: relative !important;
        z-index: 4 !important;
        grid-column: auto !important;
        order: 1 !important;
    }

    .auto-text h2 {
        font-size: 18px !important;
        margin-bottom: 8px !important;
        line-height: 1.2 !important;
    }

    .auto-text p {
        font-size: 12px !important;
        margin-bottom: 14px !important;

        display: -webkit-box !important;
        -webkit-box-orient: vertical !important;

        line-clamp: 3;
        -webkit-line-clamp: 3 !important;

        overflow: hidden !important;
    }

    .auto-tag {
        font-size: 9px !important;
        padding: 4px 10px !important;
        margin-bottom: 10px !important;
    }

    .auto-btn {
        font-size: 11px !important;
        padding: 10px 16px !important;
    }

    .auto-stats {
        display: none !important;
    }

    .auto-image {
        position: relative !important;
        right: auto !important;
        top: auto !important;
        width: 100% !important;
        max-width: 380px !important;
        height: auto !important;
        margin: 0 auto !important;
        transform: none !important;
        opacity: 1 !important;
        border-radius: 14px !important;
        overflow: hidden !important;
        order: 2 !important;
    }

    .auto-image img {
        width: 100% !important;
        height: auto !important;
        object-fit: contain !important;
        border-radius: 14px !important;
        padding: 0 !important;
        filter: none !important;
        display: block !important;
    }

    .auto-dots {
        bottom: 14px !important;
    }
}

@media (max-width: 768px) {
    .hero {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}

@media (max-width: 768px) {

    .auto-slide{
        padding: 24px 18px 70px !important;
    }

    .auto-image{
        margin-top: 15px !important;
    }

    .auto-btn{
        display: inline-block !important;
        margin-bottom: 15px !important;
    }

}}