/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* Woocomerce */
html {
    scroll-behavior: smooth;
}
.woocommerce .quantity .qty {
    text-align: center;
    width: 100%;
}

/*Mini Cart*/
.dropdown-menu.dropdown-menu-mini-cart {
    list-style: none;
    width: 100%;
    max-width: 327px;
    max-height: 0;
    overflow: hidden;
    border-radius: 8px;
    background-color: #fff;
    margin: 0;
    opacity: 0;
    right: -100%;
    transition: opacity 0.3s 0s ease-in-out;
    position: absolute;
}
.dropdown-menu.dropdown-menu-mini-cart.active {
    opacity: 1;
    box-shadow: 0px 4px 5px 1px rgba(0,0,0,0.19);
    padding: 10px 25px 0px;
    max-height: 100vh;
    right: 0;
    top: 127px;
    z-index: 1000;
}
.woocommerce-mini-cart.cart_list.product_list_widget {
    margin: 0;
    list-style: none;
}
.dropdown-menu.dropdown-menu-mini-cart .woocommerce-mini-cart-item.mini_cart_item a img {
    width: 100%;
    height: 100%;
    max-width: 35px;
    max-height: 90px;
    margin-right: 13px;
    object-fit: contain;
}
.dropdown-menu.dropdown-menu-mini-cart .woocommerce-mini-cart-item.mini_cart_item a:hover {
    background-color: transparent;
}
.woocommerce-mini-cart-item.mini_cart_item {
    display: grid;
    grid-template-columns: repeat(5,1fr);
    font-size: 13px;
    line-height: 1.2em;
    grid-template-rows: 50px 20px;
    border-bottom: 1px solid #EAEAEA;
    padding-bottom: 20px !important;
    margin-top: 10px !important;
}
.dropdown-menu.dropdown-menu-mini-cart .woocommerce-mini-cart-item.mini_cart_item > a:not(.remove) {
    width: 100%;
    display: flex !important;
    font-size: 14px;
    font-weight: 300;
    grid-column: 1/5;
    grid-row: 1/2;
    line-height: 1.2;
}
.dropdown-menu.dropdown-menu-mini-cart .woocommerce-mini-cart__total.total {
    display: none;
}
.dropdown-menu.dropdown-menu-mini-cart .woocommerce-mini-cart__buttons.buttons {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
}
.dropdown-menu.dropdown-menu-mini-cart .remove {
    grid-column: 5/6;
    grid-row: 1/2;
    width: 100%;
    height: 100%;
    font-size: 0;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg width='13' height='13' viewBox='0 0 13 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='11.4943' y1='0.960714' x2='0.400446' y2='12.4206' stroke='black'/%3E%3Cline x1='12.0724' y1='12.1541' x2='0.420582' y2='1.26199' stroke='black'/%3E%3C/svg%3E");
}
.dropdown-menu.dropdown-menu-mini-cart .remove:hover {
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg width='13' height='13' viewBox='0 0 13 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline x1='11.4943' y1='0.960714' x2='0.400446' y2='12.4206' stroke='black'/%3E%3Cline x1='12.0724' y1='12.1541' x2='0.420582' y2='1.26199' stroke='black'/%3E%3C/svg%3E");
}
.dropdown-menu.dropdown-menu-mini-cart .quantity {
    grid-column: 2/4;
    grid-row: 2/3;
    display: flex;
    display: none;
}
.dropdown-menu.dropdown-menu-mini-cart .quantity:before {
    content: 'Qty:';
    padding-right: 10px;
}
.woocommerce-mini-cart__buttons.buttons .button.wc-forward {
    width: 100%;
    text-align: center;
    background-color: #fbef02;
    border-radius: 2em;
    padding: 9px 15px;
    color: #000;
    font-family: Montserrat;
    max-width: 181px;
    font-size: 15px;
    font-weight: 500;
    margin: 26px auto 27px;
    line-height: 18px;
}
#masthead .mini-cart-outer {
    list-style: none;
}
#masthead .mini-cart-outer a {
    font-size: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='28' height='26' viewBox='0 0 28 26' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.876 18.776C23.727 18.776 25.239 20.332 25.239 22.235C25.239 24.137 23.726 25.694 21.876 25.694C20.026 25.694 18.512 24.137 18.512 22.235C18.512 20.332 20.025 18.776 21.876 18.776ZM21.876 23.62C22.616 23.62 23.223 22.996 23.223 22.235C23.223 21.475 22.617 20.851 21.876 20.851C21.135 20.851 20.531 21.475 20.531 22.235C20.531 22.996 21.136 23.62 21.876 23.62ZM27.293 5.425C27.461 5.667 27.528 5.979 27.461 6.29L25.005 16.495C24.903 16.978 24.501 17.29 24.029 17.29H8.31596C7.84496 17.29 7.44196 16.978 7.34096 16.495L4.04396 2.381H1.52096C0.949963 2.381 0.511963 1.931 0.511963 1.344C0.511963 0.756 0.949963 0.306 1.52096 0.306H4.85196C5.32296 0.306 5.72696 0.618 5.82796 1.101L6.73496 5.01H26.485C26.822 5.01 27.091 5.183 27.293 5.425ZM23.255 15.214L25.207 7.085H7.23996L9.12396 15.214H23.255ZM9.66296 18.776C11.514 18.776 13.027 20.332 13.027 22.235C13.027 24.137 11.513 25.694 9.66296 25.694C7.81296 25.694 6.29896 24.137 6.29896 22.235C6.29896 20.332 7.81296 18.776 9.66296 18.776ZM9.66296 23.62C10.402 23.62 11.009 22.996 11.009 22.235C11.009 21.475 10.403 20.851 9.66296 20.851C8.92196 20.851 8.31596 21.475 8.31596 22.235C8.31596 22.996 8.92196 23.62 9.66296 23.62Z' fill='%231A1818'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    width: 25px;
    height: 25px;
    display: block;
    position: relative;
    overflow: visible;
    background-size: 100%;
    top: 4px;
}
#masthead .mini-cart-outer {
    order: 6;
    margin: 0;
    border-top: 1px solid rgba(112,112,112,0.18);
    padding-top: 12px;
}

