:root{--primary:#e54d32;--primary-dark:#bf3820;--secondary:#647744;--dark:#202a25;--light:#f7f6ef;--glass:rgba(250,249,242,.94)}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{background:#faf9f2;color:var(--dark)}
::selection{background:#d8f478;color:#202a25}
.navbar{border-bottom:1px solid #202a2520}
.navbar-brand img{height:52px;width:auto}
.nav-link{font-size:.9rem}
.navbar .btn-login{background:#202a25;color:#fff!important;border:1px solid #202a25;border-radius:12px;box-shadow:3px 3px 0 #c5df7a}
.navbar .btn-login:hover,.navbar .btn-login:focus-visible,.navbar .btn-login:active{background:#40552d;color:#fff!important;border-color:#40552d;box-shadow:3px 3px 0 #c5df7a;filter:none}
.btn-main{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:#e54d32;color:#fff;text-decoration:none;font-weight:700;border:2px solid #202a25!important;border-radius:14px;padding:16px 25px;box-shadow:5px 5px 0 #202a25;transition:transform .2s,box-shadow .2s}
.btn-main:hover{color:#fff;background:#c83e26;transform:translate(2px,2px);box-shadow:3px 3px 0 #202a25}
a:focus-visible,button:focus-visible{outline:3px solid #647744;outline-offset:6px}
.hero{padding:155px 0 55px;background:radial-gradient(ellipse at 85% 35%,#e5edcb 0,transparent 48%),#faf9f2;text-align:left;position:relative;overflow:hidden}
.hero-layout{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:65px}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:.72rem;letter-spacing:.13em;font-weight:800;text-transform:uppercase;margin-bottom:22px}
.eyebrow::before{content:'';height:9px;width:9px;background:#e54d32;border-radius:50%}
.hero h1{font-size:clamp(3.25rem,6.3vw,6rem);line-height:1.02;letter-spacing:-.055em;margin-bottom:24px}
.hero h1 span{display:inline-block;color:#e54d32;background:none;-webkit-text-fill-color:currentColor;position:relative}
.hero h1 span::after{content:'';position:absolute;bottom:-7px;left:0;width:100%;height:9px;border-top:4px solid #e54d32;border-radius:50%;transform:rotate(-3deg)}
.hero-description{color:#62695f;font-size:1.02rem;line-height:1.85;max-width:490px;margin:28px 0}
.hero-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}
.hero-link{color:#202a25;font-weight:700;text-underline-offset:6px;font-size:.9rem}
.hero-note{display:flex;align-items:center;gap:9px;margin-top:27px;font-size:.78rem;color:#62695f}
.hero-note b{background:#e2edcd;color:#40552d;padding:4px 9px;border-radius:6px;font-size:.7rem}
.math-playground{min-height:450px;position:relative;display:flex;align-items:center;justify-content:center}
.math-orbit{position:absolute;inset:12px;border:1px dashed #87936e80;border-radius:50%;transform:rotate(-20deg)}
.math-orbit::after{content:'';position:absolute;inset:35px;border:1px solid #87936e30;border-radius:50%}
.math-card{width:min(100%,340px);position:relative;z-index:2;background:#fffef8;border:2px solid #202a25;border-radius:22px;box-shadow:12px 12px 0 #202a25;transform:rotate(-5deg);padding:28px;transition:transform .3s}
.math-card:hover{transform:rotate(-2deg) translateY(-5px)}
.math-card-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #202a2520;padding-bottom:16px;font-size:.65rem;font-weight:800;letter-spacing:.1em}
.math-card-top b{background:#dcf184;padding:5px 9px;border-radius:5px;letter-spacing:0}
.math-question{font-family:'Outfit',sans-serif;font-size:3.5rem;letter-spacing:-.04em;margin:30px 0 20px;text-align:center;line-height:1.2}
.math-question em{font-style:normal;color:#e54d32}
.math-answer{background:#edf2df;border:1px dashed #7e8d61;border-radius:12px;padding:16px;text-align:center;margin:0;font-size:.85rem;color:#4d5b3b;min-height:58px}
.math-reveal{display:block;width:100%;margin-top:20px;background:#202a25;color:#fff;border:0;border-radius:10px;padding:13px;font-size:.8rem;font-weight:700;transition:background .2s}
.math-reveal:hover{background:#40552d}
.math-sticker{position:absolute;z-index:3;display:grid;place-items:center;font-family:'Outfit',sans-serif;font-weight:800;animation:math-float 6s ease-in-out infinite;user-select:none}
.sticker-plus{left:0;top:35px;width:87px;height:87px;background:#d8ee88;color:#202a25;border:2px solid #202a25;border-radius:22px;font-size:3.5rem;rotate:-14deg}
.sticker-pi{right:0;top:20px;width:88px;height:88px;background:#e65c43;color:#fff;border-radius:50%;font-size:3.5rem;rotate:12deg;animation-delay:-2s}
.sticker-star{left:8px;bottom:12px;color:#e54d32;font-size:6.5rem;animation-delay:-4s}
.sticker-note{right:-8px;bottom:23px;background:#e9dcfc;border:2px solid #202a25;border-radius:9px;padding:13px 18px;font-family:'Plus Jakarta Sans',sans-serif;font-size:.75rem;rotate:8deg;animation-delay:-1s}
.math-strip{margin-top:70px;border-block:1px solid #202a2525;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0;font-size:.73rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.math-strip i{color:#e54d32;font-size:1.3rem;font-style:normal}
.admin-overview{max-width:none;background:transparent;box-shadow:none;border:0;margin:32px 0 0;padding:0}
.admin-overview__label{color:#727b69;font-size:.65rem;letter-spacing:.16em;margin-bottom:15px}
.admin-stat{background:#f0f0e5;border:1px solid #202a2515;border-radius:14px;padding:23px;transition:transform .25s,background .25s}
.admin-stat:hover{transform:translateY(-5px);background:#e7edce}
.admin-stat__value{font-size:2rem;color:#202a25;letter-spacing:-.04em}
.admin-stat__label{font-size:.76rem;color:#62695f}
.ganitalay-story{padding:50px 0 70px}
.story-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:65px;align-items:start;border-top:1px solid #202a2520;padding-top:45px}
.story-layout h2{font-family:'Outfit',sans-serif;font-size:2.6rem;letter-spacing:-.04em;line-height:1.12}
.story-layout p{font-size:.96rem;line-height:1.95;color:#62695f;margin:0}
#videos{background:#edf0e4!important;padding:75px 0!important;border-radius:40px 40px 0 0;scroll-margin-top:20px}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:32px}
.section-heading h2{font-family:'Outfit',sans-serif;font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.04em;margin:0}
.section-heading p{max-width:265px;margin:0;font-size:.85rem;line-height:1.7;color:#62695f}
.video-card{background:#faf9f2;border:1px solid #202a25;border-radius:18px;padding:9px;box-shadow:4px 4px 0 #c8d2af;transition:transform .25s,box-shadow .25s}
.video-card:hover{transform:translateY(-7px) rotate(-1deg);box-shadow:7px 10px 0 #c8d2af}
.video-container{border-radius:11px;overflow:hidden}
#contact{margin-top:0!important;padding:75px 0!important}
#contact .shadow{box-shadow:5px 5px 0 #dedfce!important;border:1px solid #202a2530;border-radius:20px!important;padding:32px!important}
#contact .bg-light{background:#f0e5d7!important}
#contact h2{font-family:'Outfit',sans-serif;letter-spacing:-.035em}
.form-control{background:#faf9f2;border-color:#d9ddcf;border-radius:10px}
.form-control:focus{border-color:#647744;box-shadow:0 0 0 3px #64774420;background:#fff}
footer{background:#e7ebdc;border-top:1px solid #202a2520}
.language-wrapper:has(#google_translate_element:empty){display:none}
.reveal-on-scroll.is-waiting{opacity:0;transform:translateY(24px)}
.reveal-on-scroll{transition:opacity .7s ease,transform .7s ease;transition-delay:var(--reveal-delay,0ms)}
@keyframes math-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@media(max-width:991px){.hero{padding-top:125px}.hero-layout{gap:35px}.math-card{padding:22px;width:285px}.math-playground{min-height:400px}.sticker-plus{width:65px;height:65px}.sticker-pi{width:65px;height:65px}.sticker-note{right:0;bottom:0}.story-layout{gap:35px}}
@media(max-width:767px){.hero{padding:125px 0 35px}.hero-layout{grid-template-columns:1fr;gap:25px}.hero h1{font-size:clamp(3rem,12vw,4.5rem)}.hero-description{max-width:100%}.math-playground{min-height:400px;max-width:440px;width:100%;margin:auto}.math-card{width:280px}.math-strip{margin-top:25px;flex-wrap:wrap;justify-content:center;font-size:.62rem;gap:12px}.math-strip i:last-child{display:none}.story-layout{grid-template-columns:1fr;gap:18px}.ganitalay-story{padding:30px 0 45px}.section-heading{align-items:start;flex-direction:column;gap:15px}.section-heading p{max-width:none}#videos{border-radius:25px 25px 0 0;padding:45px 0!important}.admin-stat{padding:18px}.admin-stat__value{font-size:1.65rem}#contact{padding:45px 0!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal-on-scroll.is-waiting{opacity:1;transform:none}}
