/* One visible offer per guide: inline on narrow screens, rail on wide screens. */
.banner-rail { display:none; }
.banner-inline { clear:both; }
body .affiliate-banner { box-sizing:border-box; margin:28px 0; padding:16px; border:1px solid var(--line, #ccd5db); border-radius:12px; background:var(--paper, #fff); color:inherit; text-align:center; }
body .affiliate-banner .affiliate-banner-disclosure { font-size:12px; font-weight:400; line-height:1.5; margin:0 0 16px; }
body .affiliate-banner .affiliate-banner-headline { font-size:23px; font-weight:700; line-height:1.3; margin:16px 0; }
body .affiliate-banner .affiliate-banner-note { font-size:13px; line-height:1.6; margin:14px 0 0; }
body .affiliate-banner .affiliate-banner-art { display:block; width:300px; max-width:100%; margin:0 auto; }
body .affiliate-banner .affiliate-banner-art img { display:block; width:100%; height:auto; border-radius:0; }
body .affiliate-banner .text-link { display:inline-block; padding:12px 4px; min-height:44px; font-size:14px; font-weight:700; line-height:1.5; }
.affiliate-banner a:focus-visible { outline:3px solid currentColor; outline-offset:3px; }
@media (min-width:1280px) {
  body[data-publication-theme] .article-layout.article-layout--ads { display:grid; grid-template-columns:160px minmax(0,1fr) 334px; gap:24px; align-items:start; }
  body[data-publication-theme] .article-layout--ads > :is(.contents,.article-toc,.article-aside) { grid-column:1; grid-row:1; min-width:0; }
  body[data-publication-theme] .article-layout--ads > .article-body { grid-column:2; grid-row:1; width:100%; min-width:0; max-width:none; }
  body[data-publication-theme] .article-layout--ads > .banner-rail { display:block; grid-column:3; grid-row:1; position:sticky; top:88px; max-height:calc(100dvh - 104px); overflow-y:auto; overscroll-behavior:contain; }
  body[data-publication-theme] .banner-rail .affiliate-banner { margin:0; }
  .article-layout--ads .banner-inline { display:none; }
  body[data-publication-theme="money-fieldnotes"] .article-layout--ads > .article-heading { grid-column:1 / -1; grid-row:1; }
  body[data-publication-theme="money-fieldnotes"] .article-layout--ads > :is(.article-toc,.article-body,.banner-rail) { grid-row:2; }
  body[data-site="workflow-fieldnotes"] .article-layout--ads > .article-body { padding:24px; }
}
@media print { .banner-rail,.banner-inline { display:none !important; } }
