/* Cleo-Betra — bonus & wagering walkthrough. Stepped timeline composition, papyrus cards on ink. */

:root{
  --ink:#191410;
  --ink-2:#221b15;
  --card:#2a2119;
  --line:#453626;
  --turquoise:#25bdf5;
  --turquoise-deep:#0a6f9e;
  --gold:#eaa93c;
  --gold-bright:#ffcf82;
  --gold-deep:#7d4c12;
  --papyrus:#f1e6cb;
  --ash:#eae4d7;
  --ash-dim:#b9ae9b;
  --white:#ffffff;
  --font-display:Georgia,"Times New Roman",serif;
  --font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --radius:10px;
  --shadow:0 14px 32px rgba(0,0,0,.42);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--ash);font-family:var(--font-body);line-height:1.65;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:var(--turquoise);text-decoration:none}
a:hover{text-decoration:underline}
ul,ol{margin:0;padding:0;list-style:none}
button{font:inherit;cursor:pointer}
.container{width:100%;max-width:1080px;margin:0 auto;padding:0 20px}
.skip-link{position:absolute;left:-999px;top:0;background:var(--gold);color:#241505;padding:10px 16px;z-index:100}
.skip-link:focus{left:12px;top:12px}

/* ---------- Header ---------- */
header.site-header{position:sticky;top:0;z-index:40;background:var(--ink-2);border-bottom:2px solid var(--gold-deep)}
.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:14px;padding-bottom:14px}
.brand{display:flex;align-items:center;gap:8px}
.brand img{height:30px;width:auto}
.desktop-nav ul{display:flex;gap:22px}
.desktop-nav a{color:var(--ash);font-weight:600;font-size:.92rem;border-bottom:2px solid transparent;padding:4px 0}
.desktop-nav a:hover,.desktop-nav a[aria-current="page"]{color:var(--gold-bright);border-bottom-color:var(--gold);text-decoration:none}
.header-actions{display:flex;align-items:center;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:4px;padding:11px 20px;font-weight:700;font-size:.88rem;border:2px solid transparent;white-space:nowrap}
.btn-gold{background:var(--gold);color:#241505;border-color:var(--gold)}
.btn-gold:hover{background:var(--gold-bright);border-color:var(--gold-bright);text-decoration:none}
.btn-outline{background:transparent;border-color:var(--ash-dim);color:var(--ash)}
.btn-outline:hover{border-color:var(--turquoise);color:var(--turquoise);text-decoration:none}
.burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;background:transparent;border:1px solid var(--line);border-radius:4px}
.burger span{display:block;width:18px;height:2px;background:var(--gold);margin:0 auto}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.mobile-nav{position:fixed;inset:0 0 0 auto;width:min(300px,86vw);height:100vh;background:var(--card);border-left:2px solid var(--gold-deep);transform:translateX(100%);transition:transform .22s ease;z-index:60;display:flex;flex-direction:column;padding:18px;overflow-y:auto}
.mobile-nav.is-open{transform:translateX(0)}
.mobile-nav-top{display:flex;justify-content:flex-end;margin-bottom:16px}
.mobile-nav-close{background:transparent;border:1px solid var(--line);color:var(--ash);border-radius:4px;width:34px;height:34px}
.mobile-nav ul{display:flex;flex-direction:column;gap:2px;margin-bottom:18px}
.mobile-nav a{display:block;padding:10px 6px;color:var(--ash);font-weight:600;border-bottom:1px solid var(--line)}
.nav-scrim{position:fixed;inset:0;background:rgba(0,0,0,.5);opacity:0;pointer-events:none;transition:opacity .22s ease;z-index:50}
.nav-scrim.is-open{opacity:1;pointer-events:auto}

