.hub-hero { min-height: 440px; }
.hub-hero .button { display: inline-flex; margin-top: 22px; }
.hub-intro h2, .hub-section h2 { color: #102d4f; font: 400 clamp(34px, 4vw, 52px)/1.16 Georgia, serif; margin: 10px 0 20px; }
.hub-lead { color: #536978; max-width: 760px; line-height: 1.8; margin: 0 0 35px; }
.hub-topic-grid, .hub-grid, .hub-expression-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 25px; }
.hub-topic, .hub-card { display: block; background: #fffdfa; border: 1px solid #19375224; padding: 30px; min-width: 0; }
.hub-topic { transition: border-color .2s, transform .2s; }
.hub-topic:hover, .hub-topic:focus-visible { border-color: #b48632; transform: translateY(-2px); }
.hub-topic span, .hub-card h3, .hub-book h3, .hub-path h3 { color: #102d4f; font: 400 26px/1.22 Georgia, serif; }
.hub-topic p, .hub-card p:not(.hub-meta), .hub-book p:not(.hub-meta), .hub-path p { color: #536978; line-height: 1.7; }
.hub-topic b, .hub-text-link, .hub-back { color: #8b652a; font-size: 13px; font-weight: 700; }
.hub-topic b, .hub-text-link { display: inline-block; margin-top: 12px; }
.hub-card h3, .hub-book h3 { margin: 12px 0; }
.hub-card h3 a:hover, .hub-book h3 a:hover, .hub-path a:hover, .hub-article a:hover { text-decoration: underline; text-underline-offset: 3px; }
.hub-meta { color: #876727; font-size: 11px; letter-spacing: .11em; text-transform: uppercase; font-weight: 800; }
.hub-cream { background: #f8f3e9; }
.hub-path { border-top: 1px solid #19375230; display: grid; grid-template-columns: .9fr 1.1fr; gap: 8%; padding: 30px 0; scroll-margin-top: 100px; }
.hub-path:last-child { border-bottom: 1px solid #19375230; }
.hub-path h3 { max-width: 410px; margin: 12px 0; }
.hub-path p { margin: 8px 0; }
.hub-path a, .hub-related a { color: #8b652a; border-bottom: 1px solid #b4863260; }
.hub-book-grid { display: grid; gap: 38px; margin: 35px 0; }
.hub-book { display: grid; grid-template-columns: 180px 1fr; gap: 38px; align-items: center; padding-bottom: 36px; border-bottom: 1px solid #19375230; }
.hub-book .book-cover { width: 180px; min-height: 260px; padding: 19px; }
.hub-book .book-cover strong { font-size: 25px; }
.hub-availability { font-weight: 700; }
.hub-expression-grid { grid-template-columns: repeat(2, 1fr); }
.hub-expression-grid a { display: flex; flex-direction: column; gap: 14px; padding: 28px; border-top: 2px solid #b48632; background: #f8f3e9; }
.hub-expression-grid strong { color: #102d4f; font: 400 27px/1.3 Georgia, serif; }
.hub-expression-grid span { color: #8b652a; font-size: 13px; }
.hub-update { background: #eef2f4; }
.hub-update > p:not(.section-kicker) { max-width: 760px; line-height: 1.8; }
.hub-update .button { display: inline-flex; margin-top: 22px; }
.hub-library-invite { background: #eef2f4; }
.hub-library-invite h2 { color: #102d4f; font: 400 clamp(34px, 4vw, 52px)/1.16 Georgia, serif; margin: 12px 0; }
.hub-library-invite p:not(.section-kicker) { color: #536978; line-height: 1.8; }
.hub-library-invite .button { display: inline-flex; margin-top: 16px; }
.hub-article.section-pad { position: relative; max-width: 1240px; margin: auto; padding: 32px 32px 80px 192px; }
.hub-article h1 { color: #102d4f; font: 400 clamp(42px, 5vw, 66px)/1.1 Georgia, serif; margin: 15px 0; }
.hub-back { position: absolute; left: 32px; top: 36px; max-width: 128px; display: inline-block; margin: 0; line-height: 1.5; }
.hub-deck { color: #536978; max-width: 780px; font-size: 19px; line-height: 1.65; }
.hub-prose { max-width: 730px; margin: 45px 0 65px; }
.hub-prose section { margin-top: 40px; }
.hub-prose h2 { color: #102d4f; font: 400 32px/1.2 Georgia, serif; margin: 0 0 18px; }
.hub-prose p { color: #354d5d; font-size: 17px; line-height: 1.9; margin: 0 0 20px; }
.hub-related { border-top: 1px solid #19375230; padding-top: 35px; }
.hub-related h2 { color: #102d4f; font: 400 35px Georgia, serif; }
.hub-related p { color: #536978; line-height: 1.8; }
.hub-sources { list-style: disc; padding-left: 24px; color: #536978; line-height: 1.9; }
.hub-sources a { color: #8b652a; text-decoration: underline; text-underline-offset: 3px; }
.hub-book-detail-grid { display: grid; grid-template-columns: 270px 1fr; gap: 7%; align-items: start; margin: 0 0 65px; }
.hub-book-detail .book-cover.large { min-height: 390px; }
.hub-book-detail h2 { color: #102d4f; font: 400 28px Georgia, serif; margin: 30px 0 15px; }
.hub-book-detail p { line-height: 1.75; }
.hub-formats { margin: 0 0 25px; border-top: 1px solid #19375230; }
.hub-formats div { display: flex; justify-content: space-between; gap: 25px; border-bottom: 1px solid #19375230; padding: 14px 0; }
.hub-formats dt { color: #102d4f; font-weight: 700; }
.hub-formats dd { color: #536978; margin: 0; text-align: right; }
.hub-book-detail .button { display: inline-flex; margin-top: 14px; }
@media (min-width: 651px) and (max-width: 1000px) { .hub-article.section-pad { padding-left: 164px; padding-right: 24px; } .hub-back { left: 24px; max-width: 116px; } .hub-book-detail-grid { grid-template-columns: 210px minmax(0, 1fr); gap: 24px; } }
@media (max-width: 900px) { .hub-topic-grid, .hub-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 650px) { .hub-topic-grid, .hub-grid, .hub-expression-grid, .hub-path, .hub-book, .hub-book-detail-grid { grid-template-columns: 1fr; } .hub-topic, .hub-card { padding: 24px; } .hub-book { gap: 20px; } .hub-book-detail .book-cover.large { max-width: 270px; } .hub-formats div { flex-direction: column; gap: 3px; } .hub-formats dd { text-align: left; } .hub-article h1 { font-size: 43px; } .hub-article.section-pad { padding: 56px 22px 64px; } .hub-article .hub-back { left: 22px; top: 16px; max-width: calc(100% - 44px); margin: 0; } }
@media (prefers-reduced-motion: reduce) { .hub-topic { transition: none; } }
