:root {
  --color-key: rgb(64,127,47);
  --color-brand-strong: rgb(40,85,27);
  --color-primary-tint: rgb(175,213,165);
  --color-primary-inverse: rgb(83,164,61);
  --color-primary-fg: rgb(255,255,255);
  --color-pop: rgb(155,189,71);
  --color-accent-contrast: rgb(30,46,25);
  --color-background: rgb(252,252,252);
  --color-layer: rgb(244,246,243);
  --color-fg: rgb(30,46,25);
  --color-dim: rgb(105,118,102);
  --color-border: rgb(220,226,218);
  --color-inverse: rgb(28,43,23);
  --color-inverse-surface: rgb(37,48,33);
  --color-inverse-text: rgb(244,246,244);
  --color-on-dark-muted: rgb(174,186,171);
  --radius-sm: 12px;
  --radius-large: 24px;
  --radius-btn: 999px;
  --case-button: none;
  --tracking-btn: 0;
  --font-weight-button: 600;
  --font-display: 'Nunito', 'Trebuchet MS', 'Segoe UI', sans-serif;
  --font-text: 'Nunito', 'Trebuchet MS', 'Segoe UI', sans-serif;
  --text-xxl: clamp(2.5rem, 6vw, 4.5rem);
  --text-xl: clamp(1.8rem, 3.6vw, 2.75rem);
  --text-lg: 1.35rem;
  --font-weight-heading: 700;
  --tracking-heading: -0.01em;
  --leading-heading: 1.05;
  --case-overline: none;
  --tracking-overline: 0;
  --color-label: rgb(64,127,47);
  --text-md: 1.0625rem;
  --leading-body: 1.65;
  --container-max: 1175px;
  --spacing-stack: 4.5rem;
  --shadow-sm: 0 2px 12px rgba(0,0,0,.08);
  --shadow-strong: 0 12px 40px rgba(0,0,0,.14);
}
*,*::before,*::after{box-sizing:border-box}
html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}
body{color:var(--color-fg);overflow-wrap:anywhere;background:var(--color-background);font-family:var(--font-text);font-size:var(--text-md);line-height:var(--leading-body);margin:0}
img,svg,video {
  height: auto;
  display: block;
  max-width: 100%;
}
h1,h2,h3,h4 {
  line-height: var(--leading-heading);
  color: var(--color-fg);
  margin: 0 0 .6em;
  font-family: var(--font-display);
  hyphens: manual;
  letter-spacing: var(--tracking-heading);
  font-weight: var(--font-weight-heading);
}
h1 {
  font-size: var(--text-xxl);
}
h2{font-size:var(--text-xl)}
h3 {
  line-height: 1.3;
  font-size: var(--text-lg);
}
h4{font-size:1.05rem;line-height:1.35}
p {
  margin: 0 0 1em;
}
a{color:var(--color-key);text-decoration:none}
@media (min-width:481px){
a[href^="tel:"]{white-space:nowrap}
}
a:hover{color:var(--color-brand-strong)}
ul,ol {
  padding-left: 1.25em;
  margin: 0 0 1em;
}
button,input,textarea,select{font:inherit;color:inherit}
::selection {
  color: var(--color-fg);
  background: var(--color-primary-tint);
}
.pt-fit {
  width: min(100% - 2.5rem,var(--container-max));
  margin-inline: auto;
}
.row {
  width: min(100% - 2.5rem,48rem);
}
.m{padding-block:var(--spacing-stack)}
.self-medium {
  background: var(--color-layer);
}
.px-bottom {
  background: var(--color-inverse);
  color: var(--color-inverse-text);
}
.px-bottom h1,.px-bottom h2,.px-bottom h3,.px-bottom h4{color:inherit}
.px-bottom a{color:var(--color-primary-inverse)}
.px-bottom .rotate,.px-bottom .grid-5 {
  color: var(--color-on-dark-muted);
}
.px-bottom .whitespace-full {
  color: var(--color-primary-inverse);
}
.decoration-10{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.5rem;border-radius:var(--radius-btn);background:var(--color-key);color:var(--color-primary-fg);font-weight:var(--font-weight-button);text-transform:var(--case-button);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}
.decoration-10:hover{background:var(--color-brand-strong);color:var(--color-primary-fg)}
.decoration-10:active{transform:translateY(1px)}
.block-4 {
  background: transparent;
  color: var(--color-key);
  border-color: currentColor;
}
.block-4:hover {
  background: var(--color-key);
  border-color: var(--color-key);
  color: var(--color-primary-fg);
}
.font-normal{background:var(--color-pop);color:var(--color-accent-contrast)}
.font-normal:hover{background:var(--color-pop);filter:brightness(.92);color:var(--color-accent-contrast)}
.decoration-6{background:var(--color-inverse-text);color:var(--color-inverse)}
.decoration-6:hover{background:rgb(255,255,255);color:var(--color-inverse)}
.overflow-cover {
  font-size: .9rem;
  padding: .55rem 1.1rem;
}
.rotate-5{padding:1rem 2rem;font-size:1.05rem}
.px-bottom .decoration-10:not(.block-4):not(.font-normal):not(.decoration-6) {
  color: var(--color-inverse);
  background: var(--color-primary-inverse);
}
.px-bottom .decoration-10:not(.block-4):not(.font-normal):not(.decoration-6):hover {
  background: var(--color-inverse-text);
  color: var(--color-inverse);
}
.px-bottom .block-4{color:var(--color-inverse-text);border-color:var(--color-on-dark-muted)}
.px-bottom .block-4:hover{color:var(--color-inverse);border-color:var(--color-inverse-text);background:var(--color-inverse-text)}
.items {
  display: grid;
  gap: 1.5rem;
}
.font-3 {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,18rem),1fr));
}
.grid-gray-900 {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,15rem),1fr));
}
.hidden-primary {
  grid-template-columns: repeat(auto-fit,minmax(min(100%,12rem),1fr));
}
.shrink-min {
  grid-template-columns: repeat(2,1fr);
}
.duration {
  grid-template-columns: repeat(3,1fr);
}
.p-center{grid-template-columns:repeat(4,1fr)}
@media (max-width:960px){
.p-center {
  grid-template-columns: repeat(2,1fr);
}
.duration {
  grid-template-columns: repeat(2,1fr);
}
}
@media (max-width:560px){.shrink-min,.duration,.p-center{grid-template-columns:1fr}}
.mb-max{display:flex;justify-content:center;flex-wrap:wrap}
.mb-max>* {
  min-width: 0;
}
.mb-max.shrink-min>* {
  flex: 0 0 calc((100% - 1.5rem)/2);
}
.mb-max.duration>* {
  flex: 0 0 calc((100% - 3rem)/3);
}
.mb-max.p-center>*{flex:0 0 calc((100% - 4.5rem)/4)}
@media (max-width:960px){
.mb-max.duration>*,.mb-max.p-center>* {
  flex-basis: calc((100% - 1.5rem)/2);
}
}
@media (max-width:560px){.mb-max.shrink-min>*,.mb-max.duration>*,.mb-max.p-center>*{flex-basis:100%}}
.rotate {
  color: var(--color-dim);
  font-size: 1.15rem;
}
.whitespace-full{text-transform:var(--case-overline);letter-spacing:var(--tracking-overline);display:inline-block;color:var(--color-label);font-size:.8rem;font-weight:700;margin-bottom:.75rem}
.grid-5{color:var(--color-dim)}
.break-row{text-align:center}
.container-disc {
  height: 1px;
  width: 1px;
  clip: rect(0 0 0 0);
  border: 0;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
}
@media (max-width:640px){
.m {
  padding-block: calc(var(--spacing-stack) * .7);
}
}
.sticky-pointer {
  overflow-wrap: anywhere;
  background: var(--color-background);
  padding-block: 1rem;
}
.sr-wrap {
  display: grid;
  grid-template-columns: minmax(9rem,1fr) minmax(0,2fr) minmax(0,.85fr);
  align-items: center;
  gap: 1.5rem;
  padding: 1.3rem 1.5rem;
  background: var(--color-inverse);
  color: var(--color-inverse-text);
  border-radius: var(--radius-large);
}
.cursor-center .sr-wrap{border-bottom:4px solid var(--color-primary-inverse);border-radius:0}
.left-12{display:flex;align-items:center;gap:.8rem;color:var(--color-inverse-text);min-width:0}
.left-12:hover {
  color: var(--color-primary-inverse);
}
.justify-left {
  height: 1.7rem;
  color: var(--color-primary-inverse);
  flex: none;
  width: 1.7rem;
  display: block;
}
.font-left {
  width: 100%;
  display: block;
  height: 100%;
  object-fit: contain;
}
.leading-scroll {
  font-size: 1.3rem;
  min-width: 0;
  font-family: var(--font-display);
  line-height: 1.2;
  font-weight: var(--font-weight-heading);
}
.relative-tight{font-size:1.05rem;text-wrap:balance;line-height:1.15}
.ring-around {
  padding-left: 1.5rem;
  border-left: 1px solid var(--color-on-dark-muted);
  min-width: 0;
}
.m-x {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .6rem 1.2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.sticky-24 {
  min-width: 0;
}
.order-decimal {
  display: block;
  font-size: .85rem;
  padding: .2rem 0;
  color: var(--color-inverse-text);
  line-height: 1.5;
}
.order-decimal:hover,.mt-hidden {
  text-underline-offset: .3em;
  text-decoration: underline;
  color: var(--color-primary-inverse);
}
.rounded-circle{display:block;color:var(--color-inverse);text-align:center;background:var(--color-inverse-text);border-radius:var(--radius-btn);font-size:.9rem;min-width:0;font-weight:700;padding:.85rem 1rem}
.rounded-circle:hover {
  background: var(--color-primary-inverse);
  color: var(--color-inverse);
}
@media (max-width:960px){.sr-wrap {
  grid-template-columns: minmax(0,1fr) minmax(0,2fr);
  gap: 1rem;
}.rounded-circle {
  max-width: 100%;
  justify-self: start;
  grid-column: 2;
}}
@media (max-width:620px){.sticky-pointer{padding-block:.65rem}.sr-wrap{grid-template-columns:1fr;padding:1.2rem;gap:1.2rem}.ring-around{border-top:1px solid var(--color-on-dark-muted);padding:1rem 0 0;border-left:0}.m-x {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: .35rem .8rem;
}.rounded-circle {
  justify-self: stretch;
  grid-column: auto;
}.leading-scroll{font-size:1.25rem}.relative-tight{font-size:1.1rem}}
.absolute-none {
  margin-top: auto;
  font-size: .92rem;
}
.hidden-gray-100{border-top:1px solid var(--color-border)}
.border-24{border-top:1px solid var(--color-border);background:var(--color-layer)}
.gap-gray-900 {
  background: var(--color-inverse);
  color: var(--color-inverse-text);
}
.max-w-col{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:2rem;padding-block:calc(var(--spacing-stack) * .7)}
.min-h-col{height:2rem;width:auto}
.origin-3{display:flex;flex-wrap:wrap;gap:1.25rem;list-style:none;margin:0;padding:0}
.ring-disc{opacity:.85;color:inherit}
.ring-disc:hover {
  text-decoration: underline;
  color: inherit;
  opacity: 1;
}
.gap-gray-900 .ring-disc:hover {
  color: var(--color-primary-inverse);
}
.hidden-3{font-style:normal;display:grid;text-align:right;font-size:.9rem;gap:.25rem}
.truncate-xs {
  text-transform: uppercase;
  opacity: .75;
  font-size: .8rem;
  letter-spacing: .08em;
}
.my-lg{border-top:1px solid rgba(128,128,128,.25)}
.whitespace-secondary{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;padding-block:1rem;font-size:.85rem;opacity:.8}
.truncate{display:flex;flex-wrap:wrap;gap:1rem;list-style:none;margin:0;padding:0}
@media (max-width:720px){.max-w-col{flex-direction:column;align-items:flex-start}.hidden-3{text-align:left}.whitespace-secondary{flex-direction:column}}
.scale-contain {
  position: fixed;
  z-index: 50;
  inset-inline: 1rem;
  bottom: 1rem;
  max-width: 76rem;
  max-height: calc(100vh - 2rem);
  max-height: calc(100dvh - 2rem);
  margin-inline: auto;
  display: grid;
  grid-template-columns: minmax(8rem,.8fr) minmax(0,2fr) minmax(15rem,1.2fr);
  align-items: center;
  gap: 1.4rem;
  overflow: auto;
  overscroll-behavior: contain;
  padding: 1.05rem 1.35rem;
  background: var(--color-background);
  color: var(--color-fg);
  border: 1px solid var(--color-border);
  border-inline-start: 4px solid var(--color-key);
  box-shadow: var(--shadow-sm);
  font-size: .9rem;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.scale-contain[hidden]{display:none}
.justify-max{border-inline-end:1px solid var(--color-border);min-width:0;padding-inline-end:1.2rem}
.ml-square {
  line-height: 1.3;
  font-family: var(--font-display);
  font-weight: var(--font-weight-heading);
  font-size: 1rem;
  margin: 0 0 .35rem;
}
.font-snug{max-width:100%;color:var(--color-key);text-decoration:underline;text-underline-offset:.18em;font-size:.82rem;display:inline-block}
.font-snug:hover{color:var(--color-brand-strong)}
.py {
  margin: 0;
  min-width: 0;
}
.break-3 {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: .6rem;
  min-width: 0;
}
.clearfix-black{min-width:0;min-height:44px;padding:.7rem .75rem;background:var(--color-layer);color:var(--color-fg);border:1px solid var(--color-border);border-radius:var(--radius-btn);font-weight:var(--font-weight-button);font-size:.88rem;line-height:1.3;white-space:normal;overflow-wrap:anywhere;cursor:pointer}
.clearfix-black:hover {
  border-color: var(--color-key);
  background: var(--color-key);
  color: var(--color-primary-fg);
}
.clearfix-black:focus-visible,.font-snug:focus-visible{outline:3px solid var(--color-key);outline-offset:3px}
@media(max-width:900px){.scale-contain {
  grid-template-columns: minmax(0,1fr) minmax(14rem,1fr);
  gap: 1rem;
}.justify-max{grid-column:1/-1;border-inline-end:0;padding-inline-end:0;display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.ml-square{margin:0}}
@media(max-width:560px){.scale-contain {
  inset-inline: .5rem;
  bottom: .5rem;
  grid-template-columns: minmax(0,1fr);
  gap: .55rem;
  padding: .75rem .85rem;
  font-size: .84rem;
  line-height: 1.4;
}.justify-max {
  flex-wrap: wrap;
  gap: .15rem .8rem;
}.ml-square {
  font-size: .92rem;
}.clearfix-black{padding:.5rem .6rem;min-height:40px}}
.block-contain{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:2.5rem;align-items:start}
.translate .block-contain {
  max-width: 48rem;
  grid-template-columns: minmax(0,1fr);
}
.divide-circle {
  min-width: 0;
  overflow-wrap: anywhere;
  margin: 0;
}
.flex-between{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;min-width:0}
.ml-sm {
  gap: .35rem;
  min-width: 0;
  display: grid;
}
.top-2{grid-column:1/-1}
.content-wrap {
  font-weight: 600;
  font-size: .9rem;
}
.relative-gray-500 {
  width: 100%;
  min-width: 0;
  padding: .7rem .9rem;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-sm);
  background: var(--color-background);
}
.relative-gray-500:focus {
  outline: 2px solid var(--color-key);
  outline-offset: 1px;
}
.grid-contain{resize:vertical}
.py-third {
  max-width: 100%;
  overflow-wrap: anywhere;
  justify-self: start;
}
@media (max-width:860px){.block-contain{grid-template-columns:minmax(0,1fr)}}
@media (max-width:480px){
.flex-between {
  grid-template-columns: minmax(0,1fr);
}
}
.object{padding-block:calc(var(--spacing-stack) * .6) calc(var(--spacing-stack) * 1.1)}
.rotate-0 {
  position: relative;
}
.top-min {
  margin: 0;
}
.overflow-10{aspect-ratio:2/1;border-radius:var(--radius-large);width:100%;object-fit:cover}
.w .overflow-10{aspect-ratio:16/9}
.m-6 {
  margin: -6rem 0 0 2.5rem;
  border-radius: var(--radius-large);
  position: relative;
  z-index: 1;
  box-shadow: var(--shadow-strong);
  width: min(100%,32rem);
  padding: 2.25rem;
}
.shrink-gray-500 .m-6 {
  margin-left: auto;
  margin-right: 2.5rem;
}
.inset-wide .m-6{color:var(--color-fg);background:var(--color-background)}
.font-tight .m-6 {
  background: var(--color-key);
  color: var(--color-primary-fg);
}
.font-tight .px-gray-900,.font-tight .row-5 {
  color: var(--color-primary-fg);
}
.space .m-6 {
  color: var(--color-inverse-text);
  background: var(--color-inverse);
}
.space .px-gray-900 {
  color: var(--color-inverse-text);
}
.space .row-5 {
  color: var(--color-primary-inverse);
}
.row-5 {
  text-transform: var(--case-overline);
  color: var(--color-label);
  letter-spacing: var(--tracking-overline);
  font-weight: 700;
  font-size: .8rem;
  display: inline-block;
  margin-bottom: .75rem;
}
.px-gray-900 {
  margin-bottom: .75rem;
  font-size: var(--text-xl);
}
.justify-lg{opacity:.9;margin-bottom:1.5rem}
@media (max-width:760px){
.m-6 {
  margin: -3rem 1rem 0;
  width: auto;
  padding: 1.5rem;
}
.shrink-gray-500 .m-6 {
  margin-right: 1rem;
}
}
.sticky{margin-bottom:2.5rem;max-width:44rem}
.order-5 .sticky{margin-left:auto;text-align:center;margin-right:auto}
.z-xl {
  gap: 2.5rem 3rem;
}
.block-white .top-12 {
  padding-top: 1.25rem;
  border-top: 2px solid var(--color-key);
}
.static-half{font-size:1.15rem;margin-bottom:.6rem}
.fixed-primary{margin:0;line-height:1.7}
.shadow-2xl{overflow-wrap:anywhere}
.space-auto>* {
  min-width: 0;
}
.order-auto {
  max-width: 24ch;
}
.leading-muted{color:var(--color-dim)}
.p-white{max-width:100%;text-align:center;white-space:normal}
.space-auto{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.shrink{display:flex;flex-direction:column;gap:1.5rem}
.translate-3 .rotate{max-width:48ch}
.gap-xl{object-fit:cover;aspect-ratio:5/4;width:100%;border-radius:var(--radius-large)}
.flex-sm{padding-top:.3rem}
.origin-around {
  list-style: none;
  margin: 0 0 2rem;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 2rem 1.5rem;
}
.origin-relaxed{min-width:0;padding-top:1rem;border-top:2px solid var(--color-border)}
.duration-pointer {
  color: var(--color-key);
  margin-bottom: 1rem;
  font-size: .8rem;
  letter-spacing: .12em;
  font-weight: 700;
}
.break-y{font-size:1.1rem}
.leading-muted {
  margin: 0;
  font-size: .95rem;
}
.not-sr-sm {
  border-top: 1px solid var(--color-border);
  font-size: .9rem;
  padding-top: 1.5rem;
  color: var(--color-dim);
}