html, body {
    overflow-x: clip !important;
    overflow-y: visible !important;
}

@media (min-width: 992px) {
    .hero-trust-row {
        display: flex;
        align-items: stretch;
    }

        .hero-trust-row > [class*="col-"] {
            display: flex;
            flex-direction: column;
        }
}



/* Right Review Widget Card */
#pr-widget-slot {
    background: #fff;
    border: 1px solid #e8e3d9;
    border-radius: 6px;
    padding: 16px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.pr-widget-title {
    text-align: center;
    font-weight: 600;
    font-size: 14px;
    margin-bottom: 8px;
    color: #222;
    font-family: Segoe UI, -apple-system, BlinkMacSystemFont, sans-serif !important;
    
}

#pr-rich-rating-badge-widget {
    margin: 0 auto;
    width: 100%;
}

/* Responsiveness */
.australian-overview {
    display: block !important;
}

@media (max-width: 991px) {
    .australian-overview {
        margin-top: 16px;
    }
}

@media (max-width: 767px) {
    .australian-overview {
        display: none !important;
    }

    .hero-trust-panel {
        margin-left: -15px;
        margin-right: -15px;
    }
}

@media (min-width: 992px) {
    /* Option A: If using Bootstrap column padding */
    .australian-overview {
        padding-right: 20px !important; /* Pushes the card boundary away from the right sidebar */
    }
    /* Option B: Direct margin on the review card itself */
    #pr-widget-slot {
        margin-right: 15px !important;
    }
}



/* Left Trust Card */
.trust-card {
    background: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    padding: 16px 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    height: 100%;
    font-family: Segoe UI, -apple-system, BlinkMacSystemFont, sans-serif !important;
}

.trust-item {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 1;
}

/* Middle Divider Line */
@media (min-width: 1200px) {
    .trust-item:first-child {
        border-right: 1px solid #f0f0f0;
        padding-right: 20px;
    }
}

.trust-item strong {
    display: block;
    font-size: 0.95rem;
    color: #222;
    font-weight:600;
}

.trust-item small {
    color: #666;
    display: block;
}

.trust-icon {
    font-size: 1.5rem;
    color: #2b6cb0;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
}

/* Remove border when stacked on mobile screens */
@media (max-width: 1199px) {
    .trust-card {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }
}

@media (max-width: 767px) {
    .trust-card {
        border-left: none;
        border-right: none;
        border-radius: 0px;
    }
}


/* Fix spacing on tablet widths (768px - 991px) */
@media (min-width: 768px) {
    .hero-trust-row {
        margin-right: 15px !important;
    }
}

@media (min-width: 992px) {
    .product-desc-container form[action*="/Cart/AddProduct"] {
        position: -webkit-sticky;
        position: sticky;
        top: 20px; /* Adjust based on top navbar height */
        align-self: flex-start;
        z-index: 10;
    }
}

.price-container {
    display: inline-flex;
    align-items: flex-end;
    font-family: 'Nunito', sans-serif;
    margin: 0;
    padding: 0;
}

.price-main {
    font-size: 2rem;
    color: #0077c8;
    line-height: 1;
    margin: 0;
}

.price-tax-label {
    color: #0056b3;
    font-size: 0.65rem;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    display: inline-flex;
    flex-direction: column;
    margin-left: 5px;
    margin-bottom: 3px;
    font-family: Lato,Helvetica,Arial,sans-serif;
}

@media (min-width: 768px) {
    /* When there is only 1 image, release the rigid 550px height lock */
    .detail-page-full .product-img.single-image {
        height: auto !important;
        aspect-ratio: auto !important;
    }

        .detail-page-full .product-img.single-image img {
            max-height: 100% !important;
            width: auto !important;
            height: auto !important;
            image-rendering: auto !important; /* Let Chrome render it naturally without forced constraints */
        }
}

@media (min-width: 768px) {
    /* 1. Give every carousel item a strict, unyielding 550px height box */
    .carousel-inner > .item {
        height: 550px !important;
        overflow: hidden !important;
    }

        /* 2. Turn the inner container of the slide into a centered flex frame */
        .carousel-inner > .item > img,
        .carousel-inner > .item > a > img {
            display: block !important;
            max-width: 100% !important;
            max-height: 550px !important;
            width: auto !important;
            height: auto !important;
            object-fit: contain !important;
            /* Center it perfectly inside the 550px item frame without absolute positioning hacks */
            margin: 0 auto !important;
            position: relative !important;
            top: 50% !important;
            transform: translateY(-50%) !important;
            image-rendering: -webkit-optimize-contrast !important;
        }
}

@media (min-width: 768px) and (max-width: 910px) {
    .qtyProduct {
        display: inline-block;
        width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 910px) {
    .product-desc-container .quantity {
        margin-bottom: 5px;
    }
}

.bank-discount-banner {
    display: flex;
    align-items: center;
    gap: 12px;
    background-color: #f8f9fa !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px;
    padding: 8px 12px;
    margin-top: 15px;
    font-family: "Segoe UI", -apple-system, BlinkMacSystemFont, sans-serif;
    margin-bottom: 15px;
}

.bank-discount-icon {
    background-color: #dcfce7 !important;
    color: #15803d !important;
    border-radius: 50%;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-family: Segoe UI, -apple-system, BlinkMacSystemFont, sans-serif !important;
}

.bank-discount-content {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.bank-discount-heading {
    font-weight: 500;
    font-size: 14px;
    color: #14532d !important; /* Deep emerald for optimal readability */
    line-height: 1.2;
}

.bank-discount-price {
    font-size: 13px;
    color: #166534 !important;
    line-height: 1.2;
}

    .bank-discount-price span {
        color: #166534 !important; /* Makes the dynamic dollar amount stand out */
    }

.bank-discount-note {
    font-size: 12px;
    color: #166534 !important;
    opacity: 0.9;
}

/* Align tooltip wrapper cleanly inside heading */
.bank-discount-heading {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    position: relative;
}
/* Tooltip container */
.discount-tooltip-wrapper {
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
}
/* Info Icon styling */
.discount-tooltip-icon {
    color: #166534 !important;
    opacity: 0.75;
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.discount-tooltip-wrapper:hover .discount-tooltip-icon {
    opacity: 1;
    transform: scale(1.1);
}
/* Tooltip Popup Box */
.discount-tooltip-text {
    visibility: hidden;
    opacity: 0;
    width: 210px;
    background-color: #1e293b; /* Dark charcoal slate */
    color: #ffffff;
    text-align: left;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.35;
    padding: 8px 10px;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    /* Position centered above icon */
    position: absolute;
    bottom: 135%;
    left: 50%;
    transform: translateX(-50%) translateY(4px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
    z-index: 100;
    pointer-events: none;
}
    /* Tooltip Arrow */
    .discount-tooltip-text::after {
        content: "";
        position: absolute;
        top: 100%;
        left: 50%;
        margin-left: -5px;
        border-width: 5px;
        border-style: solid;
        border-color: #1e293b transparent transparent transparent;
    }
/* Show Tooltip on Hover */
.discount-tooltip-wrapper:hover .discount-tooltip-text {
    visibility: visible;
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}