﻿      :root {
        --r50: #fff1f6;
        --r100: #ffdce9;
        --r200: #ffb3cf;
        --r300: #f8c8dc;
        --r400: #e896b8;
        --r500: #d4648f;
        --r600: #b84070;
        --r700: #8f2652;
        --d900: #120d0f;
        --d800: #1e1519;
        --d700: #2d2028;
        --d600: #3d2d37;
        --mid: #5a4655;
        --muted: #9a8895;
        --gold: #d4a853;
        --goldl: #e8c87a;
        --gold100: #fdf3dc;
        --cream: #fffbf8;
        --blush: #fef5f9;
        --white: #fff;
        --sh-xs: 0 2px 8px rgba(180, 64, 112, 0.08);
        --sh-sm: 0 4px 20px rgba(180, 64, 112, 0.1);
        --sh-md: 0 8px 40px rgba(180, 64, 112, 0.14);
        --sh-lg: 0 20px 80px rgba(180, 64, 112, 0.18);
        --sh-xl: 0 32px 100px rgba(180, 64, 112, 0.22);
        --rad: 16px;
        --radl: 24px;
        --radxl: 32px;
        --nav: 70px;
        --ease: 0.28s cubic-bezier(0.4, 0, 0.2, 1);
      }
      *,
      *::before,
      *::after {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
      }
      html {
        scroll-behavior: smooth;
        -webkit-text-size-adjust: 100%;
      }
      body {
        font-family: "DM Sans", system-ui, sans-serif;
        background: var(--cream);
        color: var(--d900);
        overflow-x: hidden;
        line-height: 1.6;
        min-height: 100vh;
      }
      a {
        text-decoration: none;
        color: inherit;
      }
      button {
        cursor: pointer;
        font-family: "DM Sans", sans-serif;
        border: none;
      }
      input,
      select,
      textarea {
        font-family: "DM Sans", sans-serif;
      }
      .container {
        max-width: 1140px;
        margin: 0 auto;
        padding: 0 5%;
      }
      .tc {
        text-align: center;
      }
      .lbl {
        display: inline-block;
        font-size: 0.7rem;
        font-weight: 600;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        color: var(--gold);
        margin-bottom: 0.65rem;
      }
      .h2 {
        font-family: "Playfair Display", serif;
        font-size: clamp(1.8rem, 3.5vw, 2.8rem);
        font-weight: 600;
        line-height: 1.18;
        color: var(--d900);
        margin-bottom: 0.9rem;
      }
      .h2 em {
        font-style: italic;
        color: var(--r600);
      }
      .sub {
        font-size: 0.96rem;
        line-height: 1.85;
        color: var(--mid);
        max-width: 520px;
      }
      .tc .sub {
        margin: 0 auto;
      }
      .reveal {
        opacity: 0;
        transform: translateY(28px);
        transition:
          opacity 0.7s ease,
          transform 0.7s ease;
      }
      .reveal.on {
        opacity: 1;
        transform: none;
      }
      .d1 {
        transition-delay: 0.1s;
      }
      .d2 {
        transition-delay: 0.2s;
      }
      .d3 {
        transition-delay: 0.3s;
      }
      .d4 {
        transition-delay: 0.4s;
      }
      section {
        padding: 88px 5%;
        scroll-margin-top: calc(var(--nav) + 20px);
      }

      /* ── NAV ── */
      #nav {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 1000;
        height: var(--nav);
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0 5%;
        background: rgba(255, 251, 248, 0.9);
        backdrop-filter: blur(20px);
        border-bottom: 1px solid rgba(248, 200, 220, 0.25);
        transition: box-shadow var(--ease);
      }
      #nav.sc {
        box-shadow: 0 4px 30px rgba(180, 64, 112, 0.1);
      }
      .logo {
        font-family: "Playfair Display", serif;
        font-size: 1.45rem;
        font-weight: 700;
        color: var(--r700);
      }
      .logo span {
        color: var(--gold);
      }
      .nav-links {
        display: flex;
        gap: 1.8rem;
        list-style: none;
      }
      .nav-links a {
        font-size: 0.83rem;
        font-weight: 500;
        color: var(--mid);
        transition: color var(--ease);
      }
      .nav-links a:hover {
        color: var(--r600);
      }
      .nav-right {
        display: flex;
        align-items: center;
        gap: 0.8rem;
      }
      .btn-nav {
        background: var(--r600);
        color: #fff;
        padding: 9px 20px;
        border-radius: 50px;
        font-size: 0.82rem;
        font-weight: 600;
        transition: all var(--ease);
      }
      .btn-nav:hover {
        background: var(--r700);
        transform: translateY(-1px);
        box-shadow: 0 6px 20px rgba(184, 64, 112, 0.32);
      }
      .hbg {
        display: none;
        flex-direction: column;
        gap: 5px;
        background: none;
        padding: 6px;
      }
      .hbg span {
        display: block;
        width: 22px;
        height: 2px;
        background: var(--d800);
        border-radius: 2px;
        transition: all 0.3s;
      }
      .mob-nav {
        position: fixed;
        top: var(--nav);
        left: 0;
        right: 0;
        background: #fff;
        border-bottom: 1px solid var(--r100);
        z-index: 999;
        padding: 1rem 5%;
        display: none;
        flex-direction: column;
        gap: 0.5rem;
        box-shadow: var(--sh-sm);
      }
      .mob-nav.open {
        display: flex;
      }
      .mob-nav a {
        font-size: 0.9rem;
        font-weight: 600;
        color: var(--d900);
        padding: 0.6rem 0;
        border-bottom: 1px solid var(--r100);
      }

      /* ── HERO ── */
      #hero {
        min-height: 100vh;
        display: grid;
        grid-template-columns: 1fr 1fr;
        align-items: center;
        gap: 4rem;
        padding: calc(var(--nav) + 50px) 5% 70px;
        background: linear-gradient(
          145deg,
          #fffbf8 0%,
          #fef5f9 55%,
          #fce8f2 100%
        );
        position: relative;
        overflow: hidden;
      }
      .blob {
        position: absolute;
        pointer-events: none;
        border-radius: 50%;
      }
      .blob1 {
        top: -15%;
        right: -8%;
        width: 55vw;
        height: 55vw;
        background: radial-gradient(
          circle,
          rgba(248, 200, 220, 0.4) 0%,
          transparent 65%
        );
      }
      .blob2 {
        bottom: -10%;
        left: -5%;
        width: 38vw;
        height: 38vw;
        background: radial-gradient(
          circle,
          rgba(212, 168, 83, 0.12) 0%,
          transparent 65%
        );
      }
      .hero-pill {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        background: rgba(248, 200, 220, 0.45);
        border: 1px solid rgba(248, 200, 220, 0.7);
        color: var(--r700);
        padding: 7px 16px;
        border-radius: 50px;
        font-size: 0.74rem;
        font-weight: 600;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        margin-bottom: 1.4rem;
      }
      .hero-pill::before {
        content: "✦";
        color: var(--gold);
      }
      .h1 {
        font-family: "Playfair Display", serif;
        font-size: clamp(2rem, 4.2vw, 3.5rem);
        font-weight: 700;
        line-height: 1.14;
        color: var(--d900);
        margin-bottom: 1.3rem;
      }
      .h1 em {
        font-style: italic;
        color: var(--r600);
      }
      .hero-sub {
        font-size: 1rem;
        line-height: 1.8;
        color: var(--mid);
        max-width: 460px;
        margin-bottom: 2rem;
      }
      .btns {
        display: flex;
        gap: 0.9rem;
        flex-wrap: wrap;
        margin-bottom: 2.5rem;
      }
      .btn-p {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        background: var(--r600);
        color: #fff;
        padding: 14px 28px;
        border-radius: 50px;
        font-size: 0.9rem;
        font-weight: 600;
        transition: all var(--ease);
      }
      .btn-p:hover {
        background: var(--r700);
        transform: translateY(-2px);
        box-shadow: 0 10px 32px rgba(184, 64, 112, 0.35);
      }
      .btn-o {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        background: transparent;
        color: var(--r600);
        padding: 13px 28px;
        border-radius: 50px;
        border: 1.5px solid var(--r400);
        font-size: 0.9rem;
        font-weight: 600;
        transition: all var(--ease);
      }
      .btn-o:hover {
        background: var(--r100);
        border-color: var(--r600);
        transform: translateY(-2px);
      }
      .trust-row {
        display: flex;
        gap: 1.2rem;
        flex-wrap: wrap;
      }
      .tchip {
        display: flex;
        align-items: center;
        gap: 7px;
        background: #fff;
        border: 1px solid var(--r200);
        border-radius: 50px;
        padding: 6px 14px 6px 6px;
        box-shadow: var(--sh-xs);
      }
      .tchip-icon {
        width: 28px;
        height: 28px;
        border-radius: 50%;
        background: var(--r50);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.85rem;
      }
      .tchip span {
        font-size: 0.77rem;
        font-weight: 600;
        color: var(--d800);
      }

      /* Hero visual */
      .hero-vis {
        position: relative;
      }
      .hero-frame {
        border-radius: 36px 36px 36px 80px;
        overflow: hidden;
        aspect-ratio: 3/4;
        background: linear-gradient(
          155deg,
          var(--r200) 0%,
          var(--r400) 60%,
          var(--r600) 100%
        );
        position: relative;
        box-shadow: var(--sh-xl);
      }
      .hero-canvas {
        width: 100%;
        height: 100%;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
        overflow: hidden;
      }
      .hero-canvas svg {
        width: 85%;
        height: 85%;
        position: relative;
        z-index: 2;
      }
      .hero-overlay {
        position: absolute;
        inset: 0;
        background: linear-gradient(
          160deg,
          rgba(255, 241, 246, 0.75) 0%,
          rgba(248, 200, 220, 0.25) 50%,
          rgba(212, 100, 143, 0.2) 100%
        );
      }
      .fc {
        position: absolute;
        background: #fff;
        border-radius: 18px;
        box-shadow: 0 12px 50px rgba(180, 64, 112, 0.18);
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 13px 18px;
        min-width: 172px;
        z-index: 5;
      }
      .fca {
        bottom: 1.8rem;
        left: 0rem;
        animation: fy 4s ease-in-out infinite;
      }
      .fcb {
        top: 2.5rem;
        right: 0rem;
        animation: fy 4.5s ease-in-out infinite 1.2s;
      }
      @keyframes fy {
        0%,
        100% {
          transform: translateY(0);
        }
        50% {
          transform: translateY(-9px);
        }
      }
      .fc-ico {
        width: 36px;
        height: 36px;
        border-radius: 10px;
        background: var(--r50);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.1rem;
        flex-shrink: 0;
      }
      .fc-lbl {
        font-size: 0.68rem;
        color: var(--muted);
        font-weight: 500;
        margin-bottom: 1px;
      }
      .fc-val {
        font-size: 0.87rem;
        font-weight: 700;
        color: var(--d900);
      }

      /* ── TICKER ── */
      .ticker {
        background: var(--r600);
        padding: 13px 0;
        overflow: hidden;
        white-space: nowrap;
      }
      .ticker-t {
        display: inline-flex;
        gap: 2.5rem;
        animation: tick 28s linear infinite;
      }
      .ticker-t span {
        font-size: 0.77rem;
        font-weight: 600;
        color: #fff;
        letter-spacing: 0.06em;
        text-transform: uppercase;
      }
      .ticker-t .sep {
        color: rgba(255, 255, 255, 0.4);
      }
      @keyframes tick {
        from {
          transform: translateX(0);
        }
        to {
          transform: translateX(-50%);
        }
      }

      /* ── STATS ── */
      .stats-band {
        background: #fff;
        padding: 52px 5%;
      }
      .stats-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 1.4rem;
      }
      .sc {
        text-align: center;
        padding: 1.4rem;
        border-radius: var(--rad);
        background: var(--blush);
        border: 1px solid var(--r100);
        transition:
          transform var(--ease),
          box-shadow var(--ease);
      }
      .sc:hover {
        transform: translateY(-4px);
        box-shadow: var(--sh-sm);
      }
      .snum {
        font-family: "Playfair Display", serif;
        font-size: 2.5rem;
        font-weight: 700;
        color: var(--r600);
        line-height: 1;
      }
      .ssuf {
        font-size: 1.3rem;
        color: var(--gold);
      }
      .slbl {
        font-size: 0.8rem;
        color: var(--muted);
        font-weight: 500;
        margin-top: 0.4rem;
      }

      /* ── DOCTORS ── */
      #doctors {
        background: var(--blush);
      }
      .doc-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
        max-width: 900px;
        margin: 3rem auto 0;
      }
      .doc-card {
        background: #fff;
        border-radius: var(--radl);
        overflow: hidden;
        box-shadow: var(--sh-sm);
        border: 1px solid var(--r100);
        transition:
          transform var(--ease),
          box-shadow var(--ease);
      }
      .doc-card:hover {
        transform: translateY(-6px);
        box-shadow: var(--sh-lg);
      }
      .doc-photo {
        height: 290px;
        position: relative;
        overflow: hidden;
      }
      .doc-photo-bg {
        width: 100%;
        height: 100%;
        display: flex;
        align-items: flex-end;
        justify-content: center;
        padding-bottom: 1.8rem;
        position: relative;
      }
      .doc-photo-bg svg {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
      }
      .doc-label {
        background: #fff;
        border-radius: 14px;
        padding: 10px 20px;
        text-align: center;
        box-shadow: var(--sh-sm);
        position: relative;
        z-index: 2;
      }
      .doc-name-c {
        font-family: "Playfair Display", serif;
        font-size: 1.3rem;
        font-weight: 700;
        color: var(--r700);
      }
      .doc-spec-c {
        font-size: 0.7rem;
        color: var(--muted);
        font-weight: 600;
      }
      .doc-badge {
        position: absolute;
        top: 1rem;
        right: 1rem;
        background: var(--d900);
        color: #fff;
        font-size: 0.7rem;
        font-weight: 700;
        padding: 5px 12px;
        border-radius: 50px;
      }
      .doc-info {
        padding: 1.6rem 2rem 2rem;
      }
      .doc-name {
        font-family: "Playfair Display", serif;
        font-size: 1.3rem;
        font-weight: 700;
        color: var(--d900);
        margin-bottom: 0.25rem;
      }
      .doc-role {
        font-size: 0.77rem;
        font-weight: 600;
        color: var(--r500);
        letter-spacing: 0.04em;
        text-transform: uppercase;
        margin-bottom: 0.8rem;
      }
      .doc-bio {
        font-size: 0.85rem;
        line-height: 1.75;
        color: var(--mid);
        margin-bottom: 1.1rem;
      }
      .doc-tags {
        display: flex;
        flex-wrap: wrap;
        gap: 0.45rem;
        margin-bottom: 1.1rem;
      }
      .dtag {
        background: var(--r50);
        color: var(--r700);
        border: 1px solid var(--r200);
        border-radius: 50px;
        padding: 4px 12px;
        font-size: 0.72rem;
        font-weight: 600;
      }
      .doc-insta {
        display: flex;
        align-items: center;
        gap: 7px;
        font-size: 0.8rem;
        color: var(--muted);
        font-weight: 500;
        transition: color var(--ease);
      }
      .doc-insta:hover {
        color: var(--r600);
      }
      .idot {
        width: 22px;
        height: 22px;
        border-radius: 6px;
        background: linear-gradient(
          135deg,
          #f09433,
          #e6683c,
          #dc2743,
          #cc2366,
          #bc1888
        );
        display: flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        font-size: 0.65rem;
        font-weight: 700;
      }

      /* ── PROGRAM ── */
      #program {
        background: var(--cream);
      }
      .phases {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 1.4rem;
        margin-top: 3rem;
      }
      .phase {
        background: #fff;
        border-radius: var(--radl);
        padding: 1.8rem;
        box-shadow: var(--sh-xs);
        position: relative;
        overflow: hidden;
        transition: all var(--ease);
      }
      .phase:hover {
        transform: translateY(-5px);
        box-shadow: var(--sh-md);
      }
      .phase::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 4px;
        background: var(--pc, var(--r300));
      }
      .phase:nth-child(1) {
        --pc: var(--r300);
      }
      .phase:nth-child(2) {
        --pc: var(--r400);
      }
      .phase:nth-child(3) {
        --pc: var(--r600);
      }
      .phase:nth-child(4) {
        --pc: var(--gold);
      }
      .ph-bg {
        position: absolute;
        top: 0.8rem;
        right: 1rem;
        font-family: "Playfair Display", serif;
        font-size: 4rem;
        font-weight: 700;
        color: var(--r50);
        line-height: 1;
        pointer-events: none;
        opacity: 0.4;
        z-index: 0;
      }
      .phase * { position: relative; z-index: 1; }
      .ph-wk {
        font-size: 0.7rem;
        font-weight: 700;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: var(--r500);
        margin-bottom: 0.4rem;
      }
      .ph-title {
        font-family: "Playfair Display", serif;
        font-size: 1.2rem;
        font-weight: 600;
        color: var(--d900);
        margin-bottom: 0.9rem;
      }
      .ph-list {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
      }
      .ph-list li {
        font-size: 0.82rem;
        color: var(--mid);
        display: flex;
        align-items: flex-start;
        gap: 8px;
        line-height: 1.5;
      }
      .ph-list li::before {
        content: "→";
        color: var(--r500);
        font-weight: 700;
        flex-shrink: 0;
        margin-top: 1px;
      }

      /* ── RECEIVE ── */
      #receive {
        background: var(--d900);
      }
      #receive .h2 {
        color: #fff;
      }
      #receive .lbl {
        color: var(--r300);
      }
      #receive .sub {
        color: rgba(255, 255, 255, 0.55);
      }
      .rec-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(195px, 1fr));
        gap: 1.4rem;
        margin-top: 3rem;
      }
      .rec-card {
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(248, 200, 220, 0.14);
        border-radius: var(--rad);
        padding: 1.7rem;
        transition: all var(--ease);
      }
      .rec-card:hover {
        background: rgba(248, 200, 220, 0.07);
        border-color: rgba(248, 200, 220, 0.32);
        transform: translateY(-4px);
      }
      .rec-ico {
        width: 46px;
        height: 46px;
        border-radius: 12px;
        background: rgba(248, 200, 220, 0.12);
        border: 1px solid rgba(248, 200, 220, 0.2);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.2rem;
        margin-bottom: 1rem;
      }
      .rec-title {
        font-size: 0.93rem;
        font-weight: 700;
        color: #fff;
        margin-bottom: 0.45rem;
      }
      .rec-desc {
        font-size: 0.8rem;
        line-height: 1.65;
        color: rgba(255, 255, 255, 0.5);
      }

      /* ── BEFORE AFTER ── */
      #transform {
        background: var(--blush);
      }
      .ba-wrap {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
        margin-top: 3rem;
      }
      .ba-card {
        border-radius: var(--radl);
        padding: 2.4rem;
      }
      .ba-before {
        background: #fff;
        border: 1.5px solid var(--r200);
      }
      .ba-after {
        background: linear-gradient(145deg, var(--r600), var(--r700));
        color: #fff;
      }
      .ba-head {
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        margin-bottom: 1.3rem;
        opacity: 0.7;
      }
      .ba-list {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 0.9rem;
      }
      .ba-list li {
        display: flex;
        align-items: flex-start;
        gap: 12px;
        font-size: 0.9rem;
        line-height: 1.55;
      }
      .ba-before .ba-list li {
        color: var(--mid);
      }
      .ba-after .ba-list li {
        color: rgba(255, 255, 255, 0.88);
      }
      .ba-ico {
        width: 24px;
        height: 24px;
        border-radius: 50%;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.78rem;
        font-weight: 700;
        margin-top: 1px;
      }
      .ba-before .ba-ico {
        background: rgba(184, 64, 112, 0.1);
        color: var(--r600);
      }
      .ba-after .ba-ico {
        background: rgba(255, 255, 255, 0.2);
        color: #fff;
      }

      /* ── PRICING ── */
      #pricing {
        background: var(--cream);
      }
      .price-grid {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 1.4rem;
        margin-top: 3rem;
      }
      .pcard {
        background: #fff;
        border-radius: var(--radl);
        padding: 2rem;
        box-shadow: var(--sh-xs);
        border: 1.5px solid var(--r100);
        position: relative;
        overflow: hidden;
        transition: all var(--ease);
      }
      .pcard:hover {
        transform: translateY(-6px);
        box-shadow: var(--sh-md);
      }
      .pcard.pop {
        border-color: var(--r600);
        box-shadow: 0 12px 60px rgba(184, 64, 112, 0.22);
      }
      .pop-flag {
        position: absolute;
        top: 1rem;
        right: 1rem;
        background: var(--r600);
        color: #fff;
        font-size: 0.68rem;
        font-weight: 700;
        letter-spacing: 0.05em;
        padding: 4px 11px;
        border-radius: 50px;
      }
      .p-ico {
        width: 46px;
        height: 46px;
        border-radius: 12px;
        background: var(--r50);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.25rem;
        margin-bottom: 1.1rem;
      }
      .p-tier {
        font-size: 0.7rem;
        font-weight: 700;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: var(--r500);
        margin-bottom: 0.4rem;
      }
      .p-name {
        font-family: "Playfair Display", serif;
        font-size: 1.2rem;
        font-weight: 600;
        color: var(--d900);
        margin-bottom: 1rem;
      }
      .p-amt {
        margin-bottom: 1.1rem;
      }
      .p-cur {
        font-size: 1.1rem;
        vertical-align: top;
        padding-top: 7px;
        display: inline-block;
        color: var(--d700);
      }
      .p-fig {
        font-family: "Playfair Display", serif;
        font-size: 2.4rem;
        font-weight: 700;
        color: var(--d900);
      }
      .p-per {
        font-size: 0.77rem;
        color: var(--muted);
      }
      .p-feats {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 0.55rem;
        margin-bottom: 1.4rem;
      }
      .p-feats li {
        font-size: 0.81rem;
        color: var(--mid);
        display: flex;
        align-items: flex-start;
        gap: 8px;
        line-height: 1.5;
      }
      .p-feats li::before {
        content: "✓";
        color: var(--r500);
        font-weight: 700;
        flex-shrink: 0;
      }
      .btn-enroll {
        width: 100%;
        padding: 12px;
        border-radius: 50px;
        border: 1.5px solid var(--r400);
        background: transparent;
        color: var(--r600);
        font-size: 0.86rem;
        font-weight: 700;
        transition: all var(--ease);
      }
      .btn-enroll:hover {
        background: var(--r100);
        border-color: var(--r600);
      }
      .pcard.pop .btn-enroll {
        background: var(--r600);
        color: #fff;
        border-color: var(--r600);
      }
      .pcard.pop .btn-enroll:hover {
        background: var(--r700);
      }

      /* ── PAYMENT ── */
      #payment {
        background: var(--blush);
      }
      .pay-shell {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 3rem;
        align-items: start;
        max-width: 960px;
        margin: 3rem auto 0;
      }
      .pay-left h3 {
        font-family: "Playfair Display", serif;
        font-size: 1.5rem;
        font-weight: 600;
        color: var(--d900);
        margin-bottom: 0.6rem;
      }
      .pay-left p {
        font-size: 0.87rem;
        line-height: 1.75;
        color: var(--mid);
        margin-bottom: 1.5rem;
      }
      .p-trust-row {
        display: flex;
        flex-direction: column;
        gap: 0.8rem;
      }
      .pt {
        display: flex;
        align-items: center;
        gap: 10px;
        font-size: 0.83rem;
        color: var(--d800);
        font-weight: 500;
      }
      .pt-ico {
        width: 34px;
        height: 34px;
        border-radius: 9px;
        background: #fff;
        border: 1px solid var(--r200);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1rem;
        flex-shrink: 0;
      }
      .pay-box {
        background: #fff;
        border-radius: var(--radl);
        padding: 2.2rem;
        box-shadow: var(--sh-md);
        border: 1px solid var(--r100);
      }
      .pay-title {
        font-family: "Playfair Display", serif;
        font-size: 1.2rem;
        font-weight: 600;
        color: var(--d900);
        margin-bottom: 0.35rem;
      }
      .pay-sub {
        font-size: 0.8rem;
        color: var(--muted);
        margin-bottom: 1.4rem;
      }
      .pay-amt-bar {
        background: linear-gradient(135deg, var(--r50), var(--r100));
        border: 1.5px solid var(--r200);
        border-radius: 10px;
        padding: 0.9rem 1.2rem;
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 1.4rem;
      }
      .pa-lbl {
        font-size: 0.76rem;
        color: var(--muted);
        font-weight: 600;
      }
      .pa-val {
        font-family: "Playfair Display", serif;
        font-size: 1.5rem;
        font-weight: 700;
        color: var(--r700);
      }
      .pay-tabs {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0.8rem;
        margin-bottom: 1.4rem;
      }
      .ptab {
        border: 1.5px solid var(--r200);
        border-radius: 10px;
        padding: 0.85rem;
        display: flex;
        align-items: center;
        gap: 9px;
        background: #fff;
        transition: all var(--ease);
      }
      .ptab.act,
      .ptab:hover {
        border-color: var(--r600);
        background: var(--r50);
      }
      .ptab-ico {
        font-size: 1.1rem;
      }
      .ptab-name {
        font-size: 0.8rem;
        font-weight: 700;
        color: var(--d900);
      }
      .ptab-sub {
        font-size: 0.7rem;
        color: var(--muted);
      }
      .pay-panel {
        display: none;
      }
      .pay-panel.act {
        display: block;
      }
      .frow {
        margin-bottom: 1rem;
      }
      .flbl {
        display: block;
        font-size: 0.76rem;
        font-weight: 600;
        color: var(--mid);
        margin-bottom: 5px;
      }
      .finp {
        width: 100%;
        padding: 11px 14px;
        border: 1.5px solid var(--r200);
        border-radius: 10px;
        font-size: 0.88rem;
        color: var(--d900);
        background: #fff;
        outline: none;
        transition: border-color var(--ease);
      }
      .finp:focus {
        border-color: var(--r500);
      }
      .frow2 {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0.8rem;
      }
      .qr-box {
        border: 1.5px dashed var(--r300);
        border-radius: 10px;
        padding: 1.4rem;
        text-align: center;
        margin-bottom: 1rem;
      }
      .qr-g {
        width: 110px;
        height: 110px;
        margin: 0 auto 0.8rem;
        background: var(--r50);
        border-radius: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 1px solid var(--r200);
      }
      .qr-g svg {
        width: 90px;
        height: 90px;
      }
      .qr-uid {
        font-size: 0.82rem;
        font-weight: 700;
        color: var(--d900);
      }
      .qr-hint {
        font-size: 0.73rem;
        color: var(--muted);
      }
      .upi-apps {
        display: flex;
        justify-content: center;
        gap: 0.6rem;
        margin-top: 0.8rem;
        flex-wrap: wrap;
      }
      .ua {
        background: var(--r50);
        border: 1px solid var(--r200);
        border-radius: 8px;
        padding: 5px 10px;
        font-size: 0.72rem;
        font-weight: 600;
        color: var(--r700);
      }
      .btn-pay {
        width: 100%;
        padding: 15px;
        border-radius: 50px;
        background: linear-gradient(135deg, #3395ff, #1a6fd4);
        color: #fff;
        font-size: 0.95rem;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        transition: all var(--ease);
        margin-top: 0.5rem;
      }
      .btn-pay:hover {
        transform: translateY(-2px);
        box-shadow: 0 10px 30px rgba(51, 149, 255, 0.35);
      }
      .rzp-brand {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 5px;
        margin-top: 0.7rem;
        font-size: 0.7rem;
        color: var(--muted);
      }
      .rzp {
        font-weight: 800;
        color: #3395ff;
        font-size: 0.74rem;
      }
      .sec-badges {
        display: flex;
        justify-content: center;
        gap: 0.6rem;
        margin-top: 0.8rem;
        flex-wrap: wrap;
      }
      .sb {
        display: flex;
        align-items: center;
        gap: 4px;
        font-size: 0.7rem;
        color: var(--muted);
        background: var(--blush);
        padding: 4px 9px;
        border-radius: 6px;
        border: 1px solid var(--r100);
      }
      /* Pay states */
      .pay-state {
        display: none;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 2.5rem;
        text-align: center;
        gap: 1rem;
      }
      .pay-state.show {
        display: flex;
      }
      .ps-ico {
        width: 64px;
        height: 64px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.8rem;
      }
      .ps-title {
        font-family: "Playfair Display", serif;
        font-size: 1.3rem;
        font-weight: 600;
        color: var(--d900);
      }
      .ps-desc {
        font-size: 0.84rem;
        color: var(--mid);
        line-height: 1.7;
      }
      @keyframes spin {
        0%,
        100% {
          transform: scale(1);
          opacity: 1;
        }
        50% {
          transform: scale(1.05);
          opacity: 0.7;
        }
      }
      .ps-proc .ps-ico {
        background: var(--r50);
        animation: spin 1.5s ease-in-out infinite;
      }

      /* ── WEBINAR ── */
      #webinar {
        background: linear-gradient(145deg, var(--r700), var(--d700));
        position: relative;
        overflow: hidden;
      }
      #webinar::before {
        content: "";
        position: absolute;
        top: -30%;
        right: -10%;
        width: 70vw;
        height: 70vw;
        background: radial-gradient(
          circle,
          rgba(255, 255, 255, 0.05) 0%,
          transparent 65%
        );
        pointer-events: none;
      }
      .wb-inner {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 4rem;
        align-items: center;
        position: relative;
        z-index: 2;
      }
      #webinar .lbl {
        color: var(--r300);
      }
      #webinar .h2 {
        color: #fff;
      }
      #webinar .sub {
        color: rgba(255, 255, 255, 0.65);
      }
      .cd {
        display: flex;
        gap: 0.8rem;
        margin: 1.8rem 0;
      }
      .cd-u {
        background: rgba(255, 255, 255, 0.1);
        border: 1px solid rgba(255, 255, 255, 0.18);
        border-radius: 12px;
        padding: 0.8rem 1.1rem;
        text-align: center;
        min-width: 68px;
      }
      .cd-n {
        font-family: "Playfair Display", serif;
        font-size: 2rem;
        font-weight: 700;
        color: #fff;
        line-height: 1;
      }
      .cd-l {
        font-size: 0.64rem;
        color: rgba(255, 255, 255, 0.55);
        font-weight: 600;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        margin-top: 3px;
      }
      .wb-perks {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 0.7rem;
        margin-top: 1.5rem;
      }
      .wb-perks li {
        display: flex;
        align-items: center;
        gap: 10px;
        font-size: 0.87rem;
        color: rgba(255, 255, 255, 0.82);
      }
      .wb-perks li::before {
        content: "✓";
        color: var(--r300);
        font-weight: 700;
        flex-shrink: 0;
      }
      .wb-form {
        background: #fff;
        border-radius: var(--radl);
        padding: 2.4rem;
      }
      .wf-title {
        font-family: "Playfair Display", serif;
        font-size: 1.35rem;
        font-weight: 600;
        color: var(--d900);
        margin-bottom: 1.5rem;
      }
      .utm-hidden {
        display: none;
      }

      /* Analytics styles removed */

      /* ── DASHBOARD ── */
      #dashboard {
        background: var(--blush);
      }
      .dash {
        background: #fff;
        border-radius: var(--radxl);
        box-shadow: var(--sh-xl);
        overflow: hidden;
        border: 1px solid var(--r100);
        margin-top: 3rem;
      }
      .dash-bar {
        background: linear-gradient(135deg, var(--r600), var(--r700));
        padding: 1rem 1.8rem;
        display: flex;
        align-items: center;
        justify-content: space-between;
      }
      .dash-brand {
        font-family: "Playfair Display", serif;
        font-size: 1.1rem;
        font-weight: 700;
        color: #fff;
      }
      .dash-pills {
        display: flex;
        gap: 0.5rem;
      }
      .dpill {
        background: rgba(255, 255, 255, 0.12);
        color: rgba(255, 255, 255, 0.7);
        font-size: 0.75rem;
        font-weight: 600;
        padding: 6px 14px;
        border-radius: 50px;
        transition: all 0.2s;
      }
      .dpill.act,
      .dpill:hover {
        background: rgba(255, 255, 255, 0.25);
        color: #fff;
      }
      .dash-body {
        display: grid;
        grid-template-columns: 200px 1fr;
      }
      .dash-side {
        background: var(--blush);
        border-right: 1px solid var(--r100);
        padding: 1.4rem;
      }
      .d-avi {
        width: 52px;
        height: 52px;
        border-radius: 50%;
        background: var(--r200);
        color: var(--r700);
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 700;
        font-size: 1.1rem;
        margin-bottom: 0.8rem;
      }
      .d-uname {
        font-size: 0.88rem;
        font-weight: 700;
        color: var(--d900);
      }
      .d-uwk {
        font-size: 0.72rem;
        color: var(--r500);
        font-weight: 600;
        margin-bottom: 1.2rem;
      }
      .d-menu {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 0.3rem;
      }
      .d-menu li {
        padding: 8px 11px;
        border-radius: 9px;
        font-size: 0.8rem;
        color: var(--mid);
        cursor: pointer;
        transition: all 0.2s;
        display: flex;
        align-items: center;
        gap: 8px;
      }
      .d-menu li.act {
        background: #fff;
        color: var(--r600);
        font-weight: 700;
        box-shadow: var(--sh-xs);
      }
      .dash-content {
        padding: 1.5rem;
      }
      .d-metrics {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 1rem;
        margin-bottom: 1.4rem;
      }
      .dm {
        background: var(--blush);
        border-radius: 12px;
        padding: 1rem;
        border: 1px solid var(--r100);
      }
      .dm-lbl {
        font-size: 0.68rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        color: var(--muted);
        margin-bottom: 4px;
      }
      .dm-val {
        font-family: "Playfair Display", serif;
        font-size: 1.7rem;
        font-weight: 700;
        color: var(--d900);
      }
      .dm-sub {
        font-size: 0.7rem;
        color: var(--r500);
      }
      .prog-lbl {
        font-size: 0.82rem;
        font-weight: 700;
        color: var(--d900);
        margin-bottom: 0.5rem;
      }
      .prog-track {
        height: 9px;
        background: var(--r100);
        border-radius: 50px;
        overflow: hidden;
        margin-bottom: 0.4rem;
      }
      .prog-fill {
        height: 100%;
        background: linear-gradient(90deg, var(--r400), var(--r600));
        border-radius: 50px;
        width: 0%;
        transition: width 1.8s ease;
      }
      .prog-text {
        font-size: 0.73rem;
        color: var(--muted);
      }
      .d-cards {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1rem;
        margin-top: 1.2rem;
      }
      .dcard {
        background: var(--blush);
        border: 1px solid var(--r100);
        border-radius: 12px;
        padding: 1rem;
      }
      .dcard-title {
        font-size: 0.74rem;
        font-weight: 700;
        color: var(--r600);
        text-transform: uppercase;
        letter-spacing: 0.07em;
        margin-bottom: 0.5rem;
      }
      .dcard-body {
        font-size: 0.82rem;
        color: var(--mid);
        line-height: 1.6;
      }

      /* ── WHATSAPP FLOW ── */
      #wa-flow {
        background: #fff;
      }
      .wa-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 4rem;
        align-items: center;
      }
      .wa-chat {
        background: var(--d700);
        border-radius: var(--radl);
        overflow: hidden;
        box-shadow: var(--sh-lg);
      }
      .wa-head {
        background: #075e54;
        padding: 1rem 1.2rem;
        display: flex;
        align-items: center;
        gap: 10px;
      }
      .wa-avi {
        width: 38px;
        height: 38px;
        border-radius: 50%;
        background: #25d366;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1rem;
      }
      .wa-hname {
        font-size: 0.88rem;
        font-weight: 700;
        color: #fff;
      }
      .wa-hstat {
        font-size: 0.7rem;
        color: rgba(255, 255, 255, 0.7);
      }
      .wa-msgs {
        padding: 1.2rem;
        display: flex;
        flex-direction: column;
        gap: 0.8rem;
        background: #ece5dd;
        min-height: 280px;
      }
      .wm {
        max-width: 75%;
        border-radius: 14px;
        padding: 10px 14px;
        font-size: 0.82rem;
        line-height: 1.55;
      }
      .wm.bot {
        background: #fff;
        color: var(--d900);
        border-bottom-left-radius: 3px;
        align-self: flex-start;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
      }
      .wm.usr {
        background: #dcf8c6;
        color: var(--d900);
        border-bottom-right-radius: 3px;
        align-self: flex-end;
        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
      }
      .wm-time {
        font-size: 0.64rem;
        color: var(--muted);
        margin-top: 3px;
        text-align: right;
      }
      .wa-steps {
        display: flex;
        flex-direction: column;
        gap: 1.2rem;
      }
      .wa-step {
        display: flex;
        align-items: flex-start;
        gap: 14px;
      }
      .ws-num {
        width: 32px;
        height: 32px;
        border-radius: 50%;
        background: var(--r100);
        color: var(--r700);
        font-size: 0.84rem;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
      }
      .ws-title {
        font-size: 0.9rem;
        font-weight: 700;
        color: var(--d900);
        margin-bottom: 0.25rem;
      }
      .ws-desc {
        font-size: 0.82rem;
        color: var(--mid);
        line-height: 1.65;
      }

      /* ── FAQ ── */
      #faq {
        background: var(--cream);
      }
      .faq-wrap {
        max-width: 700px;
        margin: 3rem auto 0;
      }
      .faq-item {
        border-bottom: 1px solid var(--r100);
      }
      .fq {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: 1rem;
        padding: 1.35rem 0;
        cursor: pointer;
      }
      .fq-text {
        font-size: 0.95rem;
        font-weight: 600;
        color: var(--d900);
      }
      .fq-arr {
        width: 28px;
        height: 28px;
        border-radius: 50%;
        background: var(--r50);
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--r600);
        font-size: 1rem;
        transition: transform 0.3s;
        flex-shrink: 0;
        font-weight: 700;
      }
      .faq-item.open .fq-arr {
        transform: rotate(45deg);
        background: var(--r100);
      }
      .fa {
        font-size: 0.87rem;
        line-height: 1.8;
        color: var(--mid);
        padding-bottom: 1.2rem;
        display: none;
      }
      .faq-item.open .fa {
        display: block;
      }

      /* ── FOOTER ── */
      footer {
        background: var(--d900);
        color: rgba(255, 255, 255, 0.5);
        padding: 64px 5% 30px;
      }
      .ft-grid {
        display: grid;
        grid-template-columns: 2fr 1fr 1fr 1fr;
        gap: 3rem;
        margin-bottom: 3rem;
      }
      .ft-brand {
        font-family: "Playfair Display", serif;
        font-size: 1.3rem;
        font-weight: 700;
        color: #fff;
        margin-bottom: 0.8rem;
        display: block;
      }
      .ft-brand span {
        color: var(--gold);
      }
      .ft-bio {
        font-size: 0.83rem;
        line-height: 1.8;
        max-width: 270px;
        margin-bottom: 1.2rem;
      }
      .ft-soc {
        display: flex;
        gap: 0.6rem;
      }
      .ft-s {
        width: 34px;
        height: 34px;
        border-radius: 8px;
        background: rgba(255, 255, 255, 0.07);
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 0.9rem;
        transition: background 0.2s;
      }
      .ft-s:hover {
        background: rgba(255, 255, 255, 0.14);
      }
      .ft-ct {
        font-size: 0.74rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        color: rgba(255, 255, 255, 0.7);
        margin-bottom: 1rem;
      }
      .ft-col ul {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 0.55rem;
      }
      .ft-col ul li a {
        font-size: 0.82rem;
        color: rgba(255, 255, 255, 0.45);
        transition: color 0.2s;
      }
      .ft-col ul li a:hover {
        color: var(--r300);
      }
      .ft-bottom {
        border-top: 1px solid rgba(255, 255, 255, 0.07);
        padding-top: 1.5rem;
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
        gap: 1rem;
      }
      .ft-bottom p {
        font-size: 0.75rem;
      }
      .ft-marks {
        display: flex;
        gap: 0.7rem;
        flex-wrap: wrap;
      }
      .ftm {
        font-size: 0.68rem;
        color: rgba(255, 255, 255, 0.35);
        background: rgba(255, 255, 255, 0.05);
        padding: 4px 10px;
        border-radius: 5px;
        border: 1px solid rgba(255, 255, 255, 0.08);
      }

      /* ── POLICY PAGES ── */
      .policy-body {
        background: linear-gradient(180deg, var(--cream), var(--blush));
        color: var(--d900);
      }
      .policy-page {
        width: min(920px, 90vw);
        margin: 0 auto;
        padding: 48px 0 72px;
      }
      .policy-back {
        display: inline-flex;
        align-items: center;
        margin-bottom: 2rem;
        color: var(--r600);
        font-size: 0.9rem;
        font-weight: 700;
      }
      .policy-back:hover {
        color: var(--r700);
      }
      .policy-hero {
        margin-bottom: 1.5rem;
      }
      .policy-hero h1 {
        font-family: "Fraunces", Georgia, serif;
        font-size: clamp(2rem, 5vw, 3.4rem);
        line-height: 1.08;
        color: var(--d900);
        margin-bottom: 0.75rem;
      }
      .policy-hero p {
        color: var(--mid);
      }
      .policy-card {
        background: var(--white);
        border: 1px solid rgba(248, 200, 220, 0.5);
        border-radius: 8px;
        box-shadow: var(--sh-sm);
        padding: clamp(1.4rem, 4vw, 2.5rem);
      }
      .policy-card h2 {
        font-size: 1.05rem;
        color: var(--r700);
        margin: 1.5rem 0 0.45rem;
      }
      .policy-card h2:first-child {
        margin-top: 0;
      }
      .policy-card p {
        color: var(--mid);
        font-size: 0.95rem;
        line-height: 1.8;
        margin-bottom: 0.8rem;
      }
      .policy-card a {
        color: var(--r600);
        font-weight: 700;
        text-decoration: underline;
        text-underline-offset: 3px;
      }
      .contact-card p {
        margin-bottom: 0.6rem;
      }

      /* ── FLOATING BUTTONS ── */
      .wa-fab {
        position: fixed;
        bottom: 90px;
        right: 1.5rem;
        z-index: 900;
        width: 54px;
        height: 54px;
        border-radius: 50%;
        background: #25d366;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 1.4rem;
        box-shadow: 0 6px 24px rgba(37, 211, 102, 0.45);
        text-decoration: none;
        animation: wap 2.5s ease-in-out infinite;
      }
      @keyframes wap {
        0%,
        100% {
          box-shadow: 0 6px 24px rgba(37, 211, 102, 0.45);
        }
        50% {
          box-shadow:
            0 6px 24px rgba(37, 211, 102, 0.45),
            0 0 0 10px rgba(37, 211, 102, 0.1);
        }
      }
      .sticky-cta {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 800;
        background: #fff;
        border-top: 1px solid var(--r200);
        padding: 12px 1.5rem;
        display: none;
        box-shadow: 0 -4px 20px rgba(184, 64, 112, 0.12);
      }
      .sticky-cta a {
        display: block;
        text-align: center;
        padding: 14px;
        border-radius: 50px;
        background: var(--r600);
        color: #fff;
        font-size: 0.92rem;
        font-weight: 700;
        transition: background 0.2s;
      }

      /* ── THANK YOU OVERLAY ── */
      #ty-overlay {
        position: fixed;
        inset: 0;
        z-index: 2000;
        background: rgba(18, 13, 15, 0.75);
        display: none;
        align-items: center;
        justify-content: center;
        backdrop-filter: blur(8px);
      }
      #ty-overlay.show {
        display: flex;
      }
      .ty-modal {
        background: #fff;
        border-radius: var(--radxl);
        padding: 3rem;
        max-width: 480px;
        width: 92%;
        text-align: center;
        box-shadow: var(--sh-xl);
        position: relative;
      }
      .ty-close {
        position: absolute;
        top: 1.2rem;
        right: 1.2rem;
        background: var(--r50);
        width: 32px;
        height: 32px;
        border-radius: 50%;
        font-size: 1rem;
        color: var(--muted);
      }
      .ty-ico {
        width: 72px;
        height: 72px;
        border-radius: 50%;
        background: linear-gradient(135deg, var(--r100), var(--r200));
        margin: 0 auto 1.2rem;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 2rem;
      }
      .ty-title {
        font-family: "Playfair Display", serif;
        font-size: 1.6rem;
        font-weight: 700;
        color: var(--d900);
        margin-bottom: 0.6rem;
      }
      .ty-sub {
        font-size: 0.9rem;
        line-height: 1.75;
        color: var(--mid);
        margin-bottom: 1.5rem;
      }
      .ty-steps {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 0.7rem;
        margin-bottom: 1.8rem;
        text-align: left;
      }
      .ty-steps li {
        display: flex;
        align-items: center;
        gap: 10px;
        font-size: 0.85rem;
        color: var(--d800);
      }
      .ty-sn {
        width: 26px;
        height: 26px;
        border-radius: 50%;
        background: var(--r100);
        color: var(--r700);
        font-size: 0.78rem;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
      }
      .btn-wa {
        width: 100%;
        padding: 14px;
        border-radius: 50px;
        background: #25d366;
        color: #fff;
        font-size: 0.95rem;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        transition: all var(--ease);
      }
      .btn-wa:hover {
        background: #1da857;
        transform: translateY(-1px);
        box-shadow: 0 8px 25px rgba(37, 211, 102, 0.35);
      }

      /* ── POLISH PASS ── */
      #hero {
        background:
          linear-gradient(
            120deg,
            rgba(255, 255, 255, 0.9),
            rgba(254, 245, 249, 0.68)
          ),
          linear-gradient(145deg, #fffaf5 0%, #fdeaf3 52%, #f7dbe8 100%);
      }
      .blob {
        display: none;
      }
      #nav {
        background: rgba(255, 255, 255, 0.86);
      }
      .logo {
        letter-spacing: 0.01em;
      }
      .hero-pill,
      .tchip,
      .pcard,
      .pay-box,
      .wb-form,
      .doc-card,
      .phase,
      .rcard {
        border-radius: 14px;
      }
      .hero-frame {
        border-radius: 28px;
        background: linear-gradient(
          145deg,
          #f9d8e7 0%,
          #d889aa 52%,
          #8f2652 100%
        );
        box-shadow: 0 30px 90px rgba(75, 34, 54, 0.22);
      }
      .fc {
        border: 1px solid rgba(255, 255, 255, 0.72);
        border-radius: 14px;
      }
      .btn-p,
      .btn-nav,
      .btn-pay,
      .btn-enroll {
        box-shadow: 0 10px 26px rgba(184, 64, 112, 0.18);
      }
      .price-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        align-items: stretch;
      }
      .pcard {
        display: flex;
        flex-direction: column;
      }
      .p-feats {
        flex: 1;
      }
      .pcard.pop {
        transform: translateY(-10px);
      }
      .p-fig {
        font-size: clamp(1.9rem, 2.5vw, 2.35rem);
      }
      #payment {
        background:
          linear-gradient(
            180deg,
            rgba(255, 255, 255, 0.72),
            rgba(254, 245, 249, 0.92)
          ),
          var(--blush);
      }
      .pay-shell {
        max-width: 1040px;
      }
      .pay-box {
        border: 1px solid rgba(184, 64, 112, 0.14);
      }
      .finp,
      .wf-inp {
        transition:
          border-color var(--ease),
          box-shadow var(--ease),
          background var(--ease);
      }
      .finp:focus,
      .wf-inp:focus {
        outline: none;
        border-color: var(--r500);
        background: #fff;
        box-shadow: 0 0 0 4px rgba(212, 100, 143, 0.12);
      }
      #webinar {
        background:
          linear-gradient(
            135deg,
            rgba(143, 38, 82, 0.96),
            rgba(45, 32, 40, 0.97)
          ),
          #2d2028;
      }
      .sticky-cta a {
        border-radius: 12px;
      }

      /* ── RESPONSIVE ── */
      @media (max-width: 1024px) {
        .phases,
        .price-grid {
          grid-template-columns: repeat(2, 1fr);
        }
        .ft-grid {
          grid-template-columns: 1fr 1fr;
          gap: 2rem;
        }
        .dash-body {
          grid-template-columns: 1fr;
        }
        .dash-side {
          display: none;
        }
        .an-grid {
          grid-template-columns: repeat(2, 1fr);
        }
      }
      @media (max-width: 768px) {
        :root {
          --nav: 62px;
        }
        .nav-links,
        .nav-right .btn-nav {
          display: none;
        }
        .hbg {
          display: flex;
        }
        #hero {
          grid-template-columns: 1fr;
          gap: 2.5rem;
          padding-top: calc(var(--nav) + 30px);
          padding-bottom: 50px;
        }
        .hero-vis {
          order: -1;
        }
        .hero-frame {
          border-radius: 24px;
          aspect-ratio: 16/10;
        }
        .fca,
        .fcb {
          display: none;
        }
        .h1 {
          font-size: clamp(1.7rem, 7vw, 2.3rem);
        }
        .btns,
        .trust-row {
          gap: 0.7rem;
        }
        .btn-p,
        .btn-o {
          width: 100%;
          justify-content: center;
        }
        .stats-grid {
          grid-template-columns: repeat(2, 1fr);
        }
        .doc-grid {
          grid-template-columns: 1fr;
        }
        .phases,
        .price-grid {
          grid-template-columns: 1fr;
        }
        .ba-wrap,
        .pay-shell,
        .wb-inner,
        .wa-grid {
          grid-template-columns: 1fr;
        }
        .ft-grid {
          grid-template-columns: 1fr;
          gap: 2rem;
        }
        .ft-bottom {
          flex-direction: column;
          text-align: center;
        }
        .sticky-cta {
          display: block;
        }
        .an-grid {
          grid-template-columns: 1fr 1fr;
        }
        .d-metrics {
          grid-template-columns: 1fr 1fr;
        }
        .d-cards {
          grid-template-columns: 1fr;
        }
        .frow2 {
          grid-template-columns: 1fr;
        }
        .pay-tabs {
          grid-template-columns: 1fr;
        }
        .pcard.pop {
          transform: none;
        }
        .pay-box,
        .wb-form,
        .ty-modal {
          padding: 1.5rem;
        }
        .dash-bar {
          flex-direction: column;
          gap: 0.8rem;
          align-items: flex-start;
        }
        section {
          padding: 65px 4%;
        }
      }
      @media (max-width: 480px) {
        .an-grid,
        .d-metrics {
          grid-template-columns: 1fr;
        }
        .cd {
          gap: 0.5rem;
        }
        .cd-u {
          min-width: 56px;
          padding: 0.65rem 0.6rem;
        }
        /* Additional responsive fixes */
        #hero {
          min-height: auto;
          grid-template-columns: 1fr;
          gap: 2rem;
          padding: calc(var(--nav) + 30px) 5% 40px;
        }
        section {
          padding: 60px 5%;
        }
        .doc-grid {
          grid-template-columns: 1fr;
          gap: 1.5rem;
        }
        .phases {
          grid-template-columns: 1fr;
          gap: 1rem;
        }
        .price-grid {
          grid-template-columns: 1fr;
          gap: 1rem;
        }
        .testi-grid {
          grid-template-columns: 1fr;
          gap: 1rem;
        }
        .ba-wrap {
          grid-template-columns: 1fr;
          gap: 1.5rem;
        }
        .pay-shell {
          grid-template-columns: 1fr;
          gap: 2rem;
        }
        .wa-grid {
          grid-template-columns: 1fr;
          gap: 2rem;
        }
        .ft-grid {
          grid-template-columns: 1fr;
          gap: 1.5rem;
        }
        .blob1,
        .blob2 {
          width: 30vw;
          height: 30vw;
        }
        .hero-frame {
          aspect-ratio: 4/3;
        }
        .trust-row {
          gap: 0.8rem;
        }
        .tchip {
          padding: 4px 10px 4px 4px;
        }
        .tchip-icon {
          width: 24px;
          height: 24px;
        }
        .tchip span {
          font-size: 0.7rem;
        }
      }

/* Firebase auth modal */
  /* HERO SECTION OVERRIDES to ensure everything is aligned and visible */
  #hero {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2rem !important;
    min-height: auto !important;
    padding-top: 150px !important;
    padding-bottom: 50px !important;
  }
  #hero > div:not(.blob) {
    flex: 1 1 400px !important;
    max-width: 500px !important;
    transform: none !important; /* Ensure it's not pushed off screen */
  }
  .hero-vis {
    order: 0 !important;
  }
  
  /* FLOATING STATS OVERLAP FIX */
  .fc.fca { left: -1rem !important; bottom: 2rem !important; }
  .fc.fcb { right: -1rem !important; top: 3rem !important; }
  
  /* ROADMAP OVERLAP FIX */
  .ph-bg { opacity: 0.15 !important; z-index: 0 !important; }
  .phase * { position: relative; z-index: 1; }
  
  /* REMOVE DUPLICATE DOCTOR LABELS */
  .doc-label { display: none !important; }
  
  /* PREVENT COLLAPSING */
  section {
    width: 100% !important;
    overflow: hidden !important;
  }

/* Local deploy polish */
.auth-card {
  width: min(92vw, 420px);
}
