/* Gestión Médica.org — azul médico + verde salud */
:root{
  --azul:#0a63b8; --azul-osc:#08427a; --azul-claro:#e8f1fa;
  --verde:#0f9d6a; --verde-osc:#0b7b53; --verde-claro:#e6f6ef;
  --tinta:#15283b; --gris:#5b6b7b; --linea:#dde6ee; --fondo:#f4f8fb; --blanco:#fff;
  --fh:'Plus Jakarta Sans',system-ui,sans-serif; --fb:'Inter',system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--fb);color:var(--tinta);background:var(--fondo);line-height:1.65;font-size:17px}
a{color:var(--azul);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto}
h1,h2,h3,h4{font-family:var(--fh);line-height:1.25;color:var(--tinta)}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* barra superior */
.topbar{background:var(--azul-osc);color:#cfe3f5;font-size:13.5px}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;padding-top:6px;padding-bottom:6px;flex-wrap:wrap;gap:6px}
.topbar a{color:#cfe3f5;margin-right:14px}
.topbar nav a:last-child{margin-right:0}

/* cabecera */
.cabecera{background:linear-gradient(135deg,var(--azul) 0%,var(--azul-osc) 70%);color:#fff;padding:26px 0 0}
.logo{font-family:var(--fh);font-weight:800;font-size:30px;color:#fff}
.logo b{color:#7de3b8}
.logo:hover{text-decoration:none}
.lema{margin:4px 0 16px;color:#bcd8f0;font-size:15px}
.menu{display:flex;flex-wrap:wrap;gap:2px;background:rgba(255,255,255,.08);border-radius:10px 10px 0 0;padding:6px 8px}
.menu a{color:#eaf4fd;padding:8px 13px;border-radius:8px;font-size:14.5px;font-weight:500}
.menu a:hover{background:rgba(255,255,255,.15);text-decoration:none}
.menu a.destacado{background:var(--verde);color:#fff;font-weight:700}
.menu a.destacado:hover{background:var(--verde-osc)}

main{padding:26px 20px 50px}

/* ticker */
.ticker{display:flex;align-items:baseline;gap:14px;background:var(--blanco);border:1px solid var(--linea);border-left:4px solid var(--verde);border-radius:8px;padding:9px 14px;margin-bottom:22px;overflow:hidden;white-space:nowrap}
.ticker>span{font-family:var(--fh);font-weight:800;font-size:12.5px;letter-spacing:.08em;color:var(--verde-osc);flex:none}
.ticker-links{overflow-x:auto;scrollbar-width:none}
.ticker-links a{margin-right:22px;font-size:14.5px}

/* hero */
.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:26px;background:var(--blanco);border:1px solid var(--linea);border-radius:14px;overflow:hidden;margin-bottom:34px}
.hero-img img{display:block;width:100%;height:100%;object-fit:cover}
.hero-txt{padding:26px 26px 26px 0}
.hero-txt h2{font-size:27px;margin:.3em 0}
.hero-txt h2 a{color:var(--tinta)}
.kicker{font-family:var(--fh);font-weight:700;font-size:13px;letter-spacing:.05em;text-transform:uppercase;color:var(--verde-osc);margin:0}
.fecha{color:var(--gris);font-size:13.5px}
.btn{display:inline-block;background:var(--azul);color:#fff;font-weight:600;padding:10px 18px;border-radius:8px;font-size:15px}
.btn:hover{background:var(--azul-osc);text-decoration:none}

/* intro */
.intro-sitio{background:var(--blanco);border:1px solid var(--linea);border-radius:14px;padding:22px 26px;margin-bottom:34px}
.intro-sitio h2{margin-top:0}

/* secciones home */
.seccion{margin-bottom:38px}
.sec-tit{display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid var(--azul);padding-bottom:6px;font-size:22px}
.sec-tit a{color:var(--tinta)}
.arriba{color:var(--gris);font-size:15px}
.sec-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:26px;margin-top:16px}
.sec-dest img{border-radius:10px;margin-bottom:8px}
.sec-dest h3{margin:.2em 0;font-size:19px}
.sec-dest h3 a{color:var(--tinta)}
.sec-lista{list-style:none;margin:0;padding:0}
.sec-lista li{border-bottom:1px solid var(--linea);padding:9px 0}
.sec-lista .fecha{display:block}
.sec-lista .vermas a{font-weight:600;color:var(--verde-osc)}

/* índice completo */
.todos{background:var(--blanco);border:1px solid var(--linea);border-radius:14px;padding:24px 28px}
.todos h2{margin-top:0}
.todos h3{color:var(--azul);margin-bottom:.3em}
.indice{font-size:15px;color:var(--gris)}

/* post */
.post{background:var(--blanco);border:1px solid var(--linea);border-radius:14px;padding:30px clamp(18px,4vw,44px)}
.miga{font-size:13.5px;color:var(--gris);margin-bottom:14px}
.post-head h1{font-size:clamp(24px,4vw,34px);margin:.2em 0}
.post-meta{color:var(--gris);font-size:14px}
.destacada{border-radius:10px;margin:6px 0 14px}
.contenido{max-width:820px}
.contenido img{border-radius:8px}
.contenido h2{font-size:24px;margin-top:1.4em;border-left:4px solid var(--verde);padding-left:12px}
.contenido h3{font-size:19.5px}
.contenido blockquote{border-left:4px solid var(--azul);background:var(--azul-claro);margin:1em 0;padding:12px 18px;border-radius:0 8px 8px 0}
.contenido figure{margin:1.2em 0}
.contenido figcaption{font-size:13.5px;color:var(--gris);text-align:center}
.intro-cat{color:var(--gris)}

/* tablas comparativa */
.tabla-scroll{overflow-x:auto;margin:1.4em -8px;border:1px solid var(--linea);border-radius:12px;background:var(--blanco);max-width:none}
table.comparativa{border-collapse:collapse;width:100%;min-width:860px;font-size:13.5px}
table.comparativa th,table.comparativa td{border-bottom:1px solid var(--linea);padding:7px 10px;text-align:center;vertical-align:middle}
table.comparativa thead th{background:var(--azul-claro);position:relative;padding-top:14px}
table.comparativa thead img{max-width:110px;border-radius:6px}
table.comparativa .pname{display:block;font-family:var(--fh);font-weight:700;font-size:13px;color:var(--azul-osc)}
table.comparativa th.lbl{text-align:left;background:#f7fafc;font-weight:500;min-width:210px;position:sticky;left:0;z-index:1;box-shadow:1px 0 0 var(--linea)}
table.comparativa thead th.lbl{background:var(--azul-claro)}
table.comparativa tbody tr:nth-child(even) td{background:#fbfdfe}
table.comparativa tbody tr:hover td{background:var(--verde-claro)}
.ribbon{position:absolute;top:2px;left:50%;transform:translateX(-50%);background:var(--verde);color:#fff;font-family:var(--fh);font-weight:800;font-size:10.5px;letter-spacing:.06em;padding:2px 10px;border-radius:20px}
.btn-tabla{display:inline-block;background:var(--verde);color:#fff;font-weight:600;padding:6px 12px;border-radius:6px;font-size:13px}
.btn-tabla:hover{background:var(--verde-osc);text-decoration:none}
.fila-btn td{padding:12px 8px}
.vacio{color:#c3ced8}
.si{color:var(--verde-osc);font-weight:700}
.no{color:#c34f4f;font-weight:600}
.extra{color:#b0821d;font-weight:700}
.stars{color:#ffae00;letter-spacing:1px;display:block}
.nota{color:var(--gris);font-size:11.5px}

/* comentarios */
.comentarios{border-top:2px solid var(--linea);margin-top:36px;padding-top:14px;max-width:820px}
.comentario{border:1px solid var(--linea);border-radius:10px;padding:12px 16px;margin:12px 0;background:#fbfdfe}
.comentario .respuesta,.comentario.respuesta{margin-left:26px;background:var(--verde-claro)}
.c-meta{margin:0 0 4px;font-size:13.5px;color:var(--gris)}

/* relacionados */
.relacionados{margin-top:30px;border-top:2px solid var(--linea);padding-top:10px;max-width:820px}
.relacionados h2{font-size:19px}
.relacionados ul{list-style:none;padding:0;margin:0}
.relacionados li{padding:6px 0;border-bottom:1px solid var(--linea)}
.relacionados .fecha{margin-left:8px}

/* listado categoría */
.listado-cat{list-style:none;padding:0;margin:20px 0}
.tarjeta{display:flex;gap:18px;background:var(--blanco);border:1px solid var(--linea);border-radius:12px;padding:16px;margin-bottom:14px}
.tarjeta img{width:200px;height:130px;object-fit:cover;border-radius:8px;flex:none}
.tarjeta h2{font-size:19px;margin:0 0 6px}
.tarjeta h2 a{color:var(--tinta)}
.tarjeta p{margin:.2em 0;font-size:15px}

/* footer */
footer{background:var(--azul-osc);color:#cfe3f5;margin-top:20px}
.pie{max-width:1100px;margin:0 auto;padding:36px 20px 10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:26px;font-size:14px}
.pie h4{color:#fff;margin:0 0 10px;font-size:15px}
.pie a{color:#cfe3f5}
.pie ul{list-style:none;margin:0;padding:0}
.pie li{margin-bottom:7px}
.enlaces-interes a{display:block;margin-bottom:7px}
.copy{text-align:center;font-size:13px;padding:14px 20px 20px;margin:14px 0 0;border-top:1px solid rgba(255,255,255,.15)}

/* cookies */
#barra-cookies{display:none;position:fixed;left:0;right:0;bottom:0;z-index:99;background:var(--tinta);color:#e7eef5;padding:14px 22px;gap:20px;align-items:center;justify-content:center;flex-wrap:wrap;box-shadow:0 -4px 18px rgba(0,0,0,.25)}
#barra-cookies p{margin:0;font-size:13.5px;max-width:760px}
#barra-cookies a{color:#8fd4b6}
.ck-botones{display:flex;gap:10px}
#barra-cookies button{font-family:var(--fb);font-size:14px;padding:9px 20px;border-radius:8px;border:1px solid #6b7c8d;background:transparent;color:#e7eef5;cursor:pointer}
#barra-cookies button.primario{background:var(--verde);border-color:var(--verde);font-weight:700}
#barra-cookies button.primario:hover{background:var(--verde-osc)}

@media(max-width:860px){
  .hero{grid-template-columns:1fr}
  .hero-txt{padding:0 22px 22px}
  .sec-grid{grid-template-columns:1fr}
  .tarjeta img{width:120px;height:84px}
  table.comparativa th.lbl{min-width:160px}
}
