/* MedicareSchool.com — static site styles (converted from Claude Design mockup) */

@font-face{font-family:'IBM Plex Serif';src:url('/fonts/IBMPlexSerif-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'IBM Plex Sans';src:url('/fonts/IBMPlexSans-Variable.woff2') format('woff2-variations'),url('/fonts/IBMPlexSans-Variable.woff2') format('woff2');font-weight:100 700;font-display:swap}

:root{
  --teal:#2a8f82; --teal-dark:#1f6b62; --teal-deep:#12403a; --teal-bright:#36b2a1; --teal-soft:#b5e2dc;
  --ink:#2b2826; --brown:#4a4542; --muted:#736963; --muted-2:#8f8079;
  --sand-1:#f7efe9; --sand-2:#ede0d9; --sand-3:#e4d3c8; --line:#ece3dc; --line-2:#d1bdb2;
  --star:#f79452;
  --serif:'IBM Plex Serif',Georgia,serif;
  --sans:'IBM Plex Sans',-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;
  --gutter:clamp(20px,8.33vw,120px);
  --section-y:clamp(64px,7.8vw,112px);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--sand-3);font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:var(--teal);text-underline-offset:4px}
a:hover{color:var(--teal-dark)}
:focus-visible{outline:3px solid var(--teal-bright);outline-offset:3px}
h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-0.015em;color:var(--ink);margin:0}


/* Shared cards */
.stat{background:var(--sand-1);border:1px solid var(--line);border-radius:16px;padding:clamp(32px,3.3vw,48px) clamp(24px,2.8vw,40px)}
.stat-num{font-family:var(--serif);font-weight:600;font-size:clamp(48px,4.4vw,64px);line-height:1;color:var(--teal-dark);margin-bottom:16px;display:flex;align-items:center;gap:12px}
.stat-label{font-size:clamp(19px,1.5vw,22px);font-weight:500;color:var(--brown);line-height:1.4}
.review{background:#fff;border:1px solid var(--line-2);border-radius:10px;padding:32px;display:flex;flex-direction:column;gap:20px;margin:0}
.stars{display:flex;gap:4px}
.review blockquote{font-size:19px;line-height:1.6;color:var(--brown);margin:0}
.review figcaption{margin-top:auto;font-size:17px;color:var(--muted)}


/* ---------- Booking confirmation page ---------- */
.confirm-body{background:var(--sand-1)}
.confirm-wrap{min-height:100vh;display:flex;flex-direction:column}
.confirm-header{background:#fff;border-bottom:1px solid var(--line);height:104px;display:flex;align-items:center;justify-content:center;padding:0 24px}
.confirm-header img{height:48px;width:auto}
.confirm-main{flex:1;padding:56px 20px 96px;display:flex;flex-direction:column;align-items:center}
.confirm-intro{max-width:760px;width:100%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:28px;margin-bottom:56px}
.confirm-intro h1{font-size:clamp(36px,4.2vw,56px);line-height:1.12;text-wrap:balance}
.confirm-intro p{font-size:clamp(18px,1.5vw,21px);line-height:1.65;color:var(--brown);margin:0;text-wrap:pretty}
.confirm-intro a{font-weight:600;color:var(--teal-dark);white-space:nowrap}
.confirm-intro a:hover{color:var(--teal-deep)}
.form-card{max-width:720px;width:100%;background:#fff;border:1px solid var(--line-2);border-radius:24px;padding:0 clamp(20px,4vw,48px);box-shadow:0 18px 40px rgba(74,69,66,.10)}
.hs-form-frame{min-height:200px}
.private{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 0;border-top:1px solid var(--line);font-size:17px;color:var(--muted)}
.confirm-proof{background:#fff;border-top:1px solid var(--line);padding:clamp(64px,6vw,88px) 20px 96px;display:flex;flex-direction:column;align-items:center}
.confirm-proof h2{font-size:clamp(32px,2.8vw,40px);line-height:1.2;margin-bottom:48px;text-align:center}
.confirm-stats{max-width:1080px;width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-bottom:48px}
.confirm-stats .stat{text-align:center;padding:40px 32px}
.confirm-stats .stat-num{font-size:56px;justify-content:center;margin-bottom:12px;gap:10px}
.confirm-stats .stat-label{font-size:20px}
.confirm-reviews{max-width:1080px;width:100%;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:24px}
.confirm-reviews .review{gap:18px}
.confirm-footer{background:var(--ink);padding:40px 24px;text-align:center}
.confirm-footer p{font-size:15px;line-height:1.7;color:#b3a59c;margin:0 auto;max-width:900px}
@media (max-width:760px){
  .confirm-header{height:80px}
  .confirm-header img{height:38px}
  .confirm-main{padding-top:40px}
}
.confirm-intro strong{font-weight:600;color:var(--ink)}
