/* General */

.woocommerce-page:not(.single-product) .site-header {
    box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.16);
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
    border-radius: 0;
}

.woocommerce h2,
.woocommerce h3{
    font-size: 1.5rem;
}

/* Carrito en cabecera */

.header-cart-contents,
.header-myaccount-contents{
    font-family: 'Raleway', sans-serif;
    color: #7f7f7f;
    font-weight: 500;
    padding: 9px 0;
    border-bottom: 3px solid transparent;
    margin-left: 1rem;
}
.header-myaccount-contents{
    margin-left: 0.5rem;
}
.header-cart-contents:hover,
.header-myaccount-contents:hover,
.header-cart-contents.current,
.header-myaccount-contents.current{
    color: #7f7f7f;
    border-color: #C7B084;
    text-decoration: none;
}


/* Filtros (atributos y precio) */
.wp-block-woocommerce-attribute-filter input[type='checkbox']:checked + label:before {
    color: #FF4D00;
}
.wc-block-components-price-slider .wc-block-components-price-slider__range-input-wrapper .wc-block-components-price-slider__range-input-progress{
    --range-color: #FF4D00;
}

/* Listado productos - Defecto */
.woocommerce ul.products li.product{
    text-align: left;
    box-shadow: unset;
}
.woocommerce ul.products li.product a img{
    margin-bottom: 0.75rem;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
    color: #000;
    font-weight: 600;
    font-size: 1rem;
    margin: 0 0 0.25rem 0;
    padding: 0;
}
.woocommerce ul.products li.product .product-meta{
    display: inline-block;
    min-width: 80px;
    color: #777777;
}
.woocommerce ul.products li.product .price{
    margin: 0 0 0.75rem 0;
    display: inline-block;
    font-size: 0.9rem;
    color: #777777;
}
.woocommerce ul.products li.product .button{
    float:right;
    margin-top: -2.2rem;

    border-radius: 38px;
    line-height: 38px;
    padding: 0 1rem;
    background: transparent;
    border: 1px solid #707070;
    color: #000;
    font-weight: 400;
    transition: all 0.3s ease;
}
.woocommerce ul.products li.product .button:hover{
    background: #000;
    color: #fff;
}

.woocommerce ul.products li.product .product_attributes .swatch-image{
    margin-right: 0.5rem;
    margin-bottom: 0.5rem;
    display: inline-block;
}
.woocommerce ul.products li.product .product_attributes .swatch-image img{
    border-radius: 50%;
    width: 30px;
    height: auto;
    box-shadow: 0 0 2px #666;
}

.woocommerce ul.products li.product .woocommerce-placeholder{
    border: 0;
}

/* Listado productos - Bloque */
.wc-block-grid .wc-block-components-product-title{
    font-family: 'Lora', sans-serif;
    font-size: 1.1rem;
    margin: 0 1rem 0.75rem 1rem;
}
.wc-block-grid .wc-block-components-product-title a{
    color: #FF4D00;
    font-weight: 600;
}
.wc-block-grid__product .wc-block-grid__product-price{
    font-family: 'Lora', sans-serif;
    font-size: 1.1rem;
    margin: 0 1rem 0.75rem 1rem;
    color: #000;
    font-weight: 500;
}
.wc-block-grid__product-add-to-cart a,
.wc-block-grid__product-add-to-cart button{
    border-radius: 0;
    background: #000;
}
.wp-block-button.wc-block-components-product-button{
    margin-bottom: 1rem;
}

/* Ficha producto */

.woocommerce div.product div.images{
    width: calc(100% - 30rem);
}
.woocommerce div.product div.images.woocommerce-product-gallery{
    position: -webkit-sticky;
    position: sticky;
    top: 90px;
}
.woocommerce div.product div.images .woocommerce-product-gallery__image:nth-child(n+2){
    width: 100%;
}

