/* =========================================================
   HEALTH PAGE
   Health & Sanitation
   ========================================================= */

.health-page{
  --health-navy:#102f45;
  --health-blue:#1f506c;
  --health-orange:#d8893b;
  --health-gold:#e8b76b;
  --health-cream:#f8f4ed;
  --health-soft:#f2f6f4;
  --health-text:#263746;
  --health-muted:#6d7a83;
  --health-white:#fff;
  --health-border:rgba(16,47,69,.10);
  --health-shadow:0 18px 45px rgba(16,47,69,.08);

  color:var(--health-text);
  background:#fff;
  font-family:"DM Sans",sans-serif;
}


.health-page .health-container{
  width:min(1180px,calc(100% - 40px));
  margin:0 auto;
}


/* =========================================================
   HERO
   ========================================================= */

.health-page .health-hero{
  min-height:500px;

  display:flex;
  align-items:center;

  background:
    linear-gradient(
      90deg,
      rgba(16,47,69,.96) 0%,
      rgba(16,47,69,.84) 48%,
      rgba(16,47,69,.28) 100%
    ),
    url("../images/health-hero.jpg")
    center/cover
    no-repeat;
}


.health-page .health-hero-inner{
  padding:90px 0;
}


.health-page .health-hero-content{
  max-width:720px;
}


.health-page .health-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:9px;

  margin-bottom:20px;

  color:#fff;

  font-size:13px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}


.health-page .health-eyebrow i{
  color:var(--health-gold);
  font-size:16px;
}


.health-page .health-hero h1{
  margin:0 0 22px;

  color:#fff;

  font-family:"Playfair Display",serif;
  font-size:clamp(42px,5.5vw,70px);
  line-height:1.05;
  letter-spacing:-.025em;
}


.health-page .health-hero h1 span{
  color:var(--health-gold);
}


.health-page .health-hero p{
  max-width:680px;

  margin:0 0 30px;

  color:rgba(255,255,255,.90);

  font-size:17px;
  line-height:1.75;
}


.health-page .health-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}


/* =========================================================
   BUTTONS
   ========================================================= */

.health-page .health-btn{
  min-height:48px;

  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;

  padding:0 21px;

  border:0;
  border-radius:8px;

  text-decoration:none;

  font-size:15px;
  font-weight:700;

  transition:
    transform .2s ease,
    background-color .2s ease,
    color .2s ease,
    box-shadow .2s ease;
}


.health-page .health-btn:hover{
  transform:translateY(-2px);
}


.health-page .health-btn-primary{
  background:var(--health-orange);
  color:#fff;

  box-shadow:0 10px 25px rgba(216,137,59,.22);
}


.health-page .health-btn-primary:hover{
  background:#c8782e;
}


.health-page .health-btn-blue{
  background:var(--health-blue);
  color:#fff;

  box-shadow:0 10px 25px rgba(31,80,108,.18);
}


.health-page .health-btn-blue:hover{
  background:#173e54;
}


.health-page .health-btn-light{
  background:#fff;
  color:var(--health-navy);

  box-shadow:0 10px 25px rgba(0,0,0,.12);
}


.health-page .health-btn-light:hover{
  background:var(--health-cream);
}


/* =========================================================
   COMMON SECTIONS
   ========================================================= */

.health-page .health-section{
  padding:90px 0;
}


.health-page .health-label{
  display:block;

  margin-bottom:12px;

  color:var(--health-orange);

  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}


.health-page .health-section-heading{
  max-width:760px;

  margin:0 auto 48px;

  text-align:center;
}


.health-page .health-section-heading h2,
.health-page .health-intro-content h2,
.health-page .health-camps-content h2,
.health-page .health-support-box h2{
  margin:0 0 18px;

  color:var(--health-navy);

  font-family:"Playfair Display",serif;
  font-weight:700;
  line-height:1.15;
}


.health-page .health-section-heading h2{
  font-size:clamp(32px,4vw,46px);
}


.health-page .health-section-heading h2 span,
.health-page .health-intro-content h2 span{
  color:var(--health-blue);
}


.health-page .health-section-heading p{
  max-width:680px;

  margin:0 auto;

  color:var(--health-muted);

  font-size:16px;
  line-height:1.75;
}


