/* ====================================
   ACACIA GREEN ACADEMY
   PROFESSIONAL RED THEME
==================================== */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:'Segoe UI',sans-serif;
}

html{
    scroll-behavior:smooth;
}

body{
    background:#f8f9fa;
    color:#333;
    overflow-x:hidden;
}

/* TOP BAR */

.top-bar{
    background:#c00000;
    color:#fff;
    text-align:center;
    padding:10px;
    font-size:14px;
    font-weight:600;
}
/* HEADER */

.header{
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:15px 5%;
    position:sticky;
    top:0;
    z-index:10000;
    box-shadow:0 2px 15px rgba(0,0,0,.1);
}

.logo-section{
    display:flex;
    align-items:center;
}

.logo-section img{
    width:70px;
    height:70px;
    object-fit:contain;
}

/* SOCIAL ICONS */

.header-social{
    display:flex;
    align-items:center;
    gap:20px;
    margin-left:auto;
    margin-right:70px;
}

.header-social a{
    width:40px;
    height:40px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:white;
    text-decoration:none;
    font-size:18px;
    box-shadow:0 4px 12px rgba(0,0,0,.15);
}

.header-social a:nth-child(1){
    background:#25D366;
}

.header-social a:nth-child(2){
    background:#1877F2;
}

.header-social a:nth-child(3){
    background:#FF0000;
}


}
/* HERO */

.hero{
    position:relative;
    height:100vh;
    overflow:hidden;
}

.hero-slider{
    position:absolute;
    width:100%;
    height:100%;
}

.hero-content{
    position:relative;
    z-index:5;
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    color:#fff;
    background:rgba(0,0,0,.45);
}
.hero-content h1{

    color:#00aa00;

    font-size:70px;

    font-weight:900;

    background:rgba(0,0,0,0.55);

    padding:20px 40px;

    border-radius:15px;

    display:inline-block;

    text-shadow:
    2px 2px 8px rgba(0,0,0,.8);

    animation:float 2s infinite;
}

.hero-content p{
    font-size:28px;
    margin-top:10px;
}

@keyframes float{

    0%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-12px);
    }

    100%{
        transform:translateY(0);
    }

}

/* BUTTON */

.btn{
    display:inline-block;
    margin-top:20px;
    padding:14px 30px;
    background:#c00000;
    color:#fff;
    text-decoration:none;
    border-radius:6px;
    transition:.3s;
}

.btn:hover{
    background:#008000;
}

/* GENERAL SECTION */

.section{
    padding:80px 8%;
}

.section h2{
    text-align:center;
    color:#c00000;
    margin-bottom:35px;
    font-size:38px;
}

.card{
    background:#fff;
    border-radius:15px;
    padding:30px;
    text-align:center;

    box-shadow:
    0 10px 25px rgba(0,0,0,.08);

    transition:.4s;
}

.card:hover{

    transform:
    translateY(-12px);

    box-shadow:
    0 20px 40px rgba(0,0,0,.15);

}

.card h3{
    color:#008000;
    margin-bottom:10px;
}
/* ==========================
   ACADEMICS SECTION
========================== */

.academic-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:35px;
}

/* MOBILE */

@media(max-width:768px){
    .academic-grid{
        grid-template-columns:1fr;
    }
}

/* MAIN CONTAINER */

.academic-box{
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.4s;
}

.academic-box:hover{
    transform:translateY(-8px);
    box-shadow:0 20px 40px rgba(0,0,0,.15);
}

/* PHOTO SECTION */

.slider{
    position:relative;
    height:350px;
    overflow:hidden;
}

.slide{
    position:absolute;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:0;
}

/* IMAGE SLIDER */

.slide1{
    animation:fade1 12s infinite;
}

.slide2{
    animation:fade2 12s infinite;
}

.slide3{
    animation:fade3 12s infinite;
}

@keyframes fade1{
    0%,30%{opacity:1;}
    33%,100%{opacity:0;}
}

