/* Comfortable touch layouts and less work during mobile scrolling. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
main img,main video{max-width:100%}
main :is(h1,h2,h3),footer a{overflow-wrap:break-word}
@supports(content-visibility:auto){
 main :is(.u17-service-grid,.home-service-grid,.featured-services,.dg-editorial,.commune-directory),.dg-brand-grid{content-visibility:auto;contain-intrinsic-size:auto 650px}
}
@media(max-width:1100px){
 input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important;max-width:100%}
 :is(.u17-hero-grid,.cv14-hero,.ar27-hero,.home-hero,.home-editorial-grid,.service-hero-grid){min-width:0}
 :is(.u17-hero-grid,.cv14-hero,.ar27-hero,.home-hero,.home-editorial-grid,.service-hero-grid)>*{min-width:0}
 :is(.u17-hero-grid,.cv14-hero,.ar27-hero){grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
 :is(.u17-hero-copy,.cv14-hero-copy,.ar27-hero-copy) h1{font-size:clamp(34px,4.5vw,48px)!important;line-height:1.12!important}
 main :is(.u17-hero-image,.cv14-hero-photo,.ar27-hero-photo){min-height:0!important;max-height:480px}
 :is(.u17-menu-panel,.cv14-mobile-menu,.af-mobile-menu,dialog){max-width:100vw;max-height:90dvh;overflow-y:auto;overscroll-behavior:contain}
 :is(header,footer) :is(button,summary),.u17-mobile-panel a{min-height:44px}
 #sponsors .marquee{animation:none!important;transform:none!important;width:100%;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
 #sponsors .marquee__item{flex:0 0 112px;scroll-snap-align:start}
 #sponsors .marquee__item img{width:104px!important;height:72px!important}
 #sponsors>div.absolute{display:none}
 #sponsors input,#sponsors label:has(input){display:none}
}
@media(max-width:900px){
 :is(.u17-hero-grid,.cv14-hero,.ar27-hero){grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
 :is(.u17-hero-copy,.cv14-hero-copy,.ar27-hero-copy) h1{font-size:clamp(32px,5.8vw,46px)!important;line-height:1.12!important}
 main :is(.u17-hero-image,.cv14-hero-photo,.ar27-hero-photo){height:auto!important;min-height:0!important;aspect-ratio:16/10;max-height:420px}
 main :is(.u17-hero-image,.cv14-hero-photo,.ar27-hero-photo)>img{width:100%!important;height:100%!important;object-fit:cover}
 .u17-home-hero{padding-block:28px!important}
 .u17-hero-copy p{max-width:66ch}
 :is(.u17-service-grid,.cv14-family-grid,.ar27-card-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .dg-brand-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .dg-footer-top,.dg-footer-nav{min-width:0}
}
@media(max-width:540px){
 :is(.u17-service-grid,.cv14-family-grid,.ar27-card-grid){grid-template-columns:minmax(0,1fr)!important}
 :is(.u17-hero-copy,.cv14-hero-copy,.ar27-hero-copy) h1{font-size:clamp(30px,8.4vw,40px)!important}
 main :is(.u17-hero-image,.cv14-hero-photo,.ar27-hero-photo){aspect-ratio:4/3;max-height:310px}
 main :is(.u17-hero-copy,.cv14-hero-copy,.ar27-hero-copy) p{font-size:16px!important;line-height:1.65!important}
 footer :is(a,summary){overflow-wrap:anywhere}
 .dg-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .dg-brand-family .dg-brand-tile{min-height:115px!important}
}
@media(prefers-reduced-motion:reduce),(pointer:coarse){
 :is(.marquee,.marquee-track,.alp-falcon,.falcon-flight,[class*="falcon-flight"]){animation:none!important;transform:none!important}
 :is(.u17-service-photo,.cv14-family-photo,.ar27-card-photo) img{transition:none!important}
}
