/*
	Theme Name: Rehub child theme
	Theme URI: https://wpsoul.com
	Description: A Hybrid magazine/shop/review/news Wordpress Theme
	Author: Sizam
	Author URI: https://wpsoul.com
	Version: 9.4
	Template: rehub-theme
*/

/* =Theme customization starts here
-------------------------------------------------------------- */

html,
body,
button,
input,
textarea,
select{
    font-family: "Manrope", sans-serif !important;
}

h1,h2,h3,h4,h5,h6{
    font-family: "Manrope", sans-serif !important;
}

a.logo_image_insticky img, a.logo_image_mobile img {
    border-radius:50%;border:3px solid #ffffff;}
.woocommerce div.product .single_add_to_cart_button {font-size:15px;}
#wcfm-main-content {
    padding: 10px 0px;
    max-width: 1600px;
    margin: 0px auto;
    width: 85%;
}
@media (min-width: 625px) and (max-width: 1400px){
.rh-outer-wrap {
    width: 88%;
    float: right;
}}
.woocommerce a.woo_loop_btn {
    border: 0px solid #615DFAAB !important;
    background: #08C873 !important;
    background: linear-gradien(270deg, rgb(89 159 204) 0%, rgb(52 152 255) 100%) !important;
    color: #ffffff !important;
    font-weight: 500 !important;
    padding: 8px;
    border-radius: 5px !important;
    font-size: 0.9rem;
text-transform: none !important;
}
.wcfmmp_sold_by_wrapper a {
    color: #8f8f8f !important;
}
.woocommerce div.product .summary .single_add_to_cart_button {box-shadow:none!important;margin-bottom: 10px;
    border-radius: 10px!important;border: 0px solid #25d366!important;
}
.joinchat__woo-btn {border-radius:10px;}
.woo_default_no_sidebar .re_wooinner_cta_wrapper {
    border-radius: 10px;}
#main_header {
    border-bottom: 1px solid #e1e1e1;
}
#wcfmmp-store .banner_text h1 {
    text-transform: capitalize;
    font-size: 54px;
    color: #5d5d5d !important;
}
figure.eq_figure img {
    height: AUTO !important;
}
@media (max-width: 479px)
{.col_item {
    width: 50% !important;
    margin: 0 0 14px 0 !important;
}}
@media screen and (min-width: 1140px)
{.rh-container, .content {
    width: 80%;
}}
@media screen and (min-width: 1140px)
{.vc_row.vc_rehub_container > .vc_col-sm-8, .main-side:not(.full_width) {
    width: 100%;
}}
.lightgreybg {
    background: #ffffff;
}

.woocommerce .products .product a {
    text-decoration: none;
    font-family: 'Lexend;
}

.woocommerce .products.woogridrev .product {
    padding: 0 0 50px 0;
    border-radius: 5px;
}
.woocommerce .products .product figure {
    margin: 0 0 15px 0;
    position: relative;
    text-align: center;
    border-radius: 20px 20px 0px 0px;
}

.woocommerce .products .product.woo_digi_grid .price {
    color: #4376ff;
    font-size: 14px;
}

.tinv-wraper.tinv-wishlist {
    display: none;
    font-size: 100%;
}
.main-nav.dark_style nav.top_menu > ul > li > a {
    color: #fbfbfb;
    font-weight: 400;
}

@media screen and (min-width: 1140px){
.vc_row.vc_rehub_container > .vc_col-sm-8, .main-side:not(.full_width) {
    width: 78%;
}}
.sidebar, .side-twocol {
    width: 20%;
}
.woocommerce a.woo_loop_btn {
    line-height: 1.2rem;}

.joinchat--chatbox .joinchat__box {
    margin-bottom: 70px;}

.joinchat__button {
    margin-bottom: 70px;}

div.gmw-form-wrapper.horizontal-gray input[type="text"] {
    padding: 21px !important;
    border: 1px solid #b2c5ff !important;
    border-radius: 100px !important;
    font-weight:400;
    font-family: inherit;
    height: 30px;
    font-size: 16px !important;
    color: #222 !important;
    width: 220px !important;
    margin: 0px;
}

div.gmw-form-wrapper.horizontal-gray select {
    height: 30px;
    font-size: 16px !important;
    color: #777 !important;
    font-weight:400;
    margin: 0px;
    border-radius: 100px !important;
    padding:10px !important;
    border: 1px solid #b2c5ff !important;
}

div.gmw-form-wrapper.horizontal-gray {
    background: transparent !important;
    padding: 0px;
    border-top: none !important;
    border-bottom: none !important;
    display: inline-block;
    width: 100%;
    box-sizing: border-box;
}
div.gmw-form-wrapper.horizontal-gray .gmw-submit-button {
    padding: 12px !important;
    font-size: 16px !important;
    margin: 0;
    border-radius: 5px !important;
    background: #615dfa !important;
    color: #fff !important;
}

.dig_pgmdl_2 .button[type=submit], .dig_pgmdl_2 .transupbutton[type=submit] {
    BORDER-RADIUS:5PX;
    padding: 5px !IMPORTANT;
    BACKGROUND: #615DFA;
    COLOR: #FFF;
    height: 46px;
    line-height: 0;
    padding: 0;
    width: 100%;
    margin-bottom: 15px;
}

.dig-elem .digits_login .button {
    margin-top: 12px;
    background: #615dfa;
    color: #fff;
    border-radius: 5px;
}

 .dig_pgmdl_2 .minput input[type=text] {
    border-radius: 5px;
    padding: 12px 16px;
    min-height: 46px;
    line-height: 20px;
    background: #fff;
}

.dig_pgmdl_2 .minput .digits-input-wrapper {
    order: 2;
    background: #fff;
}

@media (max-width: 600px) {div.gmw-form-wrapper.horizontal-gray select {
    display: none;
}}

#saludoinicial {font-size: 1.5rem;text-transform:capitalize;}
#nombreusuario {font-size: 1.2rem;text-transform:capitalize;}

form.gmw-form{display:flex;}

#float-panel-woo-area, .float-panel-woo-info{display:none !important}


a.re_track_btn.woo_loop_btn.btn_offer_block.add_to_cart_button.ajax_add_to_cart.product_type_simple {color: #fff!important; background: #615dfae3 !important;border-radius:10px !important;}

.rh-custom-quantity input.minus-quantity, .rh-custom-quantity input.plus-quantity {
    width: 40px;
    height: 40px;
    line-height: 40px;
    padding: 0;
    font-size: 20px;
    border: none;
    background-color: #615dfae3;
    border-radius: 0 !important;
    color: #fff;
    box-shadow: none;
    border-radius: 50% !important;
}

.woocommerce .quantity.rh-custom-quantity input.qty {
    width: 50px;
    height: 40px;
    line-height: 40px;
    border: 0px solid #ddd;
    border-left: 0;
    border-radius: 0;
    padding: 0;
    float: none;
    -moz-appearance: textfield;
}

.cart-collaterals #mycred-partial-payment-woo {
    float: left;
    width: 100% !important;
    padding: 20px !important;
}

.woocommerce .cart-collaterals .cart_totals a.button.alt {
    display: block;
    font-size: 18px;
    width: 100%;
    background: #20af6c !important;
    color: #fff !important;
}

button.single_add_to_cart_button.button.alt.wp-element-button{
    background: #20af6c !important;
    border-radius: 10px !important;
    color: #fff !important;
}

.woocommerce div.product .summary .single_add_to_cart_button, .woocommerce div.product .woo-button-area .masked_coupon, .woocommerce div.product .summary form.cart .button {
background: linear-gradient(270deg, rgb(243 255 77) 0%, rgb(253 230 115) 100%) !important;
    border-radius: 10px !important;
    color: #000000 !important;
    font-size: 1.2rem;
text-transform: none;
font-weight:500;
}

.woocommerce .products.woogridrev .product {
    padding: 0 0 50px 0;
    border-radius: 5px;
    box-shadow: none;
    border: 1px solid #d9d9d9;
}

footer#theme_footer.white_style {
    background: #cae6be !important;
    border-top: 1px solid #eee;
}

.wcfmmp_sold_by_container_advanced {
    width: 100% !important;margin:20px 0px 20px 0px;}
div.gmw-single-location-wrapper {
    width: 100%;
    text-align: center;}

.joinchat__woo-btn {
    width: 100%;
    text-align: center;
    border-radius: 10px;
    background: #29b478;
    border: 0px solid #29b478;
    color: #fff;
    font-weight: 500;
    font-size: 1rem;
    padding:0px !important;
}
div.tabledisplay.mb20 {border: 1px solid #dae2ed;
    padding: 5px;
    margin: 0px 0px 20px 0px;
    border-radius: 5px;}
div.wpsm-banner-wrapper.rh-hovered-wrap.full_cover_link.position-relative.flowhidden{border-radius:5px;}

.wcfmmp_sold_by_wrapper {
    font-size: 14px;
    text-align: center;
    width: 100%;
    display: block;
    margin-top:10px;
}
.wcfmmp_sold_by_wrapper a {
    color: #8f8f8f !important;
    font-size: 14px;
    text-transform: capitalize;
}
.rh_woo_code_zone_button {
    clear: both;
    font-size: 12px;
    font-weight: bold;
}
.woocommerce div.product .single_add_to_cart_button{padding:11px;}
h1.wcfm_store_title.fontbold {color:#646464 !important;text-transform:capitalize;}
#wcfmmp-store h1.wcfm_store_title, #wcfmmp-store .address h1.wcfm_store_title {
    color: #646464!important;
}
.sticky-psn.rh-300-sidebar {
    z-index: 100000;
    background: #ffffff;
}
.elementor-column-gap-default>.elementor-column>.elementor-element-populated {
    padding: 5px;
}
#wcfmmp-stores-lists {
    box-shadow: none;
    height: auto!important;
}