@keyframes fade2{
    0%,30%{opacity:0;}
    33%,63%{opacity:1;}
    66%,100%{opacity:0;}
}

@keyframes fade3{
    0%,63%{opacity:0;}
    66%,100%{opacity:1;}
}

/* CONTENT PANEL */

.academic-content{

    margin:20px;

    padding:25px;

    border-radius:18px;

    box-shadow:0 5px 15px rgba(0,0,0,.06);

}

.academic-content h3{

    margin-bottom:15px;

    font-size:28px;

}

.academic-content p{

    line-height:1.8;

    margin:0;

}

/* KINDERGARTEN */

.kindergarten .academic-content{

    background:#fff8e1;

    border-left:8px solid #ff9800;

}

.kindergarten h3{

    color:#e65100;

}

/* LOWER PRIMARY */

.lower .academic-content{

    background:#eaf4ff;

    border-left:8px solid #2196f3;

}

.lower h3{

    color:#1565c0;

}

/* UPPER PRIMARY */

.upper .academic-content{

    background:#edf8ee;

    border-left:8px solid #4caf50;

}

.upper h3{

    color:#2e7d32;

}

/* JUNIOR SCHOOL */

.junior .academic-content{

    background:#f7edfb;

    border-left:8px solid #9c27b0;

}

.junior h3{

    color:#6a1b9a;

}
/* ====================================
   ABOUT US SECTION
==================================== */

.about-wrapper{

    display:flex;
    gap:40px;
    align-items:flex-start;
    margin-bottom:40px;

}

/* PHOTO AREA */

.about-image{

    flex:0 0 35%;

}

/* SLIDER CONTAINER */

.about-slider{

    position:relative;
    height:500px;
    overflow:hidden;
    border-radius:20px;

    box-shadow:
    0 10px 25px rgba(0,0,0,.15);

}

/* SLIDES */

.about-slide{

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:100%;

    object-fit:cover;
    object-position:center;

    border-radius:20px;

    opacity:0;

    transform:scale(1);

    transition:
    opacity 2s ease-in-out,
    transform 6s linear;

}

.about-slide.active{

    opacity:1;

    transform:scale(1.12);

}

/* CONTENT AREA */

.about-content{

    flex:1;

    background:#fff8e1;

    padding:30px;

    border-radius:18px;

    border-left:8px solid #c00000;

    box-shadow:
    0 10px 25px rgba(0,0,0,.08);

}

.about-content h3{

    color:#c00000;

    font-size:32px;

    margin-bottom:20px;

}

.about-content p{

    line-height:1.8;

    text-align:justify;

    margin-bottom:15px;

}

/* DIRECTOR MESSAGE */

.director-box{

    margin-top:25px;

    padding:20px;

    background:#ffffff;

    border-left:5px solid #c00000;

    border-radius:10px;

}

/* MOBILE */

@media(max-width:900px){

    .about-wrapper{

        flex-direction:column;

        gap:20px;

    }

    .about-image{

        width:100%;

        flex:none;

    }

    .about-slider{

        height:320px;

    }

    .about-content{

        width:100%;

        padding:25px;

    }

}

/* ====================================
   VISION • MISSION • MOTTO POSTERS
==================================== */

.poster-gallery{

    display:flex;

    flex-direction:row;

    justify-content:center;

    align-items:flex-start;

    gap:30px;

    margin-top:40px;

}

.poster-card{

    width:280px;

}

.poster-card img{

    width:100%;

    height:auto;

    display:block;

    border-radius:20px;

    box-shadow:0 10px 25px rgba(0,0,0,.15);

    transition:.4s;

}

.poster-card:hover img{

    transform:
    translateY(-10px)
    scale(1.03);

}

/* MOBILE ONLY */

@media(max-width:768px){

    .poster-gallery{

        flex-direction:column;

        align-items:center;

    }

    .poster-card{

        width:280px;

    }

}

/* ====================================
   MOBILE OVERLAP FIX
==================================== */

