.hero,.homepage-section{max-width:100%}
.hero h1{font-size:var(--title-size)}
.homepage-grid,.tool-grid,.resource-grid,.feature-grid{
display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));
gap:var(--card-gap-desktop);
}
@media(max-width:1439px){
.homepage-grid,.tool-grid,.resource-grid,.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:991px){
.homepage-grid,.tool-grid,.resource-grid,.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:575px){
.homepage-grid,.tool-grid,.resource-grid,.feature-grid{grid-template-columns:1fr}
}

/* V40.48.2 responsive spacing authority: section headers stay content-driven
   when stacked, and action controls never inherit desktop copy flex sizing. */
@media(max-width:991.98px){
html body[data-wpu-public-homepage="1"] .hp30-section-head,
html body[data-wpu-public-homepage="1"] .hp27-section-head{
flex-direction:column!important;
align-items:flex-start!important;
justify-content:flex-start!important;
height:auto!important;
min-height:0!important;
gap:12px!important;
margin-bottom:16px!important;
}
html body[data-wpu-public-homepage="1"] .hp30-section-head>div:first-child,
html body[data-wpu-public-homepage="1"] .hp27-section-head>div:first-child{
flex:0 1 auto!important;
flex-basis:auto!important;
width:100%!important;
max-width:100%!important;
min-height:0!important;
}
html body[data-wpu-public-homepage="1"] .hp30-section-head>.hp27-scroll-actions,
html body[data-wpu-public-homepage="1"] .hp27-section-head>.hp27-scroll-actions{
flex:0 0 auto!important;
align-self:flex-end!important;
margin-top:0!important;
}
html body[data-wpu-public-homepage="1"] .hp30-section-head>a,
html body[data-wpu-public-homepage="1"] .hp27-section-head>a{
flex:0 0 auto!important;
align-self:flex-end!important;
margin:0!important;
}
}
@media(max-width:575.98px){
html body[data-wpu-public-homepage="1"] .hp30-section-head,
html body[data-wpu-public-homepage="1"] .hp27-section-head{
gap:10px!important;
margin-bottom:14px!important;
}
}