#wcfmmp-stores-wrap ul.wcfmmp-store-wrap li .store-wrapper {
    background: #fff;
    box-shadow: none;
    border:1px solid #d8d8d8;
border-radius:0px;}

.woo_full_width_advanced nav.woocommerce-breadcrumb {
    margin: 0px 0 0px 0;
    font-size: 13px;
    white-space: nowrap;
    overflow: auto;
}

.re_wooinner_cta_wrapper, .rh-300-sidebar .widget {
    border: 1px solid rgba(0,0,0,.2);
    border-radius: 10px!important;
    background: #fff;
}

div.gmw-single-location-wrapper {
    display: inline-block;
    background: transparent;
    padding: 15px 25px;
    border: 0px solid #e1e8ed;
    border-radius: 4px;
    margin-bottom: 16px;
}

.woocommerce div.product.elementor form.cart:not(.grouped_form):not(.variations_form) {
    display: block !important;}

div.gmw-form-wrapper.horizontal-gray .gmw-submit-button {
    padding: 11px !important;
    height: auto;
    font-size: 16px !important;
    margin: 0px !important;
    border-radius: 100px !important;
    background: #ffffff !important;
    color: #04BEB3 !important;
    border: 1px solid #04BEB3 !important;
    font-weight: bold;
}

.rh-border-line:after {background:#077A0E;}
.redbrightcolor {
    color: #077A0E;
}

.gmw-form-wrapper .gmw-form-field-wrapper .gmw-field-label, .gmw-form-wrapper .gmw-form-field-wrapper label:not(.gmw-checkbox-label):not(.gmw-radio-label) {display:none !important;}

#wcfmmp-stores-wrap ul.wcfmmp-store-wrap li .store-content .store-info {background-size: contain;}

#wcfmmp-stores-wrap ul.wcfmmp-store-wrap li .store-data-container .store-phone {
    color: #000000 !important;
    background: none;
}

#wcfmmp-store .banner_img {
    background-size: contain;}

.wcfmmp-store-search-form .select2-container--default .select2-selection--single {
    padding: 5px;
    border: 0;
    height: 40px;
    border-radius: 20px;
}

.wcfmmp-store-search-form input#search {border-radius:20px;}
.wcfmmp-store-search-form select#wcfmmp_store_category{border-radius:20px;}

#wcfmmp_store_orderby, .wcfmmp-store-search-form #wcfmmp_store_state, .wcfmmp-store-search-form .select2-container, .wcfmmp-store-search-form .wcfmmp-search-box, .wcfmmp-store-search-form input#search, .wcfmmp-store-search-form input.wcfm-search-field, .wcfmmp-store-search-form input.wcfmmp-radius-addr, .wcfmmp-store-search-form select#wcfmmp_store_category, .wcfmmp-store-search-form select#wcfmmp_store_country {border-radius:20px;}

.wcfmmp-store-search-form {
    text-align: center;
    border-radius: 20px;
}

#wcfmmp-stores-wrap ul.wcfmmp-store-wrap li.coloum-4 .store-data h2 a {
    font-weight: bold;
    text-transform:capitalize;
}

body:not(.noinnerpadding) .rh-post-wrapper {
    background: #fff;
    border: 0px solid #e3e3e3;
    padding: 25px;
    box-shadow: none;
}

#login h1 a, body.login h1 a {
    width: 120px;
    height: 120px;
    background-size: covver;
    background-position: bottom center;
}

.elementor-main-swiper {border-radius:15px !important;}
.gridtarjeta {font-weight:bold;text-align:center;color:#25d366;line-height: 1.2;font-size:0.8rem;}
.gridtarjeta2 {padding:20px;font-size:1.3rem;font-weight:bold;text-align:center;color:#01dea5;line-height: 1.2;}
.puntosbig {font-size:2.5rem;}
.woocommerce div.product .summary .price {
    text-align: center;
    font-size: 2em;font-weight:bold;}

.woocommerce div.product form.cart .variations {
    line-height: 1.2;
    font-weight: 800;
    margin: 1em 0 1.5em 0;
}
.rh-300-content-area .woo-price-area, .rh-300-content-area .woo-price-area p {
    font-size: 1rem !important;
}
div.woo_top_meta.mobileblockdisplay.mb10 {display:none;}
h1 {font-weight: bold !important;}

.star-rating {
      display: none !important;
    }
    .woocommerce-product-rating {
      display: none !important;
    }
.elementor-2467 .elementor-element.elementor-element-213459f:not(.elementor-motion-effects-element-type-background), .elementor-2467 .elementor-element.elementor-element-213459f > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-color: #FFFFFF;
    z-index: 11000 !important;
}
.elementor-5796 .elementor-element.elementor-element-4cc24b5 {
    border-style: solid;
    border-color: #A5A5A5;
    transition: none !important;
}

body.modal-open .modal {
    z-index: 1200000;
}

.wcfmmp_sold_by_wrapper a {
    color: #8f8f8f !important;
    font-size: 8px !important;
    text-transform: capitalize;
}
.rehub-sec-smooth {border-radius:20px !important;}
.woo_full_width_advanced nav.woocommerce-breadcrumb
Specificity: (0,2,1)
 {
    font-size: 8px;
}
.joinchat__woo-btn {border-radius:5px!important;}

.woocommerce button.button {color:#ffffff !important;background: none #20af6c !important;padding: 10px !important;
    text-transform: none;}
div.nsl-container[data-align="left"]{text-align:center !important;}

.puncli-whatsapp-btn {
  display: block;
  background: #25D366;
  color: #fff;
  text-align: center;
  padding: 14px;
  border-radius: 14px;
  font-weight: 600;
  text-decoration: none;
  font-size: 16px;
}

.puncli-whatsapp-btn:hover {
  background: #1ebe5d;
}

.puncli-buttons {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* Botón base */
.puncli-btn {
  display: block;
  padding: 14px;
  border-radius: 14px;
  font-weight: 600;
  text-align: center;

  /* 🔒 Forzar color blanco */
  color: #ffffff !important;

  text-decoration: none !important;
  font-size: 16px;
}

/* Evitar estados heredados */
.puncli-btn:visited,
.puncli-btn:hover,
.puncli-btn:active,
.puncli-btn:focus {
  color: #ffffff !important;
  text-decoration: none !important;
}

/* Colores de marca */
.puncli-btn.whatsapp {
  background-color: #25D366;
}

.puncli-btn.instagram {
  background-color: #E1306C;
}

.puncli-btn.facebook {
  background-color: #1877F2;
}

.puncli-btn.website {
  background-color: #111111;
}

/* Hover suave */
.puncli-btn:hover {
  opacity: 0.9;
}
/* Tamano sidebar */
@media (max-width: 1023px) {
    .sidebar {
        width: 100% !important;
        margin: 30px auto 0 auto;
    }
}

/*css de botones redes geodirectory*/
/* Contenedor de botones */
.puncli-buttons {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* Botón base */
.puncli-btn {
  display: flex;
  align-items: center;
  justify-content: center; /* centra icono + texto */
  gap: 12px;

  padding: 14px 16px;
  border-radius: 14px;

  font-weight: 600;
  font-size: 16px;

  text-decoration: none !important;
  color: #ffffff !important;
  text-align: center !important;
}

/* Estados del link (evita herencias del tema) */
.puncli-btn:visited,
.puncli-btn:hover,
.puncli-btn:active,
.puncli-btn:focus {
  color: #ffffff !important;
  text-decoration: none !important;
}

/* Iconos */
.puncli-btn .icon {
  width: 22px;
  height: 22px;
  display: flex;
}

.puncli-btn svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
}

/* Colores de marca */
.puncli-btn.whatsapp {
  background-color: #25D366;
}

.puncli-btn.instagram {
  background-color: #E1306C;
}

.puncli-btn.facebook {
  background-color: #1877F2;
}

.puncli-btn.website {
  background-color: #111111;
}

/* Hover suave */
.puncli-btn:hover {
  opacity: 0.9;
}

/* Botón WhatsApp */
.puncli-whatsapp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;

  padding: 14px 18px;
  border-radius: 14px;

  background-color: #25D366;

  /* Texto blanco forzado */
  color: #ffffff !important;
  font-weight: 600;
  font-size: 16px;

  text-decoration: none !important;
}

/* Estados del link */
.puncli-whatsapp-btn:visited,
.puncli-whatsapp-btn:hover,
.puncli-whatsapp-btn:active,
.puncli-whatsapp-btn:focus {
  color: #ffffff !important;
  text-decoration: none !important;
}

/* Icono WhatsApp (SVG inline vía mask) */
.puncli-whatsapp-btn::before {
  content: "";
  width: 22px;
  height: 22px;

  background-color: #ffffff; /* icono blanco */

  /* SVG oficial WhatsApp */
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.04 2.01c-7.72 0-14 6.28-14 14 0 2.46.64 4.86 1.86 6.98L2 30l7.2-1.88a13.94 13.94 0 0 0 6.84 1.75c7.72 0 14-6.28 14-14s-6.28-13.86-14-13.86zm0 25.5c-2.17 0-4.3-.58-6.15-1.67l-.44-.26-4.27 1.12 1.14-4.16-.29-.43a11.48 11.48 0 1 1 10.01 5.4z'/%3E%3C/svg%3E") no-repeat center / contain;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.04 2.01c-7.72 0-14 6.28-14 14 0 2.46.64 4.86 1.86 6.98L2 30l7.2-1.88a13.94 13.94 0 0 0 6.84 1.75c7.72 0 14-6.28 14-14s-6.28-13.86-14-13.86zm0 25.5c-2.17 0-4.3-.58-6.15-1.67l-.44-.26-4.27 1.12 1.14-4.16-.29-.43a11.48 11.48 0 1 1 10.01 5.4z'/%3E%3C/svg%3E") no-repeat center / contain;
}

/* Hover */
.puncli-whatsapp-btn:hover {
  opacity: 0.9;
}
/* Ocultar campo password si OTP está activo */
.woocommerce-form-register input[type="password"],
.woocommerce-form-login input[type="password"] {
  display: none !important;
}

/* Subir teléfono arriba */
.woocommerce-form-register .form-row-phone {
  order: -1;
}

/* =====================================================
   CONTENEDOR GENERAL
===================================================== */
.woocommerce-account .woocommerce {
  max-width: 1100px;
  margin: 40px auto;
  padding: 0 20px;
}

/* =====================================================
   GRID LOGIN / REGISTRO
===================================================== */
.woocommerce-account .u-columns {
  display: block;
}

/* =====================================================
   TÍTULOS
===================================================== */
.woocommerce-account h2 {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 20px;
}

/* =====================================================
   CARDS
===================================================== */
.woocommerce-form-login,
.woocommerce-form-register {
  background: #ffffff;
  border-radius: 20px!important;
  padding: 28px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.06);
}
.woocommerce-form-login,
.woocommerce-form-register {
  height: auto !important;
}