@media(max-width:768px){

    /* HERO / SLIDER */

    .hero,
    .slider,
    .hero-slider{

        height:auto !important;

        min-height:500px;

    }

    /* ABOUT US SECTION */

    .about-wrapper{

        margin-top:80px !important;

        position:relative;

        z-index:20;

    }

    .about-content{

        margin-top:20px;

    }

    /* GENERAL SECTIONS */

    section{

        clear:both;

        position:relative;

    }

}

/* ====================================
   HERO MOBILE FIX
==================================== */

@media(max-width:768px){

    .hero-content{

        position:absolute;

        top:55%;

        left:50%;

        transform:translate(-50%,-50%);

        width:90%;

        text-align:center;

        z-index:10;

    }

    .hero-content h1{

        font-size:36px !important;

        line-height:1.1;

        color:#00cc00;

        margin-bottom:15px;

    }

    .hero-content p{

        font-size:18px;

        color:#ffffff;

    }

}
/* ====================================
   MOBILE SECTION SPACING FIX
==================================== */

@media(max-width:768px){

    .about-wrapper{

        margin-top:120px !important;

    }

    .about-image{

        margin-bottom:20px;

    }

    .about-content{

        margin-top:20px;

    }

}

/* ====================================
   MOBILE MENU FIX
==================================== */

@media(max-width:768px){

    /* SHOW ONLY HAMBURGER */

    .menu-toggle{

        display:block !important;

        font-size:32px;

        color:#008000;

        cursor:pointer;

    }

    /* HIDE MENU LINKS */

    nav{

        display:none !important;

        position:absolute;

        top:70px;

        right:15px;

        background:#ffffff;

        padding:15px;

        border-radius:15px;

        box-shadow:0 10px 25px rgba(0,0,0,.15);

        z-index:9999;

    }

    /* SHOW MENU WHEN ACTIVE */

    nav.active{

        display:flex !important;

        flex-direction:column;

        gap:12px;

        align-items:flex-start;

    }

    nav a{

        color:#333;

        text-decoration:none;

        font-size:16px;

        font-weight:700;

    }

}
/* ====================================
   HERO TEXT ONLY OVERLAY
==================================== */

/* REMOVE BIG DARK OVERLAY */

.hero-content{

    background:none !important;

}

/* TITLE BOX */

.hero-content h1{

    display:inline-block;

    background:rgba(0,0,0,.45);

    padding:15px 25px;

    border-radius:20px;

    color:#00cc00;

    font-size:42px;

    line-height:1.1;

    text-shadow:
    2px 2px 8px rgba(0,0,0,.6);

}

/* MOTTO BOX */

.hero-content p{

    display:inline-block;

    background:rgba(0,0,0,.45);

    padding:10px 20px;

    border-radius:15px;

    color:#ffffff;

    font-size:24px;

    margin-top:15px;

}

/* BUTTON */

.hero-content .btn{

    margin-top:20px;

}

/* MOBILE */

@media(max-width:768px){

    .hero-content h1{

        font-size:36px !important;

        padding:12px 20px;

    }

    .hero-content p{

        font-size:18px !important;

        padding:8px 15px;

    }

}
/* ====================================
   FINAL MENU FIX
==================================== */

/* DESKTOP */

nav{

    display:flex;

    gap:25px;

    align-items:center;

}

nav a{

    text-decoration:none !important;

    color:#333;

    font-weight:600;

    font-size:18px;

}

nav a:hover{

    color:#008000;

}

.menu-toggle{

    display:none;

}

/* MOBILE */

@media(max-width:768px){

    .menu-toggle{

        display:block;

        font-size:30px;

        color:#008000;

        cursor:pointer;

    }

    nav{

        display:none;

        position:absolute;

        top:70px;

        right:15px;

        background:#ffffff;

        padding:15px;

        border-radius:15px;

        box-shadow:0 10px 25px rgba(0,0,0,.15);

        z-index:9999;

    }

    nav.active{

        display:flex;

        flex-direction:column;

        gap:12px;

    }

}
/* ====================================
   FLOATING SOCIAL MEDIA ICONS
==================================== */

