:root{
  --paper:#F6FBFD;
  --surface:#E7F4F8;
  --ink:#0E2A4A;
  --muted:#4A7188;
  --line:rgba(14,42,74,.12);
  --accent:#12A4D4;
  --accent-soft:#D4F0F8;
  --wa:#25D366;
  --radius:16px;
  --maxw:1140px;
  --read:68ch;
  --f-serif:'Newsreader', Georgia, 'Times New Roman', serif;
  --f-sans:'Hanken Grotesk', system-ui, -apple-system, sans-serif;
}
:root[data-theme="dark"]{
  --paper:#0B2233; --surface:#123044;
  --ink:#E7F4F8; --muted:#8AADC0; --line:rgba(231,244,248,.14);
  --accent:#3EC6EA; --accent-soft:#16384C;
}
*{box-sizing:border-box;}
html,body{margin:0;}
html{scroll-behavior:smooth;}
body{background:var(--paper);color:var(--ink);font-family:var(--f-sans);font-size:18px;line-height:1.7;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{color:inherit;}
.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:24px;}
@media(max-width:520px){.wrap{padding-inline:18px;}}
header.site{position:sticky;top:0;z-index:60;background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;height:70px;}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;}
.logo-wrap{width:48px;height:48px;border-radius:50%;overflow:hidden;flex:none;background:#fff;}
.logo-wrap img{width:100%;height:100%;object-fit:contain;}
.brand .name{font-weight:700;font-size:22px;letter-spacing:-.02em;}
.header-cta{display:inline-flex;align-items:center;gap:10px;}
.pill,.iconbtn{min-width:44px;min-height:44px;height:44px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink);font-family:var(--f-sans);font-weight:600;font-size:13.5px;}
.pill{padding:0 14px;display:inline-flex;align-items:center;text-decoration:none;}
.iconbtn{width:44px;display:inline-grid;place-items:center;cursor:pointer;}
.pill:hover,.iconbtn:hover{border-color:var(--ink);}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--f-sans);font-weight:600;font-size:15px;padding:13px 22px;border-radius:999px;text-decoration:none;min-height:44px;}
.btn svg{width:18px;height:18px;flex:none;}
.btn-wa{background:var(--wa);color:#08331b;}
.btn-wa:hover{background:#1fbe5a;}
.eyebrow{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);}
.article{padding-block:56px 40px;}
.article h1{font-family:var(--f-sans);font-weight:700;letter-spacing:-.03em;line-height:1.08;font-size:clamp(34px,5vw,56px);margin:14px 0 0;max-width:18ch;}
.lede{font-family:var(--f-serif);font-style:italic;color:var(--accent);font-size:clamp(18px,2.2vw,22px);margin:18px 0 0;max-width:var(--read);}
.prose{max-width:var(--read);margin-top:28px;}
.prose p{margin:0 0 18px;}
.figure{margin:36px 0 8px;max-width:720px;}
.figure img{width:100%;height:auto;max-height:420px;border-radius:var(--radius);border:1px solid var(--line);aspect-ratio:4/3;object-fit:cover;}
.figure figcaption{margin-top:10px;color:var(--muted);font-size:14px;}
.offer{margin:48px 0 0;background:var(--ink);color:var(--paper);border-radius:var(--radius);padding:32px 28px;max-width:720px;}
.offer h2{margin:0;font-size:clamp(28px,4vw,40px);letter-spacing:-.03em;line-height:1.1;}
.offer p{color:color-mix(in srgb,var(--paper) 78%,transparent);margin:14px 0 0;}
.offer ul{list-style:none;padding:0;margin:22px 0;display:grid;gap:10px;}
.offer li{display:flex;justify-content:space-between;gap:16px;border-top:1px solid color-mix(in srgb,var(--paper) 22%,transparent);padding-top:10px;font-weight:600;}
@media(max-width:520px){.offer li{flex-direction:column;gap:2px;}}
.offer li span{font-weight:500;color:color-mix(in srgb,var(--paper) 75%,transparent);}
.offer .actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.offer .fine{margin:16px 0 0;font-size:14.5px;}
.offer .fine a{color:var(--paper);}
footer.site{border-top:1px solid var(--line);padding-block:34px;margin-top:20px;}
.foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:13.5px;}
.foot a{text-decoration:none;}
.foot a:hover{color:var(--accent);}
