:root{
  color-scheme: light;
  --bg:#FFFFFF; --ink:#2B2030; --muted:#6E6272; --line:#E3DCE0;
  --plum:#5B4366; --plum-deep:#3A2B42; --plum-soft:#EFE8F2;
  --coral:#C9543F;
  --display:"Bricolage Grotesque","Avenir Next",system-ui,sans-serif;
  --body:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:15px;line-height:1.55}
main{flex:1}
a{color:var(--plum)}
a:focus-visible{outline:2px solid var(--plum);outline-offset:2px}
h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0;letter-spacing:-.01em}

.container{width:100%;max-width:1040px;margin:0 auto}

/* nav */
.site-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 32px;flex-wrap:wrap}
.mark{font-family:var(--display);font-weight:800;font-size:24px;color:var(--plum-deep);letter-spacing:-.03em;text-decoration:none;line-height:1.2}
.mark i{font-style:normal;color:var(--coral)}
.site-nav nav{display:flex;gap:18px}
.site-nav nav a{font-size:13.5px;color:var(--ink);text-decoration:none;font-weight:500}
.site-nav nav a:hover{text-decoration:underline}

/* home */
.hero{padding:22px 32px 40px}
.hero h1{font-size:44px;line-height:1.02;font-weight:800;color:var(--plum-deep);letter-spacing:-.03em}
.hero h1 em{font-style:normal;color:var(--coral)}
.hero .sub{color:var(--muted);font-size:15.5px;margin:14px 0 20px;max-width:44ch}
.early{background:var(--plum-soft);border-radius:18px;padding:16px 20px;max-width:46ch}
.early .lbl{font-size:12px;letter-spacing:.07em;text-transform:uppercase;font-weight:600;color:var(--plum)}
.early p{margin:4px 0 0;font-size:15px;color:var(--plum-deep)}

/* legal pages */
.legal{padding:28px 40px 34px;max-width:760px}
.legal h1{font-size:30px;color:var(--plum-deep)}
.legal .meta{font-size:12.5px;color:var(--muted);margin:6px 0 20px}
.legal h2{font-size:16px;margin:20px 0 6px;color:var(--plum-deep)}
.legal p{font-size:13.5px;margin:0 0 8px}
.lorem{color:#9A8FA0}

/* footer */
.site-foot{border-top:1px solid var(--line)}
.site-foot .container{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 32px;font-size:11.5px;color:var(--muted)}
.site-foot nav{display:flex;gap:14px}
.site-foot a{color:var(--muted)}

@media (max-width:620px){
  .hero h1{font-size:34px}
  .hero,.site-nav,.site-foot .container{padding-inline:18px}
  .legal{padding-inline:20px}
}
