/* ergosum-cms.css — adaptación del template "Ruizarch" (ergosum.css) a WebComposer.
   Scopeado bajo .ergosum-site: grilla tipo Bootstrap, header/footer sobre el markup
   del chrome del CMS (nav_items, columns…), acordeón con <details>, cinta de logos
   y ajustes para convivir con public.css / tailwind.css. */

/* ===== Base ===== */
.ergosum-site { background: #fff; -webkit-font-smoothing: antialiased; }
.ergosum-site img { max-width: 100%; }
.ergosum-site .wc-dark-toggle { display: none; }
.ergosum-site .wc-sec-hidden { display: none; }
.ergosum-site section[id] { scroll-margin-top: 100px; }
.ergosum-site ::selection { background: #d1731e; color: #000; }
.ergosum-site .ergo-intro { max-width: 560px; margin-left: auto; margin-right: auto; }

/* ===== Grilla (equivalente a bootstrap-grid.css del template) ===== */
.ergosum-site .container,
.ergosum-site .container-fluid { width: 100%; max-width: none; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; }
@media (min-width: 576px) { .ergosum-site .container { max-width: 540px; } }
@media (min-width: 768px) { .ergosum-site .container { max-width: 720px; } }
@media (min-width: 992px) { .ergosum-site .container { max-width: 960px; } }
@media (min-width: 1200px) { .ergosum-site .container { max-width: 1140px; } }
@media (min-width: 1400px) { .ergosum-site .container { max-width: 1320px; } }
.ergosum-site .container-fluid { padding-right: 30px; padding-left: 30px; }

.ergosum-site .row { display: flex; flex-wrap: wrap; margin-right: -15px; margin-left: -15px; }
.ergosum-site .row > [class*="col-"] { position: relative; width: 100%; padding-right: 15px; padding-left: 15px; }
.ergosum-site .col-6 { flex: 0 0 50%; max-width: 50%; }
.ergosum-site .col-12 { flex: 0 0 100%; max-width: 100%; }
@media (min-width: 576px) {
  .ergosum-site .col-sm-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
  .ergosum-site .col-sm-6 { flex: 0 0 50%; max-width: 50%; }
  .ergosum-site .flex-sm-row-reverse { flex-direction: row-reverse; }
}
@media (min-width: 768px) {
  .ergosum-site .col-md-6 { flex: 0 0 50%; max-width: 50%; }
}
@media (min-width: 992px) {
  .ergosum-site .col-lg-3 { flex: 0 0 25%; max-width: 25%; }
  .ergosum-site .col-lg-4 { flex: 0 0 33.3333%; max-width: 33.3333%; }
  .ergosum-site .col-lg-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }
  .ergosum-site .col-lg-6 { flex: 0 0 50%; max-width: 50%; }
  .ergosum-site .col-lg-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }
  .ergosum-site .col-lg-8 { flex: 0 0 66.6667%; max-width: 66.6667%; }
}
@media (min-width: 1200px) {
  .ergosum-site .col-xl-3 { flex: 0 0 25%; max-width: 25%; }
  .ergosum-site .col-xl-5 { flex: 0 0 41.6667%; max-width: 41.6667%; }
  .ergosum-site .col-xl-7 { flex: 0 0 58.3333%; max-width: 58.3333%; }
}
.ergosum-site .align-items-end { align-items: flex-end; }
.ergosum-site .align-items-center { align-items: center; }
.ergosum-site .justify-content-between { justify-content: space-between; }

