/* =========================
ULTRA PREMIUM CLINIC CSS
========================= */


*{
margin:0;
padding:0;
box-sizing:border-box;
scroll-behavior:smooth;
}

:root{

--primary:#4da6ff;
--secondary:#80c1ff;
--darkgreen:#1f4f8a;

--white:#ffffff;
--light:#f7faf8;
--grey:#e9efec;

--text:#000000;
--heading:#20322a;

--shadow:
0 15px 40px rgba(77,166,255,.12);

--glow:
0 0 50px rgba(77,166,255,.15);


--radius:24px;
}

body{
font-family:'Poppins',sans-serif;
background:var(--light);
color:var(--heading);
overflow-x:hidden;
position:relative;
}

.some-class h1{
    -webkit-text-stroke:0;
}

/* FLOATING GLOWS */

body::before{
content:'';
position:fixed;
width:450px;
height:450px;
top:-200px;
right:-200px;
background:var(--primary);
opacity:.05;
filter:blur(160px);
pointer-events:none;
z-index:-1;
}

body::after{
content:'';
position:fixed;
width:450px;
height:450px;
bottom:-200px;
left:-200px;
background:var(--secondary);
opacity:.05;
filter:blur(160px);
pointer-events:none;
z-index:-1;
}

/* SCROLLBAR */

::-webkit-scrollbar{
width:10px;
}

::-webkit-scrollbar-thumb{
background:var(--primary);
border-radius:20px;
}

::-webkit-scrollbar-track{
background:white;
}

/* LOADER */

.loader{
position:fixed;
inset:0;
background:white;
display:flex;
justify-content:center;
align-items:center;
z-index:99999;
transition:.8s;
}

.loader.hide{
opacity:0;
visibility:hidden;
}

.loader-circle{
width:90px;
height:90px;
border-radius:50%;
border:4px solid rgba(31,164,99,.15);
border-top:4px solid var(--primary);
animation:spin 1s linear infinite;
}

@keyframes spin{
100%{
transform:rotate(360deg);
}
}

/* CONTAINER */

.container{
width:90%;
max-width:1400px;
margin:auto;
}

.section{
padding:120px 0;
}

/* HEADER */

header{
position:fixed;
top:0;
width:100%;
z-index:1000;
transition:.4s;
}


/* NAVBAR */

.navbar{
height:90px;
display:flex;
justify-content:space-between;
align-items:center;
padding:0 5%;
}

.logo{
    display:flex;
    align-items:center;
    gap:12px;

    text-decoration:none;
    font-size:22px;
    font-weight:700;
    color:var(--heading);
    
}

.logo img{
    width:160px;
    height:200px;
    display:block;
    margin-top: 100px;
}

.logo span{
    color:var(--primary);
}

.drvjollce{
  margin-right: 0px;
}

.nav-links{
display:flex;
gap: 35px;
list-style:none;
}

.nav-links a{
text-decoration:none;
color:var(--heading);
font-weight:500;
position:relative;
transition:.3s;
}

.nav-links a:hover{
color:var(--primary);
}

.nav-links a::after{
content:'';
position:absolute;
left:0;
bottom:-8px;
width:0;
height:2px;
background:var(--primary);
transition:.3s;
}

.nav-links a:hover::after{
width:100%;
}

/* LANGUAGE BUTTONS */

.language-switcher{
display:flex;
gap:10px;
}

.language-switcher button{
width:42px;
height:42px;
border-radius:50%;
border:none;
background:white;
cursor:pointer;
box-shadow:0 5px 15px rgba(0,0,0,.05);
transition:.3s;
}

.language-switcher button:hover{
transform:translateY(-4px);
box-shadow:var(--shadow);
}

/* HERO */

.hero{
    min-height:100vh;
    padding-top:90px;
    margin-top:0;

    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;
}

.hero-content{
    transform:none;
    margin-top:0;
    position:static;
}

.hero h1{
font-size:47px;
line-height:1.1;
margin-top:340px;
color:var(--darkgreen);
}

.hero p{
font-size:21px;
color:var(--text);
margin-bottom:40px;
} 


/* BUTTONS */

.hero-buttons{
display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
margin-top: 80px;

}

.btn-gold{
padding:17px 40px;
border-radius:60px;

background:
linear-gradient(
135deg,
var(--primary),
var(--secondary)
);

color:white;
text-decoration:none;
font-weight:600;

transition:.4s;
box-shadow:var(--shadow);
}

.btn-gold:hover{
transform:translateY(-6px);
box-shadow:
0 20px 50px rgba(31,164,99,.25);
}

.btn-outline{
padding:17px 40px;
border-radius:60px;

border:2px solid var(--primary);

color:var(--primary);
background:white;

text-decoration:none;
font-weight:600;

transition:.4s;
}

.btn-outline:hover{
background:var(--primary);
color:white;
}

/* =========================
SECTION TITLES
========================= */

.section-title{
text-align:center;
margin-top:90px;
}

.online-title{
grid-column:1/-1;
text-align:center;
margin:40px 0 10px;
}

.online-title h2{
font-size:36px;
color:var(--darkgreen);
}

.section-title h2{
font-size:52px;
color:var(--darkgreen);
margin-bottom:95px;
}

.section-title p{
color:var(--text);
max-width:700px;
margin:auto;
line-height:1.8;
}

/* =========================
ABOUT SECTION
========================= */

.about-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

