@font-face{font-family:"Archivo";src:url(/static/fonts/archivo.woff2) format("woff2");font-weight:100 900;font-stretch:62% 125%;font-display:swap}
:root{
  --paper:#0A1222;--plate:#111B30;--plate2:#18243D;--ink:#EEF3FB;--slate:#93A0B8;--line:#223050;
  --link:#A9B3FF;--gum:#3DDC97;--holo:linear-gradient(115deg,#7CE7FF 0%,#9D8CFF 34%,#FF9AD5 64%,#FFE08A 100%);
  color-scheme:dark;
}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){
  --paper:#F3F5FA;--plate:#FFFFFF;--plate2:#ECEFF6;--ink:#141B2D;--slate:#556079;--line:#DDE2EC;--link:#3C47C2;--gum:#1E9E68;color-scheme:light}}
*{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 "Archivo",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-stretch:100%}
a{color:var(--link);text-underline-offset:3px}
a:focus-visible,button:focus-visible{outline:2px solid var(--link);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-999px;top:8px}.skip:focus{left:16px;background:var(--plate);padding:8px 12px;z-index:10}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
header.top{border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;align-items:center;gap:18px;min-height:64px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-stretch:112%;letter-spacing:-.01em;color:var(--ink);text-decoration:none;font-size:19px}
.brand i{display:block;width:22px;height:30px;border-radius:5px;background:var(--holo);box-shadow:inset 0 0 0 2px rgba(10,18,34,.55)}
.brand b{font-weight:800}.brand span{font-weight:500;color:var(--slate)}
nav.links{margin-left:auto;display:flex;gap:20px;flex-wrap:wrap}
nav.links a{color:var(--slate);text-decoration:none;font-weight:600;font-size:15px}
nav.links a:hover,nav.links a[aria-current]{color:var(--ink)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:14px;font-weight:800;
  font-stretch:108%;text-decoration:none;background:var(--ink);color:var(--paper);border:0;font-size:16px}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--line)}
.btn:hover{filter:brightness(1.08)}

