/* =========================================================
   ENVIRONMENT & SUSTAINABILITY PAGE
   Blessings NGO
   Fully scoped to .environment-page
   ========================================================= */


/* =========================================================
   PAGE VARIABLES
   ========================================================= */

.environment-page{
    --env-navy:#123b3a;
    --env-navy-dark:#0b2b2a;
    --env-green:#2f7d50;
    --env-green-dark:#23643f;
    --env-green-light:#eaf5ed;
    --env-sage:#dcebdc;
    --env-orange:#d8893b;
    --env-gold:#e8b76b;
    --env-cream:#f8f5ed;
    --env-soft:#f2f7f3;
    --env-text:#263b38;
    --env-muted:#6c7b77;
    --env-white:#ffffff;
    --env-border:rgba(18,59,58,.11);
    --env-shadow:0 18px 45px rgba(18,59,58,.09);

    color:var(--env-text);
}


/* =========================================================
   COMMON
   ========================================================= */

.environment-page *,
.environment-page *::before,
.environment-page *::after{
    box-sizing:border-box;
}

.environment-page img{
    max-width:100%;
    display:block;
}

.environment-page a{
    text-decoration:none;
}

.environment-page p{
    margin-top:0;
}

.environment-container{
    width:min(1180px, calc(100% - 40px));
    margin:0 auto;
}

.environment-section{
    padding:100px 0;
}

.environment-label{
    display:inline-block;
    margin-bottom:16px;
    font-size:12px;
    font-weight:800;
    letter-spacing:2px;
    line-height:1.4;
    text-transform:uppercase;
    color:var(--env-green);
}

.environment-page h1,
.environment-page h2,
.environment-page h3,
.environment-page p{
    margin-top:0;
}


/* =========================================================
   HERO
   ========================================================= */

.environment-page .environment-hero{
    position:relative;
    min-height:620px;
    display:flex;
    align-items:center;
    overflow:hidden;

    background:
        linear-gradient(
            90deg,
            rgba(7,35,31,.92) 0%,
            rgba(7,35,31,.78) 43%,
            rgba(7,35,31,.42) 72%,
            rgba(7,35,31,.18) 100%
        ),
        url("../images/environment-hero.jpg")
        center center / cover no-repeat;
}

.environment-page .environment-hero-inner{
    position:relative;
    z-index:2;
}

.environment-page .environment-hero-content{
    width:min(680px, 100%);
    padding:80px 0;
}

.environment-page .environment-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:9px;

    margin-bottom:22px;

    color:#e8f4e9;
    font-size:12px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;
}

.environment-page .environment-eyebrow i{
    color:var(--env-gold);
    font-size:16px;
}

.environment-page .environment-hero h1{
    margin-bottom:24px;

    color:var(--env-white);
    font-size:clamp(42px, 5.2vw, 70px);
    font-weight:800;
    line-height:1.04;
    letter-spacing:-1.8px;
}

.environment-page .environment-hero h1 span{
    color:#c8e8bd;
}

.environment-page .environment-hero p{
    max-width:610px;
    margin-bottom:32px;

    color:rgba(255,255,255,.88);
    font-size:18px;
    line-height:1.75;
}

.environment-page .environment-hero-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:14px;
}


/* =========================================================
   BUTTONS
   ========================================================= */

.environment-page .environment-btn{
    min-height:50px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    padding:13px 23px;

    border:1px solid transparent;
    border-radius:6px;

    font-size:14px;
    font-weight:700;
    line-height:1.2;

    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease,
        box-shadow .25s ease,
        color .25s ease;
}

.environment-page .environment-btn:hover{
    transform:translateY(-2px);
}

.environment-page .environment-btn i{
    font-size:13px;
}

.environment-page .environment-btn-primary{
    background:var(--env-orange);
    color:#fff;
    box-shadow:0 10px 25px rgba(216,137,59,.22);
}

.environment-page .environment-btn-primary:hover{
    background:#c7762e;
    box-shadow:0 14px 30px rgba(216,137,59,.28);
}

.environment-page .environment-btn-light{
    background:rgba(255,255,255,.96);
    color:var(--env-navy);
}

.environment-page .environment-btn-light:hover{
    background:#fff;
}

.environment-page .environment-btn-blue{
    background:var(--env-green);
    color:#fff;
}

.environment-page .environment-btn-blue:hover{
    background:var(--env-green-dark);
}

.environment-page .environment-btn-outline{
    background:transparent;
    border-color:rgba(18,59,58,.25);
    color:var(--env-navy);
}