.about-card{
background:white;
padding:50px 35px;
border-radius:var(--radius);
text-align:center;

border:1px solid rgba(31,164,99,.08);

box-shadow:
0 10px 30px rgba(0,0,0,.03);

transition:.4s;
}

.about-card:hover{
transform:translateY(-10px);

box-shadow:
0 20px 50px rgba(31,164,99,.12);
}

.about-card h3{
font-size:55px;
color:var(--primary);
margin-bottom:10px;
}

.about-card p{
color:var(--text);
}

/* =========================
SERVICES
========================= */

.services-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

.service-card{
background:white;
padding:40px;
border-radius:var(--radius);

border:1px solid rgba(31,164,99,.08);

transition:.4s;

box-shadow:
0 10px 30px rgba(0,0,0,.03);
}

.service-card:hover{
transform:translateY(-10px);

box-shadow:
0 20px 50px rgba(31,164,99,.12);
}

.service-icon{
font-size:22px;
font-weight:700;
color:var(--darkgreen);
margin-bottom:15px;
line-height:1.4;
}

.service-card h3{
margin-bottom:15px;
font-size:24px;
color:var(--heading);
}

.service-card p{
color:var(--text);
line-height:1.8;
}

.service-card h3{
display:inline-block;
background:linear-gradient(
135deg,
var(--primary),
var(--secondary)
);

color:white;
padding:10px 18px;
border-radius:50px;
font-size:18px;
margin-bottom:18px;
}

.services-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
align-items:stretch;
}

.service-card {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

.service-card:hover{
transform:translateY(-12px) scale(1.02);

box-shadow:
0 25px 60px rgba(31,164,99,.15);

border-color:
rgba(31,164,99,.2);
}

.services-grid{
counter-reset:service-counter;
}

.service-card{
position:relative;
}

.service-card::after{
counter-increment:service-counter;
content:counter(service-counter);

position:absolute;
top:20px;
right:20px;

width:40px;
height:40px;

display:flex;
align-items:center;
justify-content:center;

border-radius:50%;

background:rgba(31,164,99,.08);

font-weight:700;
color:var(--primary);
}

.online-title{
grid-column:1/-1;
text-align:center;
margin:70px 0 40px;
position:relative;
}

.online-title::before{
content:'ONLINE';
position:absolute;
top:-18px;
left:50%;
transform:translateX(-50%);

font-size:12px;
font-weight:700;
letter-spacing:3px;

color:var(--primary);
background:white;

padding:5px 14px;
border-radius:30px;

box-shadow:0 5px 15px rgba(0,0,0,.05);
}

.online-title h2{
display:inline-block;

padding:25px 50px;

background:white;

border:2px solid rgba(31,164,99,.12);

border-radius:50%;

font-size:34px;
color:var(--darkgreen);

box-shadow:
0 15px 40px rgba(0,0,0,.05);
}

/* =========================
DOCTORS
========================= */

.team-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

.doctor-card{
background:white;
border-radius:var(--radius);
overflow:hidden;
image-rendering: pixelated;

transition:.4s;

box-shadow:
0 10px 30px rgba(0,0,0,.03);

margin-top: 100px;
}

.doctor-card:hover{
transform:translateY(-12px);

box-shadow:
0 20px 60px rgba(31,164,99,.15);
}

.doctor-card{
    background: white;
    border-radius: 24px;
    padding: 35px 25px;
    text-align: center;
    cursor: pointer;

    box-shadow: 0 10px 30px rgba(0,0,0,.05);
    transition: .35s;
}

.doctor-card:hover{
    transform: translateY(-10px);
    box-shadow: 0 20px 50px rgba(77,166,255,.18);
}

.doctor-card img{
    width: 250px;
    height: 290px;

    border-radius: 48%;
    object-fit: cover;

    display: block;
    margin: 0 auto 20px;

    border: 5px solid #fff;
    box-shadow: 0 10px 30px rgba(0,0,0,.12);
}

.doc-info{
    text-align:center;
}

.doc-info h3{
    font-size:28px;
    margin-bottom:8px;
    color:var(--heading);
}

.doc-info p{
    color:var(--primary);
    font-weight:600;
    font-size:18px;
}

.doctor-card h3{
padding:20px 20px 5px;
font-size:22px;
}

.doctor-card p{
padding:0 20px 25px;
color:var(--primary);
font-weight:500;
}

/* =========================
GALLERY
========================= */

.gallery-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:20px;
margin-top: 150px;
}

.gallery-grid img{
width:100%;
height:320px;
object-fit:cover;
border-radius:20px;

cursor:pointer;
transition:.5s;
}

.gallery-grid img:hover{
transform:scale(1.05);

box-shadow:
0 20px 50px rgba(31,164,99,.18);
}

/* =========================
CTA SECTION
========================= */

.cta{
padding:120px 0;

background:
linear-gradient(
135deg,
#E9FFF3,
#F8FFFB
);

text-align:center;
}

.cta h2{
font-size:60px;
color:var(--darkgreen);
margin-bottom:20px;
}

.cta p{
font-size:18px;
color:var(--text);
margin-bottom:35px;
}

/* =========================
FOOTER
========================= */

