


.l-root_wb   { width: 100%; }
.l-frame_wb  { width: 100%; position: relative; }
.l-shell_wb  { width: 100%; }

body {
  padding-top: 112px;    
  padding-bottom: 104px; 
}


.l-header_wb {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  background: #ffffff;
  box-shadow: 0 2px 20px rgba(5, 46, 22, 0.09);
}
.l-header-wrap_wb { width: 100%; }

.ribbon_wb {
  background: #052e16;
  color: #dcfce7;
  padding: 0.6rem 5%;
  text-align: center;
  font-weight: 600;
  font-size: 0.82rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.ribbon-dot_wb { color: #65a30d; padding: 0 1.5%; }

.l-header-bar_wb {
  width: 92%;
  max-width: 1180px;
  margin: 0 auto;
  min-height: 72px;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 2%;
}


.l-main_wb      { width: 100%; display: block; }
.l-main-wrap_wb { width: 100%; }

.l-flow_wb {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0;
  width: 100%;
}


.l-band_wb {
  flex: 1 1 100%;
  width: 100%;
  padding: 4rem 5%;
  background: #f0fdf4;
  position: relative;
}
.l-band_wb:nth-of-type(odd) { background: #ffffff; }
.l-band_wb.l-band--deep_wb { background: #052e16; }
.l-band_wb.l-band--tint_wb { background: #dcfce7; }

.l-band-wrap_wb { width: 100%; }

.l-band-core_wb {
  width: 90%;
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 4%;
  align-items: flex-start;
}
.l-band-core_wb > * { flex: 1 1 100%; }
.l-split_wb { flex: 1 1 46%; min-width: 280px; }


.ridge_wb {
  position: relative;
  height: 90px;
  width: 100%;
  flex: 1 1 100%;
  overflow: hidden;
  background: #ffffff;
}
.ridge--onTint_wb { background: #f0fdf4; }
.ridge--onDeep_wb { background: #052e16; }

.ridge-layer_wb {
  position: absolute;
  inset: 0;
  clip-path: polygon(0 100%, 25% 40%, 55% 80%, 80% 30%, 100% 70%, 100% 100%);
}
.ridge-a_wb { background: rgba(22, 163, 74, 0.16); }
.ridge-b_wb {
  background: rgba(22, 163, 74, 0.32);
  transform: translateY(12px);
  animation: wbRidgeSway 14s ease-in-out infinite;
}
.ridge--onTint_wb .ridge-a_wb { background: rgba(5, 46, 22, 0.12); }
.ridge--onTint_wb .ridge-b_wb { background: rgba(5, 46, 22, 0.22); }
.ridge--onDeep_wb .ridge-a_wb { background: rgba(101, 163, 13, 0.28); }
.ridge--onDeep_wb .ridge-b_wb { background: rgba(101, 163, 13, 0.45); }


.l-footer_wb {
  background: #052e16;
  color: #c8dfcd;
  padding: 3rem 5% 1.5rem;
  width: 100%;
}
.l-footer-wrap_wb { width: 100%; }
.l-footer-core_wb { width: 90%; max-width: 1100px; margin: 0 auto; }

.foot-top_wb {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 2rem;
  padding-bottom: 2rem;
}
.foot-cols_wb {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 6%;
}
.foot-col_wb { flex: 1 1 40%; min-width: 160px; }

.foot-bar_wb {
  border-top: 1px solid rgba(200, 223, 205, 0.18);
  padding-top: 1.25rem;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: space-between;
  align-items: center;
}


.page-top_wb {
  background: linear-gradient(140deg, #052e16 0%, #14532d 48%, #166534 100%);
  color: #ffffff;
  padding: 3.5rem 5%;
  width: 100%;
}
.page-top-core_wb { width: 90%; max-width: 1100px; margin: 0 auto; }
.doc_wb { width: 90%; max-width: 820px; margin: 0 auto; }


.l-band_wb[id], .big-splash_wb[id] { scroll-margin-top: 124px; }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
