.elementor-636 .elementor-element.elementor-element-cef830f{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;--margin-top:50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-636 .elementor-element.elementor-element-eeee9d8{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-636 .elementor-element.elementor-element-9f40f50{--display:flex;}.elementor-636 .elementor-element.elementor-element-9f40f50.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-636 .elementor-element.elementor-element-cd887ab{text-align:start;}.elementor-636 .elementor-element.elementor-element-cd887ab .elementor-heading-title{font-family:"Inter Tight", Sans-serif;font-size:50px;font-weight:700;line-height:1.1em;letter-spacing:-1px;color:#000000;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-636 .elementor-element.elementor-element-0273824{font-family:"Inter Tight", Sans-serif;font-size:17px;font-weight:400;letter-spacing:0.2px;}.elementor-636 .elementor-element.elementor-element-77b4c26{--display:flex;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-636 .elementor-element.elementor-element-ff28ea1{--grid-columns:3;--grid-column-gap:6px;}.elementor-636 .elementor-element.elementor-element-b6fc9e3{--display:flex;--min-height:1250px;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-636 .elementor-element.elementor-element-8d0b6c0{--grid-columns:3;--grid-column-gap:6px;}.elementor-636 .elementor-element.elementor-element-c9cff1c{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-636 .elementor-element.elementor-element-6152d70{--display:flex;}.elementor-636 .elementor-element.elementor-element-748ed6c{--display:flex;}.elementor-636 .elementor-element.elementor-element-748ed6c.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-636 .elementor-element.elementor-element-c54ffbe{text-align:start;}.elementor-636 .elementor-element.elementor-element-c54ffbe .elementor-heading-title{font-family:"Inter Tight", Sans-serif;font-size:50px;font-weight:700;line-height:1.1em;letter-spacing:-1px;color:#000000;}.elementor-636 .elementor-element.elementor-element-3936adf{--display:flex;--padding-top:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}@media(min-width:768px){.elementor-636 .elementor-element.elementor-element-cef830f{--content-width:1250px;}.elementor-636 .elementor-element.elementor-element-9f40f50{--width:65%;}.elementor-636 .elementor-element.elementor-element-c9cff1c{--content-width:1250px;}.elementor-636 .elementor-element.elementor-element-748ed6c{--width:65%;}}@media(max-width:1024px){.elementor-636 .elementor-element.elementor-element-cd887ab .elementor-heading-title{font-size:40px;}.elementor-636 .elementor-element.elementor-element-ff28ea1{--grid-columns:2;}.elementor-636 .elementor-element.elementor-element-8d0b6c0{--grid-columns:2;}.elementor-636 .elementor-element.elementor-element-c54ffbe .elementor-heading-title{font-size:40px;}}@media(max-width:767px){.elementor-636 .elementor-element.elementor-element-cd887ab .elementor-heading-title{font-size:32px;}.elementor-636 .elementor-element.elementor-element-77b4c26{--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-636 .elementor-element.elementor-element-ff28ea1{--grid-columns:1;}.elementor-636 .elementor-element.elementor-element-8d0b6c0{--grid-columns:1;}.elementor-636 .elementor-element.elementor-element-c54ffbe .elementor-heading-title{font-size:32px;}}/* Start custom CSS for html, class: .elementor-element-ee07774 */.section-eyebrow {
    display: flex;
    align-items: center;
    gap: 14px;
}

.eyebrow-line {
    width: 32px;
    height: 1px;
    background: #4a4a4a;
    flex-shrink: 0;
}

.eyebrow-text {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: #3a3a3a;
    white-space: nowrap;
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-ff28ea1 *//* ======================================================
   ANIMACIÓN DE EXPANSIÓN PREMIUM (FLEX ACCORDION)
   ====================================================== */

/* Contenedor Flex Base */
.loop-accordion-portfolio .elementor-loop-container,
.elementor-loop-container.loop-accordion-portfolio {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  gap: 14px !important;
}

/* Tarjeta contraída (Estado Reposo) */
.loop-accordion-portfolio .elementor-loop-container > .e-loop-item,
.loop-accordion-portfolio .elementor-loop-container .elementor-card {
  flex: 1 1 0% !important;
  cursor: pointer !important;
  position: relative !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  filter: brightness(0.82) saturate(0.9) !important;
  !important;
  will-change: flex-grow, filter, transform !important;
  /* Curva premium, más larga y con un ease refinado */
  transition:
    flex 0.9s cubic-bezier(0.22, 1, 0.36, 1),
    filter 0.7s ease,
    box-shadow 0.7s ease,
    border-color 0.5s ease !important;
}

/* Zoom sutil de la imagen dentro de cada tarjeta */
.loop-accordion-portfolio .elementor-loop-container > .e-loop-item img,
.loop-accordion-portfolio .elementor-loop-container .elementor-card img {
  transition: transform 1.1s cubic-bezier(0.22, 1, 0.36, 1) !important;
  will-change: transform !important;
}

/* Tarjeta expandida (Estado Hover) */
.loop-accordion-portfolio .elementor-loop-container > .e-loop-item:hover,
.loop-accordion-portfolio .elementor-loop-container .elementor-card:hover {
  flex: 4 1 0% !important;
  filter: brightness(1) saturate(1.05) !important;
  border-color: #0f4c81 !important;
  box-shadow:
    0 10px 15px rgba(0, 0, 0, 0.45),
    0 0 0 1px rgba(15, 76, 129, 0.35) !important;
  z-index: 2 !important;
}

/* Al expandir, la imagen se acerca ligeramente */
.loop-accordion-portfolio .elementor-loop-container > .e-loop-item:hover img,
.loop-accordion-portfolio .elementor-loop-container .elementor-card:hover img {
  transform: scale(1.06) !important;
}

/* Atenúa un poco más las hermanas cuando una está activa (efecto foco) */
.loop-accordion-portfolio .elementor-loop-container:hover > .e-loop-item:not(:hover),
.loop-accordion-portfolio .elementor-loop-container:hover .elementor-card:not(:hover) {
  filter: brightness(0.65) saturate(0.85) !important;
}

/* Adaptación para pantallas pequeñas (Dirección vertical) */
@media (max-width: 768px) {
  .loop-accordion-portfolio .elementor-loop-container {
    flex-direction: column !important;
    gap: 12px !important;
  }
  /* En móvil sin hover: todas visibles y sin atenuar */
  .loop-accordion-portfolio .elementor-loop-container > .e-loop-item,
  .loop-accordion-portfolio .elementor-loop-container .elementor-card {
    flex: 1 1 auto !important;
    filter: none !important;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9299491 */.section-eyebrow {
    display: flex;
    align-items: center;
    gap: 14px;
}

.eyebrow-line {
    width: 32px;
    height: 1px;
    background: #4a4a4a;
    flex-shrink: 0;
}

.eyebrow-text {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: #3a3a3a;
    white-space: nowrap;
}/* End custom CSS */