.elementor-4685 .elementor-element.elementor-element-0052f04{--display:flex;--min-height:481px;--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;--justify-content:center;--overlay-opacity:0.5;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-4685 .elementor-element.elementor-element-0052f04::before, .elementor-4685 .elementor-element.elementor-element-0052f04 > .elementor-background-video-container::before, .elementor-4685 .elementor-element.elementor-element-0052f04 > .e-con-inner > .elementor-background-video-container::before, .elementor-4685 .elementor-element.elementor-element-0052f04 > .elementor-background-slideshow::before, .elementor-4685 .elementor-element.elementor-element-0052f04 > .e-con-inner > .elementor-background-slideshow::before, .elementor-4685 .elementor-element.elementor-element-0052f04 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://educational-engineering.com/wp-content/uploads/2025/11/BN_YAC3.png");--background-overlay:'';background-position:center center;background-size:cover;}.elementor-4685 .elementor-element.elementor-element-0052f04.e-con{--align-self:center;--order:-99999 /* order start hack */;}.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-4685 .elementor-element.elementor-element-3d3f858{width:100%;max-width:100%;margin:1% 80% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;text-align:center;}.elementor-4685 .elementor-element.elementor-element-3d3f858.elementor-element{--align-self:flex-start;--flex-grow:0;--flex-shrink:0;}.elementor-4685 .elementor-element.elementor-element-3d3f858 .elementor-heading-title{font-family:"PT Serif", Sans-serif;font-size:5.5vw;font-weight:600;text-transform:none;font-style:normal;text-decoration:none;line-height:1.1em;letter-spacing:0.28px;word-spacing:0em;-webkit-text-stroke-width:1px;stroke-width:1px;-webkit-text-stroke-color:#000;stroke:#000;text-shadow:0px 0px 10px rgba(0,0,0,0.3);color:#FFFFFF;}.elementor-4685 .elementor-element.elementor-element-46c9fe0:not(.elementor-motion-effects-element-type-background), .elementor-4685 .elementor-element.elementor-element-46c9fe0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#596456;}.elementor-4685 .elementor-element.elementor-element-46c9fe0{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:5px 0px 5px 0px;}.elementor-4685 .elementor-element.elementor-element-46c9fe0 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-4685 .elementor-element.elementor-element-c79b4ed > .elementor-element-populated{padding:0px 10px 0px 6px;}.elementor-4685 .elementor-element.elementor-element-89b0acb{padding:0px 0px 0px 15px;border-style:solid;border-width:0px 0px 0px 2px;border-color:#B17030;text-align:justify;}.elementor-4685 .elementor-element.elementor-element-89b0acb .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:31px;font-weight:bold;line-height:1.3em;letter-spacing:1.6px;word-spacing:0px;text-shadow:2px 2px 0px #000000;color:#FFFFFF;}.elementor-4685 .elementor-element.elementor-element-679477b{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overflow:hidden;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:2%;--padding-bottom:3%;--padding-left:1%;--padding-right:2%;}.elementor-4685 .elementor-element.elementor-element-679477b:not(.elementor-motion-effects-element-type-background), .elementor-4685 .elementor-element.elementor-element-679477b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F4F3EE;}.elementor-4685 .elementor-element.elementor-element-5d8b28d{width:var( --container-widget-width, 99.61% );max-width:99.61%;margin:0% 75% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0px 0px 9px 8px;--container-widget-width:99.61%;--container-widget-flex-grow:0;text-align:justify;}.elementor-4685 .elementor-element.elementor-element-5d8b28d.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-4685 .elementor-element.elementor-element-5d8b28d .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:43px;font-weight:bold;text-transform:none;font-style:normal;text-decoration:none;line-height:1.4em;letter-spacing:1px;word-spacing:0em;color:#596456;}.elementor-4685 .elementor-element.elementor-element-d235f6c{--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;--justify-content:space-around;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-4685 .elementor-element.elementor-element-d235f6c.e-con{--align-self:center;}.elementor-4685 .elementor-element.elementor-element-cecb27f{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--border-radius:15px 15px 15px 15px;box-shadow:0px 9px 10px 0px rgba(0,0,0,0.5);--margin-top:0px;--margin-bottom:0px;--margin-left:60px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4685 .elementor-element.elementor-element-cecb27f:not(.elementor-motion-effects-element-type-background), .elementor-4685 .elementor-element.elementor-element-cecb27f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#092415;}.elementor-4685 .elementor-element.elementor-element-cecb27f.e-con{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-4685 .elementor-element.elementor-element-5de8457{--display:flex;--justify-content:center;--gap:1px 1px;--row-gap:1px;--column-gap:1px;--border-radius:15px 15px 15px 15px;box-shadow:0px 7px 10px 0px rgba(0,0,0,0.5);}.elementor-4685 .elementor-element.elementor-element-5de8457:not(.elementor-motion-effects-element-type-background), .elementor-4685 .elementor-element.elementor-element-5de8457 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#092415;}.elementor-4685 .elementor-element.elementor-element-5de8457.e-con{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-4685 .elementor-element.elementor-element-99cefab{--divider-border-style:solid;--divider-color:#F0F0F0;--divider-border-width:2px;}.elementor-4685 .elementor-element.elementor-element-99cefab .elementor-divider-separator{width:100%;}.elementor-4685 .elementor-element.elementor-element-99cefab .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{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-4685 .elementor-element.elementor-element-705a97f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-wrapper{text-align:center;}.elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-title{margin-block-end:14px;color:#F0F0F0;}.elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-title, .elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-title a{font-family:"Montserrat", Sans-serif;font-size:30px;font-weight:700;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0.13px;word-spacing:0em;}.elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-description{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:400;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:1px;word-spacing:0em;color:#F0F0F0;}.elementor-widget-button .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-4685 .elementor-element.elementor-element-388758d .elementor-button{background-color:#CFB00A00;font-family:"Roboto", Sans-serif;font-size:16px;font-weight:800;border-style:solid;border-width:1px 1px 1px 1px;}.elementor-4685 .elementor-element.elementor-element-388758d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 13px) 0px;padding:0px 0px 0px 0px;}.elementor-4685 .elementor-element.elementor-element-ce199da{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--border-radius:15px 15px 15px 15px;box-shadow:0px 7px 10px 0px rgba(0,0,0,0.5);--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-4685 .elementor-element.elementor-element-ce199da:not(.elementor-motion-effects-element-type-background), .elementor-4685 .elementor-element.elementor-element-ce199da > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#092415;}.elementor-4685 .elementor-element.elementor-element-ce199da.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-4685 .elementor-element.elementor-element-80139e5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -8px) 0px;}.elementor-4685 .elementor-element.elementor-element-80139e5 .elementor-heading-title{font-family:"Inter", Sans-serif;color:#FFFFFF;}.elementor-4685 .elementor-element.elementor-element-dd74589{--divider-border-style:solid;--divider-color:#eaeaea;--divider-border-width:1px;margin:-10px 0px calc(var(--kit-widget-spacing, 0px) + -10px) 0px;}.elementor-4685 .elementor-element.elementor-element-dd74589 .elementor-divider-separator{width:100%;}.elementor-4685 .elementor-element.elementor-element-dd74589 .elementor-divider{padding-block-start:5px;padding-block-end:5px;}.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-4685 .elementor-element.elementor-element-72c203d{margin:-8px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:justify;font-size:16px;color:#FFFFFF;}.elementor-4685 .elementor-element.elementor-element-605ae37 .elementor-button{background-color:#FFFFFF;font-size:15px;font-weight:bold;fill:#000000;color:#000000;box-shadow:0px -4px 15px 0px rgba(0,0,0,0.5) inset;border-style:solid;border-width:3px 3px 3px 3px;border-radius:16px 16px 16px 16px;padding:14px 14px 14px 14px;}.elementor-4685 .elementor-element.elementor-element-605ae37{margin:0px 5px calc(var(--kit-widget-spacing, 0px) + 5px) 0px;padding:2px 2px 2px 2px;z-index:0;}.elementor-4685 .elementor-element.elementor-element-605ae37.elementor-element{--align-self:center;}.elementor-4685 .elementor-element.elementor-element-76a9d4a:not(.elementor-motion-effects-element-type-background), .elementor-4685 .elementor-element.elementor-element-76a9d4a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#596456;}.elementor-4685 .elementor-element.elementor-element-76a9d4a{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:5px 0px 5px 0px;}.elementor-4685 .elementor-element.elementor-element-76a9d4a > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-4685 .elementor-element.elementor-element-faae66d{padding:0px 0px 0px 15px;border-style:solid;border-width:0px 0px 0px 2px;border-color:#B17030;text-align:left;}.elementor-4685 .elementor-element.elementor-element-faae66d .elementor-heading-title{font-size:45px;line-height:2.2em;letter-spacing:1.6px;text-shadow:6px 6px 0px #000000;color:#FFFFFF;}.elementor-4685 .elementor-element.elementor-element-d510e00{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-4685 .elementor-element.elementor-element-d510e00:not(.elementor-motion-effects-element-type-background), .elementor-4685 .elementor-element.elementor-element-d510e00 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F4F3EE;}.elementor-4685 .elementor-element.elementor-element-0164cb9{width:100%;max-width:100%;}.elementor-4685 .elementor-element.elementor-element-0164cb9.elementor-element{--align-self:center;}.elementor-4685 .elementor-element.elementor-element-0164cb9 .elpt-portfolio-content.elpt-portfolio-margin:not(.elpt-portfolio-special-grid-7) .portfolio-item-wrapper{padding-right:calc(5px + 0px);padding-left:calc(5px + 0px);padding-bottom:calc((5px + 0px)*2);}.elementor-4685 .elementor-element.elementor-element-0164cb9 .elpt-portfolio-content.elpt-portfolio-margin.elpt-portfolio-special-grid-7 .portfolio-item-wrapper{padding-right:calc(5px + 0px);padding-left:calc(5px + 0px);margin-bottom:calc(5px + 0px);}.elementor-4685 .elementor-element.elementor-element-0164cb9 .elpt-portfolio-content .portfolio-item{border:0px solid #000;}@media(min-width:768px){.elementor-4685 .elementor-element.elementor-element-cecb27f{--width:60%;}.elementor-4685 .elementor-element.elementor-element-5de8457{--width:100%;}.elementor-4685 .elementor-element.elementor-element-ce199da{--width:100%;}.elementor-4685 .elementor-element.elementor-element-d510e00{--content-width:1600px;}}@media(max-width:1024px){.elementor-4685 .elementor-element.elementor-element-3d3f858{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;text-align:center;}.elementor-4685 .elementor-element.elementor-element-3d3f858 .elementor-heading-title{font-size:75px;line-height:1.1em;letter-spacing:0px;word-spacing:0em;}.elementor-4685 .elementor-element.elementor-element-679477b{--padding-top:2%;--padding-bottom:1%;--padding-left:1%;--padding-right:19%;}.elementor-4685 .elementor-element.elementor-element-5d8b28d{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;text-align:center;}.elementor-4685 .elementor-element.elementor-element-99cefab .elementor-divider-separator{width:100%;}.elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-title, .elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-title a{font-size:22px;}.elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-description{font-size:16px;}}@media(max-width:767px){.elementor-4685 .elementor-element.elementor-element-0052f04{--min-height:291px;}.elementor-4685 .elementor-element.elementor-element-3d3f858{margin:55% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;}.elementor-4685 .elementor-element.elementor-element-3d3f858 .elementor-heading-title{font-size:50px;}.elementor-4685 .elementor-element.elementor-element-89b0acb .elementor-heading-title{font-size:18px;}.elementor-4685 .elementor-element.elementor-element-679477b{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:2%;--padding-bottom:1%;--padding-left:1%;--padding-right:1%;}.elementor-4685 .elementor-element.elementor-element-5d8b28d .elementor-heading-title{font-size:24px;}.elementor-4685 .elementor-element.elementor-element-d235f6c{--gap:20px 0px;--row-gap:20px;--column-gap:0px;}.elementor-4685 .elementor-element.elementor-element-cecb27f{--margin-top:0px;--margin-bottom:0px;--margin-left:15px;--margin-right:15px;}.elementor-4685 .elementor-element.elementor-element-705a97f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-title{margin-block-end:22px;}.elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-title, .elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-title a{font-size:20px;}.elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-description{font-size:16px;}.elementor-4685 .elementor-element.elementor-element-80139e5{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4685 .elementor-element.elementor-element-605ae37{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-4685 .elementor-element.elementor-element-605ae37.elementor-element{--align-self:center;}.elementor-4685 .elementor-element.elementor-element-605ae37 .elementor-button{font-size:16px;}.elementor-4685 .elementor-element.elementor-element-faae66d{text-align:center;}}/* Start custom CSS for icon-box, class: .elementor-element-705a97f */.elementor-4685 .elementor-element.elementor-element-705a97f .elementor-icon-box-title {

    /* SOLUCIÓN AL ERROR: Compatibilidad con Firefox */
    display: -moz-box;
    -moz-box-orient: vertical; /* Esta es la propiedad que el validador te pide */
    
    /* Propiedad estándar futura */
    display: box;
    box-orient: vertical;
    
    /* El valor clave para limitar a 2 líneas */
    -webkit-line-clamp: 2; 
    
    /* Necesarias para el recorte */
    overflow: hidden;
    text-overflow: ellipsis; 
    
    /* Ajustes de altura para forzar el espacio exacto de 2 líneas */
    line-height: 1.2em; 
    height: 2.4em; /* (line-height * 2) */
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-388758d */.elementor-4685 .elementor-element.elementor-element-388758d a {
    /* Mantiene el color del texto inicial del botón */
    color: inherit; 
    /* Mantiene el box-shadow inicial (transparente o sin sombra) */
    box-shadow: inset 0 0 0 0 transparent; 
    /* Añade una transición suave: 
       - box-shadow: Para ralentizar el efecto de llenado de color.
       - 1.0s: La duración de la transición (ejemplo: 1 segundo, puedes ajustarlo).
       - ease-in-out: El tipo de curva de aceleración/desaceleración.
       - color: Para suavizar el cambio de color del texto.
       - transform: Para suavizar el efecto del :active.
    */
    transition: box-shadow 0.7s ease-in-out, color 0.4s, transform 0.2s; 
}

/* 2. ESTADO HOVER: El efecto de color se mantiene, pero ahora es suave */
.elementor-4685 .elementor-element.elementor-element-388758d a:hover {
    color: white; /* El texto se pone blanco (transición suave) */
    /* La box-shadow se aplica y la transición la ralentiza */
    box-shadow: inset 0 -100px 0 0 #3D41A5; 
    transform: scale(1.05);
}

/* 3. ESTADO ACTIVE: Se mantiene el efecto de escala */
.elementor-4685 .elementor-element.elementor-element-388758d a:active {
    transform: scale(0.9);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-605ae37 */.elementor-4685 .elementor-element.elementor-element-605ae37 a {
    /* Mantiene el color del texto inicial del botón */
    color: inherit; 
    /* Mantiene el box-shadow inicial (transparente o sin sombra) */
    box-shadow: inset 0 0 0 0 transparent; 
    /* Añade una transición suave: 
       - box-shadow: Para ralentizar el efecto de llenado de color.
       - 1.0s: La duración de la transición (ejemplo: 1 segundo, puedes ajustarlo).
       - ease-in-out: El tipo de curva de aceleración/desaceleración.
       - color: Para suavizar el cambio de color del texto.
       - transform: Para suavizar el efecto del :active.
    */
    transition: box-shadow 0.7s ease-in-out, color 0.4s, transform 0.2s; 
}

/* 2. ESTADO HOVER: El efecto de color se mantiene, pero ahora es suave */
.elementor-4685 .elementor-element.elementor-element-605ae37 a:hover {
    color: white; /* El texto se pone blanco (transición suave) */
    /* La box-shadow se aplica y la transición la ralentiza */
    box-shadow: inset 0 -100px 0 0 #3D41A5; 
    transform: scale(1.05);
}

/* 3. ESTADO ACTIVE: Se mantiene el efecto de escala */
.elementor-4685 .elementor-element.elementor-element-605ae37 a:active {
    transform: scale(0.9);
}/* End custom CSS */
/* Start custom CSS for elpug, class: .elementor-element-0164cb9 *//* --- Contenedor Principal (Reutilizado del Código Anterior) --- */
.elpt-portfolio-content.elpt-portfolio-columns-6 {
    /* Deshabilitar el diseño de Isotope/grid para forzar el flexbox */
    height: auto !important;
    display: flex; /* Habilitar flexbox para control de fila única */
    flex-wrap: nowrap; /* Asegura que todos los elementos estén en una sola fila */
    overflow-x: auto; /* Permite desplazamiento horizontal si el espacio es muy limitado */
    width: 100%;
    max-width: 100%;
}

/* --- Reducción del Elemento (Item) y Proporcionalidad --- */
.elpt-portfolio-content > .portfolio-item-wrapper {
    /* Forzar que cada elemento ocupe 1/7 del ancho del contenedor */
    width: calc(100% / 9) !important;
    min-width: 140px; /* Ancho mínimo para evitar que se vean demasiado pequeños */
    position: static !important; /* Anular el posicionamiento absoluto de Isotope */
    flex-shrink: 0; /* Evitar que los items se encojan */
    margin: 5px !important; 
    box-sizing: border-box;
    
    /* *NUEVO*: Usamos padding-bottom para simular una altura proporcional al ancho (e.g., 1:1) */
    /* Puedes cambiar 100% por 75% o 50% si quieres una proporción más rectangular. */
    height: 50 !important; /* Anulamos la altura original */
    padding-bottom: 50%; /* Ajusta la altura para ser igual al ancho (aspecto 1:1) */
    overflow: hidden; /* Asegura que la imagen no se desborde */
}

/* --- Ajuste de la Imagen (Corrección de Imagen Cortada) --- */
.elpt-portfolio-content .portfolio-item {
    position: absolute; /* Para que ocupe todo el espacio del contenedor con padding-bottom */
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; /* Ocupa el espacio definido por el padding-bottom */
}

/* Ajuste de la imagen principal y background */
.elpt-portfolio-content .portfolio-item .elpt-main-image {
    width: 100%;
    height: 100%;
    /* *CLAVE*: Asegura que la imagen cubra todo el espacio sin deformarse y recorta si es necesario */
    object-fit: cover; 
}

/* Asegurar que la imagen de fondo también se ajuste */
.elpt-portfolio-content .portfolio-item[style*="background-image"] {
    background-size: cover !important;
    background-position: center !important;
}

/* --- Reducción del Título (Reutilizado del Código Anterior) --- */
.elpt-portfolio-content .portfolio-item-title-span {
    font-size: 14px; /* Tamaño de fuente más pequeño para el título */
    line-height: 1.2;
}

/* Reducir el tamaño de la fuente de la categoría */
.elpt-portfolio-content .elpt-portfolio-cat {
    font-size: 11px;
}/* End custom CSS */
/* Start custom CSS *//* PASO 1A: Mantenemos el estilo base colapsado */
.container .card {
    position: relative;
    max-height: 200px;
   /*  overflow: hidden; Asegúrate de que esto esté descomentado */
    transition: max-height 0.5s ease-in-out;
}

/* PASO 1B: Definimos la nueva clase que expandirá la tarjeta */
.container .card.expanded {
    max-height: 1500px;
}

/* PASO 1C: Adaptamos las reglas internas para la clase .expanded */
.container .card .content {
    /* ... reglas de contenido inicial (oculto) ... */
    visibility: hidden;
    opacity: 0;
    margin-top: -120px;
    transition: opacity 0.3s ease-in-out, margin-top 0.3s ease-in-out;
}

.container .card.expanded .content { /* ¡Aquí cambiamos :hover por .expanded! */
    visibility: visible;
    opacity: 1;
    margin-top: -40px;
    transition-delay: 0.2s;
}
@media only screen and (max-width: 767px) {
    /* Estado Colapsado (por defecto) en Móviles */
    .container .card {
        max-height: 180px; /* Altura inicial colapsada en móviles (60px) */
    }

    /* Estado Expandido (Activado por JavaScript) en Móviles */
    .container .card.expanded { 
        max-height: 1500px; /* Altura máxima al hacer clic (valor grande para asegurar el ajuste) */
    }

    /* IMPORTANTE: Desactivar la expansión por :hover si aún existe en otra parte del CSS, 
       o asegúrate de que la regla :hover original haya sido eliminada o reemplazada */
    
    /* Nota: Si tenías reglas específicas para el contenido interno (.content) 
       en móviles, también deberás adaptarlas usando .expanded. */
}/* End custom CSS */