.header-social a{

    animation:floatIcons 3s ease-in-out infinite;

}

/* DIFFERENT TIMING */

.header-social a:nth-child(1){

    animation-delay:0s;

}

.header-social a:nth-child(2){

    animation-delay:0.5s;

}

.header-social a:nth-child(3){

    animation-delay:1s;

}

/* FLOAT ANIMATION */

@keyframes floatIcons{

    0%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-8px);
    }

    100%{
        transform:translateY(0);
    }

}

/* HOVER EFFECT */

.header-social a:hover{

    transform:scale(1.15);

    transition:.3s;

}
.about-wrapper{

    display:flex;

    flex-direction:row-reverse;

    gap:40px;

    align-items:flex-start;

}

.about-wrapper{

    display:flex;

    flex-direction:row-reverse;

    gap:40px;

    align-items:flex-start;

}

/* PHONE */

@media(max-width:900px){

    .about-wrapper{

        flex-direction:column;

    }

}

.about-wrapper{

    display:flex;

    flex-direction:row-reverse;

    gap:40px;

    align-items:flex-start;

}

/* PHONE */

@media(max-width:900px){

    .about-wrapper{

        flex-direction:column-reverse;

        gap:20px;

    }

}

/* ====================================
   LOCATION MAP
==================================== */

.map-container{

    max-width:1200px;

    margin:auto;

    overflow:hidden;

    border-radius:20px;

    box-shadow:0 10px 25px rgba(0,0,0,.15);

}

.map-container iframe{

    width:100%;

    display:block;

}

/* MOBILE */

@media(max-width:768px){

    .map-container iframe{

        height:300px;

    }

}

/* ====================================
   CO-CURRICULAR ACTIVITIES
==================================== */

.activities-intro{

    max-width:1000px;

    margin:0 auto 35px;

    text-align:center;

    line-height:1.8;

    font-size:18px;

}

/* NOTICE BOARD */

.notice-board{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:30px;

}

/* NOTICE CARDS */

.notice-card{

    position:relative;

    padding:25px;

    border-radius:15px;

    box-shadow:
    0 10px 25px rgba(0,0,0,.15);

    transition:.4s;

    transform:rotate(-2deg);

}

.notice-card:nth-child(even){

    transform:rotate(2deg);

}

.notice-card:hover{

    transform:scale(1.05);

    box-shadow:
    0 20px 40px rgba(0,0,0,.2);

}

/* PIN */

.pin{

    position:absolute;

    top:-10px;

    left:50%;

    transform:translateX(-50%);

    width:22px;

    height:22px;

    background:#c00000;

    border-radius:50%;

    box-shadow:
    0 2px 6px rgba(0,0,0,.3);

}

/* CARD COLOURS */

.ballet{

    background:#fff8e1;

}

.taekwondo{

    background:#e8f5e9;

}

.band{

    background:#e3f2fd;

}

.dance{

    background:#fce4ec;

}

.chess{

    background:#ede7f6;

}

.scouts{

    background:#fff3e0;

}

.soccer{

    background:#e0f7fa;

}

.robotics{

    background:#f3e5f5;

}

/* HEADINGS */

.notice-card h3{

    color:#c00000;

    margin-bottom:15px;

    text-align:center;

}

/* TEXT */

.notice-card p{

    line-height:1.8;

    text-align:justify;

}

/* TABLET */

@media(max-width:1024px){

    .notice-board{

        grid-template-columns:repeat(2,1fr);

    }

}

/* PHONE */

@media(max-width:768px){

    .notice-board{

        grid-template-columns:1fr;

    }

    .notice-card{

        transform:none;

    }

}

/* SWINGING NOTICE CARDS */

.notice-card{

    position:relative;

    padding:25px;

    border-radius:15px;

    box-shadow:
    0 10px 25px rgba(0,0,0,.15);

    transform-origin:top center;

    animation:swingNotice 5s ease-in-out infinite;

}

/* DIFFERENT TIMING */

