/* Homepage only. Keep brand order from WordPress; no dense flow or CSS reordering. */
.gp-home .gp-brand-groups { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 24px; padding: 32px 0; }
.gp-home .gp-brand-group { min-width: 0; }
.gp-home .gp-brand-group h2 { margin: 0 0 16px; color: #000; text-align: center; font-size: 24px; line-height: 1.3; }
.gp-home .gp-brand-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 0; padding: 0; list-style: none; }
.gp-home .gp-brand-group--motos .gp-brand-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.gp-home .gp-brand-item { display: flex; min-width: 0; }
.gp-home .gp-brand-link { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 8px; width: 100%; min-height: 108px; padding: 10px 6px; color: #000; background: #fff; border: 1px solid #d8d8d8; border-radius: 6px; text-align: center; text-decoration: none; }
.gp-home .gp-brand-logo { display: block; width: 64px; height: 64px; max-width: 100%; object-fit: contain; }
.gp-home .gp-brand-name { font-size: 14px; font-weight: 600; line-height: 1.35; overflow-wrap: anywhere; }
.gp-home .gp-brand-link:hover { color: #000; border-color: #000; text-decoration: underline; }
.gp-home .gp-brand-link:focus-visible, .gp-home .gp-news-card a:focus-visible { outline: 2px solid #000; outline-offset: 3px; }
.gp-home .gp-home-news { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; padding: 32px 0; }
.gp-home .gp-news-card { display: flex; flex-direction: column; min-width: 0; height: 100%; margin: 0; background: #fff; border: 1px solid #d8d8d8; border-radius: 6px; }
.gp-home .gp-news-card .post-thumbnail { margin: 0; }
.gp-home .gp-news-card .post-thumbnail a { display: block; padding: 0; }
.gp-home .gp-news-card .post-thumbnail img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; border-radius: 5px 5px 0 0; }
.gp-home .gp-news-card .entry-header { padding: 20px 20px 0; }
.gp-home .gp-news-card .entry-title { margin: 0; font-size: 21px; line-height: 1.4; overflow-wrap: anywhere; }
.gp-home .gp-news-card .entry-title a { color: #000; font: inherit; font-weight: 600; padding: 0; }
.gp-home .gp-news-card .entry-content { margin: 0; padding: 16px 20px 0; font-size: 16px; line-height: 1.65; color: #222; }
.gp-home .gp-news-card .entry-content p { margin: 0 0 16px; font-size: inherit; line-height: inherit; }
.gp-home .gp-news-card .entry-footer { margin-top: auto; padding: 0 20px 20px; }
.gp-home .gp-news-read-more { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 0; color: #000; font-size: 16px; font-weight: 600; text-decoration: underline; }
@media (max-width: 1199.98px) { .gp-home .gp-brand-groups { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 991.98px) { .gp-home .gp-home-news { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 575.98px) {
    .gp-home .gp-brand-groups { gap: 24px; padding: 24px 0; }
    .gp-home .gp-brand-grid, .gp-home .gp-brand-group--motos .gp-brand-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
    .gp-home .gp-brand-link { padding: 8px 4px; }
    .gp-home .gp-brand-logo { width: 56px; height: 56px; }
    .gp-home .gp-brand-group h2 { font-size: 23px; }
    .gp-home .gp-news-card .entry-header { padding: 16px 16px 0; }
    .gp-home .gp-news-card .entry-content { padding: 12px 16px 0; }
    .gp-home .gp-news-card .entry-footer { padding: 0 16px 16px; }
}
@media (max-width: 359.98px) {
    .gp-home .gp-brand-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .gp-home .gp-brand-group--motos .gp-brand-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
