/* Todos los estilos del componente parten de este contenedor. */
.dae-catalogo {
    --ec-red:#b6002d;
    --ec-red-dark:#900023;
    --ec-ink:#080f2d;
    --ec-muted:#596b83;
    --ec-cream:#f5f3ef;
    --ec-border:#e7e9ee;
    color:var(--ec-ink);
    background:#fff;
    font:16px/1.5 'Open Sans',Arial,sans-serif;
    width:100%;
    min-width:0;
}
.dae-catalogo *, .dae-catalogo *::before, .dae-catalogo *::after{box-sizing:border-box}
.dae-catalogo a{color:inherit;text-decoration:none}
.dae-catalogo button, .dae-catalogo select, .dae-catalogo input{font:inherit}
.dae-catalogo a:focus-visible, .dae-catalogo button:focus-visible, .dae-catalogo select:focus-visible, .dae-catalogo input:focus-visible, .dae-catalogo summary:focus-visible{outline:3px solid var(--ec-red);outline-offset:3px}
.dae-catalogo .ec-icon{display:block;flex:none;width:20px;height:20px}
.dae-catalogo .ec-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.dae-catalogo .ec-hero{position:relative;isolation:isolate;min-height:360px;padding:78px max(5.5%,calc((100% - 1320px)/2)) 72px;background:var(--ec-cream);overflow:hidden}
.dae-catalogo .ec-hero__photo{position:absolute;inset:0 0 0 38%;z-index:-2;background:#231820}
.dae-catalogo .ec-hero__photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 42%;transform:translateX(18%)}
.dae-catalogo .ec-hero__photo::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 55%,rgba(83,0,21,.35))}
.dae-catalogo .ec-hero__diagonals{position:absolute;inset:-1px 0 0;z-index:-1}
.dae-catalogo .ec-hero__diagonals::before{content:'';position:absolute;inset:0;background:var(--ec-cream);clip-path:polygon(0 0,54% 0,50% 63%,48% 100%,0 100%)}
.dae-catalogo .ec-hero__diagonals::after{content:'';position:absolute;inset:0;background:linear-gradient(145deg,var(--ec-red),#980024);clip-path:polygon(54% 0,60% 0,55% 100%,48% 100%,50% 63%)}
.dae-catalogo .ec-hero__copy{position:relative;max-width:42%;z-index:1}
.dae-catalogo .ec-hero .ec-hero__title{margin:0 0 16px;color:var(--ec-ink);font:800 clamp(32px,3.3vw,48px)/1.15 'Plus Jakarta Sans','Open Sans',Arial,sans-serif;letter-spacing:-.035em}
.dae-catalogo .ec-hero__intro{margin:0;color:#46464c;font-size:16px;line-height:1.5}
.dae-catalogo .ec-hero__line{display:block;width:48px;height:6px;margin-top:24px;border-radius:4px;background:var(--ec-red)}
.dae-catalogo .ec-hero__slogan{position:absolute;right:4%;top:32%;max-width:150px;margin:0;color:#fff;font:italic 34px/1.15 'PT Serif',Georgia,serif;transform:rotate(-9deg);text-align:center;text-shadow:0 1px 8px #3d0916}
.dae-catalogo .ec-hero__slogan::after{content:'';display:block;width:85%;height:2px;margin:14px auto 0;background:#fff;transform:rotate(-8deg)}
.dae-catalogo .ec-breadcrumb{position:absolute;top:14px;left:28px;display:flex;gap:10px;align-items:center;font-size:12px;line-height:1.4;color:#465672;z-index:2}
.dae-catalogo .ec-breadcrumb a:hover{text-decoration:underline}
.dae-catalogo .ec-breadcrumb [aria-current]{font-weight:700}
.dae-catalogo .ec-shell{position:relative;z-index:2;width:calc(100% - 40px);max-width:1440px;margin:-28px auto 0;padding:20px 20px 64px;border-radius:26px 26px 0 0;background:#fff}
.dae-catalogo .ec-filters{padding:18px 24px;margin-bottom:30px;border-radius:16px;background:var(--ec-cream)}
.dae-catalogo .ec-filters__form{display:grid;grid-template-columns:minmax(0,1.7fr) repeat(3,minmax(0,1fr)) auto;gap:16px;align-items:start}
.dae-catalogo .ec-filters__field{min-width:0}
.dae-catalogo .ec-filters label, .dae-catalogo .ec-filters__label{display:block;margin:0 0 5px;font-size:13px;font-weight:700}
.dae-catalogo .ec-filters select, .dae-catalogo .ec-filters input[type=search], .dae-catalogo .ec-multi summary, .dae-catalogo .ec-sort select{width:100%;min-height:48px;padding:10px 12px;border:1px solid #b0bdcc;border-radius:7px;color:#263e5b;background:#fff;cursor:pointer}
.dae-catalogo .ec-filters input[type=search]{cursor:text;appearance:none;min-width:0;font-size:14px}
.dae-catalogo .ec-filters :focus, .dae-catalogo .ec-filters :active, .dae-catalogo .ec-sort select:focus, .dae-catalogo .ec-sort select:active{outline:none;box-shadow:none}
.dae-catalogo .ec-filters input[type=search]:focus, .dae-catalogo .ec-filters select:focus, .dae-catalogo .ec-multi summary:focus, .dae-catalogo .ec-sort select:focus{border-color:var(--ec-muted)}
.dae-catalogo .ec-filters button:focus-visible, .dae-catalogo .ec-filters a:focus-visible{outline:1px solid var(--ec-muted);outline-offset:2px}
.dae-catalogo .ec-multi{position:relative;min-width:0}
.dae-catalogo .ec-multi summary{display:flex;align-items:center;gap:6px;list-style:none;font-size:14px}
.dae-catalogo .ec-multi summary::-webkit-details-marker{display:none}
.dae-catalogo .ec-multi summary::after{content:'';flex:none;width:7px;height:7px;margin:0 2px 4px 6px;border-right:2px solid;border-bottom:2px solid;transform:rotate(45deg)}
.dae-catalogo .ec-multi__text{min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dae-catalogo .ec-multi__count{flex:none;font-size:12px;font-weight:700;color:var(--ec-red)}
.dae-catalogo .ec-multi__count[hidden]{display:none}
.dae-catalogo .ec-multi__options{position:absolute;top:calc(100% + 6px);left:0;z-index:10;width:max-content;min-width:100%;max-width:min(280px,calc(100vw - 80px));max-height:300px;overflow:auto;padding:6px;background:#fff;border:1px solid #b0bdcc;border-radius:7px;box-shadow:0 8px 20px rgba(18,25,42,.15)}
.dae-catalogo .ec-multi__options label{display:flex;align-items:center;gap:10px;min-height:44px;margin:0;padding:8px;font-size:14px;font-weight:400;cursor:pointer}
.dae-catalogo .ec-multi__options label:hover{background:var(--ec-cream)}
.dae-catalogo .ec-multi__options input{flex:none;width:18px;height:18px;margin:0;accent-color:var(--ec-red)}
.dae-catalogo .ec-filter-actions{display:flex;flex-direction:column;align-items:center;gap:8px;padding-top:24px}
.dae-catalogo .ec-filter-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 16px;border:1px solid var(--ec-red);border-radius:11px;background:var(--ec-red);color:#fff;font-size:14px;font-weight:700;white-space:nowrap;cursor:pointer}
.dae-catalogo .ec-filter-actions button:hover{background:var(--ec-red-dark)}
.dae-catalogo .ec-filter-actions a{color:#3f4e64;font-size:14px;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.dae-catalogo .ec-results-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}
.dae-catalogo .ec-results-head h2{margin:0;font-size:25px;font-weight:400;line-height:1.3;color:var(--ec-ink)}
.dae-catalogo .ec-results-head strong{font-weight:800}
.dae-catalogo .ec-sort{display:flex;align-items:center;gap:16px;margin-left:auto}
.dae-catalogo .ec-sort label{font-size:13px;font-weight:700;white-space:nowrap}
.dae-catalogo .ec-sort select{width:180px;font-size:14px}
.dae-catalogo .ec-sort button{border:1px solid var(--ec-red);border-radius:7px;background:var(--ec-red);color:white;padding:10px;cursor:pointer}
.dae-catalogo .ec-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;min-width:0}
.dae-catalogo .ec-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--ec-border);border-radius:11px;background:linear-gradient(#fff,#fdfdfc);box-shadow:0 3px 10px rgba(18,25,42,.04)}
.dae-catalogo .ec-card__visual{position:relative;flex:none}
.dae-catalogo .ec-card__image{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#e6e6e6}
.dae-catalogo .ec-card__image img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.dae-catalogo .ec-card__image:focus-visible{outline-offset:-4px}
.dae-catalogo .ec-card__category{position:absolute;top:16px;left:14px;max-width:calc(100% - 28px);margin:0;padding:6px 12px;border-radius:7px;background:var(--ec-red);color:white;font-size:11px;font-weight:800;line-height:1.4;text-transform:uppercase;overflow-wrap:anywhere;pointer-events:none}
.dae-catalogo .ec-card__body{display:flex;flex:1;flex-direction:column;padding:16px 18px}
.dae-catalogo .ec-card h3{margin:0 0 8px;color:var(--ec-ink);font:800 16px/1.25 'Plus Jakarta Sans','Open Sans',Arial,sans-serif;text-transform:uppercase;overflow-wrap:anywhere}
.dae-catalogo .ec-card h3 a:hover{text-decoration:underline;text-underline-offset:3px}
.dae-catalogo .ec-card__company{margin:0 0 14px;color:var(--ec-ink);font-size:14px;line-height:1.4;font-weight:600;overflow-wrap:anywhere}
.dae-catalogo .ec-card__facts{display:grid;gap:8px;margin:auto 0 14px;padding:0;color:var(--ec-muted);font-size:13px;line-height:1.4}
.dae-catalogo .ec-card__facts div{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:12px}
.dae-catalogo .ec-card__facts dt{margin:0;color:#314968}
.dae-catalogo .ec-card__facts .ec-icon{width:18px;height:18px}
.dae-catalogo .ec-card__facts dd{margin:0;overflow-wrap:anywhere}
.dae-catalogo .ec-card__link{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;align-self:flex-start;min-height:44px;padding:8px 16px;border:1px solid var(--ec-red);border-radius:10px;color:var(--ec-red);font-size:14px;font-weight:800}
.dae-catalogo .ec-card__link:hover{background:var(--ec-red);color:#fff}
.dae-catalogo .ec-empty{padding:32px;border:1px solid var(--ec-border);border-radius:12px;background:var(--ec-cream);color:var(--ec-ink)}
.dae-catalogo .ec-pages{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:30px;flex-wrap:wrap}
.dae-catalogo .ec-pages__count{margin-right:22px;color:var(--ec-muted);font-size:16px;font-weight:700}
.dae-catalogo .ec-pages__number, .dae-catalogo .ec-pages__arrow{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;border:1px solid var(--ec-border);border-radius:9px;background:#fafafa;color:var(--ec-ink);font-weight:800}
.dae-catalogo .ec-pages .is-current{background:var(--ec-red);border-color:var(--ec-red);color:#fff}
.dae-catalogo .ec-pages a:hover{border-color:var(--ec-red);color:var(--ec-red)}
.dae-catalogo .ec-pages__ellipsis{color:var(--ec-muted)}
@media(max-width:1199px){
    .dae-catalogo .ec-filters__form{gap:16px}
    .dae-catalogo .ec-filter-actions button{padding:11px 14px}
    .dae-catalogo .ec-hero__slogan{right:3%;font-size:29px;max-width:125px}
}
@media(max-width:1023px){
    .dae-catalogo .ec-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
    .dae-catalogo .ec-filters__form{grid-template-columns:repeat(2,minmax(0,1fr))}
    .dae-catalogo .ec-filter-actions{grid-column:1/-1;align-items:flex-end;padding-top:0}
    .dae-catalogo .ec-hero__intro{font-size:15px}
    .dae-catalogo .ec-hero{min-height:340px}
    .dae-catalogo .ec-hero__slogan{font-size:25px;max-width:110px}
    .dae-catalogo .ec-card__body{padding:14px}
}
@media(max-width:767px){
    .dae-catalogo .ec-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
    .dae-catalogo .ec-hero__copy{max-width:46%}
    .dae-catalogo .ec-hero__slogan{font-size:23px;right:2%;max-width:90px}
    .dae-catalogo .ec-filters__form{grid-template-columns:repeat(2,minmax(0,1fr))}
    .dae-catalogo .ec-shell{width:calc(100% - 24px);padding:14px 14px 48px}
    .dae-catalogo .ec-filters{padding:18px;margin-bottom:24px}
    .dae-catalogo .ec-results-head{align-items:stretch;flex-direction:column;gap:18px}
    .dae-catalogo .ec-sort{margin:0;justify-content:space-between}
    .dae-catalogo .ec-sort select{width:min(220px,65%)}
    .dae-catalogo .ec-filters select, .dae-catalogo .ec-filters input[type=search], .dae-catalogo .ec-multi summary{font-size:16px}
}
@media(max-width:539px){
    .dae-catalogo .ec-grid{grid-template-columns:1fr}
    .dae-catalogo .ec-hero{display:flex;flex-direction:column;min-height:0;padding:0;overflow:hidden}
    .dae-catalogo .ec-breadcrumb{position:relative;top:auto;left:auto;order:0;padding:14px 24px;margin:0}
    .dae-catalogo .ec-hero__copy{order:1;max-width:none;padding:24px 24px 36px}
    .dae-catalogo .ec-hero .ec-hero__title{font-size:32px}
    .dae-catalogo .ec-hero__intro{font-size:16px}
    .dae-catalogo .ec-hero__photo{position:relative;inset:auto;order:2;width:100%;height:210px;z-index:auto}
    .dae-catalogo .ec-hero__photo img{object-position:35% center;transform:none}
    .dae-catalogo .ec-hero__diagonals{display:none}
    .dae-catalogo .ec-hero__slogan{top:auto;bottom:48px;right:5%;z-index:1;max-width:110px;font-size:26px}
    .dae-catalogo .ec-hero__line{margin-top:20px}
    .dae-catalogo .ec-shell{margin-top:-20px;border-radius:22px 22px 0 0}
    .dae-catalogo .ec-filters__form{grid-template-columns:1fr;gap:16px}
    .dae-catalogo .ec-filter-actions{align-items:stretch}
    .dae-catalogo .ec-filter-actions a{text-align:center}
    .dae-catalogo .ec-card h3{font-size:18px}
    .dae-catalogo .ec-card__company{font-size:16px}
    .dae-catalogo .ec-card__facts{font-size:14px}
    .dae-catalogo .ec-card__body{padding:18px}
    .dae-catalogo .ec-pages__count{width:100%;margin:0;text-align:center}
}