/* ---------- Hero: big-number banner ---------- */
.hero{background:radial-gradient(ellipse at top right,#2c2117 0%,var(--ink) 60%);padding:50px 0 40px;border-bottom:1px solid var(--line)}
.hero .container{text-align:center;max-width:760px}
.hero-eyebrow{color:var(--turquoise);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;margin:0 0 12px}
.hero-title{font-family:var(--font-display);font-size:clamp(1.9rem,4vw,2.9rem);line-height:1.16;margin:0 0 16px;color:var(--white)}
.hero-title em{color:var(--gold-bright);font-style:normal}
.hero-copy{color:var(--ash-dim);font-size:1.04rem;margin:0 auto 22px;max-width:56ch}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-bottom:16px}
.hero-note{font-size:.82rem;color:var(--ash-dim)}

/* ---------- Fork cards ---------- */
.fork-section{padding:44px 0;border-bottom:1px solid var(--line)}
.fork-head{text-align:center;max-width:64ch;margin:0 auto 30px}
.fork-tag{color:var(--turquoise);font-weight:700;text-transform:uppercase;letter-spacing:.07em;font-size:.76rem;margin:0 0 8px}
.fork-title{font-family:var(--font-display);font-size:1.7rem;margin:0 0 8px;color:var(--white)}
.fork-lede{color:var(--ash-dim);margin:0}
.fork-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.fork-card{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:var(--radius);padding:26px}
.fork-card.alt{border-top-color:var(--turquoise)}
.fork-card-k{font-family:var(--font-display);font-size:2rem;color:var(--gold-bright);margin:0 0 4px}
.fork-card.alt .fork-card-k{color:var(--turquoise)}
.fork-card-t{font-weight:700;color:var(--white);margin:0 0 10px;font-size:1.05rem}
.fork-card-d{color:var(--ash-dim);margin:0 0 14px;font-size:.94rem}
.fork-card ul{margin:0}
.fork-card li{padding-left:18px;position:relative;margin-bottom:6px;font-size:.9rem;color:var(--ash)}
.fork-card li::before{content:"—";position:absolute;left:0;color:var(--ash-dim)}

/* ---------- Timeline / steps ---------- */
.steps-section{padding:48px 0;border-bottom:1px solid var(--line)}
.steps-head{max-width:64ch;margin-bottom:30px}
.steps-tag{color:var(--turquoise);font-weight:700;text-transform:uppercase;letter-spacing:.07em;font-size:.76rem;margin:0 0 8px}
.steps-title{font-family:var(--font-display);font-size:1.6rem;margin:0 0 8px;color:var(--white)}
.steps-lede{color:var(--ash-dim);margin:0}
.timeline{position:relative;padding-left:36px;border-left:2px solid var(--line)}
.step{position:relative;padding-bottom:26px}
.step:last-child{padding-bottom:0}
.step-num{position:absolute;left:-49px;top:0;width:26px;height:26px;border-radius:50%;background:var(--gold);color:#241505;font-weight:800;font-size:.82rem;display:flex;align-items:center;justify-content:center}
.step-t{font-weight:700;color:var(--white);margin:0 0 4px;font-size:1rem}
.step-d{color:var(--ash-dim);margin:0;font-size:.92rem}

/* ---------- Callout box ---------- */
.callout{background:var(--card);border:1px solid var(--gold-deep);border-radius:var(--radius);padding:20px 24px;margin:0 0 20px}
.callout p{margin:0;color:var(--papyrus);font-size:.95rem}
.callout strong{color:var(--gold-bright)}

/* ---------- Article ---------- */
.article-wrap{padding:44px 0 20px}
.article{max-width:72ch;margin:0 auto}
.article h1{font-family:var(--font-display);font-size:clamp(1.7rem,3vw,2.2rem);line-height:1.2;color:var(--white);margin:0 0 18px}
.article h2{font-family:var(--font-display);font-size:1.32rem;color:var(--gold-bright);margin:34px 0 12px}
.article h3{font-size:1.05rem;color:var(--turquoise);margin:22px 0 8px}
.article p{margin:0 0 14px;color:var(--ash)}
.article a{text-decoration:underline}
.article ul{margin:0 0 16px 0;padding-left:0}
.article li{padding-left:20px;position:relative;margin-bottom:8px;color:var(--ash)}
.article li::before{content:"•";position:absolute;left:2px;color:var(--gold);font-size:1rem;top:-1px}
.article table{width:100%;border-collapse:collapse;margin:0 0 20px}
.article th,.article td{border:1px solid var(--line);padding:9px 12px;text-align:left;font-size:.94rem}
.article th{background:var(--card);color:var(--gold-bright)}

/* ---------- FAQ ---------- */
.faq-block{margin-top:8px}
.faq-item{border-bottom:1px solid var(--line)}
.faq-toggle{width:100%;text-align:left;background:transparent;border:none;color:var(--white);font-weight:700;font-size:1rem;padding:14px 26px 14px 0;position:relative}
.faq-toggle::after{content:"+";position:absolute;right:0;top:12px;color:var(--gold);font-size:1.2rem}
.faq-toggle[aria-expanded="true"]::after{content:"–"}
.faq-panel{max-height:0;overflow:hidden;transition:max-height .22s ease}
.faq-panel[data-open="true"]{max-height:400px}
.faq-panel p{color:var(--ash-dim);padding-bottom:14px}

/* ---------- Trust band ---------- */
.trust-band{background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0}
.trust-band .container{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.trust-band p{margin:0;max-width:60ch;color:var(--ash-dim)}

/* ---------- Footer ---------- */
.site-footer{background:var(--ink-2);border-top:2px solid var(--gold-deep);padding:36px 0 22px;margin-top:20px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:26px;margin-bottom:22px}
.footer-brand img{height:26px;margin-bottom:10px}
.footer-brand p{color:var(--ash-dim);font-size:.88rem;max-width:36ch}
.footer-h{color:var(--gold-bright);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px}
.footer-col ul li{margin-bottom:6px}
.footer-col a{color:var(--ash-dim);font-size:.92rem}
.footer-pay{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.footer-badge{border-radius:6px}
.footer-bottom{border-top:1px solid var(--line);padding-top:16px}
.footer-rg{color:var(--ash-dim);font-size:.82rem;margin:0 0 8px}
.footer-legal{color:var(--ash-dim);font-size:.8rem;margin:0}

@media (max-width:760px){
  .desktop-nav{display:none}
  .burger{display:flex}
  .fork-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
}
