.biot-si { position: relative; display: inline-block; max-width: 100%; line-height: 0; }
.biot-si > img { display: block; max-width: 100%; height: auto; }
.biot-si .biot-si-layer { position: absolute; inset: 0; pointer-events: none; line-height: normal; }
.biot-si .biot-si-dot { position: absolute; width: 26px; height: 26px; border-radius: 50%; background: #8a3d4c; border: 2px solid #fff; box-shadow: 0 2px 8px rgba(0,0,0,.35); padding: 0; cursor: pointer; pointer-events: auto; transform: translate(-50%, -50%); transition: transform .18s ease, box-shadow .18s ease; }
.biot-si .biot-si-dot::after { content: ""; position: absolute; inset: -6px; border-radius: 50%; border: 1px solid rgba(138,61,76,.6); opacity: 0; transition: opacity .18s ease, transform .18s ease; }
.biot-si .biot-si-dot:hover, .biot-si .biot-si-dot:focus { transform: translate(-50%, -50%) scale(1.12); outline: none; box-shadow: 0 4px 12px rgba(138,61,76,.55); }
.biot-si .biot-si-dot:hover::after, .biot-si .biot-si-dot:focus::after { opacity: 1; transform: scale(1.05); }
.biot-si .biot-si-dot.is-open { transform: translate(-50%, -50%) scale(1.15); }

.biot-si-card { position: absolute; z-index: 9999; background: #fff; border: none; box-shadow: 0 8px 28px rgba(0,43,60,.14); padding: 0; width: 180px; max-width: 92vw; opacity: 0; transform: translateY(6px); transition: opacity .2s ease, transform .2s ease; pointer-events: auto; font-family: "Montserrat", system-ui, sans-serif; line-height: 1.35; color: #002B3C; }
.biot-si-card.is-visible { opacity: 1; transform: translateY(0); }
.biot-si-card-link { display: block; text-decoration: none !important; color: inherit !important; }
.biot-si-card-link:focus { outline: none; }
.biot-si-card-image { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; background: #f6f4ef; }
@supports not (aspect-ratio: 3 / 4) { .biot-si-card-image { height: 240px; } }
.biot-si-card-body { padding: 12px 14px 14px; text-align: left; }
.biot-si-card-name { display: block; font-size: 13px; font-weight: 500; color: #002B3C; margin: 0 0 6px; line-height: 1.35; }
.biot-si-card-price { display: block; font-size: 13px; color: #002B3C; margin: 0 0 10px; font-weight: 400; }
.biot-si-card-price .woocommerce-Price-amount { color: #002B3C; }
.biot-si-card-price del { color: #aaa; margin-right: 4px; }
.biot-si-card-price ins { background: transparent; text-decoration: none; }
.biot-si-card-cta { display: inline-block; background: transparent; color: #002B3C !important; text-decoration: none !important; padding: 0; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; font-weight: 500; transition: letter-spacing .2s ease, color .2s ease; }
.biot-si-card-link:hover .biot-si-card-cta, .biot-si-card-link:focus .biot-si-card-cta { color: #8a3d4c !important; letter-spacing: .18em; }
.biot-si-card-oos { display: block; font-size: 10px; color: #b32d2e; margin-top: 6px; text-transform: uppercase; letter-spacing: .08em; }
.biot-si-align-center { text-align: center; }
.biot-si-align-right { text-align: right; }
.biot-si-align-left { text-align: left; }
.biot-si-align-wide .biot-si { display: block; }
@media (max-width: 600px) {
	.biot-si .biot-si-dot { width: 22px; height: 22px; }
	.biot-si-card { width: 160px; }
}
