/* 1. Import Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Jost:wght@300;400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@600;700;800&display=swap');

/* 2. Import Font Awesome Icons */
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css');
  :root {
    --champagne: #f5ede0;
    --blush: #e8c4b8;
    --rose-gold: #c9896a;
    --terracotta: #b56b4a;
    --navy: #1a2340;
    --navy-light: #2a3560;
    --cream: #faf7f2;
    --white: #ffffff;
    --text-dark: #1a1a2e;
    --text-mid: #4a4a6a;
    --text-light: #8a8aa0;
    --gold: #c9a96e;
    --gold-light: #e8d5b0;
    --teal: #1A6B6B;
    --teal-light: #2A8A8A;
    --teal-pale: #EAF4F4;
	
    --chat-navy: #1a2340; 
    --chat-gold: #c9896a;
    --chat-bg: #f8fafc;
    --chat-white: #ffffff;
    --chat-status: #00FF00;
	
	--charcoal: #1c1c1e;
    --mid: #4a4a4a;
    --border: #e8ddd5;
    --wa-green: #25D366;
	--link: #b5896a;
    --link-hover: #8a6045;
  }

  * { margin: 0; padding: 0; box-sizing: border-box; }
  html { scroll-behavior: auto !important; }
  body { font-family: 'Jost', sans-serif; background: var(--cream); color: var(--text-dark); overflow-x: hidden; }

  /* ── NAVBAR ── */
  nav {
    position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
    background: rgba(255,255,255,0.92);
    backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(201,137,106,0.15);
    padding: 0 40px;
    display: flex; align-items: center; justify-content: space-between;
    height: 72px; transition: box-shadow 0.3s;
  }
  nav.scrolled { box-shadow: 0 4px 30px rgba(26,35,64,0.08); }
  .nav-logo img { width: 60px; height: 60px; aspect-ratio: 1 / 1; 
    border-radius: 50%; object-fit: cover; 
    border: 0.0px solid var(--rose-gold); }
  .nav-links { display: flex; align-items: center; gap: 13px; list-style: none; }
  .nav-links a {
    text-decoration: none; color: var(--navy);
    font-size: 0.80rem; letter-spacing: 0.02em; font-weight: 450;
    text-transform: uppercase; position: relative; padding-bottom: 3px;
    transition: color 0.25s;
  }
  .nav-links a::after {
    content: ''; position: absolute; bottom: 0; left: 0;
    width: 0; height: 1px; background: var(--rose-gold); transition: width 0.3s;
  }
  .nav-links a:hover { color: var(--rose-gold); }
  .nav-links a:hover::after { width: 100%; }
  .nav-links a.active {
  color: var(--rose-gold);
  }
  .nav-links a.active::after {
    width: 100%;
  }

  .nav-cta {
    background: var(--navy); color: var(--white) !important;
    padding: 10px 22px !important; border-radius: 2px;
    letter-spacing: 0.1em !important; transition: background 0.25s !important;
  }
  .nav-cta:hover { background: var(--rose-gold) !important; color: var(--white) !important; }
  .nav-cta::after { display: none !important; }

  .hamburger { display: none; flex-direction: column; gap: 5px; cursor: pointer; padding: 4px; }
  .hamburger span { display: block; width: 26px; height: 2px; background: var(--navy); border-radius: 2px; transition: all 0.3s; }

  .mobile-overlay {
    display: none; position: fixed; inset: 0;
    background: rgba(26,35,64,0.4); z-index: 1100; opacity: 0; transition: opacity 0.3s;
  }
  .mobile-overlay.open { display: block; opacity: 1; }
  .mobile-menu {
    position: fixed; top: 0; right: -75%; width: 70%;
    height: 100%; background: var(--white); z-index: 1200;
    padding: 30px 32px; transition: right 0.35s cubic-bezier(0.4,0,0.2,1);
    box-shadow: -8px 0 40px rgba(26,35,64,0.15); overflow-y: auto;
  }
  .mobile-menu.open { right: 0; }
  .mobile-close {
    position: absolute; top: 20px; right: 20px; background: none; border: none;
    font-size: 1.6rem; cursor: pointer; color: var(--navy);
    width: 36px; height: 36px; display: flex; align-items: center; justify-content: center;
    border-radius: 50%; transition: background 0.2s;
  }
  .mobile-close:hover { background: var(--champagne); }
  .mobile-menu .mob-logo { height: 40px; margin-bottom: 40px; }
  .mobile-nav-links { list-style: none; }
  .mobile-nav-links li { border-bottom: 1px solid var(--champagne); }
  .mobile-nav-links a {
    display: block; padding: 16px 0; text-decoration: none; color: var(--navy);
    font-size: 0.88rem; letter-spacing: 0.12em; font-weight: 500;
    text-transform: uppercase; transition: color 0.2s;
  }
  .mobile-nav-links a:hover { color: var(--rose-gold); }
  .mob-cta-wrap { margin-top: 32px; }
  .mob-cta {
    display: block; text-align: center;
    background: var(--navy); color: var(--white) !important;
    padding: 14px 24px; border-radius: 2px; text-decoration: none;
    font-size: 0.82rem; letter-spacing: 0.12em; font-weight: 500; text-transform: uppercase;
  }

  /* ── HERO ── */
  #home {
    min-height: 100vh; position: relative;
    display: flex; align-items: center; overflow: hidden;
    background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 50%, #3a2060 100%);
	padding-top: 1px;
	scroll-margin-top: 117px;
  }
  .hero-bg-texture {
    position: absolute; inset: 0; opacity: 0.04;
    background-image: repeating-linear-gradient(45deg, transparent, transparent 2px, rgba(255,255,255,0.5) 2px, rgba(255,255,255,0.5) 4px);
  }
  .hero-accent-circle { position: absolute; border-radius: 50%; background: radial-gradient(circle, var(--rose-gold), transparent); opacity: 0.12; }
  .hero-accent-circle.c1 { width: 600px; height: 600px; top: -200px; right: -100px; }
  .hero-accent-circle.c2 { width: 400px; height: 400px; bottom: -100px; left: -80px; opacity: 0.08; }

/*   .hero-content {
    position: relative; z-index: 2;
    max-width: 1200px; margin: 0 auto; padding: 20px 40px 01px;
    display: grid; grid-template-columns: 1fr 1fr; gap: 80px;
    align-items: start; width: 100%;
  }
  .hero-text {
  grid-column: 1;
  animation: fadeUp 0.9s ease both;
}

.hero-right-col {
	  display: flex;
  flex-direction: column;
  gap: 32px;
  grid-column: 2;
}
  .hero-eyebrow { font-size: 0.75rem; letter-spacing: 0.28em; color: var(--gold); text-transform: uppercase; margin-bottom: 20px; font-weight: 500; }
  .hero-headline {
    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(3.5rem, 5.5vw, 5.5rem); font-weight: 300; line-height: 1.12;
    color: var(--white); margin-bottom: 24px;
  }
  .hero-headline em { font-style: italic; color: var(--blush); }
  .hero-sub { font-size: 1.1rem; line-height: 1.8; color: rgba(255,255,255,0.65); max-width: 420px; margin-bottom: 40px; font-weight: 300; }

  .stat-row {
    display: grid; grid-template-columns: repeat(3,1fr); gap: 14px;
    animation: fadeUp 0.7s 0.3s ease both;
    margin-top: 8px;
  }
  .stat-box {
    background: rgba(255,255,255,0.07);
    border: 1px solid rgba(255,255,255,0.15);
    border-radius: 12px; padding: 18px 12px; text-align: center;
    backdrop-filter: blur(8px);
    transition: background 0.3s, transform 0.3s;
    position: relative; overflow: hidden;
  }
  .stat-box::before {
    content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 2px;
    background: linear-gradient(90deg, var(--rose-gold), var(--gold));
  }
  .stat-box:hover { background: rgba(255,255,255,0.12); transform: translateY(-2px); }
  .stat-num {
    font-family: 'Cormorant Garamond', serif;
    font-size: 2.2rem; font-weight: 600; color: var(--white);
    display: block; line-height: 1; margin-bottom: 6px;
  }
  .stat-num span { color: var(--gold); }
  .stat-lbl { font-size: 0.75rem; color: rgba(255,255,255,0.6); line-height: 1.4; letter-spacing: 0.04em; text-transform: uppercase; }

  .hero-slideshow {
	margin-top: -30px;
	z-index: 5;
    position: relative; border-radius: 16px; overflow: hidden; height: 350px;
    box-shadow: 0 32px 80px rgba(0,0,0,0.4);
    animation: fadeUp 0.8s 0.2s ease both;
    border: 1px solid rgba(255,255,255,0.1);
    transform: translateZ(0);
    will-change: transform;

  }
  .hero-slide {
    position: absolute; inset: 0; opacity: 0;
    transition: opacity 1.8s ease;
    overflow: hidden;
  }
  .hero-slide.active { opacity: 1; }
  .hs-bg {
    position: absolute; inset: 0;
    display: flex; align-items: center; justify-content: center;
    width: 100%; height: 100%;
    overflow: hidden;
  }
  .hs-bg svg {
    position: absolute; top: 0; left: 0;
    width: 100%; height: 100%;
    display: block;
  }
  .hs-overlay { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(7,25,42,0.15) 0%,rgba(7,25,42,0.65) 55%,rgba(7,25,42,0.95) 100%); }
  .hs-content { position: absolute; bottom: 0; left: 0; right: 0; z-index: 3; padding: 28px 32px 32px; }
  .hs-tag { display: inline-block; font-size: 0.62rem; font-weight: 700; letter-spacing: 1.8px; text-transform: uppercase; padding: 5px 14px; border-radius: 50px; margin-bottom: 12px; }
  .hs-name { font-family: 'Cormorant Garamond', serif; font-size: 1.7rem; color: #fff; font-weight: 600; line-height: 1.2; margin-bottom: 8px; }
  .hs-desc { font-size: 0.82rem; color: rgba(255,255,255,0.7); line-height: 1.6; margin-bottom: 18px; }
  .hs-book {
    display: inline-flex; align-items: center; gap: 8px;
    background: rgba(255,255,255,0.12); border: 1px solid rgba(255,255,255,0.25);
    color: #fff; font-size: 0.76rem; font-weight: 600; padding: 9px 20px;
    border-radius: 50px; text-decoration: none; transition: .2s;
    backdrop-filter: blur(4px);
  }
  .hs-book:hover { background: var(--rose-gold); border-color: var(--rose-gold); }
  .hs-progress-bar { position: absolute; bottom: 0; left: 0; right: 0; height: 3px; background: rgba(255,255,255,0.1); z-index: 10; }
  .hs-progress-fill { height: 100%; background: linear-gradient(90deg, var(--rose-gold), var(--gold)); width: 0%; }
  .hero-dots { position: absolute; right: 18px; top: 50%; transform: translateY(-50%); z-index: 10; display: flex; flex-direction: column; gap: 10px; }
  .hero-dot { width: 7px; height: 7px; border-radius: 50%; background: rgba(255,255,255,0.3); cursor: pointer; transition: .3s; border: none; padding: 0; }
  .hero-dot.active { background: #fff; transform: scale(1.5); } */

  /* ── SECTION COMMON ── */
  section { padding: 100px 40px; }
  /* Non-index standalone pages — first section must clear the 72px fixed nav */
  body.standalone-page section:first-of-type { padding-top: 5px !important; }
  body.standalone-page .tx-page-mode { padding-top: 0px !important; }
  .container { max-width: 1200px; margin: 0 auto; }
  .section-eyebrow { font-size: 0.82rem; letter-spacing: 0.28em; color: var(--rose-gold); text-transform: uppercase; font-weight: 500; margin-bottom: 12px; }
  .section-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(2.7rem, 4.2vw, 3.7rem); font-weight: 400; line-height: 1.2; color: var(--navy); margin-bottom: 20px; }
  .section-title em { font-style: italic; color: var(--rose-gold); }
  .section-sub { font-size: 1.2rem; line-height: 1.8; color: var(--text-mid); max-width: 540px; font-weight: 300; }

  /* ── ABOUT ── */
  #about { background: var(--white); }
  .about-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
  .about-img-wrap { position: relative; min-height: 400px; }
  .about-img-wrap img { width: 100%; height: 520px; object-fit: cover; border-radius: 4px; display: block; }
  .about-img-wrap::after {
    content: ''; position: absolute; bottom: -16px; right: -16px;
    width: 60%; height: 60%; border: 1px solid var(--blush); border-radius: 4px; z-index: -1;
  }
  .about-features { margin-top: 36px; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
  .feat-item { display: flex; align-items: flex-start; gap: 12px; padding: 16px; background: var(--cream); border-radius: 4px; border-left: 2px solid var(--rose-gold); }
  .feat-icon { font-size: 1.4rem; }
  .feat-title { font-size: 0.98rem; font-weight: 600; color: var(--navy); letter-spacing: 0.05em; }
  .feat-desc { font-size: 0.94rem; color: var(--text-mid); margin-top: 2px; line-height: 1.5; }

  /* ── NEW: DOCTOR BIO ── */
  .doctor-bio {
    margin-top: 40px;
    padding: 28px 28px 28px 28px;
    background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 100%);
    border-radius: 12px;
    position: relative;
    overflow: hidden;
  }
  .doctor-bio::before {
    content: '"';
    position: absolute; top: -10px; right: 24px;
    font-family: 'Cormorant Garamond', serif;
    font-size: 8rem; color: rgba(201,137,106,0.18);
    line-height: 1; font-style: italic; pointer-events: none;
  }
  .doctor-bio-header { display: flex; align-items: center; gap: 20px; margin-bottom: 20px; }
  .doctor-avatar {
    width: 72px; height: 72px; border-radius: 50%;
    background: linear-gradient(135deg, var(--rose-gold), var(--gold));
    display: flex; align-items: center; justify-content: center;
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.8rem; font-weight: 600; color: var(--white);
    flex-shrink: 0; border: 3px solid rgba(255,255,255,0.15);
  }
  .doctor-name-block {}
  .doctor-name {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.3rem; font-weight: 500; color: var(--white);
    line-height: 1.2; margin-bottom: 4px;
  }
  .doctor-credentials {
    font-size: 0.72rem; letter-spacing: 0.1em; color: var(--gold);
    text-transform: uppercase; font-weight: 500;
  }
  .doctor-philosophy {
    font-size: 0.9rem; line-height: 1.85; color: rgba(255,255,255,0.8);
    font-weight: 300; font-style: italic;
    border-left: 2px solid var(--rose-gold);
    padding-left: 16px;
    margin-bottom: 18px;
  }
  .doctor-tags { display: flex; flex-wrap: wrap; gap: 8px; }
  .doctor-tag {
    font-size: 0.68rem; letter-spacing: 0.08em; text-transform: uppercase;
    padding: 5px 12px; border-radius: 20px;
    background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.15);
    color: rgba(255,255,255,0.7);
  }

  /* ── SERVICES ── */
  #services { background: var(--cream); }
  .services-header { margin-bottom: 48px; }
  .svc-tabs {
    display: grid; grid-template-columns: repeat(4,1fr); gap: 0;
    background: var(--white); border-radius: 12px;
    box-shadow: 0 4px 24px rgba(26,35,64,0.07);
    overflow: hidden; margin-bottom: 32px;
    border: 1px solid rgba(201,137,106,0.15);
  }
  .svc-tab {
    display: flex; flex-direction: column; align-items: center; justify-content: center;
    gap: 8px; padding: 22px 16px;
    background: none; border: none; cursor: pointer;
    border-right: 1px solid rgba(201,137,106,0.12);
    transition: background 0.25s; position: relative;
  }
  .svc-tab:last-child { border-right: none; }
  .svc-tab::after {
    content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 3px;
    background: linear-gradient(90deg, var(--rose-gold), var(--gold));
    transform: scaleX(0); transition: transform 0.3s;
  }
  .svc-tab.active { background: var(--cream); }
  .svc-tab.active::after { transform: scaleX(1); }
  .svc-tab-icon { font-size: 1.6rem; line-height: 1; }
  .svc-tab-label { font-size: 0.87rem; font-weight: 600; color: var(--text-mid); letter-spacing: 0.06em; text-transform: uppercase; line-height: 1.3; text-align: center; }
  .svc-tab.active .svc-tab-label { color: var(--navy); }
  .svc-tab:hover { background: var(--champagne); }
  .svc-panels { position: relative; }
  .svc-panel { display: none; }
  .svc-panel.active { display: block; animation: fadeUp 0.4s ease; }
  .svc-panel-intro {
    display: flex; align-items: center; gap: 16px;
    margin-bottom: 28px; padding: 20px 24px;
    background: var(--white); border-radius: 8px;
    border-left: 3px solid var(--rose-gold);
    box-shadow: 0 2px 16px rgba(26,35,64,0.05);
  }
  .svc-panel-badge {
    background: linear-gradient(135deg, var(--navy), var(--navy-light));
    color: var(--white); font-size: 0.72rem; font-weight: 600;
    letter-spacing: 0.12em; text-transform: uppercase;
    padding: 6px 14px; border-radius: 20px; white-space: nowrap; flex-shrink: 0;
  }
  .svc-panel-desc { font-size: 1.05rem; color: var(--text-mid); line-height: 1.7; font-weight: 300; }
  .svc-items-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
  .svc-item {
    display: flex; align-items: flex-start; gap: 14px;
    background: var(--white); padding: 16px 18px; border-radius: 8px;
    border: 1px solid rgba(201,137,106,0.12);
    transition: all 0.25s; cursor: default;
    position: relative; overflow: hidden;
  }
  .svc-item::before {
    content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 3px;
    background: linear-gradient(180deg, var(--rose-gold), var(--gold));
    transform: scaleY(0); transition: transform 0.25s; transform-origin: bottom;
  }
  .svc-item:hover { box-shadow: 0 4px 20px rgba(26,35,64,0.08); transform: translateY(-2px); }
  .svc-item:hover::before { transform: scaleY(1); }
  .svc-item-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--rose-gold); flex-shrink: 0; margin-top: 5px; }
  .svc-item-name { font-size: 1.1rem; font-weight: 600; color: var(--navy); margin-bottom: 3px; }
  .svc-item-sub { font-size: 1.1rem; color: var(--text-light); line-height: 1.5; }

  /* ── PRODUCTS ── */
  #product { background: var(--navy); }
  #product .section-title { color: var(--white); }
  #product .section-sub { color: rgba(255,255,255,0.6); }
  #product .section-eyebrow { color: var(--gold); }
  .products-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; margin-top: 48px; }
  .product-card { background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); border-radius: 4px; padding: 28px 24px; transition: all 0.3s; }
  .product-card:hover { background: rgba(255,255,255,0.09); transform: translateY(-3px); }
  .product-tag { display: inline-block; background: var(--rose-gold); color: var(--white); font-size: 0.78rem; letter-spacing: 0.12em; padding: 4px 10px; border-radius: 2px; text-transform: uppercase; margin-bottom: 14px; }
  .product-name { font-family: 'Cormorant Garamond', serif; font-size: 1.6rem; color: var(--white); font-weight: 400; margin-bottom: 8px; }
  .product-desc { font-size: 1.05rem; color: rgba(255,255,255,0.55); line-height: 1.7; font-weight: 300; }

  /* ── GALLERY ── */
  #gallery { background: var(--white); }
  .gallery-grid {
    display: grid; grid-template-columns: repeat(3, 1fr);
    grid-template-rows: 280px 220px; gap: 16px; margin-top: 48px;
  }
  .gallery-item:nth-child(1) { grid-column: 1 / 3; grid-row: 1; }
  .gallery-item:nth-child(2) { grid-column: 3; grid-row: 1; }
  .gallery-item:nth-child(3) { grid-column: 1; grid-row: 2; }
  .gallery-item:nth-child(4) { grid-column: 2; grid-row: 2; }
  .gallery-item:nth-child(5) { grid-column: 3; grid-row: 2; }
  .gallery-item { position: relative; overflow: hidden; border-radius: 4px; cursor: pointer; }
  .gallery-item img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.5s ease; }
  .gallery-item:hover img { transform: scale(1.05); }
  .gallery-overlay {
    position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(26,35,64,0.6), transparent);
    opacity: 0; transition: opacity 0.3s;
    display: flex; align-items: flex-end; padding: 20px;
  }
  .gallery-item:hover .gallery-overlay { opacity: 1; }
  .gallery-overlay span { color: var(--white); font-size: 0.78rem; letter-spacing: 0.12em; text-transform: uppercase; font-weight: 500; }

  /* ── NEW: FEAR TO COMFORT PSYCHOLOGY SECTION ── */
