:root{
  --paper:#F1EDFA;
  --paper-2:#E9E3F7;
  --ink:#1B1526;
  --ink-soft:#554C66;
  --rule:#D6CDE8;
  --true:#5E4285;
  --measure:36rem;
  --step:clamp(1.6rem,4vw,2.4rem);
}

/* Background: soft lilac wash, fixed so it never scrolls. No image file. */
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background-color:var(--paper);
  background-image:
    radial-gradient(120% 90% at 62% 46%, #FCFAFF 0%, rgba(252,250,255,0) 62%),
    radial-gradient(90% 70% at 12% 8%,  #E4DBF6 0%, rgba(228,219,246,0) 70%),
    radial-gradient(95% 75% at 96% 96%, #E2D9F4 0%, rgba(226,217,244,0) 72%),
    linear-gradient(155deg, #EDE8F9 0%, #F4F0FB 46%, #EAE4F7 100%);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--paper)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;background:transparent;color:var(--ink);
  font-family:"Archivo",system-ui,sans-serif;font-weight:400;
  font-size:1.03rem;line-height:1.66;
}
.eyebrow{
  font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;font-weight:500;
  letter-spacing:.15em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 1.1rem;
}
h1,h2,h3{
  font-family:"Archivo",system-ui,sans-serif;font-variation-settings:"wdth" 118;
  font-weight:600;line-height:1.07;letter-spacing:-.018em;margin:0;text-wrap:balance;
}
h1{font-size:clamp(1.95rem,5.6vw,3.05rem)}
h2{font-size:clamp(1.35rem,3vw,1.75rem);font-variation-settings:"wdth" 112;margin:0 0 .9rem}
h3{
  font-size:1.04rem;font-variation-settings:"wdth" 100;font-weight:600;
  letter-spacing:-.005em;line-height:1.35;margin:1.8rem 0 .5rem;
}
p{margin:0 0 1.05rem;max-width:var(--measure)}
ul,ol{max-width:var(--measure);padding-left:1.15rem;margin:0 0 1.05rem}
li{margin-bottom:.5rem}
a{color:var(--true);text-decoration-thickness:1px;text-underline-offset:.18em}
a:hover{color:var(--ink)}
:focus-visible{outline:2px solid var(--true);outline-offset:3px}
strong,b{font-weight:600}
em,i,cite{font-style:normal}

/* masthead */
.mast{
  position:sticky;top:0;z-index:20;
  background:color-mix(in srgb,var(--paper) 92%,transparent);
  backdrop-filter:blur(8px);border-bottom:1px solid var(--rule);
}
.mast-in{
  max-width:62rem;margin:0 auto;padding:.85rem var(--step);
  display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;
}
.wordmark{
  font-family:"Archivo",system-ui,sans-serif;font-size:.76rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--ink);text-decoration:none;font-weight:500;
}
.mast nav{display:flex;gap:.6rem;margin-left:auto;flex-wrap:wrap;align-items:center}
.mast nav a{
  font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;font-weight:500;letter-spacing:.09em;
  text-transform:uppercase;text-decoration:none;border:1px solid var(--ink);
  color:var(--ink);padding:.4rem .8rem;
}
.mast nav a:hover,.mast nav a.on{background:var(--ink);color:var(--paper)}

/* social icons in the top bar */
.mast nav a.ico{
  padding:0;width:2.05rem;height:2.05rem;
  display:inline-flex;align-items:center;justify-content:center;
}
.mast nav a.ico svg{width:1.05rem;height:1.05rem;display:block}
.mast nav a.ico svg rect,
.mast nav a.ico svg circle,
.mast nav a.ico svg path{
  fill:none;stroke:currentColor;stroke-width:1.7;
  stroke-linejoin:round;vector-effect:non-scaling-stroke;
}
.mast nav a.ico svg .dot,
.mast nav a.ico svg .fill{fill:currentColor;stroke:none}
.mast nav a.ico:hover{background:var(--ink);color:var(--paper)}

main{max-width:62rem;margin:0 auto;padding:0 var(--step) 5rem}
.top{padding:2.6rem 0 2rem}
.band{padding:2.8rem 0;border-top:1px solid var(--rule)}

/* big clickable rows */
.rows{border-top:1.5px solid var(--ink)}
.rows > details,.rows > a.row{border-bottom:1px solid var(--rule);display:block;scroll-margin-top:5rem}
.rows > :last-child{border-bottom:1.5px solid var(--ink)}
.rows summary,.rows a.row{
  cursor:pointer;list-style:none;text-decoration:none;color:var(--ink);
  display:grid;grid-template-columns:2.6rem 1fr 1.6rem;gap:.9rem;
  align-items:start;padding:1.35rem 0;
}
.rows summary::-webkit-details-marker{display:none}
.idx{
  font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;letter-spacing:.06em;
  color:var(--ink-soft);padding-top:.45rem;
}
.q{
  font-family:"Archivo",system-ui,sans-serif;font-variation-settings:"wdth" 106;font-weight:600;
  font-size:clamp(1.04rem,2.2vw,1.26rem);line-height:1.3;letter-spacing:-.012em;
}
.rows summary:hover .q,.rows a.row:hover .q{color:var(--true)}
.sign{
  font-family:"Archivo",system-ui,sans-serif;font-size:1.05rem;color:var(--ink-soft);
  text-align:right;padding-top:.32rem;
}
.rows details[open] .sign{color:var(--true)}
.rows .a{padding:0 0 1.6rem 3.5rem}
.rows .a > :last-child{margin-bottom:0}
@media (max-width:560px){
  .rows summary,.rows a.row{grid-template-columns:1.9rem 1fr 1.2rem;gap:.6rem}
  .rows .a{padding-left:2.5rem}
}

/* buttons */
.actions{display:flex;flex-wrap:wrap;gap:.7rem;margin:2rem 0 0}
.btn{
  font-family:"Archivo",system-ui,sans-serif;font-size:.75rem;font-weight:500;letter-spacing:.1em;
  text-transform:uppercase;text-decoration:none;color:var(--paper);background:var(--ink);
  padding:.85rem 1.3rem;border:1px solid var(--ink);display:inline-block;
}
.btn:hover{background:var(--true);border-color:var(--true);color:var(--paper)}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:var(--paper)}

/* guide block on home */
.guide-block{border:1.5px solid var(--ink);margin:2.8rem 0 0}
.guide-block .gb-head{
  border-bottom:1.5px solid var(--ink);padding:1.4rem var(--step);
  background:rgba(216,205,239,.55);
}
.guide-block .gb-head h2{margin:0}
.guide-block .rows{border-top:0;padding:0 var(--step)}
.guide-block .rows > :last-child{border-bottom:0}

/* faq bar */
.faq-bar{
  border:1.5px solid var(--ink);padding:1.7rem var(--step);margin-top:2.8rem;
  display:flex;align-items:center;justify-content:space-between;gap:1.4rem;flex-wrap:wrap;
}
.faq-bar p{margin:0}

/* guide page */
.toc{
  border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  padding:1.3rem 0;margin:2rem 0 0;
  columns:15rem;column-gap:2.4rem;
}
.toc a{
  display:grid;grid-template-columns:2.1rem 1fr;gap:.4rem;
  break-inside:avoid;padding:.42rem 0;
  font-family:"Archivo",system-ui,sans-serif;font-size:.73rem;letter-spacing:.06em;
  line-height:1.45;text-transform:uppercase;text-decoration:none;color:var(--ink-soft);
}
.toc a:hover{color:var(--ink)}
.toc-n{color:var(--true);opacity:.75}
.toc a:hover .toc-n{opacity:1}
.chapter{padding:3rem 0;border-top:1px solid var(--rule);scroll-margin-top:5rem}
.top + .chapter{border-top:0;padding-top:1.4rem}
.chapter .eyebrow{margin-bottom:.7rem}
.chapter > :last-child{margin-bottom:0}
blockquote{
  padding:0;margin:1.7rem 0;
  font-family:"Archivo",system-ui,sans-serif;font-variation-settings:"wdth" 104;font-weight:600;
  font-size:1rem;line-height:1.4;max-width:var(--measure);letter-spacing:-.005em;
}
blockquote p{margin:0}

/* faq page */
.qa{border-top:1.5px solid var(--ink)}
.qa details{border-bottom:1px solid var(--rule);scroll-margin-top:5rem}
.qa summary{
  cursor:pointer;list-style:none;padding:1.1rem 2rem 1.1rem 0;position:relative;
  font-family:"Archivo",system-ui,sans-serif;font-variation-settings:"wdth" 104;font-weight:600;
  font-size:1.03rem;line-height:1.35;letter-spacing:-.005em;
}
.qa summary::-webkit-details-marker{display:none}
.qa summary::after{
  content:"+";position:absolute;right:.15rem;top:1.05rem;
  font-family:"Archivo",system-ui,sans-serif;font-size:1rem;color:var(--ink-soft);
}
.qa details[open] summary::after{content:"–"}
.qa summary:hover{color:var(--true)}
.qa .a{padding:.15rem 0 1.4rem}
.qa .a > :last-child{margin-bottom:0}

footer{border-top:1px solid var(--rule);padding:2rem var(--step) 3.5rem}

.foot-in{
  max-width:62rem;margin:0 auto;font-family:"Archivo",system-ui,sans-serif;font-size:.7rem;
  letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);
  display:flex;gap:1.4rem;flex-wrap:wrap;
}
.foot-in a{color:var(--ink-soft);text-decoration:none}
.foot-in a:hover{color:var(--ink)}
