/* ==========================================
   Tech Futures Education Foundation
   style.css
========================================== */

:root{

    --bg:#08111f;
    --bg2:#0f1d33;

    --card:#152540;

    --primary:#3CFF7A;

    --primaryHover:#70ff9c;

    --text:#f5f5f5;

    --gray:#b9c5d1;

    --shadow:0px 10px 30px rgba(0,0,0,.30);

    --radius:18px;

}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Poppins',sans-serif;

    background:var(--bg);

    color:var(--text);

    line-height:1.6;

}

.container{

    width:90%;

    max-width:1200px;

    margin:auto;

}

/* =========================
HEADER
========================= */

header{

    position:sticky;

    top:0;

    z-index:999;

    background:#091426;

    border-bottom:1px solid rgba(255,255,255,.08);

}

header .container{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:20px 0;

}

.logo{

    font-size:1.7rem;

    color:var(--primary);

    font-weight:700;

    letter-spacing:2px;

}

nav ul{

    display:flex;

    list-style:none;

    gap:30px;

}

nav a{

    color:white;

    text-decoration:none;

    transition:.3s;

}

nav a:hover{

    color:var(--primary);

}

/* ==========================
HERO
========================== */

.hero{

    padding:80px 0;

    background:

    radial-gradient(circle at top right,#16345f 0%,transparent 40%),

    linear-gradient(180deg,var(--bg2),var(--bg));

}

.hero-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    align-items:center;

    gap:60px;

}

.hero h1{

    font-size:3.6rem;

    line-height:1.15;

}

.hero span{

    color:var(--primary);

}

.hero p{

    color:var(--gray);

    margin:30px 0;

    font-size:1.15rem;

}

.hero-image img{

    width:100%;

    border-radius:25px;

    box-shadow:var(--shadow);

}

/* ===========================
BUTTONS
=========================== */

.buttons{

    display:flex;

    gap:15px;

    margin-top:30px;

}

.btn{

    padding:15px 32px;

    border-radius:50px;

    text-decoration:none;

    font-weight:600;

    transition:.3s;

}

.primary{

    background:var(--primary);

    color:#08111f;

}

.primary:hover{

    background:var(--primaryHover);

    transform:translateY(-3px);

}

.secondary{

    border:2px solid var(--primary);

    color:white;

}

.secondary:hover{

    background:var(--primary);

    color:#08111f;

}

/* =======================
SECTIONS
======================= */

section{

    padding:90px 0;

}

h2{

    font-size:2.4rem;

    margin-bottom:25px;

    color:var(--primary);

}

/* =======================
PROGRAM CARDS
======================= */

.cards{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

    gap:30px;

}

.card{

    background:var(--card);

    border-radius:var(--radius);

    padding:30px;

    transition:.35s;

    box-shadow:var(--shadow);

}

.card:hover{

    transform:translateY(-10px);

}

.card img{

    width:70px;

    margin-bottom:20px;

}

.card h3{

    margin-bottom:15px;

}

/* ==========================
STATS
========================== */

.stats{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}

.stat{

    background:var(--card);

    padding:30px;

    text-align:center;

    border-radius:var(--radius);

}

.stat h3{

    color:var(--primary);

    font-size:2rem;

}

/* ==========================
CTA
========================== */

.cta{

    text-align:center;

    background:linear-gradient(135deg,#0d2a52,#133b71);

}

.cta p{

    max-width:700px;

    margin:20px auto;

}

/* ==========================
CONTACT
========================== */

.contact-box{

    background:var(--card);

    border-radius:var(--radius);

    padding:40px;

}

.contact-box p{

    margin:15px 0;

}

/* ==========================
FOOTER
========================== */

footer{

    background:#050b16;

    text-align:center;

    padding:35px;

    color:#9aa7b8;

}

/* ==========================
MOBILE
========================== */

@media(max-width:900px){

.hero-grid{

grid-template-columns:1fr;

text-align:center;

}

.hero h1{

font-size:2.6rem;

}

.buttons{

justify-content:center;

}

.stats{

grid-template-columns:repeat(2,1fr);

}

header .container{

flex-direction:column;

gap:20px;

}

}

@media(max-width:600px){

.stats{

grid-template-columns:1fr;

}

nav ul{

flex-wrap:wrap;

justify-content:center;

gap:15px;

}

.hero{

padding:60px 0;

}

.hero h1{

font-size:2rem;

}

}
/* ==========================================
   Scroll Reveal Animation
========================================== */

.hidden{

    opacity:0;

    transform:translateY(40px);

    transition:all .8s ease;

}

.show{

    opacity:1;

    transform:translateY(0);

}