*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:Arial, Helvetica, sans-serif;
}

body{

    background:linear-gradient(135deg,#1d2671,#c33764);
    height:100vh;
}

#theme-toggle{

    width:45px;
    height:45px;

    border:none;
    border-radius:50%;

    cursor:pointer;

    font-size:20px;

    margin-right:20px;

    background:white;

    transition:.4s;
}

#theme-toggle:hover{

    transform:rotate(180deg) scale(1.1);

}

.dark{

background:#111;

}

.dark nav{

background:rgba(20,20,20,.9);

}

.dark a{

color:white;

}

.dark input{

background:#333;

color:white;

}

.dark .dropdown{

background:#222;

}

.dark .submenu ul{

background:#222;

}

.container-width{
  max-width:1280px;
  margin:25px auto;
}
.container1-width{
  max-width:1550px;
  margin:25px auto;
}


.btn{
    padding:1rem 2.4rem;
    border-radius: 60px;
    color: #060101;
    font-size: 1.5rem;
    font-weight: bold;
    font-family: Arial, sans-serif;
    text-align: center;
    line-height: 1.1;
    box-shadow:
        inset 0 8px 15px rgba(255,255,255,0.3),
        inset 0 -8px 15px rgba(0,0,0,0.15),
        0 8px 15px rgba(0,0,0,0.2);

    text-shadow: 3px 3px 6px rgba(0,0,0,0.3);
    cursor: pointer;
    transition:0.4s;
}
.btn-primary{
  background-color: dodgerblue;
}
.btn-secondary{
  background-color: gold;
}
.btn-accent{
  background-color: yellow;
}
.btn:hover{

transform:translateY(-8px);
box-shadow:0 15px 30px rgba(0,0,0,.3);

}

.btn-block{
  width:100%;
}
  


  .scroll{

box-shadow:

0 15px 35px rgba(0,0,0,.35);

backdrop-filter:blur(25px);

}

.menu a.active{

color:#FFD700;

}


#topBtn{

opacity:0;

visibility:hidden;

transition:.4s;

}

#topBtn.show{

opacity:1;

visibility:visible;

}



.navigation{
    top:0;
    position:sticky;
    backdrop-filter:blur(18px);
    z-index: 999;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:15px 35px;
    border-radius:18px;
    background:rgba(255,255,255,.15);
    box-shadow:
    0 10px 25px rgba(0,0,0,.35),
    inset 0 1px 1px rgba(255,255,255,.5);

    transform:perspective(900px) rotateX(5deg);
}

.logo{

    color:white;
    font-size:28px;
    font-weight:bold;
}

.logo i{
    color:#FFD700;
}

.menu{
    display:flex;
    list-style:none;
}

.menu>li{

    position:relative;
    margin:0 18px;
}

.menu li a{

    color:#f8f5f5;
    text-decoration:none;
    padding:12px 18px;
    display:block;
    transition:.3s;
}

.menu li:hover>a{

    color:#ffd700;
    transform:translateY(-2px);
}

.dropdown{

    position:absolute;
    top:100%;
    left:0;
    list-style:none;
    min-width:220px;
    background:rgba(255,255,255,.12);
    backdrop-filter:blur(20px);
    border-radius:15px;
    transform:rotateX(-90deg);
    transform-origin:top;
    opacity:0;
    visibility:hidden;
    transition:.4s;
    box-shadow:0 15px 35px rgba(0,0,0,.3);

}

.menu li:hover>.dropdown{

    transform:rotateX(0);
    opacity:1;
    visibility:visible;
}

.dropdown li{

    position:relative;
}

.dropdown li a{

    padding:14px 20px;
}

.dropdown li:hover{

    background:rgba(255,255,255,.12);
}

.submenu>ul{

    position:absolute;
    left:100%;
    top:0;
    min-width:220px;
    list-style:none;
    background:rgba(255,255,255,.12);
    backdrop-filter:blur(20px);
    border-radius:15px;
    transform:rotateY(-90deg);
    transform-origin:left;
    opacity:0;
    visibility:hidden;
    transition:.4s;
    box-shadow:0 15px 35px rgba(0,0,0,.3);

}

