* { margin:0; padding:0; box-sizing:border-box; }
html {
  font-family: 'Outfit', sans-serif;
  font-weight: 400;
  color: #2D2D2D;
  background: #FCFBF8;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  scroll-behavior: smooth;
  --site--column-count: 12;
  --site--margin: clamp(1rem, 0.428rem + 2.86vw, 3rem);
  --site--width: 90rem;
  --site--gutter: 1.25rem;
  --site--grid-width: min(calc(var(--site--width) - var(--site--margin)*2), calc(100vw - var(--site--margin)*2));
  --column-width: calc((var(--site--grid-width) - var(--site--gutter)*11)/12 + var(--site--gutter));
  --container--full: calc(100vw - var(--site--margin)*2);
  --container--main: calc(var(--column-width)*12 - var(--site--gutter));
  --container--small: calc(var(--column-width)*10 - var(--site--gutter));
  --space--2: clamp(0.35rem,0.344rem + 0.03vw,0.37rem);
  --space--3: clamp(0.49rem,0.47rem + 0.1vw,0.56rem);
  --space--4: clamp(0.69rem,0.65rem + 0.2vw,0.83rem);
  --space--5: clamp(0.96rem,0.882rem + 0.39vw,1.23rem);
  --space--7: clamp(1.88rem,1.634rem + 1.23vw,2.74rem);
  --space--8: clamp(2.64rem,2.228rem + 2.06vw,4.08rem);
  --section-space--small: clamp(3.69rem,3.01rem + 3.4vw,6.07rem);
  --section-space--main: clamp(5.17rem,4.062rem + 5.54vw,9.05rem);
  --section-space--large: clamp(7.23rem,5.444rem + 8.93vw,13.48rem);
  --nav--height: 5rem;
  --clr-bg: #FCFBF8;
  --clr-bg-alt: #F1EDE4;
  --clr-bg-dark: #1B2B17;
  --clr-bg-footer: #243320;
  --clr-brand: #4A7C3F;
  --clr-brand-soft: #E4EFE0;
  --clr-brand-deep: #2F5427;
  --clr-text: #2D2D2D;
  --clr-text-mid: #6B6B6B;
  --clr-accent: #C9993A;
}
body { overflow-x: hidden; }
a { text-decoration:none; color:inherit; }
img { max-width:100%; height:auto; display:block; }
.w-list-unstyled { padding:0; margin:0; list-style:none; }

.u-text-display { font-family:'DM Serif Text',serif; font-size:clamp(2.1rem,1.42rem + 3.4vw,4.48rem); line-height:1.08; letter-spacing:-0.02em; }
.u-text-h2 { font-family:'DM Serif Text',serif; font-size:clamp(1.56rem,1.302rem + 1.29vw,2.46rem); line-height:1.18; }
.u-text-h3 { font-size:clamp(1.16rem,1.106rem + 0.27vw,1.35rem); line-height:1.3; font-weight:600; }
.u-text-h4 { font-size:1rem; line-height:1.4; font-weight:500; }
.u-text-large { font-size:clamp(1.18rem,1.12rem + 0.3vw,1.42rem); line-height:1.52; }
.u-text-medium { font-size:clamp(1.08rem,1.04rem + 0.17vw,1.2rem); line-height:1.56; }
.u-text-small { font-size:0.875rem; line-height:1.5; }
.u-weight-medium { font-weight:500; }
.u-color-medium { color:var(--clr-text-mid); }
.u-color-brand { color:var(--clr-brand); }
.u-text-align-center { text-align:center; }
.u-text-wrap-pretty { text-wrap:pretty; }

.u-mb-xsmall { margin-bottom:var(--space--3); }
.u-mb-small { margin-bottom:var(--space--5); }
.u-mb-medium { margin-bottom:var(--space--7); }
.u-mb-large { margin-bottom:var(--space--8); }
.u-mt-xsmall { margin-top:var(--space--3); }
.u-mt-medium { margin-top:var(--space--7); }
.u-mt-large { margin-top:var(--space--8); }