/* Journey – desktop horizontal, mobile vertical */
.comfort-intro { max-width: 680px; margin-bottom: 60px; }
.comfort-journey {
  display: grid; grid-template-columns: repeat(4,1fr);
  gap: 0; position: relative; margin-bottom: 72px;
}
/* Desktop: horizontal line */
.comfort-intro { max-width: 680px; margin-bottom: 60px; }
.comfort-journey::before {
  content: ''; position: absolute;
  top: 44px; left: 12.5%; right: 12.5%;
  height: 2px; width: auto;
  background: linear-gradient(90deg,
    #ef4444 0%,#ef4444 16%,
    #f59e0b 33%,#f59e0b 49%,
    #22c55e 66%,#22c55e 82%,
    #16a34a 100%);
  opacity: 0.3; z-index: 0;
}
/* Mobile: single column + vertical line */
@media (max-width: 600px) {
  .comfort-journey { grid-template-columns: 1fr; gap: 0; }
  .comfort-journey::before {
    left: 43px; right: auto; top: 44px; bottom: 44px;
    width: 2px; height: auto;
    background: linear-gradient(180deg,
      #ef4444 0%,#ef4444 12%,
      #f59e0b 30%,#f59e0b 55%,
      #22c55e 72%,#22c55e 88%,
      #16a34a 100%);
  }
}
.comfort-step {
  display: flex; flex-direction: column; align-items: center;
  padding: 0 12px; position: relative; z-index: 1;
}
@media (max-width: 600px) {
  .comfort-step {
    flex-direction: row; align-items: flex-start;
    gap: 20px; padding: 0 0 32px 0; text-align: left;
  }
  .comfort-step:last-child { padding-bottom: 0; }
}
.comfort-step-icon {
  width: 88px; height: 88px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 20px; position: relative;
  transition: transform 0.25s ease;
  border: 1.5px solid transparent; flex-shrink: 0;
  font-size: 2rem;
}
.comfort-step:hover .comfort-step-icon { transform: translateY(-4px); }
@media (max-width: 600px) {
  .comfort-step-icon { margin-bottom: 0; }
  .comfort-step:hover .comfort-step-icon { transform: scale(1.04); }
}
.comfort-step:nth-child(1) .comfort-step-icon { background:rgba(239,68,68,0.1); border-color:rgba(239,68,68,0.3); }
.comfort-step:nth-child(2) .comfort-step-icon { background:rgba(245,158,11,0.1); border-color:rgba(245,158,11,0.3); }
.comfort-step:nth-child(3) .comfort-step-icon { background:rgba(34,197,94,0.1); border-color:rgba(34,197,94,0.3); }
.comfort-step:nth-child(4) .comfort-step-icon { background:rgba(34,197,94,0.1); border-color:rgba(34,197,94,0.3); }
.comfort-step-num {
  position: absolute; top: -6px; right: -6px;
  width: 22px; height: 22px; border-radius: 50%;
  font-size: 11px; font-weight: 700; color: #fff;
  display: flex; align-items: center; justify-content: center;
  border: 2px solid var(--cream);
}
.comfort-step:nth-child(1) .comfort-step-num { background:#ef4444; }
.comfort-step:nth-child(2) .comfort-step-num { background:#f59e0b; }
.comfort-step:nth-child(3) .comfort-step-num { background:#22c55e; }
.comfort-step:nth-child(4) .comfort-step-num { background:#16a34a; }
.comfort-step-body { display:flex; flex-direction:column; align-items:center; }
@media (max-width:600px) { .comfort-step-body { align-items:flex-start; padding-top:4px; } }
.comfort-step-pill {
  display:inline-block; font-size:0.74rem; font-weight:700;
  letter-spacing:0.1em; text-transform:uppercase;
  padding:3px 10px; border-radius:20px; margin-bottom:8px;
}
.comfort-step:nth-child(1) .comfort-step-pill { background:rgba(239,68,68,0.1); color:#ef4444; }
.comfort-step:nth-child(2) .comfort-step-pill { background:rgba(245,158,11,0.1); color:#b45309; }
.comfort-step:nth-child(3) .comfort-step-pill { background:rgba(34,197,94,0.1); color:#15803d; }
.comfort-step:nth-child(4) .comfort-step-pill { background:rgba(34,197,94,0.1); color:#15803d; }
.comfort-step-title {
  font-family:'Cormorant Garamond',serif; font-size:1.3rem;
  font-weight:500; color:var(--navy); text-align:center;
  margin-bottom:8px; line-height:1.3;
}
@media (max-width:600px) { .comfort-step-title { text-align:left; } }
.comfort-step-desc {
  font-size:0.99rem; line-height:1.7; color:var(--text-mid);
  text-align:center; font-weight:300;
}
@media (max-width:600px) { .comfort-step-desc { text-align:left; } }

  /* Slow Dentistry Philosophy Banner */
  .philosophy-banner {
    background: linear-gradient(135deg, var(--navy) 0%, var(--navy-light) 60%, #3a2060 100%);
    border-radius: 16px; padding: 48px 48px;
    display: flex; align-items: flex-start; gap: 36px;
    margin-bottom: 72px; position: relative; overflow: hidden;
  }
  .philosophy-banner::before {
    content: ''; position: absolute; top: 0; right: 0;
    width: 300px; height: 300px; border-radius: 50%;
    background: radial-gradient(circle, rgba(201,137,106,0.15), transparent);
    transform: translate(30%, -30%);
  }
  .philosophy-icon-wrap {
    width: 80px; height: 80px; flex-shrink: 0;
    background: rgba(201,137,106,0.15); border: 1px solid rgba(201,137,106,0.3);
    border-radius: 50%; display: flex; align-items: center; justify-content: center;
    font-size: 2.2rem;
  }
  .philosophy-text { flex: 1; }
  .philosophy-label { font-size: 0.88rem; letter-spacing: 0.24em; color: var(--gold); text-transform: uppercase; font-weight: 600; margin-bottom: 10px; }
  .philosophy-headline { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.9rem, 3.2vw, 3rem); font-weight: 400; color: var(--white); margin-bottom: 14px; line-height: 1.3; }
  .philosophy-headline em { color: var(--blush); font-style: italic; }
  .philosophy-body { font-size: 1.1rem; line-height: 1.85; color: rgba(255,255,255,0.75); font-weight: 300; max-width: 600px; }

  /* ── FAQ ACCORDION ── */
  .faq-title { font-family: 'Cormorant Garamond', serif; font-size: clamp(1.9rem, 3.1vw, 2.6rem); font-weight: 400; color: var(--navy); margin-bottom: 8px; }
  .faq-title em { font-style: italic; color: var(--rose-gold); }
  .faq-sub { font-size: 1.1rem; color: var(--text-mid); margin-bottom: 32px; font-weight: 300; }
  .faq-list { max-width: 820px; }
  .faq-item {
    border-bottom: 1px solid rgba(201,137,106,0.18);
    overflow: hidden;
  }
  .faq-item:first-child { border-top: 1px solid rgba(201,137,106,0.18); }
  .faq-question {
    width: 100%; background: none; border: none; cursor: pointer;
    display: flex; align-items: center; justify-content: space-between; gap: 16px;
    padding: 22px 0; text-align: left;
    font-family: 'Jost', sans-serif; font-size: 1.05rem; font-weight: 500;
    color: var(--navy); transition: color 0.25s;
  }
  .faq-question:hover { color: var(--rose-gold); }
  .faq-chevron {
    width: 28px; height: 28px; border-radius: 50%;
    background: var(--cream); border: 1px solid rgba(201,137,106,0.2);
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0; transition: all 0.3s; font-size: 1.8rem; color: var(--rose-gold);
  }
  .faq-item.open .faq-chevron { background: var(--rose-gold); color: var(--white); transform: rotate(180deg); }
  .faq-item.open .faq-question { color: var(--rose-gold); }
  .faq-answer {
    max-height: 0; overflow: hidden;
    transition: max-height 0.4s cubic-bezier(0.4,0,0.2,1), padding 0.3s;
    padding: 0;
  }
  .faq-item.open .faq-answer { max-height: 400px; padding-bottom: 20px; }
  .faq-answer p { font-size: 1.1rem; line-height: 1.85; color: var(--text-mid); font-weight: 300; }

  /* ── REVIEWS ── */
  #reviews { background: var(--navy); overflow: hidden; }
  #reviews .section-eyebrow { color: var(--gold); }
  #reviews .section-title { color: var(--white); }
  #reviews .section-sub { color: rgba(255,255,255,0.6); }
  .reviews-header { margin-bottom: 48px; }
  .reviews-rating-bar { display: flex; align-items: center; gap: 20px; margin-top: 24px; }
  .reviews-big-score { font-family: 'Cormorant Garamond', serif; font-size: 4rem; font-weight: 600; color: var(--white); line-height: 1; }
  .reviews-stars-col { display: flex; flex-direction: column; gap: 4px; }
  .stars { color: #fbbf24; font-size: 1.2rem; letter-spacing: 2px; }
  .reviews-count { font-size: 0.78rem; color: rgba(255,255,255,0.5); }
  .reviews-track-wrap { position: relative; overflow: hidden; }
  .reviews-track-wrap::before, .reviews-track-wrap::after {
    content: ''; position: absolute; top: 0; bottom: 0; width: 80px; z-index: 2; pointer-events: none;
  }
  .reviews-track-wrap::before { left: 0; background: linear-gradient(90deg, var(--navy), transparent); }
  .reviews-track-wrap::after { right: 0; background: linear-gradient(-90deg, var(--navy), transparent); }
  .reviews-track {
    display: flex; gap: 20px;
    animation: reviewsScroll 32s linear infinite;
    width: max-content;
  }
  .reviews-track:hover { animation-play-state: paused; }
  @keyframes reviewsScroll {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
  }
  .review-card {
    background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1);
    border-radius: 12px; padding: 24px 28px; width: 320px; flex-shrink: 0;
    transition: background 0.3s; position: relative;
  }
  .review-card::before {
    content: '"'; position: absolute; top: 12px; right: 20px;
    font-family: 'Cormorant Garamond', serif; font-size: 5rem; color: rgba(201,137,106,0.15);
    line-height: 1; font-style: italic;
  }
  .review-card:hover { background: rgba(255,255,255,0.1); }
  .review-stars { color: #fbbf24; font-size: 0.85rem; letter-spacing: 2px; margin-bottom: 12px; }
  .review-text { font-size: 0.85rem; color: rgba(255,255,255,0.75); line-height: 1.75; margin-bottom: 18px; font-weight: 300; font-style: italic; }
  .review-author { display: flex; align-items: center; gap: 12px; }
  .review-avatar { width: 38px; height: 38px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 0.85rem; flex-shrink: 0; }
  .review-name { font-size: 0.82rem; font-weight: 600; color: var(--white); }
  .review-label { font-size: 0.72rem; color: rgba(255,255,255,0.4); margin-top: 1px; }
  .review-google-badge { font-size: 0.65rem; color: rgba(255,255,255,0.4); letter-spacing: 0.08em; text-transform: uppercase; display: flex; align-items: center; gap: 4px; }
  .review-google-dot { width: 6px; height: 6px; border-radius: 50%; }

  /* ── NEW: BLOG SECTION ── */
  #blog { background: var(--navy); }
  #blog .section-eyebrow { color: var(--gold); }
  #blog .section-title { color: var(--white); }
  #blog .section-sub { color: rgba(255,255,255,0.6); margin-bottom: 48px; }
  .blog-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
  .blog-card {
    background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px; overflow: hidden; transition: all 0.3s; cursor: pointer;
  }
  .blog-card:hover { background: rgba(255,255,255,0.09); transform: translateY(-4px); box-shadow: 0 16px 40px rgba(0,0,0,0.3); }
  .blog-card-img {
    height: 180px; background: linear-gradient(135deg, rgba(201,137,106,0.2), rgba(26,35,64,0.8));
    display: flex; align-items: center; justify-content: center;
    font-size: 3rem; position: relative; overflow: hidden;
  }
  .blog-card-img::after {
    content: ''; position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(26,35,64,0.7), transparent);
  }
  .blog-card-cat {
    position: absolute; bottom: 14px; left: 16px; z-index: 2;
    font-size: 0.72rem; letter-spacing: 0.14em; font-weight: 700; text-transform: uppercase;
    padding: 4px 12px; border-radius: 20px;
    background: rgba(201,137,106,0.3); color: var(--blush);
    backdrop-filter: blur(4px); border: 1px solid rgba(201,137,106,0.3);
  }
  .blog-card-body { padding: 24px; }
  .blog-card-meta { font-size: 0.88rem; color: rgba(255,255,255,0.35); margin-bottom: 10px; letter-spacing: 0.06em; }
  .blog-card-title {
    font-family: 'Cormorant Garamond', serif; font-size: 1.2rem;
    font-weight: 500; color: var(--white); line-height: 1.35; margin-bottom: 12px;
  }
  .blog-card-excerpt { font-size: 1.05rem; line-height: 1.7; color: rgba(255,255,255,0.5); font-weight: 300; margin-bottom: 18px; }
  .blog-card-link {
    font-size: 0.75rem; letter-spacing: 0.1em; font-weight: 600; text-transform: uppercase;
    color: var(--rose-gold); text-decoration: none; display: inline-flex; align-items: center; gap: 6px;
    transition: gap 0.2s;
  }
  .blog-card:hover .blog-card-link { gap: 10px; }

  /* Blog Modal */
  .blog-modal-overlay {
    display: none; position: fixed; inset: 0;
    background: rgba(26,35,64,0.7); z-index: 2100;
    align-items: flex-start; justify-content: center; padding: 40px 20px;
    overflow-y: auto;
  }
  .blog-modal-overlay.open { display: flex; }
  .blog-modal-box {
    background: var(--white); border-radius: 8px;
    max-width: 720px; width: 100%; position: relative;
    animation: fadeUp 0.35s ease;
  }
  .blog-modal-header {
    height: 220px; background: linear-gradient(135deg, var(--navy), var(--navy-light));
    display: flex; align-items: center; justify-content: center;
    font-size: 4rem; position: relative; border-radius: 8px 8px 0 0;
  }
  .blog-modal-close {
    position: absolute; top: 16px; right: 16px; background: rgba(255,255,255,0.15);
    border: none; font-size: 1.2rem; cursor: pointer; color: var(--white);
    width: 36px; height: 36px; display: flex; align-items: center; justify-content: center;
    border-radius: 50%; transition: background 0.2s; z-index: 10;
  }
  .blog-modal-close:hover { background: rgba(255,255,255,0.3); }
  .blog-modal-content { padding: 40px; }
  .blog-modal-cat {
    font-size: 0.68rem; letter-spacing: 0.16em; font-weight: 700; text-transform: uppercase;
    color: var(--rose-gold); margin-bottom: 12px; display: block;
  }
  .blog-modal-title { font-family: 'Cormorant Garamond', serif; font-size: 2rem; font-weight: 400; color: var(--navy); margin-bottom: 8px; line-height: 1.3; }
  .blog-modal-meta { font-size: 0.78rem; color: var(--text-light); margin-bottom: 28px; }
  .blog-modal-body { font-size: 0.9rem; line-height: 1.95; color: var(--text-mid); font-weight: 300; }
  .blog-modal-body p { margin-bottom: 16px; }
  .blog-modal-body h3 { font-family: 'Cormorant Garamond', serif; font-size: 1.3rem; color: var(--navy); margin: 24px 0 10px; font-weight: 500; }

  /* ── BOOK APPOINTMENT ── */
  #book { background: linear-gradient(135deg, var(--blush) 0%, var(--champagne) 100%); padding: 40px 20px; }
  #book .section-title { color: var(--navy); text-align: center; }
  #book .section-eyebrow { text-align: center; }
  #book .section-sub { max-width: 480px; margin: 0 auto 48px; color: var(--text-mid); text-align: center; }

  /* NEW: Appointment Form */
  .appt-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: start; }
  .appt-form-wrap {
    background: var(--white); border-radius: 8px; padding: 30px;
    box-shadow: 0 12px 48px rgba(26,35,64,0.1);
  }
  .appt-form-title {
    font-family: 'Cormorant Garamond', serif; font-size: 1.7rem;
    color: var(--navy); font-weight: 400; margin-bottom: 24px;
  }
  .appt-form .form-group { margin-bottom: 18px; }
  .appt-form .form-group label { display: block; font-size: 0.72rem; letter-spacing: 0.1em; color: var(--text-mid); text-transform: uppercase; margin-bottom: 8px; }
  .appt-form .form-group input,
  .appt-form .form-group select,
  .appt-form .form-group textarea {
    width: 100%; padding: 12px 16px; border: 1px solid rgba(201,137,106,0.25);
    border-radius: 4px; font-family: 'Jost', sans-serif; font-size: 0.98rem;
    color: var(--text-dark); background: var(--cream); outline: none; transition: border-color 0.25s;
  }
  .appt-form .form-group input:focus,
  .appt-form .form-group select:focus,
  .appt-form .form-group textarea:focus { border-color: var(--rose-gold); }
  .appt-form .form-group textarea { height: 80px; resize: vertical; }
  .appt-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
  .appt-submit {
    width: 100%; background: var(--rose-gold); color: white;
    padding: 15px; border: none; border-radius: 4px;
    font-family: 'Jost', sans-serif; font-size: 0.85rem;
    letter-spacing: 0.12em; text-transform: uppercase; font-weight: 600;
    cursor: pointer; transition: all 0.25s;
    display: flex; align-items: center; justify-content: center; gap: 10px;
    margin-top: 8px;
  }
  .appt-submit:hover { background: var(--terracotta); transform: translateY(-1px); box-shadow: 0 6px 24px var(--blush); }
  .appt-info-side { padding-top: 8px; }
  .appt-info-heading {
    font-family: 'Cormorant Garamond', serif; font-size: 2.9rem;
    font-weight: 400; color: var(--navy); margin-bottom: 16px; line-height: 1.3;
  }
  .appt-info-heading em { color: var(--rose-gold); font-style: italic; }
  .appt-info-sub { font-size: 1.2rem; line-height: 1.8; color: var(--text-mid); margin-bottom: 32px; font-weight: 300; }
  .appt-perks { display: flex; flex-direction: column; gap: 14px; margin-bottom: 32px; }
  .appt-perk { display: flex; align-items: center; gap: 14px; }
  .appt-perk-icon {
    width: 40px; height: 40px; border-radius: 50%; flex-shrink: 0;
    background: rgba(201,137,106,0.12); border: 1px solid rgba(201,137,106,0.25);
    display: flex; align-items: center; justify-content: center; font-size: 1.1rem;
  }
  .appt-perk-text { font-size: 1.1rem; color: var(--text-mid); line-height: 1.5; }
  .appt-perk-text strong { color: var(--navy); font-weight: 600; display: block; font-size: 0.92rem; margin-bottom: 1px; }
  .appt-wa-direct {
    display: inline-flex; align-items: center; gap: 10px;
    background: var(--navy); color: var(--white);
    padding: 14px 28px; border-radius: 4px;
    text-decoration: none; font-size: 0.82rem; letter-spacing: 0.1em;
    font-weight: 500; text-transform: uppercase; transition: background 0.25s;
  }
  .appt-wa-direct:hover { background: var(--rose-gold); }

  /* ── CONTACT ── */
  #contact { background: var(--cream); }
  .contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: start; }
  .contact-item { display: flex; gap: 16px; margin-bottom: 28px; align-items: flex-start; }
  .contact-icon { width: 44px; height: 44px; background: var(--white); border: 1px solid var(--blush); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.1rem; flex-shrink: 0; box-shadow: 0 4px 16px rgba(201,137,106,0.1); }
  .contact-label { font-size: 0.82rem; letter-spacing: 0.1em; color: var(--rose-gold); text-transform: uppercase; margin-bottom: 4px; }
  .contact-val { font-size: 1.1rem; color: var(--navy); font-weight: 400; }
  .contact-form { background: var(--white); padding: 40px; border-radius: 4px; box-shadow: 0 8px 40px rgba(26,35,64,0.06); }
  .form-group { margin-bottom: 20px; }
  .form-group label { display: block; font-size: 0.72rem; letter-spacing: 0.1em; color: var(--text-mid); text-transform: uppercase; margin-bottom: 8px; }
  .form-group input, .form-group textarea, .form-group select { width: 100%; padding: 12px 16px; border: 1px solid rgba(201,137,106,0.25); border-radius: 2px; font-family: 'Jost', sans-serif; font-size: 0.88rem; color: var(--text-dark); background: var(--cream); outline: none; transition: border-color 0.25s; }
  .form-group input:focus, .form-group textarea:focus, .form-group select:focus { border-color: var(--rose-gold); }
  .form-group textarea { height: 100px; resize: vertical; }
  .form-submit { width: 100%; background: var(--navy); color: var(--white); padding: 14px; border: none; border-radius: 2px; font-family: 'Jost', sans-serif; font-size: 0.82rem; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 500; cursor: pointer; transition: background 0.25s; }
  .form-submit:hover { background: var(--rose-gold); }

  /* ── MAP ── */
  #findus { background: var(--white); padding: 80px 40px; }
  #findus .section-eyebrow, #findus .section-title { text-align: center; }
  #findus .section-title { margin-bottom: 40px; }
  .map-wrap { border-radius: 4px; overflow: hidden; box-shadow: 0 8px 40px rgba(26,35,64,0.1); border: 1px solid rgba(201,137,106,0.15); }
  .map-wrap iframe { display: block; width: 100%; height: 440px; border: none; }

  /* ── FOOTER ── */
  footer { background: var(--navy); color: rgba(255,255,255,0.6); padding: 60px 40px 32px; }
  .footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 48px; max-width: 1200px; margin: 0 auto; }
  .footer-logo { margin-bottom: 16px; }
  .footer-logo img { width:54px;height:54px;border-radius:50%; object-fit: contain; display: block; mix-blend-mode: screen; }
  .footer-about { font-size: 0.98rem; line-height: 1.8; font-weight: 300; max-width: 280px; }
  .footer-col-title { font-size: 0.72rem; letter-spacing: 0.2em; color: var(--gold); text-transform: uppercase; font-weight: 500; margin-bottom: 18px; }
  .footer-links { list-style: none; }
  .footer-links li { margin-bottom: 10px; }
  .footer-links{display:flex;flex-direction:column;gap:8px}
  .footer-links li a{font-size:.83rem;color:rgba(210,200,190,0.55);transition:color .2s}
  .footer-links li a:hover,.footer-links li a.factive{color:rgba(225,215,205,0.9)}
  .footer-bottom{max-width:1080px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:18px 0;font-size:.75rem;color:rgba(210,200,190,0.35)}
  .footer-bottom p { font-size: 0.78rem; }
  .footer-policy-links{display:flex;gap:18px}
  .footer-policy-links a{color:rgba(210,200,190,0.35);transition:color .2s}
  .footer-policy-links a:hover{color:rgba(210,200,190,0.7)}





  /* ── MODAL ── */
  .modal-overlay { display: none; position: fixed; inset: 0; background: rgba(26,35,64,0.5); z-index: 2000; align-items: center; justify-content: center; padding: 20px; }
  .modal-overlay.open { display: flex; }
  .modal-box { background: var(--white); border-radius: 4px; max-width: 680px; width: 100%; max-height: 80vh; overflow-y: auto; padding: 48px; position: relative; animation: fadeUp 0.3s ease; }
  .modal-close { position: absolute; top: 16px; right: 16px; background: none; border: none; font-size: 1.4rem; cursor: pointer; color: var(--text-mid); width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; border-radius: 50%; transition: background 0.2s; }
  .modal-close:hover { background: var(--champagne); }
  .modal-title { font-family: 'Cormorant Garamond', serif; font-size: 2rem; color: var(--navy); margin-bottom: 24px; }
  .modal-body { font-size: 0.88rem; line-height: 1.9; color: var(--text-mid); font-weight: 300; }
  .modal-body h3 { font-size: 1rem; color: var(--navy); margin: 20px 0 8px; font-weight: 500; }

  /* ── ANIMATIONS ── */
  @keyframes fadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }

  .clinic-name { 
    font-family: 'Cormorant Garamond', serif; 
    font-size: clamp(1rem, 1.6vw, 1.6rem); 
    font-weight: 400; line-height: 1.3; color: var(--teal); 
    margin-bottom: 0px; text-align: left; display: block; width: max-content;
    margin-right: auto; 
  }
  .clinic-name em { font-style: italic; color: var(--rose-gold); }

  /* ── RESPONSIVE ── */
  @media (max-width: 900px) {
    nav {
      padding: 0 20px;
      display: grid;
      grid-template-columns: auto 1fr auto auto;
      align-items: center;
    }
    .nav-logo   { grid-column: 1; }
    .nav-links  { display: none !important; }
    /* Search button — centred in remaining space */
    .adc-search-trigger {
      grid-column: 3;
      margin: 0 auto;
    }
    /* Hamburger — far right */
    .hamburger  { grid-column: 4; display: flex; margin-left: 12px; }
    .hero-content { grid-template-columns: 1fr; gap: 40px; padding: 30px 20px 60px; }
    /* .hero-slideshow { height: 460px; } */
    .about-grid { grid-template-columns: 1fr; gap: 48px; }
    .about-img-wrap { min-height: auto; }
    .about-img-wrap img { height: 320px; }
    .svc-tabs { grid-template-columns: repeat(2,1fr); }
    .svc-tab { border-right: 1px solid rgba(201,137,106,0.12); border-bottom: 1px solid rgba(201,137,106,0.12); }
    .svc-tab:nth-child(2) { border-right: none; }
    .svc-tab:last-child { border-right: none; }
    .svc-items-grid { grid-template-columns: 1fr 1fr; }
    .products-grid { grid-template-columns: 1fr 1fr; }
    .contact-grid { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: 1fr 1fr; }
    section { padding: 72px 20px; }
    body.standalone-page section:first-of-type { padding-top: 80px !important; }
    .stat-row { gap: 10px; }
    .stat-num { font-size: 1.8rem; }
    .gallery-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 220px 180px 180px; }
    .gallery-item:nth-child(1) { grid-column: 1 / 3; grid-row: 1; }
    .gallery-item:nth-child(2) { grid-column: 1; grid-row: 2; }
    .gallery-item:nth-child(3) { grid-column: 2; grid-row: 2; }
    .gallery-item:nth-child(4) { grid-column: 1; grid-row: 3; }
    .gallery-item:nth-child(5) { grid-column: 2; grid-row: 3; }
    .comfort-journey { grid-template-columns: 1fr 1fr; gap: 32px; }
    .comfort-journey::before { display: none; }
    .philosophy-banner { flex-direction: column; gap: 24px; padding: 32px; }
    .blog-grid { grid-template-columns: 1fr; }
    .appt-layout { grid-template-columns: 1fr; }
    .appt-info-side { order: -1; }
  }
  @media (max-width: 600px) {
    /* .hero-slideshow { height: 460px; } */
    .svc-tabs { grid-template-columns: 1fr 1fr; }
    .svc-items-grid { grid-template-columns: 1fr; }
    .products-grid { grid-template-columns: 1fr; }
    .about-features { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: 1fr; gap: 32px; }
    .footer-bottom { flex-direction: column; align-items: flex-start; }
    section { padding: 60px 16px; }
    .modal-box { padding: 28px 20px; }
    .stat-row { gap: 8px; }
    .stat-box { padding: 14px 8px; }
    .stat-num { font-size: 1.6rem; }
    .svc-panel-intro { flex-direction: column; align-items: flex-start; }
    .reviews-rating-bar { flex-wrap: wrap; gap: 12px; }
    .reviews-big-score { font-size: 3rem; }
    .gallery-grid { grid-template-columns: 1fr; grid-template-rows: auto; }
    .gallery-item:nth-child(1),.gallery-item:nth-child(2),.gallery-item:nth-child(3),.gallery-item:nth-child(4),.gallery-item:nth-child(5) { grid-column: 1; grid-row: auto; height: 200px; }
    .comfort-journey { grid-template-columns: 1fr; }
    .appt-form-row { grid-template-columns: 1fr; }
    .blog-grid { grid-template-columns: 1fr; }
    .doctor-bio { padding: 24px 20px; }
  }
  @keyframes tagpulse {
  0%,100% { opacity:1; transform:scale(1); }
  50% { opacity:0.4; transform:scale(0.65); }
}
@media (max-width: 600px) {
  /* 1. Ensure the parent is the anchor for the line */
  .comfort-journey { 
    grid-template-columns: 1fr; 
    gap: 0; 
    position: relative; /* CRITICAL */
    padding-left: 0; 
    display: block; /* Sometimes grid hides pseudo-elements if not defined */
  }

  .comfort-journey::before {
    content: ""; 
    display: block;
    position: absolute;
    /* This centers the line exactly in the middle of the 88px icons */
    left: 44px; 
    top: 44px; 
    bottom: 44px;
    width: 2px;
    /* Remove 'height: auto' and use 'height: calc' to be safe */
    height: calc(100% - 88px); 
    background: linear-gradient(180deg, 
      #ef4444 0%, #ef4444 12%, 
      #f59e0b 30%, #f59e0b 55%, 
      #22c55e 72%, #22c55e 88%, 
      #16a34a 100%);
    opacity: 0.5; /* Increased opacity to test visibility */
    z-index: -1; /* Move it behind everything */
  }

  .comfort-step {
    position: relative;
    z-index: 2; /* Keep steps above the line */
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 20px;
    padding: 0 0 40px 0; /* Increased padding for better line length */
  }
}



/* ── CHATBOT SETTINGS (Variables) ── */

/* ── FLOATING BUBBLE ── */
#chat-bubble {
    position: fixed; 
    bottom: 25px; 
    right: 25px;
    width: 60px; 
    height: 60px; 
    background: var(--blush);
    border-radius: 50%; 
    display: flex; 
    align-items: center;
    justify-content: center; 
    font-size: 24px; 
    color: white;
    cursor: pointer; 
    box-shadow: 0 8px 25px rgba(26,35,64,0.3);
    z-index: 9999; 
    transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

#chat-bubble:hover { 
    transform: scale(1.1); 
}

/* Pulse Animation Around Bubble */
.pulse-ring {
    content: ''; 
    position: absolute; 
    width: 100%; 
    height: 100%;
    border-radius: 50%; 
    border: 2px solid var(--rose-gold);
    animation: chatPulse 2s infinite; 
    opacity: 0;
}

@keyframes chatPulse {
    0% { transform: scale(1); opacity: 0.5; }
    100% { transform: scale(1.6); opacity: 0; }
}

/* ── CHAT WINDOW (Small Version) ── */
#chat-window {
    position: fixed; 
    bottom: 95px; 
    right: 25px;
    width: 300px;  /* Reduced width */
    height: 420px; /* Reduced height */
    background: var(--chat-white);
    border-radius: 16px; 
    box-shadow: 0 15px 50px rgba(0,0,0,0.15);
    display: flex; 
    flex-direction: column; 
    overflow: hidden;
    z-index: 10000; 
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    transform-origin: bottom right;
}

/* Hides window when toggled */
.chat-hidden { 
    transform: scale(0) translateY(40px); 
    opacity: 0; 
    pointer-events: none; 
}

/* Header Styling */
.chat-header { 
    background: var(--rose-gold); 
    color: white; 
    padding: 15px; 
    display: flex; 
    justify-content: space-between; 
    align-items: center; 
}

.header-info { display: flex; align-items: center; gap: 10px; }

.header-avatar { 
    width: 35px; 
    height: 35px; 
    background: rgba(255,255,255,0.1); 
    border-radius: 50%; 
    display: flex; 
    align-items: center; 
    justify-content: center; 
    font-size: 1.2rem;
}

.header-name { 
    display: block; 
    font-size: 0.9rem; 
    font-family: 'Jost', sans-serif; 
    font-weight: 500;
}

.header-status { 
    font-size: 0.65rem; 
    color: var(--white); 
    display: flex; 
    align-items: center; 
    gap: 4px; 
}

.header-status::before { content: '●'; font-size: 8px; }

.chat-close { 
    background: none; 
    border: none; 
    color: white; 
    font-size: 1.2rem; 
    cursor: pointer; 
    opacity: 0.7; 
}

.chat-close:hover { opacity: 1; }

/* Body & Messages */
#chat-body { 
    flex: 1; 
    padding: 15px; 
    overflow-y: auto; 
    background: var(--chat-bg); 
    display: flex; 
    flex-direction: column; 
    gap: 10px;
}

/* Custom Scrollbar for Chat Body */
#chat-body::-webkit-scrollbar { width: 4px; }
#chat-body::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 10px; }

.bot-msg, .user-msg { 
    padding: 10px 14px; 
    border-radius: 14px; 
    font-size: 0.85rem; 
    line-height: 1.4; 
    max-width: 85%;
    font-family: 'Jost', sans-serif;
    word-wrap: break-word;
}

.bot-msg { 
    background: white; 
    color: var(--chat-navy); 
    border-bottom-left-radius: 2px; 
    box-shadow: 0 2px 5px rgba(0,0,0,0.05); 
    align-self: flex-start;
}

.user-msg { 
    background: var(--chat-gold); 
    color: white; 
    border-bottom-right-radius: 2px; 
    align-self: flex-end;
}

/* Footer Styling */
.chat-footer { 
    padding: 12px; 
    display: flex; 
    background: white; 
    border-top: 1px solid #f1f5f9; 
    gap: 8px; 
}

.chat-footer input { 
    flex: 1; 
    border: 1px solid #e2e8f0; 
    padding: 8px 15px; 
    border-radius: 20px; 
    outline: none; 
    font-family: 'Jost', sans-serif; 
    font-size: 0.85rem; 
    transition: border 0.3s;
}

.chat-footer input:focus { border-color: var(--chat-gold); }

.send-btn { 
    background: var(--chat-navy); 
    color: white; 
    border: none; 
    width: 35px; 
    height: 35px; 
    border-radius: 50%; 
    cursor: pointer;
    display: flex; 
    align-items: center; 
    justify-content: center; 
    transition: 0.3s;
    padding: 0;
}

.send-btn:hover { background: var(--chat-gold); }

/* Mobile Adjustments */
@media (max-width: 480px) {
    #chat-window { 
        width: calc(100% - 40px); 
        right: 20px; 
        bottom: 90px; 
        height: 60vh; 
    }
    #chat-bubble { 
        width: 55px; 
        height: 55px; 
        bottom: 20px; 
        right: 20px; 
    }
}
/* WhatsApp Button inside Bot Message */
.chat-wa-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #25D366; /* WhatsApp Green */
    color: white !important;
    padding: 8px 16px;
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.8rem;
    margin-top: 5px;
    transition: background 0.3s;
}

