/* Launch-readiness corrections. Approved visual system: left aligned, square imagery, readable labels. */
body:not(.shop-v3):not(.shop-all-page) :is(.eyebrow,.section-label,.focus-title,.ac-chips>i,.t-focus h3){font-family:Inter,Arial,sans-serif!important;font-size:14px!important;font-weight:700!important;line-height:1.5!important;letter-spacing:.01em!important;text-transform:uppercase!important}
body.page-open main>section:not(.t-hero):not(.sec-pine):not(.on-pine):not(.band-sec--pine) h2 em,body.results-document main h1 em{color:#9D5147!important}
.vp5-products>.eyebrow,.vp5-products .eyebrow{color:#EFE9DE!important}
.simplified-home-review .solution-top,.simplified-home-review .solution-base,.simplified-home-review .solution-guide,.simplified-home-review .solution-name{color:#625E58!important}
.simplified-home-review .solution-link{opacity:.76!important}
.simplified-home-review .solution-link:is(:hover,:focus-visible,.is-active){opacity:1!important}
.results-document .tx-card figcaption i{color:#625E58!important}
.packages-clean .book-band>.container{text-align:left!important}
.packages-clean .book-band :is(h2,p,.btn,.sub){margin-left:0!important;margin-right:auto!important;text-align:left!important}
.sr-track[tabindex]{outline:none}.sr-track[tabindex]:focus-visible{outline:3px solid #4E5442;outline-offset:5px}
.sr-dots{display:none!important}
.pr-dots{display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-start!important}
html body.page-open.treatment-detail .pr-dot{width:auto!important;height:auto!important;min-height:44px!important;padding:9px 14px!important;border:1px solid rgba(33,29,24,.28)!important;border-radius:999px!important;background:transparent!important;color:#211D18!important;font:600 13px/1.35 Inter,Arial,sans-serif!important;text-indent:0!important}
html body.page-open.treatment-detail .pr-dot.is-on{background:#33352B!important;color:#EFE9DE!important;border-color:#33352B!important}
html body.page-open.treatment-detail .pr-dot:after{content:none!important}
@media(max-width:600px){html body.page-open.treatment-detail .pr-dots{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%}html body.page-open.treatment-detail .pr-dot{text-align:left!important}}

.simplified-home-review .solution-screen h2 em{color:#9D5147!important}

/* Final readability pass: approved Inter body copy, stationary pricing tabs. */
html body:not(.shop-v3):not(.shop-all-page) :is(p,li){font-family:Inter,Arial,sans-serif!important}
html body:not(.shop-v3):not(.shop-all-page) :is(.prose,.c-body,.tc-panel,.about-home-copy) :is(p,li),
html body.page-open :is(.led,.lede,.c-lede,.t-focus li){font-size:16px!important;line-height:1.7!important;letter-spacing:normal!important}
html body:not(.shop-v3):not(.shop-all-page) :is(p,li) strong{font-weight:700!important}
html body:not(.shop-v3):not(.shop-all-page) :is(.link-line,.crumb,.c-go,.rel-link,.bento-pill,.tc-rail button){font-family:Inter,Arial,sans-serif!important}
html body .link-line{font-size:14px!important;font-weight:600!important;letter-spacing:.01em!important}
html body a{ text-decoration:none!important; }
html body :is(.link-line,.c-go,.rel-link){border-bottom:0!important;background-image:none!important;box-shadow:none!important}
html body :is(.link-line,.c-go,.rel-link)::after{content:none!important}
html body a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
html body .pricer .pr-nav{display:flex!important;align-items:center!important;gap:16px!important;flex-wrap:wrap!important;height:auto!important}
html body .pricer .pr-dots{display:flex!important;flex-wrap:wrap!important;gap:12px!important;min-width:0!important;height:auto!important}
html body .pricer .pr-dot,
html body .pricer .pr-dot:hover,
html body .pricer .pr-dot.is-on{transform:none!important;scale:1!important;flex:0 1 auto!important;max-width:100%!important;white-space:normal!important;line-height:1.4!important}
html body .pricer .pr-dot{font-size:14px!important;transition:background-color .2s,color .2s,border-color .2s!important}
html body .pricer .pr-name{display:block!important;min-width:0!important;line-height:1.5!important;font-size:17px!important}
html body .pricer .pr-desc{display:block!important;margin:8px 0 0!important;max-width:62ch!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;font-size:15px!important;line-height:1.7!important}
html body .pricer .pr-list>li>a{align-items:flex-start!important;gap:24px!important}
@media(max-width:600px){html body .pricer .pr-dots{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important}html body .pricer .pr-dot{text-align:left!important}html body .pricer .pr-list>li>a{gap:16px!important}}

/* Keep category heading typography; give the following content room. */
html body .ix-group{margin-bottom:40px!important}
@media(max-width:760px){html body .ix-group{margin-bottom:32px!important}}

/* Plain price lists: content only, with space around the follow-up note. */
html body .price-table,html body #upgrades .price-table{background:transparent!important;background-image:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;overflow:visible!important;column-gap:48px!important;row-gap:16px!important;margin-top:32px!important}
html body .price-table::before,html body .price-table::after,html body .price-row::after{content:none!important;display:none!important}
html body .price-table .price-row,html body #upgrades .price-row{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:12px 0!important;margin:0!important;gap:24px!important;align-items:baseline!important;transform:none!important}
html body .price-row b{font:400 16px/1.7 Inter,Arial,sans-serif!important}
html body .price-row span{background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;font:500 16px/1.7 Inter,Arial,sans-serif!important;letter-spacing:normal!important;margin-left:auto!important;flex-shrink:0!important}
html body #upgrades .price-note{margin-top:48px!important;padding:0!important;max-width:62ch!important;line-height:1.7!important}
html body #upgrades .price-note::before,html body #upgrades .price-note::after{display:none!important;content:none!important}
@media(max-width:760px){html body #upgrades .price-note{margin-top:32px!important}html body .price-table{grid-template-columns:minmax(0,1fr)!important;row-gap:8px!important}}
/* Match the existing index's gentle 6px text movement on equivalent links. */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
html body :is(.ix-name,.ix-note,.rel-link,.link-line,.c-go),html body .c-card:has(a)>:is(h3,p),html body a.related-card>:is(h3,p){transition:transform 280ms cubic-bezier(.16,1,.3,1),translate 280ms cubic-bezier(.16,1,.3,1),color 200ms ease!important}
html body .ix-row:is(:hover,:focus-visible) :is(.ix-name,.ix-note){translate:none}
html body :is(.rel-link,.link-line,.c-go):is(:hover,:focus-visible){translate:6px 0}
html body .c-card:has(a):is(:hover,:focus-within)>:is(h3,p),html body a.related-card:is(:hover,:focus-visible)>:is(h3,p){translate:6px 0}
}
@media(prefers-reduced-motion:reduce){html body :is(.ix-name,.ix-note,.rel-link,.link-line,.c-go){translate:none!important}}

/* Readable introduction and breathing room after the assessment list. */
html body .ix-intro{max-width:62ch!important}
html body .ix-intro p{font-size:16px!important;line-height:1.7!important;max-width:62ch!important}
html body .ix-intro p+p{margin-top:24px!important}
html body #choosing .prose ul{margin-top:24px!important;margin-bottom:40px!important}
html body #choosing .prose ul+p{margin-top:40px!important;max-width:62ch!important}
html body #choosing .prose p:has(>.btn){margin-top:32px!important}
@media(max-width:760px){html body #choosing .prose ul{margin-bottom:32px!important}html body #choosing .prose ul+p{margin-top:32px!important}}

/* Raise the concerns introduction and permanently suppress the custom cursor. */
html body:is(.concerns-index,.treatments-index) .ix-hero{align-items:flex-start!important;min-height:0!important;height:auto!important;padding-top:calc(var(--nav-h,72px) + 32px)!important;padding-bottom:48px!important}
@media(max-width:760px){html body:is(.concerns-index,.treatments-index) .ix-hero{padding-top:calc(var(--nav-h,72px) + 24px)!important;padding-bottom:32px!important}}
html body #cur-dot,html body #cur-dot.is-act,html body #cur-dot.is-out{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;animation:none!important;transition:none!important}

/* Pricing content sizes itself; no fixed-height viewport may crop the last row. */
html body .pricer .pr-stage{height:auto!important;min-height:0!important;overflow:hidden!important;transition:none!important}
html body .pricer section.pr-slide{margin:0!important;padding:0!important;min-height:0!important}
html body .pricer .pr-ctas{margin-top:32px!important;flex-wrap:wrap!important;max-width:100%!important}
html body .pricer .pr-note{max-width:min(62ch,100%)!important;white-space:normal!important;overflow-wrap:break-word!important;line-height:1.7!important;font-size:14px!important;margin:24px 0 0!important}
html body .moxi-suitability .section-head{margin-bottom:40px!important}
html body .moxi-suitability h2{max-width:none!important}
html body .moxi-suitability .tc-rail button{white-space:normal!important;text-decoration:none!important;border-bottom:0!important}
html body .moxi-suitability .tc-rail button::after{display:none!important;content:none!important}
@media(max-width:760px){html body .moxi-suitability .section-head{margin-bottom:32px!important}}

/* Treatment directory: clear name hierarchy. */
html body.treatments-index .ix-name{font-weight:700!important}

/* Matching introduction rhythm on both directory pages. */
html body:is(.concerns-index,.treatments-index) .ix-crumb{margin:0 0 32px!important}
html body:is(.concerns-index,.treatments-index) .ix-hero h1{margin:0 0 32px!important}
html body:is(.concerns-index,.treatments-index) .ix-lede{margin:0!important}
html body:is(.concerns-index,.treatments-index) .ix-register{margin:48px 0 0!important;padding-top:16px!important}
@media(max-width:760px){html body:is(.concerns-index,.treatments-index) .ix-crumb{margin-bottom:24px!important}html body:is(.concerns-index,.treatments-index) .ix-hero h1{margin-bottom:24px!important}html body:is(.concerns-index,.treatments-index) .ix-register{margin-top:32px!important}}
