/* ==========================================
   ABOUT HERO
========================================== */

.about-hero{

    position:relative;

    min-height:65vh;

    display:flex;

    align-items:center;

    background:url("../images/about/hero/hero.jpg") center center/cover no-repeat;

    overflow:hidden;

}

/* Overlay */

.about-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(
        90deg,
        rgba(7,45,20,.80) 0%,
        rgba(7,45,20,.62) 45%,
        rgba(0,0,0,.25) 100%
    );

}

/* Content */

.about-hero .container{

    position:relative;

    z-index:2;

    width:100%;

}

.about-hero-content{

    max-width:650px;

    color:#fff;

}

/* Section Tag */

.about-hero .section-tag{

    display:inline-block;

    margin-bottom:20px;

    color:#9EE37D;

    font-size:14px;

    font-weight:700;

    letter-spacing:3px;

    text-transform:uppercase;

}

/* Heading */

.about-hero h1{

    font-family:var(--heading-font);

    font-size:64px;

    line-height:1.1;

    margin-bottom:25px;

    color:#fff;

}

/* Subtitle */

.about-hero p{

    font-size:20px;

    line-height:1.8;

    max-width:600px;

    color:rgba(255,255,255,.90);

    margin-bottom:35px;

}

/* Breadcrumb */

.breadcrumb{

    display:flex;

    align-items:center;

    gap:12px;

    font-size:15px;

    color:rgba(255,255,255,.75);

}

.breadcrumb a{

    color:#fff;

    transition:.3s;

}

.breadcrumb a:hover{

    color:var(--primary-green);

}

.breadcrumb span:last-child{

    color:#9EE37D;

}

/* ==========================================
   RESPONSIVE
========================================== */

@media(max-width:992px){

    .about-hero{

        min-height:60vh;

    }

    .about-hero h1{

        font-size:52px;

    }

}

@media(max-width:768px){

    .about-hero{

        min-height:50vh;

    }

    .about-hero-content{

        text-align:center;

        margin:auto;

    }

    .about-hero h1{

        font-size:38px;

    }

    .about-hero p{

        font-size:17px;

    }

    .breadcrumb{

        justify-content:center;

    }

}

/* ==========================================
   WHO WE ARE
========================================== */

.who-we-are{

    padding:120px 0;

    background:#ffffff;

}

.section-heading{

    max-width:850px;

    margin:0 auto;

    text-align:center;

}

.section-heading h2{

    font-family:var(--heading-font);

    font-size:52px;

    color:var(--dark);

    margin:20px 0 25px;

    line-height:1.2;

}

.section-intro{

    font-size:18px;

    line-height:1.9;

    color:var(--text);

}

/* Cards */

.trust-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

    margin-top:70px;

}

.trust-card{

    background:#ffffff;

    border-radius:18px;

    padding:35px 25px;

    text-align:center;

    box-shadow:0 12px 35px rgba(0,0,0,.08);

    transition:.35s;

}

.trust-card:hover{

    transform:translateY(-10px);

    box-shadow:0 20px 40px rgba(0,0,0,.12);

}

.trust-card i{

    font-size:42px;

    color:var(--primary-green);

    margin-bottom:20px;

}

.trust-card h3{

    font-family:var(--heading-font);

    font-size:24px;

    margin-bottom:15px;

    color:var(--dark);

}

.trust-card p{

    font-size:16px;

    line-height:1.7;

    color:var(--text);

}

/* Image */

.who-image{

    margin-top:70px;

}

.who-image img{

    width:100%;

    height:600px;

    object-fit:cover;

    border-radius:25px;

    display:block;

    box-shadow:0 20px 50px rgba(0,0,0,.12);

}

@media(max-width:992px){

    .trust-grid{

        grid-template-columns:repeat(2,1fr);

    }

}

@media(max-width:768px){

    .who-we-are{

        padding:80px 0;

    }

    .section-heading h2{

        font-size:36px;

    }

    .section-intro{

        font-size:16px;

    }

    .trust-grid{

        grid-template-columns:1fr;

    }

    .who-image img{

        height:350px;

    }

}


.who-image figcaption{

    text-align:center;

    margin-top:18px;

    color:var(--text);

    font-size:15px;

    font-style:italic;

}

/* ==========================================
   OUR STORY
========================================== */

.our-story{
    padding:120px 0;
    background:var(--white);
    overflow:hidden;
}

.story-grid{
    display:grid;
    grid-template-columns:55% 45%;
    align-items:center;
    gap:70px;
}

/* Content */

.story-content{
    max-width:650px;
}

.story-content h2{
    font-family:var(--heading-font);
    font-size:52px;
    line-height:1.2;
    color:var(--dark);
    margin:20px 0 30px;
}

.story-content p{
    font-size:17px;
    line-height:1.9;
    color:var(--text);
    margin-bottom:22px;
}

.story-content strong{
    color:var(--primary-green);
    font-weight:600;
}

/* Image */

.story-image{
    position:relative;
    margin:0;
}

.story-image img{
    width:100%;
    height:640px;
    object-fit:cover;
    display:block;
    border-radius:24px;
    box-shadow:0 25px 60px rgba(0,0,0,.12);
    transition:transform .5s ease;
}

.story-image:hover img{
    transform:scale(1.03);
}

/* Floating Badge */