/* .main-navigation .main-nav > ul {
    width: 100%;
} */
.woocommerce-mini-cart__empty-message {
    margin-bottom: 12px;
}
#masthead .mini-cart-outer a::after {
    content: attr(cart-count);
    min-width: 18px;
    height: 18px;
    background-color: #FE0;
    border-radius: 2em;
    top: -7px;
    left: 13px;
    position: absolute;
    font-size: 13px;
    display: grid;
    place-content: center;
    color: #1A1818;
    padding: 0 3px;
}
.quantity.buttons-added {
    background: rgba(137, 137, 137, 0.18); 
    border-radius: 6px;
    margin: 0 15px 0 0!important;
    display: flex;
    width: 100%;
    max-width: 150px;
    text-align: center;
}
.quantity.buttons-added .minus, .quantity.buttons-added .plus {
    border: none;
    font-size: 18px;
    width: 100%;
    max-width: 50px;
}
.quantity.buttons-added .minus {
    line-height: 39px;
}
.quantity.buttons-added .plus {
    line-height: 43px;
}
.quantity.buttons-added .qty {
    max-width: 50px;
    background-color: transparent;
    border-bottom: 0;
    border-top: 0;
    padding: 0;
}
 /* Chrome, Safari, Edge, Opera */
.quantity.buttons-added input::-webkit-outer-spin-button,
.quantity.buttons-added input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
/* Firefox */
.quantity.buttons-added input[type=number] {
  -moz-appearance: textfield;
}
.product form.cart .single_add_to_cart_button.button.alt {
    display: flex;
    align-items: center;
    background-color: #fbef02;
    border: 1px solid #fbef02;
    float: none;
    border-radius: 50px;
    line-height: 1;
    padding: 12px 25px;
    color: #000;
}

