.lmv-toolkit, .lmv-section, .lmv-single { --lmv-green:#15803d; --lmv-navy:#0b1730; --lmv-border:#e5e7eb; --lmv-soft:#f8fafc; font-family:inherit; color:var(--lmv-navy); }
.lmv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:20px 0 36px}
.lmv-card{border:1px solid var(--lmv-border);border-radius:18px;background:#fff;box-shadow:0 6px 22px rgba(11,23,48,.06);overflow:hidden}
.lmv-card-head{display:flex;gap:16px;padding:22px 22px 10px;align-items:center}.lmv-card-logo{width:72px;height:72px;border-radius:16px;object-fit:cover;flex:0 0 72px}.lmv-card-logo--placeholder{display:grid;place-items:center;background:#eef2ff;color:#3155d8;font-weight:800}.lmv-card-title-wrap{min-width:0}.lmv-card-labels{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:5px}.lmv-badge{display:inline-block;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.02em}.lmv-badge--nuevo{background:#dcfce7;color:#166534}.lmv-badge--actualizado{background:#dbeafe;color:#1d4ed8}.lmv-badge--destacado{background:#fef3c7;color:#92400e}.lmv-card h3{font-size:21px;line-height:1.15;margin:0}.lmv-type{font-size:13px;color:#64748b;margin-top:4px}.lmv-card-main{display:flex;justify-content:space-between;gap:18px;padding:12px 22px 20px;align-items:end}.lmv-reward strong{display:block;font-size:23px;color:var(--lmv-green)}.lmv-reward span{font-size:12px;color:#475569}.lmv-rating{border-left:1px solid var(--lmv-border);padding-left:18px}.lmv-rating span{display:block;font-size:11px;color:#64748b}.lmv-rating strong{font-size:15px}.lmv-card-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:10px;padding:14px 18px;background:#fafafa;border-top:1px solid var(--lmv-border)}.lmv-btn,.lmv-cta,.lmv-official{display:flex;justify-content:center;align-items:center;min-height:42px;border-radius:10px;padding:0 14px;font-size:12px;font-weight:800;text-decoration:none}.lmv-btn--secondary,.lmv-official{border:1px solid #cbd5e1;background:#fff;color:var(--lmv-navy)}.lmv-btn--primary,.lmv-cta{background:var(--lmv-green);color:#fff;border:1px solid var(--lmv-green)}
.lmv-section{margin:36px 0}.lmv-section-head{margin-bottom:16px}.lmv-section-head h2{margin:0 0 5px;font-size:28px}.lmv-section-head p{margin:0;color:#64748b;max-width:760px}.lmv-single{margin:30px auto;max-width:1180px}.lmv-single-header{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;padding:24px 0 28px;border-bottom:1px solid var(--lmv-border)}.lmv-single-logo{width:104px;height:104px;border-radius:22px;object-fit:contain;display:block}.lmv-single-name{font-size:28px;line-height:1.1;font-weight:800;margin:5px 0}.lmv-single-rating{border:1px solid var(--lmv-border);border-radius:14px;padding:16px 20px;text-align:center;min-width:150px}.lmv-single-rating span{display:block;font-size:12px;color:#64748b}.lmv-single-rating strong{display:block;font-size:22px;margin-top:5px}.lmv-single-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;grid-template-areas:"main aside";gap:30px;margin-top:30px}.lmv-single-content{grid-area:main}.lmv-single-aside{grid-area:aside}.lmv-single-content section{padding:0 0 24px;margin-bottom:24px;border-bottom:1px solid var(--lmv-border)}.lmv-single-content h2{font-size:22px;margin:0 0 12px}.lmv-offer{background:#f0fdf4;border:1px solid #bbf7d0!important;border-radius:16px;padding:22px!important}.lmv-offer-value{font-size:30px;font-weight:900;color:var(--lmv-green)}.lmv-single-aside{position:sticky;top:24px;height:max-content;border:1px solid var(--lmv-border);border-radius:16px;padding:18px;background:#fff;box-shadow:0 6px 22px rgba(11,23,48,.05)}.lmv-single-aside>*{margin-bottom:12px}.lmv-facts{border-top:1px solid var(--lmv-border);padding-top:12px}.lmv-facts div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #f1f5f9;font-size:13px}.lmv-facts strong{font-size:12px}.lmv-facts span{text-align:right;color:#475569}.lmv-updated{font-size:11px;color:#64748b;margin:4px 0 0}.lmv-pros{background:#f0fdf4;border:1px solid #dcfce7!important;border-radius:14px;padding:18px!important}.lmv-cons{background:#fffbeb;border:1px solid #fef3c7!important;border-radius:14px;padding:18px!important}
/* LMV fichas controlan su propia cabecera. Algunos temas no añaden la clase
   body.single-lmv_ficha de forma consistente al resolver la ficha en la raíz,
   por eso también usamos :has(.lmv-single), que identifica inequívocamente
   una página que contiene nuestra ficha. */
body.single-lmv_ficha .entry-header,
body.single-lmv_ficha .page-header,
body.single-lmv_ficha .ast-breadcrumbs,
body.single-lmv_ficha .breadcrumb,
body.single-lmv_ficha .breadcrumbs,
body.single-lmv_ficha .entry-title,
body:has(.lmv-single) .entry-header,
body:has(.lmv-single) .page-header,
body:has(.lmv-single) .ast-breadcrumbs,
body:has(.lmv-single) .breadcrumb,
body:has(.lmv-single) .breadcrumbs,
body:has(.lmv-single) .entry-title:not(.lmv-single-name) { display:none!important; }

/* Astra puede aplicar el título mediante selectores más específicos. */
body.single-lmv_ficha .site-main > article > .entry-header,
body.single-lmv_ficha .site-main > .entry-header,
body.single-lmv_ficha main.site-main > .entry-header,
body:has(.lmv-single) .site-main > article > .entry-header,
body:has(.lmv-single) .site-main > .entry-header,
body:has(.lmv-single) main.site-main > .entry-header { display:none!important; }

/* El logo de la ficha debe verse completo, sin recortes. */
.lmv-single-brand { display:flex; align-items:center; justify-content:center; min-width:104px; }
.lmv-single-brand .lmv-card-logo--placeholder { width:104px; height:104px; }

@media(max-width:900px){.lmv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lmv-single-grid{grid-template-columns:1fr;grid-template-areas:"aside" "main"}.lmv-single-aside{position:static;order:0}.lmv-single-content{order:1}.lmv-single-header{grid-template-columns:auto 1fr}.lmv-single-rating{grid-column:1/-1;justify-self:start}}
@media(max-width:640px){.lmv-grid{grid-template-columns:1fr}.lmv-card-head{padding:18px}.lmv-single-header{grid-template-columns:1fr}.lmv-single-logo{width:84px;height:84px}.lmv-single-name{font-size:24px}.lmv-card-actions{grid-template-columns:1fr}.lmv-single-grid{gap:18px}}


/* Último fallback: ocultar cualquier H1 ajeno al H1 propio de la ficha. */
body:has(.lmv-single) h1:not(.lmv-single-name) { display:none!important; }
body:has(.lmv-single) .ast-breadcrumbs,
body:has(.lmv-single) .breadcrumb,
body:has(.lmv-single) .breadcrumbs { display:none!important; }
