.fsn-article-image { margin: 1.35em auto; text-align: center; max-width: 100%; }
.fsn-article-image img { display: inline-block; width: auto; height: auto; max-width: 100%; }
.fsn-article-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 1.4em 0; align-items: start; }
.fsn-article-gallery--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.fsn-article-gallery-item { margin: 0; min-width: 0; text-align: center; }
.fsn-article-gallery-item img { display: block; width: 100%; height: auto; max-width: 100%; }
@media (max-width: 600px) { .fsn-article-gallery, .fsn-article-gallery--3 { grid-template-columns: minmax(0, 1fr); gap: 10px; } }

/* v0.2.5: related brand card at the end of single news posts */
.fsn-brand-cta { max-width: 820px; margin: 2.3em auto 1.6em; padding: 18px; border: 1px solid #e2e5ea; border-radius: 13px; background: #fff; box-sizing: border-box; color: #282d35; }
.fsn-brand-cta__eyebrow { margin: 0 0 12px !important; font-size: 12px; font-weight: 700; color: #555f6f; text-align: left !important; }
.fsn-brand-cta__link { display: grid; grid-template-columns: 122px minmax(0,1fr); grid-template-areas: "image body" "button button"; gap: 14px; color: inherit !important; text-decoration: none !important; }
.fsn-brand-cta__link:not(:has(.fsn-brand-cta__media)) { grid-template-areas: "body body" "button button"; }
.fsn-brand-cta__media { grid-area: image; width: 122px; height: 122px; overflow: hidden; border-radius: 8px; background: #f4f5f7; }
.fsn-brand-cta__image { display: block; width: 100%; height: 100%; object-fit: cover; }
.fsn-brand-cta__body { grid-area: body; display: flex; flex-direction: column; justify-content: center; gap: 6px; min-width: 0; text-align: left; }
.fsn-brand-cta__headline { display: block; font-size: 19px; line-height: 1.4; font-weight: 750; }
.fsn-brand-cta__question { display: block; font-size: 15px; font-weight: 700; }
.fsn-brand-cta__description { display: block; color: #525c69; font-size: 13px; line-height: 1.65; }
.fsn-brand-cta__button { grid-area: button; display: block; padding: 12px 10px; border: 1px solid #d6dce6; border-radius: 8px; background: #f4f6fa; text-align: center; font-size: 14px; font-weight: 700; transition: background .2s ease, border-color .2s ease; }
.fsn-brand-cta__link:hover .fsn-brand-cta__button, .fsn-brand-cta__link:focus-visible .fsn-brand-cta__button { background: #e8edf6; border-color: #b8c8dd; }
.fsn-brand-cta__link:focus-visible { outline: 2px solid #286cc4; outline-offset: 4px; border-radius: 5px; }
@media (max-width: 480px) { .fsn-brand-cta { padding: 14px; } .fsn-brand-cta__link { grid-template-columns: 92px minmax(0,1fr); gap: 10px; } .fsn-brand-cta__media { width: 92px; height: 92px; } .fsn-brand-cta__headline { font-size: 16px; } .fsn-brand-cta__question { font-size: 13px; } .fsn-brand-cta__description { font-size: 12px; } }

/* v0.2.7: neutral external affiliate link bar (the related-brand card is unchanged). */
.fsn-external-cta {box-sizing:border-box;clear:both;max-width:600px;margin:20px auto 36px;padding:0 10px;text-align:center;}
.fsn-external-cta__caption {display:block;margin:0 0 5px;font-size:13px;line-height:1.4;color:#777;text-align:center;}
.fsn-external-cta__box {background:#f5f6f8;border:1px solid #e0e4e8;border-radius:8px;padding:12px 16px;line-height:1.6;text-align:center;}
.fsn-external-cta__box a {display:inline!important;color:#176db1!important;background:none!important;text-decoration:underline!important;font-size:inherit;font-weight:600;float:none!important;padding:0!important;border:0!important;}
.fsn-external-cta__box a:hover,.fsn-external-cta__box a:focus-visible {color:#084b83!important;text-decoration-thickness:2px!important;}

/* v0.2.8: theme-safe overrides for the automatic sales link. */
body .fsn-external-cta {display:block!important;clear:both!important;width:auto!important;max-width:600px!important;margin:20px auto 36px!important;padding:0 10px!important;text-align:center!important;float:none!important;}
body .fsn-external-cta .fsn-external-cta__caption {display:block!important;margin:0 0 5px!important;font-size:13px!important;line-height:1.4!important;color:#777!important;text-align:center!important;}
body .fsn-external-cta .fsn-external-cta__box {display:block!important;clear:both!important;margin:0!important;padding:12px 16px!important;background:#f5f6f8!important;border:1px solid #e0e4e8!important;border-radius:8px!important;text-align:center!important;}
body .fsn-external-cta .fsn-external-cta__box a {display:inline!important;color:#176db1!important;text-decoration:underline!important;background:transparent!important;border:0!important;float:none!important;padding:0!important;}

/* 0.6.1: open imported news images in their original dimensions */
.fsn-article-image-link{display:inline-block;max-width:100%;cursor:zoom-in;text-decoration:none}
.fsn-article-gallery-item .fsn-article-image-link{display:block;width:100%}
.fsn-article-image-link img{max-width:100%;height:auto}
.fsn-article-image-link:focus-visible{outline:2px solid currentColor;outline-offset:3px}
