/* QHM v1.29.1 · Páginas legales (aviso legal, privacidad, cookies) con el diseño de la web.
   El envoltorio del plugin usa la clase .qhm-lgl (no .qhm-legal: esa la usa el propio diseño de las páginas
   legales para su rejilla «índice + texto»; con el mismo nombre, todo el contenido quedaba en una columna estrecha).

   Dos modos:
   - .qhm-lgl--layout: el contenido ya trae su maqueta (migas, título, índice, estilos propios). El plugin solo
     quita el «envoltorio» de Elementor para que la maqueta use todo el ancho, y da formato al texto de Complianz.
   - .qhm-lgl--prose: contenido normal (editor de bloques, widgets de texto, Complianz). El plugin le da formato. */

/* ---------- Elementor sin restricciones de ancho dentro de las páginas legales ---------- */
.qhm-page .qhm-lgl .elementor,
.qhm-page .qhm-lgl .elementor-element,
.qhm-page .qhm-lgl .e-con-inner,
.qhm-page .qhm-lgl .elementor-widget-container{display:block;width:100%;max-width:none;min-width:0;margin:0;padding:0;flex:none}

/* ---------- Modo «prose»: texto con el formato del diseño ---------- */
.qhm-page .qhm-lgl--prose{max-width:760px;color:var(--qhm-text);font-size:16px;line-height:1.65;padding-bottom:16px}
.qhm-page .qhm-lgl--prose h1{margin:14px 0 0;font-size:36px;line-height:1.04;letter-spacing:-.03em;text-wrap:balance}
.qhm-page .qhm-lgl--prose h1 em{font-style:normal;color:var(--qhm-blue)}
.qhm-page .qhm-lgl--prose h2{margin:40px 0 12px;font-size:24px;line-height:1.2;scroll-margin-top:84px}
.qhm-page .qhm-lgl--prose h3{margin:28px 0 8px;font-size:19px;line-height:1.25}
.qhm-page .qhm-lgl--prose h4{margin:20px 0 6px;font-family:var(--qhm-fh);font-size:16px;font-weight:700;color:var(--qhm-ink)}
.qhm-page .qhm-lgl--prose p{margin:0 0 14px}
.qhm-page .qhm-lgl--prose strong,.qhm-page .qhm-lgl--prose b{color:var(--qhm-ink);font-weight:700}
.qhm-page .qhm-lgl--prose a{color:var(--qhm-blue);font-weight:600;text-decoration:underline;text-decoration-color:rgba(30,106,151,.35);text-underline-offset:2px;overflow-wrap:anywhere}
.qhm-page .qhm-lgl--prose a:hover{color:var(--qhm-blue-h);text-decoration-color:currentColor}
.qhm-page .qhm-lgl--prose ul,.qhm-page .qhm-lgl--prose ol{margin:0 0 16px;padding-left:22px}
.qhm-page .qhm-lgl--prose ul{list-style:disc}
.qhm-page .qhm-lgl--prose ol{list-style:decimal}
.qhm-page .qhm-lgl--prose li{margin:0 0 6px;padding-left:2px}
.qhm-page .qhm-lgl--prose li::marker{color:var(--qhm-blue)}
.qhm-page .qhm-lgl--prose dl{margin:0 0 20px;padding:18px 20px;background:var(--qhm-white);border:1px solid var(--qhm-line);border-radius:16px;display:grid;gap:4px 16px}
.qhm-page .qhm-lgl--prose dt{font-family:var(--qhm-fh);font-size:14px;font-weight:700;color:var(--qhm-ink)}
.qhm-page .qhm-lgl--prose dd{margin:0 0 10px;color:var(--qhm-text)}
@media (min-width:640px){
  .qhm-page .qhm-lgl--prose dl{grid-template-columns:140px minmax(0,1fr)}
  .qhm-page .qhm-lgl--prose dd{margin:0}
}
.qhm-page .qhm-lgl--prose table{width:100%;margin:0 0 20px;border-collapse:collapse;font-size:15px;line-height:1.45;background:var(--qhm-white);border:1px solid var(--qhm-line);border-radius:12px;display:block;overflow-x:auto}
.qhm-page .qhm-lgl--prose th,.qhm-page .qhm-lgl--prose td{padding:10px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--qhm-line)}
.qhm-page .qhm-lgl--prose th{font-family:var(--qhm-fh);font-weight:700;color:var(--qhm-ink);background:var(--qhm-sand)}