.submenu:hover>ul{

    transform:rotateY(0);
    opacity:1;
    visibility:visible;
}

.search{

    display:flex;
    align-items:center;
}

.search input{

    width:220px;
    padding:10px 15px;
    border:none;
    outline:none;
    border-radius:30px 0 0 30px;
}

.search button{

    border:none;
    padding:10px 18px;
    border-radius:0 30px 30px 0;
    background:#FFD700;
    cursor:pointer;
    transition:.3s;
}

.search button:hover{

    background:white;
}

@media(max-width:900px){

navigation{

flex-direction:column;
padding:20px;

}

.menu{

flex-direction:column;
width:100%;
margin-top:20px;

}

.menu li{

margin:5px 0;
}

.search{

margin-top:20px;
width:100%;
}

.search input{

width:100%;
}

.dropdown,
.submenu ul{

position:static;
transform:none;
visibility:visible;
opacity:1;
display:none;
background:rgba(255,255,255,.08);

}

.menu li:hover>.dropdown,
.submenu:hover>ul{

display:block;
}

}

/* hero section */


.hero{

min-height:50vh;

display:grid;

grid-template-columns:1fr 1fr;

align-items:center;

gap:30px;

padding:40px 8%;

}

/* Left */

.welcome{

display:inline-block;

padding:10px 18px;

border-radius:40px;

background:rgba(255,255,255,.08);

color:#FFD700;

margin-bottom:20px;

backdrop-filter:blur(10px);

}

.hero h1{

font-size:30px;

line-height:1.1;

color:white;

margin-bottom:25px;

}

