/*<editor-fold desc="Propiedades del Producto">*/
ul.colores,
ul.opciones {
    list-style: none;
    margin: 0;
    padding: 0;
    display: inline-block;
}

ul.colores li,
ul.opciones li {
    display: inline-block;
    list-style: none;
    margin: 0 5px 10px 0;
    padding: 0;
}

ul.colores li input,
ul.opciones li input {
    display: none;
}

ul.colores li label {
    display: block;
    width: 30px;
    height: 30px;
    border: 2px solid #f0f0f0;
    cursor: pointer;
}

ul.colores li label span {
    text-indent: -99999px;
    display: block;
    width: 26px;
    height: 26px;
    border: 1px solid #fff;
}

ul.colores li input:checked + label {
    border: 2px solid var(--primary-color);
}

ul.opciones li label {
    background: #f0f0f0;
    border-radius: 3px;
    padding: 5px 10px;
    cursor: pointer;
}

ul.opciones li input:checked + label {
    color: white !important;
    background: var(--primary-color);
}

#variations-data {
    display: none;
}

.variations,
.product-actions .options {
    width: 100%;
    display: block;
    margin-bottom: 20px;
}

.variante_propiedades {
    color: #ccc;
    margin-bottom: 0;
}

.widget_shopping_cart .variante_propiedades {
    font-size: .8em;
}

#primary .mensaje {
    margin-bottom: 20px;
    cursor: pointer;
}

#primary .mensaje a {
    position: absolute;
    top: 2px;
    right: 2px;
    font-size: 1.1em;
    display: block;
    width: 32px;
    height: 32px;
    padding: 0;
    line-height: 32px;
    text-align: center;
    background: rgba(0, 0, 0, 0.05);
    border-radius: 5px;
}

.padding-top-20 {
    padding-top: 20px;
}

.single-product .single-product-wrapper {
    margin-bottom: 0px !important;
}

/*</editor-fold>*/

/*<editor-fold desc="Lazy load">*/
img:not([src]) {
    visibility: hidden;
}

.product-list-image {
    width: 224px;
    height: auto;
    max-width: 100%;
    display: block;
    margin: 0 auto;
}

.product-list-image img {
    opacity: 1;
}

.product-list-image img:not(.loaded) {
    height: 0 !important;
    padding: 0 0 87.9464285714286% !important;
    opacity: 0;
}

/*</editor-fold>*/

/*<editor-fold desc="Placeholder">*/
::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: #bababa;
}

:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #bababa;
    opacity: 1;
}

::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #bababa;
    opacity: 1;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #bababa;
}

::-ms-input-placeholder { /* Microsoft Edge */
    color: #bababa;
}

::placeholder { /* Most modern browsers support this now. */
    color: #bababa;
}

/*</editor-fold>*/

/*<editor-fold desc="Carrito responsive">*/
table.cart td,
table.cart th {
    display: table-cell;
}

table.cart:not(.wishlist_table) tbody tr:first-child td {
    border-top: 2px solid #eceeef !important;
}

table.cart:not(.wishlist_table) tbody tr:last-child td {
    border-top: 2px solid #eceeef !important;
}

table.cart tbody tr td:last-child {
    border-bottom: 0 none;
    /*border-bottom: 2px solid #eceeef;*/
    /*padding-bottom: 1.25em;*/
    /*margin-bottom: 0.625em;*/
}

table.cart a.remove:before {
    font-family: 'FontAwesome';
    content: "\f014";
    font-size: 16px;
    color: #aaa;
}

table.cart tbody tr td a.eliminar {
    display: none;
}