.environment-page .environment-btn-outline:hover{
    background:var(--env-navy);
    border-color:var(--env-navy);
    color:#fff;
}


/* =========================================================
   INTRO
   ========================================================= */

.environment-page .environment-intro{
    background:var(--env-white);
}

.environment-page .environment-two-column{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);
    gap:80px;
    align-items:center;
}

.environment-page .environment-intro-content h2{
    max-width:650px;
    margin-bottom:22px;

    color:var(--env-navy);
    font-size:clamp(34px,4vw,50px);
    font-weight:800;
    line-height:1.12;
    letter-spacing:-1px;
}

.environment-page .environment-intro-content h2 span{
    display:block;
    color:var(--env-green);
}

.environment-page .environment-intro-content p{
    max-width:680px;
    margin-bottom:18px;

    color:var(--env-muted);
    font-size:16px;
    line-height:1.85;
}

.environment-page .environment-intro-card{
    padding:42px;

    background:var(--env-soft);
    border:1px solid var(--env-border);
    border-radius:18px;

    box-shadow:var(--env-shadow);
}

.environment-page .environment-icon{
    width:64px;
    height:64px;

    display:flex;
    align-items:center;
    justify-content:center;

    margin-bottom:25px;

    border-radius:16px;
    background:var(--env-green-light);
    color:var(--env-green);

    font-size:26px;
}

.environment-page .environment-intro-card h3{
    margin-bottom:16px;

    color:var(--env-navy);
    font-size:26px;
    line-height:1.25;
}

.environment-page .environment-intro-card h3 span{
    color:var(--env-green);
}

.environment-page .environment-intro-card p{
    margin-bottom:0;

    color:var(--env-muted);
    font-size:15px;
    line-height:1.8;
}


/* =========================================================
   SECTION HEADINGS
   ========================================================= */

.environment-page .environment-heading{
    max-width:760px;
    margin:0 auto 55px;
    text-align:center;
}

.environment-page .environment-heading h2{
    margin-bottom:18px;

    color:var(--env-navy);
    font-size:clamp(34px,4vw,50px);
    font-weight:800;
    line-height:1.12;
    letter-spacing:-1px;
}

.environment-page .environment-heading h2 span{
    color:var(--env-green);
}

.environment-page .environment-heading p{
    max-width:680px;
    margin:0 auto;

    color:var(--env-muted);
    font-size:16px;
    line-height:1.8;
}


/* =========================================================
   ACTIVITIES
   ========================================================= */

.environment-page .environment-activities{
    background:var(--env-cream);
}

.environment-page .environment-activity-grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:22px;
}

