
:root{--ink:#1E1433;--primary:#B8245A;--accent:#FFD9A0;--canvas:#F5F2F8;--paper:#fff;
--muted:#5B5370;--line:#E0DAEA;--radius:18px;--font:'Urbanist',system-ui,sans-serif;}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--canvas);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit}img{max-width:100%}
.wrap{max-width:1120px;margin:0 auto;padding:0 28px}
h1,h2,h3{font-weight:800;letter-spacing:-.035em;line-height:1.02;margin:0 0 .5em}
h1{font-size:clamp(2.6rem,6.4vw,5rem)}h2{font-size:clamp(2rem,4.2vw,3.2rem)}h3{font-size:1.35rem;letter-spacing:-.02em;line-height:1.2}
p{margin:0 0 1.1em;max-width:62ch}.lede{font-size:1.3rem;line-height:1.5;color:var(--muted);max-width:56ch}
.accent{color:var(--primary)}.dark .accent{color:var(--accent)}
.eyebrow{font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--primary);margin:0 0 1.4em;display:block}
.dark .eyebrow{color:var(--accent)}
header.site{position:sticky;top:0;z-index:20;background:var(--canvas);border-bottom:1px solid var(--line)}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;height:72px;gap:24px}
.brand{font-weight:800;font-size:1.35rem;letter-spacing:-.04em;text-decoration:none}.brand b{color:var(--primary)}
nav.main{display:flex;gap:26px;align-items:center;font-size:.95rem;font-weight:600}nav.main a{text-decoration:none}
nav.main a:hover{color:var(--primary)}
.btn{display:inline-block;background:var(--ink);color:#fff;font-weight:700;text-decoration:none;padding:15px 26px;border-radius:var(--radius);border:2px solid var(--ink);font-size:1rem;cursor:pointer;font-family:inherit}
.btn:hover{background:var(--primary);border-color:var(--primary)}
.btn.alt{background:transparent;color:var(--ink)}.btn.alt:hover{background:var(--ink);color:#fff}
.dark .btn{background:var(--accent);color:var(--ink);border-color:var(--accent)}.dark .btn:hover{background:#fff;border-color:#fff}
.dark .btn.alt{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}.dark .btn.alt:hover{background:#fff;color:var(--ink)}
nav.main .btn{padding:10px 18px;color:#fff}
section{padding:104px 0}section.tight{padding:72px 0}
.dark{background:var(--ink);color:#fff}.dark .lede,.dark p{color:rgba(255,255,255,.78)}
.paper{background:var(--paper)}
.hero{padding:112px 0 96px}.hero .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:36px}
.steps{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:2px solid var(--ink)}
.steps li{padding:36px 36px 36px 0;border-bottom:1px solid var(--line)}.steps li:nth-child(odd){border-right:1px solid var(--line)}
.steps li:nth-child(even){padding-left:36px}
.steps .n{font-size:.85rem;font-weight:700;letter-spacing:.12em;color:var(--primary);display:block;margin-bottom:14px}
.dark .steps{border-top-color:var(--accent)}.dark .steps li{border-color:rgba(255,255,255,.16)}.dark .steps .n{color:var(--accent)}
.split{display:grid;grid-template-columns:1.1fr .9fr;gap:72px;align-items:start}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:34px;box-shadow:0 20px 44px rgba(10,20,30,.12)}
.dark .card{color:var(--ink);box-shadow:0 20px 44px rgba(0,0,0,.35)}.dark .card p{color:var(--muted)}
.plain{list-style:none;padding:0;margin:0}.plain li{padding:14px 0;border-bottom:1px solid var(--line);font-weight:600}
.plain li:last-child{border-bottom:0}
.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{font-weight:700;font-size:1.15rem;cursor:pointer;list-style:none}
.faq summary::after{content:"+";float:right;color:var(--primary);font-weight:800}.faq details[open] summary::after{content:"\2212"}
.faq p{margin:14px 0 0;color:var(--muted)}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:48px}
.post{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:30px;text-decoration:none;display:block}
.post:hover{border-color:var(--ink)}.post span{font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--primary)}
.post h3{margin:14px 0 10px}.post p{color:var(--muted);font-size:1rem;margin:0}
article.prose{max-width:720px}article.prose h2{font-size:1.9rem;margin-top:1.6em}article.prose p,article.prose li{font-size:1.12rem}
form.lead{display:grid;grid-template-columns:1fr 1fr;gap:16px}form.lead .full{grid-column:1/-1}
form.lead label{font-size:.85rem;font-weight:700;display:block;margin-bottom:6px}
form.lead input,form.lead select,form.lead textarea{width:100%;padding:14px;border:2px solid var(--ink);border-radius:var(--radius);font:inherit;font-size:1rem;background:#fff;color:var(--ink)}
form.lead textarea{min-height:120px}.fine{font-size:.85rem;color:var(--muted)}
footer.site{background:var(--ink);color:rgba(255,255,255,.72);padding:64px 0 40px;font-size:.95rem}
footer.site .cols{display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}footer.site a{text-decoration:none}footer.site a:hover{color:#fff}
footer.site .brand{color:#fff}footer.site .brand b{color:var(--accent)}footer.site nav{display:flex;gap:22px;flex-wrap:wrap}
footer.site .legal{border-top:1px solid rgba(255,255,255,.16);margin-top:40px;padding-top:24px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:.85rem}
@media(max-width:860px){body{font-size:17px}section{padding:72px 0}.hero{padding:72px 0 64px}.steps,.split,.posts,form.lead{grid-template-columns:1fr}
.steps li,.steps li:nth-child(even){padding:28px 0;border-right:0}.split{gap:40px}nav.main a:not(.btn){display:none}
nav.main .btn{white-space:nowrap;padding:9px 14px;font-size:.85rem}.brand{font-size:1.2rem}header.site .wrap{padding:0 18px;gap:12px}}