/* =====================================================
   INPUTS
===================================================== */
.woocommerce-form input[type="text"],
.woocommerce-form input[type="email"],
.woocommerce-form input[type="password"],
.woocommerce-form input[type="tel"] {
  border-radius: 14px;
  padding: 14px 16px;
  font-size: 15px;
  border: 1px solid #e5e7eb;
}

/* Focus */
.woocommerce-form input:focus {
  border-color: #22c55e;
  box-shadow: 0 0 0 3px rgba(34,197,94,0.15);
  outline: none;
}

/* =====================================================
   BOTONES
===================================================== */
.woocommerce-form button {
  background: #22c55e;
  border-radius: 14px;
  padding: 14px;
  font-weight: 600;
  font-size: 15px;
  width: 100%;
  color: #ffffff;
  border: none;
}

.woocommerce-form button:hover {
  background: #16a34a;
}

/* =====================================================
   PRIORIDAD TELÉFONO (OTP)
===================================================== */
.woocommerce-form-register .form-row-phone {
  order: -1;
}

.woocommerce-form-register input[type="tel"] {
  border: 2px solid #22c55e;
}

/* =====================================================
   OCULTAR PASSWORD (OTP MANDA)
===================================================== */
.woocommerce-form-register input[type="password"],
.woocommerce-form-login input[type="password"] {
  display: none !important;
}

/* =====================================================
   TEXTO LEGAL
===================================================== */
.woocommerce-privacy-policy-text {
  font-size: 13px;
  color: #6b7280;
}

/* =====================================================
   QUITAR MENÚ LATERAL
===================================================== */
.woocommerce-MyAccount-navigation {
  display: none;
}

/* =====================================================
   RESPONSIVE
===================================================== */
@media (max-width: 768px) {

  .woocommerce-account .u-columns {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .woocommerce-form-login,
  .woocommerce-form-register {
    padding: 22px;
  }

}

/* =====================================================
   FORZAR TELÉFONO ARRIBA (MINIORANGE)
===================================================== */

/* Contenedor registro */
.woocommerce-form-register {
  display: flex;
  flex-direction: column;
}

/* Campo teléfono (MiniOrange) */
.woocommerce-form-register input[name*="phone"],
.woocommerce-form-register input[name*="mo_phone"],
.woocommerce-form-register input[type="tel"] {
  order: -1;
}

/* Label del teléfono */
.woocommerce-form-register label[for*="phone"],
.woocommerce-form-register label[for*="mo_phone"] {
  order: -1;
  font-weight: 600;
}

/* =====================================================
   OCULTAR CAMPO NAME (BUDDYPRESS) EN REGISTRO
===================================================== */
/* =====================================================
   OCULTAR CAMPO NAME (BUDDYPRESS) – DEFINITIVO
===================================================== */

/* BuddyPress xProfile field_1 */
.bp-profile-field.field_1,
.bp-profile-field.field-name,
.editfield.field_1,
.editfield.field-name,
#field_1,
#field_1-1,
.profile-fields .editfield:first-child,

/* Inputs y labels */
input[name="field_1"],
input[name^="field_1"],
label[for="field_1"],
label[for^="field_1"],

/* Woo + BP combinados */
.woocommerce form .bp-profile-field,
.woocommerce form .editfield.field_1 {
  display: none !important;
}

/*switcher geod*/
.bsui .text-muted {
    color: #08C873 !important;
    font-weight: bold;
}

/* =====================================================
   GOOGLE CARD (NO TOCAR)
===================================================== */

.puncli-google-card {
    background: #ffffff;
    border-radius: 18px;
    padding: 25px;
    margin-top: 30px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06);
    max-width: 480px;
}

.puncli-google-avatar {
    width: 70px;
    height: 70px;
    border-radius: 50%!important;
}

/* =====================================================
   PERFIL APP PREMIUM
===================================================== */

.puncli-app-card {
    background: #ffffff;
    padding: 45px 35px;
    border-radius: 26px;
    box-shadow: 0 25px 60px rgba(0,0,0,0.08);
    max-width: 500px;
    margin: 10px;
    text-align: center;
}

/* Avatar */

.puncli-app-avatar img {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    object-fit: cover;
    margin-bottom: 25px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.12);
}

/* Nombre */

.puncli-app-name {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 5px;
}

.puncli-app-username {
    color: #6b7280;
    font-size: 14px;
    margin-bottom: 30px;
}

/* =====================================================
   PUNTOS
===================================================== */

.puncli-points-box {
    margin: 18px 0 25px 0;
    padding: 16px;
    background: linear-gradient(135deg, #22c55e, #16a34a);
    border-radius: 14px;
    color: #fff;
    text-align: center;
}

.puncli-points-number {
    display: block;
    font-size: 26px;
    font-weight: 700;
}

.puncli-points-label {
    font-size: 13px;
    opacity: 0.9;
}

/* =====================================================
   INFO USUARIO
===================================================== */

.puncli-app-info {
    text-align: left;
    margin-bottom: 30px;
}

.puncli-info-row {
    display: flex;
    justify-content: space-between;
    padding: 14px 0;
    border-bottom: 1px solid #f3f4f6;
    font-size: 14px;
}

.puncli-info-row span {
    color: #6b7280;
}

.puncli-divider {
    height: 1px;
    background: #e5e7eb;
    margin: 30px 0;
}

/* =====================================================
   BOTONES FIX DEFINITIVO
===================================================== */

.puncli-app-card form {
    display: flex;
    gap: 12px;
    align-items: stretch;
}

.puncli-app-card form .puncli-upload-btn,
.puncli-app-card form .puncli-save-btn {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 48px;
    padding: 0 16px;
    font-weight: 600;
    border-radius: 50px;
    cursor: pointer;
    text-align: center;
    font-size: 14px;
    box-sizing: border-box;
}

/* Label */

.puncli-upload-btn {
    background: #f3f4f6;
    color: #111827;
}

.puncli-upload-btn input {
    display: none;
}

/* Button */

.puncli-save-btn {
    background: #111827;
    color: #fff;
    border: none;
    appearance: none;
    -webkit-appearance: none;
}

.puncli-save-btn:hover {
    background: #000;
}

/* Remove */

.puncli-remove {
    display: block;
    margin-top: 12px;
    font-size: 13px;
    color: #6b7280;
}

/* =====================================================
   MOBILE - INSTAGRAM STYLE
===================================================== */

@media (max-width: 768px) {

    .puncli-app-card {
        padding: 20px 18px;
        border-radius: 16px;
        text-align: left;
    }

    .puncli-app-avatar {
        float: left;
        margin-right: 18px;
    }

    .puncli-app-avatar img {
        width: 90px;
        height: 90px;
        margin: 0;
        box-shadow: 0 6px 18px rgba(0,0,0,0.12);
    }

    .puncli-app-name {
        font-size: 16px;
        margin-top: 5px;
        margin-bottom: 2px;
    }

    .puncli-app-username {
        font-size: 13px;
        color: #8e8e8e;
        margin-bottom: 12px;
    }

    .puncli-points-box {
        padding: 12px;
        border-radius: 12px;
        margin: 15px 0 20px 0;
    }

    .puncli-points-number {
        font-size: 20px;
    }

    .puncli-app-info {
        clear: both;
        margin-top: 18px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }

    .puncli-info-row {
        display: block;
        border: none;
        padding: 0;
        font-size: 13px;
    }

    .puncli-info-row span {
        display: block;
        font-size: 11px;
        color: #8e8e8e;
        margin-bottom: 2px;
    }

    .puncli-divider {
        margin: 20px 0;
    }

    .puncli-app-card form {
        gap: 10px;
    }

    .puncli-app-card form .puncli-upload-btn,
    .puncli-app-card form .puncli-save-btn {
        height: 42px;
        border-radius: 8px;
        font-size: 13px;
    }

    .puncli-remove {
        font-size: 12px;
        text-align: center;
    }

}

/* ================================
   GEO LISTING – RAPPI STYLE
================================ */

/* Contenedor general */
.geodir_post_view,
.geodir_single {
    background: #f5f6f8;
    padding-bottom: 80px;
}

/* Imagen principal */
.geodir-single-media,
.geodir-single-media img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    border-radius: 0;
}

/* Card principal */
.geodir-single-header {
    background: #ffffff;
    margin: -40px 16px 20px;
    padding: 20px;
    border-radius: 22px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.08);
}

/* Título */
.geodir-single-header h1 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 6px;
}

/* Categoría */
.geodir-categories {
    font-size: 13px;
    color: #6b7280;
    margin-bottom: 12px;
}

