/* ////////////////////// Header ////////////////////// */
/*Oculta icono de contactenos en el top-bar */
@media (max-width: 767px) {
    .elementor-element-75ce9688 .elementor-icon-list-items li:first-child {
        display: none !important;
    }
}

/*Estructura de iconos en el top-bar*/
.elementor-element-75ce9688 .elementor-icon-list-items .elementor-icon-list-icon i {
    padding: 4px;
    border-radius: 50px;
    width: 22px;
}

/*Color icono whatsapp en el top-bar*/
.elementor-element-75ce9688 .elementor-icon-list-items .elementor-icon-list-icon .fa-whatsapp{
    background-color: #4fce5d;
}

/*Color icono correo en el top-bar*/
.elementor-element-75ce9688 .elementor-icon-list-items .elementor-icon-list-icon .fa-envelope{
    background-color: #014eb8;
}

/*Centrado del buscador*/
@media (min-width: 768px) and (max-width: 1024px) {
    .elementor-element-7c915016 .elementor-row {
        justify-content: center;
    }
}

/*Ajuste de padding de los iconos login y carrito*/
.bt-icon-mobile.elementor-widget {
    margin-bottom: 0;
}

.bt-icon-mobile .elementor-cart__toggle a,
.bt-icon-mobile .elementor-nav--layout-horizontal .elementor-nav a.elementor-item, .bt-icon-login .elementor-nav--layout-horizontal .elementor-nav a.elementor-item   {
    padding: 0;
    margin-bottom: 0px;
}

.elementor-cart__toggle a:hover {
    background-color: transparent !important;
}

.elementor-cart__toggle a:hover i {
    color: #ffffff !important;
}

/*Boton carrito header desktop*/
@media (min-width: 1025px) {
    .elementor-cart__toggle {
        height: 40px;
    }
    
    .elementor-cart__toggle a {
        padding-top: 0;
        padding-bottom: 0;
        height: 40px;
        background-color: #282727 !important;
        border-radius: 5px !important;
    }
    .elementor-cart__toggle a:hover {
    background-color: #282727 !important;
    }
}

/*Ancho del menu desplegado en desktop*/
.bt-menu-desktop .elementor-nav--dropdown.elementor-nav__container {
    max-width: 450px !important;
    left: 0px !important;
    border: 1px solid #000000;
    height: 50vh !important;
}

.bt-menu-mobile {
    margin-bottom: 0px !important;
    margin-right: 8px;
}

.bt-menu-mobile .elementor-nav--dropdown.elementor-nav__container {
    height: 50vh !important;
    border: 1px solid #000000;
}

@media (min-width: 576px) and (max-width: 1024px) {
    .bt-menu-mobile .elementor-nav--dropdown.elementor-nav__container {
        max-width: 400px;
    }
}

.logo-mobile {
    min-width: 200px;
}

.logo-desktop img {
    min-width: 250px;
}

@media (min-width: 576px) {
    .bt-header-icons-mobile i {
        font-size: 24px !important;
    }
}

/* Backdrop menu desktop */
.bt-menu-desktop,
.bt-menu-mobile {
    position: relative; 
    z-index: 100; 
}


.bt-menu-desktop::before,
.bt-menu-mobile::before {
    content: '';
    position: fixed; 
    top: 0;
    left: 0;
    width: 100vw; 
    height: 100vh; 
    background-color: rgba(0, 0, 0, 0.7); 
    z-index: 99; 
    opacity: 0; 
    visibility: hidden; 
    transition: opacity 0.3s ease, visibility 0.3s ease; 
}

.bt-menu-desktop:has(nav[aria-hidden="false"])::before,
.bt-menu-mobile:has(nav[aria-hidden="false"])::before {
    opacity: 1;
    visibility: visible;
}

.bt-menu-desktop .elementor-nav__container,
.bt-menu-mobile .elementor-nav__container {
    z-index: 101; 
    position: relative; 
}

.bt-menu-desktop .elementor-menu-toggle,
.bt-menu-mobile .elementor-menu-toggle {
    z-index: 102; 
    position: relative; 
}
/* End backdrop menu desktop */
/* ////////////////////// End Header ////////////////////// */


/* ////////////////////// Home ////////////////////// */

/* Seccion de categorias */
.bt-image-carousel-custom .elementor-image-carousel .swiper-slide {
    border-radius: 14px;
    overflow: hidden;
    background-color: #000;
    padding: 4px 4px 4px 0;
}