.hero h1 span{

background:linear-gradient(90deg,#00E5FF,#FFD700);
background-clip: text;
-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

.hero p{

font-size:20px;

line-height:1.8;

color:#ddd;

margin-bottom:40px;

}

/* Buttons */

.hero-buttons{

display:flex;

gap:20px;

margin-bottom:60px;

}
.hero-buttons a{
    text-decoration: none;
}

/*  
.btn{

padding:16px 35px;

border-radius:50px;

text-decoration:none;

font-weight:bold;

transition:.4s;

}

.btn-primary{

background:linear-gradient(135deg,#00E5FF,#0066FF);

color:white;

}

.btn-secondary{

border:2px solid rgba(255,255,255,.2);

color:white;

backdrop-filter:blur(10px);

}

.btn:hover{

transform:translateY(-8px);

box-shadow:0 15px 30px rgba(0,0,0,.3);

}
*/

/* Stats */

.hero-stats{

display:flex;

gap:40px;

}

.hero-stats div{

background:rgba(255,255,255,.06);

padding:20px;

border-radius:18px;

backdrop-filter:blur(10px);

text-align:center;

min-width:130px;

transition:.4s;

}

.hero-stats div:hover{

transform:translateY(-10px);

}

.hero-stats h2{

color:#FFD700;

font-size:30px;

}

.hero-stats p{

margin:0;

font-size:16px;

}

/* Right */

.hero-right{

display:flex;
justify-content:center;
position:relative;

}

/* Card */
.math-card1{

width:360px;
height:420px;
border-radius:30px;
background:rgba(255,255,255,.08);
backdrop-filter:blur(18px);
box-shadow:

0 20px 50px rgba(0,0,0,.35);

display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
position:relative;
overflow:hidden;
animation:float 5s ease-in-out infinite;

}

.math-card h1{

font-size:140px;
color:#FFD700;
margin:0;

}

.math-card p{

color:white;
padding:0 40px;
text-align:center;

}

/* Decorative circles */

.circle{

position:absolute;
border-radius:50%;
filter:blur(40px);

}

.circle1{

width:200px;
height:200px;
background:#00E5FF55;
top:-80px;
left:-80px;

}

.circle2{

width:180px;
height:180px;
background:#FFD70055;
bottom:-60px;
right:-60px;

}

/* Floating symbols */

.symbol{

position:absolute;
font-size:40px;
color:white;
animation:floatSymbol 6s infinite ease-in-out;

}

.pi{

top:20px;
left:10%;

}

.sigma{

top:60%;
left:-20px;

}

.sqrt{

right:20px;
top:20%;

}

.delta{

bottom:20px;
right:10%;

}

@keyframes float{

50%{

transform:translateY(-18px);

}

}

@keyframes floatSymbol{

50%{

transform:translateY(-20px) rotate(15deg);

}

}

/*=========================
     COURSES
=========================*/

.courses{

padding:100px 8%;
text-align:center;

}

.courses h2{

font-size:48px;
color:white;
margin-bottom:20px;

}

.section-text{

color:#ccc;
font-size:20px;
margin-bottom:70px;

}

.course-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:10px;

}

.course-card{

background:rgba(255,255,255,.08);
backdrop-filter:blur(15px);
padding:10px;
border-radius:25px;
transition:.45s;
position:relative;
overflow:hidden;

}

.course-card::before{

content:"";
position:absolute;
width:180px;
height:180px;
background:#00E5FF22;
border-radius:50%;
top:-70px;
right:-70px;
transition:.5s;

}

.course-card:hover{

transform:
translateY(-15px)
rotateX(8deg);
box-shadow:0 25px 40px rgba(0,0,0,.35);

}

.course-card:hover::before{

transform:scale(1.5);

}

.course-card i{

font-size:65px;
display:block;
margin-bottom:20px;

}

.course-card h3{

color:white;
font-size:30px;
margin-bottom:15px;

}

.course-card p{

color:#ddd;
margin-bottom:25px;

}

.course-card a{

display:inline-block;
padding:12px 28px;
border-radius:30px;
background:linear-gradient(135deg,#FFD700,#ff9800);
color:black;
text-decoration:none;
font-weight:bold;
transition:.35s;

}

.course-card a:hover{

transform:scale(1.08);

}

/*==========================
      EXERCISES
===========================*/

.exercises{

padding:50px 8%;

}

.section-title{

text-align:center;
margin-bottom:30px;

}

.section-title span{

display:inline-block;
padding:10px 20px;
border-radius:30px;
background:rgba(255,255,255,.08);
color:#FFD700;
margin-bottom:20px;

}

.section-title h2{

font-size:40px;
color:white;
margin-bottom:20px;

}

.section-title p{

font-size:20px;
color:#ccc;

}

.exercise-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(270px,1fr));
gap:10px;

}

.exercise-card{

background:rgba(255,255,255,.08);
backdrop-filter:blur(18px);
padding:40px;
border-radius:25px;
transition:.4s;
position:relative;
overflow:hidden;

}

.exercise-card:hover{

transform:translateY(-15px);
box-shadow:0 25px 45px rgba(0,0,0,.35);

}

.difficulty{

position:absolute;
right:20px;
top:20px;
padding:8px 18px;
border-radius:20px;
font-size:14px;
font-weight:bold;
background:white;

}

.easy .difficulty{

background:#22c55e;

color:white;

}

.medium .difficulty{

background:#f59e0b;
color:white;

}

.hard .difficulty{

background:#ef4444;
color:white;

}

.exercise-icon{

font-size:70px;
margin-bottom:25px;

}

.exercise-card h3{

color:white;
font-size:30px;
margin-bottom:15px;

}

.exercise-card p{

color:#ddd;
line-height:1.7;
margin-bottom:25px;

}

.progress{

height:12px;
background:rgba(255,255,255,.12);
border-radius:30px;
overflow:hidden;
margin-bottom:10px;

}

