.product-tbi-banner {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    margin-top: 2px;
    border: 1px solid #f2bd8e;
    border-radius: 4px;
    background: #fff7ed;
    color: #492b1b;
}
.product-tbi-banner__logo {
    display: block;
    width: 72px;
    height: 32px;
    object-fit: contain;
    margin-top: 2px;
}
.product-tbi-banner__content { min-width: 0; overflow-wrap: anywhere; }
.product-tbi-banner__title { display: block; font-size: 13px; line-height: 1.4; font-weight: 700; }
.product-tbi-banner__details { margin-top: 3px; font-size: 12px; }
.product-tbi-banner__details summary { width: fit-content; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.product-tbi-banner__details summary:focus-visible { outline: 2px solid #8b3d0b; outline-offset: 3px; }
.product-tbi-banner__message { margin: 6px 0 8px; font-size: 13px; line-height: 1.5; }
.product-tbi-banner__link { color: #8b3d0b; text-decoration: underline; text-underline-offset: 3px; font-size: 13px; font-weight: 600; }
.product-tbi-banner__link:hover { color: #542506; }
.product-tbi-banner__link:focus-visible { outline: 2px solid #8b3d0b; outline-offset: 4px; }
.product-tbi-banner__note { display: block; margin-top: 3px; font-size: 10px; line-height: 1.5; color: #72503d; }
.product-tbi-banner__campaign { display: block; width: 100%; max-width: 420px; margin-top: 14px; border-radius: 8px; overflow: hidden; }
.product-tbi-banner__campaign img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 1; object-fit: cover; object-position: top; }
.product-tbi-banner__campaign:focus-visible { outline: 2px solid #8b3d0b; outline-offset: 4px; }
@media (max-width: 575px) {
    .product-tbi-banner { grid-template-columns: 64px minmax(0, 1fr); }
    .product-tbi-banner__logo { width: 64px; height: 28px; margin: 0; }
}