.bt-image-carousel-custom .elementor-image-carousel .swiper-slide:hover {
    background: linear-gradient(45deg,#0136af,#22abfa);
}

.bt-image-carousel-custom .elementor-image-carousel .swiper-slide figure {
    display: flex;
    align-items: center;
    flex-direction: row;
    gap: 2px;
    position: relative;
}

.bt-image-carousel-custom .elementor-image-carousel .swiper-slide img {
    width: 50%;
    min-width: 50%;
}

@media (min-width: 1025px) {
    .bt-image-carousel-custom .elementor-image-carousel .swiper-slide img {
        position: relative;
        transform: translateY(35%);
        transition: transform 0.6s ease-in-out;
    }
    
    .bt-image-carousel-custom .elementor-image-carousel .swiper-slide figure:hover img {
        transform: translateY(0);
    }
}

.bt-image-carousel-custom .elementor-image-carousel figure .elementor-image-carousel-caption {
    color: #fff;
    font-weight: 700;
    flex-grow: 1;
    width: 100%;
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
    hyphens: auto;
}

/* Seccion de tabs */
.bt-home-list-products-tabs .elementor-nav-tabs .elementor-item-active {
    background: #1e1e1e;
    border-radius: 10px;
    color: #ffffff;
}

.bt-home-list-products-tabs .fa-fire {
    color: #ff914d;
}

.bt-home-list-products-tabs .fa-rocket {
    color: #004aad;
}

.bt-home-list-products-tabs .elementor-nav-tabs .elementor-item-active .fa-rocket,
.bt-home-list-products-tabs .elementor-nav-tabs .elementor-item-active .fa-fire {
    color: #ffffff;
}

/* seccion miniaturas creative elements */

/*miniaturas*/
.elementor-product-miniature .elementor-image,
.product-miniature .product-miniature__image-container {
    border: 1px solid #d6d4d4;
    border-radius: 0;
}

.elementor-product-miniature .elementor-quick-view,
.product-miniature__quickview .product-miniature__quickview_button {
    background-color: #1e1e1e;
    color: #ffffff;
    border: 0;
    border-radius: 0;
}

.elementor-product-miniature .elementor-quick-view:hover {
    background-color: rgba(0, 0, 0, 0.5);
}

.product-miniature__quickview .product-miniature__quickview_button:hover {
    background-color: #1e1e1e;
    border: 0;
}

.product-miniature .product-miniature__quickview {
    padding: 0;
}

.elementor-product-miniature h3.elementor-title,
.product-miniature .product-miniature__title {
    font-weight: 300;
    line-height: normal;
    font-size: 17px;
}

.elementor-product-miniature h3.elementor-title:hover,
.product-miniature .product-miniature__title:hover {
    color: #515151;
}

@media (min-width: 1025px) {
    .elementor-product-miniature .elementor-price,
    .product-miniature .product-miniature__price {
        font-size: 21px;
    }
}

.product-miniature .wishlist-button-add {
    position: absolute;
    bottom: 4px;
    left: 4px;
    top: unset !important;
    right: unset !important;
}

.product-miniature .product-miniature__infos > *,
.product-miniature .product-miniature__infos .product-miniature__infos__bottom > * {
    justify-content: center;
    text-align: center;
}

/* badges-flags */

.elementor-badge,
.product-flags .badge {
    background-color: #000000;
    color: #ffffff;
    border: none;
}

.elementor-badge.elementor-badge-new,
.product-flags li.product-flag.new,
.product-flags li.badge.new {
    background-color: #1e1e1e;
    color: #ffffff;
    border: none;
}

.elementor-badge.elementor-badge-out {
    background-color: #000000;
    color: #ffffff;
    border: none;
}

/* ////////////////////// End Home ////////////////////// */

/* ////////////////////// Footer ////////////////////// */
.bt-footer-btn-contact a {
    width: 100% !important;
    padding: 20px;
}

/*Animacion del boton al hacer hover*/
.bt-footer-btn-contact .elementor-button-link {
    position: relative;
    overflow: hidden;
    transition: color 0.3s ease-in-out;
    z-index: 1;
}

.bt-footer-btn-contact .elementor-button-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    transition: left 0.4s ease-in-out;
    z-index: -1;
}

.bt-footer-btn-contact .elementor-button-link:hover {
    color: #121212 !important;
    border-color: #ffffff !important;
}

.bt-footer-btn-contact .elementor-button-link:hover::before {
    left: 0;
}

.bt-footer-btn-contact .elementor-button-content-wrapper {
    position: relative;
    z-index: 2;
}

