/* Directorio: identidad, especialidad y contacto de cada empresa. */
.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:600;color:#49735A}
.directorio-empresas .lay{display:grid;grid-template-columns:220px minmax(0,1fr);gap:36px;align-items:start}
.directorio-empresas .filtros{position:static;padding-right:6px}
.directorio-empresas .filtros summary{display:none;list-style:none}.filtros summary::-webkit-details-marker{display:none}
.filtros-cab{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:15px}
.limpiar{background:none;border:0;color:#B74308;font:inherit;font-size:13px;cursor:pointer;min-height:44px;padding:6px}
.directorio-empresas .fg{min-width:0;margin:0;padding:18px 0;border:0;border-bottom:1px solid var(--linea)}.directorio-empresas .fg:last-child{border:0}
.directorio-empresas .fg legend{font-size:13px;font-weight:600;padding:0;margin:0 0 8px}.directorio-empresas .fg .chk{display:flex;align-items:center;gap:10px;margin:0;min-height:38px;font-size:13px}
.directorio-empresas .fg label{cursor:pointer;flex:1}.directorio-empresas .fg input{margin:0}
.directorio-empresas .fg select{font-size:13px;max-width:100%}
.ver-mas-f{font:inherit;font-size:13px;color:var(--tinta-2);background:none;border:0;padding:6px 0;min-height:40px;cursor:pointer}
.barra-res{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.res{font-size:14px;color:var(--gris)}.res b{color:var(--tinta)}
.orden{display:flex;align-items:center;gap:10px;color:var(--gris);font-size:13px}body .orden select{width:auto;font-size:13px}
.filtros-activos{display:flex;gap:8px;flex-wrap:wrap}.filtros-activos:not(:empty){margin-bottom:20px}
.filtro-chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 12px;border:1px solid #F1D3BF;border-radius:24px;background:#FFF8F3;color:#99400E;font:inherit;font-size:12px;cursor:pointer}
/* Tres tarjetas por fila; el pie mantiene alineadas las acciones. */
.directorio-empresas .lista{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.directorio-empresas .emp{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;padding:18px;border:1px solid #E1E7EB;border-radius:16px;background:#fff;transition:border-color .18s,box-shadow .18s}
.directorio-empresas .emp:hover,.directorio-empresas .emp:focus-within{border-color:#BDC9D1;box-shadow:0 8px 24px -18px #17202C60}
.directorio-empresas .emp .cab{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:14px;align-items:center;min-height:104px}
.emp .identidad{min-width:0}
body .emp .nombre-fila{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0;font-size:18px;line-height:1.3;letter-spacing:-.02em}
.directorio-empresas .emp .nom{font-size:18px;font-weight:600;line-height:1.3;color:var(--tinta);overflow-wrap:anywhere;text-decoration:none}
.emp .nom:hover{color:var(--naranja)}
.directorio-empresas .emp .ph.logo{width:104px;height:104px;min-width:0;flex:none;border:0;border-radius:0;background:transparent;padding:0;font-size:26px}
.directorio-empresas .emp .ph.logo img{object-fit:contain;padding:0;width:100%;height:100%;border-radius:0}
.emp .verificado{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;padding:4px 8px;border-radius:99px;background:#EDFCF2;color:#15803D;font-size:10.5px;font-weight:600;white-space:nowrap}.emp .verificado:hover{background:#E1FBEB;color:#137F3B}.emp .verificado .i{width:15px;height:15px}
.emp .especialidad{font-size:13px;color:#5B6877;line-height:1.55;margin:9px 0 0;overflow-wrap:anywhere}
.emp .det{display:flex;align-items:center;gap:8px;color:#677582;font-size:12px;font-style:normal;line-height:1.5;min-height:36px;margin:12px 0 14px}
.emp .det .i{color:#8695A2}.emp .det span{min-width:0;overflow-wrap:anywhere}
.emp .acc{display:flex;gap:8px;margin-top:auto;padding-top:14px;border-top:1px solid #EDF0F2}
.directorio-empresas .emp .acc .btn{flex:1;min-width:0;min-height:44px;padding:10px 6px;font-size:12px;gap:6px;border-radius:10px;white-space:normal}
.directorio-empresas .emp .acc .i{width:18px;height:18px}
.directorio-empresas .emp .acc .contactar{background:#FFF4EC;color:#AD410B;border-color:#F5DBCA}
.directorio-empresas .emp .acc .contactar:hover{background:#FFEADD;border-color:#EBAF88}
.directorio-empresas .vacio{text-align:center;padding:52px 24px;background:#F7F9FA;border-radius:16px;color:var(--gris)}.vacio>.i{display:block;margin:0 auto 16px}.vacio b{display:block;color:var(--tinta);margin-bottom:10px}.vacio .btn{margin-top:16px}
.fin-lista{text-align:center;font-size:13px;color:var(--gris);margin:28px 0}
.directorio-empresas .cta{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;background:#F6F8FA;border-radius:16px;margin:36px 0 56px}.cta b{display:block;font-size:17px}.cta .s{font-size:13px;color:var(--gris)}.cta-acciones{display:flex;gap:10px;flex-wrap:wrap}.cta-acciones .btn{font-size:13px}
#contactoEmpresa{width:min(520px,calc(100% - 32px));padding:28px;border:1px solid var(--linea);border-radius:20px;color:var(--tinta);max-height:90vh;overflow:auto}#contactoEmpresa::backdrop{background:#17202C80}#contactoEmpresa h2{font-size:26px;margin:12px 0}.contacto-cab{display:flex;align-items:center;justify-content:space-between}#contactoEmpresa label{display:block;margin:18px 0 8px}#contactoEmpresa textarea{width:100%;resize:vertical}#contactoEstado:empty{display:none}
@media(max-width:1199px){.directorio-empresas .lista{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px){.directorio-empresas .lay{grid-template-columns:200px minmax(0,1fr);gap:24px}.directorio-empresas .emp{padding:18px}.emp .acc{flex-wrap:nowrap}.directorio-empresas .cta{flex-direction:column;align-items:flex-start}}
@media(max-width:900px){.directorio-empresas .lay{grid-template-columns:1fr}.directorio-empresas .filtros{position:static;max-height:none;padding:0 16px;border:1px solid var(--linea);border-radius:12px}.directorio-empresas .filtros summary{display:flex;align-items:center;gap:10px;cursor:pointer;padding:14px 0}.filtros summary .i:last-child{margin-left:auto}.filtros-cab>b{display:none}}
@media(max-width:650px){.directorio-empresas .lista{grid-template-columns:1fr}.directorio-empresas .emp{padding:22px}.orden{justify-content:space-between;width:100%}.barra-res{gap:14px}.directorio-empresas .cta{padding:22px}.cta-acciones{width:100%}.cta-acciones .btn{flex:1}.directorio-empresas .emp .cab{grid-template-columns:minmax(0,1fr) 112px}.directorio-empresas .emp .ph.logo{width:112px}.directorio-empresas .emp .acc .btn{font-size:13px}.emp .acc .btn{white-space:normal}}
@media(prefers-reduced-motion:reduce){.directorio-empresas .emp{transition:none}}

