/* White canvas, clear green accents. October 2026 client direction. */
html[data-theme=light]{--white:#fff;--warm-white:#fff;--mint:#f4faf6;--sage:#e4f3e9;--leaf:#35a565;--primary:#087b43;--deep:#145936;--forest:#163f2d;--text:#183e2c;--muted:#52665a;--border:#dce9e1}
[data-theme=light] body,[data-theme=light] main{background:#fff;color:var(--text)}
body{--header-height:104px}
html{scroll-padding-top:125px}
.site-header{height:104px;padding-inline:4%;gap:22px}
.site-header .brand{width:180px;flex:0 0 180px;background:none;border:0;padding:0;box-shadow:none}
.site-header .brand img,.footer-logo img{padding:0;background:transparent!important;border-radius:0;object-fit:contain;mix-blend-mode:normal!important}
[data-theme=light] body .site-header,[data-theme=light] body .site-header.transparent:not(.scrolled),[data-theme=light] body .site-header.scrolled{background:#fff!important;color:#183e2c;border-bottom:1px solid var(--border);box-shadow:0 4px 24px #183e2c05;backdrop-filter:none}
[data-theme=light] body .site-header :is(.nav-parent>a,.dropdown-toggle,.menu-trigger,.theme-toggle){color:#183e2c!important}
[data-theme=light] body .site-header .nav-parent>a:after{background:#087b43!important}
.desktop-navigation{gap:clamp(9px,.8vw,18px);margin-left:auto}
.desktop-navigation .nav-parent>a{font-size:15px;letter-spacing:0;text-transform:none;font-weight:600;white-space:nowrap}
.desktop-navigation .nav-group.nav-mega{position:static}
.desktop-navigation .nav-group.nav-mega .nav-dropdown{left:50%;right:auto;top:calc(100% - 1px);transform:translateX(-50%);width:min(850px,90vw);max-height:calc(100dvh - 130px);overflow-y:auto;padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:6px 28px;border-radius:0 0 18px 18px;box-shadow:0 20px 40px #123e2517}
.desktop-navigation .nav-mega .nav-dropdown>p{grid-column:1/-1;font-size:.65rem;color:#087b43;border-bottom:1px solid var(--border);padding:0 0 16px;margin:0 0 8px}
.desktop-navigation .nav-mega .nav-dropdown>.category-tree{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px 28px}
.desktop-navigation .nav-mega .category-tree .category-tree{display:block}
.desktop-navigation .nav-group.nav-mega.dropdown-open:before{left:0;top:calc(100% - 2px);width:100%;height:12px}
[data-theme=light] .nav-dropdown{background:#fff;border-color:var(--border)}
[data-theme=light] .nav-dropdown :is(a,summary):is(:hover,:focus-visible){background:#edf8f1!important;color:#086d3c!important}
.reading-progress{display:none}
.solid-header{padding-top:104px}
html[data-theme] body :is(.hero,.hero.inner-hero,.home-hero){background:var(--warm-white);color:var(--text);min-height:780px;isolation:isolate}
html[data-theme] body .hero>picture,html[data-theme] body .hero>.background-video{position:absolute;inset:170px 4% 40px 52%;width:44%;height:calc(100% - 210px);border-radius:100px 12px 100px 12px;overflow:hidden;z-index:-2;object-fit:cover}
html[data-theme] body .hero>picture img{width:100%;height:100%;inset:0;object-fit:cover;transform:none!important;filter:none}
html[data-theme] body .hero-overlay,html[data-theme] body .hero-scene{display:none}
html[data-theme] body .hero-content{padding-block:210px 140px}
html[data-theme] body .hero-content>:not(.hero-index){max-width:47%}
html[data-theme] body .hero-content :is(h1,h2){font-size:clamp(3.2rem,4.8vw,5.9rem);line-height:1.04;color:var(--text);letter-spacing:-.045em;text-shadow:none}
html[data-theme] body .hero-content :is(.copy,.eyebrow){color:var(--muted)}
html[data-theme] body .hero-content .copy{max-width:43%;font-size:1rem}
html[data-theme] body .hero-bottom{color:var(--muted);border-color:#dce9e1;font-size:.59rem;bottom:22px}
html[data-theme] body .hero-content .button-white{background:#087b43;color:#fff;border-color:var(--primary)}
html[data-theme] body .hero-content .button-white:hover{background:#096536;color:#fff}
html[data-theme] body .hero .text-link.light{color:var(--primary)}
[data-theme=light] body :is(.section.mint,.therapy-section,.science-story,.feature-band,.newsletter-section,.listing-intro,.contact-intro){background:#fff;color:#183e2c}
[data-theme=light] .science-story{border-block:1px solid #e4eee7}
[data-theme=light] body :is(.forest,.feature-band) :is(h2,h3,p,.copy,.eyebrow){color:#183e2c}
[data-theme=light] body .forest{background:#f4faf6;color:#183e2c}
html[data-theme] body .video-feature,html[data-theme] body .video-feature+.video-feature{background:var(--warm-white);color:var(--text);border:1px solid #dce9e1;min-height:550px;margin:70px auto;border-radius:22px;overflow:hidden}
html[data-theme] body .video-feature .video-feature-media,html[data-theme] body .video-feature>.background-video{left:52%;width:48%;height:100%;border-radius:0;object-fit:cover}
html[data-theme] body .video-feature .video-feature-overlay{display:none}
html[data-theme] body .video-feature .video-feature-content{width:100%;padding:65px 55% 65px 5%}
html[data-theme] body .video-feature :is(h2,.copy,.eyebrow,.stock-caption){color:var(--text)}
html[data-theme] body .video-feature h2{font-size:clamp(2.5rem,3.4vw,4rem)}
[data-theme=light] .video-feature .button-white{color:#fff;background:#087b43;border-color:#087b43}
.therapy-grid{display:block}
.therapy-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:42px}
.therapy-feature{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:var(--warm-white);transition:box-shadow .3s,translate .3s}
.therapy-feature:hover{translate:0 -5px;box-shadow:0 20px 40px #174f2c0e}
.therapy-feature-image{display:block;position:relative;height:260px;overflow:hidden;background:var(--mint)}
.therapy-feature-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.therapy-feature:hover img{transform:scale(1.04)}
.therapy-badge{position:absolute;left:20px;bottom:20px;background:#fff;color:#087b43;border-radius:50%;width:42px;height:42px;display:grid;place-items:center;font-size:.8rem}
.therapy-feature-copy{padding:30px}.therapy-feature-copy h3{font-size:1.7rem;margin-bottom:16px}.therapy-feature-copy p:not(.eyebrow){font-size:.92rem;color:var(--muted)}
.therapy-feature-copy .eyebrow{font-size:.6rem;margin-bottom:12px}.therapy-feature-copy small{display:block;margin-top:18px;color:var(--muted)}
.therapy-intro-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.therapy-intro h1{font-size:clamp(3rem,5vw,5.5rem)}.therapy-intro .lead{margin:26px 0}.therapy-intro-image{height:430px;overflow:hidden;border-radius:70px 12px 70px 12px}.therapy-intro-image img{width:100%;height:100%;object-fit:cover}
.portfolio-help{border:1px solid var(--border);padding:35px;border-radius:16px;display:flex;align-items:center;gap:30px;flex-wrap:wrap}.portfolio-help>div{flex:1 1 450px}.portfolio-help p{margin-top:14px;max-width:650px}
.catalogue-topics{padding-block:25px 60px}.topic-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.topic-heading h2{font-size:clamp(2.3rem,4vw,3.7rem)}
.topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.topic-card{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:var(--warm-white);transition:box-shadow .3s,translate .3s}.topic-card:hover{translate:0 -4px;box-shadow:0 16px 40px #174f2c0e}.topic-image{height:210px;background:#f6faf7;padding:28px}.topic-image img{width:100%;height:100%;object-fit:contain}.topic-card>div:last-child{padding:24px}.topic-card small{color:var(--primary);font-size:.65rem;letter-spacing:.1em}.topic-card h3{margin-block:10px 18px}.topic-card span{display:flex;justify-content:space-between;color:var(--primary);font-size:.85rem}
[data-theme=light] body .site-footer.signature-footer{background:#fff;color:#183e2c;border-top:1px solid #dce9e1}
[data-theme=light] .signature-footer .footer-invitation{background:#fff}
[data-theme=light] .signature-footer :is(.footer-main a,.footer-office address,.footer-brand p,.footer-note,.footer-bottom,.footer-invitation>p){color:#47604e}
[data-theme=light] .signature-footer .footer-conversation{color:#164b30}
.footer-orbits{opacity:.17}
.contact-phones{display:flex;gap:10px 22px;flex-wrap:wrap}.contact-phones a{white-space:nowrap}
.header-contact{position:fixed;z-index:110;top:0;left:0;width:100%;height:36px;background:#087b43;color:#fff;padding:0 4%;font-size:13px;border:0;display:flex;align-items:center;justify-content:space-between;gap:20px}
.header-contact a:hover{text-decoration:underline;text-underline-offset:3px}.header-contact+.site-header{top:36px}
body:has(.header-contact){--header-height:140px}.header-contact~.reading-progress{top:133px}body:has(.header-contact) .reading-progress{top:133px}.solid-header:has(.header-contact){padding-top:140px}
.facility-contact{border-top:1px solid var(--border);padding-top:24px;margin-top:30px}
[data-theme=light] .navigation{background:#fff;color:#183e2c}
[data-theme=light] .navigation :is(.nav-parent>a,.dropdown-toggle,.drawer-email,.menu-close,.eyebrow,.drawer-appearance){color:#183e2c}
[data-theme=light] .navigation .nav-dropdown{background:#f4faf6}
[data-theme=light] .navigation .nav-dropdown :is(a,summary){color:#185435!important}
[data-theme=light] .signature-footer :is(a,button):hover{color:#087b43}
[data-theme=dark] .therapy-feature,[data-theme=dark] .topic-card{background:#1b352a}
[data-theme=dark] .site-header{background:#17352a!important;color:#e6f5eb}
[data-theme=dark] .site-header .brand{background:transparent;border-radius:0;padding:0}
[data-theme=dark] :is(.site-header .brand,.footer-logo) img{filter:brightness(0) invert(1)}
@media(max-width:1349px){.desktop-navigation{display:none}.site-header .menu-trigger{display:flex}.site-header .header-theme{display:none!important}.site-header .brand{margin-right:auto}.header-contact{font-size:13px}}
@media(min-width:1350px){.site-header .menu-trigger{display:none}}
@media(max-width:900px){.therapy-directory,.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.therapy-intro-grid{gap:30px}.therapy-intro-image{height:350px}.header-contact>span:first-child{display:none}.header-contact{justify-content:space-between}.site-header{padding-inline:5%}}
@media(max-width:760px){
 .header-contact{display:none}.header-contact+.site-header{top:0}.site-header{height:86px}.site-header .brand{width:155px;flex-basis:155px}.solid-header:has(.header-contact){padding-top:86px}body:has(.header-contact) .reading-progress{top:84px}
 html[data-theme] body :is(.hero,.hero.inner-hero,.home-hero){min-height:0;padding-top:86px;display:flex;flex-direction:column}
 html[data-theme] body .hero-content{padding:48px 0 35px;order:0}
 html[data-theme] body .hero-content>:not(.hero-index),html[data-theme] body .hero-content .copy{max-width:100%}
 html[data-theme] body .hero-content :is(h1,h2){font-size:clamp(2.8rem,10.5vw,4.5rem)}
 html[data-theme] body .hero>picture{position:relative;inset:auto;width:90%;height:330px;margin:0 auto 24px;border-radius:50px 8px 50px 8px;order:1;z-index:0}
 html[data-theme] body .hero>.background-video{display:none}
 html[data-theme] body .hero-bottom{position:relative;inset:auto;order:2;padding-block:15px;margin-bottom:20px;width:90%}.hero-index{margin-bottom:18px}
 .therapy-directory,.topic-grid{grid-template-columns:1fr}.therapy-feature-image{height:240px}.therapy-intro-grid{grid-template-columns:1fr}.therapy-intro-image{height:300px}.therapy-intro h1{font-size:3.2rem}.topic-heading{display:block}.topic-heading>a{display:inline-block;margin-top:20px}
 html[data-theme] body .video-feature,html[data-theme] body .video-feature+.video-feature{width:90%;min-height:0;display:flex;flex-direction:column;margin:35px auto}
 html[data-theme] body .video-feature .video-feature-media{position:relative;inset:auto;width:100%;height:280px;order:0}
 html[data-theme] body .video-feature .video-feature-content{padding:30px;width:100%;order:1}
 html[data-theme] body .video-feature>.background-video{display:none}.video-feature h2{font-size:2.5rem!important}
 .portfolio-help{padding:24px}.topic-image{height:220px}.contact-phones{flex-direction:column;gap:10px}.header-contact .contact-phones{flex-direction:row}
}
@media(prefers-reduced-motion:reduce){.therapy-feature,.therapy-feature img,.topic-card{transition:none;transform:none!important;translate:none!important}}
body[data-motion=reduced] :is(.therapy-feature,.therapy-feature img,.topic-card){transition:none;transform:none!important;translate:none!important}

.catalogue-range{padding-block:35px 55px;border-top:1px solid var(--border)}
[data-theme=light] .feature-band .text-link.light{color:#087b43}
[data-theme=light] .signature-footer .social-link{background:#fff!important}
[data-theme=light] .newsletter-section{border-block:1px solid var(--border)}
[data-theme=light] .office-card{background:#fff;border:1px solid var(--border);border-radius:14px}

/* One coherent masthead and media composition in light and dark mode. */
.header-contact>span,.header-contact a{font:500 13px/1.4 var(--sans);letter-spacing:.01em}
.header-contact>span{font-weight:600}
.header-contact .contact-phones{gap:24px}
.site-header.scrolled{height:104px}
.site-header.scrolled .brand{width:180px;padding:0}
.desktop-navigation .nav-parent{gap:4px;align-items:center}
.desktop-navigation .dropdown-toggle{width:25px;min-width:25px;height:44px;font-size:14px;padding:0}
.desktop-navigation .nav-dropdown :is(a,summary){font-size:15px;line-height:1.5}
html[data-theme] body .hero{height:auto;max-height:none;padding-bottom:0}
html[data-theme] body .hero-bottom{display:none}
html[data-theme] body .hero-content .text-link{color:var(--primary);background:none;border:0;text-decoration:none;padding:10px 0;line-height:1.5;opacity:1}
html[data-theme] body .hero-content .text-link:after{content:'↗';position:static;display:inline-block;background:none;width:auto;height:auto;margin-left:12px;transform:none;transition:translate .25s}
html[data-theme] body .hero-content .text-link:hover:after{translate:3px -3px}
html[data-theme] body .hero-content .text-link:before{display:none}
html[data-theme] body .hero-content .text-link:focus-visible{outline:2px solid var(--primary);outline-offset:5px}
html[data-theme] body .hero>.background-video{filter:none;opacity:1}
html[data-theme=dark] body .hero-content .button-white,html[data-theme=dark] body .video-feature .button-white{background:#9bdab0;color:#123522;border-color:#9bdab0}
html[data-theme=dark] body .hero-content .button-white:hover,html[data-theme=dark] body .video-feature .button-white:hover{background:#c2ebcf;color:#123522}
[data-theme=dark] body .video-feature{border-color:var(--border)}
[data-theme=dark] .header-contact{background:#087b43}
[data-theme=light] .signature-footer .social-link:is(:hover,:focus-visible){background:#e5f4eb!important;color:#086d3c!important;border-color:#087b43}
@media(max-width:760px){
 body:has(.header-contact){--header-height:86px}
 .site-header.scrolled{height:86px}.site-header.scrolled .brand{width:155px}
 html[data-theme] body .hero{min-height:0;height:auto;max-height:none}
}
@media(prefers-reduced-motion:reduce){html[data-theme] body .hero-content .text-link:after{transition:none;translate:none}}
body[data-motion=reduced] .hero-content .text-link:after{transition:none;translate:none!important}

/* Balanced navigation, inset cards and compact product photography. */
.site-header{gap:24px;padding-inline:clamp(24px,3vw,64px)}
.site-header .brand,.site-header.scrolled .brand{flex:0 0 220px;width:220px;max-width:100%;height:96px;display:flex;align-items:center;justify-content:center}
.site-header .brand .logo,.site-header.scrolled .brand .logo{width:100%;height:92px;max-height:none;filter:none!important;mix-blend-mode:normal!important}
.footer-logo{width:250px!important;height:auto;padding:0!important;background:none!important}
.footer-logo .logo{width:100%;height:auto;filter:none!important;mix-blend-mode:normal!important}
.desktop-navigation{gap:clamp(20px,1.55vw,32px);min-width:0}
.desktop-navigation .nav-parent{gap:3px}
.desktop-navigation .nav-parent>a{font-size:15px;line-height:1.5;padding-block:15px}
.desktop-navigation .dropdown-toggle{width:19px;min-width:19px}
.desktop-navigation .nav-group{flex-shrink:0}
.site-header .header-theme{margin-left:8px}
.article-grid{gap:28px;align-items:stretch}
.article-grid>article{min-width:0;padding:24px!important;background:var(--surface);border:1px solid var(--border);border-radius:18px;overflow:hidden;transition:background .25s,border-color .25s,box-shadow .25s}
.article-grid>article:hover{background:var(--surface-hover);border-color:var(--primary);box-shadow:0 12px 28px #123a2510}
.article-grid>article>a{display:block}
.article-grid img{height:185px;aspect-ratio:auto;border-radius:10px;object-fit:cover;background:var(--mint);margin-bottom:24px}
.article-grid h3{font-size:1.35rem;line-height:1.35;color:var(--text)}
.article-grid p:not(.eyebrow){line-height:1.8;margin-top:18px}
.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start}
.product-card{min-width:0;border:1px solid var(--border);border-radius:16px;overflow:hidden;background:var(--surface)}
.product-card .product-image{height:205px;aspect-ratio:auto;padding:25px;background:#f7faf8;border:0;display:grid;place-items:center}
.product-card .product-image img{max-height:155px;width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.product-card .product-info{padding:22px;gap:12px;align-items:center}
.product-card .product-info h3{font-size:1.65rem;line-height:1.15;margin-top:8px}
.product-card .product-info .eyebrow{font-size:.58rem;letter-spacing:.09em;margin-bottom:8px}
.product-card .product-info p:not(.eyebrow){font-size:.8rem;margin-top:8px}
.product-card .circle-link{width:36px;height:36px;flex:0 0 36px}
.product-detail-grid{grid-template-columns:minmax(260px,.8fr) 1.2fr;gap:7%;align-items:start}
.product-detail .product-display{width:100%;max-width:470px;aspect-ratio:1.2;max-height:400px;padding:38px;background:#f7faf8;box-shadow:none}
.product-display img{width:100%;height:100%;max-height:300px;object-fit:contain;mix-blend-mode:normal}
.product-copy h1{font-size:clamp(2.6rem,4vw,4.5rem)}
.related-description{color:var(--muted);margin-top:18px;font-size:.95rem}
.showcase-slide{min-height:340px;grid-template-columns:1fr 1.2fr;border:1px solid var(--border);border-radius:20px;overflow:hidden}
.showcase-image{padding:40px;min-height:320px;background:#f7faf8}
.showcase-image img{max-height:240px;width:100%;object-fit:contain;mix-blend-mode:normal}
.showcase-copy{padding:40px}
.showcase-copy h3{font-size:clamp(2.4rem,3.5vw,3.8rem)}
.showcase-copy .button{margin-top:24px}
html[data-theme=dark]{--warm-white:#14251f;--white:#1c3229;--surface:#20392f;--surface-hover:#29473a;--mint:#1a3027;--sage:#2a4738;--text:#f1f7f3;--muted:#c0d3c7;--border:#3d5c4c;--primary:#a4dfb7;--deep:#c1ebce;--forest:#172e24}
[data-theme=dark] body .site-header,[data-theme=dark] body .site-header.scrolled{background:#1a3027!important;border-color:#3d5c4c}
[data-theme=dark] .site-header .brand,[data-theme=dark] .footer-logo{background:#e6f2e8!important;border-radius:14px;padding:5px 9px!important}
[data-theme=dark] .site-header .nav-parent>a,[data-theme=dark] .site-header .dropdown-toggle{color:var(--text)!important}
[data-theme=dark] .nav-dropdown{background:#20392f!important;border-color:var(--border)}
[data-theme=dark] .nav-dropdown :is(a,summary):hover{background:#304f3f!important;color:#fff!important}
[data-theme=dark] .article-grid>article :is(h3,a){color:var(--text)}
[data-theme=dark] .product-card .product-info{background:var(--surface)}
[data-theme=dark] .site-footer.signature-footer{background:#1a3027;color:var(--text)}
[data-theme=dark] .signature-footer :is(.footer-main a,.footer-brand p,.footer-office address,.footer-bottom,.footer-note){color:var(--muted)}
[data-theme=dark] .showcase-copy{background:var(--surface);color:var(--text)}
@media(min-width:1350px) and (max-width:1499px){.desktop-navigation{display:none}.site-header .menu-trigger{display:flex}.site-header .header-theme{display:none!important}.site-header .brand{margin-right:auto}}
@media(min-width:1500px){.site-header .menu-trigger{display:none}}
@media(max-width:1100px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.article-grid{gap:18px}.article-grid>article{padding:20px!important}}
@media(max-width:760px){
 .site-header .brand,.site-header.scrolled .brand{width:158px;flex-basis:158px;height:68px}
 .site-header .brand .logo,.site-header.scrolled .brand .logo{height:70px;width:100%}
 .site-header{gap:16px;padding-inline:20px}
 .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
 .product-card .product-image{height:155px;padding:16px}.product-card .product-image img{max-height:125px}
 .product-card .product-info{padding:16px;align-items:start}.product-card .product-info h3{font-size:1.35rem;overflow-wrap:anywhere}
 .product-card .circle-link{display:none}.product-card .product-info .eyebrow{font-size:.5rem}
 .product-detail-grid{grid-template-columns:1fr;gap:30px}.product-detail .product-display{max-width:420px;margin-inline:auto;max-height:300px}
 .product-display img{max-height:225px}.article-grid{grid-template-columns:1fr;gap:24px}
 .showcase-slide{grid-template-columns:1fr;min-height:0}.showcase-image{min-height:220px;height:220px;padding:28px}.showcase-image img{max-height:170px}.showcase-copy{padding:28px}
}
@media(max-width:359px){.product-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.article-grid>article{transition:none}}
.topic-image{height:145px;display:grid;place-items:center;background:var(--mint)}
.category-symbol{width:84px;height:84px;fill:none;stroke:var(--primary);stroke-width:2}
.category-symbol circle{fill:var(--primary);stroke:none}
[data-theme=dark] .product-detail .product-display{background:#f5f9f6;border-color:#658571}
[data-theme=dark] .article-grid img{background:#e6f2e8}
/* Consistent artwork, comfortable card interiors and aligned therapy links. */
html[data-theme] body .site-header .brand,html[data-theme] body .site-header.scrolled .brand{width:196px;flex-basis:196px;height:86px;background:none!important;padding:0!important;border:0;border-radius:0;box-shadow:none}
html[data-theme] body .site-header .brand .logo{width:196px;height:82px;filter:none!important;background:none!important;object-fit:contain}
html[data-theme] body .footer-logo{width:196px!important;background:none!important;padding:0!important;border-radius:0}
html[data-theme] body .footer-logo .logo{width:196px;height:86px;filter:none!important;background:none!important;object-fit:contain}
.office-grid{gap:28px;border-top:0;padding-top:28px;margin-top:18px;align-items:stretch}
html[data-theme] .office-card{padding:clamp(26px,3vw,44px);border:1px solid var(--border);border-radius:18px;background:var(--surface,var(--warm-white));min-width:0}
.office-card h3{margin:14px 0 26px}.office-card address{margin:0;overflow-wrap:anywhere}
.facility-contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:26px 0;margin-top:28px}
.facility-contact .text-link{margin:0;padding:6px 0}
.therapy-grid{display:block;border:0!important;padding:0;background:none}
.therapy-directory{align-items:stretch}
.therapy-feature{display:flex;flex-direction:column;min-width:0}
.therapy-feature-copy{flex:1;display:flex;flex-direction:column;align-items:flex-start;padding:30px;gap:0}
.therapy-feature-copy p:not(.eyebrow){margin:0 0 28px}
.therapy-feature-copy .text-link{position:relative;margin-top:auto;padding:8px 0 10px;display:inline-flex;align-items:center;gap:10px;width:auto;min-width:0;border:0;background:none;color:var(--primary);line-height:1.5;transform:none!important}
.therapy-feature-copy .text-link:before{display:none}
.therapy-feature-copy .text-link:after{content:'';margin:0;translate:none;position:absolute;inset:auto 0 0;height:1px;width:100%;background:currentColor;transform:scaleX(.35);transform-origin:left;transition:transform .25s}
.therapy-feature-copy .text-link:is(:hover,:focus-visible):after{transform:scaleX(1)}
.therapy-feature-copy .text-link span{margin:0;display:inline-block;transition:transform .25s}
.therapy-feature-copy .text-link:hover span{transform:translate(3px,-3px)}
.therapy-feature-copy small{margin-top:16px}
.therapy-intro .lead{max-width:38em}
.rich-section .copy{max-width:70ch}
.rich-section:not(.page_intro):not(.intro) .wrap>h2{max-width:22ch}
.timeline{gap:24px;align-items:stretch}
.timeline>div{min-width:0;padding:28px;border:1px solid var(--border);border-radius:16px;background:var(--surface,var(--warm-white))}
.timeline strong{font-size:1.45rem;line-height:1.35;display:block}
.timeline p{margin:18px 0 0;line-height:1.8}
.accordion-grid{align-items:start}.accordion summary{line-height:1.45;gap:24px}.accordion .copy{padding:0 0 24px}
.therapy-products .section-heading{max-width:850px;margin-bottom:36px}.therapy-products .lead{font-size:1rem;max-width:65ch;line-height:1.8}
.therapy-carousel{width:min(100%,1080px);margin-inline:auto}
.therapy-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--primary) transparent;border-radius:20px;position:relative;scroll-padding:0}
.therapy-track:focus-visible{outline:2px solid var(--primary);outline-offset:6px}
.therapy-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);border:1px solid var(--border);border-radius:20px;overflow:hidden;background:var(--surface,var(--warm-white))}
.therapy-slide-media{min-height:350px;padding:36px;background:#f3f8f5;display:grid;place-items:center}
.therapy-slide-media img{width:100%;height:280px;object-fit:contain;mix-blend-mode:normal}
.therapy-slide-copy{padding:clamp(26px,4vw,52px);align-self:center;min-width:0}
.therapy-slide-copy h3{font-family:var(--serif);font-size:clamp(2rem,3.2vw,3.4rem);line-height:1.12;margin:16px 0 22px}
.therapy-slide-copy>p:not(.eyebrow){font-size:1rem;line-height:1.8;color:var(--muted)}
.therapy-slide-copy .button{margin-top:26px}
.demo-label{display:inline-block;margin-top:24px;font-size:.75rem;letter-spacing:.015em;border:1px solid var(--border);border-radius:30px;padding:9px 14px;color:var(--muted)}
.therapy-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:26px}.therapy-controls[hidden]{display:none}
.therapy-controls button{width:48px;height:48px;border:1px solid var(--border);border-radius:50%;color:var(--text);background:var(--surface,var(--warm-white));font-size:1.25rem;cursor:pointer;transition:background .2s,transform .2s}
.therapy-controls button:hover:not(:disabled){background:var(--mint);transform:translateY(-2px);border-color:var(--primary)}
.therapy-controls button:disabled{opacity:.35;cursor:default}.therapy-counter{min-width:60px;text-align:center;font-size:.9rem;font-variant-numeric:tabular-nums}.therapy-controls small{margin-left:12px;color:var(--muted)}
html{scroll-padding-top:164px}.section[id],.therapy-products{scroll-margin-top:164px}
@media(max-width:760px){
 html[data-theme] body .site-header .brand,html[data-theme] body .site-header.scrolled .brand{width:174px;flex-basis:174px;height:74px}
 html[data-theme] body .site-header .brand .logo{width:158px;height:66px}
 .office-grid{grid-template-columns:1fr;gap:20px}.office-card{padding:26px}.facility-contact{align-items:flex-start;flex-direction:column}
 .therapy-feature-copy{padding:26px}.therapy-intro-grid{grid-template-columns:1fr;gap:32px}.therapy-intro-image{height:280px}
 .therapy-slide{grid-template-columns:1fr}.therapy-slide-media{min-height:0;height:230px;padding:22px}.therapy-slide-media img{height:190px}.therapy-slide-copy{padding:26px}.therapy-slide-copy h3{font-size:2rem}
 .therapy-controls{gap:14px;flex-wrap:wrap}.therapy-controls small{flex-basis:100%;text-align:center;margin-left:0}.timeline>div{padding:26px}
 html{scroll-padding-top:110px}.section[id],.therapy-products{scroll-margin-top:110px}
}
@media(prefers-reduced-motion:reduce){.therapy-track{scroll-behavior:auto}.therapy-controls button,.therapy-feature-copy .text-link:after,.therapy-feature-copy .text-link span{transition:none!important;transform:none!important}}
body[data-motion=reduced] .therapy-controls button,body[data-motion=reduced] .therapy-feature-copy .text-link:after,body[data-motion=reduced] .therapy-feature-copy .text-link span{transition:none!important;transform:none!important}

/* Arrow controls and touch scrolling replace the native slider scrollbar. */
.therapy-track{scrollbar-width:none}
.therapy-track::-webkit-scrollbar{display:none}

/* Keep the expanded inner pages readable without oversized empty section gaps. */
body:not(:has(.home-hero)) main>.section:not(.therapy-intro){padding-block:72px}
@media(max-width:760px){body:not(:has(.home-hero)) main>.section:not(.therapy-intro){padding-block:48px}}

/* Compact collection: three desktop cards, two tablet cards, one mobile card. */
.therapy-carousel{position:relative;width:100%;padding-inline:56px}
.therapy-track{--cards:3;gap:24px;align-items:stretch;border-radius:16px}
.therapy-slide{flex-basis:calc((100% - 48px)/3);display:flex;flex-direction:column;scroll-snap-stop:normal;border-radius:16px}
.therapy-slide-media{width:100%;min-height:0;height:215px;padding:22px}
.therapy-slide-media img{height:175px;width:100%}
.therapy-slide-copy{padding:24px;align-self:stretch;display:flex;flex:1;flex-direction:column;align-items:flex-start}
.therapy-slide-copy h3{font-size:clamp(1.5rem,1.8vw,2rem);margin:12px 0 18px;line-height:1.18}
.therapy-slide-copy .eyebrow{font-size:.58rem;letter-spacing:.12em}
.therapy-slide-copy>p:not(.eyebrow){font-size:.9rem;line-height:1.7;margin-bottom:22px}
.therapy-slide-copy .demo-label,.therapy-slide-copy .button{margin-top:auto}
.therapy-slide-copy .demo-label{font-size:.65rem;padding:7px 10px}
.therapy-controls{margin-top:20px;min-height:30px;gap:16px}
.therapy-controls button{position:absolute;top:calc(50% - 24px);width:44px;height:44px;z-index:2;background:var(--warm-white)}
.therapy-controls [data-therapy-prev]{left:0}.therapy-controls [data-therapy-next]{right:0}
.therapy-controls small{margin:0}.therapy-counter{min-width:80px}
@media(max-width:1100px) and (min-width:761px){.therapy-track{--cards:2}.therapy-slide{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:760px){.therapy-carousel{padding-inline:32px}.therapy-track{--cards:1;gap:16px}.therapy-slide{flex-basis:100%}.therapy-slide-copy{padding:22px}.therapy-slide-media{height:195px;padding:16px}.therapy-slide-media img{height:163px}.therapy-controls button{width:28px;height:38px;font-size:1rem}.therapy-controls small{font-size:.7rem}.therapy-slide-copy h3{font-size:1.65rem}}

@media(max-width:760px){.therapy-carousel{padding-inline:0}.therapy-controls{justify-content:space-between}.therapy-controls button{position:static;width:44px;height:44px;font-size:1.2rem}.therapy-controls small{flex-basis:100%;text-align:center}}