@media (max-width: 767px) {
    table.cart td.product-name > a,
    table.cart td.product-name > div {
        /*display: block;*/
        /*text-align: center;*/
    }

    table.cart td.product-name img {
        max-width: 50px;
        display: inline-block;
    }

    table.cart th.product-price,
    table.cart td.product-price {
        display: none;
    }

    table.cart thead th.product-quantity,
    table.cart tbody td.product-quantity {
        text-align: center;
    }

    table.cart thead th.product-subtotal,
    table.cart tbody td.product-subtotal {
        text-align: right;
        white-space: nowrap;
    }

    table.cart td.product-subtotal a.remove {
        display: none;
    }

    table.cart tbody tr td a.eliminar {
        display: block;
        font-size: 1em !important;
        color: #999;
    }

    .order-review-wrapper .order_review_heading {
        border: 0 none;
        margin-bottom: .1em;
    }

    #tbl-carrito {
        border-top: 1px solid #bebebe;
    }

    .order-review-wrapper {
        margin-bottom: 10px;
    }

    .order-review-wrapper .shop_table tfoot tr.order-total td,
    .order-review-wrapper .shop_table tfoot tr.order-total th {
        padding: .2em 0;
    }

    .order-review-wrapper .order_review_heading {
        font-size: 1.1em;
        margin-bottom: 0;
    }

    .form-checkout .dl-full-horizontal dt {
        width: 135px;
    }

    .form-checkout .setup-content .resumen {
        width: 100% !important;
    }

    .form-checkout .setup-content .resumen h4 {
        border-bottom: 1px solid #f0f0f0;
        padding-bottom: 5px;
    }
}

@media (max-width: 540px) {
    table.cart {
        clear: both;
    }

    table.cart tr {
        display: block;
        position: relative;
        overflow: hidden;
    }

    table.cart td {
        padding-bottom: .25rem !important;
    }

    table.cart td.product-name {
        display: block;
        clear: both;

        border-top: 1px solid #eceeef !important;

        padding-top: 1.5rem !important;
    }

    table.cart td.product-quantity {
        float: left;
    }

    table.cart td.product-subtotal {
        float: right;
        margin-bottom: 1.5rem !important;
    }

    /*table.cart td.product-name > a,*/
    /*table.cart td.product-name > div {*/
    /*display: block;*/
    /*text-align: center;*/
    /*}*/
    table.cart td.product-quantity .quantity .qty {
        padding: .5em;
        width: 3em;
        text-align: center;
    }

    table.cart th,
    table.cart td {
        padding: .75rem .25rem;
    }

    table.cart th {
        display: block;
        text-align: center;
    }

    table.cart th.product-quantity,
    table.cart th.product-subtotal {
        display: none;
    }

    table.cart tbody tr td a.eliminar {
        display: none;
    }

    table.cart td.product-subtotal a.remove {
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        color: #aaa;
    }

    table.cart td.product-subtotal a.remove:before {
        color: #aaa;
    }

    table.cart tbody tr:first-child td {
        border-top: 0 none !important;
    }

    table.cart tr:first-child td.product-name {
        border-top: 2px solid #eceeef !important;
    }

    table.cart tbody tr td.actions {
        display: block;
        clear: both;
        padding-top: 26px;
    }
}

/*</editor-fold>*/

/*<editor-fold desc="Form Checkout">*/
.form-checkout #wrapper-carrito-rapido {
    margin: 0;
    position: relative;
    overflow: hidden;
}

.form-checkout #wrapper-carrito-rapido .loading {
    position: absolute;
    top: -11px;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("../img/cargando.gif") 50% 55% no-repeat #fff;
    opacity: .6;
}

.form-checkout #tbl-carrito th:first-child, #tbl-carrito td:first-child {
    padding-left: 10px;
}

.form-checkout #tbl-carrito th.last-child, #tbl-carrito td.last-child {
    padding-right: 10px;
}

.form-checkout #tbl-carrito tbody td {
    white-space: normal;
}

.form-checkout #tbl-carrito tbody td span.pro_desc {
    padding-left: 60px;
}

.form-checkout #tbl-carrito tbody td img.thumb {
    margin-left: -60px;
    margin-right: 0;
}

.form-checkout hr {
    background: #f0f0f0;
}

.info-pago {
    color: #999;
    font-size: 12px;
}

/*<editor-fold desc="Form Wizard">*/

.form-checkout .stepwizard-step p {
    margin-top: 10px;
}

.form-checkout .stepwizard-row {
    display: block;
    position: relative;
    overflow: hidden;
}

.form-checkout .stepwizard {
    display: none;
}

.form-checkout .stepwizard-step button[disabled] {
    opacity: 1 !important;
    filter: alpha(opacity=100) !important;
}

