/* Fichas (ECF, MVP): solo lo que el CSS base no cubre. Móvil primero. */
.pasos-nav ol { display: flex; flex-wrap: wrap; gap: .4rem; list-style: none; padding: 0; margin: 0 0 1rem; }
.pasos-nav a, .pasos-nav span { display: inline-block; padding: .25rem .6rem; border-radius: 999px; border: 1px solid currentColor; font-size: .875rem; text-decoration: none; }
.pasos-nav [aria-current="step"] { font-weight: 700; }
.fichas-lista { list-style: none; padding: 0; display: grid; gap: 1rem; }
.ficha-cab { display: grid; gap: .5rem; }
.ficha-logo { width: 96px; height: 96px; object-fit: contain; border-radius: 12px; }
.ficha-sub { margin: 0; opacity: .8; }
.ficha-servicios { columns: 1; padding-left: 1.2rem; }
.ficha-fotos, .fotos-panel { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
.ficha-fotos img, .fotos-panel img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 8px; display: block; }
.dia { display: grid; grid-template-columns: 6.5rem 1fr; gap: .4rem; align-items: center; margin-bottom: .5rem; }
.dia .tramos { display: flex; flex-wrap: wrap; gap: .4rem; }
.dia input[type="time"] { min-width: 6.5rem; }
.ficha-horario { display: grid; grid-template-columns: auto 1fr; gap: .2rem 1rem; }
.ficha-pie .form-acc { display: flex; flex-wrap: wrap; gap: .5rem; }
@media (min-width: 720px) {
  .ficha-servicios { columns: 2; }
  .ficha-fotos, .fotos-panel { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ficha-cab { grid-template-columns: auto 1fr; align-items: center; }
  .ficha-cab .ficha-logo { grid-row: span 3; }
}

/* JF m7: el desplegable de cada idioma, 44 px y 16 px */
.idioma-bloque>summary{min-height:44px;display:flex;align-items:center;font-size:1rem;cursor:pointer}
/* JF M2: la pregunta de presupuestos, grande y destacada */
.presu-pregunta{border:2px solid var(--ferro);padding:16px;margin:0 0 24px}.presu-pregunta-t{font:600 1.25rem/1.3 var(--sans);margin:0 0 8px}

/* EV1 v2 (23-oct): cabecera tipo perfil + lateral (contacto, presupuesto, aviso de ficha sin reclamar) */
.ficha-cab{gap:10px;padding-bottom:20px;border-bottom:1px solid var(--linea)}
.ficha-cab h1{font-size:clamp(1.875rem,6vw,2.75rem);margin:0}
.ficha-logo{width:72px;height:72px;border:1px solid var(--linea);background:var(--sup)}
.ficha-mono{display:grid;place-items:center;background:var(--sup2);border:0;color:var(--tinta);border-radius:var(--r2)}
.ficha-mono .picto{width:44px;height:44px}
.ficha-sub{opacity:1;color:var(--suave);font-size:1.0625rem}
.ficha-etqs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0}
.ficha-estado{font:500 .75rem/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:999px;border:1px dashed var(--linea2);color:var(--suave)}
.ficha-estado.es-rec{border-style:solid;border-color:currentColor;color:var(--ok)}
.ficha-cuerpo{display:grid;gap:0 40px}
.ficha-lado{display:grid;gap:16px;align-content:start}
.ficha-contacto{background:var(--sup);border:1px solid var(--linea2);border-radius:var(--r2);padding:16px}
.ficha-main .sec-t{font-size:1.25rem;border-top:1px solid var(--tinta);padding-top:12px}
@media (min-width:720px){.ficha-cab{grid-template-columns:auto 1fr}.ficha-cab .ficha-logo{grid-row:span 4}}
@media (min-width:960px){.ficha-cuerpo{grid-template-columns:minmax(0,1fr) 360px;align-items:start}.ficha-lado{grid-column:2;grid-row:1;position:sticky;top:16px;padding-top:24px}.ficha-main{grid-column:1;grid-row:1}}

/* EV2 (23-oct): ficha de escritorio a dos columnas reales y pictograma entero */
.ficha-logo{flex:none}.ficha-mono{overflow:visible}.ficha-mono .picto{width:40px;height:40px;overflow:visible}
.ficha-main>.sec:first-child{margin-top:24px}
.ficha-main .sec{margin-top:40px}
@media (min-width:960px){
  .ficha-cab{grid-template-columns:96px minmax(0,1fr);column-gap:28px;align-items:center;padding-bottom:28px}
  .ficha-cab .ficha-logo{grid-row:1/span 4;width:96px;height:96px;align-self:start}
  .ficha-mono .picto{width:52px;height:52px}
  .ficha-cuerpo{grid-template-columns:minmax(0,1fr) 340px;column-gap:56px}
  .ficha-main .sec{margin-top:48px}
  .ficha-main .prosa{max-width:72ch}
}

/* M6 (EC3B·S2) · ficha sin reclamar: escritorio, la barra lateral a la altura del nombre; móvil, el contenido antes que los avisos. */
.ficha-nombre{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px}
.ficha-tuya{font-weight:600;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}
@media (max-width:959.98px){
  .ficha{display:flex;flex-direction:column}
  .ficha .ficha-cuerpo,.ficha .ficha-lado{display:contents}
  .ficha>.ficha-cab{order:1}
  .ficha .ficha-contacto{order:2;margin-top:16px}
  .ficha .ficha-main{order:3}
  .ficha .aviso-sr{order:4;margin-top:40px}
  .ficha>.ficha-pie{order:5}
}
@media (min-width:960px){
  .ficha{display:grid;grid-template-columns:minmax(0,1fr) 340px;column-gap:56px;align-items:start}
  .ficha .ficha-cuerpo{display:contents}
  .ficha>.ficha-cab{grid-column:1;grid-row:1}
  .ficha .ficha-lado{grid-column:2;grid-row:1/span 3;align-self:start;position:sticky;top:16px;padding-top:0}
  .ficha .ficha-main{grid-column:1;grid-row:2}
  .ficha>.ficha-pie{grid-column:1;grid-row:3}
}
