
    :root{
      /* Light-blue clinic palette */
      --bg:#f6faff;
      --panel:#ffffff;
      --card:#ffffff;
      --ink:#0f172a;
      --muted:#475569;
      --line:#e2e8f0;

      --brand:#1d4ed8;
      --brand2:#38bdf8;
      --brandSoft:#eaf5ff;

      --shadow: 0 16px 50px rgba(2, 6, 23, .08);
      --radius: 16px;
      --radius2: 22px;
      --max: 1180px;
    }

    *{box-sizing:border-box}
    html,body{margin:0;padding:0}
    body{
      font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      background:
        radial-gradient(1000px 700px at 15% -10%, rgba(56,189,248,.25), transparent 60%),
        radial-gradient(900px 700px at 90% 0%, rgba(29,78,216,.16), transparent 55%),
        linear-gradient(180deg, #ffffff, var(--bg));
      color:var(--ink);
      line-height:1.55;
    }
    a{color:inherit}
    .container{max-width:var(--max); margin:0 auto; padding:0 18px}

    /* Topbar */
    .topbar{
      position:sticky; top:0; z-index:50;
      background: rgba(255,255,255,.72);
      backdrop-filter: blur(10px);
      border-bottom:1px solid var(--line);
    }
    .topbar .inner{
      display:flex; align-items:center; justify-content:space-between;
      padding:12px 0; gap:12px;
    }
    .brand{display:flex; align-items:center; gap:10px; text-decoration:none}
    .logo{
      width:40px; height:40px; border-radius:12px;
      background: linear-gradient(135deg, rgba(56,189,248,.95), rgba(29,78,216,.92));
      box-shadow: 0 12px 28px rgba(56,189,248,.25);
      flex:0 0 auto;
    }
    .brand b{font-weight:800; letter-spacing:.2px}
    .brand small{display:block; font-size:12px; color:var(--muted)}
    .nav{
      display:flex; gap:12px; flex-wrap:wrap; justify-content:flex-end;
      font-size:14px; color:var(--muted);
    }
    .nav a{
      text-decoration:none; padding:8px 10px; border-radius:12px;
      border:1px solid transparent;
    }
    .nav a:hover{
      border-color: var(--line);
      background: rgba(56,189,248,.10);
      color: var(--ink);
    }

    .cta{display:flex; gap:10px; align-items:center; flex-wrap:wrap; justify-content:flex-end}
    .btn{
      display:inline-flex; align-items:center; justify-content:center; gap:10px;
      padding:10px 14px; border-radius:14px; text-decoration:none; font-weight:700;
      border:1px solid var(--line); background: rgba(255,255,255,.8);
      transition: transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease;
      font-size:14px; white-space:nowrap;
      box-shadow: 0 10px 22px rgba(2,6,23,.05);
    }
    .btn:hover{
      transform: translateY(-1px);
      border-color: rgba(56,189,248,.55);
      background: rgba(234,245,255,1);
      box-shadow: 0 16px 34px rgba(2,6,23,.08);
    }
    .btn.primary{
      border-color: transparent;
      background: linear-gradient(135deg, rgba(56,189,248,1), rgba(29,78,216,.95));
      color: #ffffff;
      box-shadow: 0 18px 40px rgba(29,78,216,.18);
    }
    .btn.primary:hover{
      background: linear-gradient(135deg, rgba(56,189,248,1), rgba(29,78,216,1));
    }

    /* Hero */
    header.hero{padding: 30px 0 12px;}
    .hero-grid{
      display:grid; grid-template-columns: 1.12fr .88fr;
      gap:18px; align-items:stretch;
    }
    .hero-card{
      border:1px solid var(--line);
      background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.86));
      border-radius: var(--radius2);
      box-shadow: var(--shadow);
      padding: 26px;
      position:relative;
      overflow:hidden;
    }
    .hero-card:before{
      content:"";
      position:absolute; inset:-2px;
      background:
        radial-gradient(700px 300px at 20% 0%, rgba(56,189,248,.22), transparent 55%),
        radial-gradient(700px 300px at 80% 10%, rgba(29,78,216,.12), transparent 55%);
      pointer-events:none;
      z-index:0;
    }
    .hero-card > *{position:relative; z-index:1}
    .kicker{
      display:inline-flex; gap:10px; align-items:center;
      padding:8px 12px; border-radius:999px;
      border:1px solid rgba(56,189,248,.45);
      background: rgba(234,245,255,1);
      color: #0b2a4a;
      font-weight:800; font-size:13px;
    }
    .kicker .dot{
      width:8px; height:8px; border-radius:50%;
      background: linear-gradient(135deg, var(--brand2), var(--brand));
      box-shadow: 0 0 0 6px rgba(56,189,248,.18);
    }
    h1{
      font-family: "Playfair Display", serif;
      font-size: 42px; line-height:1.06;
      margin: 14px 0 10px; letter-spacing:.2px;
    }
    .sub{
      margin:0 0 18px;
      color:var(--muted);
      font-size:16px;
      max-width: 62ch;
    }
    .badges{display:flex; gap:10px; flex-wrap:wrap; margin: 14px 0 20px;}
    .badge{
      font-size:12px; color:#0f172a;
      padding:8px 10px; border-radius:999px;
      border:1px solid var(--line);
      background: rgba(234,245,255,1);
    }
    .hero-actions{display:flex; gap:10px; flex-wrap:wrap; margin-top:6px;}
    .hero-note{margin-top:12px; font-size:13px; color:#64748b;}

    .hero-media{
      border:1px solid var(--line);
      border-radius: var(--radius2);
      overflow:hidden;
      background: rgba(255,255,255,.9);
      box-shadow: var(--shadow);
      display:flex; flex-direction:column;
    }

    /* ✅ Image frame that NEVER distorts images */
    .media-frame{
      width:100%;
      aspect-ratio: 3 / 2;              /* 1200×800 proportion */
      background: rgba(234,245,255,.7);
      border-bottom: 1px solid var(--line);
      position: relative;
      overflow: hidden;
    }
    .media-frame img{
      width:100%;
      height:100%;
      object-fit: contain;               /* full image, no distortion, no crop */
      object-position: center;
      display:block;
    }
    /* Optional: if you want a full-bleed look (cropping allowed but no distortion) */
    .media-frame.cover img{ object-fit: cover; }

    .media-cap{
      padding: 14px 16px;
      color: var(--muted);
      font-size:13px;
      display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap;
    }
    .media-cap b{color: var(--ink)}

    /* Sections */
    .section{padding: 22px 0;}
    .h2{font-size: 22px; margin: 0 0 12px; letter-spacing:.2px;}
    .lead{color: var(--muted); margin: 0 0 16px; font-size: 14.5px; max-width: 92ch;}

    .grid-3{display:grid; grid-template-columns: repeat(3, 1fr); gap: 14px;}
    .grid-2{display:grid; grid-template-columns: repeat(2, 1fr); gap: 14px;}
    .two-col{display:grid; grid-template-columns: 1fr 1fr; gap: 14px; align-items:start;}

    .card{
      border:1px solid var(--line);
      background: rgba(255,255,255,.92);
      border-radius: var(--radius);
      padding: 18px;
      box-shadow: 0 12px 30px rgba(2,6,23,.06);
    }
    .card h3{margin:0 0 10px; font-size: 16px; letter-spacing:.2px;}
    .card p{margin:0; color: var(--muted); font-size:14px;}
    .list{margin: 10px 0 0; padding-left: 18px; color: var(--muted); font-size:14px;}
    .list li{margin: 8px 0}
    .divider{height:1px; background: var(--line); margin: 10px 0 0;}

    .pillrow{display:flex; flex-wrap:wrap; gap:10px; margin-top:10px}
    .pill{
      display:inline-flex; align-items:center; gap:8px;
      padding: 8px 10px; border-radius: 999px;
      border:1px solid var(--line);
      background: rgba(234,245,255,1);
      color: #0f172a;
      font-size: 13px;
    }
    .pill i{
      width:10px; height:10px; border-radius:50%;
      background: rgba(29,78,216,.95);
      box-shadow: 0 0 0 6px rgba(29,78,216,.10);
    }

    table{
      width:100%; border-collapse: collapse;
      overflow:hidden; border-radius: 14px;
      border:1px solid var(--line);
      background: rgba(255,255,255,.95);
    }
    th,td{
      padding: 12px 12px; border-bottom: 1px solid var(--line);
      text-align:left; font-size: 14px;
    }
    th{
      color: #0f172a;
      background: rgba(234,245,255,1);
    }
    td{color: var(--muted)}
    tr:last-child td{border-bottom:none}

    .callout{
      border: 1px solid rgba(56,189,248,.55);
      background: linear-gradient(180deg, rgba(234,245,255,1), rgba(255,255,255,.92));
      border-radius: var(--radius);
      padding: 16px;
      color: #0f172a;
    }
    .callout b{color: #0f172a}
    .muted{color: var(--muted)}

    .faq details{
      border:1px solid var(--line);
      background: rgba(255,255,255,.92);
      border-radius: 14px;
      padding: 12px 12px;
      margin: 10px 0;
      box-shadow: 0 10px 26px rgba(2,6,23,.05);
    }
    .faq summary{
      cursor:pointer;
      font-weight: 800;
      color: #0f172a;
      list-style:none;
      position:relative;
      padding-right: 24px;
    }
    .faq summary::-webkit-details-marker{display:none}
    .faq summary:after{
      content:"+";
      position:absolute; right: 0; top: 0;
      color: rgba(15,23,42,.65);
      font-size: 18px; line-height: 1;
    }
    .faq details[open] summary:after{content:"–"}

    /* Sticky CTA */
    .sticky{position: sticky; bottom: 14px; z-index: 40; margin-top: 18px;}
    .stickybar{
      border:1px solid var(--line);
      background: rgba(255,255,255,.78);
      backdrop-filter: blur(10px);
      border-radius: 999px;
      padding: 10px 10px;
      display:flex; align-items:center; justify-content:space-between;
      gap: 10px;
      box-shadow: 0 18px 44px rgba(2,6,23,.10);
    }
    .stickybar .left{display:flex; flex-direction:column; gap:2px; padding-left: 6px}
    .stickybar .left b{font-size:14px}
    .stickybar .left span{font-size:12px; color: var(--muted)}
    .stickybar .right{display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end}

    .fineprint{margin-top:10px; color: #64748b; font-size:12px;}

    footer{
      padding: 26px 0 40px;
      border-top:1px solid var(--line);
      margin-top: 18px;
      color: #64748b;
      font-size: 13px;
      background: linear-gradient(180deg, rgba(255,255,255,0), rgba(234,245,255,1));
    }

    @media (max-width: 980px){
      .hero-grid{grid-template-columns: 1fr;}
      h1{font-size: 36px}
      .grid-3{grid-template-columns: 1fr}
      .grid-2{grid-template-columns: 1fr}
      .two-col{grid-template-columns: 1fr}
      .nav{display:none}
    }
  