.product-template-default article.post-single .entry-content,
.product-template-default article.post-single .entry-footer{
    margin-left: 0;
}
.woocommerce div.product div.summary{
    max-width: 27rem;
    margin-left: 3rem;
}
.woocommerce div.product div.summary .product_title{
    color: #000;
    font-size: 1.8rem;
    line-height: 1.2;
    margin-bottom: 0.625rem;
}
.woocommerce div.product div.summary .product_meta{
    color: #2E1F1C;
    margin-bottom: 0.5rem;
}
.woocommerce div.product div.summary p.price,
.woocommerce div.product div.summary span.price{
    color: #2E1F1C;
    padding: 0 0 1rem 0;
    border-bottom:1px solid #707070;
    margin: 0 0 1rem 0;
}
.woocommerce div.product div.summary form.cart div.quantity{
    display: none !important;
    float: none;
    margin-bottom: 1rem;
}
.woocommerce div.product div.summary form.cart .button{
    float: none;
    border-radius: 50px;
    line-height: 50px;
    background: #000;
    padding: 0 1.5rem;
    text-align: center;
    font-weight: 400;
    transition: all 0.3s ease;

    display: inline-block;
    width: auto;
    min-width: 220px;
}
.woocommerce div.product div.summary form.cart .button:hover{
    background: #fff;
    color: #000;
}

.woocommerce div.product div.summary h2{
    color: #000;
    font-size: 1.2rem;
    padding-bottom: 0.65rem;
    border-bottom: 1px solid #E4E4E4;
}
.woocommerce div.product div.summary .descripcion-larga b{
    color: #000;
}

.woocommerce div.product form.cart {
    margin-bottom: 2rem;
}

/* variation-swatches */
.woocommerce div.product .variations{
    position: relative;
    margin-bottom: 1.5rem;
}
.woocommerce div.product .variations tr{
    border-bottom: 1px solid #E4E4E4;
}
.woocommerce div.product .variations tr:last-child{
    border-color: #000;
}
.woocommerce div.product .variations tr td.label{
    padding: 0;
    vertical-align: center;
}
.woocommerce div.product .variations tr td.label label{
    font-weight: 400;
    margin-bottom: 15px;
    padding-top: 4px;
}
.woocommerce div.product .variations tr td.value{
    padding: 0;
}
.woocommerce div.product .variations tr:nth-child(2) td{
    padding-top: 15px;
}
.woocommerce div.product .variations .tawcvs-swatches{
    padding: 0;
}
.woocommerce div.product .variations .reset_variations{
    position: absolute;
    right: 0;
    bottom: 2px;
}

/* especificaciones */
.woocommerce div.product .descripcion_div{
    margin-bottom: 4rem;
    display: flex;
}
.woocommerce div.product .descripcion_div h2 {
    color: #000;
    font-size: 2rem;
    font-weight: 300;
    margin-bottom: 0;
    text-transform: uppercase;
    flex: 30% 0 0;
}
.woocommerce div.product .descripcion_div > div {
    flex: 70% 0 0;
    margin-top: 0.7rem;
}

.woocommerce div.product .especificacion_agrupacion {
    display: flex;
}
.woocommerce div.product .especificacion_agrupacion h3{
    flex: 25% 0 0;
    font-family: 'Nunito Sans', sans-serif;
    font-size: 1rem;
    margin: 0 0 1rem 0;
    letter-spacing: 0;
    text-transform: uppercase;
    font-weight: 600;
}
.woocommerce div.product .especificacion_agrupacion > div{
    flex: 75% 0 0;

    display: flex;
    flex-wrap: wrap;
    padding-bottom: 1rem;
    border-bottom: 1px solid #E4E4E4;
    margin-bottom: 2rem;
}
.woocommerce div.product .especificacion_agrupacion > div > div{
    flex: 33.3% 0 1;
    padding-right: 1rem;
    margin-bottom: 1rem;
}
.woocommerce div.product .especificacion_agrupacion > div > div span:first-child{
    display: block;
    color: #000;
    font-weight: 600;
}
.woocommerce div.product .especificacion_agrupacion > div > div span:last-child{
    display: block;
}

/* Tecnologia */
.woocommerce div.product .tecnologia_div{
    margin-top: 4rem;
}
.woocommerce div.product .tecnologia_div h2{
    display: none;
}
.woocommerce div.product .tecnologia_agrupacion{
    margin-bottom: 4rem;
}
.woocommerce div.product .tecnologia_agrupacion h3{
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 1.25rem;

    margin: 0 0 1rem 0;
}

