/* Pricing and legal pages (2026-11-06, for Paddle's website review). The home page keeps its own inline styles;
   these pages share the same fonts and colours. */
@font-face{font-family:"Product Sans";src:url("fonts/ProductSans-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:"Product Sans";src:url("fonts/ProductSans-Bold.ttf") format("truetype");font-weight:700;font-display:swap}
:root{
  --night:#04110C; --forest:#063424; --ever:#243829; --emerald:#059669; --glow:#10B981; --glow-soft:#9FE7C6;
  --cream:#F2EFE6; --paper:#F7F4EC; --ink:#1E2B22; --ink-2:#4A5248; --ink-mut:#6B6553;
  --mut:rgba(242,239,230,.68); --line:rgba(242,239,230,.12); --line-ink:rgba(30,43,34,.12);
  --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:"Product Sans",system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit}
::selection{background:var(--emerald);color:#fff}
.wrap{width:min(1120px,100% - 32px);margin-inline:auto}

/* top bar */
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0}
.brand{display:flex;align-items:center;gap:11px;font-size:21px;letter-spacing:-.02em;text-decoration:none}
.brand img{width:36px;height:36px;border-radius:9px}
.bar nav{display:flex;gap:4px;align-items:center}
.bar nav a{padding:10px 14px;border-radius:999px;font-size:15px;text-decoration:none;opacity:.78;transition:opacity .2s,background .2s}
.bar nav a:hover,.bar nav a[aria-current="page"]{opacity:1}
.bar nav a:focus-visible,.btn:focus-visible{outline:2px solid var(--glow);outline-offset:2px}

/* footer */
footer{padding:28px 0 40px;font-size:14px}
footer .wrap{display:flex;justify-content:space-between;gap:16px 24px;flex-wrap:wrap}
footer nav{display:flex;gap:18px;flex-wrap:wrap}
footer a{text-decoration:none}
footer a:hover{text-decoration:underline;text-underline-offset:3px}

/* ---------- pricing (dark, like the home page) ---------- */
.dark{background:var(--night);color:var(--cream)}
.dark .bar nav a:hover{background:rgba(242,239,230,.06)}
.dark footer{border-top:1px solid var(--line);color:var(--mut)}
.pr-head{text-align:center;max-width:720px;margin:56px auto 44px}
.pr-head h1{font-weight:400;font-size:clamp(38px,5vw,64px);letter-spacing:-.03em;line-height:1.04;text-wrap:balance}
.pr-head p{margin-top:16px;font-size:18px;color:var(--mut);text-wrap:pretty}
.pr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.pr-card{display:flex;flex-direction:column;border-radius:26px;padding:28px;background:rgba(242,239,230,.04);border:1px solid var(--line)}
.pr-card.star{background:linear-gradient(180deg,var(--forest),#04261a);border-color:rgba(16,185,129,.35);box-shadow:0 2px 4px rgba(0,0,0,.25),0 24px 48px -20px rgba(0,0,0,.55)}
.pr-top{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:28px}
.pr-name{font-size:15px;font-weight:700}
.pr-badge{font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px;background:rgba(16,185,129,.16);color:var(--glow-soft)}
.pr-badge.soon{background:rgba(242,239,230,.08);color:var(--mut)}
.pr-card h2{font-weight:400;font-size:25px;letter-spacing:-.02em;line-height:1.15;margin-top:14px;min-height:2.3em;text-wrap:balance}
.pr-price{display:flex;align-items:flex-end;flex-wrap:wrap;gap:4px 10px;margin-top:18px;min-height:56px}
.pr-price b{font-size:48px;font-weight:700;line-height:1;letter-spacing:-.03em}
.pr-price span{font-size:13.5px;color:var(--mut);padding-bottom:4px;line-height:1.35}
.pr-list{list-style:none;margin-top:22px;padding-top:20px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:12px}
.pr-list li{display:flex;gap:12px;font-size:15px;line-height:1.4}
.pr-list svg{flex:none;width:18px;height:18px;margin-top:1px;color:var(--glow)}
.pr-fine{margin-top:auto;padding-top:22px;font-size:13px;color:var(--mut)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:48px;padding:0 24px;border-radius:999px;font-size:15.5px;font-weight:700;text-decoration:none;
  border:1px solid var(--line);transition:background .25s,box-shadow .25s}
.pr-card .btn{width:100%;margin-top:22px}
.btn.solid{background:var(--cream);color:var(--forest);border-color:var(--cream)}
.btn.solid:hover{background:#fff}
.btn.ghost:hover{background:rgba(242,239,230,.07)}
.pr-note{max-width:760px;margin:30px auto 64px;text-align:center;font-size:14px;color:var(--mut)}
.pr-note a{text-underline-offset:3px}
@media (max-width:960px){
  .pr-grid{grid-template-columns:minmax(0,1fr);max-width:480px;margin-inline:auto}
  .pr-card.star{order:-1}
  .pr-card h2{min-height:0}
  .bar nav a.opt{display:none}
}

/* ---------- legal pages (light, for reading) ---------- */
.paper{background:var(--paper);color:var(--ink)}
.paper .bar nav a:hover{background:rgba(30,43,34,.06)}
.paper footer{border-top:1px solid var(--line-ink);color:var(--ink-mut)}
.doc{max-width:70ch;margin:40px auto 72px}
.doc h1{font-weight:400;font-size:clamp(36px,4.6vw,54px);letter-spacing:-.03em;line-height:1.05}
.doc .upd{margin-top:10px;color:var(--ink-mut);font-size:14.5px}
.doc .intro{margin-top:22px;font-size:18px;color:var(--ink-2)}
.doc h2{font-weight:700;font-size:20px;letter-spacing:-.01em;margin:38px 0 10px}
.doc p,.doc li{font-size:16.5px;color:var(--ink-2)}
.doc p+p{margin-top:12px}
.doc ul{padding-left:22px;margin-top:8px;display:flex;flex-direction:column;gap:6px}
.doc a{color:#047857;text-underline-offset:3px}
.doc strong{color:var(--ink)}
.doc table{width:100%;border-collapse:collapse;margin-top:12px;font-size:15px}
.doc th,.doc td{text-align:left;vertical-align:top;padding:10px 12px 10px 0;border-bottom:1px solid var(--line-ink);color:var(--ink-2)}
.doc th{color:var(--ink);font-weight:700}
@media (max-width:620px){.doc table,.doc thead,.doc tbody,.doc tr,.doc th,.doc td{display:block}.doc thead{display:none}.doc td{border:0;padding:2px 0}.doc tr{padding:10px 0;border-bottom:1px solid var(--line-ink)}.doc td:first-child{font-weight:700;color:var(--ink)}}
