

/* ================= BASE ================= */
html, body {
  background-color: #022c22; /* jungle-950 */
}

p {
  line-height: 1.8;
}

.text-justify {
  text-align: justify;
  text-justify: inter-word;
}

/* ================= NAV ================= */
.nav-active {
  color: #facc15;
  border-bottom: 2px solid #facc15;
  padding-bottom: 2px;
}

/* ================= REVEAL SYSTEM  ================= */
.reveal-on-scroll {
  opacity: 0;
  transform: translateY(40px);
  transition: all 0.8s ease;
}

.reveal-active {
  opacity: 1;
  transform: translateY(0);
}
.reveal-on-scroll {
  will-change: transform, opacity;
}
/* ================= GOLD LINE ================= */
.gold-line {
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.9s ease;
}

.gold-line-active {
  transform: scaleX(1);
}

/* ================= TEXT ANIMATION ================= */
@keyframes fadeUp {
  from {
    opacity: 0;
    transform: translateY(28px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.animate-fade-up {
  opacity: 0;
  animation: fadeUp 1.2s ease-out forwards;
}

.animate-delay-1 { animation-delay: .2s; }
.animate-delay-2 { animation-delay: .4s; }
.animate-delay-3 { animation-delay: .6s; }

/* ================= HERO IMAGE SYSTEM ================= */

/* Fade-in */
@keyframes heroFade {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* Breathing */
@keyframes heroBreathe {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.06); }
}

/* HERO WRAPPER → CLEAN (no background block) */
.hero-hover {
  position: relative;
  overflow: hidden;
  border-radius: 1.75rem;

  /* REMOVE old background completely */
  background: transparent;

  /* GOLD BORDER */
  border: 1px solid rgba(250,204,21,0.35);

  /* SOFT PREMIUM SHADOW */
  box-shadow: 
    0 25px 70px rgba(0,0,0,0.45),
    0 0 25px rgba(250,204,21,0.12);

  margin-left: auto;
}

/* HERO IMAGE */
.hero-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 1.75rem;

  animation:
    heroFade 1.2s ease-out forwards,
    heroBreathe 6s ease-in-out infinite 1.2s;

  transition: transform 0.6s ease;
}

/* HOVER ZOOM */
.hero-hover:hover .hero-img {
  transform: scale(1.08);
}

/* OPTIONAL: subtle divine glow */
.hero-hover::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: 0 0 40px rgba(250,204,21,0.15);
  pointer-events: none;
}

/* TYPOGRAPHY (unchanged) */
body {
  font-family: 'Quicksand', sans-serif;
}

h1, h2, h3 {
  font-family: 'Cinzel', serif;
}
/* ================= HOSPITAL SECTION ================= */

/* Wrapper alignment fix */
.hospital-grid {
  align-items: center; /* ensures vertical alignment */
}

/* IMAGE WRAPPER */
.hospital-img-wrap {
  overflow: hidden;
  border-radius: 1.75rem;
  border: 1px solid rgba(250,204,21,0.35); /* thin gold */
  transition: all 0.5s ease;
}

/* IMAGE */
.hospital-img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.6s ease;
}

/* IMAGE HOVER */
.hospital-img-wrap:hover .hospital-img {
  transform: scale(1.08);
}

/* TEXT CARD */
.hospital-card {
  border-radius: 1.75rem;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(2,44,34,0.6);
  backdrop-filter: blur(10px);
  padding: 2.5rem;
  transition: all 0.5s ease;
}

/* TEXT CARD HOVER */
.hospital-card:hover {
  transform: scale(1.04);
  border-color: rgba(250,204,21,0.35);
}
.hospital-img-wrap:hover {
  box-shadow: 0 18px 50px rgba(0,0,0,0.35);
}
/* ================= DOCTOR SECTION ================= */

/* Wrapper alignment */
.doctor-grid {
  align-items: center;
}

