/* Phase 0: compact existing home assets, without replacing editorial content. */
#index #carousel-home figure{height:clamp(300px,32vw,440px);overflow:hidden}
#index #carousel-home figure>img{height:100%;width:100%;object-fit:cover}
@media(max-width:767px){
 #index #carousel-home figure{height:300px}
 #index #carousel-home .caption{max-width:calc(100% - 64px)}
 #index #carousel-home .caption .caption-title{font-size:32px;line-height:1.12;margin-bottom:14px}
 #index #carousel-home .caption .caption-subtitle{font-size:16px;margin-bottom:12px}
 #index #carousel-home .caption .caption-description{font-size:14px;line-height:1.4;margin-bottom:12px}
}

/* Full-width sections need a grid without the Bootstrap negative gutters. */
#index #homePro > .container-fluid > .row {
 margin-left:0;
 margin-right:0;
}
#index #homePro > .container-fluid > .row > [class*="col-"] {
 padding-left:0;
 padding-right:0;
}

/* The legacy CMS theme removes padding from every fluid container on these
   pages, including the footer. Keep their direct rows within those containers. */
:is(.cms-id-71,.cms-id-75,.cms-id-73,.cms-id-76,.cms-id-79,.cms-id-80) .container-fluid > .row {
 margin-left:0;
 margin-right:0;
}
:is(.cms-id-71,.cms-id-75,.cms-id-73,.cms-id-76,.cms-id-79,.cms-id-80) .container-fluid > .row > :is(.col,[class*="col-"]) {
 padding-left:0;
 padding-right:0;
}
:is(.cms-id-71,.cms-id-75,.cms-id-73,.cms-id-76,.cms-id-79,.cms-id-80) .carousel-part {
 margin-left:0;
 margin-right:0;
}
:is(.cms-id-71,.cms-id-75,.cms-id-73,.cms-id-76,.cms-id-79,.cms-id-80) #content .titre h3 {
 overflow-wrap:anywhere;
}
:is(.cms-id-71,.cms-id-75,.cms-id-73,.cms-id-76,.cms-id-79,.cms-id-80) .phone-pro-header {
 display:inline-flex;
 align-items:center;
 min-height:44px;
 white-space:nowrap;
}
@media(max-width:374px) {
 :is(.cms-id-71,.cms-id-75,.cms-id-73,.cms-id-76,.cms-id-79,.cms-id-80) #content .titre h3 { font-size:26px!important; }
}

/* Keep the carved heading readable in the two-column tablet layout. */
@media(min-width:768px) and (max-width:991px) {
 #index #homePro h3 { font-size:clamp(32px,5vw,46px)!important; }
 :is(.cms-id-71,.cms-id-75,.cms-id-73,.cms-id-76,.cms-id-79,.cms-id-80) #content .titre h3 { font-size:32px!important; }
}
