:root{
  --ink:#17211f;
  --forest:#1f3b34;
  --green:#2f6b5f;
  --copper:#c76f3a;
  --cream:#f7f2e9;
  --mist:#eef4f1;
  --paper:#fffdf8;
  --line:#d8dfda;
  --muted:#63726d;
  --shadow:0 22px 60px rgba(23,33,31,.14);
}
*{letter-spacing:0}
body{
  margin:0;
  color:var(--ink);
  background:var(--paper);
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
a{
  color:var(--green);
  text-decoration:none;
}
a:hover{color:var(--copper)}
.top-strip{
  background:var(--forest);
  color:#fff;
  font-size:.9rem;
}
.site-header{
  position:sticky;
  top:0;
  z-index:1030;
  background:rgba(255,253,248,.96);
  border-bottom:1px solid rgba(31,59,52,.12);
  box-shadow:0 10px 28px rgba(23,33,31,.06);
  backdrop-filter:blur(14px);
}
.navbar{padding:.7rem 0}
.navbar-brand{
  color:var(--forest);
  font-size:1rem;
}
.brand-mark{
  width:40px;
  height:40px;
  border-radius:8px;
  display:grid;
  place-items:center;
  background:var(--forest);
  color:#fff;
  font-weight:850;
}
.nav-link{
  color:var(--ink);
  font-size:.92rem;
  font-weight:750;
  padding:.55rem .72rem!important;
}
.nav-link:hover,.nav-link.active{color:var(--copper)}
.btn{
  border-radius:7px;
  text-decoration:none;
}
.btn-primary{
  --bs-btn-bg:var(--green);
  --bs-btn-border-color:var(--green);
  --bs-btn-hover-bg:var(--forest);
  --bs-btn-hover-border-color:var(--forest);
}
.btn-warning{
  --bs-btn-bg:var(--copper);
  --bs-btn-border-color:var(--copper);
  --bs-btn-color:#fff;
  --bs-btn-hover-bg:#a9582e;
  --bs-btn-hover-border-color:#a9582e;
  --bs-btn-hover-color:#fff;
}
.hero{
  min-height:720px;
  display:grid;
  align-items:center;
  padding:6.5rem 0;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(14,30,27,.93) 0%,rgba(14,30,27,.83) 44%,rgba(14,30,27,.22) 100%),
    url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=1900&q=82&fm=webp") center/cover;
}
.hero-inner{
  width:min(680px,100%);
  margin:0;
  text-align:left;
}
.hero h1{
  max-width:680px;
  font-size:45px;
  line-height:1.08;
  font-weight:850;
  margin-bottom:1.1rem;
}
.hero-copy{
  max-width:650px;
  color:rgba(255,255,255,.9);
  font-size:1.12rem;
  line-height:1.8;
}
.hero-panel{
  max-width:660px;
  margin-top:1.4rem;
  padding:1rem 1.1rem;
  border-left:4px solid var(--copper);
  background:rgba(255,255,255,.12);
  backdrop-filter:blur(10px);
}
.hero-panel a{color:#fff;font-weight:800}
.hero-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:.8rem;
  margin-top:1.2rem;
}
.glass-card{
  min-height:88px;
  display:flex;
  align-items:center;
  border:1px solid rgba(255,255,255,.22);
  border-radius:8px;
  padding:1rem;
  background:rgba(255,255,255,.13);
  font-weight:750;
  backdrop-filter:blur(10px);
}
.hero .actions{justify-content:flex-start}
.section-pad{padding:5rem 0}
.eyebrow{
  color:var(--copper);
  font-size:.78rem;
  text-transform:uppercase;
  font-weight:850;
}
.section-title{
  font-size:clamp(2rem,4vw,30px);
  line-height:1.2;
  font-weight:800;
  color:var(--forest);
}
.lead{color:#394a45}
.muted{color:var(--muted)}
.alt-band{
  background:var(--mist);
  border-block:1px solid var(--line);
}
.dark-band{
  background:var(--forest);
  color:#fff;
}
.dark-band .section-title{color:#fff}
.dark-band .muted{color:rgba(255,255,255,.76)}
.feature-panel,.program-card,.blog-card,.calc-shell,.toc-box,.article-cta{
  background:#fff;
  border:1px solid var(--line);
  border-radius:8px;
  padding:1.3rem;
  box-shadow:0 12px 34px rgba(23,33,31,.07);
}
.program-card,.blog-card{
  height:100%;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.program-card:hover,.blog-card:hover{
  transform:translateY(-3px);
  border-color:rgba(199,111,58,.45);
  box-shadow:var(--shadow);
}
.program-card::before{
  content:"";
  display:block;
  width:46px;
  height:4px;
  margin:0 0 1rem;
  background:var(--copper);
}
.program-card h3,.blog-card h2{color:var(--forest)}
.result-box{
  background:var(--mist);
  border:1px solid var(--line);
  border-radius:8px;
  padding:1rem;
}
.form-control{
  border-color:#cbd6d1;
  border-radius:7px;
}
.form-control:focus{
  border-color:var(--green);
  box-shadow:0 0 0 .2rem rgba(47,107,95,.16);
}
.link-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.7rem;
}
.link-grid a{
  display:block;
  padding:.9rem 1rem;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
  color:var(--forest);
  font-weight:750;
}
.page-hero{
  padding:6rem 0 4rem;
  background:
    linear-gradient(90deg,rgba(31,59,52,.94),rgba(31,59,52,.72)),
    url("https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?auto=format&fit=crop&w=1800&q=82&fm=webp") center/cover;
  color:#fff;
}
.page-hero h1{
  max-width:820px;
  font-size:clamp(2.5rem,5vw,4.4rem);
  line-height:1.04;
}
.article-wrap{max-width:920px}
.article-wrap h2,.article-wrap h3{margin-top:2rem;color:var(--forest)}
.article-cta{
  background:var(--mist);
  margin:1.5rem 0;
}
.accordion-item{
  border:1px solid var(--line);
  border-radius:8px!important;
  overflow:hidden;
  margin-bottom:.8rem;
}
.accordion-button:not(.collapsed){
  color:var(--forest);
  background:var(--mist);
  box-shadow:none;
}
.site-footer{
  background:#142420;
  color:rgba(255,255,255,.78);
}
.site-footer a{color:rgba(255,255,255,.88)}
.sticky-mobile-cta{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:1040;
  display:none;
  background:#fff;
  border-top:1px solid var(--line);
  padding:.65rem;
  box-shadow:0 -12px 34px rgba(23,33,31,.13);
}
.columns-list{columns:2}
@media(max-width:1199.98px){
  .navbar-brand span:last-child{max-width:210px;white-space:normal;line-height:1.15}
}
@media(max-width:991.98px){
  .hero{
    min-height:auto;
    padding:5.5rem 0 3.5rem;
  }
  .section-pad{padding:3.5rem 0}
}
@media(max-width:767.98px){
  body{padding-bottom:76px}
  .sticky-mobile-cta{display:block}
  .hero{
    background:
      linear-gradient(180deg,rgba(14,30,27,.9),rgba(14,30,27,.72)),
      url("https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=1200&q=82&fm=webp") center/cover;
  }
  .hero-stats,.link-grid{grid-template-columns:1fr}
  .columns-list{columns:1}
}