/* Desplegables genéricos (<details>). Los de Complianz (.cmplz-dropdown) conservan su propio diseño y su flecha. */
.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown){margin:0 0 10px;background:var(--qhm-white);border:1px solid var(--qhm-line);border-radius:12px;overflow:hidden}
.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown) > summary{cursor:pointer;padding:12px 16px;font-weight:600;color:var(--qhm-ink);display:flex;align-items:center;gap:12px;list-style:none}
.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown) > summary::-webkit-details-marker{display:none}
.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown) > summary > :first-child{margin-right:auto}
.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown) > summary::after{content:"";flex:none;width:9px;height:9px;border-right:2px solid var(--qhm-blue);border-bottom:2px solid var(--qhm-blue);transform:rotate(45deg) translateY(-2px);transition:transform .15s}
.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown)[open] > summary::after{transform:rotate(-135deg) translateY(-2px)}
.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown)[open] > summary{border-bottom:1px solid var(--qhm-line)}
.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown) > summary h3,.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown) > summary h4{margin:0 auto 0 0;font-size:17px;line-height:1.3}
.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown) > summary p{margin:0;font-size:14px;font-weight:500;color:var(--qhm-soft)}
.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown) > :not(summary){padding-left:16px;padding-right:16px}
.qhm-page .qhm-lgl--prose details:not(.cmplz-dropdown) > :last-child{padding-bottom:12px}

/* ---------- Modo «layout»: formato básico del texto con prioridad mínima ----------
   Solo vence al «reset» del diseño (que deja títulos, párrafos y listas sin márgenes ni viñetas). Cualquier
   estilo propio de la maqueta pegada (índice, tarjetas…) tiene más prioridad y se respeta. */
.qhm-page :where(.qhm-lgl--layout) h2{margin:36px 0 10px;font-size:26px;line-height:1.2;scroll-margin-top:84px}
.qhm-page :where(.qhm-lgl--layout) h3{margin:24px 0 8px;font-size:19px;line-height:1.25}
.qhm-page :where(.qhm-lgl--layout) p{margin:0 0 14px;line-height:1.65}
.qhm-page :where(.qhm-lgl--layout) ul{margin:0 0 16px;padding-left:22px;list-style:disc}
.qhm-page :where(.qhm-lgl--layout) ol{margin:0 0 16px;padding-left:22px;list-style:decimal}
.qhm-page :where(.qhm-lgl--layout) li{margin:0 0 6px;line-height:1.55}
.qhm-page :where(.qhm-lgl--layout) dl{margin:0 0 20px;display:grid;gap:2px 16px}
.qhm-page :where(.qhm-lgl--layout) dt{font-weight:700;color:var(--qhm-ink)}
.qhm-page :where(.qhm-lgl--layout) dd{margin:0 0 10px}
.qhm-page :where(.qhm-lgl--layout) a{color:var(--qhm-blue);text-decoration:underline;text-underline-offset:2px}
@media (min-width:640px){
  .qhm-page :where(.qhm-lgl--layout) dl{grid-template-columns:140px minmax(0,1fr)}
  .qhm-page :where(.qhm-lgl--layout) dd{margin:0}
}
/* Migas de pan y menús de la maqueta: sin viñetas ni sangría */
.qhm-page .qhm-lgl .qhm-crumbs ol{margin:0;padding:0;list-style:none}
.qhm-page .qhm-lgl .qhm-crumbs li{margin:0}
.qhm-page .qhm-lgl .qhm-crumbs a{text-decoration:none}

/* ---------- Complianz (en los dos modos) ---------- */
.qhm-page .qhm-lgl .cmplz-document{max-width:760px;font-family:var(--qhm-fb);font-size:16px;line-height:1.65;color:var(--qhm-text)}
.qhm-page .qhm-lgl .cmplz-document h2{margin:36px 0 10px;font-family:var(--qhm-fh);font-size:24px;line-height:1.2;color:var(--qhm-ink)}
.qhm-page .qhm-lgl .cmplz-document h3,.qhm-page .qhm-lgl .cmplz-document h4{margin:20px 0 8px;font-family:var(--qhm-fh);color:var(--qhm-ink)}
.qhm-page .qhm-lgl .cmplz-document p{margin:0 0 12px}
.qhm-page .qhm-lgl .cmplz-document ul{margin:0 0 14px;padding-left:22px;list-style:disc}
.qhm-page .qhm-lgl .cmplz-document a{color:var(--qhm-blue)}
.qhm-page .qhm-lgl .cmplz-dropdown summary h3,.qhm-page .qhm-lgl .cmplz-dropdown summary p{margin:0}

@media (min-width:768px){
  .qhm-page .qhm-lgl--prose{font-size:17px}
  .qhm-page .qhm-lgl--prose h1{font-size:48px}
  .qhm-page .qhm-lgl--prose h2{font-size:28px;margin-top:48px}
}
@media (min-width:1024px){
  .qhm-page .qhm-lgl--prose h1{font-size:58px}
}