footer{
  background:
    linear-gradient(135deg, #ffffff, #f7fffb);
  padding: 100px 0 40px;
  border-top: 1px solid rgba(31,164,99,.12);
  position: relative;
  overflow: hidden;
}

/* soft glow effect like your hero */
footer::before{
  content:'';
  position:absolute;
  width:500px;
  height:500px;
  background: var(--primary);
  opacity:.06;
  filter: blur(140px);
  top:-200px;
  right:-200px;
  pointer-events:none;
}

.footer-grid{
  display:grid;
  grid-template-columns: repeat(2, 1fr);
  gap:70px;
  align-items:start;
  position:relative;
  z-index:1;
}

/* section titles */
.footer-grid h3,
.footer-grid h4{
  color: var(--darkgreen);
  margin-bottom: 18px;
  position: relative;
  font-weight: 700;
}

/* underline animation */
.footer-grid h4::after,
.footer-grid h3::after{
  content:'';
  display:block;
  width:45px;
  height:3px;
  margin-top:10px;
  background: linear-gradient(90deg, var(--primary), var(--secondary));
  border-radius:10px;
}

/* text */
.footer-grid p{
  color: var(--text);
  margin-bottom: 10px;
  line-height: 1.8;
  font-size: 15px;
}

/* links */
.footer-grid a{
  text-decoration:none;
  color: var(--text);
  display:inline-block;
  transition:.35s;
  position: relative;
}

.footer-grid a:hover{
  color: var(--primary);
  transform: translateX(6px);
}

/* social links feel like buttons */
.footer-grid a::before{
  content:'';
  position:absolute;
  left:-10px;
  top:50%;
  transform:translateY(-50%);
  width:0;
  height:2px;
  background: var(--primary);
  transition:.3s;
}

.footer-grid a:hover::before{
  width:8px;
}

/* copyright */
.copyright{
  text-align:center;
  margin-top:60px;
  padding-top:25px;
  border-top:1px solid rgba(31,164,99,.10);
  color: var(--text);
  font-size: 14px;
  letter-spacing: .3px;
}

/* hover lift effect for footer columns */
.footer-grid > div{
  transition: .4s;
  padding: 10px;
  border-radius: 18px;
}

.footer-grid > div:hover{
  transform: translateY(-6px);
  background: rgba(31,164,99,.03);
}

/* MOBILE */
@media(max-width:768px){
  .footer-grid{
    grid-template-columns: 1fr;
    text-align: center;
    gap:40px;
  }

  .footer-grid h4::after,
  .footer-grid h3::after{
    margin:10px auto 0;
  }
}

/* =========================
SCROLL TO TOP
========================= */

#scrollTop{
position:fixed;
right:25px;
bottom:25px;

width:55px;
height:55px;

border:none;
border-radius:50%;

background:var(--primary);
color:white;

cursor:pointer;

font-size:22px;

display:none;

z-index:1000;

box-shadow:
0 10px 30px rgba(31,164,99,.25);
}

#scrollTop:hover{
transform:translateY(-4px);
}

/* =========================
REVEAL ANIMATIONS
========================= */

.reveal{
opacity:0;
transform:translateY(60px);
transition:1s;
}

.reveal.active{
opacity:1;
transform:translateY(0);
}

/* MOBILE MENU UPGRADE */

.menu-btn{
    display:none;
    cursor:pointer;
    border:none;
    background:none;
    font-size:32px;
    color:var(--darkgreen);
    z-index:2000;
}


/* MOBILE */

@media(max-width:1000px){

    .menu-btn{
        display:block;
        position:relative;
    }


    .nav-links{

        position:fixed;
        top:0;
        right:-110%;

        width:320px;
        max-width:85%;

        height:100vh;

        background:rgba(255,255,255,0.92);
        backdrop-filter:blur(20px);

        display:flex;
        flex-direction:column;
        justify-content:center;
        align-items:center;

        gap:25px;

        box-shadow:-20px 0 50px rgba(0,0,0,.15);

        transition:.45s ease;

        z-index:1500;
    }


    .nav-links.active{
        right:0;
    }


    .nav-links a{

        font-size:22px;
        font-weight:600;

        padding:12px 25px;

        width:80%;
        text-align:center;

        border-radius:15px;

        transition:.3s ease;

    }


    .nav-links a:hover{

        background:rgba(77,166,255,.12);

        transform:translateX(-5px);

    }


    body.menu-open{
        overflow:hidden;
    }


}


/* DARK OVERLAY */

.menu-overlay{

    display:none;

}


.menu-overlay.active{

    opacity:1;
    visibility:visible;

}

/* =========================
TABLET
========================= */

@media(max-width:1000px){

.hero h1{
font-size:50px;
}

.about-grid,
.services-grid,
.team-grid{
grid-template-columns:1fr;
}

.gallery-grid{
grid-template-columns:repeat(2,1fr);
}

.nav-links{
display:none;
}

.menu-btn{
display:block;
}

.footer-grid{
grid-template-columns:1fr;
}

}

/* =========================
MOBILE
========================= */

@media(max-width:768px){

.hero{
padding:0 20px;
}

.hero h1{
font-size:40px;
}

.hero p{
font-size:17px;
}

.section{
padding:80px 0;
}

.section-title h2{
font-size:36px;
}

.cta h2{
font-size:38px;
}

.gallery-grid{
grid-template-columns:1fr;
}

.language-switcher{
display:none;
}

}

/* =========================
EXTRA PREMIUM EFFECTS
========================= */

.service-card,
.about-card,
.doctor-card{
position:relative;
overflow:hidden;
}

.service-card::before,
.about-card::before,
.doctor-card::before{

content:'';

position:absolute;

top:0;
left:-100%;

width:100%;
height:100%;

background:
linear-gradient(
90deg,
transparent,
rgba(255,255,255,.5),
transparent
);

transition:.8s;
}