.notice-card:nth-child(2){

    animation-delay:.5s;

}

.notice-card:nth-child(3){

    animation-delay:1s;

}

.notice-card:nth-child(4){

    animation-delay:1.5s;

}

.notice-card:nth-child(5){

    animation-delay:2s;

}

.notice-card:nth-child(6){

    animation-delay:2.5s;

}

.notice-card:nth-child(7){

    animation-delay:3s;

}

.notice-card:nth-child(8){

    animation-delay:3.5s;

}

/* SWING EFFECT */

@keyframes swingNotice{

    0%{
        transform:rotate(-3deg);
    }

    50%{
        transform:rotate(3deg);
    }

    100%{
        transform:rotate(-3deg);
    }

}

/* HOVER */

.notice-card:hover{

    animation-play-state:paused;

    transform:scale(1.05);

}
/* ====================================
   UPCOMING EVENTS
==================================== */

.events-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    margin-top:40px;

}

/* EVENT CARDS */

.event-card{

    padding:30px;

    border-radius:25px;

    color:#ffffff;

    box-shadow:
    0 15px 35px rgba(0,0,0,.18);

    transition:.4s;

    position:relative;

    overflow:hidden;

}

.event-card:hover{

    transform:
    translateY(-10px)
    scale(1.02);

}

/* HEADINGS */

.event-card h3{

    text-align:center;

    margin-bottom:20px;

    font-size:30px;

    color:#ffffff;

}

/* TEXT */

.event-card p{

    line-height:1.8;

    text-align:center;

    margin-bottom:15px;

}

/* DIVIDERS */

.event-card hr{

    border:none;

    height:2px;

    background:rgba(255,255,255,.3);

    margin:20px 0;

}

/* ACADEMIC TRIPS */

.trips{

    background:linear-gradient(
        135deg,
        #ff9800,
        #ff5722
    );

}

/* ACADEMIC CLINICS */

.clinics{

    background:linear-gradient(
        135deg,
        #008000,
        #4caf50
    );

}

/* NATIONAL ASSESSMENTS */

.assessments{

    background:linear-gradient(
        135deg,
        #c00000,
        #ff3333
    );

}

/* FLOATING EFFECT */

.event-card{

    animation:eventFloat 5s ease-in-out infinite;

}

.event-card:nth-child(2){

    animation-delay:1s;

}

.event-card:nth-child(3){

    animation-delay:2s;

}

@keyframes eventFloat{

    0%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-8px);
    }

    100%{
        transform:translateY(0);
    }

}

/* MOBILE */

@media(max-width:900px){

    .events-grid{

        grid-template-columns:1fr;

    }

    .event-card{

        padding:25px;

    }

    .event-card h3{

        font-size:24px;

    }

}

/* ====================================
   GLASS EVENTS CARDS
==================================== */

.events-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    margin-top:40px;

}

/* GLASS CARD */

.event-card{

    background:rgba(255,255,255,.18);

    backdrop-filter:blur(12px);

    border:1px solid rgba(255,255,255,.3);

    border-radius:25px;

    padding:30px;

    text-align:center;

    box-shadow:
    0 15px 35px rgba(0,0,0,.15);

    transition:.4s;

}

.event-card:hover{

    transform:
    translateY(-10px)
    scale(1.03);

}

/* CALENDAR */

.calendar{

    width:90px;

    margin:0 auto 20px;

    border-radius:15px;

    overflow:hidden;

    box-shadow:0 5px 15px rgba(0,0,0,.15);

}

.calendar span{

    display:block;

    background:#c00000;

    color:white;

    padding:8px;

    font-weight:bold;

}

.calendar strong{

    display:block;

    background:white;

    color:#333;

    padding:15px;

    font-size:28px;

}

/* COLOURED TOP BORDER */

.trips{

    border-top:8px solid #ff9800;

}

.clinics{

    border-top:8px solid #008000;

}

.assessments{

    border-top:8px solid #c00000;

}

.event-card h3{

    color:#222;

    margin-bottom:15px;

}