/* CTA principal (WhatsApp) */
.puncli-whatsapp-btn {
    display: block;
    width: 100%;
    padding: 14px;
    background: #22c55e;
    color: #fff !important;
    text-align: center;
    font-weight: 700;
    border-radius: 14px;
    margin-top: 12px;
    font-size: 15px;
}

/* Descripción */
.geodir-single-description {
    background: #ffffff;
    margin: 0 16px;
    padding: 20px;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}

/* Botones secundarios */
.puncli-buttons {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin: 20px 16px;
}

.puncli-buttons a {
    padding: 12px;
    border-radius: 14px;
    font-weight: 600;
    text-align: center;
    color: #fff !important;
}

/* Responsive */
@media (min-width: 768px) {

    .geodir-single-media img {
        height: 380px;
    }

    .geodir-single-header {
        max-width: 720px;
        margin: -60px auto 30px;
    }

    .geodir-single-description {
        max-width: 720px;
        margin: 0 auto;
    }

}

.puncli-listing-single {
    background: #f5f6f8;
    padding-bottom: 80px;
}

/* Imagen */
.puncli-listing-single img {
    width: 100%;
    height: 260px;
    object-fit: cover;
}

/* Card flotante */
.listing-header-card {
    background: #ffffff;
    margin: -40px 16px 20px;
    padding: 20px;
    border-radius: 22px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.08);
}

/* Descripción */
.listing-description-card {
    background: #ffffff;
    margin: 0 16px;
    padding: 20px;
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.05);
}

/* GRID DE ACCIONES */
.puncli-listing-single .puncli-buttons {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 18px;
}

/* BOTONES SECUNDARIOS */
.puncli-listing-single .puncli-buttons a {
    padding: 14px;
    border-radius: 14px;
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    color: #fff !important;
}

/* ===============================
   DIRECCIÓN – APP STYLE (RAPPI)
================================ */

.puncli-address-card {
    background: #ffffff;
    margin: 18px 16px;
    padding: 16px 18px;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0,0,0,0.06);
    display: flex;
    align-items: center;
    gap: 14px;
}

/* Icono */
.puncli-address-card::before {
    content: "📍";
    font-size: 22px;
    line-height: 1;
}

/* Texto dirección */
.puncli-address-card,
.puncli-address-card * {
    font-size: 14px;
    color: #111827;
    text-decoration: none;
}

/* Subtexto (ciudad, barrio) */
.puncli-address-card .geodir-location,
.puncli-address-card .geodir-address {
    color: #374151;
    font-weight: 500;
}

/* Hint tipo app */
.puncli-address-card::after {
    content: "Ver en el mapa";
    font-size: 12px;
    color: #22c55e;
    margin-left: auto;
    font-weight: 600;
}

/* Hover / tap */
.puncli-address-card:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 35px rgba(0,0,0,0.08);
}

/*Sticky anuncios*/
.puncli-sticky-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #ffffff;
    padding: 12px 16px;
    box-shadow: 0 -10px 25px rgba(0,0,0,0.12);
    display: flex;
    gap: 12px;
    z-index: 999;
}

.puncli-sticky-bar a {
    flex: 1;
    text-align: center;
    padding: 14px;
    border-radius: 14px;
    font-weight: 700;
}

.puncli-address-card {
    transition: all 0.2s ease;
}

.puncli-address-card:active {
    transform: scale(0.98);
    background: #f9fafb;
}
/* ===============================
   GEO FORM – CREATE LISTING APP
================================ */

.geodir-add-listing,
.geodir-form-wrapper {
    background: #f5f6f8;
    padding: 20px;
}

/* Card del formulario */
.geodir-form {
    background: #ffffff;
    border-radius: 20px;
    padding: 20px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.08);
}

/* Cada campo */
.geodir-form .form-group,
.geodir-form .geodir-fieldset {
    margin-bottom: 18px;
}

/* Labels */
.geodir-form label {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 6px;
    display: block;
}

/* Inputs */
.geodir-form input,
.geodir-form textarea,
.geodir-form select {
    width: 100%;
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid #e5e7eb;
    font-size: 15px;
}

/* Focus */
.geodir-form input:focus,
.geodir-form textarea:focus,
.geodir-form select:focus {
    border-color: #22c55e;
    box-shadow: 0 0 0 3px rgba(34,197,94,0.15);
    outline: none;
}

/* Textarea */
.geodir-form textarea {
    min-height: 120px;
}

/* Botón publicar */
.geodir-form button,
.geodir-form input[type="submit"] {
    width: 100%;
    padding: 16px;
    background: #22c55e;
    border-radius: 16px;
    border: none;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    margin-top: 10px;
}

/* Mobile first */
@media (max-width: 768px) {
    .geodir-form {
        padding: 16px;
    }
}

/* =====================================================
   GEO LISTINGS – APP STYLE (LISTADOS)
===================================================== */

.geodir-listings,
.geodir-loop-container {
    background: #f5f6f8;
    padding: 12px;
}

.geodir-loop-item,
.geodir-category-listing {
    background: #ffffff;
    border-radius: 18px;
    overflow: hidden;
    margin-bottom: 16px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

.geodir-loop-item img {
    width: 100%;
    height: 160px;
    object-fit: cover;
}

.geodir-loop-content {
    padding: 14px;
}

.geodir-loop-content h2,
.geodir-loop-content h3 {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 4px;
}

.geodir-loop-content .geodir-categories,
.geodir-loop-content .geodir-location {
    font-size: 12px;
    color: #6b7280;
    margin-bottom: 6px;
}

.geodir-loop-content .geodir-rating {
    font-size: 13px;
    margin-bottom: 10px;
}

.geodir-loop-content a,
.geodir-loop-content .puncli-whatsapp-btn {
    display: block;
    width: 100%;
    padding: 12px;
    background: #22c55e;
    color: #fff !important;
    border-radius: 12px;
    text-align: center;
    font-weight: 600;
    font-size: 14px;
}

@media (min-width: 768px) {
    .geodir-loop-container {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
        max-width: 1100px;
        margin: auto;
    }

    .geodir-loop-item img {
        height: 180px;
    }
}

/* =====================================================
   BASE – SINGLE LISTING
===================================================== */

.puncli-listing-single {
    background: #f5f6f8;
    padding-bottom: 120px;
}

/* =====================================================
   TOP CARD – SECCIÓN SUPERIOR (RESPETA ELEMENTOR)
===================================================== */

.puncli-listing-top-card {
    background: #ffffff;
    border-radius: 28px;
    padding: 32px;
    margin: -60px 24px 40px;
    box-shadow: 0 25px 60px rgba(0,0,0,0.10);
}

/* Layout real (solo aquí se controla) */
.puncli-listing-top-card .elementor-container {
    max-width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1.2fr 2fr 1fr;
    gap: 32px;
    align-items: center;
}

/* Imagen */
.puncli-listing-top-card img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    border-radius: 22px;
}

/* Info */
.puncli-col-info {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.puncli-col-info h1 {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
}

.puncli-col-info .listing-excerpt {
    font-size: 15px;
    color: #4b5563;
    line-height: 1.6;
}

/* Acciones */
.puncli-col-actions {
    display: flex;
    flex-direction: column;
    gap: 16px;
    justify-content: center;
}

/* =====================================================
   BOTONES
===================================================== */

.puncli-whatsapp-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 16px;
    background: #22c55e;
    color: #ffffff !important;
    font-size: 16px;
    font-weight: 700;
    border-radius: 16px;
    box-shadow: 0 12px 25px rgba(34,197,94,0.35);
    text-decoration: none;
}

.puncli-buttons {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.puncli-buttons a {
    padding: 14px;
    border-radius: 14px;
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    color: #ffffff !important;
    text-decoration: none;
}

/* =====================================================
   DIRECCIÓN – CARD APP
===================================================== */

.puncli-address-card {
    background: #ffffff;
    padding: 16px 18px;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0,0,0,0.06);
    display: flex;
    align-items: center;
    gap: 14px;
    font-size: 14px;
}

.puncli-address-card::before {
    content: "📍";
    font-size: 22px;
}

.puncli-address-card::after {
    content: "Ver mapa";
    margin-left: auto;
    color: #22c55e;
    font-size: 12px;
    font-weight: 600;
}

/* =====================================================
   DESCRIPCIÓN
===================================================== */

.listing-description-card {
    background: #ffffff;
    margin: 0 24px 40px;
    padding: 24px;
    border-radius: 24px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.06);
}

/* =====================================================
   STICKY BAR – MÓVIL
===================================================== */

.puncli-sticky-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background: #ffffff;
    padding: 12px 16px;
    box-shadow: 0 -10px 25px rgba(0,0,0,0.12);
    display: flex;
    gap: 12px;
    z-index: 999;
}

.puncli-sticky-bar a {
    flex: 1;
    text-align: center;
    padding: 14px;
    border-radius: 14px;
    font-weight: 700;
    text-decoration: none;
    margin: 5px;
}

/* =====================================================
   MICRO UX
===================================================== */

.puncli-listing-top-card,
.puncli-address-card {
    transition: all 0.2s ease;
}

.puncli-address-card:active {
    transform: scale(0.98);
    background: #f9fafb;
}

/* =====================================================
   RESPONSIVE
===================================================== */

@media (max-width: 1024px) {

    .puncli-listing-top-card {
        margin: -30px 16px 24px;
        padding: 20px;
    }

    .puncli-listing-top-card .elementor-container {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .puncli-listing-top-card img {
        height: 220px;
    }

    .listing-description-card {
        margin: 0 16px 30px;
        padding: 20px;
    }
}

/*Tarjeta base Puncli*/
.puncli-card {
    background: #ffffff;
    border-radius: 24px;
    padding: 24px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.08);
}

