:root{color-scheme:light dark;
--bg:#E9E8E3;--fg:#16171A;--muted:#55575C;--a:#1F3A7A;--gold:#8a6a1e;--line:#cfcdc4;--panel:#dfddd6;--soft:#f2f1ec;
--serif:ui-serif,"New York","Iowan Old Style","Palatino Linotype",Georgia,serif;
--sans:-apple-system,BlinkMacSystemFont,"SF Pro Text",system-ui,"Segoe UI",Roboto,sans-serif;
--out:cubic-bezier(.23,1,.32,1);--io:cubic-bezier(.77,0,.175,1);
--vein:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='900'%3E%3Cfilter id='v' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.004 .011' numOctaves='5' seed='11' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='table' tableValues='0 0 0 0 0 0 0 .26 0 0 0 0 .14 0 0 0 0 0 0 0'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='900' height='900' filter='url(%23v)'/%3E%3C/svg%3E");--vein-d:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='900'%3E%3Cfilter id='v' x='0' y='0' width='100%25' height='100%25'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.004 .011' numOctaves='5' seed='11' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .2 0 0 0 0 .2 0 0 0 0 .2 1 0 0 0 0'/%3E%3CfeComponentTransfer%3E%3CfeFuncA type='table' tableValues='0 0 0 0 0 0 0 .2 0 0 0 0 .1 0 0 0 0 0 0 0'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='900' height='900' filter='url(%23v)'/%3E%3C/svg%3E");
--oxblood:#4A1512;--verdigris:#12322E;--lapis:#14275C;--gilt:#15130E;--marble:#F6F6F4;--stone:#E9E8E3;--night:#101216}
@media (prefers-color-scheme:dark){:root{--bg:#101216;--fg:#E8E6DF;--muted:#A0A1A6;--a:#9DB4EC;--gold:#E3C77F;--line:#2a2d35;--panel:#1a1d23;--soft:#171a20}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:1rem}
body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.6 var(--sans);overflow-wrap:break-word;overflow-x:clip}
::selection{background:#1F3A7A;color:#F0EBDD}
a{color:var(--a);text-underline-offset:.2em;text-decoration-thickness:1px}
@media (hover:hover) and (pointer:fine){a:hover{text-decoration-thickness:2px}}
:focus-visible{outline:2px solid var(--a);outline-offset:3px;border-radius:3px}
h1,h2,h3,blockquote{font-family:var(--serif);font-weight:500;margin:0;text-wrap:balance}
h1{font-size:clamp(2.1rem,6.4vw,4rem);line-height:1.04;letter-spacing:-.022em}
h2{font-size:clamp(1.7rem,4.2vw,2.75rem);line-height:1.08;letter-spacing:-.018em}
h3{font-size:1.3rem;line-height:1.25;letter-spacing:-.008em}
p{margin:0 0 1em}.m{color:var(--muted)}
.wrap{max-width:74rem;margin:0 auto;padding:0 1rem}
.read{max-width:42rem;margin:0 auto;padding:0 1rem}
@media(min-width:760px){.wrap,.read{padding:0 2rem}}

.top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem 1rem;position:relative;z-index:30;background:var(--bg)}
@media(min-width:760px){.top{padding:.85rem 2rem}}
.brand{display:flex;align-items:center;gap:.5rem;font:500 1.3rem var(--serif);color:var(--fg);text-decoration:none;flex:none}
.brand img{width:28px;height:28px;border-radius:7px;display:block}
.top nav{display:flex;gap:.8rem;font-size:.92rem;white-space:nowrap}
@media(max-width:380px){.brand span{display:none}}
.top nav a{color:var(--fg);text-decoration:none;padding:.4rem 0}
@media (hover:hover) and (pointer:fine){.top nav a:hover{color:var(--a)}}
@media(min-width:560px){.top nav{gap:1.5rem;font-size:.94rem}}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:.7rem 1.35rem;border-radius:999px;background:var(--fg);color:var(--bg);font:600 1.02rem var(--sans);text-decoration:none;border:0;cursor:pointer;transition:transform 160ms var(--out),opacity 160ms}
.btn:active{transform:scale(.97)}
a.btn:hover{text-decoration:none}
.btn.soon{background:transparent;color:var(--fg);box-shadow:inset 0 0 0 1.5px var(--fg);cursor:default}

.crumbs{font-size:.88rem;margin:0 0 1rem;color:inherit;opacity:.82}.crumbs a{color:inherit}
.band{color:#F0EBDD;background:var(--lapis);position:relative;overflow:hidden}
.band[data-m=oxblood]{background:var(--oxblood);color:#F2E6DC}.band[data-m=verdigris]{background:var(--verdigris);color:#D9EFE3}
.band[data-m=gilt]{background:var(--gilt);color:#E6C677}.band[data-m=night]{background:var(--night);color:#E8E6DF}
.band[data-m=marble]{background:var(--marble);color:#23252B}.band[data-m=stone]{background:#dcdad2;color:#16171A}
.band::after{content:"";position:absolute;inset:0;background:var(--vein);background-size:900px 900px;mix-blend-mode:soft-light;opacity:.55;pointer-events:none}
.band>*{position:relative;z-index:1}
.band-in{max-width:74rem;margin:0 auto;padding:2rem 1rem 2.4rem;display:grid;gap:1.8rem;align-items:center}
.band h1{margin-bottom:.8rem}.band .lead{font-size:1.12rem;line-height:1.5;margin:0;max-width:36rem}
@media(min-width:860px){.band-in{grid-template-columns:1fr auto;padding:3.6rem 2rem;gap:3rem}}
.lk{position:relative;width:min(100%,330px);aspect-ratio:330/170;border-radius:24px;overflow:hidden;color:#fff;background:linear-gradient(180deg,rgba(10,14,28,0) 20%,rgba(10,14,28,.55)),url(/img/wallpaper.webp) center bottom/cover;display:flex;gap:10px;justify-content:space-between;align-items:flex-end;padding:0 14px 14px;text-shadow:0 1px 8px rgba(8,12,28,.4);font-family:var(--serif);font-weight:500}
.lk>div{flex:1;min-width:0;font-size:.9rem;line-height:1.2}
.lk .s{font-size:.72rem;line-height:1.22}
.lk small{display:block;font:600 .66rem var(--sans);opacity:.85;margin-top:.25em}
.lk .s small{display:flex;justify-content:space-between}
.sect{padding:2.6rem 0}.sect>h2,.sect>.read>h2{margin-bottom:.8rem}
.prose{max-width:40rem}.prose h2{margin:2.2rem 0 .7rem}.prose h3{margin:1.5rem 0 .4rem}
.prose ul,.prose ol{padding-left:1.25rem;margin:0 0 1em}.prose li{margin:.3rem 0}
.prose ol.steps{counter-reset:s;list-style:none;padding:0}
.prose ol.steps li{counter-increment:s;padding:.6rem 0 .6rem 2.4rem;position:relative;border-top:1px solid var(--line)}
.prose ol.steps li::before{content:counter(s);position:absolute;left:0;top:.5rem;font:500 1.3rem var(--serif);color:var(--a)}
.twin{display:grid;gap:1.6rem}@media(min-width:760px){.twin{grid-template-columns:1fr 1fr;gap:3rem}}
.tick{list-style:none;padding:0;margin:0}.tick li{padding:.55rem 0;border-top:1px solid var(--line)}
.lines{columns:1;column-gap:3rem;margin-top:1.2rem}@media(min-width:860px){.lines{columns:2}}
.q{margin:0;padding:1.1rem 0;border-top:1px solid var(--line);break-inside:avoid}
.q blockquote{font-size:1.32rem;line-height:1.28;letter-spacing:-.008em}
.q figcaption{margin-top:.4rem;font-size:.86rem;line-height:1.4;color:var(--muted)}.q cite{font-style:italic}
.kindnote{max-width:40rem;color:var(--muted);font-size:.96rem;margin:0 0 .4rem}
details.ctx{margin-top:.5rem;font-size:.92rem}details.ctx summary{cursor:pointer;color:var(--a);font-weight:500;padding:.2rem 0}
.passage{white-space:pre-line;font:1rem/1.6 var(--serif);margin:.5rem 0 0;padding-left:.9rem;border-left:2px solid var(--line)}
mark{background:none;color:inherit;font-weight:700}
.ctaband{margin:1rem 0 0;padding:1.6rem 0;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:1rem 1.6rem;align-items:center}
.ctaband p{margin:0;max-width:34rem;font-size:1.12rem;line-height:1.4}
.help{font-size:.92rem;color:var(--muted);max-width:40rem;margin:1.4rem 0 0}
.links{list-style:none;padding:0;margin:.7rem 0 0;display:flex;flex-wrap:wrap;gap:.45rem 1.3rem}
.links a{padding:.15rem 0;display:inline-block}
.hub{display:grid;gap:0 3rem;grid-template-columns:1fr;list-style:none;padding:0;margin:1rem 0 0}
@media(min-width:760px){.hub{grid-template-columns:1fr 1fr}}
.hub li{border-top:1px solid var(--line);padding:.9rem 0}.hub a{font:500 1.3rem/1.2 var(--serif);text-decoration:none;color:var(--fg)}
@media (hover:hover) and (pointer:fine){.hub a:hover{color:var(--a)}}
.hub p{margin:.25rem 0 0;font-size:.93rem;line-height:1.4;color:var(--muted)}

.faq{max-width:46rem}.faq details{border-top:1px solid var(--line)}.faq details:last-of-type{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 0;font:500 1.18rem/1.25 var(--serif);min-height:52px}
.faq summary::-webkit-details-marker{display:none}
.faq summary svg{flex:none;width:18px;height:18px;transition:transform 240ms var(--out);color:var(--muted)}
.faq details[open] summary svg{transform:rotate(45deg)}
.faq .a{overflow:hidden}.faq .a p{padding:0 2rem 1.1rem 0;margin:0;color:var(--fg)}

footer{border-top:1px solid var(--line);padding:1.6rem 0 2.4rem;font-size:.9rem;color:var(--muted);margin-top:2rem}
.foot-links{list-style:none;margin:0 0 .6rem;padding:0;display:flex;flex-wrap:wrap;gap:.2rem 1.2rem}
.foot-links a{color:var(--muted);text-decoration:none;display:inline-block;padding:.3rem 0}
@media (hover:hover) and (pointer:fine){.foot-links a:hover{color:var(--fg);text-decoration:underline}}
footer p{margin:0}
.legal{padding:2rem 0 2rem}.legal h1{margin-bottom:.6rem}.legal h2{font-size:1.45rem;margin:1.8rem 0 .5rem}
