:root{
  /* Quantia brand, from the Candle Q logo (14 Nov 2026) */
  --navy:#0B1F3A; --navy-2:#122A4A; --navy-line:#264066; --line:#E1E6EE; --paper:#F7F8FC; --white:#FFFFFF;
  --ink:#0B1F3A; --muted:#4E5D74; --slate:#B9C6D7;
  --teal:#0D7E53;      /* text green: links, buttons with white text (5:1 on white) */
  --teal-l:#12A36A;    /* brand green: logo candles, accents on navy (5:1 on navy) */
  --warn-bg:#FFF7E6; --warn-line:#F2C46D;
  --radius:12px; --max:1120px;
  --sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --display:"Space Grotesk",Inter,system-ui,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--white);line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased}
a{color:var(--teal)} a:hover{color:#0A6644}
img{max-width:100%}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;background:#fff;padding:8px 12px;z-index:10}

/* header */
.top{background:var(--navy);color:#fff;position:sticky;top:0;z-index:5}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:68px;flex-wrap:wrap}
.brand{display:flex;flex-direction:column;line-height:1;text-decoration:none;color:#fff}
.brand{flex-direction:row!important;align-items:center;gap:10px}
.brand svg{width:36px;height:36px;flex:none}
.brand span{display:flex;flex-direction:column;line-height:1}
.brand b{font-family:var(--display);font-weight:700;font-size:24px;letter-spacing:-.02em}
.brand small{font-family:var(--display);font-size:14px;font-weight:500;color:var(--teal-l);margin-top:3px}
.nav{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.nav a{color:#DCE3EC;text-decoration:none;font-size:15px;padding:10px 10px;border-radius:8px}
.nav a:hover{color:#fff;background:var(--navy-2)}
.nav .lang{border:1px solid var(--navy-line);font-family:var(--mono);font-size:13px}
.btn{display:inline-block;background:var(--teal);color:#fff;text-decoration:none;font-weight:600;padding:12px 20px;border-radius:10px;font-size:16px;border:0}
.btn:hover{background:#0A6644;color:#fff}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn.ghost:hover{background:var(--paper);color:var(--ink)}
.nav .btn{padding:10px 16px;font-size:15px;color:#fff}

/* hero */
.hero{background:var(--navy);color:#fff;padding:72px 0 88px}
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:center}
.eyebrow{font-family:var(--mono);font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--teal-l);margin:0 0 16px}
h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;line-height:1.15;margin:0 0 16px}
h1{font-size:clamp(34px,5vw,54px)}
h2{font-size:clamp(28px,3.4vw,38px)}
h3{font-size:21px}
.hero p.lead{font-size:19px;color:var(--slate);max-width:56ch;margin:0 0 28px}
.hero .ctas{display:flex;gap:12px;flex-wrap:wrap}
.hero .btn.ghost{color:#fff;border-color:var(--navy-line)}
.hero .btn.ghost:hover{background:var(--navy-2);color:#fff}
.flow{background:var(--navy-2);border:1px solid var(--navy-line);border-radius:16px;padding:24px;display:grid;gap:12px}
.flow .step{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start}
.flow .n{width:36px;height:36px;border-radius:50%;background:#0E3A3A;color:var(--teal-l);font-family:var(--mono);display:flex;align-items:center;justify-content:center;font-size:14px}
.flow p{margin:0;color:#DCE3EC;font-size:15px}
.flow strong{color:#fff;display:block;font-size:16px}

/* sections */
section{padding:80px 0}
section.alt{background:var(--paper)}
.intro{max-width:66ch;color:var(--muted);margin:0 0 40px;font-size:18px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.card p{margin:0;color:var(--muted);font-size:16px}
.card .tag{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin:0 0 8px}
.ico{width:40px;height:40px;border-radius:10px;background:#E5F5EE;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.ico svg{width:22px;height:22px;stroke:var(--teal);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
ul.ticks{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:8px}
ul.ticks li{padding-left:28px;position:relative;color:var(--ink);font-size:16px}
ul.ticks li::before{content:"";position:absolute;left:4px;top:8px;width:12px;height:7px;border-left:2px solid var(--teal);border-bottom:2px solid var(--teal);transform:rotate(-45deg)}

/* pricing */
.plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.plan{background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;display:flex;flex-direction:column}
.plan.featured{border:2px solid var(--teal)}
.plan .price{font-family:var(--display);font-size:40px;font-weight:700;margin:8px 0 0}
.plan .price span{font-size:16px;font-weight:500;color:var(--muted)}
.plan ul{flex:1}
.plan .btn{margin-top:24px;text-align:center}
.note{font-size:14px;color:var(--muted);margin-top:20px}

/* risk */
.risk{background:var(--warn-bg);border:1px solid var(--warn-line);border-radius:var(--radius);padding:20px 24px;font-size:15px;color:#4A3A12}
.risk strong{color:#2E2408}

/* faq */
details{border-bottom:1px solid var(--line);padding:18px 0}
details summary{cursor:pointer;font-weight:600;font-size:18px;list-style:none;display:flex;justify-content:space-between;gap:16px}
details summary::-webkit-details-marker{display:none}
details summary::after{content:"+";font-family:var(--mono);color:var(--teal);font-size:22px;line-height:1}
details[open] summary::after{content:"–"}
details p{color:var(--muted);margin:12px 0 0;max-width:72ch}

/* footer */
footer{background:var(--navy);color:var(--slate);padding:56px 0 40px;font-size:14px}
footer .cols{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));gap:32px;margin-bottom:32px}
footer a{color:#DCE3EC;text-decoration:none} footer a:hover{color:#fff;text-decoration:underline}
footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
footer h4{color:#fff;font-size:14px;margin:0 0 12px;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;font-weight:500}
footer .fine{border-top:1px solid var(--navy-line);padding-top:24px;display:grid;gap:10px;line-height:1.55}

/* legal pages */
.doc{max-width:780px;margin:0 auto;padding:56px 24px 80px}
.doc h1{font-size:clamp(30px,4vw,42px)}
.doc h2{font-size:22px;margin-top:40px}
.doc p,.doc li{color:#283446}
.doc .meta{font-family:var(--mono);font-size:13px;color:var(--muted);margin-bottom:32px}
.ph{background:#FFF1C2;padding:0 4px;border-radius:4px}

@media (max-width:900px){
  .hero .wrap,.grid3,.grid2,.plans,footer .cols{grid-template-columns:minmax(0,1fr)}
  .hero{padding:48px 0 56px}
  section{padding:56px 0}
  .nav a:not(.btn):not(.lang){display:none}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* systems and courses (from the 6 Nov draft) */
.sys{display:flex;flex-direction:column;gap:14px}
.sys.flag{border:2px solid var(--teal)}
.sys .mk{font-family:var(--mono);font-size:13px;color:var(--muted)}
.sys .count{font-family:var(--mono);font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:3px 10px;white-space:nowrap;align-self:flex-start}
.sys ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.sys li{font-size:15px;color:var(--ink);padding-left:22px;position:relative}
.sys li::before{content:"—";position:absolute;left:0;color:var(--teal);font-family:var(--mono)}
.sys .foot{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px;margin-top:auto}
.shows{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.shows .n{font-family:var(--mono);color:var(--teal);font-size:14px}
.shows strong{display:block;font-size:17px;margin:6px 0}
.shows p{margin:0;color:var(--muted);font-size:15px}
.mod .tag{margin-bottom:6px}
.plan .who{color:var(--muted);font-size:15px;margin:4px 0 0}
@media (max-width:900px){.shows{grid-template-columns:minmax(0,1fr)}}
.howgrid .step{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;align-items:start;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px}
.howgrid .n{width:40px;height:40px;border-radius:50%;border:2px solid var(--teal);color:var(--teal);font-family:var(--mono);display:flex;align-items:center;justify-content:center;font-weight:600}
.howgrid p{margin:0;color:var(--muted);font-size:16px}
.howgrid strong{display:block;color:var(--ink);font-size:18px;margin-bottom:4px}
.top .brand small,footer .brand small{color:var(--teal-l)}
.plan .tag{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--teal)}
.brand svg{width:40px;height:40px}
/* waitlist form */
.wl{max-width:640px;margin-top:8px}
.wl-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.wl-field{flex:1 1 280px;display:flex;flex-direction:column;gap:6px}
.wl-field label{font-weight:600;font-size:15px}
.wl input[type=email]{font:inherit;font-size:16px;padding:12px 14px;border:1px solid #CDD5E1;border-radius:10px;min-height:48px;color:var(--ink);background:#fff}
.wl input[type=email]:focus{outline:2px solid var(--teal);outline-offset:1px;border-color:var(--teal)}
.wl .btn{min-height:48px;cursor:pointer;font-family:inherit}
.wl-consent{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font-size:15px;color:var(--muted)}
.wl-consent input{width:20px;height:20px;margin-top:2px;accent-color:var(--teal);flex:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.social{font-size:15px;margin:16px 0 0}
footer .social a{color:#fff}
