:root{--green:#164c3b;--green2:#0f6b4f;--gold:#d7a84a;--cream:#f7f3e9;--ink:#18312a;--muted:#65736e}*{box-sizing:border-box}body{font-family:Inter,system-ui,sans-serif;color:var(--ink);line-height:1.7}h1,h2,h3,.brand{font-family:Georgia,serif}.navbar{background:#fff}.navbar-brand{display:flex;align-items:center;gap:12px}.logo-mark{width:48px;height:48px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-family:Georgia;font-size:22px;border:3px solid #e6c777}.brand{font-weight:700;color:var(--green);font-size:1.05rem;line-height:1.15}.nav-link{font-weight:600;color:#27443b!important}.nav-link:hover,.nav-link.active{color:var(--green2)!important}.hero{min-height:76vh;background:linear-gradient(90deg,rgba(8,43,32,.92),rgba(8,43,32,.58),rgba(8,43,32,.12)),url('../images/csr/hero.jpg') center/cover;display:flex;align-items:center;color:#fff}.eyebrow{letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;font-weight:800;color:var(--gold)}.hero h1{font-size:clamp(2.5rem,6vw,5rem);line-height:1.02}.btn-brand{background:var(--gold);border-color:var(--gold);color:#173429;font-weight:700;padding:.8rem 1.25rem}.btn-brand:hover{background:#e4bb65}.section{padding:80px 0}.bg-cream{background:var(--cream)}.title{font-size:clamp(2rem,4vw,3.3rem);line-height:1.08}.card-soft{border:0;border-radius:20px;box-shadow:0 12px 35px rgba(19,60,48,.08);height:100%}.iconbox{width:54px;height:54px;border-radius:14px;background:#e8f1ed;color:var(--green);display:grid;place-items:center;font-size:1.5rem}.photo{width:100%;height:100%;min-height:390px;object-fit:cover;border-radius:24px}.banner{padding:120px 0 70px;color:#fff;background:linear-gradient(90deg,rgba(8,43,32,.92),rgba(8,43,32,.45)),var(--bg) center/cover}.initiative-img{height:240px;object-fit:cover;border-radius:18px}.quote{border-left:4px solid var(--gold);padding-left:20px;font-family:Georgia;font-size:1.35rem}.footer{background:#0d3026;color:#dfe9e5;padding:55px 0 20px}.footer a{color:#dfe9e5;text-decoration:none}.stat{font-size:2.3rem;font-family:Georgia;color:var(--green);font-weight:700}@media(max-width:991px){.hero{min-height:68vh}.brand{font-size:.9rem}.section{padding:58px 0}.banner{padding:95px 0 55px}}@media(max-width:575px){.logo-mark{width:42px;height:42px}.brand{max-width:210px}.hero{background-position:62% center}.hero h1{font-size:2.55rem}.photo{min-height:300px}}

/* Enhanced home page */
.impact-section{background:#fff}.impact-card{height:100%;padding:30px 24px;border:1px solid #e9eee9;border-radius:20px;background:#fff;transition:.3s ease}.impact-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(19,60,48,.10);border-color:#dce9e2}.impact-card span{display:block;font-family:Georgia,serif;font-size:2.1rem;color:var(--gold);margin-bottom:14px}.impact-card h3{font-size:1.25rem;color:var(--green);margin-bottom:10px}.impact-card p{font-size:.95rem;color:var(--muted);margin:0}.community-section{background:#f7f3e9}.community-wrap{overflow:hidden;border-radius:28px;background:#123e31;box-shadow:0 20px 50px rgba(16,61,47,.12)}.community-photo{width:100%;height:100%;min-height:500px;object-fit:cover}.community-copy{padding:70px 60px;color:#eaf1ee;display:flex;flex-direction:column;justify-content:center}.community-copy .title{color:#fff}.community-copy p{color:#d9e5e0}.legacy-home{padding:90px 0;background:linear-gradient(rgba(8,43,32,.88),rgba(8,43,32,.88)),url('../images/csr/legacy.jpg') center/cover;color:#fff}.legacy-home h2{font-size:clamp(2.2rem,4.5vw,4rem);max-width:900px;margin:12px auto 20px}.legacy-home p{max-width:850px;margin:0 auto 30px;color:#dce9e4;font-size:1.08rem}.legacy-line{font-family:Georgia,serif;font-size:clamp(1.05rem,2vw,1.35rem);color:#f2d28d}.legacy-line i{font-style:normal;padding:0 10px}@media(max-width:991px){.community-copy{padding:48px 35px}.community-photo{min-height:360px}}@media(max-width:575px){.impact-card{padding:24px 20px}.community-wrap{border-radius:20px}.community-copy{padding:38px 24px}.community-photo{min-height:300px}.legacy-line i{display:block;height:8px;color:transparent}}
/* Screenshot-inspired first three home sections */
.topbar{background:#0b513f;color:#fff;font-size:.78rem;padding:7px 0}.topbar a{background:var(--gold);color:#fff;text-decoration:none;font-weight:700;padding:7px 16px;border-radius:0 0 7px 7px}.navbar{z-index:1030}.brand small{font-family:inherit;font-size:.85em}.hero-slider{background:#f9f5ea}.hero-slide{min-height:500px;background-image:linear-gradient(90deg,#fbf7ed 0%,rgba(251,247,237,.96) 30%,rgba(251,247,237,.60) 47%,rgba(251,247,237,.05) 68%),var(--hero);background-position:center,70% center;background-size:cover;position:relative}.hero-slide:after{content:"";position:absolute;left:0;right:0;bottom:0;height:55px;background:linear-gradient(175deg,transparent 48%,rgba(255,255,255,.9) 50%);pointer-events:none}.hero-copy{position:relative;z-index:2;max-width:620px;padding:70px 0 85px}.hero-copy h1{font-family:Georgia,serif;font-size:clamp(3rem,5.6vw,4.5rem);line-height:.87;color:#0e493b;margin:12px 0 20px}.hero-copy h1 em{font-style:normal;color:#b68a28}.hero-copy h4{font-size:1.15rem;color:#163c33;margin-bottom:14px}.hero-copy p{max-width:570px;color:#344943}.btn-deep{background:#0b5b46;color:#fff;border-radius:30px;padding:10px 24px;font-weight:700}.btn-deep:hover{background:#073f32;color:#fff}.btn-light-outline{border:1px solid #0b5b46;color:#0b5b46;border-radius:30px;padding:10px 24px;font-weight:700;background:rgba(255,255,255,.65)}.carousel-control-prev,.carousel-control-next{width:48px;height:48px;top:48%;bottom:auto;background:#0b513f;border-radius:50%;margin:0 18px;opacity:.9}.carousel-indicators [data-bs-target]{width:10px;height:10px;border-radius:50%;border:0}.pillar-strip{background:#fff;padding:22px 0;border-bottom:1px solid #eee}.pillar-item{display:flex;align-items:center;gap:13px;padding:8px 20px;border-right:1px solid #d9d5c8}.pillar-item b{font-size:2rem}.pillar-item strong,.pillar-item small{display:block}.pillar-item strong{color:#12483b}.pillar-item small{font-size:.78rem;color:#40564f}.pillar-quote{font-family:Georgia,serif;font-style:italic;color:#a77c22;font-size:1.2rem;text-align:center;line-height:1.25;padding:5px 15px}.intro-split{background:#fff}.intro-copy{padding:58px 4vw;background:linear-gradient(120deg,#fff,#f9f7f0)}.intro-copy h2,.purpose-panel h2{font-size:clamp(2rem,3vw,3rem);line-height:1.05}.intro-image img{width:100%;height:100%;min-height:330px;object-fit:cover}.purpose-panel{padding:55px 4vw;background:linear-gradient(135deg,#0d4939,#08604a);color:#fff}.purpose-panel h2{color:#fff}.purpose-panel p{color:#e3efeb}.btn-purpose{border:1px solid #fff;color:#fff;border-radius:30px;padding:9px 22px}.btn-purpose:hover{background:#fff;color:#0b513f}.hero-copy,.pillar-item,.intro-copy>* ,.purpose-panel>*{animation:fadeUp .75s ease both}@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@media(max-width:991px){.hero-slide{min-height:600px;background-image:linear-gradient(90deg,rgba(251,247,237,.97),rgba(251,247,237,.82),rgba(251,247,237,.25)),var(--hero);background-position:center,65% center}.hero-copy{padding:60px 25px 90px;max-width:650px}.pillar-item{border-right:0;border-bottom:1px solid #eee}.pillar-quote{padding-top:20px}.intro-image img{min-height:360px}}@media(max-width:575px){.topbar .container{justify-content:center!important}.topbar a{display:none}.hero-slide{min-height:610px;background-image:linear-gradient(180deg,rgba(251,247,237,.97) 0%,rgba(251,247,237,.90) 48%,rgba(251,247,237,.30) 100%),var(--hero);background-position:center,62% center}.hero-copy{padding:48px 20px 160px}.hero-copy h1{font-size:3.25rem}.hero-copy h4{font-size:1rem}.hero-copy p{font-size:.9rem}.carousel-control-prev,.carousel-control-next{width:38px;height:38px;margin:0 8px}.pillar-item{padding:13px 8px}.pillar-item b{font-size:1.5rem}.pillar-item strong{font-size:.88rem}.pillar-item small{font-size:.7rem}.intro-copy,.purpose-panel{padding:42px 24px}}

/* 2026-09-17 slider stability + contained layout fix */
.hero-slider{overflow:hidden;position:relative}
#homeHero,.hero-slider .carousel-inner{min-height:500px;background:#f9f5ea;overflow:hidden}
.hero-slider .carousel-item{min-height:500px;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0);will-change:opacity}
.hero-slider .carousel-fade .carousel-item{transition:opacity .65s ease-in-out}
.hero-slide{height:500px;min-height:500px;overflow:hidden}
.hero-slide:after{display:none!important}
.hero-slider .carousel-indicators{bottom:16px;margin-bottom:0;z-index:5}
.hero-slider .carousel-control-prev,.hero-slider .carousel-control-next{z-index:6}
.section-contained{padding:42px 0;background:#f7f5ef}
.section-contained .intro-frame{overflow:hidden;border-radius:22px;box-shadow:0 16px 45px rgba(15,72,58,.09);background:#fff}
.section-contained .intro-copy,.section-contained .purpose-panel{padding-left:42px;padding-right:42px}
@media(max-width:991px){#homeHero,.hero-slider .carousel-inner,.hero-slider .carousel-item,.hero-slide{height:600px;min-height:600px}.section-contained{padding:28px 0}.section-contained .intro-frame{border-radius:16px}.section-contained .intro-copy,.section-contained .purpose-panel{padding-left:28px;padding-right:28px}}
@media(max-width:575px){#homeHero,.hero-slider .carousel-inner,.hero-slider .carousel-item,.hero-slide{height:610px;min-height:610px}.section-contained{padding:20px 0}.section-contained .container{padding-left:16px;padding-right:16px}.section-contained .intro-copy,.section-contained .purpose-panel{padding-left:22px;padding-right:22px}}
@media(prefers-reduced-motion:reduce){.hero-slider .carousel-fade .carousel-item{transition:none}}

/* Contact page layout fix */
.contact-page-section{padding:72px 0 80px;position:relative;z-index:1;background:#fff}
.contact-page-section .contact-row{align-items:stretch}
.contact-page-section .contact-copy{display:flex;flex-direction:column}
.contact-page-section .contact-details{height:auto;min-height:0;margin-top:24px!important;padding:28px!important}
.contact-page-section .contact-form-card{height:100%;min-height:100%;padding:32px!important}
.contact-page-section .form-control{min-height:48px}
.contact-page-section textarea.form-control{min-height:150px}
@media(max-width:991px){.contact-page-section{padding:52px 0 60px}.contact-page-section .contact-form-card{height:auto}.contact-page-section .contact-details{margin-bottom:8px}}

/* Mobile horizontal overflow fix */
html,body{max-width:100%;overflow-x:hidden}
img,svg,video,iframe{max-width:100%;height:auto}
.row{--bs-gutter-x:1.5rem}
@media(max-width:767.98px){
  body{width:100%;position:relative}
  .container,.container-fluid{max-width:100%;overflow-x:clip}
  .navbar-brand{min-width:0;max-width:calc(100% - 62px)}
  .navbar-brand .brand{min-width:0;max-width:calc(100vw - 125px);white-space:normal;overflow-wrap:anywhere}
  .navbar-collapse,.navbar-nav{max-width:100%}
  .topbar .container{padding-left:15px;padding-right:15px}
  .topbar span{max-width:100%;text-align:center;overflow-wrap:anywhere}
  .hero-slider,#homeHero,.hero-slider .carousel-inner,.hero-slider .carousel-item,.hero-slide{max-width:100vw}
  .hero-copy{max-width:100%;padding-left:22px;padding-right:22px}
  .hero-copy h1,.title,.display-3{overflow-wrap:anywhere}
  .carousel-control-prev{left:0;margin-left:8px}
  .carousel-control-next{right:0;margin-right:8px}
  .pillar-strip .row,.section .row,.footer .row{margin-left:0;margin-right:0}
  .pillar-item{max-width:100%}
  .community-wrap{max-width:100%}
  .community-copy{max-width:100%}
  .banner{max-width:100%;overflow:hidden}
  .card,.card-soft,.impact-card{max-width:100%}
}

/* Mobile hero readability + controls cleanup */
@media (max-width: 575.98px){
  .hero-slider .carousel-control-prev,
  .hero-slider .carousel-control-next{display:none!important;}
  .hero-slide{
    background-image:linear-gradient(180deg,rgba(251,247,237,.99) 0%,rgba(251,247,237,.97) 48%,rgba(251,247,237,.78) 72%,rgba(251,247,237,.18) 100%),var(--hero)!important;
    background-position:center,68% center!important;
  }
  .hero-copy{padding:38px 18px 145px!important;max-width:100%!important;}
  .hero-copy .eyebrow{font-size:.72rem;letter-spacing:.12em;}
  .hero-copy h1{font-size:clamp(2.45rem,13vw,3.25rem)!important;line-height:.9;margin:10px 0 15px;}
  .hero-copy h4{font-size:.96rem!important;line-height:1.35;margin-bottom:10px;}
  .hero-copy p{font-size:.86rem!important;line-height:1.5;margin-bottom:15px;}
  .hero-copy .btn{padding:9px 16px;font-size:.84rem;}
  .hero-slider .carousel-indicators{bottom:12px;}
}
