/* ==========================================================================
   WasaPlus Oficial — estilos no críticos (se cargan diferidos)
   ========================================================================== */

/* ---------- Selector de idioma ---------- */
.lang-switch{position:relative}
.lang-switch summary{list-style:none}
.lang-switch summary::-webkit-details-marker{display:none}
.lang-menu{position:absolute;inset-inline-end:0;top:calc(100% + 10px);background:#fff;
  border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-1);padding:7px;
  margin:0;list-style:none;min-width:210px;z-index:70;max-height:62vh;overflow-y:auto}
.lang-menu a{display:flex;align-items:center;gap:10px;padding:10px 13px;border-radius:9px;
  color:var(--ink);font-weight:600;font-size:.93rem}
.lang-menu a:hover{background:var(--tint);color:var(--blue-700)}
[dir=rtl] .lang-menu{inset-inline-end:auto;inset-inline-start:0}

/* ---------- Secciones ---------- */
.sec{padding:66px 0;position:relative}
.sec-tint{background:linear-gradient(180deg,#fff,var(--tint) 55%,#fff)}
.sec>.wrap>h2{margin-bottom:.55em;text-wrap:balance}
.prose{color:#20404F}

/* El texto ocupa el mismo ancho y el mismo margen que el titular que lo
   encabeza y que el resto de secciones: nada queda descolgado ni desplazado. */
.sec .prose,.sec .lead{max-width:none}
.sec-article .keypoints{margin-top:26px}
[dir=rtl] .prose{max-width:none}
.prose.rich p{margin:0 0 1.1em;line-height:1.78}
.prose.rich strong{color:var(--ink);font-weight:700}
.lead{font-size:1.08rem;color:var(--muted);max-width:62ch}

/* Separación entre bloques claros consecutivos */
.sec+.sec:not(.sec-tint){border-top:1px solid var(--line)}
.sec-tint+.sec{border-top:0}

/* ---------- Índice de contenidos ---------- */
.toc{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 30px;
  box-shadow:var(--sh-1)}
.toc-h{font-size:.78rem;margin:0 0 16px;text-transform:uppercase;letter-spacing:.11em;
  color:var(--muted);font-weight:800}
.toc ol{margin:0;padding:0;list-style:none;counter-reset:toc;
  columns:2;column-gap:44px}
.toc li{margin:0 0 9px;break-inside:avoid;counter-increment:toc;
  display:flex;gap:11px;align-items:baseline}
.toc li::before{content:counter(toc,decimal-leading-zero);font-family:var(--mono);
  font-size:.74rem;color:var(--blue);font-weight:700;flex:0 0 auto}
.toc a{color:#20404F;font-size:.95rem;font-weight:600;line-height:1.45}
.toc a:hover{color:var(--blue-700);text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.toc ol{columns:1}.toc{padding:22px}}

/* ---------- Puntos clave / listas de definición ---------- */
.keypoints{display:grid;gap:2px;margin:0;background:var(--line);
  border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.keypoints.two{grid-template-columns:1fr 1fr}
.keypoints>div{background:#fff;padding:19px 22px}
.keypoints dt{font-weight:750;color:var(--ink);margin-bottom:4px;letter-spacing:-.01em}
.keypoints dd{margin:0;color:var(--muted);line-height:1.62;font-size:.95rem}
@media(max-width:760px){.keypoints.two{grid-template-columns:1fr}}

/* ---------- Listas con verificación ---------- */
.checklist{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.checklist li{position:relative;padding-inline-start:34px;line-height:1.65;color:#20404F}
.checklist li::before{content:"";position:absolute;inset-inline-start:0;top:.42em;
  width:19px;height:19px;border-radius:50%;background:var(--tick);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20 6L9 17l-5-5' fill='none' stroke='black' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/13px no-repeat,linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask-composite:exclude}

/* ---------- Tarjetas de funciones ---------- */
.grid-features{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}
.fcard{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;
  transition:transform .18s var(--ease),box-shadow .18s var(--ease),border-color .18s var(--ease)}
.fcard:hover{transform:translateY(-3px);box-shadow:var(--sh-1);border-color:#C6DFEE}
.fico{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;
  background:var(--tint);font-size:1.35rem;margin-bottom:14px}
.fcard h3{font-size:1.06rem;margin:0 0 6px}
.fcard h3 a{color:var(--ink)}
.fcard h3 a:hover{color:var(--blue-700)}
.fcard p{color:var(--muted);margin:0;font-size:.95rem;line-height:1.6}
@media(max-width:900px){.grid-features{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.grid-features{grid-template-columns:1fr}}

/* ---------- Funciones explicadas en detalle ---------- */
.feature-long{border-top:1px solid var(--line);padding:26px 0}
.feature-long:first-of-type{border-top:0;padding-top:8px}
.feature-long h3{margin:0 0 9px;display:flex;align-items:center;gap:11px}
.feature-long h3 span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;
  background:var(--tint);font-size:1.05rem;flex:0 0 auto}
.feature-long p{margin:0 0 14px;line-height:1.72;color:#20404F}
.mini-steps{margin:0;padding:0;list-style:none;display:grid;gap:7px;
  border-inline-start:2px solid var(--tint);padding-inline-start:18px}
.mini-steps li{color:var(--muted);font-size:.94rem;position:relative}
.mini-steps li::before{content:"";position:absolute;inset-inline-start:-23px;top:.62em;
  width:7px;height:7px;border-radius:50%;background:var(--blue)}

/* ---------- Tabla comparativa y ficha técnica ---------- */
.table-wrap{overflow-x:auto;margin-top:30px;border:1px solid var(--line);
  border-radius:var(--r-lg);background:#fff;-webkit-overflow-scrolling:touch}
.cmp{width:100%;border-collapse:collapse;min-width:440px}
.cmp th,.cmp td{padding:14px 20px;text-align:start;border-bottom:1px solid var(--line);font-size:.96rem}
.cmp thead th{background:var(--deep);color:#fff;font-weight:700;font-size:.82rem;
  text-transform:uppercase;letter-spacing:.07em;position:sticky;top:0}
.cmp tbody tr:nth-child(even){background:#FAFDFF}
.cmp tbody tr:last-child td{border-bottom:0}
.cmp .yes{color:var(--tick-ink);font-weight:750}
.cmp .no{color:#A64B4B;font-weight:650}
.specs-table th{width:44%;background:#FAFDFF;color:var(--muted);font-weight:650;
  font-size:.84rem;text-transform:uppercase;letter-spacing:.06em}
.specs-table td{font-family:var(--mono);font-weight:650;font-variant-numeric:tabular-nums}

/* ---------- Pasos numerados ---------- */
.steps{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:12px}
.steps li{display:flex;gap:18px;align-items:flex-start;background:#fff;
  border:1px solid var(--line);border-radius:var(--r);padding:19px 22px;
  transition:border-color .18s var(--ease)}
.steps li:hover{border-color:#C6DFEE}
.stepn{flex:0 0 auto;width:34px;height:34px;border-radius:10px;
  background:var(--deep);color:#fff;font-family:var(--mono);font-weight:700;font-size:.92rem;
  display:grid;place-items:center}
.steps b{display:block;margin-bottom:3px;font-size:1.02rem;letter-spacing:-.01em}
.steps p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.62}

/* ---------- Ventajas y desventajas ---------- */
.proscons{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.proscons>div{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px 26px}
.proscons h2{font-size:1.1rem;margin:0 0 15px;display:flex;align-items:center;gap:9px}
.proscons h2::before{content:"";width:9px;height:9px;border-radius:50%}
.pros h2::before{background:var(--tick)}
.cons h2::before{background:#D08A5F}
.proscons ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.proscons li{font-size:.95rem;line-height:1.6;color:#20404F;padding-inline-start:18px;position:relative}
.proscons li::before{content:"";position:absolute;inset-inline-start:0;top:.62em;
  width:6px;height:6px;border-radius:50%;background:var(--line)}
.pros{border-top:3px solid var(--tick)}
.cons{border-top:3px solid #D08A5F}
@media(max-width:760px){.proscons{grid-template-columns:1fr}}

/* ---------- Chips de países ---------- */
.chips{list-style:none;padding:0;margin:28px 0 0;display:flex;flex-wrap:wrap;gap:9px}
.chips li{background:#fff;border:1px solid var(--line);border-radius:999px;
  padding:9px 17px;font-weight:650;color:#20404F;font-size:.92rem}

/* ---------- Lista de versiones ---------- */
.vlist{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:10px}
.vlist li{display:flex;align-items:center;justify-content:space-between;gap:18px;
  background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:15px 20px}
.vlist b{font-family:var(--mono);font-weight:700;letter-spacing:-.02em}
.vlist small{display:block;color:var(--muted);font-weight:500;font-size:.84rem;font-family:var(--sans)}
.vcur{border-color:var(--blue);background:linear-gradient(180deg,#fff,var(--tint));
  box-shadow:0 0 0 3px rgba(23,169,234,.1)}
.btn-mini{display:inline-flex;align-items:center;background:var(--deep);color:#fff;font-weight:700;
  padding:10px 20px;border-radius:10px;white-space:nowrap;font-size:.9rem;
  transition:background .16s var(--ease),transform .16s var(--ease)}
.btn-mini:hover{background:var(--blue-700);color:#fff;transform:translateY(-1px)}
.btn-mini.ghost{background:#fff;color:var(--blue-700);border:1px solid var(--line)}
.btn-mini.ghost:hover{background:var(--tint);border-color:var(--blue);color:var(--blue-700)}

/* ---------- FAQ ---------- */
.faq{margin-top:28px;display:grid;gap:10px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:var(--r);
  padding:0 22px;transition:border-color .18s var(--ease),box-shadow .18s var(--ease)}
.faq details[open]{border-color:#C6DFEE;box-shadow:var(--sh-1)}
.faq summary{cursor:pointer;font-weight:700;color:var(--ink);padding:17px 34px 17px 0;
  list-style:none;position:relative;line-height:1.45}
[dir=rtl] .faq summary{padding:17px 0 17px 34px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;inset-inline-end:0;top:50%;width:13px;height:13px;
  margin-top:-6px;background:var(--blue);transition:transform .22s var(--ease);
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 9l6 6 6-6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat;
  mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 9l6 6 6-6' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/></svg>") center/contain no-repeat}
.faq details[open] summary::after{transform:rotate(180deg)}
.faq details p{margin:0 0 18px;color:var(--muted);line-height:1.68}

/* ---------- Tutoriales ---------- */

/* Dos columnas: guía a la izquierda y descarga siempre visible a la derecha */
.tut-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:46px;align-items:start}
.tut-main{min-width:0;max-width:820px}
.tut-side{position:sticky;top:88px}
.dl-card--side{padding:22px;box-shadow:var(--sh-1);border:1px solid var(--line)}
.dl-card--side::after{display:none}
.dl-card--side .dl-app img{width:48px;height:48px;border-radius:13px}
.dl-card--side .dl-specs{grid-template-columns:1fr 1fr;margin-bottom:16px}
.dl-card--side .dlgate__btn{padding:15px 18px;font-size:1rem}
/* En escritorio manda la tarjeta lateral, así que el botón del artículo sobra */
.tut-cta{display:none}
@media(max-width:1000px){
  .tut-layout{grid-template-columns:1fr;gap:0}
  .tut-main{max-width:none}
  /* Sin espacio para la columna lateral: la descarga pasa dentro del artículo,
     después del contenido y antes de las guías relacionadas. */
  .tut-side{display:none}
  .tut-cta{display:flex}
}

/* Miniatura de las tarjetas de guía */
.tcard{position:relative;display:flex;flex-direction:column;padding:0;overflow:hidden}
.tcard-thumb{position:relative;display:grid;place-items:center;height:104px;
  background:linear-gradient(150deg,var(--deep) 0%,var(--deep-2) 100%);
  border-bottom:1px solid var(--line);overflow:hidden}
.tcard-thumb::before{content:"";position:absolute;inset:0;opacity:.5;
  background-image:radial-gradient(rgba(255,255,255,.12) 1px,transparent 1px);
  background-size:16px 16px}
.tcard-ico{position:relative;font-size:2.1rem;line-height:1;filter:drop-shadow(0 3px 8px rgba(0,0,0,.3))}
.tcard-thumb .tnum{position:absolute;top:10px;inset-inline-end:12px;font-family:var(--mono);
  font-size:.78rem;font-weight:700;color:#BFE0F2;background:rgba(255,255,255,.12);
  border-radius:6px;padding:2px 7px;backdrop-filter:blur(4px)}
.tcard h2,.tcard h3{font-size:1.05rem;margin:16px 20px 8px;line-height:1.38}
.tcard h2 a,.tcard h3 a{color:var(--ink);text-decoration:none}
.tcard h2 a:hover,.tcard h3 a:hover{color:var(--blue-700)}
.tcard p{color:var(--muted);font-size:.94rem;margin:0 20px}
.tcard-meta{font-family:var(--mono);font-size:.79rem;color:var(--muted);
  margin:14px 20px 18px!important;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.tcard-meta a{font-family:var(--sans);font-weight:700;font-size:.88rem}
.tcard:hover .tcard-ico{transform:scale(1.08);transition:transform .2s var(--ease)}
.tut-grid{margin-top:32px}
.tut-related{margin-bottom:30px}

.crumbs{font-size:.87rem;color:var(--muted);margin-bottom:18px}
.crumbs a{color:var(--blue-700);font-weight:600}
.tut-detail h1{font-size:clamp(1.7rem,1.2rem + 2vw,2.3rem);margin:0 0 10px}
.tut-detail h2{font-size:1.32rem;margin:40px 0 16px;padding-top:22px;border-top:1px solid var(--line)}
.tut-meta{font-family:var(--mono);color:var(--muted);font-size:.83rem;margin:0 0 28px;
  padding-bottom:22px;border-bottom:1px solid var(--line)}
.tut-cta{margin:34px 0;justify-content:center}
.tut-cta .dlgate{width:100%;max-width:420px}

/* ---------- Páginas legales ---------- */
.legal h1{margin-bottom:8px}
.legal-date{font-family:var(--mono);color:var(--muted);font-size:.84rem;margin:0 0 30px;
  padding-bottom:20px;border-bottom:1px solid var(--line)}
.legal-body{max-width:74ch}
.legal-body h2{font-size:1.24rem;margin-top:1.8em}
.legal-body p{color:#20404F;line-height:1.75}

/* ---------- Formulario de contacto ---------- */
.contact-form{display:grid;gap:17px;margin:30px 0;max-width:540px}
.contact-form label{display:grid;gap:7px;font-weight:650;color:var(--ink);font-size:.94rem}
.contact-form input,.contact-form textarea{font:inherit;padding:13px 15px;border:1px solid var(--line);
  border-radius:var(--r-sm);background:#fff;color:var(--ink);width:100%}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(23,169,234,.16)}
.btn-primary{display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(150deg,var(--blue),var(--blue-700));color:#fff;font-weight:800;
  padding:14px 30px;border-radius:var(--r);border:0;cursor:pointer;font-size:1rem;width:auto;
  box-shadow:0 10px 26px -12px rgba(11,124,190,.75);transition:transform .16s var(--ease)}
.btn-primary:hover{color:#fff;transform:translateY(-2px)}
.alert-ok{background:#E8FBF0;border:1px solid #B6EBCC;color:var(--tick-ink);
  padding:14px 18px;border-radius:var(--r-sm);font-weight:600}

/* ---------- Pie de página ---------- */
.site-foot{background:var(--deep);color:#A8C8DB;margin-top:0;padding:56px 0 30px;font-size:.94rem}
.foot-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.2fr;gap:38px}
.foot-brand .brand{color:#fff;margin-bottom:14px}
.foot-brand p{color:#8FB4CA;max-width:34ch;line-height:1.65}
.foot-col h3{color:#fff;font-size:.78rem;text-transform:uppercase;letter-spacing:.11em;
  margin:0 0 15px;font-weight:800}
.foot-col a{display:block;color:#A8C8DB;padding:5px 0;font-weight:500}
.foot-col a .flag{margin-inline-end:9px;box-shadow:0 0 0 1px rgba(255,255,255,.22)}
.foot-col a:hover{color:#fff}
.foot-bottom{margin-top:40px;padding-top:24px;border-top:1px solid rgba(255,255,255,.11)}
.foot-bottom p{margin:0 0 7px;color:#7FA5BC;font-size:.85rem;line-height:1.6}
.disclaimer-note{max-width:86ch}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr;gap:30px}}
@media(max-width:560px){.foot-grid{grid-template-columns:1fr}}

/* ---------- Utilidades ---------- */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- Formulario de contacto ---------- */
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.alert-err{background:#FDEEEA;border:1px solid #F3C4B6;color:#96422A;
  padding:14px 18px;border-radius:var(--r-sm);font-weight:600}
.alert-ok{display:flex;align-items:center;gap:10px}
.form-note{font-size:.86rem;color:var(--muted);margin:0}

/* ---------- Infografías (SVG en línea) ---------- */
.fig{margin:32px 0 0;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);
  padding:22px 24px;overflow:hidden}
.sec-tint .fig{background:#fff}
.fig svg{width:100%;height:auto;display:block}
.fig figcaption{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);
  color:var(--muted);font-size:.88rem;line-height:1.55;text-align:start}

/* Tipografía dentro del SVG */
.fig text{font-family:var(--sans);fill:var(--ink)}
.fig .fig-cap{font-size:13px;font-weight:700;fill:var(--muted);
  text-transform:uppercase;letter-spacing:.07em}
.fig .fig-name{font-size:15px;font-weight:700;fill:#fff}
.fig .fig-sub{font-size:11px;fill:#9FE0FF}
.fig .fig-t{font-size:13px;fill:#20404F}
.fig .fig-lab{font-size:14px;font-weight:700;fill:var(--ink)}
.fig .fig-val{font-size:13px;font-weight:700;fill:var(--blue-700);font-family:var(--mono)}
.fig .fig-val-muted{font-size:13px;font-weight:600;fill:var(--muted);font-family:var(--mono)}
.fig .fig-num{font-size:14px;font-weight:800;fill:#fff;text-anchor:middle;font-family:var(--mono)}
.fig .fig-warn{font-size:12px;font-weight:600;fill:#96422A}
.fig .fig-good{font-size:12px;font-weight:600;fill:#0A7A3C}
.fig .fig-head-bad{font-size:15px;font-weight:800;fill:#96422A}
.fig .fig-head-good{font-size:15px;font-weight:800;fill:#0A7A3C}
.fig .fig-tick-blue{font-size:14px;font-weight:800;fill:var(--blue);letter-spacing:-2px}
.fig .fig-tick-grey{font-size:14px;font-weight:800;fill:#9FC4D9;letter-spacing:-2px}
.fig .fig-tick-big{font-size:30px;font-weight:800;text-anchor:middle;letter-spacing:-4px}
.fig .fig-ico{font-size:26px;fill:#fff;text-anchor:middle}
/* Dentro del SVG la maquetación se mantiene de izquierda a derecha: las
   coordenadas son fijas y el texto árabe o urdu se ordena bien por sí solo.
   Los valores técnicos se aíslan para que «1 GB» no se lea «GB 1». */
.fig svg{direction:ltr}
.fig .fig-val,.fig .fig-val-muted,.fig .fig-num,.fig .fig-tick-big{
  direction:ltr;unicode-bidi:isolate}
[dir=rtl] .fig text,[dir=rtl] .fig .fig-step,[dir=rtl] .fig .fig-li,
[dir=rtl] .fig .fig-node,[dir=rtl] .fig .fig-mini,[dir=rtl] .fig .fig-warnbox,
[dir=rtl] .fig .fig-node-w,[dir=rtl] .fig .fig-badge,[dir=rtl] .fig .fig-flow{
  direction:rtl;unicode-bidi:plaintext}
[dir=rtl] .fig figcaption{text-align:right}

/* Bloques de texto dentro del SVG */
.fig .fig-step,.fig .fig-li,.fig .fig-node,.fig .fig-mini,.fig .fig-warnbox,.fig .fig-node-w{
  font-family:var(--sans);color:var(--ink);line-height:1.3}
.fig .fig-step{font-size:12.5px;font-weight:650}
.fig .fig-li{font-size:13px;color:#20404F}
.fig .fig-node{font-size:12.5px;font-weight:650;text-align:center}
.fig .fig-node-w{font-size:13px;font-weight:700;color:#fff;text-align:center}
.fig .fig-mini{font-size:12px;font-weight:650;text-align:center;color:#20404F}
.fig .fig-warnbox{font-size:13px;font-weight:600;color:#7A5320}
.fig .fig-flow{display:flex;flex-direction:column;gap:2px;align-items:flex-start}
.fig .fig-flow .s{font-size:12.5px;font-weight:600;color:#20404F}
.fig .fig-flow .s.bad{color:#96422A}
.fig .fig-flow .s.good{color:#0A7A3C}
.fig .fig-flow .a{font-size:12px;color:#9FC4D9;line-height:1}

@media(max-width:640px){
  .fig{padding:16px;border-radius:var(--r)}
  .fig figcaption{font-size:.84rem}
}
.fig .fig-badge{font-size:11.5px;font-weight:700;line-height:1.25;font-family:var(--sans)}
.fig .fig-badge.bad{color:#96422A}
.fig .fig-badge.good{color:#0A7A3C}

/* Las infografías fuera de pantalla no se dibujan hasta acercarse.
   El hueco ya está reservado con aspect-ratio, así que no hay saltos
   ni se descuadran los enlaces del índice. */
.fig svg{content-visibility:auto;contain-intrinsic-size:auto 1px}
.fig .fig-barlab{font-family:var(--sans);font-size:14px;font-weight:700;color:var(--ink);
  line-height:1.25;display:flex;align-items:center;height:60px}
[dir=rtl] .fig .fig-barlab{justify-content:flex-start}

/* ---------- Portada escrita a mano desde el panel ---------- */
.home-custom{padding:0}
.home-custom>section,.home-custom>.sec{padding:60px 0}
.home-custom .wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:22px}
.home-custom h2{font-size:clamp(1.45rem,1.1rem + 1.4vw,2.1rem);margin:0 0 .55em}
.home-custom h3{margin-top:1.6em}
.home-custom p{line-height:1.75;color:#20404F;margin:0 0 1.05em}
.home-custom ul,.home-custom ol{line-height:1.72;color:#20404F;padding-inline-start:22px}
.home-custom li{margin:.4em 0}
.home-custom img{border-radius:var(--r);margin:1em 0}
.home-custom table{width:100%;border-collapse:collapse;margin:1.4em 0;background:#fff;
  border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.home-custom th,.home-custom td{padding:13px 18px;text-align:start;border-bottom:1px solid var(--line)}
.home-custom thead th{background:var(--deep);color:#fff;font-size:.84rem;
  text-transform:uppercase;letter-spacing:.06em}
.home-custom blockquote{margin:1.5em 0;padding:16px 22px;background:var(--tint);
  border-inline-start:4px solid var(--blue);border-radius:0 var(--r) var(--r) 0}
.home-custom .dlgate{margin:26px auto}

/* ---------- Bloques de publicidad ----------
   El alto mínimo se reserva antes de que llegue el anuncio, para que al
   aparecer no empuje el contenido hacia abajo (eso penaliza en Google). */
.ad{position:relative;margin:34px auto;max-width:var(--maxw);padding-inline:22px;
    display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;
    contain:layout}
.ad__aviso{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;
    color:#9DB4C2;font-weight:700;margin-bottom:8px;align-self:flex-start}
.ad .adsbygoogle{width:100%}
.ad--lateral{margin:22px 0 0;padding:0;max-width:none}
.ad--lateral .ad__aviso{align-self:center}
@media(max-width:1000px){
  /* En móvil el anuncio lateral estorba dentro de la columna: se oculta */
  .ad--lateral{display:none}
  .ad{margin:26px auto}
}
