/** Shopify CDN: Minification failed

Line 183:0 All "@import" rules must come first

**/
/* Custom product layout - 1/3 media, 2/3 info */

/* Override Dawn theme's default product layout proportions */
@media screen and (min-width: 990px) {
    /* Target all product size variations */
    .product--small:not(.product--no-media) .product__media-wrapper,
    .product--medium:not(.product--no-media) .product__media-wrapper,
    .product--large:not(.product--no-media) .product__media-wrapper {
        max-width: 33.33% !important;
        width: calc(33.33% - var(--grid-desktop-horizontal-spacing) / 2) !important;
    }

    .product--small:not(.product--no-media) .product__info-wrapper,
    .product--medium:not(.product--no-media) .product__info-wrapper,
    .product--large:not(.product--no-media) .product__info-wrapper {
        max-width: 66.67% !important;
        width: calc(66.67% - var(--grid-desktop-horizontal-spacing) / 2) !important;
    }

    /* Adjust padding between media and info sections */

    .product--right .product__info-wrapper {
        padding-left: 0 !important;
        padding-right: 4rem !important;
    }

    /* Ensure product info container has enough width */
    .product__info-container {
        max-width: 100% !important;
    }
}

/* Maintain tablet layout with even split */
@media screen and (min-width: 750px) and (max-width: 989px) {
    .product.grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 1.5rem;
    }

    .product__info-wrapper {
        padding-left: 2rem;
    }

    .product--right .product__info-wrapper {
        padding-left: 0;
        padding-right: 2rem;
    }
}

/* Mobile layout adjustments */
@media screen and (max-width: 749px) {
    .product.grid {
        display: flex;
        flex-direction: column;
    }

    .product__media-list {
        margin-bottom: 2rem;
    }

    .product__info-wrapper {
        padding-left: 0;
        padding-top: 1.5rem;
    }
}

/* Fix any issues with thumbnail layout */
@media screen and (min-width: 990px) {
    .product--thumbnail .thumbnail-list,
    .product--thumbnail_slider .thumbnail-list {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
    }
}


@media screen and (min-width: 750px) {
    .grid--2-col-tablet .grid__item {
        width: 100%;
    }
}


/* Custom Checkbox Styling - With more specific selectors */

/* Hide the default checkbox */
.mw-label > .mw-option__control {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

/* Style the label container for checkboxes only */
.mw-label {
    display: flex;
    align-items: center;
    position: relative;
    cursor: pointer;
    padding: 5px;
}

/* Only target mw-option__value-title that directly follows a checkbox input */
.mw-label > .mw-option__control + .mw-option__value-title {
    position: relative;
    display: flex;
    align-items: center;
    padding-left: 35px; /* Space for the custom checkbox */
}

/* Create the custom checkbox using pseudo-element only for those directly after checkbox inputs */
.mw-label > .mw-option__control + .mw-option__value-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Crect x='1' y='1' width='22' height='22' rx='4' ry='4' fill='white' stroke='%23999' stroke-width='2'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    transition: all 0.2s ease;
}

/* Change the SVG when the checkbox is checked - only for direct siblings */
.mw-label > .mw-option__control:checked + .mw-option__value-title::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Crect x='1' y='1' width='22' height='22' rx='4' ry='4' fill='%234A90E2' stroke='%234A90E2' stroke-width='2'/%3E%3Cpath d='M6 12L10 16L18 8' stroke='white' stroke-width='3' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

/* Add hover effect only to checkboxes */
.mw-label:hover > .mw-option__control + .mw-option__value-title::before {
    box-shadow: 0 0 0 1px rgba(74, 144, 226, 0.2);
}

/* Add focus state for accessibility */
.mw-label > .mw-option__control:focus + .mw-option__value-title::before {
    box-shadow: 0 0 0 3px rgba(74, 144, 226, 0.3);
    outline: none;
}

/* Ensure text alignment looks good */
.mw-label > .mw-option__control + .mw-option__value-title .mw-text {
    display: inline-block;
}

/* Explicitly exclude mw-stack__near elements from styling */
.mw-stack__near .mw-option__value-title::before {
    display: none !important;
}

.mw-stack__near .mw-option__value-title {
    padding-left: 0 !important;
}

#select_o_2160908 {
    position: relative;
    width: 100%;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #CCCCCC;
    border-radius: 2px;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-repeat: no-repeat;
    background-position: right 10px center;
    height: 44px;
    padding: 8px 28px 11px 14px;
    font-size: 16px;
    font-family: 'Rubik', sans-serif;
    line-height: 27px;
    overflow: hidden;
    background-image: url(https://cdn.shopify.com/s/files/1/0293/9476/3860/t/1/assets/ico-select.svg?v=2900367270910467858);
}

/* First, import the Rubik font from Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600&display=swap');

/* Target specifically the text input with the provided class structure */
.mw-stack__item .mw-option__container .mw-option__value .mw-option__control[type="text"] {
    font-family: 'Rubik', sans-serif;
    font-weight: 400; /* You can adjust this: 400 (regular), 500 (medium), 600 (semi-bold) */
    font-size: 16px; /* Adjust as needed */
}