/* =========================================================
   INTRO
   ========================================================= */

.health-page .health-intro{
  background:#fff;
}


.health-page .health-intro-grid{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);

  gap:60px;

  align-items:center;
}


.health-page .health-intro-content{
  max-width:720px;
}


.health-page .health-intro-content h2{
  font-size:clamp(34px,4vw,48px);
}


.health-page .health-intro-content p{
  margin:0 0 18px;

  color:var(--health-muted);

  font-size:16px;
  line-height:1.8;
}


.health-page .health-intro-content p:last-child{
  margin-bottom:0;
}


.health-page .health-intro-highlight{
  padding:38px 34px;

  background:var(--health-cream);

  border:1px solid rgba(216,137,59,.18);
  border-radius:18px;

  box-shadow:var(--health-shadow);
}


.health-page .health-highlight-icon{
  width:62px;
  height:62px;

  display:flex;
  align-items:center;
  justify-content:center;

  margin-bottom:22px;

  border-radius:14px;

  background:var(--health-navy);
  color:var(--health-gold);

  font-size:26px;
}


.health-page .health-intro-highlight h3{
  margin:0 0 14px;

  color:var(--health-navy);

  font-family:"Playfair Display",serif;
  font-size:25px;
  line-height:1.3;
}


.health-page .health-intro-highlight p{
  margin:0;

  color:var(--health-muted);

  font-size:15px;
  line-height:1.75;
}


/* =========================================================
   INITIATIVES
   ========================================================= */

.health-page .health-initiatives{
  background:var(--health-soft);
}


.health-page .health-initiative-grid{
  display:grid;

  grid-template-columns:repeat(3,minmax(0,1fr));

  gap:20px;
}


.health-page .health-card{
  position:relative;

  min-height:250px;

  padding:30px 26px;

  background:#fff;

  border:1px solid var(--health-border);
  border-radius:16px;

  box-shadow:var(--health-shadow);

  overflow:hidden;

  transition:
    transform .25s ease,
    box-shadow .25s ease,
    border-color .25s ease;
}


.health-page .health-card::before{
  content:"";

  position:absolute;

  top:0;
  left:0;
  right:0;

  height:3px;

  background:var(--health-orange);

  transform:scaleX(0);
  transform-origin:left;

  transition:transform .25s ease;
}


.health-page .health-card:hover{
  transform:translateY(-5px);

  border-color:rgba(216,137,59,.25);

  box-shadow:0 22px 50px rgba(16,47,69,.12);
}


.health-page .health-card:hover::before{
  transform:scaleX(1);
}


.health-page .health-card-icon{
  width:54px;
  height:54px;

  display:flex;
  align-items:center;
  justify-content:center;

  margin-bottom:20px;

  border-radius:13px;

  background:var(--health-cream);
  color:var(--health-orange);

  font-size:21px;
}


.health-page .health-card-number{
  position:absolute;

  top:24px;
  right:24px;

  color:rgba(16,47,69,.12);

  font-size:13px;
  font-weight:700;
}


.health-page .health-card h3{
  margin:0 0 11px;

  color:var(--health-navy);

  font-size:19px;
  line-height:1.35;
}


.health-page .health-card p{
  margin:0;

  color:var(--health-muted);

  font-size:14px;
  line-height:1.7;
}


/* =========================================================
   HEALTH AWARENESS
   ========================================================= */

.health-page .health-awareness{
  background:#fff;
}


.health-page .health-awareness-grid{
  display:grid;

  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);

  gap:60px;

  align-items:center;
}


.health-page .health-awareness-image{
  min-height:420px;

  overflow:hidden;

  border-radius:18px;

  box-shadow:var(--health-shadow);
}


.health-page .health-awareness-image img{
  width:100%;
  height:100%;

  display:block;

  object-fit:cover;
}


.health-page .health-awareness-content{
  max-width:650px;
}


.health-page .health-awareness-content h2{
  margin:0 0 20px;

  color:var(--health-navy);

  font-family:"Playfair Display",serif;
  font-size:clamp(32px,4vw,45px);
  line-height:1.15;
}


.health-page .health-awareness-content p{
  margin:0 0 17px;

  color:var(--health-muted);

  font-size:15px;
  line-height:1.8;
}


