/*
Theme Name: GSMT HTML
Theme URI: https://gsmtyavatmal.org
Author: Prologue Design
Author URI: https://prologue.design
Description: Hand-coded HTML/CSS theme for Gramin Samassya Mukti Trust, Yavatmal. Built on the "Held" layout system. Replaces the Divi / WPBakery page-builder stack.
Version: 1.0.5
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gsmt
*/

/* ==========================================================================
   Base
   ========================================================================== */
:root{
  --blue:#0060AA; --green:#54AF3A; --charcoal:#2B2A28; --red:#E31E25; --yellow:#FFEC00;
  --forest:#123020; --forest-2:#1B4A2C; --mint:#E8F2E4; --paper:#F7F6F1;
}
*{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body.gs{
  margin:0;
  font-family:'Carlito','Segoe UI',Arial,sans-serif;
  color:var(--charcoal); line-height:1.6; font-size:17px;
  background:#fff;
}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;height:auto;}
h1,h2,h3,h4,.num{
  font-family:'Archivo','Arial Narrow',Arial,sans-serif;font-weight:800;letter-spacing:-.01em;
}
.gs-wrap{max-width:1180px;margin:0 auto;padding:0 28px;}
.gs-eyebrow{font-family:'Archivo',Arial,sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:.68rem;font-weight:700;}
.gs-main-flush{padding:0;}

/* ==========================================================================
   Nav
   ========================================================================== */
