.hub-banner{background:linear-gradient(135deg, var(--surface-blush), var(--surface-sand));color:var(--ink)}.hub-banner[data-theme=dark]{background:var(--bg)}.hub-banner__inner{max-width:var(--maxw);padding:clamp(2rem, 5vw, 3.5rem) var(--gutter);gap:var(--space-6);align-items:center;margin-inline:auto;display:grid}@media (min-width:900px){.hub-banner--img .hub-banner__inner{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}}.hub-banner__nav{gap:var(--space-2);margin-bottom:var(--space-5);font-family:var(--font-ui);color:var(--muted);flex-wrap:wrap;font-size:.85rem;font-weight:600;display:flex}.hub-banner__nav a{color:var(--accent-deep)}.hub-banner[data-theme=dark] .hub-banner__nav a,.hub-banner[data-theme=dark] .hub-banner__kicker{color:var(--surface-blush)}.hub-banner__nav a:hover{text-underline-offset:2px;text-decoration:underline}.hub-banner__kicker{margin-bottom:var(--space-2);font-family:var(--font-ui);letter-spacing:.06em;text-transform:uppercase;color:var(--accent-deep);font-size:.78rem;font-weight:700}.hub-banner__title{font-family:var(--font-display);font-size:var(--step-display);margin-bottom:var(--space-3);line-height:1.05}.hub-banner__lead{max-width:52ch;font-family:var(--font-ui);color:var(--muted);font-size:1.05rem;line-height:1.55}.hub-banner__media{border-radius:var(--r-lg);aspect-ratio:16/10;background:var(--surface-sand);overflow:hidden}.hub-banner__img{object-fit:cover;width:100%;height:100%;display:block}.hub__body{padding-top:var(--space-6);padding-bottom:var(--space-section)}.hub__chips{margin:var(--space-5) 0 var(--space-8)}.hub__intro,.hub__seo{max-width:68ch;font-family:var(--font-ui);color:var(--ink);font-size:1.02rem;line-height:1.7}.hub__intro{margin-bottom:var(--space-8)}.hub__seo{margin-top:var(--space-section)}.hub__intro p+p,.hub__seo p+p{margin-top:.9em}.hub__seo h2{font-size:var(--step-h2);margin:1.4em 0 .5em;line-height:1.15}.hub__seo h3{font-size:var(--step-h3);margin:1.2em 0 .4em}.hub__seo a,.hub__intro a,.hub__links a{color:var(--accent-deep);text-underline-offset:2px;text-decoration:underline}.hub__nl .article-nl{max-width:none;margin-top:var(--space-section)}.hub__links{margin-top:var(--space-8);padding:var(--space-5);border:1px solid var(--line);border-radius:var(--r-card);font-family:var(--font-ui);line-height:1.6}.blog-card__date+.blog-card__date:before,.blog-card__author+.blog-card__date:before{content:"·";margin-right:var(--space-2)}.hub-featured{gap:clamp(1.5rem,3vw,2.5rem);margin-bottom:clamp(1.5rem,3vw,2.5rem);display:grid}@media (min-width:900px){.hub-featured--popular{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}}.hub-featured__title{font-size:var(--step-h3);margin-bottom:var(--space-4)}.hub-popular{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.hub-popular__link{gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--line);color:var(--ink);align-items:flex-start;display:flex}.hub-popular__num{width:2rem;font-family:var(--font-display);color:var(--accent);flex:none;font-size:1.6rem;font-weight:800;line-height:1}.hub-popular__text{flex-direction:column;gap:.25rem;display:flex}.hub-popular__name{font-weight:700;line-height:1.3}.hub-popular__link:hover .hub-popular__name{color:var(--accent)}.hub-popular__meta{font-family:var(--font-ui);color:var(--muted);font-size:.8rem}