/* Component layouts share geometry across light and dark modes. */
html[data-theme] body .video-feature,html[data-theme] body .video-feature+.video-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;width:min(1280px,calc(100% - 64px));min-height:0;height:auto;gap:0;margin:56px auto;isolation:isolate}
html[data-theme] body .video-feature .video-feature-content{grid-column:1;grid-row:1;position:relative;inset:auto;width:auto;min-width:0;max-width:none;padding:clamp(28px,4vw,58px);margin:0;align-self:center;z-index:1}
html[data-theme] body .video-feature .video-feature-media{grid-column:2;grid-row:1;position:relative;inset:auto;width:100%;height:auto;min-height:420px;border-radius:0;overflow:hidden;z-index:0;transform:none}
html[data-theme] body .video-feature .video-feature-media picture{display:block;position:absolute;inset:0;width:100%;height:100%}
html[data-theme] body .video-feature .video-feature-media :is(img,video){position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;transform:none!important;translate:none!important;border-radius:0}
html[data-theme] body .video-feature .video-feature-media img{z-index:0;filter:none}
html[data-theme] body .video-feature .video-feature-media video{z-index:1;opacity:0;filter:none}
html[data-theme] body .video-feature .video-feature-media video.is-playing{opacity:1}
html[data-theme] body .video-feature h2{font-size:clamp(2rem,3.4vw,3.5rem);line-height:1.12;margin:0 0 24px}
html[data-theme] body .video-feature .copy{margin:0;max-width:48ch;font-size:1rem;line-height:1.7}
.video-feature .button-row{margin-top:26px}.video-feature .stock-caption{margin-top:30px;font-size:.65rem;line-height:1.5}
.product-photo-fallback{display:grid;place-content:center;text-align:center;width:100%;height:100%;min-height:100px;background:var(--mint);color:var(--primary);gap:8px}.product-photo-fallback>span{font-family:var(--serif);font-size:3rem}.product-photo-fallback small{font-size:.7rem}
.product-card{min-width:0}.product-card .product-image{overflow:hidden;border-radius:14px;background:var(--surface)}.product-card .product-image img{width:100%;height:100%;object-fit:contain;transform:none}.product-info h3{overflow-wrap:anywhere}.product-detail-grid{align-items:start}.product-display{min-height:0}.product-display img{object-fit:contain;max-height:520px}
.therapy-slide{display:flex;flex-direction:column;min-height:0;height:auto}.therapy-slide-media{min-height:0;height:200px;flex:none}.therapy-slide-copy{align-self:stretch;flex:1;padding:22px}.therapy-slide-copy h3{font-size:1.5rem}.therapy-slide-copy p{font-size:.9rem}.therapy-slide-copy .button{margin-top:16px}
.therapy-feature-copy{min-height:0}.therapy-feature-copy p:not(.eyebrow){margin-bottom:20px}.therapy-feature-copy .text-link{margin-top:10px}
@media(min-width:761px) and (max-width:1100px){
 .wrap{width:calc(100% - 48px)}.therapy-directory{gap:18px}.therapy-feature-copy{padding:20px}.therapy-feature-copy h3{font-size:1.35rem}.therapy-feature-image{height:180px}.therapy-feature-copy p:not(.eyebrow){font-size:.88rem;line-height:1.6}.therapy-feature-copy .text-link{font-size:.82rem}
 html[data-theme] body .hero-content h1{font-size:clamp(2.6rem,5.4vw,3.8rem)}
 .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.product-info h3{font-size:1.4rem}
 html[data-theme] body .video-feature .video-feature-content{padding:28px}.video-feature .button-row{margin-top:20px}.video-feature .stock-caption{margin-top:22px}
}
@media(max-width:760px){
 html[data-theme] body .site-header,html[data-theme] body .site-header.scrolled{min-height:82px;height:82px}
 html[data-theme] body .site-header .brand,html[data-theme] body .site-header.scrolled .brand{width:138px;flex-basis:138px;height:auto;min-height:0;padding:0;background:transparent}
 html[data-theme] body .site-header .brand .logo{width:138px;height:auto;aspect-ratio:947/410}
 html[data-theme] body{--header-height:82px}html{scroll-padding-top:94px}.section[id],.therapy-products{scroll-margin-top:94px}
 html[data-theme] body .hero-content{padding:26px 0 22px;margin:0 auto;width:calc(100% - 36px)}
 html[data-theme] body .hero-content h1{font-size:clamp(1.85rem,8vw,2.55rem);line-height:1.08;max-width:18ch;margin:0 0 18px}
 html[data-theme] body .hero-content .copy{font-size:.875rem;line-height:1.6;margin:0;max-width:44ch}
 html[data-theme] body .hero-content .button-row{gap:12px;margin-top:22px;display:flex;flex-wrap:wrap}
 html[data-theme] body .hero-content .button{padding:12px 14px;font-size:.78rem;min-height:44px}
 html[data-theme] body .hero-content .text-link{font-size:.78rem;padding-block:10px}
 html[data-theme] body .hero>picture{position:relative;inset:auto;width:calc(100% - 36px);height:auto;aspect-ratio:1.65;margin:0 auto 22px;overflow:hidden;border-radius:28px 8px 28px 8px}
 html[data-theme] body .hero>picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:none!important;filter:none}
 html[data-theme] body .hero>.background-video{display:none}.hero-overlay{display:none}.hero-bottom{display:none!important}
 .therapy-directory{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px!important;padding:2px 0 14px;scrollbar-width:thin;overscroll-behavior-x:contain}
 .therapy-directory .therapy-feature{flex:0 0 80%;max-width:310px;scroll-snap-align:start;align-self:stretch;translate:none}
 .therapy-feature-image{height:148px;flex:none}.therapy-feature-copy{padding:18px!important;display:flex;gap:0;min-height:0}
 .therapy-feature-copy h3{font-size:1.25rem;line-height:1.2;margin:0 0 12px}.therapy-feature-copy p:not(.eyebrow){font-size:.85rem;line-height:1.6;margin:0 0 16px;min-height:0;-webkit-line-clamp:3}.therapy-feature-copy .text-link{margin-top:auto;font-size:.8rem;min-height:44px;align-items:center;padding:8px 0}.therapy-feature-copy small{font-size:.7rem;margin:12px 0 0}
 .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px 12px!important}.product-image{aspect-ratio:1.1;height:auto;min-height:0}.product-info{padding-top:12px}.product-info h3{font-size:1.05rem;line-height:1.2;margin:0 0 6px}.product-info .eyebrow{font-size:.5rem;margin-bottom:7px}
 .therapy-track{--cards:2;gap:12px}.therapy-slide{flex:0 0 calc((100% - 12px)/2);display:flex;min-width:0}.therapy-slide-media{height:132px;padding:10px}.therapy-slide-media img{height:112px}.therapy-slide-copy{padding:13px}.therapy-slide-copy h3{font-size:1.08rem;margin:10px 0}.therapy-slide-copy>p:not(.eyebrow){font-size:.75rem;line-height:1.5}.therapy-slide-copy .button{padding:10px 8px;font-size:.72rem;white-space:normal}.therapy-slide-copy .demo-label{font-size:.58rem;margin-top:10px}
 html[data-theme] body .video-feature,html[data-theme] body .video-feature+.video-feature{display:grid;grid-template-columns:minmax(0,1fr);width:calc(100% - 36px);margin:28px auto;min-height:0;gap:0;border-radius:20px}
 html[data-theme] body .video-feature .video-feature-media{grid-column:1;grid-row:1;position:relative;inset:auto;min-height:0;height:auto;aspect-ratio:1.65;width:100%;order:0}
 html[data-theme] body .video-feature .video-feature-content{grid-column:1;grid-row:2;position:relative;inset:auto;width:auto;padding:24px;margin:0;order:1;background:transparent}
 html[data-theme] body .video-feature h2{font-size:1.85rem!important;margin-bottom:18px}.video-feature .button-row{margin-top:22px}.video-feature .stock-caption{margin-top:20px!important}
 html[data-theme] body .video-feature .copy{font-size:.875rem;line-height:1.65}.video-feature .video-feature-media video{display:none!important}
 .section :is(h2,h1){text-wrap:balance}.science-art{height:190px!important;min-height:0}.science-sticky{padding:30px 0}.science-intro{font-size:.9rem}.story-step{margin-bottom:18px}.story-steps{gap:18px}
 .product-detail-grid{grid-template-columns:1fr;gap:24px}.product-display{max-height:300px;aspect-ratio:1.5;padding:20px}.product-display img{height:100%;max-height:250px}.product-copy h1{font-size:2rem}.product-facts{font-size:.85rem}
 .footer-brand .client-logo{height:auto!important;aspect-ratio:947/410}.footer-brand{overflow:visible}
}
@media(prefers-reduced-motion:reduce){.therapy-directory,.therapy-track{scroll-behavior:auto}.video-feature *{animation:none!important}}

.therapy-browse-controls{display:flex;align-items:center;gap:10px;padding:0 0 10px;font-size:.75rem;color:var(--muted)}.therapy-browse-controls[hidden]{display:none}.therapy-browse-controls span{margin-right:auto}.therapy-browse-controls button{width:44px;height:44px;border-radius:50%;background:var(--surface);color:var(--primary);border:1px solid var(--border);font-size:1.2rem}.therapy-browse-controls button:disabled{opacity:.35}.therapy-browse-controls button:hover:not(:disabled){background:var(--mint)}.therapy-directory:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.showcase-slider .showcase-slide:only-child{max-width:420px}

.product-display:has(.product-photo-fallback){height:220px;min-height:0}.product-display .product-photo-fallback{border-radius:16px}.product-image .product-photo-fallback{min-height:0}