.progress-bar{

height:100%;
background:linear-gradient(90deg,#00E5FF,#00FF88);
border-radius:30px;

}

.exercise-card small{

color:#FFD700;
display:block;
margin-bottom:30px;

}

.exercise-btn{

display:inline-block;
padding:14px 30px;
border-radius:35px;
text-decoration:none;
background:linear-gradient(135deg,#00E5FF,#0066FF);
color:white;
font-weight:bold;
transition:.3s;

}

.exercise-btn:hover{

transform:scale(1.08);

}


.features{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
gap:10px;

}

.card{
background:rgba(255,255,255,.08);
backdrop-filter:blur(20px);
border:1px solid rgba(255,255,255,.25);
border-radius:25px;
padding:30px;
transform-style:preserve-3d;
transition:.5s;

box-shadow:
0 30px 50px rgba(0,0,0,.35);

}

.card:hover{

transform:
rotateX(10deg)
rotateY(-10deg)
translateY(-12px);

box-shadow:
0 40px 80px rgba(0,0,0,.45);

}

.card h2{

margin-bottom:25px;
color:#fff;

}

/* Timeline */

.timeline{

position:relative;
display:flex;
justify-content:space-between;

}

.progress{

position:absolute;
height:6px;
background:#00f5ff;
top:25px;
left:0;
width:35%;
border-radius:10px;
animation:grow 4s infinite alternate;

}

@keyframes grow{

0%{width:10%;}
100%{width:90%;}

}

.step{

text-align:center;
z-index:2;

}

.circle{

width:55px;
height:55px;
line-height:55px;
border-radius:50%;
background:linear-gradient(#00e5ff,#006eff);
margin:auto;
box-shadow:0 10px 25px cyan;
font-weight:bold;

}

/* Challenge */

#countdown{

font-size:40px;
text-align:center;
margin:25px 0;
color:#00ffff;
font-weight:bold;

}

.math-card{
width:250px;
height:300px;
background:linear-gradient(135deg,#ffffff22,#ffffff11);
padding:2px;
border-radius:20px;
text-align:center;
transform:translateZ(40px);

}

.math-card button{

margin-top:20px;
padding:3px 7px;
border:none;
border-radius:30px;
background:#00d2ff;
color:white;
font-size:18px;
cursor:pointer;
transition:.4s;

}

.math-card button:hover{

transform:scale(1.1);

}

/* Stats */

.stats{

display:flex;
justify-content:space-around;
text-align:center;

}

.counter{

font-size:30px;
color:#00ffff;

}

/* Testimonials */

.carousel{

overflow:hidden;
position:relative;
height:170px;

}

.testimonial{

position:absolute;
width:100%;
opacity:0;
transform:translateX(100px);
transition:.8s;
text-align:center;

}

.testimonial.active{

opacity:1;
transform:translateX(0);

}

/*==========================
      ARTICLES
===========================*/

.articles{

padding:120px 8%;

}

.article-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(350px,1fr));
gap:40px;

}

.article-card{

background:rgba(255,255,255,.08);
backdrop-filter:blur(15px);
border-radius:25px;
overflow:hidden;
transition:.4s;
box-shadow:0 15px 30px rgba(0,0,0,.2);

}

.article-card:hover{

transform:translateY(-15px);
box-shadow:0 25px 45px rgba(0,0,0,.35);

}

.article-card img{

width:100%;
height:240px;
object-fit:cover;
transition:.4s;

}

.article-card:hover img{

transform:scale(1.08);

}

.article-content{

padding:30px;

}

.article-content span{

display:inline-block;
padding:8px 18px;
border-radius:30px;
background:#00E5FF;
color:white;
margin-bottom:20px;
font-size:14px;

}

.article-content h3{

font-size:28px;
color:white;
margin-bottom:18px;

}

.article-content p{

color:#ddd;
line-height:1.8;
margin-bottom:25px;

}

.article-content a{

text-decoration:none;
font-weight:bold;
color:#FFD700;
transition:.3s;

}

.article-content a:hover{

padding-left:10px;

}
.btn,
.exercise-btn,
.course-card a{
    position:relative;
    overflow:hidden;
}

.ripple{
    position:absolute;
    width:20px;
    height:20px;
    background:rgba(255,255,255,.6);
    border-radius:50%;
    transform:translate(-50%,-50%);
    animation:ripple .6s linear;
    pointer-events:none;
}

@keyframes ripple{

    from{
        width:0;
        height:0;
        opacity:1;
    }

    to{
        width:400px;
        height:400px;
        opacity:0;
    }

}








.menu a.active{

color:#FFD700;

}
#topBtn{

opacity:0;
visibility:hidden;
transition:.4s;

}