.form-checkout .stepwizard-row:before {
    top: 14px;
    bottom: 0;
    position: absolute;
    content: " ";
    width: 100%;
    height: 1px;
    background-color: #ccc;
    z-index: 0;
}

.form-checkout .stepwizard-step {
    display: block;
    text-align: center;
    position: relative;
    width: 33.3333%;
    float: left;
}

@media (max-width: 419px) {
    .form-checkout .stepwizard-step p {
        font-size: 13px;
    }
}

/* .form-checkout .btn-circle {
           width: 30px;
           height: 30px;
           text-align: center;
           padding: 6px 0;
           font-size: 12px;
           line-height: 1.428571429;
           border-radius: 0px;
       }*/

.form-checkout .setup-content {
    display: none;
}

.form-checkout .setup-content .form-info {
    /*margin-top: 5px;*/
}

.form-checkout h1.title {
    margin-bottom: 40px;
}

.form-checkout div.opciones-carrito {
    text-align: center;
    font-weight: lighter;
    margin-top: 10px;
    margin-bottom: 10px;
}

.form-checkout div.opciones-carrito a {
    color: #999;
    font-size: 11px;
    padding: 5px;
}

.form-checkout div.opciones-carrito span {
    color: #ccc;
    padding: 5px;
}

.form-checkout .dl-full-horizontal dt {
    /*width: 135px;*/
    float: left;
    text-align: right;
    clear: left;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.form-checkout .dl-full-horizontal dd {
    margin-left: 155px;
    margin-bottom: .5em;
}

.dl-full-horizontal dd:after,
.form-checkout .dl-full-horizontal dd:before {
    content: " ";
    display: table;
}

.form-checkout .dl-full-horizontal dd:after {
    clear: both;
}

.form-checkout #wrapper-pagos {
    padding: 5px;
}

.form-checkout #wrapper-pagos ul,
.form-checkout ul.options {
    list-style: none;
    margin-left: 0;
    padding-left: 0;
}

.form-checkout .has-error #wrapper-pagos {
    border: 1px solid #a94442;
    border-radius: 4px;
}

.form-checkout .stepwizard-step .btn-primary,
.form-checkout .stepwizard-step .btn-primary:focus {
    color: #fff;
}

.form-checkout .stepwizard-step .btn-secondary {
    background: #fff;
}

.form-checkout .has-error input[type="text"],
.form-checkout .has-error input[type="email"],
.form-checkout .has-error input[type="number"],
.form-checkout .has-error input[type="tel"],
.form-checkout .has-error input[type="date"],
.form-checkout .has-error input[type="time"],
.form-checkout .has-error select {
    border-color: #a94442;
    -webkit-box-shadow: 0 0 0px 3px rgba(255, 0, 0, .6);
    -moz-box-shadow: 0 0 0px 3px rgba(255, 0, 0, .6);
    box-shadow: 0 0 0px 3px rgba(255, 0, 0, .6);
}

.form-checkout .options label {
    margin: .25em 0;
}

.form-checkout .options {
    padding: 5px !important;
}

.form-checkout .has-error .options {
    border: 1px solid #a94442;
    padding: 4px !important;
    border-radius: 4px;

    -webkit-box-shadow: 0 0 0px 3px rgba(255, 0, 0, .6);
    -moz-box-shadow: 0 0 0px 3px rgba(255, 0, 0, .6);
    box-shadow: 0 0 0px 3px rgba(255, 0, 0, .6);
}

.form-checkout .has-error .validation-border {
    border-color: #a94442 !important;

    -webkit-box-shadow: 0 0 0px 3px rgba(255, 0, 0, .6);
    -moz-box-shadow: 0 0 0px 3px rgba(255, 0, 0, .6);
    box-shadow: 0 0 0px 3px rgba(255, 0, 0, .6);
}

/* Placeholders */

.form-checkout ::-webkit-input-placeholder {
    color: #ccc;
}

.form-checkout ::-moz-placeholder {
    color: #ccc;
}

.form-checkout :-ms-input-placeholder {
    color: #ccc;
}

.form-checkout ::placeholder {
    color: #ccc;
}

.form-checkout textarea.form-control {
    height: auto;
}

.form-checkout select option[disabled] {
    color: #ccc;
}

.form-checkout .form-control::placeholder {
    color: #ccc;
}

