:root{color-scheme:dark;--bg:#160d26;--panel:#231437;--panel-deep:#1b102e;--brand:#660ec8;--deep:#290f51;--lav:#eee8ff;--text:#f5efff;--muted:#bcb0ce;--line:#48305f;--yellow:#f4db88;--mint:#ade0cc;--accent:#bd96ff;--radius:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button,summary{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.12;letter-spacing:-.04em}p{overflow-wrap:break-word}.wrap{width:min(1120px,calc(100% - 40px));margin-inline:auto}.section{padding-block:58px}.eyebrow{font:700 11px/1.5 Consolas,"Courier New",monospace;letter-spacing:.12em;color:var(--accent);margin-bottom:15px}.yellow{color:var(--yellow)}.skip-link{position:fixed;top:-100px;background:var(--yellow);color:var(--bg);padding:12px;z-index:30}.skip-link:focus{top:4px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}.topline{min-height:33px;display:flex;align-items:center;justify-content:center;gap:10px;background:#291245;font-size:11px;color:#dfceed}.status-dot{display:inline-block;width:7px;height:7px;background:var(--mint);border-radius:50%}.header{position:sticky;top:0;z-index:10;background:#160d26f5;border-bottom:1px solid #ffffff10;backdrop-filter:blur(12px)}.nav{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative}.brand{display:flex;align-items:center;gap:9px;flex-shrink:0;font-weight:800;font-size:18px;line-height:1.1;letter-spacing:-.04em}.brand img{width:42px}.brand small{display:block;letter-spacing:.16em;font-size:9px;text-transform:uppercase;color:var(--accent);margin-top:5px}.menu-toggle{border:1px solid var(--line);border-radius:8px;padding:9px 12px;background:var(--panel);color:var(--lav);display:flex;gap:12px;align-items:center;min-height:44px;font-size:12px}.nav-links{display:none;position:absolute;top:74px;left:-20px;right:-20px;background:var(--panel-deep);border-bottom:1px solid var(--line);padding:18px 20px;flex-direction:column;gap:7px}.nav-links.is-open{display:flex}.nav-links>a:not(.btn){padding:10px 5px;color:var(--muted);font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:54px;padding:15px 20px;border:1px solid #ceecab;border-radius:11px;background:var(--mint);color:#172923;box-shadow:0 4px 0 #537e6d;font:800 14px/1.4 "Trebuchet MS",sans-serif;text-align:center;transition:transform .18s,box-shadow .18s;cursor:pointer}.btn:hover{transform:translateY(-2px);box-shadow:0 6px 0 #537e6d}.btn:active{transform:translateY(2px);box-shadow:0 2px 0 #537e6d}.btn>span{font-size:20px}.hero{display:grid;gap:40px;padding-block:42px 48px}.hero-copy{min-width:0}h1{font-size:clamp(44px,11vw,66px);font-weight:900;line-height:1.04;letter-spacing:-.055em}h1>span{color:var(--accent)}.hero .eyebrow{color:var(--yellow)}.lead{font-size:16px;line-height:1.7;color:var(--muted);margin-block:22px 27px;max-width:435px}.hero-copy>.btn{width:100%}.underlink{display:block;font-size:13px;color:#d6c7e7;margin-top:20px;text-align:center;text-decoration:underline;text-underline-offset:5px}.hero-art{position:relative;padding:8px 7px 28px}.window{border:1px solid #9873c3;border-radius:12px;overflow:hidden;background:var(--panel);box-shadow:6px 7px 0 #090510}.windowbar{height:37px;padding:0 13px;background:#492076;display:flex;justify-content:space-between;align-items:center;font:11px Consolas,"Courier New",monospace;color:#eee0ff;border-bottom:1px solid #9873c3}.windowbar>span:first-child{display:flex;gap:8px;align-items:center}.tiny-square{width:9px;height:9px;background:var(--yellow)}.window-controls{letter-spacing:5px}.mascot-stage{position:relative;display:grid;place-items:center;min-height:275px;background-color:#290f51;background-image:linear-gradient(#c394ff12 1px,transparent 1px),linear-gradient(90deg,#c394ff12 1px,transparent 1px);background-size:24px 24px;padding:40px 20px}.mascot{width:178px;filter:drop-shadow(0 12px 0 #150624);transform:rotate(-7deg);animation:bob 5s ease-in-out infinite}.stage-label{position:absolute;top:19px;left:18px;background:var(--lav);color:var(--deep);padding:4px 9px;font:700 9px Consolas,monospace;transform:rotate(-5deg)}.sticker{position:absolute;bottom:24px;right:12px;border:1px solid #e6e0fb;background:var(--yellow);color:#342345;padding:7px 12px;transform:rotate(6deg);font-size:12px;font-weight:800;border-radius:6px;box-shadow:3px 3px 0 #100622}.stage-star{position:absolute;color:var(--yellow);font-size:30px;line-height:1}.s1{left:24px;bottom:45px}.s2{right:26px;top:58px;color:var(--mint);font-size:38px}.s3{left:52%;top:17px;color:#c899ff;font:22px monospace}.window-footer{display:flex;gap:12px;justify-content:space-between;padding:11px 13px;font:9px/1.4 Consolas,monospace;color:#d5c5e4;background:#1d102e}.window-footer>span:first-child{display:flex;align-items:center;gap:7px}.floating-star{position:absolute;color:var(--yellow);z-index:1;line-height:1}.star-one{top:-8px;right:-5px;font-size:30px;transform:rotate(16deg)}.star-two{bottom:15px;left:-8px;font-size:35px;color:var(--accent)}.mini-window{position:absolute;right:20px;bottom:0;display:flex;align-items:center;gap:12px;padding:10px 15px;border:1px solid #765191;border-radius:9px;background:#322045;box-shadow:4px 4px 0 #090510;transform:rotate(-3deg)}.mini-window>span:first-child{color:var(--mint);font-size:28px}.mini-window p{font-size:12px;font-weight:bold;line-height:1.4}.mini-window small{display:block;color:var(--muted);font-size:10px;font-weight:normal}.mini-star{color:var(--yellow);font-size:22px;padding-left:12px}.ticker{border-block:1px solid var(--line);background:#1e1031}.ticker>div{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 18px;padding-block:17px;font:10px Consolas,monospace;letter-spacing:.1em;color:#d3b9f4}.ticker b{color:var(--yellow)}h2{font-size:clamp(30px,7.5vw,44px);font-weight:800}.section-heading{margin-bottom:28px}.course-grid{display:grid;gap:20px}.art-card,.soon-card{border:1px solid var(--line);border-radius:var(--radius);padding:25px}.art-card{background:linear-gradient(135deg,#381656,#231437);position:relative}.card-label{display:flex;align-items:center;justify-content:space-between}.card-label>span:last-child{color:var(--yellow);font-size:30px}.pill{display:inline-block;border:1px solid #a985ce;border-radius:5px;font:9px/1.5 Consolas,monospace;padding:5px 9px;letter-spacing:.08em;color:#ead4ff}.art-card h3{font-size:34px;margin:24px 0 16px}.art-card p,.soon-card p{font-size:15px;color:#c8b8d9;line-height:1.75}.course-meta{display:flex;flex-wrap:wrap;gap:7px;margin:24px 0}.course-meta span{background:#ffffff09;padding:5px 9px;border-radius:4px;font-size:11px;color:#d7cae5}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:13px;font-weight:bold;color:var(--mint);padding-block:7px}.soon-card{background:#1b122a;border-style:dashed;position:relative}.soon-icon{display:block;font-size:30px;margin-bottom:22px}.muted-pill{position:absolute;right:24px;top:26px;border-color:#5a466f;color:var(--muted)}.soon-card h3{font-size:25px;margin-bottom:15px}.loading-label{display:block;font:10px Consolas,monospace;letter-spacing:.06em;color:#a89bb9;margin-top:24px}.loading-label>span{color:var(--accent);margin-right:7px}.journey-section{background:#1b102b;border-block:1px solid #ffffff08}.split>p{color:var(--muted);font-size:14px;margin-top:20px}.hint{font-size:12px;display:inline-block;margin-top:8px;color:var(--mint)}.level-window{box-shadow:5px 6px 0 #0f081b}.level-intro{display:flex;justify-content:space-between;gap:12px;padding:17px 16px;border-bottom:1px solid #443052;font:10px/1.4 Consolas,monospace;color:#c5b0df}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.level-bottom{display:flex;align-items:center;justify-content:center;gap:10px;color:#bcacd0;font-size:10px;padding:15px}.level-bottom>span{color:var(--yellow)}.quick-cta{margin-block:48px 0;padding:28px 24px;display:flex;flex-direction:column;gap:18px;border:1px solid #725091;background:#302044;border-radius:16px;text-align:center}.quick-cta h2{font-size:26px}.quick-cta p{color:var(--muted);font-size:14px;margin-top:7px}.cta-star{font-size:30px;color:var(--yellow);line-height:1}.quick-cta .btn{width:100%}.class-grid{display:grid;gap:28px}.body-copy{font-size:15px;color:var(--muted);margin-top:23px;max-width:435px}.lesson-notes{border:1px solid var(--line);padding:5px 22px;border-radius:12px;background:var(--panel-deep)}.lesson-notes article{display:flex;gap:18px;padding:23px 0}.lesson-notes article+article{border-top:1px solid var(--line)}.lesson-notes article>span{color:var(--accent);font:14px Consolas,monospace;padding-top:4px}.lesson-notes h3{font-size:17px;letter-spacing:-.02em}.lesson-notes p{color:var(--muted);font-size:13px;margin-top:8px}.faq{padding-top:8px}.faq h2{margin-bottom:30px}.faq>details{border-top:1px solid var(--line);padding:19px 0}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:15px;font-weight:bold;min-height:30px}.faq summary>span{color:var(--accent);font-size:22px}.faq details p{color:var(--muted);font-size:14px;line-height:1.75;padding-top:15px;max-width:700px}.faq details[open] summary>span{transform:rotate(45deg)}.final-section{padding:52px 0;background:radial-gradient(ellipse at 50% 100%,#4e1c77,transparent 75%),#290f51;text-align:center;border-block:1px solid #573578}.final-section>.wrap{position:relative}.final-section img{margin-bottom:16px}.final-section h2{font-size:clamp(30px,7vw,46px)}.final-section p:not(.eyebrow){color:#cec0e0;margin-block:19px 24px;font-size:15px}.final-section .btn{width:100%;max-width:360px}.final-section .contact-note{font-size:11px!important;margin-bottom:0!important}.final-star{position:absolute;top:16px;right:12%;font-size:33px;color:var(--yellow);transform:rotate(12deg)}.footer{display:flex;flex-direction:column;gap:22px;padding-block:30px 35px}.footer>span,.footer>a:last-child{font-size:11px;color:var(--muted)}dialog{width:min(430px,calc(100% - 32px));border:1px solid #a278ce;border-radius:14px;padding:30px;background:var(--panel);color:var(--text);box-shadow:0 20px 90px #0009}dialog::backdrop{background:#090411b8;backdrop-filter:blur(4px)}dialog h2{font-size:27px}dialog p:not(.eyebrow){color:var(--muted);font-size:14px;margin:18px 0 24px}.dialog-close{display:block;margin:-12px -10px 5px auto;border:0;background:transparent;color:var(--lav);font-size:28px;width:44px;height:44px}dialog .btn{width:100%}.noscript-note{padding:20px;color:var(--muted);font-size:13px;text-align:center}
@keyframes bob{0%,100%{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-7px) rotate(-3deg)}}
@media(min-width:600px){.wrap{width:min(1120px,calc(100% - 64px))}.hero{grid-template-columns:1fr 1fr;align-items:center;gap:28px;padding-block:65px}.hero h1{font-size:clamp(43px,6.6vw,74px)}.hero-copy>.btn{width:auto}.underlink{text-align:left}.section{padding-block:76px}.mascot-stage{min-height:310px}.mascot{width:190px}.course-grid{grid-template-columns:1.35fr 1fr}.level-bottom{font-size:12px}.quick-cta{padding:30px;display:grid;grid-template-columns:36px 1fr;text-align:left}.quick-cta>.btn{grid-column:2;width:fit-content}.class-grid{grid-template-columns:1fr 1fr;gap:40px}.footer{flex-direction:row;justify-content:space-between;align-items:center}.faq{padding-top:10px}}
@media(min-width:960px){.menu-toggle{display:none}.nav-links{position:static;display:flex;flex-direction:row;align-items:center;gap:28px;padding:0;background:none;border:0}.btn-small{min-height:42px;padding:8px 15px;font-size:12px}.nav{min-height:83px}.hero{gap:90px;padding-block:82px 88px}.hero h1{font-size:78px}.hero-art{padding-bottom:30px}.mascot-stage{min-height:352px}.mascot{width:222px}.hero-copy>.btn{padding-inline:26px}.lead{font-size:17px}.ticker>div{gap:40px;font-size:11px}.split{display:flex;align-items:end;justify-content:space-between;gap:40px}.split>p{max-width:310px}.art-card,.soon-card{padding:32px}.art-card h3{font-size:42px}.quick-cta{grid-template-columns:45px 1fr auto}.quick-cta>.btn{grid-column:auto}.final-section{padding-block:70px}.faq{max-width:840px}}

