:root{
    --ink:#08264b; --navy:#0a3766; --navy-2:#0c4178;
    --gold:#c5912b; --gold-soft:#d39b2d;
    --linen:#faf8f3; --mist:#eef4f8; --paper:#ffffff;
    --line:rgba(8,38,75,.12); --muted:#475569;
    --shadow:0 18px 50px rgba(8,38,75,.10);
    --shadow-sm:0 6px 18px rgba(8,38,75,.08);
    --radius:18px; --radius-sm:12px; --radius-pill:999px;
    --maxw:1120px; --header-h:74px;
    --serif: "Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
    --sans: ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 14px);-webkit-text-size-adjust:100%}
  body{
    margin:0;color:var(--ink);font-family:var(--sans);line-height:1.6;
    font-size:clamp(16px,1vw + 14px,17px);
    background:linear-gradient(180deg,#fbfaf6 0%,#eef4f8 42%,#ffffff 70%,#f7f1e7 100%);
    -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  }
  h1,h2,h3,h4{font-family:var(--serif);font-weight:600;color:var(--ink);line-height:1.15;letter-spacing:-.01em;margin:0}
  p{margin:0}
  a{color:var(--navy);text-decoration:none}
  img,svg{display:block;max-width:100%}
  .wrap{width:min(var(--maxw),calc(100% - 40px));margin-inline:auto}
  .eyebrow{font-family:var(--sans);font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--navy);display:inline-flex;align-items:center;gap:.5rem}
  .eyebrow::before{content:"";width:22px;height:2px;background:var(--gold);border-radius:2px}
  .muted{color:var(--muted)}
  .text-balance{text-wrap:balance}
  .section{padding:clamp(48px,7vw,92px) 0}
  .section h2{font-size:clamp(1.7rem,3.2vw,2.5rem)}
  .lead{font-size:clamp(1.02rem,1.4vw,1.16rem);color:#33415a;max-width:60ch}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:50px;padding:.8rem 1.4rem;border-radius:var(--radius-pill);font-weight:700;font-family:var(--sans);font-size:.97rem;cursor:pointer;border:1px solid transparent;transition:transform .18s ease,background-color .18s ease,box-shadow .18s ease,border-color .18s ease;text-align:center}
  .btn:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
  .btn-primary{background:var(--navy);color:#fff;box-shadow:0 12px 26px rgba(10,55,102,.22)}
  .btn-primary:hover{background:var(--ink);transform:translateY(-1px);box-shadow:0 16px 32px rgba(8,38,75,.28)}
  .btn-wa{background:#1c9d57;color:#fff;box-shadow:0 12px 26px rgba(28,157,87,.22)}
  .btn-wa:hover{background:#178049;transform:translateY(-1px)}
  .btn-ghost{background:rgba(255,255,255,.7);color:var(--navy);border-color:var(--line)}
  .btn-ghost:hover{background:#fff;border-color:rgba(10,55,102,.45);transform:translateY(-1px)}
  .btn-sm{min-height:44px;padding:.6rem 1.05rem;font-size:.9rem}
  header.site{position:sticky;top:0;z-index:50;height:var(--header-h);display:flex;align-items:center;background:rgba(251,250,246,.82);backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--line)}
  header.site .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem}
  .brand{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--serif);font-weight:600;font-size:1.16rem;color:var(--ink)}
  .brand small{display:block;font-family:var(--sans);font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--navy);opacity:.8;margin-top:1px}
  .brand svg{width:38px;height:38px;border-radius:10px;flex:0 0 auto}
  nav.main{display:none;gap:1.5rem;align-items:center}
  nav.main a{font-family:var(--sans);font-weight:600;font-size:.94rem;color:#243b5e;padding:.35rem 0;border-bottom:2px solid transparent}
  nav.main a:hover{color:var(--navy);border-color:var(--gold)}
  .header-cta{display:none}
  @media(min-width:960px){nav.main{display:flex}.header-cta{display:inline-flex}}
  .skip{position:absolute;left:-999px;top:0;background:var(--ink);color:#fff;padding:.6rem 1rem;border-radius:0 0 8px 0;z-index:100}
  .skip:focus{left:0}
  .hero{position:relative;overflow:hidden}
  .hero::before{content:"";position:absolute;inset:0;background:radial-gradient(1100px 480px at 78% -8%,rgba(197,145,43,.10),transparent 60%),repeating-linear-gradient(135deg,rgba(8,38,75,.04) 0,rgba(8,38,75,.04) 1px,transparent 1px,transparent 54px);pointer-events:none}
  .hero .wrap{position:relative;display:grid;gap:clamp(28px,4vw,52px);grid-template-columns:1fr;padding:clamp(40px,6vw,72px) 20px clamp(40px,5vw,64px)}
  @media(min-width:980px){.hero .wrap{grid-template-columns:1.15fr .85fr;align-items:center}}
  .hero h1{font-size:clamp(2.05rem,4.6vw,3.35rem);max-width:16ch}
  .hero .lead{margin-top:1.1rem}
  .hero-ctas{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.6rem}
  .chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.7rem}
  .chip{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.7);border:1px solid var(--line);color:#23375a;border-radius:var(--radius-pill);padding:.42rem .85rem;font-size:.82rem;font-weight:600}
  .chip svg{width:15px;height:15px;color:var(--gold)}
  .hero-card{background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(20px,2.2vw,28px)}
  .hero-card h2{font-size:1.18rem}
  .doc-mini{display:flex;gap:.85rem;align-items:flex-start;padding:.95rem 0;border-top:1px solid var(--line)}
  .doc-mini:first-of-type{border-top:none}
  .doc-avatar{flex:0 0 auto;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-weight:600;color:#fff;background:linear-gradient(135deg,var(--navy),var(--ink));font-size:1.05rem}
  .doc-mini b{font-family:var(--sans);font-size:.98rem}
  .doc-mini span{font-size:.85rem;color:var(--muted);display:block}
  .doc-mini .lk{font-size:.82rem;font-weight:700;color:var(--navy);margin-top:.25rem;display:inline-flex;gap:.3rem;align-items:center}
  .surface-warm{background:linear-gradient(180deg,#fbfaf7,#f4efe6)}
  .surface-calm{background:linear-gradient(180deg,#edf4f8,#f8fbfc)}
  .surface-white{background:rgba(255,255,255,.7)}
  .head-block{max-width:62ch}
  .head-block .lead{margin-top:.8rem}
  .grid{display:grid;gap:1rem}
  .g-2{grid-template-columns:1fr}
  .g-3{grid-template-columns:1fr}
  .g-4{grid-template-columns:1fr 1fr}
  @media(min-width:680px){.g-2{grid-template-columns:1fr 1fr}.g-3{grid-template-columns:1fr 1fr}.g-4{grid-template-columns:1fr 1fr 1fr}}
  @media(min-width:980px){.g-3{grid-template-columns:1fr 1fr 1fr}.g-4{grid-template-columns:repeat(5,1fr)}}
  .card{background:rgba(255,255,255,.85);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);padding:1.25rem 1.3rem;height:100%}
  .card h3{font-size:1.06rem;margin-bottom:.35rem}
  .card p{font-size:.92rem;color:var(--muted)}
  .ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:rgba(10,55,102,.08);color:var(--navy);margin-bottom:.8rem}
  .ic svg{width:20px;height:20px}
  .service-card{display:flex;flex-direction:column}
  .service-card .lk{margin-top:auto;padding-top:.7rem;font-weight:700;font-size:.85rem;color:var(--navy);display:inline-flex;gap:.35rem;align-items:center}
  .service-card .lk:hover{color:var(--ink)}
  .band{background:linear-gradient(135deg,var(--ink) 0%,var(--navy) 60%,#061f3b 100%);color:#eaf1f9;border-radius:var(--radius);padding:clamp(26px,4vw,46px);position:relative;overflow:hidden}
  .band::after{content:"";position:absolute;right:-60px;top:-60px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(197,145,43,.22),transparent 65%)}
  .band h2{color:#fff}
  .band .lead{color:#cdddf0;position:relative}
  .band ul{list-style:none;padding:0;margin:1.2rem 0 0;display:grid;gap:.6rem;position:relative}
  .band li{display:flex;gap:.6rem;align-items:flex-start;font-size:.95rem}
  .band li svg{flex:0 0 auto;width:18px;height:18px;color:var(--gold-soft);margin-top:.2rem}
  .price-tag{display:inline-flex;align-items:baseline;gap:.5rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-pill);padding:.45rem 1rem;font-size:.9rem;margin-top:1.2rem;position:relative}
  .price-tag b{font-family:var(--serif);font-size:1.25rem;color:#fff}
  .doctor{display:grid;grid-template-columns:1fr;gap:1rem}
  .doctor-card{background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden;display:flex;flex-direction:column}
  .doctor-top{display:flex;gap:1rem;align-items:center;padding:1.3rem 1.4rem .6rem}
  .doctor-top .doc-avatar{width:60px;height:60px;font-size:1.3rem}
  .doctor-top h3{font-size:1.18rem}
  .doctor-role{font-family:var(--sans);font-size:.86rem;color:var(--navy);font-weight:700}
  .crm{font-size:.78rem;color:var(--muted);font-weight:600;letter-spacing:.02em}
  .stars{display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;color:#6b5316;font-weight:700;background:rgba(197,145,43,.12);border-radius:var(--radius-pill);padding:.2rem .6rem;margin-top:.3rem}
  .doctor-body{padding:.4rem 1.4rem 1.1rem;display:flex;flex-direction:column;gap:.85rem;flex:1}
  .doctor-body .summary{font-size:.92rem;color:#33415a}
  .tags{display:flex;flex-wrap:wrap;gap:.4rem}
  .tag{font-size:.76rem;background:rgba(10,55,102,.06);border:1px solid var(--line);color:#26405f;border-radius:var(--radius-pill);padding:.25rem .6rem}
  .formats{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.78rem;color:var(--muted)}
  .formats span{display:inline-flex;align-items:center;gap:.3rem}
  .formats svg{width:14px;height:14px;color:var(--navy)}
  details.prices{border-top:1px solid var(--line);padding-top:.6rem}
  details.prices summary{cursor:pointer;font-weight:700;font-size:.86rem;color:var(--navy);list-style:none;display:flex;align-items:center;gap:.4rem}
  details.prices summary::-webkit-details-marker{display:none}
  details.prices summary .caret{transition:transform .2s ease}
  details.prices[open] summary .caret{transform:rotate(180deg)}
  .price-list{margin:.7rem 0 0;display:grid;gap:.3rem}
  .price-row{display:flex;justify-content:space-between;gap:1rem;font-size:.85rem;padding:.25rem 0;border-bottom:1px dashed var(--line)}
  .price-row span:last-child{font-weight:700;color:var(--ink);white-space:nowrap}
  .doctor-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:.4rem}
  .doctor-actions .btn{flex:1 1 auto}
  .steps{counter-reset:s;display:grid;gap:1rem}
  .step{display:flex;gap:1rem;align-items:flex-start}
  .step .n{counter-increment:s;flex:0 0 auto;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-family:var(--serif);font-size:1.1rem}
  .step .n::before{content:counter(s,decimal-leading-zero)}
  .step b{font-family:var(--sans);font-size:1rem}
  .step p{font-size:.9rem;color:var(--muted)}
  .loc-grid{display:grid;gap:1.3rem;grid-template-columns:1fr}
  @media(min-width:860px){.loc-grid{grid-template-columns:1fr 1fr}}
  .info-row{display:flex;gap:.7rem;align-items:flex-start;padding:.6rem 0;border-bottom:1px solid var(--line)}
  .info-row svg{flex:0 0 auto;width:20px;height:20px;color:var(--navy);margin-top:.15rem}
  .info-row b{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--navy);display:block}
  .map-frame{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-height:300px;box-shadow:var(--shadow-sm);background:#dce6ee}
  .map-frame iframe{width:100%;height:100%;min-height:340px;border:0}
  .faq details{background:rgba(255,255,255,.8);border:1px solid var(--line);border-radius:var(--radius-sm);margin-bottom:.7rem;overflow:hidden}
  .faq summary{cursor:pointer;list-style:none;padding:1.05rem 1.2rem;font-weight:700;font-family:var(--sans);font-size:1rem;display:flex;justify-content:space-between;gap:1rem;align-items:center;color:var(--ink)}
  .faq summary::-webkit-details-marker{display:none}
  .faq summary .plus{flex:0 0 auto;width:24px;height:24px;display:grid;place-items:center;color:var(--navy);transition:transform .2s ease}
  .faq details[open] summary .plus{transform:rotate(45deg)}
  .faq .ans{padding:0 1.2rem 1.15rem;font-size:.93rem;color:#33415a}
  footer.site{background:linear-gradient(135deg,var(--ink),#061f3b);color:#c6d4e6;padding:clamp(40px,5vw,64px) 0 28px;margin-top:8px}
  footer.site .cols{display:grid;gap:1.6rem;grid-template-columns:1fr}
  @media(min-width:760px){footer.site .cols{grid-template-columns:1.4fr 1fr 1fr}}
  footer.site h4{color:#fff;font-size:1rem;margin-bottom:.7rem}
  footer.site a{color:#c6d4e6}
  footer.site a:hover{color:#fff}
  footer.site .brand{color:#fff}
  footer.site .brand small{color:#9fb6d4}
  .foot-link{display:block;font-size:.9rem;padding:.2rem 0;color:#c6d4e6}
  .disclaimer{font-size:.8rem;color:#90a6c4;border-top:1px solid rgba(255,255,255,.12);margin-top:1.8rem;padding-top:1.2rem;line-height:1.7}
  .disclaimer a{text-decoration:underline}
  .float-wa{position:fixed;right:16px;bottom:16px;z-index:60;display:inline-flex;align-items:center;gap:.5rem;background:#1c9d57;color:#fff;font-weight:700;font-size:.92rem;padding:.8rem 1.1rem;border-radius:var(--radius-pill);box-shadow:0 14px 30px rgba(28,157,87,.4);transition:transform .18s ease}
  .float-wa:hover{transform:translateY(-2px)}
  .float-wa svg{width:20px;height:20px}
  @media(min-width:960px){.float-wa span.lbl{display:inline}}
  .note{font-size:.82rem;color:var(--muted);margin-top:.8rem}
  @media (prefers-reduced-motion: reduce){*{scroll-behavior:auto !important;transition-duration:.01ms !important;animation-duration:.01ms !important}}
  .axis-logo{background-image:url("/logo-axis.svg");background-repeat:no-repeat;background-position:left center;background-size:contain}
  .footer-logo{display:inline-block;background:#fff;border-radius:14px;padding:14px 18px;box-shadow:0 8px 22px rgba(0,0,0,.18)}
  .footer-logo .axis-logo{background-position:center}