.elementor-kit-8{--e-global-color-primary:#000000;--e-global-color-secondary:#54595F;--e-global-color-text:#000000;--e-global-color-accent:#F4FB2F;--e-global-color-604f519:#999999;--e-global-color-e151437:#F0F9F3;--e-global-color-9bd2a60:#F9F9E5;--e-global-color-306d6e3:#F3F3F3;--e-global-color-aaabe82:#E4EBF3;--e-global-typography-primary-font-family:"IBM Plex Sans Condensed";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"IBM Plex Sans Condensed";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"IBM Plex Sans Condensed";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"IBM Plex Sans Condensed";--e-global-typography-accent-font-weight:500;font-family:"IBM Plex Sans Condensed", Sans-serif;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:var(--container-width);}.e-con{--container-max-width:var(--container-width);--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:10px;}.elementor-element{--widgets-spacing:10px 10px;--widgets-spacing-row:10px;--widgets-spacing-column:10px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1200px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */:root{
  --font-h1: clamp(2rem, 2.25rem, 2.85rem);;
  --font-h2: clamp(1.5rem, 1.65rem , 2.5rem);
  --font-h3: clamp(1.1rem, 0.75rem + 1.0667vw, 1.2rem);
  --font-h4: clamp(0.9rem, 0.75rem + 1vw, 1.1rem);
  --font-h5: clamp(0.5rem, 0.65rem + 2vw, 1.35rem);
  --font-h6: clamp(0.14rem, 0.4rem + 2vw,  0.9rem);
  --container-width: clamp(70rem, 90%, 84rem);
}
@supports (-webkit-touch-callout: none) {
  html {
    -webkit-text-size-adjust: 100%;
    text-rendering: optimizeLegibility;
  }b
}


p,h1,h2,h3,h4,h5,h6 {
    line-height: 120%;
    margin-block-end: 0 !important;
    word-spacing: -1px;
}


.h1 {
    letter-spacing: -1px;
    font-size: var(--font-h1);

}

.h2 {
    letter-spacing: 0.3px;
    font-size: var(--font-h2);
}

.h3-1, .h3 {
    letter-spacing: 0.2px;
    font-size: var(--font-h3);
}

.h4-1, .h4 {
    letter-spacing: 0.6px;
    font-size: var(--font-h4);
}

.h5 {
    font-size: var(--font-h5);
    letter-spacing: 0.6px;
}

.h6, .h6-1 {
    font-size: var(--font-h6);
    letter-spacing: 1.9px !important;
}

.uppercase {
    text-transform: uppercase;
}

.menu-item .elementor-item-active, .menu-item:hover {
    text-decoration: underline;
}

.page-id-42,
.page-id-953,
.page-id-2237,
.page-id-2235{
    --page-bg: #F0F9F1;
}

.page-id-547,
.page-id-534{
    --page-bg: #FFFFFF;
}

.page-id-167,
.page-id-474,
.page-id-601,
.page-id-996,
.page-id-1057,
.page-id-1292,
.page-id-1352,
.page-id-1364{
    --page-bg: #F9F9E5;
}

.page-id-3201,
.page-id-1423,
.page-id-1489,
.page-id-1507,
.page-id-2008,
.page-id-2036,
.page-id-2055,
.page-id-3300,
.page-id-3309,
.page-id-3149,
.page-id-3274,
.page-id-3338,
.page-id-3347,
.page-id-3363,
.page-id-3616,
.search,
.page-id-3282,
.page-id-3247
{
   --page-bg: #F3F3F3
}

.page-id-2103,
.page-id-2071,
.page-id-3003,
.page-id-6249 {
    --page-bg: #E4EBF3;
}

.container {
    margin-top: 5rem;
    background: var(--page-bg);
    display: grid;
    grid-template-columns: repeat(12,1fr);
    gap: 24px;
}

.menu-container {
    visibility: hidden;
    opacity: 0;
    transition: 0.35s ease-in-out;
    
}

.active.menu-container {
    visibility: visible;
    opacity: 1;
}

.border-bottom {
    border-bottom: solid 1px black;
    padding-bottom: 0.5rem
}

.border-bottom-2 {
    border-bottom: solid 3px black;
    padding-bottom: 0.25rem
}

.wpforms-submit-container {
    display: none;
}

div.wpforms-container-full input[type=email] {
    width: 100%;
    min-width: 100%;
    text-transform: uppercase;
    font-weight: 500;
    font-size: var(--font-h6);
}

.newsletter .wpforms-container-full:not(:empty) {
    margin-top: 0;
}

.newsletter .wpforms-container .wpforms-field {
    padding: 0;
}

.gego-img:hover {
   transform: scale(1.025);
   
}

.gego-img:hover::after {
  opacity: 0;
}

.gego-img {
    opacity: 0.9;
    transition: 0.25s ease-in-out;
}

