#mainImage {
    position:relative;
}

#mainImage.b-image {
    min-height:420px;
}

#mimage {
    width:100%;
    max-width:100%;
    height:auto;
}

.pdp-image-dots {
    position:absolute;
    bottom:14px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    gap:8px;
    z-index:2;
}

.pdp-image-dot {
    width:9px;
    height:9px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,0.9);
    background:rgba(255,255,255,0.3);
    cursor:pointer;
}

.pdp-image-dot.active {
    background:#ffffff;
}

#moreImages {
    margin-top:15px;
}

.timage {
    cursor:pointer;
    height:70px;
    width:auto;
    border-radius:6px;
    background-color:#f7f7f7;
    padding:4px;
    border:1px solid #eeeeee;
}

.price {
    font-weight:bold;
    font-size:1.8em;
}
.price-red {
    background-color:#DA0D32;
    color:white;
}
.price-mini {
    padding:10px;
    padding-right:20px;
    font-size:0.8em;
    font-weight:normal;
}

#priceBox {
    text-align:center;
}

@media (min-width: 768px) {
    #priceBox {
        width:auto;
        float:right;
        text-align:right;
    }
    .price { 
        margin-top:0;
    }
}

.tab-pane {
    padding-top:10px;
}
#bikeTabs {
    width:100%;
    padding:0;
    margin-top:30px;
}
#specs {
    font-size:0.9em;
}
#details p {
    text-align:justify;
}

.pdp-accordions {
    border-top:1px solid #e5e5e5;
}

.pdp-accordion-item:last-child .pdp-accordion-body {
    border-bottom:1px solid #e5e5e5;
}

.pdp-accordion-header {
    width:100%;
    background:none;
    border:0;
    padding:16px 0;
    text-align:left;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:0.08em;
    font-size:0.9em;
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-bottom:1px solid #e5e5e5;
}

.pdp-accordion-header:focus {
    outline:none;
}

.pdp-accordion-header::after {
    content:'-';
    font-size:18px;
}

.pdp-accordion-header.collapsed::after {
    content:'+';
}

.pdp-accordion-body {
    padding:5px 0 16px 0;
}
#brand {
    max-height:60px;
}

#infoCol {
    padding-left:20px;
}
#imageCol {
    padding-right:20px;
}
.add-to-bag-container {
    margin-top:30px;
    max-width:480px;
    margin-left:auto;
    margin-right:auto;
}

.add-to-bag-button {
    background-color:#111111;
    color:#ffffff;
    text-transform:uppercase;
    letter-spacing:0.08em;
    border-radius:999px;
    border:none;
    width:100%;
    padding:19px 24px;
    font-weight:600;
}

.add-to-bag-button:hover,
.add-to-bag-button:focus {
    background-color:#000000;
    color:#ffffff;
}

@media (min-width: 768px) {
    #imageCol {
        display:flex;
        flex-direction:row-reverse;
        align-items:flex-start;
    }

    #moreImages {
        display:flex;
        flex-direction:column;
        gap:10px;
        margin-top:0;
        margin-right:15px;
    }

    #mainImage {
        flex:1;
    }
}

@media (max-width: 767px) {
    #moreImages {
        display:none;
    }

    .product-details-container {
        padding:0 0 25px 0;
        margin-top:0;
    }

    #imageCol {
        padding:0;
    }

    .add-to-bag-container {
        padding:0 15px;
    }

    #mainImage.b-image {
        min-height:auto;
        padding:0;
        background:none;
        border-radius:0;
    }

    #mimage {
        width:100%;
        max-width:100%;
        height:auto;
        display:block;
    }
}
