
:root{
  --forest:#173d2b;
  --forest2:#24563d;
  --moss:#718b62;
  --cream:#f5f0e5;
  --paper:#fffdf8;
  --ink:#18201b;
  --gold:#d6b95d;
  --line:#d8d2c5;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);line-height:1.55}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.08;margin:0 0 .6rem}
h1{font-size:clamp(3.4rem,8vw,7.4rem);letter-spacing:-.045em}
h2{font-size:clamp(2.2rem,5vw,4.3rem);letter-spacing:-.035em}
h3{font-size:1.55rem}
p{margin:.4rem 0 1rem}
a{color:inherit}
.wrap{width:min(var(--max),calc(100% - 42px));margin:auto}
.eyebrow{font-weight:800;text-transform:uppercase;letter-spacing:.13em;font-size:.78rem}
header{position:sticky;top:0;z-index:10;background:rgba(255,253,248,.96);border-bottom:1px solid var(--line)}
.nav{min-height:74px;display:flex;align-items:center;gap:26px}
.brand{font-family:Georgia,serif;font-weight:800;font-size:1.2rem;text-decoration:none;margin-right:auto}
nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
nav a{text-decoration:none;font-size:.86rem;font-weight:700}
nav a:hover{text-decoration:underline}
.btn{display:inline-block;padding:13px 18px;border:2px solid var(--forest);background:var(--forest);color:white;text-decoration:none;font-weight:800;margin:5px 8px 5px 0}
.btn.alt{background:transparent;color:var(--forest)}
.btn.light{border-color:white;background:white;color:var(--forest)}
.hero{background:var(--forest);color:white;padding:86px 0 70px;overflow:hidden;position:relative}
.hero:after{content:"";position:absolute;right:-8vw;bottom:-12vw;width:48vw;height:48vw;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 6vw rgba(255,255,255,.035),0 0 0 12vw rgba(255,255,255,.025)}
.hero .sub{font-family:Georgia,serif;font-size:clamp(1.45rem,2.5vw,2.2rem);max-width:820px}
.hero .lede{max-width:780px;font-size:1.14rem;color:#e8efe9}
.citizen{margin-top:34px;padding:19px 22px;border-left:5px solid var(--gold);background:rgba(255,255,255,.07);max-width:870px;font-weight:700}
section{padding:82px 0}
.intro{max-width:850px;font-size:1.2rem}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}
.card{border-top:5px solid var(--forest);background:var(--cream);padding:28px;min-height:210px}
.card .num{font-family:Georgia,serif;font-size:3rem;color:var(--moss);line-height:1}
.prh{background:var(--cream)}
.prh-card{background:var(--paper);padding:30px;border:1px solid var(--line)}
.prh-card strong{display:block;font-family:Georgia,serif;font-size:2rem;margin-bottom:8px;color:var(--forest)}
.statement{background:var(--forest);color:white;text-align:center;padding:88px 0}
.statement h2{max-width:980px;margin:0 auto 25px}
.statement p{max-width:800px;margin:0 auto 20px;color:#e8efe9;font-size:1.15rem}
.six{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:36px}
.six div{background:var(--paper);padding:25px}
.six strong{display:block;font-family:Georgia,serif;font-size:1.3rem;color:var(--forest)}
.infrastructure{background:linear-gradient(110deg,#e7eadf,#f5f0e5)}
.pills{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}
.pills span{border:1px solid var(--forest);padding:8px 12px;font-weight:700}
.docs .card{display:flex;flex-direction:column}
.docs .card .btn{margin-top:auto;align-self:flex-start}
.action{background:#e8dfc3}
.action .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:start}
.action-box{background:var(--paper);padding:30px;border:1px solid #c9bd97}
.action-box ul{padding-left:20px}
.training{background:var(--forest2);color:white}
.training .tag{display:inline-block;background:var(--gold);color:#222;padding:7px 10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}
.video-box{aspect-ratio:16/9;background:#d9d5cb;display:grid;place-items:center;border:1px solid #c8c2b6;margin-top:25px;color:#555;font-weight:700}
.closing{text-align:center}
.closing p{max-width:820px;margin:0 auto 22px;font-size:1.12rem}
footer{background:#10291e;color:#dce6df;padding:46px 0}
.footergrid{display:grid;grid-template-columns:1fr 2fr;gap:40px}
footer nav{justify-content:flex-end}
.small{font-size:.82rem;color:#aebbb2}
@media(max-width:900px){
  header{position:static}
  .nav{padding:16px 0;align-items:flex-start}
  nav{display:none}
  .grid3,.six,.action .wrap,.footergrid{grid-template-columns:1fr}
  .hero{padding-top:58px}
  section{padding:60px 0}
}

.pagehero{background:var(--forest);color:white;padding:62px 0}
.pagehero h1{font-size:clamp(2.8rem,6vw,5.8rem)}
.pagehero p{max-width:820px;font-size:1.16rem;color:#e7eee9}
.content{max-width:900px}
.content h2{margin-top:2.2rem;font-size:clamp(2rem,4vw,3.2rem)}
.content h3{margin-top:1.7rem}
.content li{margin:.45rem 0}
.callout{background:var(--cream);border-left:5px solid var(--forest);padding:24px 28px;margin:28px 0}
.resource{border:1px solid var(--line);padding:22px;margin:14px 0;background:white}
.resource h3{margin-bottom:.25rem}
.steps{counter-reset:step}
.step{display:grid;grid-template-columns:62px 1fr;gap:20px;border-top:1px solid var(--line);padding:25px 0}
.step:before{counter-increment:step;content:counter(step);font-family:Georgia,serif;font-size:2.5rem;color:var(--moss)}
.template{background:#f2efe8;border:1px solid var(--line);padding:22px;white-space:pre-wrap}
.breadcrumb{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;margin-bottom:16px}
.breadcrumb a{color:inherit}
.site-note{background:#e8dfc3;padding:14px 0;font-size:.88rem;font-weight:700}
@media(max-width:900px){.step{grid-template-columns:45px 1fr}}

.wide-photo{margin:0;background:var(--cream)}
.wide-photo img{display:block;width:100%;height:min(48vw,620px);object-fit:cover}
.wide-photo figcaption,.content-image figcaption{font-size:.78rem;color:#5e675f;padding:8px 21px 10px;max-width:var(--max);margin:auto}
.compact-photo img{height:min(42vw,500px);object-position:center 45%}
.content-image{margin:32px 0 44px}
.content-image img{display:block;width:100%;max-height:560px;object-fit:cover}
.map-image img{object-fit:contain;max-height:none;background:#fff}
.proposal-downloads{margin-top:28px;padding-top:10px;border-top:1px solid var(--line)}
@media(max-width:700px){.wide-photo img,.compact-photo img{height:58vw}.content-image{margin:24px 0 34px}}

.infrastructure-photo img{max-height:470px;object-position:center 55%}

.video-embed{position:relative;width:100%;aspect-ratio:16/9;margin:25px 0 42px;background:#111}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
