/* ---------- páginas de texto: legales y «quiénes somos» ----------
   Un documento largo que se lee, no una sección de portada. Lo único que
   importa aquí es el ancho de línea, el aire entre apartados y que las
   direcciones de correo largas no saquen la página de la pantalla. */

/* Blanca, no `--fondo`. Estas páginas van con la plantilla por defecto, así que
   se pintan DENTRO del contenedor del tema, que es blanco: con el gris de fondo
   quedaba un recuadro gris con borde en medio de la página y parecía un fallo.
   Es lo mismo que hace el carrito. Y el aire vertical se recorta, porque encima
   ya está el del contenedor. */
.opr-lg{background:var(--superficie) !important}
.opr-lg.opr-seccion{padding-top:clamp(34px,4vw,60px) !important; padding-bottom:clamp(44px,5vw,80px) !important}
.opr-lg .opr-lg-cabeza{margin-bottom:clamp(28px,3.4vw,42px) !important}
.opr-lg .opr-lg-cabeza h1{
  font-size:clamp(1.85rem,4vw,2.9rem) !important; font-weight:800 !important; line-height:1.04 !important;
  letter-spacing:-.03em !important; text-wrap:balance !important;
}
.opr-lg .opr-lg-fecha{margin-top:10px !important; font-size:.8125rem !important; color:var(--tenue) !important}

/* --- el cuerpo del documento --- */
 /* OJO con `ch`: es el ancho del CERO, no el de una letra media. En Public Sans
   el cero mide 10,18 px a 16 px y la minúscula media unos 9, así que `68ch` no
   da 68 caracteres de línea: da 77. Medido con el avance real de la
   tipografía, `60ch` deja la línea en los 68 que pide el documento 01. */
.opr-lg .opr-lg-doc{max-width:60ch !important}
.opr-lg .opr-lg-doc > *{overflow-wrap:anywhere !important}
.opr-lg .opr-lg-doc p{margin-bottom:16px !important; line-height:1.65 !important; color:var(--suave) !important; text-wrap:pretty !important}
.opr-lg .opr-lg-doc b,
.opr-lg .opr-lg-doc strong{font-weight:700 !important; color:var(--tinta) !important}
.opr-lg .opr-lg-doc i,
.opr-lg .opr-lg-doc em{font-style:italic !important}

.opr-lg .opr-lg-doc .opr-lg-entradilla{
  font-size:1.0625rem !important; line-height:1.6 !important; color:var(--suave) !important;
  padding-bottom:26px !important; margin-bottom:8px !important; border-bottom:1px solid var(--borde) !important;
  max-width:62ch !important;
}

.opr-lg .opr-lg-doc h2{
  margin-top:44px !important; margin-bottom:14px !important;
  font-size:1.3rem !important; font-weight:700 !important; line-height:1.28 !important; letter-spacing:-.02em !important;
  color:var(--tinta) !important; text-wrap:balance !important;
}
.opr-lg .opr-lg-doc h3{
  margin-top:28px !important; margin-bottom:10px !important;
  font-size:1.0625rem !important; font-weight:700 !important; line-height:1.35 !important; letter-spacing:-.012em !important;
  color:var(--tinta) !important;
}
.opr-lg .opr-lg-doc h2:first-child,
.opr-lg .opr-lg-doc h3:first-child{margin-top:0 !important}

.opr-lg .opr-lg-doc ul,
.opr-lg .opr-lg-doc ol{margin:0 0 18px !important; padding-left:0 !important; display:flex !important; flex-direction:column !important; gap:9px !important}
.opr-lg .opr-lg-doc li{
  position:relative !important; padding-left:24px !important; line-height:1.6 !important; color:var(--suave) !important;
}
.opr-lg .opr-lg-doc ul > li::before{
  content:"" !important; position:absolute !important; left:6px !important; top:11px !important;
  width:5px !important; height:5px !important; border-radius:999px !important; background:var(--p400) !important;
}
.opr-lg .opr-lg-doc ol{counter-reset:opr-lg !important}
.opr-lg .opr-lg-doc ol > li{counter-increment:opr-lg !important}
.opr-lg .opr-lg-doc ol > li::before{
  content:counter(opr-lg) "." !important; position:absolute !important; left:0 !important; top:0 !important;
  font-size:.875rem !important; font-weight:700 !important; color:var(--p500) !important;
  font-variant-numeric:tabular-nums !important;
}

.opr-lg .opr-lg-doc a{
  color:var(--tinta) !important; font-weight:600 !important;
  text-decoration:underline !important; text-underline-offset:3px !important;
  text-decoration-color:var(--borde2) !important;
  transition:text-decoration-color .15s ease !important;
}
.opr-lg .opr-lg-doc a:hover{text-decoration-color:var(--tinta) !important}

/* Un nombre de cookie o de campo. No es tipografía mono —el documento 01 la
   descarta— : es la misma letra en una caja, que ya distingue de sobra. */
.opr-lg .opr-lg-doc code{
  padding:2px 7px !important; border-radius:6px !important; background:var(--p100) !important;
  font-size:.9375rem !important; font-weight:600 !important; color:var(--tinta) !important;
  overflow-wrap:anywhere !important;
}

/* --- los huecos por rellenar --- */
.opr-lg .opr-lg-hueco{
  display:inline-block !important; padding:2px 9px !important; border-radius:6px !important;
  background:var(--av100) !important; color:var(--av900) !important;
  font-size:.9375rem !important; font-weight:700 !important;
  box-shadow:inset 0 0 0 1.5px var(--av500) !important;
}

/* --- el aviso de que faltan datos: solo lo ve quien administra --- */
/* el aviso acompaña al ancho del documento */
.opr-lg .opr-lg-pendiente{
  display:flex !important; gap:11px !important; align-items:flex-start !important;
  margin-bottom:28px !important; padding:14px 16px !important; border-radius:var(--radio-s) !important;
  background:var(--av100) !important; color:var(--av900) !important; font-size:.90625rem !important; line-height:1.55 !important;
  max-width:60ch !important;
}
.opr-lg .opr-lg-pendiente svg{width:19px !important; height:19px !important; flex:none !important; margin-top:1px !important; color:var(--av600) !important}
.opr-lg .opr-lg-pendiente b{font-weight:700 !important}

/* --- los otros documentos --- */
.opr-lg .opr-lg-otros{
  margin-top:clamp(40px,5vw,64px) !important; padding-top:24px !important; border-top:1px solid var(--borde) !important;
  display:flex !important; flex-wrap:wrap !important; gap:10px !important; align-items:center !important;
}
.opr-lg .opr-lg-otros span{font-size:.8125rem !important; color:var(--tenue) !important; margin-right:4px !important}
.opr-lg .opr-lg-otros a{
  padding:9px 16px !important; border-radius:999px !important; font-size:.90625rem !important; font-weight:600 !important;
  color:var(--tinta) !important; background:var(--superficie) !important;
  box-shadow:inset 0 0 0 1.5px var(--borde2) !important;
  transition:background .15s ease, box-shadow .15s ease !important;
}
.opr-lg .opr-lg-otros a:hover{background:var(--p50) !important; box-shadow:inset 0 0 0 1.5px var(--p500) !important}
