/* Phase 8.1 — hero LCP: real <img>/<picture> fills .slide (same cover look as background-image) */
.slide {
    position: relative;
    overflow: hidden;
    background-image: none !important;
}

.slide__media,
.slide > picture.slide__media,
.slide picture.slide__media {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    display: block;
    margin: 0;
    padding: 0;
    pointer-events: none;
}

.slide__media-img,
.slide picture.slide__media img,
.slide > img.slide__media-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

.slide > .container-fluid {
    position: relative;
    z-index: 1;
}

/* Header stroke-gap replacement (inline SVG) */
.cart-box .icon-svg {
    display: inline-block;
    width: 18px;
    height: 18px;
    vertical-align: middle;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Cart count badge — top-right outside icon (not over the basket) */
.cart-box > ul > li > a {
    position: relative;
    display: inline-block;
    line-height: 1;
}

.cart-box > ul > li > a > .total-pro,
.cart-box > ul > li > a span + span.total-pro {
    background: #fff none repeat scroll 0 0;
    border-radius: 100%;
    color: #343434;
    display: block;
    font-size: 10px;
    font-weight: 700;
    height: 16px;
    width: 16px;
    line-height: 16px;
    left: auto !important;
    right: -9px !important;
    top: -8px !important;
    position: absolute;
    text-align: center;
    box-sizing: border-box;
}

.sticky .cart-box > ul > li > a > .total-pro,
.sticky .cart-box > ul > li > a span + span.total-pro {
    font-size: 9px;
    height: 14px;
    width: 14px;
    line-height: 14px;
    left: auto !important;
    right: -8px !important;
    top: -7px !important;
}

/* Keep layout identical when <picture> wraps responsive imgs */
.pcard__media-link > picture,
.category-banner > picture,
.blog-card-image > picture,
.dron-facilities > picture,
.main-camera a > picture,
.dron-img a > picture,
.tab-pane a > picture,
.tab-pane > picture {
    display: contents;
}

/* Prevent aspect-ratio squash from mismatched width/height hints */
.main-camera img,
.dron-facilities img,
.dron-img img,
.opacity-img img {
    width: 100%;
    height: auto;
    max-width: 100%;
    object-fit: contain;
    vertical-align: middle;
}