.service-card:hover::before,
.about-card:hover::before,
.doctor-card:hover::before{
left:100%;
}

/* =========================
   CONTACT FORM
========================= */

.contact-form{
    display:flex;
    flex-direction:column;
    gap:20px;
    max-width:700px;
    margin:auto;
}

.contact-form input,
.contact-form textarea{
    padding:16px 18px;
    border-radius:16px;
    border:1px solid rgba(0,0,0,.08);
    outline:none;
    font-size:16px;
    font-family:'Poppins',sans-serif;

    background:white;

    transition:.3s;
}

.contact-form input:focus,
.contact-form textarea:focus{
    border-color:var(--primary);
    box-shadow:0 0 0 4px rgba(31,164,99,.1);
}

.contact-form textarea{
    resize:none;
}

.contact-form button{
    align-self:flex-start;
}


/* =========================
   LUXURY SOCIAL BUTTONS
========================= */

.social-links{
display:flex;
justify-content:center;
gap:25px;
margin:70px 0;
flex-wrap:wrap;
}

.social-links a{
position:relative;
overflow:hidden;

padding:18px 38px;

background:white;

border-radius:60px;

text-decoration:none;

font-size:17px;
font-weight:600;

color:var(--darkgreen);

border:1px solid rgba(31,164,99,.10);

box-shadow:
0 15px 40px rgba(0,0,0,.06);

transition:.45s;
}

.social-links a::before{
content:'';

position:absolute;
top:0;
left:-120%;

width:120%;
height:100%;

background:
linear-gradient(
90deg,
transparent,
rgba(255,255,255,.9),
transparent
);

transition:.8s;
}

.social-links a:hover::before{
left:120%;
}

.social-links a:hover{
transform:translateY(-8px);

background:
linear-gradient(
135deg,
var(--primary),
var(--secondary)
);

color:white;

box-shadow:
0 25px 60px rgba(31,164,99,.25);
}

.social-links a{
min-width:220px;
text-align:center;
letter-spacing:.5px;
}

.social-links a span{
display:block;
font-size:12px;
opacity:.7;
margin-top:4px;
}

/* =========================
   ABOUT STORY SECTION
========================= */

.about-story{
    width:100%;
    max-width:1800px;
    margin:0 auto 70px;
    text-align:center;
}

.paragrapgh{
  text-align: start;
}

.container{
    width:100%;
    max-width:1800px;
    margin:0 auto;
}

.about-story h2{
font-size:54px;
margin-bottom:25px;
color:var(--darkgreen);
position: relative;
}

.about-story h2::after{
content:'';
display:block;
width:80px;
height:4px;
margin:18px auto 0;

background:linear-gradient(
90deg,
var(--primary),
var(--secondary)
);

border-radius:20px;
}

.about-story p{
    max-width:1500px;     
    width:95%;
    margin:0 auto;

    padding:35px 50px;

    background:white;
    border-radius:25px;

    box-shadow:0 15px 40px rgba(0,0,0,.05);

    font-size:18px;
    line-height:2;

    color:#000;
    text-align:left;
}

.clinic-quote{
max-width:900px;
margin:50px auto;

padding:35px;

text-align:center;

font-size:30px;
font-style:italic;
font-weight:600;

color:var(--darkgreen);

background:linear-gradient(
135deg,
#ffffff,
#f8fffb
);

border-radius:25px;

box-shadow:
0 15px 40px rgba(31,164,99,.08);
}

.single-line{
    white-space: nowrap;
}

.color-2{
  color: white;
}

/*==========================
AMBIENT PAGE
==========================*/

.ambient-hero{
height:70vh;
background:
linear-gradient(rgba(255,255,255,0.0),rgba(255,255,255,0.0)),
url("ambient-banner.jpg");
background-size:cover;
background-position:center;
}

.ambient-card{

background:white;

padding:60px;

border-radius:30px;

box-shadow:0 20px 60px rgba(0,0,0,.05);

max-width:1000px;

margin:auto;

text-align:center;
}

.ambient-card h2{

font-size:46px;

margin-bottom:25px;

color:var(--darkgreen);
}

.ambient-card p{

font-size:18px;

line-height:2;

color:var(--text);
}

.ambient-features{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;
}

.feature-box{

background:white;

padding:45px;

border-radius:25px;

text-align:center;

transition:.4s;

box-shadow:0 15px 40px rgba(0,0,0,.05);
}

.feature-box:hover{

transform:translateY(-10px);

box-shadow:0 30px 70px rgba(77,166,255,.18);
}

.feature-box h3{

font-size:26px;

margin-bottom:15px;

color:var(--darkgreen);
}

.feature-box p{

color:var(--text);

line-height:1.8;
}

@media(max-width:900px){

.ambient-features{

grid-template-columns:1fr;
}

.ambient-card{

padding:35px;
}

.ambient-card h2{

font-size:34px;
}
}

/*==========================
AMBIENT NAVIGATION
==========================*/

.ambient-navigation{
display:flex;
justify-content:space-between;
align-items:center;
gap:20px;
margin-top:20px;
flex-wrap:wrap;
}

.ambient-navigation a{
min-width:220px;
text-align:center;
}

@media(max-width:768px){

.ambient-navigation{
flex-direction:column;
}

.ambient-navigation a{
width:100%;
}

}

/* =========================
FLOAT BACK BUTTON
========================= */

