:root{--ink:#1b2b33;--mute:#46575f;--teal:#0b5563;--teal-d:#083e49;--alt:#f2f6f7;--mint:#f2f6f7;--line:#c7d3d7;--bad:#9c2f1f;--ok:#19683f;--focus:#f2a900;--sun:#f2c14e;--r:6px}
*{box-sizing:border-box}html{font-size:112.5%}html[data-size="2"]{font-size:131%}html[data-size="3"]{font-size:150%}
body{margin:0;font-family:'Public Sans',Verdana,system-ui,sans-serif;font-size:1.1rem;line-height:1.7;color:var(--ink);background:#fff;overflow-wrap:break-word}
h1,h2,h3{font-family:inherit;font-weight:700;letter-spacing:-.015em;line-height:1.2;margin:0 0 .6em;color:var(--ink)}h1{font-size:clamp(1.9rem,4.4vw,2.9rem)}h2{font-size:clamp(1.55rem,3vw,2.1rem)}h3{font-size:1.25rem}
p{margin:0 0 1em;max-width:62ch}a{color:var(--teal);text-underline-offset:.18em}a:hover{color:var(--teal-d)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:4px solid var(--focus);outline-offset:3px}
img{max-width:100%;display:block}.w{max-width:1100px;margin:0 auto;padding:0 20px}.sec{padding:56px 0}.alt{background:var(--alt)}.lead{font-size:1.2rem;color:var(--mute)}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:12px;z-index:99}.skip:focus{left:8px;top:8px}
/* utility bar */
.mockbar{background:var(--teal-d);color:#fff;font-size:.85rem;text-align:center;padding:4px 12px}
.util{background:#eef3f5;border-bottom:1px solid var(--line);color:var(--ink);font-size:1rem}.util .w{display:flex;gap:12px 24px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}.util a{color:var(--ink);font-weight:700}
.sizes{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.szl{font-weight:700;margin-right:4px}
.sizes button{display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:6px 18px;border:2px solid var(--ink);background:#fff;color:var(--ink);border-radius:8px;font:inherit;font-weight:700;cursor:pointer}
.sizes button[aria-pressed=true]{background:var(--ink);color:#fff}.sizes button:hover{background:var(--alt)}.sizes button[aria-pressed=true]:hover{background:var(--ink)}
.sizes .ag{line-height:1;font-weight:700}.sizes button[data-s="1"] .ag{font-size:1.05rem}.sizes button[data-s="2"] .ag{font-size:1.45rem}.sizes button[data-s="3"] .ag{font-size:1.9rem}
/* header */
header.top{background:#fff;border-bottom:2px solid var(--line)}
.bar{display:flex;align-items:center;gap:16px;min-height:76px;padding:8px 0;flex-wrap:wrap}.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);margin-right:auto}.logo img{width:40px;height:40px}.logo b{display:block;font-size:1.15rem;line-height:1.2}.logo small{color:var(--mute);font-size:.85rem}
nav.main{display:flex;gap:2px;flex-wrap:wrap}nav.main a{padding:10px 12px;color:var(--ink);text-decoration:none;font-weight:700;font-size:1rem;border-bottom:3px solid transparent}nav.main a:hover,nav.main a.on{border-bottom-color:var(--teal);color:var(--teal-d)}
.menu{display:none;border:2px solid var(--teal);background:#fff;border-radius:var(--r);min-height:48px;padding:0 16px;font:inherit;font-weight:700;color:var(--teal-d)}
/* buttons */
.btn,.btn.sun{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:12px 26px;border-radius:var(--r);background:var(--teal);color:#fff;font:inherit;font-weight:700;font-size:1.05rem;text-decoration:none;border:2px solid var(--teal);cursor:pointer}
.btn:hover,.btn.sun:hover{background:var(--teal-d);border-color:var(--teal-d);color:#fff}.btn.ghost{background:#fff;color:var(--teal-d)}.btn.ghost:hover{background:var(--alt);color:var(--teal-d)}.btn img{width:24px;height:24px}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
/* hero */
.hero{padding:48px 0;background:#fff;border-bottom:2px solid var(--line)}.hero .w{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
.eyebrow{display:block;font-weight:700;color:var(--teal);font-size:1rem;margin-bottom:12px}.note{font-size:.95rem;color:var(--mute);margin-top:16px}
.ph{border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:var(--alt)}.ph img{width:100%;aspect-ratio:3/2;object-fit:cover}.hero .ph img{object-position:50% 12%}
.def{background:var(--alt);border-left:5px solid var(--teal);padding:14px 18px;margin:0 0 22px;max-width:56ch}.def p{margin:0}
/* cards and lists */
.grid{display:grid;gap:20px}.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:repeat(2,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.card{background:#fff;border:2px solid var(--line);border-radius:var(--r);padding:24px}.card .ic{width:44px;height:44px;margin-bottom:10px}.card h3{margin-bottom:.3em}.card p:last-child{margin:0}
.step{padding:0;overflow:hidden}.step img.pic{aspect-ratio:3/2;object-fit:cover;width:100%}.step .t{padding:18px 20px 22px}
.pic{aspect-ratio:3/2;object-fit:cover;width:100%;display:block}
.two{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.two>*,.calc>*,.cta>*{min-width:0}
.checks{list-style:none;padding:0;margin:0}.checks li{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line)}.checks li:last-child{border:0}.checks img{width:30px;height:30px;flex:none;margin-top:3px}
.links{list-style:none;padding:0;margin:0;max-width:760px}.links li{border-top:1px solid var(--line)}.links li:last-child{border-bottom:1px solid var(--line)}.links a{display:block;padding:16px 4px;font-weight:700;text-decoration:none;color:var(--ink)}.links a span{display:block;font-weight:400;color:var(--mute);font-size:1rem}.links a:hover{background:var(--alt);color:var(--teal-d)}
.myth{border:2px solid var(--line);border-radius:var(--r);padding:20px 24px;margin-bottom:16px;background:#fff}.myth .tag{display:block;font-weight:700;font-size:.9rem;color:var(--bad);text-transform:uppercase;letter-spacing:.06em}.myth .ans .tag{color:var(--ok)}.myth q{display:block;font-weight:700;font-size:1.15rem;margin:2px 0 12px;quotes:"“" "”"}.myth .ans{border-top:1px solid var(--line);padding-top:12px}.myth .ans p{margin:0}
/* example table */
table.ex{border-collapse:collapse;width:100%;max-width:640px;margin:14px 0}table.ex td{border:1px solid var(--line);padding:10px 14px;vertical-align:top}table.ex td:last-child{text-align:right;font-weight:700;white-space:nowrap}table.ex tr.tot td{background:var(--alt);font-size:1.2rem}
/* timeline (static) */
.tl{display:grid;grid-template-columns:1fr 1.4fr 1.4fr 1fr;gap:4px;margin:24px 0 8px;text-align:center}.tl>div{padding:16px 8px;border-radius:var(--r);font-weight:700;border:2px solid var(--line);background:#fff}.tl small{display:block;font-weight:400;font-size:.9rem}.t3{border-color:var(--bad)!important;color:var(--bad)}.t1,.t2{background:var(--alt)!important}
.tlm{display:flex;justify-content:space-between;font-size:.9rem;color:var(--mute);margin-bottom:20px}
/* forms */
.panel{background:#fff;border:2px solid var(--line);border-radius:var(--r);padding:28px}.panel h2{font-size:1.5rem}
.fg{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fg .full{grid-column:1/-1}
label.f{display:block;font-weight:700;color:var(--ink)}label.f span.h{display:block;font-weight:400;color:var(--mute);font-size:.95rem}
.fi{width:100%;min-height:56px;margin-top:6px;border:2px solid var(--mute);border-radius:var(--r);padding:10px 14px;font:inherit;font-size:1.1rem;background:#fff;color:var(--ink)}.fi:focus{border-color:var(--teal);outline:4px solid var(--focus);outline-offset:2px}
.money{position:relative}.money::before{content:"$";position:absolute;left:14px;top:50%;transform:translateY(-8%);font-weight:700;color:var(--mute)}.money .fi{padding-left:30px}
.chk{display:flex;gap:14px;align-items:flex-start;font-weight:400;margin-top:14px;cursor:pointer}.chk input{width:28px;height:28px;flex:none;accent-color:var(--teal);margin-top:2px}
details.opt{margin-top:20px;border:1px solid var(--line);border-radius:var(--r);padding:4px 16px}details.opt summary{font-weight:700;cursor:pointer;min-height:48px;display:flex;align-items:center;color:var(--teal-d)}
.out{background:var(--alt);border:2px solid var(--teal);border-radius:var(--r);padding:26px}.out h3{font-size:1.3rem}.out .num{font-size:2.6rem;font-weight:700;color:var(--teal-d);line-height:1.15;margin:4px 0 12px}.out table{width:100%;border-collapse:collapse;margin:12px 0}.out td{padding:9px 0;border-top:1px solid var(--line)}.out td:last-child{text-align:right;font-weight:700}.out ul{padding-left:1.2em}.out .bad{color:var(--bad)}.out small{color:var(--mute);display:block;margin-bottom:12px}
.calc{display:grid;grid-template-columns:1.25fr 1fr;gap:28px;align-items:start}
/* wizard */
.wiz{max-width:760px;margin:0 auto}.wiz .prog{font-weight:700;color:var(--mute);margin-bottom:10px}.wiz fieldset{border:0;padding:0;margin:0}.wiz legend{font-size:1.5rem;font-weight:700;line-height:1.3;margin-bottom:18px;padding:0}.wiz legend:focus{outline:none}
.opt-r{display:flex;gap:14px;align-items:center;border:2px solid var(--line);border-radius:var(--r);padding:16px 18px;margin-bottom:12px;cursor:pointer;font-weight:400;font-size:1.1rem;background:#fff}.opt-r input{width:26px;height:26px;accent-color:var(--teal);flex:none}.opt-r:has(input:checked){border-color:var(--teal);background:var(--alt);font-weight:700}
.err{color:var(--bad);font-weight:700;margin:12px 0 0}.wiz .row{margin-top:22px}.assume{margin-top:22px;border:1px solid var(--line);border-radius:var(--r);padding:16px 20px;background:#fff}.assume h3{font-size:1.05rem}.assume ul{margin:0;padding-left:1.2em}.assume li{margin-bottom:6px}
/* faq */
details.q{border:2px solid var(--line);border-radius:var(--r);margin-bottom:12px;background:#fff}details.q[open]{border-color:var(--teal)}details.q summary{cursor:pointer;list-style:none;padding:16px 20px;font-weight:700;font-size:1.1rem;display:flex;justify-content:space-between;gap:16px;min-height:60px;align-items:center}details.q summary::-webkit-details-marker{display:none}details.q summary::after{content:"+";font-size:1.8rem;color:var(--teal);line-height:1}details.q[open] summary::after{content:"\2212"}details.q .a{padding:0 20px 16px}
/* page head */
.ph-head{background:var(--alt);border-bottom:2px solid var(--line);padding:36px 0 30px}.ph-head .w{display:flex;gap:20px;align-items:center}.ph-head img.ic{width:48px;height:48px;flex:none}.crumb{font-size:1rem;margin-bottom:6px}.ph-head h1{margin-bottom:.3em}.ph-head .lead{margin:0}
.disc{background:var(--alt);border:2px solid var(--teal);border-radius:var(--r);padding:14px 20px;font-size:1rem;margin:32px 0}.src{font-size:.95rem;color:var(--mute)}
.cta{background:var(--alt);border:2px solid var(--line);border-radius:var(--r);padding:32px;display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:center}.cta img.z{width:170px;height:220px;object-fit:cover;border-radius:var(--r)}.cta .lic{font-size:.95rem;color:var(--mute);margin:16px 0 0}
.art{max-width:720px}.art h2{font-size:1.6rem;margin-top:1.5em}.art p{font-size:1.1rem}.art table{border-collapse:collapse;width:100%;margin:18px 0;font-size:1rem;display:block;overflow-x:auto}.art td,.art th{border:1px solid var(--line);padding:10px 12px;text-align:left}.art th{background:var(--alt)}
.prog-bar{height:14px;border-radius:99px;background:var(--line);overflow:hidden;margin:10px 0 16px}.prog-bar i{display:block;height:100%;width:0;background:var(--ok)}
ol.steps{padding-left:1.4em}ol.steps li{margin-bottom:14px;padding-left:6px}
/* footer */
footer{background:var(--teal-d);color:#e3edef;padding:48px 0 28px}footer a{color:#fff}footer h4{color:#fff;margin:0 0 10px;font-size:1.05rem}footer ul{list-style:none;padding:0;margin:0}footer li{margin-bottom:6px}.fine{font-size:.95rem;border-top:1px solid rgba(255,255,255,.25);margin-top:26px;padding-top:18px;max-width:none}
@media(max-width:1180px){nav.main{display:none;flex-direction:column;width:100%;order:5;padding-bottom:10px}nav.main.open{display:flex}nav.main a{font-size:1.15rem;padding:14px 8px;border-bottom:1px solid var(--line)}.menu{display:inline-block}}
@media(max-width:900px){.hero .w,.two,.calc,.cta{grid-template-columns:1fr}.g3,.g4{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.sec{padding:40px 0}.g3,.g4,.g2,.fg{grid-template-columns:1fr}.hero{padding:32px 0}.cta{padding:22px}.cta img.z{width:140px;height:180px}.tl{grid-template-columns:1fr 1fr}.panel{padding:20px}.btn{width:100%}.ph-head .w{align-items:flex-start}.mockflag{display:none}}
@media print{.util,header.top,footer,.cta,.no-print{display:none}}

/* hero A: headline left, one large photo right */
.hero .w{align-items:center}.hero h1{letter-spacing:-.02em;line-height:1.08}.hero-photo{margin:0}.hero-photo .ph img{aspect-ratio:4/3;object-position:50% 30%}.hero-photo figcaption{font-size:.9rem;color:var(--mute);margin-top:8px}
/* minimal motion: opacity only, under 200ms, ease-out; off for reduced-motion */
.btn,nav.main a,.opt-r,.links a,.sizes button,.menu,.sz{transition:background-color .12s ease-out,border-color .12s ease-out,color .12s ease-out}
.opt-r:hover{border-color:var(--teal)}
@media (prefers-reduced-motion:no-preference){
@keyframes fadein{from{opacity:0}to{opacity:1}}
.hero-text,.hero-photo{animation:fadein .18s ease-out both}.hero-photo{animation-delay:.06s}
.wiz form,.wiz .out{animation:fadein .12s ease-out}
.js .fade{opacity:0;transition:opacity .18s ease-out}.js .fade.in{opacity:1}}
