.guide-hub-refined .catalogue-intro { max-width:1240px; }
.guide-hub-refined .catalogue-intro p:not(.eyebrow) { max-width:780px; }
.hub-topics { display:flex; flex-wrap:wrap; gap:8px 28px; padding-block:16px; border-block:1px solid var(--line); }
.hub-topics a { padding-block:10px; font-size:14px; font-weight:600; text-underline-offset:7px; }
.hub-topics a:hover,.hub-topics a[aria-current] { color:var(--red); text-decoration:underline; }
.hub-library { padding-block:36px 60px; }
.hub-section-heading { display:flex; align-items:baseline; justify-content:space-between; gap:20px; margin-bottom:28px; }
.hub-section-heading h2 { font-size:28px; }
.hub-section-heading span { font-size:13px; color:var(--muted); white-space:nowrap; }
.hub-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px 28px; }
.hub-article { min-width:0; border-bottom:1px solid var(--line); padding-bottom:24px; }
.hub-image { display:block; aspect-ratio:1; margin-bottom:20px; }
.hub-image img { display:block; width:100%; height:100%; object-fit:contain; }
.hub-article h3 { font-size:21px; line-height:1.35; margin-bottom:12px; }
.hub-article h3 a:hover { color:var(--red); text-decoration:underline; text-underline-offset:4px; }
.hub-article p { font-size:14px; margin-bottom:16px; }
.hub-article .text-link { font-size:14px; text-decoration:underline; text-underline-offset:5px; min-height:36px; align-items:center; }
.hub-advice { display:grid; grid-template-columns:1fr 1fr; gap:64px; padding-block:44px; border-top:1px solid var(--line); }
.hub-advice h2 { font-size:30px; }
.hub-links { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:20px; }
.hub-links a { font-size:14px; text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
.hub-more { padding-bottom:48px; }
.hub-more h2 { font-size:24px; }
.hub-final-cta h2 { max-width:650px; }
.hub-final-cta .button { flex-shrink:0; }
@media(max-width:1000px) { .hub-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:560px) {
 .hub-grid { grid-template-columns:1fr; gap:32px; }
 .hub-advice { grid-template-columns:1fr; gap:20px; }
 .hub-topics { gap:4px 20px; }
 .hub-library { padding-block:28px 40px; }
 .hub-section-heading h2 { font-size:24px; }
 .hub-section-heading { align-items:flex-start; }
 .hub-advice h2 { font-size:28px; }
}