.float-back{
  position:fixed;
  top:100px;
  left:25px;
  z-index:99999;

  display:inline-flex;
  align-items:center;
  gap:10px;

  padding:12px 18px;
  border-radius:60px;

  background:rgba(255,255,255,.75);
  backdrop-filter:blur(14px);

  color:var(--darkgreen);
  text-decoration:none;

  font-weight:600;
  font-size:15px;
  letter-spacing:.3px;

  box-shadow:0 15px 40px rgba(0,0,0,.08);

  border:1px solid rgba(31,164,99,.10);

  transition:.35s ease;
}

/* hover effect */
.float-back:hover{
  transform:translateY(-5px);
  background:white;
  box-shadow:0 25px 60px rgba(77,166,255,.18);
  color:var(--primary);
}

/* little arrow animation */
.float-back::before{
  content:"←";
  display:inline-block;
  transition:.3s ease;
}

.float-back:hover::before{
  transform:translateX(-4px);
}

/* mobile fix */
@media(max-width:768px){
  .float-back{
    top:80px;
    left:15px;
    font-size:13px;
    padding:10px 14px;
  }
}

/* =========================
SIDE ARROWS NAV
========================= */

.side-nav{
  position:fixed;
  right:20px;
  top:50%;
  transform:translateY(-50%);

  display:flex;
  flex-direction:column;
  gap:15px;

  z-index:9999;
}

.side-btn{
  width:55px;
  height:55px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:50%;

  background:rgba(255,255,255,.75);
  backdrop-filter:blur(12px);

  color:var(--darkgreen);
  text-decoration:none;
  font-size:22px;
  font-weight:700;

  box-shadow:0 10px 30px rgba(0,0,0,.08);

  transition:.3s;
}

.side-btn:hover{
  transform:scale(1.1);
  background:white;
  color:var(--primary);
}

/* MOBILE FIX */
@media(max-width:768px){

  .side-nav{
    right:10px;
  }

  .float-back{
    top:80px;
    left:15px;
    font-size:14px;
    padding:10px 14px;
  }
}

/* =========================
SCROLL PROGRESS BAR
========================= */

.progress-container{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:5px;
  background:rgba(0,0,0,.05);
  z-index:99999;
}

.progress-bar{
  height:100%;
  width:0%;
  background:linear-gradient(
    90deg,
    var(--primary),
    var(--secondary)
  );
  transition:width .1s linear;
}

/* =========================
ULTRA FLOATING NAV BAR
========================= */

.floating-ui{
  position:fixed;
  top:20px;
  left:50%;
  transform:translateX(-50%);
  margin-bottom: 100px;

  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;

  padding:12px 18px;

  width:min(900px,92%);

  background:rgba(255,255,255,.55);
  backdrop-filter:blur(20px);

  border:1px solid rgba(77,166,255,.15);

  border-radius:999px;

  box-shadow:
    0 20px 60px rgba(0,0,0,.08),
    0 0 30px rgba(77,166,255,.08);

  z-index:99999;

  transition:.3s ease;
}

/* center label */
.ui-center{
  font-weight:600;
  font-size:14px;
  color:var(--darkgreen);
  letter-spacing:.5px;
  opacity:.9;
}

/* back button */
.ui-btn{
  text-decoration:none;
  padding:8px 14px;
  border-radius:999px;

  background:rgba(255,255,255,.7);
  border:1px solid rgba(77,166,255,.2);

  color:var(--darkgreen);

  font-weight:600;
  font-size:14px;

  transition:.3s ease;
}

.ui-btn:hover{
  transform:translateY(-2px);
  background:white;
  color:var(--primary);
  box-shadow:0 10px 30px rgba(77,166,255,.15);
}

/* arrows */
.ui-nav{
  display:flex;
  gap:10px;
}

.ui-arrow{
  width:38px;
  height:38px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:50%;

  background:rgba(255,255,255,.7);

  border:1px solid rgba(77,166,255,.2);

  text-decoration:none;
  color:var(--darkgreen);

  font-size:16px;

  transition:.3s ease;
}

.ui-arrow:hover{
  transform:scale(1.15);
  background:white;
  color:var(--primary);
  box-shadow:0 10px 30px rgba(77,166,255,.2);
}

/* responsive */
@media(max-width:768px){

  .floating-ui{
    flex-direction:column;
    gap:10px;
    padding:14px;
  }

  .ui-center{
    font-size:13px;
  }
}

.floating-ui{
  position:fixed;
  top:635px;
  left:50%;
  transform:translateX(-50%);

  margin-top:10px;
}

/* =========================
DOCTOR MODAL (INSANE LEVEL)
========================= */

.doctor-modal{
  display:none;
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.6);
  backdrop-filter:blur(10px);
  justify-content:center;
  align-items:center;
  z-index:999999;
  animation:fadeIn .3s ease;
}

@keyframes fadeIn{
  from{opacity:0}
  to{opacity:1}
}

.doctor-modal-content{
  background:white;
  width:min(500px,90%);
  border-radius:25px;
  padding:25px;

  text-align:center;

  box-shadow:0 30px 80px rgba(0,0,0,.25);

  animation:pop .3s ease;
}

@keyframes pop{
  from{transform:scale(.8)}
  to{transform:scale(1)}
}

.doctor-modal-content img{
  width:120px;
  height:120px;
  border-radius:50%;
  object-fit:cover;
  margin-bottom:15px;
  border:3px solid var(--primary);
}

.doctor-modal-content h2{
  color:var(--darkgreen);
  margin-bottom:10px;
}