/* Geometria */
.woocommerce div.product .geometria_div{
    margin-bottom: 4rem;
    display: flex;
    flex-wrap: wrap;
}
.woocommerce div.product .geometria_div h2{
    flex: 100% 0 0;


    font-family: 'Montserrat', sans-serif;
    letter-spacing: 3px;
    color: #000;
    font-size: 2rem;
    font-weight: 300;
    margin-bottom: 0;
    text-transform: uppercase;
}
.woocommerce div.product .geometria_div .geometria_img{
    flex: 50% 1 1;
}
.woocommerce div.product .geometria_div .geometria_table{
    flex: 50% 1 1;
    padding-left: 2rem;
}
.woocommerce div.product .geometria_div table{
    width: 100%;
}
.woocommerce div.product .geometria_div table tr{
    border-bottom: 1px solid #eee;
}
.woocommerce div.product .geometria_div table th,
.woocommerce div.product .geometria_div table td{
    color: #000;
    font-weight: 300;
    padding: 0.5rem 0.25rem;
}
.woocommerce div.product .geometria_div table tbody th{
    font-weight: 600;
}

.woocommerce div.product .geometria_div .ball{
    display: inline-block;
    width: 18px;
    height: 18px;
    text-align: center;
    line-height: 18px;
    border-radius: 17px;
    background-color: #615D5E;
    font-size: 10px;
    color: white;
}
.woocommerce div.product .geometria_div .ball.ball-l1,
.woocommerce div.product .geometria_div .ball.ball-l2,
.woocommerce div.product .geometria_div .ball.ball-l3{
    background-color: #000000;
}
.woocommerce div.product .geometria_div .ball.ball-a1,
.woocommerce div.product .geometria_div .ball.ball-a2{
    background-color: #D01E2D;
}
.woocommerce div.product .geometria_div .ball.ball-stack,
.woocommerce div.product .geometria_div .ball.ball-reach{
   display: none;
}

/* Productos relacionados */
.woocommerce div.product .related.products > h2{
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 3px;
    font-size: 2rem;
    text-align: center;
    color: #000;
    margin-top: 1rem;
    margin-bottom: 2rem;
}
.woocommerce div.product .related.products ul.products li.product{
    box-shadow: unset;
}
/*.woocommerce div.product .related.products ul.products li.product .button {
    margin-top: -0.2rem;
}*/
.woocommerce div.product .related.products ul.products li.product {
    flex: 1 0 calc(33.33% - 2rem);
    max-width: calc(33.33% - 2rem);
}

/*.woocommerce div.product .related.products ul.products li.product{
    box-shadow: unset;
}
.woocommerce div.product .related.products ul.products li.product h2{
    color: #000;
    font-weight: 600;
    font-size: 1rem;
    margin: 0 0 0.25rem 0;
    padding: 0;
}
.woocommerce div.product .related.products ul.products li.product a{
    color: #FF4D00;
    font-weight: 600;
}
.woocommerce div.product .related.products ul.products li.product .price{
    font-family: 'Lora', sans-serif;
    font-size: 1.1rem;
    margin: 0 1rem 0.75rem 1rem;
    color: #000;
    font-weight: 500;
}
.woocommerce div.product .related.products ul.products li.product .button{
    border-radius: 0;
    background: #000;
    color: #fff;
    margin: 0 0 1rem 0;
}*/

/* Cart */

.woocommerce .woocommerce_page_title{
    color:#000000;
    font-size: 1.5rem;
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
    margin-bottom: 0.5rem;
}
.woocommerce .woocommerce_page_title .far{
    display: none;

    color: #FF4D00;
    font-size: 2.5rem;
    margin-bottom: 1rem;
}
.woocommerce .woocommerce_page_intro{
    text-align: center;
    color:#000000;
    margin-bottom: 2rem;
    font-size: 1rem;
}

.woocommerce-info{
    border-color: #FF4D00;
}
.woocommerce-info::before{
    color: #FF4D00;
}

.woocommerce-cart table.cart .product-thumbnail{
    width: 200px;
}
.woocommerce-cart table.cart img{
    width: 200px;
    border-radius: 0;
}
.woocommerce-cart .cart-collaterals .cart_totals{
    max-width: 300px;
}
.woocommerce-cart table.cart input{
    border-radius: 0;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-page #payment #place_order{
    text-transform: uppercase;
    background: #000;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-page #payment #place_order_hover{
    background: #000;
    opacity: 0.8;
}

.woocommerce-cart .cart-collaterals .cart_totals .woocommerce-shipping-destination,
.woocommerce-cart .cart-collaterals .cart_totals .woocommerce-shipping-calculator{
    display: none;
}

/* Carrito vacio */