/* Cart */
.woocommerce-cart .woocommerce table.shop_table {
    border-width: 0 0 1px 0;
    border-radius: 0;
}
.woocommerce-cart .woocommerce table.shop_table th {
    border-width: 0;
}
.woocommerce-cart .woocommerce table.shop_table td {
    border-width: 1px 0px 0px 0px;
}
.woocommerce-cart .woocommerce table.shop_table tr .product-thumbnail img {
    height: 60px !important;
    object-fit: contain;
}
.woocommerce-cart .woocommerce table.shop_table tr .product-thumbnail {
    padding: 0;
    min-width: unset;
    width: 50px;
    align-items: center;
    display: flex;
}
.woocommerce-cart .woocommerce table.shop_table tr .product-name {
    width: 78%;
    display: flex;
    align-items: center;
}
.woocommerce-cart .woocommerce table.shop_table tr .product-name {
    font-size: 15px;
    line-height: 18px;
}
.woocommerce-cart .woocommerce table.shop_table tr .product-name a {
    max-width: 264px;
}
.woocommerce-cart .woocommerce table.shop_table tbody tr .product-quantity {
    width: 150px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
}
.woocommerce-cart .woocommerce table.shop_table tr .product-quantity .quantity.buttons-added {
    margin: 0;
}
.woocommerce-cart .woocommerce table.shop_table tr .product-remove {
    width: 55px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.woocommerce-cart #page .woocommerce table.shop_table tr .actions {
    width: 100%;
    text-align: left;
}
.woocommerce-cart .woocommerce .product-remove a.remove {
    background-image: url("data:image/svg+xml,%3Csvg width='14' height='13' viewBox='0 0 14 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cline y1='-0.5' x2='16.3964' y2='-0.5' transform='matrix(-0.715192 0.698928 -0.737467 -0.675383 12.388 0)' stroke='black'/%3E%3Cline y1='-0.5' x2='16.4418' y2='-0.5' transform='matrix(-0.749092 -0.662466 0.702869 -0.711319 13.7397 11.1759)' stroke='black'/%3E%3C/svg%3E");
    color: transparent !important;
    background-color: transparent;
    background-position: center;
    background-repeat: no-repeat;
}
.woocommerce-cart #page {
    max-width: 860px;
}
.woocommerce-cart-form ~ .cart-collaterals .cart-subtotal, .woocommerce-cart-form ~ .cart-collaterals .cart_totals h2, .woocommerce-cart-form ~ .cart-collaterals .cart_totals table  {
    display: none;
}
.woocommerce-cart-form ~ .cart-collaterals .wc-proceed-to-checkout .checkout-button.button.alt.wc-forward {
    background-color: #fbef02;
    color: #000;
    border-radius: 2em;
    margin-bottom: 0;
    font-size: 16px;
    font-weight: 600;
}
.woocommerce-cart-form ~ .cart-collaterals .wc-proceed-to-checkout {
    width: 100%;
    max-width: 260px;
    
}
.woocommerce-page .cart-collaterals {
    width: 100%;
}
.woocommerce-cart-form ~ .cart-collaterals .cart_totals {
    width: 100%;
    display: flex;
    justify-content: right;
}
.woocommerce-cart .woocommerce table.shop_table tbody tr:last-child {
    display: none;
}
.woocommerce-cart .cart-collaterals {
    margin-bottom: 70px;
}

