/* Shared public identity: the React chance meter and server-rendered pages use
   one palette and one set of editorial layouts. The admin layout is separate. */
.public-site {
    --bg: #f4f1e9;
    --bg-deep: #e9ece2;
    --bg-soft: #eef0e7;
    --panel: #fffefa;
    --panel-2: #f4f5ee;
    --panel-3: #e6eadf;
    --text: #182a31;
    --muted: #5a6968;
    --muted-2: #65716e;
    --gold: #b1553f;
    --gold-soft: #984732;
    --line: #d9ddd4;
    --line-strong: #bdc8bd;
    --green: #41735c;
    --red: #b1553f;
    --amber: #896a3e;
    --orange: #a76b43;
    --blue: #456b78;
    --radius: 6px;
    --radius-sm: 4px;
    --shadow: 0 8px 28px rgba(24,42,49,.06);
    background: var(--bg);
    color: var(--text);
    color-scheme: light;
}
.public-site::before { display: none; }
.public-site ::selection { background: #e9c4b2; color: #182a31; }
.public-site :focus-visible { outline: 2px solid #b1553f; outline-offset: 4px; }
.public-site .container { width: min(1200px, calc(100% - 48px)); }
.public-site :is(.site-header,.site-footer,.topline) {
    --text: #f8faf6;
    --muted: #a7b4b5;
    --muted-2: #97a5a7;
    --gold: #d7ac91;
    --gold-soft: #e4c0a9;
    --line: rgba(190,207,200,.15);
    --line-strong: rgba(215,172,145,.35);
    color: var(--text);
}
.public-site .topline { background: #0d1922; }
.public-site .site-header { background: #131f29; border-color: rgba(255,255,255,.08); }
.public-site .brand-mark { border-radius: 6px; box-shadow: none; }
.public-site .main-nav > a { border-radius: 4px; }
.public-site .main-nav > a.is-active::after { display: none; }
.public-site .nav-cta { border-radius: 4px; }
.public-site .mobile-nav { background: #131f29; }
.public-site .site-footer { background: #13252a; padding-top: 46px; }
.public-site .footer-col h3 { font-family: Inter,Arial,sans-serif; font-weight: 700; }
.public-site .footer-brand p { font-size: 12px; }
.public-site .footer-col a { font-size: 12px; }

.public-site .site-shell :is(h1,h2,h3) { font-weight: 400; }
.public-site .eyebrow { color: var(--gold); font-size: 11px; font-weight: 750; letter-spacing: .13em; text-transform: uppercase; }
.public-site .live-dot { background: #b1553f; }
.public-site .mini-label { color: var(--muted); font-size: 11px; letter-spacing: .07em; }
.public-site .text-gradient { background: none; color: var(--gold); -webkit-text-fill-color: currentColor; font-style: italic; }
.public-site .page-hero { padding: 68px 0 34px; border-color: var(--line); }
.public-site .page-hero h1 { font-size: clamp(44px,5vw,72px); line-height: 1.07; letter-spacing: -.045em; margin: 17px 0 23px; max-width: 1000px; }
.public-site .page-lede { max-width: 800px; font-size: 17px; line-height: 1.75; color: #52615f; }
.public-site .page-hero-meta { margin-top: 24px; color: var(--muted); font-size: 12px; }
.public-site #main > .container:last-child { margin-bottom: 76px; }
.public-site .section-head h2,
.public-site .content-section h2 { font-size: 32px; line-height: 1.18; margin: 8px 0 18px; }
.public-site .section-head p { color: var(--muted); font-size: 14px; }
.public-site .panel { background: var(--panel); border: 1px solid var(--line); border-radius: 6px; box-shadow: var(--shadow); padding: 26px; }
.public-site .panel-head h2 { font-size: 28px; line-height: 1.25; }
.public-site .panel-head p { color: var(--muted); font-size: 13px; }
.public-site .panel-badge { color: #586d5f; border-color: #d3ded1; background: #f0f3ea; border-radius: 4px; font-size: 10px; letter-spacing: .02em; }
.public-site .btn { min-height: 45px; border-radius: 4px; padding: 11px 17px; font-size: 13px; font-weight: 700; box-shadow: none; }
.public-site .btn-gold { color: #fffefa; background: #182a31; border-color: #182a31; }
.public-site .btn-gold:hover { color: #fffefa; background: #29464b; border-color: #29464b; box-shadow: none; }
.public-site .btn-ghost { color: var(--text); background: transparent; border-color: #aab6ac; }
.public-site .btn-ghost:hover { color: var(--text); background: #e8ede2; border-color: #84998d; }
.public-site .btn-sm { min-height: 40px; padding: 8px 13px; font-size: 12px; }
.public-site .btn-xs { min-height: 32px; padding: 6px 9px; font-size: 11px; }
.public-site :is(.link-arrow,.news-actions a,.cabinet-source,.breadcrumbs a) { color: var(--gold-soft); }
.public-site :is(.link-arrow,.news-actions a,.cabinet-source):hover { color: #713827; }
.public-site .status-chip { border-radius: 4px; letter-spacing: .02em; }
.public-site .status-chip.is-live { color: #3d6951; background: #edf3e8; border-color: #cddccb; }
.public-site .status-chip.is-neutral { color: #52615f; background: #f0f1ea; border-color: #d9ddd4; }
.public-site .status-chip.is-risk { color: #974c36; background: #fbefe7; border-color: #e4c3b1; }
.public-site .status-chip.is-muted { color: #62706b; background: #f4f4ed; border-color: #d9ddd4; }
.public-site .empty-panel { color: var(--muted); background: #fffefa; border: 1px solid var(--line); border-radius: 6px; }
.public-site .alert { border-radius: 4px; background: #fffefa; color: var(--text); }
.public-site .alert-error { border-color: #ddb3a3; background: #fbede7; }
.public-site .alert-success { border-color: #c3d5bf; background: #edf4e7; }

/* Long reads use a horizontal contents strip and a full-width reading column. */
.public-site .content-layout { grid-template-columns: minmax(0,1fr); gap: 34px; padding-top: 28px; }
.public-site .content-toc { position: static; display: flex; flex-direction: row; flex-wrap: wrap; gap: 8px; padding: 0 0 25px; border-left: 0; border-bottom: 1px solid var(--line); }
.public-site .content-toc > .mini-label { width: 100%; margin-bottom: 3px; }
.public-site .content-toc a { display: inline-block; padding: 7px 11px; color: #4f6058; background: #e8ece1; border: 1px solid #d5ddcf; border-radius: 4px; font-size: 12px; }
.public-site .content-toc a:hover { color: #fffefa; background: #29464b; border-color: #29464b; }
.public-site .content-body { max-width: none; }
.public-site .content-section { padding: 38px 0; scroll-margin-top: 110px; }
.public-site .content-section > p { max-width: 820px; }
.public-site .content-section p { color: #52615f; font-size: 15px; line-height: 1.8; }
.public-site .content-section a { color: var(--gold-soft); }
.public-site :is(.bullet-list li,.check-list li) { color: #52615f; font-size: 14px; line-height: 1.75; }
.public-site .bullet-list { max-width: 850px; gap: 13px; }
.public-site .two-col-text { gap: 40px; }
.public-site :is(.formula-card,.worked-example,.method-factor,.source-card,.value-card,.position-card,.step,.hash-box,.api-link),
.public-site .calibration-stats > div { background: var(--panel); border: 1px solid var(--line); border-radius: 6px; padding: 22px; }
.public-site .formula-card { background: #21383b; color: #fffefa; border-color: #21383b; }
.public-site .formula-card .mini-label { color: #c8d3ca; }
.public-site .formula-card code { color: #f2d3bd; font-size: 13px; }
.public-site .formula-legend { gap: 20px; }
.public-site .formula-legend :is(dt,dd) { font-size: 13px; }
.public-site .worked-grid > div { background: #f1f3eb; border-radius: 4px; padding: 15px; }
.public-site .worked-grid strong { font-family: Georgia,serif; font-size: 30px; font-weight: 400; }
.public-site .worked-grid strong[style] { color: #b1553f !important; }
.public-site .method-factor-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.public-site .method-factor-head h3 { font-family: Inter,Arial,sans-serif; font-size: 15px; font-weight: 750; }
.public-site .method-factor-head > strong { color: #b1553f !important; font-size: 26px; font-family: Georgia,serif; font-weight: 400; }
.public-site .method-factor .factor-icon { background: #f4f1e9 !important; border-color: #deded5 !important; color: #8b604a !important; border-radius: 4px; }
.public-site .method-factor p { font-size: 13px; line-height: 1.65; }
.public-site .method-factor .factor-bar { background: #e3e8dd; height: 5px; }
.public-site .method-factor .factor-bar > span { background: #a38363 !important; }
.public-site .method-factor-meta { font-size: 11px; gap: 8px 20px; }
.public-site .method-note { font-size: 12px !important; }
.public-site .calibration-stats span { font-size: 11px; }
.public-site .calibration-stats strong { font-family: Georgia,serif; font-size: 25px; font-weight: 400; margin-top: 8px; }
.public-site .callout { background: #e8ecdf; border-left-color: #668478; border-radius: 0 4px 4px 0; padding: 22px; }
.public-site .callout p { font-size: 14px; }
.public-site .source-card h3 { font-size: 23px; line-height: 1.3; }
.public-site .source-card p { font-size: 13px; }
.public-site .source-list li { font-size: 12px; flex-wrap: wrap; }
.public-site .hash-box { background: #e9ece1; }
.public-site .hash-box code { font-size: 13px; color: #465c51; }
.public-site .api-link span { font-size: 14px; }
.public-site .api-link code { font-size: 12px; overflow-wrap: anywhere; }
.public-site .table-wrap { border-radius: 6px; background: #fffefa; }
.public-site .data-table { font-size: 13px; }
.public-site .data-table th { background: #eef1e7; font-size: 10px; color: #52645a; }
.public-site .data-table caption { font-size: 12px; }
.public-site .faq-item { padding: 20px 0; }
.public-site .faq-item summary { color: var(--text); font-size: 16px; }
.public-site .faq-item p { max-width: 850px; }
.public-site .content-cta { background: #21383b; border-color: #21383b; color: #fffefa; border-radius: 4px; padding: 32px; }
.public-site .content-cta .eyebrow { color: #ddbaa6; }
.public-site .content-cta h2 { color: #fffefa; font-size: 28px; }
.public-site .content-cta p { color: #ced8d2; font-size: 14px; }
.public-site .content-cta .btn-gold { background: #fffefa; color: #182a31; border-color: #fffefa; }
.public-site .content-cta .btn-ghost { color: #fffefa; border-color: #789087; }
.public-site .content-cta .btn-ghost:hover { background: #304c4d; }

/* News cards keep the sources prominent; contextual blocks sit below the feed. */
.public-site :is(.news-page-layout,.article-layout,.advertise-layout) { display: flex; flex-direction: column; gap: 32px; padding-top: 30px; }
.public-site :is(.news-page-main,.article-main,.advertise-main) { width: 100%; }
.public-site :is(.news-page-side,.article-side,.advertise-side) { width: 100%; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.public-site :is(.news-page-side,.article-side,.advertise-side) > .ad-sidebar:empty { display: none; }
.public-site .filter-bar { margin: 0 0 26px; gap: 8px; }
.public-site .filter-chip { color: #536559; background: #e9ede2; border-color: #d5ddcf; border-radius: 4px; padding: 8px 12px; font-size: 11px; }
.public-site .filter-chip:hover { color: #182a31; border-color: #8a9d8e; }
.public-site .filter-chip.is-active { background: #182a31; border-color: #182a31; color: #fffefa; }
.public-site .news-list--archive { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 36px; border-top: 1px solid #cbd2c7; }
.public-site .news-list--archive .ad-in-news { grid-column: 1 / -1; }
.public-site .news-card { grid-template-columns: 44px minmax(0,1fr); gap: 15px; border-color: var(--line); }
.public-site .news-list--archive .news-card { padding: 25px 0; border-bottom: 1px solid var(--line); }
.public-site .news-date { width: 44px; height: auto; align-self: start; background: transparent; border: 0; border-radius: 0; padding-top: 4px; }
.public-site .news-date strong { font-family: Georgia,serif; font-size: 30px; font-weight: 400; }
.public-site .news-date span { font-size: 10px; color: #9b503b; }
.public-site .source-badge { color: #8e4c37; background: transparent; border: 0; padding-left: 0; font-size: 11px; }
.public-site .label-fact { color: #41735c; background: #eef3e8; border-color: #d1ddc9; border-radius: 3px; font-size: 9px; }
.public-site .label-model { color: #9b503b; background: #faf0e8; border-color: #e1ccbc; border-radius: 3px; }
.public-site .news-meta { color: #65716e; font-size: 10px; }
.public-site .news-body h3 { font-size: 24px; line-height: 1.25; margin: 10px 0; }
.public-site .news-body p { font-size: 13px; line-height: 1.65; }
.public-site .tag { color: #5c6b61; border-color: #d9dfd1; background: #eef1e7; border-radius: 3px; font-size: 10px; }
.public-site .news-actions { gap: 16px; margin-top: 15px; }
.public-site .news-actions a { font-size: 11px; }
.public-site .page-link { height: 39px; min-width: 39px; background: #fffefa; color: #536559; border-radius: 4px; }
.public-site .page-link:hover { color: #182a31; border-color: #8a9d8e; }
.public-site .page-link.is-active { background: #182a31; border-color: #182a31; color: #fffefa; }
.public-site .explain-panel h2 { font-size: 27px; margin: 9px 0 14px; }
.public-site .explain-panel p { font-size: 13px; line-height: 1.75; }
.public-site .breadcrumbs { padding-top: 30px; font-size: 11px; }
.public-site .article-header { padding-top: 12px; padding-bottom: 34px; }
.public-site .article-header h1 { font-size: clamp(36px,4.3vw,61px); line-height: 1.12; max-width: 1020px; margin: 18px 0 24px; }
.public-site .article-lede { max-width: 900px; font-size: 18px; line-height: 1.8; color: #52615f; }
.public-site .article-section { padding: 35px 0; }
.public-site .article-section h2 { font-size: 31px; }
.public-site .article-disclaimer { color: #62716b; font-size: 13px; line-height: 1.75; max-width: 900px; }
.public-site .impact-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.public-site .impact-row { background: #fffefa; border-color: var(--line); border-radius: 6px; padding: 22px; }
.public-site .impact-copy p { font-size: 13px; line-height: 1.7; }
.public-site .impact-value.is-risk-up { color: #a8513c; }
.public-site .impact-value.is-risk-down { color: #41735c; }
.public-site .article-source-box { background: #e8ece1; border-radius: 4px; padding: 24px; }
.public-site .article-source-box strong { font-size: 18px; }
.public-site .news-list--compact { max-width: 950px; }
.public-site .news-list--compact .news-body h3 { font-size: 23px; }
.public-site .side-meter strong { color: #b1553f; font-family: Georgia,serif; font-weight: 400; }

/* Data, forms and auxiliary pages share the same quiet card treatment. */
.public-site .stats-band { border-radius: 6px; background: #fffefa; margin-top: 26px; }
.public-site .stats-band > div { padding: 22px 17px; }
.public-site .stats-band span { font-size: 10px; letter-spacing: .04em; text-transform: none; }
.public-site .stats-band strong { font-family: Georgia,serif; font-size: 27px; font-weight: 400; margin: 9px 0; }
.public-site .stats-band small { font-size: 10px; }
.public-site .history-chart-panel { margin-top: 30px; }
.public-site .chart-footnote { color: var(--muted); font-size: 12px; }
.public-site .chart-wrap--calibration { background: #fffefa; border: 1px solid var(--line); border-radius: 6px; padding: 20px; }
.public-site .history-list-section { padding-top: 40px; }
.public-site .cabinet-timeline { gap: 10px; }
.public-site .timeline-decade { margin-top: 25px; }
.public-site .timeline-decade span { font-family: Georgia,serif; font-size: 26px; font-weight: 400; letter-spacing: -.02em; }
.public-site .cabinet-card { padding: 24px; background: #fffefa; border-radius: 6px; }
.public-site .cabinet-card.is-current { background: #e9ede1; border-color: #9db09d; }
.public-site .cabinet-card:hover { border-color: #9db09d; }
.public-site .cabinet-card-title h3 { font-size: 25px; }
.public-site .cabinet-year { font-size: 12px; }
.public-site .cabinet-pm { font-size: 12px; }
.public-site .party-chips span { color: #586b5d; background: #f0f3ea; border-color: #d3ddcd; border-radius: 3px; font-size: 11px; }
.public-site .cabinet-facts { margin-top: 20px; }
.public-site .cabinet-facts dt { font-size: 10px; }
.public-site .cabinet-facts dd { font-size: 13px; }
.public-site .cabinet-reason { font-size: 13px; line-height: 1.7; }
.public-site .cabinet-source { font-size: 12px; }
.public-site .value-card h3 { font-size: 24px; margin: 3px 0 9px; }
.public-site .value-card p { font-size: 13px; line-height: 1.75; }
.public-site .value-icon { color: #a65d43; background: #f5ede4; border-color: #e7d8c6; border-radius: 4px; }
.public-site .position-card h3 { font-size: 21px; }
.public-site .position-card p { font-size: 13px; }
.public-site .position-meta { font-size: 11px; }
.public-site .device-chip { font-size: 10px; }
.public-site .step h3 { font-size: 21px; }
.public-site .step p { font-size: 12px; }
.public-site .contact-layout { grid-template-columns: minmax(0,1fr); padding-top: 30px; gap: 25px; }
.public-site .contact-side { display: block; }
.public-site .contact-side .explain-panel { background: #e8ece1; }
.public-site .form-card { background: #fffefa; border: 1px solid var(--line); border-radius: 6px; padding: 30px; }
.public-site .form-card .panel-head { margin-bottom: 23px; }
.public-site .field { gap: 7px; margin-bottom: 18px; }
.public-site .field > span { font-size: 12px; font-weight: 700; color: #354c47; }
.public-site .field :is(input,textarea,select) { background: #fcfcf6; color: #182a31; border-color: #cbd6c7; border-radius: 4px; padding: 13px; font-size: 14px; }
.public-site .field :is(input,textarea,select):focus { border-color: #8ca18d; box-shadow: 0 0 0 3px rgba(102,132,120,.1); }
.public-site .field small,.public-site .form-note { font-size: 11px; color: #62716b; }
.public-site .poll-page-grid { grid-template-columns: minmax(0,1fr); padding-top: 30px; gap: 24px; }
.public-site .poll-page-card { display: grid; grid-template-columns: minmax(0,1fr) 260px; gap: 0 40px; }
.public-site .poll-page-card > :not(.poll-chart-wrap) { grid-column: 1; }
.public-site .poll-page-card .poll-chart-wrap { grid-column: 2; grid-row: 1 / 6; align-self: center; width: 100%; }
.public-site .poll-side { grid-template-columns: repeat(2,minmax(0,1fr)); }
.public-site .poll-side > .ad-sidebar:empty { display: none; }
.public-site .poll-button { background: #fffefa; border-radius: 4px; padding: 20px; }
.public-site .poll-yes { border-color: #d8b7a6; }
.public-site .poll-yes span { color: #a8513c; }
.public-site .poll-no { border-color: #bed0b9; }
.public-site .poll-no span { color: #41735c; }
.public-site .poll-bar { background: #e6eadf; }
.public-site .poll-bar-yes { background: #b1553f; }
.public-site .poll-bar-no { background: #668478; }
.public-site .poll-disclaimer { font-size: 12px; }
.public-site .compare-rows { border-radius: 4px; background: #f0f3e9; }
.public-site .poll-side .panel h2 { font-size: 28px; margin: 8px 0 15px; }
.public-site .poll-side .panel > p { color: #52615f; font-size: 14px; line-height: 1.75; }
.public-site .ad-slot { background: #e9ede1; border-color: #d4ddce; border-radius: 4px; }
.public-site .ad-label { color: #647468; }
.public-site .error-card { background: #fffefa; border-color: var(--line); box-shadow: var(--shadow); border-radius: 6px; }
.public-site .error-code { color: #b1553f; -webkit-text-fill-color: currentColor; background: none; }
.public-site .error-card p { color: #52615f; }
.public-site .notice-card { background: #fffefa; border: 1px solid var(--line); border-top: 3px solid #668478; border-radius: 4px; padding: 32px; }
.public-site .notice-card.is-error { border-top-color: #b1553f; }

.public-site .consent-banner { background: #fffefa; border: 1px solid #cdd6c9; border-radius: 6px; box-shadow: 0 8px 45px rgba(24,42,49,.16); color: #182a31; backdrop-filter: none; }
.public-site .consent-modal-card { background: #fffefa; border-radius: 6px; }
.public-site .toast { background: #21383b; color: #fffefa; border-color: #21383b; border-radius: 4px; }

@media (max-width: 980px) {
    .public-site .source-grid { grid-template-columns: minmax(0,1fr); }
    .public-site .stats-band { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .public-site .content-cta { align-items: flex-start; flex-direction: column; }
    .public-site .poll-page-card { display: block; }
    .public-site .poll-page-card .poll-chart-wrap { max-width: 330px; margin: 22px auto 0; }
}
@media (max-width: 650px) {
    .public-site .container { width: calc(100% - 28px); }
    .public-site .page-hero { padding: 42px 0 25px; }
    .public-site .page-hero h1 { font-size: 44px; margin-top: 14px; }
    .public-site .page-lede { font-size: 15px; line-height: 1.75; }
    .public-site .page-hero-meta { font-size: 11px; gap: 10px; }
    .public-site :is(.panel,.form-card,.source-card,.value-card,.position-card,.step,.method-factor) { padding: 21px; }
    .public-site .content-toc { gap: 6px; }
    .public-site .content-toc a { font-size: 11px; padding: 6px 9px; }
    .public-site .content-section { padding: 30px 0; }
    .public-site .content-section h2,.public-site .section-head h2 { font-size: 29px; }
    .public-site .content-section p { font-size: 14px; }
    .public-site :is(.method-factor-list,.formula-grid,.two-col-text,.api-links,.value-grid,.position-grid,.steps-grid,.impact-list,.news-list--archive,.news-page-side,.article-side,.advertise-side,.poll-side) { grid-template-columns: minmax(0,1fr); }
    .public-site .worked-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .public-site .formula-legend { grid-template-columns: minmax(0,1fr); }
    .public-site .calibration-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .public-site .calibration-stats > div { padding: 15px; }
    .public-site .calibration-stats strong { font-size: 22px; }
    .public-site .chart-wrap--calibration { padding: 10px; }
    .public-site .news-card { grid-template-columns: 34px minmax(0,1fr); gap: 12px; }
    .public-site .news-date { width: 34px; }
    .public-site .news-date strong { font-size: 27px; }
    .public-site .news-body h3 { font-size: 23px; }
    .public-site .news-meta { gap: 5px; }
    .public-site .article-header h1 { font-size: 37px; }
    .public-site .article-lede { font-size: 16px; }
    .public-site .article-source-box { align-items: flex-start; flex-direction: column; padding: 20px; }
    .public-site .article-section h2 { font-size: 29px; }
    .public-site .stats-band { grid-template-columns: minmax(0,1fr); }
    .public-site .stats-band > div { padding: 17px 20px; border-right: 0; border-bottom: 1px solid var(--line); }
    .public-site .stats-band > div:last-child { border-bottom: 0; }
    .public-site .stats-band strong { font-size: 27px; margin: 5px 0; }
    .public-site .cabinet-card { padding: 20px; }
    .public-site .cabinet-card-head { flex-wrap: wrap; gap: 9px; }
    .public-site .cabinet-card-head .status-chip { margin-left: 0; }
    .public-site .cabinet-card-title h3 { font-size: 24px; }
    .public-site .cabinet-facts { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
    .public-site .form-grid { grid-template-columns: minmax(0,1fr); gap: 0; }
    .public-site .form-actions { align-items: flex-start; flex-direction: column; }
    .public-site .form-actions .btn { width: 100%; }
    .public-site .form-card .panel-head { display: block; }
    .public-site .form-card .panel-badge { margin-top: 12px; }
    .public-site .poll-actions { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .public-site .poll-actions--large .poll-button { padding: 16px; }
    .public-site .poll-actions--large .poll-button small { font-size: 11px; }
    .public-site .content-cta { padding: 25px; }
    .public-site .content-cta h2 { font-size: 27px; }
    .public-site .content-cta-actions { flex-direction: column; width: 100%; }
    .public-site .notice-card { padding: 25px; }
    .public-site .site-footer .container { width: calc(100% - 40px); }
}