.gego-img::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 0, 0.1); 
      transition: 0.25s ease-in-out;
    pointer-events: none;
}

.accordion-slide,
.accordion-slide .e-con-inner div,
.accordion-slide img,
.accordion-slide .wp-caption,
.swiper-slide img,
.accordion-slide a{
    height: 100%;
    width: auto;
}

div.elementor-widget-n-carousel .e-n-carousel>.swiper-wrapper>.swiper-slide>.e-con {
    max-height: 30rem;
    object-fit: contain;
    width: fit-content;
}

div.elementor-widget-n-carousel .e-n-carousel>.swiper-wrapper>.swiper-slide {
    flex-shrink: 0;
    height: 32rem;
    width: max-content !important;
}

.swiper-slide {
    flex-shrink: 0;
    height: 12rem;
    width: max-content !important;
}
/* Contenedor de la figura */
.caption-hover .wp-caption{
  position: relative;
}

/* Imagen */
.caption-hover .wp-caption img{
  transition: filter .25s ease, transform .25s ease;
}

/* Overlay blanco (velo) */
.caption-hover .wp-caption::before{
  content:"";
  position:absolute;
  inset:0;
  background: rgba(255,255,255,.65);
  opacity:0;
  transition: opacity .25s ease;
  z-index:1;
}

.caption-hover .wp-caption .widget-image-caption{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  text-align:left;
  transform: translateX(24px);
  padding:24px;
  color:black;
  font-size: var(--font-h6);
  font-weight:500;
  opacity:0;
  transition: opacity .25s ease, transform .25s ease;
  z-index:2;
  pointer-events:none;
  word-spacing: -1px;
}

.caption-hover:hover .wp-caption::before,
.caption-hover:hover .widget-image-caption,
.caption-hover:focus-within .wp-caption::before,
.caption-hover:focus-within .widget-image-caption{
  opacity:1;
  transform:none;
}


.carrousel-container.elementor-widget__width-initial.elementor-arrows-position-inside.elementor-widget.elementor-widget-n-carousel.e-widget-swiper {
    background: white;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    width: 100%;
}


@media(max-width: 768px) {
    
 

.elementor-swiper-button{
    display: none !important;
}
    
    
    .container {
    overflow: hidden;
    }
    
    .e-con-inner{
        display:flex !important;
        flex-direction: column;
    }
 .e-con.e-con>.e-con-inner>.elementor-widget.carrousel-container {
     width:95vw;
 }
 
    div.elementor-widget-n-carousel .e-n-carousel>.swiper-wrapper>.swiper-slide>.e-con {
    max-height: 12rem;
    }

div.elementor-widget-n-carousel .e-n-carousel>.swiper-wrapper>.swiper-slide {
    min-height:14rem;
    height: 16rem;
    }
    
    .caption-hover .wp-caption .widget-image-caption {
        opacity: 1;
        position: relative;
          transform:none;
    padding:0;
    font-size:10px;
    }
    
    
    body.no-scroll {
        overflow: hidden;
    }
    
}

a {
    color: black;
}



no-pointer {
    pointer-events: none
}

footer {
    z-index: 1;
}
.catalogo-nav-button {
    cursor: pointer;
    transition: 0.5s ease-in-out;
}
.catalogo-nav-button:hover {
    background:#F6FF00; 
}

.e-con {
    scroll-margin-top: 16vh;
}

@media(max-width: 1200px) and (min-width:767px) {

.container {
    width:95%;
    overflow: hidden;

}

.elementor-swiper-button{
    display: none !important;
}
    

.e-con.e-con>.e-con-inner>.elementor-widget.carrousel-container {
     width:95vw;
 }
 
    div.elementor-widget-n-carousel .e-n-carousel>.swiper-wrapper>.swiper-slide>.e-con {
    max-height: 20rem;
    }

div.elementor-widget-n-carousel .e-n-carousel>.swiper-wrapper>.swiper-slide {
    min-height:14rem;
    height: 25rem;
    }
    
   .caption-hover .wp-caption .widget-image-caption {
        opacity: 1;
        position: relative;
          transform:none;
    padding:0;
    font-size: 14px;
       
   }
    
}

.sup,sup {
  font-size: 0.7em;
  vertical-align: baseline;
background: var(--e-global-color-accent);
}

.yellow {
   background: var(--e-global-color-accent);
   font-weight: 700;
   padding-left: 0.45rem;
}

div.woocommerce .add-request-quote-button.button, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button,
.yith_ywraq_add_item_browse_message{
    font-size: var(--font-h6) !important;
    letter-spacing: 2px;
    background: transparent !important;
    color: black !important ;
    transition: 0.25s ease-in-out;
    text-transform: uppercase;
}

.yith_ywraq_add_item_browse_message a{
    font-size: var(--font-h6) !important;
    letter-spacing: 2px;
    font-weight: 700;
}

.yith-ywraq-add-to-quote {
        display: flex;
    flex-direction: column-reverse;
}