.gs-nav{background:var(--forest);position:sticky;top:0;z-index:60;}
.gs-nav .gs-wrap{display:flex;align-items:center;gap:22px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap;}
.gs-brand{display:flex;align-items:center;gap:12px;margin-right:auto;}
.gs-brand-mark{background:#fff;border-radius:8px;padding:5px;display:flex;}
.gs-brand-mark img{height:36px;width:auto;}
.gs-brand-name{color:#fff;font-family:'Archivo',Arial,sans-serif;font-weight:700;font-size:1rem;line-height:1.2;}
.gs-brand-name small{display:block;font-weight:500;font-size:.6rem;letter-spacing:.16em;color:#9ec79a;text-transform:uppercase;margin-top:3px;}

.gs-menu ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:20px;}
.gs-menu li{position:relative;}
.gs-menu a{display:block;padding:4px 0;font-size:.84rem;font-weight:600;color:#dbe7d7;border-bottom:2px solid transparent;}
.gs-menu a:hover{color:#fff;border-color:var(--green);}
.gs-menu .current-menu-item>a{color:#fff;border-color:var(--green);}
/* dropdowns */
.gs-menu ul ul{position:absolute;left:0;top:100%;display:none;flex-direction:column;gap:0;background:var(--forest);padding:10px 0;min-width:230px;border-radius:0 0 10px 10px;box-shadow:0 14px 30px rgba(0,0,0,.28);z-index:80;}
.gs-menu li:hover>ul{display:flex;}
.gs-menu ul ul a{padding:8px 18px;border:0;font-weight:500;}
.gs-menu ul ul a:hover{background:rgba(255,255,255,.07);color:#fff;}

.gs-pill{display:inline-block;background:var(--green);color:#fff;padding:10px 26px;border-radius:40px;font-family:'Archivo',Arial,sans-serif;font-weight:700;font-size:.85rem;white-space:nowrap;}
.gs-pill:hover{background:#479930;color:#fff;}

/* Menu toggle (mobile only, no JS) */
.gs-burger{display:none;cursor:pointer;padding:10px 8px;order:3;}
.gs-burger span{display:block;width:24px;height:2px;background:#fff;margin:5px 0;border-radius:2px;transition:transform .2s ease,opacity .2s ease;}
.gs-nav-toggle:checked ~ .gs-burger span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.gs-nav-toggle:checked ~ .gs-burger span:nth-child(2){opacity:0;}
.gs-nav-toggle:checked ~ .gs-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ==========================================================================
   Hero
   ========================================================================== */
.gs-hero{position:relative;background:#123020;background:linear-gradient(115deg,#0B1F13 0%,#123020 38%,#1D5333 100%);color:#fff;overflow:hidden;}
.gs-hero::after{content:"";position:absolute;right:-14%;top:-30%;width:70%;height:160%;background:radial-gradient(ellipse at center,rgba(84,175,58,.30),rgba(84,175,58,0) 62%);pointer-events:none;}
.gs-hero .gs-wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .85fr;gap:54px;align-items:center;padding-top:84px;padding-bottom:84px;}
.gs-hero .gs-eyebrow{color:var(--green);margin-bottom:20px;}
.gs-hero h1{font-size:3.5rem;line-height:1.04;margin:0 0 22px;}
.gs-hero h1 em{font-style:normal;color:var(--green);}
.gs-hero p{font-size:1.08rem;color:#cfe0c9;max-width:480px;margin:0 0 32px;}
.gs-ctas{display:flex;gap:14px;flex-wrap:wrap;}
.gs-btn{display:inline-block;padding:14px 30px;border-radius:40px;font-family:'Archivo',Arial,sans-serif;font-weight:700;font-size:.92rem;}
.gs-btn-fill{background:var(--green);color:#fff;}
.gs-btn-fill:hover{background:#479930;}
.gs-btn-ghost{border:2px solid rgba(255,255,255,.65);color:#fff;}
.gs-btn-ghost:hover{background:#fff;color:var(--forest);}
.gs-hero-media{position:relative;margin:0;}
.gs-hero-media img{border-radius:14px;width:100%;height:370px;object-fit:cover;}
.gs-hero-media figcaption{margin-top:12px;font-family:'Archivo',Arial,sans-serif;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:#9ec79a;}

/* ==========================================================================
   Green strip
   ========================================================================== */
.gs-strip{background:var(--green);color:#fff;}
.gs-strip .gs-wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:18px;padding-bottom:18px;}
.gs-strip b{font-family:'Archivo',Arial,sans-serif;font-size:1.05rem;font-weight:700;}
.gs-strip span{font-size:.85rem;color:#e6f5e0;}
.gs-strip a{background:#fff;color:var(--green);padding:9px 24px;border-radius:40px;font-family:'Archivo',Arial,sans-serif;font-weight:700;font-size:.85rem;}
.gs-strip a:hover{background:#f2fdee;}

/* ==========================================================================
   Sections
   ========================================================================== */
.gs-sec{padding:86px 0;}
.gs-sec-mint{background:var(--mint);}
.gs-sec-paper{background:var(--paper);}
.gs-sec .gs-eyebrow{color:var(--green);margin-bottom:14px;}
.gs-h2{font-size:2.4rem;line-height:1.1;color:var(--forest);margin:0 0 20px;max-width:640px;}
.gs-lead{font-size:1.05rem;color:#54534f;max-width:660px;margin:0 0 14px;}

/* About */
.gs-about{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.gs-about img{border-radius:14px;height:400px;width:100%;object-fit:cover;}

/* Pillar cards on cradle */
.gs-cradle{position:relative;margin-top:46px;}
.gs-cradle::before{content:"";position:absolute;left:4%;right:4%;top:14%;bottom:-6%;background:rgba(84,175,58,.16);border-radius:0 0 50% 50%/0 0 26% 26%;}
.gs-cards{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:26px;align-items:start;}
.gs-card{background:#fff;border-radius:14px;padding:30px 26px;box-shadow:0 10px 30px rgba(18,48,32,.10);}
.gs-card.raised{margin-top:-16px;padding-bottom:36px;box-shadow:0 18px 44px rgba(18,48,32,.16);}
.gs-card .tag{display:inline-block;background:var(--yellow);color:var(--charcoal);font-family:'Archivo',Arial,sans-serif;font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:5px 12px;border-radius:30px;margin-bottom:14px;}
.gs-card h3{font-size:1.45rem;margin:0 0 10px;color:var(--blue);}
.gs-card.raised h3{color:var(--green);}
.gs-card p{margin:0;font-size:.92rem;color:#5d5c58;}

/* Proof / stats */
.gs-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:44px;}
.gs-proof img{border-radius:12px;height:180px;width:100%;object-fit:cover;}
.gs-proof .num{display:block;font-size:2.7rem;line-height:1.1;margin:18px 0 4px;}
.gs-proof .p1 .num{color:var(--green);}
.gs-proof .p2 .num{color:var(--blue);}
.gs-proof .p3 .num{color:var(--red);}
.gs-proof h4{font-size:1.05rem;margin:0 0 6px;color:var(--forest);}
.gs-proof p{margin:0;font-size:.86rem;color:#6a6964;}

/* Threads */
.gs-threads{background:var(--forest);color:#fff;padding:86px 0;}
.gs-threads .gs-eyebrow{color:var(--green);margin-bottom:14px;}
.gs-threads h2{font-size:2.4rem;line-height:1.1;margin:0 0 12px;}
.gs-threads .sub{color:#b8cfb2;margin:0 0 42px;max-width:620px;}
.gs-thread-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 60px;}
.gs-thread{padding:24px 0;border-top:1px solid rgba(255,255,255,.16);display:flex;gap:14px;}
.gs-thread i{width:11px;height:11px;border-radius:50%;margin-top:8px;flex:none;background:var(--green);}
.gs-thread:nth-child(2) i{background:var(--blue);}
.gs-thread:nth-child(3) i{background:var(--red);}
.gs-thread:nth-child(4) i{background:var(--yellow);}
.gs-thread:nth-child(5) i{background:var(--green);}
.gs-thread:nth-child(6) i{background:#fff;}
.gs-thread h4{font-size:1.1rem;margin:0 0 6px;color:#fff;}
.gs-thread p{margin:0;font-size:.87rem;color:#a9c4a3;}

/* Gallery */
.gs-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px;}
.gs-gallery img{width:100%;height:170px;object-fit:cover;border-radius:10px;}

/* Partners */
.gs-partners{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:46px;margin-top:34px;}
.gs-partners img{height:48px;width:auto;object-fit:contain;filter:grayscale(25%);}

/* ==========================================================================
   Interior pages
   ========================================================================== */
.gs-pagehead{background:var(--forest);color:#fff;padding:64px 0 56px;}
.gs-pagehead .gs-eyebrow{color:var(--green);margin-bottom:14px;}
.gs-pagehead h1{font-size:2.9rem;line-height:1.08;margin:0;}
.gs-main{padding:70px 0 86px;}
.gs-main.gs-main-flush{padding:0;}
.gs-prose{max-width:820px;}
.gs-prose h1,.gs-prose h2{font-size:1.9rem;color:var(--forest);margin:2em 0 .6em;line-height:1.15;}
.gs-prose h3{font-size:1.35rem;color:var(--forest);margin:1.8em 0 .5em;}
.gs-prose h4{font-size:1.1rem;color:var(--blue);margin:1.6em 0 .5em;}
.gs-prose>*:first-child{margin-top:0;}
.gs-prose p{margin:0 0 1.15em;color:#4c4b47;}
.gs-prose ul,.gs-prose ol{margin:0 0 1.4em;padding-left:1.25em;color:#4c4b47;}
.gs-prose li{margin-bottom:.5em;}
.gs-prose a{color:var(--blue);border-bottom:1px solid rgba(0,96,170,.35);}
.gs-prose a:hover{border-color:var(--blue);}
.gs-prose img{border-radius:10px;margin:1.4em 0;max-height:560px;width:auto;}
.gs-prose strong{color:var(--charcoal);}
.gs-prose table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:.92rem;}
.gs-prose th,.gs-prose td{border:1px solid #e4e1d8;padding:10px 12px;text-align:left;vertical-align:top;}
.gs-prose th{background:var(--paper);font-family:'Archivo',Arial,sans-serif;}
.gs-prose blockquote{margin:1.6em 0;padding:4px 0 4px 22px;border-left:4px solid var(--green);color:#5d5c58;}
.gs-prose iframe{max-width:100%;border-radius:10px;}
.gs-prose .wp-block-image{margin:1.4em 0;}

/* ==========================================================================
   Trust strip + footer
   ========================================================================== */
.gs-trust{background:#fff;border-top:1px solid #ece9e1;}
.gs-trust .gs-wrap{display:grid;grid-template-columns:auto repeat(4,1fr);gap:34px;align-items:start;padding-top:46px;padding-bottom:46px;}
.gs-trust>.gs-wrap>img{height:64px;width:auto;}
.gs-trust h4{font-size:.95rem;margin:0 0 5px;color:var(--forest);}
.gs-trust p{margin:0;font-size:.8rem;color:#78776f;}

.gs-foot{background:var(--charcoal);color:#cfcdc7;padding:62px 0 26px;font-size:.9rem;}
.gs-foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;}
.gs-foot h4{color:#fff;font-size:.82rem;text-transform:uppercase;letter-spacing:.14em;margin:0 0 16px;font-family:'Archivo',Arial,sans-serif;}
.gs-foot p{margin:0 0 7px;color:#a9a7a1;line-height:1.55;}
.gs-foot a:hover{color:var(--yellow);}
.gs-foot-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:44px;padding-top:22px;font-size:.78rem;color:#86847e;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width:900px){
  .gs-nav .gs-wrap{gap:12px;flex-wrap:nowrap;}
  .gs-brand-name{font-size:.86rem;}
  .gs-burger{display:block;}
  .gs-pill{padding:9px 18px;font-size:.78rem;}
  .gs-menu{display:none;order:4;width:100%;border-top:1px solid rgba(255,255,255,.14);padding-top:12px;margin-top:4px;}
  .gs-nav-toggle:checked ~ .gs-menu{display:block;}
  .gs-menu ul{flex-direction:column;gap:0;}
  .gs-menu>ul>li{border-bottom:1px solid rgba(255,255,255,.08);}
  .gs-menu a{font-size:.92rem;padding:11px 0;border-bottom:0;}
  .gs-menu ul ul{position:static;display:flex;box-shadow:none;padding:0 0 8px 14px;min-width:0;background:transparent;border-radius:0;}
  .gs-menu ul ul a{padding:7px 0;}
  .gs-prose img{max-height:440px;width:auto;margin-left:auto;margin-right:auto;}
  .gs-hero .gs-wrap{grid-template-columns:1fr;gap:34px;padding-top:56px;padding-bottom:56px;}
  .gs-hero h1{font-size:2.4rem;}
  .gs-hero-media img{height:250px;}
  .gs-sec{padding:56px 0;}
  .gs-h2{font-size:1.85rem;}
  .gs-about{grid-template-columns:1fr;gap:30px;}
  .gs-about img{height:250px;}
  .gs-cards{grid-template-columns:1fr;}
  .gs-card.raised{margin-top:0;}
  .gs-cradle::before{display:none;}
  .gs-proof{grid-template-columns:1fr;}
  .gs-threads{padding:56px 0;}
  .gs-threads h2{font-size:1.85rem;}
  .gs-thread-grid{grid-template-columns:1fr;}
  .gs-gallery{grid-template-columns:repeat(2,1fr);}
  .gs-trust .gs-wrap{grid-template-columns:1fr 1fr;gap:24px;}
  .gs-trust>.gs-wrap>img{grid-column:1/-1;}
  .gs-foot-grid{grid-template-columns:1fr 1fr;gap:28px;}
  .gs-pagehead{padding:46px 0 40px;}
  .gs-pagehead h1{font-size:2rem;}
  .gs-main{padding:48px 0 62px;}
}
@media (max-width:560px){
  .gs-partners{gap:28px;}
  .gs-partners img{height:38px;}
  .gs-foot-grid{grid-template-columns:1fr;}
  .gs-trust .gs-wrap{grid-template-columns:1fr;}
}

/* WP admin bar offset for sticky nav */
body.admin-bar .gs-nav{top:32px;}
@media (max-width:782px){body.admin-bar .gs-nav{top:46px;}}
