/* Public Edmiva identity: shared by the home, school and subscription pages. */
/* Shared semantic colors follow the same theme switch as the portal. */
:root {
 --ed-ink:#182447; --ed-muted:#52617c; --ed-accent:#5253a8; --ed-price:#293975;
 --ed-positive:#18765e; --ed-surface:#fff; --ed-canvas:#f7f9ff; --ed-line:#dce2f2;
 --ed-lilac:#f4f1ff; --ed-mint:#e9faf5; --ed-peach:#fff1e4;
 --ed-pricing-blue:#dde9ff; --ed-pricing-mint:#e2fff2;
 --ed-course-start:#f2f0fc; --ed-course-end:#f5fbfb;
 --ed-journey-glow:#e4d9ff; --ed-journey-start:#f3efff; --ed-journey-end:#edf9ff;
 --ed-featured-start:#f3edff; --ed-featured-end:#eff9ff; --ed-featured-line:#ad9ee7;
 --ed-icon-bg:#fff; --ed-icon-ink:#5c4dd1; --ed-art-bg:#e4eaf7;
 --ed-orb-start:#eee7ff; --ed-orb-end:#e9f6ff; --ed-orb-ink:#5253a8;
}
html.is_dark {
 --ed-ink:#f4f6ff; --ed-muted:#bcc8e3; --ed-accent:#c4b8ff; --ed-price:#c4d3ff;
 --ed-positive:#8ce7c5; --ed-surface:#141e37; --ed-canvas:#0c1429; --ed-line:#36435f;
 --ed-lilac:#242242; --ed-mint:#163836; --ed-peach:#382b32;
 --ed-pricing-blue:#1d2851; --ed-pricing-mint:#133532;
 --ed-course-start:#1a1b36; --ed-course-end:#10272e;
 --ed-journey-glow:#413367; --ed-journey-start:#251f43; --ed-journey-end:#122f3a;
 --ed-featured-start:#30274b; --ed-featured-end:#172e42; --ed-featured-line:#8e80c4;
 --ed-icon-bg:#302c53; --ed-icon-ink:#c9bdff; --ed-art-bg:#202d48;
 --ed-orb-start:#332c56; --ed-orb-end:#203a4d; --ed-orb-ink:#c4d3ff;
}

