/* Non-critical styles. Critical above-the-fold CSS is inlined in each page's <head> (see src/critical.css). */
.section{padding:2.25rem 0}
.split{display:grid;gap:1.5rem}
.split>*{min-width:0}
@media (min-width:56rem){.split{grid-template-columns:1fr 1fr;align-items:start}}
.btn-outline{background:transparent;color:var(--purple);border-color:var(--purple)}
.btn-outline:hover{background:var(--purple);border-color:var(--purple);color:#fff}
.panel{background:var(--tint);border-left:4px solid var(--purple);border-radius:0 var(--r) var(--r) 0;padding:1.25rem 1.25rem .25rem}
.terms-link{margin-top:.25rem}
.terms-link .btn{white-space:normal}
.cards{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));list-style:none;margin:0;padding:0}
.card a{display:flex;flex-direction:column;align-items:flex-start;height:100%;background:var(--white);border-radius:var(--r);box-shadow:var(--shadow);padding:1.25rem;color:var(--ink);text-decoration:none;transition:transform .15s,box-shadow .15s}
.card a:hover{transform:translateY(-2px);box-shadow:0 2px 6px rgba(46,20,97,.08),0 14px 32px rgba(46,20,97,.14)}
.card-stat{font:italic 800 1.9rem/1 var(--head);color:var(--gold);background:var(--purple);border-radius:12px;padding:.5rem .8rem;margin-bottom:.85rem}
.card-stat.long{font-size:1.4rem}
.card h3{margin-bottom:.35rem}
.card p{color:var(--muted);flex:1}
.ticks{list-style:none;padding:0;margin:0 0 1rem}
.ticks li{position:relative;padding-left:1.75rem;margin-bottom:.65rem}
.ticks li::before{content:"";position:absolute;left:.2rem;top:.5em;width:.75rem;height:.4rem;border-left:2.5px solid var(--purple2);border-bottom:2.5px solid var(--purple2);transform:rotate(-45deg)}
.example{background:#FFF7DD;border-left:4px solid var(--gold);border-radius:0 var(--r) var(--r) 0;padding:.9rem 1.1rem;margin:0 0 1rem}
.formula{font:600 .95rem/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--white);border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem;margin:0 0 1rem;overflow-x:auto}
.note{color:var(--muted);font-size:.95rem}
.prizes{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.6rem;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr))}
.prizes li{text-wrap:balance;background:var(--white);box-shadow:var(--shadow);border-radius:12px;padding:.85rem 1rem;font:800 1.05rem/1.3 var(--head);color:var(--purple);text-align:center}
.prizes li:first-child{grid-column:1/-1;background:var(--purple);color:var(--gold);font-size:1.4rem;font-style:italic}
.steps{list-style:none;counter-reset:s;padding:0;margin:0 0 1rem;display:grid;gap:.75rem}
.steps li{counter-increment:s;position:relative;background:var(--white);box-shadow:var(--shadow);border-radius:var(--r);padding:1rem 1rem 1rem 3.75rem;min-height:3.5rem}
.steps li::before{content:counter(s);position:absolute;left:1rem;top:.85rem;width:2rem;height:2rem;border-radius:50%;background:var(--gold);color:var(--purple);font:800 1rem/2rem var(--head);text-align:center}
.faq{display:grid;gap:.75rem}
.faq-item{background:var(--white);box-shadow:var(--shadow);border-radius:var(--r);padding:1rem 1.25rem}
.faq-q{font-size:1.1rem;margin:0 0 .5rem}
.faq-a p{margin:0;color:var(--muted)}
.js .faq-item{padding:0}
.js .faq-q{margin:0}
.faq-toggle{all:unset;box-sizing:border-box;display:flex;justify-content:space-between;gap:1rem;width:100%;padding:1rem 1.25rem;cursor:pointer;font:inherit;color:var(--purple)}
.faq-toggle::after{content:"+";color:var(--purple2);font-size:1.4rem;line-height:1}
.faq-toggle[aria-expanded=true]::after{content:"\2212"}
.faq-toggle:focus-visible{outline:3px solid var(--purple2);outline-offset:-3px;border-radius:var(--r)}
.js .faq-a{padding:0 1.25rem 1rem}
.cta-band{text-align:center;background:var(--top);padding:2.5rem 0}
.cta-band .btn{width:100%;max-width:26rem}
.related h2{font-size:1.25rem}
.related ul{list-style:none;margin:0;padding:0;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}
.related a{display:block;height:100%;padding:.9rem 1rem;background:var(--white);box-shadow:var(--shadow);border-radius:12px;text-decoration:none;color:var(--purple)}
.related a:hover{box-shadow:0 0 0 2px var(--purple2)}
.related strong{font-family:var(--head);font-weight:800}
.related span{display:block;font-size:.875rem;color:var(--muted);margin-top:.2rem}
.site-footer{background:var(--top);padding:2rem 0 2.5rem;font-size:.9rem;color:var(--on-dark-muted)}
.site-footer .logo{font-size:1.4rem}
.official{font-weight:700;color:#fff;margin:.75rem 0 1rem}
.foot-nav ul{list-style:none;margin:0 0 1.25rem;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1rem}
.foot-nav a{color:#E6DFF5}
.rg{border-top:1px solid rgba(255,255,255,.15);padding-top:1rem;color:#fff}