.u-gap-xxsmall { gap:var(--space--2); }
.u-gap-xsmall { gap:var(--space--3); }
.u-gap-small { gap:var(--space--5); }
.u-gap-medium { gap:var(--space--7); }
.u-gap-large { gap:var(--space--8); }
.u-gap-gutter { gap:var(--site--gutter); }

.u-hflex-left-center { display:flex; align-items:center; }
.u-hflex-left-top { display:flex; align-items:flex-start; }
.u-hflex-center-stretch { display:flex; justify-content:center; align-items:stretch; }
.u-hflex-center-center { display:flex; justify-content:center; align-items:center; }
.u-hflex-between-stretch { display:flex; justify-content:space-between; align-items:stretch; }
.u-hflex-between-top { display:flex; justify-content:space-between; align-items:flex-start; }
.u-vflex-center-top { display:flex; flex-direction:column; align-items:center; }
.u-vflex-center-center { display:flex; flex-direction:column; align-items:center; justify-content:center; }
.u-vflex-left-center { display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.u-vflex-stretch-top { display:flex; flex-direction:column; }
.u-vflex-stretch-bottom { display:flex; flex-direction:column; justify-content:flex-end; }

.u-container { width:100%; max-width:var(--container--main); margin:0 auto; padding:0 var(--site--margin); }
.u-container-full { width:100%; max-width:var(--container--full); margin:0 auto; padding:0 var(--site--margin); }
.u-container-small { width:100%; max-width:var(--container--small); margin:0 auto; padding:0 var(--site--margin); }

.u-grid-tablet { display:grid; grid-template-columns:1fr; gap:var(--site--gutter); }
@media(min-width:60em){ .u-grid-tablet{grid-template-columns:repeat(2,1fr);} }
.u-grid-desktop { display:grid; grid-template-columns:1fr; gap:var(--site--gutter); }
@media(min-width:75em){ .u-grid-desktop{grid-template-columns:repeat(12,1fr);} }
.u-grid-autofit { display:grid; grid-template-columns:1fr; gap:var(--site--gutter); }
@media(min-width:40em){ .u-grid-autofit{grid-template-columns:repeat(2,1fr);} }
@media(min-width:60em){ .u-grid-autofit{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));} }

.u-column-4 { grid-column:span 4; }
.u-column-6 { grid-column:span 6; }
.u-column-7 { grid-column:span 7; }
@media(max-width:74.99em){ .u-column-4,.u-column-6,.u-column-7{grid-column:span 1;} }

