.areaDirectoryLink{display:inline-flex;align-items:center;gap:14px;margin-top:24px;padding:15px 22px;border-radius:10px;background:#1c7bc8;color:#fff;font-weight:700;text-decoration:none}
.areaDirectoryLink:hover{background:#0052da}
.areaDirectoryHero{background:linear-gradient(120deg,#172635,#164f78)}
.areaDirectoryPage .locationTabList{grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
.areaSearch{margin:26px 0 20px;max-width:600px}
.areaSearch label{display:block;color:#253041;font-weight:700;margin-bottom:9px}
.areaSearch input{box-sizing:border-box;width:100%;font:inherit;padding:16px 18px;border:1px solid #bdcfdd;background:#fff;border-radius:10px;color:#253041}
.areaSearch p{font-size:14px;color:#526575;min-height:20px;margin-top:10px}
.locationGroup a{gap:8px}.locationGroup a b{font-weight:650;overflow-wrap:anywhere}.locationGroup a i{flex-shrink:0}.locationGroup a span{flex-shrink:0}
.areaDirectoryPage [hidden]{display:none!important}
.areaDirectoryPage :is(a,button,input):focus-visible{outline:3px solid #1c7bc8;outline-offset:4px}
@media(max-width:620px){.areaDirectoryPage .locationTabList{grid-template-columns:1fr}.areaDirectoryHero{padding-bottom:38px}.areaDirectoryPage .areaDirectoryList{padding-top:40px}.locationGroup a{min-height:48px}.locationGroup a b{font-size:14px}}

/* Center telephone actions in page content, independently of header and sticky bar. */
main section a[href^="tel:"]{display:flex;align-items:center;justify-content:center;text-align:center;width:fit-content;max-width:100%;margin-left:auto;margin-right:auto}
.heroCtas,.subHeroActions{justify-content:center}
.hero h1>em{display:block}
.heroCtas .primaryCall,.heroCtas .primaryCall:hover,.heroCtas .primaryCall:active{box-shadow:none}
/* Cover wide desktop heroes without an exposed edge in the background photo. */
@media(min-width:761px){.hero{background-size:cover,cover,cover;background-position:center,center,right 80px top 145px}}
/* The homepage has an emphasized location line; location pages use plain headings. */
@media(min-width:761px){.hero:has(h1>em){background-image:linear-gradient(to left,#172635 230px,transparent 350px),linear-gradient(90deg,#172635db 0%,#193950b8 43%,#19395045 64%,#19395008 100%),url('/assets/reinfluss/hero.webp')}}
@media(max-width:760px){.hero:has(h1>em){background-image:linear-gradient(180deg,#17263500 185px,#17263533 235px,#172635 305px),url('/assets/reinfluss/hero.webp')}.hero:has(h1>em):before{background:#03131f08}}

/* Use the same unmirrored handset as the persistent mobile call button. */
a[href^="tel:"] .fa-phone{transform:none!important}

/* Space the handset from the number in the emergency callout. */
.emergency a[href^="tel:"]{gap:10px}
@media(min-width:1024px){.emergencyCopy a[href^="tel:"]{margin-top:28px}}

/* Keep the area-directory action legible and centered on mobile. */
.areas .areaCopy a.areaDirectoryLink,.areas .areaCopy a.areaDirectoryLink span{color:#fff}
@media(max-width:620px){.areas .areaCopy a.areaDirectoryLink{display:flex;width:fit-content;max-width:100%;margin-left:auto;margin-right:auto;justify-content:center;text-align:center}}

.areaRadarGroup{display:flex;flex-direction:column;align-items:center;min-width:0}.areas .areaRadarGroup .areaDirectoryLink,.areas .areaRadarGroup .areaDirectoryLink span{color:#fff}.areaRadarGroup .areaDirectoryLink{justify-content:center;text-align:center;margin:24px auto 0;max-width:100%}

/* Remove the inherited red glow from the contact submit action. */
.largeFormSubmit,.largeFormSubmit:hover,.largeFormSubmit:active{box-shadow:none}

/* Inset the native problem selector chevron without changing select behavior. */
.heroForm select,.heroForm select:focus{-webkit-appearance:none;appearance:none;padding-right:46px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:16px 16px}

/* Center the handset glyph within its icon box beside the phone number. */
.heroCtas .primaryCall .buttonIcon.fa-phone,.headerCall .buttonIcon.fa-phone{display:inline-flex;align-items:center;justify-content:center;line-height:1;position:relative;top:1px}

/* Two clear actions on the initial cookie banner, in Reinfluss colours. */
.cookieActions .cookieAccept{background:#1c7bc8;color:#fff;border:1px solid #1c7bc8;box-shadow:none}
.cookieActions .cookieAccept:hover{background:#146bb2;border-color:#146bb2;box-shadow:none}
.cookieActions .cookieCustomize{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 14px;border:1px solid #b9cede;border-radius:9px;background:#fff;color:#253041;text-decoration:none;font-weight:700;line-height:1.35;box-shadow:none}
.cookieActions .cookieCustomize:hover{background:#edf6fd;border-color:#1c7bc8;box-shadow:none}
.cookieActions .cookieCustomize[hidden]{display:none}

/* Give cookie actions breathing room at the outside edge. */
.cookiePanel .cookieActions{margin-right:20px;min-width:0}
@media(max-width:620px){.cookiePanel .cookieActions{margin-right:8px;margin-left:8px}}

.cookiePanel .cookieActions button{min-width:0;width:100%;box-sizing:border-box}

/* Fit long consent labels inside the action column without overflow. */
.cookiePanel .cookieActions{margin:0;min-width:0}
.cookiePanel .cookieActions button{white-space:normal;overflow-wrap:anywhere;min-width:0;width:100%;box-sizing:border-box;line-height:1.4}
@media(min-width:761px){.cookiePanel{box-sizing:border-box;grid-template-columns:62px minmax(0,1fr) 220px;padding-right:24px;gap:20px}}
@media(max-width:760px){.cookiePanel .cookieActions{margin:0}}

/* A clear, neutral telephone action on the blue desktop header. */
/* Equal image columns, independent of heading and link lengths. */
.serviceStory:not(.feature)>div{min-width:0}
.serviceStory.feature li{font-size:14px;line-height:1.65}
.serviceStory:not(.feature) h3{hyphens:auto;overflow-wrap:anywhere}
.serviceStory:not(.feature) img{min-width:0;object-fit:cover;object-position:center}
.serviceStory:not(.feature) a{max-width:100%;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
.serviceStory:not(.feature) a b{flex-shrink:0}
@media(min-width:621px){.serviceStory:not(.feature){grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}}

@media(min-width:761px){
  .siteHeader .headerCall{background:#fff;color:#172635;border:1px solid #fff;box-shadow:0 3px 12px rgb(23 38 53 / 12%)}
  .siteHeader .headerCall :is(strong,span,i){color:inherit}
  .siteHeader .headerCall .buttonIcon{filter:none}
  .siteHeader .headerCall:hover{background:#f0f5f9;color:#172635;border-color:#f0f5f9}
  .siteHeader .headerCall:focus-visible{outline:3px solid #fff;outline-offset:4px}
}
