/* Shared layout contract: one content edge and one type scale across migrated sections. */
:root{--layout-width:1120px;--layout-gutter:32px;--layout-section:64px;--layout-h2:clamp(24px,2.5vw,32px);--layout-h3:20px;--layout-body:16px}
.ux-wrap{max-width:var(--layout-width)!important;width:calc(100% - var(--layout-gutter)*2)!important}
.ux-hero{max-width:calc(var(--layout-width) + var(--layout-gutter)*2)!important;padding-inline:var(--layout-gutter)!important;gap:0 48px!important}
.ux-hero-content{padding-inline:0!important}
.ux-closing,.ux-footer{padding-inline:max(var(--layout-gutter),calc((100% - var(--layout-width))/2))!important}
#main-content>.box.sd-1{display:block!important;overflow:visible!important}
#main-content>.box.sd-1>.section{width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;padding:var(--layout-section) var(--layout-gutter)!important}
#main-content>.box.sd-1>.section>.section-inner{width:100%!important;max-width:var(--layout-width)!important;height:auto!important;min-width:0!important;margin:0 auto!important;padding:0!important;gap:32px!important}
#main-content [data-layout-row]{width:100%!important;max-width:100%!important;min-width:0!important;margin-inline:0!important}
#main-content [data-layout-heading-group]{width:100%!important;min-width:0!important;max-width:100%!important;align-items:flex-start!important;text-align:left!important;margin-inline:0!important;padding-inline:0!important}
#main-content [data-layout-heading]{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;flex-shrink:0!important;align-self:stretch!important;text-align:left!important;letter-spacing:-.025em!important;line-height:1.6!important;word-break:normal!important;overflow-wrap:break-word!important;text-wrap:pretty}
#main-content h1[data-layout-heading]{font-size:clamp(28px,3.2vw,42px)!important;font-weight:650!important}
#main-content h2[data-layout-heading]{font-size:var(--layout-h2)!important;font-weight:600!important}
#main-content h3[data-layout-heading]{font-size:var(--layout-h3)!important;font-weight:600!important}
#main-content :is([data-layout-copy],[data-readable-copy]){display:block!important;font-size:var(--layout-body)!important;line-height:1.95!important;letter-spacing:.02em!important;text-align:left!important;width:100%!important;max-width:100%!important;height:auto!important;min-width:0!important;flex-shrink:0!important;word-break:normal!important;overflow-wrap:break-word!important}
/* The imported transition:all also animated geometry on resize, causing visible text drift. */
#main-content .box:not(a),#main-content .section,#main-content .section-inner,#main-content .frame,#main-content .text:not(a){transition:none!important}
#main-content .native-section:has(.embed-scope){height:auto!important;min-height:0!important;overflow:visible!important}
#main-content [data-layout-faq]{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;gap:28px!important;overflow:visible!important;padding:0!important}
#main-content [data-layout-faq-column]{width:100%!important;max-width:100%!important;min-width:0!important;align-items:stretch!important;margin:0!important}
#main-content [data-layout-faq] :is(sd-toggle,[data-toggle-trigger],[data-toggle-content]){width:100%!important;min-width:0!important;max-width:100%!important}
#main-content [data-toggle-trigger]{text-align:left!important}#main-content [data-toggle-trigger] p{font-size:16px!important;line-height:1.75!important;display:block!important;text-align:left!important;min-width:0!important;height:auto!important}
#main-content [data-toggle-trigger]>.box{width:100%!important;min-width:0!important;justify-content:space-between!important}
.sp-intro,.sp-related{width:min(var(--layout-width),calc(100% - var(--layout-gutter)*2))!important}
.sp-section,.vg-section,.hc-section{padding-inline:var(--layout-gutter)!important;padding-block:var(--layout-section)!important}
.sp-section-inner,.vg-inner,.hc-inner{width:100%!important;max-width:var(--layout-width)!important;margin-inline:auto!important}
:is(.sp-section,.vg-section,.hc-section) h2{font-size:var(--layout-h2)!important;line-height:1.6!important;font-weight:600!important;letter-spacing:-.025em!important;text-wrap:pretty}
.sp-section header,.vg-heading,.hc-heading{margin-bottom:28px!important;max-width:780px!important}
.sp-lead,.vg-heading p{font-size:var(--layout-body)!important;line-height:1.95!important}
#main-content .embed-scope :is(.process,.results,.first-session){padding-inline:0!important}
#main-content .embed-scope :is(.process__inner,.results__inner,.first-session__inner){width:100%!important;max-width:var(--layout-width)!important;margin-inline:auto!important;padding-inline:0!important}
#main-content .embed-scope :is(.process__title,.results__title,.first-session__title){font-size:var(--layout-h2)!important;font-weight:600!important;line-height:1.6!important;letter-spacing:-.025em!important;text-align:left!important}
#main-content .embed-scope :is(.process__lead,.results__lead,.first-session__lead,.process-step__text,.result-item__text){font-size:var(--layout-body)!important;line-height:1.95!important;text-align:left!important}
#main-content .embed-scope :is(.process-step__title,.result-item__title){font-size:var(--layout-h3)!important;line-height:1.65!important;text-align:left!important}
#main-content .embed-scope :is(.process__header,.results__header){margin-inline:0!important;max-width:780px!important;text-align:left!important}
/* Legal copy is a reading column; its title and paragraphs share the same edge. */
#main-content [data-layout-document]{width:min(800px,calc(100% - var(--layout-gutter)*2))!important;max-width:800px!important;margin:0 auto!important;padding:48px 0 64px!important;align-items:stretch!important;gap:32px!important}
#main-content [data-layout-document] .box{width:100%!important;max-width:100%!important;min-width:0!important;margin-inline:0!important;padding-inline:0!important;align-items:flex-start!important}
#main-content [data-layout-document] .richText{width:100%!important;padding:0!important;font-size:var(--layout-body)!important;line-height:1.95!important}
#main-content [data-layout-document] .richText h2{font-size:22px!important;line-height:1.7!important;font-weight:600!important;margin:36px 0 16px!important}
#main-content [data-layout-document] .richText h3{font-size:18px!important;line-height:1.7!important;font-weight:600!important;margin:24px 0 12px!important}
#main-content [data-layout-document] .richText :is(p,li){font-size:var(--layout-body)!important;line-height:1.95!important}
#main-content [data-layout-document] .richText :is(ul,ol){padding-left:1.5em!important}
#main-content [data-layout-document] .richText p{margin-block:12px!important}
@media(max-width:1000px){
 :root{--layout-section:48px}
 .sp-hero{grid-template-columns:minmax(0,1fr)!important;gap:28px!important;align-items:start!important}
 .sp-photo:not(.sp-photo-session){width:100%;aspect-ratio:16/9!important;max-height:440px;border-radius:56px 10px 10px 10px!important}
 .sp-hero-copy{width:100%;max-width:760px}.sp-hero h1{font-size:34px}.sp-description{max-width:44em}
 .ux-hero:not(.story-home-hero){grid-template-columns:minmax(0,1fr)!important;padding:24px var(--layout-gutter) 0!important;max-width:100%}
 .ux-hero:not(.story-home-hero) .ux-hero-content{padding:16px 0 28px!important}.ux-hero:not(.story-home-hero) .ux-hero-visual{height:400px!important;border-top-left-radius:64px!important}.ux-hero:not(.story-home-hero) h1{font-size:clamp(34px,5.5vw,48px)!important}.ux-hero-methods{grid-column:1!important;flex-wrap:wrap!important}
 #main-content [data-layout-row]{flex-wrap:wrap!important;gap:28px!important}
 #main-content [data-layout-heading-group]{flex-basis:100%!important}
 .ux-closing{grid-template-columns:minmax(0,1fr)!important;gap:28px!important}
 .ux-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
 :root{--layout-gutter:20px;--layout-section:40px;--layout-body:15px;--layout-h3:18px}
 .sp-intro{padding-top:12px}.sp-hero h1{font-size:29px}.sp-catch{font-size:19px}.sp-photo:not(.sp-photo-session){aspect-ratio:3/2!important}
 .sp-actions{display:grid;width:100%;gap:4px}.sp-actions .ux-button{width:100%;justify-content:space-between}.sp-consult{justify-content:center}.sp-note{line-height:1.9}
 .sp-nav ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.sp-nav a{font-size:12px;padding:10px;gap:8px}.sp-nav a span:last-child{margin-left:auto}
 .sp-concerns .sp-disclosure-list,.sp-flow-list,.sp-price-grid{grid-template-columns:minmax(0,1fr)!important}
 .sp-price-consult{flex-direction:column;align-items:flex-start;gap:8px}
 .ux-hero:not(.story-home-hero) .ux-hero-visual{height:300px!important}.ux-card-grid{grid-template-columns:minmax(0,1fr)}.ux-card h2{font-size:19px}
 .ux-wrap{width:calc(100% - 40px)!important}
 #main-content .embed-scope :is(.process__body,.first-session__inner,.results__list){display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
 #main-content [data-toggle-trigger] p{font-size:15px!important}
}