.story-badge{
    position:absolute;
    right:-25px;
    bottom:70px;

   background:linear-gradient(
        135deg,
        var(--primary-green),
        #3f8f4d
    );

    color:#fff;

    border-radius:18px;
    padding:22px 26px;

    box-shadow:0 18px 45px rgba(0,0,0,.12);

    text-align:center;

    
}

.story-badge span{
    display:block;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:2px;
    color:rgba(255,255,255,.85);
    margin-bottom:8px;
}

.story-badge h3{
    font-size:30px;
    font-family:var(--heading-font);
    margin:0;
    color:#fff;
}

/* Caption */

.story-image figcaption{
    margin-top:18px;
    text-align:center;
    font-size:15px;
    color:var(--text);
    font-style:italic;
}

/* Quote */

.story-quote{
    margin-top:90px;
    text-align:center;
    font-family: Georgia, "Times New Roman", Times, serif;
    font-weight:600;
    font-style:italic;
}

.story-quote blockquote{
    position:relative;
    max-width: 950px;
    margin: auto;

    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 46px;
    line-height: 1.45;
    font-style: italic;
    font-weight:normal;
    color:#1d1d1d;
    letter-spacing: 0.5px;
}

.story-quote blockquote::before{

    content:"“";

    position:absolute;

    left:-35px;
    top:-40px;

    font-size:110px;

    color:rgba(46,125,50,.12);

    font-family:serif;

    line-height:1;
}

@media (max-width:992px){

    .story-grid{
        grid-template-columns:1fr;
        gap:50px;
    }

    .story-content{
        max-width:100%;
    }

    .story-content h2{
        font-size:40px;
    }

    .story-image img{
        height:500px;
    }

    .story-badge{
        right:20px;
        bottom:20px;
    }

}

@media (max-width:768px){

    .our-story{
        padding:80px 0;
    }

    .story-content h2{
        font-size:34px;
    }

    .story-content p{
        font-size:16px;
    }

    .story-image img{
        height:360px;
    }

    .story-badge{
        padding:16px 20px;
    }

    .story-badge h3{
        font-size:24px;
    }

    .story-quote{
        margin-top:60px;
    }

    .story-quote blockquote{
        font-size:24px;
    }

    .story-quote blockquote::before{
        font-size:80px;
        left:-10px;
        top:-30px;
    }

}

/* ==========================================
   MISSION & VISION
========================================== */

.mission-vision{
    padding:120px 0;
    background:var(--white);
}

.purpose-wrapper{
    margin-top:80px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    position:relative;
}

/* Vertical Divider */

.purpose-wrapper::before{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:50%;
    width:1px;
    background:rgba(0,0,0,.08);
    transform:translateX(-50%);
}

/* Individual Item */

.purpose-item{
    padding:0 20px;
}

.purpose-label{
    display:inline-block;
    margin-bottom:18px;

    font-size:13px;
    font-weight:600;
    letter-spacing:2px;
    text-transform:uppercase;

    color:var(--primary-green);
}

.purpose-item h3{
    font-family:var(--heading-font);
    font-size:36px;
    line-height:1.25;
    color:var(--dark);
    margin-bottom:28px;
}

.purpose-item p{
    font-size:18px;
    line-height:1.9;
    color:var(--text);
    margin:0;
}

/* ==========================================
   Responsive
========================================== */

@media (max-width:992px){

    .purpose-wrapper{
        grid-template-columns:1fr;
        gap:70px;
    }

    .purpose-wrapper::before{
        display:none;
    }

    .purpose-item{
        padding:0;
    }

}

@media (max-width:768px){

    .mission-vision{
        padding:80px 0;
    }

    .purpose-wrapper{
        margin-top:60px;
        gap:50px;
    }

    .purpose-item h3{
        font-size:30px;
    }

    .purpose-item p{
        font-size:16px;
        line-height:1.8;
    }

}

/* ==========================================
   CORE VALUES
========================================== */

.core-values{
    padding:120px 0;
    background:#f8faf8;
}

.values-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
    margin-top:70px;
}

.value-card{
    background:var(--white);
    padding:45px 35px;
    border-radius:20px;
    border:1px solid rgba(0,0,0,.06);
    transition:all .35s ease;
}

.value-card:hover{
    transform:translateY(-6px);
    border-color:rgba(46,125,50,.25);
    box-shadow:0 18px 45px rgba(0,0,0,.08);
}

.value-icon{
    width:64px;
    height:64px;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:28px;

    background:rgba(46,125,50,.10);
}

.value-icon i{
    font-size:28px;
    color:var(--primary-green);
}

.value-card h3{
    font-family:var(--heading-font);
    font-size:28px;
    color:var(--dark);
    margin-bottom:18px;
}

.value-card p{
    font-size:16px;
    line-height:1.9;
    color:var(--text);
    margin:0;
}

/* ==========================================
   Responsive
========================================== */

@media (max-width:992px){

    .values-grid{
        grid-template-columns:repeat(2,1fr);
    }

}

@media (max-width:768px){

    .core-values{
        padding:80px 0;
    }

    .values-grid{
        grid-template-columns:1fr;
        gap:25px;
        margin-top:50px;
    }

    .value-card{
        padding:35px 28px;
    }

    .value-icon{
        width:58px;
        height:58px;
        margin-bottom:22px;
    }

    .value-icon i{
        font-size:24px;
    }

    .value-card h3{
        font-size:24px;
    }

    .value-card p{
        font-size:15px;
        line-height:1.8;
    }

}