/*Checkout*/
#order_review #payment .woocommerce-terms-and-conditions-wrapper, #page #customer_details .woocommerce-billing-fields > h3 {
    display: none;
}
.woocommerce-checkout #payment {
    background: transparent;
}
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order {
    float: unset;
    background-color: #FFEE00;
    color: #000;
    height: 56px;
    width: 100%;
    font-size: 18px;
    text-transform: capitalize;
    margin-top: 25px;
}
#order_review .shop_table.woocommerce-checkout-review-order-table {
    box-shadow: 0 0 10px 1px rgba(0,0,0,0.13);
    border-radius: 6px;
    padding: 32px 39px 23px;
    margin-bottom: 13px;
}
#order_review .shop_table.woocommerce-checkout-review-order-table th {
    padding: 0;
}
#order_review .shop_table.woocommerce-checkout-review-order-table .cart_item:first-child > td {
    padding: 0 0 27px;
    border: none!Important;
}
#order_review .shop_table.woocommerce-checkout-review-order-table .cart_item > td {
    padding: 27px 0;
    border-width: 1px 0 0px 0;
    font-size: 15px;
}
#order_review .shop_table.woocommerce-checkout-review-order-table th {
    border: none;
}
#order_review .shop_table.woocommerce-checkout-review-order-table th h3 {
    margin-bottom: 13px;
    font-weight: 700;
}
#customer_details .col-1 {
    width: 55%;
}
#customer_details .col-2 {
    width: 38%;
}
#order_review .shop_table.woocommerce-checkout-review-order-table tfoot, #order_review .wc_payment_methods.payment_methods.methods {
    display: none;
}
#billing_message {
    min-height: 238px;
    border-radius: 15px;
}
.woocommerce-checkout form .form-row input.input-text {
    height: 45px;
}
.woocommerce-checkout form .form-row {
    position: relative;
    margin-bottom: 26px;
}
.woocommerce-checkout form .form-row:not(#billing_message_field):not(.place-order) {
    width: 49%;
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > p > label {
    position: absolute;
    left: 20px;
    top: 3px;
    transition: top 0.3s ease-in-out, left 0.3s ease-in-out;
    line-height: 45px;
}
.woocommerce-checkout form.checkout.woocommerce-checkout {
    margin-bottom: 50px;
}
.woocommerce-checkout .select2-selection.select2-selection--single {
    padding: 0px 15px;
    max-width: 100%;
    border-radius: 22px;
    height: 45px;
    background-color: #fafafa;
    border-color: #cccccc;
}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 45px;
    right: 11px;
}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 43px;
    padding: 0;
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > p > label.active {
    top: -36px;
    left: 0;
}
.woocommerce-checkout .woocommerce-billing-fields {
    margin-top: 35px;
}
.woocommerce-checkout .entry-title, .woocommerce-cart .entry-title {
    font-size: 27px;
}
.woocommerce-checkout #page .entry-content {
    margin-top: 10px;
}
#billing_message_field > label {
    top: 5px;
}
#billing_message_field > label.active {
    top: -34px;
}
#order_review .form-row.place-order > label input {
    margin-right: 10px;
    width: 19px;
    height: 19px;
    cursor: pointer;
}
#order_review .form-row.place-order > label {
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
    justify-content: flex-end;
    margin-bottom: 13px;
    cursor: pointer;
    line-height: 1.4em;
}
#order_review .form-row.place-order > label a {
    text-decoration: underline;
    margin-right: 4px;
}
.success-message-outer h1 {
    font-size: 32px;
    margin-bottom: 23px;
}
.success-message-outer p {
    margin-bottom: 0;
    font-size: 20px;
    line-height: 1.5;
    color: #414347;
}
.success-message-outer p strong {
    margin-top: 30px;
    display: block;
}
.success-message-outer {
    background-color: #F5F5F5;
    max-width: 636px;
    text-align: center;
    border-radius: 15px;
    padding: 40px 56px 46px;
    margin: 130px auto 80px;
}
.success-tick {
    display: block;
    margin: -61px auto 22px;
    background-color: #fff;
    width: 50px;
    border-radius: 50%;
    height: 50px;
}
.success-tick svg {
    width: 100%;
    height: 100%;
}
.woocommerce-order-received .entry-header {
    display: none;
}
.how-it-works-columns > div > p {
    font-size: 18px;
    font-weight: 600;
    color: #000;
    padding-left: 52px;
    position: relative;
    max-width: 260px;
}
.how-it-works-columns > div > p::before {
    display: grid;
    place-content: center;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    color: #000;
    content: '1';
    background-color: #fbef02;
    width: 39px;
    height: 39px;
    border-radius: 50%;
}
.how-it-works-columns > .wp-block-column:first-child > p:before {
    content: '1';
}
.how-it-works-columns > .wp-block-column:nth-child(2) > p:before {
    content: '2';
}
.how-it-works-columns > .wp-block-column:nth-child(3) > p:before {
    content: '3';
}
.how-it-works-columns > .wp-block-column:nth-child(4) > p:before {
    content: '4';
}
.bulk-header {
    max-width: 1200px;
    margin: 0 auto;
}

