:root{
  --forest:#1B4332;
  --forest-soft:#2D6A4F;
  --gold:#B8901F;
  --gold-bright:#C9A227;
  --green:#2E9E5B;
  --amber:#D99420;
  --red:#B93B33;
  --cream:#F7F8F4;
  --card:#EFF2ED;
  --ink:#22302A;
  --muted:#5C6B63;
  --serif:Georgia,'Iowan Old Style','Times New Roman',serif;
  --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
.wrap{max-width:900px;margin:0 auto;padding:0 28px}
.wrap-narrow{max-width:680px;margin:0 auto;padding:0 28px}
.wrap-wide{max-width:1040px;margin:0 auto;padding:0 28px}
section{padding:88px 0}
.dark{background:var(--forest);color:#fff}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin:0 0 18px}
.dark .eyebrow{color:var(--gold-bright)}
h1,h2,h3{font-family:var(--serif);font-weight:700;color:var(--forest);margin:0 0 20px;line-height:1.15}
.dark h1,.dark h2,.dark h3{color:#fff}
h1{font-size:52px;letter-spacing:-.5px}
h2{font-size:34px;letter-spacing:-.3px}
h3{font-size:22px}
p{font-size:18px;line-height:1.65;margin:0 0 20px}
.dark p{color:#E4ECE6}
.lede{font-size:21px;line-height:1.6;color:var(--forest-soft);font-weight:500}
.btn{display:inline-block;font-weight:700;font-size:16px;padding:16px 34px;border-radius:40px;text-decoration:none;letter-spacing:.2px;background:var(--forest);color:#fff;border:2px solid var(--forest);transition:transform .15s ease,box-shadow .15s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(27,67,50,.25)}
.btn.gold{background:var(--gold-bright);border-color:var(--gold-bright);color:#1B4332}
.btn.soft{background:var(--card);color:var(--forest);border-color:#dfe4da}
.btn-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:8px}
nav{padding:10px 0;background:#fff;border-bottom:1px solid #E7E9E4;position:sticky;top:0;z-index:20}
nav .wrap-wide{display:flex;align-items:center;justify-content:space-between;gap:20px}
nav img{height:62px;width:auto}
.nav-right{display:flex;align-items:center;gap:18px}
.lang{font-size:14px;font-weight:700;color:var(--forest);text-decoration:none;white-space:nowrap}
.lang span{color:#a5ada8;font-weight:500;padding:0 4px}
nav .btn{padding:10px 22px;font-size:14px}
.hero{background:linear-gradient(180deg,#FBF9F1 0%,#F4F1E4 42%,var(--cream) 42%,var(--cream) 100%);padding:0;overflow:hidden}
.hero-visual{height:220px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.hero-visual img{width:min(760px,100%);height:auto}
.hero-content{padding:18px 0 72px;text-align:center}
.hero-content h1{max-width:680px;margin-left:auto;margin-right:auto}
.hero-content .lede{max-width:620px;margin:0 auto 28px}
.hero-content p.body{max-width:620px;margin:0 auto 32px}
.hero-content .btn-row{justify-content:center}
.goal-list{list-style:none;margin:32px 0;padding:0;display:flex;flex-wrap:wrap;gap:14px 32px;max-width:640px}
.goal-list li{flex:0 0 44%;font-family:var(--serif);font-size:19px;color:var(--forest);padding-left:26px;position:relative}
.goal-list li:before{content:"";position:absolute;left:0;top:9px;width:10px;height:10px;border-radius:50%;background:var(--green)}
.closing-line{font-family:var(--serif);font-size:24px;color:var(--forest);font-weight:700;margin-top:8px}
.graphic{margin:34px auto 0}
.graphic img{width:100%;height:auto;margin:0 auto}
.graphic.rounds{max-width:900px}
.graphic.states{max-width:760px}
.graphic.scorecard{max-width:900px}
.graphic.access{max-width:820px}
.caption{margin-top:18px;font-style:italic;color:var(--muted);font-size:16px}
.prop{background:var(--forest);text-align:center}
.prop h2{max-width:650px;margin-left:auto;margin-right:auto}
.prop .graphic{margin-top:36px}
.prop-foot{font-size:19px;color:#E4ECE6;font-style:italic;margin-top:18px}
.benefits{display:flex;flex-wrap:wrap;gap:34px 40px;margin-top:36px}
.benefit{flex:0 0 44%}
.benefit h3{font-size:19px;margin-bottom:8px}
.benefit p{font-size:16px;margin:0}
.book-card{display:flex;align-items:center;gap:44px;background:var(--card);border-radius:18px;padding:40px;margin-top:20px}
.book-image{flex:0 0 210px}
.book-image img{width:100%;border-radius:7px;box-shadow:0 18px 34px rgba(27,67,50,.24)}
.book-copy{flex:1}
.book-copy ul{margin:18px 0;padding:0;list-style:none}
.book-copy li{font-size:16px;color:var(--muted);margin-bottom:8px;padding-left:22px;position:relative}
.book-copy li:before{content:"—";position:absolute;left:0;color:var(--gold)}
.ml-shell{margin-top:28px}
.about{display:flex;gap:44px;align-items:center}
.about-visual{flex:0 0 290px}
.about-visual img{width:290px;height:290px;object-fit:cover;border-radius:18px;box-shadow:0 14px 30px rgba(27,67,50,.16)}
.about-copy{flex:1}
.pullquote{font-family:var(--serif);font-size:23px;font-weight:700;color:var(--forest);margin-top:20px}
.help-row{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px}
.final{background:var(--forest);text-align:center}
.final h2{font-size:40px;max-width:580px;margin:0 auto 14px}
.final .btn-row{justify-content:center;margin-top:28px}
footer{background:#12291D;color:#E4ECE6;padding:42px 0;text-align:center;font-size:13px}
.footer-logo{display:inline-block;background:#fff;padding:16px 26px;border-radius:14px;margin-bottom:16px}
.footer-logo img{height:72px;width:auto;margin:0 auto}
footer a{color:#CFE3D6;text-decoration:none;margin:0 8px}
.legal-page{padding:72px 0}
.legal-page h1{font-size:40px}
.legal-page h2{font-size:25px;margin-top:34px}
.legal-page p,.legal-page li{font-size:16px;line-height:1.65}
.legal-page a{color:var(--forest-soft)}
@media(max-width:760px){
  h1{font-size:37px} h2{font-size:28px}
  section{padding:64px 0}
  nav img{height:50px}
  nav .btn{display:none}
  .nav-right{gap:10px}
  .goal-list li,.benefit{flex:0 0 100%}
  .book-card{flex-direction:column;text-align:center;padding:28px}
  .book-image{flex-basis:auto;width:min(220px,70%)}
  .about{flex-direction:column;text-align:left}
  .about-visual{flex-basis:auto}
  .about-visual img{width:240px;height:240px;margin:0 auto}
  .hero-visual{height:185px}
}
