/*
Theme Name: Noticias La Garita
Description: Tema de noticias ligero y responsive para Noticias La Garita Costa Rica.
Version: 1.0.0
Text Domain: lagarita
*/

/* ===== COLORES: reemplace estos valores por los del logo ===== */
:root{
  --c-primario:#0a3d7a;   /* franja superior, pestañas, líneas de sección */
  --c-acento:#c8102e;     /* etiquetas de categoría, foco, menú activo */
  --c-menu:#111111;       /* barra del menú y pie de página */
  --c-fondo:#f4f5f7;
  --c-texto:#1c1f24;
  --c-suave:#5b6470;
  --radio:6px;
  --ancho:1180px;
}

*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--c-fondo);color:var(--c-texto);font:17px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--ancho);margin:0 auto;padding:0 16px}
.skip{position:absolute;left:-999px}
.skip:focus{left:8px;top:8px;background:#fff;padding:8px 12px;z-index:99}
.screen-reader-text{position:absolute;clip:rect(0 0 0 0);width:1px;height:1px;overflow:hidden}
:focus-visible{outline:3px solid var(--c-acento);outline-offset:2px}

/* Franja superior: redes (izquierda) + fecha y hora (derecha) */
.topbar{background:var(--c-primario);color:#fff;font-size:14px}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:40px;flex-wrap:wrap}
.redes ul{display:flex;gap:6px;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.redes a{display:block;padding:2px 12px;border-radius:999px;background:rgba(255,255,255,.16)}
.redes a:hover{background:#fff;color:var(--c-primario)}
.fecha{display:flex;gap:12px}
.fecha time{font-variant-numeric:tabular-nums;font-weight:600}

/* Banda del banner publicitario */
.banda{background:#fff;border-bottom:1px solid #e3e6ea}
.banda .wrap{display:flex;align-items:center;gap:24px;padding-top:14px;padding-bottom:14px}
.logo{flex:0 0 auto}
.logo img{max-height:84px;width:auto}
.logo .nombre{font:700 24px/1.1 Georgia,serif}
.publicidad{flex:1;min-width:0;display:flex;justify-content:center}
.publicidad img{margin:0 auto}
.publicidad-vacia{width:100%;min-height:90px;border:2px dashed #c9ced6;display:flex;align-items:center;justify-content:center;color:var(--c-suave);font-size:14px;text-align:center;padding:8px}

/* Menú de categorías */
.menu{background:var(--c-menu);position:sticky;top:0;z-index:50}
.menu .wrap{display:flex;align-items:center}
.menu ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
.menu li{position:relative}
.menu a{display:block;padding:13px 16px;color:#fff;font-weight:600;font-size:15px;border-bottom:3px solid transparent}
.menu a:hover,.menu .current-menu-item>a,.menu .current-cat>a,.menu .current-menu-ancestor>a{border-color:var(--c-acento);background:rgba(255,255,255,.07)}
.menu .sub-menu{display:none;position:absolute;left:0;top:100%;flex-direction:column;background:#1c1c1c;min-width:210px;z-index:10}
.menu li:hover>.sub-menu,.menu li:focus-within>.sub-menu{display:flex}
.menu-btn{display:none;background:none;border:0;color:#fff;font:600 15px system-ui,sans-serif;padding:13px 0;cursor:pointer}

/* Contenido */
.principal{padding:28px 0 52px}
.encabezado-seccion{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;border-bottom:3px solid var(--c-primario);margin-bottom:22px}
.encabezado-seccion h2{margin:0;padding-bottom:8px;font:700 26px/1.2 Georgia,serif}
.pestanas{display:flex;gap:4px;margin-bottom:-3px}
.pestanas button{border:0;background:#e3e6eb;color:var(--c-texto);padding:9px 18px;font:600 14px system-ui,sans-serif;cursor:pointer;border-radius:6px 6px 0 0}
.pestanas button[aria-selected="true"]{background:var(--c-primario);color:#fff}

.rejilla{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tarjeta{background:#fff;border:1px solid #e3e6ea;border-radius:var(--radio);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s}
.tarjeta:hover{box-shadow:0 6px 18px rgba(0,0,0,.09)}
.tarjeta a.img{display:block;aspect-ratio:3/2;background:#dde1e7;overflow:hidden}
.tarjeta .img img{width:100%;height:100%;object-fit:cover}
.tarjeta .cuerpo{padding:14px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.cat{align-self:flex-start;display:inline-block;background:var(--c-acento);color:#fff;font-size:12px;font-weight:700;padding:2px 9px;border-radius:3px;line-height:1.6}
.tarjeta h3{margin:0;font:700 19px/1.3 Georgia,serif}
.tarjeta h3 a:hover{color:var(--c-primario)}
.meta{color:var(--c-suave);font-size:13px;margin-top:auto}
.mas{text-align:center;margin-top:28px}
.mas a,.form-contacto button{display:inline-block;background:var(--c-primario);color:#fff;padding:12px 24px;border-radius:var(--radio);font-weight:700}
.vacio{padding:24px;background:#fff;border:1px dashed #c9ced6;border-radius:var(--radio);color:var(--c-suave)}

.nav-links{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.nav-links a,.nav-links span{padding:8px 14px;background:#fff;border:1px solid #d8dce2;border-radius:var(--radio)}
.nav-links .current{background:var(--c-primario);color:#fff;border-color:var(--c-primario)}

/* Entradas y páginas */
.articulo{max-width:780px;margin:0 auto;background:#fff;padding:28px clamp(16px,4vw,44px) 36px;border-radius:var(--radio);border:1px solid #e3e6ea}
.articulo h1{margin:.4em 0 .3em;font:700 clamp(26px,4vw,38px)/1.2 Georgia,serif}
.articulo .contenido{font-size:18px;line-height:1.75}
.articulo .contenido img{margin:1.2em auto}
.articulo .contenido a{color:var(--c-primario);text-decoration:underline}

/* Formulario de contacto */
.form-contacto{display:grid;gap:14px;max-width:560px}
.form-contacto label{display:grid;gap:4px;font-weight:600;font-size:15px}
.form-contacto input,.form-contacto textarea{width:100%;padding:11px 12px;border:1px solid #c9ced6;border-radius:var(--radio);font:inherit}
.form-contacto button{border:0;justify-self:start;cursor:pointer;font:700 16px system-ui,sans-serif}
.form-contacto .hp{position:absolute;left:-9999px}
.aviso{padding:12px 14px;border-radius:var(--radio);margin:0 0 16px}
.aviso.ok{background:#e6f5ea;color:#14532d}
.aviso.error{background:#fde8e8;color:#7f1d1d}

/* Pie */
.pie{background:var(--c-menu);color:#cfd5de;padding:28px 0;font-size:14px}
.pie .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.pie p{margin:0}
.pie ul{list-style:none;margin:0;padding:0;display:flex;gap:16px;flex-wrap:wrap}
.pie a:hover{color:#fff;text-decoration:underline}

@media(max-width:900px){.rejilla{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){
  .menu .wrap{flex-wrap:wrap}
  .menu-btn{display:block}
  .menu ul{display:none;flex-direction:column;width:100%}
  .menu ul.abierto{display:flex}
  .menu .sub-menu{display:flex;position:static;background:rgba(255,255,255,.05);padding-left:14px}
}
@media(max-width:640px){
  .banda .wrap{flex-direction:column;align-items:stretch;gap:12px}
  .logo{text-align:center}.logo img{margin:0 auto}
  .topbar .wrap{justify-content:center}
}
@media(max-width:560px){.rejilla{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