/*Accordions*/
.faqs-inner {
    max-width: 1200px;
    margin: 0 auto;
}
.faqs-inner h4 {
    position: relative;
    margin-bottom: 0;
    font-size: 18px;
    cursor: pointer;
}
.faqs-inner h4::after {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.052 19.422V0.377998H11.122V19.422H9.052ZM0.312 10.912V8.934H19.862V10.912H0.312Z' fill='black'/%3E%3C/svg%3E");
    width: 20px;
    height: 20px;
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.accordion-outer h4 ~ p {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-in-out;
    margin-top: 7px;
}
.accordion-outer.active h4 ~ p {
    max-height: 500px;
    font-size: 14px;
}
.accordion-outer {
    max-width: 800px;
    margin-bottom: 23px;
    border-bottom: 1px solid #EAEAEA;
}
.faqs-outer {
    padding: 0 20px;
}
.bulk-header-column {
    max-width: 500px;
}
.woocommerce-notices-wrapper .woocommerce-message {
    border: none !important;
    background-color: #F5F5F5;
    display: flex;
    align-items: center;
    width: 100%;
    border-radius: 15px;
    min-height: 65px;
    padding-left: 69px;
    margin-top: 10px;
}
.woocommerce-message::before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg width='30' height='30' viewBox='0 0 30 30' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0 15C0 6.71572 6.71572 0 15 0C23.2842 0 30 6.71572 30 15C30 23.2842 23.2842 30 15 30C6.71572 30 0 23.2842 0 15ZM14.1436 21.4212L22.781 10.6246L21.2192 9.37524L13.8565 18.5786L8.64024 14.2317L7.35986 15.7682L14.1436 21.4212Z' fill='%232BAD4F'/%3E%3C/svg%3E");
    width: 30px;
    height: 30px;
    transform: translateY(-50%);
    top: 50%;
    left: 23px;
}

/*Single product*/
.single-product .inside-article .entry-content {
    display: flex;
    flex-wrap: wrap;
}

@media screen and (min-width:768px) {
    .woocommerce-cart .woocommerce table.shop_table tr {
        display: flex;
    }
    .woocommerce-cart .woocommerce table.shop_table th {
        padding: 0 0px 12px;
        font-size: 18px !important;
        font-weight: 500;
        font-family: 'Montserrat';
        justify-content: left!important;
    }
    .woocommerce-cart .woocommerce table.shop_table tbody tr {
        height: 100px;
    }
}

@media screen and (max-width:1400px) {
    #primary-menu #menu-main-menu.menu .menu-item {
        margin: 0 24px 0 0;
    }
}

@media screen and (max-width:1200px) {
    #primary-menu #menu-main-menu.menu .menu-item {
        margin: 0 24px 0 0;
    }
    #primary-menu #menu-main-menu.menu .menu-item a {
        font-size: 14px;
    }
}

@media screen and (max-width:1040px) {
    #primary-menu #menu-main-menu.menu .menu-item {
        margin: 0 21px 0 0;
    }
}

@media screen and (max-width:991px) {
    #page .how-it-works-columns .wp-block-column {
        margin-bottom: 10px;
    }
    .woocommerce-cart .woocommerce table.shop_table tr:last-child {
        display: none;
    }
    #page .how-it-works-columns {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto;
    }
    .how-it-works-columns > div > p {
        max-width: 100%;
    }
    .how-it-works-columns .wp-block-image img {
        width: 100%;
    }
}