/* Optional: Add some additional styling to improve the text input appearance */
.mw-stack__item .mw-option__container .mw-option__value .mw-option__control[type="text"] {
    padding: 8px 12px;
    border-radius: 4px;
    border: 1px solid #ccc;
    transition: border-color 0.3s ease;
}

.mw-stack__item .mw-option__container .mw-option__value .mw-option__control[type="text"]:focus {
    outline: none;
    border-color: #4A90E2;
    box-shadow: 0 0 0 2px rgba(74, 144, 226, 0.2);
}

/* Custom dropdown container */
.custom-font-dropdown {
    position: relative;
    width: 100%;
    font-size: 16px;
    user-select: none;
}

/* Selected item display */
.custom-font-dropdown__selected {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 8px 12px;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: white;
    cursor: pointer;
    position: relative;
    box-sizing: border-box;
}

/* Custom dropdown arrow */
.custom-font-dropdown__selected::after {
    content: "";
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #555;
    pointer-events: none;
}

/* Options dropdown */
.custom-font-dropdown__options {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    border: 1px solid #ccc;
    border-top: none;
    max-height: 250px;
    overflow-y: auto;
    background-color: white;
    z-index: 10;
    border-radius: 0 0 4px 4px;
    display: none;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

/* Show options when active */
.custom-font-dropdown__options.active {
    display: block;
}

/* Individual option */
.custom-font-dropdown__option {
    padding: 8px 12px;
    cursor: pointer;
    border-bottom: 1px solid #f5f5f5;
}

/* Last option */
.custom-font-dropdown__option:last-child {
    border-bottom: none;
}

/* Hover state */
.custom-font-dropdown__option:hover {
    background-color: #f5f5f5;
}

/* Focus state */
.custom-font-dropdown:focus-within .custom-font-dropdown__selected {
    border-color: #4A90E2;
    box-shadow: 0 0 0 2px rgba(74, 144, 226, 0.2);
}

.add-customisation{
    background-color: #0c4e72;
    color: #fff;
    padding: 20px;
}

.mcm-apo-mat-quality {
    padding: 20px;


}

.mw-option__price {
    color: #dd2233;
    font-weight: bold;
}

.mw-option__container-vertical .mw-option__value-text {
    display: block;
    text-wrap: nowrap;
    overflow: unset;
    width: 100%;
    text-overflow: unset;
    margin-bottom: 10px;
}


.mw-option__compare-price {
    font-weight: bold;
    color: #1d1d1d;
}


.mw-option__container-vertical .mw-text {
    min-height: 16px;
    font-size: 13px;
    font-weight: bold;
    color: #1d1d1d;
}

/* Base style for all option values */
#o_2144123.mw-option--type-swatch .mw-option__value,
#o_2144123.mw-option--type-multiswatch .mw-option__value {
    background-color: #fff;
    border: 2px solid #0c4e72;
    color: #000 !important;
}

/* Style for selected option values - fix for the selector */
#o_2144123 .mw-option__value--selected {
    background-color: #fff !important;
    border: 2px solid #4cca3b !important;
    color: #000 !important;
}



#duplicated-price-container {
    margin-bottom: 15px;
    width: 100%;
}

/* Ensure the original price element is still visible */
#price-template--24878366425425__main {
    display: block;
}

/* Style adjustments for the duplicated price */
#duplicated-price-container .price {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

/* Hide the "Sale" badge in the duplicated price if needed */
#duplicated-price-container .price__badge-sale {
    display: none;
}

@media screen and (max-width: 440px) {
    .mw-option__container-vertical .mw-text {
        min-height: 16px;
        font-size: 10px;
        font-weight: bold;
        color: #1d1d1d;
    }
}



/* SEO Description Styling */
.seo-description {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    line-height: 1.6;
    color: #333;
    margin: 25px 0;
    padding: 0 15px;
}

.seo-description h2 {
    font-size: 24px;
    color: #2c3e50;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #eaeaea;
}

.seo-description h3 {
    font-size: 18px;
    color: #2c3e50;
    margin: 20px 0 10px;
}

.seo-description p {
    margin-bottom: 15px;
    font-size: 15px;
}

.seo-description .intro {
    font-size: 16px;
    font-weight: 500;
}

.seo-description ul {
    padding-left: 20px;
    margin-bottom: 15px;
}

.seo-description li {
    margin-bottom: 8px;
    position: relative;
}

.seo-description strong {
    color: #2c3e50;
}

.seo-description .features-section,
.seo-description .quality-section,
.seo-description .custom-fit-section,
.seo-description .benefits-section,
.seo-description .conclusion {
    margin-bottom: 20px;
}

.seo-description .conclusion {
    background-color: #f8f9fa;
    padding: 15px;
    border-radius: 5px;
    font-weight: 500;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .seo-description h2 {
        font-size: 20px;
    }

    .seo-description h3 {
        font-size: 16px;
    }

    .seo-description p,
    .seo-description .intro,
    .seo-description li {
        font-size: 14px;
    }
}


/*Review Banners*/
.review-badge{
    padding-top: 20px;
    img{
        width: 340px;
    }
}
.review-stars {
    margin-top: 10px;
}

.review-stars img {
    width: 100%;
    max-width: var(--buttons-width, 100%);
    height: auto;
    display: block;
}

.price-item{
    color: #0c4e72;
}