.environment-page .environment-activity-card{
    position:relative;
    min-height:285px;

    padding:32px 28px;

    background:#fff;
    border:1px solid var(--env-border);
    border-radius:14px;

    box-shadow:0 10px 30px rgba(18,59,58,.06);

    overflow:hidden;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.environment-page .environment-activity-card:hover{
    transform:translateY(-6px);

    border-color:rgba(47,125,80,.22);

    box-shadow:0 20px 40px rgba(18,59,58,.11);
}

.environment-page .environment-card-number{
    position:absolute;
    top:20px;
    right:22px;

    color:rgba(47,125,80,.10);

    font-size:42px;
    font-weight:900;
    line-height:1;
}

.environment-page .environment-card-icon{
    width:58px;
    height:58px;

    display:flex;
    align-items:center;
    justify-content:center;

    margin-bottom:24px;

    border-radius:14px;
    background:var(--env-green-light);
    color:var(--env-green);

    font-size:23px;
}

.environment-page .environment-activity-card h3{
    margin-bottom:13px;

    color:var(--env-navy);
    font-size:20px;
    font-weight:800;
    line-height:1.3;
}

.environment-page .environment-activity-card p{
    margin-bottom:0;

    color:var(--env-muted);
    font-size:14px;
    line-height:1.75;
}


/* =========================================================
   REUSE FEATURE
   ========================================================= */

.environment-page .environment-reuse{
    background:#fff;
}

.environment-page .environment-feature{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    min-height:580px;

    overflow:hidden;

    border-radius:20px;
    background:var(--env-navy);

    box-shadow:var(--env-shadow);
}

.environment-page .environment-feature-image{
    min-height:500px;
    overflow:hidden;
}

.environment-page .environment-feature-image img{
    width:100%;
    height:100%;
    min-height:500px;

    object-fit:cover;

    transition:transform .6s ease;
}

.environment-page .environment-feature:hover
.environment-feature-image img{
    transform:scale(1.03);
}

.environment-page .environment-feature-content{
    display:flex;
    flex-direction:column;
    justify-content:center;

    padding:70px;
}

.environment-page .environment-feature-content .environment-label{
    color:#9bd19f;
}

.environment-page .environment-feature-content h2{
    margin-bottom:20px;

    color:#fff;
    font-size:clamp(34px,4vw,48px);
    font-weight:800;
    line-height:1.12;
    letter-spacing:-1px;
}

.environment-page .environment-feature-content h2 span{
    display:block;
    color:#b9e2a9;
}

.environment-page .environment-feature-content > p{
    max-width:540px;
    margin-bottom:15px;

    color:rgba(255,255,255,.78);
    font-size:15px;
    line-height:1.8;
}

.environment-page .environment-feature-points{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:13px 22px;

    margin:18px 0 28px;
}

.environment-page .environment-feature-points div{
    display:flex;
    align-items:flex-start;
    gap:10px;

    color:rgba(255,255,255,.88);

    font-size:14px;
    line-height:1.5;
}

.environment-page .environment-feature-points i{
    flex:0 0 auto;
    margin-top:3px;

    color:#9bd19f;
}


/* =========================================================
   SUSTAINABLE COMMUNITY / DARK SECTION
   ========================================================= */

.environment-page .environment-community{
    background:
        linear-gradient(
            135deg,
            var(--env-navy-dark),
            var(--env-navy)
        );

    color:#fff;
}

.environment-page .environment-heading-light .environment-label{
    color:#a8dca5;
}

.environment-page .environment-heading-light h2{
    color:#fff;
}

.environment-page .environment-heading-light h2 span{
    color:#b9e2a9;
}

.environment-page .environment-heading-light p{
    color:rgba(255,255,255,.72);
}

.environment-page .environment-principles{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
}

.environment-page .environment-principle{
    padding:34px 28px;

    text-align:center;

    border:1px solid rgba(255,255,255,.11);
    border-radius:14px;

    background:rgba(255,255,255,.045);

    transition:
        transform .25s ease,
        background-color .25s ease,
        border-color .25s ease;
}

.environment-page .environment-principle:hover{
    transform:translateY(-5px);
    background:rgba(255,255,255,.075);
    border-color:rgba(168,220,165,.3);
}

.environment-page .environment-principle i{
    display:block;
    margin-bottom:20px;

    color:#a8dca5;
    font-size:30px;
}

.environment-page .environment-principle h3{
    margin-bottom:12px;

    color:#fff;
    font-size:19px;
    font-weight:800;
}

.environment-page .environment-principle p{
    margin-bottom:0;

    color:rgba(255,255,255,.68);
    font-size:14px;
    line-height:1.7;
}


/* =========================================================
   SUSTAINABLE PRODUCTS
   ========================================================= */

.environment-page .environment-products{
    background:var(--env-white);
}

.environment-page .environment-products-content h2{
    max-width:580px;
    margin-bottom:22px;

    color:var(--env-navy);
    font-size:clamp(34px,4vw,50px);
    font-weight:800;
    line-height:1.12;
    letter-spacing:-1px;
}

.environment-page .environment-products-content h2 span{
    display:block;
    color:var(--env-green);
}

.environment-page .environment-products-content p{
    max-width:610px;

    margin-bottom:18px;

    color:var(--env-muted);
    font-size:16px;
    line-height:1.85;
}

.environment-page .environment-products-content .environment-btn{
    margin-top:10px;
}

.environment-page .environment-products-image{
    min-height:470px;

    overflow:hidden;

    border-radius:18px;

    box-shadow:var(--env-shadow);
}

.environment-page .environment-products-image img{
    width:100%;
    height:100%;
    min-height:470px;

    object-fit:cover;

    transition:transform .6s ease;
}

.environment-page .environment-products-image:hover img{
    transform:scale(1.03);
}


/* =========================================================
   SUPPORT
   ========================================================= */

.environment-page .environment-support{
    padding:70px 0;

    background:var(--env-soft);
}

.environment-page .environment-support-box{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:45px;

    padding:50px 55px;

    border:1px solid var(--env-border);
    border-radius:18px;

    background:#fff;

    box-shadow:var(--env-shadow);
}

.environment-page .environment-support-content{
    max-width:650px;
}

.environment-page .environment-support-content h2{
    margin-bottom:16px;

    color:var(--env-navy);
    font-size:clamp(30px,3.5vw,44px);
    font-weight:800;
    line-height:1.15;
}

.environment-page .environment-support-content h2 span{
    color:var(--env-green);
}

.environment-page .environment-support-content p{
    margin-bottom:0;

    color:var(--env-muted);
    font-size:15px;
    line-height:1.8;
}

.environment-page .environment-support-actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:12px;

    flex:0 0 auto;
}


