body{font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--bg-body);color:var(--text-main)}h1,h2,h3,h4,h5,h6,.btn{font-family:inherit;letter-spacing:-.03em}a{color:var(--primary);text-underline-offset:3px}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.public-skip{position:fixed;top:-100px;left:16px;padding:12px 20px;background:white;z-index:3000}.public-skip:focus{top:12px}.public-header{position:sticky;top:0;background:#ffffffed;border-bottom:1px solid var(--border-color);z-index:1030}.public-header .navbar{position:static!important;width:100%;margin:0;padding:12px 0;border:0;border-radius:0;background:transparent;box-shadow:none}.public-header .navbar-brand img{width:132px;height:56px;object-fit:contain}.public-header .nav-link,.public-header .navbar-toggler{min-height:44px}.hero-section{padding:72px 0 60px}.hero-title{font-size:clamp(2.3rem,5vw,4.6rem);max-width:1000px;margin:0 auto 22px}.hero-subtitle{max-width:750px;margin:0 auto 28px}.hero-glow{display:none}.btn-primary{background:var(--primary)!important;border-color:var(--primary)!important;color:white!important}.btn{min-height:44px;white-space:normal}.text-primary{color:var(--primary)!important}.row>*{min-width:0}.card,.post-card{overflow:hidden;border:1px solid var(--border-color);box-shadow:none}.post-card:hover,.featured-card:hover{transform:none}.post-content{overflow-wrap:anywhere}.post-content img{height:auto!important}.post-content table{display:block;max-width:100%;overflow:auto}.post-content pre{overflow:auto;max-width:100%}.public-eyebrow{text-transform:uppercase;color:var(--primary);font-size:12px;font-weight:700;letter-spacing:.1em}.public-cta{padding-block:30px 60px}.public-cta>div{padding:36px;border:1px solid var(--border-color);border-radius:18px;background:white}.public-cta p{max-width:720px;color:var(--text-muted)}.public-footer{padding:56px 0 24px;border-top:1px solid var(--border-color);background:#fff}.public-footer p{color:var(--text-muted);max-width:650px}.public-socials,.public-footer-bottom nav{display:flex;gap:20px;flex-wrap:wrap}.public-footer-bottom{border-top:1px solid var(--border-color);margin-top:36px;padding-top:24px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-size:13px}.public-newsletter-row{display:flex;gap:10px}.public-newsletter-row input{min-width:0;min-height:46px}.public-consent{display:block;font-size:13px;margin-top:14px}.public-consent input{width:20px;height:20px;vertical-align:middle;margin-right:6px}.public-honeypot{position:absolute;left:-9999px}.public-form-status{margin-top:10px}.public-header .navbar-collapse{max-height:calc(100dvh - 100px);overflow:auto}.public-policy{max-width:850px;padding-block:60px}.public-policy h1{margin-bottom:24px}.public-policy p{line-height:1.85} @media(max-width:767px){.public-header .navbar{padding:10px 14px}.hero-section{padding:40px 0}.hero-title{font-size:2.4rem}.hero-subtitle{font-size:17px}.public-cta>div{padding:24px}.public-newsletter-row{flex-direction:column}.form-control,.form-select{font-size:16px}.public-footer{padding-top:36px}.public-header .navbar-collapse{padding-block:12px}.public-header .nav-link{padding:12px 0}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.publication-graphic{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:24px;background:linear-gradient(135deg,#f1e7df,#f8f4ef);color:#33261f;font-family:inherit}.publication-graphic span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--primary)}.publication-graphic strong{font-size:clamp(1.05rem,2vw,1.5rem);line-height:1.25;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.publication-graphic small{font-size:12px;color:#6c6058}.publication-graphic-hero{position:relative;min-height:280px;border-radius:18px;margin-bottom:28px}.publication-graphic-hero strong{font-size:clamp(1.7rem,4vw,2.6rem)}

.public-footer .row{--bs-gutter-x:1.5rem}.hero-title{font-weight:750;letter-spacing:-.04em}.post-content{min-width:0}.author-bio-box .flex-grow-1{min-width:0}.author-bio-box .d-flex{flex-wrap:wrap}

@media(max-width:767px){main>.container>.row.g-5{--bs-gutter-x:1.5rem}.article-main-title{overflow-wrap:anywhere}.author-bio-box{padding:20px!important}}

/* Keep secondary copy readable on the publication's light surfaces. */
:root { --text-main:#0f172a; --text-heading:#0f172a; --text-muted:#536171; --text-subtle:#64748b; --border-color:#e4ddd5; --bg-card:#fff; --bg-surface:#f4efea; }
.text-muted,.text-secondary,.form-text { color:#536171!important; }
.hero-subtitle,.card-text,.public-cta p,.public-footer p { color:#536171; }
.form-control,.form-select { background:#fff; color:#0f172a; border:1px solid #b8b0a7; }
.form-control::placeholder { color:#64748b; opacity:1; }
.publication-graphic-hero { inset:auto; width:100%; min-height:280px; padding:28px; }
.article-featured-banner { position:relative; overflow:hidden; border-radius:18px; }
.publication-graphic-hero strong { display:block; overflow:visible; }
.publication-graphic-hero span { color:#8c3b23; }
.public-header .navbar { border-radius:0!important; }

/* Consistent publication spacing without sacrificing article readability. */
body { background-image:none; }
.public-header .navbar { padding-block:8px!important; min-height:60px; }
.hero-section { padding:40px 0 32px!important; }
.hero-title { font-size:clamp(2rem,4.5vw,3.5rem); margin-bottom:16px; line-height:1.15; }
.hero-subtitle { margin-bottom:22px; line-height:1.6; }
main .py-5 { padding-block:32px!important; }
main .mb-5 { margin-bottom:28px!important; }
main .mt-5 { margin-top:28px!important; }
main .g-5 { --bs-gutter-x:28px; --bs-gutter-y:28px; }
main .g-4 { --bs-gutter-x:20px; --bs-gutter-y:20px; }
.card-body { padding:20px; }
.public-policy { padding-block:32px; }
.public-policy h1 { margin-bottom:16px; }
.public-cta { padding-block:24px 32px; }
.public-cta>div { padding:24px; }
.public-cta h2 { font-size:clamp(1.5rem,3vw,2rem); }
.public-footer { padding:32px 0 20px; }
.public-footer-bottom { margin-top:24px; padding-top:18px; gap:16px; }
.post-content { padding-block:12px; }
.post-content h2 { margin-top:32px; margin-bottom:14px; }
.post-content h3 { margin-top:26px; margin-bottom:12px; }
.publication-graphic-hero { min-height:220px; margin-bottom:0; }
@media(min-width:1200px) { .public-header>.container,main>.container,main section>.container,.public-footer>.container { max-width:min(1320px,calc(100% - 48px)); } }
@media(max-width:767px) {
 .hero-section { padding:28px 0 24px!important; }
 main .py-5 { padding-block:24px!important; }
 main .g-5 { --bs-gutter-x:20px; --bs-gutter-y:20px; }
 .public-cta>div { padding:20px; } .public-footer { padding-top:28px; }
 .publication-graphic-hero { min-height:200px; padding:20px; }
}

/* Public sections use the configured accent and existing neutral theme surfaces. */
:root { --primary-light:color-mix(in srgb,var(--primary) 8%,var(--bg-card)); --primary-border:color-mix(in srgb,var(--primary) 25%,var(--border-color)); }
.btn-primary,.btn-primary:hover,.page-item.active .page-link { color:var(--on-primary,#fff)!important; box-shadow:none!important; }
.text-danger,.text-warning,.text-info,.text-success,.text-warning-emphasis { color:var(--primary)!important; }
.bg-danger,.bg-warning,.bg-success,.bg-info { background:var(--primary)!important; color:var(--on-primary,#fff)!important; }
.bg-primary-subtle,.bg-warning-subtle,.bg-success-subtle,.bg-info-subtle { background:var(--primary-light)!important; }
.border-primary-subtle,.border-warning,.border-success,.border-info { border-color:var(--primary-border)!important; }
.article-takeaways-card,.article-direct-answer-card { background:var(--primary-light); border-color:var(--primary-border); border-left-color:var(--primary); box-shadow:none; }
.publication-graphic { background:var(--bg-surface); color:var(--text-heading); }
.publication-graphic span,.publication-graphic-hero span { color:#536171; }
.publication-graphic small { color:#536171; }
.public-header .navbar { min-height:54px; padding-block:5px!important; }
.public-header .navbar-brand img { width:120px; height:40px; max-height:40px; }
.public-header .nav-link { display:flex; align-items:center; }
.public-cta { padding-block:16px 20px; }
.public-cta-layout { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px!important; }
.public-cta-copy { min-width:0; }
.public-cta h2 { margin:5px 0 8px; font-size:clamp(1.35rem,2.4vw,1.8rem); }
.public-cta p { margin-bottom:0; }
.public-cta-layout>.btn { flex-shrink:0; }
.public-footer { padding:24px 0 16px; }
.public-footer .row { --bs-gutter-y:20px; --bs-gutter-x:24px; }
.public-footer h2 { font-size:1.2rem; margin-bottom:8px; }
.public-footer p { font-size:14px; margin-bottom:12px; }
.public-socials { gap:10px 18px; font-size:14px; }
.public-socials a,.public-footer-bottom a,.public-consent a { color:var(--text-main); text-decoration:underline; }
.public-socials a:hover,.public-footer-bottom a:hover,.public-consent a:hover { color:var(--primary); }
.public-newsletter-row .form-control { min-height:42px; padding:8px 14px; box-shadow:none; }
.public-consent { margin-top:10px; line-height:1.5; }
.public-form-status:empty { display:none; }
.public-footer-bottom { margin-top:18px; padding-top:14px; align-items:center; gap:12px; }
.public-footer-bottom p { margin:0; font-size:12px; }
.public-footer-bottom nav { gap:10px 16px; }
.public-footer-bottom .btn-link { color:var(--text-main); font-size:12px; min-height:36px; }
.article-share-footer { padding:16px!important; margin-top:20px!important; background:var(--bg-card); border-color:var(--border-color); gap:12px!important; }
.article-share-footer h5 { font-size:1.1rem; }
.article-share-footer p { font-size:14px; }
.article-share-footer .btn { min-height:38px; padding:7px 14px!important; }
.article-share-btn,.social-icon-btn { background:var(--bg-card); color:var(--text-main); border-color:var(--border-color); }
.article-share-btn:hover,.social-icon-btn:hover { background:var(--primary); border-color:var(--primary); color:var(--on-primary,#fff); }
.related-posts-section { margin-top:24px!important; padding-top:20px!important; }
.related-posts-section>div:first-child { gap:12px; margin-bottom:16px!important; }
.related-posts-section h3 { font-size:1.35rem; }
.related-posts-section .badge { background:var(--primary-light)!important; color:var(--text-main)!important; border-color:var(--primary-border)!important; }
.related-post-graphic { min-height:150px; background:var(--bg-surface); }
.related-post-graphic .publication-graphic { position:relative; inset:auto; min-height:150px; padding:16px; gap:12px; }
.related-post-graphic .publication-graphic strong { display:block; font-size:1rem; line-height:1.4; overflow:visible; }
.related-post-graphic .publication-graphic small { display:none; }
.related-posts-section .card { box-shadow:none!important; }
.related-posts-section h4 { font-size:1rem; line-height:1.45; overflow:visible; }
.related-posts-section .card-body { padding:16px!important; }
main>section.py-4.border-bottom { padding-block:12px!important; }
main>section.py-4.border-bottom .btn { min-height:34px; padding:5px 12px!important; font-size:12px; }
@media(max-width:767px) { .public-cta-layout { flex-direction:column; align-items:flex-start; gap:14px; } .public-newsletter-row { flex-direction:row; } .public-newsletter-row .btn { padding:8px 14px!important; } .related-posts-section>div:first-child { flex-wrap:wrap; } .article-share-footer>div { min-width:0; } }

.btn-outline-primary { --bs-btn-color:var(--primary); --bs-btn-border-color:var(--primary-border); --bs-btn-hover-bg:var(--primary); --bs-btn-hover-border-color:var(--primary); --bs-btn-hover-color:var(--on-primary,#fff); --bs-btn-active-bg:var(--primary); --bs-btn-active-color:var(--on-primary,#fff); }
.form-control:focus,.form-select:focus { border-color:var(--primary); box-shadow:0 0 0 3px var(--primary-light); }
.form-check-input:checked { background-color:var(--primary); border-color:var(--primary); }
.alert { color:var(--text-main); background:var(--primary-light); border-color:var(--primary-border); }
#acadify-cookie-banner { background:var(--bg-card)!important; color:var(--text-main)!important; border-color:var(--border-color)!important; box-shadow:none!important; }
#acadify-cookie-banner a { color:var(--text-main)!important; }
#acadify-cookie-banner button { background:var(--bg-card)!important; color:var(--text-main)!important; border-color:var(--primary-border)!important; }
#acadify-cookie-banner button[data-consent=allow] { background:var(--primary)!important; color:var(--on-primary,#fff)!important; }

/* Light accent colours remain decorative; text uses a readable theme colour. */
a { color:var(--primary-ink,var(--primary)); }
.text-primary,.text-warning,.text-danger,.text-info,.text-success,.category-badge { color:var(--primary-ink,var(--primary))!important; }
i.text-primary,i.text-warning,i.text-danger { color:var(--primary)!important; }
.post-content a:not(.btn):not(.article-tag-pill):not(.editorial-link),.editorial-link { color:var(--primary-ink,var(--primary))!important; }
.public-header .nav-link:hover,.public-header .nav-link.active { color:var(--primary-ink,var(--primary))!important; }

/* Theme-native companion; opens only when requested. */
.reading-buddy[hidden],.reading-buddy [hidden],[data-buddy-restore][hidden] { display:none!important; }
.reading-buddy { position:fixed; right:20px; bottom:max(16px,env(safe-area-inset-bottom)); z-index:1020; max-width:calc(100vw - 24px); }
.reading-buddy-launcher { display:flex; align-items:center; gap:8px; margin-left:auto; padding:4px 12px 4px 4px; background:var(--bg-card); color:var(--text-main); border:1px solid var(--primary-border); border-radius:16px; box-shadow:var(--shadow-sm); font-size:12px; font-weight:650; cursor:pointer; min-height:48px; }
.reading-buddy-launcher svg { width:44px; height:48px; flex-shrink:0; }
.buddy-shell { fill:var(--primary); } .buddy-face { fill:var(--text-main); } .buddy-eyes { fill:var(--bg-card); } .buddy-detail { fill:var(--primary-light); } .buddy-mark { fill:var(--primary-ink,var(--text-main)); }
.reading-buddy-launcher:hover { border-color:var(--primary); background:var(--primary-light); }
.reading-buddy-panel { width:350px; max-width:calc(100vw - 24px); max-height:calc(100dvh - 150px); overflow:auto; overscroll-behavior:contain; margin-bottom:10px; padding:18px; background:var(--bg-card); color:var(--text-main); border:1px solid var(--primary-border); border-radius:16px; box-shadow:var(--shadow-md); }
.reading-buddy-heading { display:flex; align-items:flex-start; gap:10px; justify-content:space-between; }
.reading-buddy-heading h2 { font-size:18px; line-height:1.35; margin:4px 0 10px; }
.reading-buddy-heading>button { flex-shrink:0; width:36px; height:36px; border:1px solid var(--border-color); background:var(--bg-card); color:var(--text-main); border-radius:8px; font-size:22px; cursor:pointer; }
.reading-buddy-panel p { font-size:13px; color:var(--text-muted); margin:0 0 14px; line-height:1.6; }
.reading-buddy-panel label { display:block; font-size:12px; font-weight:650; margin-bottom:6px; }
.reading-buddy-search { display:flex; gap:8px; }
.reading-buddy-search input { width:100%; min-width:0; min-height:42px; padding:8px 10px; border:1px solid var(--border-color); border-radius:8px; background:var(--bg-card); color:var(--text-main); font-size:14px; }
.reading-buddy-search .btn { flex-shrink:0; padding:8px 12px!important; font-size:12px; min-height:42px; }
.reading-buddy-actions { display:flex; flex-direction:column; gap:4px; margin-top:12px; }
.reading-buddy-actions a,.reading-buddy-actions button { display:flex; justify-content:space-between; align-items:center; text-align:left; gap:10px; min-height:42px; padding:8px 10px; border:0; border-radius:8px; background:var(--bg-body); color:var(--text-main); font-size:13px; text-decoration:none; cursor:pointer; }
.reading-buddy-actions a:hover,.reading-buddy-actions button:hover { background:var(--primary-light); }
.reading-buddy-hide { display:block; margin:12px 0 0; padding:6px 0; border:0; background:transparent; color:var(--text-muted); font-size:11px; text-decoration:underline; cursor:pointer; min-height:32px; }
body:has(#acadify-cookie-banner.show) .reading-buddy { visibility:hidden; }
@media(max-width:575px) { .reading-buddy { right:12px; bottom:max(12px,env(safe-area-inset-bottom)); } .reading-buddy-launcher { padding:4px; } .reading-buddy-launcher>span { display:none; } .reading-buddy-panel { padding:16px; } .reading-buddy-search input { font-size:16px; } }

@media(min-width:576px) { .reading-buddy-launcher svg { width:52px; height:57px; } }

/* A quiet idle loop, with a playful wave on deliberate interaction. */
.buddy-character { transform-origin:40px 80px; animation:buddy-idle 7s ease-in-out infinite; }
.buddy-eyes { transform-origin:40px 36px; animation:buddy-blink 5.6s ease-in-out infinite; }
.buddy-happy { fill:var(--bg-card); opacity:0; animation:buddy-smile 11s steps(1,end) infinite; }
.buddy-arm-right { transform-origin:62px 65px; }
@keyframes buddy-idle { 0%,55%,100% { transform:translateY(0) rotate(0); } 62% { transform:translateY(-3px) rotate(-3deg); } 70% { transform:translateY(0) rotate(2deg); } 78% { transform:translateY(-2px) rotate(0); } }
@keyframes buddy-blink { 0%,42%,48%,100% { transform:scaleY(1); } 45% { transform:scaleY(.08); } }
@keyframes buddy-smile { 0%,72%,100% { opacity:0; } 73%,88% { opacity:1; } }
@keyframes buddy-wave { 0%,100% { transform:rotate(-20deg); } 25%,75% { transform:rotate(-100deg); } 50% { transform:rotate(-65deg); } }
@keyframes buddy-excited { 0%,100% { transform:translateY(0) rotate(-2deg); } 50% { transform:translateY(-5px) rotate(2deg); } }
@media(hover:hover) { .reading-buddy-launcher:hover .buddy-character { animation:buddy-excited .65s ease-in-out infinite; } .reading-buddy-launcher:hover .buddy-arm-right { animation:buddy-wave .9s ease-in-out infinite; } .reading-buddy-launcher:hover .buddy-happy { opacity:1; animation:none; } .reading-buddy-launcher:hover .buddy-eyes { opacity:0; } }
.reading-buddy-launcher:focus-visible .buddy-happy,.reading-buddy-launcher[aria-expanded=true] .buddy-happy { opacity:1; animation:none; }
.reading-buddy-launcher:focus-visible .buddy-eyes,.reading-buddy-launcher[aria-expanded=true] .buddy-eyes { opacity:0; }
.reading-buddy-launcher[aria-expanded=true] .buddy-character { animation:none; }
.reading-buddy-motion { margin-top:12px; padding:4px 0; border:0; background:transparent; color:var(--text-muted); font-size:11px; text-decoration:underline; min-height:32px; cursor:pointer; }
.reading-buddy-hide { margin-top:0; }
.buddy-motion-paused .buddy-character,.buddy-motion-paused .buddy-eyes,.buddy-motion-paused .buddy-happy,.buddy-motion-paused .buddy-arm-right { animation:none!important; }
@media(prefers-reduced-motion:reduce) { .buddy-character,.buddy-eyes,.buddy-happy,.buddy-arm-right { animation:none!important; } .reading-buddy-motion { display:none; } }

.buddy-eyes { animation:buddy-blink 5.6s ease-in-out infinite,buddy-neutral 11s steps(1,end) infinite; }
@keyframes buddy-neutral { 0%,72%,100% { opacity:1; } 73%,88% { opacity:0; } }
.reading-buddy-launcher:focus-visible .buddy-eyes,.reading-buddy-launcher[aria-expanded=true] .buddy-eyes { animation:none; }
@media(hover:hover) { .reading-buddy-launcher:hover .buddy-eyes { animation:none; } }
@media(prefers-reduced-motion:reduce) { .buddy-eyes { animation:none!important; } }

/* Policy documents and browser feed preview share the publication's neutral surfaces. */
.policy-shell { padding-block:28px 36px; }
.policy-heading { max-width:800px; margin-bottom:24px; }
.policy-heading h1 { font-size:clamp(1.8rem,3vw,2.5rem); margin:8px 0 10px; }
.policy-heading p { color:var(--text-muted); margin:0 0 8px; }
.policy-date { font-size:13px; }
.policy-layout { display:grid; grid-template-columns:240px minmax(0,780px); gap:32px; align-items:start; }
.policy-layout aside { position:sticky; top:78px; }
.policy-nav,.policy-toc { display:flex; flex-direction:column; gap:6px; }
.policy-nav { padding:12px; background:var(--bg-card); border:1px solid var(--border-color); border-radius:12px; }
.policy-nav a { padding:10px 12px; color:var(--text-main); text-decoration:none; border-radius:6px; font-size:14px; }
.policy-nav a[aria-current] { background:var(--primary-light); font-weight:700; }
.policy-toc { padding:20px 12px; font-size:13px; gap:10px; }
.policy-toc a { color:var(--text-muted); text-decoration:none; }
.policy-toc a:hover { color:var(--text-main); text-decoration:underline; }
.policy-content { background:var(--bg-card); border:1px solid var(--border-color); border-radius:14px; padding:28px; overflow-wrap:anywhere; }
.policy-content h2 { font-size:1.2rem; margin:24px 0 10px; scroll-margin-top:80px; }
.policy-content>h2:first-child { margin-top:0; }
.policy-content p,.policy-content li { font-size:16px; line-height:1.75; color:var(--text-main); margin-bottom:16px; }
.policy-help { border-top:1px solid var(--border-color); margin-top:24px; padding-top:4px; }
.policy-help p { margin-bottom:8px; }
.feed-list { display:grid; gap:14px; max-width:960px; padding:0; list-style:none; }
.feed-list li { background:var(--bg-card); border:1px solid var(--border-color); border-radius:12px; padding:20px; }
.feed-list h2 { font-size:1.2rem; margin:0 0 8px; }
.feed-list h2 a { color:var(--text-heading); text-decoration:none; }
.feed-list p { line-height:1.6; margin:0 0 8px; }
.feed-list time { color:var(--text-muted); font-size:13px; }
.feed-actions { display:flex; gap:12px; flex-wrap:wrap; margin:16px 0 24px; }
@media(max-width:767px){.policy-layout { grid-template-columns:1fr; gap:18px; }.policy-layout aside{position:static;}.policy-nav{flex-direction:row;flex-wrap:wrap;}.policy-toc{display:none;}.policy-content{padding:20px;}.policy-shell{padding-block:24px;}}

.contact-page { padding-block:32px; }
.contact-heading { max-width:820px; margin-bottom:24px; }
.contact-heading h1 { font-size:clamp(2rem,4vw,3rem); line-height:1.15; margin:10px 0 14px; }
.contact-heading p { font-size:17px; line-height:1.65; color:var(--text-muted); margin-bottom:0; }
.contact-layout { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:24px; align-items:stretch; }
.contact-primary,.contact-brief,.contact-company-card { padding:26px; border:1px solid var(--border-color); border-radius:14px; background:var(--bg-card); }
.contact-primary { border-top:3px solid var(--primary); }
.contact-primary h2,.contact-brief h2,.contact-companies h2 { font-size:1.5rem; margin:8px 0 12px; }
.contact-primary p,.contact-brief p,.contact-company-card p { line-height:1.65; color:var(--text-muted); }
.contact-topics { display:grid; gap:10px; padding-left:20px; margin:20px 0 24px; font-size:15px; }
.contact-topics li::marker { color:var(--primary-ink); }
.contact-email { font-size:14px; margin:16px 0 0; overflow-wrap:anywhere; }
.contact-email a,.contact-brief>a,.contact-editorial>a { color:var(--text-main); text-decoration:underline; }
.contact-brief { background:var(--bg-surface); }
.contact-brief ol { display:grid; gap:16px; padding-left:24px; margin-block:20px; }
.contact-brief li { padding-left:6px; }
.contact-brief li strong,.contact-brief li span { display:block; }
.contact-brief li span { font-size:14px; line-height:1.6; color:var(--text-muted); margin-top:3px; }
.contact-note { font-size:13px; border-top:1px solid var(--border-color); padding-top:16px; }
.contact-brief>a { font-size:13px; }
.contact-companies { margin-top:28px; }
.contact-company-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-top:16px; }
.contact-company-card { display:block; color:var(--text-main); text-decoration:none; transition:border-color .2s; }
.contact-company-card:hover { color:var(--text-main); border-color:var(--primary); }
.contact-company-card h3 { font-size:1.3rem; display:flex; justify-content:space-between; margin:10px 0; }
.contact-company-card p { font-size:15px; margin-bottom:16px; }
.contact-company-action { font-size:14px; font-weight:650; }
.contact-editorial { border-top:1px solid var(--border-color); padding-top:20px; margin-top:24px; }
.contact-editorial h2 { font-size:1.1rem; margin-bottom:8px; }
.contact-editorial p { font-size:14px; color:var(--text-muted); margin-bottom:8px; }
.contact-editorial a { font-size:14px; }
.public-company-links { display:flex; flex-wrap:wrap; gap:12px 20px; margin:14px 0; font-size:14px; font-weight:650; }
.public-company-links a { color:var(--text-main); text-decoration:none; }
.public-company-links a:hover { text-decoration:underline; }
@media(max-width:767px){.contact-page{padding-block:24px;}.contact-layout,.contact-company-grid{grid-template-columns:1fr;gap:16px;}.contact-primary,.contact-brief,.contact-company-card{padding:20px;}.contact-heading p{font-size:16px;}.contact-heading{margin-bottom:20px;}.contact-primary>.btn{width:100%;}}

.public-footer-bottom nav { align-items:center; }
.public-footer-choice { appearance:none; display:inline-flex; align-items:center; min-height:32px; padding:4px 0; margin:0; background:transparent; border:0; border-radius:0; color:var(--text-main); font:inherit; font-size:13px; font-weight:500; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.public-footer-choice:hover { color:var(--primary-ink); }
.public-footer-bottom { padding-bottom:0; }
@media(max-width:767px){.public-footer-bottom{flex-direction:column;align-items:flex-start;gap:10px;}.public-footer-bottom nav{gap:6px 16px;}.public-footer-choice{min-height:44px;}}
@media(min-width:768px){body:has([data-reading-buddy]:not([hidden])) .public-footer-bottom{padding-right:180px;}}

@media(max-width:767px){body:has([data-reading-buddy]:not([hidden])) .public-footer-bottom{padding-right:80px;}}

/* Pagination must fit narrow mobile screens without widening the document. */
.pagination { flex-wrap:wrap; gap:4px; }
.pagination .page-link { min-width:40px; padding:8px 12px; }
