.guide-hub { padding-block: clamp(2.5rem, 5vw, 5rem); }
.guide-hub-heading { max-width: 54rem; margin-bottom: 1.75rem; }
.guide-hub-heading h1 { scroll-margin-top: 10rem; margin: .5rem 0 1rem; font-size: clamp(2rem, 4vw, 3rem); line-height: 1.3; color: #102c46; }
.guide-hub-heading > p:last-child { font-size: 1.125rem; line-height: 1.8; color: #4e6577; }
.guide-hub-nav { display: flex; flex-wrap: wrap; gap: .65rem; margin-bottom: 3rem; }
.guide-hub-nav a { display: inline-flex; align-items: center; flex-wrap: wrap; gap: .6rem; padding: .8rem 1rem; border: 1px solid #bdcfe0; border-radius: .75rem; background: #fff; color: #123752; font-size: 1rem; font-weight: 750; text-decoration: none; }
.guide-hub-nav span { font-size: .875rem; font-weight: 500; color: #506979; }
.guide-hub-nav a:hover, .guide-hub-nav a:focus-visible { border-color: #087ac1; background: #edf7ff; }
.guide-hub-category { scroll-margin-top: 10rem; margin-block: 2.75rem; }
.guide-hub-section-heading { border-bottom: 2px solid #c6dbea; padding-bottom: 1rem; margin-bottom: 1.3rem; }
.guide-hub-section-heading h2 { display: flex; gap: .8rem; align-items: baseline; flex-wrap: wrap; color: #102c46; font-size: 1.6rem; margin: 0 0 .5rem; }
.guide-hub-section-heading small { font-size: .875rem; font-weight: 500; color: #546977; }
.guide-hub-section-heading p { margin: 0; font-size: 1rem; line-height: 1.8; color: #4e6577; }
.guide-hub-grid { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; }
.guide-hub-grid li { min-width: 0; }
.guide-hub-card { display: flex; flex-direction: column; height: 100%; padding: 1.5rem; background: #fff; border: 1px solid #d5e1ec; border-radius: 1rem; color: #142f46; text-decoration: none; overflow-wrap: anywhere; }
.guide-hub-card:hover, .guide-hub-card:focus-visible { border-color: #087ac1; box-shadow: 0 5px 16px #1237520c; }
.guide-hub-card h3 { font-size: 1.15rem; line-height: 1.6; margin: 0 0 .65rem; }
.guide-hub-card p { margin: 0 0 1.2rem; color: #4e6577; font-size: 1rem; line-height: 1.8; }
.guide-hub-read { margin-top: auto; color: #086aa8; font-weight: 700; font-size: .9375rem; }
.guide-hub-top { display: inline-block; padding: .8rem .2rem; margin-top: .5rem; color: #086aa8; font-size: .9375rem; }
.guide-hub a:focus-visible { outline: 3px solid #c68a17; outline-offset: 4px; }
.guide-hub .directory-return { line-height: 2; }
@media (max-width: 1050px) { .guide-hub-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 640px) { .guide-hub-grid { grid-template-columns: minmax(0,1fr); } .guide-hub-card { padding: 1.25rem; } .guide-hub-nav a { flex: 1 1 9rem; } .guide-hub-category { scroll-margin-top: 8rem; } }
