@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');

:root { --ink:#11131a; --ink-soft:#1a1d28; --paper:#f7f4ee; --sand:#ece7dc; --mist:#f2f0eb; --cream:#fffdf8; --lime:#d8f06f; --lime-dark:#abc846; --coral:#ff786b; --violet:#9e8bff; --muted:#6c6e78; --line:rgba(17,19,26,.12); --white-line:rgba(255,255,255,.15); --radius:22px; --container:1160px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:'Manrope',system-ui,sans-serif; line-height:1.55; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button, a { -webkit-tap-highlight-color:transparent; }
button { font:inherit; }
.container { width:min(calc(100% - 48px),var(--container)); margin:0 auto; }
.skip-link { position:absolute; left:16px; top:-100px; z-index:99; background:var(--lime); color:var(--ink); padding:12px 16px; border-radius:8px; font-weight:800; }
.skip-link:focus { top:16px; }
.top-strip { min-height:32px; padding:6px 30px; display:flex; align-items:center; justify-content:space-between; background:#090a0e; color:#bdc0c8; font:500 10px/1 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }
.top-strip p { margin:0; }
.status-dot { display:inline-block; width:6px; height:6px; margin-right:8px; background:var(--lime); border-radius:50%; box-shadow:0 0 0 4px rgba(216,240,111,.12); }
.site-header { position:sticky; top:0; z-index:20; background:rgba(17,19,26,.94); border-bottom:1px solid var(--white-line); color:#fff; backdrop-filter:blur(16px); }
.nav-wrap { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.brand { display:inline-flex; align-items:center; gap:10px; color:#fff; font-family:'Space Grotesk',sans-serif; font-size:18px; font-weight:600; letter-spacing:-.05em; line-height:.85; }
.brand img { flex:none; width:42px; height:42px; }
.brand span { position:relative; display:block; }
.brand strong { color:var(--lime); font-weight:600; }
.brand small { display:block; margin-top:8px; color:#8d909a; font:500 8px/1 'DM Mono',monospace; letter-spacing:.28em; }
.primary-nav { display:flex; align-items:center; gap:28px; color:#c3c5cc; font-size:12px; font-weight:700; }
.primary-nav a { transition:color .2s ease; }
.primary-nav a:not(.nav-cta):hover { color:var(--lime); }
.nav-cta { padding:12px 17px; background:var(--lime); color:var(--ink); border-radius:100px; font-size:11px; }
.nav-cta span { margin-left:8px; font-size:14px; }
.menu-toggle { display:none; border:0; background:transparent; color:white; padding:8px; }
.menu-toggle span { display:block; width:22px; height:2px; margin:4px; background:#fff; border-radius:2px; }
.section-dark { position:relative; overflow:hidden; background:var(--ink); color:#fff; }
.hero { min-height:600px; padding:92px 0 22px; }
.hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1.06fr .94fr; align-items:center; gap:58px; }
.hero-copy { padding:12px 0 34px; }
.eyebrow { display:flex; align-items:center; gap:12px; margin:0 0 25px; color:var(--lime); font:500 10px/1.1 'DM Mono',monospace; letter-spacing:.13em; text-transform:uppercase; }
.eyebrow--dark { color:#65731f; }
.eyebrow-line { width:33px; height:1px; display:inline-block; background:currentColor; opacity:.8; }
h1,h2,h3,p { margin-top:0; }
h1,h2,h3 { font-family:'Space Grotesk',sans-serif; letter-spacing:-.07em; }
h1 { max-width:650px; margin-bottom:25px; font-size:clamp(48px,6.2vw,82px); line-height:.98; font-weight:600; }
h1 em,h2 em { color:var(--lime); font-style:normal; }
.hero-text { max-width:530px; margin-bottom:32px; color:#b9bbc4; font-size:16px; line-height:1.7; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:49px; padding:0 21px; border-radius:100px; font-size:12px; font-weight:800; transition:transform .2s ease, box-shadow .2s ease, background .2s ease; }
.button:hover { transform:translateY(-2px); box-shadow:0 12px 25px rgba(0,0,0,.14); }
.button-primary { background:var(--lime); color:var(--ink); }
.button-primary:hover { background:#e4fa88; }
.button-ghost { border:1px solid var(--white-line); color:#eef0f5; }
.button-ghost:hover { border-color:var(--lime); color:var(--lime); }
.micro-note { margin:16px 0 0; color:#7f828e; font:10px/1.4 'DM Mono',monospace; letter-spacing:.03em; }
.micro-note span { color:var(--lime); }
.hero-art { position:relative; min-height:430px; display:grid; place-items:center; }
.hero-art:before { content:''; position:absolute; width:355px; height:355px; border:1px solid rgba(216,240,111,.15); border-radius:50%; }
.orb { position:absolute; border-radius:50%; filter:blur(1px); }
.orb--large { width:290px; height:290px; background:radial-gradient(circle at 35% 28%,rgba(216,240,111,.22),rgba(158,139,255,.08) 48%,transparent 70%); }
.orb--small { width:150px; height:150px; transform:translate(115px,-125px); background:radial-gradient(circle,rgba(255,120,107,.4),transparent 68%); }
.ticket-card { position:absolute; width:310px; min-height:226px; padding:22px; border-radius:20px; box-shadow:0 24px 55px rgba(0,0,0,.33); }
.ticket-card--back { transform:translate(45px,-35px) rotate(9deg); background:#8e78f3; opacity:.55; }
.ticket-card--back span { display:inline-block; margin:8px; color:rgba(17,19,26,.45); font:700 20px 'Space Grotesk',sans-serif; }
.ticket-card--front { z-index:2; transform:rotate(-7deg); background:linear-gradient(145deg,#fffdf4,#dfe9c0); color:var(--ink); }
.ticket-card__top,.ticket-card__bottom { display:flex; justify-content:space-between; align-items:center; font:700 10px 'DM Mono',monospace; letter-spacing:.12em; }
.ticket-card__top { padding-bottom:17px; border-bottom:1px dashed rgba(17,19,26,.22); }
.ticket-card__top span:first-child { color:#5d6b20; font-size:13px; }
.ticket-card__bottom { padding-top:16px; color:#6b6e76; font-size:8px; }
.number-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:7px; padding:20px 2px 10px; }
.number-grid b { display:grid; place-items:center; width:39px; height:39px; border:1px solid rgba(17,19,26,.13); border-radius:9px; font:600 15px 'Space Grotesk',sans-serif; }
.number-grid .marked { background:var(--coral); color:#fff; border-color:var(--coral); box-shadow:0 5px 10px rgba(255,120,107,.25); }
.coin { position:absolute; z-index:3; display:grid; place-items:center; border-radius:50%; font:700 21px 'Space Grotesk',sans-serif; }
.coin--one { width:63px; height:63px; transform:translate(153px,133px); background:var(--lime); color:var(--ink); border:6px solid #efffa9; box-shadow:0 10px 20px rgba(0,0,0,.25); }
.coin--two { width:43px; height:43px; transform:translate(-190px,-123px); background:var(--coral); color:#fff; border:4px solid #ffb3a8; box-shadow:0 10px 20px rgba(0,0,0,.22); }
.spark { position:absolute; color:var(--lime); font-size:27px; }
.spark--one { transform:translate(198px,-155px); }
.spark--two { transform:translate(-183px,147px); color:var(--coral); font-size:18px; }
.hero-glow { position:absolute; width:520px; height:520px; border-radius:50%; opacity:.22; filter:blur(40px); }
.hero-glow--one { top:-250px; left:-220px; background:var(--violet); }
.hero-glow--two { right:-230px; bottom:-320px; background:var(--coral); }
.hero-footer { position:relative; z-index:1; display:flex; align-items:center; gap:15px; color:#70737f; font:500 9px 'DM Mono',monospace; letter-spacing:.14em; }
.hero-footer-line { width:50px; height:1px; background:#4f525d; }
.trust-bar { background:var(--lime); color:var(--ink); }
.trust-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:22px; padding:20px 0; }
.trust-item { display:flex; align-items:center; gap:12px; }
.trust-icon { display:grid; place-items:center; width:27px; height:27px; color:var(--ink); border:1px solid rgba(17,19,26,.35); border-radius:50%; font-size:13px; }
.trust-item strong,.trust-item small { display:block; }
.trust-item strong { font:700 11px/1.2 'Space Grotesk',sans-serif; letter-spacing:-.02em; }
.trust-item small { margin-top:3px; font-size:10px; opacity:.7; }
.section { padding:115px 0; }
.section-light { background:var(--paper); }
.section-sand { background:var(--sand); }
.section-heading { margin-bottom:58px; }
.section-heading h2,.faq-title h2,.responsible-section h2,.final-cta h2 { margin-bottom:0; font-size:clamp(39px,5vw,62px); line-height:1.02; font-weight:600; }
.section-heading h2 em,.faq-title h2 em { color:#747f30; }
.split-heading { display:flex; justify-content:space-between; align-items:end; gap:60px; }
.section-intro { max-width:375px; margin:0 0 2px; color:var(--muted); font-size:14px; line-height:1.75; }
.category-layout { display:grid; grid-template-columns:.92fr 1.08fr; gap:20px; }
.category-stack { display:grid; gap:20px; }
.category-card { position:relative; overflow:hidden; border:1px solid var(--line); border-radius:var(--radius); background:var(--cream); transition:transform .25s ease,box-shadow .25s ease; }
.category-card:hover { transform:translateY(-4px); box-shadow:0 18px 35px rgba(17,19,26,.08); }
.category-card--featured { min-height:488px; padding:31px; background:var(--ink); color:#fff; }
.category-card--featured:after { content:''; position:absolute; right:-100px; bottom:-145px; width:300px; height:300px; border:1px solid rgba(216,240,111,.23); border-radius:50%; box-shadow:0 0 0 36px rgba(216,240,111,.04),0 0 0 72px rgba(216,240,111,.03); }
.category-card__number { position:absolute; top:26px; right:28px; color:#90939d; font:500 11px 'DM Mono',monospace; }
.category-card--featured .category-card__number { color:#8d909c; }
.category-icon { display:grid; grid-template-columns:repeat(3,1fr); gap:6px; width:116px; margin:57px 0 78px; transform:rotate(-7deg); }
.category-icon span { display:grid; place-items:center; height:34px; border:1px solid rgba(216,240,111,.5); border-radius:8px; color:var(--lime); font:600 14px 'Space Grotesk',sans-serif; }
.category-icon span:nth-child(2) { background:var(--lime); color:var(--ink); }
.card-kicker { margin-bottom:9px; color:#7f8c32; font:500 9px 'DM Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }
.category-card--featured .card-kicker { color:var(--lime); }
.category-card h3 { margin-bottom:10px; font-size:31px; line-height:1; }
.category-card p:not(.card-kicker) { max-width:310px; margin-bottom:20px; color:#7a7c85; font-size:13px; line-height:1.65; }
.category-card--featured p:not(.card-kicker) { color:#b6b8c0; }
.category-card a,.text-link { color:#667526; font-size:11px; font-weight:800; }
.category-card--featured a { color:var(--lime); }
.category-card a span { margin-left:6px; font-size:15px; }
.category-card--compact { display:grid; grid-template-columns:55px 70px 1fr; align-items:center; gap:16px; min-height:149px; padding:25px 28px; }
.category-card--compact .category-card__number { position:static; align-self:start; }
.category-card--compact h3 { margin-bottom:7px; font-size:23px; }
.category-card--compact p:not(.card-kicker) { max-width:400px; margin-bottom:10px; font-size:12px; }
.compact-icon { display:grid; place-items:center; width:53px; height:53px; border-radius:16px; background:#dbef82; color:#56631e; font-size:25px; }
.compact-icon--pink { background:#ffd1ca; color:#e56b5e; }
.compact-icon--blue { background:#d7d0ff; color:#7162dd; }
.statement-section { padding:98px 0; background:var(--ink-soft); color:#fff; }
.statement-grid { display:grid; grid-template-columns:110px 1fr; gap:35px; align-items:start; max-width:930px; }
.statement-mark { color:var(--coral); font:700 145px/.7 'Space Grotesk',sans-serif; letter-spacing:-.16em; }
.statement-section blockquote { max-width:830px; margin:0 0 27px; font:500 clamp(28px,4vw,48px)/1.17 'Space Grotesk',sans-serif; letter-spacing:-.06em; }
.statement-credit { margin:0; color:#888b95; font:10px 'DM Mono',monospace; letter-spacing:.08em; text-transform:uppercase; }
.statement-credit span { padding:0 8px; color:var(--lime); }
.centered-heading { text-align:center; }
.centered-heading .eyebrow { justify-content:center; }
.centered-heading .section-intro { max-width:520px; margin:20px auto 0; }
.steps-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:17px; }
.step-card { min-height:280px; padding:31px; border:1px solid rgba(17,19,26,.12); border-radius:var(--radius); background:rgba(255,253,248,.62); }
.step-card--accent { background:var(--lime); border-color:var(--lime); }
.step-number { display:block; margin-bottom:39px; color:#8e9199; font:500 10px 'DM Mono',monospace; }
.step-symbol { margin-bottom:22px; color:#6a7927; font:400 34px/1 'Space Grotesk',sans-serif; }
.step-card h3 { margin-bottom:9px; font-size:25px; }
.step-card p { margin:0; color:#72747c; font-size:12px; line-height:1.7; }
.step-card--accent p { color:#4d541f; }
.responsible-section { padding:105px 0; background:#ccdca0; }
.responsible-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:80px; }
.responsible-section h2 { color:var(--ink); }
.responsible-section h2 em { color:#687726; }
.responsible-section .eyebrow { color:#687726; }
.responsible-section> .container>div:first-child>p:not(.eyebrow) { max-width:520px; margin:25px 0; color:#505a2a; font-size:14px; line-height:1.8; }
.text-link { display:inline-flex; align-items:center; gap:9px; border-bottom:1px solid rgba(17,19,26,.33); padding-bottom:5px; }
.text-link span { font-size:18px; }
.responsible-note { display:flex; align-items:center; gap:24px; padding:30px; border:1px solid rgba(17,19,26,.17); border-radius:var(--radius); background:rgba(255,253,248,.4); }
.responsible-note__icon { display:grid; place-items:center; flex:none; width:82px; height:82px; border:2px solid var(--ink); border-radius:50%; font:700 27px 'Space Grotesk',sans-serif; }
.responsible-note__icon span { font-size:14px; align-self:end; margin:0 0 19px 2px; }
.responsible-note h3 { margin-bottom:8px; font-size:22px; }
.responsible-note p { margin:0; color:#59632f; font-size:12px; line-height:1.7; }
.faq-layout { display:grid; grid-template-columns:.78fr 1.22fr; gap:100px; align-items:start; }
.faq-title>p:not(.eyebrow) { max-width:300px; margin-top:24px; color:var(--muted); font-size:13px; line-height:1.7; }
.faq-list { border-top:1px solid var(--line); }
details { border-bottom:1px solid var(--line); }
summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px 0; list-style:none; cursor:pointer; font:600 15px 'Space Grotesk',sans-serif; letter-spacing:-.02em; }
summary::-webkit-details-marker { display:none; }
summary span { display:grid; place-items:center; width:25px; height:25px; border:1px solid rgba(17,19,26,.2); border-radius:50%; color:#747f30; font:400 18px/1 'Manrope',sans-serif; transition:transform .2s ease,background .2s ease; }
details[open] summary span { transform:rotate(45deg); background:var(--lime); border-color:var(--lime); }
details p { max-width:600px; margin:-5px 40px 22px 0; color:var(--muted); font-size:13px; line-height:1.7; }
.final-cta { padding:108px 0 112px; text-align:center; }
.final-cta__pattern { position:absolute; inset:0; opacity:.13; background-image:linear-gradient(135deg,transparent 48%,rgba(216,240,111,.25) 49%,transparent 51%),linear-gradient(45deg,transparent 48%,rgba(216,240,111,.12) 49%,transparent 51%); background-size:120px 120px; }
.final-cta-content { position:relative; z-index:1; }
.final-cta .eyebrow { justify-content:center; }
.final-cta h2 { margin-bottom:20px; }
.final-cta h2 em { color:var(--lime); }
.final-cta p:not(.eyebrow) { max-width:470px; margin:0 auto 28px; color:#a2a5af; font-size:14px; }
.final-cta small { display:block; max-width:480px; margin:17px auto 0; color:#737681; font:10px 'DM Mono',monospace; line-height:1.5; }
.site-footer { background:#090a0e; color:#fff; }
.footer-top { display:grid; grid-template-columns:1.45fr .8fr .8fr 1.1fr; gap:54px; padding:64px 0 55px; }
.footer-brand>p { max-width:230px; margin:22px 0 0; color:#777a85; font-size:12px; line-height:1.7; }
.footer-column { display:flex; flex-direction:column; align-items:flex-start; gap:11px; }
.footer-column h3 { margin-bottom:8px; color:#fff; font-size:13px; letter-spacing:0; }
.footer-column>a,.footer-column>p { margin:0; color:#7e818d; font-size:11px; line-height:1.65; }
.footer-column>a:hover { color:var(--lime); }
.footer-column--note>p { max-width:220px; }
.age-badge { display:flex; align-items:center; gap:9px; margin-top:8px!important; color:#bdca6c!important; font-weight:700; }
.age-badge:first-letter { font-size:18px; }
.age-badge span { color:#777a85; font-weight:400; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding:19px 0; border-top:1px solid #23252d; color:#5f626d; font:9px 'DM Mono',monospace; letter-spacing:.04em; }

@media (max-width:900px) { .hero-grid { grid-template-columns:1fr; gap:0; } .hero { padding-top:70px; } .hero-copy { padding-bottom:0; } .hero-art { min-height:380px; margin-top:-12px; } .trust-grid { grid-template-columns:repeat(2,1fr); } .split-heading { align-items:start; flex-direction:column; gap:22px; } .category-layout { grid-template-columns:1fr; } .category-card--featured { min-height:430px; } .faq-layout { gap:55px; } .footer-top { grid-template-columns:1.3fr 1fr 1fr; } .footer-column--note { grid-column:1/-1; } }
@media (max-width:680px) { .container { width:min(calc(100% - 34px),var(--container)); } .top-strip { padding:6px 17px; } .top-strip__right { display:none; } .nav-wrap { min-height:68px; } .menu-toggle { display:block; } .primary-nav { position:absolute; top:68px; right:17px; left:17px; display:none; flex-direction:column; align-items:stretch; gap:0; padding:10px; border:1px solid var(--white-line); border-radius:15px; background:#191b24; box-shadow:0 18px 40px rgba(0,0,0,.35); } .primary-nav.is-open { display:flex; } .primary-nav a { padding:14px 13px; } .nav-cta { text-align:center; margin-top:5px; } .hero { min-height:0; padding:65px 0 15px; } h1 { font-size:clamp(45px,14vw,68px); } .hero-text { font-size:14px; } .hero-actions { align-items:stretch; flex-direction:column; } .button { width:100%; } .hero-art { transform:scale(.8); min-height:305px; margin:-17px -30px -4px; } .hero-footer { gap:9px; font-size:7px; } .hero-footer-line { width:22px; } .trust-grid { gap:17px 10px; padding:18px 0; } .trust-item { gap:8px; } .trust-item strong { font-size:10px; } .trust-item small { font-size:8px; } .section { padding:75px 0; } .section-heading { margin-bottom:35px; } .section-heading h2,.faq-title h2,.responsible-section h2,.final-cta h2 { font-size:42px; } .category-card--featured { padding:26px; } .category-icon { margin:50px 0 60px; } .category-card--compact { grid-template-columns:42px 52px 1fr; gap:11px; padding:20px 17px; } .category-card--compact .category-card__number { font-size:9px; } .category-card--compact h3 { font-size:19px; } .category-card--compact p:not(.card-kicker) { font-size:11px; } .compact-icon { width:43px; height:43px; border-radius:12px; font-size:20px; } .statement-section { padding:75px 0; } .statement-grid { grid-template-columns:48px 1fr; gap:13px; } .statement-mark { font-size:74px; } .statement-section blockquote { font-size:29px; } .steps-grid { grid-template-columns:1fr; gap:12px; } .step-card { min-height:0; padding:26px; } .step-number { margin-bottom:24px; } .responsible-section { padding:76px 0; } .responsible-grid { grid-template-columns:1fr; gap:39px; } .responsible-note { align-items:flex-start; padding:21px; } .responsible-note__icon { width:66px; height:66px; font-size:22px; } .responsible-note__icon span { margin-bottom:15px; } .responsible-note h3 { font-size:19px; } .faq-layout { grid-template-columns:1fr; gap:40px; } .faq-title>p:not(.eyebrow) { max-width:100%; } summary { font-size:14px; } details p { margin-right:10px; } .final-cta { padding:78px 0; } .footer-top { grid-template-columns:1fr 1fr; gap:40px 22px; padding:48px 0 42px; } .footer-brand { grid-column:1/-1; } .footer-column--note { grid-column:1/-1; } .footer-bottom { flex-direction:column; gap:9px; font-size:8px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*:before,*:after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; } }
.reveal-ready { opacity:0; transform:translateY(10px); transition:opacity .6s ease,transform .6s ease; }
.reveal-ready.is-visible { opacity:1; transform:none; }