.doctor-modal-content p{
  color:var(--text);
  line-height:1.6;
}

.close-modal{
  position:absolute;
  right:20px;
  top:15px;
  font-size:28px;
  cursor:pointer;
  color:var(--darkgreen);
  transition:.2s;
}

.close-modal:hover{
  color:var(--primary);
  transform:scale(1.2);
}

/* doctor cards upgrade */
.doctor-card{
  cursor:pointer;
  transition:.3s;
}

.doctor-card:hover{
  transform:translateY(-10px) scale(1.02);
}

.doc-info{
  padding:15px;
  text-align:center;
}

/*======================================
NEWS PAGE
======================================*/

.news-page{
    width:100%;
    max-width:1000px;
    margin:80px auto;
}

.news-page h1{
    text-align:center;
    font-size:3rem;
    color:var(--heading);

    margin-top:100px;   /* Increase this to move it lower */
    margin-bottom:px;
}

.news-page .subtitle{
    text-align:center;
    color:var(--text);
    font-size:1.1rem;
    margin-bottom:60px;
}

.news-hero{
    height:100vh;
    display:flex;
    justify-content:center;
    align-items:center;
    text-align:center;
    position:relative;
    margin-top:-245px; 
}

/* News Card */

.news-card{
    position:relative;
    background:var(--white);
    border-radius:22px;
    padding:35px;
    margin-bottom:305px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);
    border-left:7px solid var(--primary);
    transition:.35s ease;
    overflow:hidden;
}

.news-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:5px;
    background:linear-gradient(
        90deg,
        var(--primary),
        var(--secondary)
    );
}

.news-card:hover{
    transform:translateY(-8px);
    box-shadow:0 22px 45px rgba(0,0,0,.12);
}

.news-date{
    display:inline-block;
    background:rgba(16, 85, 154, 0.12);
    color:var(--primary);
    padding:8px 16px;
    border-radius:50px;
    font-weight:600;
    margin-bottom:18px;
    font-size:.9rem;
}

.news-card h2{
    color:var(--heading);
    font-size:1.8rem;
    margin-bottom:180px;
}

.news-card p{
    color:var(--text);
    line-height:1.9;
    font-size:1.05rem;
}

/* Optional "New" badge */

.news-badge{
    position:absolute;
    top:25px;
    right:25px;
    background:var(--primary);
    color:#fff;
    padding:8px 16px;
    border-radius:50px;
    font-size:.8rem;
    font-weight:700;
    letter-spacing:.5px;
}

/* Responsive */

@media(max-width:768px){

.news-page{
    margin-top:120px;
}

.news-page h1{
    font-size:2.3rem;
}

.news-card{
    padding:25px;
}

.news-card h2{
    font-size:1.5rem;
}

.news-badge{
    position:static;
    display:inline-block;
    margin-bottom:18px;
}

}

/*=========================
NEWS HERO
=========================*/


.news-hero-content{
    position:relative;
    z-index:2;
}

.news-hero-content h1{
    font-size:4rem;
    color:#2d5ea8;
    margin-top:400px;
}

.news-hero-content p{
    max-width:700px;
    margin:auto;
    font-size:1.2rem;
}

/* Featured Card */

.featured{
background:linear-gradient(135deg,#4da6ff,#80c1ff);
color:#fff;
border:none;
}

.featured h3{
color:#fff;
}

.featured p{
color:#fff;
}

.featured-badge{
display:inline-block;
background:#fff;
color:#4da6ff;
padding:8px 18px;
border-radius:40px;
font-weight:700;
margin-bottom:20px;
}

.contact-icons {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 6px 0;
}

.contact-icons a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.contact-icons img {
    width: 26px;
    height: 26px;
    display: block;
}

.contact-icons,
.contact-icons * {
    display: flex;
    flex-direction: row;
}

.phone-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 18px;
}

.phone-block p {
    margin-bottom: 6px;
    text-align: center;
}

.contact-icons {
    display: flex;
    gap: 10px;
}

.contact-icons img {
    width: 26px;
    height: 26px;
}

.location-btn {
    display: inline-flex;
    align-items: center;

    margin-top: 14px;
    padding: 10px 16px;

    border-radius: 999px;

    background: linear-gradient(135deg, var(--primary), var(--secondary));
    color: white;

    text-decoration: none;
    font-weight: 600;
    font-size: 14px;

    box-shadow: 0 10px 25px rgba(77,166,255,0.18);

    transition: 0.25s ease;
}

.location-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 18px 40px rgba(77,166,255,0.28);
}

.location-btn {
    display: inline-flex;
    align-items: center;

    margin-top: 14px;
    padding: 10px 16px;

    border-radius: 999px;

    background: linear-gradient(135deg, var(--primary), var(--secondary));
    color: white;

    text-decoration: none;
    font-weight: 600;
    font-size: 14px;

    box-shadow: 0 10px 25px rgba(77,166,255,0.18);

    transition: 0.25s ease;

    position: relative;
}

/* 🔵 PULSE EFFECT */
.location-btn::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 999px;
    background: rgba(77,166,255,0.4);
    z-index: -1;
    animation: pulse 1.8s infinite;
}

@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 0.6;
    }
    70% {
        transform: scale(1.4);
        opacity: 0;
    }
    100% {
        transform: scale(1.4);
        opacity: 0;
    }
}

/* MAP PREVIEW */
.map-preview {
    margin-top: 15px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 15px 40px rgba(0,0,0,0.08);
}