.event-card p{

    line-height:1.8;

    color:#444;

}

/* MOBILE */

@media(max-width:900px){

    .events-grid{

        grid-template-columns:1fr;

    }

}
/* ====================================
   E-LEARNING
==================================== */

.elearning-card{

    max-width:900px;

    margin:auto;

    text-align:center;

    padding:50px;

    border-radius:25px;

    background:linear-gradient(
        135deg,
        #008000,
        #00aa00
    );

    color:white;

    box-shadow:
    0 15px 35px rgba(0,0,0,.18);

}

.elearning-icon{

    font-size:70px;

    margin-bottom:20px;

    animation:floatPortal 3s ease-in-out infinite;

}

.elearning-card h3{

    font-size:32px;

    margin-bottom:20px;

}

.elearning-card p{

    line-height:1.8;

    margin-bottom:15px;

}

@keyframes floatPortal{

    0%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-10px);
    }

    100%{
        transform:translateY(0);
    }

}

.elearning-card .btn{

    margin-top:20px;

}

/* MOBILE */

@media(max-width:768px){

    .elearning-card{

        padding:30px;

    }

    .elearning-card h3{

        font-size:26px;

    }

}

.elearning-card{

    max-width:900px;

    margin:auto;

    text-align:center;

    padding:50px;

    border-radius:25px;

    background:linear-gradient(
        135deg,
        #ffd700,
        #ffb300,
        #ff9800
    );

    color:#222;

    box-shadow:
    0 15px 35px rgba(0,0,0,.18);

}

/* ====================================
   ABOUT US OVERLAP EFFECT
==================================== */

#about{

    position:relative;

    margin-top:-120px;

    z-index:20;

}

/* MOBILE */

@media(max-width:768px){

    #about{

        margin-top:-60px;

    }

}

/* ====================================
   TRANSPORT
==================================== */

.transport-card{

    max-width:1000px;

    margin:auto;

    padding:40px;

    text-align:center;

    border-radius:25px;

    background:linear-gradient(
        135deg,
        #2196f3,
        #64b5f6,
        #90caf9
    );

    color:white;

    box-shadow:
    0 15px 35px rgba(0,0,0,.18);

    transition:.4s;

}

.transport-card:hover{

    transform:translateY(-10px);

}

.transport-icon{

    font-size:80px;

    margin-bottom:20px;

    animation:busFloat 3s ease-in-out infinite;

}

.transport-card h3{

    margin-bottom:20px;

    font-size:32px;

}

.transport-card p{

    line-height:1.9;

    margin-bottom:15px;

}

/* FLOATING BUS */

@keyframes busFloat{

    0%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-10px);
    }

    100%{
        transform:translateY(0);
    }

}

/* MOBILE */

@media(max-width:768px){

    .transport-card{

        padding:25px;

    }

    .transport-card h3{

        font-size:26px;

    }

}
/* ====================================
   TRANSPORT
==================================== */

.transport-container{

    display:flex;

    align-items:center;

    gap:40px;

    background:linear-gradient(
        135deg,
        #2196f3,
        #64b5f6
    );

    padding:30px;

    border-radius:25px;

    box-shadow:
    0 15px 35px rgba(0,0,0,.15);

    overflow:hidden;

}

.transport-image{

    flex:0 0 40%;

}

.transport-image img{

    width:100%;

    height:350px;

    object-fit:cover;

    border-radius:20px;

}

.transport-content{

    flex:1;

    color:white;

}

.transport-content h3{

    font-size:32px;

    margin-bottom:20px;

}

.transport-content p{

    line-height:1.9;

    margin-bottom:15px;

}

/* ROUTE BADGES */

.route-badges{

    margin-top:20px;

}

.route-badges span{

    display:inline-block;

    background:white;

    color:#2196f3;

    padding:10px 18px;

    border-radius:30px;

    margin:5px;

    font-weight:600;

    box-shadow:
    0 4px 10px rgba(0,0,0,.15);

}

/* HOVER */