.u-radius-main { border-radius:clamp(12px,0.6rem + 0.75vw,20px); }
.u-radius-medium { border-radius:clamp(8px,0.4rem + 0.5vw,14px); }
.u-radius-small { border-radius:6px; }
.u-radius-round { border-radius:50%; }
.u-overflow-hidden { overflow:hidden; }
.u-overflow-clip { overflow:clip; }
.u-cover { width:100%; height:100%; object-fit:cover; }
.u-cover-absolute { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.u-zindex-1 { position:relative; z-index:1; }
.u-zindex-2 { position:relative; z-index:2; }
.u-line-clamp-3 { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.u-bg-light { background:var(--clr-bg-alt); }
.u-bg-medium { background:var(--clr-bg-footer); }
.u-bg-dark { background:var(--clr-bg-dark); }
.u-bg-brand { background:var(--clr-brand); }
.u-bg-brand-light { background:var(--clr-brand-soft); }
.w-inline-block { display:inline-block; }

[data-padding-top="large"] { padding-top:var(--section-space--large); }
[data-padding-top="main"] { padding-top:var(--section-space--main); }
[data-padding-top="small"] { padding-top:var(--section-space--small); }
[data-padding-top="none"] { padding-top:0; }
[data-padding-bottom="large"] { padding-bottom:var(--section-space--large); }
[data-padding-bottom="main"] { padding-bottom:var(--section-space--main); }
[data-padding-bottom="small"] { padding-bottom:var(--section-space--small); }

.w-button { display:inline-block; cursor:pointer; border:none; font-family:inherit; font-size:inherit; text-align:center; }
.u-btn-xs { padding:8px 18px; font-size:14px; }
.u-btn-md { padding:12px 28px; font-size:15px; }
.u-btn-drk { background:var(--clr-bg-dark); color:#fff; border-radius:100px; transition:background .25s,transform .2s; }
.u-btn-drk:hover { background:var(--clr-brand-deep); transform:translateY(-1px); }
.u-btn-outline-drk { background:transparent; color:var(--clr-text); border:1.5px solid var(--clr-text); border-radius:100px; transition:background .25s,color .25s,transform .2s; }
.u-btn-outline-drk:hover { background:var(--clr-text); color:#fff; transform:translateY(-1px); }
.u-btn-icon { display:inline-flex; align-items:center; gap:var(--space--3); }

.btn_learn-more { display:inline-flex; align-items:center; gap:8px; padding:10px 22px; border:1.5px solid var(--clr-text); border-radius:100px; font-size:15px; font-weight:500; transition:background .25s,color .25s; overflow:hidden; }
.btn_learn-more:hover { background:var(--clr-text); color:#fff; }
.btn_learn_more_text { white-space:nowrap; }
.btn-flip-track { display:flex; flex-direction:column; height:16px; overflow:hidden; transition:transform .3s; }
.btn_learn-more:hover .btn-flip-track { transform:translateY(-16px); }
.btn-flip-icon { height:16px; display:flex; align-items:center; flex-shrink:0; font-size:14px; }

.cookie_banner_wrap { position:fixed; bottom:0; left:0; right:0; z-index:9990; padding:var(--site--margin); }
.cookie_bannner { display:none; max-width:460px; background:#fff; border:1px solid #e2e0db; border-radius:10px; padding:22px 26px; box-shadow:0 8px 30px rgba(0,0,0,.1); position:relative; }
.cookie_banner_close { position:absolute; top:14px; right:16px; cursor:pointer; opacity:.45; transition:opacity .2s; font-size:14px; }
.cookie_banner_close:hover { opacity:1; }
.cookie_banner_text { font-size:14px; color:var(--clr-text-mid); line-height:1.5; }
.cookie_btn_row { flex-wrap:wrap; }

.nav_component { position:sticky; top:0; z-index:1000; background:rgba(252,251,248,.92); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); border-bottom:1px solid rgba(0,0,0,.05); }
.nav_contain { display:flex; align-items:center; justify-content:space-between; height:var(--nav--height); }
.nav_logo_wrap { display:inline-flex; align-items:center; }
.nav_logo_text { font-family:'DM Serif Text',serif; font-size:1.5rem; color:var(--clr-brand-deep); }
.nav_logo_text em { font-style:italic; color:var(--clr-brand); }
.nav_logo { height:2.4rem; width:auto; }
.nav_desktop_layout { display:flex; align-items:center; gap:clamp(1.2rem,1rem + 1vw,2.4rem); }
.nav_links_component { display:flex; align-items:center; }
.nav_links_wrap { display:flex; align-items:center; gap:2px; }
.nav_links_item { position:relative; }
.nav_links_link { display:flex; align-items:center; gap:5px; padding:8px 13px; font-size:15px; color:var(--clr-text); transition:color .2s; cursor:pointer; }
.nav_links_link:hover { color:var(--clr-brand); }
.nav_links_chevron { font-size:11px; transition:transform .3s; }
.nav_dropdown_component.is-open .nav_links_chevron { transform:rotate(-180deg); }
.nav_dropdown_main_wrap { position:absolute; top:100%; left:0; min-width:210px; background:#fff; border:1px solid rgba(0,0,0,.07); border-radius:10px; box-shadow:0 10px 28px rgba(0,0,0,.09); padding:6px 0; opacity:0; visibility:hidden; transform:translateY(8px); transition:opacity .3s,visibility .3s,transform .3s; }
.nav_dropdown_component.is-open .nav_dropdown_main_wrap { opacity:1; visibility:visible; transform:translateY(0); }
.nav_dropdown_list { padding:0; }
.nav_dropdown_link { display:block; padding:9px 20px; font-size:15px; transition:background .15s; }
.nav_dropdown_link:hover { background:var(--clr-bg-alt); }
.nav_dropdown_backdrop { display:none; }
.nav_actions_component { display:flex; align-items:center; }
.nav_actions_wrap { display:flex; align-items:center; gap:12px; }
.nav_btn_phone { display:flex; flex-direction:column; padding:5px 12px; border-radius:8px; transition:background .2s; }
.nav_btn_phone:hover { background:var(--clr-bg-alt); }
.nav_btn_phone_top { display:flex; align-items:center; gap:5px; }
.nav_btn_phone_icon { color:var(--clr-brand); font-size:14px; }
.nav1_btn_phone_title { color:var(--clr-text); }
.nav_btn_phone_nmbr { color:var(--clr-text-mid); }

.nav_wrap.is-desktop { display:none; }
.nav_wrap.is-mobile { display:flex; }
.nav_wrap.is-mobile .nav_contain { display:flex; align-items:center; justify-content:space-between; height:var(--nav--height); }
@media(min-width:75em){ .nav_wrap.is-desktop{display:flex;} .nav_wrap.is-mobile{display:none;} }

.nav_btn_wrap { display:flex; align-items:center; justify-content:center; width:44px; height:44px; cursor:pointer; }
.nav_btn_layout { display:flex; flex-direction:column; gap:6px; width:22px; }
.nav_btn_line { width:100%; height:2px; background:var(--clr-text); transition:transform .3s; transform-origin:center; }
.nav_btn_wrap.w--open .nav_btn_line:first-child { transform:translateY(4px) rotate(-45deg); }
.nav_btn_wrap.w--open .nav_btn_line:last-child { transform:translateY(-4px) rotate(45deg); }

.nav_menu_wrap { position:fixed; top:var(--nav--height); left:0; right:0; bottom:0; background:#fff; z-index:999; clip-path:polygon(0 0,100% 0,100% 0,0 0); transition:clip-path .4s ease-in-out; overflow-y:auto; }
.nav_menu_wrap.is-open { clip-path:polygon(0 0,100% 0,100% 100%,0 100%); }
.nav_menu_scroll { padding:28px 0; }
.nav_menu_wrap .nav_links_wrap { flex-direction:column; align-items:stretch; gap:0; }
.nav_menu_wrap .nav_links_link { padding:14px 0; font-size:1.1em; border-bottom:1px solid rgba(0,0,0,.06); }
.nav_mobile_btn_wrap { margin-top:28px; }

.hero_wrap { background:var(--clr-bg); position:relative; }
.hero_content_wrap { max-width:780px; margin:0 auto; }
.hero_subtext { max-width:580px; margin:0 auto; }
.hero_btn_wrap { flex-wrap:wrap; }
.hero_info_wrap { flex-wrap:wrap; }
.info_item { text-align:center; min-width:130px; }
.info_icon { color:var(--clr-brand); font-size:17px; display:flex; }
.info_title { font-size:15px; }
.info_text { color:var(--clr-text-mid); }

.hero_img_wrap { position:relative; width:100%; aspect-ratio:16/7; overflow:clip; }
@media(max-width:60em){ .hero_img_wrap{aspect-ratio:16/9;} }
.g_visual_background { background:rgba(0,0,0,.06); }

.blurr_frame { position:relative; }
.blurr_placer_top_center { position:absolute; top:-40%; left:50%; transform:translateX(-50%); pointer-events:none; z-index:0; }
.blurr_placer_btm_center { position:absolute; bottom:-40%; left:50%; transform:translateX(-50%); pointer-events:none; z-index:0; }
.blurr_placer_center { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); pointer-events:none; z-index:0; }
.blurr-lg { width:clamp(280px,38vw,560px); height:clamp(280px,38vw,560px); background:radial-gradient(circle,rgba(74,124,63,.11) 0%,transparent 70%); border-radius:50%; filter:blur(55px); }
.blurr-md { width:clamp(180px,28vw,380px); height:clamp(180px,28vw,380px); background:radial-gradient(circle,rgba(74,124,63,.09) 0%,transparent 70%); border-radius:50%; filter:blur(40px); }

.g_section_title_max-width { max-width:700px; margin:0 auto; }
.subline_mobile { display:none; }
@media(max-width:60em){ .subline_desktop{display:none;} .subline_mobile{display:block;} }
.abt-hbot_item { padding:clamp(1.4rem,1.2rem + 1vw,2.4rem); }
.nmbr_bg { display:flex; align-items:center; justify-content:center; width:28px; height:28px; flex-shrink:0; }
.nmbr_nmbr { color:#fff; }
.benefit_text { line-height:1.62; }
.abt-hbot_text_mobile { display:none; }
@media(max-width:60em){ .abt-hbot_text_desktop{display:none;} .abt-hbot_text_mobile{display:block;} }
.btn_wrap_centered { flex-wrap:wrap; }

.srv_crd { position:relative; display:flex; align-items:flex-end; min-height:310px; border-radius:clamp(12px,.6rem + .75vw,20px); overflow:hidden; color:#fff; transition:transform .35s; }
.srv_crd:hover { transform:scale(1.02); }
.srv_bg_wrap { position:absolute; inset:0; }
.srv_bg_img { width:100%; height:100%; object-fit:cover; transition:transform .55s; }
.srv_crd:hover .srv_bg_img { transform:scale(1.07); }
.srv_overlay { position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.62) 0%,rgba(0,0,0,.08) 55%,transparent 100%); }
.srv_front_wrap { position:relative; z-index:2; padding:clamp(1.2rem,1rem + .8vw,2rem); width:100%; }
.srv_title { color:#fff; }
.a-hover-scale { transition:transform .35s; }

.s-other-therapies { background:var(--clr-bg-alt); }
.therapy_crd { background:var(--clr-bg); overflow:hidden; gap:0; }
@media(max-width:60em){ .therapy_crd{flex-direction:column !important;} }
.therapy_col_img { flex:0 0 45%; min-height:290px; position:relative; }
@media(max-width:60em){ .therapy_col_img{flex:none;min-height:210px;} }
.therapy_img_wrap { display:block; height:100%; }
.therapy_img_wrap .u-cover { transition:transform .5s; }
.therapy_img_wrap:hover .u-cover { transform:scale(1.04); }
.therapy_col_content { flex:1; display:flex; }
.therapy_content_wrap { padding:clamp(1.6rem,1.3rem + 1.5vw,3.2rem); }
.therapy_text { line-height:1.62; }
.therapy_text_mobile { display:none; }
@media(max-width:60em){ .therapy_text_desktop{display:none;} .therapy_text_mobile{display:block;} .therapy_content_wrap{padding:24px;} }
.therapy_crd--flipped { flex-direction:row-reverse; }
@media(max-width:60em){ .therapy_crd--flipped{flex-direction:column !important;} }

.abt_layout { align-items:center; }
@media(min-width:75em){ .abt_layout{gap:var(--space--8);} }
.abt_img_wrap { aspect-ratio:4/3; }
.abt_text { line-height:1.68; }
@media(max-width:74.99em){ .abt_col_img{margin-bottom:var(--space--7);} }

.tstm_wrap { overflow:hidden; }
.tstm_item { height:auto; }
.tstm_crd { padding:clamp(1.3rem,1.1rem + .9vw,2.2rem); height:100%; display:flex; flex-direction:column; justify-content:space-between; }
.tstm_tstm p { line-height:1.64; color:var(--clr-text); font-size:clamp(.93rem,.91rem + .1vw,1.03rem); }
.tstm_img { width:42px; height:42px; object-fit:cover; flex-shrink:0; }
.tstm_nav_btn { width:42px; height:42px; display:flex; align-items:center; justify-content:center; border:1.5px solid var(--clr-text); border-radius:50%; cursor:pointer; transition:background .2s,color .2s; color:var(--clr-text); font-size:16px; }
.tstm_nav_btn:hover { background:var(--clr-text); color:#fff; }

.s-blog-preview { background:var(--clr-bg-alt); }
.post_crd { display:flex; flex-direction:column; background:var(--clr-bg); border-radius:clamp(12px,.6rem + .75vw,20px); overflow:hidden; color:inherit; transition:transform .3s,box-shadow .3s; }
.post_crd:hover { transform:translateY(-3px); box-shadow:0 10px 28px rgba(0,0,0,.07); }
.post_img_wrap { position:relative; aspect-ratio:16/10; overflow:hidden; }
.pos_img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.post_crd:hover .pos_img { transform:scale(1.04); }
.post_content_wrap { padding:0 20px 20px; }
.post_crd_category { font-size:13px; margin-top:4px; }
.post_summary { margin-top:6px; font-size:15px; line-height:1.55; }

.cta_crd { position:relative; padding:var(--section-space--main) var(--site--margin); }
.cta_info_wrap { flex-wrap:wrap; gap:var(--space--7); }
@media(max-width:60em){ .cta_info_wrap{flex-direction:column;align-items:center;} }

.footer { padding-top:var(--section-space--main); color:#c8cec6; }
.footer_logo_text { font-family:'DM Serif Text',serif; font-size:1.7rem; font-weight:400; color:#fff; }
.footer_logo_text em { font-style:italic; color:var(--clr-brand); }
.footer_logo { height:2.4rem; width:auto;}
.footer_signup_crd { padding:clamp(1.4rem,1.1rem + 1.2vw,2.4rem); }
.footer_signup_title { color:#fff; }
.form_main_field_input { flex:1; padding:10px 16px; border:1px solid rgba(255,255,255,.18); border-radius:100px; background:rgba(255,255,255,.07); color:#fff; font-family:inherit; font-size:15px; outline:none; transition:border-color .2s; }
.form_main_field_input::placeholder { color:rgba(0,0,0,0.5); }
.form_main_field_input:focus { border-color:var(--clr-brand); }
.footer_signup_btn { flex-shrink:0; background:var(--clr-brand) !important; color:#fff; }
.footer_signup_btn:hover { background:var(--clr-brand-deep) !important; }
.w-form-done { display:none; padding:var(--space--5); background:rgba(74,124,63,.13); border-radius:8px; color:var(--clr-brand); text-align:center; margin-top:10px; }
.w-form-fail { display:none; padding:var(--space--5); background:rgba(200,50,50,.13); border-radius:8px; color:#c83232; text-align:center; margin-top:10px; }
.footer_links_row { flex-wrap:wrap; }
.footer_block { min-width:152px; flex:1; }
.footer_block_title { color:#fff; margin-bottom:12px; }
.footer_link_list { display:flex; flex-direction:column; gap:9px; }
.footer_text_link { color:#97a294; font-size:15px; transition:color .2s; display:block; }
.footer_text_link:hover { color:#fff; }
.footer_text_legal { border-top:1px solid rgba(255,255,255,.09); padding-top:var(--space--7); color:#6e7c6a; line-height:1.6; }

@media(max-width:60em){
  .hero_info_wrap{flex-direction:column;gap:var(--space--5);}
  .footer_links_row{flex-direction:column;gap:28px;}
  .footer_top_layout{gap:28px;}
}
@media(max-width:40em){
  .hero_btn_wrap{flex-direction:column;align-items:center;}
  .hero_btn_wrap .w-button{width:100%;}
  .btn_wrap_centered{flex-direction:column;align-items:center;}
  .btn_wrap_centered .w-button{width:100%;}
  .srv_crd{min-height:230px;}
}

.faq_chev--open{transform:rotate(-180deg);}
#cartPopup{display:none;flex-direction:column;}
@media(max-width:600px){#cartPopup{width:96vw;max-height:90vh;}}