.map-preview iframe {
    width: 100%;
    height: 180px;
    border: 0;
}

/*EMAIL SECTION*/
.email-text {
    font-weight: 600;
    margin-bottom: 12px;
    color: var(--darkgreen);
}

.email-actions {
    display: flex;
    gap: 10px;
    justify-content: center;
    flex-wrap: wrap;
}

.email-btn, .copy-btn {
    padding: 10px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    border: none;
    text-decoration: none;
    transition: 0.25s ease;
}

.email-btn {
    background: linear-gradient(135deg, var(--primary), var(--secondary));
    color: white;
    box-shadow: 0 10px 25px rgba(77,166,255,0.18);
}

.copy-btn {
    background: white;
    border: 1px solid rgba(77,166,255,0.25);
    color: var(--darkgreen);
}

.email-btn:hover, .copy-btn:hover {
    transform: translateY(-3px);
}

.socials-page{
    padding:100px 8%;
    min-height:100vh;

    background:linear-gradient(
        -45deg,
        #f7fbff,
        #eaf5ff,
        #d9ecff,
        #eef8ff
    );

    background-size:400% 400%;
    animation:gradientMove 15s ease infinite;
}

.socials-title{
    text-align:center;
    margin-bottom:60px;
}

.socials-title h1{
    font-size:3rem;
    color:#1f4f8a;
    margin-bottom:15px;
}

.socials-title p{
    max-width:750px;
    margin:auto;
    color:#666;
    font-size:1.1rem;
    line-height:1.7;
}

.social-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:40px;
    align-items:start;
}

.social-card{
    background:#fff;
    border-radius:18px;
    padding:25px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    transition:.3s;
}

.social-card:hover{
    transform:translateY(-8px);
}

.social-card h2{
    text-align:center;
    color:#1f4f8a;
    margin-bottom:20px;
}

@keyframes gradientMove{
    0%{
        background-position:0% 50%;
    }
    50%{
        background-position:100% 50%;
    }
    100%{
        background-position:0% 50%;
    }
}

@media(max-width:900px){

.social-grid{
    grid-template-columns:1fr;
}

}

.social-card{
    display:flex;
    flex-direction:column;
    align-items:center;
}

.social-card h2{
    margin-bottom:20px;
}

.social-card .elfsight-app-d77d7098-ec3b-4764-a3e1-320081dbea58,
.social-card .elfsight-app-b3fc1f03-a7be-448e-bc42-e752b58fc012{
    width:100%;
}

/* ===== NEWS PAGE TITLES ===== */

.news-hero h1{
    color: var(--darkgreen);      /* Same blue as the rest of your site */
    font-size: 3.5rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 20px;
}

.news-page h2{
    color: var(--primary);      /* Blue section heading */
    font-size: 2.6rem;
    text-align: center;
    margin-bottom: 40px;
}

.news-card h3{
    color: var(--primary);      /* Blue card title */
    font-size: 1.8rem;
    margin-bottom: 15px;
    text-align: left;           /* Keep the card title left-aligned */
}

/* =========================
SOCIALS HERO
========================= */

.socials-hero{
    height:60vh;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
}

.socials-hero-content{
    max-width:800px;
    padding:20px;
}

.socials-hero h1{
    font-size:3.3rem;
    color:var(--primary);
    margin-bottom:20px;
}

.socials-hero p{
    font-size:1.15rem;
    color:var(--text);
    line-height:1.8;
}

.gallery-tip{
    display:inline-block;
    margin:25px auto 40px;
    padding:14px 30px;
    font-size:18px;
    font-weight:600;
    color:#1f4f8a;
    background:rgba(255,255,255,.92);
    border:2px solid rgba(77,166,255,.25);
    border-radius:50px;
    box-shadow:0 10px 30px rgba(77,166,255,.18);
    transition:.3s;
}

.gallery-tip:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 40px rgba(77,166,255,.3);
}

.container{
    text-align:center;
}

.titulli{
  font-size: larger;
 
}

/* =========================
HERO SOCIAL BUTTONS
========================= */

.socials-hero{
    position:relative;
}

.hero-social-links{

    position:absolute;

    left:0px;
    bottom:180px;

    width:100%;

    display:flex;
    justify-content:space-between;
    align-items:center;

    padding:0 300px;
}

.hero-box{

    width:280px;
    height:80px;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:6px;

    border-radius:22px;

    color:white;
    text-decoration:none;

    font-size:22px;
    font-weight:700;

    transition:.35s ease;

    box-shadow:0 18px 45px rgba(0,0,0,.15);
}

.hero-box img{

    width:32px;
    height:32px;
}

.hero-box:hover{

    transform:translateY(-8px) scale(1.03);
}

/* Instagram */

.instagram-box{

    background:linear-gradient(
        135deg,
        #f58529,
        #dd2a7b,
        #8134af,
        #515bd4
    );

    box-shadow:0 20px 45px rgba(221,42,123,.35);
}

/* Facebook */

.facebook-box{

    background:linear-gradient(
        135deg,
        #1877F2,
        #0d5ed7
    );

    box-shadow:0 20px 45px rgba(24,119,242,.35);
}

/* Down Arrow */

.down-arrow{

    font-size:26px;
    line-height:1;

    animation:bounceArrow 1.6s infinite;
}

@keyframes bounceArrow{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(6px);
    }
}

/* Mobile */

@media(max-width:768px){

.hero-social-links{

    position:static;

    margin-top:40px;

    padding:0 20px;

    flex-direction:column;

    gap:20px;
}

.hero-box{

    width:100%;
    max-width:320px;
}

}

