/* V8 precise layer. V7 source preserved except explicit handoff deltas. */
:root{--v5-max:1200px}
/* Footer: slight tightening without changing arrangement */
.v8 .v7-footer-legal{gap:0!important}
.v8 .v7-footer-legal a{min-height:22px!important;padding-top:1px!important;padding-bottom:1px!important}
/* Standard bottom bookend, no diagram or abrupt background edge */
.v8 .wide-cta:not(.v6-ready-book){padding:50px 0 50px!important;min-height:0!important;background:linear-gradient(105deg,#f7f8f3,#f1f4ed 74%,#f8f9f5)!important;overflow:hidden;position:relative;isolation:isolate}
.v8 .wide-cta:before{inset:-100px -80px -80px auto!important;width:48%!important;height:calc(100% + 180px)!important;opacity:.13!important;filter:grayscale(.35) blur(13px)!important;background: url('../assets/v5-hero-legal.webp') center center / cover no-repeat!important;mask-image:radial-gradient(ellipse at 75% 55%, #000 13%,transparent 74%)!important;pointer-events:none}
.v8 .wide-cta .cta-grid{display:grid;grid-template-columns:1fr!important;gap:0!important;min-height:0!important}
.v8 .wide-cta .cta-grid h2{font-size:clamp(26px,2.6vw,34px);line-height:1.25;margin-bottom:10px;max-width:none}
.v8 .wide-cta .cta-grid p{margin-top:0;margin-bottom:15px;max-width:930px}
.v8 .wide-cta .aloe-ornament{display:none!important}
.v8 .v7-verification-inner{grid-template-columns:minmax(0,1.35fr) minmax(0,.95fr);align-items:center;padding-top:0!important;padding-bottom:0!important;gap:clamp(20px,3vw,55px)!important}
.v8 .v7-verification h2{font-family:inherit;font-size:clamp(26px,2.6vw,34px)!important;font-weight:400;line-height:1.25;margin-bottom:10px}
.v8 .v7-verification .v7-verify-links{gap:8px}
.v8 .v7-verification p{font-size:14px;line-height:1.65}
/* Home text/photo should have identical top and bottom physical bounds. */
@media(min-width:641px){
 .v8.v5-home .home-service-layout{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch!important;gap:clamp(24px,4vw,60px)!important;min-height:0!important}
 .v8.v5-home .home-service-layout .service-intro{padding:0!important;max-width:none!important;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-start}
 .v8.v5-home .home-service-layout .photo-wrap{position:relative;min-height:0!important;max-height:none!important;align-self:stretch!important;height:auto!important;margin:0!important}
 .v8.v5-home .home-service-layout .photo-wrap img{position:absolute;inset:0;height:100%!important;width:100%!important;object-fit:cover;object-position:center}
 .v8.v5-home .home-service-layout .service-intro h2:first-child{margin-top:0}
}
.v8 .quick-grid article p{line-height:1.72;}
/* Acupuncture photograph: show composition, never crop/upsample beyond its available detail */
.v8-acu-photo-section{padding:8px 0 34px!important;text-align:center}
.v8-acu-photo-section img{display:block;width:100%!important;max-width:740px!important;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center!important;margin:auto}
.v8 .v4-trad.v8-balanced-pair{align-items:stretch}
.v8 .v4-trad.v8-balanced-pair article{display:flex;flex-direction:column}
.v8 .v4-trad.v8-balanced-pair article .v6-inline-resource{margin-top:auto}
/* About photo edges align with adjacent content */
@media(min-width:901px){
 .v8 .about-top .about-hero-grid{align-items:stretch!important}
 .v8 .about-top .about-hero-grid .portrait-wrap{height:auto!important;min-height:0!important;max-height:none!important;align-self:stretch!important;position:relative!important}
 .v8 .about-top .about-hero-grid .portrait-wrap img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;object-position:center 28%!important}
}
.v8 .v8-regulator-note{font-style:italic;font-size:14px;line-height:1.6}
/* Services hero wide with gradual fade into readable light text area */
.v8.v5-services .v5-hero-services .v5-hero-photo{width:100%!important;object-fit:cover;object-position:center 47%!important;transform:none!important;filter:saturate(.71) contrast(.92)!important}
.v8.v5-services .v5-hero-services:after{background:linear-gradient(90deg,rgba(252,252,250,.99) 0%,rgba(252,252,250,.97) 23%,rgba(252,252,250,.82) 44%,rgba(252,252,250,.24) 76%,rgba(252,252,250,.03) 100%)!important}
.v8 .v6-service-action-row{flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:20px!important}
.v8 .v6-service-action-row>a:first-child{order:2;text-align:right}
.v8 .v6-service-action-row>a:last-child{order:1;text-align:left}
/* first visit number directly alongside its heading, no decorative icons */
.v8 .v8-journey-row{display:flex;align-items:baseline;gap:18px}
.v8 .v8-journey-row .step-index{font-size:clamp(30px,3vw,43px)!important;line-height:1.12;min-width:56px!important;display:inline-block;flex:none}
.v8 .v8-journey-row .step-title{margin:0!important}
.v8 .journey-step{display:block!important}
.v8 .step-body{max-width:920px!important;margin-left:74px}
.v8 .v5-hero-first-visit .v5-hero-photo{object-position: 65% 50%!important}
/* insurer columns: slightly smaller type so long group-plan line stays intact on wider monitors */
@media(min-width:1100px){.v8 .insurer-columns{column-gap:35px!important}.v8 .insurer-columns li{font-size:12.1px!important;letter-spacing:-.012em;white-space:nowrap}}
/* mobile retains breathing room, wrap long lines naturally */
@media(max-width:900px){.v8 .wide-cta:not(.v6-ready-book){padding:40px 0 43px!important}.v8 .v7-verification-inner{grid-template-columns:1fr!important;gap:15px!important}.v8 .v8-journey-row .step-index{min-width:45px!important;font-size:32px!important}.v8 .step-body{margin-left:63px}.v8 .v6-service-action-row{flex-wrap:wrap!important}.v8 .insurer-columns li{white-space:normal}}
@media(max-width:640px){
 .v8 .v7-footer-legal{gap:12px!important}
 .v8.v5-home .home-service-layout .photo-wrap{position:relative;display:block;width:100%;height:270px!important;max-height:none!important}
 .v8.v5-home .home-service-layout .photo-wrap img{position:static;height:100%!important;object-fit:cover}
 .v8.v5-home .home-service-layout .service-intro{padding:20px 12px!important}
 .v8 .v8-journey-row{gap:10px;align-items:center}
 .v8 .v8-journey-row .step-index{font-size:28px!important;min-width:39px!important}
 .v8 .v8-journey-row .step-title{font-size:clamp(24px,6vw,28px)!important}
 .v8 .step-body{margin-left:0!important}
 .v8 .v6-service-action-row{flex-direction:column!important;align-items:flex-start!important;gap:14px!important}
 .v8 .v6-service-action-row>a:first-child{order:2;text-align:left}
 .v8 .v6-service-action-row>a:last-child{order:1;text-align:left}
 .v8 .v7-verification h2{font-size:27px!important}
 .v8 .v5-hero-services:after{background:linear-gradient(180deg,rgba(252,252,250,.97),rgba(252,252,250,.85) 58%,rgba(252,252,250,.56))!important}
 .v8 .v5-hero-first-visit .v5-hero-photo{object-position:60% 50%!important}
}
