/* ==========================================================================
   Swipet — sistema de diseño web v2 (29/09/2026)
   Lenguaje visual: el diseño de Luis (tinta, papel, coral y salvia; Futura enorme; líneas finas;
   tarjetas rectas y botones píldora). Estructura y contenido: prototipo v1 (coberturas, carencias,
   simulador, comparativa, FAQ, SEO y datos centralizados).
   ========================================================================== */

@font-face{font-family:"Futura LT";src:url("../fonts/FuturaLT-Book.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Futura LT";src:url("../fonts/FuturaLT-BookOblique.ttf") format("truetype");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Futura LT";src:url("../fonts/FuturaLT-Bold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Futura LT";src:url("../fonts/FuturaLT-Heavy.ttf") format("truetype");font-weight:900;font-style:normal;font-display:swap}

:root{
  --ink:#171512;         /* tinta: textos, fondos oscuros, botón oscuro */
  --ink-2:#2b2723;
  --paper:#fffdf9;       /* fondo general */
  --cream:#f6f1e9;       /* chips y paneles suaves */
  --coral:#ff6d62;       /* acción principal */
  --coral-hover:#ff8279;
  --coral-ink:#c23f36;   /* coral para texto pequeño (contraste AA) */
  --sage:#c9ddb8;        /* salvia (Brand Book #bfd1b2, versión de Luis) */
  --mint:#e2eed9;
  --white:#fff;
  --muted:#625e58;       /* texto secundario */
  --muted-2:#8f887f;     /* números y notas */
  --line:rgba(23,21,18,.14);
  --line-2:rgba(23,21,18,.08);
  --line-light:rgba(255,255,255,.18);

  --font:"Futura LT","Jost","Futura","Century Gothic",Arial,sans-serif;
  --max:1240px;
  --gutter:24px;
  --sec:120px;
  --header-h:84px;
  --ease:cubic-bezier(.2,.7,.2,1);
}
@media(max-width:900px){:root{--sec:85px}}
@media(max-width:600px){:root{--sec:72px;--gutter:18px;--header-h:70px}}

/* --- Base ------------------------------------------------------------------ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 12px)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-weight:400;font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
@media(max-width:600px){body{font-size:16px;padding-bottom:78px}}
img,svg,video{display:block;max-width:100%;height:auto}
picture{display:contents}
a{color:inherit;text-decoration:none}
p{margin:0 0 1em}
h1,h2,h3,h4{margin:0;font-weight:700;line-height:1.02;letter-spacing:-.035em;color:var(--ink)}
h3{font-size:clamp(20px,1.1vw + 14px,24px);line-height:1.15;letter-spacing:-.02em}
h4{font-size:18px;line-height:1.2;letter-spacing:-.01em}
h1,h2,h3{text-wrap:balance}
p,li{text-wrap:pretty}
strong,b{font-weight:700}
ul,ol{margin:0;padding:0}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--coral);outline-offset:3px}
::selection{background:var(--sage);color:var(--ink)}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:-999px;top:12px;z-index:200;background:#fff;color:var(--ink);padding:12px 16px}
.skip-link:focus{left:16px}

/* --- Maquetación ----------------------------------------------------------- */
.wrap{width:100%;max-width:calc(var(--max) + 2*var(--gutter));margin-inline:auto;padding-inline:var(--gutter)}
.wrap--narrow{max-width:calc(900px + 2*var(--gutter))}
.section{padding-block:var(--sec)}
.section--tight{padding-block:calc(var(--sec)*.6)}
.section--flush-top{padding-top:0}
.bg-cream{background:var(--cream)}
.bg-mint{background:var(--mint)}
.bg-sage{background:var(--sage)}
.bg-ink{background:var(--ink);color:#fff}
.bg-soft{background:var(--cream)}
.bg-grey{background:var(--paper)}
.grid{display:grid;gap:22px}
@media(min-width:760px){.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}}
.muted{color:var(--muted)}
.small{font-size:15px}
.xs{font-size:12px}
.center{text-align:center}

/* Etiqueta (eyebrow): mayúsculas espaciadas con raya coral, como en el diseño de Luis */
.eyebrow{display:flex;align-items:flex-start;gap:12px;margin:0 0 24px;font-size:11px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;color:var(--ink);line-height:1.4}
.eyebrow::before{content:"";flex:none;width:30px;height:1px;background:var(--coral);margin-top:.68em}
.eyebrow--light,.bg-ink .eyebrow,.manifesto .eyebrow,.comparison .eyebrow{color:#fff}
.kicker{display:block;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--coral-ink);margin-bottom:12px}

/* Cabecera de sección: etiqueta a la izquierda, titular a la derecha */
.sec-head{display:grid;gap:0;margin-bottom:60px}
@media(min-width:901px){.sec-head{grid-template-columns:1fr 2fr;align-items:start}.sec-head .eyebrow{margin-top:14px}}
.sec-head h2{font-size:clamp(40px,5.2vw,74px);line-height:.98;letter-spacing:-.04em}
.sec-head h2 .h2-lead{display:block;font-size:max(.34em,15px);line-height:1.25;letter-spacing:.01em;font-weight:700;color:var(--muted);margin-bottom:.45em}
.sec-head--long h2{font-size:clamp(36px,4.3vw,62px)}
.sec-head .copy{grid-column:2;max-width:560px;margin:28px 0 0;color:var(--muted);font-size:18px;line-height:1.55}
.sec-head .copy p{margin:0 0 .8em}
.sec-head .copy a{color:var(--ink);border-bottom:1px solid currentColor}
@media(max-width:900px){.sec-head{margin-bottom:44px}.sec-head .copy{grid-column:auto}}
.sec-head--center{text-align:center;justify-items:center}
@media(min-width:901px){.sec-head--center{grid-template-columns:1fr}}
.sec-head--center .eyebrow{justify-content:center}
.sec-head--center .copy{grid-column:auto;margin-inline:auto}
.bg-ink .sec-head h2,.bg-ink h2,.bg-ink h3{color:#fff}
.bg-ink .sec-head .copy,.bg-ink .sec-head h2 .h2-lead{color:#bdb9b2}

/* --- Botones ----------------------------------------------------------------- */
.btn{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:25px;border-radius:100px;padding:13px 25px;font-size:14px;font-weight:700;letter-spacing:.01em;line-height:1.1;border:1px solid transparent;cursor:pointer;transition:transform .25s ease,background-color .25s ease,color .25s ease,border-color .25s ease;white-space:nowrap}
.btn .arr{font-size:18px;line-height:1;font-weight:400;transition:transform .25s var(--ease)}
.btn:hover{transform:translateY(-2px)}
.btn:hover .arr{transform:translateX(3px)}
.btn--dark{background:var(--ink);color:#fff}
.btn--dark:hover{background:var(--ink-2)}
.btn--coral{background:var(--coral);color:var(--ink)}
.btn--coral:hover{background:var(--coral-hover)}
.btn--outline{border-color:var(--ink);color:var(--ink);background:transparent}
.btn--outline:hover{background:var(--ink);color:#fff}
.btn--white{background:#fff;color:var(--ink)}
.btn--outline-light{border-color:rgba(255,255,255,.5);color:#fff}
.btn--outline-light:hover{background:#fff;color:var(--ink)}
.btn--sm{min-height:44px;padding:10px 20px;gap:18px}
.btn--block{width:100%}
.btn .ico{width:18px;height:18px}
.text-link{display:inline-flex;align-items:center;gap:15px;font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:5px;color:inherit}
.text-link .arr{font-weight:400;transition:transform .25s var(--ease)}
.text-link:hover .arr{transform:translateX(3px)}
.cta-row{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center}
.cta-note{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:13px;color:var(--muted);margin:14px 0 0}
.cta-note span{display:inline-flex;align-items:center;gap:6px}
.cta-note svg{width:15px;height:15px;color:var(--ink)}

/* --- Barra superior + cabecera ---------------------------------------------- */
.announcement{min-height:32px;background:var(--ink);color:#fff;text-align:center;font-size:12px;letter-spacing:.07em;padding:7px 12px;line-height:1.5}
.announcement .dot{display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--coral);margin:0 14px 3px}
.announcement a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:600px){.announcement{font-size:10px}.announcement .hide-m{display:none}}
.proto{background:#fff3c4;color:#6b5400;font:600 12px/1.4 system-ui,sans-serif;padding:6px 16px;text-align:center}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,253,249,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);transition:box-shadow .3s}
.site-header.is-scrolled{box-shadow:0 10px 30px rgba(23,21,18,.06)}
.header-bar{height:var(--header-h);display:flex;align-items:center;gap:36px}
.brand{display:flex;align-items:center;gap:9px;margin-right:auto;flex:none}
.brand .brand-icon{width:35px;height:35px;object-fit:contain}
.brand .brand-word{width:108px;height:auto}
@media(max-width:600px){.brand .brand-icon{width:31px;height:31px}.brand .brand-word{width:96px}}
.nav{display:none}
.nav>ul{list-style:none;display:flex;gap:28px;align-items:center}
.nav a,.nav .nav-drop{display:inline-flex;align-items:center;gap:6px;font-size:14px;background:none;border:0;padding:8px 0;cursor:pointer;color:var(--ink)}
.nav a:hover,.nav .nav-drop:hover{color:var(--coral-ink)}
.nav .caret{width:14px;height:14px;transition:transform .2s}
.has-drop{position:relative}
.drop{position:absolute;top:calc(100% + 22px);left:-24px;min-width:360px;padding:10px;background:var(--paper);border:1px solid var(--line);box-shadow:0 20px 40px rgba(23,21,18,.08);opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .2s,transform .2s,visibility .2s}
.has-drop:hover .drop,.has-drop:focus-within .drop,.has-drop.is-open .drop{opacity:1;visibility:visible;transform:none}
.has-drop:hover .caret,.has-drop.is-open .caret{transform:rotate(180deg)}
.drop ul{list-style:none;display:grid}
.drop a{display:grid;grid-template-columns:40px 1fr;gap:2px 14px;align-items:center;padding:12px;border-bottom:1px solid var(--line-2)}
.drop li:last-child a{border-bottom:0}
.drop a:hover{background:var(--cream);color:var(--ink)}
.drop .d-ico{grid-row:span 2;width:40px;height:40px;border-radius:50%;background:var(--mint);display:grid;place-items:center}
.drop .d-ico svg{width:20px;height:20px}
.drop .d-t{font-weight:700;font-size:14px}
.drop .d-s{font-size:12px;color:var(--muted)}
.header-actions{display:flex;align-items:center;gap:22px}
.header-phone{display:none;align-items:center;gap:8px;font-size:14px;font-weight:700}
.header-phone svg{width:16px;height:16px}
.header-phone small{display:block;font-size:10px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);line-height:1.2}
.menu-btn{width:44px;height:44px;background:none;border:0;display:grid;place-items:center;cursor:pointer}
.menu-btn svg{width:24px;height:24px}
@media(min-width:1080px){.nav{display:block}.menu-btn{display:none}.header-phone{display:flex}}
@media(max-width:1079.98px){.header-actions .btn{display:none}}

/* Menú móvil a pantalla completa */
.mnav{position:fixed;inset:0;z-index:150;background:var(--paper);display:flex;flex-direction:column;transform:translateX(100%);transition:transform .35s var(--ease);visibility:hidden}
.mnav.is-open{transform:none;visibility:visible}
.mnav__top{height:var(--header-h);display:flex;align-items:center;justify-content:space-between;padding-inline:var(--gutter);border-bottom:1px solid var(--line)}
.mnav__body{overflow:auto;padding:24px var(--gutter) 30px;display:grid;gap:30px}
.mnav h3{font-size:11px;letter-spacing:.19em;text-transform:uppercase;font-weight:700;margin-bottom:6px;color:var(--muted)}
.mnav ul{list-style:none}
.mnav li a{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);font-size:20px;font-weight:700;letter-spacing:-.01em}
.mnav li a svg{width:18px;height:18px}
.mnav__cta{display:grid;gap:10px;padding:16px var(--gutter) calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line)}
body.menu-open{overflow:hidden}

/* --- Hero a sangre (portada y páginas de producto) -------------------------- */
.hero{position:relative;color:#fff;overflow:hidden;min-height:650px;height:calc(100vh - 116px);max-height:840px;display:flex;flex-direction:column}
.hero-media,.hero-shade{position:absolute;inset:0}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 43%}
.hero-media.flip img{transform:scaleX(-1)}
.hero-shade{background:linear-gradient(90deg,rgba(16,13,10,.8) 0%,rgba(16,13,10,.42) 48%,rgba(16,13,10,.06) 76%),linear-gradient(0deg,rgba(0,0,0,.32),transparent 50%)}
.hero-content{position:relative;z-index:2;width:100%;max-width:calc(var(--max) + 2*var(--gutter));margin:0 auto;padding:clamp(70px,11vh,130px) var(--gutter) 60px}
.hero-content .crumbs{margin-bottom:28px}
.hero-content .crumbs,.hero-content .crumbs a{color:rgba(255,255,255,.75)}
.hero h1{color:#fff;font-size:clamp(48px,6.2vw,88px);line-height:.98;letter-spacing:-.04em;max-width:880px}
.hero .eyebrow{color:#fff}
.hero h1 .eyebrow{margin-bottom:26px;letter-spacing:.19em}
.hero h1 .hero-h1-main{display:block}
.hero-lead{max-width:590px;font-size:20px;line-height:1.45;margin:28px 0 32px;color:rgba(255,255,255,.92)}
.hero-lead strong{color:#fff}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 30px}
.hero-proof{display:flex;align-items:center;gap:14px;margin-top:50px}
.proof-mark{width:36px;height:36px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--sage);color:var(--ink)}
.proof-mark svg{width:18px;height:18px}
.hero-proof strong,.hero-proof small{display:block}
.hero-proof strong{font-size:13px}
.hero-proof small{font-size:12px;color:rgba(255,255,255,.8)}
.hero-proof a{text-decoration:underline;text-underline-offset:2px}
/* Tarjeta salvia de la esquina: aquí vive el selector perro/gato */
.hero-card{position:absolute;right:0;bottom:0;z-index:3;background:var(--sage);color:var(--ink);width:410px;padding:26px 30px 28px;display:grid;gap:14px}
.hero-card .card-label{font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:700}
.hero-card strong{font-size:20px;line-height:1.25;display:block}
.quote-row{display:grid;grid-template-columns:1fr 1fr 50px;gap:8px;align-items:center}
.seg-opt{position:relative;cursor:pointer}
.seg-opt input{position:absolute;opacity:0;inset:0;cursor:pointer;margin:0}
.seg-opt span{display:flex;align-items:center;justify-content:center;gap:8px;height:48px;border-radius:100px;border:1px solid rgba(23,21,18,.35);font-size:14px;font-weight:700;transition:background-color .2s,color .2s,border-color .2s}
.seg-opt span svg{width:20px;height:20px}
.seg-opt input:checked+span{background:var(--ink);color:#fff;border-color:var(--ink)}
.seg-opt input:focus-visible+span{outline:2px solid var(--coral);outline-offset:2px}
.go-circle{width:50px;height:50px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:20px;transition:transform .25s var(--ease),background-color .2s}
.go-circle:hover{transform:rotate(-45deg);background:var(--coral);color:var(--ink)}
.hero-card .fine{font-size:12px;color:rgba(23,21,18,.72);margin:0}
.hero-card [data-quote-label]{font-weight:700}
@media(max-width:900px){.hero{height:auto;min-height:0;max-height:none}.hero-content{padding-top:90px;padding-bottom:40px}.hero-card{position:relative;width:auto;margin:0}}
@media(max-width:600px){.hero h1{font-size:46px}.hero-lead{font-size:17px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-proof{margin-top:32px}.hero-media img{object-position:62% center}.hero-content{padding-top:64px}}

/* --- Franja de ventajas (trustbar) ----------------------------------------- */
.trustbar{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}
.trustbar>div{padding:26px 20px;display:flex;align-items:center;gap:13px;border-right:1px solid var(--line)}
.trustbar>div:first-child{padding-left:0}
.trustbar>div:last-child{border-right:0}
.trustbar i{width:30px;height:30px;flex:none;background:var(--mint);border-radius:50%;display:grid;place-items:center;font-style:normal}
.trustbar i svg{width:15px;height:15px}
.trustbar b,.trustbar small{display:block}
.trustbar b{font-size:14px;line-height:1.3}
.trustbar small{font-size:12px;color:var(--muted);line-height:1.35}
@media(max-width:900px){.trustbar{grid-template-columns:1fr 1fr}.trustbar>div:nth-child(2){border-right:0}.trustbar>div{padding-left:0;border-bottom:1px solid var(--line)}.trustbar>div:nth-child(n+3){border-bottom:0}}
@media(max-width:600px){.trustbar>div{padding:16px 8px 16px 0;gap:10px}.trustbar b{font-size:13px}.trustbar small{font-size:11px}}

/* --- Tarjetas de producto (Seguro veterinario / RC) ------------------------- */
.product-grid{display:grid;gap:22px}
@media(min-width:901px){.product-grid{grid-template-columns:1.08fr .92fr}}
.product{border:1px solid var(--line);background:#fff;display:flex;flex-direction:column}
.product-image{height:350px;position:relative;overflow:hidden;background:var(--cream)}
.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.product:hover .product-image img{transform:scale(1.025)}
.badge-img{position:absolute;left:20px;top:20px;background:#fff;border-radius:50px;padding:8px 13px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ink)}
.product-body{padding:35px 38px 40px;position:relative;display:flex;flex-direction:column;gap:0;flex:1}
.product-body .number{position:absolute;right:35px;top:32px;color:var(--muted-2);font-size:12px}
.product h3{font-size:clamp(30px,2.4vw,36px);line-height:1.05;margin:0 0 15px}
.product-body>p{color:var(--muted);max-width:490px}
.chip-list{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 28px}
.chip-list li{font-size:12px;background:var(--cream);padding:8px 12px;border-radius:30px}
.product .cta-row{margin-top:auto}
.product--rc{background:var(--mint)}
.product--rc .chip-list li{background:rgba(255,255,255,.65)}
.product-links{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:18px;font-size:13px}
.product-links a{border-bottom:1px solid var(--line);padding-bottom:2px}
.product-links a:hover{border-color:var(--ink)}
@media(max-width:600px){.product-image{height:260px}.product-body{padding:28px 22px}.product .btn{width:100%}}

/* --- Pasos (líneas finas) ---------------------------------------------------- */
.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.steps .step{padding:30px 35px 24px 0;border-right:1px solid var(--line);position:relative}
.steps .step+.step{padding-left:35px}
.steps .step:last-child{border-right:0}
.step__n{color:var(--muted-2);font-size:12px}
.step__ico{width:54px;height:54px;border-radius:50%;background:var(--mint);display:grid;place-items:center;margin:30px 0 24px}
.step__ico svg{width:24px;height:24px}
.step h3{font-size:23px;margin:0 0 12px}
.step p{color:var(--muted);font-size:15px;margin:0}
.bg-ink .steps,.bg-ink .steps .step{border-color:var(--line-light)}
.bg-ink .step p{color:#bdb9b2}
.bg-ink .step__ico{background:rgba(201,221,184,.16);color:var(--sage)}
@media(max-width:760px){.steps{grid-template-columns:1fr}.steps .step,.steps .step+.step{padding:26px 0;border-right:0;border-bottom:1px solid var(--line)}.step__ico{margin:18px 0}}

/* --- Simulador de reembolso -------------------------------------------------- */
.sim-band{display:grid;gap:40px;margin-top:70px;align-items:center}
@media(min-width:1000px){.sim-band{grid-template-columns:.9fr 1.1fr;gap:80px}}
.sim-band .txt p{color:var(--muted)}
.sim-band .txt h3{font-size:clamp(28px,2.6vw,38px);letter-spacing:-.03em;margin-bottom:18px}
.sim{background:var(--ink);color:#fff;padding:34px 36px;display:grid;gap:18px}
.sim h3{color:#fff;font-size:15px;letter-spacing:.15em;text-transform:uppercase;font-weight:700}
.sim label{font-size:14px;color:#bdb9b2}
.sim__bill{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px}
.sim__bill output{white-space:nowrap;font-size:44px;font-weight:700;letter-spacing:-.03em;line-height:1}
.sim input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:34px;background:transparent;cursor:pointer}
.sim input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(90deg,var(--coral) var(--p,20%),rgba(255,255,255,.2) var(--p,20%))}
.sim input[type=range]::-moz-range-track{height:4px;border-radius:4px;background:rgba(255,255,255,.2)}
.sim input[type=range]::-moz-range-progress{height:4px;border-radius:4px;background:var(--coral)}
.sim input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;margin-top:-11px;border-radius:50%;background:var(--coral);border:4px solid var(--ink);box-shadow:0 0 0 1px var(--coral)}
.sim input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--coral);border:4px solid var(--ink)}
.sim__split{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line-light)}
.sim__box{padding:18px 0 4px}
.sim__box+.sim__box{padding-left:24px;border-left:1px solid var(--line-light)}
.sim__box span{display:block;font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:#bdb9b2;margin-bottom:8px}
.sim__box output{font-size:34px;font-weight:700;letter-spacing:-.03em;line-height:1}
.sim__box--you output{color:var(--sage)}
.sim__bar{height:6px;background:rgba(255,255,255,.14);overflow:hidden;display:flex}
.sim__bar i{display:block;height:100%;background:var(--sage);width:70%}
.sim__note{font-size:12px;color:#8f8a83;margin:0;line-height:1.5}
.howto__text{max-width:760px}
.howto__text p{color:var(--muted)}

/* --- Manifiesto oscuro (foto + texto) ---------------------------------------- */
.manifesto{background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr;min-height:640px}
.manifesto-photo{position:relative;overflow:hidden;min-height:420px}
.manifesto-photo img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;filter:saturate(.75)}
.manifesto-photo.flip img{transform:scaleX(-1)}
.manifesto-photo .tag{position:absolute;left:30px;bottom:30px;background:var(--coral);color:var(--ink);padding:10px 16px;border-radius:50px;font-size:12px;font-weight:700}
.manifesto-copy{padding:clamp(56px,8vw,120px);align-self:center}
.manifesto h2{color:#fff;font-size:clamp(40px,4.8vw,68px);line-height:.98;letter-spacing:-.04em}
.manifesto h2 em{font-style:normal;color:var(--sage)}
.manifesto-copy>p{font-size:18px;line-height:1.65;color:#c9c5bf;max-width:550px;margin:30px 0}
.manifesto .text-link{color:#fff}
@media(max-width:900px){.manifesto{grid-template-columns:1fr}.manifesto-photo{min-height:420px}.manifesto-copy{padding:70px var(--gutter)}}

/* --- Coberturas --------------------------------------------------------------- */
.cov-legend{display:flex;flex-wrap:wrap;gap:10px 26px;font-size:13px;color:var(--muted);margin:-20px 0 34px}
.cov-legend span{display:inline-flex;align-items:center;gap:10px}
.cov-grid{display:grid;gap:22px;grid-template-columns:1fr}
@media(min-width:640px){.cov-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.cov-grid{grid-template-columns:repeat(3,1fr)}}
.cov-card{border:1px solid var(--line);background:#fff;display:flex;flex-direction:column}
.cov-card__img{position:relative;height:190px;overflow:hidden;background:var(--cream)}
.cov-card__img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.cov-card:hover .cov-card__img img{transform:scale(1.03)}
.cov-card__img .badges{position:absolute;left:16px;top:16px;right:16px;display:flex;flex-wrap:wrap;gap:6px}
.cov-card__body{padding:24px 26px 28px;display:flex;flex-direction:column;gap:10px;flex:1}
.cov-card h3{font-size:22px;display:flex;align-items:center;gap:10px}
.cov-card h3 svg{width:22px;height:22px;flex:none}
.cov-card p{margin:0;font-size:15px;color:var(--muted);line-height:1.5}
.cov-card .limit{margin-top:auto;padding-top:14px;border-top:1px solid var(--line-2);font-size:14px;font-weight:700;color:var(--ink)}
.badge{display:inline-flex;align-items:center;gap:7px;border-radius:50px;padding:7px 12px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;width:max-content;background:#fff;color:var(--ink)}
.badge--in::before{content:"";width:7px;height:7px;border-radius:50%;background:#5f9c4f}
.badge--opt::before{content:"";width:16px;height:9px;border-radius:9px;background:linear-gradient(90deg,var(--ink) 50%,var(--line) 50%)}
.badge--star{background:var(--coral);color:var(--ink)}
.cov-legend .badge{border:1px solid var(--line)}

/* Qué no cubre + requisitos */
.clear-box{display:grid;gap:22px;margin-top:22px}
@media(min-width:900px){.clear-box{grid-template-columns:1fr 1fr}}
.clear-card{padding:34px 36px;display:grid;gap:18px;align-content:start}
.clear-card--no{background:var(--cream)}
.clear-card--req{background:var(--mint)}
.clear-card h3{font-size:26px}
.clear-card ul{list-style:none;display:grid}
.clear-card li{display:grid;grid-template-columns:28px 1fr;gap:14px;align-items:start;font-size:15px;line-height:1.5;padding:14px 0;border-top:1px solid var(--line)}
.clear-card li svg{width:28px;height:28px;padding:6px;border-radius:50%;background:#fff}

/* Carencias: tres columnas con líneas */
.timeline-wrap{margin-top:80px}
.timeline-wrap>h3{font-size:clamp(28px,2.6vw,38px);letter-spacing:-.03em}
.timeline-wrap>p{color:var(--muted);max-width:640px;margin:14px 0 34px}
.timeline{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.tl-item{padding:30px 35px 10px 0;border-right:1px solid var(--line)}
.tl-item+.tl-item{padding-left:35px}
.tl-item:last-child{border-right:0}
.tl-day{display:block;font-size:clamp(44px,4.6vw,64px);font-weight:700;letter-spacing:-.04em;line-height:1;margin-bottom:14px}
.tl-item:first-child .tl-day{color:var(--coral-ink)}
.tl-item h4{margin-bottom:10px}
.tl-item p{margin:0 0 16px;font-size:15px;color:var(--muted)}
.tl-item ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.tl-item li{font-size:12px;background:var(--cream);padding:6px 11px;border-radius:30px}
@media(max-width:760px){.timeline{grid-template-columns:1fr}.tl-item,.tl-item+.tl-item{padding:26px 0;border-right:0;border-bottom:1px solid var(--line)}}

/* --- Comparativa (bloque oscuro) --------------------------------------------- */
.comparison{background:var(--ink);color:#fff;padding-block:110px}
.comparison-head{display:grid;gap:36px;align-items:end;margin-bottom:60px}
@media(min-width:901px){.comparison-head{grid-template-columns:1.1fr .9fr;gap:90px}}
.comparison h2{color:#fff;font-size:clamp(38px,4.6vw,64px);line-height:.98;letter-spacing:-.04em}
.comparison h2 .h2-lead{display:block;font-size:max(.34em,15px);line-height:1.25;letter-spacing:.01em;color:#bdb9b2;margin-bottom:.45em}
.comparison-head p{color:#bdb9b2;max-width:520px;margin:0 0 26px}
.compare{width:100%;border-collapse:collapse;font-size:15px}
.compare th,.compare td{padding:18px 16px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--line)}
.compare thead th{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);font-weight:700;border-bottom:1px solid var(--ink)}
.compare th[scope=row]{font-weight:700;width:42%}
.compare td.us{font-weight:700}
.compare .yes,.compare .no{display:inline-flex;align-items:center;gap:10px}
.compare .yes svg{width:24px;height:24px;padding:5px;border-radius:50%;background:var(--sage);color:var(--ink);flex:none}
.compare .no svg{width:24px;height:24px;padding:6px;border-radius:50%;border:1px solid var(--line);color:var(--muted-2);flex:none}
.compare .no{color:var(--muted)}
.compare .them-m{display:none}
.comparison .compare th,.comparison .compare td{border-color:var(--line-light)}
.comparison .compare thead th{color:#9d9992;border-bottom-color:rgba(255,255,255,.5)}
.comparison .compare thead th.us{color:var(--sage)}
.comparison .compare .no{color:#9d9992}
.comparison .compare .no svg{border-color:var(--line-light);color:#9d9992}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:640px){.compare th,.compare td{padding:14px 8px}.compare .them{display:none}.compare .them-m{display:block;margin-top:6px;font-size:12px;font-weight:400;color:var(--muted)}.comparison .compare .them-m{color:#9d9992}}
.compare-criteria{display:flex;flex-wrap:wrap;gap:9px;margin:60px 0 24px}
.compare-criteria span{border:1px solid rgba(255,255,255,.24);border-radius:40px;padding:9px 14px;font-size:12px}
.competitor-row{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light)}
.competitor-row a{min-height:150px;padding:26px 20px;border-right:1px solid var(--line-light);position:relative;transition:background-color .2s,color .2s}
.competitor-row a:hover{background:var(--coral);color:var(--ink)}
.competitor-row a:last-child{border-right:0}
.competitor-row small,.competitor-row b{display:block}
.competitor-row small{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:#9d9992}
.competitor-row a:hover small{color:var(--ink)}
.competitor-row b{font-size:19px;margin-top:9px}
.competitor-row i{position:absolute;right:18px;bottom:18px;font-style:normal}
.comparison-note{color:#85817b;font-size:11px;margin:18px 0 0}
.comparison .split-txt{display:grid;gap:28px;margin-top:70px;padding-top:50px;border-top:1px solid var(--line-light)}
@media(min-width:901px){.comparison .split-txt{grid-template-columns:1fr 1fr;gap:80px}}
.comparison .split-txt h3{color:#fff;font-size:clamp(26px,2.4vw,34px);letter-spacing:-.03em}
.comparison .split-txt p{color:#bdb9b2;margin:0}
@media(max-width:900px){.competitor-row{grid-template-columns:1fr 1fr}.competitor-row a{border-bottom:1px solid var(--line-light)}}
@media(max-width:600px){.comparison{padding-block:80px}.competitor-row{grid-template-columns:1fr}.competitor-row a{min-height:100px}}

/* --- Franja coral de frase ----------------------------------------------------- */
.quote-band{background:var(--coral);text-align:center;padding:105px var(--gutter)}
.quote-band blockquote{margin:0 auto;max-width:1200px;font-size:clamp(38px,5.8vw,78px);line-height:.98;letter-spacing:-.04em;font-weight:700}
.quote-band p{font-size:13px;margin:25px 0 0}
@media(max-width:600px){.quote-band{padding:75px var(--gutter)}}

/* --- Bloques partidos (foto + texto) ------------------------------------------- */
.split{display:grid;gap:44px;align-items:center}
@media(min-width:960px){.split{grid-template-columns:1fr 1fr;gap:80px}.split--rev>:first-child{order:2}}
.split__media{position:relative}
.split__media .frame{aspect-ratio:4/5}
.split__media .window{position:absolute;width:46%;aspect-ratio:4/3;right:-22px;bottom:-22px;border:8px solid var(--paper)}
@media(max-width:959.98px){.split__media .frame{aspect-ratio:4/3}.split__media .window{right:12px;bottom:-18px;width:44%}}
.split__copy{display:grid;gap:18px;align-content:start}
.split__copy h2{font-size:clamp(38px,4.4vw,62px);line-height:.98;letter-spacing:-.04em}
.split__copy h2 .h2-lead{display:block;font-size:max(.34em,15px);line-height:1.25;letter-spacing:.01em;color:var(--muted);margin-bottom:.45em}
.split__copy h3{font-size:clamp(24px,2vw,30px);letter-spacing:-.025em;margin-top:10px}
.split__copy p{margin:0;color:var(--muted)}
.split__copy .eyebrow{margin-bottom:6px}
.frame,.window{position:relative;overflow:hidden;background:var(--cream)}
.frame img,.window img{width:100%;height:100%;object-fit:cover}
.checks{list-style:none;display:grid}
.checks li{display:grid;grid-template-columns:28px 1fr;gap:14px;align-items:start;padding:13px 0;border-top:1px solid var(--line);font-size:15px;line-height:1.5}
.checks li:last-child{border-bottom:1px solid var(--line)}
.checks li svg{width:28px;height:28px;padding:6px;border-radius:50%;background:var(--mint)}
.checks--2{column-gap:40px}
@media(min-width:760px){.checks--2{grid-template-columns:1fr 1fr}.checks--2 li:nth-last-child(2){border-bottom:1px solid var(--line)}}
.feature-list{display:grid}
.feature{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start;padding:22px 0;border-top:1px solid var(--line)}
.feature:last-child{border-bottom:1px solid var(--line)}
.feature__ico{width:54px;height:54px;border-radius:50%;background:var(--mint);display:grid;place-items:center}
.feature__ico svg{width:24px;height:24px}
.feature h3,.feature h4{font-size:19px;margin-bottom:6px;letter-spacing:-.01em}
.feature p{margin:0;font-size:15px;color:var(--muted)}
.grid.feat-grid{gap:0 60px}
.grid.feat-grid .feature:last-child{border-bottom:0}
@media(min-width:760px){.grid.feat-grid .feature{border-bottom:0}.grid.feat-grid{border-bottom:1px solid var(--line)}}

/* --- Arma tu seguro (interruptores) -------------------------------------------- */
.builder{display:grid;gap:40px;align-items:start}
@media(min-width:1000px){.builder{grid-template-columns:1.15fr .85fr;gap:60px}}
.opt-list{display:grid;border-top:1px solid var(--line)}
.opt{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line);cursor:pointer}
.opt--locked{cursor:default}
.opt__t{font-weight:700;font-size:17px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.opt__d{font-size:14px;color:var(--muted);margin-top:3px}
.opt .badge{border:1px solid var(--line);padding:5px 9px}
.switch{position:relative;width:62px;height:34px;flex:none}
.switch input{position:absolute;inset:0;opacity:0;cursor:pointer;z-index:2;margin:0}
.switch .track{position:absolute;inset:0;border-radius:40px;background:#fff;border:1px solid rgba(23,21,18,.3);transition:background-color .25s,border-color .25s}
.switch .thumb{position:absolute;top:4px;left:4px;width:26px;height:26px;border-radius:50%;background:var(--ink);transition:transform .3s var(--ease),background-color .25s;display:grid;place-items:center}
.switch .thumb svg{width:14px;height:14px;color:var(--ink);opacity:0;transition:opacity .2s}
.switch input:checked~.track{background:var(--ink);border-color:var(--ink)}
.switch input:checked~.thumb{transform:translateX(28px);background:var(--coral)}
.switch input:checked~.thumb svg{opacity:1}
.switch input:focus-visible~.track{outline:2px solid var(--coral);outline-offset:3px}
.switch input:disabled{cursor:not-allowed}
.switch--locked .track{background:var(--sage)!important;border-color:var(--sage)!important}
.switch--locked .thumb{transform:translateX(28px);background:#fff!important}
.switch--locked .thumb svg{opacity:1!important}
.summary{position:sticky;top:calc(var(--header-h) + 24px);background:var(--sage);padding:34px 34px 30px;display:grid;gap:18px}
.summary .eyebrow{margin:0}
.summary__big{display:flex;align-items:baseline;gap:12px;font-size:17px}
.summary__count{font-size:72px;font-weight:700;line-height:.9;letter-spacing:-.05em}
.summary ul{list-style:none;display:grid;border-top:1px solid rgba(23,21,18,.2)}
.summary li{display:flex;gap:10px;align-items:center;font-size:14px;padding:9px 0;border-bottom:1px solid rgba(23,21,18,.12)}
.summary li svg{width:16px;height:16px;flex:none}
.summary li.off{color:rgba(23,21,18,.4);text-decoration:line-through}
.summary .xs{color:rgba(23,21,18,.72);margin:0}

/* --- Chips y enlaces ------------------------------------------------------------ */
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:8px 14px;border-radius:30px;background:var(--cream);font-size:13px;transition:background-color .2s,color .2s}
.chip:hover{background:var(--ink);color:#fff}
.chip svg{width:16px;height:16px}
.chip[aria-current]{background:var(--ink);color:#fff}

/* --- Tarjetas de especie (perros, gatos, cachorros…) ---------------------------- */
.prod-grid{display:grid;gap:22px}
@media(min-width:760px){.prod-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.prod-grid--4{grid-template-columns:repeat(4,1fr)}}
.prod-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);background:#fff}
.prod-card .pc-img{height:230px;overflow:hidden;background:var(--cream)}
.prod-card .pc-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.prod-card:hover .pc-img img{transform:scale(1.03)}
.prod-card__body{padding:22px 24px 26px;display:grid;gap:6px}
.prod-card h3{font-size:22px}
.prod-card p{margin:0;font-size:14px;color:var(--muted)}
.prod-card .go{position:absolute;right:16px;top:16px;width:44px;height:44px;border-radius:50%;background:#fff;display:grid;place-items:center;transition:background-color .2s,transform .3s var(--ease)}
.prod-card .go svg{width:18px;height:18px}
.prod-card:hover .go{background:var(--coral);transform:rotate(-45deg)}

/* --- Valores de marca --------------------------------------------------------- */
.values{display:grid;border-top:1px solid var(--line)}
@media(min-width:760px){.values{grid-template-columns:1fr 1fr}}
.value{padding:28px 30px 28px 0;display:grid;gap:12px;align-content:start}
@media(min-width:760px){.value+.value{padding-left:30px;border-left:1px solid var(--line)}}
@media(max-width:759.98px){.value{border-bottom:1px solid var(--line)}}
.value h3{font-size:11px;letter-spacing:.19em;text-transform:uppercase;display:flex;align-items:center;gap:12px}
.value h3::before{content:"";width:30px;height:1px;background:var(--coral)}
.value p{margin:0;color:var(--muted)}
.value p strong{color:var(--ink)}
.trust-list{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:30px;font-size:14px}
.trust-list span{display:inline-flex;align-items:center;gap:10px}
.trust-list svg{width:18px;height:18px}

/* --- Conversación "Oye, humano" ------------------------------------------------ */
.chat-grid{display:grid;gap:44px;align-items:center}
@media(min-width:960px){.chat-grid{grid-template-columns:.8fr 1.2fr;gap:80px}}
.chat-photo{aspect-ratio:4/5}
.chat{display:grid;gap:12px}
.bubble{max-width:86%;padding:16px 20px;font-size:15px;line-height:1.5;border-radius:24px}
.bubble .who{display:block;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin-bottom:5px;opacity:.65}
.bubble--pet{background:var(--cream);border-bottom-left-radius:4px;justify-self:start}
.bubble--human{background:var(--ink);color:#fff;border-bottom-right-radius:4px;justify-self:end}

/* --- Opiniones ------------------------------------------------------------------ */
.reviews{display:grid;border-top:1px solid var(--line)}
@media(min-width:900px){.reviews{grid-template-columns:repeat(3,1fr)}}
.review{padding:28px 28px 28px 0;display:grid;gap:12px;align-content:start}
@media(min-width:900px){.review+.review{padding-left:28px;border-left:1px solid var(--line)}}
.stars{display:flex;gap:3px;color:var(--ink)}
.stars svg{width:16px;height:16px}
.review p{margin:0;color:var(--muted);font-size:15px}
.review .who{font-weight:700;font-size:14px}

/* --- Precio --------------------------------------------------------------------- */
.price-box{display:grid;gap:50px;align-items:start}
@media(min-width:960px){.price-box{grid-template-columns:1.1fr .9fr;gap:80px}}
.price-box .split__copy p a{color:var(--ink);border-bottom:1px solid currentColor}
.factors{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line);margin-bottom:24px}
.factor{padding:20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:8px;background:#fff}
.factor svg{width:24px;height:24px}
.factor b{font-size:16px}
.factor span{font-size:13px;color:var(--muted);line-height:1.4}
.discount{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;background:var(--mint);padding:22px 24px;margin-top:6px}
.discount .pct{font-size:34px;font-weight:700;letter-spacing:-.03em;white-space:nowrap}
.discount p{margin:0;font-size:14px;flex:1 1 220px;color:var(--ink)}

/* --- Preguntas frecuentes (líneas) ---------------------------------------------- */
.faq-layout{display:grid;gap:55px}
@media(min-width:1000px){.faq-layout{grid-template-columns:.85fr 1.15fr;gap:100px}.faq-layout>.sec-head{position:sticky;top:calc(var(--header-h) + 30px);align-self:start}}
.faq-layout>.sec-head{grid-template-columns:1fr;margin-bottom:0}
.faq-layout>.sec-head .eyebrow{margin-top:0}
.faq-layout>.sec-head h2{font-size:clamp(36px,3.6vw,54px)}
.faq-layout>.sec-head .copy{grid-column:auto;margin-top:22px}
.faq-list{border-top:1px solid var(--line)}
.faq{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-size:19px;font-weight:700;line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.faq summary h3{font-size:inherit;line-height:inherit;letter-spacing:-.01em;font-weight:700;margin:0}
.faq summary .pm{flex:none;width:26px;height:26px;display:grid;place-items:center;transition:transform .25s var(--ease)}
.faq summary .pm svg{width:22px;height:22px}
.faq[open] summary .pm{transform:rotate(45deg)}
.faq__a{color:var(--muted);max-width:640px;padding:0 0 24px}
.faq__a p:last-child{margin-bottom:0}
.faq__a a{color:var(--ink);border-bottom:1px solid currentColor}
.faq__a ul{padding-left:1.1em;display:grid;gap:6px}
.help-card{display:grid;gap:14px;margin-top:30px;padding-top:26px;border-top:1px solid var(--line)}
.help-card p{margin:0;font-size:15px;color:var(--muted)}
.help-card b{color:var(--ink)}
@media(max-width:600px){.faq summary{font-size:17px;padding:20px 0}}

/* --- CTA final (salvia, centrado) ----------------------------------------------- */
.final-cta{background:var(--sage);text-align:center;padding:115px var(--gutter)}
.final-cta .eyebrow{justify-content:center}
.final-cta h2{font-size:clamp(46px,6vw,80px);line-height:.98;letter-spacing:-.04em;max-width:1000px;margin:0 auto}
.final-cta .lead{margin:22px auto 34px;font-size:18px;max-width:560px}
.final-cta .cta-row{justify-content:center}
.final-steps{display:grid;gap:0;max-width:980px;margin:56px auto 0;border-top:1px solid rgba(23,21,18,.2);text-align:left}
@media(min-width:760px){.final-steps{grid-template-columns:repeat(3,1fr)}}
.final-steps div{padding:22px 24px 0 0;font-size:14px;color:rgba(23,21,18,.75)}
@media(min-width:760px){.final-steps div+div{padding-left:24px;border-left:1px solid rgba(23,21,18,.2)}}
.final-steps b{display:block;color:var(--ink);font-size:16px;margin-bottom:4px}
@media(max-width:600px){.final-cta{padding:80px var(--gutter)}.final-cta .cta-row{flex-direction:column}.final-cta .btn{width:100%}}

/* --- Pie ---------------------------------------------------------------------------- */
.site-footer{background:var(--paper);padding-top:70px}
.footer-top{display:flex;flex-wrap:wrap;align-items:center;gap:26px 55px;padding-bottom:55px;border-bottom:1px solid var(--line)}
.footer-top img{width:130px}
.footer-top p{font-size:24px;line-height:1.2;margin:0}
.footer-top .btn{margin-left:auto}
@media(max-width:600px){.footer-top p{font-size:20px}.footer-top .btn{margin-left:0}}
.footer-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:40px 30px;padding:55px 0}
@media(min-width:900px){.footer-cols{grid-template-columns:1.3fr repeat(4,1fr)}}
.footer-cols .fh{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin:0 0 16px}
.footer-cols ul{list-style:none;display:grid;gap:10px}
.footer-cols a{font-size:13px;color:var(--muted)}
.footer-cols a:hover{color:var(--ink)}
.footer-contact{display:grid;gap:10px;font-size:14px;align-content:start}
.footer-contact a{display:inline-flex;align-items:center;gap:10px;font-weight:700;color:var(--ink);font-size:14px}
.footer-contact svg{width:17px;height:17px}
@media(max-width:899.98px){.footer-contact{grid-column:1/-1}}
.social{display:flex;gap:8px;margin-top:8px}
.social a{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center}
.social a:hover{background:var(--ink);color:#fff}
.social svg{width:18px;height:18px}
.footer-legal{display:grid;gap:16px;padding:30px 0;border-top:1px solid var(--line)}
.footer-legal .funds{display:flex;flex-wrap:wrap;gap:14px 30px;align-items:center}
.footer-legal .funds img{height:54px;width:auto;max-width:100%;mix-blend-mode:multiply}
.footer-legal p{margin:0;font-size:11px;color:var(--muted);line-height:1.6;max-width:980px}
.footer-bottom{border-top:1px solid var(--line);padding:22px 0 28px;display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#777169}
.footer-bottom nav{display:flex;flex-wrap:wrap;gap:6px 16px}
.footer-bottom a:hover{color:var(--ink)}

/* --- Accesos fijos --------------------------------------------------------------- */
.mbar{position:fixed;left:10px;right:10px;bottom:10px;z-index:90;display:flex;gap:8px;align-items:center;transform:translateY(130%);transition:transform .35s var(--ease)}
.mbar.is-visible{transform:none}
.mbar .btn{flex:1;min-height:54px;border-radius:30px;box-shadow:0 8px 30px rgba(0,0,0,.18)}
.mbar .icon-btn{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:#fff;flex:none;box-shadow:0 8px 30px rgba(0,0,0,.18)}
.mbar .icon-btn svg{width:22px;height:22px}
@media(min-width:1080px){.mbar{display:none}}
.fab{position:fixed;right:24px;bottom:24px;z-index:80;display:none;width:56px;height:56px;border-radius:50%;background:var(--ink);color:#fff;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.2);transition:transform .25s var(--ease),background-color .2s}
.fab:hover{transform:translateY(-2px);background:var(--coral);color:var(--ink)}
.fab svg{width:24px;height:24px}
@media(min-width:1080px){.fab{display:grid}}

/* --- Migas ----------------------------------------------------------------------- */
.crumbs{font-size:12px;color:var(--muted);letter-spacing:.02em}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.crumbs li{display:inline-flex;align-items:center;gap:6px}
.crumbs li+li::before{content:"/";opacity:.5}
.crumbs a:hover{text-decoration:underline}

/* --- Cabecera de páginas interiores (ayuda, blog, artículo) ------------------------ */
.page-hero{padding:90px 0 70px}
.page-hero h1{font-size:clamp(50px,7vw,96px);line-height:.94;letter-spacing:-.05em;margin:0;max-width:1100px}
.page-hero .lead{max-width:620px;color:var(--muted);font-size:19px;margin:30px 0 0}
.page-hero .crumbs{margin-bottom:34px}
@media(max-width:600px){.page-hero{padding:56px 0 44px}.page-hero h1{font-size:48px}}

/* --- Centro de ayuda ------------------------------------------------------------ */
.search{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--ink);max-width:640px;padding:6px 0;margin-top:34px}
.search svg{width:22px;height:22px;flex:none}
.search input{flex:1;border:0;outline:0;font:inherit;font-size:20px;background:transparent;color:var(--ink);min-width:0;height:48px}
.search input::placeholder{color:var(--muted-2)}
.topic-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.help-panel{background:var(--ink);color:#fff;padding:34px 36px;display:grid;gap:16px;align-content:start}
.help-panel h2{color:#fff;font-size:28px;letter-spacing:-.03em}
.help-panel p{margin:0;color:#bdb9b2}
.help-grid{display:grid;gap:40px;align-items:end}
@media(min-width:1000px){.help-grid{grid-template-columns:1.3fr .7fr;gap:80px}}
.faq-group{scroll-margin-top:calc(var(--header-h) + 20px)}
.faq-group+.faq-group{margin-top:70px}
.faq-group>h2{font-size:clamp(28px,2.8vw,40px);letter-spacing:-.03em;margin-bottom:20px;display:flex;align-items:center;gap:16px}
.faq-group>h2 .gi{width:48px;height:48px;border-radius:50%;background:var(--mint);display:grid;place-items:center;flex:none}
.faq-group>h2 .gi svg{width:22px;height:22px}
.no-results{display:none;padding:24px 0;color:var(--muted)}
.no-results.is-visible{display:block}

/* --- Blog y artículo --------------------------------------------------------------- */
.cat{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--coral-ink)}
.cat-bar{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none;margin-top:36px}
.cat-bar::-webkit-scrollbar{display:none}
.cat-bar a{flex:none}
.post-feature{display:grid;gap:40px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:50px 0}
@media(min-width:960px){.post-feature{grid-template-columns:1.2fr .8fr;gap:70px}}
.post-feature .frame{aspect-ratio:16/10}
.post-feature h2{font-size:clamp(34px,3.6vw,52px);line-height:1;letter-spacing:-.04em;margin:12px 0 18px}
.post-feature p{color:var(--muted)}
.post-grid{display:grid;gap:50px 26px}
@media(min-width:700px){.post-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.post-grid{grid-template-columns:repeat(3,1fr)}}
.post-card{display:grid;gap:12px;align-content:start}
.post-card .frame{aspect-ratio:4/3}
.post-card .frame img{transition:transform .6s var(--ease)}
.post-card:hover .frame img{transform:scale(1.04)}
.post-card h3{font-size:22px;line-height:1.15}
.post-card:hover h3{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.post-card p{margin:0;color:var(--muted);font-size:14px}
.meta{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:13px;color:var(--muted);align-items:center;margin-top:26px}
.meta span{display:inline-flex;align-items:center;gap:8px}
.meta svg{width:15px;height:15px}
.article-cover{aspect-ratio:21/9;margin-top:50px}
@media(max-width:760px){.article-cover{aspect-ratio:4/3}}
.article-layout{display:grid;gap:50px;padding-block:70px var(--sec)}
@media(min-width:1080px){.article-layout{grid-template-columns:230px minmax(0,1fr) 300px;gap:60px}}
.toc{align-self:start;font-size:14px}
@media(min-width:1080px){.toc{position:sticky;top:calc(var(--header-h) + 30px)}}
.toc summary{font-size:11px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;cursor:pointer;padding-bottom:14px;border-bottom:1px solid var(--line)}
.toc ol{list-style:none;display:grid}
.toc a{display:block;padding:11px 0;border-bottom:1px solid var(--line-2);color:var(--muted);line-height:1.35}
.toc a:hover,.toc a.is-active{color:var(--ink)}
.toc a.is-active{box-shadow:inset 3px 0 0 var(--coral);padding-left:12px}
.prose{font-size:18px;line-height:1.7;color:#2c2925;max-width:720px}
.prose>*+*{margin-top:1.05em}
.prose h2{font-size:clamp(30px,2.6vw,40px);line-height:1.05;letter-spacing:-.035em;margin-top:2.1em}
.prose h3{font-size:24px;margin-top:1.7em}
.prose ul,.prose ol{padding-left:1.2em;display:grid;gap:.5em}
.prose li::marker{color:var(--coral-ink)}
.prose a{border-bottom:1px solid currentColor;font-weight:700}
.prose table{width:100%;border-collapse:collapse;font-size:15px;display:block;overflow-x:auto}
.prose th,.prose td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.prose thead th{font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.inline-cta{display:grid;gap:18px;background:var(--ink);color:#fff;padding:34px 36px;margin:2.2em 0}
.inline-cta .h{color:#fff;font-size:26px;font-weight:700;letter-spacing:-.03em;line-height:1.1;margin:0}
.inline-cta p{color:#bdb9b2;margin:0;font-size:16px}
@media(min-width:760px){.inline-cta{grid-template-columns:1fr auto;align-items:center}}
.aside-card{position:sticky;top:calc(var(--header-h) + 30px);align-self:start;display:grid;gap:16px;background:var(--sage);padding:30px}
.aside-card h2{font-size:28px;letter-spacing:-.03em;line-height:1.02}
.aside-card p{margin:0;font-size:14px;color:rgba(23,21,18,.75)}
.aside-card .checks li{border-color:rgba(23,21,18,.16)}
.aside-card .checks li svg{background:#fff}
@media(max-width:1079.98px){.aside-card{position:static}}
.prose .sim{margin:2.2em 0}
.prose .sim h3{font-size:15px;margin-top:0;letter-spacing:.15em;line-height:1.3}

/* --- Aparición suave -------------------------------------------------------------- */
.js .reveal{opacity:0;transform:translateY(16px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .reveal.is-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.js .reveal{opacity:1;transform:none}}

/* --- Marcadores del prototipo (se quitan al publicar) ----------------------------- */
.pending{position:relative;outline:2px dashed #c9a227;outline-offset:8px}
.pending-tag{display:inline-flex;align-items:center;gap:.4rem;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:#fff3c4;color:#6b5400;border-radius:999px;padding:5px 11px;width:max-content;margin-bottom:18px}

/* ==========================================================================
   V2 — Módulos de conversión y de comprensión (buscadores e IA)
   ========================================================================== */

/* --- Arranque del presupuesto (nombre + especie + edad) --------------------- */
.hero-card--starter{width:440px;padding:26px 28px 26px;gap:12px}
.starter{display:grid;gap:10px}
.starter .f{display:grid;gap:6px}
.starter .f>span{font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.starter input[type=text],.starter select{width:100%;height:50px;border-radius:100px;border:1px solid rgba(23,21,18,.35);background:rgba(255,255,255,.72);padding:0 20px;font:inherit;font-size:16px;color:var(--ink);-webkit-appearance:none;appearance:none}
.starter select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171512' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:18px;padding-right:44px}
.starter input:focus,.starter select:focus{outline:2px solid var(--ink);outline-offset:2px}
.starter .row2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.starter .btn{width:100%;justify-content:space-between}
.starter__msg{font-size:13px;line-height:1.45;background:#fff;padding:10px 14px;border-radius:14px;margin:0}
.starter__alt{display:grid;gap:8px}
.starter .fine{font-size:12px;color:rgba(23,21,18,.72);margin:0}
@media(max-width:900px){.hero-card--starter{width:auto}}

/* --- Franja de confianza con cifras ------------------------------------------ */
.proofbar{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}
.proofbar>div{padding:28px 22px;border-right:1px solid var(--line);display:grid;gap:4px}
.proofbar>div:first-child{padding-left:0}
.proofbar>div:last-child{border-right:0}
.proofbar b{font-size:30px;font-weight:700;letter-spacing:-.03em;line-height:1}
.proofbar span{font-size:13px;color:var(--muted);line-height:1.35}
@media(max-width:900px){.proofbar{grid-template-columns:1fr 1fr}.proofbar>div:nth-child(2){border-right:0}.proofbar>div{padding-left:0;border-bottom:1px solid var(--line)}.proofbar>div:nth-child(n+3){border-bottom:0}}
@media(max-width:600px){.proofbar>div{padding:18px 10px 18px 0}.proofbar b{font-size:24px}}

/* --- "En resumen" (respuesta directa para personas y asistentes de IA) ------- */
.tldr{display:grid;gap:26px;background:var(--cream);padding:40px}
@media(min-width:900px){.tldr{grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}}
.tldr__t{font-size:clamp(30px,3vw,44px);line-height:1;letter-spacing:-.035em}
.tldr__lead{margin:14px 0 0;color:var(--muted);font-size:16px}
.tldr ul{list-style:none;display:grid;border-top:1px solid var(--line)}
.tldr li{display:grid;grid-template-columns:28px 1fr;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);font-size:16px;line-height:1.45}
.tldr li svg{width:28px;height:28px;padding:6px;border-radius:50%;background:var(--sage)}
.tldr li b{font-weight:700}
.tldr .updated{font-size:12px;color:var(--muted);margin:16px 0 0}
@media(max-width:600px){.tldr{padding:28px 22px}}

/* --- Tabla de hechos clave ---------------------------------------------------- */
.kf{width:100%;border-collapse:collapse;font-size:16px}
.kf caption{text-align:left;font-size:11px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;padding-bottom:16px;caption-side:top}
.kf th,.kf td{padding:16px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.kf tr:first-child th,.kf tr:first-child td{border-top:1px solid var(--line)}
.kf th{width:38%;font-weight:700;padding-right:24px}
.kf td{color:var(--muted)}
.kf td b{color:var(--ink)}
.bg-ink .kf th,.bg-ink .kf td{border-color:var(--line-light)}
.bg-ink .kf td{color:#bdb9b2}
.bg-ink .kf td b{color:#fff}

/* --- Precios orientativos (anclaje) ---------------------------------------- */
.costs{width:100%;border-collapse:collapse;font-size:15px}
.costs caption{text-align:left;font-size:12px;color:var(--muted);caption-side:bottom;padding-top:14px}
.costs th,.costs td{padding:16px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.costs thead th{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--ink)}
.costs td.num,.costs th.num{text-align:right;white-space:nowrap}
.costs td.you{font-weight:700;color:var(--ink)}
.costs td.back{font-weight:700;color:#3f7a33}
.costs tbody th{font-weight:700}
@media(max-width:640px){.costs th,.costs td{padding:12px 6px;font-size:13px}.costs .hide-s{display:none}}

/* --- Casos rápidos del simulador -------------------------------------------- */
.presets{display:flex;flex-wrap:wrap;gap:8px}
.preset{border:1px solid rgba(255,255,255,.3);border-radius:30px;padding:9px 14px;font-size:12px;font-weight:700;background:transparent;color:#fff;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.preset:hover{border-color:#fff}
.preset[aria-pressed=true]{background:var(--coral);color:var(--ink);border-color:var(--coral)}
.sim__note b{color:#fff}

/* --- ¿Qué pasa si…? (escenarios en pestañas) --------------------------------- */
.scen{display:grid;gap:34px;align-items:start}
@media(min-width:960px){.scen{grid-template-columns:.85fr 1.15fr;gap:60px}}
.scen__tabs{display:grid;border-top:1px solid var(--line)}
.scen__tab{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;font-size:18px;font-weight:700;letter-spacing:-.01em;cursor:pointer;color:var(--ink)}
.scen__tab .ic{display:inline-flex;align-items:center;gap:14px}
.scen__tab .ic svg{width:26px;height:26px;padding:6px;border-radius:50%;background:var(--mint);flex:none}
.scen__tab .go{font-weight:400;opacity:0;transition:opacity .2s,transform .2s}
.scen__tab:hover .go{opacity:.6}
.scen__tab[aria-selected=true]{color:var(--coral-ink)}
.scen__tab[aria-selected=true] .go{opacity:1;transform:translateX(4px)}
.scen__tab[aria-selected=true] .ic svg{background:var(--coral);color:var(--ink)}
.scen__panel{background:var(--ink);color:#fff;padding:38px 40px;display:grid;gap:18px}
.scen__panel[hidden]{display:none}
.scen__panel h3{color:#fff;font-size:clamp(26px,2.4vw,34px);letter-spacing:-.03em}
.scen__panel p{margin:0;color:#c9c5bf}
.scen__panel a{color:#fff;border-bottom:1px solid currentColor}
.verdict{display:inline-flex;align-items:center;gap:8px;border-radius:40px;padding:8px 14px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;width:max-content}
.verdict svg{width:16px;height:16px}
.verdict--si{background:var(--sage);color:var(--ink)}
.verdict--opt{background:#fff;color:var(--ink)}
.verdict--no{background:var(--coral);color:var(--ink)}
.scen__facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-light);margin-top:4px}
.scen__facts div{padding:16px 16px 0 0}
.scen__facts div+div{padding-left:16px;border-left:1px solid var(--line-light)}
.scen__facts span{display:block;font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:#9d9992;margin-bottom:6px}
.scen__facts b{font-size:20px;line-height:1.15;letter-spacing:-.02em}
@media(max-width:959.98px){.scen__tabs{display:flex;overflow-x:auto;gap:8px;border:0;padding-bottom:6px;scrollbar-width:none}.scen__tabs::-webkit-scrollbar{display:none}.scen__tab{flex:none;border:1px solid var(--line);border-radius:30px;padding:10px 16px;font-size:14px}.scen__tab .go{display:none}.scen__tab .ic svg{width:22px;height:22px;padding:4px}.scen__tab[aria-selected=true]{background:var(--ink);color:#fff;border-color:var(--ink)}}
@media(max-width:600px){.scen__panel{padding:28px 22px}.scen__facts{grid-template-columns:1fr}.scen__facts div,.scen__facts div+div{padding:12px 0;border-left:0;border-bottom:1px solid var(--line-light)}}

/* --- Calculadora de carencias ---------------------------------------------- */
.carencia{background:var(--mint);padding:32px 36px;display:grid;gap:20px;margin-top:34px}
@media(min-width:900px){.carencia{grid-template-columns:.9fr 1.1fr;gap:50px;align-items:center}}
.carencia h3{font-size:clamp(24px,2vw,30px);letter-spacing:-.025em}
.carencia p{margin:6px 0 0;color:var(--muted);font-size:15px}
.carencia label{display:grid;gap:8px;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-top:18px}
.carencia input[type=date]{height:50px;border-radius:100px;border:1px solid var(--ink);padding:0 20px;font:inherit;font-size:16px;background:#fff;color:var(--ink);max-width:260px}
.carencia__out{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(23,21,18,.2)}
.carencia__out div{padding:18px 16px 4px 0}
.carencia__out div+div{padding-left:16px;border-left:1px solid rgba(23,21,18,.2)}
.carencia__out span{display:block;font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;margin-bottom:8px}
.carencia__out output{display:block;font-size:20px;font-weight:700;letter-spacing:-.02em;line-height:1.15}
.carencia__out small{display:block;font-size:12px;color:var(--muted);margin-top:6px}
.carencia .fine{font-size:12px;color:var(--muted);margin:0}
@media(max-width:600px){.carencia{padding:26px 22px}.carencia__out{grid-template-columns:1fr}.carencia__out div,.carencia__out div+div{padding:14px 0;border-left:0;border-bottom:1px solid rgba(23,21,18,.2)}}

/* --- Garantías / motivos (tira de 4 con líneas) ----------------------------- */
.promise{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.promise>div{padding:28px 28px 8px 0;border-right:1px solid var(--line);display:grid;gap:10px;align-content:start}
.promise>div+div{padding-left:28px}
.promise>div:last-child{border-right:0}
.promise svg{width:28px;height:28px}
.promise h3{font-size:20px}
.promise p{margin:0;font-size:14px;color:var(--muted)}
@media(max-width:900px){.promise{grid-template-columns:1fr 1fr}.promise>div:nth-child(2){border-right:0}.promise>div:nth-child(3){padding-left:0}.promise>div{border-bottom:1px solid var(--line)}}
@media(max-width:600px){.promise{grid-template-columns:1fr}.promise>div,.promise>div+div{padding:22px 0;border-right:0}}

/* --- Glosario ------------------------------------------------------------------- */
.az{display:flex;flex-wrap:wrap;gap:6px;margin-top:26px}
.az a{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--cream);font-size:13px;font-weight:700}
.az a:hover{background:var(--ink);color:#fff}
.glossary{display:grid;border-top:1px solid var(--line);margin:0}
.term{display:grid;gap:10px;padding:26px 0;border-bottom:1px solid var(--line);scroll-margin-top:calc(var(--header-h) + 20px)}
@media(min-width:900px){.term{grid-template-columns:.8fr 1.2fr;gap:50px}}
.term dt{font-size:24px;font-weight:700;letter-spacing:-.02em;line-height:1.15}
.term dd{margin:0;color:var(--muted)}
.term dd p{margin:0 0 .6em}
.term dd .in-swipet{color:var(--ink);font-size:15px;background:var(--mint);padding:12px 16px;margin-top:8px}
.term dd a{color:var(--ink);border-bottom:1px solid currentColor}

/* --- Página de comparativa --------------------------------------------------- */
.vs-hero{display:grid;gap:30px;align-items:end}
@media(min-width:960px){.vs-hero{grid-template-columns:1.2fr .8fr;gap:60px}}
.vs-score{display:grid;border-top:1px solid var(--line)}
.vs-score div{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line);font-size:15px}
.vs-score b{white-space:nowrap}
.verdict-box{background:var(--sage);padding:34px 36px;display:grid;gap:14px}
.verdict-box h3{font-size:clamp(24px,2vw,30px)}
.verdict-box p{margin:0}
.honesty{font-size:13px;color:var(--muted);border-left:3px solid var(--coral);padding:6px 0 6px 18px;margin:26px 0 0}
.vs-list{display:grid;border-top:1px solid var(--line)}
.vs-list a{display:grid;grid-template-columns:60px 1fr 52px;gap:22px;align-items:center;border-bottom:1px solid var(--line);padding:26px 0}
.vs-list a>span{font-size:12px;color:var(--muted-2)}
.vs-list small{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--coral-ink);font-weight:700}
.vs-list h2,.vs-list h3{font-size:clamp(26px,2.6vw,36px);margin:2px 0}
.vs-list p{margin:4px 0 0;color:var(--muted);font-size:15px}
.vs-list .circle{width:52px;height:52px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:20px;transition:background-color .2s,color .2s}
.vs-list a:hover .circle{background:var(--ink);color:#fff}
@media(max-width:600px){.vs-list a{grid-template-columns:34px 1fr 44px;gap:12px}.vs-list .circle{width:44px;height:44px}}

/* --- Pequeños ajustes V2 ----------------------------------------------------- */
.hero-lead .hl{background:linear-gradient(transparent 62%,rgba(255,109,98,.55) 62%);padding:0 2px}
.cta-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;margin-top:60px}
.cta-strip p{margin:0;font-size:20px;font-weight:700;letter-spacing:-.02em;max-width:640px}
.cta-strip p span{color:var(--muted);font-weight:400;font-size:16px;display:block;letter-spacing:0}
.bg-ink .cta-strip{border-color:var(--line-light)}
.src{font-size:12px;color:var(--muted);margin-top:14px}
.src a{border-bottom:1px solid currentColor}

/* ---- 00_base_a11y.css ---- */
/* V2 — accesibilidad global: foco visible con contraste >= 3:1 en fondos claros y oscuros,
   texto secundario con contraste AA y tamaños mínimos legibles. */
:root{--muted-2:#6f6860}
:focus-visible{outline:3px solid var(--coral-ink);outline-offset:3px}
.bg-ink :focus-visible,.announcement :focus-visible,.sim :focus-visible,.manifesto :focus-visible,.comparison :focus-visible,
.help-panel :focus-visible,.inline-cta :focus-visible,.scen__panel :focus-visible,.hero :focus-visible,.site-footer :focus-visible,
.page-hero--dark :focus-visible{outline-color:var(--coral)}
.seg-opt input:focus-visible+span,.switch input:focus-visible~.track{outline:3px solid var(--coral-ink);outline-offset:2px}
.sim input[type=range]:focus-visible{outline:3px solid var(--coral);outline-offset:4px}
.site-footer .footer-legal p,.site-footer .footer-bottom{font-size:13px}


/* ---- 01_shared_v2.css ---- */
/* V2 — piezas compartidas: selector de plan del simulador y tope. */
.plan-toggle{display:flex;flex-wrap:wrap;gap:8px;padding:4px;border:1px solid var(--line-light);border-radius:999px;width:max-content;max-width:100%}
.plan-opt{appearance:none;border:0;background:transparent;color:rgba(255,255,255,.78);font:inherit;font-size:14px;line-height:1.2;padding:10px 16px;border-radius:999px;cursor:pointer;min-height:40px}
.plan-opt[aria-pressed=true]{background:#fff;color:var(--ink);font-weight:700}
.plan-opt:hover{color:#fff}.plan-opt[aria-pressed=true]:hover{color:var(--ink)}
.sim__cap{margin:0;font-size:14px;color:rgba(255,255,255,.78)}
.sim.is-capped .sim__cap{color:var(--coral)}
@media(max-width:600px){.plan-toggle{width:100%;border-radius:18px}.plan-opt{flex:1 1 100%;text-align:left;border-radius:14px}}

/* Tabla de planes */
.plans{width:100%;border-collapse:separate;border-spacing:0;min-width:640px;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden}
.plans caption{caption-side:top;text-align:left;font-size:14px;color:var(--muted);padding:0 0 12px}
.plans th,.plans td{padding:14px 16px;border-bottom:1px solid var(--line-2);text-align:center;font-size:15px;vertical-align:middle}
.plans tbody th{text-align:left;font-weight:400;color:var(--ink);width:38%}
.plans thead th{font-size:17px;font-weight:700;padding-top:22px}
.plans thead th.is-hl{background:var(--sage)}
.plans td.yes svg{width:22px;height:22px;color:#2f6b3a}
.plans td.no svg{width:18px;height:18px;color:var(--muted-2)}
.plans tr>*:nth-child(4){background:rgba(201,221,184,.28)}
.plans tfoot td{border-bottom:0;padding:18px 12px}
.btn--sm{min-height:42px;padding:0 18px;font-size:14px}
/* Qué tener a mano */
.need{background:var(--mint);border-radius:26px;padding:30px 32px}
.need h3{margin:0 0 16px;font-size:20px}
.need ul{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(3,1fr)}
.need li{display:flex;gap:12px;align-items:flex-start}
.need li svg{width:28px;height:28px;flex:none;color:var(--ink)}
.need li b{display:block;font-size:16px}.need li span{font-size:14px;color:var(--muted)}
@media(max-width:900px){.need ul{grid-template-columns:1fr}}
/* Quién está detrás */
.behind{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.behind__t{font-size:clamp(28px,3.4vw,44px);line-height:1.05;margin:0 0 16px}
.behind p{color:var(--muted)}
.behind__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.behind__grid>div{background:var(--cream);border-radius:20px;padding:20px;display:grid;gap:4px}
.behind__grid svg{width:26px;height:26px;color:var(--coral-ink)}
.behind__grid b{font-size:16px}.behind__grid span{font-size:14px;color:var(--muted)}
@media(max-width:900px){.behind{grid-template-columns:1fr;gap:28px}}
@media(max-width:480px){.behind__grid{grid-template-columns:1fr}}
/* Trustpilot */
.tp-badge{display:inline-grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:center;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--line);border-radius:18px;padding:12px 16px}
.tp-badge small{grid-column:1/-1;font-size:12.5px;color:var(--muted)}
.tp-stars{display:inline-flex;gap:2px;color:#00b67a}
.tp-stars svg{width:18px;height:18px}
.tp-half{position:relative;display:inline-block;width:18px;height:18px}
.tp-half svg{position:absolute;inset:0}
.tp-half svg:first-child{color:#d7d2c8}
.tp-half svg:last-child{clip-path:inset(0 50% 0 0)}
.tp-off{color:#d7d2c8;display:inline-flex}
.tp-badge--compact{padding:8px 12px;border-radius:999px;font-size:14px}
.tp-badge:hover{border-color:var(--ink)}
/* Subnavegación fija */
.subnav{position:sticky;top:var(--header-h);z-index:40;background:rgba(255,253,249,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.subnav__in{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding-block:10px}
.subnav__in::-webkit-scrollbar{display:none}
.subnav a{flex:none;text-decoration:none;color:var(--ink);font-size:14px;padding:8px 14px;border-radius:999px;border:1px solid transparent}
.subnav a:hover,.subnav a.is-active{border-color:var(--ink)}
@media(max-width:600px){.plan-opt,.preset{min-height:44px}}


/* ---- 02_comun.css ---- */
/* ==========================================================================
   V2 — piezas comunes (parte A de docs/contrato_v2_comun.md, v2_comun_ui.py).
   Diseño de Luis (tokens de swipet.css). Prefijo .c- salvo .pending* y .hero--*.
   Móvil primero; toques de 44-48 px; foco visible (00_base_a11y.css).
   ========================================================================== */

/* --- Marcas de «pendiente»: solo existen en la vista local (en producción no se generan) --- */
.pending-tag{font-size:12px;letter-spacing:.08em;line-height:1.35;white-space:normal;max-width:100%}
.pending-inline{background:#fff6d6;color:inherit;outline:1px dashed #b8860b;outline-offset:1px;border-radius:3px;padding:0 .2em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.hero .pending-inline,.bg-ink .pending-inline,.comparison .pending-inline,.sim .pending-inline,.scen__panel .pending-inline{background:rgba(255,243,196,.16)}
.pending-inline__tag{display:inline-block;margin-left:.45em;padding:1px 8px;border-radius:10px;background:#fff3c4;color:#5c4700;font:700 12px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.02em;text-transform:none;vertical-align:.08em;white-space:normal}
.c-cubre__item.pending{outline-offset:4px}

/* --- Hero V2: recorte propio en escritorio (--pos) y en móvil ≤ 600 px (--pos-m) --- */
.hero .hero-media img{object-position:var(--pos,center 43%)}
@media(max-width:600px){.hero .hero-media img{object-position:var(--pos-m,var(--pos,62% center))}}
.hero[style*="--pos:"]{height:auto;max-height:none;min-height:clamp(650px,calc(100vh - 116px),840px)}
.hero[style*="--pos:"] .hero-content>.eyebrow{font-size:12.5px}
@media(max-width:900px){.hero[style*="--pos:"]{min-height:0}}
/* Antetítulo del H1 (kicker): legible, con la raya coral si no hay antetítulo encima */
.hero h1 .c-kicker{display:flex;align-items:flex-start;gap:14px;margin:0 0 18px;font-size:clamp(18px,1rem + .6vw,24px);font-weight:700;line-height:1.2;letter-spacing:-.01em;text-transform:none;color:#fff}
.hero h1 .c-kicker::before{margin-top:.6em}
.hero-content>.eyebrow~h1 .c-kicker::before{display:none}
.hero h1 .c-kicker~.hero-h1-main::first-letter{text-transform:uppercase}
/* Con antetítulo, el H1 es la parte larga del titular SEO («A: B»): tope de 80 px en pantallas anchas para que
   «Te devolvemos el 70 % en el veterinario que elijas» (con «70 %» sin partir) quepa en 3 líneas y el botón se vea */
.hero h1 .c-kicker~.hero-h1-main{font-size:min(1em,80px)}

/* --- Enlace dentro de un texto (en el diseño los enlaces heredan color y no llevan subrayado) --- */
.c-textlink{color:var(--ink);font-weight:700;border-bottom:1px solid currentColor}
.c-textlink:hover{border-bottom-color:var(--coral-ink)}
.bg-ink .c-textlink,.hero .c-textlink{color:#fff}

/* --- Chips de confianza bajo el titular --- */
.c-chips{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.c-chips li{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:7px 14px;border-radius:999px;background:var(--cream);color:var(--ink);font-size:14px;line-height:1.25}
.c-chips svg{width:16px;height:16px;flex:none}
.c-chips .c-chips__star{color:#00b67a}
.c-chips a{position:relative;display:inline-flex;align-items:center;gap:8px;color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.c-chips a::after{content:"";position:absolute;left:-14px;right:-14px;top:50%;height:44px;transform:translateY(-50%)}
.c-chips a:hover{text-decoration-thickness:2px}
.hero .c-chips li,.bg-ink .c-chips li{background:rgba(16,13,10,.6);border:1px solid rgba(255,255,255,.26);color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
@media(max-width:600px){.c-chips{gap:6px;margin-top:24px}.c-chips li{min-height:32px;padding:6px 12px;font-size:13px}.c-chips li:nth-child(n+3){display:none}}
/* 03/10/2026: en móvil, «Inscrita en la DGSFP» (los dos chips caben en una fila desde 375 px y la primera pantalla gana
   una línea); los lectores de pantalla siguen leyendo «Agencia de seguros inscrita en la DGSFP» */
.c-chips__short{display:none}
@media(max-width:600px){
  .c-chips__full{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .c-chips__short{display:inline}
}

/* --- Ayuda humana (tarjeta y versión de una línea) --- */
.c-help{background:var(--cream);color:var(--ink);padding:24px 26px 10px}
.c-help__t{margin:0 0 8px;font-size:clamp(22px,1vw + 16px,28px);font-weight:700;line-height:1.1;letter-spacing:-.025em;color:var(--ink)}
.c-help__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));column-gap:28px}
.c-help__row{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:start;padding:10px 0 14px;border-top:1px solid var(--line)}
.c-help__ico{width:40px;height:40px;border-radius:50%;background:#fff;display:grid;place-items:center;margin-top:4px}
.c-help__ico svg{width:18px;height:18px}
.c-help__a{display:inline-flex;align-items:center;gap:10px;min-height:48px;font-size:16px;font-weight:700;line-height:1.25;color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;overflow-wrap:break-word;min-width:0}
.c-help__a:hover{text-decoration-thickness:2px}
.c-help__a .arr{font-weight:400}
.c-help__sub{margin:0;font-size:14px;line-height:1.45;color:var(--muted)}
.c-help--compact{display:flex;flex-wrap:wrap;align-items:center;column-gap:14px;row-gap:0;margin:26px 0 0;padding:0;background:none;font-size:15px;line-height:1.4;color:var(--muted)}
.c-help--compact>b{color:var(--ink);margin-right:2px}
.c-help--compact .c-help__a{font-size:15px;gap:8px}
.c-help--compact .c-help__a svg{width:17px;height:17px;flex:none}
.c-help--compact .c-help__h{font-size:14px}
/* (03/10/2026) en móvil la tarjeta pierde relleno; la versión de una línea (--compact) no tiene caja y va a ras del texto */
@media(max-width:600px){.c-help:not(.c-help--compact){padding:20px 18px 8px}}
.bg-ink .c-help--compact,.comparison .c-help--compact{color:#bdb9b2}
.bg-ink .c-help--compact>b,.bg-ink .c-help--compact .c-help__a,.comparison .c-help--compact>b,.comparison .c-help--compact .c-help__a{color:#fff}

/* --- CTA final V2: lo que hace falta para contratar y enlace discreto a la RC --- */
.c-final__need{display:flex;align-items:center;justify-content:center;gap:10px;max-width:620px;margin:24px auto 0;font-size:15px;line-height:1.45;color:var(--ink)}
.c-final__need svg{width:22px;height:22px;flex:none}
.c-final__rc{margin:8px 0 0;font-size:15px}
.c-final__rc-a{display:inline-flex;align-items:center;gap:10px;min-height:48px;font-weight:700;color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.c-final__rc-a:hover{text-decoration-thickness:2px}
.c-final__rc-a .arr{font-weight:400}
@media(max-width:600px){.c-final__need{justify-content:flex-start;text-align:left}.c-final__rc{text-align:left}}

/* --- Respuesta rápida --- */
.c-quick{background:var(--mint);border-left:4px solid var(--coral);padding:20px 24px;margin:0 0 34px;max-width:860px;color:var(--ink)}
.c-quick__t{margin:0 0 6px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.c-quick__a{font-size:18px;line-height:1.55}
.c-quick__a p{margin:0 0 .6em}
.c-quick__a>:last-child{margin-bottom:0}
.c-quick__a a{font-weight:700;border-bottom:1px solid currentColor}
@media(max-width:600px){.c-quick{padding:18px 18px 18px 16px;margin-bottom:28px}.c-quick__a{font-size:16.5px}}

/* --- Fuentes numeradas --- */
.c-sources-box{margin-top:40px;padding-top:22px;border-top:1px solid var(--line)}
.c-sources-box .c-sources__t{margin:0 0 12px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3;color:var(--ink)}
.c-sources{margin:0;padding:0 0 0 1.5em;display:grid;gap:4px;font-size:14px;line-height:1.5;color:var(--muted)}
.c-sources li{padding:3px 0;scroll-margin-top:8px} /* el html ya reserva la cabecera (y la subnavegación): solo un respiro */
.c-sources li::marker{color:var(--coral-ink);font-weight:700}
.c-sources-box .c-sources a{color:var(--ink);font-weight:400;border-bottom:0;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;overflow-wrap:anywhere}
.c-sources li:target{background:var(--mint);box-shadow:-8px 0 0 var(--mint),8px 0 0 var(--mint)}
.bg-ink .c-sources-box{border-color:var(--line-light)}
.bg-ink .c-sources{color:#bdb9b2}
.bg-ink .c-sources-box .c-sources a,.bg-ink .c-sources-box .c-sources__t{color:#fff}
.bg-ink .c-sources li:target{background:transparent;box-shadow:none;outline:1px solid var(--sage);outline-offset:4px}

/* --- Preguntas enlazables (faq_ids): margen para la cabecera y la subnavegación, y resalte del #hash --- */
.faq[id]{scroll-margin-top:8px}
.faq:target{background:var(--mint);box-shadow:-14px 0 0 var(--mint),14px 0 0 var(--mint)}

/* --- Buscador «¿Está cubierto?» (el filtro es el genérico de swipet.js) --- */
.c-cubre{display:grid;gap:22px}
.c-cubre__search{display:grid;gap:8px;max-width:680px}
html:not(.js) .c-cubre__search{display:none}
.c-cubre__label{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.c-cubre__field{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--ink);padding:2px 0}
.c-cubre__field:focus-within{outline:3px solid var(--coral-ink);outline-offset:4px}
.c-cubre__field svg{width:22px;height:22px;flex:none}
.c-cubre__field input{flex:1;min-width:0;height:52px;border:0;border-radius:0;background:transparent;font:inherit;font-size:18px;color:var(--ink);-webkit-appearance:none;appearance:none}
.c-cubre__field input:focus{outline:none}
.c-cubre__field input::placeholder{color:var(--muted);opacity:1}
.c-cubre__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));column-gap:32px;border-top:1px solid var(--line)}
.c-cubre__item{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:22px 0;border-bottom:1px solid var(--line);scroll-margin-top:8px}
.c-cubre__item[hidden]{display:none}
.c-cubre__item h3{font-size:19px;line-height:1.25;letter-spacing:-.01em}
.c-cubre__item p{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}
.c-cubre__item .pending-tag{margin-bottom:0}
.c-cubre .verdict{font-size:12.5px;letter-spacing:.08em;padding:6px 12px}
.c-cubre .verdict--si{background:var(--sage);color:var(--ink)}
.c-cubre .verdict--opt{background:#fff;color:var(--ink);border:1px dashed var(--ink)}
.c-cubre .verdict--no{background:var(--coral);color:var(--ink)}
.c-cubre__more{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.c-cubre__item:target{background:var(--mint);box-shadow:-12px 0 0 var(--mint),12px 0 0 var(--mint)}
.c-cubre__list .no-results{grid-column:1/-1;margin:0;padding:22px 0;font-size:16px;color:var(--ink)}
.c-cubre__list .no-results a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* --- Línea de carencias V2 (sobre .timeline-wrap/.timeline de Luis) --- */
.c-tl.timeline-wrap:first-child{margin-top:0}
.c-tl>h2,.c-tl>h4{font-size:clamp(28px,2.6vw,38px);letter-spacing:-.03em;line-height:1.05}
.c-tl .timeline{list-style:none;margin:0;padding:0}
.c-tl .tl-day small{display:block;margin-bottom:8px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.2;color:var(--muted)}
.c-tl__n{display:block}
.c-tl__n::first-letter{text-transform:uppercase}
.c-tl .tl-item h3,.c-tl .tl-item h4,.c-tl .tl-item h5{margin-bottom:10px;font-size:20px;line-height:1.2;letter-spacing:-.01em}
.c-tl .tl-item li{font-size:13px}
.bg-cream .c-tl .tl-item li,.bg-soft .c-tl .tl-item li{background:#fff}
.c-tl__pend{font-size:14px}
.c-tl__note{max-width:720px;margin:22px 0 0;font-size:13px;color:var(--muted)}

/* --- Barra fija de móvil: nombres largos sin desbordar y fuera de la vista al escribir ---
   (05_global.css repite las dos primeras reglas con los mismos valores: no se pisan) */
.mbar .btn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1 1 auto}
.mbar .btn>[data-quote-label]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mbar .btn>.arr{flex:none}
body:has(input:focus,select:focus,textarea:focus) .mbar{transform:translateY(120%);opacity:0;pointer-events:none}

/* --- Tarjeta de arranque del hero (starter_card, que va en hero_v2): lo marcado [hidden] no se ve
   (.btn y .starter__alt fijan display y anulaban el atributo) y el botón no separa «Ver el precio de» del nombre --- */
.hero-card--starter [hidden]{display:none!important}
.starter [data-starter-cta]{justify-content:flex-start;gap:.28em}
.starter [data-starter-cta] [data-pet-name]{min-width:0;overflow:hidden;text-overflow:ellipsis}
.starter [data-starter-cta]>.arr{flex:none;margin-left:auto;padding-left:14px}

/* --- Piezas de v2_comun seguidas dentro de una misma sección: separación uniforme (no se tocan) --- */
:is(.c-tbl,.c-price,.c-cubre,.c-help,.c-reviews,.c-rating,.c-criticas,.c-vs,.c-verdicts,.c-verdicts__nota,.c-xy,.c-bills,.c-bills__nota,.kf,.scen,.sim,.carencia,.need)
+:is(.c-tbl,.c-price,.c-cubre,.c-help:not(.c-help--compact),.c-reviews,.c-rating,.c-criticas,.c-vs,.c-verdicts,.c-xy,.c-bills,.kf){margin-top:clamp(40px,5vw,64px)}

/* --- Subnavegación: en móvil se esconde al bajar y vuelve al subir (02_comun.js) --- */
@media(max-width:899.98px){
  .subnav{transition:transform .28s var(--ease)}
  .subnav.c-subnav--off{transform:translateY(-100%)}
  .subnav.c-subnav--off:focus-within{transform:none}
}


/* ---- 03_tablas.css ---- */
/* V2 · B — Tablas de costes, coberturas y planes, bloque de precio y veredicto «Según tu plan» (v2_comun_tablas.py).
   Prefijo .c- (salvo .verdict--plan, que fija el contrato). Móvil primero: en pantallas pequeñas cada fila es una
   tarjeta con la etiqueta de cada dato (td::before, sale de data-label) y a partir de 640 px (costes) o 700 px
   (coberturas) vuelve a ser una tabla. La de planes se desliza en horizontal con la primera columna fija. */

/* --- Veredicto nuevo: «Según tu plan» / «Antes de contratar» ------------------------------------ */
.verdict--plan{background:var(--cream);color:var(--ink);box-shadow:inset 0 0 0 1px rgba(23,21,18,.22)}

/* --- Piezas comunes ------------------------------------------------------------------------------ */
.c-tbl{margin:0;color:var(--ink)}
.c-tbl table{width:100%;border-collapse:collapse}
.c-tbl caption,.c-plans__cap{text-align:left;font-size:13px;line-height:1.5;color:var(--muted);padding:0 0 14px;margin:0}
.c-nw{white-space:nowrap}
.c-ref{font-size:12.5px;font-weight:700;line-height:0;color:var(--muted);margin-left:3px;letter-spacing:0}
.c-ast{color:var(--coral-ink);font-weight:700;margin-left:2px}
.c-notes{display:grid;gap:8px;margin:16px 0 0;font-size:13px;line-height:1.55;color:var(--muted)}
.c-notes p{margin:0}
.c-notes b{color:var(--ink)}
.c-src__t{margin:6px 0 0;font-size:12.5px;font-weight:700;color:var(--ink)}
.c-src{margin:0;padding-left:1.4em;display:grid;gap:2px;font-size:12.5px}
.c-link{display:inline-block;padding:12px 0;line-height:20px;font-weight:700;color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.c-link:hover{text-decoration-color:var(--coral);text-decoration-thickness:2px}
.c-block{display:block}
.c-costs .c-none{color:var(--ink)}
.bg-ink .c-costs .c-none{color:#fff}
.c-srclink{padding:4px 0;color:inherit;text-decoration:underline;text-underline-offset:3px}
.c-costs .is-src .c-srclink{display:block;width:max-content;max-width:100%;min-height:24px;padding:3px 0}
.c-srclink:hover{color:var(--ink);text-decoration-color:var(--coral)}
.c-tbl td small{display:block;margin-top:3px;font-size:12.5px;font-weight:400;line-height:1.4;color:var(--muted)}
.c-tbl th,.c-tbl td{overflow-wrap:break-word;hyphens:auto}

/* Etiqueta de cada dato en móvil y cabeceras de columna en escritorio */
.c-costs td::before,.c-cov td::before{content:attr(data-label);display:block;margin-bottom:4px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1.3;color:var(--muted)}

/* Cabecera oculta a la vista (sigue ahí para los lectores de pantalla) */
.c-costs thead,.c-cov thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* «Ver más»: el resto de filas va en un <details>. En escritorio se ve abierto (::details-content). */
.c-more>summary{list-style:none;display:inline-flex;align-items:center;gap:10px;min-height:44px;margin:16px 0 4px;padding:10px 22px;border:1px solid var(--ink);border-radius:999px;background:transparent;color:var(--ink);font-size:14px;font-weight:700;line-height:1.25;cursor:pointer;transition:background-color .2s,color .2s}
.c-more>summary::-webkit-details-marker{display:none}
.c-more>summary::marker{content:""}
.c-more>summary:hover{background:var(--ink);color:#fff}
.c-more>summary svg{width:18px;height:18px;flex:none;transition:transform .2s var(--ease)}
.c-more[open]>summary svg{transform:rotate(180deg)}
.c-more:not([open]) .c-more__open,.c-more[open] .c-more__closed{display:none}
.c-tbl--cont tbody tr:first-child{border-top:0}

/* --- Tabla de costes ------------------------------------------------------------------------------ */
.c-costs,.c-costs tbody,.c-costs caption{display:block}
.c-costs colgroup,.c-cov colgroup{display:none}
.c-costs tr{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;padding:18px 0;border-bottom:1px solid var(--line)}
.c-costs tbody tr:first-child{border-top:1px solid var(--ink)}
.c-costs.c-tbl--cont tbody tr:first-child{border-top:0}
.c-costs th[scope=row]{grid-column:1/-1;text-align:left;font-size:17px;font-weight:700;line-height:1.25;letter-spacing:-.01em}
.c-costs td{display:block;min-width:0;font-size:15px;line-height:1.4}
.c-costs__nota{display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;letter-spacing:0;color:var(--muted)}
.c-costs .is-back{color:#2f6b3a;font-weight:700}
.c-costs .is-you{font-weight:700}
.c-costs .is-cubre{font-weight:700}
@media(min-width:640px){
  .c-costs{display:table;table-layout:fixed}
  .c-costs caption{display:table-caption;caption-side:top}
  .c-costs thead{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal;display:table-header-group}
  .c-costs.c-tbl--cont thead{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .c-costs tbody{display:table-row-group}
  .c-costs tr{display:table-row;padding:0}
  .c-costs tbody tr:first-child{border-top:0}
  .c-costs th,.c-costs td{display:table-cell;padding:16px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
  .c-costs tr>:first-child{padding-left:0}
  .c-costs tr>:last-child{padding-right:0}
  .c-costs td::before{content:none}
  .c-costs thead th{padding-top:0;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1.3;color:var(--muted);border-bottom:1px solid var(--ink);vertical-align:bottom}
  .c-costs th[scope=row]{font-size:16px}
  .c-costs colgroup{display:table-column-group}
  .c-costs--prod col:nth-child(1){width:31%}.c-costs--prod col:nth-child(2){width:15%}.c-costs--prod col:nth-child(3){width:20%}
  .c-costs--prod col:nth-child(4){width:16%}.c-costs--prod col:nth-child(5){width:18%}
  .c-costs--art col:nth-child(1){width:29%}.c-costs--art col:nth-child(2){width:16%}.c-costs--art col:nth-child(3){width:23%}
  .c-costs--art col:nth-child(4){width:16%}.c-costs--art col:nth-child(5){width:16%}
  .c-tbl--costs .c-more>summary{margin-top:18px}
}
@media(min-width:640px){@supports selector(::details-content){
  .c-tbl--costs .c-more>summary{display:none}
  .c-tbl--costs .c-more::details-content{content-visibility:visible}
}}

/* --- Tabla de coberturas -------------------------------------------------------------------------- */
.c-cov,.c-cov tbody,.c-cov caption{display:block}
.c-cov tr{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;padding:18px 0;border-bottom:1px solid var(--line)}
.c-cov tr.c-cov__grp{display:block;padding:30px 0 12px;border-bottom:1px solid var(--ink)}
.c-cov tbody:first-of-type tr.c-cov__grp{padding-top:6px}
.c-cov__grp th{display:block;text-align:left}
.c-cov__grp th>span{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;line-height:1.4;color:var(--ink)}
.c-cov__grp th>span::before{content:"";flex:none;width:30px;height:1px;background:var(--coral)}
.c-cov th[scope=row]{grid-column:1/-1;text-align:left;font-size:17px;font-weight:700;line-height:1.25;letter-spacing:-.01em}
.c-cov__h{display:flex;align-items:center;gap:12px}
.c-cov__h svg{width:34px;height:34px;padding:8px;border-radius:50%;background:var(--mint);color:var(--ink);flex:none}
.c-cov td{display:block;min-width:0;font-size:15px;line-height:1.45}
.c-cov td.c-cov__inc{grid-column:1/-1;color:var(--muted)}
.c-cov td.c-cov__inc::before{content:none}
.c-cov td.c-cov__lim{font-weight:700}
@media(min-width:700px){
  .c-cov{display:table;table-layout:fixed}
  .c-cov caption{display:table-caption;caption-side:top}
  .c-cov thead{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal;display:table-header-group}
  .c-cov.c-tbl--cont thead{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .c-cov tbody{display:table-row-group}
  .c-cov tr,.c-cov tr.c-cov__grp{display:table-row;padding:0}
  .c-cov th,.c-cov td{display:table-cell;padding:18px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
  .c-cov tr>:first-child{padding-left:0}
  .c-cov tr>:last-child{padding-right:0}
  .c-cov td::before{content:none}
  .c-cov thead th{padding-top:0;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1.3;color:var(--muted);border-bottom:1px solid var(--ink);vertical-align:bottom}
  .c-cov__grp th{display:table-cell;padding:34px 0 12px;border-bottom:1px solid var(--ink)}
  .c-cov tbody:first-of-type .c-cov__grp th{padding-top:18px}
  .c-cov th[scope=row]{font-size:16px}
  .c-cov colgroup{display:table-column-group}
  .c-cov col:nth-child(1){width:23%}.c-cov col:nth-child(2){width:39%}.c-cov col:nth-child(3){width:20%}.c-cov col:nth-child(4){width:18%}
}
@media(min-width:700px){@supports selector(::details-content){
  .c-tbl--cov .c-more>summary{display:none}
  .c-tbl--cov .c-more::details-content{content-visibility:visible}
}}

/* --- Tabla de planes ------------------------------------------------------------------------------ */
.c-hint{display:flex;align-items:center;gap:6px;margin:0 0 10px;font-size:13px;color:var(--muted)}
@media(min-width:760px){.c-hint{display:none}}
.c-plans__scroll{position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch;background:#fff;border:1px solid var(--line);border-radius:22px}
.c-plans__scroll:focus-visible{outline:3px solid var(--coral-ink);outline-offset:3px}
.c-plans{width:100%;min-width:620px;border-collapse:separate;border-spacing:0;font-size:15px}
.c-plans th,.c-plans td{padding:14px;border-bottom:1px solid var(--line-2);text-align:center;vertical-align:middle;background:#fff}
.c-plans thead th{padding-top:22px;font-size:17px;font-weight:700;letter-spacing:-.01em;line-height:1.2}
.c-plans tbody th{width:36%;text-align:left;font-weight:400;line-height:1.35;color:var(--ink)}
.c-plans th[scope=row],.c-plans thead th:first-child{position:sticky;left:0;z-index:1;box-shadow:1px 0 0 var(--line)}
.c-plans td.is-yes svg{width:22px;height:22px;margin:auto;color:#2f6b3a}
.c-plans td.is-no svg{width:18px;height:18px;margin:auto;color:var(--muted-2)}
.c-plans tfoot th,.c-plans tfoot td{border-bottom:0;padding:18px 10px}
.c-plans .btn{min-height:44px}
@media(max-width:600px){.c-plans{font-size:14px}.c-plans th,.c-plans td{padding:12px 10px}.c-plans tbody th{width:auto;min-width:150px}}

/* --- Bloque de precio ----------------------------------------------------------------------------- */
.c-price>*{min-width:0}
.c-price .split__copy{grid-template-columns:minmax(0,1fr)}
.c-price .pending-tag,.c-tbl .pending-tag{width:auto;max-width:100%;white-space:normal}
.c-price .split__copy h3{margin-top:4px}
.c-price__pay{display:flex;gap:12px;align-items:flex-start}
.c-price .split__copy .c-price__pay{color:var(--ink)}
.c-price__pay svg{width:24px;height:24px;flex:none;margin-top:1px}
.c-price .discount{margin-top:0}
.c-price .pending{margin:6px 0}
.c-price .btn--block{white-space:normal;text-align:left}

/* --- Sobre fondo oscuro ---------------------------------------------------------------------------- */
.bg-ink .c-tbl,.bg-ink .c-tbl th,.bg-ink .c-notes b,.bg-ink .c-link,.bg-ink .c-src__t{color:#fff}
.bg-ink .c-tbl caption,.bg-ink .c-notes,.bg-ink .c-costs__nota,.bg-ink .c-cov td.c-cov__inc,.bg-ink .c-tbl td small,
.bg-ink .c-costs td::before,.bg-ink .c-cov td::before,.bg-ink .c-costs thead th,.bg-ink .c-cov thead th,.bg-ink .c-ref{color:#bdb9b2}
.bg-ink .c-costs tr,.bg-ink .c-cov tr,.bg-ink .c-costs th,.bg-ink .c-costs td,.bg-ink .c-cov th,.bg-ink .c-cov td{border-color:var(--line-light)}
.bg-ink .c-costs .is-back{color:var(--sage)}
.bg-ink .c-ast{color:var(--coral)}
.bg-ink .c-more>summary{border-color:#fff;color:#fff}
.bg-ink .c-more>summary:hover{background:#fff;color:var(--ink)}

/* --- 03/10/2026 · Móvil: lo que se lee no baja de 14-14,5 px y las fuentes de cada fila se tocan sin fallar ---------- */
@media(max-width:600px){
  .c-costs__nota{font-size:14.5px;line-height:1.45}
  .c-notes{font-size:14.5px;line-height:1.55}
  .c-tbl caption,.c-plans__cap{font-size:14px}
  .c-tbl td small{font-size:13.5px}
  /* enlaces a la fuente de cada precio: 44 px de alto (antes 24-27 px, uno pegado al otro) */
  .c-costs .is-src .c-srclink{display:flex;align-items:center;min-height:44px;padding:4px 0;line-height:1.3}
}


/* ---- 04_prueba.css ---- */
/* V2 — Parte C de v2_comun (v2_comun_prueba.py): opiniones de Trustpilot y comparativas con nombre.
   Móvil primero. Lenguaje de Luis: líneas finas, tarjetas rectas, salvia/menta/crema y tinta.
   Todas las clases con prefijo .c- (salvo .verdict-box y .honesty, que ya existen en swipet.css). */
:root{--c-tp:#007a53}          /* verde tipo Trustpilot, oscurecido para contraste >= 4,5:1 sobre papel */
.c-reviews,.c-rating,.c-criticas,.c-vs,.c-verdicts,.c-xy,.c-bills{--c-bg:var(--paper)}
.bg-cream .c-vs,.bg-soft .c-vs{--c-bg:var(--cream)}
.bg-mint .c-vs{--c-bg:var(--mint)}
.bg-sage .c-vs{--c-bg:var(--sage)}
.bg-ink .c-vs,.comparison .c-vs{--c-bg:var(--ink)}
/* Ninguna rejilla crece más que su contenedor (la tabla y el carrusel se desplazan por dentro) */
.c-reviews,.c-rating,.c-criticas,.c-critica,.c-critica__body,.c-critica__quotes,.c-vs,.c-verdicts,.c-xy,.c-xy__cols,.c-bills{grid-template-columns:minmax(0,1fr)}
.c-reviews .pending-tag,.c-rating .pending-tag,.c-criticas .pending-tag,.c-vs .pending-tag,.c-bills~.pending .pending-tag{max-width:100%;white-space:normal}

/* --- Estrellas ------------------------------------------------------------------------------------ */
.c-stars{display:inline-flex;gap:2px;color:var(--c-tp);vertical-align:middle}
.c-stars svg{width:16px;height:16px}
.c-stars__off{display:inline-flex;color:#cfc9bf}

/* --- Citas de Trustpilot: carrusel con scroll-snap en móvil, rejilla en escritorio ------------------ */
.c-reviews{display:grid;gap:14px}
.c-reviews__t{font-size:clamp(20px,1.1vw + 14px,24px)}
.c-reviews__hint{margin:0;font-size:13px;color:var(--muted)}
.c-reviews__list{position:relative;list-style:none;margin:0;padding:0 0 10px;display:grid;grid-auto-flow:column;grid-auto-columns:86%;gap:18px;
  overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.c-reviews__list[data-n="1"]{grid-auto-columns:100%}
.c-reviews__list>li{display:flex;scroll-snap-align:start;min-width:0}
.c-review{margin:0;width:100%;display:flex;flex-direction:column;gap:16px;border-top:1px solid var(--ink);padding:22px 0 0;color:var(--ink)}
.c-review blockquote{margin:0;flex:1;font-size:17px;line-height:1.5}
.c-review blockquote::before{content:"“";display:block;height:30px;font-size:54px;line-height:1;font-weight:700;color:var(--coral-ink)}
.c-review blockquote p{margin:0 0 .6em}
.c-review blockquote p:last-child{margin:0}
.c-review figcaption{display:grid;gap:2px;font-size:14px;color:var(--muted)}
.c-review__meta{display:flex;flex-wrap:wrap;align-items:center;gap:0 12px;min-height:24px}
.c-review__who{font-weight:700;color:var(--ink)}
.c-review time{font-size:14px}
.c-review__link{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:14px;font-weight:700;color:var(--ink);
  text-decoration:underline;text-underline-offset:3px}
.c-review__link .arr{text-decoration:none}
.c-reviews__nota{margin:0;font-size:13px;line-height:1.5;color:var(--muted);max-width:780px}
.c-reviews__nota a{padding-block:14px;color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px} /* el relleno agranda la zona de toque sin cambiar el interlineado */
.c-reviews__nota a .arr,.c-rating__src a .arr{margin-left:4px}
@media(min-width:900px){
  .c-reviews__hint{display:none}
  .c-reviews__list{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;overflow:visible;padding:0}
  .c-reviews__list[data-n="1"]{grid-template-columns:minmax(0,640px)}
  .c-reviews__list[data-n="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.bg-ink .c-review{border-top-color:rgba(255,255,255,.5);color:#fff}
.bg-ink .c-review__who,.bg-ink .c-review__link,.bg-ink .c-reviews__nota a{color:#fff}
.bg-ink .c-review figcaption,.bg-ink .c-reviews__nota,.bg-ink .c-reviews__hint{color:#bdb9b2}
.bg-ink .c-review blockquote::before{color:var(--coral)}

/* --- Barras de la nota de Trustpilot ------------------------------------------------------------ */
.c-rating{display:grid;gap:14px;max-width:560px}
.c-rating__t{font-size:clamp(20px,1.1vw + 14px,24px)}
.c-rating__bars{display:grid;gap:12px}
.c-rating__row{display:grid;grid-template-columns:42px minmax(0,1fr) 48px;align-items:center;gap:12px;font-size:15px}
.c-rating__lbl{display:inline-flex;align-items:center;gap:4px;font-weight:700}
.c-rating__lbl svg{width:15px;height:15px;color:var(--c-tp)}
.c-rating__bar{height:12px;border-radius:99px;background:var(--line-2);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}
.c-rating__bar i{display:block;height:100%;background:var(--c-tp);border-radius:inherit}
.c-rating__pct{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}
.c-rating__src{margin:0;font-size:13px;color:var(--muted)}
.c-rating__src a{padding-block:12px;color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* --- Críticas y «Qué hemos hecho» ------------------------------------------------------------------ */
.c-criticas{display:grid;gap:34px}
.c-critica{display:grid;gap:16px}
.c-critica__t{font-size:clamp(20px,1.1vw + 14px,26px)}
.c-critica__body{display:grid;gap:18px;align-items:start}
.c-critica__quotes{display:grid;gap:22px}
.c-critica__resp{background:var(--mint);color:var(--ink);padding:22px 24px}
.c-critica__resp p{margin:0 0 .6em;font-size:16px}
.c-critica__resp p:last-child{margin:0}
.c-critica__resp a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.c-critica__resp .c-critica__lbl{font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
@media(min-width:900px){.c-critica__body{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:40px}}

/* --- Tabla comparativa ------------------------------------------------------------------------------ */
.c-vs{display:grid;gap:16px}
.c-vs__hint{margin:0;font-size:13px;color:var(--muted)}
.c-vs__scroll{position:relative;outline-offset:4px} /* contiene lo que va en posición absoluta (textos ocultos): así no ensancha la página */
.c-vs__table{width:100%;min-width:682px;border-collapse:separate;border-spacing:0;font-size:15px;line-height:1.45}
.c-vs__table[data-cols="2"]{min-width:512px}
.c-vs__table caption{caption-side:top;text-align:left;font-size:13px;color:var(--muted);padding:0 0 12px}
.c-vs__table th,.c-vs__table td{padding:14px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.c-vs__table thead th{font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--ink);border-bottom:1px solid var(--ink);white-space:nowrap}
.c-vs__table tbody th{font-weight:700;width:112px;min-width:112px}
.c-vs__table tr>:first-child{position:sticky;left:0;z-index:1;background:var(--c-bg);box-shadow:1px 0 0 var(--line)}
.c-vs__ref{font-size:13px;line-height:0;margin-left:3px}
.c-vs__ref a{position:relative;color:var(--coral-ink);font-weight:700;text-decoration:none}
.c-vs__ref a::after{content:"";position:absolute;inset:-12px -3px}
.c-vs__ref a:hover{text-decoration:underline}
.c-vs__nota{font-size:13px}
.c-vs__pend th,.c-vs__pend td{background:#fffbea}
.c-vs__table tr.c-vs__pend>:first-child{background:#fffbea}
.c-vs__note{margin:0;font-size:13px;line-height:1.5;color:var(--muted);max-width:900px}
.c-vs__ganan{background:var(--sage);color:var(--ink);padding:22px 24px;display:grid;gap:8px}
.c-vs__ganan .c-vs__ganan-t{font-size:clamp(19px,1vw + 14px,24px);color:var(--ink)}
.c-vs__ganan p{margin:0;font-size:16px}
.c-vs__src{font-size:13px;color:var(--muted)}
.c-vs__src-t{margin:0 0 6px;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}
.c-vs__src ol{margin:0;padding-left:30px;columns:2 320px;column-gap:36px}
.c-vs__src li{padding:3px 0;break-inside:avoid;scroll-margin-top:8px} /* el html ya reserva la cabecera y la subnavegación */
.c-vs__src li:target{background:var(--mint)}
.c-vs__src a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}
.c-vs__legal{margin:0;font-size:13px}
@media(max-width:700px){
  .c-vs__table{font-size:14px}
  .c-vs__table th,.c-vs__table td{padding:12px 10px}
  /* el pie de la tabla no se desplaza con ella: siempre se lee entero */
  .c-vs__table caption{position:sticky;left:0;max-width:calc(100vw - 2*var(--gutter))}
}
@media(min-width:701px){.c-vs__hint{display:none}}
@media(min-width:1000px){.c-vs__table tbody th{width:19%}}
.bg-ink .c-vs__table th,.bg-ink .c-vs__table td,.comparison .c-vs__table th,.comparison .c-vs__table td{border-color:var(--line-light)}
.bg-ink .c-vs__table thead th,.comparison .c-vs__table thead th{color:#fff;border-bottom-color:rgba(255,255,255,.5)}
.bg-ink .c-vs__table tr>:first-child,.comparison .c-vs__table tr>:first-child{box-shadow:1px 0 0 var(--line-light)}
.bg-ink .c-vs__table caption,.bg-ink .c-vs__note,.bg-ink .c-vs__src,.bg-ink .c-vs__hint,
.comparison .c-vs__table caption,.comparison .c-vs__note,.comparison .c-vs__src,.comparison .c-vs__hint{color:#bdb9b2}
.bg-ink .c-vs__src-t,.bg-ink .c-vs__src a,.comparison .c-vs__src-t,.comparison .c-vs__src a{color:#fff}
.bg-ink .c-vs__ref a,.comparison .c-vs__ref a{color:var(--coral)}
.bg-ink .c-vs__src li:target,.comparison .c-vs__src li:target{background:rgba(255,255,255,.12)}
.bg-ink .c-vs__pend th,.bg-ink .c-vs__pend td,.comparison .c-vs__pend th,.comparison .c-vs__pend td,
.bg-ink .c-vs__table tr.c-vs__pend>:first-child,.comparison .c-vs__table tr.c-vs__pend>:first-child{background:#3a3320}

/* --- Marca «pendiente» en línea (solo si la parte A todavía no está: en producción no sale) ---------- */
.c-pend-inline{display:inline;background:#fff3c4;color:#6b5400;border-radius:6px;padding:1px 6px;font-size:13px;font-weight:400;
  text-transform:none;letter-spacing:0;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.c-pend-inline::before{content:"Pendiente · ";font-weight:700}
/* El fondo oscuro de .pending-inline dentro de .comparison ya lo pone la parte A (02_comun.css). */

/* --- Veredictos «Te conviene X si…» -------------------------------------------------------------------- */
.c-verdicts{display:grid;gap:14px}
@media(min-width:760px){.c-verdicts{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}
.c-verdict{padding:26px 28px;align-content:start;color:var(--ink)}
.c-verdict .c-verdict__t{font-size:clamp(20px,1.1vw + 14px,26px);color:var(--ink)}
.c-verdict p{margin:0}
.c-verdicts+.c-verdicts__nota{margin-top:18px}

/* Lista con puntos neutros (sin marcas de sí/no) */
.c-dots{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.c-dots li{position:relative;padding-left:20px;font-size:16px;line-height:1.45}
.c-dots li::before{content:"";position:absolute;left:2px;top:.6em;width:7px;height:7px;border-radius:50%;background:currentColor}

/* --- ¿X o Y? ------------------------------------------------------------------------------------------------ */
.c-xy{display:grid;gap:22px}
.c-xy__cols{display:grid;gap:18px}
.c-xy__col{border-top:1px solid var(--ink);padding-top:20px;display:grid;gap:14px;align-content:start}
.c-xy__t{font-size:clamp(22px,1.4vw + 14px,30px)}
.c-xy__or{justify-self:center;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--cream);
  font-size:14px;font-weight:700;text-transform:uppercase;color:var(--ink)}
.c-xy__final{margin:0;background:var(--mint);color:var(--ink);padding:18px 22px;font-size:16px}
@media(min-width:760px){.c-xy__cols{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:28px}.c-xy__or{align-self:center}}
.bg-ink .c-xy__col{border-top-color:rgba(255,255,255,.5)}
.bg-ink .c-xy__or{background:var(--ink-2);color:#fff}

/* --- Facturas comparadas --------------------------------------------------------------------------------- */
.c-bills{display:grid;gap:16px}
@media(min-width:900px){.c-bills{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}
.c-bill{background:var(--cream);color:var(--ink);padding:24px;display:grid;gap:12px;align-content:start}
.c-bill .c-bill__t{font-size:clamp(19px,1vw + 14px,23px);color:var(--ink)}
.c-bill__amt{margin:0;font-size:15px;color:var(--muted)}
.c-bill__amt b{color:var(--ink)}
.c-bill__rows{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--line)}
.c-bill__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:12px 0;border-bottom:1px solid var(--line)}
.c-bill__who{font-weight:700;font-size:15px}
.c-bill__pay{justify-self:end;display:inline-flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;font-size:15px;text-align:right}
.c-bill__pay b{font-size:18px;letter-spacing:-.01em}
.c-bill__badge{display:inline-flex;align-items:center;border-radius:99px;background:var(--sage);color:var(--ink);padding:3px 10px;
  font-size:12.5px;font-weight:700}
.c-bill__note{grid-column:1/-1;font-size:14px;color:var(--muted)}
.c-bills__nota{margin:14px 0 0;font-size:13px;color:var(--muted)}
.bg-cream .c-bill,.bg-soft .c-bill,.bg-cream .c-xy__or,.bg-soft .c-xy__or{background:#fff}
.bg-ink .c-bills__nota{color:#bdb9b2}

/* --- 03/10/2026 · Móvil: las notas que se leen (fuentes, fechas, «cómo leer esta tabla», pistas de desliz) a 14 px ------- */
@media(max-width:600px){
  .c-reviews__hint,.c-reviews__nota,.c-rating__src,.c-vs__hint,.c-vs__note,.c-vs__src,.c-vs__legal,.c-vs__nota,.c-bills__nota,
  .c-vs__table caption{font-size:14px}
  .honesty{font-size:14px}
}


/* ---- 05_global.css ---- */
/* V2 — piezas globales: barra superior, cabecera, menú móvil, subnavegación, barra fija inferior, pie y carruseles.
   Móvil primero (el 90 % del tráfico es móvil): toques de 44 px, nada tapado, nada que se salga.
   El comportamiento está en assets/js/parts/05_global.js (menú, barra fija, acordeones del pie y carruseles). */

/* --- Barra superior ------------------------------------------------------------------------------------- */
.announcement .show-m{display:none}
@media(max-width:600px){
  .announcement{min-height:30px;padding:6px 12px;font-size:12px;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .announcement .show-m{display:inline}
}

/* --- Cabecera ---------------------------------------------------------------------------------------------- */
.header-actions .lbl-s{display:none}
@media(max-width:600px){.header-actions .lbl-l{display:none}.header-actions .lbl-s{display:inline}}
.nav a[aria-current="page"]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;text-decoration-color:var(--coral)}
.header-phone small{font-size:12px}
.header-bar .brand{min-height:44px}
@media(max-width:1079.98px){
  .header-actions{gap:8px}
  .header-actions .btn{display:inline-flex;min-height:44px;padding:0 18px;gap:12px;font-size:14px}
}
@media(max-width:600px){
  :root{--header-h:64px}
  .header-bar{gap:12px}
  .header-actions .btn{padding:0 16px}
}
@media(max-width:360px){.header-actions .btn{padding:0 12px}}

/* --- Menú móvil: el fondo no se desplaza mientras está abierto; filas de 50 px; accesos al final ----------- */
html:has(body.menu-open){overflow:hidden}
.mnav{overscroll-behavior:contain}
.mnav__body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;gap:22px;padding-top:18px}
.mnav__t{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;margin:0 0 4px;color:var(--muted)}
.mnav li a{min-height:50px;padding:12px 0;font-size:19px}
.mnav__cta{display:grid;gap:10px;background:var(--paper);box-shadow:0 -12px 24px rgba(23,21,18,.06)}
.mnav__cta .btn{min-height:50px}
.mnav__top .menu-btn{margin-right:-10px}
/* los botones del menú no se salen por la derecha a 360 px («WhatsApp: te responde Laura (IA)» se parte si no cabe) y,
   en pantallas bajas (Safari con sus barras, 360 × 640), ocupan menos para dejar ver más enlaces */
.mnav__cta{grid-template-columns:minmax(0,1fr)}
.mnav__cta .btn{min-width:0;white-space:normal;text-align:center;line-height:1.2;gap:16px}
@media(max-height:700px){.mnav__cta{gap:8px;padding-top:12px}.mnav__cta .btn{min-height:46px}}

/* --- Subnavegación: más baja en móvil y con un degradado que avisa de que se desliza ------------------------ */
@media(max-width:899.98px){
  .subnav__in{padding-block:4px;gap:2px}
  .subnav a{padding:0 14px}
  .subnav__in.sw-fade-r{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 44px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 44px),transparent)}
  .subnav__in.sw-fade-l{-webkit-mask-image:linear-gradient(90deg,transparent,#000 44px);mask-image:linear-gradient(90deg,transparent,#000 44px)}
  .subnav__in.sw-fade-l.sw-fade-r{-webkit-mask-image:linear-gradient(90deg,transparent,#000 44px,#000 calc(100% - 44px),transparent);mask-image:linear-gradient(90deg,transparent,#000 44px,#000 calc(100% - 44px),transparent)}
}
/* Las anclas no quedan debajo de la cabecera ni de la subnavegación (si la página tiene) */
html:has(.subnav){scroll-padding-top:calc(var(--header-h) + 66px)}
html:has(.subnav) .faq[id]{scroll-margin-top:0}
/* 03/10/2026: el html ya reserva la cabecera (y la subnavegación) con scroll-padding-top; los destinos de las anclas
   solo llevan un respiro. Antes .faq-group y .term (swipet.css), .c-sources li y .c-cubre__item (02_comun.css) y
   .c-vs__src li (04_prueba.css) volvían a sumar la cabecera y lo enlazado caía 100-200 px por debajo de ella. Al tocar
   una de estas anclas la subnavegación se queda a la vista (02_comun.js). */
.faq-group,.term{scroll-margin-top:8px}

/* --- Barra fija inferior (móvil y tableta) ------------------------------------------------------------------ */
.mbar{bottom:calc(10px + env(safe-area-inset-bottom));visibility:hidden;transition:transform .35s var(--ease),visibility 0s linear .35s}
.mbar.is-visible{visibility:visible;transition:transform .35s var(--ease),visibility 0s}
/* 05_global.js: fuera mientras se ve el hero entero, el CTA final o el pie */
.mbar.mbar--hold{transform:translateY(130%);visibility:hidden;pointer-events:none;transition:transform .35s var(--ease),visibility 0s linear .35s}
.mbar .btn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1 1 auto;gap:10px;padding:0 20px;justify-content:space-between;font-size:15px}
.mbar .btn>[data-quote-label]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mbar .btn>.arr{flex:none}
/* Texto largo («Ver el precio de tu perro») o corto («Ver mi precio»): 05_global.js elige el que cabe entero;
   sin JS, en móvil, el corto (el largo se cortaba con «…» de 360 a 414 px) */
.mbar .mbar__s{display:none}
@media(max-width:600px){.mbar .mbar__l{display:none}.mbar .mbar__s{display:inline}}
.mbar.mbar--largo .mbar__l{display:inline}.mbar.mbar--largo .mbar__s{display:none}
.mbar.mbar--corto .mbar__l{display:none}.mbar.mbar--corto .mbar__s{display:inline}
.mbar .icon-btn{width:54px;height:54px}
@media(max-width:360px){.mbar{left:8px;right:8px;gap:6px}.mbar .btn{padding:0 16px;font-size:14px}.mbar .icon-btn{width:50px;height:50px}}
/* Al escribir en un campo, la barra se aparta (el teclado ya ocupa media pantalla) */
body:has(input:focus,select:focus,textarea:focus) .mbar{transform:translateY(130%);visibility:hidden;pointer-events:none}
/* La barra se retira en el pie y en el CTA final: no hace falta reservarle sitio al final de la página */
@media(max-width:1079.98px){body{padding-bottom:0}.fab{display:none!important}}
/* Escritorio: el botón flotante de WhatsApp se aparta sobre la tarjeta del hero y la última línea del pie (05_global.js) */
.fab{transition:transform .25s var(--ease),background-color .2s,opacity .25s,visibility 0s}
.fab.fab--hold{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,visibility 0s linear .25s}

/* --- Pie ------------------------------------------------------------------------------------------------------ */
.footer-contact .footer-hours{font-size:13px;color:var(--muted);margin:-4px 0 4px 30px}
.footer-cols a{font-size:14px}
.footer-bottom{font-size:12px;letter-spacing:.06em;color:var(--muted)}
.footer-legal p a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:600px){
  .site-footer{padding-top:34px}
  .footer-top{gap:10px 20px;padding-bottom:24px}
  .footer-top img{width:104px}
  .footer-top p{font-size:18px;line-height:1.25}
  /* el CTA final, justo encima, ya lleva el botón del precio */
  .footer-top .btn{display:none}
  .footer-cols{gap:26px 18px;padding:24px 0 28px}
  .footer-contact{gap:0}
  .footer-contact>a{min-height:44px}
  .footer-contact .footer-hours{margin:-8px 0 6px 27px;line-height:1.4}
  .social{gap:10px;margin-top:6px}
  .social a{width:44px;height:44px}
  .footer-cols ul{gap:0}
  .footer-cols ul a{display:flex;align-items:center;min-height:44px;padding:4px 0;font-size:15px;line-height:1.3}
  .footer-legal{gap:14px;padding:22px 0}
  .footer-legal .funds{gap:12px 22px}
  /* logos de los fondos: cada uno a lo ancho y sin deformar (antes, 38 px de alto y el de NextGenerationEU encogido
     a lo ancho); la línea legal, a 13 px */
  .footer-legal .funds{display:grid;gap:14px;justify-items:start}
  .footer-legal .funds img{width:100%;max-width:420px;height:auto}
  .footer-legal p{font-size:13px;line-height:1.55}
  .footer-bottom{padding:14px 0 22px;gap:4px 20px}
}
/* Pie en móvil con acordeones (05_global.js crea el botón; sin JS se ven todas las columnas) */
@media(max-width:599.98px){
  .footer-cols:has(.f-col--acc){grid-template-columns:minmax(0,1fr);gap:0;padding:0 0 8px}
  .footer-cols:has(.f-col--acc)>.footer-contact{padding:22px 0 18px}
  .f-col--acc{border-top:1px solid var(--line)}
  .f-col--acc .fh{margin:0}
  .f-acc{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:0;border:0;background:none;
    font:inherit;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);cursor:pointer;text-align:left}
  .f-acc svg{width:18px;height:18px;flex:none;transition:transform .2s var(--ease)}
  .f-col--acc.is-open .f-acc svg{transform:rotate(180deg)}
  .f-col--acc>ul{display:none}
  .f-col--acc.is-open>ul{display:grid;padding:0 0 14px}
}

/* --- Carruseles deslizables: «1 de N» y botones anterior/siguiente (05_global.js) ---------------------------- */
.sw-car{display:none;align-items:center;justify-content:center;gap:16px;margin:2px 0 0}
.sw-car__b{width:44px;height:44px;flex:none;display:grid;place-items:center;padding:0;border-radius:50%;border:1px solid var(--ink);
  background:transparent;color:var(--ink);cursor:pointer;transition:background-color .2s,color .2s,opacity .2s}
.sw-car__b svg{width:18px;height:18px}
.sw-car__b:not(:disabled):hover{background:var(--ink);color:#fff}
.sw-car__b:disabled{opacity:.28;cursor:default}
.sw-car__n{margin:0;min-width:5.6em;text-align:center;font-size:14px;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums;color:var(--ink)}
.bg-ink .sw-car__b,.comparison .sw-car__b{border-color:rgba(255,255,255,.7);color:#fff}
.bg-ink .sw-car__n,.comparison .sw-car__n{color:#fff}
@media(max-width:899.98px){
  .c-reviews .sw-car{display:flex}
  .c-reviews:has(.sw-car__list) .c-reviews__hint{display:none}
}

/* --- Zonas de toque de 44 px sin cambiar el aspecto (el área crece por fuera con ::after) --------------------- */
.text-link{position:relative}
.text-link::after{content:"";position:absolute;inset:-10px -4px} /* 24 px de enlace + 20 = 44 px de toque */
.crumbs a{position:relative}
.crumbs a::after{content:"";position:absolute;inset:-13px -6px}


/* ---- 06_video.css ---- */
/* V2 — vídeo de fondo del hero (portada). Lo arranca 06_video.js solo si la conexión lo permite; si no, se ve el
   póster (su primer fotograma) con el mismo encuadre. */
.hero-media .hero-video{width:100%;height:100%;display:block;object-fit:cover;object-position:var(--vpos,center 62%);background:#1d1712}
@media(max-width:600px){.hero-media .hero-video{object-position:var(--vpos-m,46% center)}}
/* Portada en móvil: el vídeo va en una franja arriba (10_home.css); este encuadre deja el cachorro y el gatito
   enteros y a la derecha, con la pared oscura a la izquierda para la frase de Luis (manda sobre --vpos-m de
   HERO_VIDEOS, que se pensó para el vídeo detrás de todo el texto) */
@media(max-width:600px){.hero--home .hero-media .hero-video{object-position:78% 50%}}
/* De 601 a 900 px el vídeo ocupa todo el hero (texto y tarjeta): el encuadre deja a los dos animales a la derecha */
@media(min-width:601px) and (max-width:900px){.hero--home .hero-media .hero-video{object-position:74% 45%}}
.hero-video__btn{position:absolute;z-index:4;right:24px;top:24px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.5);
  background:rgba(23,21,18,.45);color:#fff;display:grid;place-items:center;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:0}
.hero-video__btn:hover{background:rgba(23,21,18,.7)}
.hero-video__btn svg{width:18px;height:18px}
.hero-video__btn .i-play{display:none}
.hero-video__btn.is-paused .i-play{display:block}
.hero-video__btn.is-paused .i-pause{display:none}
@media(max-width:600px){.hero-video__btn{top:12px;right:12px;width:44px;height:44px}}


/* ---- 07_integrador.css ---- */
/* V2 — ajustes globales del integrador tras la revisión (30/09/2026). Va antes que las partes de cada página:
   lo que una página decida para sí misma sigue mandando. */

/* La tarjeta de arranque ya no tapa el titular entre 901 y 1439 px (se generaliza la regla de la portada) */
@media(min-width:901px) and (max-width:1439.98px){
  .hero:has(.hero-card--starter){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);align-items:end}
  .hero:has(.hero-card--starter) .hero-content{grid-column:1;grid-row:1;align-self:start;max-width:none;margin:0;padding-right:40px}
  .hero:has(.hero-card--starter) .hero-card{position:relative;grid-column:2;grid-row:1;right:auto;bottom:auto;width:auto}
}
/* Las etiquetas de "pendiente" no ensanchan las rejillas estrechas */
.pending-tag{width:auto;max-width:100%;white-space:normal}
/* Cabecera en móviles pequeños (320-380 px): no se sale */
@media(max-width:380px){
  .header-bar{gap:10px}
  .brand-word{width:84px}
  .brand-icon{width:28px;height:28px}
  .header-actions{gap:6px}
  .header-actions .btn{padding:0 12px;min-height:44px}
  .menu-btn{width:44px;height:44px}
}
/* Tamaños mínimos legibles (notas >= 12,5 px, etiquetas >= 12 px) y contraste */
.eyebrow{font-size:12px}
.card-label,.hero-card .card-label{font-size:12px}
.sim__box span,.carencia label,.carencia__out span,.scen__facts span,.bubble .who,.post-card .cat,.badge{font-size:12px}
.verdict{font-size:12px}
.preset{font-size:14px}
.fine,.crumbs,.crumbs a,.sim__note,.kf caption,.tldr .updated,.toc summary{font-size:12.5px}
.footer-cols .fh,.site-footer .fh{font-size:13px}
.proofbar span,.quote-band p{font-size:14px}
.chip{font-size:14px;min-height:44px}
.step__n{color:var(--muted)}
/* Zonas de toque de 44 px */
.subnav a{min-height:44px;display:inline-flex;align-items:center}
.cta-strip .text-link{min-height:44px;display:inline-flex;align-items:center}
.footer-bottom nav a{display:inline-block;padding:12px 0}
@media(max-width:600px){.sim input[type=range]{height:44px}.plan-opt,.preset{min-height:44px}}
/* El nombre de la mascota no salta de línea dentro de la franja de CTA */
.cta-strip p span[data-pet-name]{display:inline}
/* Pie más compacto en móvil: ahora en 05_global.css (con acordeones) */
/* Vídeo del hero: botón de 44 px también en móvil */
@media(max-width:600px){.hero-video__btn{width:44px;height:44px}}
/* 03/10/2026: tabla «Siempre incluido / Tú eliges» (sustituye a la de planes) y descuentos de por vida */
.c-eliges td.is-yes{color:#2f6b3a;font-weight:700;white-space:nowrap}
.c-eliges td.is-opt{color:var(--coral-ink);font-weight:700;white-space:nowrap}
.c-eliges td svg{width:18px;height:18px;vertical-align:-4px;margin-right:6px}
.c-eliges__cta{margin:18px 0 0}
.hm-dto-vida,.c-price__vida{font-size:15px;color:var(--muted);margin:10px 0 0}

/* ==========================================================================
   03/10/2026 · Móvil primero (el 90 % del tráfico es móvil). Base común de todas las páginas hasta 600 px:
   titulares que no se parten feo (H1 de 34-38 px, H2 de 28-30 px), texto de lectura de 16 px, secciones de 60 px
   y botones de las filas de CTA a todo el ancho. Cada página puede afinarlo en su CSS (va después y manda).
   ========================================================================== */
@media(max-width:600px){
  :root{--sec:60px}
  .section--tight{padding-block:40px}
  .comparison{padding-block:60px}
  .final-cta{padding:60px var(--gutter)}
  .quote-band{padding:56px var(--gutter)}
  .quote-band blockquote{font-size:34px}
  /* Titulares */
  .hero h1{font-size:38px;line-height:1.02;letter-spacing:-.035em}
  .hero-content{padding-top:48px}
  .page-hero{padding:40px 0 34px}
  .page-hero h1{font-size:38px;line-height:1.02;letter-spacing:-.04em}
  .page-hero .lead{font-size:17px;margin-top:18px}
  .sec-head{margin-bottom:26px}
  .sec-head h2,.split__copy h2,.comparison h2,.manifesto h2,.faq-layout>.sec-head h2,.post-feature h2,.timeline-wrap>h3{font-size:30px;line-height:1.15;letter-spacing:-.03em}
  .sec-head--long h2{font-size:28px}
  .sec-head h2 .h2-lead,.comparison h2 .h2-lead,.split__copy h2 .h2-lead{font-size:15px;margin-bottom:.35em}
  .final-cta h2{font-size:34px;line-height:1.15}
  .sec-head .copy{margin-top:12px;font-size:16.5px;line-height:1.5}
  .manifesto-copy{padding:56px var(--gutter)}
  .manifesto-photo{min-height:300px}
  .manifesto-copy>p{font-size:16.5px;margin:20px 0}
  /* Texto de lectura: 16 px como mínimo */
  .hero-lead{font-size:17px;line-height:1.45}
  .cov-card p,.clear-card li,.checks li,.feature p,.step p,.tl-item p,.promise p,.carencia p,.scen__panel p,.review p,.faq__a,
  .c-cubre__item p,.split__copy p,.comparison-head p,.comparison .split-txt p,.timeline-wrap>p,.price-box .split__copy p{font-size:16px;line-height:1.5}
  .split__copy p:where(.eyebrow){font-size:12px;line-height:1.4}
  .prod-card p,.post-card p,.opt__d,.cov-card .limit{font-size:15px}
  /* Botones: 15 px y 54 px de alto en todas las páginas (03/10/2026; es lo que ya usaban cachorros, responsabilidad
     civil y la portada; antes convivían 14 px / 50 px y 16 px). Los pequeños (.btn--sm) siguen en 44 px */
  main .btn{font-size:15px;min-height:54px}
  main .btn--sm{min-height:44px}
  /* Botones de las filas de CTA: a todo el ancho, con la flecha a la derecha y el texto partido si hace falta */
  .cta-row>.btn{width:100%;justify-content:space-between;white-space:normal;text-align:left;line-height:1.25}
}
@media(max-width:380px){
  .hero h1,.page-hero h1{font-size:34px}
  .sec-head h2,.split__copy h2,.comparison h2,.manifesto h2,.faq-layout>.sec-head h2,.post-feature h2,.timeline-wrap>h3{font-size:28px}
  .sec-head--long h2{font-size:27px}
  .final-cta h2{font-size:31px}
}
/* 03/10/2026: ya no hay planes. swipet.js escribe en .sim__cap «Tope anual de la póliza: 3.000 € en total» (antes
   hablaba del tope «de este plan»; el simulador nunca llega al tope): no se enseña porque la nota del simulador ya dice
   «Te devolvemos hasta 3.000 € al año en total». */
.sim__cap{display:none}

/* ==========================================================================
   03/10/2026 (noche) · Revisión final del móvil: piezas comunes que pidieron los responsables de cada página
   ========================================================================== */
/* El antetítulo de los bloques de foto y texto (<p class="eyebrow"> dentro de .split__copy) es un antetítulo, no un
   párrafo: sin el gris de .split__copy p (swipet.css). En fondo oscuro sigue en blanco (.bg-ink .eyebrow). :where() no
   sube la especificidad: cada página lo puede seguir cambiando. */
.split__copy p:where(.eyebrow){color:var(--ink)}
/* Etiquetas del arranque de cotización («¿Cómo se llama?», «¿Qué edad tiene?»): de 10 a 12 px, como el resto de
   etiquetas (la portada y cachorros ya lo hacían en móvil); y la letra pequeña, a 12,5 px */
.starter .f>span{font-size:12px}
.starter .fine{font-size:12.5px;line-height:1.45}
/* Notas con icono (Sin compromiso · Te pediremos tus datos…): el icono no encoge cuando el texto ocupa dos líneas y,
   en móvil, se queda arriba, a la altura de la primera línea */
.cta-note svg{flex:none}
@media(max-width:600px){.cta-note span{align-items:flex-start}.cta-note span svg{margin-top:.15em}}
/* Migas: «Inicio» llega a los 44 px de ancho de toque */
.crumbs a::after{inset:-13px -8px}
/* Preguntas frecuentes en una columna (móvil y tableta): sin el hueco de 55 px entre la entradilla y la primera pregunta */
@media(max-width:999px){.faq-layout{gap:28px}}
@media(max-width:600px){
  /* CTA final: el antetítulo centrado ocupa dos líneas y su raya coral se quedaba sola a la izquierda; ahora va encima,
     centrada (como en las páginas de responsabilidad civil) */
  .final-cta .eyebrow{flex-direction:column;align-items:center;gap:10px;margin-bottom:18px;text-wrap:balance}
  .final-cta .eyebrow::before{margin-top:0}
}


/* ---- 08_vs.css ---- */
/* V2 — Comparativa «Swipet frente a…» (src/v2_comun_vs.py, 05/10/2026). Prefijo .cvs.
   Diseño de Luis: tinta, coral, salvia, crema. Móvil primero: texto >= 16 px y toques >= 44 px; en el móvil
   (< 700 px) cada fila es una tarjeta con el criterio arriba y Swipet y la otra compañía lado a lado. */
.cvs,.cvs-sel,.cvs-mx,.cvs-lp,.cvs-dg{--cvs-si:#4f7d43;--cvs-si-bg:var(--sage,#c9ddb8);--cvs-no:var(--coral-ink,#c23f36);
  --cvs-no-bg:#ffe3df;--cvs-sw-bg:var(--mint,#e2eed9);--cvs-r:18px;font-size:16px;line-height:1.5;color:var(--ink,#171512)}
.cvs *,.cvs-sel *,.cvs-mx *,.cvs-lp *,.cvs-dg *{box-sizing:border-box}
.cvs-aviso{margin:0;font-size:16px}

/* --- Iconos --- */
.cvs-ic{width:28px;height:28px;flex:none;display:block;overflow:visible}
.cvs-ic__bg{stroke-width:1.4}
.cvs-ic__fg{fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.cvs-ic--si .cvs-ic__bg{fill:var(--cvs-si-bg);stroke:var(--cvs-si)}
.cvs-ic--si .cvs-ic__fg{stroke:#1f3d19}
.cvs-ic--no .cvs-ic__bg{fill:var(--cvs-no-bg);stroke:var(--cvs-no)}
.cvs-ic--no .cvs-ic__fg{stroke:var(--cvs-no)}
.cvs-ic--parcial .cvs-ic__bg{fill:#fff;stroke:var(--cvs-si)}
.cvs-ic--parcial .cvs-ic__half{fill:var(--cvs-si-bg)}
.cvs-ic--parcial .cvs-ic__fg{stroke:var(--cvs-si);stroke-width:1.4}
.cvs-ic--nd .cvs-ic__bg{fill:none;stroke:var(--muted,#625e58);stroke-dasharray:2.6 2.4}
.cvs-ic--nd .cvs-ic__fg{stroke:var(--muted,#625e58);stroke-width:2}
/* bono (05/10/2026): un vale gris; no es ✓ ni «en parte», es un saldo que compartes con todo */
.cvs-ic--bono .cvs-ic__bg{fill:#e9e7e3;stroke:#8f8a83}
.cvs-ic--bono .cvs-ic__fg{stroke:#6b665f;stroke-width:1.6}
.cvs-ic--bono .cvs-ic__dash{stroke-dasharray:1.5 1.5;stroke-linecap:butt}

/* --- Leyenda --- */
.cvs-ley{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:16px;color:var(--muted,#625e58)}
.cvs-ley li{display:flex;align-items:center;gap:8px;margin:0}
.cvs-ley .cvs-ic{width:22px;height:22px}

/* --- Cabecera de vs_tabla --- */
.cvs{margin:0 0 8px}
.cvs__head{margin:0 0 18px}
.cvs__t{margin:0 0 10px;font-size:clamp(24px,5.6vw,34px);line-height:1.15;letter-spacing:-.01em}
.cvs__fig{margin:0 0 14px;max-width:72ch;color:var(--muted,#625e58)}
.cvs__fig b{color:var(--ink,#171512)}
.cvs-score{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.cvs-score__l{flex-basis:100%;font-size:16px;color:var(--muted,#625e58)}
.cvs-score__sw,.cvs-score__e{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 16px;border-radius:999px;font-size:16px}
.cvs-score__sw{background:var(--ink,#171512);color:#fff}
.cvs-score__sw .cvs-ic{width:24px;height:24px}
.cvs-score__e{background:var(--cream,#f6f1e9);border:1px solid var(--line,rgba(23,21,18,.14))}
.cvs-score__n{flex-basis:100%;font-size:16px;line-height:1.45;color:var(--muted,#625e58)}

/* --- Tabla: móvil primero (tarjetas) --- */
.cvs-t{width:100%;border-collapse:separate;border-spacing:0;display:block}
.cvs-t thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.cvs-t tbody{display:flex;flex-direction:column;gap:10px}
.cvs-t tr{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line,rgba(23,21,18,.14));border-radius:var(--cvs-r);
  overflow:hidden;background:#fff}
.cvs-t .cvs-crit{grid-column:1/-1;text-align:left;font-weight:700;font-size:17px;line-height:1.3;padding:14px 16px 12px;
  border-bottom:1px solid var(--line,rgba(23,21,18,.14));background:var(--paper,#fffdf9)}
.cvs-t td{display:block;padding:12px 14px 14px;min-width:0;vertical-align:top}
.cvs-t td.cvs-sw{background:var(--cvs-sw-bg)}
.cvs-t td+td{border-left:1px solid var(--line,rgba(23,21,18,.14))}
.cvs-c{display:flex;flex-direction:column;align-items:flex-start;gap:8px;position:relative}
.cvs-c__m{min-width:0;width:100%}
.cvs-who{display:block;font-size:16px;font-weight:700;line-height:1.2;margin:0 0 4px}
.cvs-sw .cvs-who{color:#1f3d19}
.cvs-c__b{font-size:16px;line-height:1.4;overflow-wrap:anywhere;hyphens:auto}
.cvs-txt{display:block}
.cvs-val{display:block;font-weight:700;font-size:17px;line-height:1.35}
.cvs-val--nd{font-weight:400;color:var(--muted,#625e58)}
.cvs-cell[data-v="nd"] .cvs-txt{color:var(--muted,#625e58)}
.cvs-cell[data-v="bono"] .cvs-txt{color:var(--muted,#625e58)}
.cvs-bono{display:inline-block;margin:0 0 6px;padding:2px 10px;border-radius:12px;background:#e9e7e3;color:#4d4943;
  font-weight:700;font-size:16px;line-height:1.35}
.cvs-mx__cell[data-v="bono"] .cvs-mx__w{color:#6b665f}
.cvs-excl{display:inline-block;margin-top:8px;padding:4px 12px;border-radius:999px;background:var(--coral,#ff6d62);color:var(--ink,#171512);
  font-weight:700;font-size:16px;line-height:1.3}
.cvs-c .pending-inline__tag{margin:6px 0 0}
/* llamadas a las fuentes: en el móvil no (toques pequeños); la lista de fuentes va debajo */
.cvs-ref{display:none}

/* --- Pie, fuentes y enlace a la comparativa --- */
.cvs-pie{margin:16px 0 0;font-size:16px;line-height:1.5;color:var(--muted,#625e58);max-width:80ch}
.cvs-pie__a,.cvs-go__a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:var(--ink,#171512);
  text-decoration:underline;text-underline-offset:3px}
.cvs-go{margin:8px 0 0}
.cvs-go__a{gap:10px;padding:10px 22px;border-radius:999px;background:var(--ink,#171512);color:#fff;text-decoration:none;min-height:48px}
.cvs-go__a:hover{background:var(--ink-2,#2b2723)}
.cvs-src{margin:14px 0 0;border:1px solid var(--line,rgba(23,21,18,.14));border-radius:14px;background:var(--cream,#f6f1e9)}
.cvs-src>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:10px 16px;
  cursor:pointer;font-weight:700;font-size:16px;list-style:none}
.cvs-src>summary::-webkit-details-marker{display:none}
.cvs-src>summary svg{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:2;transition:transform .2s}
.cvs-src[open]>summary svg{transform:rotate(180deg)}
.cvs-src__list{margin:0;padding:0 16px 8px 40px;font-size:16px}
.cvs-src__list li{padding:12px 0;border-top:1px solid var(--line,rgba(23,21,18,.14));scroll-margin-top:120px}
.cvs-src__list li:target{background:#fff6d6;outline:6px solid #fff6d6}
.cvs-src__q{margin:0 0 6px}
.cvs-cita{margin:8px 0;padding:8px 0 8px 14px;border-left:3px solid var(--cvs-si);font-style:italic;color:var(--ink,#171512)}
.cvs-cita p{margin:0;overflow-wrap:anywhere}
.cvs-src__m,.cvs-lp__src{margin:4px 0 0;color:var(--muted,#625e58);overflow-wrap:anywhere}
.cvs-src__m>span:first-child,.cvs-lp__src>span:first-child{font-weight:700}
.cvs-ext{display:inline-flex;align-items:center;gap:4px;min-height:44px;color:var(--ink,#171512);text-decoration:underline;
  text-underline-offset:3px;overflow-wrap:anywhere}

/* --- Selector con pestañas --- */
.cvs-sel{margin:0}
.cvs-sel__t{margin:0 0 10px;font-size:clamp(26px,6vw,40px);line-height:1.12}
.cvs-sel__lead{margin:0 0 18px;max-width:64ch;font-size:17px}
.cvs-sel__bar{margin:0 0 22px}
.cvs-sel__hint{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 10px;font-weight:700;font-size:16px}
.cvs-sel__swipe{font-weight:400;color:var(--muted,#625e58);white-space:nowrap}
.cvs-sel__swipe span{display:inline-block;animation:cvs-nudge 1.6s ease-in-out infinite}
.cvs-sel__bar.is-fit .cvs-sel__swipe,.cvs-sel__bar.is-end .cvs-sel__swipe{visibility:hidden}
.cvs-sel__scroll{position:relative;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;
  margin:0 calc(-1 * var(--gutter,18px));padding:4px var(--gutter,18px) 8px;
  -webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 44px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 44px),transparent)}
.cvs-sel__bar.is-end .cvs-sel__scroll,.cvs-sel__bar.is-fit .cvs-sel__scroll{-webkit-mask-image:none;mask-image:none}
.cvs-sel__scroll::-webkit-scrollbar{display:none}
.cvs-sel__tabs{display:flex;gap:8px;width:max-content}
.cvs-sel__tab{display:inline-flex;align-items:center;gap:6px;min-height:48px;padding:10px 18px;border-radius:999px;scroll-snap-align:start;
  border:1.5px solid var(--ink,#171512);background:#fff;color:var(--ink,#171512);font-weight:700;font-size:16px;text-decoration:none;
  white-space:nowrap;transition:background .2s,color .2s}
.cvs-sel__pre{font-weight:400}
.cvs-sel__tab:hover{background:var(--cream,#f6f1e9)}
.cvs-sel__tab[aria-selected="true"]{background:var(--ink,#171512);color:#fff}
.cvs-sel__tab[aria-selected="true"] .cvs-sel__pre{color:var(--sage,#c9ddb8)}
.cvs-sel__tab:focus-visible,.cvs-sel__panel:focus-visible,.cvs-mx__scroll:focus-visible{outline:3px solid var(--coral,#ff6d62);outline-offset:3px}
.cvs-sel__panel{scroll-margin-top:110px}
.cvs-sel__panel[hidden]{display:none}
/* Sin JS: solo el primer panel, o el del #ancla (:target) */
.cvs-sel:not(.is-js) .cvs-sel__panel{display:none}
.cvs-sel:not(.is-js) .cvs-sel__panel:first-child{display:block}
.cvs-sel:not(.is-js) .cvs-sel__panels:has(.cvs-sel__panel:target)>.cvs-sel__panel{display:none}
.cvs-sel:not(.is-js) .cvs-sel__panels:has(.cvs-sel__panel:target)>.cvs-sel__panel:target{display:block}
.cvs-sel__all{margin:26px 0 0;padding:18px 0 0;border-top:1px solid var(--line,rgba(23,21,18,.14))}
.cvs-sel__all p{margin:0 0 6px;font-weight:700}
.cvs-sel__all ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:0 22px}
.cvs-sel__all a{display:inline-flex;align-items:center;gap:8px;min-height:44px;color:var(--ink,#171512);text-decoration:underline;text-underline-offset:3px}
@keyframes cvs-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(5px)}}
@media (prefers-reduced-motion:reduce){.cvs-sel__swipe span,.cvs-mx__hint span:last-child{animation:none}.cvs-src>summary svg{transition:none}}

/* --- Matriz (todas a la vez) --- */
.cvs-mx{margin:0}
.cvs-mx__hint{display:flex;gap:8px;margin:0 0 8px;font-size:16px;color:var(--muted,#625e58)}
.cvs-mx__hint span:last-child{animation:cvs-nudge 1.6s ease-in-out infinite}
.cvs-mx.is-fit .cvs-mx__hint,.cvs-mx.is-end .cvs-mx__hint{visibility:hidden}
.cvs-mx__scroll{position:relative;overflow-x:auto;overscroll-behavior-x:contain;border:1px solid var(--line,rgba(23,21,18,.14));border-radius:var(--cvs-r);background:#fff}
.cvs-mx__t{border-collapse:separate;border-spacing:0;width:100%;min-width:calc(150px + var(--cvs-n,7) * 112px);font-size:16px}
.cvs-mx__t th,.cvs-mx__t td{padding:12px 10px;border-bottom:1px solid var(--line,rgba(23,21,18,.14));vertical-align:middle;text-align:center}
.cvs-mx__t tbody tr:last-child>*{border-bottom:0}
.cvs-mx__t thead th,.cvs-mx__c0{background:var(--cream,#f6f1e9);font-weight:700;vertical-align:bottom}
.cvs-mx__c0,.cvs-mx__crit{position:sticky;left:0;z-index:1;width:150px;min-width:150px;text-align:left!important;background:#fff;
  box-shadow:1px 0 0 var(--line,rgba(23,21,18,.14))}
.cvs-mx__c0{background:var(--cream,#f6f1e9)}
.cvs-mx__crit{font-weight:700;font-size:16px;line-height:1.3}
.cvs-mx__t .cvs-sw{background:var(--cvs-sw-bg)}
.cvs-mx__t thead .cvs-mx__sw{background:var(--ink,#171512);color:#fff}
.cvs-mx__cell .cvs-ic{margin:0 auto}
.cvs-mx__w{display:block;margin-top:4px;font-size:14px;line-height:1.2;color:var(--muted,#625e58)}
.cvs-mx__cell .cvs-val{font-size:15px;font-weight:700;line-height:1.3}
.cvs-mx__cell .cvs-val--nd{font-weight:400}
.cvs-mx__a{display:inline-flex;flex-direction:column;align-items:center;gap:2px;min-height:44px;justify-content:center;color:var(--ink,#171512);text-decoration:none}
.cvs-mx__ver{font-weight:400;font-size:14px;text-decoration:underline;text-underline-offset:3px}
.cvs-mx__ver .arr{display:none}
@media (max-width:699px){
  .cvs-mx__w{font-size:16px}
  .cvs-mx__cell .cvs-val{font-size:16px}
  .cvs-mx__t{min-width:calc(140px + var(--cvs-n,7) * 120px)}
  .cvs-mx__c0,.cvs-mx__crit{width:140px;min-width:140px}
  .cvs-mx__ver{font-size:16px}
}

/* --- Lo que no te cuentan --- */
.cvs-lp__head{margin:0 0 18px}
.cvs-lp__t{margin:0 0 8px;font-size:clamp(24px,5.6vw,34px);line-height:1.15}
.cvs-lp__lead{margin:0;max-width:64ch;color:var(--muted,#625e58)}
.cvs-lp__list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.cvs-lp__card{position:relative;margin:0;padding:20px 18px 16px;border-radius:var(--cvs-r);background:var(--cream,#f6f1e9);
  border-top:4px solid var(--coral,#ff6d62)}
.cvs-lp__n{display:block;font-weight:700;font-size:16px;color:var(--coral-ink,#c23f36);margin:0 0 4px;letter-spacing:.04em}
.cvs-lp__h{margin:0 0 6px;font-size:19px;line-height:1.3}
.cvs-lp__txt{margin:0 0 6px}
.cvs-lp__card .cvs-cita{border-left-color:var(--coral,#ff6d62)}

/* --- Dónde gana la otra compañía / límites de Swipet --- */
.cvs-dg{padding:20px 18px;border-radius:var(--cvs-r);border:1px solid var(--line,rgba(23,21,18,.14));background:#fff}
.cvs-dg__t{margin:0 0 6px;font-size:clamp(22px,5vw,28px);line-height:1.2}
.cvs-dg__lead{margin:0 0 12px;color:var(--muted,#625e58)}
.cvs-dg__list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cvs-dg__list li{position:relative;margin:0;padding:0 0 0 32px}
.cvs-dg__list li::before{content:"+";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--cream,#f6f1e9);
  border:1px solid var(--line,rgba(23,21,18,.14));font-weight:700;line-height:20px;text-align:center}
.cvs-dg--sw{background:var(--cream,#f6f1e9)}
.cvs-dg--sw .cvs-dg__list li::before{content:"!";background:#fff}
.cvs-dg__src{display:block;color:var(--muted,#625e58)}

/* --- Escritorio y tableta (>= 700 px): tabla de verdad --- */
@media (min-width:700px){
  .cvs-t{display:table;table-layout:fixed;border:1px solid var(--line,rgba(23,21,18,.14));border-radius:var(--cvs-r);overflow:hidden;background:#fff}
  .cvs-t thead{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal;display:table-header-group}
  .cvs-t tbody{display:table-row-group}
  .cvs-t tr{display:table-row;border:0;border-radius:0;background:none}
  .cvs-t th,.cvs-t td{display:table-cell;border-bottom:1px solid var(--line,rgba(23,21,18,.14))}
  .cvs-t tbody tr:last-child>*{border-bottom:0}
  .cvs-t thead th{padding:16px 18px;font-size:18px;text-align:left;background:var(--cream,#f6f1e9)}
  .cvs-t .cvs-th0{width:38%}
  .cvs-t thead .cvs-th-sw{background:var(--ink,#171512);color:#fff}
  .cvs-t .cvs-crit{background:#fff;padding:16px 18px;font-size:17px;vertical-align:middle}
  .cvs-t td{padding:14px 18px}
  .cvs-t td+td{border-left:1px solid var(--line,rgba(23,21,18,.14))}
  .cvs-c{flex-direction:row;align-items:flex-start;gap:12px}
  .cvs-who{display:none}
  .cvs-ref{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:24px;height:24px;padding:0 6px;margin-left:auto;
    border-radius:12px;font-size:13px;font-weight:700;color:var(--muted,#625e58);background:var(--cream,#f6f1e9);text-decoration:none}
  .cvs-sw .cvs-ref{background:#fff}
  .cvs-ref:hover,.cvs-ref:focus-visible{background:var(--ink,#171512);color:#fff}
  .cvs-score__l{flex-basis:auto}
  .cvs-lp__list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .cvs-sel__hint{justify-content:flex-start}
  .cvs-sel__scroll{overflow:visible;margin:0;padding:4px 0;-webkit-mask-image:none;mask-image:none}
  .cvs-sel__tabs{flex-wrap:wrap;width:auto}
  .cvs-sel__swipe{display:none}
  .cvs-dg{padding:24px 26px}
}
@media (min-width:1100px){
  .cvs-lp__list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cvs-mx__t{min-width:0}
  .cvs-mx__hint{display:none}
}
@media print{.cvs-src{display:block}.cvs-src>*{display:block}.cvs-sel__panel{display:block!important}}
/* la marca local «pendiente de revisión legal» no se monta sobre el titular */
.pending:has(>.cvs-aviso){margin-bottom:18px}

/* --- Tema oscuro (solo la portada, 05/10/2026, Eduardo: «en negro, como antes»): la comparativa tinta de la versión
   aprobada (.comparison .compare de swipet.css): sin tarjeta, texto blanco, líneas finas blancas, cabecera discreta,
   ✓ salvia, ✗ coral, bono gris. Las demás páginas siguen en claro. --- */
.cvs--oscuro,.cvs-sel--oscuro{--cvs-line:rgba(255,255,255,.18);color:#fff}
.cvs--oscuro .cvs__t,.cvs-sel--oscuro .cvs-sel__t{color:#fff}
.cvs--oscuro .cvs__fig,.cvs--oscuro .cvs-score__l,.cvs--oscuro .cvs-score__n,.cvs--oscuro .cvs-ley,
.cvs--oscuro .cvs-pie,.cvs--oscuro .cvs-src__m,.cvs-sel--oscuro .cvs-sel__lead,.cvs-sel--oscuro .cvs-sel__swipe{color:#bdb9b2}
.cvs--oscuro .cvs__fig b{color:#fff}
/* iconos sobre tinta */
.cvs--oscuro .cvs-ic--si .cvs-ic__bg{fill:var(--sage,#c9ddb8);stroke:var(--sage,#c9ddb8)}
.cvs--oscuro .cvs-ic--si .cvs-ic__fg{stroke:var(--ink,#171512)}
.cvs--oscuro .cvs-ic--no .cvs-ic__bg{fill:rgba(255,109,98,.14);stroke:var(--coral,#ff6d62)}
.cvs--oscuro .cvs-ic--no .cvs-ic__fg{stroke:var(--coral,#ff6d62)}
.cvs--oscuro .cvs-ic--parcial .cvs-ic__bg{fill:transparent;stroke:var(--sage,#c9ddb8)}
.cvs--oscuro .cvs-ic--parcial .cvs-ic__half{fill:var(--sage,#c9ddb8)}
.cvs--oscuro .cvs-ic--parcial .cvs-ic__fg{stroke:var(--sage,#c9ddb8)}
.cvs--oscuro .cvs-ic--nd .cvs-ic__bg{stroke:#9d9992}
.cvs--oscuro .cvs-ic--nd .cvs-ic__fg{stroke:#9d9992}
.cvs--oscuro .cvs-ic--bono .cvs-ic__bg{fill:rgba(255,255,255,.1);stroke:#9d9992}
.cvs--oscuro .cvs-ic--bono .cvs-ic__fg{stroke:#bdb9b2}
/* marcador */
.cvs--oscuro .cvs-score__sw{background:var(--sage,#c9ddb8);color:var(--ink,#171512)}
.cvs--oscuro .cvs-score__sw .cvs-ic--si .cvs-ic__bg{fill:var(--ink,#171512);stroke:var(--ink,#171512)}
.cvs--oscuro .cvs-score__sw .cvs-ic--si .cvs-ic__fg{stroke:var(--sage,#c9ddb8)}
.cvs--oscuro .cvs-score__e{background:transparent;border-color:var(--cvs-line);color:#fff}
/* tabla: filas separadas por líneas finas, sin cajas (móvil) */
.cvs--oscuro .cvs-t tbody{gap:0;border-top:1px solid rgba(255,255,255,.5)}
.cvs--oscuro .cvs-t tr{border:0;border-bottom:1px solid var(--cvs-line);border-radius:0;background:none}
.cvs--oscuro .cvs-t .cvs-crit{background:none;border-bottom:0;padding:16px 0 8px;color:#fff}
.cvs--oscuro .cvs-t td{padding:4px 12px 16px 0}
.cvs--oscuro .cvs-t td.cvs-sw{background:none}
.cvs--oscuro .cvs-t td+td{border-left:1px solid var(--cvs-line);padding-left:12px}
.cvs--oscuro .cvs-who{color:#9d9992}
.cvs--oscuro .cvs-sw .cvs-who{color:var(--sage,#c9ddb8)}
.cvs--oscuro .cvs-sw .cvs-c__b{font-weight:700}
.cvs--oscuro .cvs-cell[data-v="no"] .cvs-txt,.cvs--oscuro .cvs-cell[data-v="nd"] .cvs-txt,
.cvs--oscuro .cvs-cell[data-v="bono"] .cvs-txt,.cvs--oscuro .cvs-val--nd{color:#bdb9b2}
.cvs--oscuro .cvs-bono{background:rgba(255,255,255,.12);color:#d8d4cd}
/* pie, fuentes y enlaces */
.cvs--oscuro .cvs-pie__a,.cvs--oscuro .cvs-ext{color:#fff}
.cvs--oscuro .cvs-go__a{background:#fff;color:var(--ink,#171512)}
.cvs--oscuro .cvs-go__a:hover{background:var(--sage,#c9ddb8)}
.cvs--oscuro .cvs-src{background:rgba(255,255,255,.05);border-color:var(--cvs-line);color:#fff}
.cvs--oscuro .cvs-src__list li{border-top-color:var(--cvs-line)}
.cvs--oscuro .cvs-src__list li:target{background:rgba(255,255,255,.1);outline-color:rgba(255,255,255,.1)}
.cvs--oscuro .cvs-cita{color:#fff;border-left-color:var(--sage,#c9ddb8)}
/* pestañas sobre tinta */
.cvs-sel--oscuro .cvs-sel__hint{color:#fff}
.cvs-sel--oscuro .cvs-sel__tab{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.cvs-sel--oscuro .cvs-sel__tab:hover{background:rgba(255,255,255,.1)}
.cvs-sel--oscuro .cvs-sel__pre{color:#bdb9b2}
.cvs-sel--oscuro .cvs-sel__tab[aria-selected="true"]{background:#fff;color:var(--ink,#171512);border-color:#fff}
.cvs-sel--oscuro .cvs-sel__tab[aria-selected="true"] .cvs-sel__pre{color:var(--muted,#625e58)}
.cvs-sel--oscuro .cvs-sel__all{border-top-color:var(--cvs-line)}
.cvs-sel--oscuro .cvs-sel__all a{color:#fff}
@media (min-width:700px){
  .cvs--oscuro .cvs-t{border:0;border-radius:0;background:none}
  .cvs--oscuro .cvs-t tbody{border-top:0}
  .cvs--oscuro .cvs-t th,.cvs--oscuro .cvs-t td{border-bottom-color:var(--cvs-line)}
  .cvs--oscuro .cvs-t tbody tr:last-child>*{border-bottom:1px solid var(--cvs-line)}
  .cvs--oscuro .cvs-t thead th{background:none;color:#9d9992;font-size:16px;letter-spacing:.06em;text-transform:uppercase;
    border-bottom:1px solid rgba(255,255,255,.5);padding:14px 16px 14px 0}
  .cvs--oscuro .cvs-t thead .cvs-th-sw{background:none;color:var(--sage,#c9ddb8)}
  .cvs--oscuro .cvs-t .cvs-crit{background:none;padding:18px 16px 18px 0}
  .cvs--oscuro .cvs-t td{padding:16px 16px 16px 0}
  .cvs--oscuro .cvs-t td+td{border-left:0;padding-left:0}
  .cvs--oscuro .cvs-t td.cvs-sw{padding-right:24px}
  .cvs--oscuro .cvs-ref{background:rgba(255,255,255,.1);color:#d8d4cd}
  .cvs--oscuro .cvs-sw .cvs-ref{background:rgba(255,255,255,.1)}
  .cvs--oscuro .cvs-ref:hover,.cvs--oscuro .cvs-ref:focus-visible{background:#fff;color:var(--ink,#171512)}
}
/* 05/10/2026 · Fuentes dentro del texto de una celda («Cronoshare, 2026», «Universidad de Zaragoza, 2026»): se ven
   como enlace (subrayadas) y se tocan sin fallar. El relleno de un enlace en línea agranda la zona de toque hasta
   44 px de alto sin mover las líneas del párrafo. Las llamadas [n] (.cvs-ref) tienen su propio estilo. */
.cvs-txt a:not([class]),.cvs-lp__txt a:not([class]){color:inherit;text-decoration:underline;text-decoration-thickness:1px;
  text-underline-offset:3px;padding:11px 2px;margin:0 -2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.cvs-txt a:not([class]):hover,.cvs-lp__txt a:not([class]):hover{text-decoration-thickness:2px}


/* ---- 10_home.css ---- */
/* ==========================================================================
   V2 — Portada (src/v2_home.py). Lenguaje de Luis (tokens de swipet.css): tinta, papel, crema, salvia y coral,
   Futura enorme, líneas finas y píldoras. Clases con prefijo .hm- (y ajustes de piezas comunes dentro de .hm-*).
   Móvil primero (03/10/2026: el 90 % del tráfico es móvil): en móvil los detalles van plegados (.hm-fold) y en
   escritorio (≥ 900 px) se ven abiertos (10_home.js; sin JS, con ::details-content donde el navegador lo admite).
   ========================================================================== */

/* --- Ritmo de las secciones de la portada ----------------------------------------------------------- */
.hm-sec{--sec:112px}
@media(max-width:900px){.hm-sec{--sec:70px}}
/* móvil: secciones de 52 px arriba y abajo (unos 100 px entre una y otra), titular de 29 px y respuesta de 16 px */
@media(max-width:600px){.hm-sec{--sec:52px}}
.hm-sec .sec-head{margin-bottom:52px}
@media(max-width:600px){
  .hm-sec .sec-head{margin-bottom:22px}
  .hm-sec .sec-head .eyebrow,.hm-sec>.wrap>.eyebrow{margin-bottom:12px}
  .hm-sec .sec-head h2{font-size:29px;line-height:1.04;letter-spacing:-.03em}
  .hm-sec .sec-head .copy{margin-top:12px;font-size:16px;line-height:1.5}
  .hm-sec .sec-head .copy p{margin:0}
  /* cada sección sin fondo propio se separa de la anterior con una línea fina */
  .hm-sec+.hm-sec:not([class*="bg-"]):not(.comparison){border-top:1px solid var(--line-2)}
}
@media(max-width:380px){.hm-sec .sec-head h2{font-size:27px}}
.hm-glos{color:inherit;text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:1px;text-underline-offset:3px}
.hm-glos:hover{text-decoration-style:solid}
.hm-src{color:var(--ink);font-weight:400;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.hm-more{margin:26px 0 0}
.hm-cta{margin-top:40px}
.hm-cta__t{margin:0;font-size:20px;font-weight:700;letter-spacing:-.02em;line-height:1.2}
.hm-sec .btn{max-width:100%}
@media(max-width:600px){
  .hm-cta{margin-top:26px;gap:16px 22px}
  .hm-cta__t{font-size:19px;flex-basis:100%}
  .hm-sec .btn{white-space:normal;text-align:left;line-height:1.25}
  .hm-sec .cta-row>.btn{width:100%;justify-content:space-between}
  /* la barra fija del móvil ya lleva «Ver el precio»: en «Qué cubre» se deja solo el enlace */
  .hm-cob .hm-cta>a[data-calc]{display:none}
  .hm-more{margin-top:18px}
}

/* --- Plegables: cerrados en móvil, abiertos en escritorio ------------------------------------------ */
.hm-fold>summary,.hm-ficha>summary{list-style:none;display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:10px 20px;
  border:1px solid var(--ink);border-radius:999px;background:transparent;color:var(--ink);font-size:14px;font-weight:700;line-height:1.25;
  cursor:pointer;transition:background-color .2s,color .2s;max-width:100%}
.hm-fold>summary::-webkit-details-marker,.hm-ficha>summary::-webkit-details-marker{display:none}
.hm-fold>summary::marker,.hm-ficha>summary::marker{content:""}
.hm-fold>summary:hover,.hm-ficha>summary:hover{background:var(--ink);color:#fff}
.hm-fold>summary svg,.hm-ficha>summary svg{width:18px;height:18px;flex:none;transition:transform .2s var(--ease)}
.hm-fold[open]>summary svg,.hm-ficha[open]>summary svg{transform:rotate(180deg)}
.hm-fold[open]>.hm-fold__in{margin-top:18px}
@media(min-width:900px){
  .js .hm-fold>summary{display:none}
  .js .hm-fold[open]>.hm-fold__in{margin-top:0}
}
@media(min-width:900px){@supports selector(::details-content){
  .hm-fold>summary{display:none}
  .hm-fold::details-content{content-visibility:visible}
  .hm-fold>.hm-fold__in{margin-top:0}
}}
.comparison .hm-fold>summary,.bg-ink .hm-fold>summary{border-color:rgba(255,255,255,.7);color:#fff}
.comparison .hm-fold>summary:hover,.bg-ink .hm-fold>summary:hover{background:#fff;color:var(--ink)}
@media(max-width:600px){.hm-fold>summary,.hm-ficha>summary{min-height:48px;font-size:15px}}
/* sin una palabra suelta en la última línea («…antes de / ir») */
.hm-fold>summary>span,.hm-ficha>summary>span{text-wrap:balance}
/* Plegable que abre una herramienta (calculadora de facturas): tarjeta oscura como la propia calculadora */
@media(max-width:899.98px){
  .hm-fold--cta>summary{display:flex;width:100%;justify-content:space-between;gap:14px;min-height:60px;padding:14px 20px;
    border-color:var(--ink);border-radius:18px;background:var(--ink);color:#fff;font-size:15.5px}
  .hm-fold--cta>summary:hover{background:var(--ink-2);color:#fff}
}
/* el teléfono no se parte en dos líneas («919 341 / 339») */
.hm-nw{white-space:nowrap}
/* Texto que solo se ve en escritorio */
@media(max-width:600px){.hm-d-only{display:none}}

/* --- Hero ------------------------------------------------------------------------------------------ */
/* De 901 a 1439 px la tarjeta de arranque (absoluta, abajo a la derecha) tapaba el final del titular (en 1280 px,
   «elijas.») y, hasta 1024 px, también la entradilla y los datos. Aquí pasa a su propia columna, abajo a la derecha
   como en el diseño de Luis, pero sin montarse sobre el texto. Desde 1440 px no hace falta. */
@media(min-width:901px) and (max-width:1439.98px){
  .hero--home{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);align-items:end}
  .hero--home .hero-content{grid-column:1;grid-row:1;align-self:start;max-width:none;margin:0;padding-right:40px}
  .hero--home .hero-card{position:relative;grid-column:2;grid-row:1;right:auto;bottom:auto;width:auto}
}
/* Tarjeta del hero «solo perro o gato» (components_v2.especie_card). 06/10/2026: Perro y Gato son enlaces directos a la
   calculadora (tinta, como el botón de precio de antes) y debajo «Agenda tu llamada», secundario (contorno tinta sobre
   la salvia). Toques de 56 px (>= 52). */
.hero-card--especie{width:410px}
.especie{display:grid;gap:10px}
.especie__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.especie .btn{width:100%;min-height:56px;padding:12px 18px 12px 20px;justify-content:space-between;gap:10px;font-size:16px}
.especie__n{display:inline-flex;align-items:center;gap:10px}
.especie__n svg{width:22px;height:22px;flex:none}
.especie .especie__agenda{min-height:52px;border-width:1.5px;background:rgba(255,255,255,.4)}
.especie .especie__agenda:hover{background:var(--ink);color:#fff}
.especie .btn:focus-visible{outline:3px solid var(--coral-ink);outline-offset:2px}
.hero-card--especie .fine{font-size:16px;line-height:1.45;color:rgba(23,21,18,.78)}
@media(max-width:900px){.hero-card--especie{width:auto}}
.hero--home .hm-hero__links{display:inline-flex;flex-wrap:wrap;align-items:center;gap:14px 28px}
.hero--home .hm-hero__tel{display:none}
@media(max-width:900px){.hero--home .hm-hero__tel{display:inline-flex}}
/* en móvil la tarjeta de arranque, justo debajo, ya lleva el botón al precio (y la barra fija, el teléfono): no se repiten */
@media(max-width:600px){.hero--home .hero-actions{display:none}}
/* Móvil (≤ 600 px): el vídeo (o su imagen fija) arriba, a sangre y sin texto encima, para que se vean el cachorro y
   el gatito (encuadre en 06_video.css); el titular empieza donde la imagen se funde con la tinta y la tarjeta de
   arranque va justo debajo, como una hoja. La frase de Luis queda como pie de foto, arriba a la izquierda, sobre la
   pared oscura del vídeo. */
/* 03/10/2026 (móvil primero): a 390 × 844 la primera pantalla enseña el vídeo, el titular, la entradilla, las pruebas y
   la tarjeta de arranque ENTERA con su botón «Ver el precio de tu mascota» (antes el botón quedaba ~160 px por debajo).
   Para eso: franja de vídeo de ~200 px (a 390 px se ve el fotograma casi entero), titular de 34 px, los dos chips en
   una fila y la tarjeta (desde el 05/10/2026, noche: solo Perro · Gato y el botón). En pantallas más bajas (Safari con sus barras,
   360 × 640) aparece la barra fija con el botón de precio hasta que se ve el de la tarjeta (05_global.js). */
@media(max-width:600px){
  .hero--home{--hm-band:min(51vw,230px);background:var(--ink)}
  .hero--home .hero-media{bottom:auto;height:var(--hm-band)}
  .hero--home .hero-shade{bottom:auto;height:calc(var(--hm-band) + 1px);
    background:linear-gradient(180deg,rgba(16,13,10,.5) 0%,rgba(16,13,10,0) 30%,rgba(16,13,10,0) 62%,rgba(16,13,10,.8) 86%,var(--ink) 100%)}
  .hero--home .hero-content{padding-top:calc(var(--hm-band) - 26px);padding-bottom:20px}
  .hero--home .hero-content>.eyebrow{position:absolute;top:14px;left:var(--gutter);right:74px;margin:0;font-size:11.5px;line-height:1.45;
    letter-spacing:.13em;text-shadow:0 1px 10px rgba(0,0,0,.55)}
  .hero--home .hero-content>.eyebrow~h1 .c-kicker::before{display:block}
  .hero--home h1{font-size:34px;line-height:1.03}
  .hero--home h1 .c-kicker{gap:12px;margin-bottom:8px;font-size:17px;color:var(--sage)}
  .hero--home h1 .c-kicker::before{width:26px;margin-top:.62em}
  .hero--home .hero-lead{font-size:16.5px;line-height:1.45;margin:12px 0 0;color:rgba(255,255,255,.88)}
  .hero--home .c-chips{margin-top:14px}
  /* tarjeta «solo perro o gato»: hoja salvia con las esquinas de arriba redondeadas */
  .hero--home .hero-card--especie{padding:18px var(--gutter) 18px;gap:12px;border-radius:24px 24px 0 0}
  .hero--home .hero-card--especie .card-label{display:none}
  .hero--home .hero-card--especie strong{font-size:20px;line-height:1.15;letter-spacing:-.02em}
  .hero--home .hero-card--especie .fine{font-size:16px;line-height:1.4}
}
@media(max-width:380px){
  .hero--home h1{font-size:32px}
  .hero--home .hero-content>.eyebrow{font-size:10.5px;right:66px}
}

/* --- Franja de datos bajo el hero ----------------------------------------------------------------------------------
   05/10/2026 (noche): vuelve el estilo de antes (.proofbar de swipet.css: fondo claro, cuatro columnas con líneas finas,
   titular grande y detalle) con los títulos nuevos de Eduardo. Los titulares son más largos que los de antes («Día 1»,
   «Incluida»…), así que van algo más pequeños para no pasar de dos líneas en escritorio. */
.hm-proof>div{align-content:start}
.proofbar.hm-proof b{font-size:clamp(22px,1vw + 12px,27px);line-height:1.08;text-wrap:balance}
.proofbar.hm-proof span{font-size:15px}
/* insignia coral de la esterilización (dato esterilizacion_exclusiva, pendiente de legal) */
.proofbar.hm-proof .badge{display:inline-flex;width:max-content;margin:4px 0 2px;padding:5px 10px;font-size:11px;letter-spacing:.08em;
  line-height:1.2;color:var(--ink)}
@media(max-width:600px){
  .hm-proof>div{padding:16px 10px 16px 0;gap:4px}
  .hm-proof>div:nth-child(2n){padding-left:14px}
  .proofbar.hm-proof b{font-size:19px;line-height:1.12}
  .proofbar.hm-proof span{font-size:14px;line-height:1.35}
  .proofbar.hm-proof .badge{font-size:10.5px;padding:4px 8px}
}
@media(max-width:380px){.proofbar.hm-proof b{font-size:17.5px}}

/* --- 1. ¿Qué es? (02/10/2026: con foto) -------------------------------------------------------------------- */
.hm-q2,.hm-70{display:grid;gap:40px;align-items:center}
@media(min-width:960px){.hm-q2{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:72px}
  .hm-70{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px}}
.hm-q2__txt h2,.hm-70__txt h2{font-size:clamp(34px,4.2vw,58px);line-height:1.02;letter-spacing:-.03em;margin:0 0 18px}
.hm-q2__lead,.hm-70__lead{font-size:clamp(17px,1.4vw,20px);line-height:1.5;color:var(--muted);margin:0 0 26px;max-width:560px}
.hm-q2__list{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:18px 26px}
@media(min-width:640px){.hm-q2__list{grid-template-columns:1fr 1fr}}
.hm-q2__list li,.hm-70__list li{display:flex;gap:14px;align-items:flex-start}
.hm-q2__list li>svg,.hm-70__list li>svg{flex:none;width:44px;height:44px;padding:11px;border-radius:50%;background:var(--sage);color:var(--ink)}
.hm-q2__list b,.hm-70__list b{display:block;font-size:17px;line-height:1.25;margin-bottom:3px}
.hm-q2__list span,.hm-70__list span{display:block;font-size:15px;line-height:1.45;color:var(--muted)}
.hm-q2__media,.hm-70__media{position:relative}
.hm-q2__photo,.hm-70__photo{border-radius:28px;overflow:hidden;aspect-ratio:4/5;max-height:620px}
.hm-q2__photo img,.hm-70__photo img{width:100%;height:100%;object-fit:cover}
.hm-q2__badge,.hm-70__badge{position:absolute;left:-18px;bottom:28px;background:var(--sage);border-radius:22px;padding:18px 22px;
  max-width:240px;box-shadow:0 18px 40px rgba(23,21,18,.16)}
.hm-q2__badge b,.hm-70__badge b{display:block;font-size:40px;line-height:1;letter-spacing:-.03em}
.hm-q2__badge span,.hm-70__badge span{display:block;font-size:14px;line-height:1.35;margin-top:6px}
@media(max-width:959.98px){.hm-q2__photo,.hm-70__photo{aspect-ratio:16/11;max-height:none}
  .hm-q2__badge,.hm-70__badge{left:14px;bottom:14px;padding:14px 16px}.hm-q2__badge b,.hm-70__badge b{font-size:32px}}
@media(max-width:600px){
  .hm-q2{gap:28px}
  .hm-q2__txt .eyebrow,.hm-70__txt .eyebrow{margin-bottom:12px}
  .hm-q2__txt h2,.hm-70__txt h2{font-size:29px;line-height:1.04;margin-bottom:12px}
  .hm-q2__lead,.hm-70__lead{font-size:16.5px;margin-bottom:22px}
  .hm-q2__list,.hm-70__list{gap:16px;margin-bottom:24px}
  .hm-q2__list li>svg,.hm-70__list li>svg{width:40px;height:40px;padding:10px}
  .hm-q2__list b,.hm-70__list b{font-size:16.5px}
  .hm-q2__list span,.hm-70__list span{font-size:15.5px}
  .hm-q2__photo{aspect-ratio:16/10;border-radius:22px}
  .hm-q2__badge{left:12px;bottom:12px;max-width:210px;padding:12px 16px;border-radius:18px}
  .hm-q2__badge b{font-size:30px}
  .hm-q2__badge span{font-size:13.5px;margin-top:4px}
}
.hm-ficha{margin-top:22px}
.hm-que2 .hm-ficha{margin-top:44px}
.hm-ficha__in{padding:22px 0 6px}
.hm-ficha .kf{font-size:15px}
.hm-ficha .kf a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){
  .hm-que2 .hm-ficha{margin-top:26px}
  .hm-ficha .kf th{width:34%;padding-right:12px}
  .hm-ficha .kf th,.hm-ficha .kf td{padding:12px 0;font-size:15px}
}
/* Los cuatro seguros */
.hm-species{margin-top:44px}
.hm-species ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.hm-sp{position:relative;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;height:100%;background:#fff;border:1px solid var(--line);color:var(--ink);transition:border-color .2s}
.hm-sp__t{overflow-wrap:break-word;hyphens:auto}
/* de 900 a 1099 px las cuatro tarjetas miden ~200 px: «Responsabilidad» no cabía y desbordaba la página 15 px */
@media(min-width:900px) and (max-width:1099.98px){.hm-sp__txt{padding:16px 48px 18px 16px}.hm-sp__t{font-size:17px}.hm-sp__go{right:12px}}
.hm-sp:hover{border-color:var(--ink)}
.hm-sp__img{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--cream)}
.hm-sp__img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.hm-sp:hover .hm-sp__img img{transform:scale(1.04)}
.hm-sp__txt{display:grid;gap:5px;align-content:start;padding:18px 58px 22px 20px}
.hm-sp__t{font-size:19px;font-weight:700;line-height:1.15;letter-spacing:-.015em}
.hm-sp__d{font-size:14px;line-height:1.35;color:var(--muted)}
.hm-sp__go{position:absolute;right:16px;bottom:18px;width:36px;height:36px;border-radius:50%;border:1px solid var(--ink);display:grid;place-items:center;
  transition:background-color .2s,color .2s}
.hm-sp__go svg{width:16px;height:16px}
.hm-sp:hover .hm-sp__go{background:var(--ink);color:#fff}
@media(max-width:899.98px){
  .hm-species{margin-top:20px}
  /* en móvil, una fila que se desliza con los cuatro seguros */
  .hm-species ul{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(66%,250px);gap:8px;overflow-x:auto;
    overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(-1*var(--gutter));
    padding-inline:var(--gutter);scroll-padding-inline:var(--gutter)}
  .hm-species ul::-webkit-scrollbar{display:none}
  .hm-species li{scroll-snap-align:start}
  .hm-sp{border:0;border-radius:16px;background:var(--cream)}
  .hm-sp__img{display:none}
  .hm-sp__txt{min-height:68px;padding:12px 48px 12px 16px;gap:2px;align-content:center}
  .hm-sp__t{font-size:15.5px}
  .hm-sp__d{font-size:14px}
  .hm-sp__go{top:50%;bottom:auto;right:10px;width:30px;height:30px;transform:translateY(-50%);border:0;background:#fff}
}

/* --- 2. ¿Cómo funciona? --------------------------------------------------------------------------------- */
.hm-how{display:grid;gap:40px}
@media(min-width:960px){.hm-how{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:84px;align-items:start}}
.hm-how__media{position:relative;margin-right:26px}
.hm-how__photo{aspect-ratio:4/5}
.hm-bill{position:absolute;right:-26px;bottom:-30px;width:min(340px,86%);margin:0;background:#fff;box-shadow:0 20px 50px rgba(23,21,18,.16);
  padding:22px 24px 22px;display:grid;gap:12px}
.hm-bill figcaption{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}
.hm-bill dl{margin:0;display:grid}
.hm-bill dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:10px 0;border-top:1px solid var(--line)}
.hm-bill dt{font-size:14px;line-height:1.3;color:var(--muted)}
.hm-bill dd{margin:0;font-size:22px;font-weight:700;letter-spacing:-.02em;white-space:nowrap}
.hm-bill .is-back dd{color:#2f6b3a}
.hm-bill__bar{display:flex;height:8px;border-radius:8px;background:var(--coral);overflow:hidden}
.hm-bill__bar i{display:block;height:100%;background:var(--sage)}
@media(max-width:959.98px){.hm-how__media{display:none}}
.hm-how__body .steps{grid-template-columns:1fr}
.hm-how__body .steps .step,.hm-how__body .steps .step+.step{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:22px;
  padding:24px 40px 24px 0;border-right:0;border-bottom:1px solid var(--line)}
.hm-how__body .step__n{position:absolute;right:0;top:26px}
.hm-how__body .step__ico{grid-column:1;grid-row:1/3;margin:0}
.hm-how__body .step h3{grid-column:2;margin:6px 0 8px}
.hm-how__body .step p{grid-column:2}
.hm-comof .step__ico,.hm-comof .checks li svg{background:#fff}
.hm-how__body .hm-fold{margin-top:30px}
/* el número del paso con contraste AA sobre la crema (el común, --muted-2, se queda en 3:1) */
.hm-comof .step__n{color:var(--muted)}
@media(max-width:600px){
  .hm-how{gap:0}
  /* en móvil, los tres pasos en una fila, unidos por una línea (icono con su número y titular): la respuesta de la
     sección ya los explica */
  .hm-how__body .steps{position:relative;grid-template-columns:repeat(3,minmax(0,1fr));border-top:0;padding:6px 0 4px}
  .hm-how__body .steps::before{content:"";position:absolute;left:16.6%;right:16.6%;top:29px;height:1px;background:rgba(23,21,18,.28)}
  .hm-how__body .steps .step,.hm-how__body .steps .step+.step{display:flex;flex-direction:column;align-items:center;gap:12px;padding:0 4px;
    border:0;text-align:center}
  .hm-how__body .step__ico{position:relative;width:46px;height:46px;margin:0;box-shadow:0 0 0 6px var(--cream)}
  .hm-how__body .step__ico svg{width:20px;height:20px}
  .hm-comof .hm-how__body .step__n{position:absolute;z-index:1;top:-2px;left:calc(50% + 12px);right:auto;width:22px;height:22px;border-radius:50%;
    display:grid;place-items:center;background:var(--coral);color:var(--ink);font-size:12px;font-weight:700;line-height:1}
  .hm-how__body .step h3{font-size:15.5px;line-height:1.25;margin:0;letter-spacing:-.01em}
  .hm-how__body .step p{display:none}
  .hm-how__body .hm-fold{margin-top:26px}
  .hm-how__body .checks li{font-size:16px;padding:12px 0}
}

/* --- 3. ¿Qué cubre? (tarjetas de la versión aprobada + calculadora de facturas + precios de referencia) ----- */
.hm-cob2 .cov-grid{margin-bottom:44px}
.hm-cob2 .hm-fold--costs{margin-top:28px}
.hm-cob2__hint{display:none}
.hm-simband{margin-top:64px}
.hm-simband .txt h3{margin-bottom:14px}
.hm-simband .txt p{margin:0 0 14px}
.hm-simband .hm-facts{font-size:15px;line-height:1.55}
.hm-fold--sim>.hm-fold__in>.hm-simband{margin-top:0}
@media(min-width:900px){.hm-fold--sim{margin-top:64px}}
@media(max-width:899.98px){.hm-fold--sim{margin-top:18px}}
/* casos de la calculadora: letra de 14 px (la común es de 12) y toques de 44 px */
.hm-cob2 .preset{min-height:44px;font-size:14px}
.hm-more--art{margin-top:16px}
@media(max-width:600px){
  .hm-cob2 .cov-legend{margin:-4px 0 16px;gap:8px 16px;font-size:13.5px}
  .hm-cob2__hint{display:block;margin:0 0 12px;font-size:13.5px;color:var(--muted)}
  .hm-cob2:has(.sw-car__list) .hm-cob2__hint{display:none}
  /* las 9 tarjetas en un carrusel deslizable (antes, ~4.300 px apiladas), con «1 de 9» y flechas (05_global.js) */
  .hm-cob2 .cov-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:84%;gap:12px;margin:0 calc(var(--gutter) * -1) 14px;
    padding:0 var(--gutter) 4px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);
    scrollbar-width:none}
  .hm-cob2 .cov-grid::-webkit-scrollbar{display:none}
  .hm-cob2 .cov-card{scroll-snap-align:start}
  .hm-cob2 .cov-grid .reveal{opacity:1;transform:none}
  .hm-cob2 .cov-card__img{height:150px}
  .hm-cob2 .cov-card__img .badges{left:12px;top:12px}
  /* 05/10/2026: la tarjeta de esterilización lleva dos insignias («Siempre incluido» y la coral «En tu clínica»), que en
     el carrusel van una encima de otra; el terrier baja un poco para que no le tapen la cabeza (el encuadre de la foto
     va en línea, en el HTML: por eso el !important) */
  .hm-cob2 #cubre-esterilizacion .cov-card__img img{object-position:50% 56%!important}
  .hm-cob2 .cov-card__body{padding:18px 18px 20px;gap:8px}
  .hm-cob2 .cov-card h3{font-size:20px}
  .hm-cob2 .sw-car{display:flex;margin:0 0 8px}
  /* calculadora de facturas (dentro del plegable) */
  .hm-simband{margin-top:0;gap:18px}
  .hm-fold--sim .hm-simband .txt h3{display:none}
  .hm-simband .txt p{font-size:16px;margin-bottom:10px}
  .hm-simband .hm-facts{font-size:14.5px}
  .hm-cob2 .sim{padding:22px 18px;gap:14px}
  .hm-cob2 .sim__bill output{font-size:34px}
  .hm-cob2 .sim__box output{font-size:28px}
  .hm-cob2 .presets{flex-wrap:nowrap;gap:6px;overflow-x:auto;scrollbar-width:none;margin-inline:-18px;padding-inline:18px}
  .hm-cob2 .presets::-webkit-scrollbar{display:none}
  .hm-cob2 .preset{flex:none;padding:8px 14px}
  .hm-cob2 .hm-fold--costs{margin-top:12px}
}

/* --- 4. ¿Qué no cubre? --------------------------------------------------------------------------------------- */
.hm-nocubre .clear-box{margin-top:0}
.hm-nocubre .clear-card--no{background:#fff}
.hm-clear>.hm-fold{min-width:0}
.hm-clear>.hm-fold>.hm-fold__in,.hm-clear .clear-card--req{height:100%}
/* En escritorio las dos tarjetas miden lo mismo: el plegable abierto lleva el fondo menta de su tarjeta (el alto
   del contenido de un <details> no se estira en todos los navegadores) */
@media(min-width:900px){.hm-clear>.hm-fold[open]{background:var(--mint)}}
.hm-nocubre .pending{margin-top:28px}
@media(max-width:600px){
  .hm-nocubre .clear-box{gap:12px}
  .hm-nocubre .clear-card{padding:20px 18px 10px;gap:8px}
  .hm-nocubre .clear-card h3{font-size:22px}
  .hm-nocubre .clear-card li{grid-template-columns:24px 1fr;gap:12px;padding:11px 0;font-size:16px;line-height:1.45}
  .hm-nocubre .clear-card li svg{width:24px;height:24px;padding:5px}
  .hm-nocubre .pending{margin-top:20px}
}
/* «Para contratar», plegado en móvil: una fila menta con lo esencial; al abrirla, la tarjeta sigue debajo */
@media(max-width:899.98px){
  .hm-fold--req>summary{display:flex;width:100%;justify-content:space-between;gap:14px;min-height:58px;padding:14px 18px;border:0;
    border-radius:0;background:var(--mint);font-size:15.5px;text-align:left}
  .hm-fold--req>summary:hover{background:var(--sage);color:var(--ink)}
  .hm-clear>.hm-fold--req[open]>.hm-fold__in{margin-top:0}
  .hm-fold--req[open] .clear-card--req{padding-top:4px}
  .hm-fold--req[open] .clear-card--req>h3{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
}

/* --- 5. ¿Desde cuándo está cubierta? --------------------------------------------------------------------------- */
.hm-note{max-width:760px;margin:34px 0 0;font-size:17px;line-height:1.55}
.hm-car .carencia{margin-top:22px}
.hm-car .hm-fold--calc>.hm-fold__in>.carencia{margin-top:0}
@media(min-width:900px){.hm-car .hm-fold--calc{margin-top:22px}}
@media(max-width:899.98px){.hm-car .hm-fold--calc{margin-top:16px}}
/* etiquetas de la calculadora algo mayores que las de 10 px de la pieza común (se leían mal) */
.hm-car .carencia label,.hm-car .carencia__out span{font-size:11px}
.hm-car .carencia__out small,.hm-car .carencia .fine{font-size:12.5px}
@media(max-width:600px){
  .hm-note{margin-top:20px;font-size:16px}
  .hm-car .carencia{margin-top:16px;padding:20px 18px;gap:12px}
  .hm-car .carencia h3{font-size:22px}
  .hm-car .carencia label{margin-top:12px}
  /* las tres fechas en filas: qué cubre a la izquierda y la fecha a la derecha (antes, tres columnas con letra de 10 px) */
  .hm-car .carencia__out{grid-template-columns:minmax(0,1fr)}
  .hm-car .carencia__out div,.hm-car .carencia__out div+div{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:14px;
    align-items:center;padding:11px 0;border-left:0;border-bottom:1px solid rgba(23,21,18,.2)}
  .hm-car .carencia label{font-size:12px}
  .hm-car .carencia__out span{grid-column:1;margin:0;font-size:12px;letter-spacing:.08em;line-height:1.3}
  .hm-car .carencia__out output{grid-column:2;grid-row:1/span 2;font-size:16px;line-height:1.2;text-align:right;max-width:10.5em;
    text-wrap:balance}
  .hm-car .carencia__out small{grid-column:1;margin-top:2px}
  .hm-car .c-tl .tl-item,.hm-car .c-tl .tl-item+.tl-item{padding:18px 0}
  .hm-car .c-tl .tl-day{font-size:40px;margin-bottom:8px}
}

/* --- 6. Arma tu seguro: «Siempre incluido» y «Tú eliges» ---------------------------------------------------- */
.hm-arma .opt-list{border-top:0}
.hm-arma .hm-b__grp{display:flex;align-items:center;gap:10px;margin:0;padding:26px 0 12px;border-bottom:1px solid var(--line);
  font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.hm-arma .hm-b__grp:first-child{padding-top:0}
.hm-arma .hm-b__grp::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:#5f9c4f}
.hm-arma .hm-b__grp--opt::before{width:16px;height:9px;border-radius:9px;background:linear-gradient(90deg,var(--ink) 50%,rgba(23,21,18,.2) 50%)}
@media(max-width:899.98px){
  .hm-arma .builder{gap:26px}
  /* lo incluido, sin interruptor ni etiqueta (ya lo dice el título del grupo): un círculo salvia con ✓ */
  .hm-arma .opt--locked .badge{display:none}
  .hm-arma .opt--locked{padding:13px 0}
  .hm-arma .switch--locked{width:30px;height:30px}
  .hm-arma .switch--locked .track{display:none}
  .hm-arma .opt--locked .switch--locked .thumb{top:0;left:0;width:30px;height:30px;transform:none;background:var(--sage)!important}
  .hm-arma .switch--locked .thumb svg{width:15px;height:15px}
  /* resumen: sin la lista (los interruptores ya dicen qué va dentro) */
  .hm-arma .summary{position:static;padding:22px 20px 18px;gap:12px}
  .hm-arma .summary ul{display:none}
}
@media(max-width:600px){
  .hm-arma .opt{gap:14px;padding:14px 0}
  .hm-arma .opt__t{font-size:16.5px;line-height:1.25}
  .hm-arma .opt__d{font-size:15px;line-height:1.4}
  .hm-arma .summary__big{gap:10px;font-size:16px}
  .hm-arma .summary__count{font-size:54px}
  .hm-arma .summary .btn{min-height:54px;font-size:15px}
  .hm-arma .summary .xs{font-size:13px;line-height:1.45}
}

/* --- 7. ¿Cuánto cuesta? -------------------------------------------------------------------------------------------- */
.hm-precio2 .price-box{margin-top:8px}
.hm-dto{display:grid;gap:12px;margin-top:6px;background:var(--mint);padding:24px 26px 22px}
.hm-dto h3{margin:0}
.price-box .split__copy .hm-dto__lead{margin:0;color:var(--ink);font-size:16px}
.hm-dto__tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.hm-dto__tiles li{display:grid;gap:4px;align-content:start;background:#fff;padding:14px 14px 13px}
.hm-dto__tiles b{font-size:32px;line-height:1;letter-spacing:-.03em}
.hm-dto__tiles span{font-size:14px;line-height:1.3;color:var(--muted)}
.price-box .split__copy .hm-dto .hm-dto-vida{margin:2px 0 0;font-size:15px;line-height:1.5;color:var(--ink)}
@media(max-width:600px){
  .hm-precio .price-box{gap:24px}
  .hm-precio .price-box .split__copy{gap:14px}
  /* los cuatro factores ya están en la respuesta de la sección: en móvil no se repiten */
  .hm-precio .factors{display:none}
  .hm-dto{padding:20px 16px 18px;gap:10px}
  .hm-precio .split__copy .hm-dto h3{font-size:22px;margin:0}
  .hm-dto__tiles{gap:6px}
  .hm-dto__tiles li{padding:12px 10px 11px}
  .hm-dto__tiles b{font-size:27px}
  .hm-dto__tiles span{font-size:13px}
  .price-box .split__copy .hm-dto .hm-dto-vida{font-size:16px}
}

/* --- 8. Opiniones --------------------------------------------------------------------------------------------------- */
.hm-opi .c-reviews+.pending{margin-top:30px}
.hm-opi .hm-cta{margin-top:34px}
@media(max-width:600px){
  .hm-opi .c-review blockquote{font-size:16.5px}
  .hm-opi .hm-cta{margin-top:16px;gap:0 22px}
  /* en móvil, los dos caminos a /opiniones/ como enlaces (el botón de la barra fija ya es el del precio) */
  .hm-opi .hm-cta>.btn{width:auto;min-height:44px;padding:10px 0 5px;border:0;border-bottom:1px solid currentColor;border-radius:0;
    background:none;color:var(--ink);justify-content:flex-start;gap:15px;transform:none}
  .hm-opi .hm-cta>.btn:hover{background:none;color:var(--ink);transform:none}
  .hm-opi .hm-cta>a{display:inline-flex;align-items:center;min-height:44px}
}

/* --- 9. ¿Quién está detrás? ------------------------------------------------------------------------------------------- */
.hm-quien__links{margin-top:30px}
@media(max-width:600px){
  .hm-quien .behind{gap:20px}
  .hm-quien .behind__t{font-size:29px}
  .hm-quien .behind p{margin-bottom:0;font-size:16px}
  /* en móvil, lista con líneas finas (icono, dato y detalle) en vez de cuatro tarjetas en dos filas */
  .hm-quien .behind__grid{grid-template-columns:minmax(0,1fr);gap:0;border-top:1px solid var(--line)}
  .hm-quien .behind__grid>div{grid-template-columns:22px minmax(0,1fr);column-gap:14px;row-gap:1px;align-items:center;
    padding:12px 0;border-radius:0;background:none;border-bottom:1px solid var(--line)}
  .hm-quien .behind__grid svg{grid-row:1/span 2;width:22px;height:22px}
  .hm-quien .behind__grid b{font-size:15.5px;line-height:1.25}
  .hm-quien .behind__grid span{font-size:13.5px;line-height:1.35}
  /* la nota de Trustpilot está justo encima, en la sección de opiniones (y en el hero): aquí no se repite */
  .hm-quien .behind__grid>div:nth-child(4){display:none}
  .hm-quien__links{margin-top:18px;gap:14px 22px}
  .hm-quien__links .text-link{font-size:14px;line-height:1.35}
}

/* --- Frase de Luis: solo en escritorio --------------------------------------------------------------------------- */
@media(max-width:899.98px){.hm-frase{display:none}}

/* --- 10. ¿Por qué el 70 %? (02/10/2026: sencillo) ------------------------------------------------------------------- */
.hm-70__list{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:16px}
.hm-70__ej{background:#fff;border-left:4px solid var(--coral);border-radius:0 18px 18px 0;padding:18px 22px;margin:0 0 18px}
.hm-70__ejt{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--coral-ink);margin:0 0 6px}
.hm-70__ej p:last-child{margin:0;font-size:16px;line-height:1.5}
.hm-70__note{font-size:15px;color:var(--muted);margin:0}
.hm-70__note .text-link{margin-left:6px}
@media(max-width:959.98px){.hm-70__media{order:2}}
@media(max-width:600px){
  /* en móvil, sin la foto: «sencillo» (el «Día 1» ya es la primera razón) */
  .hm-70{gap:0}
  .hm-70__media{display:none}
  .hm-70__ej{padding:16px 18px;margin-bottom:16px}
  .hm-70__note{font-size:16px;line-height:1.5}
  .hm-70__note .text-link{margin:8px 0 0}
}

/* --- 11. Comparativa «¿Por qué Swipet?» (05/10/2026) ------------------------------------------------------------------
   Bloque tinta de la versión aprobada con la pieza común vs_selector() (08_vs.css) y una tarjeta por compañía. */
.hm-cmp .comparison-head{margin-bottom:44px}
.hm-cmp .comparison-head p{margin-bottom:22px}
.hm-cmp__pros{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.hm-cmp__pros li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start;font-size:16px;line-height:1.45;color:#d8d4cd}
.hm-cmp__pros li b{display:block;color:#fff}
.hm-cmp h2 .h2-lead{font-size:max(.34em,16px)}
.hm-cmp__pros svg{width:36px;height:36px;padding:8px;border-radius:50%;background:var(--sage);color:var(--ink)}
.hm-cmp__pros li:nth-child(2) svg{background:var(--coral)}
/* 05/10/2026 (noche): sin la tarjeta clara; la pieza va en su tema oscuro (.cvs-sel--oscuro, 08_vs.css) sobre la tinta */
.hm-cmp__vs{color:#fff;padding:0}
.hm-cmp__vs>.pending{margin:0 0 18px}
.hm-cmp .cvs-sel__all{display:none} /* las tarjetas de debajo ya enlazan a cada «Swipet o …» */
.hm-cmp__wait{margin:0;padding:18px;border:1px dashed var(--line-light);border-radius:16px;color:#d8d4cd}
.hm-cmp__go{margin-top:56px}
.hm-cmp__got{margin:0 0 16px;font-size:clamp(20px,1.6vw,26px);font-weight:700;letter-spacing:-.02em;color:#fff}
.hm-cmp__go>.btn{margin-top:26px;font-size:16px;min-height:48px}
/* una tarjeta por compañía (nunca agrupadas): 6 en escritorio, 3 en tableta, 2 en el móvil */
.competitor-row{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(min-width:1100px){.competitor-row{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(min-width:601px) and (max-width:1099.98px){.competitor-row a{border-bottom:1px solid var(--line-light)}.competitor-row a:nth-child(3n){border-right:0}}
.hm-cmp__row a{min-height:120px;padding:22px 40px 22px 20px;display:flex;flex-direction:column;justify-content:flex-start}
.hm-cmp__row small{font-size:16px;text-transform:none;letter-spacing:0;color:#bdb9b2}
.hm-cmp__row b{font-size:22px;letter-spacing:-.02em;margin-top:6px}
.hm-cmp__row i{font-size:20px}
.hm-cmp .comparison-note{font-size:16px;line-height:1.5;max-width:860px;margin-top:22px}

@media(max-width:600px){
  .hm-cmp .comparison-head{gap:16px;margin-bottom:24px}
  .hm-cmp .comparison-head p{font-size:16px;margin-bottom:18px}
  /* en el móvil, los cuatro puntos los dice ya la tabla de debajo */
  .hm-cmp__pros{display:none}
  .hm-cmp__go{margin-top:36px}
  /* las compañías, de dos en dos */
  .competitor-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .competitor-row a{min-height:76px;border-bottom:1px solid var(--line-light)}
  .competitor-row a:nth-child(2n){border-right:0}
  .competitor-row a:nth-last-child(-n+2){border-bottom:0}
  .hm-cmp__row a{min-height:80px;padding:14px 36px 14px 14px}
  .hm-cmp__row small{font-size:16px}
  .hm-cmp__row b{font-size:20px;margin-top:2px}
  .hm-cmp__row i{right:14px;bottom:auto;top:50%;transform:translateY(-50%)}
  .hm-cmp__go>.btn{width:100%;justify-content:center;min-height:50px}
  .hm-cmp .comparison-note{font-size:16px}
}

/* --- 12. Dudas ------------------------------------------------------------------------------------------------------- */
.hm-faq{display:grid;grid-template-columns:minmax(0,1fr);gap:30px}
.hm-faq>.sec-head{grid-template-columns:1fr;margin-bottom:0}
.hm-faq>.sec-head .eyebrow{margin-top:0}
.hm-faq>.sec-head .copy{grid-column:auto}
.hm-faq__list>.pending{margin-top:22px}
.hm-faq__all{margin:24px 0 0}
@media(min-width:1000px){
  .hm-faq{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:90px;row-gap:34px;align-items:start}
  .hm-faq>.sec-head{grid-column:1;grid-row:1}
  .hm-faq>.sec-head h2{font-size:clamp(36px,3.6vw,54px)}
  .hm-faq__help{grid-column:1;grid-row:2}
  .hm-faq__list{grid-column:2;grid-row:1/span 2}
}
@media(max-width:600px){
  .hm-faq{gap:20px}
  .hm-dudas .faq summary{min-height:56px;padding:12px 0;font-size:16px;gap:14px}
  .hm-dudas .faq__a{padding-bottom:16px;font-size:16px}
  .hm-faq__all{margin-top:14px}
  /* ayuda: sin la fila del correo (está en el pie) y más apretada */
  .hm-faq__help .c-help{padding:16px 16px 4px}
  .hm-faq__help .c-help__row{padding:6px 0 10px;gap:12px;grid-template-columns:36px minmax(0,1fr)}
  .hm-faq__help .c-help__ico{width:36px;height:36px}
  .hm-faq__help .c-help__a{min-height:44px;font-size:16px}
  .hm-faq__help .c-help__sub{font-size:14px}
  .hm-faq__help .c-help__row:nth-child(n+3){display:none}
}

/* --- Cierre (CTA final de la portada) ---------------------------------------------------------------------------------- */
@media(max-width:600px){
  .hm-dudas~.c-final{padding:52px var(--gutter) 48px}
  .hm-dudas~.c-final .eyebrow{margin-bottom:14px}
  .hm-dudas~.c-final h2{font-size:33px}
  .hm-dudas~.c-final .lead{margin:14px auto 22px;font-size:16px}
  .hm-dudas~.c-final .c-final__need{margin-top:18px}
}

/* --- Menú móvil (components.mobile_nav): «Compara Swipet con…», una compañía por botón, de dos en dos ---------------- */
.mnav .mnav__comp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.mnav .mnav__comp li a{min-height:50px;padding:10px 14px;border:1px solid var(--line);border-radius:14px;font-size:17px}


/* ---- 20_producto.css ---- */
/* ==========================================================================
   V2 — Páginas de producto: /seguro-perros/ y /seguro-gatos/ (src/v2_producto.py).
   Prefijo .pr- (y .hero--perros / .hero--gatos). Lenguaje de Luis: tinta, papel, crema, salvia y menta; líneas finas;
   píldoras. MÓVIL PRIMERO (el 90 % del tráfico es móvil): al final del fichero, el bloque «Móvil» ajusta tamaños
   (H1 32-40 px, H2 26-32 px, texto de 16 px), toques de 44 px, tablas apiladas, fuentes plegadas y secciones compactas.
   ========================================================================== */

/* --- Franja de cifras bajo el hero (variante de .proofbar con n columnas) --- */
.pr-proof{grid-template-columns:repeat(var(--n,4),minmax(0,1fr))}
.pr-proof>div{align-content:start}
.pr-proof b{font-size:clamp(24px,1.6vw + 8px,30px)}
.pr-proof>.pending{outline-offset:-4px;padding-left:14px}
.pr-proof>.pending .pending-tag{width:auto;max-width:100%;white-space:normal;margin-bottom:6px}
@media(max-width:900px){
  .pr-proof{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pr-proof>div:nth-child(2n){border-right:0}
  .pr-proof>div:nth-child(2n+1){border-right:1px solid var(--line)}
  .pr-proof>div:nth-child(n+3){border-bottom:1px solid var(--line)}
  .pr-proof>div:nth-last-child(-n+2):nth-child(2n+1),.pr-proof>div:last-child{border-bottom:0}
  .pr-proof>div:nth-child(2n){padding-left:14px}
  /* Número impar de cifras (gatos: 5): la última ocupa la fila entera y no deja media celda vacía */
  .pr-proof>div:last-child:nth-child(2n+1){grid-column:1/-1;border-right:0}
}
.pr-proof span{font-size:14px}

/* --- Entradilla de los bloques partidos (split) y titular de apoyo --- */
.pr-split .split__copy .pr-lead{font-size:19px;line-height:1.5;color:var(--ink)}
.pr-split .split__copy h2{font-size:clamp(34px,3.6vw,54px)}
.pr-split .checks{margin-top:6px}
.pr-split{grid-template-columns:minmax(0,1fr)}
.pr-split>*{min-width:0}
@media(min-width:960px){.pr-split{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pr-split .split__copy{grid-template-columns:minmax(0,1fr)}

/* --- ¿Cómo funciona el reembolso? (tres pasos con líneas finas) --- */
.pr-how{margin-top:clamp(48px,5vw,72px)}
.pr-how__t{margin:0 0 22px;font-size:clamp(24px,2vw,30px);letter-spacing:-.025em}
.pr-how__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.pr-how__step{display:grid;grid-template-columns:54px minmax(0,1fr);gap:18px;align-items:start;padding:26px 28px 8px 0;border-right:1px solid var(--line)}
.pr-how__step+.pr-how__step{padding-left:28px}
.pr-how__step:last-child{border-right:0}
.pr-how__ico{width:54px;height:54px;border-radius:50%;background:var(--mint);display:grid;place-items:center}
.pr-how__ico svg{width:24px;height:24px}
.pr-how__n{display:block;margin-bottom:6px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.pr-how__step h4{margin:0 0 6px;font-size:20px;letter-spacing:-.015em}
.pr-how__step p{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}

/* --- Filas de enlaces de texto (zona de toque de 44 px sin cambiar el diseño) --- */
.pr-links{display:flex;flex-wrap:wrap;align-items:center;gap:20px 30px;margin:30px 0 0}
.pr-links .text-link{position:relative}
.pr-links .text-link::after{content:"";position:absolute;inset:-9px -6px}
.pr-links--inline{margin:0}
.pr-links--col{flex-direction:column;align-items:flex-start;gap:20px;margin-top:10px}
.bg-ink .pr-links .text-link{color:#fff}
.pr-split .pr-links .text-link{color:var(--ink)}
.pr-dark .pr-links .text-link{color:#fff}

/* --- Dato de contexto con su fuente --- */
.pr-ctx{display:flex;gap:12px;align-items:flex-start;max-width:900px;margin:30px 0 0;font-size:15px;line-height:1.55;color:var(--ink)}
.pr-ctx svg{width:20px;height:20px;flex:none;margin-top:2px;color:var(--coral-ink)}
.pr-ctx a{display:inline-block;padding:10px 0;margin:-10px 0;color:var(--ink);font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}

/* --- Simulador dentro de la sección de costes ---
   swipet.js escribe en .sim__cap «Tope de este plan para este tipo de gasto…» (ya no hay planes): en estas páginas se
   oculta y el tope anual va en el texto y en la nota del simulador (ver notas para el integrador). */
.pr-sim{margin-top:clamp(52px,6vw,80px)}
.pr-sim .txt p{font-size:17px}
.pr-sim .sim__cap{display:none}

/* --- Botón tras una tabla o un bloque --- */
.pr-cta{display:flex;flex-wrap:wrap;align-items:center;gap:16px 30px;margin-top:clamp(30px,4vw,44px)}

/* --- Ejemplo de carencia (antes de la calculadora de fechas) --- */
.pr-example{display:flex;gap:14px;align-items:flex-start;max-width:900px;margin:30px 0 0;padding:18px 22px;background:var(--cream);border-left:3px solid var(--coral);font-size:16px;line-height:1.5;color:var(--ink)}
.pr-example svg{width:22px;height:22px;flex:none;margin-top:1px}
.pr-example+.carencia{margin-top:22px}

/* --- Qué comparar: criterios numerados en píldoras --- */
.pr-crit{list-style:none;margin:0 0 34px;padding:0;display:flex;flex-wrap:wrap;gap:8px;counter-reset:pr-crit}
.pr-crit li{counter-increment:pr-crit;display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:7px 16px 7px 7px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14px;line-height:1.25}
.pr-crit li::before{content:counter(pr-crit);display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--ink);color:#fff;font-size:12px;font-weight:700}

/* --- Lo que dice la ley (RC): tarjetas con líneas finas --- */
.pr-ley{display:grid;gap:26px;grid-template-columns:minmax(0,1fr)}
@media(min-width:900px){.pr-ley{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}}
.pr-ley__card{display:grid;gap:12px;align-content:start;padding-top:24px;border-top:1px solid var(--ink)}
.pr-ley__ico{width:54px;height:54px;border-radius:50%;background:var(--mint);display:grid;place-items:center}
.pr-ley__ico svg{width:24px;height:24px}
.pr-ley__card h3{font-size:22px}
.pr-ley__card p{margin:0;font-size:15px;line-height:1.55;color:var(--muted)}
.pr-ley__cita{margin:0;padding:4px 0 4px 16px;border-left:3px solid var(--coral)}
.pr-ley__cita p{font-size:16px;font-style:italic;color:var(--ink)}
.pr-ley__src a{display:inline-block;padding:12px 0;margin:-10px 0;font-size:13px;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.pr-ley .pr-ley__sw{background:var(--mint);color:var(--ink);padding:14px 16px}
.pr-ley>.pending{outline-offset:6px}

/* --- Aviso PPP dentro de razas --- */
.pr-ppp{display:flex;gap:14px;align-items:flex-start;margin-top:8px;padding:18px 20px;background:#fff;border:1px solid var(--line)}
.pr-ppp svg{width:24px;height:24px;flex:none;margin-top:1px;color:var(--coral-ink)}
.pr-ppp p{margin:0;font-size:15px;line-height:1.5;color:var(--ink)}
.pr-ppp .c-textlink{display:inline-block;padding:11px 0;margin:-11px 0}

/* --- Bloque oscuro (razas): foto + texto sobre tinta --- */
.pr-dark .split__copy p:where(:not(.eyebrow)){color:#c9c5bf} /* el antetítulo sigue en blanco (.bg-ink .eyebrow) */
.pr-dark .split__copy .pr-lead{color:#fff}
.pr-dark .chip{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.32)}
.pr-dark .chip:hover{background:#fff;color:var(--ink);border-color:#fff}
.pr-dark .pr-ppp{background:rgba(255,255,255,.06);border-color:var(--line-light)}
.pr-dark .pr-ppp p{color:#fff}
.pr-dark .pr-ppp svg{color:var(--coral)}
.pr-dark .frame{background:var(--ink-2)}
.pr-dark .pending{outline-color:#e0b93a}

/* --- Mayores de 8 años y descuentos (líneas sueltas) --- */
.pr-older{display:flex;gap:12px;align-items:flex-start;max-width:900px;margin:28px 0 0;font-size:15px;line-height:1.55;color:var(--ink)}
.pr-older svg{width:22px;height:22px;flex:none;margin-top:1px}
.pr-older .c-textlink{display:inline-block;padding:11px 0;margin:-11px 0}
.pr-multi{max-width:620px;margin:14px auto 0;font-size:16px;line-height:1.5;color:var(--ink)}
.pr-multi .c-textlink{display:inline-block;padding:11px 0;margin:-11px 0;white-space:nowrap}

/* --- «¿Qué va siempre incluido y qué eliges tú?» (builder de components.py) --- */
.pr-arma .opt__d{font-size:15px;line-height:1.45}
.pr-arma .summary .btn{white-space:normal;text-align:left;line-height:1.25}
/* Insignia coral de la esterilización («En tu clínica», 05/10/2026), como en las tarjetas de la portada: sin el borde gris
   que swipet.css pone a las insignias de estas filas */
.pr-arma .opt .badge--star{border-color:var(--coral)}

/* --- Fuentes de las tablas compartidas, plegables (abiertas en pantallas de 701 px o más) --- */
.pr-fold{margin-top:6px}
.pr-fold>summary{list-style:none;display:grid;grid-template-columns:minmax(0,max-content) auto auto;align-items:center;gap:8px;min-height:44px;padding-block:6px;cursor:pointer;color:var(--ink)}
.pr-fold>summary::-webkit-details-marker{display:none}
.pr-fold>summary::marker{content:""}
.pr-fold>summary .c-src__t,.pr-fold>summary .c-vs__src-t{margin:0;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.pr-fold>summary svg{width:16px;height:16px;flex:none;transition:transform .2s var(--ease)}
.pr-fold[open]>summary svg{transform:rotate(180deg)}
.pr-fold__n{font-size:12.5px;font-weight:700;color:var(--muted)}
@media(min-width:701px){@supports selector(::details-content){
  .pr-fold::details-content{content-visibility:visible}
  .pr-fold>summary{min-height:0;cursor:default;pointer-events:none}
  .pr-fold>summary .c-src__t,.pr-fold>summary .c-vs__src-t{text-decoration:none}
  .pr-fold>summary svg,.pr-fold>summary .pr-fold__n{display:none}
}}

/* --- Guías: cuatro columnas en pantallas anchas y «más seguros» --- */
@media(min-width:1100px){.pr-posts4 .post-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 24px}.pr-posts4 .post-card h3{font-size:20px}}
.pr-more{display:grid;gap:14px;margin-top:clamp(48px,5vw,70px);padding-top:28px;border-top:1px solid var(--line)}
.pr-more__t{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}

/* --- Frase de Luis --- */
.pr-frase blockquote{text-wrap:balance}
.pr-frase p{font-size:15px}

/* --- Anclas: la cabecera y la subnavegación ya las descuenta 05_global.css (scroll-padding-top del html, también para
       las preguntas). Antes, aquí se sumaba otro margen igual y el titular caía a unos 270 px de la cabecera en el móvil,
       con media pantalla vacía. En el móvil solo se recorta parte del relleno superior de la sección. --- */
.pr-sec[id],.pr-manifesto{scroll-margin-top:0}
@media(max-width:600px){.pr-sec[id]{scroll-margin-top:-26px}}

/* --- Primera sección tras la subnavegación: menos aire arriba --- */
.pr-first{padding-top:calc(var(--sec)*.55)}

/* --- Franja de precio (cta_strip): el nombre de la mascota va en línea con el titular --- */
.pr-sec .cta-strip p>[data-pet-name]{display:inline;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit}

/* --- CTA final: descuentos por varias mascotas debajo de los pasos --- */
.pr-final-x{max-width:980px;margin:34px auto 0}
.pr-final-x .pending{outline-offset:6px}
.pr-final-x .pending-tag{margin-inline:auto}

/* --- Marcas «pendiente» (solo en local): que la etiqueta amarilla no ensanche columnas en móvil --- */
.pr-sec .pending-tag,.pr-final-x .pending-tag{width:auto;max-width:100%;white-space:normal}
.pr-nw{white-space:nowrap}

/* --- Legibilidad (texto de 14 px o más; notas y etiquetas de 12,5 px o más) y toques de 44 px --- */
.pr-sec .scen__facts span{font-size:12px}
.pr-sec .carencia label{font-size:12.5px}
.pr-sec .tldr .updated{font-size:12.5px}
.pr-sec .chip{font-size:14px}
@media(max-width:900px){.pr-sec .chip{min-height:44px}}
.tldr li.pr-tldr-no svg{background:#fff;color:var(--coral-ink)}
.pr-sec .text-link,.hero--perros .hero-actions .text-link,.hero--gatos .hero-actions .text-link{position:relative}
.pr-sec .text-link::after{content:"";position:absolute;inset:-9px -6px}  /* 27 + 18 = 45 px; las filas de enlaces van a 20 px */
.hero--perros .hero-actions .text-link::after,.hero--gatos .hero-actions .text-link::after{content:"";position:absolute;inset:-10px -6px}
.pr-sec .price-box+.need{margin-top:clamp(36px,4vw,52px)}
.pr-sec .carencia__out span{font-size:12px}
.pr-sec .carencia__out small,.pr-sec .carencia .fine{font-size:12.5px}
.pr-sim .sim__box span{font-size:12px}
.pr-sim .sim__note{font-size:12.5px}
.pr-sim .preset{font-size:14px}
.pr-sec .scen__panel .verdict{font-size:12px}
.pr-posts4 .post-card .cat{font-size:12px}

/* ==========================================================================
   Móvil (≤ 600 px; los ajustes de tablas, a ≤ 700 px): el 90 % del tráfico. Objetivo: que cada pantalla se lea de un
   vistazo, sin huecos, con el botón de precio a mano y sin nada que se salga ni quede tapado.
   ========================================================================== */
@media(max-width:600px){
  /* Hero: H1 de 38 px (36 en los más estrechos), sin antetítulo decorativo, el botón de precio en la primera pantalla
     y las migas con zona de toque de 44 px */
  .hero--perros .hero-content,.hero--gatos .hero-content{padding-top:40px;padding-bottom:30px}
  .hero--perros .hero-content>.eyebrow,.hero--gatos .hero-content>.eyebrow{display:none}
  .hero--perros .hero-content .crumbs,.hero--gatos .hero-content .crumbs{margin-bottom:18px}
  .hero--perros .crumbs a,.hero--gatos .crumbs a{display:inline-block;padding:12px 0;margin:-12px 0}
  .hero--perros h1,.hero--gatos h1{font-size:38px;line-height:1;letter-spacing:-.035em}
  .hero--perros h1 .c-kicker,.hero--gatos h1 .c-kicker{margin-bottom:14px;font-size:18px}
  .hero--perros .hero-lead,.hero--gatos .hero-lead{font-size:17px;line-height:1.5;margin:18px 0 24px}
  .hero--perros .hero-actions,.hero--gatos .hero-actions{gap:16px}
  .hero--perros .hero-actions .btn,.hero--gatos .hero-actions .btn{width:100%;justify-content:space-between}
  .hero--perros .c-chips,.hero--gatos .c-chips{margin-top:22px}
  .hero--perros .hero-card,.hero--gatos .hero-card{padding:24px var(--gutter) 26px}

  /* Franja de cifras */
  .pr-proof>div{padding:16px 10px 14px 0}
  .pr-proof>div:nth-child(2n){padding-left:12px}
  .pr-proof b{font-size:22px}
  .pr-proof span{font-size:14px;line-height:1.35}

  /* Secciones compactas y titulares de 26-32 px */
  .pr-sec.section{padding-block:56px}
  .pr-sec.section--tight{padding-block:44px}
  .pr-sec.pr-first{padding-top:32px}
  .pr-sec .sec-head{margin-bottom:28px}
  .pr-sec .sec-head .eyebrow{margin-bottom:14px}
  .pr-sec .sec-head h2,.pr-sec .sec-head--long h2,.pr-sec .faq-layout>.sec-head h2{font-size:30px;line-height:1.06;letter-spacing:-.03em}
  .pr-sec .sec-head .copy{margin-top:14px;font-size:17px;line-height:1.55}
  .pr-split .split__copy h2{font-size:30px;line-height:1.06;letter-spacing:-.03em}
  .pr-split .split__copy .pr-lead{font-size:17px}
  .pr-split{gap:28px}
  .pr-sec .split__media .frame{aspect-ratio:16/11}
  .pr-sec .tldr{padding:24px 18px;gap:16px}
  .pr-sec .tldr__t{font-size:28px;line-height:1.05}
  .pr-sec .tldr__lead{font-size:17px;line-height:1.5}
  .pr-how{margin-top:40px}
  .pr-how__t{font-size:24px;margin-bottom:14px}
  .pr-sec .behind__t{font-size:28px}
  .pr-sec .behind p{font-size:16px}
  .pr-sec .behind__grid{grid-template-columns:1fr 1fr;gap:10px}
  .pr-sec .behind__grid>div{padding:16px 14px}

  /* Texto de párrafo a 16 px */
  .pr-how__step p,.pr-ctx,.pr-older,.pr-ppp p,.pr-ley__card p,.pr-sec .checks li,.pr-sec .clear-card li,
  .pr-sec .carencia p,.pr-sec .c-cov td.c-cov__inc{font-size:16px}
  .pr-sec .need li span,.pr-sec .factor span{font-size:15px}

  /* Botones de precio a todo el ancho (pulgar) */
  .pr-cta>.btn,.pr-sec .cta-strip .btn{width:100%;white-space:normal;justify-content:space-between;text-align:left;line-height:1.3}
  .pr-sec .cta-strip{margin-top:40px;padding:22px 0;gap:14px}
  .pr-sec .cta-strip p{font-size:19px}
  .pr-sec .cta-strip .cta-row{width:100%;gap:16px}
  .pr-cta{gap:14px 24px}

  /* Simulador */
  .pr-sim{margin-top:44px;gap:16px}
  .pr-sim .txt h3{font-size:24px;margin-bottom:8px}
  .pr-sim .txt p{font-size:16px;margin:0}
  .pr-sim .sim{padding:24px 18px;gap:16px}
  .pr-sim .sim__bill output{font-size:36px}
  .pr-sim .sim__box output{font-size:28px}
  /* Los casos de ejemplo, en una fila que se desliza (antes, cuatro filas de botones: 220 px de alto); el botón que
     asoma a la derecha indica que hay más, como en las pestañas de «¿Qué pasa si…?» */
  .pr-sim .presets{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity;margin-inline:-18px;padding:2px 18px 4px;scroll-padding-inline:18px}
  .pr-sim .presets::-webkit-scrollbar{display:none}
  .pr-sim .preset{flex:none;scroll-snap-align:start}
  /* Borde difuminado donde queda algo por ver (20_producto.js pone las clases; sin JS, sin difuminar) */
  .pr-sim .presets.pr-fade-r,.pr-razas .chips.pr-fade-r{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 56px),transparent)}
  .pr-sim .presets.pr-fade-l,.pr-razas .chips.pr-fade-l{-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px);mask-image:linear-gradient(90deg,transparent,#000 40px)}
  .pr-sim .presets.pr-fade-l.pr-fade-r,.pr-razas .chips.pr-fade-l.pr-fade-r{-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 56px),transparent);mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 56px),transparent)}

  /* ¿Qué pasa si…?: el panel, más compacto, y los datos en filas «etiqueta · valor» que no se parten */
  .pr-sec .scen{gap:20px}
  .pr-sec .scen__tab{min-height:44px}
  .pr-sec .scen__panel{padding:24px 20px;gap:14px}
  .pr-sec .scen__panel h3{font-size:24px}
  .pr-sec .scen__facts{grid-template-columns:1fr;margin-top:0}
  .pr-sec .scen__facts div,.pr-sec .scen__facts div+div{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:11px 0;border:0;border-bottom:1px solid var(--line-light)}
  .pr-sec .scen__facts div:last-child{border-bottom:0;padding-bottom:0}
  .pr-sec .scen__facts span{margin:0;letter-spacing:.08em}
  .pr-sec .scen__facts b{flex:none;max-width:60%;text-align:right;font-size:16px;line-height:1.3}

  /* Lo que no cubre y para contratar */
  .pr-sec .clear-box{gap:14px}
  .pr-sec .clear-card{padding:24px 18px;gap:10px}
  .pr-sec .clear-card h3{font-size:22px}
  .pr-sec .clear-card li{padding:12px 0;gap:12px}
  .pr-example{padding:16px;margin-top:24px}
  .pr-sec .carencia{padding:24px 18px;margin-top:24px}

  /* Razas: las razas en una fila que se desliza (en vez de seis filas de botones) */
  .pr-razas .chips{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;margin-inline:calc(-1*var(--gutter));padding:2px var(--gutter) 6px}
  .pr-razas .chips::-webkit-scrollbar{display:none}
  .pr-razas .chip{flex:none}
  .pr-ppp{padding:16px}

  /* Arma tu seguro: filas compactas y el resumen sin repetir la lista (en móvil, el número y el botón) */
  .pr-arma .builder{gap:24px}
  .pr-arma .opt{padding:16px 0;gap:14px}
  .pr-arma .opt__t{font-size:17px}
  .pr-arma .summary{padding:24px 20px;gap:14px}
  .pr-arma .summary__count{font-size:56px}
  .pr-arma .summary ul{display:none}  /* la lista repetía, justo debajo, los interruptores que acabas de mirar */

  /* Precio */
  .pr-sec .price-box{gap:28px}
  .pr-sec .factor{padding:16px 14px}
  .pr-sec .discount{padding:18px}
  .pr-sec .discount .pct{font-size:28px}
  .pr-sec .discount p{font-size:15px}
  .pr-sec .need{padding:22px 18px;border-radius:20px}

  /* RC */
  .pr-ley{gap:30px}
  .pr-ley .pr-ley__sw{font-size:16px}

  /* Comparar: los criterios ya están en la entradilla y en las filas de la tabla */
  .pr-crit{display:none}

  /* Frase, manifiesto (gatos) y CTA final */
  .pr-frase{padding:52px var(--gutter)}
  .pr-frase blockquote{font-size:30px}
  .pr-manifesto .manifesto-photo{min-height:280px}
  .pr-manifesto .manifesto-copy{padding:48px var(--gutter) 52px}
  .pr-manifesto h2{font-size:30px}
  .pr-manifesto .manifesto-copy>p{font-size:17px;line-height:1.6;margin:18px 0 22px}
  .pr-final{padding:60px var(--gutter)}
  .pr-final h2{font-size:32px;line-height:1.05}
  .pr-final .lead{font-size:17px;margin:16px auto 26px}
  .pr-final .final-steps{margin-top:34px}
  .pr-final .final-steps div{padding:16px 0 0;font-size:15px}
  .pr-final .final-steps b{font-size:17px}
  .pr-final-x{margin-top:26px;text-align:left}

  /* Guías y más seguros */
  .pr-posts4 .post-card h3{font-size:19px}
  .pr-more{margin-top:40px}

  /* Entradillas de los H2: primero la respuesta directa, en tinta; el detalle, en gris y en su propia línea (antes, un
     bloque gris de 7-9 líneas) */
  .pr-sec .sec-head .copy p:has(.pr-ans){text-wrap:wrap}  /* «balance» estrechaba la respuesta (bloques de ≤ 6 líneas) */
  .pr-sec .sec-head .copy .pr-ans{color:var(--ink)}
  .pr-sec .sec-head .copy .pr-det{display:block;margin-top:10px;font-size:16px;line-height:1.55}

  /* Dudas: sin el hueco de 83 px entre la ayuda (teléfono, WhatsApp, correo) y la primera pregunta */
  .pr-sec .faq-layout{gap:0}
  .pr-sec .faq-layout>.sec-head{margin-bottom:22px}

  /* Hero de gatos: el texto blanco caía sobre el gato blanco; sombra más pareja en todo el ancho */
  .hero--gatos .hero-shade{background:linear-gradient(90deg,rgba(16,13,10,.8) 0%,rgba(16,13,10,.62) 50%,rgba(16,13,10,.52) 100%),linear-gradient(0deg,rgba(0,0,0,.3),transparent 50%)}

  /* Llamadas [n] de la comparativa: zona de toque de 44 px sin mover el texto */
  .pr-vs .c-vs__ref a{position:relative}
  .pr-vs .c-vs__ref a::after{content:"";position:absolute;inset:-14px -13px}
}
@media(max-width:370px){
  .hero--perros h1,.hero--gatos h1{font-size:35px}
  .pr-sec .sec-head h2,.pr-sec .sec-head--long h2,.pr-sec .faq-layout>.sec-head h2,.pr-split .split__copy h2{font-size:28px}
  .pr-sec .behind__grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .pr-how__list{grid-template-columns:1fr}
  .pr-how__step,.pr-how__step+.pr-how__step{grid-template-columns:44px minmax(0,1fr);gap:14px;padding:16px 0;border-right:0;border-bottom:1px solid var(--line)}
  .pr-how__ico{width:44px;height:44px}
  .pr-how__ico svg{width:20px;height:20px}
  .pr-how__step h4{font-size:18px}
}
@media(max-width:699.98px){
  /* Guías en carrusel */
  .pr-posts4 .post-grid{grid-auto-flow:column;grid-auto-columns:80%;grid-template-columns:none;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:10px;scrollbar-width:thin}
  .pr-posts4 .post-card{scroll-snap-align:start}
  .pr-posts4 .post-card .frame{aspect-ratio:16/11}
}

/* --- Comparativa en móvil (≤ 700 px): cada criterio es una tarjeta con Swipet, Milo y Barkibu uno debajo de otro,
       en vez de una tabla de 682 px que se desliza (con las celdas de 120 px de ancho, cada fila ocupaba media pantalla) --- */
@media(max-width:700px){
  .pr-vs .c-vs__hint{display:none}
  .pr-vs .c-vs__scroll{overflow:visible}
  .pr-vs .c-vs__table{display:block;min-width:0;font-size:15px}
  .pr-vs .c-vs__table caption{display:block;position:static;max-width:none;padding:0 0 14px}
  .pr-vs .c-vs__table thead{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .pr-vs .c-vs__table tbody,.pr-vs .c-vs__table tr{display:block}
  .pr-vs .c-vs__table tbody tr{padding:16px 0 12px;border-top:1px solid var(--line)}
  .pr-vs .c-vs__table tbody tr:first-child{border-top-color:var(--ink)}
  .pr-vs .c-vs__table tr>:first-child,.pr-vs .c-vs__table tbody th{position:static;display:block;width:auto;min-width:0;padding:0 0 8px;border:0;box-shadow:none;background:none;font-size:18px;line-height:1.25}
  .pr-vs .c-vs__table td{display:block;padding:9px 0;border:0;line-height:1.45}
  .pr-vs .c-vs__table td::before{display:block;margin-bottom:2px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;line-height:1.3;color:var(--muted)}
  .pr-vs .c-vs__table td[data-col="swipet"]{margin:2px 0 4px;padding:10px 12px;background:var(--mint)}
  .pr-vs .c-vs__table td[data-col="swipet"]::before{content:"Swipet";color:var(--ink)}
  .pr-vs .c-vs__table td[data-col="milo"]::before{content:"Milo"}
  .pr-vs .c-vs__table td[data-col="barkibu"]::before{content:"Barkibu"}
  .pr-vs .c-vs__src ol{columns:auto}
}


/* ---- 25_cachorros.css ---- */
/* ==========================================================================
   V2 — /seguro-para-cachorros/ (v2_cachorros.py). Prefijo .cach- (y .hero--cachorros).
   Diseño de Luis: tinta, papel, crema, menta y salvia; líneas finas; píldoras; números grandes.
   MÓVIL PRIMERO (03/10/2026: el 90 % del tráfico es móvil). Revisado con capturas a 360, 390 y 414 px:
   sin scroll lateral, párrafos de 16 px o más, H1 de 32-40 px y H2 de 26-32 px, toques de 44 px o más,
   campos a 16 px (sin zoom en iPhone) y secciones de 48 px arriba y abajo. Todas las secciones de la página llevan
   .cach-s: estos ajustes no tocan otras páginas.
   03/10/2026 (tarde): primera pantalla compacta en móviles con poca altura visible (el botón del precio siempre a la
   vista), respuestas de los H2 en párrafos cortos, tabla de costes y bloque de precio a 15-18 px, y las guías del
   primer año con «1 de 4» y botones, como el carrusel de opiniones.
   ========================================================================== */

/* «de 10 a 22 h», «919 341 339», «L-J 9-19 h · V 9-18 h»: que no se partan entre la cifra y la «h» */
.cach-nw{white-space:nowrap}

/* --- Ritmo y titulares de la página en móvil ------------------------------------------------------------- */
@media(max-width:900px){
  .cach-s.section{padding-block:64px}
  .cach-s.section--tight{padding-block:44px}
  .cach-s .sec-head{margin-bottom:32px}
}
@media(max-width:600px){
  /* 48 px arriba y abajo: menos de 100 px de relleno por sección, con aire suficiente entre bandas de color */
  .cach-s.section{padding-block:48px}
  .cach-s.section--tight{padding-block:28px 36px}
  .cach-s .sec-head{margin-bottom:24px}
  .cach-s .sec-head .eyebrow{margin-bottom:12px}
  .cach-s .sec-head h2,.cach-s .sec-head--long h2,.cach-s .faq-layout>.sec-head h2{font-size:clamp(26px,7.6vw,32px);line-height:1.06;letter-spacing:-.03em}
  /* Respuestas directas partidas en párrafos cortos (v2_cachorros._resp): se leen de un vistazo */
  .cach-s .sec-head .copy{margin-top:14px;font-size:17px;line-height:1.55}
  .cach-s .sec-head .copy p{margin-bottom:.65em}
  .cach-s .sec-head .copy p:last-child{margin-bottom:0}
}

/* --- Hero ------------------------------------------------------------------------------------------------
   Escritorio: la capa de la foto se alarga hacia la derecha para que el cachorro quede a la derecha del titular.
   Tableta (701-900 px): la foto cubre solo la zona del texto y la tarjeta de precio va debajo.
   Móvil (≤ 700 px): el <picture> usa una foto vertical (v2_cachorros._fuente_movil) en una franja arriba, con el
   cachorro a la vista; el titular empieza sobre el final de la franja, en blanco sobre tinta, y debajo va la
   tarjeta de precio. Así el cachorro no queda escondido detrás del texto. */
@media(max-width:900px){
  .hero--cachorros{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto}
  .hero--cachorros>.hero-media,.hero--cachorros>.hero-shade,.hero--cachorros>.hero-content{grid-area:1/1}
  .hero--cachorros>.hero-card{grid-area:2/1}
}
@media(max-width:700px){
  .hero--cachorros{--cach-ph:clamp(210px,58vw,262px);--cach-ov:58px;grid-template-rows:auto auto auto;background:var(--ink)}
  .hero--cachorros>.hero-media,.hero--cachorros>.hero-shade{position:relative;inset:auto;grid-area:1/1;height:var(--cach-ph)}
  .hero--cachorros .hero-media img{object-position:50% 30%}
  .hero--cachorros>.hero-shade{background:linear-gradient(180deg,rgba(23,21,18,.62) 0%,rgba(23,21,18,0) 30%,rgba(23,21,18,0) 50%,rgba(23,21,18,.86) 84%,var(--ink) 100%)}
  .hero--cachorros>.hero-content{grid-area:2/1;margin-top:calc(-1 * var(--cach-ov));padding-top:0;padding-bottom:34px}
  .hero--cachorros>.hero-card{grid-area:3/1}
  /* Las migas, arriba de la foto (sobre la parte oscurecida) */
  .hero--cachorros .hero-content .crumbs{position:absolute;top:calc(12px - var(--cach-ph) + var(--cach-ov));left:var(--gutter);right:var(--gutter);margin:0;text-shadow:0 1px 8px rgba(0,0,0,.55)}
  .hero--cachorros .crumbs a{position:relative}
  .hero--cachorros .crumbs a::after{content:"";position:absolute;inset:-13px -8px}
  /* El antetítulo «Recién llegado a casa» se queda en escritorio; en móvil, la raya coral pasa al «Seguro para…» */
  .hero--cachorros .hero-content>.eyebrow{display:none}
  .hero--cachorros .hero-content>.eyebrow~h1 .c-kicker::before{display:block}
  .hero--cachorros h1{font-size:clamp(32px,9.3vw,40px);line-height:1}
  .hero--cachorros h1 .c-kicker{margin-bottom:14px;font-size:18px;line-height:1.25}
  .hero--cachorros .hero-lead{margin:18px 0 22px;font-size:17px;line-height:1.5}
  .hero--cachorros .hero-actions{gap:6px;align-items:stretch}
  .hero--cachorros .hero-actions .btn{width:100%;justify-content:space-between;min-height:54px;font-size:15px}
  .hero--cachorros .hero-actions .text-link{align-self:flex-start;margin-top:10px}
  .hero--cachorros .c-chips{margin-top:22px}
  /* Tarjeta de arranque: etiquetas legibles y aire justo */
  .hero--cachorros .hero-card--starter{padding:26px var(--gutter) 28px}
  .hero--cachorros .starter .f>span{font-size:12px}
  .hero--cachorros .hero-card--starter .fine{font-size:12.5px;line-height:1.45}
}
/* Móviles con poca altura visible (360×640, iPhone SE, o cualquier móvil con las barras del navegador a la vista):
   franja de foto más baja y titular algo más compacto, para que el botón del precio entre en la primera pantalla. */
@media(max-width:700px) and (max-height:760px){
  .hero--cachorros{--cach-ph:clamp(140px,24vh,180px);--cach-ov:24px}
  /* la cara del cachorro, en la parte clara de la franja (el titular solo pisa el borde oscurecido) */
  .hero--cachorros .hero-media img{object-position:50% 33%}
  .hero--cachorros>.hero-shade{background:linear-gradient(180deg,rgba(23,21,18,.55) 0%,rgba(23,21,18,0) 20%,rgba(23,21,18,0) 62%,rgba(23,21,18,.82) 86%,var(--ink) 100%)}
  .hero--cachorros .hero-content .crumbs{top:calc(10px - var(--cach-ph) + var(--cach-ov))}
  .hero--cachorros h1{font-size:clamp(30px,8.6vw,35px)}
  .hero--cachorros h1 .c-kicker{margin-bottom:10px;font-size:16px}
  .hero--cachorros .hero-lead{margin:14px 0 18px;font-size:16px;line-height:1.5}
  .hero--cachorros .hero-actions .text-link{margin-top:6px}
  .hero--cachorros .c-chips{margin-top:16px}
}
/* En iPhone, vh mide la pantalla con las barras del navegador escondidas: svh, la parte que de verdad se ve */
@supports (height:1svh){
  @media(max-width:700px) and (max-height:760px){.hero--cachorros{--cach-ph:clamp(140px,24svh,180px)}}
}
@media(min-width:901px){
  .hero--cachorros .hero-media{right:-38%}
  .hero--cachorros .hero-shade{background:linear-gradient(90deg,rgba(16,13,10,.86) 0%,rgba(16,13,10,.6) 40%,rgba(16,13,10,.12) 64%,rgba(16,13,10,0) 80%),linear-gradient(0deg,rgba(0,0,0,.34),transparent 45%)}
  .hero--cachorros h1{max-width:760px}
}
/* Portátiles con poca altura (1280×720, 1366×768): que el botón y las pruebas entren en la primera pantalla */
@media(min-width:901px) and (max-height:820px){
  .hero--cachorros .hero-content{padding-top:clamp(36px,6vh,64px);padding-bottom:36px}
  .hero--cachorros .hero-content .crumbs{margin-bottom:18px}
  .hero--cachorros .hero-content>.eyebrow{margin-bottom:16px}
  .hero--cachorros h1 .c-kicker{margin-bottom:12px}
  .hero--cachorros h1 .c-kicker~.hero-h1-main{font-size:min(1em,62px)}
  .hero--cachorros .hero-lead{margin:20px 0 24px;font-size:18px}
  .hero--cachorros .c-chips{margin-top:20px}
}
/* Zona de toque del «Llamar» del hero (el subrayado sigue pegado al texto) */
.hero--cachorros .hero-actions .text-link{position:relative}
.hero--cachorros .hero-actions .text-link::after{content:"";position:absolute;inset:-10px -6px}

/* --- En 30 segundos --------------------------------------------------------------------------------------- */
.cach-resumen .tldr .updated{font-size:12.5px}
@media(max-width:600px){
  .cach-resumen .tldr{padding:26px 20px;gap:20px}
  .cach-resumen .tldr__t{font-size:clamp(26px,7.4vw,30px);line-height:1.05}
  .cach-resumen .tldr__lead{font-size:16px;line-height:1.55}
  .cach-resumen .tldr li{padding:12px 0;gap:12px;grid-template-columns:26px minmax(0,1fr)}
  .cach-resumen .tldr li svg{width:26px;height:26px}
}

/* --- Franja de CTA de la página ------------------------------------------------------------------------- */
.cach-cta{margin-top:clamp(36px,5vw,64px)}
.cach-cta .text-link{min-height:44px}
.bg-cream .cach-cta{border-color:rgba(23,21,18,.16)}
@media(max-width:600px){
  .cach-cta{padding:22px 0 18px;gap:16px}
  .cach-cta p{font-size:19px;line-height:1.25}
  .cach-cta p span{margin-top:6px;line-height:1.5}
  .cach-cta .cta-row{width:100%;flex-direction:column;align-items:stretch;gap:4px}
  .cach-cta .btn{width:100%;justify-content:space-between;min-height:54px;font-size:15px}
  .cach-cta .text-link{align-self:flex-start}
}
/* Listas de enlaces («Todo lo que cubre el seguro», «Ver más opiniones»…): uno por línea en móvil, toques de 44 px */
.cach-more{list-style:none;display:flex;flex-wrap:wrap;gap:4px 32px;margin:28px 0 0;padding:0}
.cach-more .text-link{min-height:44px}
@media(max-width:600px){.cach-more{flex-direction:column;align-items:flex-start;gap:2px;margin-top:22px}}

/* --- Agenda del cachorro ----------------------------------------------------------------------------------- */
.cach-agenda{background:var(--mint);display:grid;gap:30px;padding:clamp(24px,3.2vw,46px)}
@media(min-width:1000px){.cach-agenda{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}}
.cach-agenda__t{font-size:clamp(24px,2.3vw,34px);letter-spacing:-.03em;line-height:1.08}
.cach-agenda__intro{margin:14px 0 0;color:var(--muted);font-size:16px;line-height:1.55;max-width:460px}
.cach-agenda__form{display:grid;gap:18px;margin-top:26px}
html:not(.js) .cach-agenda__form{display:none}
.cach-seg{border:0;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:0;max-width:360px}
.cach-seg legend{grid-column:1/-1;padding:0;margin:0 0 8px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.cach-seg .seg-opt span{background:rgba(255,255,255,.55)}
.cach-seg .seg-opt input:checked+span{background:var(--ink)}
.cach-field{display:grid;gap:6px;max-width:360px}
.cach-field__l{font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.cach-field small{font-size:15px;line-height:1.4;color:var(--muted)}
.cach-field input{margin-top:4px;width:100%;height:52px;border-radius:100px;border:1px solid var(--ink);padding:0 20px;font:inherit;font-size:16px;font-weight:400;letter-spacing:0;text-transform:none;background:#fff;color:var(--ink);-webkit-appearance:none;appearance:none}
.cach-field input::-webkit-date-and-time-value{text-align:left}
.cach-field input:focus-visible{outline:3px solid var(--coral-ink);outline-offset:2px}
.cach-agenda__estado{margin:0 0 20px;padding:14px 18px;background:#fff;border-left:4px solid #2f6b3a;font-size:16px;font-weight:700;line-height:1.45}
.cach-agenda.is-aviso .cach-agenda__estado{border-left-color:var(--coral)}
.cach-agenda__estado[hidden]{display:none}

.cach-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(23,21,18,.22)}
.cach-step{padding:22px 18px 8px 0;min-width:0}
.cach-step+.cach-step{padding-left:18px;border-left:1px solid rgba(23,21,18,.22)}
.cach-step__day{display:block;font-size:clamp(40px,4vw,58px);font-weight:700;letter-spacing:-.045em;line-height:.95}
.cach-step__day small{display:block;margin-bottom:6px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.2;color:var(--muted)}
.cach-step:first-child .cach-step__day{color:var(--coral-ink)}
.cach-step h4{margin:16px 0 4px;font-size:17px;line-height:1.25;letter-spacing:-.01em}
.cach-step__p{margin:0 0 10px;font-size:15px;line-height:1.45;color:var(--muted)}
.cach-step__date{display:block;font-size:16px;font-weight:700;line-height:1.3;color:var(--ink)}
.cach-step__age{display:block;margin-top:2px;font-size:15px;line-height:1.35;color:#2f6b3a;font-weight:700}
.cach-step__age:empty{display:none}
.cach-step__extra{margin:10px 0 0;font-size:15px;line-height:1.45}
.cach-notes{display:grid;gap:10px;margin-top:22px}
.cach-note{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start;margin:0;padding:14px 16px;background:rgba(255,255,255,.62);font-size:16px;line-height:1.5}
.cach-note svg{width:36px;height:36px;padding:8px;border-radius:50%;background:#fff}
.cach-agenda .pending{margin-top:14px}
.cach-agenda__ley{margin:16px 0 0;font-size:15px;line-height:1.5}
.cach-agenda__fine{margin:16px 0 0;font-size:13px;line-height:1.45;color:var(--muted)}
@media(max-width:700px){
  .cach-steps{grid-template-columns:1fr}
  .cach-step,.cach-step+.cach-step{display:grid;grid-template-columns:64px minmax(0,1fr);gap:0 14px;padding:16px 0;border-left:0;border-bottom:1px solid rgba(23,21,18,.22)}
  .cach-step__day{font-size:36px}
  .cach-step h4{margin-top:2px;font-size:18px}
  .cach-step__p{font-size:16px;margin-bottom:6px}
  .cach-step__date{font-size:17px}
  .cach-step__extra{font-size:16px}
}
@media(max-width:600px){
  .cach-agenda{padding:24px 18px 22px;gap:22px}
  .cach-agenda__form{gap:16px;margin-top:20px}
  .cach-seg,.cach-field{max-width:none}
  .cach-note{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:14px}
  .cach-note svg{width:32px;height:32px;padding:7px}
}

/* --- Vacunas: antes y después de la carencia ---------------------------------------------------------------- */
.cach-vac{display:grid;gap:14px}
@media(min-width:760px){.cach-vac{grid-template-columns:1fr 1fr}}
.cach-vac__box{display:grid;gap:12px;align-content:start;padding:clamp(22px,2.6vw,36px)}
.cach-vac__box--antes{background:#fff;border:1px solid var(--line)}
.cach-vac__box--despues{background:var(--sage)}
.cach-vac__k{display:inline-flex;align-items:center;gap:10px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.cach-vac__k svg{width:28px;height:28px;flex:none;padding:6px;border-radius:50%;background:var(--cream)}
.cach-vac__box--despues .cach-vac__k svg{background:#fff;color:#2f6b3a}
.cach-vac__big{margin:0;font-size:clamp(26px,2.4vw,36px);font-weight:700;letter-spacing:-.03em;line-height:1.05}
.cach-vac__box p:not(.cach-vac__big){margin:0;font-size:16px;line-height:1.55}
.cach-links{list-style:none;display:flex;flex-wrap:wrap;gap:4px 32px;margin:26px 0 0;padding:0}
.cach-links .text-link{min-height:44px}
@media(max-width:600px){.cach-links{flex-direction:column;align-items:flex-start;gap:2px;margin-top:20px}}

/* --- Qué cubre: «¿Qué pasa si…?» ------------------------------------------------------------------------------
   En móvil y tableta, las ocho situaciones a la vista en una rejilla (en vez de una tira que se desliza y esconde
   seis de ocho); el panel con la respuesta va justo debajo. */
.cach-scen__t{margin:0 0 16px;font-size:clamp(20px,1.2vw + 14px,24px);font-weight:700;letter-spacing:-.02em;line-height:1.15}
.cach-cob .scen__facts span{font-size:12px;letter-spacing:.1em}
.cach-cob .scen__panel .verdict{font-size:12px}
@media(max-width:959.98px){
  .cach-cob .scen{gap:14px}
  .cach-cob .scen__tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;overflow:visible;padding:0}
  .cach-cob .scen__tab{min-height:52px;padding:8px 12px;border-radius:16px;white-space:normal;font-size:14.5px;line-height:1.2;justify-content:flex-start}
  .cach-cob .scen__tab .ic{gap:10px}
}
@media(max-width:700px){.cach-cob .scen__tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
  .cach-cob .scen__panel{padding:24px 20px 26px;gap:14px}
  .cach-cob .scen__panel h3{font-size:clamp(22px,6.4vw,26px);line-height:1.12}
  .cach-cob .scen__panel p{font-size:16px;line-height:1.55}
  .cach-cob .scen__facts b{font-size:18px}
}
@media(max-width:380px){.cach-cob .scen__tab{padding:8px 10px;font-size:14px}.cach-cob .scen__tab .ic{gap:8px}}

/* --- Datos de la OCU ---------------------------------------------------------------------------------------- */
.cach-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);margin:0 0 clamp(36px,5vw,60px)}
.cach-stat{padding:24px 22px 18px 0;border-bottom:1px solid var(--line)}
.cach-stat+.cach-stat{padding-left:22px;border-left:1px solid var(--line)}
.cach-stat b{display:block;font-size:clamp(40px,4.4vw,64px);font-weight:700;letter-spacing:-.045em;line-height:1}
.cach-stat:first-child b{color:var(--coral-ink)}
.cach-stat span{display:block;margin-top:10px;font-size:16px;line-height:1.45;color:var(--muted);max-width:280px}
.cach-stats__src{grid-column:1/-1;margin:0;padding:12px 0 0;font-size:13px;line-height:1.5;color:var(--muted)}
.cach-stats__src a{padding-block:12px;color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
@media(max-width:700px){
  .cach-stats{grid-template-columns:1fr}
  .cach-stat,.cach-stat+.cach-stat{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;align-items:center;padding:14px 0;border-left:0}
  .cach-stat b{font-size:clamp(34px,10vw,40px)}
  .cach-stat span{margin-top:0}
}

/* --- Tabla de costes (pieza compartida) en esta página: notas y cifras legibles en móvil --------------------- */
@media(max-width:639.98px){
  .cach-s .c-tbl--costs caption{font-size:14px;line-height:1.5}
  .cach-s .c-costs th[scope=row]{font-size:18px}
  .cach-s .c-costs__nota{font-size:14.5px;line-height:1.45}
  .cach-s .c-costs td{font-size:16px;line-height:1.4}
  .cach-s .c-tbl--costs .c-more>summary{min-height:48px;font-size:15px}
}
@media(max-width:600px){
  .cach-s .c-tbl--costs .c-notes{font-size:14px}
  .cach-s .c-tbl--costs .c-notes p{font-size:16px;line-height:1.55}
  .cach-s .c-tbl--costs .c-notes .c-src,.cach-s .c-tbl--costs .c-notes .c-src__t{font-size:14px;line-height:1.5}
}

/* --- Marcas de «pendiente» (solo en local): la etiqueta de swipet.css mide width:max-content y ensanchaba la columna */
.cach-pend .pending-tag,.cach-agenda .pending-tag{width:auto;max-width:100%;white-space:normal}
.cach-pend{min-width:0}
.sec-head .cach-pend{margin-top:18px}

/* --- Qué elegir: «Siempre incluido» y «Tú eliges» (_planes; también en /seguro-perros/ y /seguro-gatos/) ------- */
.cach-plans__grid{display:grid;gap:14px}
@media(min-width:760px){.cach-plans__grid{grid-template-columns:1fr 1fr;gap:20px;align-items:start}}
.cach-plan{background:#fff;border:1px solid var(--line);padding:22px clamp(18px,2.4vw,30px) 6px}
.cach-plans .cach-plan--in{background:var(--mint);border-color:transparent}
.cach-plan__head{display:grid;grid-template-columns:40px minmax(0,1fr);gap:2px 14px;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}
.cach-plan__ico{grid-row:1/3;width:40px;height:40px;border-radius:50%;background:#fff;display:grid;place-items:center}
.cach-plan--in .cach-plan__ico{color:#2f6b3a}
.cach-plan--opt .cach-plan__ico{background:var(--cream);color:var(--coral-ink)}
.cach-plan__ico svg{width:20px;height:20px}
.cach-plan__head h3{font-size:clamp(21px,1vw + 15px,26px);letter-spacing:-.02em;line-height:1.1}
.cach-plan__head p{margin:0;font-size:15px;line-height:1.4;color:var(--muted)}
.cach-plan__list{list-style:none;margin:0;padding:0}
.cach-plan__list li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid var(--line)}
.cach-plan__list li:last-child{border-bottom:0}
.cach-plan__list svg{width:22px;height:22px;margin-top:1px}
.cach-plan__n{display:block;font-size:17px;line-height:1.3;letter-spacing:-.01em}
/* Insignia coral de la esterilización («En tu clínica», 05/10/2026), la misma de las tarjetas de la portada */
.cach-plan__star{margin:7px 0 3px}
.cach-plan__d{display:block;margin-top:2px;font-size:16px;line-height:1.45;color:var(--muted)}
.cach-plans__cta{display:grid;gap:12px;justify-items:start;margin-top:22px}
.cach-plans__cta p{margin:0;max-width:600px;font-size:15px;line-height:1.5;color:var(--muted)}
@media(max-width:600px){
  .cach-plan{padding:20px 18px 4px}
  .cach-plan__head p{font-size:16px}
  .cach-plans__cta .btn{width:100%;justify-content:space-between;min-height:54px;font-size:15px}
  .cach-plans__cta p{font-size:15px;line-height:1.5}
}

/* --- Precio (pieza compartida price_v2) en esta página --------------------------------------------------------- */
@media(max-width:600px){
  .cach-precio .price-box{gap:30px}
  .cach-precio .price-box h3{font-size:clamp(22px,6.4vw,26px)}
  .cach-precio .discount{padding:20px 18px}
  .cach-precio .discount .pct{font-size:clamp(24px,7.6vw,32px)}
  .cach-precio .discount p{font-size:16px;line-height:1.5}
  .cach-precio .factor{padding:16px 14px;gap:6px;align-content:start}
  .cach-precio .factor b{font-size:17px;line-height:1.25}
  .cach-precio .factor span{font-size:15px;line-height:1.4}
  .cach-precio .cta-note{font-size:15px;line-height:1.45}
  .cach-precio .price-box .btn{min-height:54px;font-size:15px;justify-content:space-between}
}

/* --- Primer año ----------------------------------------------------------------------------------------------- */
.cach-year{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--line)}
@media(min-width:760px){.cach-year{grid-template-columns:1fr 1fr;column-gap:44px}}
@media(min-width:1100px){.cach-year{grid-template-columns:repeat(3,1fr)}}
.cach-year__item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;align-items:start;padding:26px 0;border-bottom:1px solid var(--line)}
.cach-year__ico{width:44px;height:44px;border-radius:50%;background:var(--mint);display:grid;place-items:center}
.cach-year__ico svg{width:20px;height:20px}
.cach-year h3{font-size:19px;line-height:1.25;letter-spacing:-.01em;margin:8px 0 6px}
.cach-year p{margin:0;font-size:16px;line-height:1.5;color:var(--muted)}
.cach-year .cach-year__cov{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:12px;color:var(--ink);font-size:15px}
.cach-year .verdict{font-size:12px;letter-spacing:.08em;padding:6px 12px}
/* «Si las añades»: la píldora blanca no se veía sobre el papel */
.cach-year .verdict--opt{background:#fff;box-shadow:inset 0 0 0 1px rgba(23,21,18,.32)}
@media(max-width:600px){
  .cach-year__item{grid-template-columns:36px minmax(0,1fr);gap:12px;padding:16px 0}
  .cach-year__ico{width:36px;height:36px}
  .cach-year__ico svg{width:17px;height:17px}
  .cach-year h3{margin:5px 0 4px;font-size:18px}
  .cach-year .cach-year__cov{margin-top:10px;font-size:16px;line-height:1.45}
}
.cach-guides-wrap{margin-top:clamp(36px,6vw,72px)}
.cach-guides__t{margin:0 0 14px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.cach-guides{list-style:none;margin:0;padding:0;display:grid;gap:12px}
@media(min-width:700px){.cach-guides{grid-template-columns:1fr 1fr;gap:18px 26px}}
@media(min-width:1100px){.cach-guides{grid-template-columns:repeat(4,1fr)}}
.cach-guide{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:center;color:var(--ink)}
.cach-guide__img{display:block;aspect-ratio:1/1;overflow:hidden;background:var(--cream)}
.cach-guide__img img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.cach-guide:hover .cach-guide__img img{transform:scale(1.04)}
.cach-guide__txt{display:grid;gap:4px}
.cach-guide__cat{font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--coral-ink)}
.cach-guide h3{font-size:18px;line-height:1.2;letter-spacing:-.01em}
.cach-guide:hover h3{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.cach-guide__d{font-size:15px;line-height:1.45;color:var(--muted)}
@media(min-width:1100px){.cach-guide{grid-template-columns:1fr;align-items:start;gap:14px}.cach-guide__img{aspect-ratio:4/3}}
/* Móvil: las guías en una fila que se desliza (se ve asomar la siguiente), con la foto arriba */
@media(max-width:600px){
  .cach-guides{grid-auto-flow:column;grid-auto-columns:76%;gap:14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;
    scroll-padding-inline:var(--gutter);margin-inline:calc(-1 * var(--gutter));padding:0 var(--gutter) 6px;scrollbar-width:none}
  .cach-guides::-webkit-scrollbar{display:none}
  .cach-guides>li{scroll-snap-align:start;min-width:0}
  .cach-guide{grid-template-columns:1fr;align-items:start;gap:12px;height:100%}
  .cach-guide__img{aspect-ratio:16/10}
  .cach-guide h3{font-size:17px}
  .cach-guide__d{font-size:16px}
  /* «1 de 4» y botones anterior/siguiente, como el carrusel de opiniones (05_global.js, desde 25_cachorros.js) */
  .cach-guides-wrap .sw-car{display:flex;margin-top:10px}
}

/* --- Chat «Oye, humano»: foto apaisada y burbujas a 16 px en móvil -------------------------------------------- */
.cach-chat .bubble .who{font-size:12px}
/* Sobre el fondo crema de la sección, las burbujas de la mascota en blanco (crema sobre crema no se veían) */
.cach-chat .bubble--pet{background:#fff}
@media(max-width:959.98px){.cach-chat .chat-photo{aspect-ratio:16/10}}
@media(max-width:600px){
  .cach-chat .chat-grid{gap:24px}
  .cach-chat .chat-photo{aspect-ratio:16/9}
  .cach-chat .chat{gap:10px}
  .cach-chat .bubble{max-width:90%;padding:13px 16px;font-size:16px;line-height:1.45;border-radius:20px}
  .cach-chat .bubble--pet{border-bottom-left-radius:4px}
  .cach-chat .bubble--human{border-bottom-right-radius:4px}
}

/* --- Opiniones y preguntas ------------------------------------------------------------------------------------- */
.cach-more--one{display:block}
@media(max-width:600px){
  .cach-s .faq-layout{gap:26px}
  .cach-s .faq__a{font-size:16px;line-height:1.55}
}

/* --- CTA final: titular a la medida del móvil y descuentos por varias mascotas ------------------------------------ */
.cach-final__more{max-width:620px;margin:16px auto 0;font-size:16px;line-height:1.5;color:var(--ink)}
.cach-final__more .c-textlink{white-space:nowrap}
@media(max-width:600px){
  .cach-final.final-cta{padding:56px var(--gutter) 60px}
  .cach-final h2{font-size:clamp(28px,8.2vw,32px);line-height:1.05}
  .cach-final .lead{margin:16px auto 24px;font-size:17px;line-height:1.5}
  .cach-final .cta-row{gap:10px}
  .cach-final .btn{min-height:54px;font-size:15px;justify-content:space-between}
  .cach-final__more{text-align:left}
  .cach-final .c-final__need{font-size:16px}
}


/* ---- 26_rc.css ---- */
/* ==========================================================================
   V2 — Responsabilidad civil para perros y perros PPP (v2_rc.py). Prefijo .rc-
   Diseño de Luis (tokens de swipet.css): tinta, papel, crema, coral y salvia; líneas finas; píldoras.
   Móvil primero; toques de 44-48 px; sin JS todo se lee (el JS solo filtra, cuenta, pliega y anima).
   Todas las secciones de estas páginas llevan .rc-sec (y el CTA final, .rc-final): lo de aquí no toca otras páginas.
   ========================================================================== */

/* --- Marcas «pendiente» (solo en la vista local) dentro de rejillas de una columna ---
   swipet.css les da width:max-content: una etiqueta larga fijaba el ancho mínimo de la rejilla y la página se salía
   122 px en móvil (FAQ de /seguro-responsabilidad-civil-perros/ y columna «No entra»). */
.rc-faq .pending-tag,.rc-sino .pending-tag,.rc-ley .pending-tag,.rc-ley__pend .pending-tag{width:auto}
.rc-faq .faq-layout>*,.rc-sino>*,.rc-ley>*{min-width:0}

/* --- Anclas: el html ya reserva la cabecera fija y la subnavegación (05_global.css: --header-h + 66 px), así que aquí no
   se suma nada (antes se sumaban 64 px más y, al tocar la subnavegación, se veían 130 px de la sección anterior encima del
   titular). En móvil la sección sube 36 px más: su relleno de 56 px ya separa el titular de la subnavegación, que además
   se esconde al bajar. */
.rc-sec[id]{scroll-margin-top:0}
@media(max-width:600px){.rc-sec[id]{scroll-margin-top:-36px}}

/* --- Enlaces de texto sueltos: zona de toque de unos 45 px sin cambiar el diseño (27 px + 2 × 9 px) --- */
.rc-sec .text-link,.hero--rc .hero-actions .text-link,.hero--ppp .hero-actions .text-link{position:relative}
.rc-sec .text-link::after,.hero--rc .hero-actions .text-link::after,.hero--ppp .hero-actions .text-link::after{content:"";position:absolute;inset:-9px -6px}

/* --- Hero: tarjeta salvia con las dos formas de tenerla --- */
.rc-card{gap:12px}
.rc-card .rc-card__t{margin:0;font-size:20px;font-weight:700;line-height:1.25;letter-spacing:-.01em;color:var(--ink)}
.rc-card__opts{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.rc-opt{display:grid;grid-template-columns:40px minmax(0,1fr) 20px;gap:12px;align-items:center;min-height:64px;padding:11px 16px 11px 11px;border-radius:24px;background:rgba(255,255,255,.72);border:1px solid rgba(23,21,18,.16);color:var(--ink);transition:background-color .2s,border-color .2s,transform .25s var(--ease)}
.rc-opt:hover{background:#fff;border-color:var(--ink);transform:translateY(-1px)}
.rc-opt__ico{width:40px;height:40px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center}
.rc-opt__ico svg{width:20px;height:20px}
.rc-opt--vet .rc-opt__ico{background:var(--coral);color:var(--ink)}
.rc-opt__txt{min-width:0}
.rc-opt__txt b{display:block;font-size:15px;line-height:1.25}
.rc-opt__txt small{display:block;margin-top:2px;font-size:13px;line-height:1.35;color:rgba(23,21,18,.76)}
.rc-opt__go{font-size:18px;line-height:1;justify-self:end;transition:transform .25s var(--ease)}
.rc-opt:hover .rc-opt__go{transform:translate(2px,-2px)}
@media(min-width:901px){.hero-card.rc-card{width:430px}}
.rc-card .fine{font-size:13px;line-height:1.45}

/* --- Llamadas a fuentes --- */
.rc-ref{font-size:.68em;line-height:0;margin-left:1px}
.rc-ref a{display:inline-block;min-width:1.6em;padding:0 .15em;text-align:center;font-weight:700;color:var(--coral-ink);text-decoration:none}
.rc-ref a:hover{text-decoration:underline}
.bg-ink .rc-ref a,.rc-ley__card .rc-ref a{color:var(--coral)}
.rc-ley__card--siempre .rc-ref a{color:var(--coral-ink)}

/* --- ¿Qué es?: el flujo de tres pasos bajo el resumen (número con contraste AA sobre papel) --- */
.rc-flow{margin-top:clamp(40px,5vw,64px)}
.rc-flow .step__n{color:var(--muted);font-size:13px;font-weight:700}

/* --- Frase de Luis: sin palabras sueltas en la última línea del móvil (cada frase, su propia línea equilibrada) --- */
.rc-frase blockquote{text-wrap:balance}
.rc-frase blockquote>span{display:block;text-wrap:balance}

/* Móvil: los tres pasos con el icono a la izquierda (como en /preguntas-frecuentes/), en vez de uno debajo de otro con
   mucho aire */
@media(max-width:760px){
  .rc-flow .steps .step,.rc-flow .steps .step+.step{position:relative;padding:20px 0 20px 72px;min-height:0}
  .rc-flow .step__n{position:absolute;left:0;top:20px}
  .rc-flow .step__ico{position:absolute;left:0;top:42px;width:48px;height:48px;margin:0}
  .rc-flow .step h3{font-size:20px;margin:0 0 6px}
  .rc-flow .step p{font-size:16px;line-height:1.5}
}

/* --- Qué cubre: tarjetas de daños (sobre .cov-card de Luis) y «sí / no» --- */
.rc-dmg{grid-template-columns:1fr}
@media(min-width:760px){.rc-dmg{grid-template-columns:repeat(3,1fr)}}
.rc-swipe{display:none}
/* Móvil: las tres tarjetas en carrusel (se ve asomar la siguiente) en vez de tres fotos apiladas */
@media(max-width:759.98px){
  .rc-dmg{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:84%;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;margin-inline:calc(-1*var(--gutter));padding:2px var(--gutter) 6px;
    scroll-padding-inline:var(--gutter);scrollbar-width:none}
  .rc-dmg::-webkit-scrollbar{display:none}
  .rc-dmg>.cov-card{scroll-snap-align:start;min-width:0}
  .js .rc-dmg .reveal{opacity:1;transform:none}
  .rc-dmg .cov-card__img{height:148px}
  .rc-dmg .cov-card__body{padding:18px 18px 20px;gap:8px}
  .rc-dmg .cov-card h3{font-size:21px}
  .rc-dmg .cov-card p{font-size:16px;line-height:1.5}
  .rc-dmg .cov-card .limit{font-size:15px;padding-top:12px}
  .rc-swipe{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin:8px 0 0;font-size:13px;font-weight:700;color:var(--muted)}
}
.rc-sino{display:grid;gap:22px;margin-top:22px}
@media(min-width:900px){.rc-sino{grid-template-columns:1fr 1fr}}
.rc-sino__col{padding:30px 32px 18px;display:grid;gap:14px;align-content:start}
.rc-sino__col--si{background:var(--mint)}
.rc-sino__col--no{background:#fff;border:1px solid var(--line)}
.rc-sino__col h3{font-size:24px}
.rc-sino ul{list-style:none;margin:0;padding:0;display:grid}
.rc-sino li{display:grid;grid-template-columns:28px 1fr;gap:14px;align-items:start;padding:14px 0;border-top:1px solid var(--line);font-size:15px;line-height:1.5}
.rc-sino li svg{width:28px;height:28px;padding:6px;border-radius:50%;background:#fff}
.rc-sino__col--no li svg{background:var(--cream)}
.rc-sino a{font-weight:700;border-bottom:1px solid currentColor}
.rc-sino .pending{margin:14px 0 10px}
.rc-sino .pending p{margin:0;font-size:14px}
@media(max-width:600px){.rc-sino__col{padding:24px 20px 12px}.rc-sino__col h3{font-size:22px}}
.rc-strip p{max-width:680px}

/* --- Qué pasa si…: un poco más de aire entre la cabecera y las pestañas en móvil --- */
@media(max-width:959.98px){#que-pasa-si .scen{gap:24px}}

/* --- Lo que dice la ley (fondo tinta) --- */
.rc-ley{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));align-items:stretch}
.rc-ley>.pending{outline-offset:6px;display:grid}
.rc-ley__card{background:rgba(255,255,255,.05);border:1px solid var(--line-light);padding:30px 30px 28px;display:flex;flex-direction:column;gap:14px;color:#fff}
.rc-ley__card--siempre{background:var(--sage);border-color:var(--sage);color:var(--ink)}
.rc-ley__k{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.35}
.rc-ley__k svg{width:18px;height:18px;flex:none}
.bg-ink .rc-ley__card h3{color:#fff;font-size:clamp(22px,1vw + 15px,26px)}
.bg-ink .rc-ley__card--siempre h3{color:var(--ink)}
.rc-ley__card p{margin:0;font-size:15.5px;line-height:1.55;color:#cfcbc5}
.rc-ley__card--siempre p{color:rgba(23,21,18,.82)}
.rc-ley__card a{color:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;gap:8px;min-height:44px}
.rc-ley__card .rc-ref a{display:inline-block;min-height:0}
.rc-quote{margin:0;padding:4px 0 4px 18px;border-left:3px solid var(--coral-ink)}
.rc-quote p{font-style:italic;font-size:16.5px;line-height:1.5;color:var(--ink)}
.rc-quote footer{margin-top:10px;font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--ink)}
.rc-ley__card .rc-ley__src{font-size:14px}
.rc-ley__note{margin:30px 0 0;max-width:760px;font-size:15.5px;color:#cfcbc5}
.rc-ley__pend{margin-top:30px}
.rc-ley__pend .rc-ley__note{margin:0}
.rc-ley__cta{margin-top:clamp(30px,4vw,44px);gap:14px 26px}
.bg-ink .rc-ley__cta .text-link,.bg-ink .rc-seguro__cta .text-link{color:#fff}

/* --- Fuentes plegadas (<details>): título, resumen útil y la lista al abrir --- */
.rc-src{margin-top:clamp(34px,4vw,48px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.bg-ink .rc-src{border-color:var(--line-light)}
.rc-src>summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:minmax(0,1fr) 22px;column-gap:16px;align-items:center;min-height:60px;padding:14px 0}
.rc-src>summary::-webkit-details-marker{display:none}
.rc-src .rc-src__t{grid-column:1;margin:0;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.rc-src__s{grid-column:1;margin-top:4px;font-size:14px;line-height:1.45;color:var(--muted)}
.bg-ink .rc-src__s{color:#bdb9b2}
.rc-src>summary svg{grid-column:2;grid-row:1/span 2;width:22px;height:22px;transition:transform .25s var(--ease)}
.rc-src[open]>summary svg{transform:rotate(180deg)}
.rc-src>summary:focus-visible{outline:3px solid var(--coral-ink);outline-offset:4px}
.bg-ink .rc-src>summary:focus-visible{outline-color:var(--coral)}
.rc-src .c-sources-box{margin:0;padding:0 0 18px;border:0}

/* --- Si pasa algo: pasos numerados + tarjeta de ayuda --- */
.rc-help-grid{display:grid;gap:40px;align-items:start}
@media(min-width:1000px){.rc-help-grid{grid-template-columns:1.3fr .7fr;gap:70px}.rc-help-grid>.c-help{position:sticky;top:calc(var(--header-h) + 76px)}}
.rc-pasos{list-style:none;margin:0;padding:0;display:grid}
.rc-pasos__i{display:grid;grid-template-columns:56px 1fr;gap:20px;align-items:start;padding:24px 0;border-top:1px solid var(--line)}
.rc-pasos__i:last-child{border-bottom:1px solid var(--line)}
.rc-pasos__n{width:56px;height:56px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:22px;font-weight:700;letter-spacing:-.02em}
.rc-pasos__i:first-child .rc-pasos__n{background:var(--coral);color:var(--ink)}
.rc-pasos h3{font-size:21px;margin:4px 0 8px}
.rc-pasos p{margin:0;font-size:15.5px;line-height:1.55;color:var(--muted)}
@media(max-width:600px){.rc-pasos__i{grid-template-columns:44px 1fr;gap:14px;padding:20px 0}.rc-pasos__n{width:44px;height:44px;font-size:18px}.rc-pasos h3{font-size:19px}}

/* --- Contratar: dos caminos, nota de precio y seguro de hogar --- */
.rc-dos{display:grid;gap:22px}
@media(min-width:900px){.rc-dos{grid-template-columns:1fr 1fr}}
.rc-dos__card{background:#fff;border:1px solid var(--line);padding:32px 34px 34px;display:flex;flex-direction:column;gap:16px}
.rc-dos__card--vet{background:var(--ink);border-color:var(--ink);color:#fff}
.rc-dos__k{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.35;color:var(--coral-ink)}
.rc-dos__card--vet .rc-dos__k{color:var(--coral)}
.rc-dos__card h3{font-size:clamp(28px,2.4vw,36px);line-height:1.05;letter-spacing:-.03em}
.rc-dos__card--vet h3{color:#fff}
.rc-dos__list{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--line)}
.rc-dos__card--vet .rc-dos__list{border-color:var(--line-light)}
.rc-dos__list li{display:grid;grid-template-columns:26px 1fr;gap:12px;align-items:start;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.45}
.rc-dos__card--vet .rc-dos__list li{border-color:var(--line-light);color:#dcd8d2}
.rc-dos__list svg{width:26px;height:26px;padding:5px;border-radius:50%;background:var(--mint);color:var(--ink)}
.rc-dos__card--vet .rc-dos__list svg{background:var(--sage)}
.rc-dos__cta{margin-top:auto;padding-top:6px;display:grid;gap:16px;justify-items:start}
.rc-dos__cta .btn{width:100%;justify-content:space-between;white-space:normal;text-align:left}
.rc-dos__card--vet .text-link{color:#fff}
@media(max-width:600px){.rc-dos__card{padding:26px 20px 28px}}
.rc-price-note{margin:26px 0 0;font-size:16px;font-weight:700;color:var(--ink)}
.rc-price-note+.cta-note{margin-top:8px}
.rc-price-note+.cta-note span{align-items:flex-start}
.rc-price-note+.cta-note svg{flex:none;margin-top:2px}
.rc-hogar{display:grid;gap:22px;margin-top:clamp(44px,5vw,64px);padding-top:clamp(30px,4vw,44px);border-top:1px solid var(--line)}
@media(min-width:900px){.rc-hogar{grid-template-columns:.85fr 1.15fr;gap:60px}}
.rc-hogar h3{font-size:clamp(26px,2.2vw,34px);letter-spacing:-.03em}
.rc-hogar p{margin:12px 0 0;color:var(--muted)}
.rc-hogar .checks li svg{background:#fff}

/* --- Quién está detrás + opiniones (sobre crema, las tarjetas de behind_band en blanco para que no se pierdan) --- */
.rc-confianza .c-reviews{margin-top:clamp(56px,7vw,90px)}
.rc-confianza.bg-cream .behind__grid>div{background:#fff}

/* --- PPP: criterios, anexo II y notas --- */
.rc-crit{display:grid;gap:26px;margin-top:clamp(44px,5vw,64px)}
@media(min-width:900px){.rc-crit{grid-template-columns:repeat(3,1fr);gap:36px}}
.rc-crit__card{border-top:3px solid var(--ink);padding:22px 0 0;display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.rc-crit__n{font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--coral-ink)}
.rc-crit__card h3{font-size:26px;letter-spacing:-.025em}
.rc-crit__card p{margin:0;font-size:15.5px;line-height:1.55;color:var(--muted)}
.rc-crit__card a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.rc-anexo{margin-top:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);scroll-margin-top:12px}
.rc-anexo summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:62px;padding:14px 0;font-size:17px;font-weight:700;line-height:1.3}
.rc-anexo summary::-webkit-details-marker{display:none}
.rc-anexo summary svg{width:22px;height:22px;flex:none;transition:transform .25s var(--ease)}
.rc-anexo[open] summary svg{transform:rotate(180deg)}
.rc-anexo ol{margin:0 0 16px;padding-left:1.5em;display:grid;gap:8px;max-width:860px;font-size:15.5px;line-height:1.55;color:var(--muted)}
.rc-anexo ol li::marker{color:var(--coral-ink);font-weight:700}
.rc-anexo__src{margin:0 0 20px;font-size:13.5px;color:var(--muted)}
.rc-anexo__src a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.rc-note{display:flex;gap:12px;align-items:flex-start;max-width:900px;margin:30px 0 0;padding:16px 20px;background:var(--cream);font-size:15px;line-height:1.55;color:var(--ink)}
.bg-cream .rc-note{background:#fff}
.rc-note svg{width:20px;height:20px;flex:none;margin-top:2px}

/* --- PPP: buscador de razas (el filtro es el genérico de swipet.js; 26_rc.js abre los grupos plegados al buscar) --- */
.rc-check{display:grid;gap:28px}
.rc-check__search{display:grid;gap:8px;max-width:680px}
html:not(.js) .rc-check__search{display:none}
.rc-check__label{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.rc-check__field{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--ink);padding:2px 0}
.rc-check__field:focus-within{outline:3px solid var(--coral-ink);outline-offset:4px}
.rc-check__field svg{width:22px;height:22px;flex:none}
.rc-check__field input{flex:1;min-width:0;height:52px;border:0;border-radius:0;background:transparent;font:inherit;font-size:18px;color:var(--ink);-webkit-appearance:none;appearance:none}
.rc-check__field input:focus{outline:none}
.rc-check__field input::placeholder{color:var(--muted);opacity:1}
.rc-check__groups{display:grid;gap:36px}
.rc-check__g[hidden]{display:none}
.rc-check__g>h3{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin:0 0 14px;font-size:21px;letter-spacing:-.015em}
.rc-check__g>h3 small{font-size:13.5px;font-weight:400;letter-spacing:0;line-height:1.4;color:var(--muted)}
/* Grupos secundarios plegados: el resumen dice qué razas hay; al abrir, la nota de la norma y la lista */
.rc-check__g--fold{border-top:1px solid rgba(23,21,18,.18);border-bottom:1px solid rgba(23,21,18,.18)}
.rc-check__g--fold>summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:minmax(0,1fr) 24px;column-gap:16px;align-items:center;min-height:64px;padding:14px 0}
.rc-check__g--fold>summary::-webkit-details-marker{display:none}
.rc-check__g--fold>summary h3{grid-column:1;margin:0;font-size:21px;letter-spacing:-.015em}
.rc-check__peek{grid-column:1;margin-top:4px;font-size:15px;line-height:1.45;color:var(--muted)}
.rc-check__g--fold>summary svg{grid-column:2;grid-row:1/span 2;width:22px;height:22px;transition:transform .25s var(--ease)}
.rc-check__g--fold[open]>summary svg{transform:rotate(180deg)}
.rc-check__g--fold[open] .rc-check__peek{display:none}
.rc-check__g--fold>summary:focus-visible{outline:3px solid var(--coral-ink);outline-offset:4px}
.rc-check__g--fold[open]{padding-bottom:20px}
.rc-check__src{margin:0 0 14px;font-size:13.5px;line-height:1.45;color:var(--muted)}
.rc-check__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:10px}
.rc-check__list--wide{grid-template-columns:1fr}
@media(min-width:900px){.rc-check__list--wide{grid-template-columns:repeat(3,1fr)}}
.rc-breed{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding:16px 18px;background:#fff;border:1px solid var(--line);scroll-margin-top:12px;transition:border-color .2s}
.rc-breed[hidden]{display:none}
.rc-breed__n{margin:0;font-size:17px;font-weight:700;line-height:1.2;letter-spacing:-.01em}
.rc-breed p{margin:0;font-size:14.5px;line-height:1.5;color:var(--muted)}
.rc-breed p a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
/* Razas con ficha: el nombre es el enlace y toda la tarjeta se puede pulsar */
.rc-breed__a{color:inherit;text-decoration:none}
.rc-breed__a::after{content:"";position:absolute;inset:0}
.rc-breed__a:focus-visible{outline:none}
.rc-breed--link:focus-within{outline:3px solid var(--coral-ink);outline-offset:2px}
.rc-breed--link:hover{border-color:var(--ink)}
.rc-breed__go{display:inline-block;margin-left:8px;font-weight:400;transition:transform .25s var(--ease)}
.rc-breed--link:hover .rc-breed__go{transform:translateX(3px)}
.rc-breed:target{outline:3px solid var(--coral-ink);outline-offset:2px}
.rc-tag{display:inline-flex;align-items:center;border-radius:40px;padding:5px 11px;font-size:12.5px;font-weight:700;letter-spacing:.02em;line-height:1.3}
.rc-tag--ppp{background:var(--coral);color:var(--ink)}
.rc-tag--cat{background:var(--cream);color:var(--ink);box-shadow:inset 0 0 0 1px rgba(23,21,18,.28)}
.rc-tag--no{background:var(--sage);color:var(--ink)}
.rc-tag--puede{background:#fff;color:var(--ink);border:1px dashed var(--ink);padding:4px 10px}
.rc-check__none{margin:0;padding:18px 20px;background:#fff;border:1px dashed var(--ink);font-size:15.5px;line-height:1.55;color:var(--ink)}
.rc-check__none a{font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* --- PPP: lista de la licencia (casillas) + tarjeta del seguro --- */
.rc-lic-grid{display:grid;gap:30px;align-items:start}
@media(min-width:1000px){.rc-lic-grid{grid-template-columns:1.25fr .75fr;gap:56px}.rc-lic-grid>.rc-side{position:sticky;top:calc(var(--header-h) + 76px)}}
.rc-lic{background:var(--cream);padding:30px 32px 26px;display:grid;gap:18px}
.rc-lic__head{display:grid;gap:10px}
.rc-lic__t{margin:0;font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.2}
.rc-lic__prog{margin:0;font-size:14.5px;color:var(--muted)}
.rc-lic__prog b{color:var(--ink)}
.rc-lic__bar{height:8px;border-radius:8px;background:#fff;overflow:hidden}
.rc-lic__bar i{display:block;height:100%;width:0;background:var(--ink);border-radius:8px;transition:width .4s var(--ease)}
.rc-lic.is-done .rc-lic__bar i{background:#3f7a33}
html:not(.js) .rc-lic__prog,html:not(.js) .rc-lic__bar{display:none}
.rc-lic__list{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--line)}
.rc-lic__list li{border-bottom:1px solid var(--line)}
.rc-lic__list label{position:relative;display:grid;grid-template-columns:30px 1fr;gap:14px;align-items:start;min-height:48px;padding:14px 0;cursor:pointer}
.rc-lic__list input{position:absolute;left:0;top:14px;width:30px;height:30px;margin:0;opacity:0;cursor:pointer}
.rc-lic__box{width:30px;height:30px;border-radius:50%;border:1.5px solid rgba(23,21,18,.5);background:#fff;color:#fff;display:grid;place-items:center;transition:background-color .2s,border-color .2s}
.rc-lic__box svg{width:16px;height:16px;opacity:0;transition:opacity .2s}
.rc-lic__list input:checked+.rc-lic__box{background:var(--ink);border-color:var(--ink)}
.rc-lic__list input:checked+.rc-lic__box svg{opacity:1}
.rc-lic__list input:focus-visible+.rc-lic__box{outline:3px solid var(--coral-ink);outline-offset:2px}
.rc-lic__txt b{display:block;font-size:16px;line-height:1.3}
.rc-lic__txt small{display:block;margin-top:3px;font-size:14px;line-height:1.45;color:var(--muted)}
.rc-lic__fine{margin:0;font-size:13px;line-height:1.5;color:var(--muted)}
@media(max-width:600px){.rc-lic{padding:24px 18px 20px}}
.rc-aviso{display:flex;gap:14px;align-items:flex-start;margin:24px 0 0;padding:18px 22px;border-left:4px solid var(--coral);background:var(--mint);font-size:15.5px;line-height:1.5}
.rc-aviso svg{width:22px;height:22px;flex:none;margin-top:1px}
.rc-side{background:var(--sage);padding:30px;display:grid;gap:14px}
.rc-side__k{margin:0;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.rc-side h3{font-size:clamp(26px,2vw,32px);letter-spacing:-.03em;line-height:1.05}
.rc-side p{margin:0;font-size:15px;line-height:1.5;color:rgba(23,21,18,.82)}
.rc-side .btn{width:100%;justify-content:space-between;white-space:normal;text-align:left}
.rc-side .rc-side__fine{font-size:13px}
@media(max-width:600px){.rc-side{padding:24px 20px}}

/* --- PPP: capital frente al mínimo legal (dos barras, una sola escala) --- */
.rc-meter{margin:0 0 clamp(40px,5vw,60px);padding:30px 32px;max-width:920px;background:#fff;color:var(--ink);display:grid;gap:22px}
.rc-meter__cap{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.35}
.rc-meter__row{display:grid;gap:10px}
.rc-meter__lbl{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;margin:0;font-size:15px;line-height:1.4;color:var(--muted)}
.rc-meter__lbl b{font-size:clamp(26px,2.4vw,34px);line-height:1;letter-spacing:-.03em;color:var(--ink)}
.rc-meter__track{height:14px;border-radius:4px;background:var(--cream);overflow:hidden}
.rc-meter__bar{display:block;height:100%;border-radius:0 4px 4px 0;transform-origin:left center}
.rc-meter__bar--min{background:#8f887f}
.rc-meter__bar--sw{background:var(--coral-ink)}
.js .rc-meter .rc-meter__bar{transform:scaleX(0);transition:transform 1.1s var(--ease) .15s}
.js .rc-meter.is-in .rc-meter__bar{transform:none}
.rc-meter__note{margin:0;font-size:15px;font-weight:700;line-height:1.45}
@media(max-width:600px){.rc-meter{padding:24px 20px;gap:18px}}
.rc-seguro__cta{margin-top:clamp(30px,4vw,44px);gap:14px 26px}

/* --- PPP: normas en la calle --- */
.rc-calle{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
@media(min-width:640px){.rc-calle{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.rc-calle{grid-template-columns:repeat(3,1fr)}}
.rc-calle__i{display:grid;gap:10px;align-content:start;padding:26px 26px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.rc-calle__i svg{width:34px;height:34px;padding:7px;border-radius:50%;background:var(--mint)}
.rc-calle__i h3{font-size:20px}
.rc-calle__i p{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}
.rc-calle__src{margin:16px 0 0;font-size:13.5px;color:var(--muted)}

/* --- PPP: seguro veterinario (split de Luis) --- */
.split__copy .rc-lead{font-size:18px;line-height:1.55;color:var(--ink)}
.split__copy .rc-vet__precio{font-size:16px;line-height:1.55;color:var(--ink)}
.rc-vet .split__media .frame{aspect-ratio:4/5}
@media(max-width:959.98px){.rc-vet .split__media .frame{aspect-ratio:16/10}}
.rc-vet .cta-row{margin-top:8px}

/* --- Fuentes (sección corta al final de la página PPP) --- */
.rc-fuentes .rc-src{margin-top:0}

/* --- «Más seguros para tu perro»: en móvil, tarjetas horizontales (foto a la izquierda) en vez de cuatro fotos de 230 px --- */
@media(max-width:759.98px){
  #mas-seguros .prod-grid{gap:12px}
  #mas-seguros .prod-card{flex-direction:row;min-height:118px}
  #mas-seguros .prod-card .pc-img{position:relative;width:112px;height:auto;flex:none}
  #mas-seguros .prod-card .pc-img img{position:absolute;inset:0}
  #mas-seguros .prod-card__body{padding:16px 58px 16px 18px;align-content:center;gap:4px}
  #mas-seguros .prod-card h3{font-size:19px;line-height:1.15}
  #mas-seguros .prod-card p{font-size:14px;line-height:1.4}
  #mas-seguros .prod-card .go{top:50%;right:12px;width:38px;height:38px;margin-top:-19px;background:var(--cream)}
}
@media(max-width:380px){
  #mas-seguros .prod-card .pc-img{width:76px}
  #mas-seguros .prod-card__body{min-width:0;padding:14px 48px 14px 14px}
  #mas-seguros .prod-card h3{font-size:17px}
  #mas-seguros .prod-card .go{right:8px;width:34px;height:34px;margin-top:-17px}
}

/* ==========================================================================
   03/10/2026 — MÓVIL PRIMERO (el 90 % del tráfico): 360-414 px.
   Titulares de 36 px (H1) y 28-30 px (H2), texto de 16 px con interlineado de 1,5, secciones de 56 px, toques de 44 px,
   botones de precio a todo el ancho en los puntos de decisión y bloques largos más compactos o plegados.
   ========================================================================== */
@media(max-width:600px){
  /* Hero: la foto arriba (se ve el perro), el titular encima de su degradado y el texto sobre tinta */
  .hero--rc,.hero--ppp{--rc-ph:clamp(230px,62vw,262px);background:#100d0a;min-height:0}
  .hero--rc>.hero-media,.hero--ppp>.hero-media,.hero--rc>.hero-shade,.hero--ppp>.hero-shade{bottom:auto;height:var(--rc-ph)}
  .hero--rc>.hero-shade,.hero--ppp>.hero-shade{background:linear-gradient(180deg,rgba(16,13,10,.62) 0,rgba(16,13,10,.08) 26%,rgba(16,13,10,0) 44%,rgba(16,13,10,.6) 74%,#100d0a 100%)}
  .hero--rc .hero-content,.hero--ppp .hero-content{padding:calc(var(--rc-ph) - 64px) var(--gutter) 30px}
  .hero--rc .hero-content .crumbs,.hero--ppp .hero-content .crumbs{position:absolute;top:12px;left:var(--gutter);right:var(--gutter);margin:0}
  .hero--rc .hero-content>.eyebrow,.hero--ppp .hero-content>.eyebrow{display:none}
  .hero--rc h1,.hero--ppp h1{font-size:36px;line-height:1.02;letter-spacing:-.035em}
  .hero--rc h1 .c-kicker,.hero--ppp h1 .c-kicker{margin:0 0 10px;font-size:17px;line-height:1.25}
  .hero--rc .hero-lead,.hero--ppp .hero-lead{margin:14px 0 20px;font-size:16px;line-height:1.5}
  .hero--rc .hero-actions,.hero--ppp .hero-actions{align-items:stretch;gap:16px}
  .hero--rc .hero-actions .btn,.hero--ppp .hero-actions .btn{width:100%;min-height:54px;justify-content:space-between;font-size:15px}
  .hero--rc .hero-actions .text-link,.hero--ppp .hero-actions .text-link{align-self:flex-start;font-size:15px}
  .hero--rc .c-chips,.hero--ppp .c-chips{margin-top:20px}
  .hero-card.rc-card{padding:22px 18px 20px;gap:12px}
  .rc-card .rc-card__t{font-size:19px}
  .rc-opt{min-height:68px;padding:12px 14px 12px 12px}
  .rc-opt__txt b{font-size:16px}
  .rc-opt__txt small{font-size:14px;line-height:1.35}

  /* Secciones y titulares */
  .rc-sec.section{padding-block:56px}
  .rc-sec.section--tight{padding-block:36px}
  .rc-sec.rc-first{padding-top:40px}
  .rc-sec .sec-head{margin-bottom:28px}
  .rc-sec .sec-head .eyebrow{margin-bottom:14px}
  .rc-sec .sec-head h2,.rc-sec .faq-layout>.sec-head h2,.rc-sec .split__copy h2{font-size:30px;line-height:1.06;letter-spacing:-.032em}
  .rc-sec .sec-head .copy{margin-top:14px;font-size:17px;line-height:1.55}
  .rc-sec .tldr{padding:24px 18px;gap:18px}
  .rc-sec .tldr__t{font-size:28px;line-height:1.06}
  .rc-sec .tldr__lead{font-size:16px;line-height:1.55}
  .rc-sec .tldr li{padding:12px 0;line-height:1.5}
  .rc-sec .checks li{font-size:16px;line-height:1.5;padding:12px 0}
  .rc-sec .cta-strip{margin-top:40px;padding:22px 0}
  .rc-sec .cta-strip p{font-size:19px;line-height:1.3}
  .rc-sec .cta-strip .cta-row,.rc-ley__cta,.rc-seguro__cta,.rc-vet .cta-row{width:100%;flex-direction:column;align-items:stretch;gap:18px}
  .rc-sec .cta-strip .btn,.rc-ley__cta .btn,.rc-seguro__cta .btn,.rc-vet .cta-row .btn{width:100%;min-height:54px;justify-content:space-between;white-space:normal;text-align:left}
  .rc-sec .cta-strip .text-link,.rc-ley__cta .text-link,.rc-seguro__cta .text-link,.rc-vet .cta-row .text-link{align-self:flex-start}
  .rc-sec .c-help--compact{font-size:15px}

  /* Qué cubre: sí / no */
  .rc-sino{gap:14px;margin-top:22px}
  .rc-sino__col{padding:22px 18px 8px;gap:10px}
  .rc-sino li{grid-template-columns:26px 1fr;gap:12px;padding:12px 0;font-size:16px}
  .rc-sino li svg{width:26px;height:26px;padding:5px}

  /* ¿Qué pasa si…?: los datos del caso en filas «etiqueta | dato» (en tres columnas no cabían) */
  .rc-sec .scen__panel{padding:24px 18px;gap:14px}
  .rc-sec .scen__panel h3{font-size:24px;line-height:1.12}
  .rc-sec .scen__panel p{font-size:16px;line-height:1.55}
  .rc-sec .scen__facts{grid-template-columns:minmax(0,1fr)}
  .rc-sec .scen__facts div,.rc-sec .scen__facts div+div{display:grid;grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:12px;align-items:baseline;padding:11px 0;border:0;border-bottom:1px solid var(--line-light)}
  .rc-sec .scen__facts span{margin:0;font-size:12px;letter-spacing:.08em;line-height:1.35}
  .rc-sec .scen__facts b{font-size:16px;line-height:1.3}
  .rc-sec .scen__panel p:last-child a{display:inline-flex;align-items:center;min-height:44px}

  /* Botones: menos hueco entre el texto y la flecha para que «Calcular la responsabilidad civil» quepa en una línea */
  .rc-sec .btn,.hero--rc .btn,.hero--ppp .btn,.rc-final .btn{gap:12px;padding-inline:20px;line-height:1.2}

  /* Frase de Luis: menos alta */
  .rc-frase{padding:56px var(--gutter)}
  .rc-frase blockquote{font-size:34px}
  .rc-frase p{margin-top:14px}

  /* Lo que dice la ley */
  .rc-ley{gap:14px}
  .rc-ley__card{padding:22px 18px 20px;gap:12px}
  .rc-ley__card p{font-size:16px}
  .bg-ink .rc-ley__card h3{font-size:22px}
  .rc-quote{padding-left:14px}
  .rc-quote p{font-size:16px}
  .rc-ley__note{font-size:16px}
  .rc-ley__cta{margin-top:30px}
  .rc-src__s{font-size:14.5px}
  .rc-sec .c-sources{font-size:15px}

  /* Si pasa algo */
  .rc-pasos p{font-size:16px;line-height:1.5}
  .rc-help-grid{gap:30px}
  .rc-sec .c-help__sub{font-size:15px}

  /* Contratar */
  .rc-dos{gap:14px}
  .rc-dos__card{padding:24px 18px 22px;gap:14px}
  .rc-dos__card h3{font-size:27px}
  .rc-dos__list li{font-size:16px;line-height:1.5}
  .rc-dos__cta{gap:18px}
  .rc-dos__cta .btn{min-height:54px}
  .rc-price-note{margin-top:22px}
  .rc-hogar{margin-top:40px;padding-top:28px;gap:14px}
  .rc-hogar h3{font-size:24px}
  .rc-hogar p{font-size:16px;line-height:1.55}

  /* Quién está detrás: la ficha en dos columnas y los dos enlaces bien separados */
  .rc-confianza .behind{gap:22px}
  .rc-confianza .behind__t{font-size:28px;line-height:1.08}
  .rc-confianza .behind p{font-size:16px;line-height:1.55}
  .rc-confianza .behind .cta-row{row-gap:22px;margin-bottom:4px}
  .rc-confianza .behind__grid{grid-template-columns:1fr 1fr;gap:10px}
  .rc-confianza .behind__grid>div{padding:16px 14px;border-radius:16px}
  .rc-confianza .behind__grid b{font-size:15px;line-height:1.25}
  .rc-confianza .behind__grid span{font-size:13.5px;line-height:1.35}
  .rc-confianza .c-reviews{margin-top:44px}

  /* Preguntas frecuentes */
  .rc-faq .faq-layout{gap:26px}
  .rc-faq .faq__a{font-size:16px;line-height:1.55}

  /* CTA final */
  .rc-final{padding:56px var(--gutter) 60px}
  .rc-final h2{font-size:32px;line-height:1.05;letter-spacing:-.035em}
  .rc-final .lead{margin:16px auto 24px;font-size:16px;line-height:1.55}
  .rc-final .final-steps{margin-top:34px}
  .rc-final .final-steps div{padding:18px 0 0;font-size:15px;line-height:1.5}
  .rc-final .c-final__rc{margin-top:8px}

  /* PPP: qué es (criterios, anexo II y nota) */
  .rc-crit{gap:22px;margin-top:36px}
  .rc-crit__card{padding-top:16px;gap:8px}
  .rc-crit__card h3{font-size:22px}
  .rc-crit__card p{font-size:16px;line-height:1.5}
  .rc-anexo{margin-top:28px}
  .rc-anexo summary{font-size:16px}
  .rc-anexo ol{font-size:16px;line-height:1.5}
  .rc-note{margin-top:24px;padding:14px 16px;font-size:16px;line-height:1.5}

  /* PPP: razas en dos columnas (el título del grupo dice si son PPP; la etiqueta de cada una sobra aquí) */
  .rc-check{gap:24px}
  .rc-check__field input{font-size:17px}
  .rc-check__groups{gap:24px}
  .rc-check__g>h3{font-size:20px;margin-bottom:12px}
  .rc-check__g>h3 small{font-size:13.5px}
  .rc-check__g--fold>summary{min-height:60px;padding:12px 0}
  .rc-check__g--fold>summary h3{font-size:20px}
  .rc-check__list:not(.rc-check__list--wide){grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .rc-check__list:not(.rc-check__list--wide) .rc-breed{flex-direction:row;align-items:center;min-height:58px;padding:10px 10px 10px 13px;border-left:4px solid var(--coral)}
  .rc-check__list:not(.rc-check__list--wide) .rc-breed--cat{border-left-color:#d7a36a}
  .rc-check__list:not(.rc-check__list--wide) .rc-breed--no{border-left-color:var(--sage)}
  .rc-check__list:not(.rc-check__list--wide) .rc-tag{display:none}
  .rc-check__list:not(.rc-check__list--wide) .rc-breed__n{flex:1;min-width:0;font-size:16px;line-height:1.2;overflow-wrap:anywhere;hyphens:auto}
  .rc-check__list:not(.rc-check__list--wide) .rc-breed__a{display:flex;align-items:center;justify-content:space-between;gap:6px}
  .rc-check__list:not(.rc-check__list--wide) .rc-breed__go{margin:0;flex:none}
  .rc-check__list--wide{gap:8px}
  .rc-breed--caso{padding:14px 14px 15px;gap:8px}
  .rc-breed--caso .rc-breed__n{font-size:17px}
  .rc-breed--caso p{font-size:16px;line-height:1.5}
  .rc-check__none{font-size:16px}

  /* PPP: licencia */
  .rc-lic-grid{gap:22px}
  .rc-lic{padding:20px 16px 16px;gap:14px}
  .rc-lic__t{font-size:20px}
  .rc-lic__list label{grid-template-columns:28px 1fr;gap:12px;padding:12px 0}
  .rc-lic__list input{top:12px;width:28px;height:28px}
  .rc-lic__box{width:28px;height:28px}
  .rc-lic__txt small{font-size:16px;line-height:1.45}
  .rc-aviso{margin-top:18px;padding:16px;font-size:16px}
  .rc-side{padding:22px 18px}
  .rc-side h3{font-size:26px}
  .rc-side p{font-size:16px}
  .rc-side .btn{min-height:54px}

  /* PPP: su seguro (barras y datos) */
  .rc-meter{padding:22px 18px;gap:16px;margin-bottom:36px}
  .rc-meter__lbl{font-size:16px}
  .rc-meter__note{font-size:16px}
  .rc-sec .kf th{width:36%;padding-right:14px;font-size:15px}
  .rc-sec .kf th,.rc-sec .kf td{padding-block:14px}

  /* PPP: normas en la calle, en filas (icono a la izquierda) en vez de seis tarjetas */
  .rc-calle{border-left:0}
  .rc-calle__i{grid-template-columns:40px minmax(0,1fr);column-gap:14px;row-gap:2px;padding:16px 0;border-right:0;background:none}
  .rc-calle__i svg{grid-row:1/span 2;width:40px;height:40px;padding:9px}
  .rc-calle__i h3{font-size:18px;align-self:end}
  .rc-calle__i p{font-size:16px}

  /* PPP: seguro veterinario */
  .rc-vet{gap:26px}
  .split__copy .rc-lead{font-size:17px}
}
@media(max-width:380px){
  .hero--rc h1,.hero--ppp h1{font-size:33px}
  .hero--rc h1 .c-kicker,.hero--ppp h1 .c-kicker{font-size:16px}
  .rc-sec .sec-head h2,.rc-sec .faq-layout>.sec-head h2,.rc-sec .split__copy h2{font-size:28px}
  .rc-sec .tldr__t,.rc-confianza .behind__t{font-size:26px}
  .rc-final h2{font-size:30px}
  .rc-frase blockquote{font-size:31px}
  .rc-check__list:not(.rc-check__list--wide) .rc-breed{padding-left:11px}
  .rc-check__list:not(.rc-check__list--wide) .rc-breed__n{font-size:15.5px}
}

/* ==========================================================================
   03/10/2026 (noche) — Segunda pasada móvil, revisada con la ventana real (cabecera fija, subnavegación y barra inferior)
   ========================================================================== */
/* Antetítulo del bloque veterinario (PPP): .split__copy p (swipet.css y 07_integrador.css) lo dejaba gris y a 16 px en
   móvil; como los demás antetítulos, 12 px y en tinta */
.rc-vet .split__copy .eyebrow{font-size:12px;line-height:1.4;color:var(--ink)}

@media(max-width:600px){
  /* Migas del hero en una sola línea: la última (la página en la que estás) se corta con «…» en vez de bajar a una
     segunda línea encima de la foto */
  .hero--rc .hero-content .crumbs ol,.hero--ppp .hero-content .crumbs ol{flex-wrap:nowrap}
  .hero--rc .hero-content .crumbs li,.hero--ppp .hero-content .crumbs li{flex:none}
  .hero--rc .hero-content .crumbs li:last-child,.hero--ppp .hero-content .crumbs li:last-child{display:block;flex:0 1 auto;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
  .hero--rc .hero-content .crumbs li:last-child::before,.hero--ppp .hero-content .crumbs li:last-child::before{margin-right:6px}

  /* Franja de CTA: la línea de apoyo, separada del titular y con interlineado de lectura (heredaba 1,3) */
  .rc-sec .cta-strip p span{margin-top:6px;line-height:1.5}

  /* Textos de apoyo algo más grandes (notas de 14 px como mínimo; los de lectura, 16 px) */
  .rc-opt__txt small{font-size:15px}
  .rc-card .fine,.rc-lic__fine,.rc-side .rc-side__fine,.rc-price-note+.cta-note{font-size:14px}
  .rc-anexo__src,.rc-calle__src,.rc-check__src{font-size:14px}
  .rc-src__s{font-size:15px}
  .rc-frase p{font-size:16px;line-height:1.45}
  #mas-seguros .prod-card p{font-size:15px}

  /* CTA final: el antetítulo partido en dos líneas dejaba la raya coral sola a la izquierda; ahora va encima, centrada */
  .rc-final .eyebrow{flex-direction:column;align-items:center;gap:10px;margin-bottom:18px;text-wrap:balance}
  .rc-final .eyebrow::before{margin-top:0}
  .rc-final .c-final__need,.rc-final .final-steps div,.rc-final .c-final__rc-a{font-size:16px;line-height:1.5}
}
@media(max-width:380px){.rc-opt__txt small{font-size:14px}}
/* Pantallas bajas (iPhone SE, Android de 640 px de alto): la foto del hero, más baja, para que el botón principal se vea
   sin bajar */
@media(max-width:600px) and (max-height:740px){
  .hero--rc,.hero--ppp{--rc-ph:clamp(180px,50vw,200px)}
}


/* ---- 30_ayuda.css ---- */
/* ==========================================================================
   V2 — Centro de ayuda (/preguntas-frecuentes/, módulo v2_ayuda.py). Prefijo .ayu-
   Lenguaje de Luis (tokens de swipet.css): hero a sangre con foto, antetítulos con raya coral,
   líneas finas, píldoras, salvia/crema/tinta. Móvil primero; toques de 44-48 px; foco visible.
   Lo que pinta 30_ayuda.js (sugerencias, filtros, copiar enlace) no se ve sin JS: la página se lee entera.
   03/10/2026 — móvil primero (90 % del tráfico): a 360-414 px, foto del hero en franja visible, H1 de 36-38 px,
   H2 de 28-30 px, textos de párrafo ≥ 16 px, secciones de 56 px, ficha y calculadora plegadas con resumen,
   línea de carencias compacta, toques ≥ 44 px y nada tapado por la cabecera, la subnavegación ni la barra fija.
   03/10/2026 (revisión móvil) — H1 en tres líneas, anclas sin margen doble, el buscador sube bajo la cabecera al
   tocarlo (sugerencias por encima del teclado), preguntas sin palabras sueltas y textos pequeños a 12,5-16 px.
   ========================================================================== */

/* --- Hero a sangre con el buscador ------------------------------------------------------------ */
.hero.ayu-hero{height:auto;max-height:none;min-height:0;overflow:visible;z-index:41}
.ayu-hero .hero-media{overflow:hidden}
.ayu-hero .hero-shade{background:linear-gradient(90deg,rgba(16,13,10,.88) 0%,rgba(16,13,10,.66) 42%,rgba(16,13,10,.2) 78%,rgba(16,13,10,.08) 100%),linear-gradient(0deg,rgba(16,13,10,.6),transparent 58%)}
.ayu-hero .hero-content{padding:clamp(48px,6vh,84px) var(--gutter) clamp(44px,6vh,68px)}
.ayu-hero .ayu-hero__main>.eyebrow{margin-bottom:22px;font-size:12.5px}
.ayu-hero h1{font-size:clamp(42px,4.7vw,72px);line-height:.98;max-width:760px}
/* minmax(0,…): la fila de «Lo más buscado» (con scroll propio en móvil) no ensancha la columna */
.ayu-hero__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:34px;align-items:end;margin-top:4px}
.ayu-hero__main,.ayu-hero__help{min-width:0}
@media(min-width:1100px){.ayu-hero__grid{grid-template-columns:minmax(0,1fr) 420px;gap:56px}}
.ayu-hero .hero-lead{margin:24px 0 26px;max-width:600px}
@media(max-width:900px){.ayu-hero .hero-shade{background:linear-gradient(180deg,rgba(16,13,10,.5) 0%,rgba(16,13,10,.8) 38%,rgba(16,13,10,.9) 100%)}}
/* Migas: zona de toque de 44 px sin cambiar la maqueta */
.ayu-hero .crumbs a{position:relative}
.ayu-hero .crumbs a::after{content:"";position:absolute;left:-8px;right:-8px;top:50%;height:44px;transform:translateY(-50%)}
/* Móvil: la foto (cachorro con el botiquín y gatito) se ve entera en una franja arriba y el texto va sobre tinta,
   en vez de quedar casi negra detrás del titular. La franja mide lo que la foto a lo ancho (16:9). */
@media(max-width:600px){
  .hero.ayu-hero{--band:min(56vw,236px);background:var(--ink)}
  .ayu-hero .hero-media{bottom:auto;height:var(--band)}
  /* paradas en px de la franja (la capa mide todo el hero: con % las paradas caerían por debajo de la foto) */
  .ayu-hero .hero-shade{background:linear-gradient(180deg,rgba(16,13,10,.55) 0,rgba(16,13,10,.08) calc(var(--band)*.3),rgba(16,13,10,.22) calc(var(--band)*.55),rgba(16,13,10,.86) calc(var(--band) - 30px),var(--ink) calc(var(--band) - 2px))}
  .ayu-hero .hero-content{padding-top:14px;padding-bottom:40px}
  .ayu-hero .hero-content .crumbs{margin-bottom:calc(var(--band) - 84px)}
  .ayu-hero .ayu-hero__main>.eyebrow{margin-bottom:14px}
  /* H1 en tres líneas («Preguntas frecuentes / sobre el seguro / para mascotas») en vez de cuatro: el buscador
     y la tarjeta de ayuda suben ~50 px en la primera pantalla. Tamaño según el ancho para que quepa la primera línea. */
  .ayu-hero h1{font-size:34px;line-height:1.04;letter-spacing:-.035em;text-wrap:balance}
  .ayu-hero .hero-lead{font-size:17px;line-height:1.45;margin:16px 0 20px}
  .ayu-hero__grid{gap:26px}
}
@media(min-width:410px) and (max-width:600px){.ayu-hero h1{font-size:36px}}
@media(max-width:389.98px){.ayu-hero h1{font-size:32px}}
@media(max-width:370px){.ayu-hero h1{font-size:31px}}

/* Buscador: píldora blanca, sugerencias debajo (combobox) */
.ayu-search{position:relative;max-width:660px}
html:not(.js) .ayu-search{display:none}
.ayu-search__field{display:flex;align-items:center;gap:12px;height:64px;padding:0 10px 0 24px;border-radius:999px;background:#fff;color:var(--ink);box-shadow:0 18px 50px rgba(0,0,0,.28)}
.ayu-search__field:focus-within{outline:3px solid var(--coral);outline-offset:3px}
.ayu-search__field>svg{width:22px;height:22px;flex:none}
.ayu-search__field input{flex:1;min-width:0;height:100%;border:0;border-radius:0;background:transparent;font:inherit;font-size:18px;color:var(--ink);-webkit-appearance:none;appearance:none}
.ayu-search__field input:focus,.ayu-search__field input:focus-visible{outline:none}
.ayu-search__field input::placeholder{color:var(--muted);opacity:1}
.ayu-search__field input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;display:none}
.ayu-search__clear{flex:none;width:44px;height:44px;border:0;border-radius:50%;background:var(--cream);color:var(--ink);display:grid;place-items:center;cursor:pointer}
.ayu-search__clear[hidden]{display:none}
.ayu-search__clear svg{width:18px;height:18px}
.ayu-search__clear:hover{background:var(--sage)}
@media(max-width:600px){.ayu-search__field{height:58px;padding-left:18px}.ayu-search__field input{font-size:17px}}

.ayu-sug{position:absolute;left:0;right:0;top:calc(100% + 10px);z-index:30;background:#fff;color:var(--ink);border-radius:24px;box-shadow:0 26px 70px rgba(16,13,10,.34);overflow:hidden}
.ayu-sug[hidden]{display:none}
.ayu-sug__list{list-style:none;margin:0;padding:8px;max-height:min(50vh,430px);overflow:auto;overscroll-behavior:contain}
.ayu-sug__list:empty{display:none}
.ayu-sug__opt{display:grid;gap:4px;padding:12px 16px;border-radius:16px;cursor:pointer}
.ayu-sug__opt[aria-selected=true],.ayu-sug__opt:hover{background:var(--cream)}
.ayu-sug__opt[aria-selected=true]{box-shadow:inset 3px 0 0 var(--coral)}
.ayu-sug__q{font-size:16px;font-weight:700;line-height:1.3;letter-spacing:-.005em}
.ayu-sug__q mark{background:rgba(255,109,98,.28);color:inherit;border-radius:3px;padding:0 1px}
.ayu-sug__m{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ayu-sug__m .verdict{font-size:11px;padding:3px 9px;letter-spacing:.08em}
.ayu-sug__m .verdict svg{display:none}
.ayu-sug__none{margin:0;padding:18px 22px 6px;font-size:15px;line-height:1.5;color:var(--ink)}
.ayu-sug__none[hidden]{display:none}
.ayu-sug__none a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.ayu-sug__all{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:54px;padding:0 24px;border:0;border-top:1px solid var(--line);background:#fff;font:inherit;font-size:15px;font-weight:700;color:var(--ink);cursor:pointer;text-align:left}
.ayu-sug__all:hover,.ayu-sug__all:focus-visible{background:var(--cream)}
.ayu-sug__all[hidden]{display:none}
/* En móvil, con el teclado abierto, las sugerencias no pasan de media pantalla visible */
@media(max-width:600px){.ayu-sug{border-radius:20px}.ayu-sug__list{max-height:min(38vh,300px);padding:6px}.ayu-sug__opt{padding:12px 14px;min-height:48px}}

/* Lo más buscado */
.ayu-pop{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:22px;max-width:760px}
.ayu-pop__t{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.82)}
.ayu-pop__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ayu-pop__a{display:inline-flex;align-items:center;min-height:40px;padding:8px 16px;border-radius:999px;background:rgba(16,13,10,.5);border:1px solid rgba(255,255,255,.34);color:#fff;font-size:14px;line-height:1.2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background-color .2s,color .2s,border-color .2s}
.ayu-pop__a:hover{background:#fff;border-color:#fff;color:var(--ink)}
/* Escritorio: los siete temas caben en una fila junto a la tarjeta de ayuda */
@media(min-width:1100px){.ayu-pop__list{gap:6px}.ayu-pop__a{padding:8px 13px}}
@media(max-width:600px){
  .ayu-pop{flex-wrap:nowrap;margin-top:16px;margin-right:calc(-1*var(--gutter))}
  .ayu-pop__t{display:none}
  .ayu-pop__list{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:2px var(--gutter) 2px 0;scroll-snap-type:x proximity}
  .ayu-pop__list::-webkit-scrollbar{display:none}
  .ayu-pop__list li{flex:none;scroll-snap-align:start}
  .ayu-pop__a{min-height:44px;padding:8px 16px;font-size:15px}
}

/* Tarjeta «Habla con nosotros» (ayuda_humana compacta) en salvia, en la esquina como la tarjeta del hero de Luis */
.ayu-hero__help .c-help--compact{margin:0;padding:22px 24px 14px;background:var(--sage);color:rgba(23,21,18,.8);column-gap:12px;font-size:15px}
.ayu-hero__help .c-help--compact>b{width:100%;margin:0 0 2px;font-size:clamp(21px,.8vw + 15px,25px);line-height:1.15;letter-spacing:-.02em;color:var(--ink)}
.ayu-hero__help .c-help__a{color:var(--ink)}
.ayu-hero__help .c-help__h{font-size:14px;color:rgba(23,21,18,.78)}
.ayu-hero__help :focus-visible{outline-color:var(--ink)}
@media(max-width:1099.98px){.ayu-hero__help{max-width:660px}}
/* Móvil: más compacta (el correo está también en «¿No encuentras tu respuesta?» y en el pie) */
@media(max-width:600px){
  .ayu-hero__help .c-help--compact{padding:18px 18px 8px;border-radius:0;font-size:15px}
  .ayu-hero__help .c-help--compact>b{font-size:21px;margin-bottom:0}
  .ayu-hero__help .c-help--compact .c-help__a{font-size:16px}
  .ayu-hero__help .c-help--compact .c-help__h{flex:1 1 100%;margin:-8px 0 6px;font-size:14px}
  .ayu-hero__help .c-help__a[href^="mailto:"]{display:none}
}

/* --- Subnavegación de temas: que quepa en escritorio ------------------------------------------ */
@media(min-width:1100px){.ayu-subnav .subnav__in{justify-content:space-between;gap:2px}.ayu-subnav a{padding-inline:12px}}

/* --- Bloques plegados en móvil y abiertos en escritorio (ficha y calculadora; 30_ayuda.js) --------- */
.ayu-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:14px 18px 14px 20px;border:1px solid var(--ink);border-radius:18px;background:#fff;color:var(--ink);transition:background-color .2s,border-color .2s}
.ayu-fold>summary::-webkit-details-marker{display:none}
.ayu-fold>summary::marker{content:""}
.ayu-fold>summary:hover{background:var(--cream)}
.ayu-fold__txt{display:grid;gap:3px;min-width:0}
.ayu-fold__t{font-size:17px;font-weight:700;line-height:1.25;letter-spacing:-.01em}
.ayu-fold__m{font-size:14px;line-height:1.4;color:var(--muted)}
.ayu-fold>summary>svg{width:20px;height:20px;flex:none;transition:transform .2s var(--ease)}
.ayu-fold[open]>summary>svg{transform:rotate(180deg)}
.ayu-fold[open]>.ayu-fold__in{margin-top:18px}
.ayu-fold--calc>summary{background:var(--mint);border-color:var(--mint)}
.ayu-fold--calc>summary:hover{background:var(--sage);border-color:var(--sage)}
@media(min-width:900px){
  .js .ayu-fold>summary{display:none}
  .js .ayu-fold[open]>.ayu-fold__in{margin-top:0}
}
@media(min-width:900px){@supports selector(::details-content){
  .ayu-fold>summary{display:none}
  .ayu-fold::details-content{content-visibility:visible}
  .ayu-fold>.ayu-fold__in{margin-top:0}
}}
/* La calculadora ya se presenta en el resumen del plegable: en móvil no se repite su título */
@media(max-width:899.98px){.ayu-fold--calc .carencia h3{display:none}.ayu-fold--calc .carencia>div:first-child>p{margin-top:0}}
@media(max-width:600px){.ayu-fold>summary{padding:14px 16px 14px 18px}.ayu-fold__m{font-size:15px}}

/* --- Anclas: la página fija su propio margen superior (cabecera + subnavegación, el mismo que 05_global.css) y las
   secciones no suman otro encima (antes caían ~60 px más abajo de lo debido). En móvil, la ancla se come parte del
   relleno superior de la sección para que el antetítulo quede justo bajo la subnavegación. -------------------------- */
html:has(#faq-todas){scroll-padding-top:calc(var(--header-h) + 66px)}
.ayu-sec,.ayu-topic,.ayu-ficha,.ayu-res{scroll-margin-top:0}
@media(max-width:600px){.ayu-sec,.ayu-topic{scroll-margin-top:-36px}}
/* Las situaciones de «¿Está cubierto?» traen su propio margen (02_comun.css): aquí ya lo pone la página */
.ayu-cubre .c-cubre__item{scroll-margin-top:0}

/* --- Lo esencial: resumen + ficha ------------------------------------------------------------- */
.ayu-resumen .tldr{margin-bottom:clamp(56px,7vw,96px)}
.ayu-resumen .tldr__lead{color:var(--ink);font-size:17px}
.ayu-ficha{display:grid;gap:28px}
@media(min-width:1000px){
  .ayu-ficha{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:0}
  .ayu-ficha__side{position:sticky;top:calc(var(--header-h) + 88px);align-self:start;padding-right:48px}
}
.ayu-ficha__side h3{font-size:clamp(26px,2.2vw,34px);letter-spacing:-.03em;line-height:1.05;margin:0 0 14px}
.ayu-ficha__side>p:not(.eyebrow){color:var(--muted);font-size:16px;margin:0}
.ayu-ficha__side .eyebrow{margin-bottom:18px}
.ayu-ficha__more{margin-top:26px}
.ayu-ficha__more .ayu-ficha__more-t{margin:0 0 12px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
.ayu-ficha__side .chip{min-height:44px;font-size:14px}
.ayu-ficha .kf caption{padding-bottom:14px}
.ayu-ficha .kf th{width:30%}
.ayu-ficha .kf td{color:#4a4640}
.ayu-ficha .kf td a{color:var(--ink)}
/* Móvil y tableta: título y texto, después el plegable con la ficha y al final «Más a fondo» */
@media(max-width:999.98px){
  .ayu-ficha{display:flex;flex-direction:column;gap:0}
  .ayu-ficha__side{display:contents}
  .ayu-ficha .ayu-fold--ficha{order:1;margin-top:22px}
  .ayu-ficha .ayu-ficha__more{order:2}
}
@media(max-width:600px){
  .ayu-sec{padding-block:56px}
  .ayu-resumen .tldr{margin-bottom:44px;padding:26px 20px}
  .ayu-resumen .tldr__t{font-size:30px;line-height:1.04}
  .ayu-resumen .tldr li{line-height:1.5}
  .ayu-ficha__side h3{font-size:26px}
  .ayu-ficha__side .eyebrow{margin-bottom:12px}
  .ayu-ficha .kf{font-size:16px}
  .ayu-ficha .kf caption{font-size:12.5px;line-height:1.5}
  .ayu-ficha .kf th,.ayu-ficha .kf td{display:block;width:auto;padding-right:0}
  .ayu-ficha .kf th{padding:14px 0 3px;border-bottom:0}
  .ayu-ficha .kf td{padding:0 0 14px;line-height:1.5}
  .ayu-ficha .kf tr:first-child td{border-top:0}
  .ayu-ficha__more .chips{gap:8px}
}

/* --- ¿Está cubierto…? filtro por veredicto y lista corta en móvil ------------------------------ */
.ayu-vf{display:flex;flex-wrap:wrap;gap:8px}
html:not(.js) .ayu-vf{display:none}
.ayu-vf__b{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px 8px 16px;border-radius:999px;border:1px solid rgba(23,21,18,.28);background:#fff;font:inherit;font-size:14px;font-weight:700;line-height:1.2;color:var(--ink);cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.ayu-vf__b::before{content:"";width:9px;height:9px;border-radius:50%;flex:none;background:var(--ink)}
.ayu-vf__b--todo::before{display:none}
.ayu-vf__b--si::before{background:#5f9c4f}
.ayu-vf__b--plan::before{background:#fff;box-shadow:inset 0 0 0 1.5px var(--ink)}
.ayu-vf__b--opt::before{background:linear-gradient(90deg,var(--ink) 50%,#fff 50%);box-shadow:inset 0 0 0 1px var(--ink)}
.ayu-vf__b--no::before{background:var(--coral)}
.ayu-vf__b:hover{border-color:var(--ink)}
.ayu-vf__b[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.ayu-vf__n{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:var(--cream);font-size:12.5px;color:var(--ink)}
.ayu-vf__b[aria-pressed=true] .ayu-vf__n{background:rgba(255,255,255,.18);color:#fff}
@media(max-width:600px){
  .ayu-vf{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-right:calc(-1*var(--gutter));padding:2px var(--gutter) 4px 0}
  .ayu-vf::-webkit-scrollbar{display:none}
  .ayu-vf__b{flex:none}
}
.ayu-cubre .c-cubre__item.ayu-off{display:none}
.ayu-cubre .c-cubre__item h3{font-size:18px}
.ayu-more{margin-top:26px;justify-content:space-between;min-width:260px}
.ayu-more[hidden]{display:none}
.ayu-more:not([hidden]){display:none}
@media(max-width:700px){
  .ayu-corto .c-cubre__item:nth-child(n+7){display:none}
  .ayu-corto .ayu-more:not([hidden]){display:inline-flex}
  .ayu-more{width:100%}
}
.ayu-cubre__cta .cta-strip{margin-top:clamp(36px,4vw,52px)}
@media(max-width:600px){
  .ayu-cubre .sec-head{margin-bottom:26px}
  .ayu-cubre .sec-head .eyebrow{margin-bottom:14px}
  .ayu-cubre .sec-head h2{font-size:30px;line-height:1.04;letter-spacing:-.035em}
  .ayu-cubre .sec-head .copy{margin-top:14px;font-size:16.5px;line-height:1.5}
  .ayu-cubre .c-cubre{gap:16px}
  .ayu-cubre .c-cubre__label{font-size:12.5px}
  .ayu-cubre .c-cubre__item{padding:18px 0;gap:8px}
  .ayu-cubre .c-cubre__item p{font-size:16px;line-height:1.5}
  .ayu-cubre .ayu-more{margin-top:20px}
  .ayu-cubre__cta .cta-strip{margin-top:28px}
}

/* --- Temas: antetítulo e icono a la izquierda; H2, respuesta y preguntas a la derecha ----------- */
.ayu-topic{padding-block:clamp(64px,7vw,108px)}
.ayu-topic__grid{display:grid;gap:18px}
@media(min-width:901px){.ayu-topic__grid{grid-template-columns:1fr 2fr}}
.ayu-topic__sticky{display:grid;gap:14px;justify-items:start}
@media(min-width:901px){.ayu-topic__sticky{position:sticky;top:calc(var(--header-h) + 88px);padding-right:40px}.ayu-topic__side .eyebrow{margin:14px 0 4px}}
.ayu-topic__side .eyebrow{margin-bottom:0}
.ayu-topic__ico{width:64px;height:64px;border-radius:50%;background:var(--mint);color:var(--ink);display:grid;place-items:center}
.ayu-topic__ico svg{width:28px;height:28px}
.bg-cream .ayu-topic__ico{background:#fff}
.ayu-topic__n{margin:0;font-size:14px;color:var(--muted)}
@media(max-width:900px){
  .ayu-topic__sticky{grid-template-columns:auto 1fr;align-items:center;column-gap:14px;row-gap:2px}
  .ayu-topic__ico{grid-row:span 2;width:48px;height:48px}
  .ayu-topic__ico svg{width:22px;height:22px}
  .ayu-topic__side .eyebrow{grid-column:2;margin:0}
  .ayu-topic__n{grid-column:2}
  .ayu-topic__sticky>.eyebrow{order:2}
  .ayu-topic__sticky>.ayu-topic__ico{order:1}
  .ayu-topic__sticky>.ayu-topic__n{order:3}
}
.ayu-topic__main{min-width:0}
.ayu-topic__main>h2{font-size:clamp(34px,4vw,58px);line-height:1;letter-spacing:-.04em}
.ayu-answer{margin:22px 0 0;max-width:700px;font-size:clamp(18px,.6vw + 15px,21px);line-height:1.5;color:var(--ink)}
.ayu-topic__list{margin-top:clamp(32px,4vw,48px)}
.ayu-topic__list .faq__a{color:#4f4b45}
/* Preguntas en dos líneas parejas (sin una palabra sola en la última: «…esterilización?», «…preventivo?») */
.ayu-topic .faq summary h3{text-wrap:balance}
.ayu-topic .faq__a ul{margin:0 0 1em}
.ayu-extra{margin-top:clamp(40px,5vw,64px)}
.ayu-extra>.carencia:first-child,.ayu-extra>.timeline-wrap:first-child{margin-top:0}
/* En la columna de la derecha la calculadora de carencias va en una sola columna (las fechas no se parten) */
.ayu-extra .carencia{margin-top:0;grid-template-columns:1fr;gap:22px}
.ayu-extra .carencia label{max-width:300px}
.ayu-extra .cta-strip{margin-top:clamp(36px,4vw,52px)}
@media(max-width:600px){
  .ayu-topic{padding-block:56px}
  .ayu-topic__grid{gap:16px}
  .ayu-topic__main>h2{font-size:30px;line-height:1.04;letter-spacing:-.035em}
  .ayu-answer{font-size:17.5px;margin-top:14px}
  .ayu-topic__list{margin-top:26px}
  .ayu-topic .faq__a{font-size:16px;line-height:1.55}
  .ayu-extra{margin-top:36px}
  .ayu-extra .carencia{padding:22px 20px 18px;gap:16px}
  .ayu-extra .carencia p{font-size:16px;line-height:1.5}
  .ayu-extra .carencia label{max-width:none}
  .ayu-extra .carencia input[type=date]{width:100%;max-width:none;min-height:50px}
  /* Etiqueta del campo y resultados legibles (eran de 12 px) */
  .ayu-extra .carencia label,.ayu-extra .carencia__out span{font-size:12.5px;letter-spacing:.12em}
  .ayu-extra .carencia__out output{font-size:21px}
  .ayu-extra .carencia__out small{font-size:14.5px;line-height:1.4}
  .ayu-extra .cta-strip{margin-top:28px}
}
@media(max-width:380px){
  .ayu-topic__main>h2,.ayu-cubre .sec-head h2,.ayu-resumen .tldr__t{font-size:28px}
}

/* Franjas de precio (cta_strip) en móvil: el botón a todo el ancho, el teléfono con toque de 44 px */
@media(max-width:600px){
  .ayu-cubre__cta .cta-strip,.ayu-extra .cta-strip{padding:22px 0;gap:14px}
  .ayu-cubre__cta .cta-strip p,.ayu-extra .cta-strip p{font-size:19px;line-height:1.25}
  .ayu-cubre__cta .cta-strip p>span,.ayu-extra .cta-strip p>span{margin-top:6px;font-size:16px;line-height:1.5}
  .ayu-cubre__cta .cta-strip .text-link,.ayu-extra .cta-strip .text-link{min-height:44px;font-size:15px}
  .ayu-cubre__cta .cta-strip .cta-row,.ayu-extra .cta-strip .cta-row{width:100%;gap:8px 20px}
  .ayu-cubre__cta .cta-strip .btn,.ayu-extra .cta-strip .btn{width:100%;justify-content:space-between}
}

/* Línea de carencias: en móvil, compacta (el día a la izquierda, el texto a la derecha, sin las etiquetas que repiten
   el texto) para que no ocupe pantalla y media antes de las preguntas */
@media(max-width:600px){
  .ayu-tl .c-tl>h3{font-size:24px;line-height:1.1;letter-spacing:-.025em}
  .ayu-tl .c-tl>p{font-size:16px;line-height:1.5;margin:10px 0 18px}
  .ayu-tl .tl-item,.ayu-tl .tl-item+.tl-item{display:grid;grid-template-columns:92px minmax(0,1fr);column-gap:12px;align-items:start;padding:18px 0}
  .ayu-tl .tl-day{grid-row:1/span 3;margin:0;font-size:27px;line-height:1}
  .ayu-tl .tl-day small{margin-bottom:5px;font-size:12.5px;letter-spacing:.1em}
  .ayu-tl .tl-item h4{grid-column:2;margin:0 0 6px;font-size:18px}
  .ayu-tl .tl-item p{grid-column:2;margin:0;font-size:16px;line-height:1.45}
  .ayu-tl .tl-item .c-tl__pend{margin-top:6px;font-size:16px}
  .ayu-tl .tl-item ul{display:none}
  .ayu-tl .c-tl__note{margin-top:14px;font-size:13px}
}

/* Preguntas enteras pendientes (solo en local): la etiqueta va bajo la pregunta */
.faq.ayu-pend{outline-offset:2px}
.faq.ayu-pend summary{flex-wrap:wrap;row-gap:6px}
.faq.ayu-pend summary h3{flex:1 1 70%}
.faq.ayu-pend summary .pm{order:2}
.faq.ayu-pend .ayu-ptag{order:3;margin:0;max-width:100%}

/* Copiar el enlace de una respuesta (botón que añade 30_ayuda.js; el texto va en CSS para que no lo encuentre el buscador) */
.ayu-copy{display:inline-flex;align-items:center;gap:8px;min-height:40px;margin-top:16px;padding:6px 14px 6px 12px;border:1px solid var(--line);border-radius:999px;background:transparent;font:inherit;font-size:13px;font-weight:700;color:var(--ink);cursor:pointer;transition:border-color .2s,background-color .2s}
.ayu-copy::after{content:attr(data-label)}
.ayu-copy svg{width:16px;height:16px;flex:none}
.ayu-copy:hover{border-color:var(--ink)}
.ayu-copy.is-done{background:var(--mint);border-color:var(--mint)}
@media(max-width:600px){.ayu-copy{min-height:44px;font-size:14px}}

/* Reembolsos: banda oscura con los cuatro pasos */
.ayu-topic--ink .ayu-topic__ico{background:rgba(201,221,184,.16);color:var(--sage)}
.ayu-topic--ink .ayu-topic__n{color:#bdb9b2}
.ayu-topic--ink .ayu-answer{color:#ece8e1}
.ayu-topic--ink .faq-list,.ayu-topic--ink .faq{border-color:var(--line-light)}
.ayu-topic--ink .faq summary{color:#fff}
.ayu-topic--ink .ayu-topic__list .faq__a{color:#c9c5bf}
.ayu-topic--ink .faq__a a{color:#fff}
.ayu-topic--ink .faq:target{background:rgba(201,221,184,.12);box-shadow:-14px 0 0 rgba(201,221,184,.12),14px 0 0 rgba(201,221,184,.12)}
.ayu-topic--ink .ayu-copy{border-color:var(--line-light);color:#fff}
.ayu-topic--ink .ayu-copy:hover{border-color:#fff}
.ayu-topic--ink .ayu-copy.is-done{background:rgba(201,221,184,.2);border-color:transparent}
.ayu-topic--ink :focus-visible{outline-color:var(--coral)}
.ayu-steps .steps{grid-template-columns:repeat(4,1fr)}
.ayu-steps .steps .step{padding:26px 22px 20px 0}
.ayu-steps .steps .step+.step{padding-left:22px}
.ayu-steps .step__ico{margin:22px 0 18px}
.ayu-steps .step h3{font-size:19px;line-height:1.2}
.ayu-steps .step p{font-size:14.5px}
@media(max-width:1180px) and (min-width:761px){
  .ayu-steps .steps{grid-template-columns:repeat(2,1fr)}
  .ayu-steps .steps .step:nth-child(2){border-right:0}
  .ayu-steps .steps .step:nth-child(3){padding-left:0}
  .ayu-steps .steps .step:nth-child(-n+2){border-bottom:1px solid var(--line-light)}
}
@media(max-width:760px){
  .ayu-steps .steps{grid-template-columns:1fr}
  .ayu-steps .steps .step,.ayu-steps .steps .step+.step{padding:18px 0 18px 64px;position:relative;border-right:0;border-bottom:1px solid var(--line-light);min-height:0}
  .ayu-steps .step__n{position:absolute;left:0;top:18px}
  .ayu-steps .step__ico{position:absolute;left:0;top:38px;width:46px;height:46px;margin:0}
  .ayu-steps .step h3{margin-bottom:6px;font-size:19px}
  .ayu-steps .step p{font-size:16px;line-height:1.5}
}

/* Precio: lo que hace falta + botón (con la nota honesta de la calculadora) */
.ayu-cta{display:grid;gap:22px;align-items:stretch}
@media(min-width:1000px){.ayu-cta{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.ayu-cta .need{border-radius:0;padding:28px 30px}
.ayu-cta .need ul{grid-template-columns:1fr}
.ayu-cta__go{background:var(--ink);color:#fff;padding:30px 32px;display:grid;gap:18px;align-content:center}
.ayu-cta__t{margin:0;font-size:clamp(24px,1.4vw + 14px,32px);font-weight:700;letter-spacing:-.03em;line-height:1.08;color:#fff}
.ayu-cta__go .cta-row{gap:14px 24px}
.ayu-cta__go .text-link{color:#fff;min-height:44px}
.ayu-cta__go .cta-note{margin:0;color:#c9c5bf}
.ayu-cta__go .cta-note span{align-items:flex-start}
.ayu-cta__go .cta-note svg{color:var(--sage);flex:none;margin-top:2px}
.ayu-cta__go :focus-visible{outline-color:var(--coral)}
@media(max-width:600px){
  .ayu-cta{gap:14px}
  .ayu-cta .need,.ayu-cta__go{padding:24px 20px}
  .ayu-cta .need h3{font-size:21px}
  .ayu-cta .need li span{font-size:16px;line-height:1.45}
  .ayu-cta__t{font-size:24px}
  .ayu-cta__go .btn{width:100%;white-space:normal;justify-content:space-between;text-align:left;gap:14px}
  .ayu-cta__go .cta-note{font-size:15px;line-height:1.45;gap:8px 18px}
}
/* 360-380 px: «Ver el precio de tu mascota» en una sola línea dentro de la píldora (antes se partía en dos) */
@media(max-width:380px){.ayu-cta .need,.ayu-cta__go{padding-inline:16px}.ayu-cta__go .btn{padding-inline:20px}}
.ayu-cta>*{min-width:0}

.ayu-rc{margin:0}
.ayu-rc .text-link{line-height:1.35;min-height:44px}
.ayu-links{gap:12px 30px}
.ayu-links .text-link{min-height:44px}
@media(max-width:600px){.ayu-links{flex-direction:column;align-items:flex-start;gap:6px}.ayu-rc .text-link{font-size:15px}}

/* --- Resultados del buscador (30_ayuda.js pone .ayu-buscando en <html> mientras hay texto) ----- */
.ayu-res{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding-top:36px;padding-bottom:4px}
.ayu-res[hidden]{display:none}
.ayu-res__t{margin:0;font-size:clamp(20px,1vw + 14px,26px);font-weight:700;letter-spacing:-.02em;line-height:1.2}
.ayu-res__clear{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 18px;border-radius:999px;border:1px solid var(--ink);background:transparent;font:inherit;font-size:14px;font-weight:700;color:var(--ink);cursor:pointer}
.ayu-res__clear svg{width:16px;height:16px}
.ayu-res__clear:hover{background:var(--ink);color:#fff}
.ayu-buscando #en-30-segundos,.ayu-buscando #esta-cubierto,.ayu-buscando .ayu-extra{display:none}
.ayu-buscando .ayu-topic{padding-block:clamp(36px,4vw,56px)}
.ayu-buscando .ayu-topic__sticky{position:static}
.ayu-buscando .ayu-topic__main>h2{font-size:clamp(28px,2.6vw,40px)}
.ayu-buscando .ayu-answer{font-size:17px;margin-top:14px}
.ayu-buscando .ayu-topic__list{margin-top:24px}
.ayu-none{margin:0;padding:48px 0 16px;font-size:18px;line-height:1.5;color:var(--ink)}
.ayu-none a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.ayu-none .arr{font-weight:400}
@media(max-width:600px){
  .ayu-res{padding-top:28px}
  .ayu-buscando .ayu-topic{padding-block:32px}
  .ayu-buscando .ayu-topic__main>h2{font-size:26px}
  .ayu-none{padding-top:36px;font-size:17px}
}

/* --- Cierre: «¿No encuentras tu respuesta?» --------------------------------------------------- */
.ayu-help-end{padding-block:clamp(40px,5vw,64px);border-top:1px solid var(--line)}
.ayu-buscando .ayu-help-end{border-top:0;padding-top:8px}
.ayu-help-end .c-help{padding:28px 30px 12px}
.ayu-help-end .c-help__t{margin-bottom:14px}
@media(max-width:600px){
  #quien-esta-detras{padding-bottom:36px}
  .ayu-help-end{padding-block:28px 56px}
  .ayu-help-end .c-help{padding:22px 18px 6px}
  .ayu-help-end .c-help__t{font-size:24px;line-height:1.1}
  .ayu-help-end .c-help__sub{font-size:16px;line-height:1.45}
}

/* --- CTA final (pieza común) en esta página: en móvil, titular de 30-32 px y sección compacta ----
   (el H2 común mide 46 px a 390 px y ocupaba cuatro líneas; si el equipo de móvil global lo ajusta para todas las
   páginas, esta regla se puede quitar) */
@media(max-width:600px){
  #faq-todas~.final-cta{padding:60px var(--gutter)}
  #faq-todas~.final-cta h2{font-size:32px;line-height:1.02}
  #faq-todas~.final-cta .lead{margin:16px auto 26px;font-size:16.5px;line-height:1.5}
}
@media(max-width:380px){#faq-todas~.final-cta h2{font-size:30px}}


/* ---- 40_comparativas.css ---- */
/* V2 — comparativas (v2_comparativas.py): /comparativas-con-swipet/ y /alternativa-a-milo/.
   Prefijo .cmp-. Lenguaje de Luis: líneas finas, tinta/papel/crema/salvia/menta, píldoras. Móvil primero (90 % del
   tráfico): todo lo de estas páginas va dentro de .cmp-page, así los ajustes de móvil de las piezas comunes (titulares,
   paddings, tabla .c-vs, facturas…) solo afectan a estas dos páginas. Las piezas compartidas no se tocan. */

/* --- Títulos y notas comunes ------------------------------------------------------------------------ */
.cmp-h3{font-size:clamp(24px,1.6vw + 16px,32px);line-height:1.08;letter-spacing:-.03em;margin:0 0 22px}
.cmp-dark .cmp-h3{color:#fff}
.cmp-note{display:flex;gap:14px;align-items:flex-start;margin:34px 0 0;max-width:860px;font-size:16px;line-height:1.5;color:var(--ink)}
.cmp-note>svg{width:22px;height:22px;flex:none;margin-top:1px;color:var(--coral-ink)}
.cmp-note a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.cmp-note a .arr{margin-left:4px}
.cmp-cta{margin-top:clamp(34px,4vw,48px)}
.cmp-ext .arr{margin-left:4px}
.cmp-nw{white-space:nowrap}

/* --- Hero: tarjeta salvia «Comparativas una a una» ------------------------------------------------------------ */
.hero .cmp-1a1{gap:10px}
.cmp-1a1 .card-label{margin:0}
.cmp-1a1__list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(23,21,18,.2)}
.cmp-1a1__list a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;padding:8px 2px 8px 0;
  border-bottom:1px solid rgba(23,21,18,.2);font-size:17px;line-height:1.25;color:var(--ink);text-decoration:none}
.cmp-1a1__list a .arr{transition:transform .25s var(--ease)}
.cmp-1a1__list a:hover b{text-decoration:underline;text-underline-offset:3px}
.cmp-1a1__list a:hover .arr{transform:translateX(4px)}
.cmp-1a1__how{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start;margin:4px 0 0;font-size:14px;line-height:1.45}
.cmp-1a1__how svg{width:18px;height:18px;margin-top:1px}
.cmp-1a1__how a{font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.cmp-1a1__legal{margin:0;font-size:12.5px;color:#5c4700}
@media(max-width:900px){.hero .cmp-1a1{padding:24px var(--gutter) 22px}}

/* --- Seis cosas que mirar ----------------------------------------------------------------------------------- */
.cmp-crit{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.cmp-crit__i{position:relative;display:grid;align-content:start;gap:12px;padding:30px 32px 26px 0;border-bottom:1px solid var(--line)}
.cmp-crit__i:not(:nth-child(3n+1)){padding-left:32px;border-left:1px solid var(--line)}
.cmp-crit__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.cmp-crit__ico{width:54px;height:54px;border-radius:50%;background:var(--mint);display:grid;place-items:center}
.cmp-crit__ico svg{width:24px;height:24px}
.cmp-crit__n{font-size:12px;color:var(--muted-2);letter-spacing:.06em}
.cmp-crit__i h3{font-size:22px}
.cmp-crit__i p{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}
.cmp-crit__go{justify-self:start;display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:700;
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.cmp-crit__go .arr{text-decoration:none;font-weight:400;transition:transform .25s var(--ease)}
.cmp-crit__go:hover .arr{transform:translateY(3px)}
@media(max-width:900px){
  .cmp-crit{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cmp-crit__i:not(:nth-child(3n+1)){padding-left:0;border-left:0}
  .cmp-crit__i:nth-child(even){padding-left:28px;border-left:1px solid var(--line)}
  .cmp-crit__i:nth-child(odd){padding-right:28px}
}

/* --- Bloque oscuro de la comparativa ---------------------------------------------------------------------- */
.cmp-dark .comparison-head{margin-bottom:clamp(44px,5vw,70px)}
.cmp-dark .comparison-head p{max-width:560px}
.cmp-dark .comparison-head .cmp-lectura{margin:0;font-size:13.5px;color:#9d9992}
.cmp-dark .honesty{color:#bdb9b2}
.cmp-dark .cta-strip{border-color:var(--line-light);margin-top:clamp(48px,6vw,80px)}
.cmp-dark .cta-strip p span{color:#bdb9b2}
.cmp-dark .cta-strip .text-link{color:#fff}
.cmp-dark #tabla-completa{margin-top:0}

/* Lo esencial, de un vistazo: cuatro fichas (en móvil, se desliza) */
.cmp-board{margin:0 0 clamp(56px,7vw,96px)}
.cmp-board__hint{display:none;margin:-8px 0 12px;font-size:13px;color:#bdb9b2}
.cmp-board__scroll{outline-offset:4px}
.cmp-board__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.5)}
.cmp-tile{display:grid;align-content:start;padding:22px 24px 4px 0}
.cmp-tile+.cmp-tile{padding-left:24px;border-left:1px solid var(--line-light)}
.cmp-dark .cmp-tile__t{margin:0 0 4px;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;line-height:1.35;color:#fff}
.cmp-tile__rows{margin:0;display:grid}
/* nombre y cifra en una línea; si la cifra no cabe («Hasta 100 €»), baja sola a la derecha */
.cmp-tile__row{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;column-gap:12px;padding:14px 0 12px;border-bottom:1px solid var(--line-light)}
.cmp-tile__row:last-child{border-bottom:0}
.cmp-tile__row dt{flex:0 0 auto;font-size:14px;font-weight:700;color:#fff}
.cmp-tile__v{flex:0 1 auto;margin:0 0 0 auto;font-size:clamp(22px,1vw + 14px,28px);font-weight:700;letter-spacing:-.03em;line-height:1.05;text-align:right;white-space:nowrap;color:#fff}
.cmp-tile__v .c-vs__ref{font-size:12.5px;letter-spacing:0;vertical-align:super}
.cmp-tile__d{flex:1 1 100%;margin:6px 0 0;font-size:14px;line-height:1.4;color:#bdb9b2}
.cmp-tile__row[data-col=swipet] dt{color:var(--sage)}
@media(max-width:1100px) and (min-width:900px){.cmp-tile__v{font-size:21px}}
@media(max-width:899.98px){
  .cmp-board__hint{display:block}
  .cmp-board__scroll{overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:6px}
  .cmp-board__list{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(84%,340px);gap:12px;border-top:0}
  .cmp-tile,.cmp-tile+.cmp-tile{scroll-snap-align:start;border:1px solid var(--line-light);padding:18px 18px 2px}
}

/* Tabla completa: fila enlazada desde «Qué mirar», filas plegables y fuentes en un desplegable.
   html ya reserva la cabecera y la subnavegación (scroll-padding-top en 05_global.css): aquí solo un respiro de 10 px
   (antes se sumaban y la fila caía 210 px por debajo de la cabecera, a media pantalla en el móvil) */
.cmp-dark .c-vs__table tr[id]{scroll-margin-top:10px}
.cmp-dark .c-vs__table tr:target>*{background:#2c3328}
.cmp-short tr.cmp-extra{display:none}
.cmp-more-row{margin:0}
.cmp-more{display:inline-flex;align-items:center;gap:12px;min-height:46px;padding:10px 20px;border-radius:999px;border:1px solid var(--ink);
  background:transparent;color:var(--ink);font:inherit;font-size:14px;font-weight:700;line-height:1.3;text-align:left;cursor:pointer;
  transition:background-color .2s,color .2s}
.cmp-more svg{width:18px;height:18px;flex:none;transition:transform .25s var(--ease)}
.cmp-more__txt{display:grid;gap:2px}
.cmp-more__txt small{font-size:13px;font-weight:400;opacity:.8}
.cmp-more__m,.cmp-more--m-only{display:none}
.cmp-more[aria-expanded=true] .cmp-more__txt small{display:none}
.cmp-more[aria-expanded=true] svg{transform:rotate(180deg)}
.cmp-more:hover{background:var(--ink);color:#fff}
.cmp-more[hidden]{display:none}
.cmp-dark .cmp-more{border-color:rgba(255,255,255,.5);color:#fff}
.cmp-dark .cmp-more:hover{background:#fff;color:var(--ink)}
.cmp-src{border-top:1px solid var(--line)}
.cmp-src>summary{list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;min-height:52px;padding:12px 30px 12px 0;position:relative}
.cmp-src>summary::-webkit-details-marker{display:none}
.cmp-src>summary>span{font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.cmp-src>summary>small{font-size:13px;color:var(--muted)}
.cmp-src>summary>svg{position:absolute;right:0;top:50%;width:20px;height:20px;margin-top:-10px;transition:transform .25s var(--ease)}
.cmp-src[open]>summary>svg{transform:rotate(180deg)}
.cmp-src .c-vs__src{padding-bottom:6px}
.cmp-src .c-vs__src-t{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cmp-dark .cmp-src{border-color:var(--line-light)}
.cmp-dark .cmp-src>summary{color:#fff}
.cmp-dark .cmp-src>summary>small{color:#bdb9b2}

/* ¿A quién le puede convenir cada uno? (cajas salvia de verdict_split) y enlaces a las comparativas una a una */
.cmp-gana{margin-top:clamp(56px,7vw,96px)}
.cmp-gana .c-verdict .c-verdict__t{font-size:clamp(22px,1vw + 16px,28px)}
.cmp-gana .c-verdict p{font-size:16px;line-height:1.5}
.cmp-next{margin:30px 0 0;display:grid;gap:4px}
.cmp-next p{margin:0;font-size:16px;line-height:1.5;color:#bdb9b2}
.cmp-next__links{display:flex;flex-wrap:wrap;gap:6px 30px}
.cmp-dark .cmp-next .text-link{color:#fff}

/* --- ¿Milo o Barkibu? --------------------------------------------------------------------------------------- */
.cmp-xy .c-xy__final{background:#fff}
.cmp-cta{flex-wrap:wrap;gap:18px 30px}

/* --- Otros seguros ------------------------------------------------------------------------------------------ */
.cmp-otros{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.cmp-otro{border:1px solid var(--line);background:#fff;padding:28px 28px 22px;display:grid;grid-template-rows:auto auto auto 1fr auto auto;align-content:start}
.cmp-otro__t{font-size:26px;letter-spacing:-.025em}
.cmp-otro__lbl{margin:22px 0 6px;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.cmp-otro__big{margin:0 0 14px;font-size:clamp(40px,3.4vw,54px);font-weight:700;letter-spacing:-.04em;line-height:1}
.cmp-otro__d{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}
.cmp-otro__src{margin:18px 0 0;padding-top:14px;border-top:1px solid var(--line-2);font-size:13px;line-height:1.5;color:var(--muted)}
.cmp-otro__src a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.cmp-otro__go{margin:10px 0 0}
.cmp-otros__rev{display:flex;gap:12px;align-items:flex-start;margin:26px 0 0;font-size:15px;line-height:1.5;color:var(--muted)}
.cmp-otros__rev svg{width:20px;height:20px;flex:none;margin-top:1px;color:var(--ink)}
.cmp-otros__rev b{color:var(--ink)}
.cmp-gato{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px 24px;align-items:center;margin-top:48px;background:var(--mint);padding:24px 28px}
.cmp-gato>svg{width:40px;height:40px}
.cmp-gato p{margin:0;font-size:16px;line-height:1.5}
/* En móvil, nombre y cifra en una línea; si la cifra es larga («Hasta el 90 %»), baja sola a la derecha */
@media(max-width:900px){
  .cmp-otros{grid-template-columns:minmax(0,1fr);gap:14px}
  .cmp-otro{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;column-gap:16px;padding:22px 22px 14px}
  .cmp-otro__t{flex:0 1 auto}
  .cmp-otro__lbl{display:none}
  .cmp-otro__big{flex:0 0 auto;margin:0 0 0 auto;font-size:36px;text-align:right;white-space:nowrap}
  .cmp-otro__d,.cmp-otro__src,.cmp-otro__go{flex:1 1 100%}
  .cmp-otro__d{margin-top:10px}
}
@media(max-width:360px){.cmp-otro__big{font-size:30px}}
@media(max-width:760px){.cmp-gato{grid-template-columns:auto minmax(0,1fr);padding:20px}.cmp-gato .text-link{grid-column:1/-1}.cmp-gato>svg{width:32px;height:32px}}

/* --- ¿Por qué el 70 %? (manifiesto de Luis con el ejemplo en barras) ----------------------------------------- */
.cmp-mani .manifesto-copy>p{margin:24px 0}
.cmp-mani .manifesto-copy>p.eyebrow{margin:0 0 24px}
.cmp-bars{margin:30px 0 0;max-width:560px}
.cmp-bars figcaption{margin:0 0 16px;font-size:16px;line-height:1.5;color:#c9c5bf}
.cmp-bars ul{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.cmp-bars li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:6px 16px}
.cmp-bars__l{font-size:15px;line-height:1.35;color:#c9c5bf}
.cmp-bars li b{font-size:22px;letter-spacing:-.02em;line-height:1;color:#fff;white-space:nowrap}
.cmp-bars__bar{grid-column:1/-1;display:block;height:14px}
.cmp-bars__bar i{display:block;height:100%;min-width:4px;border-radius:0 4px 4px 0;background:#8a847c}
.cmp-bars li.is-us .cmp-bars__l{color:#fff;font-weight:700}
.cmp-bars li.is-us .cmp-bars__bar i{background:var(--sage)}
.cmp-mani .manifesto-copy>p.cmp-mani__honest{margin:22px 0 0;max-width:560px;padding:14px 18px;border-left:3px solid var(--coral);background:rgba(255,255,255,.06);
  font-size:16px;line-height:1.5;color:#e7e3dc}
.cmp-mani .manifesto-copy>p.cmp-mani__note{margin:14px 0 0;max-width:560px;font-size:13.5px;line-height:1.5;color:#9d9992}
.cmp-mani__src{color:#d6d2cb;text-decoration:underline;text-underline-offset:2px}
.cmp-mani__cta{margin-top:28px;flex-wrap:wrap;gap:18px 30px}
@media(max-width:900px){.cmp-mani .manifesto-photo{min-height:300px}}

/* --- Metodología: cuatro pasos con líneas ------------------------------------------------------------------ */
@media(min-width:1101px){.cmp-met .steps,.cmp-steps4 .steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.cmp-met .step h3,.cmp-steps4 .step h3{font-size:21px}
@media(max-width:1100px) and (min-width:761px){
  .cmp-met .steps,.cmp-steps4 .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cmp-met .steps .step:nth-child(2),.cmp-steps4 .steps .step:nth-child(2){border-right:0}
  .cmp-met .steps .step:nth-child(3),.cmp-steps4 .steps .step:nth-child(3){padding-left:0}
  .cmp-met .steps .step:nth-child(-n+2),.cmp-steps4 .steps .step:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
.cmp-note--met>svg{color:var(--ink)}
/* En móvil, pasos compactos: icono a la izquierda y texto a la derecha */
@media(max-width:760px){
  .cmp-met .steps .step,.cmp-steps4 .steps .step,.cmp-met .steps .step+.step,.cmp-steps4 .steps .step+.step{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:16px;row-gap:4px;padding:18px 0}
  .cmp-met .step__n,.cmp-steps4 .step__n{display:none}
  .cmp-met .step__ico,.cmp-steps4 .step__ico{grid-column:1;grid-row:1/span 2;width:44px;height:44px;margin:2px 0 0}
  .cmp-met .step__ico svg,.cmp-steps4 .step__ico svg{width:20px;height:20px}
  .cmp-met .step h3,.cmp-steps4 .step h3{grid-column:2;margin:0;font-size:19px}
  .cmp-met .step p,.cmp-steps4 .step p{grid-column:2}
}

/* ============================== /alternativa-a-milo/ ============================== */
/* --- Resumen rápido bajo el hero --------------------------------------------------------------------------- */
.hero--milo h1{max-width:760px}
.hero--milo h1 .c-kicker~.hero-h1-main{font-size:min(1em,60px)}
.cmp-sum{padding-block:clamp(40px,5vw,64px) clamp(36px,4vw,56px);border-bottom:1px solid var(--line)}
.cmp-sum__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 24px;margin-bottom:16px}
.cmp-sum__t2{display:flex;align-items:center;gap:14px;margin:0;font-size:clamp(26px,1.2vw + 18px,32px);line-height:1.1;letter-spacing:-.03em}
.cmp-sum__t2::before{content:"";width:30px;height:1px;background:var(--coral);flex:none}
.cmp-sum__date{margin:0;font-size:13px;color:var(--muted)}
.cmp-sum__table{width:100%;border-collapse:collapse;font-size:17px;line-height:1.35}
.cmp-sum__table th,.cmp-sum__table td{padding:15px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.cmp-sum__table thead th{padding-top:6px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ink)}
.cmp-sum__table tbody th{font-size:15px;font-weight:700;width:24%;padding-left:0}
.cmp-sum__table thead td{padding-left:0}
.cmp-sum__table td{width:38%}
.cmp-sum__table .is-us{background:rgba(201,221,184,.3)}
.cmp-sum__table tbody tr:last-child>*{border-bottom:0}
@media(max-width:640px){
  .cmp-sum__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .cmp-sum__table,.cmp-sum__table tbody{display:block}
  .cmp-sum__table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:10px;padding:14px 0;border-bottom:1px solid var(--line)}
  .cmp-sum__table tbody tr:last-child{border-bottom:0}
  .cmp-sum__table th,.cmp-sum__table td,.cmp-sum__table tbody tr:last-child>*{padding:0;border:0;width:auto}
  .cmp-sum__table tbody th{grid-column:1/-1;margin-bottom:8px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase}
  .cmp-sum__table td{font-size:16px;line-height:1.5;padding:2px 0}
  .cmp-sum__table td.is-us,.cmp-sum__table tbody tr:last-child>td.is-us{padding:8px 10px;margin:-8px 0}
  .cmp-sum__table td::before{content:attr(data-label);display:block;margin-bottom:2px;font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
  .cmp-sum__table td.is-us::before{color:#2f6b3a}
}

/* --- Opiniones de Milo -------------------------------------------------------------------------------------- */
.cmp-op{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:22px;align-items:stretch}
.cmp-op__tp{background:var(--ink);color:#fff;padding:30px 32px 32px;display:grid;gap:12px;justify-items:start}
.cmp-op__lbl{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.cmp-op__lbl svg{width:18px;height:18px;color:#00b67a}
.cmp-op__score{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:4px 0 0}
.cmp-op__score b{font-size:clamp(52px,5vw,72px);letter-spacing:-.04em;line-height:1}
.cmp-op__score span{font-size:17px;color:#d6d2cb}
.cmp-op__date{margin:0;font-size:13.5px;line-height:1.5;color:#bdb9b2;max-width:440px}
.cmp-op__btn{margin-top:10px;white-space:normal;text-align:left;gap:16px}
.cmp-op__self{background:#fff;border:1px solid var(--line);padding:26px 28px;display:grid;align-content:center}
.cmp-op__self h3,.cmp-op__tips h3{font-size:20px;margin:0 0 10px}
.cmp-op__self p{margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.cmp-op__tips{grid-column:1/-1;background:#fff;border:1px solid var(--line);padding:26px 28px 14px}
.cmp-op__tips .checks{margin:0}
.cmp-op__sw{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:30px 0 0;padding-top:22px;border-top:1px solid var(--line);font-size:16px}
@media(max-width:900px){.cmp-op{grid-template-columns:minmax(0,1fr)}.cmp-op__tp{padding:26px 22px 28px}.cmp-op__self,.cmp-op__tips{padding:22px 20px}}

/* --- Qué cubre Milo: listas y carencias ------------------------------------------------------------------- */
.cmp-lists{margin-top:0}
.cmp-lists .clear-card h3{font-size:24px}
.cmp-lists .c-vs__ref{font-size:12.5px}
/* Sobre menta, el coral oscuro de las llamadas [n] no llega a 4,5:1 (4,3): un tono más oscuro (6:1) */
.cmp-lists .clear-card--req .c-vs__ref a,.cmp-duo__i+.cmp-duo__i .c-vs__ref a{color:#9e2f28}
.cmp-more-row--fold{margin:4px 0 0}
.cmp-car{margin-top:clamp(56px,6vw,84px)}
.cmp-tl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}
.cmp-tl li{padding:26px 26px 10px 0;border-right:1px solid var(--line)}
.cmp-tl li+li{padding-left:26px}
.cmp-tl li:last-child{border-right:0}
.cmp-tl__d{display:block;margin-bottom:14px;font-size:clamp(38px,3.4vw,54px);font-weight:700;letter-spacing:-.04em;line-height:1}
.cmp-tl h4{margin:0 0 8px}
.cmp-tl p{margin:0;font-size:15px;line-height:1.5;color:var(--muted)}
.cmp-vsw{margin:26px 0 0;background:var(--mint);padding:18px 22px;font-size:16px;line-height:1.5;max-width:900px}
.cmp-src-line{margin:24px 0 0;font-size:13.5px;line-height:1.6;color:var(--muted)}
.cmp-src-line a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){
  .cmp-tl{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cmp-tl li:nth-child(2){border-right:0}
  .cmp-tl li:nth-child(3){padding-left:0}
  .cmp-tl li:nth-child(-n+2){border-bottom:1px solid var(--line)}
}

/* --- Clínicas y gatos (dos respuestas cortas lado a lado) ------------------------------------------------- */
.cmp-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.cmp-duo__i{background:var(--cream);padding:clamp(28px,3.4vw,46px);display:grid;gap:16px;align-content:start;justify-items:start}
.cmp-duo__i+.cmp-duo__i{background:var(--mint)}
.cmp-duo__i .eyebrow{margin:0}
.cmp-duo__i h2{font-size:clamp(28px,2.6vw,40px);line-height:1.02;letter-spacing:-.035em}
.cmp-duo__i p:not(.eyebrow){margin:0;font-size:17px;line-height:1.55;color:var(--muted)}
.cmp-duo__i .text-link{margin-top:6px}
@media(max-width:900px){.cmp-duo{grid-template-columns:minmax(0,1fr);gap:14px}}

/* --- Cuánto te devolvería: cuatro facturas en 2 x 2 (en 4 columnas no caben los nombres) ------------------------ */
@media(min-width:900px){.cmp-bills .c-bills{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
.cmp-bills .c-bill{padding:26px 28px}
.cmp-bills__hint{display:none;margin:0 0 10px;font-size:13px;color:var(--muted)}

/* --- Cambiarse: cuatro pasos (rejilla en «Metodología») --------------------------------------------------------- */
.cmp-pendwrap{margin-top:30px}
.bg-cream .cmp-steps4 .step__ico{background:#fff}

/* ==========================================================================================================
   MÓVIL Y TABLETA — tabla comparativa apilada por filas (<= 700 px)
   Cada fila es una tarjeta: el criterio arriba y debajo cada seguro con su etiqueta; Swipet, destacado en salvia.
   Empieza con una vista previa (.cmp-xm plegadas por el JS) y un degradado que invita a abrirla.
   ========================================================================================================== */
@media(max-width:700px){
  .cmp-page .c-vs__hint{display:none}
  .cmp-page .c-vs__scroll{overflow:visible}
  .cmp-page .c-vs__table,.cmp-page .c-vs__table[data-cols="2"]{display:block;width:100%;min-width:0;font-size:16px;line-height:1.45}
  .cmp-page .c-vs__table caption{display:block;position:static;max-width:none;padding:0 0 4px;font-size:13px;line-height:1.45}
  .cmp-page .c-vs__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .cmp-page .c-vs__table tbody{display:block}
  .cmp-page .c-vs__table tr{display:block;padding:20px 0 10px;border-top:1px solid var(--line-light)}
  .cmp-page .c-vs__table tr>:first-child{position:static;box-shadow:none}
  .cmp-page .c-vs__table tbody th,.cmp-page .c-vs__table tbody th:first-child{display:block;width:auto;min-width:0;padding:0 0 12px;border:0;background:none;
    font-size:19px;line-height:1.25;letter-spacing:-.015em}
  .cmp-page .c-vs__table td{display:block;margin:0 0 10px;padding:10px 12px 10px 14px;border:0;border-left:3px solid var(--line-light)}
  .cmp-page .c-vs__table td::before{content:attr(data-label);display:block;margin:0 0 3px;font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
  .cmp-dark .c-vs__table td::before{color:#9d9992}
  .cmp-dark .c-vs__table td[data-col=swipet]{border-left-color:var(--sage);background:rgba(201,221,184,.1);color:#fff}
  .cmp-dark .c-vs__table td[data-col=swipet]::before{color:var(--sage)}
  .cmp-dark .c-vs__table tr:target>*{background:transparent}
  .cmp-dark .c-vs__table tr:target>th{color:var(--sage)}
  .cmp-page .c-vs__table tr.c-vs__pend{background:#3a3320}
  .cmp-page .c-vs__table tr.c-vs__pend>*{background:transparent}
  .cmp-page .c-vs__nota{font-size:13px}
  /* vista previa: las filas .cmp-xm se pliegan y un degradado indica que hay más */
  .cmp-page .cmp-short tr.cmp-extra{display:block}
  .cmp-page .cmp-short tr.cmp-xm{display:none}
  .cmp-page .c-vs__scroll.cmp-short::after{content:"";position:absolute;left:0;right:0;bottom:0;height:64px;pointer-events:none;
    background:linear-gradient(rgba(23,21,18,0),var(--ink) 85%)}
  .cmp-page .cmp-more-row{margin-top:6px}
  .cmp-more__d,.cmp-more--d-only{display:none}
  .cmp-more__m{display:block}
  .cmp-more--m-only{display:inline-flex}
  /* listas largas: 4 puntos y «Ver N más» */
  .cmp-folded>.cmp-fold-x{display:none}
}

/* ==========================================================================================================
   MÓVIL (<= 600 px): titulares, ritmo y lectura. Solo dentro de estas páginas (.cmp-page).
   Párrafos >= 16 px; H1 32-40 px; H2 26-32 px; secciones de 56 px; toques >= 44 px.
   ========================================================================================================== */
@media(max-width:600px){
  .cmp-page{--cmp-h2:clamp(27px,7.6vw,32px)}
  /* Ritmo: secciones compactas, sin huecos */
  .cmp-page .section,.cmp-page .comparison{padding-block:56px}
  .cmp-page .cmp-sum{padding-block:36px 30px}
  .cmp-page .sec-head{margin-bottom:28px}
  .cmp-page .faq-layout>.sec-head{margin-bottom:0}  /* en las preguntas ya separa el gap de .faq-layout */
  .cmp-page .sec-head .copy{margin-top:14px;font-size:17px;line-height:1.55}
  .cmp-page .sec-head .copy p{margin:0 0 10px}
  .cmp-page .sec-head .copy p:last-child{margin-bottom:0}
  .cmp-page .eyebrow{margin-bottom:14px}
  /* Titulares (interlineado 1,15: con 1,06 el gancho del «¿» de la primera línea tocaba la segunda) */
  .cmp-page .hero h1{font-size:clamp(32px,9.6vw,40px);line-height:1.02;letter-spacing:-.035em}
  .cmp-page.cmp-page--milo .hero h1{font-size:clamp(31px,9vw,37px)}
  .cmp-page .hero h1 .c-kicker{margin-bottom:8px;font-size:18px}
  .cmp-page .sec-head h2,.cmp-page .sec-head--long h2,.cmp-page .comparison h2,.cmp-page .manifesto h2,.cmp-page .final-cta h2,
  .cmp-page .cmp-duo__i h2,.cmp-page .faq-layout h2{font-size:var(--cmp-h2);line-height:1.15;letter-spacing:-.03em}
  .cmp-page .sec-head h2 .h2-lead,.cmp-page .comparison h2 .h2-lead{font-size:15px;margin-bottom:6px}
  .cmp-page .cmp-h3{font-size:23px;margin-bottom:16px}
  .cmp-page .cmp-sum__t2{font-size:26px}
  /* Hero: más arriba el botón, nada sobra (a 360 x 640 el botón de Milo quedaba pegado al borde de la pantalla) */
  .cmp-page .hero-content{padding-top:26px;padding-bottom:30px}
  .cmp-page .hero-content .crumbs{margin-bottom:14px}
  .cmp-page .hero-content>.eyebrow{margin-bottom:12px}
  .cmp-page .hero-lead{margin:14px 0 20px;font-size:17px;line-height:1.5}
  .cmp-page .hero-actions{gap:6px}
  .cmp-page .hero-actions .btn{width:100%;justify-content:space-between}
  .cmp-page .c-chips{margin-top:18px}
  .cmp-page .crumbs a{position:relative}
  .cmp-page .crumbs a::after{content:"";position:absolute;left:-8px;right:-8px;top:50%;height:44px;transform:translateY(-50%)} /* «Inicio»: 44 px de ancho */
  /* Enlaces de texto sueltos: 44 px de alto (el subrayado sigue pegado al texto) */
  .cmp-page .text-link{min-height:44px;align-items:flex-end}
  .cmp-page .cta-row{gap:6px}
  /* Tarjeta «Comparativas una a una» */
  .cmp-1a1__list a{min-height:52px;font-size:17px}
  .cmp-1a1__how{font-size:14px}
  /* Qué mirar: filas compactas; toda la fila lleva a su fila de la tabla */
  .cmp-crit{grid-template-columns:minmax(0,1fr)}
  .cmp-crit__i,.cmp-crit__i:nth-child(n){grid-template-columns:44px minmax(0,1fr);column-gap:14px;row-gap:4px;padding:18px 0 10px;border-left:0}
  .cmp-crit__i>*{grid-column:2}
  .cmp-crit__top{grid-column:1;grid-row:1/span 3;display:block;margin:2px 0 0}
  .cmp-crit__ico{width:44px;height:44px}
  .cmp-crit__ico svg{width:20px;height:20px}
  .cmp-crit__n{display:none}
  .cmp-crit__i h3{font-size:19px;line-height:1.25}
  .cmp-crit__i p{font-size:16px}
  .cmp-crit__go{position:static;min-height:40px;font-size:14px}
  .cmp-crit__go::after{content:"";position:absolute;inset:0}
  .cmp-page .cmp-note{margin-top:24px;gap:12px}
  /* Bloque oscuro */
  .cmp-dark .comparison-head{gap:16px;margin-bottom:36px}
  .cmp-dark .comparison-head p{margin-bottom:14px}
  .cmp-board{margin-bottom:44px}
  .cmp-tile__d{font-size:16px;line-height:1.45}
  .cmp-tile__row dt{font-size:16px}
  /* Fuentes: una por línea, con zona de toque de 44 px (eran líneas de 17 px pegadas unas a otras) */
  .cmp-page .cmp-src .c-vs__src li{padding:0;font-size:14px;line-height:1.45}
  .cmp-page .cmp-src .c-vs__src li a{display:inline-block;padding:12px 0}
  .cmp-gana{margin-top:44px}
  .cmp-gana .c-verdicts{gap:10px}
  .cmp-gana .c-verdict{padding:20px 18px 20px}
  .cmp-gana .c-verdict .c-verdict__t{font-size:21px}
  .cmp-gana .c-verdict p{font-size:16px}
  .cmp-page .c-vs__ganan{padding:20px 18px}
  .cmp-dark .cta-strip{margin-top:40px;padding:22px 0}
  .cmp-page .cta-strip p{font-size:20px}
  .cmp-page .cta-strip .cta-row{width:100%}
  .cmp-page .cta-strip .btn{width:100%;justify-content:space-between}
  .cmp-more{border-radius:18px;width:100%;justify-content:space-between;min-height:52px;font-size:15px}
  /* ¿Milo o Barkibu? */
  .cmp-page .c-xy{gap:18px}
  .cmp-page .c-xy__cols{gap:14px}
  .cmp-page .c-xy__final{padding:16px 18px}
  .cmp-cta{flex-direction:column;align-items:stretch;gap:6px}
  .cmp-cta .btn{width:100%;justify-content:space-between}
  .cmp-cta .text-link{align-self:flex-start}
  /* Otros seguros */
  .cmp-otro{padding:20px 18px 10px}
  .cmp-otro__d{font-size:16px}
  .cmp-otro__src{font-size:13.5px}
  .cmp-otros__rev{font-size:16px}
  .cmp-gato{margin-top:28px;padding:18px}
  /* ¿Por qué el 70 %? */
  .cmp-mani .manifesto-photo{min-height:210px}
  .cmp-mani .manifesto-copy{padding:44px var(--gutter) 52px}
  .cmp-mani .manifesto-copy>p{margin:18px 0;font-size:17px;line-height:1.55}
  .cmp-mani .manifesto-copy>p.eyebrow{margin:0 0 16px;font-size:12px}
  .cmp-bars{margin-top:22px}
  .cmp-bars__l{font-size:16px}
  .cmp-bars li b{font-size:21px}
  .cmp-mani__cta .btn{width:100%;justify-content:space-between}
  /* Pasos (metodología y cambiarse) */
  .cmp-met .step p,.cmp-steps4 .step p{font-size:16px;line-height:1.5}
  /* Preguntas y ayuda */
  .cmp-page .faq summary{padding:16px 0;min-height:56px}
  .cmp-page .c-help--compact{font-size:16px;margin-top:20px}
  .cmp-page .c-help--compact .c-help__a{font-size:16px}
  /* CTA final */
  .cmp-page .final-cta{padding:56px var(--gutter)}
  .cmp-page .final-cta .lead{margin:16px auto 24px;font-size:17px}
  .cmp-page .c-final__need{font-size:16px}
  /* Milo: opiniones */
  .cmp-op{gap:12px}
  .cmp-op__tp{padding:22px 18px 22px}
  .cmp-op__score b{font-size:56px}
  .cmp-op__date{font-size:14px}
  .cmp-op__btn{width:100%;justify-content:space-between}
  .cmp-op__self,.cmp-op__tips{padding:20px 18px}
  .cmp-op__tips .checks li{font-size:16px}
  .cmp-op__sw{margin-top:22px;padding-top:16px}
  /* Milo: listas y carencias */
  .cmp-lists{gap:12px}
  .cmp-lists .clear-card{padding:22px 18px 12px;gap:10px}
  .cmp-lists .clear-card h3{font-size:22px}
  .cmp-lists .clear-card li{grid-template-columns:24px minmax(0,1fr);gap:12px;padding:11px 0;font-size:16px;line-height:1.45}
  .cmp-lists .clear-card li svg{width:24px;height:24px;padding:5px}
  .cmp-lists .cmp-more{margin:6px 0 10px}
  .cmp-car{margin-top:44px}
  .cmp-tl{grid-template-columns:minmax(0,1fr)}
  .cmp-tl li,.cmp-tl li+li,.cmp-tl li:nth-child(n){display:grid;grid-template-columns:100px minmax(0,1fr);column-gap:12px;padding:14px 0;border-right:0;border-bottom:1px solid var(--line)}
  .cmp-tl li>*{grid-column:2}
  .cmp-tl li>.cmp-tl__d{grid-column:1;grid-row:1/span 2;margin:0;font-size:26px;white-space:nowrap}
  .cmp-tl h4{font-size:18px;margin-bottom:4px}
  .cmp-tl p{font-size:16px}
  .cmp-vsw{padding:16px 18px}
  /* Milo: facturas, una tras otra deslizando (la primera, en la que gana Milo, se ve entera) */
  .cmp-bills__hint{display:block}
  .cmp-bills .c-bills{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:88%;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:6px}
  .cmp-bills .c-bill{scroll-snap-align:start;padding:20px 16px}
  .cmp-bills .c-bill .c-bill__t{font-size:20px;line-height:1.2}
  .cmp-bills .c-bill__amt,.cmp-bills .c-bill__who,.cmp-bills .c-bill__pay,.cmp-bills .c-bill__note{font-size:16px}
  .cmp-bills .c-bill__pay{flex-direction:column;align-items:flex-end;gap:4px}
  /* Milo: clínicas y gatos */
  .cmp-duo__i{padding:26px 18px;gap:12px}
  .cmp-duo__i p:not(.eyebrow){font-size:16px}
  .cmp-page .cmp-duo-band{padding-block:44px}
}
@media(max-width:360px){
  .cmp-page .hero h1{font-size:32px}
  .cmp-tl li,.cmp-tl li+li,.cmp-tl li:nth-child(n){grid-template-columns:88px minmax(0,1fr)}
  .cmp-tl li>.cmp-tl__d{font-size:23px}
}

/* ---- /comparativas-con-swipet/ como selector (05/10/2026) ---- */
.cmp-elige{padding-block:clamp(40px,5vw,72px)}
.cmp-pick{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.cmp-pick__a{display:grid;align-content:space-between;gap:6px;min-height:132px;height:100%;padding:18px 18px 16px;border:1px solid var(--ink);
  border-radius:18px;background:#fff;color:var(--ink);text-decoration:none;transition:background .2s var(--ease),color .2s var(--ease),transform .2s var(--ease)}
.cmp-pick__pre{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.cmp-pick__n{font-size:clamp(24px,1vw + 16px,30px);font-weight:700;letter-spacing:-.03em;line-height:1.05;overflow-wrap:anywhere}
.cmp-pick__go{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.cmp-pick__go .arr{text-decoration:none;transition:transform .2s var(--ease)}
.cmp-pick__a:hover,.cmp-pick__a:focus-visible{background:var(--ink);color:#fff}
.cmp-pick__a:hover .cmp-pick__pre,.cmp-pick__a:focus-visible .cmp-pick__pre{color:#d6d2cb}
.cmp-pick__a:hover .arr{transform:translateX(4px)}
.cmp-pick__alt{margin:22px 0 0;font-size:16px;line-height:1.5}
.cmp-pick__alt a{font-weight:700;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;gap:6px;min-height:44px}
@media(max-width:1100px){.cmp-pick{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:620px){.cmp-pick{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .cmp-pick__a{min-height:112px;padding:14px 14px 12px;border-radius:14px}
  .cmp-pick__pre{font-size:16px;letter-spacing:.08em}.cmp-pick__go{font-size:16px}} /* 05/10/2026: a 16 px en el móvil */
/* La matriz de todas a la vez, solo en pantallas anchas (en el móvil ya está el selector) */
.cmp-mx-d{display:none;margin-top:clamp(48px,6vw,80px)}
@media(min-width:1100px){.cmp-mx-d{display:block}}
.cmp-vs .cmp-cta{margin-top:clamp(28px,4vw,44px)}
/* Cuanto más reembolsan, menos cubren */
.cmp-menos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cmp-menos__c{display:flex;flex-direction:column;gap:10px;padding:24px 24px 20px;border:1px solid var(--line);background:#fff;border-top:4px solid var(--coral)}
.cmp-menos__who{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;margin:0}
.cmp-menos__who b{font-size:22px;letter-spacing:-.02em}
.cmp-menos__who span{font-size:16px;color:var(--ink)}
.cmp-menos__h{margin:4px 0 0;font-size:clamp(20px,.6vw + 16px,23px);line-height:1.2;letter-spacing:-.02em}
.cmp-menos__txt{margin:0;font-size:16px;line-height:1.5;color:var(--ink)}
.cmp-menos__cita{margin:4px 0 0;padding:10px 14px;border-left:3px solid var(--line);background:var(--cream,#f6f3ee);font-size:15px;line-height:1.5;color:var(--muted);font-style:italic}
.cmp-menos__cita p{margin:0}
.cmp-menos__src{margin:0;font-size:14px;line-height:1.45;color:var(--muted);overflow-wrap:anywhere}
.cmp-menos__src span{font-weight:700;color:var(--ink)}
.cmp-menos__src a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}
.cmp-menos__go{margin:auto 0 0;padding-top:6px}
.cmp-menos__go .text-link{min-height:44px;display:inline-flex;align-items:center;font-size:16px}
.cmp-menos__sw{margin-top:clamp(32px,4vw,48px)}
@media(max-width:1100px){.cmp-menos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.cmp-menos{grid-template-columns:minmax(0,1fr);gap:14px}.cmp-menos__c{padding:20px 18px 16px}}
/* Documentos consultados */
.cmp-src--hub{margin-top:32px}
.cmp-docs{margin:0;padding:0 0 14px 18px;display:grid;gap:10px;font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.cmp-docs span{color:var(--muted)}
.cmp-docs a{text-decoration:underline;text-underline-offset:2px}
.cmp-docs--n{list-style:none;padding-left:0}
/* /alternativa-a-milo/: en 30 segundos y letra pequeña */
.cmp-30{padding-block:clamp(40px,5vw,72px)}
.cmp-30 .cta-strip{margin-top:clamp(32px,4vw,56px)}
.cmp-page--milo .cmp-src{margin-top:28px}
@media(max-width:700px){.cmp-docs{font-size:15px}.cmp-menos__src,.cmp-menos__cita{font-size:16px}}
.cmp-menos__sw{padding:26px 26px 18px;background:var(--mint);max-width:900px}
.cmp-menos__sw h3{margin:0 0 8px;font-size:clamp(22px,.8vw + 16px,26px)}
.cmp-menos__sw>p{margin:0 0 12px;font-size:16px;line-height:1.5}
.cmp-lim{margin:0;padding:0 0 0 20px;display:grid;gap:10px;font-size:16px;line-height:1.5}
.cmp-lim__more{margin-top:10px}
.cmp-lim__more>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.cmp-lim__more>summary::-webkit-details-marker{display:none}
.cmp-lim__more>summary svg{width:18px;height:18px;transition:transform .25s var(--ease)}
.cmp-lim__more[open]>summary svg{transform:rotate(180deg)}
.cmp-lim__more .cmp-lim{margin-top:6px}
@media(max-width:700px){.cmp-menos__sw{padding:20px 18px 14px;margin-inline:calc(var(--gutter,16px) * -0)}}


/* ---- 41_alt_barkibu.css ---- */
/* V2 — /alternativa-a-barkibu/ (v2_alt_barkibu.py). Prefijo .bk- (y .hero--barkibu). Móvil primero: 360-414 px.
   Lenguaje de Luis: líneas finas, tinta/papel/crema/salvia/menta, coral solo para la acción y las llamadas [n].
   Las piezas compartidas (.c-vs, .c-verdict, .c-bill, .faq, .final-cta…) no se tocan: solo se ajustan dentro de .bk-*. */

/* --- Comunes de la página ------------------------------------------------------------------------------------ */
.bk-nw{white-space:nowrap}
.bk-ref{font-size:12.5px;line-height:0;margin-left:2px;letter-spacing:0;font-weight:700}
.bk-ref+.bk-ref{margin-left:4px}
.bk-ref a{position:relative;color:var(--coral-ink);text-decoration:none}
.bk-ref a::after{content:"";position:absolute;inset:-14px -2px}           /* zona de toque mayor sin mover el texto */
.bk-ref a:hover{text-decoration:underline}
.sec-head .copy .bk-ref a{color:var(--coral-ink);border-bottom:0}   /* la entradilla subraya sus enlaces: las llamadas, no */
.bk-ext .arr{margin-left:4px}
/* sobre menta o salvia el coral oscuro no llega a 4,5:1: un tono más oscuro (6:1) */
.bk-card--si .bk-ref a,.bk-sw .bk-ref a,.bk-gana .bk-ref a,.bk-duo__i:first-child .bk-ref a{color:#9e2f28}
.bk-dark .bk-ref a,.bk-op__tp .bk-ref a{color:var(--coral)}
/* Anclas: que la cabecera y la subnavegación no tapen el titular */
/* (html ya reserva la cabecera con scroll-padding-top; en el móvil la subnavegación se esconde al bajar) */
.bk-sec-a[id]{scroll-margin-top:8px}
.bk-vs tr[id],.bk-src__list li{scroll-margin-top:8px}
.bk-h3{font-size:clamp(22px,1.4vw + 14px,28px);line-height:1.1;letter-spacing:-.025em;margin:0 0 18px}

/* Secciones: en el móvil, aire contenido (56-60 px) y titulares de 28-30 px que no se parten feo */
@media(max-width:600px){
  .bk-sec{padding-block:56px}
  .bk-sec .sec-head{margin-bottom:26px}
  .bk-sec .sec-head .eyebrow{margin-bottom:14px}
  .bk-sec .sec-head h2{font-size:30px;line-height:1.05;letter-spacing:-.03em}
  .bk-sec .sec-head .copy{margin-top:14px;font-size:17px;line-height:1.55}
  .bk-sec.comparison{padding-block:60px}
}
@media(max-width:370px){.bk-sec .sec-head h2{font-size:28px}}
/* Titulares sin palabras sueltas en la última línea («¿Cuánto cuesta / Barkibu?») */
.bk-sec h2,.bk-sum__h2,.bk-duo__i h2,.bk-final h2,.bk-gana__t,.bk-card h3,.bk-op__self h3{text-wrap:balance}

/* --- Hero --------------------------------------------------------------------------------------------------------- */
.hero--barkibu h1{max-width:820px}
.hero--barkibu h1 .c-kicker~.hero-h1-main{font-size:min(1em,66px)}
@media(max-width:900px){.hero--barkibu .hero-content{padding-top:56px}}
@media(max-width:600px){
  /* foto más oscura de arriba abajo: el texto blanco se lee entero sobre la alfombra iluminada */
  .hero--barkibu .hero-shade{background:linear-gradient(180deg,rgba(16,13,10,.66) 0%,rgba(16,13,10,.6) 45%,rgba(16,13,10,.84) 100%)}
  .hero--barkibu .hero-content{padding-top:34px;padding-bottom:34px}
  .hero--barkibu .hero-content .crumbs{margin-bottom:16px}
  .hero--barkibu .hero-content>.eyebrow{margin-bottom:14px}
  .hero--barkibu h1 .c-kicker{margin-bottom:10px;font-size:18px}
  .hero--barkibu h1 .c-kicker~.hero-h1-main{font-size:36px;line-height:1.02;letter-spacing:-.035em}
  .hero--barkibu .hero-lead{font-size:17px;line-height:1.5;margin:16px 0 22px}
  .hero--barkibu .hero-actions{align-items:stretch;gap:14px}
  .hero--barkibu .hero-actions .btn{width:100%;justify-content:space-between}
  .hero--barkibu .hero-actions .text-link{align-self:flex-start;min-height:44px}
}
@media(max-width:370px){.hero--barkibu h1 .c-kicker~.hero-h1-main{font-size:33px}}

/* --- Subnavegación: la común (05_global/07_integrador: toques de 44 px), sin ajustes propios ---------------------- */

/* --- Resumen rápido ---------------------------------------------------------------------------------------------- */
.bk-sum{padding-block:clamp(40px,5vw,64px) clamp(36px,4vw,56px);border-bottom:1px solid var(--line)}
.bk-sum__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 24px;margin-bottom:18px}
.bk-sum__eb{flex:1 1 100%;margin:0}
.bk-sum__h2{flex:1 1 auto;margin:0;font-size:clamp(26px,1.6vw + 18px,40px);line-height:1.04;letter-spacing:-.035em}
.bk-sum__date{margin:0;font-size:13px;line-height:1.45;color:var(--muted)}
.bk-sum__lead{max-width:880px;margin:0 0 26px;font-size:clamp(17px,.5vw + 15px,20px);line-height:1.5}
.bk-sum__table{width:100%;border-collapse:collapse;font-size:17px;line-height:1.38}
.bk-sum__table th,.bk-sum__table td{padding:15px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.bk-sum__table thead th{padding-top:6px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ink)}
.bk-sum__table thead th:last-child{color:#2f6b3a}
.bk-sum__table tbody th{font-size:15px;font-weight:700;width:22%;padding-left:0}
.bk-sum__table thead td{padding-left:0;width:22%}
.bk-sum__table thead th{width:39%}
.bk-sum__table td{width:39%}
.bk-sum__table tbody tr:last-child>*{border-bottom:0}
.bk-sum__go{margin:22px 0 0}
.bk-sum__go .text-link{min-height:44px;padding-bottom:6px;align-items:flex-end}
@media(max-width:640px){
  .bk-sum__lead{margin-bottom:18px}
  .bk-sum__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .bk-sum__table,.bk-sum__table tbody{display:block}
  .bk-sum__table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px;padding:13px 0 14px;border-bottom:1px solid var(--line)}
  .bk-sum__table tbody tr:last-child{border-bottom:0}
  .bk-sum__table th,.bk-sum__table td,.bk-sum__table tbody tr:last-child>*{padding:0;border:0;width:auto}
  .bk-sum__table tbody th{grid-column:1/-1;width:auto;margin-bottom:6px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase}
  .bk-sum__table td{font-size:16px;line-height:1.4}
  .bk-sum__table td::before{content:attr(data-label);display:block;margin-bottom:2px;font-size:12.5px;font-weight:700;color:var(--muted)}
  .bk-sum__table td[data-label="Swipet"]::before{color:#2f6b3a}
}

/* --- Opiniones de Barkibu ---------------------------------------------------------------------------------------- */
.bk-op{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:22px;align-items:stretch}
.bk-op__tp{background:var(--ink);color:#fff;padding:30px 32px 32px;display:grid;gap:12px;justify-items:start;align-content:start}
.bk-op__lbl{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.bk-op__lbl svg{width:18px;height:18px;color:#00b67a}
.bk-op__score{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:4px 0 0}
.bk-op__score b{font-size:clamp(56px,5vw,76px);letter-spacing:-.04em;line-height:1}
.bk-op__score span{font-size:18px;color:#d6d2cb}
.bk-op__date{margin:0;font-size:14px;line-height:1.5;color:#bdb9b2;max-width:440px}
.bk-op__btn{margin-top:10px;white-space:normal;text-align:left;gap:16px}
.bk-op__self{background:#fff;border:1px solid var(--line);padding:26px 28px;display:grid;align-content:center}
.bk-op__self h3,.bk-op__tips h3{font-size:21px;margin:0 0 10px}
.bk-op__self p{margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.bk-op__tips{grid-column:1/-1;background:#fff;border:1px solid var(--line);padding:26px 28px 14px}
.bk-op__tips .checks{margin:0}
.bk-op__tips>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
.bk-op__tips>summary::-webkit-details-marker{display:none}
.bk-op__tips>summary h3{margin:0 0 10px}
.bk-op__tips>summary svg{display:none;width:20px;height:20px;flex:none;transition:transform .25s var(--ease)}
@media(min-width:700px){.bk-op__tips>summary{pointer-events:none}}
@media(max-width:699.98px){.bk-op__tips>summary{cursor:pointer;min-height:48px}.bk-op__tips>summary h3{margin:0}.bk-op__tips>summary svg{display:block}.bk-op__tips[open]>summary svg{transform:rotate(180deg)}.bk-op__tips[open]>summary{margin-bottom:6px}}
.bk-op__sw{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:28px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:16px}
.bk-op__sw .text-link{min-height:44px;align-items:center;padding-bottom:0}
@media(max-width:900px){.bk-op{grid-template-columns:minmax(0,1fr);gap:14px}.bk-op__tp{padding:26px 22px 28px}.bk-op__self,.bk-op__tips{padding:22px 20px}}
@media(max-width:600px){
  .bk-op__btn{width:100%;justify-content:space-between}
  .bk-op__tips .checks li{font-size:16px;padding:12px 0}
  .bk-op__tips{padding-bottom:8px}
}

/* --- Qué cubre: listas con desplegable y la caja de Swipet ------------------------------------------------------ */
.bk-lists{display:grid;gap:18px}
@media(min-width:900px){.bk-lists{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}}
.bk-card{padding:32px 34px 26px}
.bk-card--si{background:var(--mint)}
.bk-card--no{background:var(--cream)}
.bk-card h3{font-size:26px;margin:0 0 14px}
.bk-list{list-style:none;margin:0;padding:0;display:grid}
.bk-list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;align-items:start;padding:13px 0;border-top:1px solid var(--line);font-size:15.5px;line-height:1.5}
.bk-list li svg{width:28px;height:28px;padding:6px;border-radius:50%;background:#fff}
.bk-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;
  padding:10px 0;border-top:1px solid var(--line);font-size:16px;font-weight:700;line-height:1.3}
.bk-fold>summary::-webkit-details-marker{display:none}
.bk-fold>summary svg{width:20px;height:20px;flex:none;transition:transform .25s var(--ease)}
.bk-fold[open]>summary svg{transform:rotate(180deg)}
.bk-fold__o,.bk-fold[open] .bk-fold__c{display:none}
.bk-fold[open] .bk-fold__o{display:inline}
.bk-fold>summary:hover{text-decoration:underline;text-underline-offset:3px}
@media(min-width:700px){.bk-fold>summary{display:none}}
@media(max-width:600px){
  .bk-card{padding:22px 18px 10px}
  .bk-card h3{font-size:22px;margin-bottom:8px}
  .bk-list li{grid-template-columns:24px minmax(0,1fr);gap:12px;padding:12px 0;font-size:16px;line-height:1.48}
  .bk-list li svg{width:24px;height:24px;padding:5px}
}
.bk-sw{margin-top:22px;background:var(--sage);color:var(--ink);padding:28px 32px;display:grid;gap:14px}
.bk-sw__t{margin:0;font-size:clamp(22px,1vw + 16px,28px);font-weight:700;letter-spacing:-.025em;line-height:1.1}
.bk-sw__p{margin:0;font-size:17px;line-height:1.5;max-width:760px}
.bk-sw__g{display:grid;gap:8px}
.bk-sw__lbl{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.bk-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.bk-chips li{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:7px 14px;border-radius:999px;border:1px dashed rgba(23,21,18,.55);
  font-size:15px;line-height:1.25}
.bk-chips li svg{width:16px;height:16px;flex:none}
.bk-chips--in li{background:#fff;border:1px solid #fff}
.bk-sw__links{display:flex;flex-wrap:wrap;gap:8px 28px;margin:4px 0 0}
.bk-sw__links .text-link{min-height:44px;align-items:center;padding-bottom:0}
@media(max-width:600px){.bk-sw{padding:22px 18px 14px;margin-top:18px;gap:12px}.bk-sw__p{font-size:16px}.bk-chips{gap:6px}.bk-chips li{min-height:36px;padding:6px 13px;font-size:15px}}

/* --- Carencias, lado a lado ------------------------------------------------------------------------------------ */
.bk-lado__table{width:100%;border-collapse:collapse}
.bk-lado__table caption{caption-side:top;text-align:left;font-size:14px;line-height:1.45;color:var(--muted);padding:0 0 12px}
.bk-lado__table th,.bk-lado__table td{text-align:left;vertical-align:top;padding:18px 18px 18px 0;border-bottom:1px solid var(--line)}
.bk-lado__table thead th{padding:0 18px 10px 0;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ink)}
.bk-lado__table thead th:last-child{color:#2f6b3a}
.bk-lado__table thead td{border-bottom:1px solid var(--ink);width:26%}
.bk-lado__table thead th{width:37%}
.bk-lado__table tbody th{width:26%;font-size:17px;font-weight:700;line-height:1.3}
.bk-lado__table td{width:37%}
.bk-lado__who{display:none}
.bk-lado__v{display:block;font-size:clamp(24px,1.2vw + 16px,32px);letter-spacing:-.03em;line-height:1.05;white-space:nowrap}
.bk-lado__v .bk-ref{font-size:12.5px}
.bk-lado__n{display:block;margin-top:6px;font-size:15px;line-height:1.45;color:var(--muted)}
.bk-lado__win{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:4px 11px 4px 8px;border-radius:999px;background:var(--sage);
  color:var(--ink);font-size:12.5px;font-weight:700;line-height:1.3}
.bk-lado__win svg{width:14px;height:14px;flex:none}
.bk-lado__table td.is-win .bk-lado__v{color:var(--ink)}
.bk-lado__table td:not(.is-win) .bk-lado__v{color:#57524b}
@media(max-width:700px){
  .bk-lado__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .bk-lado__table,.bk-lado__table tbody{display:block}
  .bk-lado__table caption{display:block}
  .bk-lado__table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:10px;row-gap:8px;padding:16px 0;border-bottom:1px solid var(--line)}
  .bk-lado__table th,.bk-lado__table td{padding:0;border:0;width:auto}
  .bk-lado__table tbody th{grid-column:1/-1;width:auto;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;line-height:1.35}
  .bk-lado__table tbody td{width:auto}
  .bk-lado__table td{background:#fff;padding:12px 12px 14px;display:flex;flex-direction:column;align-items:flex-start}
  .bk-lado__table td.is-win{box-shadow:inset 0 0 0 2px var(--sage)}
  .bk-lado__who{display:block;margin-bottom:4px;font-size:12.5px;font-weight:700;color:var(--muted)}
  .bk-lado__table td[data-col="swipet"] .bk-lado__who{color:#2f6b3a}
  .bk-lado__v{font-size:22px;white-space:normal}
  .bk-lado__n{font-size:15px;line-height:1.42}
  .bk-lado__win{margin-top:auto;padding-top:4px}
  .bk-lado__n+.bk-lado__win,.bk-lado__v+.bk-lado__win{margin-top:10px}
}
.bk-esp{margin-top:30px}
.bk-esp__t{margin:0 0 12px;font-size:16px;font-weight:700;line-height:1.4}
.bk-esp__chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.bk-esp__chips li{display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;border-radius:999px;background:#fff;font-size:15px;line-height:1.25}
.bk-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;margin-top:30px;max-width:900px;background:#fff;padding:20px 22px;font-size:16px;line-height:1.55}
.bk-note p{margin:0 0 .7em}
.bk-note p:last-child{margin:0}
.bk-note__ico{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--mint)}
.bk-note__ico svg{width:18px;height:18px}
.bk-note--warn{background:var(--cream)}
.bk-note--warn .bk-note__ico{background:#fff}
@media(max-width:600px){.bk-note{grid-template-columns:30px minmax(0,1fr);gap:12px;padding:18px 16px;margin-top:24px}.bk-note__ico{width:30px;height:30px}.bk-note__ico svg{width:16px;height:16px}.bk-esp{margin-top:24px}}

/* --- Esterilización y precio (dos respuestas lado a lado) ---------------------------------------------------- */
.bk-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
.bk-duo__i{background:var(--mint);padding:clamp(28px,3.4vw,46px);display:grid;gap:16px;align-content:start;justify-items:start}
.bk-duo__i+.bk-duo__i{background:var(--cream)}
.bk-duo__i .eyebrow{margin:0}
.bk-duo__i h2{font-size:clamp(30px,2.6vw,42px);line-height:1.02;letter-spacing:-.035em}
.bk-duo__i p{margin:0}
.bk-duo__a{font-size:17px;line-height:1.55}
.bk-duo__warn{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;font-size:16px;line-height:1.5;color:var(--muted)}
.bk-duo__warn svg{width:20px;height:20px;margin-top:1px;color:var(--ink)}
.bk-duo__sw{font-size:17px;line-height:1.55;padding-top:14px;border-top:1px solid var(--line);width:100%}
.bk-duo__i .text-link{min-height:44px;align-items:center;padding-bottom:0}
.bk-dto{width:100%;background:#fff;padding:18px 20px}
.bk-dto__t{margin:0 0 8px!important;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.bk-dto ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.bk-dto li{font-size:16px;line-height:1.5}
.bk-duo__cta{width:100%;display:grid;gap:8px;justify-items:start}
.bk-duo__fine{font-size:13.5px;line-height:1.45;color:var(--muted)}
@media(max-width:900px){.bk-duo{grid-template-columns:minmax(0,1fr);gap:14px}}
@media(max-width:600px){
  .bk-duo-band{padding-block:14px 56px}
  .bk-duo__i{padding:30px 18px 28px;gap:14px}
  .bk-duo__i h2{font-size:30px}
  .bk-duo__a,.bk-duo__sw{font-size:16.5px}
  .bk-duo__cta .btn{width:100%;justify-content:space-between}
  .bk-dto{padding:16px}
}
@media(max-width:370px){.bk-duo__i h2{font-size:28px}}

/* --- Barkibu o Swipet (bloque oscuro): tabla completa ----------------------------------------------------------- */
.bk-dark .comparison-head{margin-bottom:clamp(36px,4vw,60px)}
.bk-dark .comparison-head p{max-width:560px}
.bk-dark .comparison-head .bk-lectura{margin:0;font-size:13.5px;color:#a8a49d}
@media(max-width:600px){
  .bk-dark .comparison-head{gap:18px;margin-bottom:30px}
  .bk-dark .comparison-head .eyebrow{margin-bottom:14px}
  .bk-dark h2{font-size:30px;line-height:1.05}
  .bk-dark h2 .h2-lead{font-size:15px}
  .bk-dark .comparison-head p{margin-bottom:14px;font-size:16.5px;line-height:1.55}
}
/* a 360 px, «¿en qué se diferencian?» en una sola línea */
@media(max-width:370px){.bk-dark h2{font-size:27px;letter-spacing:-.035em}}
.bk-vs{display:grid;gap:16px}
.bk-vs .pending p{margin:0;font-size:13.5px;line-height:1.5;color:#e7e3dd}
.bk-vs__table{width:100%;border-collapse:collapse;font-size:15.5px;line-height:1.5}
.bk-vs__table caption{caption-side:top;text-align:left;font-size:13.5px;line-height:1.45;color:#bdb9b2;padding:0 0 12px}
.bk-vs__table th,.bk-vs__table td{padding:16px 16px 16px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--line-light)}
.bk-vs__table thead th{font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#fff;border-bottom:1px solid rgba(255,255,255,.5);white-space:nowrap}
.bk-vs__table thead th:last-child{color:var(--sage)}
.bk-vs__table tbody th{width:19%;color:#fff;font-weight:700;line-height:1.35}
.bk-vs__table td{width:40.5%;color:#e7e3dd}
.bk-vs__table td[data-col="swipet"]{color:#fff}
.bk-vs__table tr:target>*{background:#2c3328}
.bk-vs__who{display:none}
.bk-short tr.bk-extra{display:none}
/* Estado de la celda de Barkibu (05/10/2026): ✗ coral y «Bono compartido» en gris, igual que la tabla común */
.bk-st{display:inline-flex;align-items:center;gap:5px;margin:0 6px 4px 0;padding:1px 10px 1px 8px;border-radius:999px;font-size:16px;font-weight:700;line-height:1.4;vertical-align:baseline;white-space:nowrap}
.bk-st svg{width:15px;height:15px;flex:none;stroke-width:2.6}
.bk-st--no{background:var(--coral);color:var(--ink)}
.bk-st--bono{background:rgba(255,255,255,.14);color:#d8d4cd;border:1px dashed rgba(255,255,255,.45)}
.bk-vs__table td[data-v="bono"]{color:#bdb9b2}
@media(max-width:700px){
  .bk-vs__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .bk-vs__table,.bk-vs__table tbody,.bk-vs__table tr,.bk-vs__table th,.bk-vs__table td{display:block;width:auto}
  .bk-vs__table caption{display:block}
  .bk-vs__table tbody tr{padding:16px 0 18px;border-bottom:1px solid var(--line-light)}
  .bk-vs__table th,.bk-vs__table td{padding:0;border:0}
  .bk-short tr.bk-extra{display:none}
  .bk-vs__table tbody th{width:auto;margin:0 0 10px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase}
  .bk-vs__table tbody td{width:auto;font-size:16px;line-height:1.55}
  .bk-vs__table td+td{margin-top:10px}
  /* la etiqueta va en la misma línea que el texto: cada fila ocupa ~60 px menos en el móvil */
  .bk-vs__who{display:inline-flex;align-items:center;margin:0 8px 0 0;padding:2px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.4);
    font-size:12.5px;font-weight:700;line-height:1.3;color:#fff;letter-spacing:.02em;vertical-align:1px}
  .bk-vs__table td[data-col="swipet"] .bk-vs__who{background:var(--sage);border-color:var(--sage);color:var(--ink)}
}
.bk-more-row{margin:0}
.bk-more{display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:10px 20px;border-radius:999px;border:1px solid rgba(255,255,255,.5);
  background:transparent;color:#fff;font:inherit;font-size:14px;font-weight:700;line-height:1.3;text-align:left;cursor:pointer;
  transition:background-color .2s,color .2s}
.bk-more svg{width:18px;height:18px;flex:none;transition:transform .25s var(--ease)}
.bk-more__txt{display:grid;gap:2px}
.bk-more__txt small{font-size:13px;font-weight:400;opacity:.85}
.bk-more[aria-expanded=true] .bk-more__txt small{display:none}
.bk-more[aria-expanded=true] svg{transform:rotate(180deg)}
.bk-more:hover{background:#fff;color:var(--ink)}
.bk-more[hidden]{display:none}
@media(max-width:600px){.bk-more{border-radius:18px;width:100%;justify-content:space-between;padding:12px 18px}}
.bk-vs__note{margin:0;font-size:13.5px;line-height:1.5;color:#bdb9b2;max-width:900px}
.bk-vs__note a{color:#fff;text-decoration:underline;text-underline-offset:3px;display:inline-block;padding-block:12px;margin-block:-12px}
.bk-gana{margin-top:clamp(30px,4vw,44px);background:var(--sage);color:var(--ink);padding:24px 26px;display:grid;gap:8px;max-width:980px}
.bk-gana .bk-gana__t{font-size:clamp(20px,1vw + 15px,26px);color:var(--ink)}
.bk-gana p{margin:0;font-size:16.5px;line-height:1.55}
.bk-next{margin:22px 0 0}
.bk-next .text-link{color:#fff;min-height:44px;align-items:center;padding-bottom:0}
.bk-dark .cta-strip{border-color:var(--line-light);margin-top:clamp(40px,5vw,64px)}
.bk-dark .cta-strip p span{color:#bdb9b2}
.bk-dark .cta-strip .text-link{color:#fff}
@media(max-width:600px){
  .bk-gana{padding:20px 18px}
  .bk-dark .cta-strip{flex-direction:column;align-items:stretch;gap:14px;padding:22px 0}
  .bk-dark .cta-strip p{font-size:20px}
  .bk-dark .cta-strip .cta-row{flex-direction:column;align-items:stretch;gap:10px}
  .bk-dark .cta-strip .btn{width:100%;justify-content:space-between}
  .bk-dark .cta-strip .text-link{align-self:flex-start}
}

/* --- Cuánto te devolvería: cuatro facturas (2 x 2; en el móvil, carrusel) ----------------------------------------- */
@media(min-width:900px){.bk-bills .c-bills{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
.bk-bills .c-bill{padding:26px 28px}
.bk-bills__hint{display:none;margin:0 0 10px;font-size:13.5px;color:var(--muted)}
.bk-bills .c-bill__note{font-size:14.5px;line-height:1.45}
@media(max-width:600px){
  .bk-bills__hint{display:block}
  .bk-bills .c-bills{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:86%;gap:12px;align-items:stretch;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:8px}
  .bk-bills .c-bill{scroll-snap-align:start;padding:22px 18px}
  .bk-bills .c-bill .c-bill__t{font-size:20px;line-height:1.2}
  .bk-bills .c-bill__who{font-size:16px}
  .bk-bills .c-bill__pay{flex-direction:column;align-items:flex-end;gap:4px}
  .bk-bills .c-bill__note{font-size:16px;line-height:1.45}
  .bk-bills .c-bills__nota{font-size:13.5px;line-height:1.5}
  .bk-bills .c-bill__amt{font-size:16px}
}

/* --- Cuándo conviene ------------------------------------------------------------------------------------------- */
.bk-verd .c-verdict .c-verdict__t{font-size:clamp(22px,1vw + 16px,28px)}
.bk-verd .c-dots li{font-size:16px;line-height:1.5}
.bk-verd .c-verdict:first-child{background:#fff}
.bk-cta{margin-top:clamp(30px,4vw,44px)}
.bk-cta .text-link{min-height:44px;align-items:center;padding-bottom:0}
@media(max-width:600px){
  .bk-verd .c-verdict{padding:20px 18px 22px}
  .bk-verd .c-verdict .c-verdict__t{font-size:22px}
  .bk-verd .c-dots{gap:12px}
  .bk-cta{flex-direction:column;align-items:stretch;gap:12px}
  .bk-cta .btn{width:100%;justify-content:space-between}
  .bk-cta .text-link{align-self:flex-start}
}

/* --- Cambiarse: cuatro pasos ----------------------------------------------------------------------------------------- */
@media(min-width:1101px){.bk-steps4 .steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.bk-steps4 .step h3{font-size:21px}
.bk-steps4 .step p{font-size:15.5px;line-height:1.5}
@media(max-width:1100px) and (min-width:761px){
  .bk-steps4 .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bk-steps4 .steps .step:nth-child(2){border-right:0}
  .bk-steps4 .steps .step:nth-child(3){padding-left:0}
  .bk-steps4 .steps .step:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
@media(max-width:760px){
  .bk-steps4 .steps .step,.bk-steps4 .steps .step+.step{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:16px;row-gap:4px;padding:18px 0}
  .bk-steps4 .step__n{display:none}
  .bk-steps4 .step__ico{grid-column:1;grid-row:1/span 2;width:44px;height:44px;margin:2px 0 0}
  .bk-steps4 .step__ico svg{width:20px;height:20px}
  .bk-steps4 .step h3{grid-column:2;margin:0;font-size:19px}
  .bk-steps4 .step p{grid-column:2;font-size:16px}
}
.bk-pendwrap{margin-top:24px}

/* --- Fuentes --------------------------------------------------------------------------------------------------------- */
.bk-met{list-style:none;margin:0 0 26px;padding:0;display:grid;gap:12px;max-width:900px}
.bk-met li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start;font-size:16px;line-height:1.5}
.bk-met svg{width:20px;height:20px;margin-top:2px}
@media(min-width:900px){.bk-met{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;max-width:none}}
.bk-src{border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.bk-src>summary{list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;min-height:56px;padding:12px 32px 12px 0;position:relative}
.bk-src>summary::-webkit-details-marker{display:none}
.bk-src>summary>span{font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.bk-src>summary>small{font-size:14px;line-height:1.4;color:var(--muted)}
.bk-src>summary>svg{position:absolute;right:0;top:50%;width:20px;height:20px;margin-top:-10px;transition:transform .25s var(--ease)}
.bk-src[open]>summary>svg{transform:rotate(180deg)}
.bk-src__list{margin:0;padding:0 0 18px 30px;columns:2 340px;column-gap:40px;font-size:14.5px;line-height:1.5;color:var(--muted)}
.bk-src__list li{padding:5px 0;break-inside:avoid;scroll-margin-top:8px}
.bk-src__list li::marker{color:var(--coral-ink);font-weight:700}
.bk-src__list a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.bk-src__list li:target{background:var(--mint);box-shadow:-8px 0 0 var(--mint),8px 0 0 var(--mint)}
.bk-src__mail{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;margin:22px 0 0;font-size:16px;line-height:1.5;color:var(--muted)}
.bk-src__mail svg{width:20px;height:20px;margin-top:2px;color:var(--ink)}
.bk-src__mail a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
@media(max-width:600px){.bk-src__list{padding-left:24px;font-size:16px}.bk-src__list li{padding:7px 0}}

/* Ayuda en una línea (pieza común) a 16 px en esta página */
@media(max-width:600px){.bk-sec .c-help--compact{font-size:16px}.bk-sec .c-help--compact .c-help__a{font-size:16px}}

/* --- Preguntas frecuentes y CTA final ------------------------------------------------------------------------------- */
@media(max-width:600px){
  .bk-sec .faq-layout{gap:28px}
  .bk-sec .faq-layout>.sec-head h2{font-size:30px}
  .bk-sec .faq summary{font-size:17px;padding:18px 0;min-height:56px}
  .bk-sec .faq__a{font-size:16px;line-height:1.55}
  .bk-final .final-cta{padding:60px var(--gutter) 64px}
  .bk-final .final-cta h2{font-size:32px;line-height:1.04}
  .bk-final .final-cta .lead{font-size:16.5px;margin:16px auto 24px}
}
@media(max-width:370px){.bk-final .final-cta h2{font-size:30px}.bk-sec .faq-layout>.sec-head h2{font-size:27px;letter-spacing:-.035em}}
/* 03/10/2026 · Integración: el html ya reserva la cabecera y la barra de secciones (scroll-padding), así que los saltos
   a fuentes, filas y secciones solo llevan 8 px más; antes la reserva iba doble y caían 100-150 px por debajo. */
/* Móviles bajos (360 × 640, iPhone SE o Safari con sus barras): hero compacto, como en SantéVet, para que el botón
   «Ver el precio de tu mascota» se vea entero sin bajar. */
@media(max-width:600px) and (max-height:700px){
  .hero--barkibu .hero-content{padding-top:20px;padding-bottom:24px}
  .hero--barkibu .hero-content .crumbs{margin-bottom:10px}
  .hero--barkibu .hero-content>.eyebrow{margin-bottom:10px}
  .hero--barkibu h1 .c-kicker{margin-bottom:8px;font-size:17px}
  .hero--barkibu .hero-lead{margin:12px 0 16px;font-size:16px}
}

/* 05/10/2026: «Dónde gana Barkibu» sale de la pieza común (donde_gana): sin la caja salvia de antes, solo la tarjeta */
.bk-gana--vs{background:none;padding:0;color:var(--ink)}
.bk-gana--vs .cvs-dg{color:var(--ink)}
/* «Swipet frente a Barkibu en 30 segundos»: la tabla común debajo de la entradilla; enlaces de salto, con aire */
.bk-sum__vs{margin-top:clamp(18px,3vw,28px)}
.bk-sum__go{display:flex;flex-wrap:wrap;gap:6px 24px}
.bk-sum__go .text-link{min-height:44px;display:inline-flex;align-items:center}
/* respaldo local de «Lo que no te cuentan» (solo si la pieza común no está lista) */
.bk-lp-resp{display:grid;gap:12px;padding-left:1.2em;font-size:17px;line-height:1.55}
.bk-vs__table a.bk-ext{color:#fff;text-decoration:underline;text-underline-offset:3px}


/* ---- 41_alt_musky.css ---- */
/* V2 — /alternativa-a-musky/ (v2_alt_musky.py). Copia adaptada de 41_alt_barkibu.css. Prefijo .mk- (y .hero--musky). Móvil primero: 360-414 px.
   Lenguaje de Luis: líneas finas, tinta/papel/crema/salvia/menta, coral solo para la acción y las llamadas [n].
   Las piezas compartidas (.c-vs, .c-verdict, .c-bill, .faq, .final-cta…) no se tocan: solo se ajustan dentro de .mk-*. */

/* --- Comunes de la página ------------------------------------------------------------------------------------ */
.mk-nw{white-space:nowrap}
.mk-ref{font-size:12.5px;line-height:0;margin-left:2px;letter-spacing:0;font-weight:700}
.mk-ref+.mk-ref{margin-left:4px}
.mk-ref a{position:relative;color:var(--coral-ink);text-decoration:none}
.mk-ref a::after{content:"";position:absolute;inset:-14px -2px}           /* zona de toque mayor sin mover el texto */
.mk-ref a:hover{text-decoration:underline}
.sec-head .copy .mk-ref a{color:var(--coral-ink);border-bottom:0}   /* la entradilla subraya sus enlaces: las llamadas, no */
.mk-ext .arr{margin-left:4px}
/* sobre menta o salvia el coral oscuro no llega a 4,5:1: un tono más oscuro (6:1) */
.mk-card--si .mk-ref a,.mk-sw .mk-ref a,.mk-gana .mk-ref a,.mk-duo__i:first-child .mk-ref a{color:#9e2f28}
.mk-dark .mk-ref a,.mk-op__tp .mk-ref a{color:var(--coral)}
/* Anclas: que la cabecera y la subnavegación no tapen el titular */
/* (html ya reserva la cabecera con scroll-padding-top; en el móvil la subnavegación se esconde al bajar) */
.mk-sec-a[id]{scroll-margin-top:8px}
.mk-vs tr[id],.mk-src__list li{scroll-margin-top:8px}
.mk-h3{font-size:clamp(22px,1.4vw + 14px,28px);line-height:1.1;letter-spacing:-.025em;margin:0 0 18px}

/* Secciones: en el móvil, aire contenido (56-60 px) y titulares de 28-30 px que no se parten feo */
@media(max-width:600px){
  .mk-sec{padding-block:56px}
  .mk-sec .sec-head{margin-bottom:26px}
  .mk-sec .sec-head .eyebrow{margin-bottom:14px}
  .mk-sec .sec-head h2{font-size:30px;line-height:1.05;letter-spacing:-.03em}
  .mk-sec .sec-head .copy{margin-top:14px;font-size:17px;line-height:1.55}
  .mk-sec.comparison{padding-block:60px}
}
@media(max-width:370px){.mk-sec .sec-head h2{font-size:28px}}
/* Titulares sin palabras sueltas en la última línea («¿Cuánto cuesta / Barkibu?») */
.mk-sec h2,.mk-sum__h2,.mk-duo__i h2,.mk-final h2,.mk-gana__t,.mk-card h3,.mk-op__self h3{text-wrap:balance}

/* --- Hero --------------------------------------------------------------------------------------------------------- */
.hero--musky h1{max-width:820px}
.hero--musky h1 .c-kicker~.hero-h1-main{font-size:min(1em,66px)}
@media(max-width:900px){.hero--musky .hero-content{padding-top:56px}}
@media(max-width:600px){
  /* foto más oscura de arriba abajo: el texto blanco se lee entero sobre la alfombra iluminada */
  .hero--musky .hero-shade{background:linear-gradient(180deg,rgba(16,13,10,.66) 0%,rgba(16,13,10,.6) 45%,rgba(16,13,10,.84) 100%)}
  .hero--musky .hero-content{padding-top:34px;padding-bottom:34px}
  .hero--musky .hero-content .crumbs{margin-bottom:16px}
  .hero--musky .hero-content>.eyebrow{margin-bottom:14px}
  .hero--musky h1 .c-kicker{margin-bottom:10px;font-size:18px}
  .hero--musky h1 .c-kicker~.hero-h1-main{font-size:36px;line-height:1.02;letter-spacing:-.035em}
  .hero--musky .hero-lead{font-size:17px;line-height:1.5;margin:16px 0 22px}
  .hero--musky .hero-actions{align-items:stretch;gap:14px}
  .hero--musky .hero-actions .btn{width:100%;justify-content:space-between}
  .hero--musky .hero-actions .text-link{align-self:flex-start;min-height:44px}
}
@media(max-width:370px){.hero--musky h1 .c-kicker~.hero-h1-main{font-size:33px}}

/* --- Subnavegación: la común (05_global/07_integrador: toques de 44 px), sin ajustes propios ---------------------- */

/* --- Resumen rápido ---------------------------------------------------------------------------------------------- */
.mk-sum{padding-block:clamp(40px,5vw,64px) clamp(36px,4vw,56px);border-bottom:1px solid var(--line)}
.mk-sum__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 24px;margin-bottom:18px}
.mk-sum__eb{flex:1 1 100%;margin:0}
.mk-sum__h2{flex:1 1 auto;margin:0;font-size:clamp(26px,1.6vw + 18px,40px);line-height:1.04;letter-spacing:-.035em}
.mk-sum__date{margin:0;font-size:13px;line-height:1.45;color:var(--muted)}
.mk-sum__lead{max-width:880px;margin:0 0 26px;font-size:clamp(17px,.5vw + 15px,20px);line-height:1.5}
.mk-sum__table{width:100%;border-collapse:collapse;font-size:17px;line-height:1.38}
.mk-sum__table th,.mk-sum__table td{padding:15px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.mk-sum__table thead th{padding-top:6px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ink)}
.mk-sum__table thead th:last-child{color:#2f6b3a}
.mk-sum__table tbody th{font-size:15px;font-weight:700;width:22%;padding-left:0}
.mk-sum__table thead td{padding-left:0;width:22%}
.mk-sum__table thead th{width:39%}
.mk-sum__table td{width:39%}
.mk-sum__table tbody tr:last-child>*{border-bottom:0}
.mk-sum__go{margin:22px 0 0}
.mk-sum__go .text-link{min-height:44px;padding-bottom:6px;align-items:flex-end}
@media(max-width:640px){
  .mk-sum__lead{margin-bottom:18px}
  .mk-sum__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .mk-sum__table,.mk-sum__table tbody{display:block}
  .mk-sum__table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px;padding:13px 0 14px;border-bottom:1px solid var(--line)}
  .mk-sum__table tbody tr:last-child{border-bottom:0}
  .mk-sum__table th,.mk-sum__table td,.mk-sum__table tbody tr:last-child>*{padding:0;border:0;width:auto}
  .mk-sum__table tbody th{grid-column:1/-1;width:auto;margin-bottom:6px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase}
  .mk-sum__table td{font-size:16px;line-height:1.4}
  .mk-sum__table td::before{content:attr(data-label);display:block;margin-bottom:2px;font-size:12.5px;font-weight:700;color:var(--muted)}
  .mk-sum__table td[data-label="Swipet"]::before{color:#2f6b3a}
}

/* --- Opiniones de Barkibu ---------------------------------------------------------------------------------------- */
.mk-op{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:22px;align-items:stretch}
.mk-op__tp{background:var(--ink);color:#fff;padding:30px 32px 32px;display:grid;gap:12px;justify-items:start;align-content:start}
.mk-op__lbl{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.mk-op__lbl svg{width:18px;height:18px;color:#00b67a}
.mk-op__score{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:4px 0 0}
.mk-op__score b{font-size:clamp(56px,5vw,76px);letter-spacing:-.04em;line-height:1}
.mk-op__score span{font-size:18px;color:#d6d2cb}
.mk-op__date{margin:0;font-size:14px;line-height:1.5;color:#bdb9b2;max-width:440px}
.mk-op__btn{margin-top:10px;white-space:normal;text-align:left;gap:16px}
.mk-op__self{background:#fff;border:1px solid var(--line);padding:26px 28px;display:grid;align-content:center}
.mk-op__self h3,.mk-op__tips h3{font-size:21px;margin:0 0 10px}
.mk-op__self p{margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.mk-op__tips{grid-column:1/-1;background:#fff;border:1px solid var(--line);padding:26px 28px 14px}
.mk-op__tips .checks{margin:0}
.mk-op__tips>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
.mk-op__tips>summary::-webkit-details-marker{display:none}
.mk-op__tips>summary h3{margin:0 0 10px}
.mk-op__tips>summary svg{display:none;width:20px;height:20px;flex:none;transition:transform .25s var(--ease)}
@media(min-width:700px){.mk-op__tips>summary{pointer-events:none}}
@media(max-width:699.98px){.mk-op__tips>summary{cursor:pointer;min-height:48px}.mk-op__tips>summary h3{margin:0}.mk-op__tips>summary svg{display:block}.mk-op__tips[open]>summary svg{transform:rotate(180deg)}.mk-op__tips[open]>summary{margin-bottom:6px}}
.mk-op__sw{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:28px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:16px}
.mk-op__sw .text-link{min-height:44px;align-items:center;padding-bottom:0}
@media(max-width:900px){.mk-op{grid-template-columns:minmax(0,1fr);gap:14px}.mk-op__tp{padding:26px 22px 28px}.mk-op__self,.mk-op__tips{padding:22px 20px}}
@media(max-width:600px){
  .mk-op__btn{width:100%;justify-content:space-between}
  .mk-op__tips .checks li{font-size:16px;padding:12px 0}
  .mk-op__tips{padding-bottom:8px}
}

/* --- Qué cubre: listas con desplegable y la caja de Swipet ------------------------------------------------------ */
.mk-lists{display:grid;gap:18px}
@media(min-width:900px){.mk-lists{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}}
.mk-card{padding:32px 34px 26px}
.mk-card--si{background:var(--mint)}
.mk-card--no{background:var(--cream)}
.mk-card h3{font-size:26px;margin:0 0 14px}
.mk-list{list-style:none;margin:0;padding:0;display:grid}
.mk-list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;align-items:start;padding:13px 0;border-top:1px solid var(--line);font-size:15.5px;line-height:1.5}
.mk-list li svg{width:28px;height:28px;padding:6px;border-radius:50%;background:#fff}
.mk-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;
  padding:10px 0;border-top:1px solid var(--line);font-size:16px;font-weight:700;line-height:1.3}
.mk-fold>summary::-webkit-details-marker{display:none}
.mk-fold>summary svg{width:20px;height:20px;flex:none;transition:transform .25s var(--ease)}
.mk-fold[open]>summary svg{transform:rotate(180deg)}
.mk-fold__o,.mk-fold[open] .mk-fold__c{display:none}
.mk-fold[open] .mk-fold__o{display:inline}
.mk-fold>summary:hover{text-decoration:underline;text-underline-offset:3px}
@media(min-width:700px){.mk-fold>summary{display:none}}
@media(max-width:600px){
  .mk-card{padding:22px 18px 10px}
  .mk-card h3{font-size:22px;margin-bottom:8px}
  .mk-list li{grid-template-columns:24px minmax(0,1fr);gap:12px;padding:12px 0;font-size:16px;line-height:1.48}
  .mk-list li svg{width:24px;height:24px;padding:5px}
}
.mk-sw{margin-top:22px;background:var(--sage);color:var(--ink);padding:28px 32px;display:grid;gap:14px}
.mk-sw__t{margin:0;font-size:clamp(22px,1vw + 16px,28px);font-weight:700;letter-spacing:-.025em;line-height:1.1}
.mk-sw__p{margin:0;font-size:17px;line-height:1.5;max-width:760px}
.mk-sw__g{display:grid;gap:8px}
.mk-sw__lbl{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.mk-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.mk-chips li{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:7px 14px;border-radius:999px;border:1px dashed rgba(23,21,18,.55);
  font-size:15px;line-height:1.25}
.mk-chips li svg{width:16px;height:16px;flex:none}
.mk-chips--in li{background:#fff;border:1px solid #fff}
.mk-sw__links{display:flex;flex-wrap:wrap;gap:8px 28px;margin:4px 0 0}
.mk-sw__links .text-link{min-height:44px;align-items:center;padding-bottom:0}
@media(max-width:600px){.mk-sw{padding:22px 18px 14px;margin-top:18px;gap:12px}.mk-sw__p{font-size:16px}.mk-chips{gap:6px}.mk-chips li{min-height:36px;padding:6px 13px;font-size:15px}}

/* --- Carencias, lado a lado ------------------------------------------------------------------------------------ */
.mk-lado__table{width:100%;border-collapse:collapse}
.mk-lado__table caption{caption-side:top;text-align:left;font-size:14px;line-height:1.45;color:var(--muted);padding:0 0 12px}
.mk-lado__table th,.mk-lado__table td{text-align:left;vertical-align:top;padding:18px 18px 18px 0;border-bottom:1px solid var(--line)}
.mk-lado__table thead th{padding:0 18px 10px 0;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ink)}
.mk-lado__table thead th:last-child{color:#2f6b3a}
.mk-lado__table thead td{border-bottom:1px solid var(--ink);width:26%}
.mk-lado__table thead th{width:37%}
.mk-lado__table tbody th{width:26%;font-size:17px;font-weight:700;line-height:1.3}
.mk-lado__table td{width:37%}
.mk-lado__who{display:none}
.mk-lado__v{display:block;font-size:clamp(24px,1.2vw + 16px,32px);letter-spacing:-.03em;line-height:1.05;white-space:nowrap}
.mk-lado__v .mk-ref{font-size:12.5px}
.mk-lado__n{display:block;margin-top:6px;font-size:15px;line-height:1.45;color:var(--muted)}
.mk-lado__win{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:4px 11px 4px 8px;border-radius:999px;background:var(--sage);
  color:var(--ink);font-size:12.5px;font-weight:700;line-height:1.3}
.mk-lado__win svg{width:14px;height:14px;flex:none}
.mk-lado__table td.is-win .mk-lado__v{color:var(--ink)}
.mk-lado__table td:not(.is-win) .mk-lado__v{color:#57524b}
@media(max-width:700px){
  .mk-lado__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .mk-lado__table,.mk-lado__table tbody{display:block}
  .mk-lado__table caption{display:block}
  .mk-lado__table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:10px;row-gap:8px;padding:16px 0;border-bottom:1px solid var(--line)}
  .mk-lado__table th,.mk-lado__table td{padding:0;border:0;width:auto}
  .mk-lado__table tbody th{grid-column:1/-1;width:auto;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;line-height:1.35}
  .mk-lado__table tbody td{width:auto}
  .mk-lado__table td{background:#fff;padding:12px 12px 14px;display:flex;flex-direction:column;align-items:flex-start}
  .mk-lado__table td.is-win{box-shadow:inset 0 0 0 2px var(--sage)}
  .mk-lado__who{display:block;margin-bottom:4px;font-size:12.5px;font-weight:700;color:var(--muted)}
  .mk-lado__table td[data-col="swipet"] .mk-lado__who{color:#2f6b3a}
  .mk-lado__v{font-size:22px;white-space:normal}
  .mk-lado__n{font-size:15px;line-height:1.42}
  .mk-lado__win{margin-top:auto;padding-top:4px}
  .mk-lado__n+.mk-lado__win,.mk-lado__v+.mk-lado__win{margin-top:10px}
}
.mk-esp{margin-top:30px}
.mk-esp__t{margin:0 0 12px;font-size:16px;font-weight:700;line-height:1.4}
.mk-esp__chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.mk-esp__chips li{display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;border-radius:999px;background:#fff;font-size:15px;line-height:1.25}
.mk-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;margin-top:30px;max-width:900px;background:#fff;padding:20px 22px;font-size:16px;line-height:1.55}
.mk-note p{margin:0 0 .7em}
.mk-note p:last-child{margin:0}
.mk-note__ico{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--mint)}
.mk-note__ico svg{width:18px;height:18px}
.mk-note--warn{background:var(--cream)}
.mk-note--warn .mk-note__ico{background:#fff}
@media(max-width:600px){.mk-note{grid-template-columns:30px minmax(0,1fr);gap:12px;padding:18px 16px;margin-top:24px}.mk-note__ico{width:30px;height:30px}.mk-note__ico svg{width:16px;height:16px}.mk-esp{margin-top:24px}}

/* --- Esterilización y precio (dos respuestas lado a lado) ---------------------------------------------------- */
.mk-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
.mk-duo__i{background:var(--mint);padding:clamp(28px,3.4vw,46px);display:grid;gap:16px;align-content:start;justify-items:start}
.mk-duo__i+.mk-duo__i{background:var(--cream)}
.mk-duo__i .eyebrow{margin:0}
.mk-duo__i h2{font-size:clamp(30px,2.6vw,42px);line-height:1.02;letter-spacing:-.035em}
.mk-duo__i p{margin:0}
.mk-duo__a{font-size:17px;line-height:1.55}
.mk-duo__warn{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;font-size:16px;line-height:1.5;color:var(--muted)}
.mk-duo__warn svg{width:20px;height:20px;margin-top:1px;color:var(--ink)}
.mk-duo__sw{font-size:17px;line-height:1.55;padding-top:14px;border-top:1px solid var(--line);width:100%}
.mk-duo__i .text-link{min-height:44px;align-items:center;padding-bottom:0}
.mk-dto{width:100%;background:#fff;padding:18px 20px}
.mk-dto__t{margin:0 0 8px!important;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.mk-dto ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.mk-dto li{font-size:16px;line-height:1.5}
.mk-duo__cta{width:100%;display:grid;gap:8px;justify-items:start}
.mk-duo__fine{font-size:13.5px;line-height:1.45;color:var(--muted)}
@media(max-width:900px){.mk-duo{grid-template-columns:minmax(0,1fr);gap:14px}}
@media(max-width:600px){
  .mk-duo-band{padding-block:14px 56px}
  .mk-duo__i{padding:30px 18px 28px;gap:14px}
  .mk-duo__i h2{font-size:30px}
  .mk-duo__a,.mk-duo__sw{font-size:16.5px}
  .mk-duo__cta .btn{width:100%;justify-content:space-between}
  .mk-dto{padding:16px}
}
@media(max-width:370px){.mk-duo__i h2{font-size:28px}}

/* --- Barkibu o Swipet (bloque oscuro): tabla completa ----------------------------------------------------------- */
.mk-dark .comparison-head{margin-bottom:clamp(36px,4vw,60px)}
.mk-dark .comparison-head p{max-width:560px}
.mk-dark .comparison-head .mk-lectura{margin:0;font-size:13.5px;color:#a8a49d}
@media(max-width:600px){
  .mk-dark .comparison-head{gap:18px;margin-bottom:30px}
  .mk-dark .comparison-head .eyebrow{margin-bottom:14px}
  .mk-dark h2{font-size:30px;line-height:1.05}
  .mk-dark h2 .h2-lead{font-size:15px}
  .mk-dark .comparison-head p{margin-bottom:14px;font-size:16.5px;line-height:1.55}
}
/* a 360 px, «¿en qué se diferencian?» en una sola línea */
@media(max-width:370px){.mk-dark h2{font-size:27px;letter-spacing:-.035em}}
.mk-vs{display:grid;gap:16px}
.mk-vs .pending p{margin:0;font-size:13.5px;line-height:1.5;color:#e7e3dd}
.mk-vs__table{width:100%;border-collapse:collapse;font-size:15.5px;line-height:1.5}
.mk-vs__table caption{caption-side:top;text-align:left;font-size:13.5px;line-height:1.45;color:#bdb9b2;padding:0 0 12px}
.mk-vs__table th,.mk-vs__table td{padding:16px 16px 16px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--line-light)}
.mk-vs__table thead th{font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#fff;border-bottom:1px solid rgba(255,255,255,.5);white-space:nowrap}
.mk-vs__table thead th:last-child{color:var(--sage)}
.mk-vs__table tbody th{width:19%;color:#fff;font-weight:700;line-height:1.35}
.mk-vs__table td{width:40.5%;color:#e7e3dd}
.mk-vs__table td[data-col="swipet"]{color:#fff}
.mk-vs__table tr:target>*{background:#2c3328}
.mk-vs__who{display:none}
.mk-short tr.mk-extra{display:none}
@media(max-width:700px){
  .mk-vs__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .mk-vs__table,.mk-vs__table tbody,.mk-vs__table tr,.mk-vs__table th,.mk-vs__table td{display:block;width:auto}
  .mk-vs__table caption{display:block}
  .mk-vs__table tbody tr{padding:16px 0 18px;border-bottom:1px solid var(--line-light)}
  .mk-vs__table th,.mk-vs__table td{padding:0;border:0}
  .mk-short tr.mk-extra{display:none}
  .mk-vs__table tbody th{width:auto;margin:0 0 10px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase}
  .mk-vs__table tbody td{width:auto;font-size:16px;line-height:1.55}
  .mk-vs__table td+td{margin-top:10px}
  /* la etiqueta va en la misma línea que el texto: cada fila ocupa ~60 px menos en el móvil */
  .mk-vs__who{display:inline-flex;align-items:center;margin:0 8px 0 0;padding:2px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.4);
    font-size:12.5px;font-weight:700;line-height:1.3;color:#fff;letter-spacing:.02em;vertical-align:1px}
  .mk-vs__table td[data-col="swipet"] .mk-vs__who{background:var(--sage);border-color:var(--sage);color:var(--ink)}
}
.mk-more-row{margin:0}
.mk-more{display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:10px 20px;border-radius:999px;border:1px solid rgba(255,255,255,.5);
  background:transparent;color:#fff;font:inherit;font-size:14px;font-weight:700;line-height:1.3;text-align:left;cursor:pointer;
  transition:background-color .2s,color .2s}
.mk-more svg{width:18px;height:18px;flex:none;transition:transform .25s var(--ease)}
.mk-more__txt{display:grid;gap:2px}
.mk-more__txt small{font-size:13px;font-weight:400;opacity:.85}
.mk-more[aria-expanded=true] .mk-more__txt small{display:none}
.mk-more[aria-expanded=true] svg{transform:rotate(180deg)}
.mk-more:hover{background:#fff;color:var(--ink)}
.mk-more[hidden]{display:none}
@media(max-width:600px){.mk-more{border-radius:18px;width:100%;justify-content:space-between;padding:12px 18px}}
.mk-vs__note{margin:0;font-size:13.5px;line-height:1.5;color:#bdb9b2;max-width:900px}
.mk-vs__note a{color:#fff;text-decoration:underline;text-underline-offset:3px;display:inline-block;padding-block:12px;margin-block:-12px}
.mk-gana{margin-top:clamp(30px,4vw,44px);background:var(--sage);color:var(--ink);padding:24px 26px;display:grid;gap:8px;max-width:980px}
.mk-gana .mk-gana__t{font-size:clamp(20px,1vw + 15px,26px);color:var(--ink)}
.mk-gana p{margin:0;font-size:16.5px;line-height:1.55}
.mk-next{margin:22px 0 0}
.mk-next .text-link{color:#fff;min-height:44px;align-items:center;padding-bottom:0}
.mk-dark .cta-strip{border-color:var(--line-light);margin-top:clamp(40px,5vw,64px)}
.mk-dark .cta-strip p span{color:#bdb9b2}
.mk-dark .cta-strip .text-link{color:#fff}
@media(max-width:600px){
  .mk-gana{padding:20px 18px}
  .mk-dark .cta-strip{flex-direction:column;align-items:stretch;gap:14px;padding:22px 0}
  .mk-dark .cta-strip p{font-size:20px}
  .mk-dark .cta-strip .cta-row{flex-direction:column;align-items:stretch;gap:10px}
  .mk-dark .cta-strip .btn{width:100%;justify-content:space-between}
  .mk-dark .cta-strip .text-link{align-self:flex-start}
}

/* --- Cuánto te devolvería: cuatro facturas (2 x 2; en el móvil, carrusel) ----------------------------------------- */
@media(min-width:900px){.mk-bills .c-bills{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
.mk-bills .c-bill{padding:26px 28px}
.mk-bills__hint{display:none;margin:0 0 10px;font-size:13.5px;color:var(--muted)}
.mk-bills .c-bill__note{font-size:14.5px;line-height:1.45}
@media(max-width:600px){
  .mk-bills__hint{display:block}
  .mk-bills .c-bills{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:86%;gap:12px;align-items:stretch;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:8px}
  .mk-bills .c-bill{scroll-snap-align:start;padding:22px 18px}
  .mk-bills .c-bill .c-bill__t{font-size:20px;line-height:1.2}
  .mk-bills .c-bill__who{font-size:16px}
  .mk-bills .c-bill__pay{flex-direction:column;align-items:flex-end;gap:4px}
  .mk-bills .c-bill__note{font-size:16px;line-height:1.45}
  .mk-bills .c-bills__nota{font-size:13.5px;line-height:1.5}
  .mk-bills .c-bill__amt{font-size:16px}
}

/* --- Cuándo conviene ------------------------------------------------------------------------------------------- */
.mk-verd .c-verdict .c-verdict__t{font-size:clamp(22px,1vw + 16px,28px)}
.mk-verd .c-dots li{font-size:16px;line-height:1.5}
.mk-verd .c-verdict:first-child{background:#fff}
.mk-cta{margin-top:clamp(30px,4vw,44px)}
.mk-cta .text-link{min-height:44px;align-items:center;padding-bottom:0}
@media(max-width:600px){
  .mk-verd .c-verdict{padding:20px 18px 22px}
  .mk-verd .c-verdict .c-verdict__t{font-size:22px}
  .mk-verd .c-dots{gap:12px}
  .mk-cta{flex-direction:column;align-items:stretch;gap:12px}
  .mk-cta .btn{width:100%;justify-content:space-between}
  .mk-cta .text-link{align-self:flex-start}
}

/* --- Cambiarse: cuatro pasos ----------------------------------------------------------------------------------------- */
@media(min-width:1101px){.mk-steps4 .steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.mk-steps4 .step h3{font-size:21px}
.mk-steps4 .step p{font-size:15.5px;line-height:1.5}
@media(max-width:1100px) and (min-width:761px){
  .mk-steps4 .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .mk-steps4 .steps .step:nth-child(2){border-right:0}
  .mk-steps4 .steps .step:nth-child(3){padding-left:0}
  .mk-steps4 .steps .step:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
@media(max-width:760px){
  .mk-steps4 .steps .step,.mk-steps4 .steps .step+.step{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:16px;row-gap:4px;padding:18px 0}
  .mk-steps4 .step__n{display:none}
  .mk-steps4 .step__ico{grid-column:1;grid-row:1/span 2;width:44px;height:44px;margin:2px 0 0}
  .mk-steps4 .step__ico svg{width:20px;height:20px}
  .mk-steps4 .step h3{grid-column:2;margin:0;font-size:19px}
  .mk-steps4 .step p{grid-column:2;font-size:16px}
}
.mk-pendwrap{margin-top:24px}

/* --- Fuentes --------------------------------------------------------------------------------------------------------- */
.mk-met{list-style:none;margin:0 0 26px;padding:0;display:grid;gap:12px;max-width:900px}
.mk-met li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start;font-size:16px;line-height:1.5}
.mk-met svg{width:20px;height:20px;margin-top:2px}
@media(min-width:900px){.mk-met{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;max-width:none}}
.mk-src{border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.mk-src>summary{list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;min-height:56px;padding:12px 32px 12px 0;position:relative}
.mk-src>summary::-webkit-details-marker{display:none}
.mk-src>summary>span{font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.mk-src>summary>small{font-size:14px;line-height:1.4;color:var(--muted)}
.mk-src>summary>svg{position:absolute;right:0;top:50%;width:20px;height:20px;margin-top:-10px;transition:transform .25s var(--ease)}
.mk-src[open]>summary>svg{transform:rotate(180deg)}
.mk-src__list{margin:0;padding:0 0 18px 30px;columns:2 340px;column-gap:40px;font-size:14.5px;line-height:1.5;color:var(--muted)}
.mk-src__list li{padding:5px 0;break-inside:avoid;scroll-margin-top:8px}
.mk-src__list li::marker{color:var(--coral-ink);font-weight:700}
.mk-src__list a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.mk-src__list li:target{background:var(--mint);box-shadow:-8px 0 0 var(--mint),8px 0 0 var(--mint)}
.mk-src__mail{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;margin:22px 0 0;font-size:16px;line-height:1.5;color:var(--muted)}
.mk-src__mail svg{width:20px;height:20px;margin-top:2px;color:var(--ink)}
.mk-src__mail a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
@media(max-width:600px){.mk-src__list{padding-left:24px;font-size:16px}.mk-src__list li{padding:7px 0}}

/* Ayuda en una línea (pieza común) a 16 px en esta página */
@media(max-width:600px){.mk-sec .c-help--compact{font-size:16px}.mk-sec .c-help--compact .c-help__a{font-size:16px}}

/* --- Preguntas frecuentes y CTA final ------------------------------------------------------------------------------- */
@media(max-width:600px){
  .mk-sec .faq-layout{gap:28px}
  .mk-sec .faq-layout>.sec-head h2{font-size:30px}
  .mk-sec .faq summary{font-size:17px;padding:18px 0;min-height:56px}
  .mk-sec .faq__a{font-size:16px;line-height:1.55}
  .mk-final .final-cta{padding:60px var(--gutter) 64px}
  .mk-final .final-cta h2{font-size:32px;line-height:1.04}
  .mk-final .final-cta .lead{font-size:16.5px;margin:16px auto 24px}
}
@media(max-width:370px){.mk-final .final-cta h2{font-size:30px}.mk-sec .faq-layout>.sec-head h2{font-size:27px;letter-spacing:-.035em}}
/* 03/10/2026 · Integración: el html ya reserva la cabecera y la barra de secciones (scroll-padding), así que los saltos
   a fuentes, filas y secciones solo llevan 8 px más; antes la reserva iba doble y caían 100-150 px por debajo. */
/* Móviles bajos (360 × 640, iPhone SE o Safari con sus barras): hero compacto, como en SantéVet, para que el botón
   «Ver el precio de tu mascota» se vea entero sin bajar. */
@media(max-width:600px) and (max-height:700px){
  .hero--musky .hero-content{padding-top:20px;padding-bottom:24px}
  .hero--musky .hero-content .crumbs{margin-bottom:10px}
  .hero--musky .hero-content>.eyebrow{margin-bottom:10px}
  .hero--musky h1 .c-kicker{margin-bottom:8px;font-size:17px}
  .hero--musky .hero-lead{margin:12px 0 16px;font-size:16px}
}

/* --- Propio de Musky ----------------------------------------------------------------------------------------- */
/* Resumen: marca pequeña de «sale mejor» junto al dato (el icono no puede crecer a todo el ancho de la celda) */
.mk-sum__win{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-left:6px;
  vertical-align:-4px;border-radius:50%;background:var(--sage);color:var(--ink)}
.mk-sum__win svg{width:13px;height:13px;flex:none}
/* Trustpilot sin perfil: texto en lugar de nota */
.mk-op__score--none b{font-size:clamp(34px,8vw,48px);line-height:1.05}
/* Respaldo local de «Lo que no te cuentan» (solo si v2_comun_vs no está lista) */
.mk-lp{display:grid;gap:16px}
@media(min-width:900px){.mk-lp{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mk-lp__c{background:var(--paper,#fff);border:1px solid var(--line,#e6dfd6);border-radius:14px;padding:18px}
.mk-lp__c h3{font-size:19px;margin:0 0 8px}
.mk-lp__c p{font-size:16px}
.mk-lp__q{margin:10px 0;padding-left:12px;border-left:3px solid var(--coral);font-style:italic;font-size:16px}
.mk-lp__src{font-size:16px}


/* ---- 41_alt_petolo.css ---- */
/* V2 — /alternativa-a-petolo/ (v2_alt_petolo.py). Prefijo .pt- (y .hero--petolo). Móvil primero: 360-414 px.
   Lenguaje de Luis: líneas finas, tinta/papel/crema/salvia/menta, coral solo para la acción y las llamadas [n].
   Las piezas compartidas (.c-vs, .c-verdict, .c-bill, .faq, .final-cta…) no se tocan: solo se ajustan dentro de .pt-*. */

/* --- Comunes de la página ------------------------------------------------------------------------------------ */
.pt-nw{white-space:nowrap}
.pt-ref{font-size:12.5px;line-height:0;margin-left:2px;letter-spacing:0;font-weight:700}
.pt-ref+.pt-ref{margin-left:4px}
.pt-ref a{position:relative;color:var(--coral-ink);text-decoration:none}
.pt-ref a::after{content:"";position:absolute;inset:-14px -2px}           /* zona de toque mayor sin mover el texto */
.pt-ref a:hover{text-decoration:underline}
.sec-head .copy .pt-ref a{color:var(--coral-ink);border-bottom:0}   /* la entradilla subraya sus enlaces: las llamadas, no */
.pt-ext .arr{margin-left:4px}
/* sobre menta o salvia el coral oscuro no llega a 4,5:1: un tono más oscuro (6:1) */
.pt-card--si .pt-ref a,.pt-sw .pt-ref a,.pt-gana .pt-ref a,.pt-duo__i:first-child .pt-ref a{color:#9e2f28}
.pt-dark .pt-ref a,.pt-op__tp .pt-ref a{color:var(--coral)}
/* Anclas: que la cabecera y la subnavegación no tapen el titular */
/* (html ya reserva la cabecera con scroll-padding-top; en el móvil la subnavegación se esconde al bajar) */
.pt-sec-a[id]{scroll-margin-top:8px}
.pt-vs tr[id],.pt-src__list li{scroll-margin-top:8px}
.pt-h3{font-size:clamp(22px,1.4vw + 14px,28px);line-height:1.1;letter-spacing:-.025em;margin:0 0 18px}

/* Secciones: en el móvil, aire contenido (56-60 px) y titulares de 28-30 px que no se parten feo */
@media(max-width:600px){
  .pt-sec{padding-block:56px}
  .pt-sec .sec-head{margin-bottom:26px}
  .pt-sec .sec-head .eyebrow{margin-bottom:14px}
  .pt-sec .sec-head h2{font-size:30px;line-height:1.05;letter-spacing:-.03em}
  .pt-sec .sec-head .copy{margin-top:14px;font-size:17px;line-height:1.55}
  .pt-sec.comparison{padding-block:60px}
}
@media(max-width:370px){.pt-sec .sec-head h2{font-size:28px}}
/* Titulares sin palabras sueltas en la última línea («¿Cuánto cuesta / Barkibu?») */
.pt-sec h2,.pt-sum__h2,.pt-duo__i h2,.pt-final h2,.pt-gana__t,.pt-card h3,.pt-op__self h3{text-wrap:balance}

/* --- Hero --------------------------------------------------------------------------------------------------------- */
.hero--petolo h1{max-width:820px}
.hero--petolo h1 .c-kicker~.hero-h1-main{font-size:min(1em,66px)}
@media(max-width:900px){.hero--petolo .hero-content{padding-top:56px}}
@media(max-width:600px){
  /* foto más oscura de arriba abajo: el texto blanco se lee entero sobre la alfombra iluminada */
  .hero--petolo .hero-shade{background:linear-gradient(180deg,rgba(16,13,10,.66) 0%,rgba(16,13,10,.6) 45%,rgba(16,13,10,.84) 100%)}
  .hero--petolo .hero-content{padding-top:34px;padding-bottom:34px}
  .hero--petolo .hero-content .crumbs{margin-bottom:16px}
  .hero--petolo .hero-content>.eyebrow{margin-bottom:14px}
  .hero--petolo h1 .c-kicker{margin-bottom:10px;font-size:18px}
  .hero--petolo h1 .c-kicker~.hero-h1-main{font-size:36px;line-height:1.02;letter-spacing:-.035em}
  .hero--petolo .hero-lead{font-size:17px;line-height:1.5;margin:16px 0 22px}
  .hero--petolo .hero-actions{align-items:stretch;gap:14px}
  .hero--petolo .hero-actions .btn{width:100%;justify-content:space-between}
  .hero--petolo .hero-actions .text-link{align-self:flex-start;min-height:44px}
}
@media(max-width:370px){.hero--petolo h1 .c-kicker~.hero-h1-main{font-size:33px}}

/* --- Subnavegación: la común (05_global/07_integrador: toques de 44 px), sin ajustes propios ---------------------- */

/* --- Resumen rápido ---------------------------------------------------------------------------------------------- */
.pt-sum{padding-block:clamp(40px,5vw,64px) clamp(36px,4vw,56px);border-bottom:1px solid var(--line)}
.pt-sum__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 24px;margin-bottom:18px}
.pt-sum__eb{flex:1 1 100%;margin:0}
.pt-sum__h2{flex:1 1 auto;margin:0;font-size:clamp(26px,1.6vw + 18px,40px);line-height:1.04;letter-spacing:-.035em}
.pt-sum__date{margin:0;font-size:13px;line-height:1.45;color:var(--muted)}
.pt-sum__lead{max-width:880px;margin:0 0 26px;font-size:clamp(17px,.5vw + 15px,20px);line-height:1.5}
.pt-sum__table{width:100%;border-collapse:collapse;font-size:17px;line-height:1.38}
.pt-sum__table th,.pt-sum__table td{padding:15px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.pt-sum__table thead th{padding-top:6px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ink)}
.pt-sum__table thead th:last-child{color:#2f6b3a}
.pt-sum__table tbody th{font-size:15px;font-weight:700;width:22%;padding-left:0}
.pt-sum__table thead td{padding-left:0;width:22%}
.pt-sum__table thead th{width:39%}
.pt-sum__table td{width:39%}
.pt-sum__table tbody tr:last-child>*{border-bottom:0}
.pt-sum__go{margin:22px 0 0}
.pt-sum__go .text-link{min-height:44px;padding-bottom:6px;align-items:flex-end}
@media(max-width:640px){
  .pt-sum__lead{margin-bottom:18px}
  .pt-sum__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .pt-sum__table,.pt-sum__table tbody{display:block}
  .pt-sum__table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:16px;padding:13px 0 14px;border-bottom:1px solid var(--line)}
  .pt-sum__table tbody tr:last-child{border-bottom:0}
  .pt-sum__table th,.pt-sum__table td,.pt-sum__table tbody tr:last-child>*{padding:0;border:0;width:auto}
  .pt-sum__table tbody th{grid-column:1/-1;width:auto;margin-bottom:6px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase}
  .pt-sum__table td{font-size:16px;line-height:1.4}
  .pt-sum__table td::before{content:attr(data-label);display:block;margin-bottom:2px;font-size:12.5px;font-weight:700;color:var(--muted)}
  .pt-sum__table td[data-label="Swipet"]::before{color:#2f6b3a}
}

/* --- Opiniones de Barkibu ---------------------------------------------------------------------------------------- */
.pt-op{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:22px;align-items:stretch}
.pt-op__tp{background:var(--ink);color:#fff;padding:30px 32px 32px;display:grid;gap:12px;justify-items:start;align-content:start}
.pt-op__lbl{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.pt-op__lbl svg{width:18px;height:18px;color:#00b67a}
.pt-op__score{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:4px 0 0}
.pt-op__score b{font-size:clamp(56px,5vw,76px);letter-spacing:-.04em;line-height:1}
.pt-op__score span{font-size:18px;color:#d6d2cb}
.pt-op__date{margin:0;font-size:14px;line-height:1.5;color:#bdb9b2;max-width:440px}
.pt-op__btn{margin-top:10px;white-space:normal;text-align:left;gap:16px}
.pt-op__self{background:#fff;border:1px solid var(--line);padding:26px 28px;display:grid;align-content:center}
.pt-op__self h3,.pt-op__tips h3{font-size:21px;margin:0 0 10px}
.pt-op__self p{margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.pt-op__tips{grid-column:1/-1;background:#fff;border:1px solid var(--line);padding:26px 28px 14px}
.pt-op__tips .checks{margin:0}
.pt-op__tips>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}
.pt-op__tips>summary::-webkit-details-marker{display:none}
.pt-op__tips>summary h3{margin:0 0 10px}
.pt-op__tips>summary svg{display:none;width:20px;height:20px;flex:none;transition:transform .25s var(--ease)}
@media(min-width:700px){.pt-op__tips>summary{pointer-events:none}}
@media(max-width:699.98px){.pt-op__tips>summary{cursor:pointer;min-height:48px}.pt-op__tips>summary h3{margin:0}.pt-op__tips>summary svg{display:block}.pt-op__tips[open]>summary svg{transform:rotate(180deg)}.pt-op__tips[open]>summary{margin-bottom:6px}}
.pt-op__sw{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:28px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:16px}
.pt-op__sw .text-link{min-height:44px;align-items:center;padding-bottom:0}
@media(max-width:900px){.pt-op{grid-template-columns:minmax(0,1fr);gap:14px}.pt-op__tp{padding:26px 22px 28px}.pt-op__self,.pt-op__tips{padding:22px 20px}}
@media(max-width:600px){
  .pt-op__btn{width:100%;justify-content:space-between}
  .pt-op__tips .checks li{font-size:16px;padding:12px 0}
  .pt-op__tips{padding-bottom:8px}
}

/* --- Qué cubre: listas con desplegable y la caja de Swipet ------------------------------------------------------ */
.pt-lists{display:grid;gap:18px}
@media(min-width:900px){.pt-lists{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}}
.pt-card{padding:32px 34px 26px}
.pt-card--si{background:var(--mint)}
.pt-card--no{background:var(--cream)}
.pt-card h3{font-size:26px;margin:0 0 14px}
.pt-list{list-style:none;margin:0;padding:0;display:grid}
.pt-list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;align-items:start;padding:13px 0;border-top:1px solid var(--line);font-size:15.5px;line-height:1.5}
.pt-list li svg{width:28px;height:28px;padding:6px;border-radius:50%;background:#fff}
.pt-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;
  padding:10px 0;border-top:1px solid var(--line);font-size:16px;font-weight:700;line-height:1.3}
.pt-fold>summary::-webkit-details-marker{display:none}
.pt-fold>summary svg{width:20px;height:20px;flex:none;transition:transform .25s var(--ease)}
.pt-fold[open]>summary svg{transform:rotate(180deg)}
.pt-fold__o,.pt-fold[open] .pt-fold__c{display:none}
.pt-fold[open] .pt-fold__o{display:inline}
.pt-fold>summary:hover{text-decoration:underline;text-underline-offset:3px}
@media(min-width:700px){.pt-fold>summary{display:none}}
@media(max-width:600px){
  .pt-card{padding:22px 18px 10px}
  .pt-card h3{font-size:22px;margin-bottom:8px}
  .pt-list li{grid-template-columns:24px minmax(0,1fr);gap:12px;padding:12px 0;font-size:16px;line-height:1.48}
  .pt-list li svg{width:24px;height:24px;padding:5px}
}
.pt-sw{margin-top:22px;background:var(--sage);color:var(--ink);padding:28px 32px;display:grid;gap:14px}
.pt-sw__t{margin:0;font-size:clamp(22px,1vw + 16px,28px);font-weight:700;letter-spacing:-.025em;line-height:1.1}
.pt-sw__p{margin:0;font-size:17px;line-height:1.5;max-width:760px}
.pt-sw__g{display:grid;gap:8px}
.pt-sw__lbl{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.pt-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pt-chips li{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:7px 14px;border-radius:999px;border:1px dashed rgba(23,21,18,.55);
  font-size:15px;line-height:1.25}
.pt-chips li svg{width:16px;height:16px;flex:none}
.pt-chips--in li{background:#fff;border:1px solid #fff}
.pt-sw__links{display:flex;flex-wrap:wrap;gap:8px 28px;margin:4px 0 0}
.pt-sw__links .text-link{min-height:44px;align-items:center;padding-bottom:0}
@media(max-width:600px){.pt-sw{padding:22px 18px 14px;margin-top:18px;gap:12px}.pt-sw__p{font-size:16px}.pt-chips{gap:6px}.pt-chips li{min-height:36px;padding:6px 13px;font-size:15px}}

/* --- Carencias, lado a lado ------------------------------------------------------------------------------------ */
.pt-lado__table{width:100%;border-collapse:collapse}
.pt-lado__table caption{caption-side:top;text-align:left;font-size:14px;line-height:1.45;color:var(--muted);padding:0 0 12px}
.pt-lado__table th,.pt-lado__table td{text-align:left;vertical-align:top;padding:18px 18px 18px 0;border-bottom:1px solid var(--line)}
.pt-lado__table thead th{padding:0 18px 10px 0;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ink)}
.pt-lado__table thead th:last-child{color:#2f6b3a}
.pt-lado__table thead td{border-bottom:1px solid var(--ink);width:26%}
.pt-lado__table thead th{width:37%}
.pt-lado__table tbody th{width:26%;font-size:17px;font-weight:700;line-height:1.3}
.pt-lado__table td{width:37%}
.pt-lado__who{display:none}
/* 05/10/2026: sin nowrap (un valor largo hacía la tabla de 1.588 px y desbordaba la página en escritorio) */
.pt-lado__v{display:block;font-size:clamp(24px,1.2vw + 16px,32px);letter-spacing:-.03em;line-height:1.05;white-space:normal;overflow-wrap:break-word}
.pt-lado__v .pt-ref{font-size:12.5px}
.pt-lado__n{display:block;margin-top:6px;font-size:16px;line-height:1.45;color:var(--muted)}
.pt-lado__win{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:4px 11px 4px 8px;border-radius:999px;background:var(--sage);
  color:var(--ink);font-size:12.5px;font-weight:700;line-height:1.3}
.pt-lado__win svg{width:14px;height:14px;flex:none}
.pt-lado__table td.is-win .pt-lado__v{color:var(--ink)}
.pt-lado__table td:not(.is-win) .pt-lado__v{color:#57524b}
@media(max-width:700px){
  .pt-lado__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .pt-lado__table,.pt-lado__table tbody{display:block}
  .pt-lado__table caption{display:block}
  .pt-lado__table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:10px;row-gap:8px;padding:16px 0;border-bottom:1px solid var(--line)}
  .pt-lado__table th,.pt-lado__table td{padding:0;border:0;width:auto}
  .pt-lado__table tbody th{grid-column:1/-1;width:auto;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;line-height:1.35}
  .pt-lado__table tbody td{width:auto}
  .pt-lado__table td{background:#fff;padding:12px 12px 14px;display:flex;flex-direction:column;align-items:flex-start}
  .pt-lado__table td.is-win{box-shadow:inset 0 0 0 2px var(--sage)}
  .pt-lado__who{display:block;margin-bottom:4px;font-size:12.5px;font-weight:700;color:var(--muted)}
  .pt-lado__table td[data-col="swipet"] .pt-lado__who{color:#2f6b3a}
  .pt-lado__v{font-size:22px;white-space:normal}
  .pt-lado__n{font-size:16px;line-height:1.42}
  .pt-lado__win{margin-top:auto;padding-top:4px}
  .pt-lado__n+.pt-lado__win,.pt-lado__v+.pt-lado__win{margin-top:10px}
}
.pt-esp{margin-top:30px}
.pt-esp__t{margin:0 0 12px;font-size:16px;font-weight:700;line-height:1.4}
.pt-esp__chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pt-esp__chips li{display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;border-radius:999px;background:#fff;font-size:15px;line-height:1.25}
.pt-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;margin-top:30px;max-width:900px;background:#fff;padding:20px 22px;font-size:16px;line-height:1.55}
.pt-note p{margin:0 0 .7em}
.pt-note p:last-child{margin:0}
.pt-note__ico{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--mint)}
.pt-note__ico svg{width:18px;height:18px}
.pt-note--warn{background:var(--cream)}
.pt-note--warn .pt-note__ico{background:#fff}
@media(max-width:600px){.pt-note{grid-template-columns:30px minmax(0,1fr);gap:12px;padding:18px 16px;margin-top:24px}.pt-note__ico{width:30px;height:30px}.pt-note__ico svg{width:16px;height:16px}.pt-esp{margin-top:24px}}

/* --- Esterilización y precio (dos respuestas lado a lado) ---------------------------------------------------- */
.pt-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
.pt-duo__i{background:var(--mint);padding:clamp(28px,3.4vw,46px);display:grid;gap:16px;align-content:start;justify-items:start}
.pt-duo__i+.pt-duo__i{background:var(--cream)}
.pt-duo__i .eyebrow{margin:0}
.pt-duo__i h2{font-size:clamp(30px,2.6vw,42px);line-height:1.02;letter-spacing:-.035em}
.pt-duo__i p{margin:0}
.pt-duo__a{font-size:17px;line-height:1.55}
.pt-duo__warn{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;font-size:16px;line-height:1.5;color:var(--muted)}
.pt-duo__warn svg{width:20px;height:20px;margin-top:1px;color:var(--ink)}
.pt-duo__sw{font-size:17px;line-height:1.55;padding-top:14px;border-top:1px solid var(--line);width:100%}
.pt-duo__i .text-link{min-height:44px;align-items:center;padding-bottom:0}
.pt-dto{width:100%;background:#fff;padding:18px 20px}
.pt-dto__t{margin:0 0 8px!important;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.pt-dto ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pt-dto li{font-size:16px;line-height:1.5}
.pt-duo__cta{width:100%;display:grid;gap:8px;justify-items:start}
.pt-duo__fine{font-size:13.5px;line-height:1.45;color:var(--muted)}
@media(max-width:900px){.pt-duo{grid-template-columns:minmax(0,1fr);gap:14px}}
@media(max-width:600px){
  .pt-duo-band{padding-block:14px 56px}
  .pt-duo__i{padding:30px 18px 28px;gap:14px}
  .pt-duo__i h2{font-size:30px}
  .pt-duo__a,.pt-duo__sw{font-size:16.5px}
  .pt-duo__cta .btn{width:100%;justify-content:space-between}
  .pt-dto{padding:16px}
}
@media(max-width:370px){.pt-duo__i h2{font-size:28px}}

/* --- Barkibu o Swipet (bloque oscuro): tabla completa ----------------------------------------------------------- */
.pt-dark .comparison-head{margin-bottom:clamp(36px,4vw,60px)}
.pt-dark .comparison-head p{max-width:560px}
.pt-dark .comparison-head .pt-lectura{margin:0;font-size:13.5px;color:#a8a49d}
@media(max-width:600px){
  .pt-dark .comparison-head{gap:18px;margin-bottom:30px}
  .pt-dark .comparison-head .eyebrow{margin-bottom:14px}
  .pt-dark h2{font-size:30px;line-height:1.05}
  .pt-dark h2 .h2-lead{font-size:15px}
  .pt-dark .comparison-head p{margin-bottom:14px;font-size:16.5px;line-height:1.55}
}
/* a 360 px, «¿en qué se diferencian?» en una sola línea */
@media(max-width:370px){.pt-dark h2{font-size:27px;letter-spacing:-.035em}}
.pt-vs{display:grid;gap:16px}
.pt-vs .pending p{margin:0;font-size:13.5px;line-height:1.5;color:#e7e3dd}
.pt-vs__table{width:100%;border-collapse:collapse;font-size:15.5px;line-height:1.5}
.pt-vs__table caption{caption-side:top;text-align:left;font-size:13.5px;line-height:1.45;color:#bdb9b2;padding:0 0 12px}
.pt-vs__table th,.pt-vs__table td{padding:16px 16px 16px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--line-light)}
.pt-vs__table thead th{font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#fff;border-bottom:1px solid rgba(255,255,255,.5);white-space:nowrap}
.pt-vs__table thead th:last-child{color:var(--sage)}
.pt-vs__table tbody th{width:19%;color:#fff;font-weight:700;line-height:1.35}
.pt-vs__table td{width:40.5%;color:#e7e3dd}
.pt-vs__table td[data-col="swipet"]{color:#fff}
.pt-vs__table tr:target>*{background:#2c3328}
.pt-vs__who{display:none}
.pt-short tr.pt-extra{display:none}
@media(max-width:700px){
  .pt-vs__table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .pt-vs__table,.pt-vs__table tbody,.pt-vs__table tr,.pt-vs__table th,.pt-vs__table td{display:block;width:auto}
  .pt-vs__table caption{display:block}
  .pt-vs__table tbody tr{padding:16px 0 18px;border-bottom:1px solid var(--line-light)}
  .pt-vs__table th,.pt-vs__table td{padding:0;border:0}
  .pt-short tr.pt-extra{display:none}
  .pt-vs__table tbody th{width:auto;margin:0 0 10px;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase}
  .pt-vs__table tbody td{width:auto;font-size:16px;line-height:1.55}
  .pt-vs__table td+td{margin-top:10px}
  /* la etiqueta va en la misma línea que el texto: cada fila ocupa ~60 px menos en el móvil */
  .pt-vs__who{display:inline-flex;align-items:center;margin:0 8px 0 0;padding:2px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.4);
    font-size:12.5px;font-weight:700;line-height:1.3;color:#fff;letter-spacing:.02em;vertical-align:1px}
  .pt-vs__table td[data-col="swipet"] .pt-vs__who{background:var(--sage);border-color:var(--sage);color:var(--ink)}
}
.pt-more-row{margin:0}
.pt-more{display:inline-flex;align-items:center;gap:12px;min-height:48px;padding:10px 20px;border-radius:999px;border:1px solid rgba(255,255,255,.5);
  background:transparent;color:#fff;font:inherit;font-size:14px;font-weight:700;line-height:1.3;text-align:left;cursor:pointer;
  transition:background-color .2s,color .2s}
.pt-more svg{width:18px;height:18px;flex:none;transition:transform .25s var(--ease)}
.pt-more__txt{display:grid;gap:2px}
.pt-more__txt small{font-size:13px;font-weight:400;opacity:.85}
.pt-more[aria-expanded=true] .pt-more__txt small{display:none}
.pt-more[aria-expanded=true] svg{transform:rotate(180deg)}
.pt-more:hover{background:#fff;color:var(--ink)}
.pt-more[hidden]{display:none}
@media(max-width:600px){.pt-more{border-radius:18px;width:100%;justify-content:space-between;padding:12px 18px}}
.pt-vs__note{margin:0;font-size:13.5px;line-height:1.5;color:#bdb9b2;max-width:900px}
.pt-vs__note a{color:#fff;text-decoration:underline;text-underline-offset:3px;display:inline-block;padding-block:12px;margin-block:-12px}
.pt-gana{margin-top:clamp(30px,4vw,44px);background:var(--sage);color:var(--ink);padding:24px 26px;display:grid;gap:8px;max-width:980px}
.pt-gana .pt-gana__t{font-size:clamp(20px,1vw + 15px,26px);color:var(--ink)}
.pt-gana p{margin:0;font-size:16.5px;line-height:1.55}
.pt-next{margin:22px 0 0}
.pt-next .text-link{color:#fff;min-height:44px;align-items:center;padding-bottom:0}
.pt-dark .cta-strip{border-color:var(--line-light);margin-top:clamp(40px,5vw,64px)}
.pt-dark .cta-strip p span{color:#bdb9b2}
.pt-dark .cta-strip .text-link{color:#fff}
@media(max-width:600px){
  .pt-gana{padding:20px 18px}
  .pt-dark .cta-strip{flex-direction:column;align-items:stretch;gap:14px;padding:22px 0}
  .pt-dark .cta-strip p{font-size:20px}
  .pt-dark .cta-strip .cta-row{flex-direction:column;align-items:stretch;gap:10px}
  .pt-dark .cta-strip .btn{width:100%;justify-content:space-between}
  .pt-dark .cta-strip .text-link{align-self:flex-start}
}

/* --- Cuánto te devolvería: cuatro facturas (2 x 2; en el móvil, carrusel) ----------------------------------------- */
@media(min-width:900px){.pt-bills .c-bills{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
.pt-bills .c-bill{padding:26px 28px}
.pt-bills__hint{display:none;margin:0 0 10px;font-size:13.5px;color:var(--muted)}
.pt-bills .c-bill__note{font-size:14.5px;line-height:1.45}
@media(max-width:600px){
  .pt-bills__hint{display:block}
  .pt-bills .c-bills{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:86%;gap:12px;align-items:stretch;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:8px}
  .pt-bills .c-bill{scroll-snap-align:start;padding:22px 18px}
  .pt-bills .c-bill .c-bill__t{font-size:20px;line-height:1.2}
  .pt-bills .c-bill__who{font-size:16px}
  .pt-bills .c-bill__pay{flex-direction:column;align-items:flex-end;gap:4px}
  .pt-bills .c-bill__note{font-size:16px;line-height:1.45}
  .pt-bills .c-bills__nota{font-size:13.5px;line-height:1.5}
  .pt-bills .c-bill__amt{font-size:16px}
}

/* --- Cuándo conviene ------------------------------------------------------------------------------------------- */
.pt-verd .c-verdict .c-verdict__t{font-size:clamp(22px,1vw + 16px,28px)}
.pt-verd .c-dots li{font-size:16px;line-height:1.5}
.pt-verd .c-verdict:first-child{background:#fff}
.pt-cta{margin-top:clamp(30px,4vw,44px)}
.pt-cta .text-link{min-height:44px;align-items:center;padding-bottom:0}
@media(max-width:600px){
  .pt-verd .c-verdict{padding:20px 18px 22px}
  .pt-verd .c-verdict .c-verdict__t{font-size:22px}
  .pt-verd .c-dots{gap:12px}
  .pt-cta{flex-direction:column;align-items:stretch;gap:12px}
  .pt-cta .btn{width:100%;justify-content:space-between}
  .pt-cta .text-link{align-self:flex-start}
}

/* --- Cambiarse: cuatro pasos ----------------------------------------------------------------------------------------- */
@media(min-width:1101px){.pt-steps4 .steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.pt-steps4 .step h3{font-size:21px}
.pt-steps4 .step p{font-size:15.5px;line-height:1.5}
@media(max-width:1100px) and (min-width:761px){
  .pt-steps4 .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pt-steps4 .steps .step:nth-child(2){border-right:0}
  .pt-steps4 .steps .step:nth-child(3){padding-left:0}
  .pt-steps4 .steps .step:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
@media(max-width:760px){
  .pt-steps4 .steps .step,.pt-steps4 .steps .step+.step{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:16px;row-gap:4px;padding:18px 0}
  .pt-steps4 .step__n{display:none}
  .pt-steps4 .step__ico{grid-column:1;grid-row:1/span 2;width:44px;height:44px;margin:2px 0 0}
  .pt-steps4 .step__ico svg{width:20px;height:20px}
  .pt-steps4 .step h3{grid-column:2;margin:0;font-size:19px}
  .pt-steps4 .step p{grid-column:2;font-size:16px}
}
.pt-pendwrap{margin-top:24px}

/* --- Fuentes --------------------------------------------------------------------------------------------------------- */
.pt-met{list-style:none;margin:0 0 26px;padding:0;display:grid;gap:12px;max-width:900px}
.pt-met li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:start;font-size:16px;line-height:1.5}
.pt-met svg{width:20px;height:20px;margin-top:2px}
@media(min-width:900px){.pt-met{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;max-width:none}}
.pt-src{border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.pt-src>summary{list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;min-height:56px;padding:12px 32px 12px 0;position:relative}
.pt-src>summary::-webkit-details-marker{display:none}
.pt-src>summary>span{font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.pt-src>summary>small{font-size:14px;line-height:1.4;color:var(--muted)}
.pt-src>summary>svg{position:absolute;right:0;top:50%;width:20px;height:20px;margin-top:-10px;transition:transform .25s var(--ease)}
.pt-src[open]>summary>svg{transform:rotate(180deg)}
.pt-src__list{margin:0;padding:0 0 18px 30px;columns:2 340px;column-gap:40px;font-size:14.5px;line-height:1.5;color:var(--muted)}
.pt-src__list li{padding:5px 0;break-inside:avoid;scroll-margin-top:8px}
.pt-src__list li::marker{color:var(--coral-ink);font-weight:700}
.pt-src__list a{color:var(--ink);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.pt-src__list li:target{background:var(--mint);box-shadow:-8px 0 0 var(--mint),8px 0 0 var(--mint)}
.pt-src__mail{display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;margin:22px 0 0;font-size:16px;line-height:1.5;color:var(--muted)}
.pt-src__mail svg{width:20px;height:20px;margin-top:2px;color:var(--ink)}
.pt-src__mail a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
@media(max-width:600px){.pt-src__list{padding-left:24px;font-size:16px}.pt-src__list li{padding:7px 0}}

/* Ayuda en una línea (pieza común) a 16 px en esta página */
@media(max-width:600px){.pt-sec .c-help--compact{font-size:16px}.pt-sec .c-help--compact .c-help__a{font-size:16px}}

/* --- Preguntas frecuentes y CTA final ------------------------------------------------------------------------------- */
@media(max-width:600px){
  .pt-sec .faq-layout{gap:28px}
  .pt-sec .faq-layout>.sec-head h2{font-size:30px}
  .pt-sec .faq summary{font-size:17px;padding:18px 0;min-height:56px}
  .pt-sec .faq__a{font-size:16px;line-height:1.55}
  .pt-final .final-cta{padding:60px var(--gutter) 64px}
  .pt-final .final-cta h2{font-size:32px;line-height:1.04}
  .pt-final .final-cta .lead{font-size:16.5px;margin:16px auto 24px}
}
@media(max-width:370px){.pt-final .final-cta h2{font-size:30px}.pt-sec .faq-layout>.sec-head h2{font-size:27px;letter-spacing:-.035em}}
/* 03/10/2026 · Integración: el html ya reserva la cabecera y la barra de secciones (scroll-padding), así que los saltos
   a fuentes, filas y secciones solo llevan 8 px más; antes la reserva iba doble y caían 100-150 px por debajo. */
/* Móviles bajos (360 × 640, iPhone SE o Safari con sus barras): hero compacto, como en SantéVet, para que el botón
   «Ver el precio de tu mascota» se vea entero sin bajar. */
@media(max-width:600px) and (max-height:700px){
  .hero--petolo .hero-content{padding-top:20px;padding-bottom:24px}
  .hero--petolo .hero-content .crumbs{margin-bottom:10px}
  .hero--petolo .hero-content>.eyebrow{margin-bottom:10px}
  .hero--petolo h1 .c-kicker{margin-bottom:8px;font-size:17px}
  .hero--petolo .hero-lead{margin:12px 0 16px;font-size:16px}
}

/* --- Propio de Petolo: en el resumen, la celda del que sale mejor, con un filete salvia --------------------------- */
.pt-sum__table td.is-win{box-shadow:inset 3px 0 0 var(--sage)}
.pt-src__list li>span:first-child{color:inherit}
.pt-vs .cvs,.pt-gana>*{max-width:100%}
.pt-lim{margin-top:22px}
.pt-lim>summary{color:#fff}
.pt-lim>summary svg{stroke:currentColor}

/* 05/10/2026 (noche): el bote de prevención de Petolo, en gris (como el «bono» de la comparativa común): no es una
   cobertura, es un saldo que compartes con todo */
.pt-bono{display:inline-flex;align-items:center;gap:8px;margin:0 0 6px;padding:2px 12px;border-radius:12px;background:#e9e7e3;color:#4d4943;font-size:16px;font-weight:700;line-height:1.35}
.pt-bono__dot{width:9px;height:9px;border-radius:50%;border:1.5px dashed #6b665f;background:#f4f2ef;flex:none}
.pt-sum__table td .pt-bono{display:flex;width:max-content;max-width:100%}
/* Enlaces a lo que cuesta esterilizar dentro de las celdas de content/vs/petolo.json (se ven también en la portada y en
   /comparativas-con-swipet/): en línea con el texto, con la zona de toque ampliada hacia arriba y abajo (44 px) */
.pt-coste{display:inline;color:inherit;text-decoration:underline;text-underline-offset:2px;padding-block:12px}
.pt-coste:hover{text-decoration-thickness:2px}


/* ---- 41_alt_petplan.css ---- */
/* V2 — /alternativa-a-petplan/ (v2_alt_petplan.py). Todo bajo el contenedor .pp de la página; clases propias .pp-.
   Móvil primero (360-414 px): H1 de 32-40 px, H2 de 26-32 px, texto de lectura >= 16 px, secciones de unos 60 px,
   toques >= 44 px, tablas apiladas (sin desplazamiento lateral) y lo largo plegado en <details>.
   Las piezas compartidas (.hero, .sec-head, .comparison, .c-bill, .c-verdict, .faq, .final-cta…) solo se ajustan aquí
   dentro de .pp: no cambian en otras páginas. */

/* --- Generales --------------------------------------------------------------------------------------------- */
.pp{overflow-wrap:break-word}
.pp-nw{white-space:nowrap}
.pp-ext .arr{margin-left:4px}
.pp tr[id],.pp-src__list li,.pp-more{scroll-margin-top:8px} /* 03/10/2026: el html ya reserva la cabecera y la subnavegación */
/* Llamadas [n]: zona táctil de 44 px de alto (la común, 04_prueba.css, se queda en 40) y, si van seguidas ([2][9]),
   separadas lo justo para que la de la derecha no tape a la de la izquierda (cada una, 24 px de ancho como mínimo) */
.pp .c-vs__ref a::after{inset:-14px -4px}
.pp .c-vs__ref+.c-vs__ref{margin-left:8px}
/* Bloques «pendiente» (solo en la vista local): el contorno discontinuo no pisa lo que viene después */
.pp .pending{margin-block:14px 30px}
.pp-h3{font-size:clamp(24px,1.6vw + 16px,32px);line-height:1.08;letter-spacing:-.03em;margin:0 0 20px}
.pp-note{display:flex;gap:14px;align-items:flex-start;margin:30px 0 0;max-width:860px;font-size:16px;line-height:1.55;color:var(--ink)}
.pp-note>svg{width:22px;height:22px;flex:none;margin-top:1px;color:var(--coral-ink)}
.pp-pendwrap{margin-top:26px}
.pp-cta{margin-top:clamp(30px,4vw,48px)}

/* --- Hero (foto de Luis a sangre; en móvil, titular de 32-38 px y botón a todo el ancho) ------------------- */
.hero--petplan h1{max-width:800px}
.hero--petplan h1 .c-kicker~.hero-h1-main{font-size:min(1em,62px)}

/* --- Resumen rápido bajo el hero ------------------------------------------------------------------------------ */
.pp-sum{padding-block:clamp(44px,3vw + 30px,76px);border-bottom:1px solid var(--line)}
.pp-sum__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 28px;margin-bottom:16px}
.pp-sum__t{margin:0;font-size:clamp(26px,1.4vw + 20px,40px);line-height:1.05;letter-spacing:-.035em}
.pp-sum__date{margin:0;font-size:13.5px;line-height:1.45;color:var(--muted)}
.pp-sum__lead{margin:0 0 26px;max-width:860px;font-size:18px;line-height:1.55;color:var(--muted)}
.pp-sum__more{margin:24px 0 0}

/* --- Tabla Petplan / Swipet: tres columnas en escritorio; en móvil, cada fila apilada ------------------------- */
.pp-t-wrap{position:relative}
.pp-t{width:100%;border-collapse:collapse;table-layout:fixed;font-size:16px;line-height:1.45;color:inherit}
.pp-t caption{caption-side:top;text-align:left;font-size:13.5px;line-height:1.45;color:var(--muted);padding:0 0 12px}
.pp-t__c1{width:24%}
.pp-t th,.pp-t td{padding:15px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.pp-t thead th{padding-top:6px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ink)}
.pp-t thead th:first-child,.pp-t tbody th{padding-left:0}
.pp-t tbody th{font-size:16px;font-weight:700;line-height:1.35}
.pp-t thead .pp-t__us{color:#2f6b3a}
.pp-t td.pp-t__us{background:rgba(201,221,184,.3)}
.pp-t tbody tr:last-child>*{border-bottom:0}
.pp-t .c-vs__ref{font-size:12.5px}
.pp-t-wrap--full .pp-t{margin-bottom:6px}
/* Fondo oscuro (la comparativa completa) */
.pp-dark .pp-t th,.pp-dark .pp-t td{border-color:var(--line-light)}
.pp-dark .pp-t thead th{color:#fff;border-bottom-color:rgba(255,255,255,.5)}
.pp-dark .pp-t thead .pp-t__us{color:var(--sage)}
.pp-dark .pp-t td.pp-t__us{background:rgba(201,221,184,.1)}
.pp-dark .pp-t caption{color:#bdb9b2}
.pp-dark .pp-t tr:target>*{background:#2c3328}
@media(max-width:700px){
  .pp-t,.pp-t tbody,.pp-t caption{display:block}
  .pp-t colgroup{display:none}
  .pp-t thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .pp-t tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:12px;row-gap:8px;padding:16px 0;border-bottom:1px solid var(--line)}
  .pp-t tbody tr:last-child{border-bottom:0}
  .pp-t th,.pp-t td,.pp-t tbody tr:last-child>*{display:block;padding:0;border:0}
  /* El dato de cada fila, legible (16 px, sin versalitas); el nombre de cada seguro, como etiqueta pequeña */
  .pp-t tbody th{grid-column:1/-1;font-size:16px;letter-spacing:-.005em;line-height:1.3}
  .pp-t td{padding-left:11px;border-left:3px solid var(--line);font-size:16px;line-height:1.42}
  .pp-t td.pp-t__us{background:none;border-left-color:var(--sage)}
  .pp-t td::before{content:attr(data-label);display:block;margin-bottom:3px;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
  .pp-t caption{font-size:14px}
  .pp-t td.pp-t__us::before{color:#2f6b3a}
  .pp-dark .pp-t tr{border-color:var(--line-light)}
  .pp-dark .pp-t td{border-left-color:rgba(255,255,255,.28)}
  .pp-dark .pp-t td.pp-t__us{background:none;border-left-color:var(--sage)}
  .pp-dark .pp-t td::before{color:#bdb9b2}
  .pp-dark .pp-t td.pp-t__us::before{color:var(--sage)}
}

/* Filas plegadas de la tabla completa («Ver N filas más») */
.pp-more{margin-top:14px}
.pp-more>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;
  padding:12px 22px;border:1px solid var(--ink);border-radius:20px;font-size:15px;font-weight:700;line-height:1.3;transition:background-color .2s,color .2s}
.pp-more>summary::-webkit-details-marker{display:none}
.pp-more>summary svg{width:20px;height:20px;flex:none;transition:transform .25s var(--ease)}
.pp-more[open]>summary svg{transform:rotate(180deg)}
.pp-more__txt{display:grid;gap:3px}
.pp-more__txt small{font-size:13.5px;font-weight:400;opacity:.85}
.pp-more[open] .pp-more__txt small{display:none}
.pp-more[open]>summary{margin-bottom:18px}
.pp-more>summary:hover{background:var(--ink);color:#fff}
.pp-dark .pp-more>summary{border-color:rgba(255,255,255,.5);color:#fff}
.pp-dark .pp-more>summary:hover{background:#fff;color:var(--ink)}
.pp-t-note{margin:18px 0 0;max-width:900px;font-size:13.5px;line-height:1.5;color:var(--muted)}
.pp-dark .pp-t-note{color:#bdb9b2}
.pp-legal{margin:0;font-size:13px}

/* «Dónde gana Petplan» (salvia) y fuentes plegadas */
.pp-gana{margin-top:26px;background:var(--sage);color:var(--ink);padding:24px 26px}
.pp-dark .pp-gana__t,.pp-gana__t{margin:0 0 12px;font-size:clamp(20px,1vw + 14px,24px);color:var(--ink)}
.pp-gana__list{list-style:none;margin:0;padding:0;display:grid;gap:10px 34px}
@media(min-width:900px){.pp-gana__list{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.pp-gana__list li{position:relative;padding-left:20px;font-size:16px;line-height:1.5}
.pp-gana__list li::before{content:"";position:absolute;left:2px;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--ink)}
.pp-dark .pp-gana .c-vs__ref a{color:#7d241e}
.pp-src{margin-top:26px;border-top:1px solid var(--line)}
.pp-src>summary{list-style:none;cursor:pointer;position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;min-height:58px;padding:12px 36px 12px 0}
.pp-src>summary::-webkit-details-marker{display:none}
.pp-src__t{font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.pp-src>summary small{font-size:14px;color:var(--muted)}
.pp-src>summary svg{position:absolute;right:4px;top:50%;width:20px;height:20px;margin-top:-10px;transition:transform .25s var(--ease)}
.pp-src[open]>summary svg{transform:rotate(180deg)}
/* Cada fuente: el enlace como bloque de 44 px de alto como mínimo y la fecha debajo */
.pp-src__list{margin:0;padding:0 0 10px 26px;font-size:16px;line-height:1.4;color:var(--muted)}
.pp-src__list li{padding:0 0 8px}
.pp-src__list li:target{background:var(--mint)}
.pp-src__a{display:block;min-height:44px;padding:11px 0 2px;color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.pp-src__a .arr{margin-left:4px}
.pp-src__d{display:block;font-size:14px}
/* Con ratón (escritorio), más compacta: la fecha en la misma línea que el enlace */
@media(hover:hover) and (pointer:fine) and (min-width:761px){
  .pp-src__list li{padding:6px 0}
  .pp-src__a{display:inline;min-height:0;padding:0}
  .pp-src__d{display:inline;margin-left:10px}
}
.pp-dark .pp-src{border-color:var(--line-light)}
.pp-dark .pp-src>summary{color:#fff}
.pp-dark .pp-src>summary small,.pp-dark .pp-src__list{color:#bdb9b2}
.pp-dark .pp-src__a{color:#fff}
.pp-dark .pp-src__list li:target{background:rgba(255,255,255,.12)}

/* Bloque oscuro de la comparativa */
.pp-dark .comparison-head{margin-bottom:clamp(30px,4vw,64px)}
.pp-dark .comparison-head p{max-width:580px}
.pp-dark .comparison-head .pp-lectura{margin:0;font-size:13.5px;color:#9d9992}
.pp-dark .cta-strip{border-color:var(--line-light);margin-top:clamp(40px,5vw,72px)}
.pp-dark .cta-strip p span{color:#bdb9b2}
.pp-dark .cta-strip .text-link{color:#fff}
.pp-dark .c-help--compact{color:#bdb9b2}

/* --- Opiniones de Petplan ----------------------------------------------------------------------------------- */
.pp-op{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:22px;align-items:stretch}
.pp-op__tp{background:var(--ink);color:#fff;padding:30px 32px 32px;display:grid;gap:12px;justify-items:start;align-content:start}
.pp-op__lbl{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.pp-op__lbl svg{width:18px;height:18px;color:#00b67a}
.pp-op__score{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:4px 0 0}
.pp-op__score b{font-size:clamp(52px,5vw,72px);letter-spacing:-.04em;line-height:1}
.pp-op__score span{font-size:17px;color:#d6d2cb}
.pp-op__date{margin:0;max-width:440px;font-size:14px;line-height:1.5;color:#bdb9b2}
.pp-op__btn{margin-top:10px;white-space:normal;text-align:left;gap:16px}
.pp-op__self{background:#fff;border:1px solid var(--line);padding:26px 28px;display:grid;align-content:center}
.pp-op__self h3,.pp-op__tips h3{margin:0 0 10px;font-size:20px}
.pp-op__self p{margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.pp-op__tips{grid-column:1/-1;background:#fff;border:1px solid var(--line);padding:26px 28px 14px}
.pp-op__tips .checks{margin:0}
.pp-op__tips .checks li{font-size:16px}
.pp-op__sw{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:28px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:16px}
.pp-op__sw .text-link{min-height:44px}
@media(max-width:900px){
  .pp-op{grid-template-columns:minmax(0,1fr);gap:14px}
  .pp-op__tp{padding:24px 20px 26px}
  .pp-op__self,.pp-op__tips{padding:22px 20px}
  .pp-op__tips{padding-bottom:8px}
  .pp-op__btn{width:100%;justify-content:space-between}
}

/* --- Qué cubre Petplan: dos listas (lo que no cabe, plegado) y sus esperas ----------------------------------- */
.pp-lists{display:grid;gap:16px}
@media(min-width:900px){.pp-lists{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}}
.pp-card{padding:30px 32px 18px}
.pp-card--si{background:var(--mint)}
.pp-card--no{background:var(--cream)}
.pp-card h3{margin:0 0 14px;font-size:clamp(22px,1vw + 16px,26px)}
.pp-list{list-style:none;margin:0;padding:0}
.pp-list li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;align-items:start;padding:12px 0;border-top:1px solid var(--line);font-size:16px;line-height:1.5}
.pp-list li svg{width:26px;height:26px;padding:6px;border-radius:50%;background:#fff}
.pp-card--si .c-vs__ref a{color:#9e2f28}
.pp-list__more{border-top:1px solid var(--line)}
.pp-list__more>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:6px 0;font-size:15px;font-weight:700}
.pp-list__more>summary::-webkit-details-marker{display:none}
.pp-list__more>summary svg{width:20px;height:20px;flex:none;transition:transform .25s var(--ease)}
.pp-list__more[open]>summary svg{transform:rotate(180deg)}
.pp-list__more-t{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.pp-list__more[open]>summary{display:none}
.pp-car{margin-top:clamp(48px,6vw,84px)}
.pp-tl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.pp-tl li{padding:26px 26px 10px 0;border-right:1px solid var(--line)}
.pp-tl li+li{padding-left:26px}
.pp-tl li:last-child{border-right:0}
.pp-tl__d{display:block;margin-bottom:14px;font-size:clamp(36px,3.2vw,52px);font-weight:700;letter-spacing:-.04em;line-height:1}
.pp-tl h4{margin:0 0 8px}
.pp-tl p{margin:0;font-size:16px;line-height:1.5;color:var(--muted)}
.pp-vsw{margin:26px 0 0;max-width:900px;background:var(--mint);padding:18px 22px;font-size:16px;line-height:1.55}
.pp-src-line{margin:22px 0 0;font-size:15px;line-height:1.5;color:var(--muted)}
/* Enlaces de 44 px de alto como mínimo (cada uno es una caja en línea; se parte por dentro si no cabe) */
.pp-src-line a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);text-decoration:underline;text-underline-offset:3px}

/* --- Facturas comparadas: rejilla en escritorio; en móvil, se deslizan --------------------------------------- */
.pp-bills__hint{display:none;margin:0 0 10px;font-size:13.5px;color:var(--muted)}
@media(min-width:1000px){.pp-bills .c-bills{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
.pp-bills .c-bill{padding:24px 26px}
.pp-bills .c-bill__who{font-size:16px}
.pp-bills .c-bill__note{font-size:15px;line-height:1.45}

/* --- Cambiarse: cuatro pasos ---------------------------------------------------------------------------------- */
@media(min-width:1101px){.pp-steps .steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.pp-steps .step h3{font-size:21px}
.pp-steps .step p{font-size:16px;line-height:1.5}
@media(max-width:1100px) and (min-width:761px){
  .pp-steps .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pp-steps .steps .step:nth-child(2){border-right:0}
  .pp-steps .steps .step:nth-child(3){padding-left:0}
  .pp-steps .steps .step:nth-child(-n+2){border-bottom:1px solid var(--line)}
}

/* --- Veredictos y preguntas ----------------------------------------------------------------------------------- */
.pp .c-verdict .c-verdict__t{font-size:clamp(22px,1vw + 16px,28px)}
.pp .c-verdict .c-dots li{font-size:16px;line-height:1.5}

/* ================================== Móvil (<= 760 px) ================================== */
@media(max-width:760px){
  .pp-steps .steps .step,.pp-steps .steps .step+.step{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:16px;row-gap:4px;padding:18px 0}
  .pp-steps .step__n{display:none}
  .pp-steps .step__ico{grid-column:1;grid-row:1/span 2;width:44px;height:44px;margin:2px 0 0}
  .pp-steps .step__ico svg{width:20px;height:20px}
  .pp-steps .step h3{grid-column:2;margin:0;font-size:19px}
  .pp-steps .step p{grid-column:2}
  .pp-tl{grid-template-columns:minmax(0,1fr)}
  .pp-tl li,.pp-tl li+li{display:grid;grid-template-columns:100px minmax(0,1fr);column-gap:12px;padding:16px 0;border-right:0;border-bottom:1px solid var(--line)}
  .pp-tl li>*{grid-column:2}
  /* «Día 15» no se parte (espacio no separable); «12 meses» sí, en dos líneas, para no pisar el título */
  .pp-tl li>.pp-tl__d{grid-column:1;grid-row:1/span 2;margin:0;font-size:26px;line-height:1.05}
  .pp-tl h4{font-size:17px;margin-bottom:4px}
  .pp-vsw{padding:16px 18px}
  /* Facturas: carrusel a sangre (la siguiente asoma por la derecha) */
  .pp-bills__hint{display:block}
  .pp-bills .c-bills{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:86%;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;margin-inline:calc(-1 * var(--gutter));
    padding:0 var(--gutter) 8px;scroll-padding-inline:var(--gutter)}
  .pp-bills .c-bill{scroll-snap-align:start;padding:22px 18px}
  .pp-bills .c-bill__pay{flex-direction:column;align-items:flex-end;gap:4px}
}

/* ================================== Móvil (<= 600 px): tipografía y ritmo ================================== */
@media(max-width:600px){
  .pp .section,.pp .comparison{padding-block:60px}
  .pp .final-cta{padding:60px var(--gutter)}
  .pp .sec-head{margin-bottom:28px}
  .pp .sec-head .eyebrow,.pp .comparison .eyebrow{margin-bottom:14px}
  .pp .sec-head .copy{margin-top:16px;font-size:17px;line-height:1.55}
  .pp .sec-head h2,.pp .comparison h2,.pp .faq-layout>.sec-head h2,.pp .final-cta h2{font-size:clamp(26px,6.2vw + 4px,30px);line-height:1.08;letter-spacing:-.03em}
  .pp .sec-head h2 .h2-lead,.pp .comparison h2 .h2-lead{font-size:15px}
  .pp .faq-layout{gap:30px}
  .pp .final-cta .lead{font-size:17px;margin:16px auto 26px}
  /* Hero */
  .pp .hero--petplan .hero-content{padding-top:34px;padding-bottom:34px}
  .pp .hero--petplan .crumbs{margin-bottom:16px}
  .pp .hero--petplan .hero-content>.eyebrow{margin-bottom:14px}
  .pp .hero--petplan h1{font-size:clamp(32px,8vw + 4px,38px);line-height:1.03;letter-spacing:-.035em}
  .pp .hero--petplan h1 .c-kicker{margin-bottom:12px;font-size:19px}
  .pp .hero--petplan .hero-lead{margin:18px 0 24px;font-size:17px;line-height:1.5}
  .pp .hero--petplan .hero-actions{align-items:stretch;gap:14px}
  .pp .hero--petplan .hero-actions .btn{width:100%;justify-content:space-between}
  .pp .hero--petplan .hero-actions .text-link{align-self:flex-start;min-height:44px}
  /* Resumen */
  .pp-sum{padding-block:44px 40px}
  .pp-sum__t{font-size:clamp(26px,6.2vw + 4px,30px);line-height:1.08}
  .pp-sum__lead{font-size:16.5px;margin-bottom:18px}
  .pp-sum__more .text-link{min-height:44px}
  /* Bloque oscuro */
  .pp-dark .comparison-head{gap:14px}
  .pp-dark .comparison-head p{font-size:16.5px;margin-bottom:14px}
  .pp-gana{padding:20px 18px}
  .pp-more>summary{padding:12px 18px;border-radius:16px}
  .pp-dark .cta-strip{margin-top:36px}
  .pp .cta-strip p{font-size:19px}
  .pp .cta-strip .cta-row{width:100%;gap:10px}
  .pp .cta-strip .btn,.pp .pp-cta .btn{width:100%;justify-content:space-between}
  .pp .pp-cta{flex-direction:column;align-items:stretch;gap:16px}
  .pp .pp-cta .text-link{align-self:flex-start;min-height:44px}
  /* Listas, opiniones y veredictos */
  .pp-card{padding:22px 18px 10px}
  .pp-list li{grid-template-columns:24px minmax(0,1fr);gap:12px;padding:11px 0}
  .pp-list li svg{width:24px;height:24px;padding:5px}
  .pp-op__score b{font-size:56px}
  .pp-op__sw{margin-top:22px}
  .pp .c-verdict{padding:22px 20px}
  .pp .c-verdict .c-verdict__t{font-size:22px}
  .pp .faq summary{padding:18px 0}
  /* Texto de lectura a 16 px en el móvil (botones, enlaces, facturas, ayuda y también las notas y avisos); solo las
     etiquetas, las fechas de consulta, las migas y los antetítulos del diseño se quedan en 12-14 px */
  .pp .btn{font-size:15px;white-space:normal;text-align:left;gap:12px;padding-inline:22px} /* 15 px, como en todas las páginas */
  .pp .text-link{font-size:16px}
  .pp-sum__date{font-size:14px}
  .pp-t-note,.pp-dark .comparison-head .pp-lectura,.pp .c-bills__nota,.pp .c-verdicts__nota,.pp-src-line{font-size:16px;line-height:1.5}
  .pp-op__date{font-size:16px}
  .pp-more>summary{font-size:16px}
  .pp-more__txt small{font-size:14px}
  .pp-list__more>summary{font-size:16px}
  .pp-bills__hint{font-size:14px}
  .pp-bills .c-bill__amt,.pp-bills .c-bill__who,.pp-bills .c-bill__pay,.pp-bills .c-bill__note{font-size:16px}
  .pp .c-help--compact,.pp .c-help--compact .c-help__a,.pp .c-help--compact .c-help__h{font-size:16px}
  .pp .c-final__need{font-size:16px}
}
@media(max-width:374px){
  .pp-t tr{column-gap:10px}
  .pp-t td{padding-left:9px}
  .pp-tl li,.pp-tl li+li{grid-template-columns:88px minmax(0,1fr)}
  .pp-tl li>.pp-tl__d{font-size:23px}
}

/* --- «Lo que no te cuentan» (05/10/2026): tarjetas propias mientras la pieza común (v2_comun_vs) no esté lista ------
   Una columna en el móvil; dos desde 900 px. Texto de lectura a 16-17 px; la cita literal, en un bloque con filete. */
.pp-lp{list-style:none;margin:clamp(22px,3vw,36px) 0 0;padding:0;display:grid;gap:16px;counter-reset:none}
@media(min-width:900px){.pp-lp{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}}
.pp-lp__card{position:relative;background:#fff;border:1px solid var(--line);border-top:4px solid var(--coral-ink);padding:22px 22px 18px;display:grid;align-content:start;gap:10px;min-width:0}
.pp-lp__n{font-size:14px;font-weight:700;letter-spacing:.14em;color:var(--coral-ink)}
.pp-lp__h{margin:0;font-size:clamp(20px,.8vw + 16px,24px);line-height:1.15;letter-spacing:-.02em}
.pp-lp__txt{margin:0;font-size:17px;line-height:1.55;color:var(--ink)}
.pp-lp__cita{margin:4px 0 0;padding:10px 0 10px 14px;border-left:3px solid var(--line);color:var(--muted)}
.pp-lp__cita p{margin:0;font-size:16px;line-height:1.5;font-style:italic}
.pp-lp__src{margin:0;font-size:16px;line-height:1.5;color:var(--muted)}
.pp-lp__src>span{font-weight:700;color:var(--ink)}
.pp-lp__src a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){
  .pp-lp__card{padding:20px 18px 14px}
}


/* ---- 41_alt_santevet.css ---- */
/* V2 — /alternativa-a-santevet/ (v2_alt_santevet.py). Todo dentro de .sv-page; clases propias .sv- (y .hero--santevet).
   Móvil primero (360-414 px, el 90 % del tráfico): H1 de 32-38 px, H2 de 26-30 px, texto de lectura >= 16 px, notas
   >= 13 px, toques >= 44 px, tablas apiladas por debajo de 700 px (sin desplazamiento lateral) y lo largo plegado en
   <details>. Lenguaje de Luis: tinta/papel/crema/salvia/menta, líneas finas, coral solo para la acción y las llamadas.
   Las piezas compartidas (.hero, .sec-head, .comparison, .c-bill, .c-verdict, .faq, .final-cta…) solo se ajustan aquí
   dentro de .sv-page: no cambian en otras páginas. */

/* --- Generales --------------------------------------------------------------------------------------------- */
.sv-page{overflow-wrap:break-word}
.sv-nw{white-space:nowrap}
.sv-ext .arr{margin-left:4px}
.sv-h3{font-size:clamp(24px,1.6vw + 16px,32px);line-height:1.08;letter-spacing:-.03em;margin:0 0 20px}
.sv-dark .sv-h3{color:#fff}
.sv-note{display:flex;gap:14px;align-items:flex-start;margin:30px 0 0;max-width:900px;font-size:16px;line-height:1.55;color:var(--ink)}
.sv-note>svg{width:22px;height:22px;flex:none;margin-top:1px;color:var(--coral-ink)}
.sv-pendwrap{margin-top:26px}
.sv-cta{margin-top:clamp(30px,4vw,48px);flex-wrap:wrap;gap:18px 30px}
/* Llamadas [n] a las fuentes: pequeñas, con zona de toque mayor sin mover el texto */
.sv-ref{font-size:12.5px;line-height:0;margin-left:2px;letter-spacing:0;font-weight:700}
.sv-ref+.sv-ref{margin-left:3px}
.sv-ref a{position:relative;color:var(--coral-ink);text-decoration:none}
.sv-ref a::after{content:"";position:absolute;inset:-14px -3px}
.sv-ref a:hover{text-decoration:underline}
/* Sobre menta o salvia el coral oscuro no llega a 4,5:1: un tono más oscuro (6:1 y 5:1) */
.sv-lists .clear-card--req .sv-ref a,.sv-trio__i:nth-child(2) .sv-ref a,.sv-t td.sv-us .sv-ref a{color:#9e2f28}
/* Sobre tinta, el coral claro (6,6:1) */
.sv-dark .sv-ref a,.sv-op__tp .sv-ref a{color:var(--coral)}
/* Anclas: html ya reserva la cabecera y la subnavegación (scroll-padding-top en 05_global.css); aquí, solo aire */
.sv-page tr[id],.sv-src__list li,.sv-more,.sv-src{scroll-margin-top:8px}

/* --- Hero ---------------------------------------------------------------------------------------------------- */
.hero--santevet h1{max-width:820px}
.hero--santevet h1 .c-kicker~.hero-h1-main{font-size:min(1em,62px)}

/* --- Resumen bajo el hero ------------------------------------------------------------------------------------ */
.sv-sum{padding-block:clamp(44px,3vw + 30px,76px);border-bottom:1px solid var(--line)}
.sv-sum__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 28px;margin-bottom:16px}
.sv-sum__t{margin:0;font-size:clamp(26px,1.4vw + 20px,40px);line-height:1.05;letter-spacing:-.035em}
.sv-sum__date{margin:0;font-size:13.5px;line-height:1.45;color:var(--muted)}
.sv-sum__lead{margin:0 0 26px;max-width:900px;font-size:18px;line-height:1.55;color:var(--ink)}
.sv-sum__more{margin:22px 0 0;display:flex;flex-wrap:wrap;gap:4px 28px}
.sv-sum__more .text-link{min-height:44px;display:inline-flex;align-items:center}
.sv-sum__vs{min-width:0}
.sv-gana-vs{margin-top:clamp(28px,4vw,44px);min-width:0}
/* --- Lo que no te cuentan (lista propia mientras la pieza común .cvs no está lista) ------------------------------ */
.sv-lp{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px}
.sv-lp__i{background:var(--paper,#fff);border:1px solid var(--line);border-radius:18px;padding:20px 20px 18px;min-width:0}
.sv-lp__t{margin:0 0 8px;font-size:20px;line-height:1.2;letter-spacing:-.02em}
.sv-lp__i p{margin:0;font-size:16px;line-height:1.55}
.sv-lp__q{margin:12px 0 0;padding:0 0 0 12px;border-left:3px solid var(--coral-ink);font-size:15px;line-height:1.5;color:var(--muted);font-style:italic}
.sv-lp__i .sv-lp__src{margin-top:10px;font-size:13.5px;color:var(--muted)}
.sv-lp__src a{display:inline-flex;align-items:center;min-height:44px}

/* --- Tablas SantéVet / Swipet (resumen y comparativa): tres columnas en escritorio ------------------------------ */
.sv-t{width:100%;border-collapse:collapse;table-layout:fixed;font-size:16px;line-height:1.45;color:inherit}
.sv-t caption{caption-side:top;text-align:left;font-size:13.5px;line-height:1.45;color:var(--muted);padding:0 0 12px}
.sv-t col.sv-t__c1{width:22%}
.sv-t th,.sv-t td{padding:15px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);text-wrap:pretty}
.sv-t thead th{padding-top:6px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--ink)}
.sv-t thead th:first-child,.sv-t tbody th{padding-left:0}
.sv-t tbody th{font-size:15px;font-weight:700;line-height:1.35}
.sv-t thead .sv-us{color:#2f6b3a}
.sv-t td.sv-us{background:rgba(201,221,184,.3)}
.sv-t tbody tr:last-child>*{border-bottom:0}
/* Sobre tinta (la comparativa completa) */
.sv-dark .sv-t th,.sv-dark .sv-t td{border-color:var(--line-light)}
.sv-dark .sv-t thead th{color:#fff;border-bottom-color:rgba(255,255,255,.5)}
.sv-dark .sv-t thead .sv-us{color:var(--sage)}
.sv-dark .sv-t td{color:#e7e3dc}
.sv-dark .sv-t td.sv-us{background:rgba(201,221,184,.1);color:#fff}
.sv-dark .sv-t td.sv-us .sv-ref a{color:var(--coral)}
.sv-dark .sv-t caption{color:#bdb9b2}
.sv-dark .sv-t tr:target>*{background:#2c3328}
.sv-t--cont{margin-top:4px}
/* Estado de la celda de SantéVet (05/10/2026): ✗ coral y «Bono compartido» en gris, igual que la tabla común */
.sv-st{display:inline-flex;align-items:center;gap:5px;margin:0 6px 4px 0;padding:1px 10px 1px 8px;border-radius:999px;font-size:16px;font-weight:700;line-height:1.4;vertical-align:baseline;white-space:nowrap}
.sv-st svg{width:15px;height:15px;flex:none;stroke-width:2.6}
.sv-st--no{background:var(--coral);color:var(--ink)}
.sv-st--bono{background:#e9e7e3;color:#4d4943;border:1px dashed #8f8a83}
.sv-t td[data-v="bono"]{color:var(--muted)}
.sv-dark .sv-st--bono{background:rgba(255,255,255,.14);color:#d8d4cd;border-color:rgba(255,255,255,.45)}
.sv-dark .sv-t td[data-v="bono"]{color:#bdb9b2}

/* Filas plegadas de la comparativa («Ver 11 filas más»): píldora; abierta, «Ver menos filas» encima de la tabla */
.sv-more{margin-top:18px}
.sv-more>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:56px;
  padding:12px 22px;border:1px solid var(--ink);border-radius:20px;font-size:15px;font-weight:700;line-height:1.3;transition:background-color .2s,color .2s}
.sv-more>summary::-webkit-details-marker{display:none}
.sv-more>summary svg{width:20px;height:20px;flex:none;transition:transform .25s var(--ease)}
.sv-more[open]>summary svg{transform:rotate(180deg)}
.sv-more__txt{display:grid;gap:3px}
.sv-more__txt small{font-size:13.5px;font-weight:400;line-height:1.4;opacity:.85}
.sv-more__lbl--less,.sv-more[open] .sv-more__lbl,.sv-more[open] .sv-more__txt small{display:none}
.sv-more[open] .sv-more__lbl--less{display:inline}
.sv-more[open]>summary{margin-bottom:22px}
.sv-more>summary:hover{background:var(--ink);color:#fff}
.sv-dark .sv-more>summary{border-color:rgba(255,255,255,.5);color:#fff}
.sv-dark .sv-more>summary:hover{background:#fff;color:var(--ink)}
.sv-vs__note{margin:22px 0 0;max-width:900px;font-size:13.5px;line-height:1.55;color:var(--muted)}
.sv-dark .sv-vs__note{color:#bdb9b2}
.sv-vs__note a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.sv-dark .sv-vs__note a{color:#fff}
.sv-legal{margin:0;font-size:13.5px}

/* «Dónde gana SantéVet» (salvia) */
.sv-gana{margin-top:30px;background:var(--sage);color:var(--ink);padding:26px 28px}
.sv-dark .sv-gana__t,.sv-gana__t{margin:0 0 12px;font-size:clamp(21px,1vw + 15px,26px);color:var(--ink)}
.sv-gana .c-dots{gap:8px}
.sv-gana .c-dots li{font-size:16px;line-height:1.5}
@media(min-width:900px){.sv-gana .c-dots{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:36px}}

/* Fuentes plegadas */
.sv-src{margin-top:26px;border-top:1px solid var(--line)}
.sv-src>summary{list-style:none;cursor:pointer;position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;min-height:58px;padding:12px 36px 12px 0}
.sv-src>summary::-webkit-details-marker{display:none}
.sv-src__t{font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.sv-src>summary small{font-size:13.5px;color:var(--muted)}
.sv-src>summary svg{position:absolute;right:4px;top:50%;width:20px;height:20px;margin-top:-10px;transition:transform .25s var(--ease)}
.sv-src[open]>summary svg{transform:rotate(180deg)}
.sv-src__list{margin:0;padding:0 0 10px 26px;font-size:14px;line-height:1.5;color:var(--muted)}
.sv-src__list li{padding:4px 0}
.sv-src__list li:target{background:var(--mint)}
.sv-src__a{display:inline;padding-block:10px;color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.sv-dark .sv-src{border-color:var(--line-light)}
.sv-dark .sv-src>summary{color:#fff}
.sv-dark .sv-src>summary small,.sv-dark .sv-src__list{color:#bdb9b2}
.sv-dark .sv-src__a{color:#fff}
.sv-dark .sv-src__list li:target{background:rgba(255,255,255,.12)}

/* Bloque oscuro de la comparativa */
.sv-dark .comparison-head{margin-bottom:clamp(30px,4vw,64px)}
.sv-dark .comparison-head p{max-width:580px}
.sv-dark .comparison-head .sv-lectura{margin:0;font-size:13.5px;color:#9d9992}
.sv-dark .pending{margin-bottom:26px}
.sv-dark .cta-strip{border-color:var(--line-light);margin-top:clamp(40px,5vw,72px)}
.sv-dark .cta-strip p span{color:#bdb9b2}
.sv-dark .cta-strip .text-link{color:#fff}

/* --- Opiniones de SantéVet ----------------------------------------------------------------------------------- */
.sv-op{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:22px;align-items:stretch}
.sv-op__tp{background:var(--ink);color:#fff;padding:30px 32px 32px;display:grid;gap:12px;justify-items:start;align-content:start}
.sv-op__lbl{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.sv-op__lbl svg{width:18px;height:18px;color:#00b67a}
.sv-op__score{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:4px 0 0}
.sv-op__score b{font-size:clamp(52px,5vw,72px);letter-spacing:-.04em;line-height:1}
.sv-op__score span{font-size:17px;color:#d6d2cb}
.sv-op__date{margin:0;max-width:440px;font-size:14px;line-height:1.5;color:#bdb9b2}
.sv-op__btn{margin-top:10px;white-space:normal;text-align:left;gap:16px;line-height:1.25}
.sv-op__self{background:#fff;border:1px solid var(--line);padding:26px 28px;display:grid;align-content:center}
.sv-op__self h3,.sv-op__tips h3{margin:0 0 10px;font-size:20px}
.sv-op__self p{margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.sv-op__tips{grid-column:1/-1;background:#fff;border:1px solid var(--line);padding:26px 28px 14px}
.sv-op__tips .checks{margin:0}
.sv-op__tips .checks li{font-size:16px}
.sv-op__sw{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;margin:28px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:16px;line-height:1.5}
.sv-op__sw>span{flex:1 1 420px}
@media(max-width:900px){
  .sv-op{grid-template-columns:minmax(0,1fr);gap:14px}
  .sv-op__tp{padding:24px 20px 26px}
  .sv-op__self,.sv-op__tips{padding:22px 20px}
  .sv-op__tips{padding-bottom:8px}
  .sv-op__btn{width:100%;justify-content:space-between}
}

/* --- Qué cubre: cuatro modalidades ---------------------------------------------------------------------------- */
.sv-mods{margin:0 0 clamp(44px,5vw,72px)}
.sv-mods__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.sv-mod{background:#fff;border:1px solid var(--line);padding:22px 22px 14px;display:flex;flex-direction:column;gap:6px}
.sv-mod--cat{background:var(--cream);border-color:transparent}
.sv-mod__n{margin:0;font-size:20px;letter-spacing:-.02em}
.sv-mod__pct{margin:2px 0 0;font-size:clamp(40px,3.2vw,52px);font-weight:700;letter-spacing:-.04em;line-height:1}
.sv-mod__pct small{display:block;margin-top:6px;font-size:13px;font-weight:400;letter-spacing:0;line-height:1.3;color:var(--muted)}
.sv-mod__for{margin:0;font-size:14px;line-height:1.4;color:var(--muted)}
.sv-mod__tag{align-self:flex-start;display:inline-flex;align-items:center;margin-top:4px;padding:4px 10px;border-radius:99px;background:var(--sage);
  font-size:12.5px;font-weight:700;line-height:1.3}
.sv-mod__dl{margin:auto 0 0;padding-top:12px;display:grid}
.sv-mod__dl>div{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 10px;padding:9px 0;border-top:1px solid var(--line-2)}
.sv-mod__dl dt{font-size:14px;color:var(--muted)}
.sv-mod__dl dd{margin:0;font-size:16px;font-weight:700;white-space:nowrap}
.sv-src-line{margin:18px 0 0;max-width:900px;font-size:13.5px;line-height:1.6;color:var(--muted)}
@media(max-width:1000px){.sv-mods__list{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* --- Qué cubre: dos listas (lo que no cabe, plegado) ----------------------------------------------------------- */
.sv-lists{margin-top:0}
.sv-lists .clear-card{gap:14px}
.sv-lists .clear-card h3{font-size:clamp(22px,1vw + 16px,26px)}
.sv-list{list-style:none;margin:0;padding:0;display:grid}
.sv-list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;align-items:start;padding:13px 0;border-top:1px solid var(--line);font-size:16px;line-height:1.5}
.sv-list li svg{width:28px;height:28px;padding:6px;border-radius:50%;background:#fff}
.sv-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:6px 0;
  border-top:1px solid var(--line);font-size:15px;font-weight:700}
.sv-fold>summary::-webkit-details-marker{display:none}
.sv-fold>summary span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.sv-fold>summary svg{width:20px;height:20px;flex:none}
.sv-fold[open]>summary{display:none}

/* --- Qué cubre: esperas de SantéVet --------------------------------------------------------------------------- */
.sv-car{margin-top:clamp(48px,6vw,84px)}
.sv-tl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line)}
.sv-tl li{padding:26px 22px 10px 0;border-right:1px solid var(--line)}
.sv-tl li+li{padding-left:22px}
.sv-tl li:last-child{border-right:0}
.sv-tl__d{display:block;margin-bottom:14px;font-size:clamp(32px,2.8vw,46px);font-weight:700;letter-spacing:-.04em;line-height:1;white-space:nowrap}
.sv-tl h4{margin:0 0 8px}
.sv-tl p{margin:0;font-size:16px;line-height:1.5;color:var(--muted)}
.sv-vsw{margin:26px 0 0;max-width:900px;background:var(--mint);padding:18px 22px;font-size:16px;line-height:1.55}
@media(max-width:900px){
  .sv-tl{grid-template-columns:minmax(0,1fr)}
  .sv-tl li,.sv-tl li+li{display:grid;grid-template-columns:110px minmax(0,1fr);column-gap:14px;padding:16px 0;border-right:0;border-bottom:1px solid var(--line)}
  .sv-tl li>*{grid-column:2}
  .sv-tl li>.sv-tl__d{grid-column:1;grid-row:1/span 2;margin:0;font-size:28px}
  .sv-tl h4{font-size:18px;margin-bottom:4px}
}

/* --- Cuánto te devolvería: cuatro facturas en 2 x 2 (en 4 columnas no caben los nombres) ----------------------- */
.sv-bills__hint{display:none;margin:0 0 10px;font-size:13.5px;color:var(--muted)}
@media(min-width:900px){.sv-bills .c-bills{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}}
.sv-bills .c-bill{padding:26px 28px}
.sv-bills .c-bill__who{font-size:16px}
.sv-bills .c-bill__note{font-size:15px;line-height:1.45}
.sv-bills .c-bills__nota{max-width:900px;font-size:13.5px;line-height:1.55}
.sv-bills .c-bills__nota a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.sv-bills__more{margin:22px 0 0}

/* --- Cuándo conviene: veredictos y otras comparativas ---------------------------------------------------------- */
.sv-page .c-verdict .c-verdict__t{font-size:clamp(22px,1vw + 16px,28px)}
.sv-page .c-verdict .c-dots li{font-size:16px;line-height:1.5}
.sv-otras{margin:clamp(36px,4vw,52px) 0 0;padding-top:22px;border-top:1px solid var(--line)}
.sv-otras__t{margin:0 0 12px;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.sv-otras ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.sv-otras a{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 18px;border:1px solid var(--ink);border-radius:999px;
  font-size:16px;font-weight:700;line-height:1.2;transition:background-color .2s,color .2s}
.sv-otras a:hover{background:var(--ink);color:#fff}
.sv-otras a .arr{font-weight:400}

/* --- Tres dudas: leishmaniosis, esterilización y gatos ---------------------------------------------------------- */
.sv-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.sv-trio__i{background:var(--cream);padding:clamp(26px,3vw,40px);display:grid;gap:16px;align-content:start;justify-items:start}
.sv-trio__i:nth-child(2){background:var(--mint)}
.sv-trio__i:nth-child(3){background:#fff;border:1px solid var(--line)}
.sv-trio__i .eyebrow{margin:0}
.sv-trio__i h2{font-size:clamp(26px,2.2vw,34px);line-height:1.04;letter-spacing:-.035em}
.sv-trio__i p:not(.eyebrow){margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.sv-trio__i .text-link{margin-top:4px}
@media(max-width:1000px){.sv-trio{grid-template-columns:minmax(0,1fr);gap:14px}}

/* --- Cambiarse: cuatro pasos ---------------------------------------------------------------------------------- */
@media(min-width:1101px){.sv-steps4 .steps{grid-template-columns:repeat(4,minmax(0,1fr))}}
.sv-steps4 .step h3{font-size:21px}
.sv-steps4 .step p{font-size:16px;line-height:1.5}
.bg-cream .sv-steps4 .step__ico{background:#fff}
@media(max-width:1100px) and (min-width:761px){
  .sv-steps4 .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sv-steps4 .steps .step:nth-child(2){border-right:0}
  .sv-steps4 .steps .step:nth-child(3){padding-left:0}
  .sv-steps4 .steps .step:nth-child(-n+2){border-bottom:1px solid var(--line)}
}
@media(max-width:760px){
  .sv-steps4 .steps .step,.sv-steps4 .steps .step+.step{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:16px;row-gap:4px;padding:18px 0}
  .sv-steps4 .step__n{display:none}
  .sv-steps4 .step__ico{grid-column:1;grid-row:1/span 2;width:44px;height:44px;margin:2px 0 0}
  .sv-steps4 .step__ico svg{width:20px;height:20px}
  .sv-steps4 .step h3{grid-column:2;margin:0;font-size:19px}
  .sv-steps4 .step p{grid-column:2}
}

/* ==========================================================================================================
   MÓVIL Y TABLETA (<= 700 px): tablas apiladas, sin desplazamiento lateral.
   Resumen: el dato arriba y SantéVet / Swipet lado a lado (textos cortos).
   Comparativa: una tarjeta por fila, cada seguro a todo el ancho (textos largos) y Swipet en salvia.
   ========================================================================================================== */
@media(max-width:700px){
  .sv-t,.sv-t tbody,.sv-t caption:not(.visually-hidden){display:block;width:100%}
  .sv-t colgroup{display:none}
  .sv-t thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .sv-t tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:12px;row-gap:8px;padding:16px 0;border-bottom:1px solid var(--line)}
  .sv-t tbody tr:last-child{border-bottom:0}
  .sv-t th,.sv-t td{display:block;padding:0;border:0;width:auto}
  .sv-t tbody th{grid-column:1/-1;font-size:13px;letter-spacing:.12em;text-transform:uppercase;line-height:1.4}
  .sv-t td{padding:8px 10px 8px 11px;border-left:3px solid var(--line);font-size:16px;line-height:1.42}
  .sv-t td.sv-us{border-left-color:var(--sage);background:rgba(201,221,184,.3)}
  .sv-t td::before{content:attr(data-label);display:block;margin-bottom:3px;font-size:12.5px;font-weight:700;letter-spacing:.04em;color:var(--muted)}
  .sv-t td.sv-us::before{color:#2f6b3a}
  .sv-t caption:not(.visually-hidden){padding-bottom:6px;font-size:13.5px}
  .sv-t caption.visually-hidden{width:1px}
  /* Comparativa completa */
  .sv-t--vs tr{grid-template-columns:minmax(0,1fr);row-gap:10px;padding:20px 0 14px;border-bottom-color:var(--line-light)}
  .sv-t--vs tbody th{font-size:19px;font-weight:700;letter-spacing:-.015em;text-transform:none;line-height:1.25;color:#fff}
  .sv-t--vs td{padding:10px 12px 10px 14px;border-left-color:rgba(255,255,255,.28)}
  .sv-t--vs td.sv-us{border-left-color:var(--sage);background:rgba(201,221,184,.1)}
  .sv-dark .sv-t td::before{color:#9d9992}
  .sv-dark .sv-t td.sv-us::before{color:var(--sage)}
  .sv-dark .sv-t tr:target>*{background:transparent}
  .sv-dark .sv-t tr:target>th{color:var(--sage)}
  .sv-t--cont{margin-top:0}
}

/* ==========================================================================================================
   MÓVIL (<= 600 px): titulares, ritmo y lectura. Solo dentro de esta página (.sv-page).
   ========================================================================================================== */
@media(max-width:600px){
  .sv-page .section,.sv-page .comparison{padding-block:56px}
  .sv-page .final-cta{padding:56px var(--gutter)}
  .sv-page .sec-head{margin-bottom:26px}
  .sv-page .sec-head .eyebrow,.sv-page .comparison .eyebrow{margin-bottom:14px}
  .sv-page .sec-head .copy{margin-top:14px;font-size:17px;line-height:1.55}
  .sv-page .sec-head h2,.sv-page .comparison h2,.sv-page .faq-layout>.sec-head h2,.sv-page .final-cta h2,.sv-trio__i h2{
    font-size:clamp(26px,6.4vw + 3px,30px);line-height:1.08;letter-spacing:-.03em}
  .sv-page .sec-head h2 .h2-lead,.sv-page .comparison h2 .h2-lead{font-size:15px;margin-bottom:6px}
  .sv-page .faq-layout{gap:30px}
  .sv-page .final-cta .lead{font-size:17px;margin:16px auto 26px}
  .sv-page .c-final__need{font-size:16px}
  .sv-h3{font-size:23px;margin-bottom:16px}
  /* Enlaces de texto sueltos: 44 px de alto (el subrayado sigue pegado al texto) y 16 px, como los botones */
  .sv-page .text-link{min-height:44px;align-items:flex-end;font-size:16px}
  .sv-page .hero-actions .btn,.sv-page .cta-row .btn,.sv-page .sv-op__btn{font-size:15px} /* 15 px, como en todas las páginas */
  .sv-more>summary,.sv-fold>summary{font-size:16px}
  /* Hero: titular de 32-38 px, el botón a todo el ancho y nada que sobre */
  .sv-page .hero--santevet .hero-content{padding-top:34px;padding-bottom:32px}
  .sv-page .hero--santevet .crumbs{margin-bottom:16px}
  .sv-page .hero--santevet .hero-content>.eyebrow{margin-bottom:14px}
  .sv-page .hero--santevet h1{font-size:clamp(32px,8vw + 4px,38px);line-height:1.03;letter-spacing:-.035em}
  .sv-page .hero--santevet h1 .c-kicker{margin-bottom:12px;font-size:18px}
  .sv-page .hero--santevet .hero-lead{margin:16px 0 22px;font-size:17px;line-height:1.5}
  .sv-page .hero--santevet .hero-actions{align-items:stretch;gap:10px}
  .sv-page .hero--santevet .hero-actions .btn{width:100%;justify-content:space-between}
  .sv-page .hero--santevet .hero-actions .text-link{align-self:flex-start}
  .sv-page .hero--santevet .c-chips{margin-top:20px}
  /* Resumen */
  .sv-sum{padding-block:40px 34px}
  .sv-sum__t{font-size:clamp(26px,6.4vw + 3px,30px);line-height:1.08}
  .sv-sum__lead{font-size:16.5px;margin-bottom:12px}
  /* Opiniones */
  .sv-op__score b{font-size:56px}
  .sv-op__sw{margin-top:22px;padding-top:16px}
  /* Modalidades: 2 x 2, tope / franquicia / bono uno debajo de otro */
  .sv-mods__list{gap:10px}
  .sv-mod{padding:16px 14px 8px;gap:4px}
  .sv-mod__n{font-size:18px}
  .sv-mod__pct{font-size:36px}
  .sv-mod__pct small{font-size:13px}
  .sv-mod__for{font-size:13.5px}
  .sv-mod__tag{font-size:12px;padding:3px 8px}
  .sv-mod__dl>div{display:block;padding:8px 0}
  .sv-mod__dl dt{font-size:13px;line-height:1.3}
  .sv-mod__dl dd{font-size:17px;line-height:1.3}
  /* Listas */
  .sv-lists{gap:12px}
  .sv-lists .clear-card{padding:22px 18px 10px;gap:10px}
  .sv-lists .clear-card h3{font-size:22px}
  .sv-list li{grid-template-columns:24px minmax(0,1fr);gap:12px;padding:11px 0}
  .sv-list li svg{width:24px;height:24px;padding:5px}
  .sv-page .sv-note{margin-top:22px;gap:12px}
  .sv-car{margin-top:44px}
  .sv-tl li,.sv-tl li+li{grid-template-columns:96px minmax(0,1fr);column-gap:12px}
  .sv-tl li>.sv-tl__d{font-size:26px}
  .sv-tl h4{font-size:17px}
  .sv-vsw{padding:16px 18px}
  /* Bloque oscuro */
  .sv-dark .comparison-head{gap:14px;margin-bottom:28px}
  .sv-dark .comparison-head p{font-size:16.5px;margin-bottom:14px}
  .sv-dark .pending{margin-bottom:20px}
  .sv-more>summary{padding:12px 18px;border-radius:16px}
  .sv-gana{padding:20px 18px;margin-top:24px}
  .sv-gana__t{font-size:22px}
  .sv-dark .cta-strip{margin-top:36px;padding:22px 0}
  .sv-page .cta-strip p{font-size:19px}
  .sv-page .cta-strip .cta-row{width:100%;gap:6px}
  .sv-page .cta-strip .btn{width:100%;justify-content:space-between}
  /* Facturas: carrusel a sangre (la siguiente asoma por la derecha) */
  .sv-bills__hint{display:block}
  .sv-bills .c-bills{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:86%;gap:12px;overflow-x:auto;overscroll-behavior-x:contain;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;margin-inline:calc(-1 * var(--gutter));
    padding:0 var(--gutter) 8px;scroll-padding-inline:var(--gutter)}
  .sv-bills .c-bill{scroll-snap-align:start;padding:20px 16px}
  .sv-bills .c-bill .c-bill__t{font-size:20px;line-height:1.2}
  .sv-bills .c-bill__amt,.sv-bills .c-bill__who,.sv-bills .c-bill__pay,.sv-bills .c-bill__note{font-size:16px}
  .sv-bills .c-bill__pay{flex-direction:column;align-items:flex-end;gap:4px}
  /* Veredictos, CTA y otras comparativas */
  .sv-page .c-verdicts{gap:10px}
  .sv-page .c-verdict{padding:20px 18px}
  .sv-page .c-verdict .c-verdict__t{font-size:21px}
  .sv-cta{flex-direction:column;align-items:stretch;gap:6px}
  .sv-cta .btn{width:100%;justify-content:space-between}
  .sv-cta .text-link{align-self:flex-start}
  .sv-otras{margin-top:32px;padding-top:18px}
  /* en móvil, filas a todo el ancho (las píldoras quedaban una por línea y desiguales) */
  .sv-otras ul{display:grid;gap:0;border-top:1px solid var(--line)}
  .sv-otras a{display:flex;justify-content:space-between;min-height:50px;padding:10px 2px 10px 0;border:0;border-bottom:1px solid var(--line);border-radius:0}
  .sv-otras a:hover{background:transparent;color:inherit;text-decoration:underline;text-underline-offset:3px}
  /* Tres dudas */
  .sv-page .sv-trio-band{padding-block:44px}
  .sv-trio__i{padding:24px 18px;gap:12px}
  /* Preguntas y ayuda */
  .sv-page .faq summary{padding:16px 0;min-height:56px}
  .sv-page .c-help--compact{font-size:16px;margin-top:20px}
  .sv-page .c-help--compact .c-help__a{font-size:16px}
  .sv-page .c-help--compact .c-help__h{font-size:14px}
}
@media(max-width:374px){
  .sv-page .hero--santevet h1{font-size:32px}
  .sv-t tr{column-gap:10px}
  .sv-t td{padding-left:9px}
  .sv-t--vs td{padding-left:12px}
  .sv-mod{padding:14px 12px 6px}
  .sv-mod__pct{font-size:32px}
  .sv-tl li,.sv-tl li+li{grid-template-columns:88px minmax(0,1fr)}
  .sv-tl li>.sv-tl__d{font-size:23px}
}
/* 03/10/2026 · Móviles bajos (360 × 640, iPhone SE o Safari con sus barras): el hero se compacta para que el botón
   «Ver el precio de tu mascota» se vea entero sin bajar (antes, a 360 × 640, quedaba cortado por abajo) */
@media(max-width:600px) and (max-height:700px){
  .sv-page .hero--santevet .hero-content{padding-top:20px;padding-bottom:24px}
  .sv-page .hero--santevet .crumbs{margin-bottom:10px}
  .sv-page .hero--santevet .hero-content>.eyebrow{margin-bottom:10px}
  .sv-page .hero--santevet h1 .c-kicker{margin-bottom:8px;font-size:17px}
  .sv-page .hero--santevet .hero-lead{margin:12px 0 16px;font-size:16px}
}
/* 03/10/2026 · Revisión final: en el móvil las notas, fechas y fuentes van a 14 px, como en el resto de comparativas
   (aquí estaban a 13-13,5 px) */
@media(max-width:600px){
  .sv-sum__date,.sv-t caption,.sv-t caption:not(.visually-hidden),.sv-more__txt small,.sv-vs__note,.sv-legal,.sv-src>summary small,
  .sv-dark .comparison-head .sv-lectura,.sv-src-line,.sv-bills__hint,.sv-bills .c-bills__nota,.sv-mod__for{font-size:14px}
  .sv-mod__pct small,.sv-mod__dl dt{font-size:13.5px}
  .sv-page .c-verdicts__nota{font-size:14px}
}
.sv-dark .sv-t a.sv-ext{color:#fff;text-decoration:underline;text-underline-offset:3px}


/* ---- 50_confianza.css ---- */
/* ==========================================================================
   V2 — Confianza (v2_confianza.py): /opiniones/, /quienes-somos/ y /aviso-legal/.
   Lenguaje de Luis: tinta, papel, coral, salvia y crema; titulares enormes; líneas finas; píldoras.
   Prefijo .cf- (y .hero--opiniones / .hero--quienes-somos, que pone hero_v2). Móvil primero, toques de 44 px o más.
   ========================================================================== */

/* --- Piezas generales ------------------------------------------------------------------------------ */
/* Rejillas propias: la columna puede encoger (si no, una etiqueta «pendiente», que mide su texto entero, ensancha la página) */
.cf-nota,.cf-trato,.cf-opina__in,.cf-quees,.cf-roles,.cf-role,.cf-equipo,.cf-verify,.cf-lhero__grid,.cf-lhero__card,
.cf-legal,.cf-conds,.cf-tpcard,.cf-idcard,.cf-team__card,#por-que .split,#por-que .split__copy{grid-template-columns:minmax(0,1fr)}
@media(min-width:960px){#por-que .split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.cf-ico{width:18px;height:18px;flex:none}
.cf-cap{display:inline-block}
.cf-cap::first-letter{text-transform:uppercase}
.cf-nw{white-space:nowrap} /* «hoja M-806891», «BORME-A-2023-215-28»: no se parten por el guion */
.cf-sub{font-size:clamp(20px,1.1vw + 14px,24px);line-height:1.2;letter-spacing:-.015em;margin:0 0 16px}
.cf-note{max-width:820px;margin:26px 0 0;font-size:14px;line-height:1.55;color:var(--muted)}
.cf-note+.cf-note{margin-top:8px}
.cf-note+.pending,.cf-note+.pending-block{margin-top:34px}
.cf-note a{padding-block:12px;color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
/* Sin el borde de .c-textlink: con el relleno de 12 px, el borde caía sobre la línea de abajo y parecía tachar el texto */
.cf-note a,.cf-note a.c-textlink{border-bottom:0}
.cf-note a .arr{margin-left:4px}
.cf-answer{margin:0 0 26px;max-width:760px;font-size:19px;line-height:1.55;color:var(--ink)}
.cf-answer--lead{font-size:clamp(19px,.5vw + 16px,22px);line-height:1.45}
.cf-local-note{margin:18px 0 0;padding:12px 16px;border:1px dashed #b8860b;background:#fffbea;font-size:14px;color:#5c4700}
.cf-hero-link{color:#fff}
.hero .cf-hero-link{min-height:44px}
.cf-links{margin:22px 0 0}
.cf-links,.cf-links .text-link{color:var(--ink)!important}
.cf-links .text-link{min-height:44px;align-items:center}
.cf-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:40px;padding-top:30px;border-top:1px solid var(--line)}
.cf-cta__fine{margin:0;max-width:520px;font-size:13.5px;color:var(--muted)}
/* Las tablas de datos (key_facts) de estas páginas: correos y claves largas se parten; en móvil, etiqueta sobre valor */
.cf-kf .kf{font-size:15.5px}
.cf-kf .kf th,.cf-kf .kf td{overflow-wrap:anywhere}
.cf-kf .kf td a{display:inline-flex;align-items:center;gap:6px}
@media(max-width:600px){
  .cf-kf .kf,.cf-kf .kf tbody,.cf-kf .kf tr,.cf-kf .kf th,.cf-kf .kf td{display:block;width:auto}
  .cf-kf .kf caption{display:block}
  .cf-kf .kf tr{padding:12px 0;border-bottom:1px solid var(--line)}
  .cf-kf .kf tr:first-child{border-top:1px solid var(--line)}
  .cf-kf .kf th,.cf-kf .kf td,.cf-kf .kf tr:first-child th,.cf-kf .kf tr:first-child td{border:0;padding:0}
  .cf-kf .kf th{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px;color:var(--ink)}
}

/* Enlaces subrayados con borde (.c-textlink): zona de toque de 44 px por fuera con ::after, sin separar el subrayado del
   texto (con min-height, el borde se iba 10-20 px por debajo de la palabra) */
.cf-kf .kf td a,.cf-nota__read .checks li a,#como-trabajamos .promise .c-textlink,.cf-av-mail a{position:relative}
.cf-kf .kf td a::after,.cf-nota__read .checks li a::after,#como-trabajamos .promise .c-textlink::after,.cf-av-mail a::after{content:"";position:absolute;left:-4px;right:-4px;top:50%;height:44px;transform:translateY(-50%)}

/* --- Hero: recortes de las fotos y tarjetas salvia ---------------------------------------------------- */
.hero--opiniones .hero-shade,.hero--quienes-somos .hero-shade{background:linear-gradient(90deg,rgba(16,13,10,.84) 0%,rgba(16,13,10,.5) 46%,rgba(16,13,10,.08) 78%),linear-gradient(0deg,rgba(0,0,0,.34),transparent 52%)}
@media(max-width:900px){.hero--opiniones .hero-shade,.hero--quienes-somos .hero-shade{background:linear-gradient(180deg,rgba(16,13,10,.28) 0%,rgba(16,13,10,.62) 42%,rgba(16,13,10,.86) 100%)}}
/* Escritorio: la foto de /opiniones/ se amplía hacia la derecha para que la cara del perro no quede bajo el titular */
@media(min-width:901px){.hero--opiniones .hero-media img{transform:scale(1.16);transform-origin:12% 42%}}
.hero--opiniones .hero-lead,.hero--quienes-somos .hero-lead{max-width:600px}
/* Nota de Trustpilot */
.cf-tpcard{width:400px;gap:8px;padding:24px 30px 22px}
.cf-tpcard__main,.cf-tpcard__meta{display:grid;gap:8px;min-width:0} /* en escritorio, apilados como antes */
.cf-tpcard__score{display:flex;align-items:baseline;gap:6px;margin:2px 0 0;line-height:.85}
.cf-tpcard__score b{font-size:78px;font-weight:700;letter-spacing:-.055em}
.cf-tpcard__score>span[aria-hidden]{font-size:26px;font-weight:700;letter-spacing:-.02em}
.cf-tpcard .tp-stars{color:var(--ink);gap:3px}
.cf-tpcard .tp-stars svg,.cf-tpcard .tp-half{width:24px;height:24px}
.cf-tpcard .tp-half svg:first-child,.cf-tpcard .tp-off{color:rgba(23,21,18,.22)}
.cf-tpcard__n{margin:4px 0 0;font-size:15px;font-weight:700}
.cf-tpcard__links{display:flex;flex-wrap:wrap;gap:0 18px;margin:2px 0 0;border-top:1px solid rgba(23,21,18,.18);padding-top:6px}
.cf-tpcard__a{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:14px;font-weight:700;color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.cf-tpcard__a .arr{text-decoration:none;font-weight:400}
.hero-card.cf-tpcard .fine{font-size:13px} /* aviso de Trustpilot: nota, nunca por debajo de 12,5 px */
/* Swipet en datos */
.cf-idcard{width:400px;gap:12px;padding:26px 30px 22px}
.cf-idcard dl{margin:0;display:grid;border-top:1px solid rgba(23,21,18,.2)}
.cf-idcard dl>div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:4px 12px;padding:11px 0;border-bottom:1px solid rgba(23,21,18,.14)}
.cf-idcard dt{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding-top:3px}
.cf-idcard dd{margin:0;font-size:15.5px;line-height:1.35;font-weight:700;overflow-wrap:anywhere}
.cf-idcard__a{display:inline-flex;align-items:center;gap:8px;min-height:44px;width:max-content;font-size:14px;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.cf-idcard__a .arr{text-decoration:none}
@media(max-width:900px){.cf-tpcard,.cf-idcard{width:auto}}
@media(max-width:600px){.hero--quienes-somos .c-chips li{white-space:normal}} /* tarjetas en el móvil: ver «Móvil primero» */

/* --- /opiniones/ · La nota ----------------------------------------------------------------------------- */
.cf-nota{display:grid;gap:34px;align-items:start}
@media(min-width:960px){.cf-nota{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px}}
.cf-nota__panel{background:#fff;border:1px solid var(--line);padding:30px 32px 22px}
.cf-nota__panel .c-rating{max-width:none}
.cf-nota__panel .c-rating__row{font-size:16px}
.cf-nota__panel .c-rating__bar{height:14px}
.cf-nota__read .checks li{font-size:16px}
.cf-nota__read .checks li a{display:inline-flex;align-items:center}
.cf-nota__badge{margin-top:24px}

/* --- /opiniones/ · Temas en pestañas (swipet.js [data-tabs]) ----------------------------------------------- */
.cf-tabs__list{position:relative;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 30px}
.cf-tabs__tab{position:relative;display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:10px 20px;border-radius:999px;
  border:1px solid var(--line);background:#fff;color:var(--ink);font:inherit;font-size:15px;font-weight:700;line-height:1.2;cursor:pointer;
  transition:background-color .2s,color .2s,border-color .2s}
.cf-tabs__tab:hover{border-color:var(--ink)}
.cf-tabs__tab[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.cf-tabs__panel[hidden]{display:none}
.cf-tabs__panel+.cf-tabs__panel{margin-top:44px}
.js .cf-tabs__panel+.cf-tabs__panel{margin-top:0}
.cf-tabs__panel .c-reviews__t{margin-bottom:6px}
/* Sin contador desde el 03/10/2026. En el móvil, los tres temas en una sola fila (etiquetas cortas): ver «Móvil primero» */

/* 05/10/2026 (noche): fuera las críticas de /opiniones/ (decisión de Eduardo) y sus estilos (.cf-criticas, .cf-critica). */

/* --- /opiniones/ · Cómo las tratamos ------------------------------------------------------------------------ */
.cf-trato{display:grid;gap:44px;align-items:start}
@media(min-width:960px){.cf-trato{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px}}
.cf-trato .checks li{font-size:16px}
.cf-trato .checks li svg{background:#fff}
.cf-trato .faq-group+.faq-group{margin-top:0}
.cf-trato .faq summary{font-size:17px;padding:20px 0}
.cf-trato+.pending{margin-top:44px}

/* --- /opiniones/ · ¿Es de fiar? -------------------------------------------------------------------------------- */
#es-fiable .behind__t{font-size:clamp(36px,4.4vw,62px);line-height:.98;letter-spacing:-.04em}
#es-fiable .behind p{font-size:17px}

/* --- /opiniones/ · Franja coral para opinar ------------------------------------------------------------------ */
.cf-opina{background:var(--coral);color:var(--ink);padding-block:clamp(72px,9vw,120px)}
.cf-opina .wrap{max-width:calc(var(--max) + 2*var(--gutter))}
.cf-opina__in{display:grid;gap:26px;align-items:end}
@media(min-width:960px){.cf-opina__in{grid-template-columns:1.15fr .85fr;gap:80px}}
.cf-opina .eyebrow{margin-bottom:18px}
.cf-opina .eyebrow::before{background:var(--ink)}
.cf-opina h2{font-size:clamp(40px,5.4vw,78px);line-height:.96;letter-spacing:-.045em}
.cf-opina p{margin:0 0 24px;max-width:520px;font-size:18px;line-height:1.5}
.cf-opina .btn{gap:12px}
.cf-opina .btn .arr{margin-left:6px}
.cf-opina__fine{margin:16px 0 0!important;font-size:14px!important}
.cf-opina :focus-visible{outline-color:var(--ink)}
@media(max-width:600px){.cf-opina .btn{width:100%;white-space:normal;text-align:left;justify-content:space-between}}

/* --- /quienes-somos/ · Qué es: misión + fechas (05/10/2026: sin la tabla de datos de la empresa) ----------------- */
.cf-quees{display:grid;gap:48px;align-items:start}
@media(min-width:960px){.cf-quees{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:80px}}
.cf-when__list{list-style:none;margin:0;padding:0 0 0 2px}
.cf-when__list li{position:relative;padding:0 0 30px 32px;border-left:1px solid var(--line)}
.cf-when__list li:last-child{padding-bottom:4px}
.cf-when__list li::before{content:"";position:absolute;left:-7px;top:5px;width:13px;height:13px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 5px var(--paper)}
.cf-when__d{display:inline-block;margin-bottom:8px;font-size:clamp(22px,1.2vw + 14px,28px);font-weight:700;line-height:1.1;letter-spacing:-.025em}
.cf-when__d::first-letter{text-transform:uppercase}
.cf-when__list p{margin:0;font-size:16px;line-height:1.5;color:var(--muted)}
.cf-when__src{display:flex;flex-wrap:wrap;gap:0 18px;margin-top:4px!important}
.cf-when__src a{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:14px;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.cf-when__src a .arr{text-decoration:none}
/* Nuestra misión: tarjeta salvia, el lema en grande y tres compromisos */
.cf-mision{display:grid;gap:14px;align-content:start;padding:30px 32px 18px;background:var(--sage);color:var(--ink)}
.cf-mision__k{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.cf-mision__t{margin:0;font-size:clamp(28px,2.4vw,38px);font-weight:700;line-height:1.1;letter-spacing:-.03em}
.cf-mision ul{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid rgba(23,21,18,.16)}
.cf-mision li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid rgba(23,21,18,.16);font-size:16px;line-height:1.45}
.cf-mision li:last-child{border-bottom:0}
.cf-mision li svg{width:22px;height:22px;color:var(--ink)}

/* --- /quienes-somos/ · Por qué nació ---------------------------------------------------------------------------- */
#por-que .split__copy h2{font-size:clamp(40px,4.6vw,66px)}
#por-que .split__copy .cf-answer{margin:4px 0 6px;color:var(--ink)}
@media(max-width:959.98px){#por-que .split__media{order:2}} /* en móvil, primero la respuesta */
.cf-stats{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cf-stats>div{display:grid;gap:8px;align-content:start;padding:22px 22px 22px 0}
.cf-stats>div+div{padding-left:22px;border-left:1px solid var(--line)}
.cf-stats b{font-size:clamp(24px,1.4vw + 16px,34px);line-height:1.05;letter-spacing:-.03em}
.cf-stats span{font-size:14px;line-height:1.4;color:var(--muted)}
.cf-ph{margin:0;font-size:14px}
#por-que .split__media>.pending{margin-top:26px}
@media(max-width:600px){.cf-stats{grid-template-columns:minmax(0,1fr)}.cf-stats>div+div{padding-left:0;border-left:0;border-top:1px solid var(--line)}}

/* --- /quienes-somos/ · Qué hacemos por ti (bloque oscuro) ------------------------------------------------------ */
.cf-roles{display:grid;gap:18px}
@media(min-width:900px){.cf-roles{grid-template-columns:1fr 1fr;gap:24px}}
.cf-role{display:grid;gap:14px;align-content:start;padding:30px 32px 18px;border:1px solid var(--line-light)}
.cf-role__k{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--coral)}
.cf-role h3{color:#fff;font-size:clamp(28px,2.4vw,38px);letter-spacing:-.03em}
.cf-role ul{list-style:none;display:grid;border-top:1px solid var(--line-light)}
.cf-role li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid var(--line-light);font-size:16px;line-height:1.45;color:#d9d5cf}
.cf-role li:last-child{border-bottom:0}
.cf-role li svg{width:22px;height:22px;color:var(--sage)}
.cf-role--sage{background:var(--sage);border-color:var(--sage)}
.cf-role--sage .cf-role__k,.cf-role--sage h3,.cf-role--sage li,.cf-role--sage li svg{color:var(--ink)}
.bg-ink .cf-role--sage h3{color:var(--ink)}
.cf-role--sage ul,.cf-role--sage li{border-color:rgba(23,21,18,.16)}

/* Botón de precio tras «Qué hacemos por ti» (punto de decisión: acaba de contar cómo se calcula el precio) */
.cf-roles-cta{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:32px}
.cf-roles-cta__fine{margin:0;font-size:14px;color:#bdb9b2}
@media(max-width:600px){.cf-roles-cta{margin-top:24px}.cf-roles-cta .btn{width:100%;justify-content:space-between}}

/* --- /quienes-somos/ · Quién te atiende ------------------------------------------------------------------------ */
.cf-equipo{display:grid;gap:34px}
.cf-equipo .cf-note--faq{margin:-10px 0 0}
.cf-team{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))}
.cf-team__card{display:grid;gap:8px;justify-items:start;padding:22px;border:1px dashed var(--line);background:#fff}
.cf-team__ph{width:64px;height:64px;border-radius:50%;background:var(--cream);display:grid;place-items:center}
.cf-team__ph svg{width:26px;height:26px}
.cf-team__card span:last-child{font-size:14px;color:var(--muted)}

/* --- Tarjetas de enlace para comprobar (quiénes somos y aviso legal) --------------------------------------------- */
.cf-verify{list-style:none;margin:0;padding:0;display:grid;border-top:1px solid var(--line)}
@media(min-width:760px){.cf-verify{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:44px}}
@media(min-width:1100px){.cf-verify{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cf-verify li{display:flex}
.cf-verify__a{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) 44px;gap:18px;align-items:start;width:100%;padding:26px 0;border-bottom:1px solid var(--line);color:var(--ink)}
.cf-verify__ico{width:48px;height:48px;border-radius:50%;background:var(--mint);display:grid;place-items:center}
.cf-verify__ico svg{width:22px;height:22px}
.cf-verify__txt{display:grid;gap:6px;padding-top:2px}
.cf-verify__h{font-size:19px;line-height:1.2;letter-spacing:-.01em}
.cf-verify__txt>span{font-size:15px;line-height:1.45;color:var(--muted)}
.cf-verify__go{width:44px;height:44px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:18px;transition:background-color .2s,color .2s,transform .3s var(--ease)}
.cf-verify__a:hover .cf-verify__go{background:var(--ink);color:#fff}
.cf-verify__a:hover .cf-verify__h{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}

/* --- /aviso-legal/ ------------------------------------------------------------------------------------------ */
.cf-lhero{background:var(--cream);padding:80px 0 70px}
.cf-lhero__grid{display:grid;gap:40px;align-items:center} /* centrado: con «end», el titular quedaba abajo y dejaba un hueco arriba */
@media(min-width:1000px){.cf-lhero__grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:80px}}
.cf-lhero .lead{max-width:600px}
.cf-lhero__meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin:28px 0 0;font-size:14px;color:var(--muted)}
.cf-lhero__meta span{display:inline-flex;align-items:center;gap:8px}
.cf-lhero__meta svg{width:16px;height:16px;flex:none;color:var(--ink)}
.cf-lhero__law{color:inherit;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.cf-lhero__law:hover{color:var(--ink)}
.cf-lhero__card{background:var(--ink);color:#fff;padding:30px 32px 24px;display:grid;gap:14px;align-content:start}
.cf-lhero__card-t{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.19em;text-transform:uppercase;display:flex;align-items:center;gap:12px}
.cf-lhero__card-t::before{content:"";width:30px;height:1px;background:var(--coral)}
.cf-lhero__card ul{list-style:none;display:grid;border-top:1px solid var(--line-light)}
.cf-lhero__card li{display:grid;gap:3px;padding:12px 0;border-bottom:1px solid var(--line-light)}
.cf-lhero__card li b{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#bdb9b2}
.cf-lhero__card li span{font-size:15.5px;line-height:1.4;overflow-wrap:anywhere}
.cf-lhero__card :focus-visible{outline-color:var(--coral)}
.cf-copy{justify-self:start;gap:10px;margin-top:6px;min-height:44px}
.cf-copy[hidden]{display:none!important}
.cf-copy__status{margin:0;min-height:1.3em;font-size:14px;color:var(--sage)}
.cf-legal{display:grid;gap:34px;padding-block:64px var(--sec)}
@media(min-width:1080px){.cf-legal{grid-template-columns:230px minmax(0,1fr);gap:80px}}
.cf-legal__toc a{min-height:44px;display:flex;align-items:center}
.cf-legal__toc summary{font-size:12.5px;padding-block:13px} /* 44 px de toque (sin cambiar display: se conserva el triángulo) */
@media(max-width:1079.98px){.cf-legal__toc a.is-active{box-shadow:none;padding-left:14px;background:var(--ink);border-color:var(--ink);color:#fff}}
@media(max-width:1079.98px){.cf-legal__toc ol{display:flex;flex-wrap:wrap;gap:8px;padding-top:6px}.cf-legal__toc li a{border:1px solid var(--line);border-radius:999px;padding:8px 14px;min-height:44px;color:var(--ink)}.cf-legal__toc summary{border-bottom:0}}
.cf-legal__body{min-width:0;max-width:880px}
.cf-lsec{padding:48px 0;border-top:1px solid var(--line);scroll-margin-top:0} /* el html ya reserva la cabecera */
.cf-legal__body>.cf-lsec:first-child{padding-top:0;border-top:0}
.cf-lsec h2{font-size:clamp(30px,2.9vw,42px);line-height:1.04;letter-spacing:-.035em;margin:0 0 16px}
.cf-lsec .cf-answer{font-size:18px;margin-bottom:26px}
.cf-lsec h3{font-size:19px;margin:0 0 6px}
.cf-lsec p{color:var(--muted)}
.cf-lsec .cf-answer{color:var(--ink)}
/* Tarjeta de ayuda dentro del aviso: su título en tinta (la regla anterior lo apagaba) y en dos columnas, para que
   «Llamar al 919 341 339» no se parta en dos líneas */
.cf-lsec .c-help__t{color:var(--ink)}
@media(min-width:601px){.cf-lsec .c-help__list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cf-legal__body>.pending{margin:40px 0}
.cf-legal__body>.pending .cf-lsec{border-top:0;padding-top:4px}
.cf-mention{margin-top:28px;padding:20px 24px;border-left:3px solid var(--coral);background:var(--cream)}
.cf-mention p{margin:0;font-size:15px;line-height:1.6;color:var(--ink)}
.cf-mention .cf-mention__t{margin:0 0 8px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.cf-conds{display:grid;gap:22px}
@media(min-width:760px){.cf-conds{grid-template-columns:1fr 1fr;gap:26px 40px}}
.cf-conds p{margin:0;font-size:15.5px}
.cf-2cards .cf-verify{grid-template-columns:minmax(0,1fr)}
@media(min-width:760px){.cf-2cards .cf-verify{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cf-av-mail{display:flex;align-items:center;gap:12px;margin:0 0 22px;font-size:16px;color:var(--ink)!important}
.cf-av-mail svg{width:20px;height:20px;flex:none}
.cf-av-mail a{overflow-wrap:anywhere}
.cf-legal__body>.cta-strip{margin-top:10px}
/* Quejas y reclamaciones: tres pasos numerados (05/10/2026) */
.cf-recl{counter-reset:cfrecl;list-style:none;margin:0;padding:0;display:grid;gap:0}
.cf-recl li{counter-increment:cfrecl;position:relative;padding:18px 0 18px 52px;border-top:1px solid var(--line,rgba(0,0,0,.12))}
.cf-recl li::before{content:counter(cfrecl);position:absolute;left:0;top:16px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--ink);color:var(--paper,#fff);font-size:15px;font-weight:700}
.cf-recl h3{margin:0 0 4px;font-size:18px;line-height:1.3}
.cf-recl p{margin:0;font-size:16px;line-height:1.55;overflow-wrap:anywhere}
.cf-recl a,.cf-nav-store a{position:relative}
.cf-recl a::after,.cf-nav-store a::after{content:"";position:absolute;left:-4px;right:-4px;top:50%;height:44px;transform:translateY(-50%)} /* 44 px de toque sin mover la línea */
/* Lo que la web guarda en el navegador (privacidad y cookies) */
.cf-nav-store{display:flex;gap:14px;margin-top:24px;padding:18px 20px;background:var(--cream);border-radius:14px}
.cf-nav-store .cf-ico{width:22px;height:22px;margin-top:2px;color:var(--ink)}
.cf-nav-store h3{margin:0 0 6px;font-size:17px;line-height:1.3}
.cf-nav-store p{margin:0;font-size:15.5px;line-height:1.6}
@media(max-width:600px){.cf-nav-store{padding:16px;gap:10px}.cf-recl li{padding-left:46px}}

/* --- Plegables del móvil (details[data-cf-fold], _fold() en v2_confianza.py) ---------------------------------- */
/* En escritorio no se pliegan: el resumen no se ve y el bloque está abierto (50_confianza.js solo los cierra en ≤ 600 px) */
.cf-fold>summary{display:none}
.cf-fold>summary::-webkit-details-marker{display:none}

/* ==========================================================================================================
   MÓVIL PRIMERO (03/10/2026): el 90 % del tráfico es móvil. Todo lo de abajo es ≤ 600 px y solo para las tres
   páginas de este módulo (clases .cf-*, los id #por-que, #es-fiable y #como-trabajamos, que solo existen aquí,
   los heros .hero--opiniones y .hero--quienes-somos y el aviso legal).
   Parte de la base común de 07_integrador.css (secciones de 60 px, H1 de 38 px, H2 de 30 px; 34 y 28 px en ≤ 380 px)
   y solo afina lo propio: los titulares que aquí tenían tamaño propio, heros más cortos, párrafos de 16 px, toques de
   44 px y bloques más compactos. Nada que se salga a 360, 390 ni 414 px.
   ========================================================================================================== */
@media(max-width:600px){
  /* Ritmo: el padding de las secciones y el de las cabeceras son los comunes (var(--sec), 60 px; .sec-head, 26 px).
     Sin selectores por data-zone: «opiniones» también la usan la portada, producto, cachorros y Kalibo. */
  /* Titulares con tamaño propio en este módulo: al de la base común (antes 36-46 px y hasta 4 líneas) */
  #por-que .split__copy h2,#es-fiable .behind__t,.cf-opina h2{font-size:30px;line-height:1.05;letter-spacing:-.03em}
  .cf-sub{font-size:20px;margin-bottom:12px}
  /* Texto: párrafos y notas a 16 px como mínimo, con interlineado cómodo */
  .cf-answer{font-size:17px;line-height:1.55;margin-bottom:22px}
  .cf-answer--lead{font-size:18px;line-height:1.5}
  .cf-note{font-size:16px;line-height:1.55;margin-top:22px}
  .cf-kf .kf td{font-size:16px;line-height:1.5}
  .cf-cta{margin-top:28px;padding-top:24px;gap:12px}
  .cf-cta .btn{width:100%;justify-content:space-between}
  .cf-cta__fine{font-size:14px}

  /* --- Heros (/opiniones/ y /quienes-somos/): más cortos, para que la tarjeta salvia asome en la primera pantalla --- */
  .hero.hero--opiniones .hero-content,.hero.hero--quienes-somos .hero-content{padding-top:36px;padding-bottom:28px}
  .hero--opiniones .hero-content .crumbs,.hero--quienes-somos .hero-content .crumbs{margin-bottom:16px}
  .hero--opiniones .hero-content>.eyebrow,.hero--quienes-somos .hero-content>.eyebrow{margin-bottom:12px}
  .hero--opiniones .hero-lead,.hero--quienes-somos .hero-lead{font-size:17px;line-height:1.5;margin:14px 0 22px}
  .hero--opiniones .hero-actions,.hero--quienes-somos .hero-actions{gap:6px;align-items:stretch}
  .hero--opiniones .hero-actions .btn,.hero--quienes-somos .hero-actions .btn{width:100%;justify-content:space-between}
  .hero .cf-hero-link{align-self:flex-start;font-size:15px}
  .hero--quienes-somos .c-chips{margin-top:18px}
  /* Foto: algo más oscura arriba, donde ahora empieza el titular (hero más corto): el texto blanco se lee bien sobre el pelo claro */
  .hero--opiniones .hero-shade,.hero--quienes-somos .hero-shade{background:linear-gradient(180deg,rgba(16,13,10,.38) 0%,rgba(16,13,10,.66) 38%,rgba(16,13,10,.86) 100%)}
  /* Nota de Trustpilot: nota grande y estrellas en una fila */
  .cf-tpcard{padding:18px 18px 14px;gap:4px}
  .cf-tpcard__main{display:flex;align-items:center;gap:16px;margin:4px 0 2px}
  .cf-tpcard__score b{font-size:60px}
  .cf-tpcard__score>span[aria-hidden]{font-size:22px}
  .cf-tpcard__meta{gap:6px}
  .cf-tpcard .tp-stars svg,.cf-tpcard .tp-half{width:22px;height:22px}
  .cf-tpcard__n{margin:0;font-size:14px}
  .cf-tpcard__links{gap:0 16px;padding-top:2px}
  .cf-tpcard__a{font-size:15px}
  .hero-card.cf-tpcard .fine{margin-top:2px}
  /* Swipet, en datos */
  .cf-idcard{padding:18px 18px 10px;gap:8px}
  .cf-idcard dl>div{grid-template-columns:104px minmax(0,1fr);padding:9px 0}
  .cf-idcard dt{font-size:12px}
  .cf-idcard dd{font-size:16px}
  .cf-idcard__a{font-size:15px}

  /* --- /opiniones/ ---------------------------------------------------------------------------------------- */
  .cf-nota{gap:26px}
  .cf-nota__panel{padding:18px 16px 8px}
  .cf-nota__panel .c-rating__src{font-size:14px;line-height:1.5}
  .cf-nota__panel .c-rating__src a{padding-block:14px} /* 44 px de toque sin mover el texto */
  .cf-nota__read .checks li{font-size:16px;padding:12px 0}
  .cf-nota__badge{display:none} /* repetía la nota de la tarjeta del hero, que está justo encima */
  /* Temas: los tres en una fila, repartiendo el ancho */
  .cf-tabs__list{flex-wrap:nowrap;gap:6px;margin-bottom:22px}
  .cf-tabs__tab{flex:1 1 auto;justify-content:center;min-height:44px;padding:10px 12px;font-size:15px}
  .cf-tabs__panel .c-reviews__t{font-size:20px}
  /* Cómo las tratamos */
  .cf-trato{gap:30px}
  .cf-trato .checks li{font-size:16px;padding:12px 0}
  .cf-trato .faq summary{font-size:17px;padding:16px 0}
  .cf-trato+.pending{margin-top:32px}
  /* ¿Es de fiar?: las cuatro pruebas en 2×2 (antes, cuatro tarjetas apiladas de 120 px) */
  #es-fiable .behind{gap:24px}
  #es-fiable .behind p{font-size:16px;line-height:1.55}
  #es-fiable .behind__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  #es-fiable .behind__grid>div{padding:14px 14px 16px;border-radius:16px;gap:4px;align-content:start}
  #es-fiable .behind__grid svg{width:22px;height:22px}
  #es-fiable .behind__grid b{font-size:15px;line-height:1.25}
  #es-fiable .behind__grid span{font-size:13px;line-height:1.35;overflow-wrap:anywhere}
  .cf-links{margin-top:14px;gap:0 18px}
  /* Franja coral para opinar */
  .cf-opina{padding-block:var(--sec)}
  .cf-opina__in{gap:18px}
  .cf-opina .eyebrow{margin-bottom:12px}
  .cf-opina p{font-size:17px;margin-bottom:20px}

  /* --- /quienes-somos/ -------------------------------------------------------------------------------------- */
  .cf-quees{gap:36px}
  .cf-when__list li{padding:0 0 22px 28px}
  .cf-when__d{font-size:24px;margin-bottom:6px}
  .cf-when__list p{font-size:16px}
  .cf-when__src{gap:0 20px}
  .cf-when__src a{font-size:15px}
  .cf-mision{padding:22px 18px 8px;gap:10px}
  .cf-mision__t{font-size:26px}
  .cf-mision li{padding:12px 0;gap:12px}
  /* Bloques plegables [data-cf-fold] (desde el 05/10/2026 /quienes-somos/ ya no pliega los datos de la empresa) */
  .cf-fold>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:64px;padding:14px 0;
    border-top:1px solid var(--ink);border-bottom:1px solid var(--line);cursor:pointer;list-style:none;color:var(--ink)}
  .cf-fold__txt{display:grid;gap:4px;min-width:0}
  .cf-fold__t{font-size:19px;line-height:1.2;letter-spacing:-.01em}
  .cf-fold__s{font-size:15px;line-height:1.4;color:var(--muted)}
  .cf-fold__pm{flex:none;width:40px;height:40px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;transition:transform .25s var(--ease)}
  .cf-fold__pm svg{width:18px;height:18px}
  .cf-fold[open] .cf-fold__pm{transform:rotate(45deg)}
  .cf-fold[open]>summary{border-bottom:0}
  .cf-fold .kf caption{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .cf-fold .cf-kf .kf tr:first-child{border-top:0}
  /* Por qué nació */
  #por-que .split{gap:28px}
  .cf-stats>div{padding:16px 0}
  .cf-stats b{font-size:26px}
  .cf-stats span{font-size:15px}
  #por-que .split__media>.pending{margin-top:18px}
  /* Qué hacemos por ti */
  .cf-roles{gap:14px}
  .cf-role{padding:22px 18px 8px;gap:10px}
  .cf-role h3{font-size:26px}
  .cf-role li{padding:12px 0;gap:12px}
  /* Quién te atiende */
  .cf-equipo{gap:24px}
  .cf-equipo .cf-note--faq{margin:-6px 0 0}
  /* Cómo trabajamos: icono junto al título y texto a 16 px (antes, 14 px) */
  #como-trabajamos .promise>div,#como-trabajamos .promise>div+div{grid-template-columns:28px minmax(0,1fr);column-gap:14px;row-gap:6px;padding:18px 0}
  #como-trabajamos .promise svg{width:24px;height:24px;margin-top:1px}
  #como-trabajamos .promise h3{grid-column:2;font-size:19px}
  #como-trabajamos .promise p{grid-column:2;font-size:16px;line-height:1.5}
  /* Compruébalo: la flecha decora (toda la tarjeta es el enlace); el texto, a 16 px */
  .cf-verify__a{grid-template-columns:40px minmax(0,1fr) 32px;gap:14px;padding:18px 0}
  .cf-verify__ico{width:40px;height:40px}
  .cf-verify__go{width:32px;height:32px;font-size:15px}
  .cf-verify__h{font-size:18px}
  .cf-verify__txt>span{font-size:16px;line-height:1.45}

  /* --- /aviso-legal/ --------------------------------------------------------------------------------------- */
  .cf-lhero{padding:32px 0 36px}
  .page-hero.cf-lhero .crumbs{margin-bottom:18px}
  .cf-lhero .eyebrow{margin-bottom:12px}
  .cf-lhero .lead{font-size:17px;line-height:1.5;margin-top:14px}
  .cf-lhero__grid{gap:26px}
  .cf-lhero__meta{margin-top:18px;gap:4px 18px}
  .cf-lhero__meta span{min-height:44px}
  .cf-lhero__law{display:inline-flex;align-items:center;min-height:44px}
  .cf-lhero__card{padding:20px 18px 18px;gap:10px}
  .cf-lhero__card li{padding:10px 0}
  .cf-lhero__card li span{font-size:16px}
  .cf-legal{padding-block:28px 56px;gap:24px}
  .cf-lsec{padding:40px 0}
  .cf-lsec h2{font-size:28px;line-height:1.08;margin-bottom:12px}
  .cf-lsec .cf-answer{font-size:17px;margin-bottom:20px}
  .cf-lsec p:not([class]),.cf-conds p{font-size:16px;line-height:1.55} /* solo párrafos de texto: la tarjeta de ayuda conserva sus tamaños */
  .cf-lsec .checks li{font-size:16px}
  .cf-lsec h3{font-size:18px}
  .cf-mention{margin-top:22px;padding:16px 16px 16px 18px}
  .cf-mention p{font-size:16px;line-height:1.55}
  .cf-av-mail{font-size:16px}
  .cf-legal__body>.pending{margin:28px 0}
  .cf-local-note{font-size:15px}
}
/* Móviles pequeños (≤ 380 px): titulares como la base común y los tres temas siguen en una fila */
@media(max-width:380px){
  #por-que .split__copy h2,#es-fiable .behind__t,.cf-opina h2{font-size:28px}
  .cf-lsec h2{font-size:26px}
  .cf-tabs__list{gap:5px}
  .cf-tabs__tab{padding:10px 8px;font-size:14px}
  .cf-tpcard__score b{font-size:54px}
  .cf-tpcard__main{gap:12px}
}


/* ---- 60_glosario.css ---- */
/* ==========================================================================
   V2 — Glosario (v2_glosario.py): /glosario-seguro-mascotas/
   Diseño de Luis: tinta, papel, crema, salvia, menta y coral; titulares enormes; líneas finas; píldoras.
   Prefijo .glo- (usa además .page-hero, .subnav y .no-results, que son del sistema).
   Móvil primero (el 90 % del tráfico, 360-414 px): buscador y A-Z fijos bajo la cabecera, H1 de 34-40 px y H2 de
   28-32 px, texto de lectura de 16 px como mínimo, toques de 44 px, secciones compactas, «En Swipet» plegado con un
   resumen útil en la pestaña, «Ver también» en pastillas y carruseles con pista de que siguen. Sin scroll horizontal.
   03/10/2026 (revisión móvil): anclas que caen justo bajo la barra, H1 en dos líneas a 360 px, botón grande para borrar
   la búsqueda, contacto en tarjeta, sin entradilla repetida y zonas de toque de 44 px en los enlaces pequeños.
   ========================================================================== */
:root{--glo-bar-h:76px}
@media(max-width:899.98px){:root{--glo-bar-h:118px}}
/* Anclas (#carencia, #letra-c…): la página fija su margen superior (cabecera + barra del buscador) y las letras y los
   términos no suman otro encima. Antes se sumaban el de 05_global.css (cabecera + 66 px) y el propio, y el término
   caía ~270 px por debajo del borde en el móvil. */
html:has(.glo-dict){scroll-padding-top:calc(var(--header-h) + var(--glo-bar-h) + 12px)}

/* --- Cabecera: texto a la izquierda y foto a sangre a la derecha (solo en pantallas anchas; en el móvil, sin foto para
   que el buscador quede en la primera pantalla) --- */
.glo-hero{position:relative;overflow:hidden;padding:clamp(40px,5.4vw,84px) 0 clamp(36px,4.6vw,70px);border-bottom:1px solid var(--line)}
.glo-hero .crumbs{margin-bottom:clamp(20px,2.4vw,34px)}
.glo-hero .eyebrow{margin-bottom:18px}
.glo-hero h1{font-size:clamp(44px,6vw,92px);line-height:.93;letter-spacing:-.05em;margin:0;max-width:none}
.glo-hero .lead{max-width:560px;margin:24px 0 0;color:var(--muted);font-size:clamp(17px,.5vw + 15px,20px);line-height:1.5}
.glo-hero__meta{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.glo-hero__meta li,.glo-hero__meta a{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:7px 14px;border-radius:999px;background:var(--cream);color:var(--ink);font-size:14px;line-height:1.25}
.glo-hero__meta li.glo-hero__src{padding:0;background:none}
.glo-hero__meta svg{width:16px;height:16px;flex:none}
.glo-hero__meta a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:background-color .2s}
.glo-hero__meta a:hover{background:var(--sage)}
.glo-hero__media{display:none}
@media(min-width:1000px){
  .glo-hero{min-height:520px;display:flex;align-items:center}
  .glo-hero>.wrap{width:100%}
  .glo-hero__copy{max-width:56%}
  .glo-hero__media{display:block;position:absolute;top:0;right:0;bottom:0;width:40%;background:var(--cream)}
  .glo-hero__media img{width:100%;height:100%;object-fit:cover}
  .glo-hero__tag{position:absolute;left:0;bottom:0;margin:0;max-width:300px;background:var(--sage);color:var(--ink);padding:18px 24px 20px;font-size:16px;font-weight:700;line-height:1.3;letter-spacing:-.01em}
}
@media(max-width:600px){
  .glo-hero{padding:24px 0 28px}
  .glo-hero .crumbs{margin-bottom:18px}
  .glo-hero .eyebrow{margin-bottom:12px}
  /* «Glosario del seguro / para mascotas» en dos líneas también a 360 px (antes, tres) */
  .glo-hero h1{font-size:clamp(32px,9.2vw,40px);line-height:.98;letter-spacing:-.045em;text-wrap:balance}
  .glo-hero .lead{margin-top:14px;font-size:17px;line-height:1.5}
  .glo-hero__meta{margin-top:18px}
  .glo-hero__meta li:nth-child(1){display:none}
  .glo-hero__meta li,.glo-hero__meta a{font-size:15px}
  .glo-hero__meta a{min-height:44px}
}

/* --- Barra fija: buscador + índice A-Z (usa .subnav: letra activa y, en móvil, se esconde al bajar) --- */
.glo-dict{position:relative}
.glo-bar{z-index:45;background:rgba(255,253,249,.97)}
.glo-bar__in{display:flex;align-items:center;gap:12px 28px;min-height:var(--glo-bar-h);padding-block:10px}
.glo-find{display:flex;align-items:center;gap:12px;flex:1 1 320px;max-width:440px;min-width:0;border-bottom:1px solid var(--ink);padding:2px 0}
.glo-find:focus-within{outline:3px solid var(--coral-ink);outline-offset:4px}
.glo-find>svg{width:22px;height:22px;flex:none}
.glo-find input{flex:1;min-width:0;height:48px;border:0;border-radius:0;background:transparent;font:inherit;font-size:18px;color:var(--ink);-webkit-appearance:none;appearance:none}
.glo-find input:focus{outline:none}
.glo-find input::placeholder{color:var(--muted);opacity:1}
.glo-find__n{flex:none;font-size:13px;color:var(--muted);white-space:nowrap}
/* Borrar la búsqueda: botón propio de 44 px en vez del aspa nativa del campo (diminuta y azul en algunos móviles) */
.glo-find input::-webkit-search-cancel-button{-webkit-appearance:none;appearance:none;display:none}
.glo-find__x{flex:none;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:var(--cream);color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:background-color .2s}
.glo-find__x[hidden]{display:none}
.glo-find__x svg{width:18px;height:18px}
.glo-find__x:hover{background:var(--sage)}
html:not(.js) .glo-find{display:none}
.glo-az{position:relative;display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;margin-left:auto;min-width:0}
.glo-az::-webkit-scrollbar{display:none}
.subnav .glo-az a{flex:none;display:grid;place-items:center;width:38px;height:38px;padding:0;border-radius:50%;border:1px solid transparent;font-size:15px;font-weight:700;line-height:1;color:var(--ink);transition:background-color .2s,border-color .2s,opacity .2s}
.subnav .glo-az a:hover{background:var(--cream);border-color:transparent}
.subnav .glo-az a.is-active{border-color:var(--ink);background:transparent}
.subnav .glo-az a.is-empty{opacity:.3;pointer-events:none}
@media(max-width:899.98px){
  .glo-bar__in{flex-wrap:wrap;gap:4px 12px;padding-block:6px 4px}
  .glo-find{flex:1 1 100%;max-width:none}
  .glo-find input{font-size:17px}
  .glo-dict:not(.is-filtering) .glo-find__n{display:none}
  /* A-Z deslizable de borde a borde, con un desvanecido a la derecha que avisa de que sigue */
  .glo-az{flex:1 1 100%;margin:0 calc(-1*var(--gutter));padding:0 var(--gutter);-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent)}
  .glo-az::after{content:"";flex:0 0 20px}
  .subnav .glo-az a{width:44px;height:44px;font-size:16px}
}

/* --- Sección de términos: cabecera corta (el buscador ya está arriba) --- */
.glo-terms{padding-top:clamp(40px,5vw,76px)}
.glo-head{max-width:900px;margin:0 0 clamp(30px,3.4vw,48px)}
.glo-head .eyebrow{margin-bottom:16px}
.glo-head h2{font-size:clamp(32px,3.7vw,54px);line-height:1;letter-spacing:-.04em;margin:0}
.glo-head p:last-child{margin:18px 0 0;max-width:680px;color:var(--muted);font-size:18px;line-height:1.55}
@media(max-width:600px){
  .glo-terms{padding-top:36px;padding-bottom:56px}
  .glo-head{margin-bottom:26px}
  .glo-head .eyebrow{margin-bottom:12px}
  .glo-head h2{font-size:clamp(28px,7.8vw,32px);line-height:1.06;letter-spacing:-.035em;text-wrap:balance}
  .glo-head p:last-child{margin-top:12px;font-size:16.5px;line-height:1.55}
  /* La entradilla repite casi palabra por palabra la de la cabecera: en el móvil se ahorra para llegar antes a la lista */
  .glo-head p:last-child{display:none}
}
/* Buscando en el móvil: los resultados, justo bajo el buscador (encima del teclado) */
@media(max-width:899.98px){.glo-dict.is-searching .glo-head{display:none}.glo-dict.is-searching .glo-terms{padding-top:20px}}

/* Lo esencial, en cinco palabras (se oculta mientras se busca; con el filtro por tema se queda, para que los temas no
   se muevan bajo el dedo) */
.glo-key{margin:0 0 clamp(34px,4vw,56px)}
.glo-key__t{margin:0 0 14px;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.glo-key__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.glo-key__list li{display:flex;border-right:1px solid var(--line)}
.glo-key__list li:last-child{border-right:0}
.glo-key__a{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:22px 22px 20px;color:var(--ink);text-decoration:none}
.glo-key__list li:first-child .glo-key__a{padding-left:0}
.glo-key__n{font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--coral-ink)}
.glo-key__v{font-size:clamp(26px,2.3vw,36px);font-weight:700;line-height:1.05;letter-spacing:-.035em}
.glo-key__d{font-size:14.5px;line-height:1.45;color:var(--muted)}
.glo-key__go{margin-top:auto;padding-top:6px;font-size:18px;line-height:1;transition:transform .25s var(--ease)}
.glo-key__a:hover .glo-key__v{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.glo-key__a:hover .glo-key__go{transform:translateX(4px)}
.glo-dict.is-searching .glo-key{display:none}
@media(max-width:899.98px){
  /* Carrusel de tarjetas compactas: la flecha va arriba a la derecha (sin hueco al pie) y asoma la siguiente */
  .glo-key{margin-bottom:28px}
  .glo-key__list{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border:0;margin:0 calc(-1*var(--gutter));padding:0 var(--gutter) 2px;scroll-padding-inline:var(--gutter)}
  .glo-key__list::-webkit-scrollbar{display:none}
  .glo-key__list::after{content:"";flex:0 0 1px}
  .glo-key__list li{flex:0 0 min(80%,300px);scroll-snap-align:start;border:0;background:var(--cream)}
  .glo-key__list li:first-child .glo-key__a,.glo-key__a{position:relative;gap:6px;padding:16px 52px 18px 18px}
  .glo-key__go{position:absolute;top:14px;right:14px;margin:0;padding:0;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--paper);font-size:15px}
  .glo-key__v{font-size:30px}
  .glo-key__d{font-size:16px;line-height:1.45}
}

/* Filtro por tema (solo con JS) */
.glo-cats{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 clamp(24px,3vw,36px)}
html:not(.js) .glo-cats{display:none}
.glo-cats__l{margin-right:6px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.glo-cat{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 15px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:14px;line-height:1.2;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.glo-cat:hover{border-color:var(--ink)}
.glo-cat[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff}
.glo-cat__n{font-size:12.5px;color:var(--muted)}
.glo-cat[aria-pressed="true"] .glo-cat__n{color:#d9d4cc}
@media(max-width:899.98px){
  .glo-cats{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:calc(-1*var(--gutter));margin-right:calc(-1*var(--gutter));padding:2px var(--gutter) 4px;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 36px),transparent)}
  .glo-cats::-webkit-scrollbar{display:none}
  .glo-cats::after{content:"";flex:0 0 20px}
  .glo-cats__l{display:none}
  .glo-cat{flex:none;min-height:44px;font-size:15px}
}

/* --- Lista: una letra grande (fija en escritorio) y sus términos con líneas finas --- */
.glo-list{border-bottom:1px solid var(--line)}
.glo-group{display:grid;grid-template-columns:minmax(0,1fr);border-top:1px solid var(--ink);scroll-margin-top:0}
.glo-group[hidden]{display:none}
.glo-group__l{margin:0;padding:22px 0 2px;font-size:44px;line-height:.9;letter-spacing:-.05em;color:var(--ink)}
@media(min-width:900px){
  .glo-group{grid-template-columns:clamp(96px,10vw,160px) minmax(0,1fr);column-gap:clamp(24px,3vw,48px)}
  .glo-group__l{position:sticky;top:calc(var(--header-h) + var(--glo-bar-h) + 12px);align-self:start;padding:24px 0;font-size:clamp(64px,7.4vw,112px)}
  .glo-group__l::after{content:"";display:block;width:30px;height:2px;margin-top:16px;background:var(--coral)}
}
.glo-dl{margin:0;display:grid;grid-template-columns:minmax(0,1fr)}
.glo-term{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:24px 0;border-top:1px solid var(--line);scroll-margin-top:0}
.glo-dl>.glo-term:first-child{border-top:0}
.glo-term[hidden]{display:none}
@media(min-width:900px){.glo-term{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:clamp(24px,3.2vw,52px);padding:28px 0}}
.glo-term dt{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.glo-term__name{font-size:clamp(21px,.7vw + 16px,26px);font-weight:700;line-height:1.15;letter-spacing:-.02em}
.glo-term__also{font-size:14px;line-height:1.4;color:var(--muted)}
.glo-term__row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:2px}
.glo-tag{display:inline-flex;align-items:center;min-height:26px;padding:3px 11px;border-radius:999px;background:var(--cream);font-size:12.5px;font-weight:700;letter-spacing:.03em;color:var(--ink)}
.glo-tag::before{content:attr(data-tag)}
.glo-term dd{margin:0;display:grid;gap:12px;align-content:start;min-width:0}
.glo-term__def{margin:0;font-size:17px;line-height:1.55;color:var(--ink)}
.glo-term__sw{margin:0;padding:12px 16px;background:var(--mint);font-size:15.5px;line-height:1.5;color:var(--ink)}
.glo-term__sw a,.glo-term__def a{color:var(--ink);font-weight:700;border-bottom:1px solid currentColor}
.glo-term__pend{margin:0;font-size:14px}
.glo-term__go{margin:0}
.glo-term__go .text-link{font-size:14px}
.glo-term__calc .text-link{font-size:15px}
.glo-term__meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 18px;font-size:14px;line-height:1.4;color:var(--muted)}
.glo-term__meta p{margin:0}
.glo-term__meta a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.glo-term__meta a:hover{text-decoration-thickness:2px}
/* «En Swipet» plegable: en escritorio (y sin JS) todo a la vista, sin la pestaña; en móvil, la pestaña lleva el resumen */
.glo-more>summary{list-style:none}
.glo-more>summary::-webkit-details-marker{display:none}
.glo-more__b{display:grid;gap:12px}
@media(min-width:900px){.glo-more>summary{display:none}}
.glo-copy{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:5px 12px;border-radius:999px;border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;font-size:13px;line-height:1.2;cursor:pointer;transition:background-color .2s,border-color .2s}
.glo-copy:hover{border-color:var(--ink)}
.glo-copy svg{width:16px;height:16px;flex:none}
.glo-copy__t::after{content:attr(data-t)}
.glo-copy.is-done{background:var(--sage);border-color:var(--sage)}
html:not(.js) .glo-copy{display:none}
.glo-term.pending{outline-offset:6px}
.glo-term dd>.pending-tag{margin-bottom:0;width:auto;justify-self:start}
/* Resaltes: el término al que se llega por enlace (#carencia) y los nombres que coinciden con lo buscado */
.glo-term:target{background:var(--cream);box-shadow:-18px 0 0 var(--cream),18px 0 0 var(--cream)}
.glo-term:target::before{content:"";position:absolute;left:-18px;top:0;bottom:0;width:3px;background:var(--coral)}
.glo-term.is-hit .glo-term__name{background:linear-gradient(transparent 62%,rgba(255,109,98,.45) 62%)}
@media(max-width:899.98px){
  .glo-term{gap:12px;padding:20px 0}
  .glo-term dt{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;row-gap:4px;align-items:start}
  .glo-term__name,.glo-term__also{grid-column:1}
  /* justify-self:start: el resaltado de la búsqueda subraya solo la palabra, no toda la columna */
  .glo-term__name{justify-self:start;font-size:22px;line-height:1.2;overflow-wrap:break-word}
  /* El botón de copiar (44 px) no estira la fila del nombre: queda centrado con él y la definición sube */
  .glo-term__row{grid-column:2;grid-row:1/span 2;margin:-9px 0}
  .glo-tag{display:none}
  .glo-copy{width:44px;height:44px;min-height:44px;padding:0;justify-content:center}
  .glo-copy__t{display:none}
  .glo-term dd{gap:12px}
  .glo-term__def{font-size:16.5px;line-height:1.55;text-wrap:pretty}
  .glo-term__sw{font-size:16px;line-height:1.55;padding:13px 16px;text-wrap:pretty}
  /* Pestaña «En Swipet» (details.glo-more): cerrada enseña el resumen; abierta, la caja menta sigue debajo sin cortes */
  .glo-more{background:var(--mint)}
  .glo-more>summary{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;column-gap:12px;min-height:58px;padding:10px 12px 10px 16px;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .glo-more>summary:focus-visible{outline:3px solid var(--coral-ink);outline-offset:-3px}
  .glo-more__k{grid-column:1;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1.2;color:#3a5530}
  .glo-more__r{grid-column:1;margin-top:3px;font-size:16px;font-weight:700;line-height:1.3;letter-spacing:-.01em;color:var(--ink);text-wrap:balance}
  .glo-more__i{grid-column:2;grid-row:1/span 2;width:34px;height:34px;border-radius:50%;background:var(--paper);display:grid;place-items:center;color:var(--ink)}
  .glo-more__i svg{width:16px;height:16px;transition:transform .2s}
  .glo-more[open]>summary{min-height:48px;padding-bottom:4px}
  .glo-more[open] .glo-more__r{display:none}
  .glo-more[open] .glo-more__i svg{transform:rotate(180deg)}
  .glo-more__b{gap:14px;padding:0 16px 16px}
  .glo-more .glo-term__sw{padding:0;background:none}
  .glo-more .glo-term__sw>b:first-child{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  /* «Ver también»: pastillas de 44 px (sin las comas); «Fuente»: en línea, con la zona de toque ampliada */
  .glo-term__meta{display:grid;gap:12px}
  .glo-rel{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
  .glo-rel__l{margin-right:2px}
  .glo-rel .glo-sep{display:none}
  .glo-term__meta .glo-rel a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:var(--paper);font-size:15px;line-height:1.2;text-decoration:none;color:var(--ink)}
  .glo-term__meta .glo-rel a:hover{border-color:var(--ink)}
  .glo-srcref a{padding:13px 0}
  .glo-term__go .text-link,.glo-term__calc .text-link{font-size:15.5px}
  .glo-term:target{box-shadow:-12px 0 0 var(--cream),12px 0 0 var(--cream)}
  .glo-term:target::before{left:-12px}
}
@media(prefers-reduced-motion:reduce){.glo-more__i svg{transition:none}}
/* cta_strip: la regla compartida «.cta-strip p span{display:block…}» también pilla el nombre de la mascota
   (<span data-pet-name>); el integrador ya lo deja en línea, y aquí se le quita además el gris y el tamaño de la nota */
.glo-terms .cta-strip p [data-pet-name]{display:inline;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit}
.glo-terms .cta-strip p>span:not([data-pet-name]){margin-top:6px}
/* Enlaces de texto sueltos («o llámanos…», «Seguro para perros PPP →»): zona de toque de 44 px sin cambiar su dibujo */
.glo-terms .cta-strip .text-link,.glo-term__go .text-link{position:relative}
.glo-terms .cta-strip .text-link::after,.glo-term__go .text-link::after{content:"";position:absolute;inset:-9px -4px}
/* La franja de precio va pegada a la lista: la raya de abajo de la lista hace de raya de arriba (sin dos rayas seguidas) */
.glo-terms .cta-strip{margin-top:0;border-top:0}
.glo-list .no-results{margin:0;padding:28px 0 32px;border-top:1px solid var(--ink);font-size:17px;line-height:1.55;color:var(--ink)}
.glo-list .no-results a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){
  .glo-terms .cta-strip{padding:26px 0 28px}
  .glo-terms .cta-strip p{font-size:21px;line-height:1.25;text-wrap:balance}
  .glo-terms .cta-strip p>span:not([data-pet-name]){margin-top:8px;line-height:1.5;text-wrap:pretty}
  .glo-terms .cta-strip .cta-row{width:100%}
  .glo-terms .cta-strip .btn{width:100%;justify-content:space-between}
  .glo-list .no-results a{display:inline-block;padding:10px 0;margin:-10px 0}
}

/* --- Palabras que se confunden: tarjetas de dos columnas con «≠» --- */
.glo-pairs{display:grid;gap:clamp(16px,2vw,24px)}
@media(min-width:900px){.glo-pairs{grid-template-columns:repeat(2,minmax(0,1fr))}}
.glo-pair{display:flex;flex-direction:column;gap:20px;background:var(--paper);border:1px solid var(--line);padding:clamp(22px,2.6vw,34px)}
.glo-pair__t{margin:0;font-size:clamp(22px,1.1vw + 15px,30px);line-height:1.1;letter-spacing:-.025em;text-wrap:balance}
.glo-pair__vs{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:18px;align-items:start;padding-top:18px;border-top:1px solid var(--line)}
.glo-pair__side{display:grid;gap:6px}
.glo-pair__side p{margin:0}
.glo-pair__n{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.glo-pair__n a{color:var(--coral-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
/* Zona de toque de 44 px sin mover el dibujo (el nombre del término es un enlace pequeño) */
.glo-pair__n a{display:inline-block;padding:14px 0;margin:-14px 0}
.glo-pair__side p+p{font-size:16px;line-height:1.5;color:var(--ink)}
.glo-pair__o{align-self:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--ink);display:grid;place-items:center;font-size:19px;font-weight:700;line-height:1}
.glo-pair__sw{margin:auto 0 0;padding:12px 16px;background:var(--mint);font-size:15px;line-height:1.5}
.glo-swipe{display:none}
@media(max-width:899.98px){
  /* En móvil, las cuatro tarjetas en fila deslizable (como «Lo esencial») */
  .glo-diff .sec-head{margin-bottom:18px}
  .glo-diff .sec-head h2{font-size:clamp(28px,7.8vw,32px);line-height:1.06;letter-spacing:-.035em;text-wrap:balance}
  .glo-diff .sec-head .copy p{font-size:16.5px;line-height:1.55}
  .glo-swipe{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
  /* Cada tarjeta con su altura (sin el hueco que dejaba igualarlas a la más larga) */
  .glo-pairs{display:flex;align-items:flex-start;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(-1*var(--gutter));padding:0 var(--gutter) 6px;scroll-padding-inline:var(--gutter)}
  .glo-pairs::-webkit-scrollbar{display:none}
  .glo-pairs::after{content:"";flex:0 0 1px}
  .glo-pair{flex:0 0 min(86%,420px);scroll-snap-align:start;gap:16px}
  .glo-pair__sw{margin-top:2px;font-size:16px;line-height:1.5}
}
@media(max-width:600px){
  .glo-diff{padding-block:56px}
  .glo-pair{padding:20px 18px 18px}
  .glo-pair__t{font-size:22px}
  .glo-pair__vs{grid-template-columns:minmax(0,1fr);gap:10px;padding-top:14px}
  .glo-pair__o{justify-self:start;width:32px;height:32px;font-size:15px}
}

/* --- Fuentes --- */
.glo-src{border-top:1px solid var(--line)}
.glo-src__grid{display:grid;gap:24px 60px}
@media(min-width:900px){.glo-src__grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start}}
.glo-src h2{margin:0;font-size:clamp(28px,2.8vw,40px);line-height:1.05;letter-spacing:-.035em}
.glo-src__lead{margin:16px 0 0;max-width:520px;color:var(--muted);font-size:17px;line-height:1.55}
.glo-src .c-sources-box{margin-top:0;padding-top:0;border-top:0}
.glo-src .c-sources{font-size:15px;gap:6px}
.glo-src .c-sources li{scroll-margin-top:0}
@media(max-width:600px){
  .glo-src{padding-block:48px}
  .glo-src__grid{gap:20px}
  .glo-src h2{font-size:clamp(28px,7.8vw,32px);line-height:1.06;text-wrap:balance}
  .glo-src__lead{margin-top:12px;font-size:16.5px}
  .glo-src .c-sources{font-size:15.5px;line-height:1.45}
  .glo-src .c-sources li{padding:5px 0}
}

/* --- ¿No encuentras un término? --- */
.glo-help__grid{display:grid;gap:44px 72px}
@media(min-width:960px){.glo-help__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start}}
.glo-help h2{margin:0;font-size:clamp(36px,4.2vw,60px);line-height:1;letter-spacing:-.04em}
.glo-help__lead{margin:20px 0 0;max-width:560px;color:var(--muted);font-size:18px;line-height:1.55}
.glo-next__t{margin:0 0 10px;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.glo-next ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.glo-next a{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}
.glo-next b{display:block;font-size:18px;line-height:1.25;letter-spacing:-.01em}
.glo-next small{display:block;margin-top:2px;font-size:14px;line-height:1.4;color:var(--muted)}
.glo-next__go{width:44px;height:44px;border-radius:50%;border:1px solid var(--ink);display:grid;place-items:center;font-size:18px;transition:background-color .2s,color .2s}
.glo-next a:hover .glo-next__go{background:var(--ink);color:#fff}
.glo-next a:hover b{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){
  .glo-help{padding-block:56px}
  .glo-help__grid{gap:36px}
  /* Contacto en tarjeta blanca (en el móvil, 02_comun.css le daba relleno sin fondo y quedaba sangrado) */
  .glo-help .c-help--compact{margin-top:22px;padding:16px 18px 6px;background:var(--paper);border:1px solid var(--line);font-size:15px}
  .glo-help .c-help--compact>b{flex:1 1 100%;margin:0 0 2px;font-size:19px;line-height:1.2;letter-spacing:-.015em}
  .glo-help .c-help--compact .c-help__a{min-height:44px;font-size:16px}
  .glo-help .c-help--compact .c-help__h{flex:1 1 100%;margin:-8px 0 6px;font-size:14px}
  .glo-help h2{font-size:clamp(28px,7.8vw,32px);line-height:1.06;letter-spacing:-.035em;text-wrap:balance}
  .glo-help__lead{margin-top:12px;font-size:16.5px}
  .glo-next a{padding:14px 0}
  .glo-next b{font-size:17px}
  .glo-next small{font-size:15px}
}

@media(prefers-reduced-motion:reduce){.glo-key__go,.glo-cat,.glo-copy,.subnav .glo-az a,.glo-next__go{transition:none}}
/* 03/10/2026: las fuentes quedan fuera del diccionario, donde la barra del buscador ya no va pegada: no se les reserva su
   sitio (si no, «Con fuentes: UNESPA, BOE y DGSFP» y las llamadas a cada fuente caían ~120 px por debajo de la cabecera) */
.glo-src[id],.glo-src .c-sources li{scroll-margin-top:calc(8px - var(--glo-bar-h))}


/* ---- 70_blog.css ---- */
/* ==========================================================================
   V2 — Blog de mascotas y plantilla de artículo (v2_blog.py). Prefijo .bl-.
   Diseño de Luis (tokens de swipet.css): tinta, papel, crema, salvia, menta y coral; antetítulos con raya
   coral, líneas finas, píldoras y fotos rectas. Toques de 44 px o más; notas de 12,5 px o más.
   Las piezas compartidas (.c-*, .sec-head, .final-cta, .sim…) no se tocan para el resto de la web: lo que se ajusta
   en estas dos páginas va con selectores propios (.bl-*, o «.bl-hero ~ …» / «.bl-ahero ~ …», que solo existen aquí).

   Móvil primero (03/10/2026: el 90 % del tráfico es móvil). Revisado con capturas a 360, 390 y 414 px:
   H1 de 34-40 px y H2 de 28-32 px, texto de párrafo de 16 px o más, campos de formulario a 16 px (el iPhone no hace
   zoom), secciones de 56 px, anclas que quedan justo bajo la cabecera fija, toques de 44 px y nada que se salga.
   ========================================================================== */

/* --- Piezas pequeñas comunes a las dos páginas ------------------------------ */
.bl-kicker{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin:0;font-size:13px;line-height:1.4;color:var(--muted)}
.bl-kicker .cat{font-size:12.5px;letter-spacing:.13em}
.bl-badge{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;padding:6px 12px;border-radius:999px;background:#fff;color:var(--ink);font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.3}
.bl-badge svg{width:15px;height:15px;flex:none}
/* Tarjetas enteras clicables: el foco se marca en la tarjeta solo con teclado (:has(:focus-visible), más abajo), para que
   al tocar en el móvil no quede un recuadro. Navegadores sin :has(): el recuadro de siempre. */
@supports not selector(:has(*)){
  .bl-hero__card:focus-within,.bl-feature:focus-within,.bl-card:focus-within,.bl-guide:focus-within{outline:3px solid var(--coral-ink);outline-offset:4px}
}

/* --- Móvil: escala común de las dos páginas ------------------------------------
   Afina la base móvil común (07_integrador.css): secciones de 56 px, titulares de sección de 30 px y CTA final con H2 de
   32 px (la común lo deja en 34) y pasos a 16 px (la común, 14). «.bl-hero ~» y «.bl-ahero ~» solo existen en estas
   páginas: no cambian nada en el resto de la web. */
@media(max-width:600px){
  :is(.bl-hero,.bl-ahero)~.section{padding-block:56px}
  :is(.bl-hero,.bl-ahero)~.section .sec-head{margin-bottom:28px}
  :is(.bl-hero,.bl-ahero)~.section .sec-head h2{font-size:30px;line-height:1.05;letter-spacing:-.035em}
  :is(.bl-hero,.bl-ahero)~.section .sec-head .copy{margin-top:14px;font-size:17px;line-height:1.55}
  :is(.bl-hero,.bl-ahero)~.final-cta{padding:60px var(--gutter) 56px}
  :is(.bl-hero,.bl-ahero)~.final-cta h2{font-size:32px;line-height:1.04;letter-spacing:-.035em}
  :is(.bl-hero,.bl-ahero)~.final-cta .lead{margin:16px auto 26px;font-size:17px;line-height:1.5}
  :is(.bl-hero,.bl-ahero)~.final-cta .final-steps{margin-top:36px}
  :is(.bl-hero,.bl-ahero)~.final-cta .final-steps div{padding:18px 0 4px;font-size:16px;line-height:1.5}
  :is(.bl-hero,.bl-ahero)~.final-cta .final-steps b{font-size:18px;line-height:1.25;margin-bottom:4px}
}

/* --- Portada del blog: cabecera ----------------------------------------------- */
.bl-hero{padding:64px 0 0}
.bl-hero .crumbs{margin-bottom:30px}
.bl-hero h1{font-size:clamp(46px,6.2vw,92px);line-height:.94;letter-spacing:-.05em;max-width:1100px}
.bl-hero__grid{display:grid;gap:34px;margin-top:30px}
@media(min-width:1000px){.bl-hero__grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:70px;align-items:end}}
.bl-hero .lead{margin:0;max-width:640px}
@media(max-width:600px){
  .bl-hero{padding:28px 0 0}
  .bl-hero .crumbs{margin-bottom:20px}
  .bl-hero .eyebrow{margin-bottom:12px}
  .bl-hero h1{font-size:clamp(34px,10.2vw,38px);line-height:1;letter-spacing:-.045em} /* tope de 38 px, como los demás H1 (03/10/2026) */
  .bl-hero__grid{gap:26px;margin-top:16px}
  .bl-hero .lead{font-size:18px;line-height:1.5}
}

/* Buscador (el filtro es el genérico de swipet.js; los resultados al momento, 70_blog.js) */
.bl-search{display:grid;gap:8px;max-width:640px;margin-top:30px}
html:not(.js) .bl-search{display:none}
.bl-search__label{font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3}
.bl-search__field{display:flex;align-items:center;gap:12px;border-bottom:1.5px solid var(--ink);padding:2px 0}
.bl-search__field:focus-within{outline:3px solid var(--coral-ink);outline-offset:4px}
.bl-search__field svg{width:24px;height:24px;flex:none}
.bl-search__field input{flex:1;min-width:0;height:56px;border:0;border-radius:0;background:transparent;font:inherit;font-size:20px;color:var(--ink);-webkit-appearance:none;appearance:none}
.bl-search__field input:focus{outline:none}
.bl-search__field input::placeholder{color:var(--muted);opacity:1}
.bl-search__field input::-webkit-search-cancel-button{cursor:pointer}
.bl-search__help{margin:0;font-size:14px;line-height:1.45;color:var(--muted)}
.bl-search__res{margin-top:6px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:8px;box-shadow:0 18px 44px rgba(23,21,18,.09)}
.bl-search__res[hidden]{display:none}
.bl-res__list{list-style:none;margin:0;padding:0;display:grid}
.bl-res__a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;padding:10px 14px;border-radius:14px;font-size:16px;line-height:1.3;color:var(--ink)}
.bl-res__a:hover,.bl-res__a:focus-visible{background:var(--cream)}
.bl-res__a:focus-visible{outline:3px solid var(--coral-ink);outline-offset:-3px}
.bl-res__a mark{background:var(--mint);color:inherit;border-radius:3px;padding:0 1px}
.bl-res__c{flex:none;font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--coral-ink);text-align:right}
.bl-res__all{display:flex;align-items:center;gap:10px;min-height:44px;margin:4px 6px 2px;padding:6px 8px;font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.bl-res__none{margin:0;padding:12px 14px;font-size:16px;line-height:1.5;color:var(--muted)}
@media(max-width:600px){
  .bl-search{margin-top:22px}
  .bl-search__field input{height:52px;font-size:18px}
  .bl-res__a{flex-direction:column;align-items:flex-start;gap:2px}.bl-res__c{text-align:left}
}

/* Guía revisada (tarjeta salvia, toda la tarjeta es el enlace) */
.bl-hero__card{position:relative;display:grid;gap:12px;background:var(--sage);padding:26px 28px 24px;transition:transform .25s var(--ease)}
.bl-hero__card:hover{transform:translateY(-3px)}
.bl-hero__card:has(:focus-visible){outline:3px solid var(--coral-ink);outline-offset:4px}
.bl-hero__card p{margin:0}
.bl-hero__ct{font-size:clamp(22px,1vw + 14px,28px);font-weight:700;line-height:1.1;letter-spacing:-.025em}
.bl-hero__ct a::after{content:"";position:absolute;inset:0}
.bl-hero__ct a:focus-visible{outline:none}
.bl-hero__card:hover .bl-hero__ct a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.bl-hero__cd{font-size:16px;line-height:1.5;color:rgba(23,21,18,.8)}
.bl-hero__cm{display:flex;align-items:flex-start;gap:8px;font-size:14px;line-height:1.4;color:rgba(23,21,18,.8)}
.bl-hero__cm svg{width:16px;height:16px;flex:none;margin-top:1px}
.bl-hero__go{display:inline-flex;align-items:center;gap:14px;width:max-content;margin-top:4px;padding-bottom:4px;border-bottom:1px solid currentColor;font-size:15px;font-weight:700}
@media(max-width:600px){.bl-hero__card{gap:10px;padding:22px 20px 20px}}

/* Temas: píldoras con anclas a la propia página */
/* position:relative: los textos ocultos (.visually-hidden, absolutos) de las píldoras quedan dentro del carril y no
   ensanchan la página en móvil */
.bl-cats{position:relative;display:flex;flex-wrap:wrap;gap:8px;margin-top:44px;padding:24px 0 34px;border-top:1px solid var(--line)}
.bl-cats .chip{min-height:44px;padding:8px 16px;font-size:14px;white-space:nowrap}
.bl-cat__n{font-size:12.5px;font-weight:700;color:var(--muted);transition:color .2s}
.bl-cats .chip:hover .bl-cat__n{color:#d7d2c8}
@media(max-width:700px){
  .bl-cats{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter);scroll-padding-inline:var(--gutter);
    -webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .bl-cats::-webkit-scrollbar{display:none}
  .bl-cats .chip{flex:none;font-size:15px}
}
@media(max-width:600px){.bl-cats{margin-top:28px;padding-block:16px 22px}}

/* --- Lo último: destacado y tarjetas ------------------------------------------ */
.bl-feature{position:relative;display:grid;gap:26px;align-items:center;padding-bottom:56px;margin-bottom:56px;border-bottom:1px solid var(--line)}
@media(min-width:960px){.bl-feature{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px}}
.bl-feature__media{aspect-ratio:16/10}
.bl-feature__media img{transition:transform .6s var(--ease)}
.bl-feature:hover .bl-feature__media img{transform:scale(1.03)}
.bl-feature__t{font-size:clamp(30px,3.3vw,50px);line-height:1.02;letter-spacing:-.04em;margin:12px 0 16px}
.bl-feature__t a::after{content:"";position:absolute;inset:0}
.bl-feature__t a:focus-visible{outline:none}
.bl-feature:has(:focus-visible){outline:3px solid var(--coral-ink);outline-offset:6px}
.bl-feature:hover .bl-feature__t a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.bl-feature__body>p:not(.bl-kicker){color:var(--muted);margin:0 0 22px}
@media(max-width:600px){
  .bl-feature{gap:16px;padding-bottom:28px;margin-bottom:8px;border-bottom:0}
  .bl-feature__media{aspect-ratio:3/2;margin-inline:calc(-1*var(--gutter))}
  .bl-feature__t{font-size:26px;line-height:1.08;margin:10px 0 10px}
  .bl-feature__body>p:not(.bl-kicker){font-size:16px;line-height:1.55;margin-bottom:14px}
}

.bl-grid{list-style:none;margin:0;padding:0;display:grid;gap:48px 26px}
@media(min-width:700px){.bl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1024px){.bl-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.bl-card{position:relative;display:grid;gap:14px;align-content:start}
.bl-card__media{aspect-ratio:4/3}
.bl-card__media img{transition:transform .6s var(--ease)}
.bl-card:hover .bl-card__media img{transform:scale(1.04)}
.bl-card__body{display:grid;gap:8px;align-content:start;min-width:0}
.bl-card__t{font-size:21px;line-height:1.18;letter-spacing:-.015em}
.bl-card__t a::after{content:"";position:absolute;inset:0}
.bl-card__t a:focus-visible{outline:none}
.bl-card:has(:focus-visible){outline:3px solid var(--coral-ink);outline-offset:6px}
.bl-card:hover .bl-card__t a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.bl-card__d{margin:0;font-size:16px;line-height:1.5;color:var(--muted)}
/* Última celda de «Lo último»: lleva a la lista completa y deja las filas completas (2 o 3 columnas) */
.bl-card--all{align-content:center;justify-items:start;gap:12px;padding:30px 28px;background:var(--cream)}
.bl-all__n{margin:0;font-size:15px;line-height:1.3;color:var(--muted)}
.bl-all__n b{display:block;font-size:clamp(56px,5vw,84px);font-weight:700;line-height:.9;letter-spacing:-.05em;color:var(--ink)}
.bl-all__go{display:grid;place-items:center;width:52px;height:52px;margin-top:6px;border:1px solid var(--ink);border-radius:50%;font-size:20px;transition:background-color .2s,color .2s}
.bl-card--all:hover .bl-all__go{background:var(--ink);color:#fff}
/* «Ver … guías recientes más» (70_blog.js): solo pliega por debajo de 700 px */
.bl-more-li{display:none}
.bl-more{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;margin:0;padding:10px 20px;border:1px solid var(--ink);border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-size:16px;font-weight:700;line-height:1.2;cursor:pointer;transition:background-color .2s,color .2s}
.bl-more:hover{background:var(--ink);color:#fff}
.bl-more:focus-visible{outline:3px solid var(--coral-ink);outline-offset:3px}
.bl-more__i{font-size:24px;font-weight:400;line-height:1}

/* En móvil, filas compactas: foto pequeña, tema, fecha y título */
@media(max-width:699.98px){
  .bl-grid{gap:0;border-top:1px solid var(--line)}
  .bl-card{grid-template-columns:88px minmax(0,1fr);gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
  .bl-card__media{aspect-ratio:1/1}
  .bl-card__d{display:none}
  .bl-card__t{font-size:17px;line-height:1.25}
  .bl-card__body{gap:4px}
  .bl-card:has(:focus-visible){outline-offset:2px}
  .bl-card--all{grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:4px 14px;margin-top:16px;padding:18px 18px;border-bottom:0}
  .bl-card--all .bl-all__n{grid-column:1}
  .bl-card--all .bl-all__n b{display:inline;font-size:17px;letter-spacing:0;line-height:1.3;color:var(--muted)}
  .bl-card--all .bl-card__t{grid-column:1}
  .bl-all__go{grid-column:2;grid-row:1/span 2;width:44px;height:44px;margin:0;font-size:18px}
  .bl-grid.is-folded>.is-extra{display:none}
  .bl-grid.is-folded>.bl-more-li{display:block;padding:16px 0 0}
}
@media(max-width:380px){.bl-card:not(.bl-card--all){grid-template-columns:76px minmax(0,1fr);gap:14px}}

/* --- Guías de precios: filas numeradas (estilo de la lista de comparativas de Luis) --- */
.bl-guides{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.bl-guide{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr) 52px;gap:22px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}
.bl-guide__n{font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--muted)}
.bl-guide__b{display:grid;gap:6px;justify-items:start;min-width:0}
.bl-guide__t{font-size:clamp(20px,.9vw + 14px,26px);line-height:1.15;letter-spacing:-.02em}
.bl-guide__t a::after{content:"";position:absolute;inset:0}
.bl-guide__t a:focus-visible{outline:none}
.bl-guide:has(:focus-visible){outline:3px solid var(--coral-ink);outline-offset:4px}
.bl-guide p{margin:0;font-size:16px;line-height:1.5;color:var(--muted)}
.bl-guide .bl-badge{margin-top:6px;background:var(--sage)}
.bl-guide__go{width:52px;height:52px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:20px;transition:background-color .2s,color .2s}
.bl-guide:hover .bl-guide__go{background:var(--ink);color:#fff}
.bl-guide:hover .bl-guide__t a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
/* Móvil: sin el círculo de la flecha (toda la fila es el enlace) para que el título tenga sitio, y el número arriba,
   a la altura de la primera línea */
@media(max-width:600px){
  .bl-guide{grid-template-columns:26px minmax(0,1fr);gap:4px 10px;align-items:start;padding:18px 0}
  .bl-guide__n{padding-top:5px}
  .bl-guide__go{display:none}
  .bl-guide__t{font-size:20px;line-height:1.2}
}

/* CTA en línea (sobre la .inline-cta oscura de Luis). La nota honesta (datos de contacto, chip, puede que te llamemos)
   va en columna bajo el botón, para que no ensanche la columna del botón en escritorio. */
.bl-inline{margin:56px 0 0}
.bl-inline .h{margin-bottom:10px}
.bl-inline__cta{display:grid;gap:4px;justify-items:start}
.bl-inline .cta-note{display:grid;gap:5px;max-width:340px;margin:10px 0 0;font-size:13px;line-height:1.4;color:#bdb9b2}
.bl-inline .cta-note span{align-items:flex-start}
.bl-inline .cta-note svg{flex:none;margin-top:1px;color:var(--sage)}
.inline-cta .bl-inline__links{margin-top:12px;font-size:16px;line-height:1.5}
.bl-inline__links a{position:relative;color:#fff;font-weight:700;border-bottom:1px solid currentColor}
.bl-inline__links a::after{content:"";position:absolute;inset:-8px -4px}
.bl-inline__links a:hover{border-bottom-color:var(--coral)}
@media(max-width:600px){
  .bl-inline{margin:40px calc(-1*var(--gutter)) 0;padding:28px var(--gutter) 26px;gap:16px}
  .bl-inline .h{font-size:26px}
  .bl-inline>div:first-child>p:not(.h):not(.bl-inline__links){font-size:16.5px;line-height:1.55}
  .bl-inline__cta{justify-items:stretch}
  .bl-inline__cta .btn{width:100%;justify-content:space-between}
  /* Dos enlaces en dos líneas: interlineado amplio para que sus zonas de toque no se pisen */
  .inline-cta .bl-inline__links{margin-top:14px;font-size:16.5px;line-height:2}
}

/* --- Las más leídas: píldoras numeradas --------------------------------------- */
.bl-top{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.bl-top__a{display:inline-flex;align-items:center;gap:12px;min-height:50px;padding:6px 20px 6px 7px;border-radius:999px;background:var(--cream);font-size:16px;font-weight:700;line-height:1.25;transition:background-color .2s,color .2s}
.bl-top__n{flex:none;width:36px;height:36px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:13px}
.bl-top__a:hover{background:var(--ink);color:#fff}
.bl-top__a:hover .bl-top__n{background:var(--coral);color:var(--ink)}
/* Móvil: una lista limpia a todo el ancho (las píldoras sueltas dejaban huecos desiguales) */
@media(max-width:600px){
  .bl-top{display:grid;gap:8px}
  .bl-top__a{display:flex;width:100%;min-height:52px}
}

/* --- Busca por animal y tema (#todos, 05/10/2026) -------------------------------------
   Sin JS: índice de anclas (.bl-x__index) y todas las listas, una tras otra, con su título («Salud de los perros»).
   Con JS (html.js + .is-tabs): botones «¿Perro o gato?» y «Elige el tema» (aria-pressed) y una lista cada vez; al buscar
   (.is-searching) se ven todas las listas con algo y los botones quedan en espera. */
.bl-az__tools{margin:18px 0 0}
html:not(.js) .bl-az__tools{display:none}
.bl-az__tools .text-link{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-size:16px}
.bl-az__ico{width:16px;height:16px}
.bl-x{border-top:1px solid var(--ink);padding-top:26px}
.bl-x__ui{display:none}
html.js .bl-x__ui{display:grid;gap:12px;justify-items:start}
html.js .bl-x__index{display:none}
.bl-x__lbl{display:flex;align-items:center;gap:10px;margin:6px 0 0;font-size:16px;font-weight:700;line-height:1.3}
.bl-x__lbl span{display:grid;place-items:center;flex:none;width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;font-size:13px}
.bl-x__ans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:560px}
.bl-x__an{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:12px;min-height:64px;padding:10px 16px;border:1.5px solid var(--ink);border-radius:18px;background:#fff;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:background-color .2s,color .2s}
.bl-x__an svg{grid-row:1/span 2;width:30px;height:30px}
.bl-x__al{font-size:20px;font-weight:700;line-height:1.1;letter-spacing:-.02em}
.bl-x__an .bl-x__n{font-size:14px;line-height:1.3;color:var(--muted)}
.bl-x__an:hover{background:var(--cream)}
.bl-x__an[aria-pressed="true"]{background:var(--ink);color:#fff}
.bl-x__an[aria-pressed="true"] .bl-x__n{color:#d7d2c8}
.bl-x__tms{display:flex;flex-wrap:wrap;gap:8px}
.bl-x__tms.is-off{display:none}
.bl-x__tm{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font:inherit;font-size:16px;font-weight:600;line-height:1.2;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.bl-x__tm .bl-x__n{font-size:13px;font-weight:700;color:var(--muted)}
.bl-x__tm:hover{border-color:var(--ink)}
.bl-x__tm[aria-pressed="true"]{background:var(--sage);border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.bl-x__tm[aria-pressed="true"] .bl-x__n{color:var(--ink)}
.bl-x__status{margin:4px 0 0;font-size:16px;line-height:1.45;color:var(--muted)}
.bl-x.is-searching :is(.bl-x__ans,.bl-x__tms){opacity:.55}
.bl-x.is-searching .bl-x__status{color:var(--ink);font-weight:600}
/* índice sin JS */
.bl-x__index{display:grid;gap:22px;padding-bottom:6px}
@media(min-width:700px){.bl-x__index{grid-template-columns:repeat(2,minmax(0,1fr))}}
.bl-x__ih{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:19px;font-weight:700}
.bl-x__ih svg{width:24px;height:24px}
.bl-x__index ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.bl-x__index a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;font-size:16px;color:var(--ink)}
.bl-x__index .bl-x__n{font-size:13px;font-weight:700;color:var(--muted)}
/* listas */
.bl-x__animal[hidden],.bl-x__panel[hidden]{display:none}
html.js .bl-x.is-tabs:not(.is-searching) :is(.bl-x__animal,.bl-x__panel).is-off{display:none}
.bl-x__ah{display:flex;align-items:center;gap:10px;margin:40px 0 0;padding-bottom:12px;border-bottom:1px solid var(--ink);font-size:clamp(26px,1.4vw + 17px,36px);letter-spacing:-.03em;line-height:1.05}
.bl-x__ah svg{width:30px;height:30px;flex:none}
html.js .bl-x.is-tabs:not(.is-searching) .bl-x__ah{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.bl-x__panel{padding:24px 0 26px;border-bottom:1px solid var(--line);scroll-margin-top:8px}
html.js .bl-x.is-tabs:not(.is-searching) .bl-x__panel{margin-top:22px;border-top:1px solid var(--line);border-bottom:0;padding-bottom:0}
.bl-x__ph{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
.bl-x__ph h4{margin:0;font-size:clamp(23px,1.2vw + 15px,32px);letter-spacing:-.025em;line-height:1.1}
.bl-x__ph h4:focus{outline:none}
.bl-x__ph h4:focus-visible{outline:3px solid var(--coral-ink);outline-offset:4px}
.bl-x__pn{font-size:14px;font-weight:700;color:var(--muted)}
.bl-x__pd{margin:6px 0 16px;font-size:16px;line-height:1.5;color:var(--muted)}
.bl-x__list{list-style:none;margin:0;padding:0;column-gap:34px}
@media(min-width:640px){.bl-x__list{columns:2}}
@media(min-width:1000px){.bl-x__list{columns:3}}
.bl-x__list li{break-inside:avoid;border-top:1px solid var(--line-2)}
.bl-x__list li[hidden]{display:none}
.bl-x__list a{display:block;padding:12px 0;font-size:16px;line-height:1.35;color:var(--ink)}
.bl-x__list a:hover{color:var(--coral-ink);text-decoration:underline;text-underline-offset:3px}
.bl-x__more{margin:18px 0 0}
.bl-x__more .text-link{display:inline-flex;align-items:center;min-height:44px;font-size:16px}
.bl-x .no-results{padding:26px 0;margin:0;font-size:16px;color:var(--ink)}
.bl-x__fold{display:none}
@media(max-width:699.98px){
  .bl-x__an{min-height:60px;padding:10px 12px;column-gap:10px;border-radius:16px}
  .bl-x__an svg{width:26px;height:26px}
  .bl-x__al{font-size:19px}
  .bl-x__list a{padding:13px 0}
  .bl-x:not(.is-searching) .bl-x__list.is-folded>li:nth-child(n+13){display:none}
  .bl-x:not(.is-searching) .bl-x__fold{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;margin:14px 0 0;padding:10px 20px;border:1px solid var(--ink);border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-size:16px;font-weight:700;line-height:1.25;text-align:left;cursor:pointer}
  .bl-x__fold:hover{background:var(--ink);color:#fff}
}

/* --- Guía de razas (#razas): dos tarjetas grandes con foto y las razas más buscadas ------- */
.bl-rz{display:grid;gap:22px}
@media(min-width:900px){.bl-rz{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}}
.bl-rz__card{display:grid;align-content:start;min-width:0;background:#fff;border-radius:26px;overflow:hidden}
.bl-rz__main{position:relative;display:grid}
.bl-rz__media.frame{position:relative;aspect-ratio:16/10;overflow:hidden;margin:0}
.bl-rz__media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}
.bl-rz__main:hover .bl-rz__media img{transform:scale(1.03)}
.bl-rz__num{position:absolute;left:16px;bottom:16px;display:flex;align-items:baseline;gap:6px;margin:0;padding:8px 16px;border-radius:999px;background:var(--paper);color:var(--ink)}
.bl-rz__num b{font-size:34px;line-height:1;letter-spacing:-.04em}
.bl-rz__num span{font-size:16px;font-weight:700}
.bl-rz__body{display:grid;gap:8px;padding:22px 24px 6px}
.bl-rz__kick{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--coral-ink)}
.bl-rz__kick svg{width:20px;height:20px}
.bl-rz__t{margin:0;font-size:clamp(30px,1.8vw + 18px,44px);line-height:1;letter-spacing:-.04em}
.bl-rz__t a{color:inherit;text-decoration:none}
.bl-rz__t a::after{content:"";position:absolute;inset:0}
.bl-rz__t a:focus-visible{outline:none}
.bl-rz__main:has(:focus-visible){outline:3px solid var(--coral-ink);outline-offset:-3px}
.bl-rz__main:hover .bl-rz__t a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}
.bl-rz__d{margin:0;font-size:16px;line-height:1.5;color:rgba(23,21,18,.8)}
.bl-rz__go{display:inline-flex;align-items:center;gap:12px;width:max-content;margin-top:4px;padding-bottom:4px;border-bottom:1px solid currentColor;font-size:16px;font-weight:700}
.bl-rz__pop{padding:18px 24px 26px}
.bl-rz__ph{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.bl-rz__chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.bl-rz__chip{min-height:44px;padding:8px 16px;font-size:16px;color:var(--ink)}
.bl-rz__chip:hover{background:var(--ink);color:#fff}
@media(max-width:600px){
  .bl-rz{gap:18px}
  .bl-rz__card{border-radius:22px}
  .bl-rz__num{left:12px;bottom:12px;padding:6px 14px}
  .bl-rz__num b{font-size:28px}
  .bl-rz__body{padding:18px 18px 4px}
  .bl-rz__t{font-size:32px}
  .bl-rz__pop{padding:16px 18px 22px}
}

/* Píldoras del hero con icono (Guías de perros, de gatos y de razas) */
.bl-cats .chip svg{width:18px;height:18px;flex:none}

/* --- ¿Quién escribe estas guías? ------------------------------------------------- */
#quien-escribe .promise{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){#quien-escribe .promise{grid-template-columns:1fr}#quien-escribe .promise>div,#quien-escribe .promise>div+div{padding:22px 0;border-right:0;border-bottom:1px solid var(--line)}}
#quien-escribe .promise p{font-size:16px;line-height:1.55}
#quien-escribe .pending{margin-top:34px}
.bl-who__pend{margin:0;font-size:15px}
@media(max-width:600px){
  #quien-escribe .promise>div,#quien-escribe .promise>div+div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:4px 14px;padding:18px 0}
  #quien-escribe .promise>div>svg{grid-row:1/span 2;margin:2px 0 0}
  #quien-escribe .promise h3{margin:0;font-size:19px}
  #quien-escribe .promise p{margin:0}
  #quien-escribe .pending{margin-top:24px}
}

/* ==========================================================================
   Artículo
   ========================================================================== */
.bl-ahero{padding:60px 0 0}
.bl-ahero .crumbs{margin-bottom:28px}
.bl-ahero__cat{display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;border-radius:999px;background:var(--cream);color:var(--coral-ink);font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.bl-ahero__cat:hover{background:var(--ink);color:#fff}
.bl-ahero h1{margin-top:18px;font-size:clamp(42px,5.4vw,80px);line-height:.96;letter-spacing:-.045em;max-width:1050px}
.bl-ahero .lead{max-width:720px;margin-top:22px}
.bl-meta{margin-top:24px}
.bl-meta a{display:inline-flex;align-items:center;gap:8px;min-height:32px;color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.bl-meta time{color:inherit}
/* «Actualizado el <time>» va en un span propio: sin esto, la regla común «.meta span» (flex con hueco) le metía un
   espacio doble antes de la fecha */
.bl-meta span>span{display:inline}
/* Portada del artículo (.bl-acover; no confundir con la caja .bl-cover de «¿Cubre el seguro…?»). La foto es vertical:
   el encuadre deja la cabeza y el pañuelo del perro en el centro de la franja. */
.bl-acover{aspect-ratio:21/9;margin-top:40px}
.bl-acover img{object-position:50% 36%}
@media(max-width:760px){.bl-acover{aspect-ratio:4/3;margin-top:30px}.bl-acover img{object-position:50% 55%}}
@media(max-width:600px){
  .bl-ahero{padding-top:24px}
  .bl-ahero .crumbs{margin-bottom:16px}
  .bl-ahero h1{margin-top:14px;font-size:clamp(33px,9.4vw,38px);line-height:1.02;letter-spacing:-.04em}
  .bl-ahero .lead{margin-top:14px;font-size:18px;line-height:1.5}
  .bl-meta{gap:4px 18px;margin-top:16px;font-size:14px}
  .bl-ahero__cat,.bl-meta a{min-height:44px}
  /* La foto, más baja y a sangre: la respuesta rápida asoma antes */
  .bl-acover{aspect-ratio:16/9;margin:16px calc(-1*var(--gutter)) 0}
  .bl-acover img{object-position:50% 34%}
}

/* Maqueta: en escritorio, carril izquierdo fijo (índice + tarjeta del seguro) y columna de lectura ancha, para que la
   tabla de costes, el simulador y el presupuesto respiren; el texto corrido se queda en 720 px de ancho. */
.bl-art{display:grid;gap:28px;padding-block:48px var(--sec)}
.bl-art>*{min-width:0}
.bl-art__quick,.bl-prose{max-width:840px}
@media(min-width:1080px){
  .bl-art{grid-template-columns:240px minmax(0,1fr);column-gap:64px;row-gap:0;grid-template-areas:"rail quick" "rail body"}
  .bl-art__quick{grid-area:quick;padding-bottom:14px}
  .bl-rail{grid-area:rail;position:sticky;top:calc(var(--header-h) + 28px);align-self:start;display:grid;gap:26px;
    max-height:calc(100vh - var(--header-h) - 44px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-right:4px}
  .bl-rail .toc,.bl-rail .aside-card{position:static}
  .bl-prose{grid-area:body}
}
@media(max-width:1079.98px){.bl-aside{display:none}}
@media(max-width:600px){.bl-art{gap:22px;padding-block:28px 56px}}
.bl-art__quick .c-quick{margin-bottom:18px}
.bl-quick__cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px}
.bl-quick__cta .cta-note{flex-basis:100%;margin:0}
@media(max-width:600px){
  .bl-art__quick .c-quick{margin-inline:calc(-1*var(--gutter));padding-inline:var(--gutter)}
  .bl-art__quick .c-quick__a{font-size:17px;line-height:1.55}
  .bl-quick__cta{gap:12px 24px}
  .bl-quick__cta .btn{width:100%;justify-content:space-between}
}
/* Enlaces de texto sueltos junto a un botón: zona de toque de 44 px sin cambiar su dibujo (subrayado pegado al texto) */
.bl-quick__cta .text-link,.bl-cover .text-link,.bl-prose .cta-strip .text-link,.bl-aside .text-link,.bl-az__more .text-link,
.bl-az__tools .text-link{position:relative}
.bl-quick__cta .text-link::after,.bl-cover .text-link::after,.bl-prose .cta-strip .text-link::after,.bl-aside .text-link::after,
.bl-az__more .text-link::after,.bl-az__tools .text-link::after{content:"";position:absolute;inset:-9px -4px}
.bl-quick__cta .text-link,.bl-cover .text-link{font-size:15px}
.bl-rail .toc a{padding:7px 0;font-size:14px;line-height:1.3}
.bl-rail .toc a.is-active{padding-left:12px}
.bl-rail .toc summary{padding-bottom:10px}

/* Índice: en móvil, plegado dentro de una caja */
.bl-toc__n{display:none}
@media(max-width:1079.98px){
  .bl-toc details{border:1px solid var(--line);border-radius:18px;padding:0 18px;background:#fff}
  .bl-toc summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:14px 0;border-bottom:0;list-style:none;font-size:13px}
  .bl-toc summary::-webkit-details-marker{display:none}
  .bl-toc summary::after{content:"+";font-size:22px;font-weight:400;line-height:1;transition:transform .25s var(--ease)}
  .bl-toc details[open] summary{border-bottom:1px solid var(--line)}
  .bl-toc details[open] summary::after{transform:rotate(45deg)}
  .bl-toc__n{display:inline;margin-left:auto;font-size:13px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted)}
  .bl-rail .bl-toc a{padding:13px 0;font-size:16px;line-height:1.35;color:var(--ink)}
  .bl-toc li:last-child a{border-bottom:0}
}

/* Texto del artículo (tipografía de .prose de Luis, sin tocar las piezas compartidas que van dentro) */
.bl-prose{font-size:18px;line-height:1.7;color:#2c2925}
@media(max-width:600px){.bl-prose{font-size:17px;line-height:1.65}}
.bl-intro,.bl-sec>h2,.bl-answer,.bl-sec>p,.bl-sec>ul,.bl-sec>ol,.bl-factors,.bl-tip,.bl-note,.bl-src,.bl-items,.bl-h3,.bl-byline,.bl-sec .checks{max-width:720px}
.bl-intro>p{margin:0 0 1em}
.bl-intro>p:first-child{font-size:20px;line-height:1.6;color:var(--ink)}
/* El html ya deja sitio a la cabecera fija (scroll-padding-top): aquí solo un respiro, para que el titular quede justo
   debajo al saltar desde el índice (con la cabecera sumada dos veces quedaba un hueco de 100 px) */
.bl-sec{scroll-margin-top:8px;margin-top:clamp(52px,6vw,88px)}
.bl-sec>h2{font-size:clamp(30px,2.6vw,42px);line-height:1.06;letter-spacing:-.035em;margin:0 0 18px}
.bl-answer{margin:0 0 26px;font-size:19px;line-height:1.6;color:var(--ink)}
.bl-sec>p{margin:0 0 1em}
.bl-sec>ul,.bl-sec>ol{margin:0 0 1.1em;padding-left:1.2em;display:grid;gap:.55em}
.bl-sec>ul li::marker{color:var(--coral-ink)}
.bl-intro a,.bl-sec>p a,.bl-sec>ul a,.bl-answer a:not([aria-label]),.bl-factor p a,.bl-cover a.bl-gl,.bl-cover__list a{font-weight:700;color:var(--ink);border-bottom:1px solid currentColor}
.bl-h3{font-size:24px;letter-spacing:-.02em;line-height:1.15;margin:48px 0 10px}
.bl-tip,.bl-note{margin:22px 0 0!important;padding:16px 20px;background:var(--cream);font-size:16px;line-height:1.55}
.bl-note{background:var(--mint)}
.bl-src{margin:10px 0 0!important;font-size:13px;line-height:1.5;color:var(--muted)}
.bl-byline{margin-top:48px;padding-top:18px;border-top:1px solid var(--line);font-size:14px;line-height:1.5;color:var(--muted)}
@media(max-width:600px){
  .bl-intro>p:first-child{font-size:19px;line-height:1.55}
  .bl-sec{margin-top:48px}
  .bl-sec>h2{font-size:28px;line-height:1.08;letter-spacing:-.03em;margin-bottom:12px}
  .bl-answer{margin-bottom:20px;font-size:18px;line-height:1.55}
  .bl-h3{font-size:22px;margin:36px 0 8px}
  .bl-tip,.bl-note{padding:14px 16px;font-size:16px}
  .bl-byline{margin-top:36px}
}

/* Llamadas a las fuentes (números volados que llevan a la lista final) */
/* Tamaño fijo: con .62em bajaban a 8-9 px en las notas pequeñas (pie de las barras, fuentes de la tabla). El relleno
   vertical no mueve la línea (es un elemento en línea) y agranda la zona de toque. */
.bl-ref{font-size:12.5px;line-height:0;margin-left:2px;font-weight:700;letter-spacing:0;vertical-align:super;white-space:nowrap}
.bl-ref a{color:var(--coral-ink);border-bottom:0;padding:10px 3px;text-decoration:none}
.bl-ref a:hover{text-decoration:underline}
.bl-prose .bl-ref a,.bl-art__quick .bl-ref a{border-bottom:0;font-weight:700;color:var(--coral-ink)}

/* Piezas compartidas dentro del texto: su propio tamaño, no el del texto */
.bl-prose .c-tbl,.bl-prose .sim,.bl-prose .cta-strip,.bl-prose .faq-group,.bl-prose .c-sources-box{font-size:16px;line-height:1.5}
.bl-prose .c-tbl--costs{margin-top:10px}
.bl-prose .c-srclink{padding-block:6px}
.bl-prose .sim{margin:22px 0 0}
.bl-prose .sim h3{font-size:15px;letter-spacing:.15em;line-height:1.3;margin:0}
/* La línea del tope del simulador la escribe swipet.js con «de este plan» (03/10/2026: ya no hay planes): aquí no se
   enseña; el tope ({{capital_max}} al año) va en la nota del simulador y en el texto de encima. Ver notas al integrador. */
.bl-prose .sim__cap{display:none}
.bl-prose .cta-strip{margin-top:40px}
.bl-prose .cta-strip p{font-size:19px;line-height:1.3}
.bl-prose .cta-strip p span{margin-top:6px;line-height:1.5}
.bl-prose .cta-strip .text-link{min-height:0}
.bl-prose .c-sources-box{margin-top:0;padding-top:0;border-top:0}
.bl-prose .c-sources li{padding-block:3px}
.bl-prose .faq-list{margin-top:4px}
.bl-prose .faq summary{font-size:18px}
@media(max-width:600px){
  .bl-prose .sim{margin-inline:calc(-1*var(--gutter))}
  .bl-prose .cta-strip{margin-top:32px;padding-block:22px}
  .bl-prose .cta-strip p{font-size:20px}
  .bl-prose .cta-strip .cta-row{flex-direction:column;align-items:stretch;gap:14px;width:100%}
  .bl-prose .cta-strip .btn{width:100%;justify-content:space-between}
  .bl-prose .cta-strip .text-link{align-self:flex-start}
  .bl-prose .faq summary{font-size:17px}
}

/* Qué influye: filas con icono (y las barras de la anestesia en la del peso) */
.bl-factors{list-style:none;margin:0 0 6px;padding:0;border-top:1px solid var(--line)}
.bl-factor{display:grid;grid-template-columns:48px minmax(0,1fr);gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}
.bl-factor__i{width:48px;height:48px;border-radius:50%;background:var(--mint);display:grid;place-items:center}
.bl-factor__i svg{width:22px;height:22px}
.bl-factor__b{min-width:0}
.bl-factor h3{font-size:21px;letter-spacing:-.015em;margin:4px 0 6px}
.bl-factor p{margin:0;font-size:16.5px;line-height:1.6}
/* Móvil: el icono va junto al título y el texto ocupa todo el ancho (con la columna del icono quedaba muy estrecho) */
@media(max-width:600px){
  .bl-factor{grid-template-columns:36px minmax(0,1fr);column-gap:12px;row-gap:8px;align-items:center;padding:18px 0}
  .bl-factor__b{display:contents}
  .bl-factor__i{width:36px;height:36px}
  .bl-factor__i svg{width:18px;height:18px}
  .bl-factor h3{margin:0;font-size:20px}
  .bl-factor p,.bl-factor .bl-bars{grid-column:1/-1}
  .bl-factor p{font-size:16.5px;line-height:1.6}
}

/* Barras: una sola serie (color coral oscuro validado, 3:1 o más sobre papel y crema), fin redondeado de 4 px,
   base recta, grosor de 12 px y el valor escrito en tinta al final de cada barra (sin leyenda: el título la nombra) */
.bl-bars{margin:18px 0 4px}
.bl-bars figcaption{margin:0 0 10px;font-size:13.5px;line-height:1.45;color:var(--muted)}
.bl-bars__list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.bl-bars__list li{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:12px;font-size:14.5px;line-height:1.3}
.bl-bars__k{color:var(--ink)}
.bl-bars__plot{display:flex;align-items:center;gap:10px;min-width:0;min-height:24px;border-left:1px solid rgba(23,21,18,.3)}
.bl-bars__bar{display:block;flex:none;height:12px;width:calc((100% - 64px) * var(--f,1));background:#c23f36;border-radius:0 4px 4px 0;transition:background-color .2s}
.bl-bars__list li:hover .bl-bars__bar{background:var(--ink)}
.bl-bars__v{font-weight:700;color:var(--ink);white-space:nowrap}
@media(max-width:600px){.bl-bars{margin:6px 0 0}.bl-bars__list li{grid-template-columns:104px minmax(0,1fr);gap:10px;font-size:15px}}
@media(max-width:380px){.bl-bars__list li{grid-template-columns:96px minmax(0,1fr);font-size:14px}}

/* Qué incluye el presupuesto: conceptos */
.bl-items{margin:6px 0 0;border-top:1px solid var(--ink)}
.bl-items>div{display:grid;gap:4px 24px;padding:15px 0;border-bottom:1px solid var(--line)}
@media(min-width:640px){.bl-items>div{grid-template-columns:190px minmax(0,1fr)}}
.bl-items dt{font-size:16px;font-weight:700;line-height:1.45;color:var(--ink)}
.bl-items dd{margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
@media(max-width:600px){.bl-items>div{gap:2px;padding:13px 0}}

/* Presupuesto de ejemplo: elige y se suma solo (sin JS se ve el ejemplo ya sumado) */
.bl-calc{display:grid;gap:22px;margin:34px 0 0;padding:26px;background:var(--cream);font-size:16px;line-height:1.5}
@media(min-width:760px){.bl-calc{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:26px}.bl-calc__head{grid-column:1/-1}}
.bl-calc__t{margin:0;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.3;color:var(--ink)}
.bl-calc__s{margin:6px 0 0;font-size:15px;line-height:1.5;color:var(--muted)}
.bl-calc__form{display:grid;gap:18px;min-width:0}
html:not(.js) .bl-calc__form{display:none}
.bl-calc__f{display:grid;gap:8px;margin:0;padding:0;border:0;min-width:0}
.bl-calc__lbl{display:block;padding:0;margin:0 0 2px;font-size:12.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;line-height:1.35;color:var(--ink)}
/* 16 px: con menos, el iPhone amplía la página al tocar el desplegable */
.bl-calc select{width:100%;height:52px;border:1px solid rgba(23,21,18,.35);border-radius:100px;padding:0 44px 0 18px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171512' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center/18px;font:inherit;font-size:16px;color:var(--ink);-webkit-appearance:none;appearance:none;text-overflow:ellipsis}
.bl-calc select:focus-visible{outline:3px solid var(--coral-ink);outline-offset:2px}
.bl-calc__opts{display:flex;flex-wrap:wrap;gap:8px}
.bl-calc__opt{position:relative;display:inline-flex}
.bl-calc__opt input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.bl-calc__opt span{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:8px 15px;border:1px solid rgba(23,21,18,.35);border-radius:999px;background:#fff;font-size:15px;line-height:1.25;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.bl-calc__opt small{font-size:13px;font-weight:700;opacity:.75}
.bl-calc__opt input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.bl-calc__opt input:checked+span small{opacity:.9}
.bl-calc__opt input:focus-visible+span{outline:3px solid var(--coral-ink);outline-offset:2px}
.bl-calc__opt span:hover{border-color:var(--ink)}
.bl-calc__chk{display:flex;align-items:center;gap:12px;min-height:44px;font-size:16px;line-height:1.35;cursor:pointer}
.bl-calc__chk input{flex:none;width:22px;height:22px;margin:0;accent-color:var(--ink)}
.bl-calc__chk input:focus-visible{outline:3px solid var(--coral-ink);outline-offset:2px}
.bl-calc__bill{display:grid;gap:12px;background:#fff;border:1px solid var(--line);padding:22px 22px 18px;min-width:0}
.bl-calc__ex{margin:0;font-size:13px;line-height:1.4;color:var(--muted)}
.js .bl-calc__ex{display:none}
.bl-calc__bill dl{margin:0}
.bl-calc__bill dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;border-bottom:1px solid var(--line);font-size:16px;line-height:1.35}
.bl-calc__bill dl>div[hidden]{display:none}
.bl-calc__bill dt{color:var(--muted)}
.bl-calc__bill dd{margin:0;font-weight:700;white-space:nowrap;color:var(--ink)}
.bl-calc__bill .is-total{border-bottom:0;border-top:1px solid var(--ink);margin-top:6px;padding-top:14px}
.bl-calc__bill .is-total dt{color:var(--ink);font-weight:700;font-size:16px}
.bl-calc__bill .is-total dd{font-size:32px;letter-spacing:-.03em;line-height:1}
.bl-calc__sw{margin:0;padding:12px 14px;background:var(--mint);font-size:16px;line-height:1.5;color:var(--ink)}
.bl-calc__note{margin:0;font-size:13px;line-height:1.5;color:var(--muted)}
/* Móvil: a sangre, pasos con aire y la cuenta a todo el ancho */
@media(max-width:600px){
  .bl-calc{gap:20px;margin:30px calc(-1*var(--gutter)) 0;padding:24px var(--gutter)}
  .bl-calc__s{font-size:16px}
  .bl-calc__form{gap:20px}
  /* Opciones en rejilla de dos (peso: 2 × 2; pruebas: dos y la larga a todo el ancho) en lugar de filas desiguales */
  .bl-calc__opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .bl-calc__opt{display:flex;min-width:0}
  .bl-calc__opt span{flex:1;justify-content:center;flex-wrap:wrap;gap:2px 6px;padding:8px 10px;text-align:center}
  .bl-calc__opt:nth-child(3):last-child{grid-column:1/-1}
  .bl-calc__bill{padding:18px 16px 16px}
  .bl-calc__bill .is-total dd{font-size:30px}
}

/* ¿Lo cubre el seguro? Caja salvia con lo que sí, lo que eliges y lo que no */
.bl-cover{display:grid;gap:14px;margin:0;padding:26px 26px 24px;background:var(--sage);font-size:16px;line-height:1.5}
.bl-cover__t{margin:0;font-size:17px;font-weight:400;line-height:1.5;color:var(--ink)}
.bl-cover__t b{font-weight:700}
.bl-cover__list{list-style:none;margin:0;padding:0;display:grid}
.bl-cover__list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;align-items:start;padding:13px 0;border-top:1px solid rgba(23,21,18,.16);font-size:16px;line-height:1.5;color:var(--ink)}
.bl-cover__list li:last-child{border-bottom:1px solid rgba(23,21,18,.16)}
.bl-cover__list svg{width:28px;height:28px;padding:6px;border-radius:50%;background:#fff}
.bl-cover__list .is-opt svg{background:var(--mint)}
.bl-cover__list .is-no svg{background:var(--coral)}
.bl-cover__pend{margin:0;font-size:15px}
.bl-cover .cta-row{margin-top:6px}
.bl-cover .text-link{color:var(--ink)}
@media(max-width:600px){
  .bl-cover{padding:24px var(--gutter) 22px;margin-inline:calc(-1*var(--gutter))}
  .bl-cover__list li{gap:12px}
  .bl-cover .cta-row{flex-direction:column;align-items:flex-start;gap:16px}
  .bl-cover .btn{width:100%;justify-content:space-between}
}

/* ¿Está subiendo el precio? Dos cifras (la que importa en tinta, la de referencia en gris) */
.bl-stats{display:grid;grid-template-columns:1fr 1fr;margin:4px 0 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.bl-stat{display:grid;gap:8px;align-content:start;padding:22px 20px 20px 0}
.bl-stat+.bl-stat{padding-left:22px;border-left:1px solid var(--line)}
.bl-stat b{font-size:clamp(40px,4.2vw,58px);font-weight:700;line-height:1;letter-spacing:-.04em;color:var(--ink)}
.bl-stat span{font-size:15px;line-height:1.45;color:var(--muted)}
.bl-stat--muted b{color:var(--muted)}
@media(max-width:600px){.bl-stat{padding:18px 14px 16px 0}.bl-stat+.bl-stat{padding-left:16px}.bl-stat b{font-size:38px}}

/* Lo que conviene recordar */
.bl-sec .checks{margin:0 0 1.2em}
.bl-sec .checks li{font-size:16.5px}

/* Tarjeta del seguro en el carril (escritorio): compacta, para que quepa con el índice */
.bl-aside{gap:10px;padding:20px 18px}
.bl-aside .eyebrow{margin:0;font-size:11px}
.bl-aside .eyebrow::before{width:22px}
.bl-aside .bl-aside__t{margin:0;font-size:20px;font-weight:700;line-height:1.08;letter-spacing:-.025em;color:var(--ink)}
.bl-aside .bl-aside__d{font-size:14px;line-height:1.45;color:rgba(23,21,18,.8)}
.bl-aside .btn{white-space:normal;justify-content:space-between;gap:10px;padding:12px 18px;text-align:left;line-height:1.2}
.bl-aside .bl-aside__note{font-size:12.5px;line-height:1.4;color:rgba(23,21,18,.78)}
.bl-aside .text-link{color:var(--ink);width:max-content;max-width:100%;gap:10px;font-size:13.5px}


/* ---- 90_movil_final.css ---- */
/* ==========================================================================
   V2 · Última capa del móvil (03/10/2026, revisión final de las 19 páginas).
   Va la última a propósito (build.py añade las partes por orden de nombre): solo correcciones globales que tienen que
   mandar sobre las de cada página. Que siga siendo corta; lo propio de una página va en su CSS.
   ========================================================================== */
@media(max-width:600px){
  /* Titulares de sección: casi todos son preguntas y, con el interlineado de 1,02-1,08 que llevaban, el gancho del «¿»
     tocaba la línea de abajo («¿Qué hace / Swipet por ti?»). Con 1,15 queda separado y sigue siendo compacto (es el
     que ya usaban las comparativas). Solo en móvil y solo el interlineado. */
  main h2{line-height:1.15!important}
}

