/* ═══════════════════════════════════════════════════════════════
   APNA DENTAL — Complete Dental Aggregator Platform Design System
   v2.0 | Rich gradients · Animations · Professional UI
   All Laravel/PHP functionality preserved.
   ═══════════════════════════════════════════════════════════════ */

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

/* ── Design Tokens ────────────────────────────────────────── */
:root {
  /* Brand Colors */
  --c-teal:      #35b6b4;
  --c-teal-d:    #2a9896;
  --c-teal-l:    #e0f7f6;
  --c-navy:      #0a2540;
  --c-navy-d:    #071a2e;
  --c-navy-l:    #e3eaf3;
  --c-pink:      #e74e84;
  --c-pink-d:    #c9336b;
  --c-pink-l:    #fde8ef;
  --c-gold:      #f59e0b;
  --c-gold-l:    #fef3c7;
  --c-purple:    #7c3aed;
  --c-purple-l:  #ede9fe;
  --c-green:     #10b981;
  --c-green-l:   #d1fae5;
  --c-coral:     #f97316;
  --c-coral-l:   #ffedd5;

  /* Gradients */
  --g-hero:        linear-gradient(135deg, #071526 0%, #0d2845 30%, #0a2540 60%, #112240 100%);
  --g-teal:        linear-gradient(135deg, #35b6b4 0%, #2a9896 100%);
  --g-pink:        linear-gradient(135deg, #e74e84 0%, #c9336b 100%);
  --g-navy:        linear-gradient(135deg, #0a2540 0%, #1a3a5c 100%);
  --g-gold:        linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
  --g-purple:      linear-gradient(135deg, #7c3aed 0%, #6d28d9 100%);
  --g-green:       linear-gradient(135deg, #10b981 0%, #059669 100%);
  --g-coral:       linear-gradient(135deg, #f97316 0%, #ea580c 100%);
  --g-mesh-1:      linear-gradient(135deg, #071526 0%, #0d2845 25%, #1a1042 50%, #0d2845 75%, #071526 100%);
  --g-brand-mix:   linear-gradient(135deg, #0a2540 0%, #1a3a5c 33%, #35b6b4 66%, #e74e84 100%);
  --g-warm:        linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%);
  --g-cool:        linear-gradient(135deg, #a1c4fd 0%, #c2e9fb 100%);

  /* Shadows */
  --sh-sm:   0 2px 8px rgba(0,0,0,.08);
  --sh-md:   0 4px 20px rgba(0,0,0,.1);
  --sh-lg:   0 8px 40px rgba(0,0,0,.12);
  --sh-xl:   0 16px 60px rgba(0,0,0,.15);
  --sh-teal: 0 8px 30px rgba(53,182,180,.35);
  --sh-pink: 0 8px 30px rgba(231,78,132,.35);
  --sh-navy: 0 8px 30px rgba(10,37,64,.25);

  /* Typography */
  --ff-head: 'Poppins', sans-serif;
  --ff-body: 'Inter', sans-serif;

  /* Motion */
  --ease-b:  cubic-bezier(0.34, 1.56, 0.64, 1);
  --ease-s:  cubic-bezier(0.4, 0, 0.2, 1);
  --t-fast:  0.18s;
  --t-med:   0.32s;
  --t-slow:  0.55s;
}

html { scroll-behavior: smooth; }
body { font-family: var(--ff-body); overflow-x: hidden; }

/* ═══════════════════════════════════════════════════════════════
   KEYFRAME LIBRARY
   ═══════════════════════════════════════════════════════════════ */
@keyframes fadeUp   { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:none} }
@keyframes fadeDown { from{opacity:0;transform:translateY(-20px)} to{opacity:1;transform:none} }
@keyframes fadeLeft { from{opacity:0;transform:translateX(-28px)} to{opacity:1;transform:none} }
@keyframes fadeRight{ from{opacity:0;transform:translateX(28px)}  to{opacity:1;transform:none} }
@keyframes scaleIn  { from{opacity:0;transform:scale(.88)} to{opacity:1;transform:none} }
@keyframes float    { 0%,100%{transform:translateY(0)}  50%{transform:translateY(-16px)} }
@keyframes floatX   { 0%,100%{transform:translateX(0)}  50%{transform:translateX(10px)} }
@keyframes spin     { to{transform:rotate(360deg)} }
@keyframes pulseRing{ 0%{box-shadow:0 0 0 0 rgba(53,182,180,.5)} 100%{box-shadow:0 0 0 16px rgba(53,182,180,0)} }
@keyframes shimmer  { from{background-position:-200% center} to{background-position:200% center} }
@keyframes gradShift{ 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }
@keyframes particleFloat { 0%{transform:translateY(0) rotate(0deg);opacity:.8} 100%{transform:translateY(-100vh) rotate(360deg);opacity:0} }
@keyframes rippleOut{ 0%{transform:scale(0);opacity:.5} 100%{transform:scale(2.8);opacity:0} }
@keyframes typewriter{ from{width:0} to{width:100%} }
@keyframes blink    { 0%,100%{opacity:1} 50%{opacity:0} }
@keyframes heartbeat{ 0%,100%{transform:scale(1)} 14%{transform:scale(1.3)} 28%{transform:scale(1)} 42%{transform:scale(1.2)} 70%{transform:scale(1)} }
@keyframes countUp  { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:none} }

/* ═══════════════════════════════════════════════════════════════
   SCROLL REVEAL
   ═══════════════════════════════════════════════════════════════ */
.reveal,.reveal-left,.reveal-right{transition:opacity var(--t-slow) var(--ease-s),transform var(--t-slow) var(--ease-s)}
.reveal          { opacity:0; transform:translateY(28px) }
.reveal-left     { opacity:0; transform:translateX(-28px) }
.reveal-right    { opacity:0; transform:translateX(28px) }
.reveal.revealed,.reveal-left.revealed,.reveal-right.revealed { opacity:1; transform:none }
.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}
.delay-4{transition-delay:.32s}.delay-5{transition-delay:.40s}.delay-6{transition-delay:.48s}

/* ═══════════════════════════════════════════════════════════════
   TOP ANNOUNCEMENT BAR
   ═══════════════════════════════════════════════════════════════ */
.ad-announcement {
  background: linear-gradient(90deg, var(--c-navy) 0%, #1a3a5c 50%, var(--c-navy) 100%);
  background-size: 200% auto;
  animation: shimmer 6s linear infinite;
  text-align: center;
  padding: 9px 44px;
  font-size: .78rem;
  font-weight: 500;
  color: rgba(255,255,255,.9);
  letter-spacing: .03em;
  position: relative;
}
.ad-announcement a { color: var(--c-teal); font-weight: 700; text-decoration: none }
.ad-announcement a:hover { color: var(--c-pink) }

/* ═══════════════════════════════════════════════════════════════
   HERO SECTION — Dental Platform First Impact
   ═══════════════════════════════════════════════════════════════ */
.home-hero-bg {
  position: relative;
  background: var(--g-mesh-1);
  background-size: 400% 400%;
  animation: gradShift 18s ease infinite;
  overflow: hidden;
  min-height: 560px;
}

/* Mesh gradient orbs */
.home-hero-bg::before {
  content: '';
  position: absolute;
  width: 600px; height: 600px;
  border-radius: 50%;
  top: -180px; right: -150px;
  background: radial-gradient(circle, rgba(53,182,180,.18) 0%, transparent 65%);
  pointer-events: none;
  animation: float 12s ease-in-out infinite;
}
.home-hero-bg::after {
  content: '';
  position: absolute;
  width: 400px; height: 400px;
  border-radius: 50%;
  bottom: -100px; left: -100px;
  background: radial-gradient(circle, rgba(231,78,132,.14) 0%, transparent 65%);
  pointer-events: none;
  animation: float 10s ease-in-out infinite reverse;
}

/* Floating dental particles */
.hero-particle {
  position: absolute;
  font-size: 1.5rem;
  opacity: 0;
  pointer-events: none;
  animation: particleFloat linear infinite;
}

/* Hero inner wrapper */
.hero-hme-top-content {
  padding: 56px 16px 32px !important;
  min-height: 340px;
}

/* Hero badge */
.cstm-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(53,182,180,.35);
  background: rgba(53,182,180,.1) !important;
  backdrop-filter: blur(10px);
  color: rgba(255,255,255,.92) !important;
  font-size: .78rem;
  font-weight: 600;
  letter-spacing: .04em;
  padding: 7px 20px !important;
  margin-bottom: 22px;
  border-radius: 100px !important;
  animation: fadeDown .7s var(--ease-s) both;
}
.cstm-badge span { color: var(--c-teal); font-weight: 700 }

/* Hero headline */
.hero-hme-top-content h1 {
  font-family: var(--ff-head);
  font-size: clamp(2rem, 5vw, 3.4rem);
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: -.03em;
  color: #fff;
  animation: fadeDown .8s var(--ease-s) .1s both;
  margin-bottom: 16px !important;
}
/* Gradient word inside h1 */
.hero-hme-top-content h1 .grad-word {
  background: linear-gradient(135deg, var(--c-teal) 0%, #7dd3fc 50%, var(--c-pink) 100%);
  background-size: 200%;
  animation: shimmer 4s linear infinite;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.hero-hme-top-content p {
  color: rgba(255,255,255,.75);
  font-size: 1.05rem;
  max-width: 540px;
  margin: 0 auto 28px;
  animation: fadeUp .8s var(--ease-s) .22s both;
  line-height: 1.65;
}

/* Hero quick trust pills row */
.hero-trust-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  margin-bottom: 28px;
  animation: fadeUp .8s var(--ease-s) .32s both;
}
.hero-trust-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 100px;
  padding: 6px 14px;
  font-size: .78rem;
  font-weight: 600;
  color: rgba(255,255,255,.9);
  backdrop-filter: blur(6px);
  transition: all .22s var(--ease-b);
}
.hero-trust-pill:hover {
  background: rgba(53,182,180,.2);
  border-color: rgba(53,182,180,.5);
  transform: translateY(-2px);
}
.hero-trust-pill .pill-dot {
  width: 7px; height: 7px;
  border-radius: 50%;
}
.hero-trust-pill .pill-dot.green { background: #4ade80; animation: pulseRing 2s infinite }
.hero-trust-pill .pill-dot.teal  { background: var(--c-teal) }
.hero-trust-pill .pill-dot.pink  { background: var(--c-pink) }
.hero-trust-pill .pill-dot.gold  { background: var(--c-gold) }

/* Hero search card */
.search-doctor-section {
  animation: fadeUp .9s var(--ease-s) .38s both;
  padding-bottom: 0 !important;
}
.search-doctor-section form > .col-12.col-lg-8 > .bg-white {
  border-radius: 20px 0 0 20px !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.22) !important;
  border: 1.5px solid rgba(255,255,255,.8) !important;
}
.search-doctor-section form > .col-4 > .rihgt {
  border-radius: 0 20px 20px 0 !important;
  background: linear-gradient(160deg, #1a3a5c 0%, #0a2540 60%, #112240 100%) !important;
  position: relative; overflow: hidden;
}
.search-doctor-section form > .col-4 > .rihgt::before {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(circle at 80% 20%, rgba(53,182,180,.28) 0%, transparent 60%);
}

/* Search input */
.keywordSearch, input.keywordSearch {
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 10px !important;
  font-size: .9rem;
  transition: border-color .2s, box-shadow .2s;
}
.keywordSearch:focus, input.keywordSearch:focus {
  border-color: var(--c-teal) !important;
  box-shadow: 0 0 0 4px rgba(53,182,180,.15) !important;
  outline: none;
}

/* Quick tag buttons */
.search_bar_wrraper .btn-outline-secondary {
  border-color: #e2e8f0; color: #64748b; font-size: .74rem;
  transition: all .2s var(--ease-b);
}
.search_bar_wrraper .btn-outline-secondary:hover {
  border-color: var(--c-teal); color: var(--c-teal);
  background: var(--c-teal-l); transform: translateY(-2px);
}

/* ═══════════════════════════════════════════════════════════════
   HERO STATS BAR
   ═══════════════════════════════════════════════════════════════ */
.hero-stats-bar {
  background: rgba(255,255,255,.07);
  border-top: 1px solid rgba(255,255,255,.1);
  padding: 16px 0;
  backdrop-filter: blur(8px);
}
.hero-stats-bar .stat-item {
  text-align: center;
  padding: 8px 24px;
  border-right: 1px solid rgba(255,255,255,.12);
  transition: background .2s;
}
.hero-stats-bar .stat-item:last-child { border-right: none }
.hero-stats-bar .stat-item:hover { background: rgba(255,255,255,.04) }
.hero-stats-bar .stat-num {
  font-size: 1.5rem; font-weight: 900; color: #fff;
  font-family: var(--ff-head); line-height: 1;
  display: block; margin-bottom: 2px;
}
.hero-stats-bar .stat-num span { color: var(--c-teal) }
.hero-stats-bar .stat-label {
  font-size: .68rem; color: rgba(255,255,255,.6);
  font-weight: 600; text-transform: uppercase; letter-spacing: .06em;
}

/* ═══════════════════════════════════════════════════════════════
   SPONSORED ADS SLIDER SECTION
   ═══════════════════════════════════════════════════════════════ */
.sponsored-section {
  background: #f8fafc;
  padding: 24px 0;
  border-bottom: 1px solid #e2e8f0;
}
.sponsored-section .section-label {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: var(--c-gold-l);
  color: #92400e;
  border: 1px solid rgba(245,158,11,.3);
  border-radius: 6px;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: 3px 10px;
  margin-bottom: 12px;
}
/* Sponsor card */
.sponsor-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  border: 1.5px solid #f1f5f9;
  box-shadow: var(--sh-sm);
  transition: transform var(--t-med) var(--ease-b), box-shadow var(--t-med);
  cursor: pointer;
  position: relative;
}
.sponsor-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--sh-lg);
}
.sponsor-card .sponsor-badge {
  position: absolute; top: 10px; left: 10px; z-index: 2;
  background: var(--c-gold-l);
  color: #92400e;
  border: 1px solid rgba(245,158,11,.25);
  border-radius: 6px;
  font-size: .62rem; font-weight: 800;
  letter-spacing: .08em; text-transform: uppercase;
  padding: 2px 8px;
}
.sponsor-card-img {
  width: 100%; height: 140px; object-fit: cover;
  transition: transform .5s var(--ease-s);
}
.sponsor-card:hover .sponsor-card-img { transform: scale(1.05) }
.sponsor-card-body { padding: 14px }
.sponsor-card-brand {
  display: flex; align-items: center; gap: 8px; margin-bottom: 6px;
}
.sponsor-card-logo {
  width: 32px; height: 32px; border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1rem; flex-shrink: 0;
}
.sponsor-card-name { font-size: .88rem; font-weight: 700; color: var(--c-navy) }
.sponsor-card-tag { font-size: .7rem; color: #64748b }
.sponsor-card-cta {
  display: block; text-align: center; margin-top: 10px;
  background: var(--g-teal);
  color: #fff; border-radius: 8px;
  padding: 8px; font-size: .78rem; font-weight: 700;
  text-decoration: none;
  transition: opacity .18s, transform .18s var(--ease-b);
}
.sponsor-card-cta:hover { opacity: .9; transform: translateY(-1px); color: #fff }

/* Mid-page sponsored banner (wide) */
.sponsored-banner-strip {
  padding: 20px 0;
  background: linear-gradient(90deg, #f0f9ff 0%, #e0f7f6 50%, #fce7f3 100%);
  border-top: 1px solid #e2e8f0;
  border-bottom: 1px solid #e2e8f0;
}
.sponsor-strip-card {
  background: #fff;
  border-radius: 14px;
  padding: 18px 20px;
  display: flex;
  align-items: center;
  gap: 14px;
  border: 1.5px solid #f1f5f9;
  box-shadow: var(--sh-sm);
  transition: transform .25s var(--ease-b), box-shadow .25s;
  height: 100%;
}
.sponsor-strip-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--sh-md);
}
.sponsor-strip-icon {
  width: 52px; height: 52px; border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem; flex-shrink: 0;
}
.sponsor-strip-icon.teal    { background: var(--c-teal-l) }
.sponsor-strip-icon.pink    { background: var(--c-pink-l) }
.sponsor-strip-icon.gold    { background: var(--c-gold-l) }
.sponsor-strip-icon.purple  { background: var(--c-purple-l) }
.sponsor-strip-icon.green   { background: var(--c-green-l) }
.sponsor-strip-title { font-size: .88rem; font-weight: 700; color: var(--c-navy); margin-bottom: 2px }
.sponsor-strip-sub   { font-size: .74rem; color: #64748b; line-height: 1.4 }
.sponsor-strip-ad-label {
  position: absolute; top: 6px; right: 10px;
  font-size: .6rem; color: #94a3b8; font-weight: 600; letter-spacing: .06em;
}

/* ═══════════════════════════════════════════════════════════════
   PLATFORM FEATURES BAR (replaces plain brand slider info)
   ═══════════════════════════════════════════════════════════════ */
.brandSliderActionSection {
  background: linear-gradient(135deg, #f8fafc 0%, #e0f7f6 50%, #fce7f3 100%);
  border-top: none !important;
}
.brandSliderActionSection .container-fluid {
  border: none !important;
}
.platform-features-bar {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  border: 1.5px solid #e2e8f0;
  border-radius: 20px;
  overflow: hidden;
  background: #fff;
  box-shadow: var(--sh-md);
}
@media(max-width:991px) { .platform-features-bar { grid-template-columns: repeat(3,1fr) } }
@media(max-width:575px) { .platform-features-bar { grid-template-columns: repeat(2,1fr) } }

.pf-item {
  padding: 24px 20px;
  text-align: center;
  border-right: 1px solid #f1f5f9;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: all .3s var(--ease-b);
}
.pf-item:last-child { border-right: none }
.pf-item::before {
  content: '';
  position: absolute; bottom: 0; left: 0; right: 0;
  height: 3px; transform: scaleX(0);
  transition: transform .3s var(--ease-s);
}
.pf-item:hover { background: linear-gradient(180deg, rgba(53,182,180,.05), rgba(53,182,180,.02)) }
.pf-item:hover::before { transform: scaleX(1) }
.pf-item.teal::before   { background: var(--g-teal) }
.pf-item.pink::before   { background: var(--g-pink) }
.pf-item.gold::before   { background: var(--g-gold) }
.pf-item.purple::before { background: var(--g-purple) }
.pf-item.green::before  { background: var(--g-green) }

.pf-icon-wrap {
  width: 56px; height: 56px;
  border-radius: 16px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.5rem;
  margin: 0 auto 12px;
  transition: transform .3s var(--ease-b);
}
.pf-item:hover .pf-icon-wrap { transform: scale(1.12) rotate(-5deg) }
.pf-icon-wrap.teal   { background: var(--c-teal-l); }
.pf-icon-wrap.pink   { background: var(--c-pink-l); }
.pf-icon-wrap.gold   { background: var(--c-gold-l); }
.pf-icon-wrap.purple { background: var(--c-purple-l); }
.pf-icon-wrap.green  { background: var(--c-green-l); }

.pf-label { font-size: .7rem; color: #94a3b8; font-weight: 600; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 4px }
.pf-title  { font-size: .95rem; font-weight: 700; color: var(--c-navy); margin-bottom: 6px; transition: color .2s }
.pf-item:hover .pf-title { color: var(--c-teal) }
.pf-count  { font-size: 1.1rem; font-weight: 900; color: var(--c-teal) }
.pf-btn    {
  display: inline-block; margin-top: 10px;
  font-size: .72rem; font-weight: 700;
  background: var(--g-teal); color: #fff;
  border-radius: 100px; padding: 5px 14px;
  text-decoration: none; border: none;
  transition: all .2s var(--ease-b);
}
.pf-btn:hover { transform: translateY(-2px); box-shadow: var(--sh-teal); color: #fff }

/* ═══════════════════════════════════════════════════════════════
   RECOMMENDATION TAGS
   ═══════════════════════════════════════════════════════════════ */
.rec-tag {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: .66rem; font-weight: 800;
  letter-spacing: .04em; text-transform: uppercase;
  border-radius: 6px; padding: 3px 8px;
  white-space: nowrap;
}
.rec-tag.top-rated    { background: linear-gradient(135deg,#fef3c7,#fde68a); color:#92400e; border:1px solid #f59e0b22 }
.rec-tag.nearby       { background: linear-gradient(135deg,#d1fae5,#a7f3d0); color:#065f46; border:1px solid #10b98122 }
.rec-tag.available    { background: linear-gradient(135deg,#dbeafe,#bfdbfe); color:#1e40af; border:1px solid #3b82f622 }
.rec-tag.budget       { background: linear-gradient(135deg,#ede9fe,#ddd6fe); color:#5b21b6; border:1px solid #7c3aed22 }
.rec-tag.female       { background: linear-gradient(135deg,#fce7f3,#fbcfe8); color:#9d174d; border:1px solid #ec489922 }
.rec-tag.sponsored    { background: linear-gradient(135deg,#fef3c7,#fde68a); color:#92400e; border:1px solid #f59e0b22 }
.rec-tag.new          { background: linear-gradient(135deg,#d1fae5,#6ee7b7); color:#065f46; border:1px solid #10b98133 }
.rec-tag.verified     { background: linear-gradient(135deg,var(--c-teal-l),#b2dfdb); color:#004d40; border:1px solid #35b6b422 }
.rec-tag.premium      { background: linear-gradient(135deg,#0a2540,#1a3a5c); color:#fff }
.rec-tag.urgent       { background: linear-gradient(135deg,#fee2e2,#fecaca); color:#991b1b; border:1px solid #ef444422 }

/* Tags row */
.rec-tags-row {
  display: flex; flex-wrap: wrap; gap: 5px;
  margin-bottom: 8px;
}

/* ═══════════════════════════════════════════════════════════════
   DOCTOR CARDS — Enhanced with recommendation tags
   ═══════════════════════════════════════════════════════════════ */
.most-viewed-doctors,
.most-viewed-clinics {
  background: linear-gradient(180deg, #f8fafc 0%, #fff 100%) !important;
}
.most-viewed-doctors .main_title h2,
.most-viewed-clinics .main_title h2 {
  font-family: var(--ff-head);
  font-size: 2rem; font-weight: 900;
  background: var(--g-brand-mix);
  background-size: 300% auto;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: shimmer 8s linear infinite;
}
.main_title p {
  color: #64748b; font-size: .9rem; max-width: 480px; margin: 6px auto 0;
}

.box_list.doctor-card.home {
  border: none !important;
  border-radius: 20px !important;
  box-shadow: var(--sh-md) !important;
  overflow: hidden;
  transition: transform .35s var(--ease-b), box-shadow .35s !important;
  background: #fff !important;
  position: relative;
}
.box_list.doctor-card.home:hover {
  transform: translateY(-10px) !important;
  box-shadow: 0 24px 60px rgba(10,37,64,.18) !important;
}

/* Doctor image */
.box_list.doctor-card figure {
  overflow: hidden; margin: 0;
  height: 220px; border-radius: 20px 20px 0 0;
  position: relative;
}
.box_list.doctor-card figure img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform .5s var(--ease-s);
}
.box_list.doctor-card:hover figure img { transform: scale(1.07) }

/* Preview overlay */
.box_list.doctor-card figure .preview {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(10,37,64,.8) 0%, transparent 50%);
  display: flex; align-items: flex-end; justify-content: center;
  padding-bottom: 16px;
  opacity: 0; transition: opacity .3s;
}
.box_list.doctor-card:hover figure .preview { opacity: 1 }
.box_list.doctor-card figure .preview span {
  color: #fff; font-size: .78rem; font-weight: 700;
  background: rgba(255,255,255,.18);
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 100px; padding: 5px 16px;
  backdrop-filter: blur(4px);
}

/* Doctor wrapper */
.box_list.doctor-card .wrapper {
  padding: 16px 16px 60px;
  position: relative;
}
.box_list.doctor-card .wrapper small {
  font-size: .72rem; color: #94a3b8; font-weight: 600;
  text-transform: uppercase; letter-spacing: .05em;
}
.box_list.doctor-card .wrapper h3 {
  font-size: 1rem; font-weight: 800; color: var(--c-navy);
  margin-bottom: 4px; transition: color .2s;
  font-family: var(--ff-head);
}
.box_list.doctor-card:hover .wrapper h3 { color: var(--c-teal) }
.box_list.doctor-card .wrapper p {
  font-size: .8rem; color: #64748b; line-height: 1.5;
  display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2;
  -webkit-box-orient: vertical; overflow: hidden;
  margin-bottom: 8px;
}

/* Bottom action bar on card */
.box_list.doctor-card ul {
  background: linear-gradient(90deg, rgba(10,37,64,.97), rgba(26,58,92,.97));
  padding: 10px 14px !important;
  border-radius: 0 0 20px 20px;
  list-style: none; margin: 0;
}
.box_list.doctor-card ul li a {
  color: rgba(255,255,255,.85); font-size: .78rem;
  text-decoration: none; transition: color .18s;
}
.box_list.doctor-card ul li a:hover { color: var(--c-teal) }
.box_list.doctor-card ul li:last-child a {
  background: var(--g-teal);
  color: #fff; border-radius: 100px;
  padding: 5px 16px; font-weight: 700;
  transition: all .2s var(--ease-b);
  display: inline-block;
}
.box_list.doctor-card ul li:last-child a:hover {
  transform: scale(1.06);
  box-shadow: var(--sh-teal);
}

/* Free call button */
a.btn_listing.get_free_call {
  background: var(--g-teal) !important;
  color: #fff !important; border-radius: 100px;
  font-size: .72rem; padding: 5px 12px; border: none !important;
  font-weight: 700; transition: all .22s var(--ease-b);
  box-shadow: 0 3px 10px rgba(53,182,180,.3);
}
a.btn_listing.get_free_call:hover {
  transform: translateY(-2px) scale(1.04);
  box-shadow: 0 6px 20px rgba(53,182,180,.45);
}

/* Wishlist heart */
.wish_bt { transition: transform .25s var(--ease-b) }
.wish_bt:hover { transform: scale(1.35) !important }

/* ═══════════════════════════════════════════════════════════════
   CLINIC CARDS
   ═══════════════════════════════════════════════════════════════ */
.box_list.home.card {
  border: none !important;
  border-radius: 20px !important;
  box-shadow: var(--sh-md) !important;
  overflow: hidden;
  transition: transform .35s var(--ease-b), box-shadow .35s !important;
}
.box_list.home.card:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 24px 60px rgba(10,37,64,.14) !important;
}
.box_list.home.card h3.txt-primary  { color: var(--c-navy) !important; font-weight: 800; font-family: var(--ff-head) }
.box_list.home.card a.btn_1 { font-size: .78rem !important; padding: 8px 20px !important }

/* ═══════════════════════════════════════════════════════════════
   BOOK YOUR WAY SECTION
   ═══════════════════════════════════════════════════════════════ */
.book-your-way {
  padding: 72px 0;
  background: linear-gradient(135deg, var(--c-navy) 0%, #1a3a5c 50%, #0f3460 100%);
  position: relative; overflow: hidden;
}
.book-your-way::before {
  content: '';
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse at 15% 60%, rgba(53,182,180,.2) 0%, transparent 50%),
    radial-gradient(ellipse at 85% 30%, rgba(231,78,132,.15) 0%, transparent 50%),
    radial-gradient(ellipse at 50% 90%, rgba(124,58,237,.12) 0%, transparent 50%);
  pointer-events: none;
}
.book-your-way .section-chip {
  display: inline-flex; align-items: center; gap: 7px;
  background: rgba(53,182,180,.15);
  border: 1px solid rgba(53,182,180,.3);
  border-radius: 100px; padding: 7px 18px;
  font-size: .75rem; font-weight: 700;
  color: var(--c-teal); letter-spacing: .06em;
  text-transform: uppercase; margin-bottom: 16px;
}
.book-your-way h2 {
  font-family: var(--ff-head);
  font-size: clamp(1.6rem, 3vw, 2.4rem);
  font-weight: 900; color: #fff;
  margin-bottom: 10px; line-height: 1.2;
  background: none !important; -webkit-text-fill-color: #fff !important;
}
.book-your-way p.sub { color: rgba(255,255,255,.65); font-size: .95rem; margin-bottom: 36px }

/* Consultation type cards */
.consult-type-card {
  border-radius: 24px;
  padding: 36px 28px;
  position: relative; overflow: hidden;
  cursor: pointer;
  transition: transform .35s var(--ease-b), box-shadow .35s;
  height: 100%;
}
.consult-type-card::after {
  content: '';
  position: absolute; inset: 0;
  border-radius: 24px;
  opacity: 0;
  transition: opacity .3s;
  background: rgba(255,255,255,.05);
}
.consult-type-card:hover { transform: translateY(-8px); }
.consult-type-card:hover::after { opacity: 1 }

.consult-type-card.in-clinic {
  background: linear-gradient(135deg, #1a3a5c 0%, #0e2a45 100%);
  border: 1.5px solid rgba(53,182,180,.25);
  box-shadow: 0 8px 30px rgba(0,0,0,.2);
}
.consult-type-card.in-clinic:hover {
  box-shadow: 0 20px 60px rgba(53,182,180,.25);
  border-color: rgba(53,182,180,.5);
}
.consult-type-card.online {
  background: linear-gradient(135deg, #5b21b6 0%, #4c1d95 100%);
  border: 1.5px solid rgba(167,139,250,.25);
  box-shadow: 0 8px 30px rgba(0,0,0,.2);
}
.consult-type-card.online:hover {
  box-shadow: 0 20px 60px rgba(124,58,237,.3);
  border-color: rgba(167,139,250,.5);
}

.consult-icon-circle {
  width: 72px; height: 72px;
  border-radius: 20px;
  display: flex; align-items: center; justify-content: center;
  font-size: 2rem; margin-bottom: 20px;
  transition: transform .4s var(--ease-b);
}
.consult-type-card:hover .consult-icon-circle { transform: scale(1.15) rotate(-8deg) }
.consult-type-card.in-clinic .consult-icon-circle { background: rgba(53,182,180,.2); }
.consult-type-card.online    .consult-icon-circle { background: rgba(167,139,250,.2); }

.consult-type-card h3 {
  font-family: var(--ff-head);
  font-size: 1.3rem; font-weight: 800; color: #fff; margin-bottom: 8px;
}
.consult-type-card p { color: rgba(255,255,255,.68); font-size: .88rem; line-height: 1.6; margin-bottom: 20px }

.consult-feature-list { list-style: none; padding: 0; margin: 0 0 24px }
.consult-feature-list li {
  display: flex; align-items: center; gap: 10px;
  color: rgba(255,255,255,.82); font-size: .82rem;
  padding: 7px 0; border-bottom: 1px solid rgba(255,255,255,.06);
}
.consult-feature-list li:last-child { border-bottom: none }
.consult-feature-list li .cf-icon {
  width: 22px; height: 22px;
  border-radius: 6px; display: flex; align-items: center;
  justify-content: center; font-size: .78rem; flex-shrink: 0;
}
.in-clinic .cf-icon { background: rgba(53,182,180,.25); color: var(--c-teal) }
.online    .cf-icon { background: rgba(167,139,250,.25); color: #a78bfa }

.consult-cta {
  display: flex; align-items: center; justify-content: space-between;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 14px; padding: 14px 18px;
  text-decoration: none; transition: all .25s var(--ease-b);
}
.consult-cta:hover { background: rgba(255,255,255,.14); transform: translateX(4px) }
.consult-cta-text .label { font-size: .7rem; color: rgba(255,255,255,.5); font-weight: 600; text-transform: uppercase; letter-spacing: .06em }
.consult-cta-text .value { font-size: .92rem; font-weight: 700; color: #fff }
.consult-cta-arrow {
  width: 36px; height: 36px; border-radius: 50%;
  background: rgba(255,255,255,.12); display: flex;
  align-items: center; justify-content: center;
  color: #fff; font-size: 1rem; transition: transform .22s var(--ease-b);
}
.consult-cta:hover .consult-cta-arrow { transform: translateX(4px) }

/* ═══════════════════════════════════════════════════════════════
   DOCTOR QUICK PREVIEW (hover card details)
   ═══════════════════════════════════════════════════════════════ */
.doctor-quick-preview {
  position: absolute;
  top: 0; right: -100%; width: 280px;
  background: #fff;
  border-radius: 16px;
  box-shadow: var(--sh-xl);
  border: 1.5px solid #e2e8f0;
  padding: 20px;
  z-index: 10;
  opacity: 0;
  pointer-events: none;
  transition: all .3s var(--ease-b);
}
.box_list.doctor-card:hover .doctor-quick-preview {
  right: -290px; opacity: 1; pointer-events: all;
}
@media(max-width:1199px) {
  .doctor-quick-preview { display: none !important }
}
.preview-header { display: flex; align-items: center; gap: 12px; margin-bottom: 14px }
.preview-avatar {
  width: 52px; height: 52px; border-radius: 14px;
  overflow: hidden; flex-shrink: 0;
  border: 2px solid var(--c-teal-l);
}
.preview-avatar img { width: 100%; height: 100%; object-fit: cover }
.preview-name { font-size: .92rem; font-weight: 800; color: var(--c-navy); margin-bottom: 2px }
.preview-spec { font-size: .74rem; color: #64748b }
.preview-stat-row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; margin-bottom: 14px }
.preview-stat {
  text-align: center; padding: 8px 4px;
  background: #f8fafc; border-radius: 10px;
}
.preview-stat-num { font-size: .92rem; font-weight: 900; color: var(--c-navy); display: block }
.preview-stat-lbl { font-size: .62rem; color: #94a3b8; text-transform: uppercase; letter-spacing: .05em }
.preview-slots { margin-bottom: 14px }
.preview-slot-label { font-size: .7rem; font-weight: 700; color: #64748b; text-transform: uppercase; letter-spacing: .06em; margin-bottom: 8px }
.preview-slot-pills { display: flex; flex-wrap: wrap; gap: 5px }
.preview-slot-pill {
  background: var(--c-teal-l); color: var(--c-navy);
  font-size: .7rem; font-weight: 600; border-radius: 6px;
  padding: 4px 10px; cursor: pointer;
  transition: all .18s var(--ease-b);
}
.preview-slot-pill:hover {
  background: var(--c-teal); color: #fff; transform: scale(1.05)
}
.preview-book-btns { display: flex; gap: 8px }
.preview-book-btns a {
  flex: 1; text-align: center; border-radius: 10px;
  padding: 9px; font-size: .76rem; font-weight: 700;
  text-decoration: none; transition: all .2s var(--ease-b);
}
.preview-book-btns .btn-clinic {
  background: var(--g-teal); color: #fff;
}
.preview-book-btns .btn-online {
  background: var(--g-purple); color: #fff;
}
.preview-book-btns a:hover { transform: translateY(-2px); box-shadow: var(--sh-teal) }

/* ═══════════════════════════════════════════════════════════════
   DENTAL CONDITIONS — "Explore More"
   ═══════════════════════════════════════════════════════════════ */
.explore-more-section {
  background: linear-gradient(180deg, #fff 0%, #f0f9ff 100%);
}
.explore-more-section .section-heading-chip {
  font-size: .7rem; font-weight: 800;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--c-teal); background: var(--c-teal-l);
  border-radius: 100px; padding: 5px 14px;
  display: inline-block; margin-bottom: 8px;
}
.explore-more-section h2 {
  font-family: var(--ff-head);
  font-size: 1.6rem; font-weight: 800; color: var(--c-navy);
  background: none !important; -webkit-text-fill-color: var(--c-navy) !important;
}

/* Condition circle cards */
.video-card-slider .col-4,
.video-card-slider .col-sm-3,
.video-card-slider .col-md-2 {
  transition: transform .3s var(--ease-b);
}
.video-card-slider .col-4:hover,
.video-card-slider .col-sm-3:hover,
.video-card-slider .col-md-2:hover { transform: translateY(-6px) }

.video-card-slider .rounded-circle {
  transition: all .3s var(--ease-b);
  box-shadow: var(--sh-sm);
  background: linear-gradient(135deg, #dff5e5, #e0f7f6) !important;
}
.video-card-slider .col-4:hover .rounded-circle,
.video-card-slider .col-sm-3:hover .rounded-circle,
.video-card-slider .col-md-2:hover .rounded-circle {
  transform: scale(1.12);
  box-shadow: 0 8px 24px rgba(53,182,180,.25);
  background: linear-gradient(135deg, var(--c-teal-l), #b2dfdb) !important;
}
.video-card-slider p.fw-medium {
  font-size: .75rem; color: #334155; margin-top: 7px; transition: color .2s
}
.video-card-slider .col-4:hover p.fw-medium { color: var(--c-teal) }

/* ═══════════════════════════════════════════════════════════════
   DENTAL CONCERN CARDS
   ═══════════════════════════════════════════════════════════════ */
.dental-concern-section {
  background: linear-gradient(135deg, #fdf6ee 0%, #fff5f0 50%, #f0f9ff 100%);
}
label[for^="option"] {
  transition: all .3s var(--ease-b);
  cursor: pointer;
  border-radius: 16px !important;
}
label[for^="option"]:hover {
  transform: translateY(-6px);
  box-shadow: 0 14px 34px rgba(0,0,0,.12) !important;
  border-color: var(--c-teal) !important;
}
label[for^="option"]:has(input:checked) {
  border-color: var(--c-teal) !important;
  box-shadow: 0 0 0 3px rgba(53,182,180,.3),0 14px 34px rgba(53,182,180,.12) !important;
  transform: translateY(-4px);
}
label[for^="option"] img { transition: transform .4s var(--ease-s) }
label[for^="option"]:hover img { transform: scale(1.07) }

/* ═══════════════════════════════════════════════════════════════
   TREATMENTS SECTION
   ═══════════════════════════════════════════════════════════════ */
.services-category-tabs {
  border-radius: 20px !important; overflow: hidden;
  box-shadow: var(--sh-md); transition: box-shadow .3s;
}
.services-category-tabs:hover { box-shadow: var(--sh-lg) }
.services-category-tabs > nav {
  background: linear-gradient(90deg, var(--c-navy), #1a3a5c) !important;
}
.services-category-tabs .nav-link { color: #94a3b8 !important; font-size: .8rem; transition: all .2s }
.services-category-tabs .nav-link:hover { color: #fff !important; background: rgba(255,255,255,.08) !important }
.services-category-tabs .nav-link.active {
  color: #fff !important; background: rgba(255,255,255,.12) !important;
  border-bottom: 3px solid var(--c-teal) !important;
}
.list-group-item.doctor-treatments,
.list-group-item.clinic-treatments {
  cursor: pointer; transition: all .2s var(--ease-s);
  border-left: 3px solid transparent !important;
  font-size: .82rem;
}
.list-group-item.doctor-treatments:hover,
.list-group-item.clinic-treatments:hover {
  background: rgba(53,182,180,.06);
  border-left-color: var(--c-teal) !important;
  color: var(--c-teal);
  transform: translateX(3px);
}

/* ═══════════════════════════════════════════════════════════════
   PROMO ADS SLIDER CARDS
   ═══════════════════════════════════════════════════════════════ */
.introductory-slider-desktop > div {
  transition: transform .35s var(--ease-b), box-shadow .35s;
}
.introductory-slider-desktop > div:hover {
  transform: translateY(-8px) scale(1.02);
  box-shadow: 0 20px 50px rgba(0,0,0,.2) !important;
}
.introductory-slider-desktop .bg-primary {
  background: linear-gradient(135deg, #1565C0, #0d47a1) !important;
}
.introductory-slider-desktop .bg-success {
  background: linear-gradient(135deg, #1b5e20, #2e7d32) !important;
}
.introductory-slider-desktop .bg-danger {
  background: linear-gradient(135deg, #b71c1c, #c62828) !important;
}
.introductory-slider-desktop .bg-warning {
  background: linear-gradient(135deg, #e65100, #f57c00) !important;
}

/* ═══════════════════════════════════════════════════════════════
   HOW IT WORKS
   ═══════════════════════════════════════════════════════════════ */
.ad-how-it-works {
  padding: 80px 0;
  background: linear-gradient(135deg, #f8fafc 0%, #eaf7f7 60%, #fce7f3 100%);
}
.ad-how-it-works .top-heading { text-align: center; margin-bottom: 52px }

.ad-how-it-works__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px,1fr));
  gap: 24px;
}
.ad-how-it-works__card {
  background: #fff; border-radius: 22px;
  padding: 34px 24px; position: relative; overflow: hidden;
  box-shadow: var(--sh-sm); border: 1.5px solid #f1f5f9;
  transition: transform .35s var(--ease-b), box-shadow .35s;
}
.ad-how-it-works__card::before {
  content: ''; position: absolute;
  top: 0; left: 0; width: 4px; height: 100%;
  transform: scaleY(0); transform-origin: top;
  transition: transform .35s var(--ease-s);
}
.ad-how-it-works__card:nth-child(1)::before { background: var(--g-teal) }
.ad-how-it-works__card:nth-child(2)::before { background: var(--g-pink) }
.ad-how-it-works__card:nth-child(3)::before { background: var(--g-gold) }
.ad-how-it-works__card:nth-child(4)::before { background: var(--g-purple) }
.ad-how-it-works__card:hover { transform: translateY(-10px); box-shadow: var(--sh-lg) }
.ad-how-it-works__card:hover::before { transform: scaleY(1) }

.ad-how-it-works__num {
  font-size: 3.2rem; font-weight: 900; color: #f0f4f8;
  line-height: 1; margin-bottom: 12px; transition: color .3s;
  font-family: var(--ff-head);
}
.ad-how-it-works__card:hover .ad-how-it-works__num { color: rgba(53,182,180,.1) }
.ad-how-it-works__icon { font-size: 2rem; margin-bottom: 12px; display: block; transition: transform .4s var(--ease-b) }
.ad-how-it-works__card:hover .ad-how-it-works__icon { transform: scale(1.3) rotate(-8deg) }
.ad-how-it-works__title { font-size: 1rem; font-weight: 800; color: var(--c-navy); margin-bottom: 10px; font-family: var(--ff-head) }
.ad-how-it-works__desc { font-size: .82rem; color: #64748b; line-height: 1.65; margin: 0 }

/* ═══════════════════════════════════════════════════════════════
   AD-DOCTORS SECTION
   ═══════════════════════════════════════════════════════════════ */
.ad-doctors { padding: 80px 0; background: #fff }
.ad-doctors__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
  gap: 24px; margin-top: 32px;
}
.ad-doctors__card {
  background: #fff; border-radius: 22px;
  border: 1.5px solid #e2e8f0;
  box-shadow: var(--sh-sm);
  transition: transform .35s var(--ease-b), box-shadow .35s, border-color .35s;
  overflow: hidden;
}
.ad-doctors__card:hover {
  transform: translateY(-10px);
  box-shadow: 0 24px 60px rgba(10,37,64,.14);
  border-color: var(--c-teal);
}
.ad-doctors__card-header {
  padding: 20px; display: flex; align-items: flex-start; gap: 14px;
  background: linear-gradient(135deg, #f8fafc, #e0f7f6);
  border-bottom: 1px solid #f1f5f9;
}
.ad-doctors__avatar {
  width: 52px; height: 52px; border-radius: 14px;
  background: var(--g-navy);
  display: flex; align-items: center; justify-content: center; font-size: 1.4rem;
  flex-shrink: 0; transition: transform .35s var(--ease-b);
}
.ad-doctors__card:hover .ad-doctors__avatar { transform: scale(1.12) rotate(-5deg) }
.ad-doctors__name { font-size: .95rem; font-weight: 800; color: var(--c-navy); font-family: var(--ff-head) }
.ad-doctors__spec { font-size: .74rem; color: #64748b; margin-top: 2px }
.ad-doctors__rating-row { font-size: .74rem; margin-top: 5px }
.ad-doctors__rating-val { font-weight: 800; color: var(--c-navy) }
.ad-doctors__rating-ct  { color: #94a3b8; margin-left: 4px }
.ad-doctors__badge { margin-left: auto; flex-shrink: 0 }

.ad-doctors__card-body { padding: 16px 20px }
.ad-doctors__meta-row { display: flex; gap: 14px; margin-bottom: 10px }
.ad-doctors__meta { font-size: .78rem; color: #64748b }
.ad-doctors__tags { display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 12px }
.ad-doctors__tag {
  font-size: .68rem; font-weight: 700;
  background: var(--c-teal-l); color: var(--c-teal);
  border-radius: 100px; padding: 3px 10px;
  transition: all .2s;
}
.ad-doctors__card:hover .ad-doctors__tag { background: var(--c-teal); color: #fff }
.ad-doctors__price-row { display: flex; justify-content: space-between; align-items: center }
.ad-doctors__price { font-size: 1rem; font-weight: 900; color: var(--c-navy); font-family: var(--ff-head) }
.ad-doctors__price small { font-size: .7rem; color: #94a3b8; font-weight: 400 }
.ad-doctors__avail { display: flex; align-items: center; gap: 5px; font-size: .78rem; color: #10b981; font-weight: 700 }
.adg-dot-green {
  width: 8px; height: 8px; border-radius: 50%;
  background: #10b981; animation: pulseRing 2s infinite;
}

.ad-doctors__card-footer {
  padding: 14px 20px; display: flex; gap: 10px;
  border-top: 1px solid #f1f5f9; background: #fafbfc;
}
.ad-doctors__card-footer .adg-btn { flex: 1; text-align: center; transition: transform .22s var(--ease-b) }
.ad-doctors__card-footer .adg-btn:hover { transform: translateY(-2px) }

/* ═══════════════════════════════════════════════════════════════
   ADGLOBAL BUTTONS & CHIPS
   ═══════════════════════════════════════════════════════════════ */
.adg-btn {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: .88rem; font-weight: 700; border: none;
  cursor: pointer; border-radius: 100px; padding: 12px 26px;
  transition: all var(--t-med) var(--ease-b);
  text-decoration: none; position: relative; overflow: hidden;
  font-family: var(--ff-body);
}
.adg-btn.primary {
  background: var(--g-navy); color: #fff;
  box-shadow: var(--sh-navy);
}
.adg-btn.primary:hover {
  background: var(--g-teal); color: #fff;
  transform: translateY(-3px); box-shadow: var(--sh-teal);
}
.adg-btn.ghost {
  background: transparent; color: var(--c-pink);
  border: 2px solid var(--c-pink);
}
.adg-btn.ghost:hover {
  background: var(--c-pink); color: #fff;
  transform: translateY(-3px); box-shadow: var(--sh-pink);
}
.adg-btn.white {
  background: #fff; color: var(--c-navy); font-weight: 800;
}
.adg-btn.white:hover {
  background: var(--c-teal); color: #fff;
  transform: translateY(-3px); box-shadow: var(--sh-teal);
}
.adg-btn.sm { font-size: .76rem; padding: 8px 18px }

.adg-chip {
  cursor: pointer; font-size: .78rem; font-weight: 600;
  border-radius: 100px; padding: 8px 16px;
  background: #fff; border: 1.5px solid #e2e8f0; color: #475569;
  transition: all .22s var(--ease-b); user-select: none;
}
.adg-chip:hover, .adg-chip.active {
  border-color: var(--c-teal); color: var(--c-teal);
  background: var(--c-teal-l); transform: translateY(-2px);
  box-shadow: 0 4px 14px rgba(53,182,180,.2);
}

.adg-tag {
  font-size: .68rem; font-weight: 800; text-transform: uppercase;
  letter-spacing: .1em; border-radius: 100px;
  padding: 5px 14px; display: inline-flex; align-items: center; gap: 5px;
}
.adg-tag.blue   { background: rgba(53,182,180,.1); color: var(--c-teal); border: 1px solid rgba(53,182,180,.2) }
.adg-tag.amber  { background: var(--c-gold-l); color: #92400e; border: 1px solid rgba(245,158,11,.2) }
.adg-tag.teal   { background: var(--c-teal-l); color: var(--c-teal) }
.adg-tag.ghost  { background: rgba(255,255,255,.15); color: rgba(255,255,255,.9); border: 1px solid rgba(255,255,255,.2) }

.adg-verified {
  background: var(--c-teal-l); color: var(--c-teal);
  border-radius: 100px; font-size: .68rem; font-weight: 800;
  padding: 3px 9px; border: 1px solid rgba(53,182,180,.2); white-space: nowrap;
}

.adg-title {
  font-family: var(--ff-head);
  font-size: 2rem; font-weight: 900; color: var(--c-navy);
  letter-spacing: -.02em; line-height: 1.25;
}
.adg-sub { color: #64748b; font-size: .9rem; margin-bottom: 20px }

/* ═══════════════════════════════════════════════════════════════
   COMPARE SECTION
   ═══════════════════════════════════════════════════════════════ */
.ad-compare {
  padding: 80px 0;
  background: linear-gradient(135deg, var(--c-navy) 0%, #1a3a5c 60%, #0f3460 100%);
  background-size: 200% 200%;
  animation: gradShift 20s ease infinite;
  position: relative; overflow: hidden;
}
.ad-compare::before {
  content: ''; position: absolute; inset: 0;
  background:
    radial-gradient(ellipse at 25% 50%, rgba(53,182,180,.18) 0%, transparent 55%),
    radial-gradient(ellipse at 80% 25%, rgba(231,78,132,.12) 0%, transparent 50%);
  pointer-events: none;
}
.ad-compare__wrap {
  border-radius: 28px; padding: 48px;
  background: rgba(255,255,255,.04);
  border: 1.5px solid rgba(255,255,255,.1);
  backdrop-filter: blur(8px); position: relative;
}
.ad-compare__title {
  color: #fff; font-size: 2rem; font-weight: 900;
  font-family: var(--ff-head); margin: 10px 0 8px;
  -webkit-text-fill-color: #fff !important; background: none !important;
}
.ad-compare__sub { color: rgba(255,255,255,.6); font-size: .9rem; margin-bottom: 32px }
.ad-compare__table {
  width: 100%; border-collapse: separate; border-spacing: 0;
  color: #fff; border-radius: 16px; overflow: hidden;
}
.ad-compare__table thead tr { background: rgba(255,255,255,.1) }
.ad-compare__table th {
  padding: 14px 20px; font-size: .82rem; font-weight: 700;
  color: rgba(255,255,255,.8); text-align: left;
  border-bottom: 1px solid rgba(255,255,255,.1);
}
.ad-compare__table tbody tr { transition: background .2s }
.ad-compare__table tbody tr:hover { background: rgba(255,255,255,.06) }
.ad-compare__table td {
  padding: 14px 20px; font-size: .85rem;
  color: rgba(255,255,255,.8); border-bottom: 1px solid rgba(255,255,255,.06);
}
.ad-compare__winner { color: #4ade80 !important; font-weight: 800 !important }
.ad-compare__best {
  display: inline-block;
  background: linear-gradient(135deg, #4ade80, #16a34a);
  color: #fff; font-size: .62rem; font-weight: 800;
  border-radius: 100px; padding: 2px 8px; margin-left: 6px; vertical-align: middle;
}
.ad-compare__avatar {
  width: 28px; height: 28px; border-radius: 8px;
  background: var(--g-navy);
  display: inline-flex; align-items: center; justify-content: center;
  font-size: .9rem; margin-right: 6px; vertical-align: middle;
}
.ad-compare__doc-cell { display: flex; align-items: center; font-size: .82rem }

/* ═══════════════════════════════════════════════════════════════
   PRICING SECTION
   ═══════════════════════════════════════════════════════════════ */
.ad-pricing {
  padding: 80px 0;
  background: linear-gradient(135deg, #f8fafc 0%, #fce7f3 50%, #f0f9ff 100%);
}
.ad-pricing__grid {
  display: grid; grid-template-columns: repeat(auto-fit,minmax(240px,1fr));
  gap: 24px; margin-top: 32px;
}
.ad-pricing__card {
  background: #fff; border-radius: 22px; padding: 32px 24px;
  border: 1.5px solid #e2e8f0; box-shadow: var(--sh-sm);
  transition: transform .35s var(--ease-b), box-shadow .35s, border-color .35s;
  position: relative; overflow: hidden;
}
.ad-pricing__card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0;
  height: 4px; transform: scaleX(0); transform-origin: left;
  transition: transform .35s var(--ease-s);
}
.ad-pricing__card:nth-child(1)::before { background: var(--g-teal) }
.ad-pricing__card:nth-child(2)::before { background: var(--g-pink) }
.ad-pricing__card:nth-child(3)::before { background: var(--g-gold) }
.ad-pricing__card:hover { transform: translateY(-10px); box-shadow: var(--sh-xl); border-color: var(--c-teal) }
.ad-pricing__card:hover::before { transform: scaleX(1) }
.ad-pricing__card--featured {
  background: var(--g-navy); border-color: var(--c-navy); color: #fff;
}
.ad-pricing__card--featured::before { background: linear-gradient(135deg, var(--c-teal), var(--c-pink)); transform: scaleX(1) }
.ad-pricing__card--featured:hover { border-color: var(--c-teal); box-shadow: var(--sh-navy) }

.ad-pricing__icon { font-size: 2.5rem; margin-bottom: 14px; display: block; transition: transform .4s var(--ease-b) }
.ad-pricing__card:hover .ad-pricing__icon { transform: scale(1.2) rotate(-8deg) }
.ad-pricing__name { font-size: 1rem; font-weight: 800; color: var(--c-navy); margin-bottom: 8px; font-family: var(--ff-head) }
.ad-pricing__card--featured .ad-pricing__name { color: #fff }
.ad-pricing__range { font-size: 1.4rem; font-weight: 900; color: var(--c-teal); margin-bottom: 16px; font-family: var(--ff-head) }
.ad-pricing__range small { font-size: .82rem; font-weight: 400; color: #94a3b8 }
.ad-pricing__card--featured .ad-pricing__range { color: #7dd3fc }
.ad-pricing__list { list-style: none; padding: 0; margin: 0 0 20px }
.ad-pricing__list li {
  padding: 5px 0; font-size: .82rem; color: #64748b;
  display: flex; align-items: center; gap: 8px;
  border-bottom: 1px solid #f1f5f9;
}
.ad-pricing__list li:last-child { border-bottom: none }
.ad-pricing__list li::before { content: '✓'; color: var(--c-teal); font-weight: 800; width: 16px; flex-shrink: 0 }
.ad-pricing__card--featured .ad-pricing__list li { color: rgba(255,255,255,.75); border-color: rgba(255,255,255,.08) }
.ad-pricing__card--featured .ad-pricing__list li::before { color: #4ade80 }

/* ═══════════════════════════════════════════════════════════════
   AI BANNER
   ═══════════════════════════════════════════════════════════════ */
.ad-ai-banner {
  padding: 80px 0;
  background: linear-gradient(135deg, #0f2444 0%, #0a2540 40%, #1a1042 70%, #0a2540 100%);
  background-size: 300% 300%; animation: gradShift 18s ease infinite;
  position: relative; overflow: hidden;
}
.ad-ai-banner::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse at 20% 50%, rgba(53,182,180,.2) 0%, transparent 55%);
  pointer-events: none;
}
.ad-ai-banner__inner {
  display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center;
}
@media(max-width:768px) { .ad-ai-banner__inner { grid-template-columns: 1fr; gap: 28px } }
.ad-ai-banner__title {
  color: #fff; font-size: 2rem; font-weight: 900; margin-bottom: 14px;
  line-height: 1.25; font-family: var(--ff-head);
}
.ad-ai-banner__sub { color: rgba(255,255,255,.65); font-size: .9rem; margin-bottom: 28px }
.ad-ai-banner__feats { display: flex; flex-direction: column; gap: 12px; margin-bottom: 28px }
.ad-ai-banner__feat { display: flex; align-items: center; gap: 10px; font-size: .82rem; color: rgba(255,255,255,.8) }
.ad-ai-banner__feat-icon { font-size: .95rem; animation: float 3s ease-in-out infinite }
.ad-ai-banner__feat:nth-child(2) .ad-ai-banner__feat-icon { animation-delay: .5s }
.ad-ai-banner__feat:nth-child(3) .ad-ai-banner__feat-icon { animation-delay: 1s }
.ad-ai-banner__panel {
  background: rgba(255,255,255,.07); border: 1.5px solid rgba(255,255,255,.14);
  backdrop-filter: blur(14px); border-radius: 22px; padding: 26px;
  animation: float 7s ease-in-out infinite;
}
.ad-ai-banner__panel-title { font-size: .82rem; font-weight: 700; color: rgba(255,255,255,.8); margin-bottom: 14px }
.ad-ai-banner__msg {
  background: rgba(255,255,255,.1); border-radius: 12px 12px 12px 2px;
  padding: 10px 14px; font-size: .8rem; color: rgba(255,255,255,.85); margin-bottom: 8px;
}
.ad-ai-banner__result {
  display: flex; align-items: center; gap: 12px;
  background: rgba(53,182,180,.15); border: 1px solid rgba(53,182,180,.3);
  border-radius: 14px; padding: 12px; margin-top: 14px;
}
.ad-ai-banner__res-avatar {
  width: 40px; height: 40px; background: var(--c-teal); border-radius: 12px;
  display: flex; align-items: center; justify-content: center; font-size: 1.2rem;
}
.ad-ai-banner__res-name { font-size: .82rem; font-weight: 800; color: #fff }
.ad-ai-banner__res-why { font-size: .72rem; color: rgba(255,255,255,.65); margin-top: 2px }

/* ═══════════════════════════════════════════════════════════════
   TESTIMONIALS
   ═══════════════════════════════════════════════════════════════ */
.ad-testimonials {
  padding: 80px 0;
  background: linear-gradient(135deg, #f0f9ff 0%, #eaf7f7 50%, #fce7f3 100%);
  position: relative; overflow: hidden;
}
.ad-testimonials::before {
  content: '"'; position: absolute; top: -40px; left: 10px;
  font-size: 26rem; font-weight: 900; font-family: Georgia, serif;
  color: rgba(53,182,180,.05); line-height: 1; pointer-events: none;
}
.ad-testimonials__grid {
  display: grid; grid-template-columns: repeat(auto-fit,minmax(280px,1fr));
  gap: 24px; margin-top: 32px;
}
.ad-testimonials__card {
  background: #fff; border-radius: 22px; padding: 28px;
  box-shadow: var(--sh-sm); border: 1.5px solid #f1f5f9;
  transition: transform .35s var(--ease-b), box-shadow .35s;
  position: relative;
}
.ad-testimonials__card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 55px rgba(53,182,180,.14);
  border-color: rgba(53,182,180,.25);
}
.ad-testimonials__stars { font-size: 1rem; margin-bottom: 14px }
.ad-testimonials__text { font-size: .85rem; color: #475569; line-height: 1.7; margin-bottom: 20px }
.ad-testimonials__author { display: flex; align-items: center; gap: 12px }
.ad-testimonials__avatar {
  width: 44px; height: 44px; border-radius: 50%;
  background: var(--g-navy); display: flex; align-items: center;
  justify-content: center; font-size: 1.2rem; flex-shrink: 0;
  transition: transform .3s var(--ease-b);
}
.ad-testimonials__card:hover .ad-testimonials__avatar { transform: scale(1.12) }
.ad-testimonials__name { font-size: .88rem; font-weight: 800; color: var(--c-navy) }
.ad-testimonials__meta { font-size: .72rem; color: #94a3b8; margin-top: 2px }

/* ═══════════════════════════════════════════════════════════════
   APP SECTION
   ═══════════════════════════════════════════════════════════════ */
.ad-app {
  padding: 80px 0;
  background: linear-gradient(135deg, var(--c-navy) 0%, #1a3a5c 60%, #0f3460 100%);
  position: relative; overflow: hidden;
}
.ad-app::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse at 80% 50%, rgba(53,182,180,.18) 0%, transparent 55%);
  pointer-events: none;
}
.ad-app__inner {
  display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center;
}
@media(max-width:768px) { .ad-app__inner { grid-template-columns: 1fr; gap: 28px } }
.ad-app__title { color: #fff; font-size: 2rem; font-weight: 900; margin-bottom: 14px; line-height: 1.25; font-family: var(--ff-head) }
.ad-app__sub   { color: rgba(255,255,255,.65); font-size: .9rem; margin-bottom: 28px }
.ad-app__btns  { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 20px }
.ad-app__btn {
  display: flex; align-items: center; gap: 10px;
  background: rgba(255,255,255,.1); border: 1.5px solid rgba(255,255,255,.18);
  border-radius: 14px; padding: 10px 18px; color: #fff; text-decoration: none;
  transition: all .25s var(--ease-b); backdrop-filter: blur(4px);
}
.ad-app__btn:hover {
  background: rgba(255,255,255,.18); border-color: rgba(255,255,255,.4);
  transform: translateY(-3px); box-shadow: 0 8px 24px rgba(0,0,0,.2); color: #fff;
}
.ad-app__btn-icon  { font-size: 1.6rem }
.ad-app__btn-label { font-size: .66rem; color: rgba(255,255,255,.65) }
.ad-app__btn-store { font-size: .88rem; font-weight: 700 }
.ad-app__whatsapp {
  display: flex; align-items: center; gap: 12px;
  background: linear-gradient(135deg, #25D366, #128C7E);
  border-radius: 14px; padding: 12px 20px; color: #fff;
  text-decoration: none; width: fit-content;
  transition: all .25s var(--ease-b);
  box-shadow: 0 4px 18px rgba(37,211,102,.3);
}
.ad-app__whatsapp:hover { transform: translateY(-3px); box-shadow: 0 10px 32px rgba(37,211,102,.5); color: #fff }
.ad-app__wa-icon  { font-size: 1.5rem }
.ad-app__wa-label { font-size: .66rem; color: rgba(255,255,255,.75) }
.ad-app__wa-cta   { font-size: .85rem; font-weight: 700 }

.ad-app__phone {
  background: rgba(255,255,255,.07); border: 1.5px solid rgba(255,255,255,.14);
  border-radius: 34px; padding: 22px; backdrop-filter: blur(8px);
  max-width: 280px; margin: 0 auto; animation: float 7s ease-in-out infinite;
}
.ad-app__phone-header { display: flex; justify-content: center; margin-bottom: 14px }
.ad-app__phone-logo { font-size: .85rem; font-weight: 800; color: rgba(255,255,255,.9) }
.ad-app__phone-search {
  background: rgba(255,255,255,.1); border-radius: 10px;
  padding: 8px 12px; font-size: .72rem; color: rgba(255,255,255,.6); margin-bottom: 14px;
}
.ad-app__phone-label {
  font-size: .65rem; color: rgba(255,255,255,.5); font-weight: 700;
  text-transform: uppercase; letter-spacing: .07em; margin-bottom: 8px;
}
.ad-app__phone-card {
  display: flex; align-items: center; gap: 10px;
  background: rgba(255,255,255,.08); border-radius: 12px;
  padding: 10px 12px; margin-bottom: 6px; transition: background .2s;
}
.ad-app__phone-card:hover { background: rgba(255,255,255,.14) }
.ad-app__phone-avatar {
  width: 32px; height: 32px; border-radius: 10px;
  background: var(--g-navy); display: flex; align-items: center;
  justify-content: center; font-size: .9rem; flex-shrink: 0;
}
.ad-app__phone-doc-name { font-size: .75rem; font-weight: 700; color: rgba(255,255,255,.9) }
.ad-app__phone-doc-spec { font-size: .66rem; color: rgba(255,255,255,.55) }
.ad-app__phone-book {
  background: var(--g-teal); border-radius: 10px;
  padding: 10px; text-align: center; font-size: .78rem; font-weight: 800; color: #fff;
  margin-top: 12px; cursor: pointer; transition: all .2s var(--ease-b);
}
.ad-app__phone-book:hover { transform: scale(1.03); box-shadow: var(--sh-teal) }

/* ═══════════════════════════════════════════════════════════════
   BLOG SECTION
   ═══════════════════════════════════════════════════════════════ */
.blogs-section {
  background: linear-gradient(135deg, #f8fafc 0%, #f0f9ff 100%);
  padding: 72px 0;
}
.blogs-section h2 {
  font-family: var(--ff-head); font-size: 2rem; font-weight: 900;
  background: var(--g-brand-mix); background-size: 300% auto;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text; animation: shimmer 8s linear infinite;
  display: inline-block; margin-bottom: 40px;
}
.blog-wraper {
  display: block; position: relative; overflow: hidden;
  border-radius: 18px; text-decoration: none;
  transition: transform .35s var(--ease-b), box-shadow .35s;
  box-shadow: var(--sh-md);
}
.blog-wraper:hover { transform: translateY(-6px); box-shadow: 0 22px 55px rgba(0,0,0,.18) }
.blog-wraper img { transition: transform .5s var(--ease-s); width: 100%; display: block }
.blog-wraper:hover img { transform: scale(1.07) }
.blog-content-wrraper {
  position: absolute; bottom: 0; left: 0; right: 0;
  background: linear-gradient(transparent, rgba(7,21,38,.92) 60%);
  padding: 32px 16px 18px; transition: padding .3s;
}
.blog-wraper:hover .blog-content-wrraper { padding-bottom: 24px }
.blog-content-wrraper h3 {
  font-size: 1rem; font-weight: 800; line-height: 1.4;
  transition: color .2s; font-family: var(--ff-head);
}
.blog-wraper:hover .blog-content-wrraper h3 { color: #7dd3fc !important }
.post-category {
  border-radius: 100px !important; font-size: .68rem;
  letter-spacing: .04em; font-weight: 700; padding: 3px 10px;
}

/* ═══════════════════════════════════════════════════════════════
   BRAND LOGOS
   ═══════════════════════════════════════════════════════════════ */
.brand {
  background: linear-gradient(135deg, #f8fafc, var(--c-teal-l));
  padding: 56px 0;
}
.brand h2 {
  font-size: 1rem; font-weight: 800; letter-spacing: .1em; color: #64748b;
  background: none !important; -webkit-text-fill-color: #64748b !important;
}
.brand img {
  opacity: .55; filter: grayscale(1);
  transition: all .35s var(--ease-s);
}
.brand .col-12:hover img { opacity: 1; filter: grayscale(0); transform: scale(1.1) }

/* ═══════════════════════════════════════════════════════════════
   GLOBAL BUTTONS
   ═══════════════════════════════════════════════════════════════ */
.btn_1, a.btn_1 {
  background: var(--g-teal) !important; border: none !important; color: #fff !important;
  border-radius: 100px !important; font-weight: 700 !important; font-size: .85rem !important;
  padding: 11px 28px !important; transition: all .25s var(--ease-b) !important;
  box-shadow: 0 4px 14px rgba(53,182,180,.3) !important; display: inline-block;
  font-family: var(--ff-body);
}
.btn_1:hover, a.btn_1:hover {
  background: var(--g-navy) !important; transform: translateY(-3px) scale(1.04) !important;
  box-shadow: var(--sh-navy) !important; color: #fff !important; text-decoration: none !important;
}
.btn-cstm, .btn.btn-cstm {
  background: var(--g-pink) !important; color: #fff !important; border: none !important;
  font-weight: 700 !important; transition: all .25s var(--ease-b) !important;
  box-shadow: var(--sh-pink) !important;
}
.btn-cstm:hover, .btn.btn-cstm:hover {
  transform: translateY(-3px) scale(1.04) !important;
  box-shadow: 0 12px 30px rgba(231,78,132,.45) !important; color: #fff !important;
}
.btn_pink, .btn.btn_pink {
  background: var(--g-pink) !important; border: none; color: #fff !important;
  font-weight: 700; transition: all .22s var(--ease-b) !important;
  box-shadow: var(--sh-pink);
}
.btn_pink:hover, .btn.btn_pink:hover {
  transform: translateY(-3px) scale(1.04) !important;
  box-shadow: 0 12px 28px rgba(231,78,132,.45) !important; color: #fff !important;
}
.button-pink-fill {
  background: var(--g-pink) !important; color: #fff !important; border: none !important;
  font-weight: 700 !important; transition: all .22s var(--ease-b) !important;
}
.button-pink-fill:hover { transform: translateY(-2px) !important; color: #fff !important }

.btn_2, a.btn_2 {
  background: var(--g-navy) !important; color: #fff !important; border: none !important;
  font-weight: 700 !important; transition: all .22s var(--ease-b) !important;
}
.btn_2:hover, a.btn_2:hover {
  background: var(--g-teal) !important; color: #fff !important; transform: translateY(-1px) !important;
}

/* ═══════════════════════════════════════════════════════════════
   FAQ SECTION
   ═══════════════════════════════════════════════════════════════ */
.faqs { background: linear-gradient(135deg, #f8fafc, var(--c-teal-l)) }
.faqs .heading h2 {
  font-family: var(--ff-head); font-size: 2.5rem; font-weight: 900;
  background: linear-gradient(135deg, var(--c-navy), var(--c-teal));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.faqs .tabs-wrapper .nav-link {
  border-radius: 10px; font-weight: 600; color: #475569;
  transition: all .22s var(--ease-s); padding: 10px 18px; margin-bottom: 4px;
  border: none !important;
}
.faqs .tabs-wrapper .nav-link:hover { background: rgba(53,182,180,.08); color: var(--c-teal) }
.faqs .tabs-wrapper .nav-link.active {
  background: var(--g-teal) !important; color: #fff !important;
  box-shadow: var(--sh-teal);
}
.accordion-item { border: none !important; border-bottom: 1px solid #f1f5f9 !important; background: transparent !important }
.accordion-button {
  background: transparent !important; font-weight: 600 !important;
  color: var(--c-navy) !important; border-radius: 8px !important;
  transition: all .22s !important;
}
.accordion-button:not(.collapsed) { color: var(--c-teal) !important; box-shadow: none !important }
.accordion-button:focus { box-shadow: none !important }

/* ═══════════════════════════════════════════════════════════════
   CTA SUBSCRIBE
   ═══════════════════════════════════════════════════════════════ */
.cta_subscribe {
  background: linear-gradient(135deg, var(--c-navy) 0%, #1a3a5c 100%) !important;
  position: relative; overflow: hidden;
}
.cta_subscribe::before {
  content: ''; position: absolute; inset: 0;
  background:
    radial-gradient(ellipse at 25% 50%, rgba(53,182,180,.15) 0%, transparent 55%),
    radial-gradient(ellipse at 80% 30%, rgba(231,78,132,.1) 0%, transparent 50%);
  pointer-events: none;
}
.cta_subscribe .block_1,.cta_subscribe .block_2 { padding: 48px 40px; transition: background .3s }
.cta_subscribe .block_1:hover { background: rgba(255,255,255,.04) }
.cta_subscribe .block_2 { background: rgba(0,0,0,.15) !important }
.cta_subscribe .block_2:hover { background: rgba(0,0,0,.2) !important }
.cta_subscribe h3 { color: #fff !important; font-size: 1.5rem; font-weight: 900; font-family: var(--ff-head) }
.cta_subscribe p { color: rgba(255,255,255,.7) !important; font-size: .85rem }
.cta_subscribe figure img { transition: transform .4s var(--ease-b) }
.cta_subscribe .block_1:hover figure img,.cta_subscribe .block_2:hover figure img { transform: scale(1.1) rotate(-3deg) }

/* ═══════════════════════════════════════════════════════════════
   SMALL DOCTOR CARDS
   ═══════════════════════════════════════════════════════════════ */
.doctor-card-small {
  border-radius: 18px !important;
  transition: transform .35s var(--ease-b), box-shadow .35s !important;
}
.doctor-card-small:hover { transform: translateY(-6px) !important; box-shadow: var(--sh-lg) !important }
.mob-card-img-wrap {
  width: 72px !important; height: 72px !important;
  overflow: hidden; border-radius: 50% !important;
  border: 2.5px solid var(--c-teal-l); transition: border-color .2s; flex-shrink: 0;
}
.doctor-card-small:hover .mob-card-img-wrap { border-color: var(--c-teal) }
.new-doctor-card-button .btn_pink { transition: all .22s var(--ease-b) !important }
.new-doctor-card-button .btn_pink:hover { filter: brightness(1.1); letter-spacing: .02em }

/* ═══════════════════════════════════════════════════════════════
   SEARCH DROPDOWN
   ═══════════════════════════════════════════════════════════════ */
.searchResults {
  border-radius: 18px !important;
  box-shadow: var(--sh-xl) !important;
  border-color: #e2e8f0 !important;
  animation: fadeDown .2s ease both;
}
.searchResults .list-group-item { transition: background .18s }
.searchResults .list-group-item:hover { background: #f1f5f9 !important }
.searchResults .btn-link { color: var(--c-teal) !important; font-size: .78rem; transition: color .18s }
.searchResults .btn-link:hover { color: var(--c-pink) !important }

/* ═══════════════════════════════════════════════════════════════
   NAV TABS
   ═══════════════════════════════════════════════════════════════ */
.nav-tabs .nav-link {
  border: none !important; color: #64748b; font-size: .8rem; font-weight: 500;
  padding: 10px 14px; transition: all .2s;
  border-bottom: 2px solid transparent !important; white-space: nowrap;
}
.nav-tabs .nav-link:hover { color: var(--c-teal); border-bottom-color: rgba(53,182,180,.4) !important }
.nav-tabs .nav-link.active {
  color: var(--c-teal) !important; border-bottom-color: var(--c-teal) !important;
  background: transparent !important; font-weight: 800 !important;
}

/* ═══════════════════════════════════════════════════════════════
   RATINGS
   ═══════════════════════════════════════════════════════════════ */
.icon_star.voted { color: #f59e0b }
.icon_star       { color: #d1d5db }
.rating-badge    { font-size: .72rem !important; font-weight: 800 !important; border-radius: 8px 8px 0 0 !important }

/* ═══════════════════════════════════════════════════════════════
   FLOATING ELEMENTS
   ═══════════════════════════════════════════════════════════════ */
.floating-whatsapp {
  position: fixed; bottom: 28px; right: 28px; z-index: 1050;
  width: 56px; height: 56px; border-radius: 50%;
  background: linear-gradient(135deg, #25D366, #128C7E);
  display: flex; align-items: center; justify-content: center; font-size: 1.6rem;
  color: #fff; text-decoration: none;
  box-shadow: 0 4px 22px rgba(37,211,102,.45);
  transition: transform .3s var(--ease-b), box-shadow .3s;
  animation: pulseRing 3s infinite;
}
.floating-whatsapp:hover { transform: scale(1.15) translateY(-4px); box-shadow: 0 12px 32px rgba(37,211,102,.6); color: #fff }
.floating-whatsapp::before {
  content: ''; position: absolute; inset: -6px; border-radius: 50%;
  border: 2px solid rgba(37,211,102,.3); animation: rippleOut 2s ease-out infinite;
}

.back-to-top-btn {
  position: fixed; bottom: 96px; right: 28px; z-index: 1050;
  width: 44px; height: 44px; border-radius: 50%;
  background: var(--c-navy); color: #fff; border: none; cursor: pointer;
  display: flex; align-items: center; justify-content: center; font-size: 1.1rem;
  opacity: 0; transform: translateY(14px);
  transition: all .3s var(--ease-s); box-shadow: var(--sh-navy);
}
.back-to-top-btn.show { opacity: 1; transform: none }
.back-to-top-btn:hover { background: var(--c-teal); transform: translateY(-3px) }

.page-progress-bar {
  position: fixed; top: 0; left: 0; height: 3px;
  background: linear-gradient(90deg, var(--c-teal), var(--c-pink), var(--c-gold));
  background-size: 200% auto; animation: shimmer 2s linear infinite;
  z-index: 9999; width: 0%; transition: width .1s linear;
  border-radius: 0 3px 3px 0;
}

/* ═══════════════════════════════════════════════════════════════
   SECTION HEADINGS (global)
   ═══════════════════════════════════════════════════════════════ */
.main_title { text-align: center; margin-bottom: 44px }
.main_title h2 {
  font-family: var(--ff-head); font-size: 2rem; font-weight: 900; margin-bottom: 8px;
  background: linear-gradient(135deg, var(--c-navy) 0%, var(--c-teal) 50%, var(--c-pink) 100%);
  background-size: 300% auto; animation: shimmer 8s linear infinite;
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
  display: inline-block;
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════════════ */
@media(max-width:991px) {
  .hero-hme-top-content h1 { font-size: 1.9rem }
  .ad-compare__wrap { padding: 24px }
  .adg-title { font-size: 1.5rem }
  .platform-features-bar { grid-template-columns: repeat(3,1fr) }
  .book-your-way { padding: 52px 0 }
}
@media(max-width:575px) {
  .hero-hme-top-content h1 { font-size: 1.5rem }
  .hero-trust-pills { justify-content: center }
  .platform-features-bar { grid-template-columns: repeat(2,1fr) }
  .floating-whatsapp { bottom: 18px; right: 14px; width: 50px; height: 50px }
  .back-to-top-btn  { bottom: 80px; right: 14px }
  .ad-compare__wrap { padding: 16px }
  .book-your-way { padding: 40px 0 }
  .consult-type-card { padding: 24px 20px }
}
