/* V18 responsive foundation: fluid, bounded type and image-safe layouts. */
:root{--v18-gutter:clamp(16px,4vw,48px);--v18-body:clamp(1rem,.97rem + .14vw,1.125rem)}
html{overflow-x:clip}
body{font-size:var(--v18-body)}
img,video,canvas,svg{max-inline-size:100%;height:auto}
main,section,article,aside,header,footer,form,fieldset,.panel,.product-card,.ritual-card,.pair-card,.review-card,.clinician-card{min-inline-size:0}
p,li,blockquote,summary,label,.small{overflow-wrap:anywhere}
h1,h2,h3{overflow-wrap:normal;text-wrap:balance}
p{max-inline-size:68ch}
h1{font-size:clamp(2.1rem,1.55rem + 2.6vw,4.25rem);line-height:1.08}
h2{font-size:clamp(1.7rem,1.35rem + 1.5vw,3rem);line-height:1.18}
h3{font-size:clamp(1.22rem,1.07rem + .65vw,1.75rem);line-height:1.25}
@media(max-width:700px){
 body{font-size:16px;line-height:1.6}
 main{padding-inline:var(--v18-gutter)}
 .site-header,.site-header nav,header,footer{min-inline-size:0}
 .site-header nav,.site-nav,.nav-list{max-inline-size:100%;overflow-x:auto;scrollbar-width:thin}
 .product-grid,.pair-grid,.review-grid,.grief-video-grid{min-width:0}
 .product-card,.ritual-card,.pair-card,.review-card,.clinician-card{min-width:0}
 button,.button,.primary,input,textarea,select{max-inline-size:100%}
}
@media(max-width:380px){
 h1{font-size:clamp(2rem,9.2vw,2.45rem);letter-spacing:-.025em}
 h2{font-size:clamp(1.55rem,7.4vw,2rem)}
 .product-grid,.pair-grid{grid-template-columns:minmax(0,1fr)}
 .site-header{padding-inline:16px}
}
@media(min-width:1440px){
 main:not(.checkout-main),.customer-main{max-inline-size:1200px;margin-inline:auto}
 .product-lead,.journal-lede,.intro>p:last-child{max-inline-size:58ch}
}
@media(min-width:2200px){
 body{font-size:clamp(1.125rem,1rem + .35vw,1.35rem)}
 main:not(.checkout-main),.customer-main{max-inline-size:1440px}
}
/* Make the companion deliverable read as a separate included service, not a thumbnail. */
body[data-product-page="grief"] .journey-preview .companion-deliverable-cover{flex-basis:100px;width:100px;height:100px;object-fit:contain;background:rgba(31,23,35,.7)}
body[data-product-page="grief"] .journey-preview .companion-deliverable-copy{max-inline-size:47ch}
@media(max-width:620px){
 body[data-product-page="grief"] .journey-preview .companion-deliverable>div{align-items:flex-start}
 body[data-product-page="grief"] .journey-preview .companion-deliverable-cover{flex-basis:82px;width:82px;height:82px}
}
@media(max-width:380px){
 body[data-product-page="grief"] .journey-preview .companion-deliverable>div{display:block}
 body[data-product-page="grief"] .journey-preview .companion-deliverable-cover{float:left;margin:0 12px 7px 0;flex-basis:auto;width:74px;height:74px}
 body[data-product-page="grief"] .journey-preview .companion-deliverable-copy::after{content:"";display:block;clear:both}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