/* =====================================================
   CLEAN MOBILE CSS
===================================================== */

@media (max-width:1000px){

body{
    overflow-x:hidden;
}

/* ---------- NAVBAR ---------- */

.menu-btn{
    display:flex;
    align-items:center;
    justify-content:center;

    width:52px;
    height:52px;

    border:none;
    border-radius:50%;

    background:#fff;

    font-size:28px;

    box-shadow:0 10px 30px rgba(0,0,0,.08);

    z-index:3000;
}

.nav-links{

    position:fixed;

    top:0;
    right:-100%;

    width:300px;
    max-width:85%;

    height:100vh;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    gap:28px;

    background:rgba(255,255,255,.97);
    backdrop-filter:blur(20px);

    transition:.35s;

    z-index:2500;
}

.nav-links.active{
    right:0;
}

.nav-links a{

    width:80%;

    text-align:center;

    padding:14px;

    border-radius:14px;

    font-size:19px;
}

/* ---------- LANGUAGE ---------- */

.language-switcher{

    position:fixed;

    bottom:40px;

    right:-100%;

    width:300px;
    max-width:85%;

    display:flex;
    justify-content:center;
    gap:12px;

    transition:.35s;

    z-index:2600;
}

.nav-links.active~.language-switcher{
    right:0;
}

.language-switcher button{

    width:46px;
    height:46px;

    border:none;
    border-radius:50%;

    background:var(--primary);

    color:#fff;
}

/* ---------- HERO ---------- */

.hero{

    min-height:100svh;

    padding:120px 20px 60px;

    margin:0;

    text-align:center;
}

.hero-content{

    margin:0 auto;

    width:100%;

    max-width:600px;

    transform:none;
}

.hero h1{

    font-size:2.2rem;

    line-height:1.2;

    margin:0 0 20px;
}

.hero p{

    font-size:1rem;

    line-height:1.8;
}

.hero-buttons{

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:16px;

    margin-top:35px;
}

.hero-buttons a{

    width:100%;

    max-width:320px;
}

/* ---------- GRIDS ---------- */

.about-grid,
.services-grid,
.team-grid,
.ambient-features,
.social-grid{

    grid-template-columns:1fr;
}

.gallery-grid{

    grid-template-columns:1fr;

    gap:18px;
}

/* ---------- CARDS ---------- */

.about-card,
.service-card,
.doctor-card,
.news-card,
.social-card,
.feature-box,
.ambient-card{

    width:100%;

    padding:24px;

    border-radius:22px;
}

/* ---------- IMAGES ---------- */

.logo img{

    width:95px;

    height:auto;

    margin-top:20px;
}

.doctor-card img{

    width:190px;

    height:240px;

    object-fit:cover;
}

.gallery-grid img{

    height:240px;

    object-fit:cover;
}

/* ---------- TITLES ---------- */

.section-title h2{
    font-size:34px;
}

.about-story h2{
    font-size:34px;
}

.cta h2{
    font-size:34px;
}

.socials-title h1,
.socials-hero h1,
.news-hero h1{
    font-size:2.3rem;
}

/* ---------- TEXT ---------- */

.about-story p{

    width:100%;

    padding:25px;

    font-size:16px;
}

.hero p,
.news-card p,
.feature-box p,
.service-card p{

    font-size:16px;
}

/* ---------- CONTACT ---------- */

.email-actions{

    flex-direction:column;
}

.email-btn,
.copy-btn,
.btn-gold,
.btn-outline{

    width:100%;

    max-width:320px;

    justify-content:center;
}

/* ---------- FLOATING UI ---------- */

.floating-ui{

    position:fixed;

    left:50%;

    bottom:20px;

    top:auto;

    transform:translateX(-50%);

    width:92%;

    padding:12px;

    flex-direction:column;

    gap:10px;
}

/* ---------- FOOTER ---------- */

.footer-grid{

    grid-template-columns:1fr;

    gap:35px;

    text-align:center;
}

img{
    max-width:100%;
    height:auto;
}

button,
a{
    touch-action:manipulation;
}

*{
    -webkit-tap-highlight-color:transparent;
}

}

/* =========================
MOBILE HERO BUTTONS
========================= */

@media (max-width:768px){

    .socials-hero{
        min-height:100vh;
        padding:120px 20px 40px;
    }

    .hero-social-links{

        position:static;

        display:flex;
        flex-direction:column;

        align-items:center;
        justify-content:center;

        gap:18px;

        margin-top:40px;

        padding:0;
    }

    .hero-box{

        width:100%;
        max-width:320px;
        height:70px;

        font-size:20px;
    }

    .hero-box img{
        width:28px;
        height:28px;
    }

    .down-arrow{
        font-size:22px;
    }

}

/* =========================
CENTER SOCIAL FEEDS MOBILE
========================= */

@media (max-width:768px){

    .social-grid{
        display:flex;
        flex-direction:column;
        align-items:center;
        gap:30px;
    }

    .social-card{
        width:100%;
        max-width:380px;
        margin:0 auto;
        padding:20px;
        margin-top: 100px2;
    }

    .social-card iframe,
    .social-card .elfsight-app-d77d7098-ec3b-4764-a3e1-320081dbea58,
    .social-card .elfsight-app-b3fc1f03-a7be-448e-bc42-e752b58fc012{

        width:100% !important;
        max-width:100% !important;
        margin:0 auto !important;
    }

}