.cs-topic { --cerli:#01a46c; --green:#087c53; --ink:#25392f; --muted:#536259; --line:#d9e3d6; --paper:#f4f7f1; --page-top:28px; --page-bottom:36px; color:var(--ink); font:16px/1.65 'Campaign Inter',system-ui,sans-serif; overflow-wrap:break-word; }
.cs-topic,.cs-topic * { box-sizing:border-box; }
.cs-topic h1,.cs-topic h2,.cs-topic h3,.cs-topic p,.cs-topic figure { margin:0; }
.cs-topic a { color:var(--green); text-underline-offset:4px; }
.cs-topic a:hover { color:#064f35; }
.cs-topic a:focus-visible,.cs-topic summary:focus-visible { outline:3px solid #075c3e; outline-offset:4px; }
.cs-topic .back-link { display:inline-flex; align-items:center; gap:10px; min-height:44px; font-size:14px; font-weight:550; text-decoration:none; }
.cs-topic .back-link:hover { text-decoration:underline; }
.cs-topic .topic-intro { display:flex; align-items:center; justify-content:space-between; gap:28px; margin-top:17px; }
.cs-topic .topic-intro>div { min-width:0; max-width:735px; }
.cs-topic h1 { font-size:clamp(34px,4.8cqw,48px); line-height:1.13; letter-spacing:-.045em; font-weight:650; text-wrap:balance; }
.cs-topic .lead { margin-top:18px; color:var(--muted); font-size:17px; line-height:1.7; max-width:740px; }
.cs-topic .help-button { display:inline-flex; flex-shrink:0; align-items:center; justify-content:center; min-height:52px; padding:12px 20px; border-radius:10px; color:#fff; background:var(--cerli); font-size:19px; line-height:1.4; font-weight:700; text-decoration:none; text-align:center; }
.cs-topic .help-button:hover { background:#008958; color:#fff; }
.cs-topic .jump-nav { display:flex; align-items:center; flex-wrap:wrap; gap:0 24px; margin:26px 0 28px; padding:10px 0; border-block:1px solid var(--line); font-size:13px; }
.cs-topic .jump-nav>span { color:var(--muted); }
.cs-topic .jump-nav a { display:inline-flex; align-items:center; min-height:44px; font-weight:600; }
.cs-topic section,.cs-topic aside { scroll-margin-top:24px; }
.cs-topic h2 { font-size:25px; line-height:1.3; font-weight:620; letter-spacing:-.025em; }
.cs-topic .topic-context { display:grid; grid-template-columns:minmax(180px,.75fr) minmax(0,1.4fr); align-items:start; gap:35px; padding:29px 30px 31px; border:1px solid #e5ece1; border-radius:20px; background:var(--paper); }
.cs-topic .topic-guide { align-self:center; min-width:0; }
.cs-topic .topic-guide img { display:block; width:100%; max-width:255px; height:auto; aspect-ratio:1; object-fit:contain; margin:0 auto; }
.cs-topic .topic-guide figcaption { max-width:250px; margin:15px auto 0; color:var(--green); font-size:15px; font-weight:600; line-height:1.6; }
.cs-topic .context-intro { margin-top:12px; color:var(--muted); font-size:14px; }
.cs-topic .signal-list { margin:4px 0 0; padding:0; list-style:none; }
.cs-topic .signal-list li { padding-top:17px; }
.cs-topic .signal-list li+li { margin-top:17px; border-top:1px solid var(--line); }
.cs-topic .signal-list h3 { font-size:16px; line-height:1.45; font-weight:650; }
.cs-topic .signal-list p { margin-top:5px; color:var(--muted); font-size:14px; line-height:1.7; }
.cs-topic .action-section { margin-top:37px; }
.cs-topic .action-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; counter-reset:action; list-style:none; padding:0; margin:23px 0 0; }
.cs-topic .action-steps li { position:relative; padding-top:40px; counter-increment:action; }
.cs-topic .action-steps li::before { content:counter(action,decimal-leading-zero); position:absolute; top:0; left:0; color:var(--green); font-size:22px; line-height:1.3; font-weight:600; }
.cs-topic .action-steps h3 { font-size:16px; line-height:1.45; font-weight:650; }
.cs-topic .action-steps p { margin-top:9px; color:var(--muted); font-size:14px; line-height:1.7; }
.cs-topic .action-links { display:flex; flex-wrap:wrap; align-items:center; gap:10px 25px; margin-top:24px; }
.cs-topic .inline-link { display:inline-flex; align-items:center; gap:10px; min-height:44px; font-size:14px; font-weight:600; }
.cs-topic .support-note { margin-top:34px; padding:21px 24px; border-left:3px solid var(--cerli); background:#f3f8f5; border-radius:0 12px 12px 0; }
.cs-topic .support-note h2 { font-size:19px; line-height:1.45; letter-spacing:-.015em; }
.cs-topic .support-note p { margin-top:9px; font-size:14px; color:var(--muted); }
.cs-topic .support-note .inline-link { margin-top:8px; }
.cs-topic .country-section { display:grid; grid-template-columns:175px minmax(0,1fr); align-items:center; gap:30px; margin-top:35px; padding:24px 0; }
.cs-topic .country-section img { width:175px; max-width:100%; height:auto; }
.cs-topic .country-section p { margin-top:12px; font-size:14px; color:var(--muted); }
.cs-topic .country-section .inline-link { margin-top:5px; }
.cs-topic .country-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:0; margin:18px 0 0; list-style:none; }
.cs-topic .country-links a { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:48px; padding:10px 14px; border:1px solid var(--line); border-radius:9px; text-decoration:none; font-size:14px; font-weight:600; }
.cs-topic .country-links a:hover { background:var(--paper); border-color:var(--cerli); }
.cs-topic .topic-sources { margin-top:28px; padding-top:12px; border-top:1px solid var(--line); font-size:12px; color:var(--muted); }
.cs-topic .topic-sources summary { width:fit-content; min-height:44px; padding:11px 4px 11px 0; cursor:pointer; font-size:13px; font-weight:550; }
.cs-topic .topic-sources ul { margin:0 0 10px; padding-left:20px; }
.cs-topic .topic-sources a { display:inline-block; padding:8px 0; }
.cs-topic .topic-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 24px; padding-top:14px; margin-top:15px; border-top:1px solid var(--line); font-size:13px; }
.cs-topic .topic-footer a { display:inline-flex; align-items:center; gap:10px; min-height:44px; }
@container campaign-content (max-width:900px) {
  .cs-topic .topic-intro { display:block; }
  .cs-topic .topic-intro>.help-button { margin-top:20px; }
  .cs-topic .topic-context { gap:26px; padding:25px; grid-template-columns:minmax(155px,.7fr) minmax(0,1.35fr); }
  .cs-topic .action-steps { gap:20px; }
}
@container campaign-content (max-width:650px) {
  .cs-topic { --page-top:18px; --page-bottom:28px; }
  .cs-topic .topic-intro { margin-top:13px; }
  .cs-topic h1 { font-size:36px; }
  .cs-topic .lead { font-size:16px; margin-top:15px; }
  .cs-topic .jump-nav { gap:0 20px; margin:23px 0; padding:8px 0; }
  .cs-topic .jump-nav>span { flex-basis:100%; font-size:12px; }
  .cs-topic .topic-context { display:block; padding:21px 20px 24px; border-radius:17px; }
  .cs-topic .topic-guide { display:flex; align-items:center; gap:17px; margin-bottom:25px; }
  .cs-topic .topic-guide img { width:120px; flex:0 0 120px; margin:0; }
  .cs-topic .topic-guide figcaption { margin:0; max-width:250px; font-size:13px; }
  .cs-topic h2 { font-size:23px; }
  .cs-topic .action-section { margin-top:29px; }
  .cs-topic .action-steps { display:block; margin-top:20px; }
  .cs-topic .action-steps li { padding:0 0 0 42px; }
  .cs-topic .action-steps li+li { margin-top:24px; }
  .cs-topic .action-steps p { margin-top:7px; }
  .cs-topic .action-links { display:block; margin-top:23px; }
  .cs-topic .action-links>.help-button { width:100%; }
  .cs-topic .action-links>.inline-link { margin-top:9px; }
  .cs-topic .support-note { margin-top:27px; padding:18px 19px; }
  .cs-topic .country-section { grid-template-columns:105px minmax(0,1fr); align-items:start; gap:18px; margin-top:27px; padding:15px 0; }
  .cs-topic .country-section img { width:105px; }
  .cs-topic .country-section h2 { font-size:21px; }
  .cs-topic .country-links { grid-template-columns:1fr; }
  .cs-topic .topic-footer { align-items:flex-start; flex-direction:column; }
}
@container campaign-content (max-width:370px) {
  .cs-topic h1 { font-size:32px; }
  .cs-topic .topic-context { padding:19px 17px 23px; }
  .cs-topic .topic-guide { gap:12px; }
  .cs-topic .topic-guide img { width:94px; flex-basis:94px; }
  .cs-topic .topic-guide figcaption { font-size:12px; }
  .cs-topic .country-section { grid-template-columns:80px minmax(0,1fr); gap:14px; }
  .cs-topic .country-section img { width:80px; }
}
@media (forced-colors:active) {
  .cs-topic .help-button { border:1px solid ButtonText; }
  .cs-topic a:focus-visible,.cs-topic summary:focus-visible { outline-color:Highlight; }
}

.cs-flyers .topic-intro { margin-top:0; }
.cs-flyers .flyer-format { margin-top:18px; font-size:13px; color:var(--muted); }
.cs-flyers .flyer-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin-top:30px; }
.cs-flyers .flyer-card { display:grid; grid-template-columns:128px minmax(0,1fr); align-items:center; gap:20px; padding:20px; border:1px solid var(--line); border-radius:15px; }
.cs-flyers .flyer-preview { display:block; font-size:12px; font-weight:600; text-align:center; text-decoration:none; }
.cs-flyers .flyer-preview img { display:block; width:100%; height:auto; border:1px solid #e2e5df; border-radius:3px; }
.cs-flyers .flyer-preview>span { display:flex; align-items:center; justify-content:center; gap:9px; min-height:44px; text-decoration:underline; }
.cs-flyers .flyer-copy { min-width:0; }
.cs-flyers .flyer-number { font-size:11px; color:var(--green); font-weight:650; letter-spacing:.04em; }
.cs-flyers .flyer-copy h2 { font-size:20px; line-height:1.35; letter-spacing:-.025em; margin-top:6px; }
.cs-flyers .flyer-copy>p:not(.flyer-number) { margin-top:10px; font-size:13px; color:var(--muted); line-height:1.65; }
.cs-flyers .flyer-downloads { display:flex; flex-wrap:wrap; gap:8px; margin-top:17px; }
.cs-flyers .download-link { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 12px; border:1px solid var(--green); border-radius:7px; background:var(--green); color:#fff; font-size:12px; font-weight:650; line-height:1.4; text-decoration:none; text-align:center; }
.cs-flyers .download-link:hover { background:#064f35; color:#fff; }
.cs-flyers .flyer-dialog { max-width:min(850px,calc(100vw - 24px)); width:fit-content; max-height:calc(100dvh - 24px); padding:0 14px 14px; margin:auto; border:1px solid var(--line); border-radius:12px; color:var(--ink); background:#fff; box-sizing:border-box; }
.cs-flyers .flyer-dialog:not([open]) { display:none; }
.cs-flyers .flyer-dialog::backdrop { background:#15281ec7; }
.cs-flyers .flyer-dialog-bar { display:flex; align-items:center; gap:20px; justify-content:space-between; padding:7px 0; }
.cs-flyers .flyer-dialog-bar h2 { font-size:15px; line-height:1.4; }
.cs-flyers .flyer-dialog-bar button { display:flex; align-items:center; gap:10px; flex-shrink:0; min-height:44px; padding:10px 8px; border:0; background:#fff; color:var(--green); font:600 13px 'Campaign Inter',sans-serif; cursor:pointer; }
.cs-flyers .flyer-dialog-bar button:focus-visible { outline:3px solid var(--green); outline-offset:-3px; }
.cs-flyers .flyer-dialog>img { display:block; width:auto; height:auto; max-width:100%; max-height:calc(100dvh - 130px); object-fit:contain; margin:auto; }
@container campaign-content (max-width:850px) {
  .cs-flyers .flyer-grid { grid-template-columns:1fr; }
  .cs-flyers .flyer-card { grid-template-columns:145px minmax(0,1fr); gap:26px; }
}
@container campaign-content (max-width:500px) {
  .cs-flyers .flyer-grid { gap:18px; margin-top:24px; }
  .cs-flyers .flyer-card { grid-template-columns:105px minmax(0,1fr); gap:17px; padding:16px; align-items:start; }
  .cs-flyers .flyer-copy h2 { font-size:19px; }
  .cs-flyers .flyer-downloads { display:grid; grid-template-columns:1fr; }
}
@container campaign-content (max-width:370px) {
  .cs-flyers .flyer-card { grid-template-columns:85px minmax(0,1fr); gap:14px; padding:14px; }
  .cs-flyers .flyer-copy h2 { font-size:18px; }
  .cs-flyers .flyer-copy>p:not(.flyer-number) { font-size:12px; }
}