.ed-section{position:relative;padding:80px 0;color:var(--ed-ink);font-size:16px;line-height:1.65;isolation:isolate}
.ed-wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.ed-heading{max-width:780px;margin:0 auto 38px;text-align:center}
.ed-heading h2{font-size:clamp(2rem,4vw,3.6rem);line-height:1.1;letter-spacing:-.04em;color:var(--ed-ink);margin:14px 0}
.ed-heading p{color:var(--ed-muted);font-size:1.08rem}
.ed-eyebrow{display:block;color:var(--ed-accent);font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.ed-ai-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ed-ai-card{position:relative;padding:30px;border:1px solid var(--ed-line);border-radius:28px;background:linear-gradient(140deg,var(--ed-surface),var(--ed-lilac));overflow:hidden;transition:transform .3s,box-shadow .3s}
.ed-ai-card:after{content:'';position:absolute;width:110px;height:110px;border:20px solid #a6a6e914;border-radius:50%;top:-38px;inset-inline-end:-28px;pointer-events:none}
.ed-ai-card:hover{transform:translateY(-6px);box-shadow:0 20px 55px #33237713}
.ed-ai-card--1,.ed-ai-card--4{background:linear-gradient(140deg,var(--ed-surface),var(--ed-mint))}
.ed-ai-card--2,.ed-ai-card--5{background:linear-gradient(140deg,var(--ed-surface),var(--ed-peach))}
.ed-ai-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:var(--ed-icon-bg);color:var(--ed-icon-ink);font-size:26px;box-shadow:0 8px 22px #3831870e;margin-bottom:23px}
.ed-ai-tag{color:var(--ed-accent);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.ed-ai-card h3{font-size:1.4rem;line-height:1.25;color:var(--ed-ink);margin:10px 0 14px}
.ed-ai-card p{font-size:.96rem;line-height:1.75;margin:0;color:var(--ed-muted)}
.ed-source-flow{margin-top:26px;padding:36px;border-radius:28px;background:#142645;color:#fff;position:relative;overflow:hidden}
.ed-source-flow h3{color:#fff;font-size:1.7rem;margin:8px 0}
.ed-source-flow .ed-eyebrow{color:#a3ead9}
.ed-source-flow ol{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;list-style:none;padding:0;margin:28px 0}
.ed-source-flow li{border-top:1px solid #ffffff30;padding-top:15px;font-weight:700}
.ed-source-flow li span{display:block;color:#a8bdfb;font-size:1.5rem;margin-bottom:8px}
.ed-source-flow p{font-size:.84rem;color:#bdcbe1;margin:0;max-width:85ch}
.ed-pricing{background:radial-gradient(ellipse at 5% 30%,var(--ed-pricing-blue),transparent 50%),radial-gradient(ellipse at 95% 80%,var(--ed-pricing-mint),transparent 50%),var(--ed-canvas)}
.ed-price-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:26px;align-items:stretch}
.ed-master,.ed-teacher{padding:clamp(24px,4vw,44px);border-radius:32px;position:relative;overflow:hidden}
.ed-master{color:#fff;background:linear-gradient(150deg,#293cac,#5047c6 60%,#257694);box-shadow:0 22px 60px #3633a826}
.ed-master p{color:#e6e9ff;margin:5px 0 20px}
.ed-master__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.ed-pill{display:inline-block;background:#ffffff1a;border:1px solid #ffffff45;border-radius:100px;padding:7px 16px;font-weight:750;font-size:.84rem}
.ed-plan-orbit{font-size:38px;color:#b4ffe9;animation:ed-spark 8s ease-in-out infinite}
.ed-price{font-size:clamp(2.8rem,5vw,4rem);font-weight:900;line-height:1.15;letter-spacing:-.04em}
.ed-price small{font-size:1rem;font-weight:650;letter-spacing:0}
.ed-benefits{list-style:none;padding:0;margin:25px 0;font-size:.94rem}
.ed-benefits li{padding:5px 0;display:flex;gap:10px}
.ed-benefits li:before{content:'✓';color:#acffe6;font-weight:900}
.ed-capacity{border-top:1px solid #ffffff30;padding-top:23px}
.ed-capacity label{display:block;font-weight:700;margin-bottom:10px}
.ed-counter{display:flex;gap:10px;align-items:center}
.ed-counter button{width:46px;height:46px;background:#ffffff18;color:#fff;border:1px solid #ffffff55;border-radius:14px;font-size:1.5rem;cursor:pointer}
.ed-counter button:disabled{opacity:.35;cursor:default}
.ed-counter select{flex:1;min-width:0;border:1px solid #d1d5f8;border-radius:14px;padding:10px 14px;color:var(--ed-ink);background:var(--ed-surface);font:inherit;font-weight:750;min-height:46px}
.ed-total{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center;padding:22px 0;margin-top:12px}
.ed-total span{font-size:.9rem}
.ed-total strong{font-size:1.65rem;font-weight:850}
.ed-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:13px 23px;border:1px solid transparent;border-radius:15px;background:#3844bb;color:#fff!important;font:inherit;font-weight:750;text-decoration:none!important;transition:transform .25s,box-shadow .25s;cursor:pointer}
.ed-button:hover{transform:translateY(-3px);box-shadow:0 12px 25px #383e9f24}
.ed-button--light{background:#fff;color:#293cac!important}
.ed-button--outline{color:var(--ed-accent)!important;background:transparent;border-color:var(--ed-featured-line)}
.ed-button:focus-visible,.ed-counter button:focus-visible{outline:3px solid #f0bc52;outline-offset:3px}
.ed-teacher{background:var(--ed-surface);border:2px solid var(--ed-featured-line);display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 16px 42px #3633a812}
.ed-teacher-label{padding:7px 13px;border-radius:100px;background:var(--ed-featured-start);color:var(--ed-accent);font-size:.82rem;font-weight:750}
.ed-teacher h3{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.15;color:var(--ed-ink);margin:20px 0 12px;text-wrap:balance}
.ed-teacher p{color:var(--ed-muted)}
.ed-teacher .ed-teacher-intro{margin:0;line-height:1.6}
.ed-teacher-price{margin:24px 0;width:100%;padding-bottom:24px;border-bottom:1px solid var(--ed-line)}
.ed-teacher-price p{margin:6px 0 0;font-size:.9rem}
.ed-teacher .ed-price{color:var(--ed-price)}
.ed-teacher-features{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:20px}
.ed-teacher-features li{display:grid;gap:4px}
.ed-teacher-features strong{color:var(--ed-ink);font-size:1rem;line-height:1.4}
.ed-teacher-features span{color:var(--ed-muted);font-size:.9rem;line-height:1.6}
.ed-teacher .ed-teacher-note{font-size:.8rem;line-height:1.6;margin:auto 0 16px}
.ed-teacher>.ed-button{width:100%}
.ed-fineprint{font-size:.82rem;color:var(--ed-muted);margin:23px auto 0;max-width:95ch;text-align:center}
.ed-token-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.ed-token{position:relative;display:flex;align-items:flex-start;flex-direction:column;border:1px solid var(--ed-line);border-radius:26px;padding:25px;background:var(--ed-surface);transition:transform .25s}
.ed-token:hover{transform:translateY(-5px)}
.ed-token--featured{background:linear-gradient(140deg,var(--ed-featured-start),var(--ed-featured-end));border-color:var(--ed-featured-line)}
.ed-token-coin{display:grid;place-items:center;border-radius:50%;width:48px;height:48px;border:5px solid #fff0b1;background:linear-gradient(140deg,#ffdb60,#f2b54b);color:#825612;font-size:25px;box-shadow:0 6px 16px #dfab4020;margin-bottom:18px}
.ed-token h3{font-size:1.15rem;color:var(--ed-ink)}
.ed-token>strong{font-size:2rem;line-height:1.3;color:var(--ed-price)}
.ed-token>span:not(.ed-token-coin){color:var(--ed-muted)}
.ed-token small{color:var(--ed-positive);margin-top:10px}
.ed-token-price{margin-top:auto;padding-top:24px;color:var(--ed-price);font-size:1.3rem;font-weight:800}
.ed-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;justify-content:center}
.ed-faq details{border-bottom:1px solid var(--ed-line);padding:18px 0}
.ed-faq summary{cursor:pointer;font-size:1.1rem;font-weight:750;color:var(--ed-ink)}
.ed-faq details p{max-width:85ch;color:var(--ed-muted);padding-top:15px}
.ed-floating-contact{position:fixed;bottom:20px;inset-inline-end:22px;z-index:95;padding:11px 17px;background:#26379f;color:#fff!important;border:2px solid #fff;border-radius:100px;box-shadow:0 8px 30px #1b277433;font-size:.85rem;font-weight:750;text-decoration:none}
.ed-hero-objects{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0;transform:translate(var(--ed-pointer-x,0px),var(--ed-pointer-y,0px));transition:transform .8s ease-out}
.ed-hero-objects i{position:absolute;width:80px;height:80px;inset-inline-start:44%;top:6%;border:18px solid #a69aec36;border-radius:50%;animation:ed-float 9s ease-in-out infinite}
.ed-hero-objects i:nth-child(2){top:auto;bottom:4%;inset-inline-start:4%;width:125px;height:125px;border:28px solid #51cbb62b;animation-delay:-3s}
.ed-hero-objects i:nth-child(3){top:28%;inset-inline-start:auto;inset-inline-end:2%;width:55px;height:55px;border:0;border-radius:16px;background:linear-gradient(135deg,#ffdf87,#e9afc2);box-shadow:inset -9px -9px 15px #be86a425,0 15px 35px #d5abb531;animation-delay:-5s}
.alpha-home-hero>.container{position:relative;z-index:1}
.alpha-home-hero{isolation:isolate}
.alpha-home-copy h1{max-width:15ch}
.ed-hero-contact{display:inline-flex;color:#3548a1;font-weight:750;text-decoration:underline;text-underline-offset:5px;margin-top:18px}
.ed-pricing output{color:inherit}
.ed-section a,.ed-section button{-webkit-tap-highlight-color:transparent}
@keyframes ed-float{0%,100%{translate:0 0;rotate:-4deg}
50%{translate:0 -15px;rotate:5deg}
}
@keyframes ed-spark{0%,100%{transform:rotate(0) scale(1)}
50%{transform:rotate(30deg) scale(1.12)}
}

@media(max-width:900px){.ed-ai-grid{grid-template-columns:repeat(2,1fr)}
.ed-price-grid{grid-template-columns:1fr 1fr}
.ed-token-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:640px){.ed-section{padding:52px 0}
.ed-wrap{width:calc(100% - 28px)}
.ed-ai-grid,.ed-price-grid{grid-template-columns:1fr}
.ed-ai-card{padding:25px}
.ed-source-flow{padding:25px}
.ed-source-flow ol{grid-template-columns:1fr 1fr}
.ed-token{padding:19px}
.ed-token>strong{font-size:1.65rem}
.ed-token-price{font-size:1.1rem}
.ed-floating-contact{bottom:12px;inset-inline-end:12px}
.ed-master,.ed-teacher{border-radius:25px}
.ed-heading{text-align:start}
.ed-hero-objects i:first-child{width:50px;height:50px;inset-inline-start:75%}
}

@media(prefers-reduced-motion:reduce){.ed-section *,.ed-hero-objects,.ed-hero-objects i{animation:none!important;transition:none!important}
.ed-hero-objects{transform:none}
.ed-button:hover,.ed-ai-card:hover,.ed-token:hover{transform:none}
}

.ed-master .ed-capacity label,.ed-master .ed-price small{color:#fff}
.ed-floating-contact{left:auto;right:auto;inset-inline-start:20px;inset-inline-end:auto;bottom:20px}


/* School discovery: tactile motion, clear decisions, and illustrated stories. */
.ed-device-contact{text-align:center;position:relative;z-index:4;margin:30px auto 0}
.ed-device-contact p{font-size:.9rem;color:var(--home-muted,var(--ed-muted));margin:12px 0 0}
.ed-button--contact{background:linear-gradient(115deg,#fbd776,#ffb888);color:#30264a!important;border:2px solid #fff4ca;box-shadow:0 12px 34px #f4b84f38;min-width:220px;min-height:62px;font-size:1.18rem;border-radius:19px}
.ed-button--contact:hover{box-shadow:0 15px 38px #f4b84f65}
.ed-hero-objects>span{position:absolute;font-size:38px;color:#8368ce;top:20%;left:9%;animation:ed-star-drift 4.8s ease-in-out infinite}
.ed-hero-objects>span:nth-of-type(2){top:12%;left:73%;font-size:50px;color:#e2b050;animation-delay:-1.5s}
.ed-hero-objects>span:nth-of-type(3){top:76%;left:39%;font-size:24px;color:#369f9c;animation-delay:-3s}
.ed-hero-objects>span:nth-of-type(4){top:67%;left:93%;font-size:34px;color:#af7bb8;animation-delay:-2s}
.ed-wave{position:absolute;width:130%;height:170px;left:-15%;bottom:-110px;border-radius:45% 60% 0 0;background:linear-gradient(100deg,#8277e52b,#59c8c327,#ffe3ab40);box-shadow:0 -20px 0 #b8b6ef15,0 -40px 0 #6de0cd0d;animation:ed-wave-sway 4.8s ease-in-out infinite alternate}
.ed-pricing{scroll-margin-top:110px}
.ed-counter button{flex:0 0 48px;min-height:48px;transition:background .2s,transform .2s}
.ed-counter button:not(:disabled):hover{background:#ffffff35;transform:scale(1.05)}
.ed-counter{max-width:480px}
.ed-source-studio{position:relative;margin-top:44px;padding:clamp(24px,4vw,48px);border:1px solid var(--ed-line);border-radius:36px;background:radial-gradient(ellipse at 5% 10%,#ffffff38,transparent 40%),radial-gradient(ellipse at 95% 85%,#79d8c228,transparent 45%),#172544;overflow:hidden;color:#fff}
.ed-source-studio:before{content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(#afc3e42b 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(110deg,transparent,#000)}
.ed-source-studio>*{position:relative}
.ed-source-intro{max-width:760px}.ed-source-intro h3{font-size:clamp(2rem,3.5vw,3rem);color:#fff;line-height:1.15;margin:12px 0 18px;letter-spacing:-.035em}
.ed-source-intro>p{color:#d4ddf3;font-size:1.05rem;max-width:66ch}.ed-source-studio .ed-eyebrow{color:#b7f6e5}
.ed-source-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:36px 0}
.ed-source-stage{min-width:0;background:#ffffff09;border:1px solid #ffffff24;border-radius:24px;padding:12px 12px 22px;position:relative}
.ed-source-visual{height:185px;border-radius:16px;position:relative;background:radial-gradient(ellipse at 50% 80%,#b9a1f840,transparent 65%),#243657;overflow:hidden;display:flex;align-items:center;justify-content:center;margin-bottom:22px}
.ed-source-visual--1{background:radial-gradient(ellipse,#519b963d,transparent 75%),#1b3e4e}
.ed-source-visual--2{background:#383b67}.ed-source-visual--3{background:linear-gradient(120deg,#51629e,#47818e)}
.ed-source-book{width:104px;height:140px;padding:18px 13px;border-radius:4px 15px 15px 4px;border-left:9px solid #8471dd;background:linear-gradient(135deg,#b1a2ee,#e0d5fc);color:#2a2658;transform:rotate(-10deg);box-shadow:7px 5px 0 #fff5e7,10px 9px 0 #7972ad,0 15px 30px #080f3340;animation:ed-float 4.8s ease-in-out infinite}
.ed-source-book span{display:block;font-size:22px;line-height:1}.ed-source-book b{display:block;font-size:12px;line-height:1.3;margin:10px 0}.ed-source-book i{display:block;width:80%;height:3px;background:#7d6db060;margin:7px 0}
.ed-file-chip,.ed-review-chip{position:absolute;bottom:12px;right:10px;background:#edfff7;color:#22594f;font-size:11px;font-weight:800;padding:6px 10px;border-radius:10px;box-shadow:0 4px 14px #10234130}
.ed-ai-core{display:grid;place-items:center;width:75px;height:75px;border:1px solid #d7fff5;border-radius:24px;background:linear-gradient(140deg,#96e6d5,#6cb6d3);font-size:40px;color:#153f54;box-shadow:0 0 0 10px #b1e8e018,0 0 0 23px #b1e8e00c;animation:ed-spark 4.8s ease-in-out infinite}
.ed-output-chip{position:absolute;padding:5px 9px;border-radius:8px;background:#effffa;color:#245563;font-weight:750;font-size:10px;left:8px;top:16px;transform:rotate(-7deg)}
.ed-output-chip:nth-of-type(2){left:auto;right:8px;top:74px;transform:rotate(6deg)}.ed-output-chip:nth-of-type(3){top:auto;bottom:13px;left:22px;transform:rotate(3deg)}
.ed-source-visual--2 img{width:210px;max-width:none;border:5px solid #adb2d9;border-radius:8px;transform:rotate(-5deg);box-shadow:0 12px 30px #111b414a}
.ed-source-visual--3 img{width:100px;margin-top:80px;border:5px solid #e8efff;border-radius:19px;transform:rotate(9deg);box-shadow:0 10px 35px #111b4150}
.ed-stage-number{display:inline-flex;margin:0 4px 10px;color:#b9aff4;font-size:.78rem;font-weight:850;letter-spacing:.1em}
.ed-source-stage h4{font-size:1.08rem;color:#fff;line-height:1.3;margin:0 4px 10px}.ed-source-stage p{font-size:.85rem;color:#d3ddef;line-height:1.65;margin:0 4px}
.ed-source-bottom{display:flex;align-items:center;gap:24px;justify-content:space-between}.ed-source-bottom p{max-width:62ch;font-size:.82rem;color:#b6c6e0;margin:0}.ed-source-bottom a{flex-shrink:0;font-size:.88rem}
.ed-course-world{background:linear-gradient(180deg,var(--ed-course-start),var(--ed-course-end));padding-block:80px}
.ed-course-banner{position:relative;display:grid;grid-template-columns:1fr 1fr;border-radius:32px;overflow:hidden;background:#17284a;margin-bottom:26px;box-shadow:0 24px 60px #29215c16}
.ed-course-banner>img{width:100%;height:100%;min-height:320px;object-fit:cover}.ed-course-banner>div{padding:clamp(26px,4vw,48px);align-self:center}.ed-course-banner h3{font-size:clamp(1.8rem,3vw,2.7rem);color:#fff;line-height:1.15;margin:12px 0 20px}.ed-course-banner p{color:#d2def2;line-height:1.75}.ed-course-banner .ed-eyebrow{color:#abead9}
.ed-course-grid{gap:22px}.alpha-homepage .ed-course-card{border-radius:26px;border:1px solid var(--ed-line);background:var(--ed-surface);overflow:hidden;box-shadow:0 8px 25px #42407008;border-top:5px solid #9181d7;padding:28px}
.ed-course-card:nth-child(3n+2){border-top-color:#4bb6a4}.ed-course-card:nth-child(3n){border-top-color:#e5b45e}
.ed-course-card .alpha-path-card__orb{border-radius:18px;background:linear-gradient(135deg,var(--ed-orb-start),var(--ed-orb-end));color:var(--ed-orb-ink);width:66px;height:66px;box-shadow:none}
.ed-journey-invite{margin-top:55px;display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:35px;background:radial-gradient(ellipse at 85% 40%,var(--ed-journey-glow),transparent 60%),linear-gradient(125deg,var(--ed-journey-start),var(--ed-journey-end));border:1px solid var(--ed-line);border-radius:36px;padding:clamp(25px,5vw,60px);overflow:hidden}
.ed-journey-copy h3{font-size:clamp(2rem,3.5vw,3rem);line-height:1.15;color:var(--ed-ink);letter-spacing:-.035em;margin:14px 0 22px}.ed-journey-copy>p{color:var(--ed-muted);line-height:1.8}
.ed-journey-copy ol{list-style:none;padding:0;margin:25px 0;display:grid;gap:15px}.ed-journey-copy li{display:flex;gap:13px;align-items:center;color:var(--ed-muted);font-weight:650}.ed-journey-copy li span{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border-radius:50%;background:var(--ed-icon-bg);color:var(--ed-icon-ink);box-shadow:0 4px 10px #5435850d}
.ed-journey-copy .ed-journey-note{font-size:.78rem;margin-top:18px;max-width:55ch}
.ed-journey-art{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;padding:35px 0 20px}
.ed-journey-art:before,.ed-journey-art:after{content:'';position:absolute;top:25%;width:300px;height:300px;border:1px solid #ffffffc0;border-radius:50%;transform:rotateX(35deg)}.ed-journey-art:after{width:380px;height:380px;top:17%;border-style:dashed;animation:ed-star-drift 4.8s ease-in-out infinite}
.ed-journey-art img{position:relative;z-index:1;width:190px;height:auto;max-height:400px;object-fit:cover;object-position:top;border:8px solid #faffff;border-radius:30px;transform:rotate(6deg);box-shadow:20px 25px 50px #3d36772e}
.ed-question-bubble{position:relative;z-index:2;align-self:flex-start;margin-bottom:-12px;padding:13px 20px;border-radius:18px 18px 18px 4px;background:var(--ed-surface);color:var(--ed-ink);font-size:.9rem;font-weight:750;box-shadow:0 8px 24px #483d8720;max-width:90%;transform:rotate(-5deg)}
.ed-orbit-star{position:absolute;right:0;top:0;font-size:65px;color:#e5ae4c;animation:ed-spark 4.8s ease-in-out infinite}
.ed-journey-caption{position:relative;z-index:2;margin-top:20px;background:#2d416c;color:#fff;padding:10px 16px;border-radius:40px;font-size:.8rem;box-shadow:0 8px 24px #483d8720;text-align:center}
.ed-faq{background:var(--ed-canvas)}.ed-faq .ed-wrap{max-width:960px}.ed-faq details{background:var(--ed-surface);border:1px solid var(--ed-line);border-radius:18px;padding:20px 24px;margin:12px 0;transition:border-color .25s,box-shadow .25s}.ed-faq details[open]{border-color:var(--ed-featured-line);box-shadow:0 8px 25px #5347850a}.ed-faq summary{font-size:1.04rem;line-height:1.55}.ed-faq details p{margin-bottom:0}
.ed-contact-finale{position:relative;overflow:hidden;padding:95px 0;background:radial-gradient(ellipse at 90% 0,#a49af958,transparent 50%),radial-gradient(ellipse at 5% 100%,#58c6b84a,transparent 50%),#17274a;color:#fff}
.ed-contact-finale .ed-wrap{position:relative;z-index:1}.ed-contact-finale .ed-eyebrow{color:#b6ecd9}.ed-contact-finale h2{font-size:clamp(3.5rem,9vw,8rem);color:#fff;letter-spacing:-.055em;line-height:1.15;margin:20px 0}.ed-contact-finale h2>span{display:inline-block;color:#ffe09d;margin-inline-start:30px;transition:transform .3s}.ed-contact-finale:hover h2>span{transform:translate(5px,-5px)}.ed-contact-finale p{max-width:650px;color:#d4ddf0;font-size:1.12rem;line-height:1.8;margin-bottom:30px}.ed-contact-orbit{position:absolute;right:3%;top:22%;font-size:220px;color:#b6a2f72a;z-index:-1;animation:ed-spark 4.8s ease-in-out infinite}
.ed-floating-contact{background:linear-gradient(115deg,#ffe198,#ffbc96);color:#30264a!important;border-color:#fff0c6;font-size:.95rem;padding:13px 22px}
.ed-pointer-layer{position:fixed;inset:0;pointer-events:none;z-index:10000;overflow:hidden;display:none}.ed-cursor{position:absolute;top:0;left:0;width:24px;height:24px;margin:-12px;border:2px solid #7762c7;border-radius:50%;background:#c7b7ff20;box-shadow:0 0 0 3px #ffffff85;opacity:0;transition:width .16s,height .16s,margin .16s,background .16s}.ed-cursor.is-active{width:40px;height:40px;margin:-20px;background:#bdaceb30;border-color:#b98c3b}.ed-ripple{position:absolute;left:0;top:0;width:26px;height:26px;margin:-13px;border:1px solid #8578c98c;border-radius:50%;box-shadow:0 0 0 8px #a09ce218,0 0 0 18px #60b9b513;animation:ed-water-ring 1.25s ease-out forwards}.ed-ripple--click{border-color:#4faaa2;animation-duration:1.6s}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.ed-pointer-enabled,.ed-pointer-enabled a,.ed-pointer-enabled button,.ed-pointer-enabled summary{cursor:none}.ed-pointer-enabled :is(input,textarea,select){cursor:auto}.ed-pointer-enabled .ed-pointer-layer{display:block}}
@keyframes ed-water-ring{from{scale:.3;opacity:.7}to{scale:5;opacity:0}}
@keyframes ed-wave-sway{from{translate:-2% 0;rotate:-2deg}to{translate:2% -18px;rotate:2deg}}
@keyframes ed-star-drift{0%,100%{transform:translateY(0) rotate(-9deg);opacity:.6}50%{transform:translateY(-13px) rotate(12deg);opacity:1}}
@media(max-width:1000px){.ed-source-stages{grid-template-columns:repeat(2,minmax(0,1fr))}.ed-source-bottom{align-items:flex-start;flex-direction:column}.ed-journey-invite{gap:15px}.ed-journey-art img{width:160px}.ed-journey-art:after{width:280px;height:280px}.ed-course-banner{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.ed-device-contact{margin-top:24px}.ed-device-contact .ed-button{width:100%}.ed-source-studio{border-radius:25px;padding:24px 18px}.ed-source-stages{gap:12px}.ed-source-visual{height:160px}.ed-source-stage{padding:8px 8px 16px}.ed-source-stage h4{font-size:.98rem}.ed-source-stage p{font-size:.8rem}.ed-source-book{scale:.8}.ed-source-visual--2 img{width:170px}.ed-output-chip{font-size:9px;padding:4px 6px}.ed-ai-core{width:58px;height:58px}.ed-course-banner{grid-template-columns:1fr}.ed-course-banner>img{min-height:0;height:210px}.ed-course-world{padding-block:52px}.ed-journey-invite{grid-template-columns:1fr;border-radius:25px}.ed-journey-art{max-width:340px;width:100%;margin:auto}.ed-journey-art img{width:175px}.ed-question-bubble{font-size:.82rem}.ed-contact-finale{padding:65px 0}.ed-contact-finale h2>span{margin-inline-start:16px}.ed-contact-finale p{font-size:1rem}.ed-contact-orbit{font-size:160px;top:20%}.ed-faq details{padding:18px}.ed-floating-contact{font-size:.82rem;padding:11px 17px}.ed-source-bottom .ed-button{width:100%;white-space:normal}}
@media(max-width:360px){.ed-source-stages{grid-template-columns:1fr}.ed-source-visual{height:190px}}
@media(prefers-reduced-motion:reduce){.ed-hero-objects>span,.ed-wave,.ed-source-book,.ed-ai-core,.ed-journey-art:after,.ed-orbit-star,.ed-contact-orbit{animation:none!important}.ed-pointer-layer{display:none!important}.ed-journey-invite *,.ed-contact-finale *{transition:none!important}}
.ed-course-art{position:relative;margin:-28px -28px 22px;height:180px;overflow:hidden;background:var(--ed-art-bg)}.ed-course-art img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.ed-course-card:hover .ed-course-art img{transform:scale(1.05)}.ed-course-art>span{position:absolute;bottom:12px;inset-inline-end:15px;background:#ffffffde;color:#334578;border:1px solid #fff;padding:5px 12px;border-radius:12px;font-size:.85rem;font-weight:850;backdrop-filter:blur(8px)}
@media(prefers-reduced-motion:reduce){.ed-course-art img{transition:none}.ed-course-card:hover .ed-course-art img{transform:none}}

/* Keep the active screen in a flat compositing layer for crisp image rendering. */
.alpha-homepage .device-deck.is-enhanced [data-position="front"]{transform:translateX(-50%) translateY(0) rotate(0) scale(1)}

/* Protect small hero captions from the vivid artwork in either theme. */
.alpha-home-hero .app-tour__caption,
.alpha-home-hero .app-tour__hint,
.alpha-home-hero .app-preview-note,
.alpha-home-hero .ed-device-contact p {
 width:fit-content; max-width:100%; margin-inline:auto; padding:.65rem 1rem;
 border:1px solid var(--home-line); border-radius:16px;
 background:var(--alpha-surface-solid); color:var(--home-ink); opacity:1;
 box-shadow:var(--alpha-shadow-sm);
}
.ed-counter select:focus-visible,.ed-faq summary:focus-visible{outline:3px solid var(--ed-accent);outline-offset:4px}

/* Override the portal-wide muted small-text utility inside pricing cards. */
.alpha-homepage .ed-master .ed-price small{color:#fff!important}
.alpha-homepage .ed-teacher .ed-price small{color:var(--ed-price)!important}