.health-page .health-awareness-points{
  display:grid;

  grid-template-columns:repeat(2,1fr);

  gap:12px;

  margin-top:28px;
}


.health-page .health-awareness-points div{
  display:flex;
  align-items:center;
  gap:10px;

  color:var(--health-navy);

  font-size:14px;
  font-weight:600;
}


.health-page .health-awareness-points i{
  width:27px;
  height:27px;

  display:flex;
  align-items:center;
  justify-content:center;

  flex:0 0 27px;

  border-radius:50%;

  background:var(--health-cream);
  color:var(--health-orange);

  font-size:12px;
}


/* =========================================================
   HYGIENE
   ========================================================= */

.health-page .health-hygiene{
  background:var(--health-soft);
}


.health-page .health-hygiene-grid{
  display:grid;

  grid-template-columns:repeat(3,minmax(0,1fr));

  gap:20px;
}


.health-page .health-hygiene-card{
  overflow:hidden;

  background:#fff;

  border:1px solid var(--health-border);
  border-radius:16px;

  box-shadow:var(--health-shadow);
}


.health-page .health-hygiene-image{
  height:220px;
}


.health-page .health-hygiene-image img{
  width:100%;
  height:100%;

  display:block;

  object-fit:cover;
}


.health-page .health-hygiene-content{
  padding:27px;
}


.health-page .health-hygiene-content > i{
  width:48px;
  height:48px;

  display:flex;
  align-items:center;
  justify-content:center;

  margin-bottom:16px;

  border-radius:12px;

  background:var(--health-cream);
  color:var(--health-orange);

  font-size:19px;
}


.health-page .health-hygiene-content h3{
  margin:0 0 10px;

  color:var(--health-navy);

  font-size:20px;
}


.health-page .health-hygiene-content p{
  margin:0;

  color:var(--health-muted);

  font-size:14px;
  line-height:1.7;
}


.health-page .health-hygiene-note{
  display:block;

  margin-top:20px;

  color:var(--health-orange);

  font-size:12px;
  font-weight:700;
  letter-spacing:.03em;
}


/* =========================================================
   HEALTH CAMPS
   ========================================================= */

.health-page .health-camps{
  background:#fff;
}


.health-page .health-camps-box{
  display:grid;

  grid-template-columns:90px minmax(0,1fr) auto;

  gap:30px;

  align-items:center;

  padding:45px;

  background:var(--health-navy);

  border-radius:20px;

  box-shadow:0 22px 55px rgba(16,47,69,.16);
}


.health-page .health-camps-icon{
  width:78px;
  height:78px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:18px;

  background:rgba(232,183,107,.14);

  color:var(--health-gold);

  font-size:32px;
}


.health-page .health-camps-content{
  max-width:700px;
}


.health-page .health-camps-content .health-label{
  color:var(--health-gold);
}


.health-page .health-camps-content h2{
  color:#fff;

  font-size:clamp(30px,3.5vw,42px);
}


.health-page .health-camps-content p{
  margin:0 0 12px;

  color:rgba(255,255,255,.76);

  font-size:15px;
  line-height:1.75;
}


.health-page .health-camps-content p:last-child{
  margin-bottom:0;
}


.health-page .health-camps-action{
  flex-shrink:0;
}


/* =========================================================
   WHY HEALTH
   ========================================================= */

.health-page .health-why{
  background:var(--health-soft);
}


.health-page .health-why-grid{
  display:grid;

  grid-template-columns:repeat(3,minmax(0,1fr));

  gap:20px;
}


.health-page .health-why-card{
  display:flex;
  align-items:flex-start;

  gap:18px;

  padding:26px;

  background:#fff;

  border:1px solid var(--health-border);
  border-radius:15px;

  box-shadow:var(--health-shadow);

  transition:
    transform .25s ease,
    box-shadow .25s ease;
}


.health-page .health-why-card:hover{
  transform:translateY(-4px);

  box-shadow:0 20px 45px rgba(16,47,69,.11);
}


.health-page .health-why-card > i{
  width:48px;
  height:48px;

  flex:0 0 48px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius:12px;

  background:var(--health-cream);
  color:var(--health-orange);

  font-size:19px;
}