/* ===== Botones del CMS (token cta_button) con el estilo .mil-button ===== */
.ergosum-site .btn { display: inline-flex; align-items: center; justify-content: center; height: 60px; padding: 0 40px; background: #d1731e; color: #000; font-weight: 600; font-size: 13px; text-transform: uppercase; letter-spacing: .02em; border-radius: 0; box-shadow: none; transition: .2s cubic-bezier(0, 0, .3642, 1); }
.ergosum-site .btn:hover { filter: brightness(110%); transform: none; box-shadow: none; }

/* ===== Header ===== */
.ergosum-site .ergo-header .mil-logo img { width: 170px; height: auto; display: block; }
.ergosum-site .ergo-header .mil-top-panel-content { gap: 30px; }
.ergosum-site .ergo-menu { display: flex; align-items: center; margin: 0 auto; }
.ergosum-site .ergo-menu > a,
.ergosum-site .ergo-menu .menu-item > a { display: inline-flex; align-items: center; height: 30px; margin-right: 20px; padding: 0 10px; font-size: 12px; font-weight: 600; text-transform: uppercase; color: #fff; white-space: nowrap; transition: .2s cubic-bezier(0, 0, .3642, 1); }
.ergosum-site .ergo-menu > a:hover,
.ergosum-site .ergo-menu .menu-item:hover > a { color: #d1731e; }
.ergosum-site .ergo-menu a.active { background: #d1731e; color: #000 !important; }
.ergosum-site .ergo-menu .menu-item { position: relative; display: flex; align-items: center; }
.ergosum-site .ergo-menu .caret { font-size: 9px; margin-left: 6px; }
.ergosum-site .ergo-menu .menu-item::after { content: ""; position: absolute; left: 0; right: 0; top: 100%; height: 40px; }
.ergosum-site .ergo-menu .submenu { position: absolute; top: 63px; left: -20px; min-width: 220px; padding: 30px; background: #d1731e; display: flex; flex-direction: column; gap: 15px; opacity: 0; pointer-events: none; transform: translateY(10px) scale(.98); transition: .4s cubic-bezier(0, 0, .3642, 1); z-index: 10; }
.ergosum-site .ergo-menu .menu-item:hover .submenu { opacity: 1; pointer-events: all; transform: none; }
.ergosum-site .ergo-menu .submenu a { color: #000; font-size: 12px; font-weight: 600; text-transform: uppercase; white-space: nowrap; transition: .2s; }
.ergosum-site .ergo-menu .submenu a:hover { transform: translateX(5px); }

.ergosum-site .mil-menu-btn { background: none; border: 0; padding: 0 0 0 10px; }
.ergosum-site .mil-menu-btn[aria-expanded="true"] span { transform: rotate(45deg); }
.ergosum-site .mil-menu-btn[aria-expanded="true"] span:before { transform: translate(0, 8px) rotate(-90deg); }
.ergosum-site .mil-menu-btn[aria-expanded="true"] span:after { transform: translate(0, -8px) rotate(-90deg); }
.ergosum-site.eib-menu-open .ergo-header { background-color: rgba(0, 0, 0, .9); }

.ergosum-site .ergo-mobile-menu { position: fixed; top: var(--eib-header-h, 100px); left: 0; right: 0; z-index: 998; max-height: calc(100dvh - var(--eib-header-h, 100px)); overflow-y: auto; display: flex; flex-direction: column; align-items: center; padding: 30px; background: #d1731e; box-shadow: 0 0 40px rgba(18, 24, 32, .1); }
.ergosum-site .ergo-mobile-menu.hidden { display: none; }
.ergosum-site .ergo-mobile-menu a { padding: 8px 0; font-size: 12px; font-weight: 600; text-transform: uppercase; color: #000; }
.ergosum-site .ergo-mobile-menu a.mm-sub { padding: 4px 0; font-weight: 500; color: rgba(0, 0, 0, .6); }
.ergosum-site .ergo-mobile-menu .mm-cta { margin-top: 15px; padding: 14px 30px; background: #000; color: #d1731e; }

@media (max-width: 1200px) {
  .ergosum-site .ergo-menu,
  .ergosum-site .ergo-header .btn { display: none; }
  .ergosum-site .ergo-header .mil-top-panel-content { height: 90px; }
}
@media (max-width: 576px) {
  .ergosum-site .container-fluid { padding-right: 15px; padding-left: 15px; }
  .ergosum-site .ergo-header .mil-logo img { width: 140px; }
}

/* Barra de progreso de lectura (la inserta ergosum.js) */
.ergosum-site .mil-progress-track { pointer-events: none; }

/* En el editor de secciones el header se muestra como vista previa estática */
.ergosum-site .global-chrome .ergo-header,
.global-chrome .ergosum-site .ergo-header { position: relative; background: #000; }

/* ===== Footer ===== */
.ergosum-site .ergo-footer { background: #000; }
.ergosum-site .ergo-footer .mil-overlay { background-color: rgba(0, 0, 0, .85); }
.ergosum-site .ergo-footer > .container,
.ergosum-site .ergo-footer > .container-fluid { position: relative; }
.ergosum-site .ergo-footer-menu { display: flex; flex-wrap: wrap; align-items: center; gap: 15px 40px; }
.ergosum-site .ergo-footer-menu .menu-item { display: flex; align-items: center; }
.ergosum-site .ergo-footer-menu > a,
.ergosum-site .ergo-footer-menu .menu-item > a { font-size: 12px; font-weight: 600; text-transform: uppercase; color: #fff; white-space: nowrap; padding: 5px 0; transition: .2s; }
.ergosum-site .ergo-footer-menu a:hover { color: #d1731e; }
.ergosum-site .ergo-footer-menu a.active { padding: 5px 10px; background: #d1731e; color: #000; }
.ergosum-site .ergo-footer-menu .submenu,
.ergosum-site .ergo-footer-menu .caret { display: none; }
.ergosum-site .ergo-footer-cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; }
.ergosum-site .ergo-footer-cols h4 { position: relative; display: inline-block; padding-bottom: 10px; margin-bottom: 30px; font-size: 15px; font-weight: 600; text-transform: uppercase; color: #fff; }
.ergosum-site .ergo-footer-cols h4::after { content: ""; position: absolute; left: 0; bottom: 0; width: 60px; height: 5px; border: 3px solid rgba(255, 255, 255, .1); border-image: repeating-linear-gradient(-45deg, transparent, transparent 1px, rgba(255, 255, 255, .1) 1px, rgba(255, 255, 255, .1) 3px) 3; }
.ergosum-site .ergo-footer-cols ul { list-style: none; margin-bottom: 30px; }
.ergosum-site .ergo-footer-cols li { font-size: 14px; line-height: 190%; color: rgba(255, 255, 255, .5); }
.ergosum-site .ergo-footer-cols a { color: rgba(255, 255, 255, .5); transition: .2s; }
.ergosum-site .ergo-footer-cols a:hover { color: #d1731e; }
.ergosum-site .mil-footer-logo img { width: 170px; display: inline-block; }
.ergosum-site .ergo-footer-brand { text-align: right; font-size: 14px; margin-bottom: 30px; }
.ergosum-site .ergo-footer-brand:empty { display: none; }
.ergosum-site .ergo-footer-social { display: flex; flex-wrap: wrap; gap: 6px 10px; font-size: 14px; }
.ergosum-site .ergo-footer-social a:hover { color: #d1731e !important; }
.ergosum-site .ergo-top-btn { position: fixed; right: 24px; bottom: 24px; z-index: 50; display: none; align-items: center; justify-content: center; width: 50px; height: 50px; border: 0; background: #d1731e; color: #000; font-size: 20px; font-weight: 700; cursor: pointer; }
@media (max-width: 992px) {
  .ergosum-site .ergo-footer-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ergosum-site .ergo-footer-brand { text-align: left; }
}
@media (max-width: 576px) {
  .ergosum-site .ergo-footer-cols { grid-template-columns: 1fr; }
  .ergosum-site .ergo-footer-menu { flex-direction: column; align-items: flex-start; gap: 10px; }
}

/* ===== Portada ===== */
.ergosum-site .ergo-hero { min-height: 640px; }
.ergosum-site .ergo-hero .mil-overlay { background: linear-gradient(90deg, rgba(0, 0, 0, .55) 0%, rgba(0, 0, 0, 0) 60%), linear-gradient(180deg, rgba(0, 0, 0, .8) 0%, rgba(0, 0, 0, .85) 60%, rgba(0, 0, 0, .92) 100%); }
.ergosum-site .ergo-hero .mil-counter-frame p { color: rgba(255, 255, 255, .7) !important; }

/* ===== Imágenes con zoom al hacer scroll (ergosum.js → --ergo-scale) ===== */
.ergosum-site .mil-scale { transform: scale(var(--ergo-scale, 1)); will-change: transform; }

/* ===== Cinta de logos ===== */
.ergosum-site .ergo-marquee { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); mask-image: linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); }
.ergosum-site .ergo-marquee-track { display: flex; width: max-content; animation: ergo-marquee 40s linear infinite; }
.ergosum-site .ergo-marquee:hover .ergo-marquee-track { animation-play-state: paused; }
.ergosum-site .ergo-marquee-group { display: flex; align-items: center; }
.ergosum-site .ergo-marquee .mil-partner-frame { padding: 0 45px; }
.ergosum-site .ergo-marquee .mil-partner-frame img { width: 170px; margin: 0; opacity: .8; transition: .3s; }
.ergosum-site .ergo-marquee .mil-partner-frame:hover img { opacity: 1; }
@keyframes ergo-marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .ergosum-site .ergo-marquee-track { animation: none; } }

/* ===== Recuadro de cifra sobre la foto ===== */
.ergosum-site .mil-about-counter h5 .mil-marker { display: inline-block; margin-bottom: 4px; }
.ergosum-site .mil-about-counter { max-width: 300px; }

/* ===== Servicios: la tarjeta es un <a> en bloque ===== */
.ergosum-site .mil-service-card { color: inherit; }

/* ===== Íconos: tamaño fijo como el template (img 30px + padding 15px) ===== */
.ergosum-site .mil-icon { justify-content: center; align-items: center; }
.ergosum-site .mil-icon img { width: 30px; height: 30px; display: block; }
.ergosum-site .mil-link .mil-arrow img { width: 22px; height: 22px; }

/* ===== Acordeón con <details> (site.js data-accordion deja uno abierto) ===== */
.ergosum-site details.mil-accordion-group > summary { list-style: none; }
.ergosum-site details.mil-accordion-group > summary::-webkit-details-marker { display: none; }
.ergosum-site details.mil-accordion-group > summary::after { content: none; display: none; }
.ergosum-site details.mil-accordion-group .mil-accordion-content { height: auto; overflow: visible; }
.ergosum-site .mil-accordion-group .mil-symbol { height: 30px; }
.ergosum-site .mil-accordion-group .mil-symbol .mil-plus,
.ergosum-site .mil-accordion-group .mil-symbol .mil-minus { transition: opacity .3s, transform .3s; }
.ergosum-site .mil-accordion-group .mil-symbol .mil-minus { opacity: 0; transform: translateY(-2px) rotate(-90deg); }
.ergosum-site details.mil-accordion-group[open] .mil-symbol .mil-plus { opacity: 0; transform: rotate(90deg); }
.ergosum-site details.mil-accordion-group[open] .mil-symbol .mil-minus { opacity: 1; transform: translateY(-2px); }
.ergosum-site details.mil-accordion-group[open] .mil-accordion-content { animation: ergo-acc .4s cubic-bezier(0, 0, .3642, 1); }
@keyframes ergo-acc { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }

/* ===== Blog: tarjeta en bloque ===== */
.ergosum-site .mil-blog-card { color: inherit; }
.ergosum-site .mil-blog-card .mil-description p { color: rgba(0, 0, 0, .7); }

/* ===== Mosaico de proyectos: espacio inferior como el template ===== */
.ergosum-site .ergo-portafolio .container-fluid { padding-bottom: 0; }

/* =====================================================================
   Ergo sum (marca salmón #d1731e + gris #333): piezas del sitio real
   ===================================================================== */
.ergosum-site .mil-mt-30 { margin-top: 30px; }
.ergosum-site .mil-marker { color: #000; }

/* Logo real (isotipo + ERGOSUM apilados) */
.ergosum-site .ergo-header .mil-logo img { width: auto; height: 62px; }
.ergosum-site .mil-footer-logo img { width: auto; height: 110px; }
@media (max-width: 576px) { .ergosum-site .ergo-header .mil-logo img { width: auto; height: 50px; } }

/* Portada con video */
.ergosum-site .ergo-hero-video { z-index: 0; }
.ergosum-site .ergo-hero .mil-overlay { z-index: 0; }
.ergosum-site .ergo-hero h1 { max-width: 760px; }
.ergosum-site .ergo-hero-sub { font-weight: 600; letter-spacing: .02em; }
.ergosum-site .mil-button { color: #000; }

/* Cabecera interior */
.ergosum-site .ergo-page-hero { height: 520px; }
.ergosum-site .ergo-page-hero .container { align-items: center; }
.ergosum-site .ergo-page-hero .mil-banner-content { padding: 100px 0 0; }
.ergosum-site .ergo-page-hero .mil-breadcrumbs li a { color: #fff; }
.ergosum-site .ergo-page-hero .mil-breadcrumbs li a:hover { color: #d1731e; }
@media (max-width: 992px) { .ergosum-site .ergo-page-hero { height: auto; } .ergosum-site .ergo-page-hero .mil-banner-content { padding: 170px 0 90px; } }

/* Logos de clientes: grises, a color al pasar el mouse */
.ergosum-site .ergo-marquee .mil-partner-frame img { width: auto; max-width: 170px; height: 70px; object-fit: contain; filter: none; opacity: 1; transition: transform .3s; }
.ergosum-site .ergo-marquee .mil-partner-frame:hover img { transform: scale(1.06); }

/* Tarjetas numeradas: sin efecto de "esconder texto" (no son enlaces) */
.ergosum-site .ergo-servicios .mil-service-card { min-height: 100%; }
.ergosum-site .ergo-servicios .mil-service-card:hover { padding-top: 60px; padding-bottom: 60px; }
.ergosum-site .ergo-servicios .mil-service-card:hover .mil-service-text,
.ergosum-site .ergo-card-text { opacity: 1; transform: none; }
.ergosum-site .ergo-servicios .row > .col-md-6 { display: flex; }
.ergosum-site .ergo-servicios .mil-service-card { width: 100%; justify-content: center; }

/* Banda "Hablemos" */
.ergosum-site .ergo-cta-box { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 60px; background: #333333; }
.ergosum-site .ergo-cta-box h3 { color: #fff; }
@media (max-width: 768px) { .ergosum-site .ergo-cta-box { flex-direction: column; text-align: center; padding: 40px 30px; } }

/* Formularios */
.ergosum-site .ergo-form .mil-input-frame label { margin-bottom: 5px; }
.ergosum-site .ergo-form .mil-input-frame input,
.ergosum-site .ergo-form .mil-input-frame textarea { background: transparent; border-radius: 0; padding: 0; }
.ergosum-site .ergo-form .mil-input-frame textarea { padding-top: 20px; resize: vertical; }
.ergosum-site .ergo-form .mil-input-frame input:focus,
.ergosum-site .ergo-form .mil-input-frame textarea:focus { box-shadow: 0 5px 0 0 #d1731e; outline: none; }
.ergosum-site .ergo-form button.mil-button { border: none; cursor: pointer; font-family: inherit; font-size: 15px; }
.ergosum-site .ergo-check { display: flex; align-items: flex-start; gap: 12px; cursor: pointer; color: rgba(0, 0, 0, .7); }
.ergosum-site .ergo-check input { width: 18px; height: 18px; margin-top: 3px; accent-color: #d1731e; flex-shrink: 0; }
.ergosum-site .ergo-file input[type="file"] { height: auto; padding: 20px 0; border-bottom: 1px solid #000; font-size: 14px; }
.ergosum-site .ergo-file input[type="file"]::file-selector-button { margin-right: 15px; padding: 10px 20px; border: 1px solid #000; background: #fff; font-family: inherit; font-weight: 600; text-transform: uppercase; font-size: 12px; cursor: pointer; }
.ergosum-site .ergo-file p { margin-top: 10px; }
.ergosum-site .ergo-form-frame { padding: 60px; border: 5px solid #e5e5e5; border-image: repeating-linear-gradient(-45deg, transparent, transparent 1px, rgb(229, 229, 229) 1px, rgb(229, 229, 229) 3px) 5; }
@media (max-width: 768px) { .ergosum-site .ergo-form-frame { padding: 30px 20px; } }
.ergosum-site .ergo-form-msg { margin-top: 10px; padding: 14px 18px; font-size: 14px; border-left: 4px solid; }
.ergosum-site .ergo-form-msg.is-ok { background: #fbefe4; border-color: #d1731e; color: #333; }
.ergosum-site .ergo-form-msg.is-error { background: #fdecec; border-color: #c0392b; color: #7a1f17; }
.ergosum-site .ergo-address ul { list-style: none; }
.ergosum-site .mil-list li a:hover { color: #d1731e; }

/* Nosotros: firma */
.ergosum-site .ergo-sign { display: flex; align-items: center; gap: 60px; }
.ergosum-site .ergo-sign-script { font-size: 40px; color: #000; line-height: 1; }

/* Tarjeta de persona sobre foto (Trabaja con nosotros) */
.ergosum-site .ergo-person-card { padding: 40px 50px; min-width: 260px; }
.ergosum-site .ergo-avatar-empty { display: flex; align-items: center; justify-content: center; background: #333; color: #d1731e; font-weight: 700; font-size: 28px; }

/* Grillas con filtro */
.ergosum-site .mil-filter .mil-filter-links a { display: inline-block; transition: .2s; }
.ergosum-site .mil-filter .mil-filter-links a:hover { color: #d1731e; }
.ergosum-site .mil-filter .mil-filter-links a.mil-current:hover { color: #000; }
.ergosum-site .ergo-proyectos .mil-portfolio-item-2.mil-long-item { padding-bottom: 66%; }
.ergosum-site .mil-portfolio-item-2 .mil-category { font-size: 12px; padding: 4px 0; color: #000; }
.ergosum-site .mil-portfolio-item-2 .mil-project-descr { padding: 40px 60px 40px 100px; }
@media (max-width: 768px) { .ergosum-site .mil-portfolio-item-2 .mil-project-descr { padding: 30px 30px 30px 80px; } }
.ergosum-site .mil-team-member { margin-bottom: 30px; color: inherit; text-align: center; }

/* Ficha de proyecto */
.ergosum-site .ergo-project-info .mil-list li { align-items: flex-start; }
.ergosum-site .ergo-project-info .mil-list li:before { margin-top: 8px; flex-shrink: 0; }
.ergosum-site .ergo-gallery-item { display: block; position: relative; overflow: hidden; padding-bottom: 70%; }
.ergosum-site .ergo-gallery-item img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: .4s cubic-bezier(0, 0, .3642, 1); }
.ergosum-site .ergo-gallery-item:hover img { transform: scale(1.06); }
.ergosum-site .ergo-project-nav { display: flex; justify-content: space-between; gap: 20px; }

/* Ficha de integrante del equipo */
.ergosum-site .ergo-member { padding-top: 180px; }
.ergosum-site .ergo-member-crumbs { position: relative; z-index: 1; }
.ergosum-site .ergo-member-crumbs li a { color: #fff; }
.ergosum-site .ergo-member .mil-team-member-frame { position: relative; margin-top: 60px; }
.ergosum-site .ergo-member-empty { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: #333; color: #d1731e; font-size: 80px; font-weight: 700; }

/* Cita destacada y mapa */
.ergosum-site .ergo-vision blockquote .mil-quote img { width: 34px; height: 34px; }
.ergosum-site .ergo-vision blockquote .mil-quote-text { font-size: 36px; line-height: 130%; }
@media (max-width: 768px) { .ergosum-site .ergo-vision blockquote .mil-quote-text { font-size: 26px; padding: 20px; } }
.ergosum-site .ergo-map { height: 460px; }
.ergosum-site .ergo-map iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; filter: grayscale(1) contrast(1.05); }

/* Íconos de servicios de la marca (PNG negro + salmón) */
.ergosum-site .ergo-servicios .mil-icon.mil-icon-lg { width: 70px; height: 70px; padding: 7px; }
.ergosum-site .ergo-servicios .mil-icon.mil-icon-lg img { width: 56px; height: 56px; object-fit: contain; }

/* Filtros centrados (varias líneas) y grilla del equipo */
.ergosum-site .mil-filter .mil-filter-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 0; max-width: 1000px; }
.ergosum-site .ergo-equipo .ergo-grid { justify-content: center; }
.ergosum-site .ergo-equipo .ergo-intro { margin-bottom: 60px; }

/* Encabezado de la cinta de clientes: texto centrado entre dos líneas finas */
.ergosum-site .ergo-partners-label { display: flex; align-items: center; gap: 30px; }
.ergosum-site .ergo-partners-label::before,
.ergosum-site .ergo-partners-label::after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, transparent, #d9d9d9); }
.ergosum-site .ergo-partners-label::after { background: linear-gradient(90deg, #d9d9d9, transparent); }
.ergosum-site .ergo-partners-label span { position: relative; padding-bottom: 14px; font-size: 13px; font-weight: 600; letter-spacing: .22em; text-transform: uppercase; color: #333; white-space: nowrap; }
.ergosum-site .ergo-partners-label span::after { content: ""; position: absolute; left: 50%; bottom: 0; width: 28px; height: 3px; margin-left: -14px; background: #d1731e; }
@media (max-width: 576px) { .ergosum-site .ergo-partners-label { gap: 15px; } .ergosum-site .ergo-partners-label span { font-size: 11px; letter-spacing: .15em; } }
.ergosum-site .ergo-card-text:empty { display: none; }
.ergosum-site .ergo-servicios .mil-service-card .mil-divider-sm { margin-bottom: 0; }
.ergosum-site .ergo-servicios .mil-service-card,
.ergosum-site .ergo-servicios .mil-service-card:hover { align-items: center; padding: 70px 40px 50px; }

/* Subrayados: trazo salmón sólido (reemplaza las rayas grises del template) */
.ergosum-site .mil-suptitle { letter-spacing: .08em; padding-bottom: 14px; }
.ergosum-site .mil-suptitle:after,
.ergosum-site .mil-suptitle.mil-light:after,
.ergosum-site .mil-blog-card:hover .mil-suptitle:after { width: 28px; height: 3px; border: 0; border-image: none; background: #d1731e; }
.ergosum-site .mil-center .mil-suptitle:after { left: calc(50% - 14px); }
.ergosum-site .mil-divider-sm,
.ergosum-site .mil-service-card:hover .mil-divider-sm,
.ergosum-site .mil-hww:hover .mil-divider-sm { width: 40px; height: 2px; border: 0; border-image: none; background: #d1731e; }
.ergosum-site .ergo-footer-cols h4::after { width: 28px; height: 3px; border: 0; border-image: none; background: #d1731e; }
.ergosum-site .mil-divider-lg { height: 1px; border: 0; border-image: none; background: #dcdcdc; }