/* Equal columns reserve the same space for labels, prices and comparison notes. */
#main-content [data-layout-plans]{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important;width:100%!important;gap:24px!important}
#main-content [data-layout-plan]{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:28px 20px!important;gap:12px!important;transform:none!important;border-width:1px!important}
#main-content [data-plan-label]{font-size:12px!important;line-height:1.6!important;min-height:40px!important;text-align:center!important;display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important}
#main-content [data-plan-frequency]{font-size:20px!important;line-height:1.5!important}
#main-content [data-plan-time]{font-size:14px!important;line-height:1.6!important}
#main-content [data-plan-price]{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:4px!important;align-items:baseline!important;justify-content:center!important;min-height:52px!important;width:100%!important;margin:6px 0 0!important}
#main-content [data-plan-price]>p:first-child{font-size:32px!important;font-variant-numeric:tabular-nums;line-height:1.4!important}
#main-content [data-plan-price]>p:last-child{font-size:12px!important;line-height:1.8!important}
#main-content [data-layout-plan]>p:last-of-type{font-size:13px!important;line-height:1.8!important}
#main-content>.box.sd-1>.section>.section-inner[data-layout-split]{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)!important;align-items:center!important;gap:48px!important}
#main-content [data-layout-split]>.box{width:100%!important;min-width:0!important}
#main-content [data-layout-split] .image{width:100%!important;max-width:100%!important;height:520px!important;overflow:hidden;border-radius:12px}
@media(max-width:1000px){#main-content>.box.sd-1>.section>.section-inner[data-layout-split]{grid-template-columns:minmax(0,1fr)!important;gap:28px!important}#main-content [data-layout-split] .image{max-width:520px!important;height:480px!important;align-self:flex-start}}
@media(max-width:900px){#main-content [data-plan-price]{flex-direction:column!important;align-items:center!important;gap:0!important;min-height:68px!important}}
@media(max-width:700px){#main-content [data-layout-plans]{grid-template-columns:minmax(0,1fr)!important;gap:16px!important}#main-content [data-layout-plan]{padding:24px!important}#main-content [data-plan-label]{min-height:0!important}#main-content [data-plan-price]{flex-direction:row!important;align-items:baseline!important;gap:4px!important;min-height:44px!important}#main-content [data-layout-split] .image{height:auto!important;aspect-ratio:4/5!important}#main-content [data-layout-split] .uploaded-portrait{height:100%!important}}

#main-content [data-layout-numbered]{display:grid!important;grid-template-columns:32px minmax(0,1fr)!important;align-items:start!important;gap:16px!important;width:100%!important;min-width:0!important}
#main-content [data-layout-numbered]>.box{width:100%!important;min-width:0!important;max-width:100%!important}#main-content [data-layout-numbered]>p{width:auto!important}
#main-content [data-layout-gallery]{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;width:100%!important;min-width:0!important}
#main-content [data-layout-gallery]>.box,#main-content [data-layout-gallery] .image{width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important}#main-content [data-layout-gallery] .image{height:auto!important;aspect-ratio:4/3}
#main-content [data-layout-closing]{width:100%!important;padding:var(--layout-section) var(--layout-gutter)!important}
#main-content [data-layout-closing]>.box{max-width:var(--layout-width)!important;width:100%!important;margin:auto!important;align-items:stretch!important}
#main-content [data-layout-booking-steps]{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important;width:100%!important;max-width:100%!important}
#main-content [data-layout-booking-steps]>p{display:none!important}
#main-content [data-layout-booking-steps]>.box{display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;width:100%!important;min-width:0!important}
#main-content [data-layout-booking-steps]>.box>p{display:block!important;width:100%!important;height:auto!important;min-width:0!important;font-size:14px!important;line-height:1.8!important;text-align:left!important}
#main-content [data-layout-document]>.box:first-child{display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;height:auto!important;min-height:0!important;gap:24px!important;background:transparent!important;padding-bottom:28px!important;border-bottom:1px solid #d5dbcd!important}
#main-content [data-layout-document]>.box:first-child>.box{position:static!important;inset:auto!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:10px!important;width:100%!important}
@media(max-width:1000px){#main-content [data-layout-booking-steps]{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){#main-content [data-layout-gallery],#main-content [data-layout-booking-steps]{grid-template-columns:minmax(0,1fr)!important}#main-content [data-layout-gallery] .image{aspect-ratio:16/9}}

#main-content [data-layout-label-row]{display:grid!important;grid-template-columns:max-content minmax(0,1fr)!important;align-items:start!important;gap:12px!important;width:100%!important;min-width:0!important}
#main-content [data-layout-label-row]>p:last-child{display:block!important;min-width:0!important;width:100%!important;max-width:100%!important;height:auto!important;text-align:left!important;overflow-wrap:break-word!important}

#main-content [data-layout-document]>.box:first-child :is(h1,p,a){color:#283d3c!important}

/* Keep nested trainer copy within its own column; legacy intrinsic widths escape the section. */
#main-content [data-layout-trainer]{display:grid!important;grid-template-columns:320px minmax(0,1fr)!important;align-items:start!important;justify-content:normal!important;gap:40px!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important}
#main-content [data-layout-trainer] :is(.box,.text){min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
#main-content [data-trainer-photo],#main-content [data-trainer-copy],#main-content [data-trainer-copy]>.box{width:100%!important;margin:0!important;padding:0!important;align-items:stretch!important}
#main-content [data-layout-trainer] [data-trainer-photo]{height:auto!important;min-height:0!important;align-self:start!important;justify-content:flex-start!important;flex-shrink:0!important}
#main-content [data-trainer-photo] .image{width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:2/3!important;margin:0!important;border-radius:12px!important;overflow:hidden!important;background-size:cover!important;background-position:center 30%!important}
#main-content [data-trainer-copy]{gap:24px!important}
#main-content [data-trainer-copy]>.box{gap:20px!important}
#main-content [data-trainer-copy] :is(p,h3){height:auto!important;white-space:normal!important;overflow-wrap:anywhere!important;text-align:left!important}
#main-content [data-trainer-credentials]{display:flex!important;flex-flow:row wrap!important;justify-content:flex-start!important;align-items:flex-start!important;gap:8px!important;width:100%!important}
#main-content [data-trainer-credentials]>.box{width:auto!important;flex:0 1 auto!important;padding:8px 12px!important;margin:0!important}
#main-content [data-trainer-credentials] p{width:auto!important;font-size:12px!important;line-height:1.7!important}
@media(max-width:1000px){#main-content [data-layout-trainer]{grid-template-columns:260px minmax(0,1fr)!important;gap:28px!important}}
@media(max-width:760px){#main-content [data-layout-trainer]{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}#main-content [data-layout-trainer] [data-trainer-photo]{max-width:320px!important;justify-self:start!important}}
