:root {
  --color-primary: #217d3e;
  --color-primary-strong: #124f25;
  --color-brand-subtle: #92d9a8;
  --color-brand-on-dark: #28954a;
  --color-primary-fg: #ffffff;
  --color-accent: #b12f88;
  --color-accent-fg: #ffffff;
  --color-canvas: #fafafa;
  --color-card: #eff5f1;
  --color-fg: #222f26;
  --color-muted: #5f7767;
  --color-edge: #dde4df;
  --color-dark-bg: #121c15;
  --color-dark-raised: #203126;
  --color-inverse-text: #f4f6f4;
  --color-dark-fg-muted: #abbab0;
  --radius-sm: 4px;
  --radius-large: 8px;
  --radius-control: 4px;
  --case-btn: none;
  --tracking-btn: 0;
  --font-weight-cta: 600;
  --font-display: 'Lora', Georgia, 'Times New Roman', serif;
  --font-base: 'Source Sans 3', 'Segoe UI', system-ui, sans-serif;
  --text-h1: clamp(2rem, 4.5vw, 3.25rem);
  --text-h2: clamp(1.6rem, 3vw, 2.25rem);
  --text-h3: 1.25rem;
  --font-weight-title: 700;
  --tracking-title: -0.01em;
  --leading-title: 1.15;
  --case-eyebrow: uppercase;
  --tracking-overline: .12em;
  --color-tagline: #217d3e;
  --text-body: 1.0625rem;
  --leading-base: 1.6;
  --container-page: 1051px;
  --spacing-block: 5.6rem;
  --shadow-sm: 0 2px 12px rgba(0,0,0,.08);
  --shadow-strong: 0 24px 60px rgba(0,0,0,.12);
}
*,*::before,*::after {
  box-sizing: border-box;
}
html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}
body {
  margin: 0;
  overflow-wrap: anywhere;
  font-family: var(--font-base);
  font-size: var(--text-body);
  line-height: var(--leading-base);
  color: var(--color-fg);
  background: var(--color-canvas);
}
img,svg,video {
  max-width: 100%;
  height: auto;
  display: block;
}
h1,h2,h3,h4 {
  font-family: var(--font-display);
  font-weight: var(--font-weight-title);
  line-height: var(--leading-title);
  margin: 0 0 .6em;
  color: var(--color-fg);
  letter-spacing: var(--tracking-title);
  hyphens: manual;
}
h1{font-size:var(--text-h1)}
h2 {
  font-size: var(--text-h2);
}
h3 {
  font-size: var(--text-h3);
  line-height: 1.3;
}
h4{font-size:1.05rem;line-height:1.35}
p{margin:0 0 1em}
a{color:var(--color-primary);text-decoration:none}
@media (min-width:481px){a[href^="tel:"] {
  white-space: nowrap;
}}
a:hover {
  color: var(--color-primary-strong);
}
ul,ol{margin:0 0 1em;padding-left:1.25em}
button,input,textarea,select{font:inherit;color:inherit}
::selection {
  background: var(--color-brand-subtle);
  color: var(--color-fg);
}
.mb-bold {
  width: min(100% - 2.5rem,var(--container-page));
  margin-inline: auto;
}
.overflow-start {
  width: min(100% - 2.5rem,48rem);
}
.block-16{padding-block:var(--spacing-block)}
.gap-third {
  background: var(--color-card);
}
.m-contain{background:var(--color-dark-bg);color:var(--color-inverse-text)}
.m-contain h1,.m-contain h2,.m-contain h3,.m-contain h4 {
  color: inherit;
}
.m-contain a {
  color: var(--color-brand-on-dark);
}
.m-contain .fixed-screen,.m-contain .absolute-lg {
  color: var(--color-dark-fg-muted);
}
.m-contain .px-x {
  color: var(--color-brand-on-dark);
}
.gap-between {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .8rem 1.5rem;
  border-radius: var(--radius-control);
  background: var(--color-primary);
  color: var(--color-primary-fg);
  font-weight: var(--font-weight-cta);
  text-transform: var(--case-btn);
  letter-spacing: var(--tracking-btn);
  line-height: 1.25;
  border: 1px solid transparent;
  cursor: pointer;
  transition: background .2s,color .2s,border-color .2s,transform .2s;
}
.gap-between:hover{background:var(--color-primary-strong);color:var(--color-primary-fg)}
.gap-between:active {
  transform: translateY(1px);
}
.grow-quarter{background:transparent;color:var(--color-primary);border-color:currentColor}
.grow-quarter:hover{background:var(--color-primary);color:var(--color-primary-fg);border-color:var(--color-primary)}
.text-wrap{background:var(--color-accent);color:var(--color-accent-fg)}
.text-wrap:hover {
  background: var(--color-accent);
  color: var(--color-accent-fg);
  filter: brightness(.92);
}
.relative-black{background:var(--color-inverse-text);color:var(--color-dark-bg)}
.relative-black:hover {
  background: #fff;
  color: var(--color-dark-bg);
}
.ml-contain {
  padding: .55rem 1.1rem;
  font-size: .9rem;
}
.font-16 {
  padding: 1rem 2rem;
  font-size: 1.05rem;
}
.m-contain .gap-between:not(.grow-quarter):not(.text-wrap):not(.relative-black){background:var(--color-brand-on-dark);color:var(--color-dark-bg)}
.m-contain .gap-between:not(.grow-quarter):not(.text-wrap):not(.relative-black):hover {
  background: var(--color-inverse-text);
  color: var(--color-dark-bg);
}
.m-contain .grow-quarter{color:var(--color-inverse-text);border-color:var(--color-dark-fg-muted)}
.m-contain .grow-quarter:hover {
  background: var(--color-inverse-text);
  color: var(--color-dark-bg);
  border-color: var(--color-inverse-text);
}
.col-white {
  display: grid;
  gap: 1.5rem;
}
.grid-max {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,18rem),1fr));
}
.absolute-visible{grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
.truncate-x{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}
.scale-tight{grid-template-columns:repeat(2,1fr)}
.ml-normal{grid-template-columns:repeat(3,1fr)}
.absolute {
  grid-template-columns: repeat(4,1fr);
}
@media (max-width:960px){.absolute{grid-template-columns:repeat(2,1fr)}.ml-normal{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.scale-tight,.ml-normal,.absolute {
  grid-template-columns: 1fr;
}}
.pt{display:flex;flex-wrap:wrap;justify-content:center}
.pt>*{min-width:0}
.pt.scale-tight>*{flex:0 0 calc((100% - 1.5rem)/2)}
.pt.ml-normal>*{flex:0 0 calc((100% - 3rem)/3)}
.pt.absolute>*{flex:0 0 calc((100% - 4.5rem)/4)}
@media (max-width:960px){.pt.ml-normal>*,.pt.absolute>*{flex-basis:calc((100% - 1.5rem)/2)}}
@media (max-width:560px){.pt.scale-tight>*,.pt.ml-normal>*,.pt.absolute>*{flex-basis:100%}}
.fixed-screen{font-size:1.15rem;color:var(--color-muted)}
.px-x {
  display: inline-block;
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: var(--tracking-overline);
  text-transform: var(--case-eyebrow);
  color: var(--color-tagline);
  margin-bottom: .75rem;
}
.absolute-lg {
  color: var(--color-muted);
}
.ease {
  text-align: center;
}
.pt-wide {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
}
@media (max-width:640px){
.block-16{padding-block:calc(var(--spacing-block) * .7)}
}
.min-h {
  position: sticky;
  top: 0;
  z-index: 20;
  background: var(--color-canvas);
}
.bg-max{border-bottom:1px solid var(--color-edge)}
.justify-snug{box-shadow:var(--shadow-sm)}
.divide-black{display:flex;align-items:center;gap:2rem;min-height:4.75rem}
.col{display:inline-flex;flex:none;min-width:0;max-width:40%}
.tracking-row{height:auto;width:auto;max-height:2.25rem}
.p-normal{margin-inline:auto}
.hidden-y{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.6rem;list-style:none;margin:0;padding:0}
.pb{color:var(--color-fg);font-weight:500}
.pb:hover,.left-8 {
  color: var(--color-primary);
}
.divide-24 {
  display: flex;
  align-items: center;
  gap: .7rem;
  flex: none;
  color: var(--color-fg);
}
.divide-24:hover{color:var(--color-primary)}
.mt-visible{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;background:var(--color-primary);color:var(--color-primary-fg)}
.mt-visible svg{width:1.15rem;height:1.15rem}
.absolute-row{display:flex;flex-direction:column;line-height:1.25}
.justify-1{font-size:.75rem;color:var(--color-muted)}
.origin{font-size:1.05rem;white-space:nowrap}
.sr-between {
  display: none;
}
.sr-between:focus-visible + .content-gray-900 {
  outline: 2px solid var(--color-primary);
  outline-offset: 4px;
}
.content-gray-900{display:none;flex:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:44px;min-height:44px;padding:.5rem;cursor:pointer}
.row-8 {
  display: block;
  width: 24px;
  height: 2px;
  border-radius: 2px;
  background: var(--color-fg);
}
@media (max-width:980px){
.divide-black {
  gap: .75rem;
  justify-content: space-between;
}
.sr-between {
  display: block;
}
.content-gray-900{display:flex;order:3}
.divide-24{order:2;margin-inline-start:auto}
.absolute-row{display:none}
.p-normal {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  margin: 0;
  padding: 1.25rem;
  background: var(--color-canvas);
  border-bottom: 1px solid var(--color-edge);
  box-shadow: var(--shadow-sm);
}
.sr-between:checked ~ .p-normal {
  display: block;
}
.hidden-y{flex-direction:column;align-items:flex-start;gap:.75rem}
}
.sticky-wrap{padding-block:calc(var(--spacing-block) * .8) 1.5rem;background:var(--color-card);color:var(--color-fg);overflow-wrap:anywhere;border-top:1px solid var(--color-edge)}
.decoration-6 {
  display: grid;
  grid-template-columns: minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);
  gap: 3rem;
  padding-bottom: 2rem;
}
.min-h-snug{font-family:var(--font-display);font-size:1.15rem;line-height:1.65;margin:0;max-width:30rem}
.font-tight{font-size:.8rem;color:var(--color-muted);font-family:var(--font-base);font-weight:600;letter-spacing:var(--tracking-overline);text-transform:var(--case-eyebrow);margin-bottom:1rem}
.decoration-row{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}
.grid-bottom{min-width:0}
.py{color:var(--color-fg);font-size:.9rem}
.py:hover {
  color: var(--color-primary);
  text-decoration: underline;
  text-underline-offset: .3em;
}
.tracking-normal{font-family:var(--font-display);font-size:clamp(2.5rem,8.8vw,7.5rem);font-weight:var(--font-weight-title);line-height:1.08;letter-spacing:var(--tracking-title);padding-block:2rem;border-block:1px solid var(--color-edge)}
.not-sr-3 {
  font-size: clamp(2rem,4.6vw,4.5rem);
  line-height: 1.1;
  text-wrap: balance;
}
.place-5 .tracking-normal {
  border-top: 4px double var(--color-primary);
}
.flex-6{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:1.3rem;padding-top:1.2rem;font-size:.8rem;color:var(--color-muted)}
.clearfix-10 {
  max-width: 36rem;
}
.duration-white{display:flex;flex-wrap:wrap;gap:.4rem 1rem;max-width:100%}
.place-md {
  font-weight: 600;
  color: var(--color-fg);
}
@media (max-width:760px){.decoration-6 {
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 2rem 1rem;
}.min-h-snug{grid-column:1/-1;max-width:40rem}.tracking-normal {
  font-size: clamp(2.2rem,11vw,4rem);
  padding-block: 1.5rem;
}.not-sr-3{font-size:clamp(1.6rem,7vw,2.6rem)}.duration-white{flex-direction:column}}
.select {
  position: fixed;
  z-index: 50;
  inset-inline-end: 1rem;
  bottom: 1rem;
  width: min(24rem,calc(100% - 2rem));
  max-height: calc(100vh - 2rem);
  max-height: calc(100dvh - 2rem);
  overflow: auto;
  overscroll-behavior: contain;
  padding: 1.35rem;
  background: var(--color-card);
  color: var(--color-fg);
  border: 1px solid var(--color-edge);
  border-top: 3px solid var(--color-primary);
  border-radius: var(--radius-sm);
  box-shadow: var(--shadow-sm);
  font-size: .92rem;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.select[hidden] {
  display: none;
}
.mt-left{margin:0 0 .7rem;font-family:var(--font-display);font-size:1.18rem;font-weight:var(--font-weight-title);line-height:1.25;letter-spacing:var(--tracking-title)}
.sr-third{margin:0 0 .9rem}
.rotate{display:inline-block;max-width:100%;color:var(--color-primary);font-weight:600;text-decoration:underline;text-underline-offset:.2em}
.rotate:hover{color:var(--color-primary-strong)}
.mx-secondary {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: .65rem;
  margin-top: 1.15rem;
  padding-top: 1rem;
  border-top: 1px solid var(--color-edge);
}
.overflow-secondary{min-width:0;min-height:44px;padding:.65rem .6rem;border:1px solid var(--color-edge);border-radius:var(--radius-control);background:var(--color-canvas);color:var(--color-fg);font-weight:var(--font-weight-cta);font-size:.9rem;line-height:1.3;white-space:normal;overflow-wrap:anywhere;cursor:pointer}
.overflow-secondary:hover{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-fg)}
.overflow-secondary:focus-visible,.rotate:focus-visible {
  outline: 3px solid var(--color-primary);
  outline-offset: 3px;
}
@media(max-width:560px){.select{inset-inline-end:.5rem;bottom:.5rem;width:calc(100% - 1rem);padding:.85rem .95rem;font-size:.84rem;line-height:1.4}.mt-left{margin-bottom:.35rem;font-size:1rem}.sr-third {
  margin-bottom: .5rem;
}.mx-secondary{gap:.5rem;margin-top:.6rem;padding-top:.6rem}.overflow-secondary{min-height:40px;padding:.5rem .4rem}}
.place-snug {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1.6fr);
  gap: 2.5rem;
  align-items: start;
}
.text-xs .place-snug{grid-template-columns:minmax(0,1fr);max-width:48rem}
.leading-end{margin:0;min-width:0;overflow-wrap:anywhere}
.basis-cover {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 1rem;
  min-width: 0;
}
.font-full{display:grid;gap:.35rem;min-width:0}
.decoration-20{grid-column:1/-1}
.p-2xl {
  font-size: .9rem;
  font-weight: 600;
}
.hidden{width:100%;min-width:0;padding:.7rem .9rem;border:1px solid var(--color-edge);border-radius:var(--radius-sm);background:var(--color-canvas)}
.hidden:focus {
  outline: 2px solid var(--color-primary);
  outline-offset: 1px;
}
.p-full {
  resize: vertical;
}
.sr-half {
  justify-self: start;
  max-width: 100%;
  overflow-wrap: anywhere;
}
@media (max-width:860px){
.place-snug{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:480px){
.basis-cover{grid-template-columns:minmax(0,1fr)}
}
.shrink-disc{padding-block:calc(var(--spacing-block) * .6) calc(var(--spacing-block) * 1.1)}
.sticky-hidden{position:relative}
.text-gray-900{margin:0}
.gap-x{width:100%;aspect-ratio:2/1;object-fit:cover;border-radius:var(--radius-large)}
.translate-wide .gap-x {
  aspect-ratio: 16/9;
}
.fixed-contain {
  position: relative;
  z-index: 1;
  width: min(100%,32rem);
  margin: -6rem 0 0 2.5rem;
  padding: 2.25rem;
  border-radius: var(--radius-large);
  box-shadow: var(--shadow-strong);
}
.divide-bottom .fixed-contain{margin-left:auto;margin-right:2.5rem}
.truncate-cover .fixed-contain{background:var(--color-canvas);color:var(--color-fg)}
.top-gray-900 .fixed-contain{background:var(--color-primary);color:var(--color-primary-fg)}
.top-gray-900 .ring-bold,.top-gray-900 .grow-y {
  color: var(--color-primary-fg);
}
.pt-end .fixed-contain {
  background: var(--color-dark-bg);
  color: var(--color-inverse-text);
}
.pt-end .ring-bold {
  color: var(--color-inverse-text);
}
.pt-end .grow-y{color:var(--color-brand-on-dark)}
.grow-y {
  display: inline-block;
  font-size: .8rem;
  font-weight: 700;
  letter-spacing: var(--tracking-overline);
  text-transform: var(--case-eyebrow);
  color: var(--color-tagline);
  margin-bottom: .75rem;
}
.ring-bold {
  font-size: var(--text-h2);
  margin-bottom: .75rem;
}
.list{margin-bottom:1.5rem;opacity:.9}
@media (max-width:760px){.fixed-contain {
  width: auto;
  margin: -3rem 1rem 0;
  padding: 1.5rem;
}.divide-bottom .fixed-contain {
  margin-right: 1rem;
}}
.gap-light {
  overflow-wrap: anywhere;
}
.mx-full {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: clamp(2rem, 7vw, 7rem);
  align-items: start;
}
.delay-white {
  border-top: 4px solid var(--color-primary);
  padding-top: 1.5rem;
}
.not-sr-left {
  position: relative;
  padding: 0 0 1.5rem 3.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid var(--color-edge);
}
.opacity-left{position:absolute;left:0;top:.15rem;color:var(--color-muted);font-size:.8rem;font-variant-numeric:tabular-nums}
.max-w-20 {
  max-width: 65ch;
}
@media (max-width: 760px){.mx-full {
  grid-template-columns: minmax(0, 1fr);
}.not-sr-left {
  padding-left: 2.5rem;
}}
.truncate-max{overflow-wrap:anywhere}
.skew>* {
  min-width: 0;
}
.leading-between{max-width:24ch}
.container-8 {
  color: var(--color-muted);
}
.list-black{max-width:100%;white-space:normal;text-align:center}
.ease-1 {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,.8fr);
  gap: 3rem;
  align-items: end;
  margin-bottom: 3rem;
}
.fixed-gray-500 {
  margin: 0;
  max-width: 48ch;
}
.sticky-left {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 2px solid var(--color-fg);
}
.bg-col {
  display: grid;
  grid-template-columns: 4rem minmax(0,.85fr) minmax(0,1.15fr);
  gap: 2rem;
  padding: 1.7rem 0;
  border-bottom: 1px solid var(--color-edge);
  align-items: start;
}
.top-xl{font-size:2.1rem;line-height:1.1;color:var(--color-primary);font-family:var(--font-display)}
.sticky {
  margin: 0;
  font-size: clamp(1.2rem,2.2vw,1.8rem);
}
.container-8 {
  margin: 0;
}
.justify-muted {
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  align-items: center;
  margin-top: 2rem;
}
.sticky-6{max-width:56ch;margin:0;color:var(--color-muted)}
.list-black {
  flex-shrink: 0;
}
@media(max-width:700px){.ease-1{grid-template-columns:1fr;gap:1rem}.bg-col {
  grid-template-columns: 2.5rem minmax(0,1fr);
  gap: .8rem 1rem;
}.container-8{grid-column:2}.top-xl{grid-row:1/3;font-size:1.7rem}.justify-muted{align-items:flex-start;flex-direction:column}.list-black {
  flex-shrink: 1;
}}
.whitespace-xs{max-width:52rem;margin-bottom:2.5rem}
.ease-8 {
  margin-bottom: 1rem;
}
.w-max{margin-bottom:0}
.max-w-decimal {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
  align-items: stretch;
}
.order{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;padding-inline-end:1.5rem}
.order:last-child {
  padding-inline-end: 0;
}
.order:not(:last-child)::before{content:"";position:absolute;inset-inline-start:1.5rem;inset-inline-end:0;top:1.5rem;height:2px;background:var(--color-edge)}
.flex-x{position:relative;display:grid;place-items:center;flex:none;width:3rem;height:3rem;border:2px solid var(--color-primary);border-radius:50%;background:var(--color-canvas);color:var(--color-fg);font-weight:700;font-variant-numeric:tabular-nums;margin-bottom:1.5rem}