/* Eduvio interface refresh: layered surfaces, consistent typography and restrained motion. */
:root{--eduvio-ease:cubic-bezier(.2,.7,.2,1);--eduvio-ring:0 0 0 4px color-mix(in srgb,var(--primary) 22%,transparent)}
body{font-family:'Nunito',system-ui,sans-serif;background:radial-gradient(circle at 6% 6%,color-mix(in srgb,var(--primary-light) 65%,transparent),transparent 31rem),radial-gradient(circle at 96% 31%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 35rem),var(--bg)}
:is(h1,h2,h3,h4,.logo,.eduvio-plan-price strong){font-family:'Manrope','Nunito',system-ui,sans-serif;letter-spacing:-.035em}
:is(p,li){line-height:1.56}
.topnav{background:color-mix(in srgb,var(--card) 90%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 8px 28px rgba(28,26,68,.06);border-bottom:1px solid color-mix(in srgb,var(--primary) 11%,var(--border))}
.topnav-links :is(button,a){transition:background .2s,color .2s,transform .2s var(--eduvio-ease)}
.topnav-links :is(button,a):hover{transform:translateY(-2px)}
.main{max-width:1380px;margin:auto;padding-top:clamp(20px,3vw,36px)}
.topbar{position:relative;overflow:hidden;border-radius:28px;box-shadow:0 18px 35px rgba(30,27,75,.075)}
.topbar::after{content:'✦';position:absolute;right:5%;top:-52px;font-size:10rem;line-height:1;color:var(--primary);opacity:.075;pointer-events:none}
.card{border:1px solid color-mix(in srgb,var(--primary) 8%,var(--border));box-shadow:0 12px 36px rgba(30,27,75,.06)}
.fach-card,.eduvio-plan,.choice,.eduvio-trial-steps li{transition:transform .24s var(--eduvio-ease),box-shadow .24s var(--eduvio-ease),border-color .24s var(--eduvio-ease)}
.fach-card:hover,.choice:hover{transform:translateY(-5px);box-shadow:0 20px 38px rgba(30,27,75,.13);border-color:color-mix(in srgb,var(--primary) 45%,var(--border))}
.eduvio-plan:hover,.eduvio-trial-steps li:hover{transform:translateY(-4px);box-shadow:0 22px 46px rgba(30,27,75,.12)}
.eduvio-plan-grid{gap:clamp(15px,2vw,26px);align-items:stretch}
.eduvio-plan{border-radius:28px;padding:clamp(22px,2.5vw,34px);background:linear-gradient(160deg,var(--card) 74%,color-mix(in srgb,var(--primary-light) 24%,var(--card)))}
.eduvio-plan.featured{background:linear-gradient(160deg,color-mix(in srgb,var(--primary-light) 39%,var(--card)),var(--card) 48%)}
.eduvio-plan-tag{letter-spacing:.015em}
.eduvio-plan h3{font-size:clamp(1.15rem,1.7vw,1.42rem);line-height:1.3}
.eduvio-plan-price{margin:22px 0 8px;align-items:baseline}
.eduvio-plan-price strong{font-size:clamp(2.05rem,4vw,3rem);line-height:1.12}
.eduvio-plan ul{margin:20px 0 28px}
.eduvio-plan li{padding-top:9px;padding-bottom:9px}
.eduvio-plan .btn{border-radius:15px;min-height:53px;box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 25%,transparent);transition:transform .16s var(--eduvio-ease),box-shadow .16s,background .16s}
.eduvio-plan .btn:hover{transform:translateY(-3px);box-shadow:0 12px 25px color-mix(in srgb,var(--primary) 32%,transparent)}
.eduvio-plan .btn:active{transform:translateY(1px);box-shadow:0 4px 8px color-mix(in srgb,var(--primary) 24%,transparent)}
.eduvio-pricing-hero{box-shadow:0 22px 40px rgba(34,29,100,.18);background:radial-gradient(circle at 91% 16%,rgba(255,255,255,.16),transparent 26%),linear-gradient(122deg,#252065,var(--primary) 68%,#886de9)}
.eduvio-pricing-hero::after{content:'✦';position:absolute;right:4%;bottom:-72px;font-size:12rem;opacity:.12;pointer-events:none}
.eduvio-plan-choice{box-shadow:0 14px 32px color-mix(in srgb,var(--primary) 11%,transparent)}
.eduvio-trial-steps li{background:linear-gradient(160deg,var(--card),color-mix(in srgb,var(--primary-light) 17%,var(--card)))}
.eduvio-family-banner{box-shadow:0 14px 38px color-mix(in srgb,var(--primary) 10%,transparent)}
:is(.btn,button,input,select,textarea,a):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:800px){.eduvio-plan-grid{grid-template-columns:1fr}.eduvio-plan{padding:23px}.eduvio-plan-price strong{font-size:2.3rem}.topbar::after{right:-18px;top:-16px;font-size:6rem}}
@media(prefers-reduced-motion:reduce){.fach-card,.eduvio-plan,.choice,.eduvio-trial-steps li,.eduvio-plan .btn,.topnav-links :is(button,a){transition:none!important;transform:none!important}}
/* Standalone family account uses the same surfaces without altering checkout behavior. */
body.eduvio-family{background:radial-gradient(circle at 6% 5%,#e5e1ff,transparent 35rem),radial-gradient(circle at 94% 35%,#fff0e8,transparent 34rem),#f7f5ff;color:#29244b}
.eduvio-family .wrap{max-width:1140px;padding:clamp(18px,3vw,36px)}
.eduvio-family :is(h1,h2,h3){font-family:'Manrope',system-ui,sans-serif;letter-spacing:-.035em}
.eduvio-family h1{font-size:clamp(1.8rem,3.3vw,2.8rem)}
.eduvio-family .card{border-radius:25px;padding:clamp(19px,2.5vw,31px);box-shadow:0 14px 35px rgba(42,36,91,.075);border:1px solid #e4def6}
.eduvio-family .child{border-radius:18px;padding:clamp(16px,2vw,24px);background:linear-gradient(150deg,#fff,#faf8ff);transition:transform .24s var(--eduvio-ease),box-shadow .24s}
.eduvio-family .child:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(44,35,106,.09)}
.eduvio-family button:not(:disabled){transition:transform .16s,box-shadow .16s;box-shadow:0 6px 14px rgba(79,70,229,.16)}
.eduvio-family button:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(79,70,229,.23)}
.eduvio-family button:not(:disabled):active{transform:translateY(1px)}
.eduvio-family :is(input,select){min-height:45px;background:#fff}