/*Imagen anuncio*/
.puncli-hero-img img {
    width: 100%;
    height: 260px;
    object-fit: cover;
    border-radius: 20px;
}
/*Bloque de info anuncios*/
.puncli-info-block h1,
.puncli-info-block h2 {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 8px;
}

.puncli-excerpt {
    font-size: 15px;
    color: #4b5563;
    line-height: 1.6;
}

/*Bloque de direccion anuncio*/
.puncli-address {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06);
    font-size: 14px;
}

.puncli-address::before {
    content: "📍";
    font-size: 20px;
}

.puncli-address::after {
    content: "Ver mapa";
    margin-left: auto;
    font-size: 12px;
    font-weight: 600;
    color: #22c55e;
}

/*Bloque boton principal anuncio*/
.puncli-btn-primary {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 16px;
    background: #22c55e;
    color: #fff !important;
    border-radius: 16px;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 12px 25px rgba(34,197,94,0.35);
}

/*Bloque botones secundarios grid*/
.puncli-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.puncli-actions a {
    padding: 14px;
    border-radius: 14px;
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    color: #ffffff !important;
    text-decoration: none;
}

/*Bloque reutilizables micro ux*/
.puncli-card,
.puncli-address,
.puncli-btn-primary {
    transition: all 0.2s ease;
}

.puncli-card:active,
.puncli-address:active {
    transform: scale(0.98);
}

/* =====================================================
   GEODIRECTORY – TABS HORIZONTALES (SAFE MODE)
   Compatible con Bootstrap / BSUI
===================================================== */

/* SOLO la barra de pestañas */
.geodir-tabs ul.nav-tabs,
.geodir-nav-tabs.nav-tabs,
.bsui .nav-tabs {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    white-space: nowrap;
    gap: 8px;
    padding-bottom: 6px;
    scrollbar-width: none; /* Firefox */
}

/* Ocultar scrollbar */
.geodir-tabs ul.nav-tabs::-webkit-scrollbar,
.geodir-nav-tabs.nav-tabs::-webkit-scrollbar,
.bsui .nav-tabs::-webkit-scrollbar {
    display: none;
}

/* Cada pestaña */
.geodir-tabs ul.nav-tabs > li,
.geodir-nav-tabs.nav-tabs > li,
.bsui .nav-tabs > li {
    float: none;              /* Bootstrap fix */
    flex: 0 0 auto;
}

/* Link de pestaña */
.geodir-tabs ul.nav-tabs > li > a,
.geodir-nav-tabs.nav-tabs > li > a,
.bsui .nav-tabs > li > a {
    padding: 8px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    background: #f3f4f6;
    color: #111827;
    border: none;
    line-height: 1.2;
}

/* Activa (Bootstrap friendly) */
.geodir-tabs ul.nav-tabs > li.active > a,
.geodir-nav-tabs.nav-tabs > li.active > a,
.bsui .nav-tabs > li.active > a,
.bsui .nav-tabs > li > a.active {
    background: #22c55e;
    color: #ffffff;
}

/* =====================================
   NO TOCAR CONTENIDO (CRÍTICO)
===================================== */

.geodir-tabs .tab-content,
.geodir-tab-content,
.bsui .tab-content,
.bsui .tab-pane {
    display: block;        /* Bootstrap controla show/hide */
    overflow: visible;
}

/* =====================================
   TABS VISUALES TIPO APP
===================================== */

.puncli-tabs-bar {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding: 8px 4px;
    scrollbar-width: none;
}

.puncli-tabs-bar::-webkit-scrollbar {
    display: none;
}

.puncli-tab-btn {
    display: inline-block;
    padding: 8px 16px;
    background: #f3f4f6;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    color: #111827 !important;
    white-space: nowrap;
    text-decoration: none;
}

.puncli-tab-btn:hover {
    background: #e5e7eb;
}

/*ULTIMO HEADER ANUNCIO TABS*/
/* =====================================================
   STICKY HEADER – MOBILE + TABLET (SECTIONS)
===================================================== */

@media (max-width: 1024px) {

    .puncli-mobile-header {
        position: sticky;
        top: 0;
        z-index: 999;
        background: #ffffff;
        padding: 10px 14px 8px;
        box-shadow: 0 6px 18px rgba(0,0,0,0.10);
    }

    /* Imagen */
    .puncli-mobile-header img {
        width: 100%;
        height: 180px;
        object-fit: cover;
        border-radius: 14px;
        transition: height 0.3s ease;
    }

    /* Header compacto */
    .puncli-mobile-header.compact img {
        height: 110px;
    }

    /* Título */
    .puncli-mobile-header h1,
    .puncli-mobile-header h2 {
        font-size: 18px;
        font-weight: 700;
        margin: 6px 0 10px;
        transition: font-size 0.3s ease;
    }

    .puncli-mobile-header.compact h1,
    .puncli-mobile-header.compact h2 {
        font-size: 16px;
    }

    /* ============================
       TABS MINIMAL (CARRETE)
    ============================ */

    .puncli-tabs-minimal {
        white-space: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 6px;
        scrollbar-width: none;
    }

    .puncli-tabs-minimal::-webkit-scrollbar {
        display: none;
    }

    .puncli-tab-min {
        display: inline-block;
        margin-right: 18px;
        position: relative;
        font-size: 14px;
        font-weight: 600;
        color: #6b7280;
        text-decoration: none;
        padding-bottom: 6px;
    }

    .puncli-tab-min.active {
        color: #111827;
    }

    .puncli-tab-min.active::after {
        content: '';
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 3px;
        background: #22c55e;
        border-radius: 2px;
    }

}

@media (max-width: 1024px) {

  /* Espacio para que el sticky no tape */
  section[id] {
      scroll-margin-top: 170px;
  }

  /* Cuando el header está compacto */
  .puncli-mobile-header.compact ~ section[id] {
      scroll-margin-top: 120px;
  }

}

/* Anclas invisibles para scroll-spy */
.puncli-anchor {
    position: relative;
    width: 100%;
    height: 1px;
}

/*temporal active*/
/* DEBUG VISUAL TAB ACTIVO */
.puncli-tab-min.active {
    color: red !important;
}

.puncli-tab-min.active::after {
    content: '';
    display: block;
    width: 100%;
    height: 4px;
    background: red;
    margin-top: 4px;
}

/*Tarjeta base blanca menos padding*/

/*Tarjeta base Puncli*/
.puncli-card-pequena {
    background: #ffffff;
    border-radius: 20px;
    padding: 5px;
    box-shadow: 0 15px 40px rgba(0,0,0,0.08);
}

/*Bloque reutilizables micro ux*/
.puncli-card-pequena
{
    transition: all 0.2s ease;
}

.puncli-card-pequena:active
{
    transform: scale(0.98);
}

/*OCULTAR HEADER SOLO EN ANUNCIOS*/
/* =====================================
   OCULTAR HEADER GLOBAL EN ANUNCIOS
===================================== */

body.single-gd_place header,
body.geodir-page-single header,
body.single-geodir_listing header {
    display: none !important;
}

/* =====================================
   HEADER TIPO APP (RAPPI)
===================================== */

.puncli-app-header {
    position: sticky;
    top: 0;
    z-index: 9999;
    background: #ffffff;
    padding: 14px 16px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.08);
}

 /* CLAVE */
    height: auto;
    min-height: 220px; /* ajusta a tu diseño */
    overflow: hidden;
    background: #fff;

.puncli-app-header .elementor-widget-icon,
.puncli-app-header .elementor-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #f3f4f6;
    color: #111827;
}

.puncli-app-header .elementor-widget-icon:hover,
.puncli-app-header .elementor-button:hover {
    background: #e5e7eb;
}

/* =====================================
   ICONO CLOSE / BACK SEGÚN DISPOSITIVO
===================================== */

.puncli-close-listing {
    position: relative;
    font-size: 0; /* ocultamos el icono real */
}

/* Base del icono */
.puncli-close-listing::before {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    display: inline-block;
    color: #111827;
}

/* 📱 MÓVIL / TABLET → ❌ */
@media (max-width: 1024px) {
    .puncli-close-listing::before {
        content: "✕";
    }
}

/* 🖥 DESKTOP → ← */
@media (min-width: 1025px) {
    .puncli-close-listing::before {
        content: "←";
    }
}

/* =====================================
   OCULTAR ICONO / TEXTO ORIGINAL ELEMENTOR
   Y DEJAR SOLO EL ICONO CSS
===================================== */

/* Oculta iconos SVG, <i>, texto interno */
.puncli-close-listing i,
.puncli-close-listing svg,
.puncli-close-listing span,
.puncli-close-listing .elementor-button-text {
    display: none !important;
}

/* Asegura que no quede espacio fantasma */
.puncli-close-listing {
    font-size: 0;
}

/* =====================================
   LIMPIEZA TOTAL DEL BOTÓN ELEMENTOR
   (SIN ESPACIOS NI SOMBRAS FANTASMA)
===================================== */

/* Quitar sombras, paddings y tamaños heredados */
.puncli-close-listing,
.puncli-close-listing *,
.puncli-app-header .elementor-widget,
.puncli-app-header .elementor-widget-icon,
.puncli-app-header .elementor-widget-button {
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    min-height: 0 !important;
    line-height: 0 !important;
}

/* El botón real (área clickeable) */
.puncli-close-listing {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #f3f4f6 !important;
    cursor: pointer;
}

/* Hover opcional */
.puncli-close-listing:hover {
    background: #e5e7eb !important;
}

/* Ocultar TODO el contenido interno original */
.puncli-close-listing i,
.puncli-close-listing svg,
.puncli-close-listing span,
.puncli-close-listing .elementor-icon,
.puncli-close-listing .elementor-button-text {
    display: none !important;
}