.health-page .health-why-card h3{
  margin:0 0 7px;

  color:var(--health-navy);

  font-size:17px;
}


.health-page .health-why-card p{
  margin:0;

  color:var(--health-muted);

  font-size:14px;
  line-height:1.65;
}


/* =========================================================
   SUPPORT
   ========================================================= */

.health-page .health-support{
  padding-top:0;

  background:var(--health-soft);
}


.health-page .health-support-box{
  display:flex;

  align-items:center;
  justify-content:space-between;

  gap:35px;

  padding:42px 46px;

  background:var(--health-cream);

  border:1px solid rgba(216,137,59,.18);
  border-radius:18px;

  box-shadow:var(--health-shadow);
}


.health-page .health-support-box > div:first-child{
  max-width:700px;
}


.health-page .health-support-box h2{
  font-size:clamp(28px,3.5vw,40px);
}


.health-page .health-support-box p{
  margin:0;

  color:var(--health-muted);

  font-size:15px;
  line-height:1.75;
}


.health-page .health-support-actions{
  display:flex;

  flex-wrap:wrap;

  gap:12px;

  flex-shrink:0;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width:1000px){

  .health-page .health-initiative-grid,
  .health-page .health-hygiene-grid,
  .health-page .health-why-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }


  .health-page .health-intro-grid{
    gap:40px;
  }


  .health-page .health-awareness-grid{
    gap:40px;
  }


  .health-page .health-camps-box{
    grid-template-columns:75px 1fr;

    padding:38px;
  }


  .health-page .health-camps-action{
    grid-column:2;
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width:700px){

  .health-page .health-container{
    width:min(100% - 30px,1180px);
  }


  .health-page .health-section{
    padding:65px 0;
  }


  /* HERO */

  .health-page .health-hero{
    min-height:540px;

    background:
      linear-gradient(
        90deg,
        rgba(16,47,69,.97),
        rgba(16,47,69,.88)
      ),
      url("../images/health-hero.jpg")
      60% center/cover
      no-repeat;
  }


  .health-page .health-hero-inner{
    padding:70px 0;
  }


  .health-page .health-hero h1{
    font-size:43px;
  }


  .health-page .health-hero p{
    font-size:15px;
    line-height:1.7;
  }


  .health-page .health-hero-actions{
    width:100%;

    flex-direction:column;
  }


  .health-page .health-btn{
    width:100%;
  }


  /* INTRO */

  .health-page .health-intro-grid{
    grid-template-columns:1fr;
  }


  .health-page .health-intro-content h2{
    font-size:35px;
  }


  .health-page .health-intro-highlight{
    padding:30px 25px;
  }


  /* INITIATIVES */

  .health-page .health-initiative-grid,
  .health-page .health-hygiene-grid,
  .health-page .health-why-grid{
    grid-template-columns:1fr;
  }


  .health-page .health-card{
    min-height:auto;
  }


  /* AWARENESS */

  .health-page .health-awareness-grid{
    grid-template-columns:1fr;
  }


  .health-page .health-awareness-image{
    min-height:320px;
  }


  .health-page .health-awareness-content h2{
    font-size:35px;
  }


  .health-page .health-awareness-points{
    grid-template-columns:1fr;
  }


  /* HYGIENE */

  .health-page .health-hygiene-image{
    height:230px;
  }


  /* CAMPS */

  .health-page .health-camps-box{
    grid-template-columns:1fr;

    padding:32px 25px;
  }


  .health-page .health-camps-action{
    grid-column:auto;

    width:100%;
  }


  /* SUPPORT */

  .health-page .health-support-box{
    flex-direction:column;

    align-items:flex-start;

    padding:30px 24px;
  }


  .health-page .health-support-actions{
    width:100%;

    flex-direction:column;
  }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width:420px){

  .health-page .health-hero h1{
    font-size:38px;
  }


  .health-page .health-section-heading h2{
    font-size:31px;
  }


  .health-page .health-card{
    padding:24px 20px;
  }


  .health-page .health-camps-box{
    padding:28px 21px;
  }

}


/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion:reduce){

  .health-page *,
  .health-page *::before,
  .health-page *::after{
    transition:none !important;
  }

}