.bt-footer-btn-contact .elementor-button-text {
    position: relative;
    z-index: 2;
}

/*Fin: Animacion del boton al hacer hover*/

/* ////////////////////// End Footer ////////////////////// */

/* ////////////////////// Product list ////////////////////// */
.products-sort-order > button {
    background: initial !important;
    color: initial !important;
}
/* ////////////////////// End Product list ////////////////////// */


/* ////////////////////// Product ////////////////////// */

#product h1.product__name {
    color: #FF5757;
}

.thumbnails__container .thumbnail.active img {
    border: 2px solid #1e1e1e;
}

#product .accordion-item:not(:last-child) {
    border-bottom: 1px solid var(--bs-gray-200);
}

.product__description-short div .btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}

.product__description-short div .btn-default:hover {
  background-color: #ebebeb;
  border-color: #ccc;
}

.info {
    padding-bottom: 1rem;
}

.info .detail {
    padding: 0.5rem 1rem;
}

.info .info__title.h3,
.product__description-short h3 {
    font-size: 1.25rem;
}

.product__description-short h3 {
    color: #000000;
}

#product .section-title {
    text-align: center;
    background-color: #F5F5F5;
    width: 100%;
    border-radius: 10px;
    padding: 10px;
}

/*Estilos DataTable*/
@media (max-width: 1400px) {
    #seccionNema {
        overflow: scroll;
    }
}

#seccionNema .dt-length label {
    margin-left: 4px;
}

.img-nema {
  display: flex;
  justify-content: center;
  align-content: center;
  position: relative;
  width: 50px;
  height: 50px;
}

table.table-nemas .metadatos, 
table.table-nemas colgroup {
  display: none;
}

table.table-nemas thead th {
  background-color: #094b8b;
  border-bottom: solid 3px #03192e;
  color: white;
  text-shadow: none;
  text-transform: capitalize;
  font-family: 'Roboto',sans-serif;
  text-align: center;
  font-size: 14px;
  letter-spacing: 0.5px;
}

table.table-nemas td, table.table-nemas th {
  padding: 10px;
  vertical-align: middle;
  text-align: center;
  font-family: 'Roboto',sans-serif;
  font-size: 16px;
  border: none;
  transition: all 0.5s;
}

table.table-nemas tbody td {
    font-size: 13px;
}

@media (min-width: 576px) {
    table.table-nemas tbody td {
        font-size: 14px;
    }
    table.table-nemas thead th {
        font-size: 16px;
    }
}
table.table-nemas tr:hover td {
  background-color: #03192e;
  cursor: pointer;
  color: white;
}

table.table-nemas tr:nth-child(2n) {
  background-color: #ddd;
}

table.table-nemas .view-nemas {
  display: flex;
  padding: 12px 20px;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  background-color: #094b8b;
  color: #fff;
  border-radius: 4px;
  transition: background-color 0.3s ease;
}

table.table-nemas .view_mobile {
  display: none;
  width: 15px;
}

table.dataTable th.dt-type-numeric div.dt-column-header {
    flex-direction: row;
}

/*Fin Estilos DataTable*/


/* ////////////////////// End Product ////////////////////// */

/* Ajuste de ancho del input de cantidad en desktop modulos crossselling y categoryproducts */
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .featured-products .quantity-button .input-group > .form-control,
    .category-products .quantity-button .input-group > .form-control {
        min-width: 24px;
        padding: 0;
    }
}

/* ////////////////////// Others ////////////////////// */
#cms .rich-text a.btn.btn-default,
#product .product__description-short.rich-text a.btn.btn-default {
    background-color: rgba(0, 0, 0, 0.0);
    border-color: #adadad;
    border-radius: 0;
}

#cms .rich-text a.btn.btn-default:hover,
#product .product__description-short.rich-text a.btn.btn-default:hover{
    color: #333;
    background-color: #ebebeb;
    border-color: #adadad;
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #exportDataToPdf, #exportDataToCsv {
        margin: 4px 10px !important;
    }
}

#layout-error img {
    width: 100%;
    height: auto;
    object-fit: cover;
    max-width: 100%;
}

#manufacturer .brand {
    padding: 1rem 0;
}

#manufacturer .brand .brand__infos {
    margin-bottom: .5rem;
}

#checkout #opc_main {
    margin-top: 1rem;
}

.step .address.selected {
    border-color: #000000;
}

.product-miniature .product-miniature__quickview_button {
    display: none;
}
/* ////////////////////// END Others ////////////////////// */

