.bd-vitrine-flyin[hidden] { display: none !important; }
.bd-vitrine-flyin {
    position: fixed; left: 24px; right: auto; bottom: 24px; z-index: 1100;
    width: 400px; max-width: calc(100vw - 48px); max-height: calc(100dvh - 48px); overflow-y: auto;
    padding: 24px; background: var(--white, #fff); color: var(--body, #000);
    border: 1px solid var(--bd-border, #e0e0e0); border-top: 4px solid var(--primary, #c6bf89);
    border-radius: var(--border-radius, 2px); box-shadow: 0 12px 40px rgba(0, 0, 0, .16);
    font-family: var(--primary_font, "Play", sans-serif); text-align: left; hyphens: manual; overflow-wrap: break-word; word-break: normal;
}
.bd-vitrine-flyin.is-visible { animation: bd-vitrine-flyin-enter .28s ease-out both; }
.bd-vitrine-flyin button.bd-vitrine-flyin__close {
    position: absolute; top: 6px; right: 6px; z-index: 1; display: grid; place-items: center;
    width: 44px; min-width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; line-height: 1;
    background: transparent; color: #000; cursor: pointer; font-size: 20px;
}
.bd-vitrine-flyin button.bd-vitrine-flyin__close:hover { background: #f2f2f2; color: #000; }
.bd-vitrine-flyin__intro { display: flex; align-items: center; gap: 12px; padding-right: 20px; }
.bd-vitrine-flyin__image { flex: 0 0 64px; width: 64px; }
.bd-vitrine-flyin__image img { display: block; width: 64px; height: 84px; object-fit: contain; }
.bd-vitrine-flyin .bd-vitrine-flyin__eyebrow { margin: 0 0 6px; color: #646464; font-size: 11px; line-height: 1.4; letter-spacing: .08em; text-transform: uppercase; }
.bd-vitrine-flyin #bd-vitrine-flyin-title { margin: 0; color: #000; font: 700 22px/1.15 var(--primary_font, "Play", sans-serif); hyphens: manual; word-break: normal; }
.bd-vitrine-flyin .bd-vitrine-flyin__text { margin: 16px 0 20px; font-size: 15px; line-height: 1.5; white-space: normal; hyphens: manual; word-break: normal; }
.bd-vitrine-flyin .bd-vitrine-flyin__button { display: block; padding: 13px 16px; border: 1px solid #000; border-radius: var(--border-radius, 2px); background: #000; color: #fff; text-align: center; font-size: 14px; font-weight: 700; line-height: 1.4; text-decoration: none; }
.bd-vitrine-flyin .bd-vitrine-flyin__button:hover { background: var(--primary, #c6bf89); color: #000; border-color: var(--primary, #c6bf89); }
.bd-vitrine-flyin__close:focus-visible, .bd-vitrine-flyin__button:focus-visible { outline: 3px solid #646464; outline-offset: 3px; }
.bd-vitrine-flyin .bd-vitrine-flyin__preview { margin: 0 30px 14px 0; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; color: #646464; }
@keyframes bd-vitrine-flyin-enter { from { opacity: 0; transform: translateX(-24px); } to { opacity: 1; transform: translateX(0); } }
@media (max-width: 600px) {
    .bd-vitrine-flyin { right: 16px; left: 16px; bottom: calc(88px + env(safe-area-inset-bottom, 0px)); width: auto; max-width: none; max-height: calc(100dvh - 120px); padding: 18px; }
    .bd-vitrine-flyin__intro { gap: 12px; }
    .bd-vitrine-flyin__image { flex-basis: 60px; width: 60px; }
    .bd-vitrine-flyin__image img { width: 60px; height: 72px; }
    .bd-vitrine-flyin #bd-vitrine-flyin-title { font-size: 20px; }
    .bd-vitrine-flyin .bd-vitrine-flyin__text { margin: 12px 0 14px; font-size: 14px; }
    .bd-vitrine-flyin .bd-vitrine-flyin__preview { margin-bottom: 10px; }
}
@media (prefers-reduced-motion: reduce) { .bd-vitrine-flyin.is-visible { animation: none; } }
