:root{--container: 1280px;--section-padding: clamp(2rem, 4vw, 3.5rem)}section{width:100%;padding:var(--section-padding) 5%}.section-header{max-width:var(--container);margin:0 auto 3rem;text-align:center}.section-header h2{font-size:clamp(1.9rem,3vw,2.6rem);font-weight:800;margin-bottom:.6rem}.section-header p{color:var(--text-light);font-size:1.05rem}.hero-slider{position:relative;overflow:hidden;padding:2rem 5% 3rem;background:linear-gradient(135deg,#fdfbfd,#f4ecf7)}.hero-slide{max-width:var(--container);margin:auto;text-align:center;display:none;animation:fadeInUp 1s ease}.hero-slide.active{display:block}.hero-slide h1,.hero-slide h2{font-size:clamp(2.4rem,5vw,4rem);font-weight:800;line-height:1.1;background:linear-gradient(to right,var(--text-dark),var(--primary),var(--secondary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-slide p{max-width:720px;margin:1rem auto 2rem;font-size:1.15rem;color:var(--text-light)}.hero-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.hero-dots{margin-top:2rem;display:flex;justify-content:center;gap:10px}.hero-dots .dot{width:10px;height:10px;background:#ccc;border-radius:50%;cursor:pointer}.hero-dots .dot.active{background:var(--primary)}.classes-section{background:linear-gradient(to bottom,#fdfbfd,#f4ecf7)}.class-grid{max-width:var(--container);margin:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2.2rem}.class-card h3{margin-bottom:.6rem}.class-card p{flex-grow:1}.card-action{margin-top:auto;font-weight:600;color:var(--primary)}.feature-grid{max-width:var(--container);margin:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2.5rem}.dark-toggle{display:none!important}.theme-btn{background:transparent;border:1px solid rgba(0,0,0,.1);width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;color:var(--text-dark);font-size:1.1rem;margin-left:10px;margin-right:10px}.theme-btn:hover{background:#0000000d;transform:rotate(15deg);color:var(--primary)}.floating-back-btn{position:fixed;bottom:20px;left:80px;width:50px;height:50px;border-radius:50%;background:#fff;color:#2c3e50;box-shadow:0 4px 15px #0000004d;z-index:1999;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:all .3s ease;text-decoration:none}.floating-back-btn:hover{transform:translateY(-3px);box-shadow:0 6px 20px #0006;color:var(--primary)}footer{background:#0f0f0f;color:#ecf0f1;padding:3rem 5% 1.5rem;position:relative;overflow:hidden}.footer-grid{max-width:var(--container);margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid #333}.footer-col h3,.footer-brand h2{color:#fff;margin-bottom:1.2rem}.footer-col a,.footer-brand p{color:#bbb;font-size:.95rem;line-height:1.6}.footer-col a:hover{color:var(--primary);padding-left:6px}.social-links{display:flex;gap:1rem}.social-links a{width:40px;height:40px;border-radius:50%;background:#222;display:flex;align-items:center;justify-content:center;color:#fff;transition:.3s}.social-links a:hover{background:var(--primary);transform:translateY(-3px)}.copyright{max-width:var(--container);margin:2rem auto 0;display:flex;justify-content:space-between;flex-wrap:wrap;color:#777;font-size:.85rem;gap:1rem}.back-to-top{position:fixed;bottom:100px;right:20px;width:50px;height:50px;background:var(--primary);color:#fff;border:none;border-radius:50%;box-shadow:0 10px 30px #0000004d;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s cubic-bezier(.34,1.56,.64,1);z-index:9998}.back-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:var(--primary-dark);transform:translateY(-5px)}@media(max-width:992px){.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.hero-slide h1{font-size:2.2rem}.hero-slide p{font-size:1rem}.footer-grid{grid-template-columns:1fr;text-align:center}.footer-col{text-align:center}.footer-col .logo,.social-links{justify-content:center}.copyright{flex-direction:column;text-align:center}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-on-scroll{opacity:1;transform:translateY(0);transition:none}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}