.woocommerce-cart .return-to-shop{
    text-align: center;
}
.woocommerce-cart .return-to-shop a{
    background: #000000;
    color: #fff;
}
.woocommerce-cart .return-to-shop a:hover{
    background: #000000;
    color: #fff;
    opacity: 0.8;
}

.woocommerce-cart.empty-cart{
    background: url('../img/bg-empty-cart-cropped-2.png');
    background-position: top center;
    background-repeat: no-repeat;
}
.woocommerce-cart.empty-cart article{
    background: transparent;
    padding: 6rem 0 4rem 0;
}

.woocommerce .cart-empty .woocommerce_page_intro{
    margin-bottom: 1.5rem;
}
.cart-empty .woocommerce_page_icon{
    text-align: center;
    margin-bottom: 1.5rem;
}
.cart-empty .fa-bicycle{
    color: #FF4D00;
    font-size: 2.125rem;
}

/* Checkout */

.woocommerce-checkout .woocommerce .woocommerce-checkout h3{
    font-size: 1.1rem;
    text-transform: uppercase;
    font-weight: 600;
}

.woocommerce-checkout .woocommerce #customer_details .form-row input.input-text,
.woocommerce-checkout .woocommerce #customer_details .form-row textarea,
.woocommerce-checkout .woocommerce #customer_details .form-row select,
.woocommerce-account .woocommerce-MyAccount-content .form-row input.input-text,
.woocommerce-account .woocommerce-MyAccount-content .form-row textarea,
.woocommerce-account .woocommerce-MyAccount-content .form-row select,
.select2-container--default .select2-selection--single {
    border-radius: 0;
    border-left: 2px solid #000;
}

.woocommerce-checkout .woocommerce .woocommerce-additional-fields,
.woocommerce-checkout .woocommerce .woocommerce-billing-fields__field-wrapper{
    border-radius: 0;
    background: transparent;
    border: 1px solid #E4E4E4;
}
.woocommerce-checkout .woocommerce .woocommerce-additional-fields{
    border-top-color: #fff;
    margin-top: -1px;
}

.woocommerce table.shop_table{
    border-radius: 0;
    border: 1px solid #E4E4E4;
}

.woocommerce-order-received .woocommerce .woocommerce-thankyou-order-received::before{
    color: #FF4D00;
    font-size: 2.5rem;
    margin-bottom: 1rem;
}
.woocommerce-order-received .woocommerce .woocommerce-thankyou-order-received{
    color:#666666;
    font-size: 1.5rem;
    font-family: 'Raleway', sans-serif;
    font-weight: 600;
}

.woocommerce-order-received .woocommerce .woocommerce-order-details__title,
.woocommerce-order-received .woocommerce .woocommerce-column__title{
    color: #000;
    font-size: 1.1rem;
    text-transform: uppercase;
    font-weight: 600;
}

.woocommerce .woocommerce-customer-details address{
    margin-bottom: 2rem;
}
.woocommerce-order-received .woocommerce .woocommerce-customer-details .woocommerce-customer-details--phone::before,
.woocommerce-order-received .woocommerce .woocommerce-customer-details .woocommerce-customer-details--email::before {
    color: #FF4D00;
}


.woocommerce table.shop_table{
    border-collapse: collapse;
}
.woocommerce table.shop_table .woocommerce-shipping-totals,
.woocommerce table.shop_table .shipping-pickup-store{
    background: #ebe9eb;
}
.woocommerce table.shop_table .shipping-pickup-store .select2-container{
    max-width: 300px;
    z-index: 900 !important;
}

/* Account */