/* Icono dibujado por CSS */
.puncli-close-listing::before {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    color: #111827;
    display: block;
}

/* 📱 MÓVIL / TABLET */
@media (max-width: 1024px) {
    .puncli-close-listing::before {
        content: "✕";
    }
}

/* 🖥 DESKTOP */
@media (min-width: 1025px) {
    .puncli-close-listing::before {
        content: "←";
    }
}

/* Cambio de color al hacer scroll */
.puncli-app-header.compact .puncli-close-listing::before {
    color: #22c55e;
}

/* Quitar efecto táctil / focus */
.puncli-close-listing,
.puncli-close-listing:focus,
.puncli-close-listing:active {
    outline: none !important;
    box-shadow: none !important;
    -webkit-tap-highlight-color: transparent;
}

/* =====================================================
   BOTÓN CTA PUNCLI – APP STYLE (REUTILIZABLE)
   Desktop + Mobile (Instagram feel)
===================================================== */

.puncli-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    background: #22c55e;
    color: #ffffff !important;

    padding: 14px 22px;
    border-radius: 14px;

    font-size: 15px;
    font-weight: 600;
    text-decoration: none;

    box-shadow: 0 10px 22px rgba(34,197,94,0.35);
    transition: all 0.2s ease;

    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}

/* Hover desktop */
@media (hover: hover) {
    .puncli-cta-btn:hover {
        background: #16a34a;
        transform: translateY(-1px);
        box-shadow: 0 14px 28px rgba(34,197,94,0.45);
    }
}

/* Active (tap móvil) */
.puncli-cta-btn:active {
    transform: scale(0.97);
}

/* =====================================================
   MOBILE – INSTAGRAM STYLE
===================================================== */

@media (max-width: 768px) {

    .puncli-cta-btn {
        width: 100%;
        padding: 16px;
        border-radius: 16px;

        font-size: 16px;
        font-weight: 700;

        box-shadow: 0 12px 26px rgba(34,197,94,0.4);
    }

}

/* =====================================================
   BOTÓN PUNCLI – INSTAGRAM STYLE (COMPACTO)
===================================================== */

.puncli-ig-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;

    background: #22c55e;
    color: #ffffff !important;

    padding: 8px 14px;
    border-radius: 8px;

    font-size: 13px;
    font-weight: 600;
    line-height: 1;

    text-decoration: none;
    cursor: pointer;

    transition: background 0.15s ease, transform 0.1s ease;
    -webkit-tap-highlight-color: transparent;
}

/* Hover desktop */
@media (hover: hover) {
    .puncli-ig-btn:hover {
        background: #16a34a;
    }
}

/* Tap móvil */
.puncli-ig-btn:active {
    transform: scale(0.96);
}

/* =====================================================
   MOBILE – MÁS COMPACTO AÚN (INSTAGRAM REAL)
===================================================== */

@media (max-width: 768px) {

    .puncli-ig-btn {
        padding: 7px 12px;
        font-size: 12px;
        border-radius: 7px;
    }

}

/* =====================================================
   GEODIRECTORY – BUSCADOR VERDE PUNCLI
===================================================== */

/* Botón principal buscar */
.geodir-search button,
.geodir-search input[type="submit"],
.geodir-search .geodir_submit_search,
.geodir-search .geodir-search-btn {
    background-color: #22c55e !important;
    border-color: #22c55e !important;
    color: #ffffff !important;
    font-weight: 600;
    border-radius: 10px;
}

/* Hover */
.geodir-search button:hover,
.geodir-search input[type="submit"]:hover,
.geodir-search .geodir_submit_search:hover,
.geodir-search .geodir-search-btn:hover {
    background-color: #16a34a !important;
    border-color: #16a34a !important;
}

/* Íconos dentro del botón */
.geodir-search button i,
.geodir-search button svg {
    color: #ffffff !important;
    fill: #ffffff !important;
}

/* Focus (cuando se hace click o tab) */
.geodir-search button:focus,
.geodir-search input[type="submit"]:focus,
.geodir-search .geodir-search-btn:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(34,197,94,0.35) !important;
}

/* Inputs del buscador (borde activo) */
.geodir-search input:focus,
.geodir-search select:focus {
    border-color: #22c55e !important;
    box-shadow: 0 0 0 2px rgba(34,197,94,0.25) !important;
}

/* Quitar azul por defecto en móviles */
.geodir-search button {
    -webkit-tap-highlight-color: transparent;
}

/* ===== PERFIL PUNCLI MOBILE FIX ===== */
@media (max-width: 768px) {

  .puncli-profile-header {
    padding: 15px !important;
  }

  .puncli-points-box {
    padding: 12px !important;
    border-radius: 12px;
  }

  .puncli-points-box h3 {
    font-size: 16px !important;
  }

  .puncli-points-number {
    font-size: 22px !important;
    font-weight: 600;
  }

  .puncli-profile-stats {
    display: flex;
    justify-content: space-between;
    gap: 8px;
  }

}

/*HEADER MOVIL TIPO INSTAGRAM*/
.puncli-profile-card {
  font-size: 12px;
  max-width: 100%;
}
/* ===============================
   PERFIL V3 PUNCLI
   =============================== */

/* ===============================
   PERFIL APP V3
=============================== */

.ppv3-card {
  font-family: -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 12px;
  padding: 10px 0;
}

.ppv3-top {
  display: flex;
  gap: 14px;
  align-items: center;
}

.ppv3-avatar img {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
}

.ppv3-info {
  flex: 1;
}

.ppv3-username {
  font-weight: 600;
  font-size: 13px;
}

.ppv3-name {
  font-size: 11px;
  color: #777;
  margin-bottom: 6px;
}

.ppv3-stats {
  display: flex;
  gap: 20px;
}

.ppv3-stats div {
  text-align: center;
}

.ppv3-stats strong {
  display: block;
  font-size: 13px;
}

.ppv3-stats span {
  font-size: 10px;
  color: #666;
}

.ppv3-contact {
  margin-top: 10px;
  font-size: 11px;
  color: #555;
}