.transport-container:hover{

    transform:translateY(-5px);

    transition:.4s;

}

/* MOBILE */

@media(max-width:900px){

    .transport-container{

        flex-direction:column;

        text-align:center;

    }

    .transport-image{

        width:100%;

    }

    .transport-image img{

        height:250px;

    }

}

/* ====================================
   TRANSPORT SECTION
==================================== */

.transport-container{

    display:flex;

    align-items:center;

    gap:40px;

    background:linear-gradient(
        135deg,
        #87ceeb,
        #b0e0ff,
        #d6f0ff
    );

    padding:35px;

    border-radius:25px;

    box-shadow:
    0 15px 35px rgba(0,0,0,.15);

    overflow:hidden;

    transition:.4s;

}

.transport-container:hover{

    transform:translateY(-8px);

}

/* IMAGE */

.transport-image{

    flex:0 0 40%;

}

.transport-image img{

    width:100%;

    height:350px;

    object-fit:cover;

    border-radius:20px;

    box-shadow:
    0 10px 25px rgba(0,0,0,.15);

}

/* CONTENT */

.transport-content{

    flex:1;

    color:#003366;

}

.transport-content h3{

    font-size:34px;

    margin-bottom:20px;

    color:#003366;

}

.transport-content p{

    line-height:1.9;

    margin-bottom:15px;

    font-size:17px;

}

/* ROUTE BADGES */

.route-badges{

    margin-top:25px;

}

.route-badges span{

    display:inline-block;

    background:#ffffff;

    color:#003366;

    padding:10px 18px;

    border-radius:30px;

    margin:5px;

    font-weight:600;

    box-shadow:
    0 4px 10px rgba(0,0,0,.15);

    transition:.3s;

}

.route-badges span:hover{

    transform:translateY(-4px);

}

/* MOBILE */

@media(max-width:900px){

    .transport-container{

        flex-direction:column;

        text-align:center;

        padding:25px;

    }

    .transport-image{

        width:100%;

    }

    .transport-image img{

        height:250px;

    }

    .transport-content h3{

        font-size:28px;

    }

}

/* ====================================
   ABOUT PHOTO OVERLAP ON PHONE
==================================== */

@media(max-width:900px){

    #about{

        position:relative;

        margin-top:-80px !important;

        z-index:20;

    }

    .about-image{

        position:relative;

        z-index:25;

    }

    .about-slider{

        box-shadow:
        0 20px 50px rgba(0,0,0,.25);

    }

}

/* FIX ABOUT US MOBILE SPACING */

@media(max-width:900px){

    .about-wrapper{

        display:flex;

        flex-direction:column;

        gap:15px !important;

    }

    .about-image{

        margin:0 !important;

        padding:0 !important;

    }

    .about-slider{

        margin:0 !important;

    }

    #about h2{

        margin-bottom:20px !important;

    }

}

/* ====================================
   ABOUT OVERLAP PHONE FIX
==================================== */

@media(max-width:900px){

    #about{

        position:relative;

        margin-top:-120px !important;

        z-index:50;

    }

    .about-wrapper{

        margin-top:0 !important;

        gap:15px !important;

    }

    .about-image{

        margin:0 !important;

        padding:0 !important;

    }

    .about-slider{

        height:320px;

        box-shadow:
        0 20px 50px rgba(0,0,0,.25);

    }

}

/* ====================================
   CLEAN ABOUT US MOBILE FIX
==================================== */

@media(max-width:900px){

    #about{

        margin-top:0 !important;

        position:relative;

        z-index:1;

    }

    .about-wrapper{

        display:flex;

        flex-direction:column-reverse;

        gap:20px;

        margin:0 !important;

        padding:0 !important;

    }

    .about-image{

        width:100%;

        margin:0 !important;

        padding:0 !important;

    }

    .about-slider{

        height:320px;

        margin:0 !important;

        border-radius:20px;

    }

    .about-content{

        margin:0 !important;

        padding:25px;

    }

    #about h2{

        margin-bottom:20px;

    }

}