.form-checkout .form-control select option[disbled] {
    color: #ccc !Important;
}

.form-checkout .input-group .input-group-btn button {
    border-color: #ebebeb;
}

.form-checkout #btn-modificar {
    padding: 0;
    line-height: 38px;
    text-decoration: underline;
    color: #999;
}

.form-checkout #usuario {
    display: none;
}

.form-checkout dl.dl-full-horizontal.no-wrap dt {
    white-space: normal;
}

.form-checkout .hidden {
    display: none !important;
}

.form-checkout h4.option-title,
.form-checkout h4.option-title {
    font-size: 1em;
    font-weight: normal;
    border-bottom: 1px solid #ccc;
    margin-top: 10px;
}

.form-checkout h4.option-title a {
    color: var(--secondary-color);
}

/*</editor-fold>*/

/*<editor-fold desc="Direcciones">*/
.form-checkout #direcciones ul,
.form-checkout #direcciones ul li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.form-checkout #direcciones ul li {
    padding: 10px;
    border-top: 1px solid #f9f9f9;
}

.form-checkout #direcciones ul li:first-child {
    border-top: 0 none;
}

.form-checkout #direcciones ul li label {
    display: block;
    padding-left: 30px;
    cursor: pointer;
    margin: 0;
}

.form-checkout #direcciones ul li label i {
    text-indent: 0;
}

.form-checkout #direcciones ul li label span {
    display: block;
    font-size: 12px;
    text-indent: 0;
    line-height: normal;
    color: #999;

    -webkit-transition: all 200ms;
    -moz-transition: all 200ms;
    -ms-transition: all 200ms;
    -o-transition: all 200ms;
    transition: all 200ms;
}

.form-checkout #direcciones ul li input {
    width: 16px;
    margin-right: 10px;
}

.form-checkout #direcciones ul li input + label span {
    max-height: 0;
    overflow: hidden;
    /*display: none;*/
}

.form-checkout #direcciones ul li input:checked + label span {
    max-height: 60px;
    /*display: block;*/
}

.form-checkout .has-error #direcciones {
    border: 1px solid #a94442;
    border-radius: 4px;
}

#map-picker {
    width: 600px;
    max-width: 100%;
    height: 500px;
    max-height: calc(100vh - 210px);
}

#map-canvas,
.direcciones-mapa {
    width: 600px;
    max-width: 100%;
    height: 300px;
    margin-bottom: 10px;
}

.direcciones-mapa {
    height: 200px;
}

#map-canvas-wrapper > em {
    font-size: .9em;
    color: #999;
}

#map-canvas-wrapper > em > img {
    display: inline-block;
}

/*</editor-fold>*/

/*<editor-fold desc="Radio Button">*/
[type="radio"]:checked,
[type="radio"]:not(:checked) {
    position: absolute;
    left: -99999px;
}

[type="radio"]:checked + label,
[type="radio"]:not(:checked) + label {
    position: relative;
    padding-left: 28px;
    cursor: pointer;
    line-height: 20px;
    display: inline-block;
    color: #666;
}

[type="radio"]:checked + label:before,
[type="radio"]:not(:checked) + label:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 18px;
    height: 18px;
    border: 1px solid #ddd;
    border-radius: 100%;
    background: #fff;
}

[type="radio"]:checked + label:after,
[type="radio"]:not(:checked) + label:after {
    content: '';
    width: 10px;
    height: 10px;
    background: var(--primary-color);
    position: absolute;
    top: 4px;
    left: 4px;
    border-radius: 100%;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}

[type="radio"]:not(:checked) + label:after {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
}

[type="radio"]:checked + label:after {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}

[type="radio"] + label#add-direccion:before,
[type="radio"] + label#add-direccion:after,
[type="radio"] + label#add-ruc:before,
[type="radio"] + label#add-ruc:after {
    display: none;
}

#wrapper-pagos ul li input + label + div.payment_box,
.form-checkout ul.options li input + label + div.option_box {
    padding-left: 29px;

    -webkit-transition: all 400ms;
    -moz-transition: all 400ms;
    -ms-transition: all 400ms;
    -o-transition: all 400ms;
    transition: all 400ms;
}