/* hero: the question every collector asks, answered by the plaque the app shows */
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding-top:64px;padding-bottom:72px}
.hero h1{font-size:clamp(38px,5.6vw,64px);line-height:1.02;letter-spacing:-.025em;font-weight:850;font-stretch:118%;margin:0 0 18px;text-wrap:balance}
.hero p.lead{font-size:20px;color:var(--slate);max-width:34ch;margin:0 0 28px;text-wrap:pretty}
.hero .cta{display:flex;gap:12px;flex-wrap:wrap}
.hero .fine{margin-top:18px;font-size:14px;color:var(--slate)}
.slab{position:relative;justify-self:center;width:min(360px,100%)}
.card{aspect-ratio:63/88;border-radius:18px;background:
  radial-gradient(120% 70% at 30% 20%,rgba(255,224,138,.35),transparent 60%),
  radial-gradient(90% 60% at 80% 70%,rgba(124,231,255,.28),transparent 60%),
  linear-gradient(160deg,#1C2B4D,#101a31);border:10px solid #E9C46A;box-shadow:0 30px 60px -20px rgba(0,0,0,.6);
  transform:rotate(-4deg);display:flex;flex-direction:column;justify-content:space-between;padding:16px;color:#FFF8E6}
.card b{font-stretch:115%;font-size:20px}.card small{opacity:.85;font-size:13px}
.card .art{flex:1;margin:12px 0;border-radius:8px;background:
  conic-gradient(from 210deg at 60% 55%,#FF9AD5,#FFE08A,#7CE7FF,#9D8CFF,#FF9AD5);opacity:.75;filter:saturate(.9)}
.plaque{position:absolute;left:-28px;right:28px;bottom:-34px;background:var(--plate);border-radius:16px;padding:16px 18px;
  box-shadow:0 20px 40px -18px rgba(0,0,0,.7),inset 0 0 0 1px var(--line)}
.plaque::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;border-radius:16px 16px 0 0;background:var(--holo)}
.plaque .k{font-size:13px;color:var(--slate);font-weight:600}
.plaque .v{font-size:40px;font-weight:850;font-stretch:112%;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}
.plaque .m{font-size:14px;color:var(--slate);font-variant-numeric:tabular-nums}
.plaque .m b{color:var(--gum);font-weight:700}

section{padding:64px 0;border-top:1px solid var(--line)}
section h2{font-size:clamp(26px,3.4vw,36px);line-height:1.12;letter-spacing:-.015em;font-weight:800;font-stretch:110%;margin:0 0 14px;text-wrap:balance}
section p.intro{color:var(--slate);max-width:62ch;margin:0 0 32px}
ol.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;counter-reset:s}
ol.steps li{counter-increment:s;border-top:2px solid var(--ink);padding-top:16px}
ol.steps li::before{content:counter(s);display:block;font-size:44px;font-weight:850;font-stretch:120%;line-height:1;margin-bottom:10px;
  background:var(--holo);-webkit-background-clip:text;background-clip:text;color:transparent}
ol.steps h3{margin:0 0 6px;font-size:20px}
ol.steps p{margin:0;color:var(--slate)}
.facts{display:grid;grid-template-columns:repeat(2,1fr);gap:20px 48px}
.facts div{padding:14px 0;border-bottom:1px solid var(--line)}
.facts h3{margin:0 0 4px;font-size:18px}.facts p{margin:0;color:var(--slate)}
.guides{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.guides a{display:block;text-decoration:none;color:var(--ink);padding:20px;border-radius:16px;background:var(--plate);box-shadow:inset 0 0 0 1px var(--line)}
.guides a:hover{box-shadow:inset 0 0 0 1.5px var(--link)}
.guides h3{margin:0 0 6px;font-size:19px;line-height:1.25;text-wrap:balance}.guides p{margin:0;color:var(--slate);font-size:15px}

/* articles */
article{max-width:70ch;margin:0 auto;padding:56px 20px 72px}
article .crumb{font-size:14px;color:var(--slate);margin-bottom:18px}
article h1{font-size:clamp(32px,4.6vw,48px);line-height:1.08;letter-spacing:-.02em;font-weight:850;font-stretch:115%;margin:0 0 14px;text-wrap:balance}
article .sub{font-size:19px;color:var(--slate);margin:0 0 32px;text-wrap:pretty}
article h2{font-size:26px;line-height:1.2;margin:40px 0 10px;font-weight:800;font-stretch:108%;text-wrap:balance}
article h3{font-size:19px;margin:26px 0 6px}
article p,article li{text-wrap:pretty}
article .note{background:var(--plate);border-left:4px solid #9D8CFF;padding:14px 18px;border-radius:0 12px 12px 0;color:var(--ink)}
article table{width:100%;border-collapse:collapse;margin:16px 0;font-size:15px}
article th,article td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}
article th{color:var(--slate);font-weight:700}
.adslot{margin:36px 0;min-height:0}
form.contact{display:grid;gap:12px;max-width:520px}
form.contact label{font-weight:700;font-size:15px}
form.contact input,form.contact textarea{font:inherit;color:var(--ink);background:var(--plate);border:1.5px solid var(--line);border-radius:12px;padding:12px 14px}
form.contact textarea{min-height:150px;resize:vertical}
.msg{font-weight:600}
footer{border-top:1px solid var(--line);padding:36px 0 48px;color:var(--slate);font-size:14px}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center}
footer a{color:var(--slate)}
footer .grow{flex:1;min-width:220px}

@media (max-width:820px){
  .hero .wrap{grid-template-columns:1fr;padding-top:40px;gap:72px}
  .slab{width:min(300px,86%)}
  ol.steps,.guides,.facts{grid-template-columns:1fr}
  header.top .wrap{flex-wrap:wrap;gap:4px 16px;padding-top:12px;padding-bottom:10px}
  nav.links{margin-left:0;width:100%;gap:18px;flex-wrap:nowrap;overflow-x:auto}
  nav.links a{white-space:nowrap;font-size:15px;padding:6px 0}
}
@media (prefers-reduced-motion:no-preference){.card{transition:transform .4s ease}.slab:hover .card{transform:rotate(-1deg)}}