/* IMAGE WRAPPER */
.doctor-img-wrap {
  overflow: hidden;
  border-radius: 1.75rem;
  border: 1px solid rgba(250,204,21,0.35);
  transition: all 0.5s ease;
}

/* IMAGE */
.doctor-img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.6s ease;
}

/* IMAGE HOVER */
.doctor-img-wrap:hover .doctor-img {
  transform: scale(1.08);
}

/* TEXT CARD */
.doctor-card {
  border-radius: 1.75rem;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(6,78,59,0.6); /* slightly different from hospital for depth */
  backdrop-filter: blur(10px);
  padding: 2.5rem;
  transition: all 0.5s ease;
}

/* TEXT CARD HOVER */
.doctor-card:hover {
  transform: scale(1.04);
  border-color: rgba(250,204,21,0.35);
}

/* Optional premium shadow on hover */
.doctor-img-wrap:hover {
  box-shadow: 0 18px 50px rgba(0,0,0,0.35);
}
/* FAQ PREVIEW CARD */
.faq-preview-card {
  min-width: 280px;
  max-width: 320px;

  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(250,204,21,0.25);
  border-radius: 1.75rem;

  padding: 1.8rem;

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

  transition: all 0.4s ease;

  display: block;
}

/* TEXT */
.faq-preview-card h3 {
  color: #facc15;
  font-size: 1.2rem;
  margin-bottom: 0.6rem;
  font-family: 'Cinzel', serif;
}

.faq-preview-card p {
  color: #e7e5e4;
  font-size: 1.05rem;
  line-height: 1.7;
}

/* HOVER EFFECT */
.faq-preview-card:hover {
  transform: scale(1.05);
  border-color: rgba(250,204,21,0.5);
  box-shadow: 0 18px 50px rgba(0,0,0,0.35);
}

/* SCROLL SMOOTHNESS */
.faq-preview-card {
  scroll-snap-align: start;
}

.flex {
  scroll-snap-type: x mandatory;
}
/* ================= LUXURY ACCREDITATION BADGES ================= */

.badge-wrapper{
display:flex;
justify-content:center;
gap:80px;
flex-wrap:wrap;
padding-top:6px;
padding-bottom:6px;
}

/* badge card */

.badge-card{

width:110px;
height:70px;

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

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

border-radius:14px;

border:1px solid rgba(250,204,21,0.35);

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

position:relative;

overflow:visible;

transition:all .35s ease;

}

/* badge image */

.badge-card img{

max-height:38px;
width:auto;
z-index:3;

}


/* hover zoom */

.badge-card:hover{

transform:scale(1.55);

border-color:#facc15;

background:rgba(2,44,34,0.95);

box-shadow:
0 25px 60px rgba(0,0,0,0.5),
0 0 18px rgba(250,204,21,0.25);

z-index:20;

}

/* ================= BADGE TEXT PANEL ================= */

.badge-info{

position:absolute;

bottom:100%;                 /* text above badge */

left:50%;

transform:translateX(-50%) translateY(10px);

margin-bottom:8px;

width:140px;

padding:6px 8px;

font-size:11px;

line-height:1.3;

text-align:center;

color:#facc15;
font-weight:500;

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

backdrop-filter:blur(6px);

border-radius:8px;

border:1px solid rgba(250,204,21,0.25);

opacity:1;

pointer-events:none;

transition:all .35s ease;

}

/* reveal text on hover */


/* ================= MOBILE BADGE TEXT ================= */

@media (max-width:768px){

.badge-info{

bottom:100%;      /* keep tooltip above badge */

top:auto;

margin-bottom:8px;

font-size:10px;

width:120px;

}

}
/* CERTIFICATION TITLE */

.certifications-title{

text-align:center;

margin-top:40px;
margin-bottom:30px;

font-size:13px;

letter-spacing:3px;

color:#facc15;

font-weight:500;

text-transform:uppercase;

}

.cert-line{

width:120px;
height:1px;

margin:10px auto 0;

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

}