#wrapper-pagos ul li input + label + div.payment_box {
    font-size: 14px;
    color: #999;
    font-style: oblique;
    max-height: 0;
}

#wrapper-pagos ul li input:checked + label + div.payment_box,
.form-checkout ul.options li input:checked + label + div.option_box {
    display: block !important;
    max-height: max-content;
}

.variations [type="radio"]:checked + label:before,
.variations [type="radio"]:not(:checked) + label:before {
    display: none;
}

.variations [type="radio"]:checked + label:after,
.variations [type="radio"]:not(:checked) + label:after {
    display: none;
}

/*</editor-fold>*/
/*</editor-fold>*/

/*<editor-fold desc="Carrito widget">*/
#tbl-carrito-wrapper {
    -webkit-transition: max-height .3s;
    -moz-transition: max-height .3s;
    -ms-transition: max-height .3s;
    -o-transition: max-height .3s;
    transition: max-height .3s;
    overflow: hidden;
}

#tbl-carrito,
#tbl-carrito tfoot tr:last-child td {
    border-bottom: 0 none;
    margin-bottom: 0;
    cursor: pointer;
}

#tbl-total-carrito {
    /*background: #f9f9f9;*/
    border-top: 1px solid #f5f5f5;
    border-bottom: 1px solid #f5f5f5;
    font-size: 1.2em;
    cursor: pointer;
}

#tbl-total-carrito a {
    color: #eee;
    display: none;
    margin-left: 10px;
}

.site-header .techmarket-sticky-wrap .site-header-cart .widget_shopping_cart_content .product_list_widget {
    max-height: calc(100vh - 400px);
}

@media (max-width: 767px) {
    #tbl-carrito-wrapper.slide-toggle {
        max-height: 0 !important;
    }

    #tbl-total-carrito a {
        display: inline-block;
    }
}

/*</editor-fold>*/

/*<editor-fold desc="Posición del mensaje del carrito">*/
#primary .mensaje {
    z-index: 100;
    position: sticky;
    top: 80px;
}

@media (min-width: 1025px) {
    #primary .mensaje {
        top: 106px;
    }
}

@media (min-width: 1200px) {
    #primary .mensaje {
        top: 126px;
    }
}

/*</editor-fold>*/

#frm-checkout .buy-button-wrapper .row div:first-child {
    order: 1;
}

.terminos {
    display: flex;
    align-items: center;
}

@media (max-width: 767px) {
    #frm-checkout .step-button-wrapper,
    #frm-checkout .buy-button-wrapper {
        overflow: hidden;
        margin: 0 -15px;
        padding: 10px 15px 11px;
        position: sticky;
        bottom: -1px;
    }

    #frm-checkout .buy-button-wrapper {
        background: rgba(255, 255, 255, .95);
        margin: 0;
    }

    #frm-checkout .buy-button-wrapper.stuck {
        box-shadow: 0 0 5px rgba(0, 0, 0, .2);
        z-index: 1100;
    }

    #frm-checkout .setup-content h3 {
        font-size: 1.2em;
        position: sticky;
        top: 80px;
        background: #fff;
        z-index: 90;
        padding-top: 5px;
    }

    #frm-checkout .setup-content .form-group {
        font-size: .9em;
    }

    #frm-checkout .setup-content .resumen {
        font-size: .9em;
    }

    #frm-checkout .setup-content .resumen h4 {
        font-size: 1.1em;
    }
}

@media (max-width: 575px) {
    #frm-checkout .step-button-wrapper,
    #frm-checkout .buy-button-wrapper {
        background: rgba(255, 255, 255, .95);
    }

    #frm-checkout .buy-button-wrapper {
        bottom: -64px;
    }

    #frm-checkout .step-button-wrapper.stuck,
    #frm-checkout .buy-button-wrapper.stuck {
        box-shadow: 0 0 5px rgba(0, 0, 0, .2);
        z-index: 1100;
    }

    #frm-checkout .buy-button-wrapper .row div:first-child {
        order: 0;
    }

    #frm-checkout .setup-content h3 {
        font-size: 1em;
    }

    #frm-checkout .setup-content .form-group {
        font-size: .8em;
    }

    #frm-checkout .setup-content .resumen {
        font-size: .8em;
    }
}
