/* a07 2026-10-04 — pulido visual de discoderuptura.com
   Se carga DESPUÉS de bootstrap; solo sobrescribe lo necesario. Identidad: rojo #9e0101, café #41290d, fondo claro #f0f2f8. */
:root{ --pv-red:#9e0101; --pv-red-dark:#7a0101; --pv-brown:#41290d; --pv-ink:#1d1a17; --pv-muted:#5b5650; --pv-soft:#f6f7fb; }

/* ---------- Menú: sin solape logo/menú ---------- */
.navbar-brand{flex-shrink:0;margin-right:1rem}
@media (max-width:1199.98px){
  #mainNavbar{display:none!important}
  .navbar-toggler{display:flex!important}
  .navbar-brand img{width:auto!important;height:72px!important;max-width:230px}
}
@media (min-width:1200px){
  .navbar-toggler{display:none!important}
  .navbar-custom .container{max-width:1320px}
  .navbar-brand img{width:auto!important;height:76px!important}
  .navbar-collapse{max-width:none!important;flex:1 1 auto}
  .navbar-nav{margin-left:auto!important;margin-right:0!important;align-items:center;gap:.15rem}
  .navbar-nav .nav-link{font-size:15px!important;padding:8px 10px!important;border-radius:6px;font-weight:500}
  .navbar-nav .nav-link:hover,.navbar-nav .nav-link:focus{background:rgba(158,1,1,.08)}
}
/* CTA "Cotizar con P&V" como botón */
.navbar-nav .nav-link[href*="pvcontrol.com.mx"],
.sidebar-menu .btn-movil[onclick*="pvcontrol.com.mx"]{
  background:var(--pv-red)!important;color:#fff!important;font-weight:700;border-radius:6px;padding:8px 14px!important
}
.navbar-nav .nav-link[href*="pvcontrol.com.mx"]:hover{background:var(--pv-red-dark)!important}

/* ---------- Tipografía y lectura ---------- */
body{color:var(--pv-ink);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;padding-bottom:76px!important}
.main-content{line-height:1.7}
.main-content p,.main-content li,.main-content .lead{font-weight:400;color:var(--pv-ink)}
.main-content p,.main-content li{font-size:1.0625rem}
.main-content .lead{font-size:1.15rem}
.main-content #article-content p,.main-content #article-content li,.main-content #article-content .lead,
.main-content > div > p{max-width:78ch}
.main-content h1{font-weight:700;color:var(--pv-ink);line-height:1.2;font-size:clamp(1.65rem,1.2rem + 1.8vw,2.4rem);margin-bottom:1rem;letter-spacing:-.01em}
.main-content h2{font-weight:700;color:var(--pv-brown);line-height:1.3;font-size:clamp(1.3rem,1.1rem + .8vw,1.7rem);margin-top:2.2rem;margin-bottom:.8rem;padding-bottom:.35rem;border-bottom:2px solid rgba(158,1,1,.18)}
.main-content h3{font-weight:700;color:var(--pv-ink);font-size:clamp(1.1rem,1rem + .5vw,1.3rem);margin-top:1.6rem}
.main-content h5.text-muted{font-size:.95rem;color:var(--pv-muted)!important}
.main-content ul li,.main-content ol li{margin-bottom:.35rem}
/* Enlaces de contenido: rojo de marca (8.4:1 sobre blanco), subrayado */
.main-content a:not(.btn):not(.badge):not(.share-btn):not([class*="btn"]){color:var(--pv-red);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.main-content a:not(.btn):not(.badge):not([class*="btn"]):hover{color:var(--pv-red-dark);text-decoration-thickness:2px}
.main-content .card a{text-decoration:none}

/* ---------- Tablas: sin desborde en móvil ---------- */
.main-content table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-collapse:collapse;margin:1.25rem 0;font-size:.98rem}
.main-content table th{background:var(--pv-soft);color:var(--pv-brown);font-weight:700}
.main-content table th,.main-content table td{padding:.55rem .75rem;border:1px solid #dcdfe6;vertical-align:top;min-width:7.5rem}
.main-content pre,.main-content code{white-space:pre-wrap;word-break:break-word}
.main-content img,.main-content iframe,.main-content video{max-width:100%;height:auto}

/* ---------- Imagen principal de guías y fichas ---------- */
.main-content .article-hero{width:100%!important;max-height:420px!important;object-fit:contain!important;background:#fff;border:1px solid #eceef3;border-radius:10px;padding:.75rem}
@media (max-width:575.98px){.main-content .article-hero{max-height:280px!important}}

/* ---------- Tarjetas del listado ---------- */
.main-content .card{border:1px solid #e6e8ee;border-radius:10px;overflow:hidden}
.main-content .card-img-top.article-img{object-fit:contain!important;background:#fff;padding:.5rem}
.main-content .card .card-title,.main-content .card h5{font-weight:700;line-height:1.35}
/* Etiquetas: objetivo táctil mínimo */
.main-content a.badge,.main-content #article-content ~ div a[href*="todo-sobre-"]{display:inline-flex;align-items:center;min-height:28px;padding:.3rem .6rem!important;margin:.15rem .1rem}

/* ---------- Recuadros de CTA dentro del contenido ---------- */
.main-content aside{border-left:4px solid var(--pv-red)!important;background:var(--pv-soft)!important}

/* ---------- Botón "Escuchar" ---------- */
#btnToggleSpeech{border-radius:6px;display:inline-flex;align-items:center;gap:.5rem;font-size:1rem!important;font-weight:600}

/* ---------- Footer: contraste AA sobre fondo oscuro ---------- */
.bottom-custom a:not(.btn){color:#fff!important;text-decoration:underline;text-underline-offset:2px}
.bottom-custom address{color:#f1f1f1}
.bottom-custom h3{font-size:1.35rem;font-weight:700}
.bottom-custom .btn-enviar{font-weight:700;padding:.6rem}
.bottom-custom .form-control{font-size:1rem}
.bottom-nav .nav-item{min-height:48px;justify-content:center}

/* ---------- Foco visible (teclado) ---------- */
a:focus-visible,button:focus-visible,.form-control:focus-visible{outline:3px solid #f0b400;outline-offset:2px}

/* El pie (bottom.php) vive dentro de .main-content: restaurar sus estilos */
.main-content .bottom-custom h3{color:inherit;border:0;margin-top:0;font-size:1.35rem}
.main-content .bottom-custom p,.main-content .bottom-custom li{color:inherit;font-size:.95rem;max-width:none}
.main-content .bottom-custom .small{font-size:.85rem}
.main-content .bottom-custom a:not(.btn){color:#fff!important}
.main-content .bottom-custom a:not(.btn),.bottom-custom address a{text-decoration:underline!important;text-underline-offset:2px}
.main-content h4{font-weight:700;color:var(--pv-brown)}
@media (min-width:1200px) and (max-width:1399.98px){
  .navbar-brand img{height:62px!important}
  .navbar-brand{margin-right:.5rem}
  .navbar-nav .nav-link{font-size:14px!important;padding:6px 7px!important}
  .navbar-nav .nav-link[href*="pvcontrol.com.mx"]{padding:7px 10px!important}
}