.woocommerce-account .woocommerce-MyAccount-header > div {
    background: #C7B084;
}
.woocommerce-account .woocommerce-MyAccount-header > p:nth-child(2) strong{
    font-weight: 500;
    color: #FF4D00;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a{
    color: #FF4D00;
    text-decoration: underline;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover:before,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a:before {
    color: #FF4D00;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--downloads {
    display: none;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields p:not(.form-row) button,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm p:not(.form-row) button{
    background: #FF4D00;
    color: #fff;
    font-weight: 500;
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-address-fields p:not(.form-row) button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-EditAccountForm p:not(.form-row) button:hover{
    background: #FF4D00;
    color: #fff;
    opacity: 0.8;
}

/* Login */
.woocommerce div.profesionales{
    max-width: 25rem;
    margin: 4rem auto 2rem auto;
    padding: 1.5rem 1.5rem 0.5rem 1.5rem;
}
.woocommerce div.profesionales h2{
    line-height: 1.2em;
    font-size: 1.4rem;
    color: #000;
}
.woocommerce div.profesionales .button{
    float: none;
    display: block;
    width: 100%;
    margin: 0;
    text-align: center;
}

.woocommerce form.login,
.woocommerce form.register,
.woocommerce div.profesionales{
    background: transparent;
    border-radius: 0;
    border:1px solid #EEEEEE;
    text-align: left;
    padding-bottom: 0;
}
.woocommerce form.login .woocommerce-form-row input,
.woocommerce form.register .woocommerce-form-row input{
    border:1px solid #E5E2E2;
    border-left: 2px solid #000;
    border-radius: 0;
}
.woocommerce form.login .woocommerce-form-row .password-input .show-password-input::after,
.woocommerce form.register .woocommerce-form-row .password-input .show-password-input::after{
    color: #000;
}

.woocommerce form.login .form-row.form-row-button,
.woocommerce form.register .form-row.form-row-button,
.woocommerce div.profesionales .form-row.form-row-button{
    margin: 0 -1.5rem 0 -1.5rem;
}
.woocommerce form.login .form-row .woocommerce-form-login__submit,
.woocommerce form.register .form-row .woocommerce-form-register__submit,
.woocommerce div.profesionales .button{
    background: #000;
    color: #fff;
    font-weight: 500;
    padding: 1rem;
    text-transform: uppercase;
    border-radius: 0;
}
.woocommerce form.login .form-row .woocommerce-form-login__submit:hover,
.woocommerce form.register .form-row .woocommerce-form-register__submit:hover,
.woocommerce div.profesionales .button:hover{
    background: #000;
    color: #fff;
    opacity: 0.8;
}

.woocommerce form.login .form-row.form-row-rememberme-lost{
    display: flex;
    justify-content: flex-start;
    flex-direction: row;
    align-items: center;
}
.woocommerce form.login .form-row .woocommerce-form-login__rememberme{
    display: inline-block;
    width: auto;
    margin-left: auto;
    margin-bottom: 0;
}
.woocommerce form.login .form-row .woocommerce-LostPassword a{
    color: #707070;
    font-style: italic;
    text-decoration: underline;
}

/*** Pago TPV ***/

#redsys_payment_form{
    display: flex;
    align-items: center;
}

#redsys_payment_form .button-alt{
    display: inline-block;
    text-align: center;
    font-size: 1.25em;
    padding: 1em;
    text-transform: uppercase;
    background: #000;
    color: #fff;
    border: 0;
    font-weight: 700;
    border-radius: 3px;
    line-height: 1;
}
#redsys_payment_form .button-alt:hover{
    background: #000;
    opacity: 0.8;
}

#redsys_payment_form .button.cancel{
    margin-left: auto;
}


/*** Media queries ***/

/* Large devices (landscape tablets, desktops) */
@media (max-width: 1200px) {

}

/* Medium devices (vertical tablets) */
@media (max-width: 991px) {
    .woocommerce div.product div.images{
        width: 100%;
    }

    .woocommerce div.product div.images.woocommerce-product-gallery{
        position: relative;
        top: unset
    }
    .woocommerce div.product div.summary{
        max-width: unset;
        margin-left: 0;
    }
    .woocommerce div.product .descripcion_div{
        flex-direction: column;
    }

    .woocommerce ul.products li.product .button{
        margin-top: 0;
    }

}

/* Small devices (landscape phones)  */
@media (max-width: 767px) {

}

/* Small devices (vertical phones) */
@media (max-width: 575px) {
    .header-cart-contents{
        margin-left: 1rem;
    }

    .woocommerce div.product .especificacion_agrupacion > div > div{
        flex: 50% 0 1;
    }
    .woocommerce div.product .geometria_div .geometria_table{
        padding-left: 0;
    }

    .woocommerce div.product .related.products ul.products{
        flex-wrap: wrap;
    }
    .woocommerce div.product .related.products ul.products li.product{
        flex: 100% 0 0;
        width: 100%;
        max-width: calc(100% - 2rem);
    }
    .woocommerce ul.products li.product .button {
        margin-top: -1.7rem;
    }

    #redsys_payment_form{
        flex-direction: column;
    }
    #redsys_payment_form .button-alt{
        margin-bottom: 1.5rem;
    }
    #redsys_payment_form .button.cancel{
        margin-left: unset;
    }
}