@media screen and (max-width:768px) {
    .header-cover.bulk-cover .wp-block-cover.alignfull {
        min-height: 360px !important;
    }
    #page .bulk-buying-description {
        margin-bottom: 0;
    }
    .success-message-outer h1 {
        font-size: 28px;
        margin-bottom: 18px;
    }
    .success-message-outer p {
        margin-top: 23px;
        font-size: 18px;
    }
    .success-message-outer {
        padding: 40px 25px 46px;
        margin: 80px auto 60px;
    }
    .success-tick {
        width: 45px;
        height: 45px;
    }
    #customer_details .col-1 {
        width: 100%;
    }
    #customer_details .col-2 {
        width: 100%;
        margin-top: 40px;
    }
    #payment .form-row.place-order {
        padding: 3px 0 !important;
    }
    .woocommerce-cart #page .woocommerce table.shop_table tr {
        display: grid;
        grid-template-columns: clamp(80px,150px,20%) repeat(2,1fr) 45px;
        grid-template-rows: auto repeat(3,30px);
        padding: 10px 0;
    }
    .woocommerce-cart #page .woocommerce table.shop_table tr:not(:first-child) {
        border-top: 1px solid rgba(0,0,0,.1);
    }
    .woocommerce-cart #page .woocommerce table.shop_table tr:nth-child(2n + 1) {
        background-color: rgba(0,0,0,.025);
    }
    .woocommerce-cart #page .woocommerce table.shop_table tr > td {
        width: 100%;
        display: block;
        text-align: left !important;
        background-color: transparent;
    }
    .woocommerce-cart #page .woocommerce table.shop_table tr:last-child {
        display: none;
    }
    .woocommerce-cart #page .woocommerce table.shop_table tr > td:before  {
        content: unset;
    }
    .woocommerce-cart .woocommerce table.shop_table td {
        border-width: 0;
    }
    .woocommerce-cart .woocommerce table.shop_table {
        border-width: 0;
    }
    .woocommerce-cart .woocommerce table.shop_table tr .product-thumbnail img {
        height: 100% !important;
        object-fit: contain;
        width: 100%;
        max-height: 120px;
    }
    .woocommerce-cart #page .woocommerce table.shop_table tr > .product-thumbnail {
        grid-column: 1/2;
        grid-row: 1/5;
    }
    .woocommerce-cart #page .woocommerce table.shop_table tr > .product-name {
        grid-column: 2/4;
        grid-row: 1/3;
    }
    .woocommerce-cart #page .woocommerce table.shop_table tr > .product-quantity {
        grid-column: 2/5;
        grid-row: 3/4;
        padding: 0 14px;
    }
    .woocommerce-cart #page .woocommerce table.shop_table tr > .product-remove {
        grid-column: 4/5;
        grid-row: 1/2;
        display: flex;
        align-items: baseline;
    }
    .woocommerce-cart-form ~ .cart-collaterals .cart_totals {
        justify-content: center;
    }
}

@media screen and (max-width:550px) {
    .woocommerce-checkout form .form-row {
        width: 100%!important;
    }
    .woocommerce-cart-form ~ .cart-collaterals .wc-proceed-to-checkout {
        max-width: 100%;
    }
    #page .how-it-works-columns {
        grid-template-columns: 1fr;
        grid-template-rows: unset;
    }
}

@media screen and (max-width:370px) {
    .single-product form.cart {
        display: flex;
        flex-wrap: wrap;
    }
    .product form.cart .single_add_to_cart_button.button.alt {
        margin-top: 20px;
    }
}

/* Thumbnail Carousel Navigation */
.flex-control-nav.flex-control-thumbs {
    position: relative;
    padding: 0 40px;
}

.woocommerce div.product .woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1) {
  clear: none !important;
}

.woocommerce div.product div.images .flex-control-thumbs { 
    padding: 0px 2px 0 0 !important;
}
 
.flex-control-nav.flex-control-thumbs .slick-list {
    margin: 0 -5px;
}

.flex-control-nav.flex-control-thumbs .slick-slide {
    margin: 0 5px !important;
}

.flex-control-nav.flex-control-thumbs .slick-prev,
.flex-control-nav.flex-control-thumbs .slick-next {
    display: flex !important;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 35px;
    height: 35px;
    background: rgba(0, 0, 0, 0.9);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 0;
} 

.flex-control-nav.flex-control-thumbs .slick-prev svg,
.flex-control-nav.flex-control-thumbs .slick-next svg { 
    width: 15px;
    height: 15px;
    fill: #fff;
}

.flex-control-nav.flex-control-thumbs .slick-prev {
    left: 0;
}

.flex-control-nav.flex-control-thumbs .slick-next {
    right: 0;
}

.flex-control-nav.flex-control-thumbs .slick-prev.slick-disabled,
.flex-control-nav.flex-control-thumbs .slick-next.slick-disabled {
    opacity: 0.3;
    cursor: not-allowed;
}

/* Ensure video displays properly in gallery */
.woocommerce-product-gallery__image iframe,
.woocommerce-product-gallery__image video {
    width: 100%;
    height: auto;
    min-height: 400px;
    display: block;
}

.woocommerce-product-gallery__wrapper {
    position: relative;
}

/* Style video thumbnail */
.flex-control-thumbs li.video-thumb {
    position: relative;
}