/* ////////////////////// Overrride ////////////////////// */
:root {
    --bs-primary-rgb: 0, 0, 0;
    --bs-link-color: #0084BF;
    --bs-link-hover-color: #0084BF;   
}

.btn-primary {
    --bs-btn-disabled-bg: rgba(0, 0, 0, 0.6);
    --bs-btn-disabled-border-color: rgba(0, 0, 0, 0.6);
}

.btn-outline-primary {
    --bs-btn-color: #009AD0;
    --bs-btn-border-color: #009AD0;
    --bs-btn-hover-bg: #009AD0;
    --bs-btn-hover-border-color: #009AD0;
    --bs-btn-active-bg: #009AD0;
    --bs-btn-active-border-color: #009AD0;
    --bs-btn-disabled-color: #009AD0;
    --bs-btn-disabled-border-color: #009AD0;
}

.btn.btn-outline-primary:not(:hover) {
    background-color: rgba(0,0,0,0.0);
    color: var(--bs-btn-color);
}

.btn.btn-outline-primary:not(:hover) i {
    color: var(--bs-btn-color);
}

a.btn.btn-outline-primary:focus,
a.btn.btn-outline-primary:focus i {
    color: var(--bs-btn-color);
}

a.btn.btn-outline-primary:hover:focus,
a.btn.btn-outline-primary:hover:focus i {
    color: #ffffff;
}

.btn.btn-light:not(:hover) {
    color: var(--bs-btn-color) !important;
    background-color: #f8f9fa;
    border-color: #f8f9fa;
}

.btn.btn-light:hover {
    color: #000000 !important;
    background-color: #e2e6ea;
    border-color: #dae0e5;
}

.btn.btn-unstyle,
.btn.btn-unstyle:hover,
.btn.btn-unstyle:hover:active,
.btn.btn-unstyle:focus {
  background-color: transparent;
  border: none;
  padding: 0;
  text-align: inherit;
  color: inherit !important;
}
/* ////////////////////// End Overrride ////////////////////// */

/* ////////////////////// roja45quotationspro ////////////////////// */
.header:not(#header) {
    z-index: 0;
}

#module-roja45quotationspro-QuotationsProFront {
    color: #000000;
}

.quote_navigation a.button-exclusive {
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    color: #000000;
    margin-top: 0px;
}

.quote_navigation a.button-exclusive:hover svg {
    fill: #ffffff;
}

.quote_navigation a.button-exclusive:hover,
.quote_navigation a.button-exclusive:focus {
    border-color: #0084BF;
}

.quotationspro_request.notes {
    min-height: unset;
    background-color: #000000;
    padding: 10px;
}

.quotationspro_request .row.button-container {
    padding-top: 0;
}

.quotation_cart .header {
    background-color: rgba(0, 0, 0, 0);
}

.quotation_cart path {
    fill: #ffffff;
}

#_desktop_quotecart .quotation_cart .header .quote-header-element > svg,
#_mobile_quotecart .quotation_cart .header .quote-header-element > svg {
    width: 18px;
    height: 18px;
}

@media (min-width: 576px) {
    #_desktop_quotecart .quotation_cart .header .quote-header-element > svg,
    #_mobile_quotecart .quotation_cart .header .quote-header-element > svg {
        width: 24px;
        height: 24px;
    }
}

#_desktop_quotecart .quotation_cart .header .quote-header-element.quote-text {
    display: none;
}

#_desktop_quotecart .quotation_cart span.ajax_quote_quantity,
#_mobile_quotecart .quotation_cart span.ajax_quote_quantity {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: normal;
    position: absolute;
    top: -3px;
    right: 0px;
    padding: 2px;
    min-width: 1.6em;
    height: 1.6em;
    border-radius: 100%;
    color: #fff;
    background-color: #d9534f;
    text-align: center;
    font-size: 10px;
}

#product #roja45quotationspro_buttons_block.product-add-to-quote .add + div {
    width: 100% !important;
}

#roja45quotationspro-modal .modal-content {
    overflow: hidden;
}

#roja45quotationspro-modal .modal-dialog .modal-header .close {
    position: absolute;
    right: 1rem;
    border: 0;
    background-color: rgba(0,0,0, 0);
    padding: 0;
    font-size: 1.5rem;
}

#roja45quotationspro-modal .modal-dialog .modal-footer .cart-content-btn {
    gap: 4px;
}

#roja45quotationspro-modal .modal-dialog .modal-footer .cart-content-btn .btn-secondary {
    margin-right: 0;
}
/* ////////////////////// End roja45quotationspro ////////////////////// */