/* ===== Soon cards (GDevelop + Roblox) ===== */
.soon-stack{display:grid;gap:20px;align-content:start}
.soon-stack .soon-card{padding:22px 25px}
.soon-stack .soon-icon{margin-bottom:14px}
.soon-stack .soon-card h3{font-size:22px;margin-bottom:10px}
.soon-stack .soon-card p{font-size:14px}
.soon-stack .loading-label{margin-top:16px}

/* ===== Deck de cartas ===== */
.deck-wrap{padding:30px 14px 24px;background-color:#1c102d;background-image:radial-gradient(#6e478738 1px,transparent 1px);background-size:15px 15px;overflow:hidden}
.deck-layout{display:grid;gap:22px;max-width:860px;margin-inline:auto}
.deck-main{width:min(100%,390px);margin-inline:auto}
.deck-stage{display:grid;gap:22px;padding:0 30px 38px 14px;border-radius:14px}
.deck-stage:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}
.tcg{grid-area:auto;perspective:900px;min-width:0}
.tcg-face{--rx:0deg;--ry:0deg;position:relative;height:100%;display:flex;flex-direction:column;padding:10px;border-radius:18px;background:linear-gradient(150deg,var(--c),var(--c2));box-shadow:5px 7px 0 #090510;overflow:hidden;transform:rotateX(var(--ry)) rotateY(var(--rx));transition:transform .18s linear}
.tcg-face:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at var(--mx,30%) var(--my,8%),#ffffff66,transparent 42%),repeating-linear-gradient(115deg,#ff9bd428 0 12px,#9bf0ff28 12px 24px,#fff6a028 24px 36px);mix-blend-mode:soft-light;opacity:.6}
.tcg-in{flex:1;display:flex;flex-direction:column;gap:11px;padding:13px;border-radius:10px;background:#241437;border:1px solid #00000066}
.tcg-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.tcg-head h3{font-size:20px;letter-spacing:-.03em}
.tcg-head span{font:700 10px Consolas,"Courier New",monospace;color:var(--c);flex-shrink:0}
.tcg-art{position:relative;height:128px;display:grid;place-items:center;border:3px solid var(--c);border-radius:6px;background:radial-gradient(circle at 50% 45%,#ffffff2e,transparent 62%),linear-gradient(#c394ff14 1px,transparent 1px),linear-gradient(90deg,#c394ff14 1px,transparent 1px),#290f51;background-size:auto,16px 16px,16px 16px,auto}
.tcg-emoji{font-size:62px;line-height:1;filter:drop-shadow(0 7px 0 #150624)}
.tcg-phase,.tcg-type{position:absolute;font:700 9px/1 Consolas,"Courier New",monospace;letter-spacing:.08em;padding:4px 7px;border-radius:4px}
.tcg-phase{top:7px;left:7px;background:var(--c);color:#241437}
.tcg-type{bottom:7px;right:7px;border:1px solid var(--c);color:var(--c);background:#241437d9}
.tcg-flavor{font-size:12px;font-style:italic;line-height:1.5;color:#dccfeb;padding-bottom:10px;border-bottom:1px dashed #ffffff29}
.tcg-moves{list-style:none;margin:0;padding:0;display:grid;gap:11px;flex:1;align-content:start}
.tcg-moves li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px}
.tcg-moves i{font-style:normal;color:var(--c);font-size:14px;line-height:1.4}
.tcg-moves b{display:block;font-size:14px;letter-spacing:-.01em;line-height:1.35}
.tcg-moves span{display:block;font-size:12px;color:#c8bbd8;line-height:1.45}
.tcg-foot{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:2px -5px -5px;padding:9px 11px;border-radius:6px;background:var(--c);color:#241437}
.tcg-foot small{font:700 9px Consolas,"Courier New",monospace;letter-spacing:.1em}
.tcg-foot strong{font-size:12px;text-align:right;line-height:1.3}

/* modo interativo (JS) */
.js .deck-stage{display:grid;gap:0;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.js .tcg{grid-area:1/1;transform-origin:50% 92%;transform:translate(calc(var(--d,0)*14px),calc(var(--d,0)*10px)) rotate(calc(var(--d,0)*2.8deg)) scale(calc(1 - var(--d,0)*.05));z-index:calc(10 - var(--d,0));filter:brightness(calc(1 - var(--d,0)*.16));transition:transform .5s cubic-bezier(.2,.9,.25,1.05),opacity .35s,filter .35s}
.js .tcg[data-state=front]{cursor:grab}
.js .tcg[data-state=back]{cursor:pointer}
.js .tcg[data-state=gone]{transform:translateX(-125%) rotate(-16deg);opacity:0;pointer-events:none;z-index:20}
.js .tcg[data-state=hidden]{opacity:0;pointer-events:none}
.js .tcg.is-dragging{transition:none;cursor:grabbing}
.js .tcg:not([data-state=front]) .tcg-face{--rx:0deg!important;--ry:0deg!important}
.js .tcg:not([data-state=front]) .tcg-face:after{opacity:.2}
.js .deck-stage.is-nudging .tcg[data-state=front] .tcg-face{animation:nudge 1.1s ease .15s 1}
@keyframes nudge{0%,100%{transform:none}35%{transform:translateX(-24px) rotate(-3.5deg)}65%{transform:translateX(5px) rotate(.8deg)}}

.deck-controls{display:none;align-items:center;justify-content:space-between;gap:14px;margin-top:6px}
.js .deck-controls{display:flex}
.deck-arrow{width:50px;height:50px;border:1px solid #9873c3;border-radius:11px;background:var(--panel);color:var(--lav);font-size:20px;box-shadow:0 4px 0 #090510;transition:transform .15s,box-shadow .15s}
.deck-arrow:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 0 #090510}
.deck-arrow:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px 0 #090510}
.deck-arrow:disabled{opacity:.35;cursor:default}
.deck-arrow:focus-visible,.deck-index button:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
.deck-count{font:11px Consolas,"Courier New",monospace;letter-spacing:.06em;color:#d3b9f4}

.deck-index{display:none;list-style:none;margin:0;padding:0;gap:8px}
.js .deck-index{display:flex;justify-content:center}
.deck-index button{position:relative;width:48px;height:48px;display:flex;align-items:center;justify-content:center;gap:12px;padding:0;border:1px solid #574069;border-radius:10px;background:#2a193e;color:var(--text);font-size:22px;transition:border-color .2s,background .2s}
.deck-index button[aria-current=true]{border-color:var(--c);background:#352049;box-shadow:inset 0 -3px 0 var(--c)}
.di-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media(min-width:760px){
  .deck-wrap{padding:46px 32px 40px}
  .deck-layout{grid-template-columns:minmax(0,390px) minmax(0,1fr);gap:60px;align-items:center}
  .js .deck-index{flex-direction:column;justify-content:flex-start;gap:10px}
  .deck-index button{width:100%;height:auto;justify-content:flex-start;text-align:left;padding:13px 16px;font-size:26px}
  .di-text{position:static;width:auto;height:auto;clip:auto;overflow:visible;display:grid;gap:2px;white-space:normal}
  .di-text strong{font-size:16px;letter-spacing:-.02em}
  .di-text small{font-size:12px;color:var(--muted)}
  .deck-index button:hover{border-color:var(--c)}
  .soon-stack .soon-card{padding:24px 28px}
}
@media(min-width:960px){.soon-stack .soon-card{padding:26px 32px}}
.trust{margin-top:22px;font-size:12px;line-height:1.6;color:#cdbbe0;max-width:435px}.trust span{color:var(--yellow);margin-right:4px}.trust b{color:var(--text)}.social{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px}.social a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 16px;border:1px solid #9873c3;border-radius:9px;background:#ffffff0d;color:var(--lav);font-size:13px;font-weight:700;transition:border-color .18s,color .18s}.social a:hover{border-color:var(--yellow);color:var(--yellow)}.footer .social{margin-top:0}.wa-float{position:fixed;right:16px;bottom:16px;z-index:20;display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:10px 16px;border:1px solid #ceecab;border-radius:999px;background:var(--mint);color:#172923;box-shadow:0 4px 0 #537e6d;font:800 13px "Trebuchet MS",sans-serif}.wa-float:hover{transform:translateY(-2px)}
.video-section .class-grid{align-items:center}.video-btn{margin-top:26px;width:100%}.video-window{width:100%;max-width:340px;margin-inline:auto}.video-window video{display:block;width:100%;aspect-ratio:9/16;object-fit:cover;background:#150624}@media(min-width:600px){.video-btn{width:auto}.video-window{margin-inline:auto 0}}
@media print{.wa-float{display:none}.js .tcg{transform:none!important;opacity:1!important;filter:none!important;grid-area:auto}.js .deck-stage{gap:16px}.deck-controls,.deck-index{display:none!important}.deck-wrap{background:none}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.header,.topline,.quick-cta,.menu-toggle,dialog{display:none}.wrap{width:100%}.hero,.class-grid,.course-grid{display:block}.section{padding-block:25px}.art-card,.soon-card,.tcg{break-inside:avoid}.hero-art{max-width:350px;margin:auto}body{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