.chat-wa-btn:hover {
    background: #128C7E;
}
/* Styling for the Direct Call Button */
.chat-call-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--teal); /* Your Brand Navy */
    color: white !important;
    padding: 8px 16px;
    border-radius: 20px;
    text-decoration: none;
    font-weight: 600;
    font-size: 0.8rem;
    margin-top: 8px;
    transition: all 0.3s;
    border: 1px solid rgba(255,255,255,0.1);
}

.chat-call-btn:hover {
    background: var(--chat-gold); /* Turns Gold on hover */
    transform: translateY(-1px);
}

/* Ensure buttons sit nicely if they wrap */
.bot-msg a {
    margin-right: 5px;
    margin-bottom: 5px;
}

/* --- CREAM BOOKING FLOAT (MOBILE ONLY) --- */
#booking-float {
    display: none; /* Hidden on Desktop */
    position: fixed;
    bottom: 95px; /* Sits above the chat bubble */
    right: 25px;
    width: 60px;
    height: 60px;
    background: #fdf5e6; /* Cream Color */
    color: #1a2340;      /* Dark Navy icon for contrast */
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    /* Soft shadow to make cream pop on white backgrounds */
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1); 
    z-index: 9998;
    transition: all 0.3s ease;
    border: 1px solid #eaddca; /* Subtle border to define the shape */
}

#booking-float span { 
    font-size: 24px; 
}

/* Hover effect */
#booking-float:hover {
    background: #fffafa; /* Snow white on hover */
    transform: scale(1.1);
}

/* --- TRIGGER FOR MOBILE DEVICES --- */
@media (max-width: 768px) {
    #booking-float {
        display: flex; /* Shows only on mobile/tablets */
    }
}

@media (max-width: 480px) {
    #booking-float { 
        bottom: 85px; 
        right: 20px; 
        width: 55px; 
        height: 55px; 
    }
}








*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Jost',sans-serif;background:var(--cream);color:var(--text-dark);overflow-x:hidden}

/* ══════════════════════════════════════════════
   STICKY SIDE BUTTONS
══════════════════════════════════════════════ */
.sticky-side-btns{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:900;display:flex;flex-direction:column;gap:0}
.ssb-btn{display:flex;align-items:center;gap:8px;background:var(--navy);color:#fff;padding:12px 14px 12px 12px;font-family:"Jost",sans-serif;font-size:.71rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;border:none;border-left:3px solid var(--rose-gold);border-bottom:1px solid rgba(255,255,255,.08);transition:background .22s,transform .28s;white-space:nowrap;transform:translateX(calc(100% - 46px));min-width:170px;text-decoration:none}
.ssb-btn:first-child{border-radius:8px 0 0 0}.ssb-btn:last-child{border-radius:0 0 0 8px;border-bottom:none}
.ssb-btn:hover{background:var(--rose-gold);transform:translateX(0)}
.ssb-btn .ssb-icon{font-size:0.9rem;flex-shrink:0;width:24px;text-align:center}
.ssb-emi{background:#15803d!important;border-left-color:#22c55e!important}.ssb-emi:hover{background:#16a34a!important}
.ssb-emi-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22c55e;margin-left:4px;vertical-align:middle;animation:ssb-pulse 1.6s ease-in-out infinite}
@keyframes ssb-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.5)}}
@media(max-width:900px){.sticky-side-btns{display:none}}

/* MOBILE BOTTOM BAR */
.mob-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:1050;background:var(--navy);border-top:1px solid rgba(201,137,106,.18);box-shadow:0 -4px 24px rgba(26,35,64,.12);padding:6px 8px env(safe-area-inset-bottom,0px);align-items:center;justify-content:space-around;gap:2px}
.mob-bar-item{display:flex;flex-direction:column;align-items:center;justify-content: center;gap:3px;text-decoration:none;
color:rgba(255,255,255,0.7);font-family:"Jost",sans-serif;font-size:.58rem;font-weight:600;letter-spacing:.04em;
text-transform:uppercase;cursor:pointer;padding:5px 6px;border-radius:8px;border:none;background:none;
transition:background .2s,color .2s;flex:1;max-width:68px}
.mob-bar-item .mb-icon{font-size:1.4rem;line-height:1}



.mob-bar-call{background:var(--blush)!important;color:#fff!important;border-radius:50%!important;
width:43px!important;height:43px!important;flex:none!important;max-width:none!important;padding:0!important;
margin-bottom:6px;box-shadow:0 4px 20px rgba(37,211,102,.45);animation:call-pulse 2s ease-in-out infinite}
@keyframes call-pulse {
    0%, 100% { 
        /* Starting glow (Inner/Tight) */
        box-shadow: 0 4px 15px rgba(201, 137, 106, 0.45); 
    }
    50% { 
        /* Blinking peak (Outer/Spread) - increased opacity to 0.7 for "pop" */
        box-shadow: 0 4px 30px rgba(201, 137, 106, 0.75); 
    }
}
.mob-bar-call .mb-label{display:none}
/* .mob-bar-wa{background:var(--navy)!important;color:#fff!important} */
.mob-bar-wa:active{background:var(--rose-gold)!important}
.mob-bar-item:not(.mob-bar-call):not(.mob-bar-wa):hover{background:var(--champagne);color:var(--navy)}
@media(max-width:900px){.mob-bar{display:flex}body{padding-bottom:70px}#chat-bubble{bottom:82px!important}#chat-window{bottom:152px!important}}

/* ── FIX: booking-float stays visible on mobile, repositioned above mob-bar ── */
@media(max-width:900px){
  #booking-float{
    bottom:150px!important;
    right:24px!important;
    display:flex!important;
    z-index:1049;
  }
}