.ppv3-form {
  margin-top: 12px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.ppv3-upload,
.ppv3-save {
  flex: 1;
  padding: 6px;
  font-size: 11px;
  border-radius: 8px;
  border: 1px solid #ddd;
  background: #f6f6f6;
  text-align: center;
  cursor: pointer;
}

.ppv3-upload input {
  display: none;
}

.ppv3-remove {
  font-size: 10px;
  width: 100%;
  margin-top: 4px;
}

/* ===============================
   PERFIL APP V3 – AJUSTES FINOS
=============================== */

.ppv3-card {
  font-family: -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 12px;
  padding: 15px 0;
}

.ppv3-top {
  display: flex;
  gap: 18px; /* MÁS espacio entre avatar y texto */
  align-items: center;
  margin-bottom: 12px;
}

.ppv3-avatar img {
  width: 85px;
  height: 85px;
  border-radius: 50%;
  object-fit: cover;
}

.ppv3-info {
  flex: 1;
}

.ppv3-username {
  font-weight: 600;
  font-size: 13px;
  margin-bottom: 3px;
}

.ppv3-name {
  font-size: 11px;
  color: #777;
  margin-bottom: 8px; /* MÁS espacio antes de stats */
}

.ppv3-stats {
  display: flex;
  gap: 24px; /* MÁS separación entre puntos y posts */
}

.ppv3-stats div {
  text-align: center;
}

.ppv3-stats strong {
  display: block;
  font-size: 14px;
  font-weight: 600;
}

.ppv3-stats span {
  font-size: 10px;
  color: #666;
}

.ppv3-contact {
  margin-top: 14px; /* MÁS aire */
  font-size: 11px;
  color: #555;
  line-height: 1.5;
}

.ppv3-form {
  margin-top: 16px;
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.ppv3-upload {
  flex: 1;
  padding: 7px;
  font-size: 11px;
  border-radius: 8px;
  border: 1px solid #ddd;
  background: #f2f2f2;
  text-align: center;
  cursor: pointer;
}

.ppv3-upload:hover {
  background: #e8e8e8;
}

.ppv3-upload input {
  display: none;
}

.ppv3-save {
  flex: 1;
  padding: 7px;
  font-size: 11px;
  border-radius: 8px;
  border: none;
  background: #000;       /* NEGRO */
  color: #fff;            /* LETRAS BLANCAS */
  font-weight: 500;
  cursor: pointer;
}

.ppv3-save:hover {
  background: #222;
}

.ppv3-remove {
  font-size: 10px;
  width: 100%;
  margin-top: 6px;
  color: #777;
}

/*OCULTAR POPUP MINIORANGE*/
.mo-modal-backdrop {
    display: none !important;
}

/*CSS BLOQUE MI CUENTA REGISTRO WOOCOMERCER*/
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce h2, .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce h3 {
    color: var(--typography-section-titles-color, #000);
    font-weight: 800;
    margin-bottom: 10px;
    margin-top: 10px;
    text-align: center;
}

.woocommerce-account .woocommerce {
    max-width: 1100px;
    margin: 10px auto;
    padding: 0 10px;
}

/*QUITAR FONDO GRIS*/
.geodir-listings
 {
    background: none !important;
    padding: 12px;
}

/*Header caja de ciudad*/
.bsui .rounded {
    border-radius: 10px !important;
    border: 1px solid #bcbcbc !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, .1);
}

/*Cambio de ciudad personalizado*/
.puncli-city-switcher-wrap{

    position: relative;

    display: flex;
    align-items: center;

    width: 100%;
    max-width: 260px;

    background: #fff;

    border: 1px solid #E8ECF2;

    border-radius: 18px;

    padding: 0 16px 0 48px;

    height: 52px;

    box-shadow: 
    0 4px 14px rgba(0,0,0,.05);

    transition: all .25s ease;

}

.puncli-city-switcher-wrap:hover{

    border-color: #cfd8e3;

    box-shadow: 
    0 8px 24px rgba(0,0,0,.08);

}

.puncli-city-icon{

    position: absolute;

    left: 16px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #22c55e;

}

#puncli-city-switcher-pro{

    width: 100%;
    height: 100%;

    border: none;
    outline: none;

    background: transparent;

    font-size: 15px;
    font-weight: 600;

    color: #111827;

    cursor: pointer;

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    padding-right: 28px;

}

.puncli-city-switcher-wrap::after{

    content: "";

    position: absolute;

    right: 18px;

    width: 8px;
    height: 8px;

    border-right: 2px solid #6B7280;
    border-bottom: 2px solid #6B7280;

    transform: rotate(45deg);

    pointer-events: none;

    margin-top: -4px;

}

/*==========================================================
            PUNCLI UI 2.0
            Social Buttons
==========================================================*/

.puncli-ui-buttons{
    display:flex;
    flex-direction:column;
    gap:16px;
    width:100%;
    margin:0;
    padding:0;
}

/*==========================================================
            TARJETA
==========================================================*/

.puncli-ui-card{

    display:flex;
    align-items:center;

    width:100%;

    padding:18px 20px;

    background:#ffffff;

    border-radius:20px;

    border:1px solid #ECEFF3;

    text-decoration:none;

    box-sizing:border-box;

    transition:all .28s ease;

    box-shadow:
        0 6px 18px rgba(0,0,0,.05);

}

.puncli-ui-card:hover{

    transform:translateY(-4px);

    border-color:#D9EEDB;

    box-shadow:
        0 18px 35px rgba(0,0,0,.12);

}

/*==========================================================
            LADO IZQUIERDO
==========================================================*/

.puncli-ui-card-left{

    display:flex;

    align-items:center;

    gap:16px;

    flex:1;

    min-width:0;

}

/*==========================================================
            ICONO
==========================================================*/

.puncli-ui-icon{

    width:54px;

    height:54px;

    min-width:54px;

    border-radius:16px;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    transition:.25s;

    flex-shrink:0;

}

.puncli-ui-card:hover .puncli-ui-icon{

    transform:scale(1.06);

}

.puncli-ui-icon svg{

    width:28px;

    height:28px;

    display:block;

}

/*==========================================================
            COLORES
==========================================================*/

.puncli-ui-whatsapp .puncli-ui-icon{

    background:#25D366;

}

.puncli-ui-instagram .puncli-ui-icon{

    background:linear-gradient(
        135deg,
        #833AB4 0%,
        #E1306C 50%,
        #FCAF45 100%
    );

}

.puncli-ui-facebook .puncli-ui-icon{

    background:#1877F2;

}

.puncli-ui-website .puncli-ui-icon{

    background:#16A34A;

}

/*==========================================================
            TEXTO
==========================================================*/

.puncli-ui-text{

    display:flex;

    flex-direction:column;

    justify-content:center;

    flex:1;

    min-width:0;

}

.puncli-ui-title{

    font-size:18px;

    font-weight:700;

    color:#1F2937;

    line-height:1.2;

    margin:0;

}

.puncli-ui-subtitle{

    margin-top:2px;

    font-size:14px;

    color:#6B7280;

    line-height:1.4;

}

/*==========================================================
            FLECHA
==========================================================*/

.puncli-ui-arrow{

    margin-left:16px;

    font-size:24px;

    color:#94A3B8;

    transition:.25s;

    flex-shrink:0;

}

.puncli-ui-card:hover .puncli-ui-arrow{

    transform:translateX(5px);

    color:#16A34A;

}

/*==========================================================
            FOCUS
==========================================================*/

.puncli-ui-card:focus{

    outline:none;

    border-color:#16A34A;

    box-shadow:
        0 0 0 4px rgba(22,163,74,.18);

}

/*==========================================================
            RESPONSIVE
==========================================================*/

@media(max-width:768px){

.puncli-ui-card{

padding:16px;

border-radius:18px;

}

.puncli-ui-card-left{

gap:14px;

}

.puncli-ui-icon{

width:48px;

height:48px;

min-width:48px;

border-radius:14px;

}

.puncli-ui-icon svg{

width:24px;

height:24px;

}

.puncli-ui-title{

font-size:16px;

}

.puncli-ui-subtitle{

font-size:13px;

}

.puncli-ui-arrow{

font-size:20px;

margin-left:12px;

}

}

/*==========================================================
            ANIMACIÓN
==========================================================*/

@keyframes puncli-ui-fade{

from{

opacity:0;

transform:translateY(10px);

}

to{

opacity:1;

transform:none;

}

}

.puncli-ui-card{

animation:puncli-ui-fade .35s ease;

}

/*=========================================================
    PUNCLI SOCIAL HORIZONTAL v2
=========================================================*/

.puncli-social-horizontal{

    display:grid;

    gap:16px;

    width:100%;

    margin:25px 0;

}

/*=========================================================
    DISTRIBUCIÓN
=========================================================*/

.puncli-social-horizontal.count-1{
    grid-template-columns:1fr;
}

.puncli-social-horizontal.count-2{
    grid-template-columns:repeat(2,1fr);
}

.puncli-social-horizontal.count-3{
    grid-template-columns:repeat(3,1fr);
}

.puncli-social-horizontal.count-4{
    grid-template-columns:repeat(4,1fr);
}

.puncli-social-horizontal.count-many{
    grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
}

/*=========================================================
    TARJETA
=========================================================*/

.puncli-social-card{

    display:flex;

    align-items:center;

    gap:14px;

    padding:5px;

    background:#fff;

    border:1px solid #ECECEC;

    border-radius:18px;

    text-decoration:none;

    transition:.30s;

    box-shadow:0 8px 20px rgba(0,0,0,.05);

}

.puncli-social-card:hover{

    transform:translateY(-4px);

    box-shadow:0 18px 40px rgba(0,0,0,.10);

    border-color:#22C55E;

}

/*=========================================================
    ICONO
=========================================================*/

.puncli-social-icon{

    width:52px;

    height:52px;

    min-width:52px;

    border-radius:16px;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    font-size:24px;

    transition:.25s;

}

.puncli-social-card:hover .puncli-social-icon{

    transform:scale(1.08);

}

/*=========================================================
    CONTENIDO
=========================================================*/

.puncli-social-content{

    flex:1;

    min-width:0;

}

.puncli-social-title{

    font-size:17px;

    font-weight:700;

    color:#1F2937;

    line-height:1.2;

}

.puncli-social-subtitle{

    margin-top:4px;

    font-size:13px;

    color:#6B7280;

    line-height:1.3;

}

/*=========================================================
    FLECHA
=========================================================*/

.puncli-social-arrow{

    font-size:18px;

    color:#94A3B8;

    transition:.25s;

}

.puncli-social-card:hover .puncli-social-arrow{

    color:#22C55E;

    transform:translateX(5px);

}

/*=========================================================
    COLORES
=========================================================*/
/*=========================================================
    COLORES (ESTILO SUAVE)
=========================================================*/

.puncli-social-card.whatsapp .puncli-social-icon{

    background:#DCFCE7;
    color:#16A34A;

}

.puncli-social-card.phone .puncli-social-icon{

    background:#DBEAFE;
    color:#2563EB;

}

.puncli-social-card.email .puncli-social-icon{

    background:#FFEDD5;
    color:#EA580C;

}

.puncli-social-card.website .puncli-social-icon{

    background:#DCFCE7;
    color:#16A34A;

}

.puncli-social-card.facebook .puncli-social-icon{

    background:#DBEAFE;
    color:#1877F2;

}

.puncli-social-card.instagram .puncli-social-icon{

    background:#FCE7F3;
    color:#E1306C;

}

.puncli-social-card.youtube .puncli-social-icon{

    background:#FEE2E2;
    color:#FF0000;

}

.puncli-social-card.tiktok .puncli-social-icon{

    background:#F3F4F6;
    color:#111827;

}

.puncli-social-card.linkedin .puncli-social-icon{

    background:#DBEAFE;
    color:#0A66C2;

}

.puncli-social-card.telegram .puncli-social-icon{

    background:#E0F2FE;
    color:#229ED9;

}

.puncli-social-card.x .puncli-social-icon{

    background:#F3F4F6;
    color:#111827;

}
/*=========================================================
    RESPONSIVE TABLET
=========================================================*/

@media(max-width:1024px){

.puncli-social-horizontal{

grid-template-columns:repeat(2,1fr)!important;

}

}

/*=========================================================
    RESPONSIVE MÓVIL
=========================================================*/

@media(max-width:768px){

.puncli-social-horizontal{

grid-template-columns:repeat(2,1fr)!important;

gap:12px;

}

.puncli-social-card{

flex-direction:row;

justify-content:center;

align-items:center;

text-align:center;

padding:5px 5px;

min-height:auto;

}

.puncli-social-content{

text-align:justify;

}

.puncli-social-title{

font-size:15px;

}

.puncli-social-subtitle{

font-size:12px;

}

.puncli-social-arrow{

display:none;

}

}

/*=========================================================
    ANIMACIÓN
=========================================================*/

@keyframes puncliFade{

from{

opacity:0;

transform:translateY(10px);

}

to{

opacity:1;

transform:none;

}

}

.puncli-social-card{

animation:puncliFade .35s ease;

}

/*=========================================================
            PUNCLI SOCIAL BUTTONS v3
=========================================================*/

.puncli-social-buttons{

    display:flex;
    flex-direction:column;
    gap:14px;
    width:100%;
    margin:25px 0;

}

/*=========================================================
                TARJETA
=========================================================*/

.puncli-card-nuevo{

    display:flex;
    align-items:center;
    gap:16px;

    padding:16px 18px;

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:16px;

    text-decoration:none;

    transition:all .30s ease;

    box-shadow:0 6px 18px rgba(0,0,0,.05);

}

.puncli-card-nuevo:hover{

    transform:translateY(-3px);

    box-shadow:0 16px 35px rgba(0,0,0,.10);

}

/*=========================================================
                ICONO
=========================================================*/

.puncli-card-icon{

    width:44px;
    height:44px;
    min-width:44px;

    border-radius:12px;

    display:flex;

    justify-content:center;

    align-items:center;

    transition:.30s;

}

.puncli-card-icon i{

    font-size:20px;

    color:#FFF;

}

.puncli-card-nuevo:hover .puncli-card-icon{

    transform:scale(1.08);

}

/*=========================================================
                CONTENIDO
=========================================================*/

.puncli-card-content{

    flex:1;

    min-width:0;

}

.puncli-card-title{

    font-size:16px;

    font-weight:700;

    color:#1F2937;

    line-height:1.2;

}

.puncli-card-subtitle{

    margin-top:2px;

    font-size:13px;

    color:#6B7280;

    line-height:1.3;

}

/*=========================================================
                FLECHA
=========================================================*/

.puncli-card-arrow{

    display:flex;

    align-items:center;

    justify-content:center;

    color:#9CA3AF;

    transition:.30s;

}

.puncli-card-arrow svg{

    width:18px;

    height:18px;

}

.puncli-card-nuevo:hover .puncli-card-arrow{

    transform:translateX(4px);

}

/*=========================================================
                WHATSAPP
=========================================================*/

.puncli-card-nuevo.whatsapp .puncli-card-icon{

    background:#25D366;

}

.puncli-card-nuevo.whatsapp:hover{

    border-color:#25D366;

}

.puncli-card-nuevo.whatsapp:hover .puncli-card-arrow{

    color:#25D366;

}

/*=========================================================
                PHONE
=========================================================*/

.puncli-card-nuevo.phone .puncli-card-icon{

    background:#0EA5E9;

}

.puncli-card-nuevo.phone:hover{

    border-color:#0EA5E9;

}

.puncli-card-nuevo.phone:hover .puncli-card-arrow{

    color:#0EA5E9;

}

/*=========================================================
                EMAIL
=========================================================*/

.puncli-card-nuevo.email .puncli-card-icon{

    background:#A855F7;

}

.puncli-card-nuevo.email:hover{

    border-color:#A855F7;

}

.puncli-card-nuevo.email:hover .puncli-card-arrow{

    color:#A855F7;

}

/*=========================================================
                WEBSITE
=========================================================*/

.puncli-card-nuevo.website .puncli-card-icon{

    background:#10B981;

}

.puncli-card-nuevo.website:hover{

    border-color:#10B981;

}

.puncli-card-nuevo.website:hover .puncli-card-arrow{

    color:#10B981;

}

/*=========================================================
                FACEBOOK
=========================================================*/

.puncli-card-nuevo.facebook .puncli-card-icon{

    background:#1877F2;

}

.puncli-card-nuevo.facebook:hover{

    border-color:#1877F2;

}

.puncli-card-nuevo.facebook:hover .puncli-card-arrow{

    color:#1877F2;

}

/*=========================================================
                INSTAGRAM
=========================================================*/

.puncli-card-nuevo.instagram .puncli-card-icon{

    background:linear-gradient(
        135deg,
        #833AB4,
        #E1306C,
        #FCAF45
    );

}

.puncli-card-nuevo.instagram:hover{

    border-color:#E1306C;

}

.puncli-card-nuevo.instagram:hover .puncli-card-arrow{

    color:#E1306C;

}

/*=========================================================
                YOUTUBE
=========================================================*/

.puncli-card-nuevo.youtube .puncli-card-icon{

    background:#FF0000;

}

.puncli-card-nuevo.youtube:hover{

    border-color:#FF0000;

}

.puncli-card-nuevo.youtube:hover .puncli-card-arrow{

    color:#FF0000;

}

/*=========================================================
                TIKTOK
=========================================================*/

.puncli-card-nuevo.tiktok .puncli-card-icon{

    background:#111111;

}

.puncli-card-nuevo.tiktok:hover{

    border-color:#111111;

}

.puncli-card-nuevo.tiktok:hover .puncli-card-arrow{

    color:#111111;

}

/*=========================================================
                LINKEDIN
=========================================================*/

.puncli-card-nuevo.linkedin .puncli-card-icon{

    background:#0A66C2;

}

.puncli-card-nuevo.linkedin:hover{

    border-color:#0A66C2;

}

.puncli-card-nuevo.linkedin:hover .puncli-card-arrow{

    color:#0A66C2;

}

/*=========================================================
                TELEGRAM
=========================================================*/

.puncli-card-nuevo.telegram .puncli-card-icon{

    background:#229ED9;

}

.puncli-card-nuevo.telegram:hover{

    border-color:#229ED9;

}

.puncli-card-nuevo.telegram:hover .puncli-card-arrow{

    color:#229ED9;

}

/*=========================================================
                X
=========================================================*/

.puncli-card-nuevo.x .puncli-card-icon{

    background:#111111;

}

.puncli-card-nuevo.x:hover{

    border-color:#111111;

}

.puncli-card-nuevo.x:hover .puncli-card-arrow{

    color:#111111;

}

/*=========================================================
                RESPONSIVE
=========================================================*/

@media(max-width:768px){

.puncli-social-buttons{

gap:12px;

}

.puncli-card-nuevo{

padding:14px;

gap:14px;

}

.puncli-card-icon{

width:40px;
height:40px;
min-width:40px;

}

.puncli-card-icon i{

font-size:18px;

}

.puncli-card-title{

font-size:15px;

}

.puncli-card-subtitle{

font-size:12px;

}

.puncli-card-arrow{

display:flex;

}

}

/*=========================================================
                ANIMACIÓN
=========================================================*/

@keyframes puncliFadeCard{

from{

opacity:0;

transform:translateY(12px);

}

to{

opacity:1;

transform:none;

}

}

.puncli-card-nuevo{

animation:puncliFadeCard .35s ease;

}

/*=========================================================
                TARJETAS
=========================================================*/

.puncli-section-card{

    background:#FFFFFF;

    border:1px solid #E5E7EB;

    border-radius:18px;

    padding:28px;

    margin-bottom:28px;

    box-shadow:0 8px 20px rgba(0,0,0,.05);

    transition:.30s;

}

.puncli-section-card:hover{

    transform:translateY(-2px);

    box-shadow:0 18px 40px rgba(0,0,0,.08);

}

/*=========================================================
            ICON BOX
=========================================================*/

.puncli-icon-box{

    margin-bottom:24px;

    padding-bottom:20px;

    border-bottom:1px solid #EEF2F7;

}

/*=========================================================
            ICONO
=========================================================*/

.puncli-icon-box .elementor-icon{

    width:48px;

    height:48px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:14px;

    background:#DCFCE7;

    color:#16A34A;

    transition:.30s;

}

/*=========================================================
            HOVER ICONO
=========================================================*/

.puncli-section-card:hover .elementor-icon{

    transform:scale(1.08);

    background:#16A34A;

    color:#FFFFFF;

}

/*=========================================================
            TITULO
=========================================================*/

.puncli-icon-box .elementor-icon-box-title{

    margin-bottom:4px;

}

.puncli-icon-box .elementor-icon-box-title span,

.puncli-icon-box .elementor-icon-box-title{

    font-size:22px;

    font-weight:700;

    color:#1F2937;

}

/*=========================================================
            SUBTITULO
=========================================================*/

.puncli-icon-box .elementor-icon-box-description{

    font-size:14px;

    color:#6B7280;

    line-height:1.5;

}

/*=========================================================
            CONTENIDO
=========================================================*/

.puncli-section-card p:last-child{

    margin-bottom:0;

}

/*=========================================================
            RESPONSIVE
=========================================================*/

@media(max-width:768px){

.puncli-section-card{

padding:18px;
margin:10px;

}

.puncli-icon-box{

margin-bottom:18px;

padding-bottom:16px;

}

.puncli-icon-box .elementor-icon{

width:42px;

height:42px;

}

.puncli-icon-box .elementor-icon-box-title{

font-size:20px;

}

}

/*MENU EN ANUNCIO INDIVIDUAL*/
.puncli-tabs-minimal2 {padding:20px;background:#f7f7f7;border-radius:20px;color:#000000;}
.puncli-tabs-minimal2{padding: 20px 0px 20px 0px;}
/* CONTENEDOR SCROLL */
.puncli-tabs-scroll {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    white-space: nowrap;
    padding: 10px 15px;
    background: #fff;
    border-bottom: 1px solid #eee;

    /* scroll suave tipo app */
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
}

/* ocultar scrollbar (más limpio) */
.puncli-tabs-scroll::-webkit-scrollbar {
    display: none;
}

/* ITEMS */
.puncli-tab-item {
    flex: 0 0 auto;
    padding: 10px 16px;
    background: #f5f5f5;
    border-radius: 20px;
    font-size: 14px;
    color: #333;
    text-decoration: none;
    transition: all 0.25s ease;
}

/* HOVER */
.puncli-tab-item:hover {
    background: #000;
    color: #fff;
}

/* ACTIVO (cuando lo uses con JS luego) */
.puncli-tab-item.active {
    background: #000;
    color: #fff;
}

/* 🖥️ EN DESKTOP (centrado sin scroll) */
@media (min-width: 768px) {
    .puncli-tabs-scroll {
        justify-content: center;
        overflow-x: visible;
    }
}

.geodir-add-listing, .geodir-form-wrapper {
    background: none !important;
    padding: 0px !important;
}

/*BUSCADOR HEADER*/
.bsui .rounded {
    border-radius: 999px !important;
}