/* Shared content edges; keep full-bleed backgrounds and natural text reflow. */
main .hero{padding-left:max(5vw,calc((100% - 1240px)/2))!important;padding-right:max(5vw,calc((100% - 1240px)/2))!important;column-gap:40px!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
main .hero>*{min-width:0}
main .hero>.wrap{width:100%;max-width:1240px}
main .hero h1{font-size:48px!important;line-height:1.3!important;overflow-wrap:normal;word-break:normal}
main .hero .buttons{flex-wrap:wrap}
main .hero aside h2{line-height:1.5}
main .hero aside a{white-space:normal;max-width:100%;height:auto;min-height:48px}
.crumb{padding-left:max(5vw,calc((100% - 1240px)/2))!important;padding-right:max(5vw,calc((100% - 1240px)/2))!important}
.footer-grid,.footer-bottom{max-width:100%;width:100%}
.footer-grid>*{min-width:0}
.footer-grid>div:last-child p{white-space:normal!important;overflow-wrap:anywhere}
@media(min-width:1181px){.footer-grid{grid-template-columns:1.4fr repeat(5,minmax(0,1fr))!important;gap:20px!important}}
@media(max-width:1000px){main .hero{grid-template-columns:1fr!important;min-height:0!important;gap:30px!important}main .hero h1{font-size:40px!important}main .hero>aside{width:100%}}
@media(max-width:760px){main .hero{padding-left:18px!important;padding-right:18px!important}main .hero h1{font-size:32px!important}.crumb{padding-left:18px!important;padding-right:18px!important}}
@media(min-width:761px) and (max-width:1180px){main .frow,main .service-row{min-width:0!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px}main .frow>*,main .service-row>*{min-width:0;white-space:normal!important;overflow-wrap:anywhere}.team-grid{grid-template-columns:1fr!important}.portrait b{overflow-wrap:anywhere}}