/* ── MOBILE TREATMENT QUICK-ACCESS STRIP (replaces hidden sticky side btns) ── */
.mob-tx-strip{
  display:none;
  position:fixed;
  bottom:55px; /* sits just above mob-bar */
  left:0;right:0;
  z-index:1048;
  background:rgba(26,35,64,0.97);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-top:1px solid rgba(201,137,106,0.25);
  padding:0;
  transition:transform .35s cubic-bezier(0.4,0,0.2,1),opacity .3s;
  transform:translateY(100%);
  opacity:0;
  pointer-events:none;
}
.mob-tx-strip.open{
  transform:translateY(0);
  opacity:1;
  pointer-events:auto;
}
.mob-tx-strip-inner{
  display:flex;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  gap:0;
}
.mob-tx-strip-inner::-webkit-scrollbar{display:none}
.mob-tx-btn{
  flex:0 0 auto;
  scroll-snap-align:start;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  padding:10px 14px 8px;
  background:none;
  border:none;
  border-right:1px solid rgba(255,255,255,0.06);
  color:#fff;
  font-family:'Jost',sans-serif;
  font-size:.58rem;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
  cursor:pointer;
  white-space:nowrap;
  transition:background .2s;
}
.mob-tx-btn:last-child{border-right:none}
.mob-tx-btn .mtb-icon{font-size:1.4rem;line-height:1;margin-bottom:2px}
.mob-tx-btn:hover,.mob-tx-btn:active{background:rgba(201,137,106,0.2)}
.mob-tx-btn.emi-btn{background:rgba(21,128,61,0.3);color:#4ade80}
.mob-tx-btn.emi-btn:hover{background:rgba(21,128,61,0.5)}
.mob-tx-toggle{
  position:fixed;
  bottom:90px;
  left:50%;
  transform:translateX(-50%);
  z-index:1049;
  background:var(--navy);
  color:#fff;
  border:1px solid rgba(201,137,106,0.4);
  border-radius:20px;
  padding:7px 16px;
  font-family:'Jost',sans-serif;
  font-size:.65rem;
  font-weight:600;
  letter-spacing:.1em;
  text-transform:uppercase;
  cursor:pointer;
  display:none;
  align-items:center;
  gap:6px;
  box-shadow:0 4px 20px rgba(26,35,64,0.4);
  transition:background .2s,transform .2s;
}
.mob-tx-toggle:hover{background:var(--rose-gold)}
.mob-tx-toggle-dot{width:6px;height:6px;border-radius:50%;background:#22c55e;animation:ssb-pulse 1.6s ease-in-out infinite}
@media(max-width:900px){
  .sticky-side-btns{display:none!important}
  .mob-tx-strip{display:block}
  .mob-tx-toggle{display:flex}
}

.mob-tx-close {
  border-left: 1px solid rgba(255,255,255,0.12);
  border-right: none;
  color: rgba(255,255,255,0.5);
  position: sticky;
  right: 0;
  background: rgba(26,35,64,0.97);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.mob-tx-close:hover, .mob-tx-close:active {
  background: rgba(220,38,38,0.25);
  color: #f87171;
}
.mob-tx-close .mtb-icon {
  font-size: 1rem;
}
/* TREATMENT PAGE OVERLAYS */
/* ── TREATMENT OVERLAY CLOSE — redesigned as sticky header bar ── */
.tx-overlay{display:none;position:fixed;inset:0;z-index:2500;background:var(--cream);overflow-y:auto}
.tx-overlay.open{display:block}
.tx-close{
  position:sticky;
  top:0;
  left:0;right:0;
  z-index:2600;
  background:rgba(26,35,64,0.96);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  color:#fff;
  border:none;
  width:100%;
  height:52px;
  display:flex;
  align-items:center;
  gap:1px;
  padding:0 20px;
  font-family:'Jost',sans-serif;
  font-size:.75rem;
  letter-spacing:.1em;
  font-weight:600;
  text-transform:uppercase;
  cursor:pointer;
  border-bottom:1px solid rgba(201,137,106,0.25);
  transition:background .2s;
  text-align:left;
}
.tx-close::before{
  content:'← Back';
  font-size:.72rem;
  letter-spacing:.12em;
  font-weight:600;
  color:rgba(255,255,255,0.7);
  flex-shrink:0;
  transition:color .2s;
}
.tx-close:hover{background:rgba(201,137,106,0.25)}
.tx-close:hover::before{color:#fff}
.tx-close-label{
  flex:1;
  text-align:center;
  font-family:'Cormorant Garamond',serif;
  font-size:1rem;
  font-weight:400;
  letter-spacing:.04em;
  text-transform:none;
  color:rgba(255,255,255,0.9);
}
.tx-close-x{
  flex-shrink:0;
  width:30px;height:30px;
  border-radius:50%;
  background:rgba(255,255,255,0.1);
  border:1px solid rgba(255,255,255,0.15);
  display:flex;align-items:center;justify-content:center;
  font-size:1rem;color:rgba(255,255,255,0.7);
  transition:background .2s,color .2s;
  font-style:normal;
}
.tx-close:hover .tx-close-x{background:var(--rose-gold);color:#fff;border-color:var(--rose-gold)}
/* tx-hero now doesn't need top-right fixed close offset */
.tx-hero{min-height:55vh;display:flex;align-items:flex-end;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--navy) 0%,#3a1060 100%)}
.tx-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.35}
.tx-hero-ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(26,35,64,.98) 0%,rgba(26,35,64,.5) 55%,transparent 100%)}
.tx-hero-ct{position:relative;z-index:2;padding:10px 48px 44px;max-width:860px;width:100%}
.tx-eyebrow{font-size:.68rem;letter-spacing:.26em;color:var(--gold);text-transform:uppercase;font-weight:600;margin-bottom:10px}
.tx-title{font-family:"Cormorant Garamond",serif;font-size:clamp(2.2rem,5vw,4rem);font-weight:300;color:#fff;line-height:1.1;margin-bottom:14px}
.tx-title em{font-style:italic;color:var(--blush)}
.tx-subtitle{font-size:.95rem;color:rgba(255,255,255,.68);line-height:1.8;max-width:580px;font-weight:300;margin-bottom:26px}
.tx-cta{display:inline-flex;align-items:center;gap:10px;background:var(--rose-gold);color:#fff;
	padding:14px 30px;border-radius:4px;font-family:"Jost",sans-serif;font-size:.82rem;
	letter-spacing:.12em;font-weight:600;
	text-transform:uppercase;text-decoration:none;transition:background .25s,transform .2s;
	
	
	}
.tx-cta:hover { background: var(--terracotta); transform: translateY(-2px); box-shadow: 0 14px 40px rgba(201,137,106,0.5); }


.tx-body{max-width:980px;margin:0 auto;padding:60px 40px 80px}
.tx-h2{font-family:"Cormorant Garamond",serif;font-size:clamp(2.2rem,3.5vw,3rem);font-weight:400;color:var(--navy);margin-bottom:14px;line-height:1.25}
.tx-h2 em{font-style:italic;color:var(--rose-gold)}
.tx-lead{font-size:1.10rem;line-height:1.88;color:var(--text-mid);font-weight:300;margin-bottom:36px}
.tx-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-bottom:48px}
.tx-step{background:var(--white);border-radius:8px;padding:26px 22px;border-top:3px solid var(--rose-gold);box-shadow:0 4px 20px rgba(26,35,64,.06)}
.tx-step-n{font-family:"Cormorant Garamond",serif;font-size:2.6rem;font-weight:600;color:var(--rose-gold);line-height:1;margin-bottom:6px;opacity:.55}
.tx-step-t{font-weight:600;font-size:.95rem;color:var(--navy);margin-bottom:6px;text-transform:uppercase;letter-spacing:.05em}
.tx-step-d{font-size:.99rem;color:var(--text-mid);line-height:1.65}
.tx-benefits{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-bottom:48px}
.tx-ben{display:flex;align-items:flex-start;gap:12px;background:var(--white);padding:20px;border-radius:8px;border-left:3px solid var(--teal);box-shadow:0 2px 14px rgba(26,35,64,.05)}
.tx-ben-icon{font-size:1.5rem;flex-shrink:0;margin-top:2px}
.tx-ben-t{font-weight:600;color:var(--navy);font-size:.99rem;margin-bottom:3px}
.tx-ben-d{font-size:.1.05rem;color:var(--text-mid);line-height:1.6}
.tx-price-card{background:linear-gradient(135deg,var(--navy),#3a1060);border-radius:12px;padding:36px 40px;margin-bottom:48px;display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}
.tx-pc-l{flex:1;min-width:220px}
.tx-pc-eyebrow{font-size:.86rem;letter-spacing:.24em;color:var(--gold);text-transform:uppercase;font-weight:600;margin-bottom:8px}
.tx-pc-title{font-family:"Cormorant Garamond",serif;font-size:1.9rem;color:#fff;font-weight:400;margin-bottom:10px}
.tx-pc-from{font-size:.98rem;color:rgba(255,255,255,.45);margin-bottom:4px}
.tx-pc-amount{font-family:"Cormorant Garamond",serif;font-size:2.8rem;font-weight:600;color:#fff;line-height:1}
.tx-pc-amount sup{font-size:1.2rem;vertical-align:super}
.tx-pc-amount span{font-size:.9rem;color:var(--gold);font-family:"Jost",sans-serif;font-weight:400;margin-left:4px}
.tx-pc-note{font-size:.92rem;color:rgba(255,255,255,.4);margin-top:8px}
.tx-pc-r{flex:1;min-width:220px}
.tx-pc-row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:.82rem}
.tx-pc-row:last-child{border-bottom:none}
.tx-pc-rn{color:rgba(255,255,255,.7)}
.tx-pc-rv{color:var(--gold);font-weight:600}
.tx-vid-wrap{background:var(--navy);border-radius:10px;overflow:hidden;margin-bottom:48px;aspect-ratio:16/9;display:flex;align-items:center;justify-content:center}
.tx-vid-inner{text-align:center;color:rgba(255,255,255,.55);padding:40px}
.tx-vid-inner .v-big-icon{font-size:4rem;margin-bottom:12px}
.tx-vid-inner p{font-size:.85rem;line-height:1.7;max-width:360px}
.tx-vid-inner a{display:inline-flex;align-items:center;gap:8px;background:#25D366;color:#fff;padding:10px 22px;border-radius:4px;text-decoration:none;font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin-top:16px}
.tx-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:48px}
.tx-gal-item{border-radius:8px;overflow:hidden;aspect-ratio:4/3;background:var(--champagne)}
.tx-gal-item img{width:100%;height:100%;object-fit:cover}
.tx-faq-wrap{margin-bottom:48px}
.tx-faq-item{border-bottom:1px solid rgba(201,137,106,.18)}
.tx-faq-item:first-child{border-top:1px solid rgba(201,137,106,.18)}
.tx-faq-q{width:100%;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:17px 0;text-align:left;font-family:"Jost",sans-serif;font-size:.99rem;font-weight:500;color:var(--navy);transition:color .2s}
.tx-faq-q:hover{color:var(--rose-gold)}
.tx-faq-chev{width:26px;height:26px;border-radius:50%;background:var(--cream);border:1px solid rgba(201,137,106,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.3rem;color:var(--rose-gold);transition:all .3s}
.tx-faq-item.open .tx-faq-chev{background:var(--rose-gold);color:#fff;transform:rotate(180deg)}
.tx-faq-item.open .tx-faq-q{color:var(--rose-gold)}
.tx-faq-a{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1),padding .3s}
.tx-faq-item.open .tx-faq-a{max-height:300px;padding-bottom:14px}
.tx-faq-a p{font-size:.99rem;line-height:1.85;color:var(--text-mid);font-weight:300}
.emi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;margin-bottom:40px}
.emi-card{background:var(--white);border-radius:12px;padding:28px 22px;text-align:center;border:1px solid rgba(201,137,106,.15);box-shadow:0 4px 20px rgba(26,35,64,.06);position:relative;overflow:hidden;transition:transform .25s}
.emi-card:hover{transform:translateY(-4px)}
.emi-hot{position:absolute;top:30px;right:-28px;background:var(--rose-gold);color:#fff;font-size:.6rem;letter-spacing:.1em;font-weight:700;text-transform:uppercase;padding:4px 38px;transform:rotate(45deg)}
.emi-months{font-family:"Cormorant Garamond",serif;font-size:3.2rem;font-weight:600;color:var(--navy);line-height:1;margin-bottom:2px}
.emi-months span{font-size:1.2rem}
.emi-lbl{font-size:.88rem;color:var(--text-light);letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px}
.emi-rate{font-size:1.05rem;color:var(--teal);font-weight:600;margin-bottom:6px}
.emi-desc{font-size:.94rem;color:var(--text-mid);line-height:1.6}
.emi-partners{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:36px}
.emi-partner{background:var(--white);border:1px solid rgba(201,137,106,.15);border-radius:8px;padding:12px 22px;font-size:.86rem;font-weight:600;color:var(--navy);display:flex;align-items:center;gap:8px;box-shadow:0 2px 12px rgba(26,35,64,.05)}
.emi-calc-box{background:linear-gradient(135deg,var(--champagne),var(--blush));border-radius:12px;padding:36px;margin-bottom:40px}
.emi-calc-title{font-family:"Cormorant Garamond",serif;font-size:1.8rem;color:var(--navy);margin-bottom:20px}
.emi-calc-row{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}
.emi-calc-field{flex:1;min-width:160px}
.emi-calc-field label{display:block;font-size:.98rem;letter-spacing:.1em;color:var(--text-mid);text-transform:uppercase;margin-bottom:6px}
.emi-calc-field input,.emi-calc-field select{width:100%;padding:11px 14px;border:1px solid rgba(201,137,106,.25);border-radius:4px;font-family:"Jost",sans-serif;font-size:.88rem;background:#fff;outline:none;transition:border .2s}
.emi-calc-field input:focus,.emi-calc-field select:focus{border-color:var(--rose-gold)}
.emi-calc-btn{background:var(--navy);color:#fff;padding:12px 28px;border:none;border-radius:4px;font-family:"Jost",sans-serif;font-size:.82rem;letter-spacing:.12em;font-weight:600;text-transform:uppercase;cursor:pointer;transition:background .25s}
.emi-calc-btn:hover{background:var(--rose-gold)}
.emi-result{background:var(--navy);color:#fff;border-radius:8px;padding:20px 24px;margin-top:16px;font-family:"Cormorant Garamond",serif;font-size:1.4rem;display:none}
.emi-result span{color:var(--gold)}
@media(max-width:600px){.tx-body{padding:40px 16px 56px}.tx-hero-ct{padding:26px 20px 32px}.tx-gallery{grid-template-columns:1fr 1fr}.tx-price-card{padding:24px 18px}}





/* ── MOBILE TRUST NUDGE — pops up after 8s to encourage booking ── */
.mob-trust-nudge{
  display:none;
  position:fixed;
  bottom:190px;
  left:12px;right:12px;
  z-index:1047;
  background:linear-gradient(135deg,var(--navy) 0%,#2a1560 100%);
  border:1px solid rgba(201,137,106,0.35);
  border-radius:14px;
  padding:14px 16px;
  box-shadow:0 8px 40px rgba(26,35,64,0.5);
  animation:nudgeIn .4s cubic-bezier(0.34,1.56,0.64,1) both;
  align-items:center;gap:12px;
}
@keyframes nudgeIn{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}
@media(max-width:900px){.mob-trust-nudge{display:flex}}
.mob-trust-nudge.hidden{display:none!important}
.nudge-icon{font-size:2rem;flex-shrink:0}
.nudge-body{flex:1}
.nudge-title{font-family:'Cormorant Garamond',serif;font-size:1rem;color:#fff;font-weight:500;margin-bottom:2px;line-height:1.2}
.nudge-sub{font-size:.9rem;color:rgba(255,255,255,.6);line-height:1.5}
.nudge-cta{
  display:inline-flex;align-items:center;gap:6px;
  background:#25D366;color:#fff;
  padding:8px 14px;border-radius:8px;
  font-family:'Jost',sans-serif;font-size:.7rem;font-weight:700;
  letter-spacing:.07em;text-transform:uppercase;
  text-decoration:none;flex-shrink:0;
  white-space:nowrap;
  transition:background .2s;
}
.nudge-cta:hover{background:#20b95a}
.nudge-dismiss{
  position:absolute;top:8px;right:10px;
  background:none;border:none;color:rgba(255,255,255,.4);
  font-size:.9rem;cursor:pointer;padding:2px 4px;
  line-height:1;
}
.nudge-dismiss:hover{color:rgba(255,255,255,.8)}

/* ═══ CONVERSION BOOST ELEMENTS ═══ */

/* Social proof live ticker */
.proof-ticker {
  background: linear-gradient(90deg, var(--navy) 0%, #1e2d5a 100%);
  border-bottom: 1px solid rgba(201,137,106,0.2);
  padding: 10px 0;
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  z-index: 998;
  margin-top: 72px; /* sits below fixed navbar */
  position: sticky;
  top: 72px;
  z-index: 998;
}
.proof-ticker-inner {
  display: inline-flex;
  gap: 0;
  animation: ticker-scroll 28s linear infinite;
}
.proof-ticker-inner:hover { animation-play-state: paused; }
@keyframes ticker-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
.proof-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 32px;
  font-family: 'Jost', sans-serif;
  font-size: 0.74rem;
  font-weight: 500;
  color: rgba(255,255,255,0.8);
  letter-spacing: 0.04em;
  border-right: 1px solid rgba(255,255,255,0.08);
  white-space: nowrap;
}
.proof-item .pi-dot {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: #22c55e;
  flex-shrink: 0;
  animation: pi-blink 2s ease-in-out infinite;
}
@keyframes pi-blink { 0%,100%{opacity:1} 50%{opacity:0.3} }
.proof-item .pi-star { color: var(--gold); font-size: 0.8rem; }
@media(max-width:600px){.proof-ticker{margin-top:72px}.proof-item{padding:0 20px;font-size:.68rem}}

/* Urgency strip inside booking section */
.booking-urgency {
  background: linear-gradient(90deg, rgba(239,68,68,0.08), rgba(239,68,68,0.04));
  border: 1px solid rgba(239,68,68,0.2);
  border-radius: 8px;
  padding: 12px 18px;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 24px;
  font-family: 'Jost', sans-serif;
}
.urgency-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: #ef4444;
  flex-shrink: 0;
  animation: pi-blink 1.2s ease-in-out infinite;
}
.urgency-text {
  font-size: 0.88rem;
  color: var(--text-dark);
  font-weight: 500;
  line-height: 1.4;
}
.urgency-text strong { color: #dc2626; }

/* Why Choose Aspen — compact trust grid */
/* .trust-strip {
  background: var(--white);
  border-top: 1px solid rgba(201,137,106,0.12);
  border-bottom: 1px solid rgba(201,137,106,0.12);
  padding: 40px 40px;
}
.trust-strip-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}
.trust-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 20px 24px;
  border-right: 1px solid rgba(201,137,106,0.12);
  transition: background 0.2s;
}
.trust-item:last-child { border-right: none; }
.trust-item:hover { background: var(--cream); }
.trust-icon {
  font-size: 1.99rem;
  margin-bottom: 10px;
  line-height: 1;
}
.trust-label {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.9rem;
  font-weight: 500;
  color: var(--navy);
  margin-bottom: 4px;
}
.trust-desc {
  font-size: 0.95rem;
  color: var(--text-light);
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media(max-width:900px){
  .trust-strip { padding: 28px 20px; }
  .trust-strip-inner { grid-template-columns: repeat(2,1fr); }
  .trust-item:nth-child(2) { border-right: none; }
  .trust-item { border-bottom: 1px solid rgba(201,137,106,0.12); }
  .trust-item:nth-child(3),.trust-item:nth-child(4){ border-bottom: none; }
}
@media(max-width:480px){
  .trust-strip-inner { grid-template-columns: repeat(2,1fr); }
} */

/* Google reviews mini-widget inside booking */
.review-anchors {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 20px;
  flex-wrap: wrap;
}
.review-anchor-stars { color: #f59e0b; font-size: 0.99rem; letter-spacing: 1px; }
.review-anchor-text {
  font-size: 0.86rem;
  color: var(--text-mid);
  font-weight: 400;
}
.review-anchor-link {
  font-size: 0.84rem;
  color: var(--rose-gold);
  text-decoration: underline;
  cursor: pointer;
  font-weight: 500;
}

/* One-tap mobile book button floating CTA inside booking section */
.mobile-one-tap {
  display: none;
  width: 100%;
  background: #25D366;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 12px 18px;
  font-family: 'Jost', sans-serif;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  box-shadow: 0 6px 24px rgba(37,211,102,0.35);
  transition: background 0.2s, transform 0.2s;
  margin-bottom: 16px;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.mobile-one-tap:hover { background: #20b95a; transform: translateY(-1px); }
@media(max-width:900px){.mobile-one-tap{display:flex}}

/* Scroll-triggered fade-in for sections */
.fade-on-scroll {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.fade-on-scroll.visible {
  opacity: 1;
  transform: translateY(0);
}


/* International Floating Button */
/* ── International Float Wrapper (position + animation) ── */
.intl-float-wrap {
    position: fixed;
    bottom: 70px;
    right: 18px;          /* RIGHT side */
    left: auto;
    z-index: 1100;
    animation: intl-float-up 3s ease-in-out infinite;
    display: none;        /* hidden on desktop */
	overflow: hidden;
}

@media (max-width: 767px) {
    .intl-float-wrap { display: block; }
}

/* Button: appearance only — no position, no animation */
.intl-float-btn {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(4, 13, 26, 0.8);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(201, 169, 110, 0.4);
    padding: 4px 8px 4px 4px;
    border-radius: 40px;
    color: #fff;
    text-decoration: none;
    /* box-shadow: 0 10px 25px rgba(0,0,0,0.4); */
    transition: padding 0.5s ease, gap 0.5s ease;
    cursor: pointer;
    overflow: hidden;
}

/* Floating animation on wrapper */
@keyframes intl-float-up {
    0%, 100% { transform: translateY(0); }
    50%       { transform: translateY(-10px); }
}

/* Globe Icon */
.intl-globe-icon {
    width: 40px;
    height: 40px;
    background: var(--gold);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 27px;
    flex-shrink: 0;
    box-shadow: 0 0 15px rgba(201, 169, 110, 0.5);
}

/* Text wrapper */
.intl-text-wrapper {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    white-space: nowrap;
    max-width: 150px;
    opacity: 1;
    transition: max-width 0.5s ease, opacity 0.4s ease, margin 0.5s ease;
}

/* ── Shrunk state — becomes a round globe-only button ── */
.intl-float-wrap.shrunk .intl-float-btn {
    padding: 4px;
    gap: 0;
}
.intl-float-wrap.shrunk .intl-text-wrapper {
    max-width: 0;
    opacity: 0;
    margin: 0;
}
.intl-float-wrap,
#mob-fab-wrap {
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.35s ease;
}

.intl-float-wrap.mob-hidden {
    transform: translateY(120px);
    opacity: 0;
    pointer-events: none;
}

#mob-fab-wrap.mob-hidden {
    transform: translateY(120px);
    opacity: 0;
    pointer-events: none;
}






/* STAT ROW — moved up, more compact, floated */
.stat-row {
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px;
  margin-bottom:20px;
  animation:fadeUp .7s .25s ease both;
}
.stat-box {
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  border-radius:10px;padding:14px 10px;text-align:center;
  backdrop-filter:blur(6px);
  transition:background .3s,transform .3s;
  position:relative;overflow:hidden;
}
.stat-box::before {
  content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--rose-gold),var(--gold));
}
.stat-box:hover{background:rgba(255,255,255,.12);transform:translateY(-2px);}
.stat-num{
  font-family:'Cormorant Garamond',serif;
  font-size:2.5rem;font-weight:600;color:var(--white);
  display:block;line-height:1;margin-bottom:5px;
}
.stat-num span{color:var(--gold);}
.stat-lbl{font-size:.7rem;color:rgba(255,255,255,.55);line-height:1.4;letter-spacing:.04em;text-transform:uppercase;}

/* HERO SUB — after stats */
.hero-sub{
  font-size:1.1rem;line-height:1.8;color:rgba(255,255,255,.62);
  max-width:400px;margin-bottom:28px;font-weight:300;
  animation:fadeUp .7s .35s ease both;
}

/* EXPLORE SERVICES ROW */
.hero-explore {
  display:flex;flex-wrap:wrap;gap:8px;
  margin-bottom:28px;
  animation:fadeUp .7s .45s ease both;
}
.hero-explore-label {
  width:100%;font-size:.85rem;letter-spacing:.18em;
  color:rgba(255,255,255,.35);text-transform:uppercase;margin-bottom:4px;
}
.hero-svc-chip {
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.14);
  border-radius:20px;padding:7px 14px;
  font-family:'Jost',sans-serif;font-size:.9rem;
  font-weight:600;letter-spacing:.04em;color:rgba(255,255,255,.8);
  text-decoration:none;cursor:pointer;
  transition:background .2s,border-color .2s,color .2s,transform .2s;
  white-space:nowrap;
}
.hero-svc-chip:hover {
  background:rgba(201,137,106,.18);
  border-color:rgba(201,137,106,.5);
  color:#fff;transform:translateY(-1px);
}
.hero-svc-chip .chip-icon{font-size:.9rem;}

/* PRIMARY CTA ROW */
.hero-cta-row {
  display:flex;flex-wrap:wrap;align-items:center;gap:14px;
  animation:fadeUp .7s .55s ease both;
}
.hero-cta-primary {
  display:inline-flex;align-items:center;gap:9px;
  background: var(--rose-gold); color: white;
  padding:14px 26px;border-radius:8px;
  font-family:'Jost',sans-serif;font-size:.81rem;
  font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  text-decoration:none;transition:background .25s,transform .2s;
}
.hero-cta-primary:hover{ background: var(--terracotta); transform: translateY(-2px); box-shadow: 0 14px 40px rgba(201,137,106,0.5); }
.hero-cta-secondary {
  display:inline-flex;align-items:center;gap:8px;
  background:transparent; color: white;
  border:1px solid rgba(255,255,255,.25);
  color:rgba(255,255,255,.8);
  padding:14px 25px;border-radius:4px;
  font-family:'Jost',sans-serif;font-size:.81rem;
  font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  text-decoration:none;cursor:pointer;
  transition:border-color .2s,color .2s,background .2s;
}
.hero-cta-secondary:hover{border-color:var(--rose-gold);color:#fff;background:rgba(201,137,106,.1);}

.hero-cta-white {
  background: var(--rose-gold); color: var(--white);
  padding: 14px 25px; border-radius: 6px; border: none;
  font-family: 'Jost', sans-serif; font-size: 0.81rem; 
  font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  letter-spacing: 0.1em; text-transform: uppercase; cursor: pointer;
  text-decoration: none; display: inline-flex; align-items: center; gap: 9px;
  box-shadow: 0 8px 28px rgba(0,0,0,0.12);
  transition: box-shadow .25s, transform .2s;
}
.hero-cta-white:hover { transform: translateY(-2px); box-shadow: 0 14px 40px rgba(0,0,0,0.18); }

/* .hero-cta-primary {
  display: inline-flex; align-items: center; gap: 9px;
  background: var(--rose-gold); color: white;
  padding: 15px 32px; border-radius: 6px; border: none;
  font-family: 'Jost', sans-serif; font-size: 0.85rem; font-weight: 700;
  letter-spacing: 0.1em; text-transform: uppercase; cursor: pointer;
  text-decoration: none;
  box-shadow: 0 8px 30px rgba(201,137,106,0.4);
  transition: background .25s, transform .2s, box-shadow .25s;
}
.hero-cta-primary:hover { background: var(--terracotta); transform: translateY(-2px); box-shadow: 0 14px 40px rgba(201,137,106,0.5); }
.hero-cta-secondary {
  display: inline-flex; align-items: center; gap: 9px;
  background: transparent; color: white;
  padding: 14px 30px; border-radius: 6px;
  border: 1.5px solid rgba(255,255,255,0.25);
  font-family: 'Jost', sans-serif; font-size: 0.85rem; font-weight: 500;
  letter-spacing: 0.1em; text-transform: uppercase;
  cursor: pointer; text-decoration: none;
  transition: border-color .25s, background .25s, transform .2s;
}
.hero-cta-secondary:hover { border-color: var(--gold); background: rgba(201,169,110,0.08); transform: translateY(-2px); } */

/* Trust micro-line */
.hero-trust-line {
  margin-top:16px;
  display:flex;align-items:center;gap:10px;
  font-size:.8rem;color:rgba(255,255,255,.35);
  letter-spacing:.06em;
  animation:fadeUp .7s .65s ease both;
}
.hero-trust-line .htl-dot{width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,.3);}
.hero-trust-line a{color:rgba(255,255,255,.45);text-decoration:underline;text-underline-offset:3px;transition:color .2s;}
.hero-trust-line a:hover{color:var(--gold);}

/* MOBILE */
@media(max-width:900px){
  .hero-headline{font-size:clamp(3.5rem, 5.5vw, 5.5rem);}
  .stat-row{gap:8px;}
  .stat-num{font-size:2.7rem;}
  .hero-explore{gap:6px;}
  .hero-cta-row{gap:10px;}
  .hero-cta-primary,.hero-cta-secondary,.hero-cta-white{padding:16px 25px;font-size:.8rem; justify-content: center !important;}
}
@media(max-width:480px){
  .stat-row{grid-template-columns:repeat(3,1fr);gap:6px;}
  .stat-box{padding:11px 6px;}
  .stat-num{font-size:2.7rem;}
  .stat-lbl{font-size:.85rem;}
  .hero-svc-chip{font-size:.82rem;padding:6px 10px;}
  .hero-trust-line{flex-wrap:wrap;gap:6px;}
}












/* ── SMILE ANALYSIS OVERLAY ── */
#tx-smile-analysis {
  display:none;position:fixed;inset:0;z-index:2500;
  background:var(--cream,#faf7f2);overflow-y:auto;
}
#tx-smile-analysis.open { display:block; }

/* ── Hero ── */
.sa-hero {
  min-height:42vh;display:flex;align-items:flex-end;
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,#040d1a 0%,#0d1e38 45%,#1a0a2e 100%);
}
.sa-hero-ov {
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(4,13,26,.97) 0%,rgba(4,13,26,.55) 55%,transparent 100%);
}
/* animated tooth SVG bg */
.sa-hero-bg-svg {
  position:absolute;inset:0;width:100%;height:100%;
  opacity:.04;pointer-events:none;
}
.sa-hero-ct {
  position:relative;z-index:2;
  padding:60px 48px 40px;max-width:860px;width:100%;
}
.sa-eyebrow {
  font-size:.75rem;letter-spacing:.26em;color:var(--gold,#c9a96e);
  text-transform:uppercase;font-weight:600;margin-bottom:10px;
}
.sa-title {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.3rem,5.3vw,4.1rem);font-weight:300;
  color:#fff;line-height:1.1;margin-bottom:12px;
}
.sa-title em { font-style:italic;color:var(--blush,#e8c4b8); }
.sa-subtitle {
  font-size:1.1rem;color:rgba(255,255,255,.6);
  line-height:1.8;max-width:560px;font-weight:300;margin-bottom:24px;
}
.sa-trust-chips {
  display:flex;flex-wrap:wrap;gap:8px;
}
.sa-trust-chip {
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);
  border-radius:20px;padding:5px 13px;
  font-family:'Jost',sans-serif;font-size:.75rem;font-weight:600;
  letter-spacing:.05em;color:rgba(255,255,255,.8);
}

/* ── BODY ── */
.sa-body { max-width:980px;margin:0 auto;padding:52px 40px 80px; }

/* ── STEP INDICATOR ── */
.sa-steps-nav {
  display:flex;align-items:center;gap:0;margin-bottom:40px;
  overflow-x:auto;padding-bottom:4px;
  scrollbar-width:none;
}
.sa-steps-nav::-webkit-scrollbar{display:none;}
.sa-step-pill {
  display:flex;align-items:center;gap:0;flex-shrink:0;cursor:pointer;
}
.sa-step-pill-inner {
  display:flex;align-items:center;gap:8px;
  background:#fff;border:1px solid rgba(201,137,106,.15);
  border-radius:24px;padding:8px 16px;
  font-family:'Jost',sans-serif;font-size:.8rem;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;
  color:var(--text-mid,#4a4a6a);
  transition:background .2s,border-color .2s,color .2s;
  white-space:nowrap;
}
.sa-step-pill.active .sa-step-pill-inner {
  background:var(--navy,#1a2340);color:#fff;border-color:var(--navy,#1a2340);
}
.sa-step-pill-num {
  width:20px;height:20px;border-radius:50%;
  background:rgba(201,137,106,.15);
  display:flex;align-items:center;justify-content:center;
  font-size:.7rem;font-weight:700;color:var(--rose-gold,#c9896a);
  flex-shrink:0;
}
.sa-step-pill.active .sa-step-pill-num {
  background:rgba(255,255,255,.15);color:var(--gold,#c9a96e);
}
.sa-step-connector {
  width:24px;height:1px;background:rgba(201,137,106,.25);flex-shrink:0;
}

/* ── ANALYSIS CATEGORIES GRID ── */
.sa-categories {
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:14px;margin-bottom:48px;
}
.sa-cat {
  background:#fff;border-radius:12px;
  border:1px solid rgba(201,137,106,.12);
  box-shadow:0 4px 20px rgba(26,35,64,.05);
  padding:22px 20px;
  transition:border-color .25s,transform .25s,box-shadow .25s;
  cursor:default;position:relative;overflow:hidden;
}
.sa-cat::before {
  content:'';position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--acc,var(--rose-gold)),var(--acc2,var(--gold)));
}
.sa-cat:hover {
  border-color:rgba(201,137,106,.35);
  transform:translateY(-4px);
  box-shadow:0 12px 36px rgba(26,35,64,.1);
}
.sa-cat-icon { font-size:2rem;margin-bottom:12px;display:block;line-height:1; }
.sa-cat-title {
  font-weight:600;font-size:1.1rem;color:var(--navy,#1a2340);
  margin-bottom:8px;letter-spacing:.03em;
}
.sa-cat-points { list-style:none;padding:0;display:flex;flex-direction:column;gap:5px; }
.sa-cat-points li {
  display:flex;align-items:flex-start;gap:7px;
  font-size:1.1rem;color:var(--text-mid,#4a4a6a);line-height:1.5;
}
.sa-cat-points li::before {
  content:'•';color:var(--rose-gold,#c9896a);font-size:1rem;flex-shrink:0;margin-top:-1px;
}

/* ── PHOTO GUIDE ── */
.sa-photo-guide {
  background:linear-gradient(135deg,var(--navy,#1a2340),#1e2d5a);
  border-radius:16px;padding:36px;margin-bottom:48px;
}
.sa-photo-guide-title {
  font-family:'Cormorant Garamond',serif;
  font-size:1.99rem;font-weight:400;color:#fff;margin-bottom:6px;
}
.sa-photo-guide-title em { font-style:italic;color:var(--blush,#e8c4b8); }
.sa-photo-guide-sub {
  font-size:.99rem;color:rgba(255,255,255,.5);margin-bottom:28px;line-height:1.7;
}
.sa-photo-shots {
  display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:28px;
}
.sa-shot {
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  border-radius:10px;padding:16px 12px;text-align:center;
  transition:background .2s,border-color .2s;
}
.sa-shot:hover{background:rgba(255,255,255,.09);border-color:rgba(201,137,106,.35);}
.sa-shot-visual {
  width:60px;height:60px;border-radius:50%;
  margin:0 auto 12px;display:flex;align-items:center;justify-content:center;
  font-size:1.8rem;
  background:rgba(255,255,255,.07);
  border:1.5px solid rgba(255,255,255,.12);
}
.sa-shot-name {
  font-family:'Jost',sans-serif;font-size:.9rem;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;color:#fff;margin-bottom:4px;
}
.sa-shot-desc {
  font-size:.9rem;color:rgba(255,255,255,.5);line-height:1.5;
}
.sa-shot-badge {
  display:inline-block;margin-top:6px;
  font-size:.75rem;font-weight:700;letter-spacing:.08em;
  padding:2px 8px;border-radius:8px;text-transform:uppercase;
  background:rgba(201,137,106,.2);color:var(--blush,#e8c4b8);
  border:1px solid rgba(201,137,106,.25);
}

/* Lighting & tips strip */
.sa-tips-row {
  display:flex;flex-wrap:wrap;gap:10px;
}
.sa-tip {
  display:flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);
  border-radius:8px;padding:10px 14px;
  font-size:.9rem;color:rgba(255,255,255,.65);flex:1;min-width:160px;
}
.sa-tip-icon{font-size:1.3rem;flex-shrink:0;}

/* ── UPLOAD + SEND PANEL ── */
.sa-send-panel {
  background:var(--white,#fff);
  border:1px solid rgba(201,137,106,.18);
  border-radius:16px;padding:36px;margin-bottom:48px;
  box-shadow:0 8px 40px rgba(26,35,64,.06);
}
.sa-send-title {
  font-family:'Cormorant Garamond',serif;
  font-size:2.3rem;font-weight:400;color:var(--navy,#1a2340);margin-bottom:6px;
}
.sa-send-title em { font-style:italic;color:var(--rose-gold,#c9896a); }
.sa-send-sub {
  font-size:.99rem;color:var(--text-mid,#4a4a6a);margin-bottom:28px;line-height:1.7;
}

/* form fields */
.sa-form { display:flex;flex-direction:column;gap:16px; }
.sa-form-row { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.sa-field label {
  display:block;font-size:.78rem;letter-spacing:.1em;
  color:var(--text-mid,#4a4a6a);text-transform:uppercase;margin-bottom:6px;font-weight:600;
}
.sa-field input,.sa-field select,.sa-field textarea {
  width:100%;padding:12px 15px;
  border:1px solid rgba(201,137,106,.25);border-radius:6px;
  font-family:'Jost',sans-serif;font-size:.86rem;
  color:var(--text-dark,#1a1a2e);background:var(--cream,#faf7f2);
  outline:none;transition:border-color .25s;
}
.sa-field input:focus,.sa-field select:focus,.sa-field textarea:focus {
  border-color:var(--rose-gold,#c9896a);
}
.sa-field textarea { height:80px;resize:vertical; }

/* Concern checkboxes */
.sa-concerns-grid {
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;
}
.sa-concern-cb { display:none; }
.sa-concern-label {
  display:flex;align-items:center;gap:7px;
  background:var(--cream,#faf7f2);border:1px solid rgba(201,137,106,.2);
  border-radius:8px;padding:9px 12px;
  font-size:.72rem;font-weight:500;color:var(--text-mid,#4a4a6a);
  cursor:pointer;transition:background .2s,border-color .2s,color .2s;
  user-select:none;
}
.sa-concern-cb:checked + .sa-concern-label {
  background:var(--navy,#1a2340);color:#fff;border-color:var(--navy,#1a2340);
}
.sa-concern-label .cc-icon{font-size:.9rem;flex-shrink:0;}

/* Photo upload zones */
.sa-upload-grid {
  display:grid;grid-template-columns:repeat(4,1fr);gap:10px;
}
.sa-upload-zone {
  position:relative;cursor:pointer;
}
.sa-upload-zone input[type=file] {
  position:absolute;inset:0;width:100%;height:100%;
  opacity:0;cursor:pointer;z-index:2;
}
.sa-upload-box {
  border:1.5px dashed rgba(201,137,106,.35);border-radius:10px;
  padding:18px 10px;text-align:center;
  background:var(--cream,#faf7f2);
  transition:border-color .2s,background .2s;
  min-height:100px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:6px;
}
.sa-upload-zone:hover .sa-upload-box {
  border-color:var(--rose-gold,#c9896a);background:rgba(201,137,106,.04);
}
.sa-upload-icon{font-size:1.7rem;opacity:.6;}
.sa-upload-name {
  font-size:.75rem;font-weight:700;letter-spacing:.07em;
  text-transform:uppercase;color:var(--navy,#1a2340);
}
.sa-upload-hint { font-size:.7rem;color:var(--text-light,#8a8aa0);line-height:1.4; }
.sa-upload-preview {
  display:none;width:100%;border-radius:8px;overflow:hidden;
  aspect-ratio:1;object-fit:cover;
}
.sa-upload-zone.has-file .sa-upload-box { border-style:solid;border-color:var(--teal,#1A6B6B); }
.sa-upload-zone.has-file .sa-upload-preview { display:block; }
.sa-upload-zone.has-file .sa-upload-icon,
.sa-upload-zone.has-file .sa-upload-name,
.sa-upload-zone.has-file .sa-upload-hint { display:none; }

/* Privacy note */
.sa-privacy-note {
  display:flex;align-items:flex-start;gap:10px;
  background:rgba(201,137,106,.06);border:1px solid rgba(201,137,106,.15);
  border-radius:8px;padding:12px 16px;margin-top:4px;
}
.sa-privacy-note-icon{font-size:1.1rem;flex-shrink:0;margin-top:1px;}
.sa-privacy-note p{font-size:.9rem;color:var(--text-mid,#4a4a6a);line-height:1.6;}
.sa-privacy-note strong{color:var(--navy,#1a2340);font-weight:600;}

/* Disclaimer note */
.sa-disclaimer-note {
  display:flex;align-items:flex-start;gap:10px;
  background:#f1f8fe;border:1px solid rgba(201,137,106,.15);
  border-radius:8px;padding:12px 16px;margin-top:4px;
}
.sa-disclaimer-note-icon{font-size:1.1rem;flex-shrink:0;margin-top:1px;}
.sa-disclaimer-note p{font-size:.9rem;color:var(--text-mid,#4a4a6a);line-height:1.6;}
.sa-disclaimer-note strong{color:var(--navy,#1a2340);font-weight:600;}

/* Submit button */
.sa-submit {
  width:100%;background:var(--rose-gold);color:#fff;
  padding:16px;border:none;border-radius:6px;
  font-family:'Jost',sans-serif;font-size:.86rem;
  letter-spacing:.12em;text-transform:uppercase;font-weight:700;
  cursor:pointer;transition:background .25s,transform .2s;
  display:flex;align-items:center;justify-content:center;gap:10px;
  box-shadow:0 6px 24px gba(201,137,106,0.5);
}
.sa-submit:hover{background:var(--terracotta);transform:translateY(-1px);}

/* ── WHAT HAPPENS NEXT ── */
.sa-next-steps {
  display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:48px;
}
.sa-next-item {
  background:#fff;border-radius:10px;padding:24px 20px;
  border:1px solid rgba(201,137,106,.12);text-align:center;
  box-shadow:0 4px 20px rgba(26,35,64,.04);
}
.sa-next-num {
  font-family:'Cormorant Garamond',serif;
  font-size:2.4rem;font-weight:600;color:var(--rose-gold,#c9896a);
  opacity:.45;line-height:1;margin-bottom:6px;
}
.sa-next-icon{font-size:1.6rem;margin-bottom:8px;}
.sa-next-t {
  font-weight:600;font-size:.92rem;color:var(--navy,#1a2340);
  margin-bottom:5px;text-transform:uppercase;letter-spacing:.05em;
}
.sa-next-d { font-size:.9rem;color:var(--text-mid,#4a4a6a);line-height:1.6; }

/* ── MOBILE ── */
@media(max-width:900px){
  .sa-hero-ct{padding:50px 20px 32px;}
  .sa-body{padding:36px 16px 60px;}
  .sa-categories{grid-template-columns:1fr 1fr;}
  .sa-photo-shots{grid-template-columns:1fr 1fr;}
  .sa-upload-grid{grid-template-columns:1fr 1fr;}
  .sa-form-row{grid-template-columns:1fr;}
  .sa-concerns-grid{grid-template-columns:1fr 1fr;}
  .sa-next-steps{grid-template-columns:1fr;}
  .sa-photo-guide{padding:24px 18px;}
  .sa-send-panel{padding:24px 18px;}
}
@media(max-width:480px){
  .sa-body{padding:24px 12px 56px;}
  .sa-categories{grid-template-columns:1fr;}
  .sa-photo-shots{grid-template-columns:1fr 1fr;}
  .sa-concerns-grid{grid-template-columns:1fr 1fr;}
  .sa-upload-grid{grid-template-columns:1fr 1fr;}
  .sa-tips-row{flex-direction:column;}
}






















  
	
/* 3. GLOBAL RESET & BUG FIXES */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent !important;
	text-decoration: none !important;
	outline: none !important;
}
/* 4. NAVIGATION BAR CONTAINER (Using DIV) */
.mob-bottom-nav {
	display: flex !important;
	position: fixed !important;
	bottom: 0 !important; 
	left: 0 !important; 
	right: 0 !important;
	top: auto !important; /* Prevents jumping to top */
	height: 60px;
	background: var(--navy);
	border-top: 1px solid rgba(201, 137, 106, 0.3);
	box-shadow: 0 -4px 25px rgba(0, 0, 0, 0.4);
	z-index: 99999 !important; /* Higher priority to stay on top */
	align-items: stretch;
	padding: 0 4px;
	padding-bottom: env(safe-area-inset-bottom);
}

/* 5. INDIVIDUAL TAB ITEMS */
.mbn-item {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: none;
	cursor: pointer;
	position: relative;
	transition: all 0.2s ease;
}

/* Top Active Indicator Pill */
.mbn-active-pill {
	position: absolute;
	top: 0; 
	left: 50%;
	transform: translateX(-50%) scaleX(0);
	width: 24px; 
	height: 3px;
	background: var(--rose-gold);
	border-radius: 0 0 4px 4px;
	transition: transform .3s cubic-bezier(.34,1.56,.64,1);
}

/* Icons Styling */
.mb-icon-v2 {
	font-size: 18px;
	color: var(--blush);
	margin-bottom: 3px;
	transition: transform 0.2s ease;
}

/* WhatsApp Scaling Fix */
.mb-icon-v2.fa-whatsapp {
	font-size: 23px; 
	margin-bottom: 0.01px;
}

/* Labels Styling */
.mb-label-v2 {
	font-size: 12px;
	font-weight: 500;
	color: var(--blush);
	text-transform: uppercase;
	letter-spacing: 0.1px;
}

/* 6. ACTIVE STATE */
/* This changes the icon color when active */
.mbn-item.active .mb-icon-v2,
.mbn-item.active svg.mb-icon-svg {
    color: var(--rose-gold) !important;
    fill: var(--rose-gold) !important; /* Use this if you are using the SVG version */
    transform: translateY(-2px);
}

/* This changes the label text color when active */
.mbn-item.active .mb-label-v2 {
    color: var(--rose-gold) !important;
}

.mbn-item.active .mbn-active-pill {
    transform: translateX(-50%) scaleX(1);
    background: var(--rose-gold); /* Keeps the top pill matching the brand */
}
.mbn-item.active .mbn-active-pill {
	transform: translateX(-50%) scaleX(1);
}

/* 7. CENTER CALL BUTTON (FAB) - SHIFTED DOWN */
.mbn-fab-container {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
}

.mbn-fab-btn {
	width: 60px; /* Slightly smaller for a tighter look */
	height: 60px;
	background: linear-gradient(135deg, var(--rose-gold), var(--terracotta));
	border-radius: 50% !important;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--white);
	box-shadow: 0 4px 15px rgba(0,0,0,0.5);
	/* SHIFT DOWN: Reduced margin-top to lower the button */
	margin-top: -20px; 
	border: 4px solid var(--navy);
	font-size: 18px;
	transition: transform 0.2s ease;
}

/* Touch feedback */
.mbn-fab-container:active .mbn-fab-btn {
	transform: scale(0.9);
}

.mbn-item:active {
	opacity: 0.7;
}

/* Desktop Guard */
@media(min-width: 769px) {
	.mob-bottom-nav { display: none !important; }
}

.mob-bottom-nav {
  transition: transform 0.3s ease;
}
.mob-bottom-nav.nav-hidden {
  transform: translateY(100%);
}











/* ── SAVEIN EMI BLOCK ── */
.si-wrap {
  margin-bottom: 48px;
}

.si-section-label {
  font-size: .78rem;
  letter-spacing: .22em;
  color: var(--rose-gold, #c9896a);
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.si-section-label::after {
  content: '';
  flex: 1;
  height: 1px;
  background: rgba(201,137,106,.2);
}

/* ── Main card ── */
.si-card {
  background: var(--white, #fff);
  border-radius: 20px;
  border: 1px solid rgba(201,137,106,.18);
  box-shadow: 0 8px 40px rgba(26,35,64,.08);
  overflow: hidden;
}

/* ── Top header strip ── */
.si-card-header {
  background: linear-gradient(135deg, var(--navy,#1a2340) 0%, #2a1060 100%);
  padding: 20px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}
.si-card-header-left { display: flex; align-items: center; gap: 14px; }
.si-doctor-avatar {
  width: 55px; height: 55px; border-radius: 50%;
  background: linear-gradient(135deg, var(--rose-gold,#c9896a), var(--gold,#c9a96e));
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem; color: #fff;
  border: 2px solid rgba(255,255,255,.2);
  overflow: hidden; flex-shrink: 0;
}
.si-doctor-avatar img {
  width: 100%; height: 100%; object-fit: cover; object-position: center top;
}
.si-doctor-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.5rem; font-weight: 500; color: #fff; line-height: 1.2;
}
.si-doctor-sub {
  font-size: .85rem; color: rgba(255,255,255,.5);
  letter-spacing: .06em; text-transform: uppercase; margin-top: 2px;
}
.si-powered-badge {
  display: flex; align-items: center; gap: 6px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 20px; padding: 5px 12px;
  font-family: 'Jost', sans-serif;
  font-size: .62rem; font-weight: 700;
  letter-spacing: .08em; color: rgba(255,255,255,.7);
  white-space: nowrap;
}
.si-powered-badge strong { color: #f97316; }

/* ── Body ── */
.si-card-body {
  padding: 28px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: start;
}

/* Left: QR */
.si-qr-col { display: flex; flex-direction: column; align-items: center; gap: 16px; }

.si-qr-frame {
  background: #fff;
  border: 3px solid rgba(201,137,106,.25);
  border-radius: 16px;
  padding: 14px;
  box-shadow: 0 4px 24px rgba(26,35,64,.1);
  position: relative;
}
/* corner accent lines */
.si-qr-frame::before, .si-qr-frame::after {
  content: '';
  position: absolute;
  width: 20px; height: 20px;
  border-color: var(--rose-gold, #c9896a);
  border-style: solid;
}
.si-qr-frame::before {
  top: -1px; left: -1px;
  border-width: 3px 0 0 3px;
  border-radius: 4px 0 0 0;
}
.si-qr-frame::after {
  bottom: -1px; right: -1px;
  border-width: 0 3px 3px 0;
  border-radius: 0 0 4px 0;
}

/* Generated QR using an iframe from the actual URL */
.si-qr-img {
  width: 180px; height: 180px;
  border-radius: 8px;
  display: block;
}

.si-qr-scan-label {
  font-family: 'Jost', sans-serif;
  font-size: .92rem; font-weight: 500;
  color: var(--text-mid, #4a4a6a);
  text-align: center; line-height: 1.5;
}
.si-qr-scan-label span { display: block; font-size: .82rem; color: var(--text-light, #8a8aa0); }

/* QR action buttons */
.si-qr-btns {
  display: flex; gap: 8px; width: 100%;
}
.si-qr-btn {
  flex: 1; display: flex; align-items: center; justify-content: center; gap: 6px;
  padding: 9px 10px; border-radius: 8px; border: none; cursor: pointer;
  font-family: 'Jost', sans-serif; font-size: .78rem; font-weight: 700;
  letter-spacing: .07em; text-transform: uppercase; text-decoration: none;
  transition: all .2s; white-space: nowrap;
}
.si-qr-btn.copy {
  background: rgba(201,137,106,.1);
  border: 1px solid rgba(201,137,106,.3);
  color: var(--navy, #1a2340);
}
.si-qr-btn.copy:hover {
  background: rgba(201,137,106,.18);
  border-color: var(--rose-gold, #c9896a);
}
.si-qr-btn.share {
  background: var(--navy, #1a2340);
  color: #fff;
}
.si-qr-btn.share:hover { background: var(--rose-gold, #c9896a); }

/* ── Right: Info col ── */
.si-info-col { display: flex; flex-direction: column; gap: 16px; }

.si-info-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 2.9rem; font-weight: 500;
  color: var(--navy, #1a2340); line-height: 1.25; margin-bottom: 4px;
}
.si-info-title em { font-style: italic; color: var(--rose-gold, #c9896a); }

.si-info-desc {
  font-size: 1.1rem; color: var(--text-mid, #4a4a6a);
  line-height: 1.75; font-weight: 300;
}

/* Benefit pills */
.si-benefits {
  display: flex; flex-direction: column; gap: 8px;
}
.si-benefit {
  display: flex; align-items: center; gap: 10px;
  background: var(--cream, #faf7f2);
  border: 1px solid rgba(201,137,106,.12);
  border-left: 3px solid var(--rose-gold, #c9896a);
  border-radius: 0 8px 8px 0;
  padding: 10px 14px;
  font-family: 'Jost', sans-serif;
  font-size: .96rem; color: var(--navy, #1a2340); font-weight: 500;
}
.si-benefit-icon { font-size: 1rem; flex-shrink: 0; }

/* Apply CTA */
.si-apply-btn {
  display: flex; align-items: center; justify-content: center; gap: 10px;
  width: 100%; padding: 14px;
  background: linear-gradient(135deg, #f97316, #fb923c);
  color: #fff; border: none; border-radius: 10px;
  font-family: 'Jost', sans-serif; font-size: .92rem;
  font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  text-decoration: none; cursor: pointer;
  transition: all .25s;
  box-shadow: 0 6px 24px rgba(249,115,22,.35);
}
.si-apply-btn:hover {
  background: linear-gradient(135deg, #ea6c0a, #f97316);
  transform: translateY(-2px);
  box-shadow: 0 10px 32px rgba(249,115,22,.45);
}

.si-apply-sub {
  text-align: center; font-size: .76rem;
  color: var(--text-light, #8a8aa0); line-height: 1.5; margin-top: 2px;
}

/* ── Bottom secure strip ── */
.si-card-footer {
  background: linear-gradient(135deg, rgba(249,115,22,.08), rgba(249,115,22,.04));
  border-top: 1px solid rgba(249,115,22,.18);
  padding: 12px 28px;
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 10px;
}
.si-secure {
  display: flex; align-items: center; gap:8px;
  font-family: 'Jost', sans-serif;
  font-size: .72rem; font-weight: 600;
  color: var(--text-mid, #4a4a6a);
}
.si-secure-icon { font-size: 1rem; }
.si-partner-logos {
  display: flex; align-items: center; gap: 10px;
}
.si-partner-pill {
  font-family: 'Jost', sans-serif;
  font-size: .6rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  padding: 3px 10px; border-radius: 10px;
  background: rgba(26,35,64,.06);
  border: 1px solid rgba(26,35,64,.12);
  color: var(--navy, #1a2340);
}
.si-partner-pill.orange {
  background: rgba(249,115,22,.1);
  border-color: rgba(249,115,22,.25);
  color: #c2540a;
}

/* ── Copy link toast ── */
.si-toast {
  display: none;
  position: fixed;
  bottom: calc(80px + env(safe-area-inset-bottom, 0px));
  left: 50%; transform: translateX(-50%);
  background: var(--navy, #1a2340);
  color: #fff; padding: 10px 22px;
  border-radius: 24px; font-family: 'Jost', sans-serif;
  font-size: .76rem; font-weight: 600;
  box-shadow: 0 4px 24px rgba(26,35,64,.3);
  z-index: 9999; white-space: nowrap;
  animation: siToastIn .3s cubic-bezier(.34,1.56,.64,1) both;
}
@keyframes siToastIn { from{opacity:0;transform:translateX(-50%) translateY(12px)} to{opacity:1;transform:translateX(-50%) translateY(0)} }

/* ── MOBILE ── */
@media(max-width: 700px) {
  .si-card-body {
    grid-template-columns: 1fr;
    padding: 20px 16px;
    gap: 20px;
  }
  .si-qr-img { width: 160px; height: 160px; }
  .si-card-header { padding: 16px 18px; }
  .si-card-footer { padding: 12px 18px; }
  .si-info-title { font-size: 2.9rem; }
}
@media(max-width: 420px) {
  .si-qr-img { width: 140px; height: 140px; }
  .si-qr-btns { flex-direction: column; }
}
















/* ── Eyebrow live dot ── */
.hero-eyebrow {
  display:inline-flex;align-items:center;gap:8px;
  font-size:.72rem;letter-spacing:.28em;color:var(--gold,#c9a96e);
  text-transform:uppercase;margin-bottom:18px;font-weight:500;
}
.hero-eyebrow::before {
  content:'';display:inline-block;width:6px;height:6px;
  border-radius:50%;background:#22c55e;flex-shrink:0;
  animation:heroPulse 1.8s ease-in-out infinite;
}
@keyframes heroPulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(34,197,94,.5)}50%{opacity:.7;box-shadow:0 0 0 6px rgba(34,197,94,0)}}

/* ── Headline ── */
.hero-headline {
/*   font-family:'Cormorant Garamond',serif;
  font-size:clamp(3rem,5.5vw,5.5rem);font-weight:300;line-height:1.1;*/
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(2.5rem,5vw,5rem); 
  line-height: 1.05;
  color:var(--white,#fff);margin-bottom:0;
}
/* .hero-headline em{font-style:italic;color:var(--blush,#e8c4b8);} */
.hero-headline em {
  font-style: italic;
  background: linear-gradient(
    90deg,
    var(--blush, #e8c4b8),
    #fff,
    var(--rose-gold, #e8c4b8)
  );
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: shimmer 3s linear infinite;
}

.hero-headline .brand {
  display: block;
  margin-top: 0.45rem;
  font-style: italic;
  font-size: clamp(1.5rem, 2.3vw, 1.7rem);
  font-weight: 400;
  letter-spacing: 0.03em;
  background: linear-gradient(
    90deg,
    var(--blush, #e8c4b8),
    #fff 50%,
    var(--rose-gold, #c9956e)
  );
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: shimmer 3s linear infinite;
}

@keyframes shimmer {
  to {
    background-position: 200% center;
  }
}

/* ── Divider ── */
.hero-divider {
  display:flex;align-items:center;gap:12px;margin:16px 0 18px;
}
.hero-divider-line {
  flex:1;height:1px;max-width:80px;
  background:linear-gradient(90deg,rgba(201,137,106,.6),transparent);
}
.hero-divider-diamond {
  width:6px;height:6px;background:var(--rose-gold,#c9896a);
  transform:rotate(45deg);flex-shrink:0;opacity:.8;
}

/* ── STAT ROW ── */
.stat-row {
  display:grid;grid-template-columns:repeat(3,1fr);gap:10px;
  margin-bottom:18px;animation:fadeUp .7s .25s ease both;
}
.stat-box {
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);
  border-radius:10px;padding:14px 10px;text-align:center;
  backdrop-filter:blur(6px);transition:background .3s,transform .3s;
  position:relative;overflow:hidden;
}
.stat-box::before {
  content:'';position:absolute;bottom:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,var(--rose-gold,#c9896a),var(--gold,#c9a96e));
}
.stat-box:hover{background:rgba(255,255,255,.12);transform:translateY(-2px);}
.stat-num{
  font-family:'Cormorant Garamond',serif;
  font-size:2rem;font-weight:600;color:var(--white,#fff);
  display:block;line-height:1;margin-bottom:5px;
}
.stat-num span{color:var(--gold,#c9a96e);}
.stat-lbl{font-size:.65rem;color:rgba(255,255,255,.55);line-height:1.4;letter-spacing:.04em;text-transform:uppercase;}

/* ── LOCATION + TIMING CARD ── */
.hero-clinic-card {
  display:flex;align-items:stretch;gap:0;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(201,137,106,.3);
  border-radius:12px;overflow:hidden;
  margin-bottom:20px;
  animation:fadeUp .7s .3s ease both;
  backdrop-filter:blur(8px);
}
.hero-clinic-loc, .hero-clinic-time {
  flex:1;padding:14px 16px;display:flex;flex-direction:column;gap:4px;
}
.hero-clinic-loc {
  border-right:1px solid rgba(201,137,106,.2);
}
/* The Row for Icon + Label */
.hcc-header {
  display: flex;
  align-items: center; 
  gap: 8px; /* Space between Icon and Find Us */
  margin-bottom: 2px;
}
.hcc-icon {
  font-size:0.8rem;margin-bottom:2px;line-height:1;display:block;color: var(--rose-gold);
}
.hcc-label {
  font-size:.68rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--rose-gold);margin-bottom:3px;
}
.hcc-main {
  font-family:'Jost',sans-serif;font-size:.98rem;
  font-weight:600;color:#fff;line-height:1.3;
}
.hcc-sub {
  font-size:.8rem;color:rgba(255,255,255,.5);line-height:1.4;
}
/* Live open/closed badge */
.hcc-status {
  display:inline-flex;align-items:center;gap:5px;
  margin-top:5px;font-size:.6rem;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;
  padding:3px 9px;border-radius:20px;width:fit-content;
}
.hcc-status.open {
  background:rgba(34,197,94,.15);color:#4ade80;
  border:1px solid rgba(34,197,94,.25);
}
.hcc-status.closed {
  background:rgba(239,68,68,.12);color:#fca5a5;
  border:1px solid rgba(239,68,68,.2);
}
.hcc-status-dot {
  width:5px;height:5px;border-radius:50%;flex-shrink:0;
}
.hcc-status.open  .hcc-status-dot { background:#22c55e;animation:heroPulse 1.5s ease-in-out infinite; }
.hcc-status.closed .hcc-status-dot { background:#ef4444; }

/* ── SCROLL TEASER ── */
.hero-teaser {
  display:grid;grid-template-columns:repeat(3,1fr);gap:8px;
  margin-bottom:20px;
  animation:fadeUp .7s .38s ease both;
}
.hero-teaser-item {
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  border-radius:10px;padding:12px 10px;
  text-align:center;cursor:pointer;
  transition:background .2s,border-color .2s,transform .2s;
  text-decoration:none;
}
.hero-teaser-item:hover {
  background:rgba(201,137,106,.15);
  border-color:rgba(201,137,106,.45);
  transform:translateY(-2px);
}
.hti-icon { font-size:1.3rem;display:block;margin-bottom:5px;line-height:1; }
.hti-title {
  font-family:'Jost',sans-serif;font-size:.85rem;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:#fff;
  display:block;margin-bottom:2px;
}
.hti-sub { font-size:.78rem;color:rgba(255,255,255,.45);line-height:1.4; }

/* ── EXPLORE CHIPS ── */
.hero-explore {
  display:flex;flex-wrap:wrap;gap:7px;margin-bottom:22px;
  animation:fadeUp .7s .45s ease both;
}
.hero-explore-label {
  width:100%;font-size:.62rem;letter-spacing:.16em;
  color:rgba(255,255,255,.32);text-transform:uppercase;margin-bottom:3px;
}
.hero-svc-chip {
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);
  border-radius:8px;padding:12px 25px;
  font-family:'Jost',sans-serif;font-size:.67rem;
  font-weight:600;letter-spacing:.04em;color:rgba(255,255,255,.8);
  text-decoration:none;cursor:pointer;
  transition:background .2s,border-color .2s,color .2s,transform .2s;
  white-space:nowrap;
}
.hero-svc-chip:hover {
  background:rgba(201,137,106,.18);border-color:rgba(201,137,106,.5);
  color:#fff;transform:translateY(-1px);
}
.chip-icon{font-size:.85rem;}

/* ── HERO SUB ── */
.hero-sub{
  font-size:1.1rem;line-height:1.8;color:rgba(255,255,255,.62);
  max-width:420px;margin-bottom:22px;font-weight:300;
  animation:fadeUp .7s .35s ease both;
}

/* ── CTA ROW ── */
/* .hero-cta-row {
  display:flex;flex-wrap:wrap;align-items:center;gap:12px;
  animation:fadeUp .7s .52s ease both;
}
.hero-cta-primary {
  display:inline-flex;align-items:center;gap:9px;
  background:#25D366;color:#fff;padding:14px 24px;border-radius:4px;
  font-family:'Jost',sans-serif;font-size:.8rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;text-decoration:none;
  transition:background .25s,transform .2s;
  box-shadow:0 6px 24px rgba(37,211,102,.3);
}
.hero-cta-primary:hover{background:#20b95a;transform:translateY(-2px);}
.hero-cta-secondary {
  display:inline-flex;align-items:center;gap:8px;background:transparent;
  border:1px solid rgba(255,255,255,.25);color:rgba(255,255,255,.8);
  padding:13px 20px;border-radius:4px;font-family:'Jost',sans-serif;
  font-size:.78rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;
  text-decoration:none;cursor:pointer;
  transition:border-color .2s,color .2s,background .2s;
}
.hero-cta-secondary:hover{border-color:var(--rose-gold,#c9896a);color:#fff;background:rgba(201,137,106,.1);} */

/* ── TRUST LINE ── */
.hero-trust-line {
  margin-top:14px;display:flex;align-items:center;flex-wrap:wrap;gap:7px;
  font-size:.66rem;color:rgba(255,255,255,.32);letter-spacing:.05em;
  animation:fadeUp .7s .62s ease both;
}
.htl-dot{width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,.28);}
.hero-trust-line a{color:rgba(255,255,255,.42);text-decoration:underline;text-underline-offset:3px;transition:color .2s;}
.hero-trust-line a:hover{color:var(--gold,#c9a96e);}

/* ── MOBILE ── */
@media(max-width:900px){
  .hero-headline{font-size:clamp(2.6rem,8vw,4rem);}
  .hero-clinic-card{flex-direction:column;}
  .hero-clinic-loc{border-right:none;border-bottom:1px solid rgba(201,137,106,.2);}
  .hero-teaser{grid-template-columns:repeat(3,1fr);gap:6px;}
  .stat-row{gap:8px;}
  .stat-num{font-size:1.7rem;}
}
@media(max-width:480px){
  .stat-row{gap:6px;}
  .stat-box{padding:11px 6px;}
  .stat-num{font-size:1.45rem;}
  .stat-lbl{font-size:.56rem;}
  .hero-teaser{grid-template-columns:repeat(3,1fr);gap:5px;}
  .hti-icon{font-size:1.1rem;}
  .hti-title{font-size:.58rem;}
  .hcc-main{font-size:.72rem;}
}






/* ── Search trigger button (inside nav) ── */
.adc-search-trigger {
  display: flex; align-items: center; justify-content: center;
  width: 38px; height: 38px;
  background: rgba(26,35,64,.06);
  border: 1px solid rgba(201,137,106,.2);
  border-radius: 8px; cursor: pointer;
  color: var(--navy, #1a2340);
  transition: background .2s, border-color .2s, color .2s;
  margin-right: 8px;
  flex-shrink: 0;
}
.adc-search-trigger:hover {
  background: var(--navy, #1a2340);
  border-color: var(--navy, #1a2340);
  color: #fff;
}

/* ── OVERLAY BACKDROP ── */
#adcSearchOverlay {
  display: none;
  position: fixed; inset: 0; z-index: 3000;
  background: rgba(26,35,64,.72);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  align-items: flex-start; justify-content: center;
  padding: 80px 16px 40px;
  overflow-y: auto;
}
#adcSearchOverlay.open { display: flex; }

/* ── SEARCH MODAL BOX ── */
.adc-search-box {
  background: #fff;
  border-radius: 20px;
  width: 100%; max-width: 680px;
  box-shadow: 0 32px 80px rgba(26,35,64,.4);
  overflow: hidden;
  animation: adcSrchIn .28s cubic-bezier(.34,1.36,.64,1) both;
  min-height: 300px;
}
@keyframes adcSrchIn {
  from { opacity:0; transform:scale(.94) translateY(-16px); }
  to   { opacity:1; transform:scale(1)   translateY(0); }
}

/* ── INPUT ROW ── */
.adc-srch-input-row {
  display: flex; align-items: center; gap: 12px;
  padding: 16px 20px;
  border-bottom: 1px solid rgba(201,137,106,.15);
}
.adc-srch-icon {
  color: var(--text-light, #8a8aa0); flex-shrink: 0;
}
.adc-srch-input {
  flex: 1; border: none; outline: none;
  font-family: 'Jost', sans-serif;
  font-size: 1rem; font-weight: 400;
  color: var(--text-dark, #1a1a2e);
  background: transparent;
  caret-color: var(--rose-gold, #c9896a);
}
.adc-srch-input::placeholder { color: rgba(138,138,160,.6); }
.adc-srch-close {
  width: 30px; height: 30px; border-radius: 50%;
  background: rgba(26,35,64,.07);
  border: none; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  font-size: .9rem; color: var(--text-mid, #4a4a6a);
  transition: background .2s, color .2s; flex-shrink: 0;
}
.adc-srch-close:hover { background: var(--navy, #1a2340); color: #fff; }

/* Keyboard shortcut pill */
.adc-srch-kbd {
  font-family: 'Jost', sans-serif;
  font-size: .62rem; font-weight: 600;
  letter-spacing: .05em;
  background: rgba(26,35,64,.06);
  border: 1px solid rgba(26,35,64,.12);
  border-radius: 4px; padding: 2px 7px;
  color: var(--text-light, #8a8aa0); flex-shrink: 0;
}

/* ── RESULTS / QUICK LIST CONTAINER ── */
.adc-srch-body {
  padding: 12px 8px 16px;
  max-height: calc(100vh - 220px);
  overflow-y: auto;
}
.adc-srch-body::-webkit-scrollbar { width: 4px; }
.adc-srch-body::-webkit-scrollbar-thumb { background: rgba(201,137,106,.3); border-radius:4px; }

/* ── SECTION HEADER ── */
.adc-srch-section-hd {
  font-family: 'Jost', sans-serif;
  font-size: .6rem; font-weight: 700; letter-spacing: .18em;
  text-transform: uppercase; color: var(--text-light, #8a8aa0);
  padding: 8px 14px 6px;
}

/* ── RESULT / QUICK ITEM ── */
.adc-srch-item {
  display: flex; align-items: center; gap: 12px;
  padding: 10px 14px; border-radius: 10px; cursor: pointer;
  transition: background .15s; text-decoration: none;
  -webkit-tap-highlight-color: transparent;
  margin: 0 4px;
}
.adc-srch-item:hover, .adc-srch-item.focused {
  background: var(--cream, #faf7f2);
}
.adc-srch-item-icon {
  width: 36px; height: 36px; border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.1rem; flex-shrink: 0;
}
.adc-srch-item-text { flex: 1; min-width: 0; }
.adc-srch-item-title {
  font-family: 'Jost', sans-serif;
  font-size: .84rem; font-weight: 600;
  color: var(--navy, #1a2340); line-height: 1.3;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.adc-srch-item-title mark {
  background: rgba(201,137,106,.22);
  color: var(--navy, #1a2340);
  border-radius: 3px; padding: 0 2px;
}
.adc-srch-item-sub {
  font-size: .7rem; color: var(--text-light, #8a8aa0);
  line-height: 1.4; margin-top: 1px;
}
.adc-srch-item-arrow {
  font-size: .7rem; color: rgba(138,138,160,.5); flex-shrink: 0;
}

/* category tags on item */
.adc-srch-tag {
  font-size: .56rem; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase; padding: 2px 8px; border-radius: 8px;
  flex-shrink: 0;
  background: rgba(201,137,106,.1);
  border: 1px solid rgba(201,137,106,.2);
  color: var(--rose-gold, #c9896a);
}

/* ── DIVIDER ── */
.adc-srch-div {
  height: 1px; background: rgba(201,137,106,.1);
  margin: 6px 14px;
}

/* ── NOT FOUND SCREEN ── */
.adc-srch-notfound {
  text-align: center; padding: 40px 24px 32px;
}
.adc-srch-notfound-emoji { font-size: 3rem; margin-bottom: 12px; line-height: 1; }
.adc-srch-notfound h3 {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.4rem; font-weight: 400;
  color: var(--navy, #1a2340); margin-bottom: 8px;
}
.adc-srch-notfound p {
  font-size: .8rem; color: var(--text-mid, #4a4a6a);
  line-height: 1.7; margin-bottom: 20px; max-width: 360px; margin-left: auto; margin-right: auto;
}
.adc-srch-notfound-wa {
  display: inline-flex; align-items: center; gap: 8px;
  background: #25D366; color: #fff;
  padding: 12px 24px; border-radius: 8px;
  font-family: 'Jost', sans-serif; font-size: .78rem;
  font-weight: 700; letter-spacing: .09em; text-transform: uppercase;
  text-decoration: none; transition: background .2s;
  box-shadow: 0 4px 16px rgba(37,211,102,.35);
}
.adc-srch-notfound-wa:hover { background: #20b95a; }

/* ── FOOTER ── */
.adc-srch-footer {
  border-top: 1px solid rgba(201,137,106,.12);
  padding: 10px 18px;
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  flex-wrap: wrap;
}
.adc-srch-footer-tips {
  display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
}
.adc-srch-footer-tip {
  display: flex; align-items: center; gap: 5px;
  font-family: 'Jost', sans-serif;
  font-size: .6rem; color: var(--text-light, #8a8aa0);
}
.adc-srch-footer-tip kbd {
  background: rgba(26,35,64,.07); border: 1px solid rgba(26,35,64,.14);
  border-radius: 4px; padding: 1px 5px; font-size: .58rem;
  color: var(--text-mid, #4a4a6a); font-family: monospace;
}

/* ── MOBILE ── */
@media(max-width: 600px) {
  #adcSearchOverlay { padding: 60px 10px 24px; align-items: flex-start; }
  .adc-search-box { border-radius: 16px; }
  .adc-srch-footer-tips { display: none; }
  .adc-srch-input { font-size: .9rem; }
}

/* ── DOCTOR PROFILE OVERLAY (same system as tx-overlay) ── */
#doc-pramod-overlay {
  display:none;
  position:fixed;inset:0;z-index:2500;
  background:var(--cream,#faf7f2);
  overflow-y:auto;
}
#doc-pramod-overlay.open { display:block; }

/* ── sticky close bar — same as tx-close ── */
.dp-close {
  position:sticky;top:0;left:0;right:0;z-index:2600;
  background:rgba(26,35,64,.96);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  color:#fff;border:none;width:100%;height:52px;
  display:flex;align-items:center;gap:10px;padding:0 20px;
  font-family:'Jost',sans-serif;font-size:.75rem;
  letter-spacing:.1em;font-weight:600;text-transform:uppercase;
  cursor:pointer;border-bottom:1px solid rgba(201,137,106,.25);
  transition:background .2s;text-align:left;
}
.dp-close::before {
  content:'← Back';font-size:.72rem;letter-spacing:.12em;font-weight:600;
  color:rgba(255,255,255,.7);flex-shrink:0;transition:color .2s;
}
.dp-close:hover { background:rgba(201,137,106,.25); }
.dp-close:hover::before { color:#fff; }
.dp-close-label {
  flex:1;text-align:center;
  font-family:'Cormorant Garamond',serif;
  font-size:1rem;font-weight:400;letter-spacing:.04em;
  text-transform:none;color:rgba(255,255,255,.9);
}
.dp-close-x {
  flex-shrink:0;width:30px;height:30px;border-radius:50%;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);
  display:flex;align-items:center;justify-content:center;
  font-size:1rem;color:rgba(255,255,255,.7);font-style:normal;
  transition:background .2s,color .2s;
}
.dp-close:hover .dp-close-x { background:var(--rose-gold,#c9896a);color:#fff;border-color:var(--rose-gold,#c9896a); }

/* ── HERO inside profile overlay ── */
.dp-hero {
  min-height:52vh;display:flex;align-items:flex-end;
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--navy,#1a2340) 0%,#2a1060 100%);
}
.dp-hero-img {
  position:absolute;inset:0;
  background-size:cover;background-position:center top;opacity:.38;
}
.dp-hero-ov {
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(26,35,64,.97) 0%,rgba(26,35,64,.55) 55%,transparent 100%);
}
.dp-hero-ct {
  position:relative;z-index:2;
  padding:60px 48px 40px;max-width:860px;width:100%;
}
.dp-hero-eyebrow {
  font-size:.68rem;letter-spacing:.26em;color:var(--gold,#c9a96e);
  text-transform:uppercase;font-weight:600;margin-bottom:10px;
}
.dp-hero-name {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.2rem,5vw,3.8rem);font-weight:300;
  color:#fff;line-height:1.1;margin-bottom:8px;
}
.dp-hero-name em { font-style:italic;color:var(--blush,#e8c4b8); }
.dp-hero-role {
  font-size:.8rem;color:rgba(255,255,255,.55);
  letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px;
}
.dp-hero-pills {
  display:flex;flex-wrap:wrap;gap:7px;margin-bottom:24px;
}
.dp-hero-pill {
  font-size:.62rem;font-weight:700;letter-spacing:.08em;
  padding:4px 12px;border-radius:20px;text-transform:uppercase;
  background:rgba(201,137,106,.14);border:1px solid rgba(201,137,106,.3);
  color:var(--blush,#e8c4b8);
}
.dp-hero-pill.intl { background:rgba(56,189,248,.12);border-color:rgba(56,189,248,.3);color:#7dd3fc; }
.dp-hero-cta {
  display:inline-flex;align-items:center;gap:10px;
  background:#25D366;color:#fff;padding:13px 28px;border-radius:4px;
  font-family:'Jost',sans-serif;font-size:.8rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;text-decoration:none;
  transition:background .25s,transform .2s;
  box-shadow:0 6px 24px rgba(37,211,102,.3);
}
.dp-hero-cta:hover { background:#20b95a;transform:translateY(-2px); }

/* ── BODY ── */
.dp-body {
  max-width:980px;margin:0 auto;
  padding:56px 40px 80px;
}

/* ── STAT ROW ── */
.dp-stats {
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:14px;margin-bottom:48px;
}
.dp-stat {
  background:#fff;border-radius:10px;padding:22px 14px;
  text-align:center;border:1px solid rgba(201,137,106,.12);
  box-shadow:0 4px 20px rgba(26,35,64,.05);
  border-top:3px solid var(--rose-gold,#c9896a);
}
.dp-stat-num {
  font-family:'Cormorant Garamond',serif;
  font-size:2.4rem;font-weight:600;color:var(--navy,#1a2340);
  line-height:1;margin-bottom:5px;
}
.dp-stat-num span { color:var(--rose-gold,#c9896a); }
.dp-stat-lbl {
  font-size:.82rem;color:var(--text-light,#8a8aa0);
  text-transform:uppercase;letter-spacing:.09em;line-height:1.4;
}

/* ── SECTION HEADERS ── */
.dp-h2 {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.5rem,3.8vw,3.2rem);font-weight:400;
  color:var(--navy,#1a2340);margin-bottom:12px;line-height:1.25;
}
.dp-h2 em { font-style:italic;color:var(--rose-gold,#c9896a); }
.dp-lead {
  font-size:1.2rem;line-height:1.9;color:var(--text-mid,#4a4a6a);
  font-weight:300;margin-bottom:32px;
}

/* ── HIGHLIGHT QUOTE BOX ── */
.dp-quote-box {
  background:linear-gradient(135deg,var(--navy,#1a2340),#2a1060);
  border-radius:12px;padding:32px 36px;margin-bottom:40px;
  position:relative;overflow:hidden;
}
.dp-quote-box::before {
  content:'"';position:absolute;top:-20px;right:20px;
  font-family:'Cormorant Garamond',serif;
  font-size:9rem;color:rgba(201,137,106,.12);
  line-height:1;font-style:italic;pointer-events:none;
}
.dp-quote-box p {
  font-family:'Cormorant Garamond',serif;
  font-size:1.3rem;font-style:italic;color:rgba(255,255,255,.82);
  line-height:1.8;position:relative;z-index:1;
}
.dp-quote-box cite {
  display:block;margin-top:14px;font-family:'Jost',sans-serif;
  font-size:.7rem;font-style:normal;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;
  color:var(--gold,#c9a96e);
}

/* ── CREDENTIALS BLOCK ── */
.dp-cred-grid {
  display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:14px;margin-bottom:40px;
}
.dp-cred-item {
  display:flex;align-items:flex-start;gap:12px;
  background:#fff;padding:18px;border-radius:8px;
  border-left:3px solid var(--teal,#1A6B6B);
  box-shadow:0 2px 14px rgba(26,35,64,.05);
}
.dp-cred-icon { font-size:1.4rem;flex-shrink:0;margin-top:2px; }
.dp-cred-t { font-weight:600;color:var(--navy,#1a2340);font-size:.98rem;margin-bottom:3px; }
.dp-cred-d { font-size:.95rem;color:var(--text-mid,#4a4a6a);line-height:1.6; }

/* ── SURGERY SPECIALITY CARDS ── */
.dp-surgery-grid {
  display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
  gap:12px;margin-bottom:40px;
}
.dp-surgery-card {
  background:#fff;border-radius:8px;padding:20px 18px;
  border-top:3px solid var(--rose-gold,#c9896a);
  box-shadow:0 4px 20px rgba(26,35,64,.06);
  text-align:center;
  transition:transform .25s,box-shadow .25s;
}
.dp-surgery-card:hover { transform:translateY(-4px);box-shadow:0 8px 32px rgba(26,35,64,.1); }
.dp-surgery-icon { font-size:1.8rem;margin-bottom:10px; }
.dp-surgery-t {
  font-weight:600;font-size:.9rem;color:var(--navy,#1a2340);
  margin-bottom:5px;text-transform:uppercase;letter-spacing:.06em;
}
.dp-surgery-d { font-size:.92rem;color:var(--text-mid,#4a4a6a);line-height:1.6; }

/* ── INTERNATIONAL BANNER ── */
.dp-intl-banner {
  background:linear-gradient(135deg,#0d2b1e,#0f3828);
  border-radius:12px;padding:28px 32px;
  display:flex;align-items:center;gap:24px;
  border:1px solid rgba(74,222,128,.2);
  margin-bottom:40px;
  flex-wrap:wrap;
}
.dp-intl-icon { font-size:2.8rem;flex-shrink:0; }
.dp-intl-text h4 {
  font-family:'Cormorant Garamond',serif;font-size:1.7rem;
  color:#fff;font-weight:400;margin-bottom:6px;
}
.dp-intl-text p {
  font-size:.95rem;color:rgba(255,255,255,.6);line-height:1.7;
}
.dp-intl-cta {
  margin-left:auto;display:inline-flex;align-items:center;gap:8px;
  background:#25D366;color:#fff;padding:11px 22px;border-radius:6px;
  font-family:'Jost',sans-serif;font-size:.74rem;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;text-decoration:none;
  white-space:nowrap;transition:background .2s;flex-shrink:0;
}
.dp-intl-cta:hover { background:#20b95a; }

/* ── REFERRAL TRUST STRIP ── */
.dp-trust-strip {
  background:var(--cream,#faf7f2);border:1px solid rgba(201,137,106,.18);
  border-radius:10px;padding:24px 28px;
  display:flex;align-items:center;gap:20px;margin-bottom:40px;flex-wrap:wrap;
}
.dp-trust-strip-icon { font-size:2.8rem;flex-shrink:0; }
.dp-trust-strip p { font-size:1.2rem;color:var(--text-mid,#4a4a6a);line-height:1.75;flex:1; }
.dp-trust-strip strong { color:var(--navy,#1a2340);font-weight:600; }

/* ── FINAL CTA BANNER ── */
.dp-final-cta {
  background:linear-gradient(135deg,var(--navy,#1a2340),#1e3a2a);
  border-radius:16px;padding:40px 36px;text-align:center;
}
.dp-final-cta-eyebrow {
  font-size:.88rem;letter-spacing:.24em;color:var(--gold,#c9a96e);
  text-transform:uppercase;font-weight:700;margin-bottom:10px;
}
.dp-final-cta h3 {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1.6rem,3vw,2.2rem);color:#fff;
  font-weight:400;margin-bottom:10px;
}
.dp-final-cta h3 em { color:var(--blush,#e8c4b8);font-style:italic; }
.dp-final-cta p { font-size:.88rem;color:rgba(255,255,255,.5);margin-bottom:24px;line-height:1.75;max-width:480px;margin-left:auto;margin-right:auto; }
.dp-final-cta-btns { display:flex;flex-wrap:wrap;gap:14px;justify-content:center; }

/* ── MOBILE ── */
@media(max-width:900px){
  .dp-hero-ct { padding:50px 20px 32px; }
  .dp-body { padding:36px 16px 60px; }
  .dp-stats { grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:32px; }
  .dp-intl-banner { flex-direction:column;gap:14px;padding:22px 18px; }
  .dp-intl-cta { margin-left:0;width:100%;justify-content:center; }
  .dp-final-cta { padding:28px 18px; }
  .dp-trust-strip { padding:18px 16px;gap:14px; }
  .dp-surgery-grid { grid-template-columns:1fr 1fr; }
  .dp-quote-box { padding:24px 20px; }
}
@media(max-width:480px){
  .dp-hero-ct { padding:44px 14px 28px; }
  .dp-body { padding:28px 12px 56px; }
  .dp-stats { grid-template-columns:1fr 1fr;gap:8px; }
  .dp-surgery-grid { grid-template-columns:1fr; }
  .dp-cred-grid { grid-template-columns:1fr; }
  .dp-hero-name { font-size:2rem; }
}

/* ── DOCTORS SECTION ── */
#doctors {
  background: linear-gradient(170deg, #0d1628 0%, #1a2340 45%, #0f1e35 100%);
  padding: 100px 40px 120px;
  position: relative;
  overflow: hidden;
}
#doctors::before {
  content: '';
  position: absolute;
  top: -200px; right: -200px;
  width: 600px; height: 600px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(201,137,106,0.07) 0%, transparent 70%);
  pointer-events: none;
}
#doctors::after {
  content: '';
  position: absolute;
  bottom: -150px; left: -100px;
  width: 500px; height: 500px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(26,107,107,0.08) 0%, transparent 70%);
  pointer-events: none;
}
.doc-header {
  text-align: center;
  margin-bottom: 72px;
  position: relative; z-index: 2;
}
.doc-header .section-eyebrow { color: var(--gold); }
.doc-header .section-title { color: #fff; }
.doc-header .section-sub { color: rgba(255,255,255,0.55); margin: 0 auto; }

/* ── FEATURED LEAD DOCTOR (Dr. Pramod) ── */
.doc-featured {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 56px;
  position: relative; z-index: 2;
  box-shadow: 0 32px 80px rgba(0,0,0,0.5);
  border: 1px solid rgba(201,137,106,0.15);
}
.doc-feat-img {
  position: relative;
  height: 575px;
  overflow: hidden;
}
.doc-feat-img img {
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center top;
  transition: transform 0.8s ease;
}
.doc-featured:hover .doc-feat-img img { transform: scale(1.04); }
.doc-feat-img-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(13,22,40,0.7) 0%, transparent 40%);
}
.doc-feat-badge {
  position: absolute;
  top: 24px; left: 24px;
  background: var(--rose-gold);
  color: #fff;
  font-family: 'Jost', sans-serif;
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  padding: 6px 14px;
  border-radius: 20px;
}
.doc-feat-content {
  background: rgba(255,255,255,0.03);
  backdrop-filter: blur(4px);
  padding: 52px 48px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-left: 1px solid rgba(255,255,255,0.06);
}
.doc-feat-eyebrow {
  font-size: 0.68rem;
  letter-spacing: 0.26em;
  color: var(--gold);
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 12px;
}
.doc-feat-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.15;
  margin-bottom: 6px;
}
.doc-feat-title {
  font-size: 0.78rem;
  color: var(--rose-gold);
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-bottom: 24px;
}
.doc-feat-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 28px;
}
.doc-pill {
  font-size: 0.66rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  padding: 5px 13px;
  border-radius: 20px;
  text-transform: uppercase;
  background: rgba(201,137,106,0.12);
  border: 1px solid rgba(201,137,106,0.3);
  color: var(--blush);
}
.doc-feat-quote {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.25rem;
  font-style: italic;
  color: rgba(255,255,255,0.75);
  line-height: 1.75;
  border-left: 2px solid var(--rose-gold);
  padding-left: 18px;
  margin-bottom: 32px;
}
.doc-feat-stats {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 16px;
  margin-bottom: 36px;
}
.doc-stat {
  text-align: center;
  padding: 14px 8px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 10px;
}
.doc-stat-num {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.1rem;
  font-weight: 500;
  color: #fff;
  line-height: 1;
  margin-bottom: 4px;
}
.doc-stat-num span { color: var(--gold); }
.doc-stat-lbl {
  font-size: 0.6rem;
  color: rgba(255,255,255,0.45);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1.3;
}
.doc-feat-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: var(--rose-gold);
  color: #fff;
  padding: 14px 28px;
  border-radius: 6px;
  font-family: 'Jost', sans-serif;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 0.25s, transform 0.2s;
  width: fit-content;
  box-shadow: 0 6px 24px rgba(201,137,106,0.5);
}
.doc-feat-cta:hover { background: var(--terracotta); transform: translateY(-2px); }

/* ── TEAM GRID (other 4 doctors) ── */
.doc-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 25px;
  position: relative; z-index: 2;
}
.doc-card {
  border-radius: 14px;
  overflow: hidden;
  position: relative;
  cursor: pointer;
  group: true;
  border: 1px solid rgba(255,255,255,0.06);
  transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s;
}
.doc-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 24px 60px rgba(0,0,0,0.5);
  border-color: rgba(201,137,106,0.35);
}
.doc-card-img {
  height: 520px;
  position: relative;
  overflow: hidden;
}
.doc-card-img img {
  width: 100%; height: 100%;
  object-fit: cover;
  object-position: center top;
  transition: transform 0.6s ease;
  filter: grayscale(15%);
}
.doc-card:hover .doc-card-img img {
  transform: scale(1.08);
  filter: grayscale(0%);
}
.doc-card-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top,
    rgba(13,22,40,1) 0%,
    rgba(13,22,40,0.85) 10%,
    rgba(13,22,40,0.3) 30%,
    transparent 100%);
  transition: opacity 0.35s;
}
/* Hover reveal panel slides up */
.doc-card-hover-panel {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  background: linear-gradient(
    to top, 
    rgba(18, 30, 55, 0.98) 0%, 
    rgba(18, 30, 55, 0.92) 100%
  );
  padding: 20px 20px 22px;
  transform: translateY(calc(100% - 98px));
  transition: transform 0.4s cubic-bezier(0.4,0,0.2,1);
}
.doc-card:hover .doc-card-hover-panel {
  transform: translateY(0);
}
.doc-card-spec {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--rose-gold);
  margin-bottom: 6px;
}
.doc-card-name {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1.45rem;
  font-weight: 500;
  color: #fff;
  line-height: 1.2;
  margin-bottom: 10px;
}
.doc-card-desc {
  font-size: 0.9rem;
  color: rgba(255,255,255,0.6);
  line-height: 1.65;
  margin-bottom: 16px;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.3s 0.1s, transform 0.3s 0.1s;
}
.doc-card:hover .doc-card-desc {
  opacity: 1;
  transform: translateY(0);
}
.doc-card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-bottom: 16px;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.3s 0.15s, transform 0.3s 0.15s;
}
.doc-card:hover .doc-card-tags { opacity: 1; transform: translateY(0); }
.doc-card-tag {
  font-size: 0.58rem;
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  padding: 3px 9px;
  border-radius: 10px;
  background: rgba(201,137,106,0.12);
  border: 1px solid rgba(201,137,106,0.2);
  color: var(--blush);
}
.doc-card-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: 100%;
  background: rgba(201,137,106,0.12);
  border: 1px solid rgba(201,137,106,0.35);
  color: var(--rose-gold);
  padding: 10px 16px;
  border-radius: 6px;
  font-family: 'Jost', sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 0.2s, border-color 0.2s, color 0.2s;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.3s 0.2s, transform 0.3s 0.2s, background 0.2s, color 0.2s;
}
.doc-card:hover .doc-card-btn {
  opacity: 1;
  transform: translateY(0);
}
.doc-card-btn:hover {
  background: linear-gradient(
    135deg,
    var(--rose-gold),
    var(--gold-light)
  );
  border-color: var(--rose-gold);
  color: var(--white);
  box-shadow: 0 6px 16px rgba(201,137,106,0.35);
}

/* Bottom CTA row */
.doc-bottom-cta {
  text-align: center;
  margin-top: 56px;
  position: relative; z-index: 2;
}
.doc-bottom-cta p {
  font-size: 0.85rem;
  color: rgba(255,255,255,0.45);
  margin-bottom: 20px;
  letter-spacing: 0.04em;
}
.doc-bottom-wa {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: transparent;
  border: 1px solid rgba(201,137,106,0.4);
  color: var(--blush);
  padding: 14px 32px;
  border-radius: 4px;
  font-family: 'Jost', sans-serif;
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 0.25s, border-color 0.25s, color 0.25s;
}
.doc-bottom-wa:hover {
  background: var(--rose-gold);
  border-color: var(--rose-gold);
  color: #fff;
}

/* Responsive */
@media(max-width:1100px){
  .doc-grid { grid-template-columns: repeat(2,1fr); }
}
@media(max-width:900px){
  #doctors { padding: 72px 20px 80px; }
  .doc-featured { grid-template-columns: 1fr; }
  .doc-feat-img { height: 380px; }
  .doc-feat-img-overlay { background: linear-gradient(to top, rgba(13,22,40,0.8) 0%, rgba(13,22,40,0) 35%);}
  .doc-feat-content { padding: 36px 28px; }
  .doc-feat-stats { grid-template-columns: repeat(3,1fr); }
  .doc-grid { grid-template-columns: repeat(2,1fr); gap: 14px; }
  .doc-card-img { height: 260px; }
  .doc-card-hover-panel { transform: translateY(calc(100% - 80px)); }
}
@media(max-width:480px){
  /* Change 1fr 1fr to 1fr for full-width single column */
  .doc-grid { 
    grid-template-columns: 1fr; 
    gap: 20px; /* Increased gap for better vertical breathing space */
  }

  /* Increase image height since they are now much wider */
  .doc-card-img { 
    height: 420px; 
  }

  .doc-feat-stats { 
    grid-template-columns: repeat(3,1fr); 
    gap: 8px; 
  }

  .doc-feat-content { 
    padding: 28px 20px; 
  }
  
  /* Ensure the hover panel is adjusted for the larger image */
  .doc-card-hover-panel { 
    transform: translateY(calc(100% - 90px)); 
  }
}




/* Using both classes makes the selector stronger than the original ones */
.doc-feat-img .doc-feat-cta.image-cta {
  background: var(--rose-gold) !important; /* Forces Navy Blue */
  color: #ffffff !important;
  border: 1px solid #c9896a; 
  position: absolute;
  bottom: 32px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  white-space: nowrap;
  border-radius: 5px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
  opacity: 1 !important; /* Ensures it isn't faded */
  visibility: visible !important;
}

/* Fix hover state */
.doc-feat-img .doc-feat-cta.image-cta:hover {
  background: #16223a !important;
  transform: translateX(-50%) translateY(-3px);
  border-color: #fff;
}

@media (max-width: 768px) {
  .doc-feat-img .doc-feat-cta.image-cta {
    bottom: 20px;
    width: 85%;
    padding: 12px 20px;
    display: flex;
    justify-content: center;
  }
}

.expert-card-light:hover {
	transform: translateY(-5px);
	box-shadow: 0 30px 60px rgba(181,107,74,0.1) !important;
	border-color: var(--rose-gold) !important;
}
.expert-card-light:hover img {
	transform: scale(1.05);
}
.expert-card-light a:hover {
	background: var(--text-dark);
	color: var(--white) !important;
}

.expert-card:hover {
	transform: translateY(-12px);
	border-color: var(--gold) !important;
	box-shadow: 0 20px 40px rgba(0,0,0,0.4);
}
.expert-card img {
	transition: transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.expert-card:hover img {
	transform: scale(1.08);
}
.expert-card a:hover {
	color: var(--white) !important;
	border-bottom-color: var(--gold) !important;
}

#tx-offers .tx-body { background:linear-gradient(160deg,#0d1628 0%,#1a2340 50%,#0f1e35 100%); padding:48px 40px 72px; min-height:100%; position:relative; overflow:hidden; }
#tx-offers .tx-body::before { content:''; position:absolute; top:-120px; right:-120px; width:380px; height:380px; border-radius:50%; background:radial-gradient(circle,rgba(201,137,106,.09) 0%,transparent 70%); pointer-events:none; }
.of-eyebrow { font-size:14px; letter-spacing:.26em; color:#c9a96e; text-transform:uppercase; font-weight:600; text-align:center; margin-bottom:10px; }
.of-title   { font-family:'Cormorant Garamond',serif; font-size:clamp(3rem,4.8vw,3.2rem); font-weight:400; color:#fff; text-align:center; line-height:1.2; margin-bottom:8px; }
.of-title em { font-style:italic; color:#e8c4b8; }
.of-sub     { font-size:16px; color:rgba(255,255,255,.45); text-align:center; margin-bottom:48px; letter-spacing:.03em; }
.of-grid    { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:16px; max-width:1100px; margin:0 auto 40px; }
.of-card { background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); border-radius:16px; padding:28px 24px 24px; position:relative; overflow:hidden; transition:transform .3s,border-color .3s,background .3s; }
.of-card:hover { transform:translateY(-6px); border-color:rgba(201,137,106,.4); background:rgba(255,255,255,.07); }
.of-card::after { content:''; position:absolute; bottom:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--acc),var(--acc2)); opacity:.7; }
.of-card.gold   { --acc:#c9a96e; --acc2:#e8d5b0; }
.of-card.rose   { --acc:#c9896a; --acc2:#e8c4b8; }
.of-card.teal   { --acc:#1A6B6B; --acc2:#2A8A8A; }
.of-card.green  { --acc:#22c55e; --acc2:#4ade80; }
.of-card.featured { border-color:rgba(201,137,106,.35); background:rgba(201,169,110,.06); }
.of-badge { position:absolute; top:16px; right:16px; font-size:10px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; padding:4px 10px; border-radius:20px; }
.of-badge.hot  { background:rgba(239,68,68,.15);   color:#fca5a5; border:1px solid rgba(239,68,68,.25); }
.of-badge.new  { background:rgba(34,197,94,.12);   color:#4ade80; border:1px solid rgba(34,197,94,.2); }
.of-badge.star { background:rgba(201,169,110,.15); color:#e8d5b0; border:1px solid rgba(201,169,110,.25); }
.of-badge.lim  { background:rgba(201,137,106,.15); color:#e8c4b8; border:1px solid rgba(201,137,106,.25); }
.of-icon    { font-size:28px; margin-bottom:14px; display:block; line-height:1; }
.of-name    { font-family:'Cormorant Garamond',serif; font-size:1.55rem; font-weight:500; color:#fff; margin-bottom:6px; line-height:1.2; }
.of-desc    { font-size:16px; color:rgba(255,255,255,.5); line-height:1.7; margin-bottom:18px; }
.of-divider { width:40px; height:1px; background:rgba(201,137,106,.3); margin-bottom:18px; }
.of-price-row  { display:flex; align-items:baseline; gap:8px; margin-bottom:16px; flex-wrap:wrap; }
.of-price-old  { font-size:15px; color:rgba(255,255,255,.3); text-decoration:line-through; }
.of-price-new  { font-size:1.7rem; font-weight:600; color:#fff; font-family:'Cormorant Garamond',serif; }
.of-price-new sup { font-size:.75rem; vertical-align:super; }
.of-price-save { font-size:14px; font-weight:700; color:#4ade80; background:rgba(34,197,94,.1); padding:3px 8px; border-radius:10px; }
.of-tags    { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:18px; }
.of-tag     { font-size:10px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; padding:3px 9px; border-radius:10px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); color:rgba(255,255,255,.55); }
.of-btn     { display:flex; align-items:center; justify-content:center; gap:7px; width:100%; padding:11px 16px; border-radius:8px; border:1px solid rgba(37,211,102,.35); background:rgba(37,211,102,.08); color:#4ade80; font-size:14px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; text-decoration:none; transition:background .2s,border-color .2s,color .2s; }
.of-btn:hover { background:#25D366; border-color:#25D366; color:#fff; }
.of-expiry  { font-size:14px; color:rgba(255,255,255,.28); text-align:center; margin-top:10px; display:flex; align-items:center; justify-content:center; gap:5px; }
.of-exp-dot { width:5px; height:5px; border-radius:50%; background:#ef4444; display:inline-block; animation:of-blink 1.4s ease-in-out infinite; }
@keyframes of-blink { 0%,100%{opacity:1} 50%{opacity:.25} }
.of-bottom      { text-align:center; max-width:1100px; margin:0 auto; }
.of-bottom-note { font-size:15px; color:rgba(255,255,255,.3); margin-bottom:16px; }
.of-main-cta { display:inline-flex; align-items:center; gap:10px; background:transparent; border:1px solid rgba(201,137,106,.4); color:#e8c4b8; padding:14px 32px; border-radius:4px; font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; text-decoration:none; transition:background .25s,border-color .25s,color .25s; }
.of-main-cta:hover { background:rgba(201,137,106,.2); border-color:#c9896a; color:#fff; }
@media(max-width:600px){ .of-grid{ grid-template-columns:1fr; } }

/* 1. The Floating Turtle */
/* Moves the icon up and down slowly */
@keyframes slowFloat {
    0%, 100% { 
        transform: translateY(0); 
    }
    50% { 
        transform: translateY(-12px); /* Adjust height of float here */
    }
}

/* 2. The Pulsing Ripple */
/* Creates an expanding circle that fades out */
@keyframes slowPulse {
    0% { 
        transform: translate(-50%, -50%) scale(0.8); 
        opacity: 0.4; 
    }
    100% { 
        transform: translate(-50%, -50%) scale(1.6); 
        opacity: 0; 
    }
}

/* ── How to apply them to your elements ── */

.philosophy-icon-wrap {
    position: relative;
    font-size: 50px;
    display: inline-block;
    /* Apply the float animation */
    animation: slowFloat 4s ease-in-out infinite; 
    z-index: 2;
}

.icon-ripple {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 70px;
    height: 70px;
    background: var(--gold); /* Use your gold variable */
    border-radius: 50%;
    z-index: -1;
    /* Apply the pulse animation */
    animation: slowPulse 3s ease-out infinite;
}

/* ════════════════════════════════════════════
   GALLERY SECTION
════════════════════════════════════════════ */
#gallery { background: var(--white); padding: 100px 40px; }

/* ── TAB BAR ── */
.gal-tabs {
  display: flex;
  gap: 0;
  background: var(--cream);
  border: 1px solid rgba(201,137,106,.18);
  border-radius: 50px;
  padding: 5px;
  width: fit-content;
  margin: 36px auto 0;
  flex-wrap: wrap;
  justify-content: center;
}
.gal-tab {
  display: flex; align-items: center; gap: 8px;
  padding: 11px 24px;
  border-radius: 50px;
  border: none; background: transparent; cursor: pointer;
  font-family: 'Jost', sans-serif;
  font-size: .78rem; font-weight: 600;
  letter-spacing: .06em; text-transform: uppercase;
  color: var(--text-mid);
  transition: all .28s ease;
  white-space: nowrap;
}
.gal-tab:hover { color: var(--navy); }
.gal-tab.active {
  background: var(--navy);
  color: #fff;
  box-shadow: 0 4px 16px rgba(26,35,64,.2);
}
.gal-tab-icon { font-size: 1rem; }
.gal-tab-count {
  font-size: .6rem; font-weight: 700;
  background: rgba(255,255,255,.18);
  border-radius: 10px; padding: 1px 7px;
  color: rgba(255,255,255,.8);
}
.gal-tab:not(.active) .gal-tab-count {
  background: rgba(26,35,64,.08);
  color: var(--text-light);
}

/* ── PANEL CONTAINER ── */
.gal-panel { display: none; }
.gal-panel.active { display: block; }

/* ── GRID (shared) ── */
.gal-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-auto-rows: 210px;
  grid-auto-flow: dense;
  gap: 12px;
  margin-top: 32px;
}
.g-hero { grid-column: span 2; grid-row: span 2; }
.g-tall { grid-row: span 2; }
.g-wide { grid-column: span 2; }

/* ── TILE BASE ── */
.g-item {
  position: relative; border-radius: 14px; overflow: hidden;
  background: var(--navy); cursor: pointer;
  border: 1px solid rgba(245,237,224,.08);
  transition: transform .3s ease, box-shadow .3s ease;
}
.g-item:hover { transform: translateY(-3px); box-shadow: 0 12px 40px rgba(26,35,64,.18); }
.g-item img, .g-item video {
  width: 100%; height: 100%; object-fit: cover; display: block;
  transition: transform .6s ease;
}
.g-item:hover img, .g-item:hover video { transform: scale(1.06); }

/* ── OVERLAY LABEL ── */
.g-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(26,35,64,.82) 0%, rgba(26,35,64,.25) 40%, transparent 70%);
  display: flex; align-items: flex-end; padding: 16px 14px;
  opacity: 0; transition: opacity .3s ease; z-index: 2;
}
.g-item:hover .g-overlay { opacity: 1; }
.g-overlay span {
  color: #fff; font-size: .65rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: .12em;
  border-left: 2px solid var(--blush); padding-left: 9px; line-height: 1.3;
}
.g-overlay--video {
  opacity: .65;
  background: linear-gradient(to top, rgba(4,8,20,.75) 0%, transparent 55%);
}
.g-item:hover .g-overlay--video { opacity: 1; }

/* ── VIDEO TILE ── */
.v-progress-bg {
  position: absolute; bottom: 0; left: 0;
  width: 100%; height: 3px;
  background: rgba(255,255,255,.15); z-index: 5;
}
.v-progress-bar { width: 0%; height: 100%; background: var(--blush); }
.play-overlay {
  position: absolute; inset: 0;
  display: flex; align-items: center; justify-content: center;
  z-index: 3; pointer-events: none; transition: opacity .25s;
}
.play-btn {
  width: 54px; height: 54px;
  background: rgba(255,255,255,.92); border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  color: var(--teal); font-size: 18px;
  box-shadow: 0 6px 24px rgba(0,0,0,.3);
}
.g-item:hover .play-btn {
  background: var(--rose-gold); color: #fff;
  transform: scale(1.08);
  transition: all .25s;
}

/* ── VIDEO BADGE ── */
.g-vid-badge {
  position: absolute; top: 12px; right: 12px; z-index: 4;
  background: rgba(0,0,0,.55); color: #fff;
  font-size: .58rem; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase; padding: 4px 9px; border-radius: 20px;
  display: flex; align-items: center; gap: 4px;
  backdrop-filter: blur(4px);
}

/* ══════════════════════════════════════════
   BEFORE & AFTER — SPLIT SLIDER
══════════════════════════════════════════ */
.ba-section-label {
  font-size: .68rem; letter-spacing: .22em; color: var(--rose-gold);
  text-transform: uppercase; font-weight: 700;
  text-align: center; margin-bottom: 24px;
  display: flex; align-items: center; justify-content: center; gap: 12px;
}
.ba-section-label::before, .ba-section-label::after {
  content: ''; flex: 1; max-width: 80px; height: 1px;
  background: rgba(201,137,106,.3);
}

.ba-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
  margin-top: 32px;
  margin-bottom: 48px;
}

/* individual B&A card */
.ba-card {
  border-radius: 16px; overflow: hidden;
  border: 1px solid rgba(201,137,106,.18);
  box-shadow: 0 8px 32px rgba(26,35,64,.08);
  background: var(--white);
}
.ba-card-header {
  background: linear-gradient(135deg, var(--navy), #2a1060);
  padding: 14px 18px;
  display: flex; align-items: center; justify-content: space-between;
}
.ba-card-title {
  font-family: 'Cormorant Garamond', serif;
  font-size: 1rem; font-weight: 400; color: #fff;
}
.ba-card-pill {
  font-size: .58rem; font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; padding: 3px 10px; border-radius: 10px;
  background: rgba(201,137,106,.2); border: 1px solid rgba(201,137,106,.35);
  color: var(--blush);
}

/* slider container */
.ba-slider {
  position: relative; height: 280px; overflow: hidden;
  user-select: none; cursor: ew-resize; touch-action: pan-y;
}
.ba-slider-after,
.ba-slider-before {
  position: absolute; inset: 0; width: 100%; height: 100%;
}
.ba-slider-after  img,
.ba-slider-before img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}
/* BEFORE is clipped on the right */
.ba-slider-before {
  clip-path: inset(0 50% 0 0);
  z-index: 2;
}
/* Divider line */
.ba-divider {
  position: absolute; top: 0; bottom: 0; left: 50%;
  width: 2px; background: #fff; z-index: 4;
  box-shadow: 0 0 8px rgba(0,0,0,.4);
  transform: translateX(-50%);
}
/* Handle */
.ba-handle {
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 40px; height: 40px; border-radius: 50%;
  background: #fff; z-index: 5;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 2px 12px rgba(0,0,0,.3);
  font-size: .7rem; color: var(--navy); font-weight: 700;
  pointer-events: none;
}
.ba-handle::before, .ba-handle::after {
  content: ''; position: absolute; top: 50%;
  transform: translateY(-50%);
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
}
.ba-handle::before { left: 6px; border-right: 7px solid var(--navy); }
.ba-handle::after  { right: 6px; border-left: 7px solid var(--navy); }

/* labels on image */
.ba-label {
  position: absolute; bottom: 10px; z-index: 6;
  font-family: 'Jost', sans-serif;
  font-size: .6rem; font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; padding: 4px 10px; border-radius: 10px;
  color: #fff; pointer-events: none;
}
.ba-label-before {
  left: 10px; background: rgba(26,35,64,.75);
}
.ba-label-after {
  right: 10px; background: rgba(201,137,106,.85);
}

/* card footer note */
.ba-card-note {
  padding: 10px 16px;
  font-size: .8rem; color: var(--text-light);
  text-align: center; line-height: 1.5;
  border-top: 1px solid rgba(201,137,106,.1);
}

/* drag hint animation */
@keyframes ba-hint {
  0%   { left: 50%; }
  30%  { left: 35%; }
  70%  { left: 65%; }
  100% { left: 50%; }
}
.ba-slider.hint-play .ba-divider,
.ba-slider.hint-play .ba-handle { animation: ba-hint .9s ease-in-out; }

/* ── B&A VIDEO row ── */
.ba-videos {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 16px;
  margin-bottom: 20px;
}
.ba-vid-card {
  border-radius: 14px; overflow: hidden;
  position: relative; height: 240px;
  background: var(--navy); cursor: pointer;
  border: 1px solid rgba(201,137,106,.18);
  box-shadow: 0 4px 20px rgba(26,35,64,.1);
}
.ba-vid-card video {
  width: 100%; height: 100%; object-fit: cover; display: block;
}
.ba-vid-card .play-overlay { z-index: 3; }
.ba-vid-card .g-overlay { opacity: 1; }
.ba-vid-card:hover .play-btn {
  background: var(--rose-gold); color: #fff; transform: scale(1.1);
}

/* ── WA CTA banner (B&A) ── */
.ba-cta-banner {
  background: linear-gradient(135deg, var(--navy), #1e3a2a);
  border-radius: 14px; padding: 28px 32px;
  display: flex; align-items: center; gap: 20px; flex-wrap: wrap;
  margin-top: 12px;
}
.ba-cta-icon { font-size: 2.2rem; flex-shrink: 0; }
.ba-cta-text { flex: 1; }
.ba-cta-text strong {
  display: block; font-family: 'Cormorant Garamond', serif;
  font-size: 1.4rem; color: #fff; font-weight: 400; margin-bottom: 4px;
}
.ba-cta-text span { font-size: .98rem; color: rgba(255,255,255,.55); line-height: 1.6; }
.ba-cta-btn {
  display: inline-flex; align-items: center; gap: 8px;
  background: #25D366; color: #fff; padding: 12px 24px;
  border-radius: 6px; font-family: 'Jost', sans-serif;
  font-size: .76rem; font-weight: 700; letter-spacing: .1em;
  text-transform: uppercase; text-decoration: none;
  transition: background .2s; flex-shrink: 0;
  box-shadow: 0 4px 18px rgba(37,211,102,.35);
}
.ba-cta-btn:hover { background: #20b95a; }

/* ════════════════════════════════════════════
   LIGHTBOX
════════════════════════════════════════════ */
.g-lightbox {
  display: none; position: fixed; inset: 0;
  background: rgba(4,8,18,.96); z-index: 10000;
  align-items: center; justify-content: center;
}
.g-lightbox.open { display: flex; }
.g-lightbox img {
  max-width: 88vw; max-height: 86vh;
  border-radius: 8px;
  box-shadow: 0 24px 80px rgba(0,0,0,.6);
  animation: lbIn .22s ease; pointer-events: none;
}
@keyframes lbIn { from{opacity:0;transform:scale(.96)} to{opacity:1;transform:scale(1)} }

.g-lb-close {
  position: absolute; top: 16px; right: 20px;
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.15);
  color: #fff; font-size: 22px; width: 42px; height: 42px;
  border-radius: 50%; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: background .2s; z-index: 2;
}
.g-lb-close:hover { background: rgba(255,255,255,.22); }
.g-lb-prev, .g-lb-next {
  position: absolute; top: 50%; transform: translateY(-50%);
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18);
  color: #fff; font-size: 30px; width: 50px; height: 50px;
  border-radius: 50%; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: background .2s, transform .15s; z-index: 2; flex-shrink: 0;
}
.g-lb-prev { left: 16px; }
.g-lb-next { right: 16px; }
.g-lb-prev:hover { background:rgba(255,255,255,.22);transform:translateY(-50%) scale(1.08); }
.g-lb-next:hover { background:rgba(255,255,255,.22);transform:translateY(-50%) scale(1.08); }
.g-lb-counter {
  position: absolute; bottom: 16px; left: 50%; transform: translateX(-50%);
  color: rgba(255,255,255,.4); font-size: .72rem; letter-spacing: .1em;
  font-family: 'Jost', sans-serif; pointer-events: none;
}
.g-lb-caption {
  position: absolute; bottom: 40px; left: 50%; transform: translateX(-50%);
  color: rgba(255,255,255,.7); font-size: .72rem; letter-spacing: .08em;
  font-family: 'Jost', sans-serif; pointer-events: none; white-space: nowrap;
  text-transform: uppercase;
}

/* ── FULLSCREEN VIDEO PLAYER ── */
.fs-player {
  display: none; position: fixed; inset: 0;
  background: #000; z-index: 10001;
  align-items: center; justify-content: center;
}
.fs-player.open { display: flex; }
.fs-player video { width: 100%; height: 100%; object-fit: contain; outline: none; }
.fs-close {
  position: absolute; top: 16px; right: 20px;
  background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.18);
  color: #fff; font-size: 22px; width: 44px; height: 44px;
  border-radius: 50%; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: background .2s; z-index: 2;
}
.fs-close:hover { background: rgba(255,255,255,.25); }

/* ════════════════════════════════════════════
   RESPONSIVE
════════════════════════════════════════════ */
@media(max-width:900px){
  #gallery { padding: 72px 20px; }
  .gal-grid { grid-template-columns: repeat(3,1fr); grid-auto-rows: 170px; }
  .ba-slider { height: 240px; }
  .g-lb-prev { left: 6px; } .g-lb-next { right: 6px; }
}
@media(max-width:600px){
  .gal-tabs { gap: 4px; padding: 4px; }
  .gal-tab  { padding: 9px 14px; font-size: .68rem; }
  .gal-grid { grid-template-columns: repeat(2,1fr); grid-auto-rows: 140px; gap: 8px; }
  .g-tall   { grid-row: span 1; }
  .ba-grid  { grid-template-columns: 1fr; }
  .ba-slider{ height: 200px; }
  .ba-videos{ grid-template-columns: 1fr; }
  .ba-cta-banner { padding: 20px 18px; flex-direction: column; }
  .ba-cta-btn { width: 100%; justify-content: center; }
  .g-overlay{ opacity:1; background:linear-gradient(to top,rgba(0,0,0,.55),transparent); }
  .g-lb-prev,.g-lb-next { width: 38px; height: 38px; font-size: 22px; }
}

/* Styling for your brand only */
.growonweb-credit {
    width: 100%;
    text-align: center;
    margin-top: 20px;
    padding-bottom: 10px; /* Adjust this if the chat bubble still feels close */
}

.growonweb-credit a {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: rgba(255, 255, 255, 0.4); /* Subtle white */
    text-decoration: none;
    transition: 0.3s ease;
}

.growonweb-credit a span {
    color: var(--gold); /* Your brand color */
    font-weight: 700;
}

.growonweb-credit a:hover {
    color: var(--white);
    letter-spacing: 2.5px;
}

  .mob-trust-nudge {
    display: flex;
    align-items: center;
    /* Premium Navy with slight transparency for glass effect */
    background: --rose-gold; 
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    
    padding: 16px 20px;
    border-radius: 16px;
    
    /* Subtle Rose Gold border */
    border: 1px solid rgba(201, 137, 106, 0.3);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.4);
    
    transition: all 0.6s cubic-bezier(0.23, 1, 0.32, 1);
    position: fixed;
    z-index: 10000;
  }
  
  .mob-trust-nudge.hidden { 
    opacity: 0; 
    transform: translateY(30px) scale(0.95);
    pointer-events: none;
  }

  /* Typography & Icons */
  .nudge-icon-wrap {
    font-size: 26px;
    margin-right: 14px;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.2));
  }
  
  .nudge-title {
    font-family: 'Cormorant Garamond', serif; /* Matching your luxury font */
    font-size: 1.05rem;
    font-weight: 600;
    color: #ffffff;
    margin-bottom: 2px;
  }
  
  .nudge-sub {
    font-family: 'Jost', sans-serif;
    font-size: 0.72rem;
    color: rgba(255, 255, 255, 0.7);
    line-height: 1.5;
    letter-spacing: 0.02em;
  }

  .nudge-cta {
    background: #c9896a; /* Rose Gold CTA */
    color: #ffffff;
    padding: 10px 18px;
    border-radius: 8px;
    text-decoration: none;
    font-family: 'Jost', sans-serif;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-left: 15px;
    transition: background 0.3s;
    white-space: nowrap;
  }

  .nudge-cta:hover { background: #e8c4b8; color: #0d1628; }

  .nudge-dismiss {
    position: absolute;
    top: 10px;
    right: 12px;
    background: none;
    border: none;
    color: rgba(255,255,255,0.3);
    cursor: pointer;
    font-size: 14px;
    transition: color 0.2s;
  }
  
  .nudge-dismiss:hover { color: #ffffff; }

  /* RESPONSIVE PLACEMENT */
  @media (max-width: 900px) {
    .mob-trust-nudge {
      bottom: 220px;
      left: 12px;
      right: 12px;
    }
  }

  @media (min-width: 901px) {
    .mob-trust-nudge {
      bottom: 40px;
      left: 40px;
      width: 420px;
    }
  }

/* ── INTL HERO ANIMATIONS ── */
@keyframes intl-float  { 0%,100%{transform:translateY(0) rotate(0deg)} 50%{transform:translateY(-18px) rotate(2deg)} }
@keyframes intl-float2 { 0%,100%{transform:translateY(0) rotate(0deg)} 50%{transform:translateY(-12px) rotate(-3deg)} }
@keyframes intl-float3 { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }
@keyframes intl-spin   { from{transform:rotate(0deg)} to{transform:rotate(360deg)} }
@keyframes intl-spin-r { from{transform:rotate(360deg)} to{transform:rotate(0deg)} }
@keyframes intl-pulse  { 0%,100%{opacity:.6;transform:scale(1)} 50%{opacity:1;transform:scale(1.08)} }
@keyframes intl-trail  { 0%{opacity:0;transform:translateX(-30px)} 60%{opacity:1} 100%{opacity:0;transform:translateX(60px)} }
@keyframes intl-fadeup { from{opacity:0;transform:translateY(28px)} to{opacity:1;transform:translateY(0)} }
@keyframes intl-count  { from{opacity:0;transform:scale(.7)} to{opacity:1;transform:scale(1)} }
@keyframes intl-shimmer{
  0%{background-position:200% center}
  100%{background-position:-200% center}
}
.intl-shimmer-text {
  background: linear-gradient(90deg, #e8c4b8 0%, #fff 30%, #c9a96e 70%, #fff 70%, #e8c4b8 100%);
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  animation: intl-shimmer 3s linear infinite;
}
/* Country flag chips */
.intl-flag-chip {
  display:inline-flex; align-items:center; gap:6px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.14);
  border-radius:20px; padding:6px 14px;
  font-family:'Jost',sans-serif; font-size:.72rem;
  font-weight:600; letter-spacing:.04em;
  color:rgba(255,255,255,.85);
  transition:background .2s, border-color .2s;
  animation: intl-fadeup .6s ease both;
}
.intl-flag-chip:hover { background:rgba(255,255,255,.14); border-color:rgba(201,137,106,.5); }
/* Saving badge */
.intl-save-badge {
  display:inline-flex; align-items:center; gap:6px;
  background:linear-gradient(135deg,rgba(34,197,94,.2),rgba(34,197,94,.08));
  border:1px solid rgba(34,197,94,.35);
  border-radius:8px; padding:12px 20px;
  font-family:'Jost',sans-serif;
}
/* Hero stat cards */
.intl-hero-stat {
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px; padding:16px 18px;
  text-align:center; flex:1; min-width:100px;
  backdrop-filter:blur(8px);
  transition:background .25s, transform .25s;
  animation: intl-fadeup .7s ease both;
}
.intl-hero-stat:hover { background:rgba(255,255,255,.12); transform:translateY(-3px); }
.intl-hero-stat-num {
  font-family:'Cormorant Garamond',serif;
  font-size:1.9rem; font-weight:600; color:#fff; line-height:1; margin-bottom:4px;
}
.intl-hero-stat-num span { color:var(--gold); }
.intl-hero-stat-lbl { font-size:.6rem; color:rgba(255,255,255,.5); text-transform:uppercase; letter-spacing:.1em; }
/* Floating country pin */
.intl-pin {
  position:absolute; display:flex; flex-direction:column; align-items:center;
  cursor:default; transition:transform .3s;
}
.intl-pin:hover { transform:scale(1.15) translateY(-4px) !important; }
.intl-pin-dot {
  width:10px; height:10px; border-radius:50%;
  background:#fff; box-shadow:0 0 0 3px rgba(255,255,255,.3);
  position:relative; z-index:2;
}
.intl-pin-dot::after {
  content:''; position:absolute; top:50%; left:50%;
  transform:translate(-50%,-50%);
  width:20px; height:20px; border-radius:50%;
  background:rgba(255,255,255,.15);
  animation:intl-pulse 2s ease-in-out infinite;
}
.intl-pin-label {
  background:rgba(26,35,64,.92);
  border:1px solid rgba(201,137,106,.3);
  border-radius:6px; padding:3px 8px;
  font-family:'Jost',sans-serif; font-size:.9rem;
  font-weight:600; color:#fff; white-space:nowrap;
  margin-top:4px; letter-spacing:.06em;
}
/* Orbit ring */
.intl-orbit {
  position:absolute; border-radius:50%;
  border:1px solid rgba(255,255,255,.06);
  top:50%; left:50%;
  transform:translate(-50%,-50%);
  animation:intl-spin 28s linear infinite;
}
.intl-orbit-r { animation:intl-spin-r 20s linear infinite; }
/* Flight path trail */
.intl-trail {
  position:absolute;
  width:6px; height:2px;
  border-radius:2px;
  background:linear-gradient(90deg,transparent,rgba(201,169,110,.7),transparent);
  animation: intl-trail 3s ease-in-out infinite;
}

/* Animation for the flight path movement */
@keyframes flight-flow {
  to {
    stroke-dashoffset: -20;
  }
}

.flight-path {
  animation: flight-flow 3s linear infinite;
  filter: drop-shadow(0 0 2px rgba(255,255,255,0.2));
}

/* Optimized Mobile Layout - Ultra Wide Mode */
@media (max-width: 768px) {
    .tx-hero {
        display: flex !important;
        flex-direction: column;
        min-height: auto !important;
        overflow: hidden; /* Crucial: Clips the 200% width orbits */
        width: 100vw;
    }

    /* 1. MAP SECTION HEIGHT */
    .tx-hero::before {
        content: "";
        display: block;
        height: 1px; 
        width: 100%;
    }

    /* 2. ULTRA-WIDE ORBITS */
    .intl-orbit {
        position: absolute;
        width: 200% !important; /* Stretched far beyond screen edges */
        height: 250px !important; 
        left: 50% !important;
        top: 150px !important; 
        transform: translateX(-50%) !important;
        border-radius: 50% / 40% !important; /* Elegant oval */
        border: 1px solid rgba(255,255,255,0.12) !important;
    }

    .intl-orbit:nth-child(2) {
        width: 250% !important;
        height: 400px !important;
        opacity: 0.3;
    }
	/* 3. WIDE FLIGHT PATHS SVG - TARGETED ONLY */
	.tx-hero svg {
		position: absolute;
		top: 0;
		left: 50% !important;
		width: 180% !important; /* Spreads the lines only in the hero */
		height: 300px !important;
		transform: translateX(-50%) !important;
		z-index: 4;
		overflow: visible;
		pointer-events: none; /* Crucial: Prevents the big SVG from blocking clicks on buttons */
	}
    /* 4. PIN POSITIONING */
    .mobile-blr-pin {
        top: 165px !important; /* Centered vertically in the 300px map */
        left: 55% !important;
        transform: translate(-50%, -50%) !important;
    }
}

@media (max-width: 768px) {
    /* 1. Reset all pins to a high starting point */
    .intl-pin {
        position: absolute !important;
        top: 10% !important; 
    }

    /* 2. Target specific pins by their UNIQUE INLINE STYLE to move them */
    
    /* London (Left: 8%) */
    .intl-pin[style*="left:8%"] { top: 3% !important; left: 1% !important; }

    /* Dubai (Left: 15%) */
    .intl-pin[style*="left:15%"] { top: 10% !important; left: 12% !important; }

    /* New York (Left: 38%) */
    .intl-pin[style*="left:38%"] { top: 4% !important; left: 60% !important; }

    /* Singapore (Left: 9%) */
    .intl-pin[style*="left:9%"] { top: 20% !important; left: 5% !important; }

    /* Sydney (Left: 30%) */
    .intl-pin[style*="left:30%"] { top: 11% !important; left: 66% !important; }

    /* 3. Label adjustment */
    .intl-pin-label {
        font-size: 0.7rem !important;
        padding: 2px 6px !important;
        white-space: nowrap;
    }
	.intl-pin-label {
		font-size: 0.95rem !important; 
		font-weight: 700 !important;
		padding: 6px 14px !important; /* Extra breathing room */
		white-space: nowrap;
		letter-spacing: 0.02em;
	}
	.intl-pin-dot {
		width: 10px !important;
		height: 10px !important;
	}
	
	svg path.flight-path {
        stroke-width: 2.8 !important; /* Increased from 1.5/1.8 */
        opacity: 0.8 !important;     /* Making them slightly more solid for visibility */
    }

    /* Optional: If you use markers (arrows), scale them up to match the thicker lines */
    marker#arrow-gold {
        transform: scale(1.3);
    }
}


/* 1. DEFAULT (DESKTOP): Keep it tight */
#tx-international .tx-hero::before {
    content: "";
    display: block;
    height: 1px; /* No extra gap on Desktop */
}

/* 2. MOBILE & TABLET: Add the height for the map */
  @media (max-width: 900px) {
    #tx-international .tx-hero::before {
        height: 290px !important; /* Pushes text down on mobile only */
    }
    
    #tx-international .tx-hero {
        min-height: 620px !important; /* Gives room for the flight paths */
        display: flex;
        flex-direction: column;
    }
}


/* 3. SMALL MOBILE: Fine-tune for tiny screens */
@media (max-width: 600px) {
    #tx-international .tx-hero::before {
        height: 180px !important; 
    }
}

/* 4. RESET: For all other treatment pages (Root Canal, etc) */
.tx-hero::before {
    content: "";
    display: block;
    height: 1px;
}

@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }


@media (max-width: 768px) {
  section {
    padding: 60px 20px; /* reduce from 100px top/bottom and 40px sides */
  }

  body.standalone-page section:first-of-type {
    padding-top: 15px !important;
  }
}
/* ═══════════════════════════════════════════════════════════════
   MOBILE FAB MENU
   Replaces: intl-float-btn + booking-float + chat-bubble +
             mob-tx-toggle on mobile — reduces clutter to ONE button
═══════════════════════════════════════════════════════════════ */

/* ── Hide individual mobile floats on mobile; let FAB own that space ── */
@media (max-width: 900px) {
  /* hide booking float & standalone chat bubble — FAB handles them */
  #booking-float           { display: none !important; }
  #chat-bubble             { display: none !important; }
  /* intl-float-wrap shows on mobile only via its own rule */
  /* hide the standalone treatments toggle — FAB triggers it instead */
  .mob-tx-toggle           { display: none !important; }
}

/* ── FAB wrapper ── */
#mob-fab-wrap {
  display: none; /* hidden on desktop */
  position: fixed;
  bottom: 140px;
  right: 18px;
  z-index: 1060;
  width: fit-content;
  height: fit-content;
  align-items: flex-end;
  flex-direction: column;
  gap: 10px;
}

@media (max-width: 900px) {
  #mob-fab-wrap { display: flex; }
}

/* ── Main FAB button ── */
.mob-fab-btn {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--navy);
  border: 1.5px solid rgba(201,137,106,0.55);
  color: #fff;
  font-size: 1.6rem;
  line-height: 1;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 6px 22px rgba(26,35,64,0.45);
  transition: background 0.22s, transform 0.28s cubic-bezier(0.175,0.885,0.32,1.275);
  flex-shrink: 0;
  /* Pulse to attract attention on first load */
  animation: fab-pulse-in 0.5s 0.8s cubic-bezier(0.175,0.885,0.32,1.275) both;
}

@keyframes fab-pulse-in {
  0%   { transform: scale(0); opacity: 0; }
  80%  { transform: scale(1.15); }
  100% { transform: scale(1); opacity: 1; }
}

.mob-fab-btn:hover { background: var(--rose-gold); }

/* Rotate + icon to × when open */
.mob-fab-icon {
  display: inline-block;
  transition: transform 0.3s cubic-bezier(0.4,0,0.2,1), color 0.2s;
  font-style: normal;
}
#mob-fab-wrap.fab-open .mob-fab-btn   { background: var(--rose-gold); }
#mob-fab-wrap.fab-open .mob-fab-icon  { transform: rotate(45deg); }

/* ── Action items stack ── */
.mob-fab-items {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
  pointer-events: none;
  opacity: 0;
  transform: translateY(12px) scale(0.92);
  transform-origin: bottom right;
  transition:
    opacity 0.25s cubic-bezier(0.4,0,0.2,1),
    transform 0.25s cubic-bezier(0.4,0,0.2,1);
}
#mob-fab-wrap.fab-open .mob-fab-items {
  pointer-events: auto;
  opacity: 1;
  transform: translateY(0) scale(1);
}

/* Staggered reveal for each item */
.mob-fab-item:nth-child(1) { transition-delay: 0.03s; }
.mob-fab-item:nth-child(2) { transition-delay: 0.06s; }


/* ── Each action pill ── */
.mob-fab-item {
  display: flex;
  align-items: center;
  gap: 8px;
  background: rgba(26,35,64,0.96);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(201,137,106,0.35);
  border-radius: 28px;
  padding: 8px 14px 8px 10px;
  color: #fff;
  text-decoration: none;
  font-family: 'Jost', sans-serif;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  white-space: nowrap;
  box-shadow: 0 4px 16px rgba(26,35,64,0.35);
  transition: background 0.2s, transform 0.18s;
  /* Reset button styles */
  -webkit-appearance: none;
  appearance: none;
}
.mob-fab-item:active,
.mob-fab-item:hover {
  background: var(--rose-gold);
  transform: scale(1.04);
}
.mob-fab-item-icon {
  font-size: 1.2rem;
  line-height: 1;
  flex-shrink: 0;
}
.mob-fab-item-label {
  line-height: 1;
}

/* ── Mobile Nav fix ───────────────────────────── */
@media(max-width:900px){
  #mainNav{display:grid !important;grid-template-columns:auto 1fr auto auto !important;grid-template-areas:"logo . search burger" !important;align-items:center !important;gap:0 8px !important}
  #mainNav .nav-logo{grid-area:logo}
  #mainNav .nav-links{display:none !important}
  #mainNav .adc-search-trigger{grid-area:search;display:flex !important;margin:0 auto;justify-self:center}
  #mainNav .hamburger{grid-area:burger;display:flex !important;margin-left:4px}
}
