/* Kora — site styles */
:root{
  --k-paper:#F2F1F8;
  --k-card:#FFFFFF;
  --k-ink:#17142B;
  --k-ink-soft:#4A4664;
  --k-ink-mute:#7C7896;
  --k-violet:#6A3DF0;
  --k-violet-deep:#4B24C4;
  --k-peach:#FF9F7A;
  --k-line:#DCD9EA;
  --k-round:22px;
  --k-face-head:'Unbounded',system-ui,sans-serif;
  --k-face-body:'Manrope',system-ui,-apple-system,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--k-paper);color:var(--k-ink);font-family:var(--k-face-body);font-size:17px;line-height:1.65;overflow-x:hidden}
img,svg{max-width:100%;display:block}
a{color:var(--k-violet-deep)}
a:hover{color:var(--k-violet)}
h1,h2,h3{font-family:var(--k-face-head);line-height:1.15;margin:0;letter-spacing:-.01em}
p{margin:0 0 1em}
:focus-visible{outline:3px solid var(--k-peach);outline-offset:3px;border-radius:6px}
.skipper{position:absolute;left:12px;top:-60px;background:var(--k-ink);color:#fff;padding:10px 16px;border-radius:10px;z-index:99;text-decoration:none;font-weight:700}
.skipper:focus{top:12px;color:#fff}
.wrap{width:min(1080px,100% - 40px);margin-inline:auto}
.wrap-text{width:min(720px,100% - 40px);margin-inline:auto}

/* top bar */
.topbar{padding:22px 0}
.topbar-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.brandmark{display:inline-flex;align-items:center;gap:10px;font-family:var(--k-face-head);font-weight:600;font-size:20px;color:var(--k-ink);text-decoration:none}
.brandmark svg{width:34px;height:34px}
.topnav{display:flex;gap:6px;flex-wrap:wrap}
.topnav a{color:var(--k-ink-soft);text-decoration:none;font-weight:600;font-size:15px;padding:8px 14px;border-radius:999px}
.topnav a:hover,.topnav a[aria-current="page"]{background:var(--k-card);color:var(--k-ink)}

/* opening */
.opening{padding:48px 0 72px;text-align:center}
.eyebrow{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--k-violet-deep);margin-bottom:18px}
.opening h1{font-size:clamp(34px,6.2vw,68px);font-weight:700;max-width:14ch;margin:0 auto 22px}
.opening h1 span{color:var(--k-violet)}
.opening-lede{max-width:560px;margin:0 auto 30px;color:var(--k-ink-soft);font-size:19px}
.soon{display:inline-flex;align-items:center;gap:10px;background:var(--k-ink);color:#fff;border:0;border-radius:16px;padding:14px 24px;font:700 16px var(--k-face-body);cursor:default}
.soon svg{width:20px;height:20px}
.soon small{display:block;font-weight:500;font-size:12px;opacity:.75;text-align:left}
.soon-note{margin-top:12px;font-size:14px;color:var(--k-ink-mute)}

/* hero illustration */
.stage{position:relative;margin:56px auto 0;width:min(560px,100%);height:440px}
.stage-glow{position:absolute;inset:40px 0 0;border-radius:50%;background:radial-gradient(closest-side,rgba(106,61,240,.22),transparent);filter:blur(4px)}
.handset{position:absolute;left:50%;top:0;transform:translateX(-50%);width:220px;height:440px;border-radius:40px;background:#0E0C1C;padding:10px;box-shadow:0 30px 60px rgba(23,20,43,.28)}
.handset::before{content:"";position:absolute;top:18px;left:50%;transform:translateX(-50%);width:74px;height:20px;border-radius:12px;background:#000;z-index:2}
.handset-glass{position:relative;height:100%;border-radius:31px;background:#F7F6FC;overflow:hidden;padding:46px 12px 12px;text-align:left}
.urlpill{height:28px;border-radius:10px;background:#E9E6F5;display:flex;align-items:center;gap:6px;padding:0 10px;font-size:10px;color:var(--k-ink-mute);margin-bottom:12px}
.urlpill i{width:8px;height:10px;border:2px solid var(--k-violet);border-radius:3px 3px 2px 2px}
.tabgrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tabtile{height:96px;border-radius:12px;background:#fff;border:1px solid var(--k-line);padding:8px}
.tabtile b{display:block;height:7px;width:60%;border-radius:4px;background:#D7D2EE;margin-bottom:6px}
.tabtile em{display:block;height:5px;border-radius:3px;background:#ECEAF5;margin-bottom:4px}
.tabtile.is-going{animation:tabfade 4.5s ease-in-out infinite;border-style:dashed}
@keyframes tabfade{0%,30%{opacity:1;transform:none}60%,80%{opacity:0;transform:scale(.9)}100%{opacity:1}}
.clearbar{position:absolute;left:12px;right:12px;bottom:14px;height:34px;border-radius:12px;background:var(--k-violet);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}
.chip{position:absolute;background:var(--k-card);border:1px solid var(--k-line);border-radius:14px;padding:10px 14px;font-size:13px;font-weight:700;box-shadow:0 10px 24px rgba(23,20,43,.08);display:flex;align-items:center;gap:8px}
.chip::before{content:"";width:10px;height:10px;border-radius:50%;background:var(--k-peach)}
.chip-a{left:0;top:90px}
.chip-b{right:0;top:220px}
.chip-b::before{background:var(--k-violet)}

/* bands */
.band{padding:84px 0}
.band-white{background:var(--k-card)}
.band-head{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:40px}
.band-head h2{font-size:clamp(26px,3.6vw,40px);max-width:18ch}
.band-head p{max-width:380px;color:var(--k-ink-soft);margin:0}

/* straight answers (home Q&A, two-column cards) */
.answers{padding:8px 0 84px}
.answers-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:0}
.answer{position:relative;background:var(--k-card);border:1px solid var(--k-line);border-radius:var(--k-round);padding:26px 26px 22px 74px}
.answer::before{content:attr(data-q);position:absolute;left:22px;top:24px;width:36px;height:36px;border-radius:12px;background:var(--k-paper);color:var(--k-violet-deep);font:600 13px/36px var(--k-face-head);text-align:center}
.answer dt{font-family:var(--k-face-head);font-size:17px;line-height:1.3;margin-bottom:8px;color:var(--k-ink)}
.answer dd{margin:0;color:var(--k-ink-soft);font-size:16px}
.answer-wide{grid-column:1/-1;background:var(--k-ink);border-color:var(--k-ink)}
.answer-wide::before{background:var(--k-peach);color:var(--k-ink)}
.answer-wide dt{color:#fff}
.answer-wide dd{color:#C9C5E4}
.answer-wide a{color:var(--k-peach)}

/* habits */
.habits{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;list-style:none;margin:0;padding:0}
.habit{position:relative;background:var(--k-paper);border-radius:0 var(--k-round) var(--k-round) var(--k-round);padding:30px 26px 26px;margin-top:22px}
.habit::before{content:attr(data-tab);position:absolute;left:0;top:-22px;height:22px;padding:0 14px;border-radius:12px 12px 0 0;background:var(--k-paper);font-size:12px;font-weight:700;line-height:22px;color:var(--k-violet-deep);letter-spacing:.04em}
.habit h3{font-size:20px;margin-bottom:10px}
.habit p{color:var(--k-ink-soft);margin:0;font-size:16px}
.habit-icon{width:44px;height:44px;border-radius:14px;background:var(--k-card);display:grid;place-items:center;margin-bottom:18px}
.habit-icon svg{width:24px;height:24px}

/* sign-off with honest note */
.signoff{padding:84px 0}
.signoff-split{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.signoff h2{font-size:clamp(26px,4vw,44px);margin-bottom:14px}
.signoff-lead{color:var(--k-ink-soft);margin:0 0 26px}
.fineprint{border-left:4px solid var(--k-peach);padding:6px 0 6px 22px}
.fineprint h3{font-size:18px;margin-bottom:10px}
.fineprint p{color:var(--k-ink-soft);font-size:16px}
.fineprint p:last-child{margin:0}

/* footer */
.basement{border-top:1px solid var(--k-line);padding:44px 0 26px;font-size:14px;color:var(--k-ink-mute);background:var(--k-card)}
.basement-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:28px}
.basement-brand .brandmark{font-size:17px}
.basement-brand .brandmark svg{width:28px;height:28px}
.basement-brand p{margin:12px 0 0;max-width:34ch;color:var(--k-ink-soft)}
.basement-title{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--k-ink-mute);margin:0 0 12px}
.basement-col ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.basement a{color:var(--k-ink-soft);text-decoration:none;font-weight:600}
.basement a:hover{color:var(--k-violet)}
.basement-base{margin-top:32px;padding-top:18px;border-top:1px dashed var(--k-line);display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13px}
.linkish{background:none;border:0;padding:0;font:600 14px var(--k-face-body);color:var(--k-ink-soft);cursor:pointer;text-decoration:underline;text-underline-offset:3px;text-align:left}

/* document pages */
.doc{padding:30px 0 80px}
.doc-head{padding:36px 0 28px;border-bottom:1px solid var(--k-line);margin-bottom:32px}
.doc-head h1{font-size:clamp(30px,5vw,48px);margin-bottom:12px}
.stamp{display:inline-block;background:var(--k-card);border:1px solid var(--k-line);border-radius:999px;padding:5px 14px;font-size:14px;font-weight:600;color:var(--k-ink-soft)}
.doc h2{font-size:21px;color:var(--k-violet-deep);margin:38px 0 12px}
.doc h3{font-size:17px;margin:20px 0 8px}
.doc p,.doc li{color:var(--k-ink-soft)}
.doc ul{padding-left:22px;margin:0 0 1em}
.doc li{margin-bottom:6px}
.doc strong{color:var(--k-ink)}
.tofill{background:#FFE7DC;color:#9A2E06;border:1px dashed #E0662F;border-radius:6px;padding:0 6px;font-weight:700}

/* support */
.mailbox{background:var(--k-ink);color:#fff;border-radius:var(--k-round);padding:32px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:44px}
.mailbox h2{color:#fff;font-size:22px;margin:0 0 6px}
.mailbox p{color:#C9C5E4;margin:0}
.mailbtn{display:inline-block;background:var(--k-peach);color:var(--k-ink);text-decoration:none;font-weight:800;padding:13px 22px;border-radius:14px;word-break:break-all}
.mailbtn:hover{color:var(--k-ink);background:#FFB495}
.asks details{background:var(--k-card);border:1px solid var(--k-line);border-radius:16px;margin-bottom:10px}
.asks summary{cursor:pointer;padding:18px 22px;font-weight:700;color:var(--k-ink);list-style:none;display:flex;justify-content:space-between;gap:12px}
.asks summary::-webkit-details-marker{display:none}
.asks summary::after{content:"+";font:600 20px/1 var(--k-face-head);color:var(--k-violet)}
.asks details[open] summary::after{content:"–"}
.asks details p{padding:0 22px 18px;margin:0}

/* lost page */
.lost{min-height:60vh;display:grid;place-items:center;text-align:center;padding:40px 0}
.lost-code{font:700 clamp(80px,18vw,160px)/1 var(--k-face-head);color:transparent;-webkit-text-stroke:2px var(--k-violet);margin-bottom:10px}
.lost h1{font-size:clamp(22px,3.4vw,32px);margin-bottom:12px}
.lost p{color:var(--k-ink-soft)}
.pillbtn{display:inline-block;margin-top:10px;background:var(--k-violet);color:#fff;text-decoration:none;font-weight:700;padding:12px 22px;border-radius:999px}
.pillbtn:hover{color:#fff;background:var(--k-violet-deep)}

/* consent */
.cookiebox{position:fixed;left:16px;right:16px;bottom:16px;max-width:440px;background:var(--k-ink);color:#EDEBFA;border-radius:18px;padding:20px 22px;box-shadow:0 18px 40px rgba(23,20,43,.28);z-index:50;font-size:15px}
.cookiebox-title{font-family:var(--k-face-head);font-size:15px;color:#fff;margin:0 0 6px}
.cookiebox p{margin:0 0 14px;color:#C9C5E4}
.cookiebox-acts{display:flex;gap:10px;flex-wrap:wrap}
.cookiebox button{border-radius:12px;padding:10px 16px;font:700 14px var(--k-face-body);cursor:pointer;border:1px solid #C9C5E4;background:transparent;color:#fff}
.cookiebox button.yes{background:var(--k-peach);border-color:var(--k-peach);color:var(--k-ink)}

@media (max-width:860px){
  .habits{grid-template-columns:1fr}
  .answers-grid{grid-template-columns:1fr}
  .signoff-split{grid-template-columns:1fr}
  .basement-grid{grid-template-columns:1fr 1fr}
  .basement-brand{grid-column:1/-1}
}
@media (max-width:520px){
  .stage{height:400px}
  .handset{transform:translateX(-50%) scale(.9);transform-origin:top center}
  .chip{font-size:12px}
  .chip-a{top:40px}
  .chip-b{top:300px}
  .topnav a{padding:6px 10px}
  .answer{padding:76px 22px 22px}
  .answer::before{top:22px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
