/* ==========================================================================
   Volcana Labs — Páginas de servicio (diseño web, IA…). Se apoya en legal-v61.css.
   ========================================================================== */
.servicio .migas { margin:0 0 22px; color:var(--muted); font-size:13px; }
.servicio .migas a { color:var(--muted); text-decoration:none; }
.servicio .migas a:hover { color:var(--violet); text-decoration:underline; }
.servicio h1 { max-width:18ch; line-height:1.06; }
.servicio .servicio-entrada { margin:18px 0 28px; max-width:62ch; color:#2b2531; font-size:18px; line-height:1.65; }
.servicio-acciones { display:flex; flex-wrap:wrap; gap:12px; margin:0 0 12px; }
.legal-main .boton-primario,.legal-main .boton-secundario { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 22px; border-radius:999px; font-size:14px; font-weight:800; text-decoration:none; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.legal-main .boton-primario { color:#fff; background:linear-gradient(135deg,#865aff,#5d30dd); box-shadow:0 12px 30px rgba(112,71,235,.28); }
.legal-main .boton-primario:hover { transform:translateY(-1px); box-shadow:0 16px 36px rgba(112,71,235,.36); }
.legal-main .boton-secundario { color:var(--ink); border:1px solid #d9d0e6; background:#fff; }
.legal-main .boton-secundario:hover { border-color:var(--violet); }
.servicio-lista { list-style:none; padding:0 !important; display:grid; gap:12px; }
.servicio-lista li { padding:16px 18px; border:1px solid #e7dff4; border-radius:16px; background:#fff; }
.servicio-lista b { color:var(--ink); }
.servicio-pasos { counter-reset:paso; list-style:none; padding:0 !important; display:grid; gap:12px; }
.servicio-pasos li { counter-increment:paso; position:relative; padding:16px 18px 16px 62px; border-radius:16px; background:#f3eefc; }
.servicio-pasos li::before { content:counter(paso); position:absolute; left:18px; top:16px; width:30px; height:30px; display:grid; place-items:center; border-radius:50%; background:var(--violet); color:#fff; font-weight:800; font-size:14px; }
.servicio-pregunta { border-bottom:1px solid #e7dff4; padding:14px 0; }
.servicio-pregunta summary { cursor:pointer; font-weight:800; color:var(--ink); font-size:16px; list-style-position:outside; }
.servicio-pregunta p { margin:10px 0 0; }
.servicio-cierre { margin:48px 0 24px; padding:30px; border-radius:24px; background:var(--ink); color:#fff; }
.servicio-cierre h2 { margin:0 0 8px; color:#fff; }
.legal-main .servicio-cierre p { color:#d8cfe6; margin:0 0 20px; }
.legal-main .servicio-cierre .boton-secundario { background:transparent; color:#fff; border-color:rgba(255,255,255,.3); }
@media (max-width:760px){ .servicio .servicio-entrada{font-size:16.5px} .servicio-cierre{padding:24px} .servicio-acciones a{flex:1 1 100%} }
@media (prefers-reduced-motion:reduce){ .legal-main .boton-primario,.legal-main .boton-secundario{transition:none} }
/* Casos, reseñas y cambio de idioma */
.caso { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:24px; align-items:center; margin:0 0 28px; padding:18px; border:1px solid #e7dff4; border-radius:22px; background:#fff; }
.caso img { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; border-radius:14px; background:#f3eefc; }
.caso h3 { margin:6px 0 10px; font-size:24px; letter-spacing:-.03em; color:var(--ink); }
.caso dl { margin:0; display:grid; gap:4px; }
.caso dt { font-weight:800; color:var(--ink); font-size:13px; margin-top:6px; }
.caso dd { margin:0; color:#3a3442; font-size:15px; line-height:1.6; }
.resenas { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; margin:0 0 20px; }
.resena { margin:0; padding:18px; border-radius:18px; background:#f3eefc; }
.resena blockquote { margin:0 0 10px; color:var(--ink); font-size:15px; line-height:1.55; }
.resena figcaption { color:var(--muted); font-size:13px; }
.cambio-idioma { margin-right:12px; color:#fff; font-size:13px; font-weight:800; text-decoration:none; opacity:.85; }
.cambio-idioma:hover { opacity:1; text-decoration:underline; }
@media (max-width:760px){ .caso{grid-template-columns:1fr; padding:14px} .cambio-idioma{margin-right:8px} }
/* Selector de idioma (ES · EN · FR): mismos colores que la navegación de la cabecera */
.cambio-idiomas { display:inline-flex; gap:2px; padding:3px; border-radius:999px; background:#f8f4fc; border:1px solid #e5d8f3; }
.cambio-idiomas .cambio-idioma { margin:0; padding:5px 9px; border-radius:999px; color:#554465; font-size:12px; font-weight:800; letter-spacing:.04em; text-decoration:none; opacity:1; }
.cambio-idiomas a.cambio-idioma:hover { color:var(--violet); background:#fff; text-decoration:none; }
.cambio-idiomas .activo { background:#fff; color:#552a8c; box-shadow:0 1px 3px rgba(23,6,45,.12); }
@media (max-width:760px){ .cambio-idiomas .cambio-idioma{padding:5px 7px; font-size:11.5px} }
