.elementor-2143 .elementor-element.elementor-element-2a3d4323{--display:grid;--min-height:460px;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:30px 30px;--row-gap:30px;--column-gap:30px;--grid-auto-flow:row;--justify-items:stretch;--align-items:stretch;--padding-top:69px;--padding-bottom:0px;--padding-left:30px;--padding-right:30px;}.elementor-2143 .elementor-element.elementor-element-2a3d4323.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-2143 .elementor-element.elementor-element-7cc37bc{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2143 .elementor-element.elementor-element-fe9cf2e{width:100%;max-width:100%;}.elementor-2143 .elementor-element.elementor-element-fe9cf2e > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2143 .elementor-element.elementor-element-3af7d806{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:0px 0px 0px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:#A2A2A2;--border-color:#A2A2A2;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:25px;--padding-left:0px;--padding-right:0px;}.elementor-2143 .elementor-element.elementor-element-3af7d806:not(.elementor-motion-effects-element-type-background), .elementor-2143 .elementor-element.elementor-element-3af7d806 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F0;}.elementor-2143 .elementor-element.elementor-global-3322 > .elementor-widget-container{padding:0px 0px 0px 0px;}@media(max-width:1024px){.elementor-2143 .elementor-element.elementor-element-2a3d4323{--grid-auto-flow:row;}.elementor-2143 .elementor-element.elementor-element-3af7d806{--margin-top:28px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(min-width:768px){.elementor-2143 .elementor-element.elementor-element-2a3d4323{--width:100%;}.elementor-2143 .elementor-element.elementor-element-3af7d806{--width:100%;}}@media(max-width:767px){.elementor-2143 .elementor-element.elementor-element-2a3d4323{--min-height:0px;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:70px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-2143 .elementor-element.elementor-element-7cc37bc{--min-height:0px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:24px;--padding-left:0px;--padding-right:0px;}.elementor-2143 .elementor-element.elementor-element-fe9cf2e > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2143 .elementor-element.elementor-element-3af7d806{border-width:0px 0px 0px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}/* Start custom CSS for html, class: .elementor-element-fe9cf2e *//* ============================================================
   ARCHIVO — masonry 4 columnas con cards alternadas
   v3 · sin tags · alternancia vertical/cuadrada con CSS columns
   ============================================================ */


/* 1. Contenedor de la grilla (masonry con CSS columns)
   ------------------------------------------------------------
   column-count define las columnas. El gap horizontal va por
   column-gap; el gap vertical se controla con margin-bottom
   en cada card (CSS columns no soporta row-gap). */
.archivo-grid {
  column-count: 4;
  column-gap: 24px;
  width: 100%;
}


/* 2. Card individual (es un <a>, hace toda la card cliqueable)
   ------------------------------------------------------------
   break-inside: avoid evita que la card se parta entre columnas.
   margin-bottom controla el separación vertical entre cards. */
.archivo-card {
  display: block;
  break-inside: avoid;
  margin-bottom: 40px;
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}


/* 3. Wrapper de las imágenes (default + hover apiladas)
   ------------------------------------------------------------ */
.archivo-card__image {
  position: relative;
  overflow: hidden;
  border-radius: 9px;
  background: #F1EFE8;
}

/* Modificadores de proporción */
.archivo-card--squared  .archivo-card__image { aspect-ratio: 1 / 1; }
.archivo-card--vertical .archivo-card__image { aspect-ratio: 4 / 5; }

.archivo-card__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: opacity 0.5s ease;
}

.archivo-card__img--default { opacity: 1; }
.archivo-card__img--hover   { opacity: 0; }


/* 4. Hover: cambia la imagen y el peso del título
   ------------------------------------------------------------ */
.archivo-card:hover .archivo-card__img--default { opacity: 0; }
.archivo-card:hover .archivo-card__img--hover   { opacity: 1; }

.archivo-card:hover .archivo-card__title {
  font-family: 'general sans medium', 'General Sans', system-ui, sans-serif;
}


/* 5. Label debajo de la imagen (solo título, alineado izq)
   ------------------------------------------------------------ */
.archivo-card__label {
  padding: 12px 2px 2px;
  text-align: left;
}

.archivo-card__title {
  font-family: 'General Sans', system-ui, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0;
  color: #2C2C2A;
  margin: 0;
  transition: font-family 0.2s ease;
}


/* 6. Responsive — tablet (≤ 1024px): 3 columnas
   ------------------------------------------------------------ */
@media (max-width: 1024px) {
  .archivo-grid {
    column-count: 3;
    column-gap: 20px;
  }
  .archivo-card { margin-bottom: 32px; }
}


/* 7. Responsive — mobile (≤ 767px): 2 columnas
   ------------------------------------------------------------ */
@media (max-width: 767px) {
  .archivo-grid {
    column-count: 2;
    column-gap: 15px;
  }
  .archivo-card { margin-bottom: 24px; }
  .archivo-card__title { font-size: 15px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2a3d4323 *//* 1. GLOBAL — Overflow fix
   ============================================ */
html, body {
  overflow-x: hidden;
  width: 100%;
  position: relative;
}
body {
  overflow-x: clip !important;
}/* End custom CSS */