/* Site-wide title sizing, 18 October 2026.
   Full-width copy scales with its photograph instead of stopping at 530/58px.
   Split-layout titles scale with their own column, not the browser width. */
body.experience-v09 h1{word-break:normal;overflow-wrap:break-word;text-wrap:wrap;text-wrap:pretty}
body.experience-v09 .hero>div:first-child{min-width:0;container-type:inline-size}
body.experience-v09 .hero h1{max-width:100%;font-size:clamp(2.375rem,4.2vw,5.25rem)!important;line-height:1.06!important}
body.experience-v09 .service-hero h1 em{display:block}
@supports(font-size:1cqw){
 body.experience-v09 .hero h1{font-size:clamp(2.375rem,11cqw,5.25rem)!important}
}
/* The homepage has a full-width two-column composition rather than an overlay. */
body.experience-v09 .l09-hero-copy{min-width:0;container-type:inline-size;max-width:none;margin-left:0}
body.experience-v09 .l09-home-hero h1{max-width:none;font-size:clamp(2.5rem,4.6vw,8.25rem);line-height:1.04}
@supports(font-size:1cqw){
 body.experience-v09 .l09-home-hero h1{font-size:clamp(2.5rem,12cqw,8.25rem)}
 body.experience-v09 .l09-hero-copy>p{font-size:clamp(1rem,2.7cqw,1.5rem)}
}
body.experience-v09 .hub-intro h1,
body.experience-v09 .comparison-hub h1{font-size:clamp(2.5rem,5vw,6rem);line-height:1.05}
body.experience-v09 .legal h1{font-size:clamp(2.25rem,4.5vw,4.5rem);line-height:1.1}
/* Every full-width hero uses proportional typography and generous usable width. */
body.experience-v09.full-width-page .service-hero-copy h1{font-size:clamp(2.375rem,5.5vw,5.5rem);line-height:1.04}
body.experience-v09.full-width-page .service-hero-copy .intro{max-width:none}
@media(min-width:1280px){
 body.experience-v09.full-width-page .full-width-content{width:92%;max-width:none;margin-inline:4%;padding-block:4vw 5vw}
 body.experience-v09.full-width-page .service-hero-copy{width:35vw;max-width:none}
 body.experience-v09.full-width-page .service-hero-copy h1{font-size:max(2.5rem,4vw);margin-block:0 1.6vw;max-width:none;line-height:1.04}
 body.experience-v09.full-width-page .service-hero-copy .h1-service-label{font-size:max(.8125rem,.85vw);line-height:1.45;margin-bottom:1.1vw}
 body.experience-v09.full-width-page .service-hero-copy .intro{font-size:max(1rem,1.17vw);line-height:1.55;margin-bottom:1.5vw}
 body.experience-v09.full-width-page .service-hero-copy .actions{gap:.8vw;margin-top:1.6vw}
 body.experience-v09.full-width-page .service-hero-copy .actions a{font-size:max(.8125rem,.82vw)!important;line-height:1.4!important;padding:max(.875rem,.85vw) max(1.25rem,1.3vw)!important;min-height:44px}
 body.experience-v09.full-width-page .service-hero-copy .hero-next-step{font-size:max(.8125rem,.82vw)!important;line-height:1.55;max-width:none;margin-top:1vw}
 body.experience-v09.full-width-page .service-hero-copy .hero-coverage{font-size:max(.75rem,.76vw);margin-top:1.45vw}
 /* These compositions have exact clear-wall boundaries. Copy ends at x=39%,
    before the wall art (x=40%), sofa (x=43%) and every person. */
 body.experience-v09.full-width-page.bright-cleaning-page .full-width-content,
 body.experience-v09.full-width-page[data-service="plumbing-and-boilers"] .full-width-content{inset-inline:4%;width:auto;margin-inline:0}
}
@media(max-width:1279px){
 body.experience-v09.full-width-page.bright-cleaning-page .service-hero-copy,
 body.experience-v09.full-width-page[data-service="plumbing-and-boilers"] .service-hero-copy{max-width:100%;width:100%}
 body.experience-v09.full-width-page.bright-cleaning-page .service-hero-copy h1,
 body.experience-v09.full-width-page[data-service="plumbing-and-boilers"] .service-hero-copy h1{font-size:clamp(2.375rem,5.5vw,4.75rem)}
}
@media(max-width:767px){
 body.experience-v09 .hero h1{font-size:clamp(2.25rem,8.5vw,3.5rem)!important}
 body.experience-v09 .l09-home-hero h1,
 body.experience-v09.full-width-page .service-hero-copy h1{font-size:clamp(2.25rem,8.5vw,3.5rem)}
 body.experience-v09.full-width-page .service-hero-copy .actions{gap:12px}
}
