/* Topic hubs use the shared site theme. */
.hub-page .hub-skip{position:absolute;left:1rem;top:-100px;z-index:100;background:var(--sky);color:var(--bg);padding:12px 18px;border-radius:8px}
.hub-page .hub-skip:focus{top:1rem}
.hub-page a:focus-visible,.hub-page button:focus-visible{outline:3px solid var(--sky);outline-offset:5px}
.hub-page .hub-breadcrumb{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 0;color:var(--muted);font-size:.88rem}
.hub-page .hub-breadcrumb a{color:var(--sky)}
.hub-page .hub-hero{padding:20px 0 52px;background:radial-gradient(ellipse at 75% 30%,rgba(79,195,255,.1),transparent 55%)}
.hub-page .hub-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:54px;align-items:center}
.hub-page .hub-hero h1{font-size:clamp(2.7rem,5.3vw,4.7rem);line-height:1.04;letter-spacing:-.055em;margin:10px 0 20px}
.hub-page .hub-intro{font-size:1.1rem;color:var(--muted);max-width:600px}
.hub-page .hub-hero .eyebrow{margin:0}
.hub-page .hub-hero figure{margin:0;border-radius:24px;overflow:hidden;border:1px solid var(--border);background:var(--card)}
.hub-page .hub-hero figure img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hub-page .hub-hero figure.boiler-photo img{object-position:50% 55%}
.hub-page .hub-hero figcaption{font-size:.82rem;color:var(--muted);padding:12px 18px}
.hub-page .hub-byline{display:flex;align-items:center;gap:12px;margin-top:25px;font-size:.88rem;color:var(--muted)}
.hub-page .hub-byline img{width:42px;height:48px;object-fit:cover;object-position:50% 20%;border-radius:9px}
.hub-page .hub-byline strong{display:block;color:var(--text);font-weight:650}
.hub-page .hub-byline a:hover{text-decoration:underline}
.hub-page .hub-start{padding:32px 0 40px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--bg2)}
.hub-page .hub-start h2{font-size:1.45rem;letter-spacing:-.035em;margin:0 0 20px}
.hub-page .hub-routes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.hub-page .hub-route{display:flex;align-items:center;gap:16px;padding:20px;background:var(--bg);border:1px solid var(--border);border-radius:16px;transition:border-color .15s}
.hub-page .hub-route:hover{border-color:var(--sky)}
.hub-page .hub-route span{display:block;font-size:.89rem;color:var(--muted);margin-top:3px}
.hub-page .hub-route strong{font-size:1rem;line-height:1.3}
.hub-page .hub-route b{font-size:1.4rem;color:var(--sky);font-weight:500;margin-left:auto}
.hub-page .hub-layout{display:grid;grid-template-columns:205px minmax(0,1fr);gap:48px;align-items:start;padding-top:56px;padding-bottom:68px}
.hub-page .hub-nav{position:sticky;top:112px;border-left:2px solid var(--border);padding-left:18px}
.hub-page .hub-nav .eyebrow{margin:0 0 12px}
.hub-page .hub-nav a{display:block;color:var(--muted);font-size:.93rem;padding:8px 0;line-height:1.4}
.hub-page .hub-nav a:hover{color:var(--sky)}
.hub-page .hub-group{scroll-margin-top:115px;margin-bottom:48px}
.hub-page .hub-group:last-child{margin-bottom:0}
.hub-page .hub-group-heading{margin-bottom:20px}
.hub-page .hub-group-heading .eyebrow{margin:0 0 8px}
.hub-page .hub-group h2{font-size:clamp(1.75rem,3vw,2.35rem);line-height:1.13;letter-spacing:-.04em;margin:0 0 12px}
.hub-page .hub-group-heading>p:last-child{color:var(--muted);max-width:720px;margin:0}
.hub-page .hub-guides{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.hub-page .hub-guides li{min-width:0}
.hub-page .hub-guide{display:flex;height:100%;gap:14px;justify-content:space-between;border:1px solid var(--border);border-radius:16px;padding:20px;background:linear-gradient(150deg,rgba(255,255,255,.045),rgba(255,255,255,.015));transition:border-color .15s,background .15s}
.hub-page .hub-guide:hover{border-color:var(--sky);background:rgba(79,195,255,.05)}
.hub-page .hub-guide h3{font-size:1.04rem;line-height:1.35;margin:0 0 8px;letter-spacing:-.015em}
.hub-page .hub-guide p{font-size:.9rem;color:var(--muted);line-height:1.55;margin:0}
.hub-page .hub-arrow{color:var(--sky);flex-shrink:0}
.hub-page .hub-help{padding:30px;border:1px solid var(--border);border-radius:22px;background:linear-gradient(120deg,rgba(79,195,255,.1),rgba(255,91,53,.04));margin-top:50px;scroll-margin-top:115px}
.hub-page .hub-help h2{font-size:1.8rem;line-height:1.15;letter-spacing:-.04em;margin:0 0 12px}
.hub-page .hub-help p{color:var(--muted);max-width:680px}
.hub-page .hub-help .hero-actions{margin-bottom:0}
.hub-page .hub-other{border-top:1px solid var(--border);margin-top:30px;padding-top:20px;font-size:.95rem;color:var(--muted)}
.hub-page .hub-other a{color:var(--sky);text-decoration:underline;text-underline-offset:4px}
@media(min-width:901px) and (max-width:1100px){.hub-page .hub-layout{grid-template-columns:175px minmax(0,1fr);gap:28px}.hub-page .hub-hero-grid{gap:30px}}
@media(max-width:900px){.hub-page .hub-hero-grid{grid-template-columns:1fr;gap:28px}.hub-page .hub-hero figure{max-width:620px}.hub-page .hub-layout{grid-template-columns:1fr;gap:32px;padding-top:32px}.hub-page .hub-nav{position:static;border-left:0;padding:0}.hub-page .hub-nav-links{display:flex;flex-wrap:wrap;gap:8px}.hub-page .hub-nav a{border:1px solid var(--border);border-radius:8px;padding:10px 12px}.hub-page .hub-route{padding:16px}.hub-page .hub-routes{gap:10px}}
@media(max-width:600px){.hub-page .hub-hero{padding:12px 0 30px}.hub-page .hub-hero h1{font-size:2.9rem}.hub-page .hub-routes,.hub-page .hub-guides{grid-template-columns:1fr}.hub-page .hub-route{padding:16px 18px}.hub-page .hub-group{margin-bottom:36px}.hub-page .hub-guide{padding:18px}.hub-page .hub-help{padding:24px}.hub-page .hub-breadcrumb{font-size:.8rem}.hub-page .hub-start{padding:26px 0}.hub-page .hub-nav a{font-size:.87rem}.hub-page .hub-byline{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hub-page *{transition:none!important}}

.insight-hub-section{padding-top:36px;padding-bottom:12px}
.insight-hub-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.insight-hub-link{display:block;padding:26px;border:1px solid var(--border);border-radius:22px;background:var(--bg2)}
.insight-hub-link:hover{border-color:var(--sky)}
.insight-hub-link:focus-visible{outline:3px solid var(--sky);outline-offset:4px}
.insight-hub-link h2{font-size:1.65rem;letter-spacing:-.04em;line-height:1.2;margin:0 0 10px}
.insight-hub-link p{color:var(--muted);margin:0 0 12px}
.insight-hub-link span{color:var(--sky);font-weight:700}
@media(max-width:600px){.insight-hub-links{grid-template-columns:1fr}}