#topBtn.show{

opacity:1;
visibility:visible;

}
/* =========================
      FOOTER
==========================*/

.footer{

margin-top:120px;
padding:70px 8% 25px;
position:relative;
background:rgba(255,255,255,.08);
backdrop-filter:blur(20px);
border-top:1px solid rgba(255,255,255,.15);
box-shadow: 0 -15px 40px rgba(0,0,0,.35),

inset 0 1px 1px rgba(255,255,255,.25);

overflow:hidden;

}

/* Animated Border */

.footer::before{

content:"";
position:absolute;
left:-50%;
top:0;
width:200%;
height:3px;
background:linear-gradient(90deg,#00E5FF,#00FF88,#FFD700,#FF00AA,#00E5FF);
animation:borderMove 6s linear infinite;

}

@keyframes borderMove{
100%{
transform:translateX(50%);
}}

.footer-container{

display:grid;
grid-template-columns:2fr 1fr 1fr 1fr;
gap:50px;

}

/* ======================= */

.footer-box h2{

color:#fff;
font-size:32px;
margin-bottom:20px;

}

.footer-box h2 i{

color:#FFD700;

}

.footer-box h3{

color:white;
margin-bottom:25px;
font-size:22px;

}

.footer-box p{

color:#ddd;
line-height:1.8;

}

/* Links */

.footer-box a{

display:block;
color:#ddd;
text-decoration:none;
margin:12px 0;
transition:.35s;
position:relative;

}

.footer-box a:hover{

color:#FFD700;
padding-left:10px;

}

/* Newsletter */

.newsletter{

display:flex;
margin-top:30px;

}

.newsletter input{

flex:1;
padding:14px 18px;
border:none;
outline:none;
border-radius:35px 0 0 35px;
background:rgba(255,255,255,.12);
color:white;

}

.newsletter button{

width:70px;
border:none;
cursor:pointer;
border-radius:0 35px 35px 0;
background:linear-gradient(135deg,#FFD700,orange);
font-size:18px;
transition:.4s;

}

.newsletter button:hover{

transform:scale(1.08);

}

/* Bottom */

.footer-bottom{

margin-top:60px;
padding-top:30px;
border-top:1px solid rgba(255,255,255,.15);
display:flex;
justify-content:space-between;
align-items:center;
flex-wrap:wrap;

}

/* Social */

.social{

display:flex;
gap:18px;

}

.social a{

width:48px;
height:48px;
display:flex;
justify-content:center;
align-items:center;
border-radius:50%;
text-decoration:none;
color:white;
background:rgba(255,255,255,.08);
box-shadow:0 10px 25px rgba(0,0,0,.25);
transition:.35s;

}

.social a:hover{

transform:translateY(-8px) rotate(360deg);
background:#FFD700;
color:#111;

}

/* Copyright */

.footer-bottom p{

color:#ddd;

}

/* Top Button */

#topBtn{

width:55px;
height:55px;
border:none;
cursor:pointer;
border-radius:50%;
font-size:22px;
color:white;
background:linear-gradient(135deg,#00E5FF,#0066FF);
box-shadow:0 15px 30px rgba(0,0,0,.35);
transition:.35s;

}

#topBtn:hover{

transform:translateY(-8px) scale(1.1);

}

/* Floating Glow */

.footer::after{

content:"";
position:absolute;
width:300px;
height:300px;
right:-120px;
bottom:-120px;
border-radius:50%;
background:#00E5FF33;
filter:blur(90px);

}

/* Responsive */

@media(max-width:1000px){

.footer-container{

grid-template-columns:1fr 1fr;

}

}

@media(max-width:700px){

.footer-container{

grid-template-columns:1fr;
text-align:center;

}

.newsletter{

justify-content:center;

}

.footer-bottom{

flex-direction:column;
gap:20px;

}

}


