/**
 * Las condiciones del mantenimiento (BkMaintenanceTerms).
 *
 * - Las opciones contratadas (render(): `<li class="bk-check">`, `is-on` si se contrató): una caja que hace de viñeta,
 *   marcada o vacía, dentro del recuadro `.bk-contracted`. La usan la página de las condiciones y el diálogo de la venta.
 * - INVARIANTE: el recuadro no cuenta en la numeración de apartados, ni en la página ni en el diálogo ni en el PDF; las
 *   remisiones del texto («apartado 8») cuentan desde el primer apartado después del recuadro.
 * - `.bkmt-summary`: el «Resumen económico» de la copia personalizada (BkMaintenanceTermsSummary::render()): concepto,
 *   hoy y renovación; los totales en tinta; en móvil cada fila se apila con la etiqueta de su columna (`data-label`).
 * - `.page-cms-bkmt`: la página, en modo lectura sobre el marcado de los textos legales del tema (custom_cms.css):
 *   Montserrat en los títulos, Inter en el texto, columna de lectura, texto sin justificar.
 */
.bk-contracted { margin: 0 0 8px; padding: 20px 22px 8px; border-radius: 14px; background: #f3f7f9; }
.bk-contracted > h2 { counter-increment: none !important; margin-top: 0 !important; }
.bk-contracted > h2::before { content: none !important; }
.bk-contracted > h3 { margin-top: 14px; font-size: 13px; text-transform: uppercase; letter-spacing: .06em; }
.bk-contracted > p:last-child { font-size: .9em; color: #4a5866; }
.bk-checks { list-style: none !important; padding-left: 0 !important; margin-left: 0 !important; }
.bk-checks li::before { content: none !important; }
.bk-check { position: relative; padding-left: 30px !important; }
.bk-check__box { position: absolute; left: 0; top: .2em; width: 18px; height: 18px; border: 1.5px solid #8fa2b0; border-radius: 4px; background: #fff; }
.bk-check.is-on { color: #16202b; font-weight: 600; }
.bk-check.is-on .bk-check__box { border-color: #00769e; background: #00769e center / 12px no-repeat
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3.5 8.4 3 3 6-6.4' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }

/* La página */
.page-cms-bkmt .legal-document { max-width: 760px; font-family: Inter, "Inter respaldo", -apple-system, "Segoe UI", Arial, sans-serif; font-size: 17px; line-height: 1.7; color: #33404c; }
.page-cms-bkmt .legal-document h1 { margin: 8px 0 20px; padding: 0; border: 0; font: 800 clamp(30px, 4.4vw, 44px)/1.08 Montserrat, "Montserrat respaldo", Arial, sans-serif; letter-spacing: -.025em; color: #16202b; }
.page-cms-bkmt .legal-document h2 { margin: 52px 0 14px; font: 700 24px/1.25 Montserrat, "Montserrat respaldo", Arial, sans-serif; letter-spacing: -.015em; color: #16202b; scroll-margin-top: 90px; }
.page-cms-bkmt .legal-document h2::before { margin-right: .35em; }
.page-cms-bkmt .legal-document h3 { margin: 28px 0 8px; font: 700 17.5px/1.35 Montserrat, "Montserrat respaldo", Arial, sans-serif; color: #16202b; }
.page-cms-bkmt .legal-document p { margin: 0 0 16px; text-align: left; }
.page-cms-bkmt .legal-document ul { margin: 0 0 20px; }
.page-cms-bkmt .legal-document ul li { margin-bottom: 10px; }
.page-cms-bkmt .legal-document strong { color: #16202b; font-weight: 600; }
.page-cms-bkmt .legal-document .intro-text { margin: 0 0 32px; padding: 0; background: none; font-size: 19px; line-height: 1.6; color: #16202b; }
.page-cms-bkmt .bk-contracted { margin: 0 0 12px; padding: 26px 28px 12px; }
.page-cms-bkmt .legal-document .bk-contracted > h2 { font-size: 21px; color: #00769e; }
.page-cms-bkmt .legal-document .bk-contracted > h3 { margin-top: 18px; font: 600 13px/1.3 Inter, "Inter respaldo", Arial, sans-serif; letter-spacing: .06em; }
.page-cms-bkmt .legal-document .bk-contracted li { margin-bottom: 8px; }

/* Ficha: versión, fecha y PDF */
.bkmt-facts { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 24px; margin: 0 0 32px; padding: 14px 18px; border-top: 2px solid #00769e; background: #f3f7f9; }
.bkmt-facts dl { display: flex; flex-wrap: wrap; gap: 10px 32px; margin: 0; }
.bkmt-facts dt { font: 600 12px/1.3 Inter, "Inter respaldo", Arial, sans-serif; letter-spacing: .06em; text-transform: uppercase; color: #4a5866; }
.bkmt-facts dd { margin: 2px 0 0; font: 600 16px/1.3 Inter, "Inter respaldo", Arial, sans-serif; color: #16202b; }
.bkmt-pdf { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border: 1.5px solid #00769e; border-radius: 10px; font: 600 15px/1 Inter, "Inter respaldo", Arial, sans-serif; color: #00769e !important; text-decoration: none !important; background: #fff; }
.bkmt-pdf:hover, .bkmt-pdf:focus-visible { background: #00769e; color: #fff !important; }
.bkmt-pdf svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bkmt-old { padding: 12px 16px; border-left: 4px solid #eda32b; background: #fff8eb; }

/* Resumen económico */
.bkmt-summary { width: 100%; margin: 4px 0 18px; border-collapse: collapse; border-top: 2px solid #00769e; font-size: .94em; }
.bkmt-summary th, .bkmt-summary td { padding: 10px 12px; border-bottom: 1px solid #e1e8ed; text-align: left; vertical-align: top; font-weight: 400; }
.bkmt-summary thead th { background: #f3f7f9; font: 600 12px/1.3 Inter, "Inter respaldo", Arial, sans-serif; letter-spacing: .06em; text-transform: uppercase; color: #4a5866; }
.bkmt-summary td:nth-child(2) { white-space: nowrap; text-align: right; font-variant-numeric: tabular-nums; }
.bkmt-summary thead th:nth-child(2) { text-align: right; }
.bkmt-summary td[colspan] { text-align: left; white-space: normal; color: #4a5866; }
.bkmt-summary tbody th { color: #16202b; }
.bkmt-summary .is-total th, .bkmt-summary .is-total td { font-weight: 700; color: #16202b; background: #f3f7f9; }
.bkmt-summary-note { font-size: .92em; color: #4a5866; }

@media (max-width: 575px) {
  .bkmt-summary thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .bkmt-summary tr { display: block; padding: 10px 0; border-bottom: 1px solid #e1e8ed; }
  .bkmt-summary th, .bkmt-summary td { display: block; padding: 2px 12px; border: 0; text-align: left !important; white-space: normal !important; }
  .bkmt-summary td:empty { display: none; }
  .bkmt-summary td[data-label]::before { content: attr(data-label) ": "; color: #4a5866; font-weight: 400; }

  .page-cms-bkmt .legal-document { font-size: 16px; }
  .page-cms-bkmt .legal-document .intro-text { font-size: 17px; }
  .page-cms-bkmt .legal-document h2 { margin-top: 40px; font-size: 21px; }
  .page-cms-bkmt .bk-contracted { padding: 20px 18px 8px; margin-left: -4px; margin-right: -4px; }
  .bkmt-facts { padding: 14px 16px; }
  .bkmt-pdf { width: 100%; justify-content: center; }
}