div.woocommerce .add-request-quote-button.button:hover {
    background:#F0F9F3 !important;
        color: black !important ;
}

.yith_ywraq_add_item_response_message {
    margin-bottom: 0.5rem;
}

.yith_ywraq_add_item_browse_message {
    text-transform: uppercase;
    font-size: var(--font-h6) !important;
}

.shop_table.cart tbody tr .actions {
    background:#F4FB2F;
}


.shop_table.cart tbody tr .actions .button{
    background:#F4FB2F;
}

.product-thumbnail a, .product-name a {
    pointer-events: none;
    text-decoration: none !important;
    color: inherit !important;
}

.ywraq-form-table-wrapper.wide .yith-ywraq-mail-form-wrapper {
    background: white;
}

.product-thumbnail img {
    height: 10rem !important;
    width: auto !important;
}

.catalogo-prefix {
    font-size:var(--font-h6);
    font-weight: 500;
    text-transform: uppercase;
    font-style: normal;

}


 /*
.masonry .elementor-loop-container.elementor-grid {
    display: block !important;  
    column-count: 3;
    column-gap: 24px;
}


.masonry .elementor-loop-container.elementor-grid .e-loop-item {
    display: inline-block;
    width: 100%;
    break-inside: avoid;
    margin-bottom: 24px;
} 
*/


/* Contenedor: Masonry se encarga de posicionar, solo aseguramos base */
.masonry .elementor-loop-container.elementor-grid {
    display: block !important;
    position: relative;
}

/* Cada item: ancho de columna + gutters */
.masonry .elementor-loop-container.elementor-grid .e-loop-item {
    width: 33.333%;          /* 3 columnas en escritorio */
    padding: 0 1rem 2rem;    /* separación lateral y vertical */
    box-sizing: border-box;
}

@media (max-width: 1024px) {
  .masonry .elementor-loop-container.elementor-grid .e-loop-item {
      width: 50%;           /* 2 columnas en tablet */
  }
}

@media (max-width: 768px) {
  .masonry .elementor-loop-container.elementor-grid .e-loop-item {
      width: 100%;          /* 1 columna en móvil */
  }
  
  .arrow-button {
      position: relative;
      display: flex;
      align-items: flex-end;
  }
}

.pop-up-container {
    visibility: hidden;
    opacity: 0;
    transition: 0.5s ease-in-out;
}

.pop-up-container.active {
    visibility: visible;
    opacity: 1;
}

.cita {
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.9px;
}

.wp-block-verse {
    font-family: "IBM Plex Sans Condensed", Sans-serif;
    font-size: var(--font-h5);
    font-weight: 500;
    font-style: italic;
    margin-left: 3rem;
}

.notas-section {
    border-color: var(--e-global-color-text);
    border-top: 1px solid;
    font-weight: 700;
    padding: 1rem 0;
    font-size: var(--font-h5);
}


.nota{
    font-size: var(--font-h3);
    font-weight: 500;
    line-height: 0.9lh;
    width: 75%;
    border-bottom: 1px solid var(--e-global-color-text);
    padding-bottom: 0.5rem;
}

.yith-ywraq-add-button img {
    display: none;
}

div.woocommerce .add-request-quote-button.button {
    width: 100%;
    display: flex;
    text-align: center;
    padding: 0;
}

/* Rotar icono cuando el acordeón está abierto */
.e-n-accordion-item-title[aria-expanded="true"] 
.e-n-accordion-item-title-icon svg {
  transform: rotate(180deg);
  transition: transform 0.3s ease;
}

/* Estado cerrado */
.e-n-accordion-item-title[aria-expanded="false"] 
.e-n-accordion-item-title-icon svg {
  transform: rotate(0deg);
  transition: transform 0.3s ease;
}

.fondo-digital-filters .e-filter .e-filter-item {
    padding-left: 0;
}

.elementor-post__read-more{
    font-size: var(--font-h6);
    letter-spacing: 2px;
    text-transform: uppercase;
    color: black;
}

.elementor-post__thumbnail {
    border-top: solid 20px var(--e-global-color-accent);
}

.yith_ywraq_add_item_response_message {
    font-weight: 700;
}

/* Blanco y negro */
.home-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: inherit;
  filter: grayscale(100%);
  z-index: 1;
}

/* Capa gris encima */
.home-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #f3f3f3;
  opacity: 0.65; /* Ajusta intensidad */
  z-index: 2;
}



.home-bg {
    opacity: 0;
    transition: opacity 0.4s ease-in-out;
}

.home-bg.active {
    opacity: 1;
    transition: opacity 0.4s ease-in-out;

}


.item-vol-home {
    background: transparent;
    transition 0.25s ease-in-out;
    cursor: pointer;
    
}

.item-vol-home:hover {
    background: #F4FB2F;
}

.catalogo-nav-button {
    padding: 0.7rem 0;
}/* End custom CSS */