
/* ==========================
        HERO SECTION
========================== */

.hero{

    position:relative;

    width:100%;

    min-height:85vh;

    background:url("../home/school.jpeg") center center/cover no-repeat;

    display:flex;

    justify-content:center;

    align-items:center;

    text-align:center;

    overflow:hidden;
}

/* Dark overlay */

.overlay{

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:100%;

    background:rgba(0,0,0,0.55);

    z-index:1;
}

/* Content */

.hero-content{

    position:relative;

    z-index:2;

    max-width:850px;

    padding:20px;

    color:#fff;
}

.hero-content h1{

    font-size:3.5rem;

    margin-bottom:20px;

    font-weight:700;

    line-height:1.2;
}



/* ==========================
        TABLET
========================== */

@media (max-width:992px){

.hero{

    min-height:75vh;
}

.hero-content h1{

    font-size:2.8rem;
}


}

/* ==========================
        MOBILE
========================== */

@media (max-width:768px){

.hero{

    min-height:65vh;

    padding:80px 20px;
}

.hero-content h1{

    font-size:2rem;
}



}


/* ==========================
        CONTACT SECTION
========================== */

.contact-section{

    max-width:1200px;

    margin:80px auto;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    padding:0 20px;
}

.contact-card{

    background:#ffffff;

    padding:50px 35px;

    text-align:center;

    border-radius:12px;

    box-shadow:0 8px 30px rgba(0,0,0,.08);

    transition:.35s;
}

.contact-card:hover{

    transform:translateY(-10px);

    box-shadow:0 15px 40px rgba(0,0,0,.15);
}

.icon{

    width:90px;

    height:90px;

    margin:0 auto 25px;

    border-radius:50%;

    background:#f5f5f5;

    display:flex;

    justify-content:center;

    align-items:center;
}

.icon i{

    font-size:2rem;

    color:#0F4C81;
}

.contact-card h2{

    font-size:2rem;

    margin-bottom:25px;

    color:#1e2b5e;

    font-family:Georgia, serif;

    font-weight:bold;
}

.contact-card p{

    color:#555;

    line-height:1.8;

    font-size:1.05rem;
}

/* ==========================
        RESPONSIVE
========================== */

@media(max-width:900px){

.contact-section{

    grid-template-columns:1fr;

    gap:25px;
}

.contact-card{

    padding:40px 25px;
}

.contact-card h2{

    font-size:1.8rem;
}

.icon{

    width:80px;

    height:80px;
}

.icon i{

    font-size:1.7rem;
}

}


/* map */

/* ==========================
        MAP SECTION
========================== */

.map-section{
    width:100%;
    padding:70px 8%;
    background:#f8f9fc;
}

.map-heading{
    text-align:center;
    margin-bottom:35px;
}

.map-heading h2{
    font-size:2.3rem;
    color:#1e2640;
    margin-bottom:10px;
}

.map-heading p{
    color:#666;
    font-size:1.05rem;
}

.map-container{
    width:100%;
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 15px 35px rgba(0,0,0,0.12);
}

.map-container iframe{
    width:100%;
    height:450px;
    display:block;
    border:none;
}

/* Mobile */

@media(max-width:768px){

    .map-section{
        padding:50px 5%;
    }

    .map-heading h2{
        font-size:1.8rem;
    }

    .map-container iframe{
        height:320px;
    }

}