/*
Theme Name:  Astral-child
Description: Tema personalizado para tienda online.
Author:      Desarrollador Web
Author URL:  https://economizo.com
Template:    Astral
Version:     1.0.0
Theme URL:   https://economizo.com/
*/

/* Configuración general y utilidades */
.hidden {
    display: none !important;
 }
 
 .ajax-loader{
     padding-right: 3px;
     padding-left: 3px;
 }
 
 /* Configuración de modales */
 .modal {
   display: none;
   position: fixed;
   z-index: 1;
   padding-top: 100px;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   overflow: auto;
   background-color: rgb(0,0,0);
   background-color: rgba(0,0,0,0.4);
 }
 
 .modal-content {
   background-color: #fefefe;
   margin: auto;
   padding: 20px;
   border: 1px solid #888;
   width: 60%;
 }
 
 .close {
   color: #aaaaaa;
   float: right;
   font-size: 28px;
   font-weight: bold;
 }
 
 .close:hover,
 .close:focus {
   color: #000;
   text-decoration: none;
   cursor: pointer;
 }
 
 /* Configuración de sliders y carruseles */
 .swiper {
     width: 100%;
     height: 100%;
 }
 
 .swiper-slide {
     text-align: center;
     font-size: 18px;
     background: #fff;
     display: -webkit-box;
     display: -ms-flexbox;
     display: -webkit-flex;
     display: flex;
     -webkit-box-pack: center;
     -ms-flex-pack: center;
     -webkit-justify-content: center;
     justify-content: center;
     -webkit-box-align: center;
     -ms-flex-align: center;
     -webkit-align-items: center;
     align-items: center;
 }
 
 .swiper-slide img {
     display: block;
     width: 100%;
     height: 100%;
     object-fit: cover;
 }
 
 .mySwiper2 {
     height: 80%;
     width: 100%;
 }
 
 .mySwiper {
     height: 20%;
     box-sizing: border-box;
     padding: 10px 0;
 }
 
 .mySwiper .swiper-slide {
     width: 25%;
     height: 100%;
     opacity: 1;
 }
 
 .mySwiper .swiper-slide-thumb-active {
     opacity: 1;
 }
 
 .swiper {
     width: 100%;
     height: 300px;
     margin-left: auto;
     margin-right: auto;
 }
 
 .swiper-slide {
     background-size: cover;
     background-position: center;
     padding: 20px;
 }
 
 /* Elementos de producto y tienda */
 .single-product .quantity {
     display: none;
 }
 
 .single-product .custom-review img {
     width: 100px;
     margin-right: 10px;
 }
 
 .single-product .custom-review {
     display: flex;
     align-items: center;
 }
 
 .single-product .extra-link.t4-size-guide.mt__25.fwsb {
     display: none !important;
 }
 
 .single-product div#atstbx {
     display: none !important;
 }
 
 .single-product .mes-normal-section,
 .single-product .mes-member-section {
     border: none;
     padding: 25px;
     display: flex;
     flex-wrap: wrap;
     align-items: flex-start;
     box-shadow: 0 0 5px rgba(86, 207, 225, 0.2);
     border-radius: 10px;
     border: 1px solid #56cfe1;
 }
 
 .single-product .mes-add-to-cart {
     width: 100%;
 }
 
 .single-product button.single_add_to_cart_button.button.alt.wp-element-button {
     width: 100%;
     border-radius: 0px !important;
     margin-top: 15px;
     font-size: 18px;
     box-shadow: 0 1px 1px 0 rgb(0 0 0 / 14%), 0 2px 1px -1px rgb(0 0 0 / 12%), 0 1px 3px 0 rgb(0 0 0 / 20%);
 }
 
 .single-product .mes-save-price {
     width: 100%;
     border: 1px solid rgba(0, 0, 0, 0.1);
     text-align: center;
     padding: 5px;
     border-radius: 5px;
     margin-top: 20px;
     margin-bottom: 10px;
 }
 
 .single-product .mes-save-price>span {
     margin-bottom: 5px;
     display: block;
 }
 
 /* Datos de seguridad del producto */
 .product_suritydata {
     display: flex;
     justify-content: space-between;
     align-items: center;
     font-size: 10px;
     margin: 10px !important;
     width: 97%;
     margin: 5px auto 0 auto;
 }
 
 .product_suritydata div:first-child {
     display: flex;
     align-items: center;
 }
 
 .product_suritydata div:first-child span {
     margin-left: 5px;
 }
 
 .product_suritydata i {
     margin-right: 3px;
     font-size: 12px !important;
 }
 
 /* Configuración de carrito */
 .cart_item .product-remove {
      display: table-cell;
     width: unset;
 }
 
 .cart_item .product-remove a{
     color: red;
     font-weight: bolder;
     font-size: 24px;
 }
 
 .the4-mini-cart .total,
 .the4-mini-cart bdi {
     display:none;
 }
 
 /* Elementos ocultos y personalizaciones */
 div#the4-kalles-product-liveview {
     display: none !important;
 }
 
 .pr_trust_seal.mt__20.tl {
     display: none !important;
 }
 
 li#tab-title-additional_information {
     display: none !important;
 }
 
 .recent-viewer.product-extra.mt__30 {
     display: none !important;
 }
 
 span.sku_wrapper {
     display: none !important;
 }
 
 span.posted_in {
     display: none;
 }
 
 span.tagged_as {
     display: none;
 }
 
 li#tab-title-ryviu_reviews_tab {
     display: none;
 }
 
 p.stock.in-stock {
     display: none !important;
 }
 
 .product-info div.ryviu-collection{
     display: none;
 }
 
 .review-widget {
     display: none !important;
 }
 
 /* Configuración de precios */
 .mes-price-section-normal,
 .mes-price-section-member {
     width: 100%;
     margin-right: auto;
     max-width: 200px;
 }
 
 .mes-price-section-normal-price,
 .mes-price-section-member-price {
     width: 100px;
     text-align: center;
 }
 
 .price ins, td.product-price {
     color: #222222;
     font-weight: 600;
 }
 
 /* Configuración de pestañas de producto */
 .woocommerce-tabs.wc-tabs-wrapper {
     padding: 20px 0;
 }
 
 .woocommerce-tabs.wc-tabs-wrapper ul.wc-tabs {
     display: flex;
     justify-content: flex-start;
     flex-wrap: wrap;
 }
 
 .woocommerce-tabs.wc-tabs-wrapper ul.wc-tabs li a {
     border: 5px solid #000 !important;
     margin: 0 10px 15px 0 !important;
     padding: 13px 50px;
     color: #000;
     border-radius: 6px;
     border-top: none !important;
     border-bottom: none !important;
     box-shadow: 0 3px 6px rgba(142, 142, 142, 0.2);
     display: inline-block;
     height: auto;
     line-height: 140%;
 }
 
 .woocommerce-tabs.wc-tabs-wrapper ul.tabs.wc-tabs li.active a {
     background: #000;
     color: #fff !important;
 }
 
 .woocommerce-tabs p {
     color: #878787;
     font-size: 16px;
 }
 
 .woocommerce-Tabs-panel ul li {
     margin-bottom: 10px;
     color: #878787;
     font-size: 16px;
 }
 
 /* Configuración de valoraciones */
 .woocommerce-product-rating {
     display: flex;
     margin-bottom: 0 !important;
 }
 
 .woocommerce-product-rating img {
     width: 20%;
 }
 
 /* Elementos de título y marca */
 .the4-wc-single .entry-summary .brand-name {
     font-size: 19px;
     display: block;
     margin-bottom: -3px;
 }
 
 .the4-wc-single .entry-summary .product_title.entry-title {
     font-size: 21px;
     font-weight: 300;
     margin-bottom: 0 !important;
     line-height: 32px;
     text-align: left;
 }
 
 /* Configuración de iconos numerados */
 .icon-num {
     width: 36px;
     height: 36px;
     background-color: #8c8c8c;
     border-radius: 50%;
     display: flex;
     justify-content: center;
     align-items: center;
     color: #fff;
     transition: all 0.3s ease;
     cursor: pointer;
 }
 
 .swiper-slide-thumb-active .icon-num {
     background-color: #000;
 }
 
 /* Líneas de conexión en slider */
 .mySwiper .swiper-slide::before {
     content: '';
     position: absolute;
     top: 50%;
     width: 100%;
     left: 50%;
     transform: translate(-50%, -50%);
     height: 1px;
     background-color: #000;
     z-index: -1;
 }
 
 .mySwiper .swiper-slide:first-child::before {
     left: 60%;
 }
 
 .mySwiper .swiper-slide:last-child::before {
     transform: translate(0, -50%);
     left: 0;
     width: 95%;
 }
 
 /* Configuración de elementos decorativos */
 span.mr__10.ml__10 *,
 span.mr__10.ml__10 {
     font-family: 'Poppins' !important;
     font-weight: 400;
     text-transform: uppercase;
 }
 
 span.mr__10.ml__10:after {
     content: "";
     display: inline-block;
     width: 60px;
     height: 2px;
     border-bottom: 2px solid;
     position: relative;
     top: -7px !important;
     left: 13px !important;
 }
 
 span.mr__10.ml__10:before {
     content: "";
     display: inline-block;
     width: 60px;
     height: 2px;
     border-bottom: 2px solid;
     position: relative;
     top: -7px !important;
     right: 13px !important;
 }
 
 body .title_3::after {
     content: "" !important;
     height: 0 !important;
     width: 0 !important;
     background: transparent !important;
 }
 
 /* Configuración de breadcrumbs */
 .woo-brc.bgbl.pt__20.pb__20.pl__15.pr__15.lh__1 {
     text-align: center;
     background: transparent;
 }
 
 /* Configuración de elementos relacionados */
 .related.product-extra.mt__60 {
     margin: 0 !important;
 }
 
 .related.product-extra {
     overflow: hidden;
 }
 
 /* Configuración de chat bot */
 .chat-bot-link {
     display: flex;
     align-items: center;
     flex-wrap: wrap;
 }
 
 .chat-img {
     width: 80px;
     height: 80px;
     border-radius: 50%;
     overflow: hidden;
     margin-right: 20px;
 }
 
 .chat-img img {
     width: 100%;
     height: 100%;
     object-fit: cover;
 }
 
 .link-area {
     display: flex;
     width: calc(100% - 100px);
     flex-direction: column;
     color: #222;
     font-size: 16px;
     line-height: 140%;
     align-items: flex-start;
 }
 
 .link-area a {
     color: #ff4e00;
     text-decoration: underline;
     font-size: 14px;
     position: relative;
     width: auto;
     display: inline-block;
 }
 
 .link-area a::after {
     content: '\f054';
     font-family: "FontAwesome";
     position: absolute;
     top: 57%;
     transform: translateY(-50%);
     right: -15px;
 }
 
 .link-area a:hover {
     color: #222;
 }
 
 /* Configuración de productos relacionados */
 .mp-related-prod {
     display: flex;
     position: relative;
 }
 
 .product-swipper .product {
     flex: unset;
     max-width: 100%;
     padding: 0;
 }
 
 .product-swipper .cd.chp {
     overflow: hidden;
     display: -webkit-box;
     -webkit-line-clamp: 2;
     -webkit-box-orient: vertical;
     height: 40px;
     line-height: 20px;
 }
 
 .product-swipper .swiper-button-next,
 .product-swipper .swiper-button-prev {
     width: 40px;
     height: 40px;
     display: flex;
     justify-content: center;
     align-items: baseline;
     background-color: #bbc0c2;
     border-radius: 50%;
     background-image: none;
     transition: all 0.3s ease;
     opacity: 0;
     transform: scale(0.7);
 }
 
 .product-swipper:hover .swiper-button-next,
 .product-swipper:hover .swiper-button-prev {
     transform: scale(1);
     opacity: 1;
 }
 
 .product-swipper .swiper-button-next:hover,
 .product-swipper .swiper-button-prev:hover {
     background-color: #56cfe1;
     opacity: 1;
 }
 
 .product-swipper .swiper-button-next::after,
 .product-swipper .swiper-button-prev::after {
     filter: brightness(0) invert(1);
     font-size: 30px;
     width: 100%;
     height: 100%;
     display: flex;
     justify-content: center;
     align-items: center;
     font-weight: bold;
     font-family: "Pe-icon-7-stroke";
 }
 
 .product-swipper .swiper-button-prev::after {
     content: '\e686';
 }
 
 .product-swipper .swiper-button-next::after {
     content: '\e684';
 }
 
 .product-swipper .kallesProBrands {
     font-size: 14px;
 }
 
 .product-swipper .price {
     font-size: 14px;
 }
 
 .product-swipper .price bdi {
     font-weight: 600;
 }
 
 .product-swipper .price ins {
     color: #222222;
 }
 
 /* Configuración de contenido de slides */
 .swiper-slide>.col-12 {
     background-color: #fff;
     box-shadow: 0 0 10px -5px rgb(181, 181, 181);
     border-radius: 10px;
     overflow: hidden;
     padding: 50px;
 }
 
 .swiper-slide .standard-btn {
     background-color: #2c2c2c;
     padding: 10px 30px;
     border-radius: 5px;
     color: #fff;
     display: inline-block;
     margin-top: 10px;
     border: 1px solid #000;
 }
 
 .swiper-slide .standard-btn:hover {
     background-color: #000;
 }
 
 .swiper-slide .semi-bold {
     margin-top: 0;
 }
 
 .swiper.mySwiper2 {
     margin-left: -20px;
     margin-right: -20px;
     width: auto;
 }
 
 /* Configuración de tablas de atributos */
 .the4-wc-single table.woocommerce-product-attributes th,
 .the4-wc-single table.woocommerce-product-attributes td {
     border-color: #878787;
     color: #878787;
 }
 
 .the4-wc-single table.woocommerce-product-attributes th {
     font-weight: bold;
     font-size: 16px;
 }
 
 /* Configuraciones adicionales */
 p.mess_cd.test3.cb.mb__10.lh__1.fwm.tu.dn img {
     width: 3%;
 }
 
 .php-error #adminmenuwrap {
     margin-top: 0 !important;
 }
 
 /* Configuración de Google reCAPTCHA */
 .grecaptcha-badge {
   width: 70px !important;
   overflow: hidden !important;
   transition: all 0.3s ease !important;
   left: 4px !important;
 }
 
 .grecaptcha-badge:hover {
   width: 256px !important;
 }
 
 /* Configuración de página de agradecimiento */
 .kalles-thankyou-page.containner + font{
      display:none;
 }
 
 /* Configuración de errores en carrito */
 .woocommerce-cart ul.woocommerce-error li:nth-child(n+2) {
     display: none;
 }
 
 /* Configuración de validación de checkout */
 .woocommerce-checkout p.woocommerce-invalid-required-field span.error {
    color: #e2401c;
    display: block !important;
    font-weight: bold;
 }
 
 .woocommerce-checkout ul.woocommerce-error li[data-id^='billing_'] {
   display:none;
 }
 
 /* Configuración de imágenes en slider de inicio */
 .slick-slide img {
     display: block;
     height: 200px !important;
     object-fit:contain;
 }
 
 /* Configuración de productos en categorías */
 .categories-content .product_box img {
     display: block;
     height: 150px !important;
     object-fit: contain;
 }
 
 /* Configuración de mi cuenta */
 .entry .entry-content p{
     word-wrap: normal;
 }
 
 /* Configuraciones adicionales de botones y elementos */
 li a.button.wc-forward.wp-element-button{
     margin-top: -7px;
 }
 
 .sidebar .widget ul li:before{
     content: "";
 }
 
 .woocommerce form .form-row label.checkbox {
     line-height: 1;
 }
 
 /* CONFIGURACIONES RESPONSIVAS */
 @media screen and (max-width: 1024px) {
     .product-swipper .swiper-button-next,
     .product-swipper .swiper-button-prev {
         opacity: 1;
     }
 
     .product-swipper:hover .swiper-button-next,
     .product-swipper:hover .swiper-button-prev {
         opacity: 0.8;
     }
 
     .product-swipper .swiper-button-next:hover,
     .product-swipper .swiper-button-prev:hover {
         opacity: 1;
     }
 }
 
 @media screen and (max-width:991px) {
     .single-product .mes-normal-section,
     .single-product .mes-member-section {
         padding: 15px;
         margin-bottom: 15px !important;
     }
 
     .mes-price-section-normal,
     .mes-price-section-member {
         max-width: 140px;
     }
 
     .swiper-slide>.col-12 {
         padding: 30px;
     }
 
     .woocommerce-tabs.wc-tabs-wrapper ul.wc-tabs li a {
         padding: 10px 20px;
     }
 
     .swiper-slide .small {
         font-size: 16px;
     }
 }
 
 @media screen and (max-width:767px) {
     .swiper-slide>.col-12 {
         padding: 15px;
     }
 
     .swiper-slide .small {
         font-size: 14px;
     }
 
     .woocommerce-tabs p {
         font-size: 14px;
     }
 
     .woocommerce-Tabs-panel ul li {
         font-size: 14px;
     }
 
     .woocommerce-Tabs-panel.wc-tab {
         padding-bottom: 0;
     }
 
     .swiper-slide {
         padding: 10px;
     }
 
     .swiper.mySwiper2 {
         margin-left: -10px;
         margin-right: -10px;
     }
 
     .swiper-slide .standard-btn {
         padding: 6px 20px;
     }
 
     .the4-wc-single .entry-summary .btn-atc.atc-popup {
         margin-bottom: 0;
     }
 
     .related.products h2 {
         font-size: 21px;
         text-align: center;
     }
 
     .related.products {
         margin-top: 40px;
     }
 
     p.mess_cd.test3.cb.mb__10.lh__1.fwm.tu.dn {
         margin-top: 20px !important;
     }
 
     .chat-img {
         width: 60px;
         height: 60px;
         margin-right: 10px;
     }
 
     .link-area {
         width: calc(100% - 70px);
     }
 
     .product-swipper .swiper-button-next,
     .product-swipper .swiper-button-prev {
         top: calc(50% - 40px);
     }
 
     #order_review .shop_table tr.shipping td .woocommerce-Price-amount, .cart_totals .shop_table tr.shipping td span.woocommerce-Price-amount, ul#shipping_method li span.amount{
         margin-right: 20px;
     }
 }
 
 @media (max-width: 767px) {
   .footer-col-4 {
     grid-template-columns: 50% 50%;
   }
 }
 
 @media (max-width: 576px) {
   .footer-col-4 {
     grid-template-columns: 100%;
   }
 }