/* =========================================================
   RESPONSIVE — 1100px
   ========================================================= */

@media (max-width:1100px){

    .environment-page .environment-activity-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .environment-page .environment-principles{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}


/* =========================================================
   RESPONSIVE — 900px
   ========================================================= */

@media (max-width:900px){

    .environment-page .environment-section{
        padding:80px 0;
    }

    .environment-page .environment-two-column{
        grid-template-columns:1fr;
        gap:45px;
    }

    .environment-page .environment-feature{
        grid-template-columns:1fr;
    }

    .environment-page .environment-feature-image{
        min-height:400px;
    }

    .environment-page .environment-feature-image img{
        min-height:400px;
        height:400px;
    }

    .environment-page .environment-feature-content{
        padding:55px 45px;
    }

    .environment-page .environment-support-box{
        align-items:flex-start;
        flex-direction:column;
    }

    .environment-page .environment-support-actions{
        justify-content:flex-start;
    }

}


/* =========================================================
   RESPONSIVE — 760px
   ========================================================= */

@media (max-width:760px){

    .environment-page .environment-container{
        width:min(100% - 30px, 1180px);
    }

    .environment-page .environment-hero{
        min-height:570px;

        background:
            linear-gradient(
                90deg,
                rgba(7,35,31,.93),
                rgba(7,35,31,.68)
            ),
            url("../images/environment-hero.jpg")
            center center / cover no-repeat;
    }

    .environment-page .environment-hero-content{
        padding:65px 0;
    }

    .environment-page .environment-hero h1{
        font-size:clamp(38px,10vw,54px);
    }

    .environment-page .environment-hero p{
        font-size:16px;
        line-height:1.7;
    }

    .environment-page .environment-activity-grid{
        grid-template-columns:1fr;
    }

    .environment-page .environment-principles{
        grid-template-columns:1fr;
    }

    .environment-page .environment-feature-content{
        padding:45px 30px;
    }

    .environment-page .environment-feature-points{
        grid-template-columns:1fr;
    }

    .environment-page .environment-products-image{
        min-height:360px;
    }

    .environment-page .environment-products-image img{
        min-height:360px;
        height:360px;
    }

    .environment-page .environment-support-box{
        padding:40px 30px;
    }

}


/* =========================================================
   RESPONSIVE — 480px
   ========================================================= */

@media (max-width:480px){

    .environment-page .environment-section{
        padding:65px 0;
    }

    .environment-page .environment-container{
        width:calc(100% - 28px);
    }

    .environment-page .environment-hero{
        min-height:540px;
    }

    .environment-page .environment-hero-content{
        padding:55px 0;
    }

    .environment-page .environment-hero h1{
        margin-bottom:20px;

        font-size:38px;
        letter-spacing:-1px;
    }

    .environment-page .environment-hero p{
        margin-bottom:26px;
        font-size:15px;
    }

    .environment-page .environment-hero-actions{
        flex-direction:column;
        align-items:stretch;
    }

    .environment-page .environment-hero-actions .environment-btn{
        width:100%;
    }

    .environment-page .environment-intro-card{
        padding:30px 25px;
    }

    .environment-page .environment-heading{
        margin-bottom:40px;
    }

    .environment-page .environment-heading h2,
    .environment-page .environment-intro-content h2,
    .environment-page .environment-products-content h2{
        font-size:32px;
    }

    .environment-page .environment-activity-card{
        min-height:auto;
        padding:28px 24px;
    }

    .environment-page .environment-feature-content{
        padding:38px 25px;
    }

    .environment-page .environment-feature-content h2{
        font-size:32px;
    }

    .environment-page .environment-feature-points{
        gap:12px;
    }

    .environment-page .environment-support{
        padding:55px 0;
    }

    .environment-page .environment-support-box{
        padding:32px 24px;
    }

    .environment-page .environment-support-content h2{
        font-size:31px;
    }

    .environment-page .environment-support-actions{
        width:100%;
        flex-direction:column;
    }

    .environment-page .environment-support-actions .environment-btn{
        width:100%;
    }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion:reduce){

    .environment-page *,
    .environment-page *::before,
    .environment-page *::after{
        scroll-behavior:auto !important;
        transition:none !important;
    }

}