/*
Theme Name: Miguel Arcángel Noticias
Theme URI: https://miguelarcangel.local/
Author: Miguel Arcángel
Author URI: https://miguelarcangel.local/
Description: Tema profesional tipo portal de noticias para Miguel Arcángel, Noticiero Regional del Noroccidente de Pichincha. Compatible con Elementor y entradas de WordPress.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: miguel-arcangel-noticias
Tags: news, blog, custom-logo, featured-images, custom-menu, responsive-layout
*/

:root{
  --ma-blue:#0b4ea2;
  --ma-blue-dark:#07346d;
  --ma-red:#d71920;
  --ma-yellow:#f5c400;
  --ma-ink:#101828;
  --ma-muted:#667085;
  --ma-bg:#f3f6fb;
  --ma-card:#ffffff;
  --ma-border:#e4e7ec;
  --ma-radius:18px;
  --ma-shadow:0 12px 32px rgba(16,24,40,.10);
}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ma-ink);background:var(--ma-bg);line-height:1.55}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.ma-container{width:min(1180px,92%);margin:0 auto}
.ma-topbar{background:var(--ma-blue-dark);color:#fff;font-size:14px}
.ma-topbar-inner{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:8px 0}
.ma-live-dot{display:inline-block;width:8px;height:8px;background:var(--ma-red);border-radius:50%;margin-right:7px;box-shadow:0 0 0 4px rgba(215,25,32,.18)}
.ma-header{background:#fff;border-bottom:1px solid var(--ma-border);position:sticky;top:0;z-index:30}
.ma-header-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:14px 0}
.ma-brand{display:flex;align-items:center;gap:14px;min-width:260px}
.ma-logo{width:76px;height:auto}
.ma-brand-title{font-size:25px;font-weight:900;letter-spacing:-.02em;color:var(--ma-blue-dark);line-height:1}
.ma-brand-sub{font-size:13px;color:var(--ma-muted);margin-top:4px;font-weight:700}
.ma-nav ul{display:flex;gap:4px;align-items:center;list-style:none;margin:0;padding:0;flex-wrap:wrap;justify-content:flex-end}
.ma-nav a{display:block;padding:10px 12px;border-radius:999px;font-weight:800;font-size:14px;color:var(--ma-ink)}
.ma-nav a:hover,.ma-nav .current-menu-item>a{background:var(--ma-blue);color:#fff}
.ma-ticker{background:#fff;border-bottom:1px solid var(--ma-border)}
.ma-ticker-inner{display:flex;gap:14px;align-items:center;padding:10px 0;overflow:hidden}
.ma-ticker-label{background:var(--ma-red);color:#fff;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900;white-space:nowrap;text-transform:uppercase}
.ma-ticker-text{font-weight:700;color:var(--ma-blue-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ma-hero{padding:32px 0 24px}
.ma-grid-hero{display:grid;grid-template-columns:1.55fr .95fr;gap:24px;align-items:stretch}
.ma-card{background:var(--ma-card);border:1px solid var(--ma-border);border-radius:var(--ma-radius);box-shadow:var(--ma-shadow);overflow:hidden}
.ma-featured{position:relative;min-height:500px;display:flex;align-items:flex-end;background:#111}
.ma-featured:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.84));z-index:1}
.ma-featured img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.92}
.ma-featured-content{position:relative;z-index:2;color:#fff;padding:34px}
.ma-badge{display:inline-flex;align-items:center;gap:6px;background:var(--ma-red);color:#fff;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.03em;margin-bottom:14px}
.ma-featured h1{font-size:clamp(30px,4vw,52px);line-height:1.02;margin:0 0 12px;font-weight:950;letter-spacing:-.04em}
.ma-featured p{font-size:18px;margin:0 0 20px;color:#eef4ff;max-width:780px}
.ma-button{display:inline-block;background:var(--ma-yellow);color:#141414;padding:12px 18px;border-radius:999px;font-weight:950;box-shadow:0 10px 24px rgba(245,196,0,.2)}
.ma-button:hover{transform:translateY(-1px)}
.ma-side{display:grid;gap:18px}
.ma-side-card{display:grid;grid-template-columns:140px 1fr;gap:14px;padding:12px;align-items:center}
.ma-side-thumb{height:112px;border-radius:14px;overflow:hidden;background:#d0d5dd}
.ma-side-thumb img{width:100%;height:100%;object-fit:cover}
.ma-side-card h3{font-size:18px;line-height:1.18;margin:7px 0 6px;font-weight:950;color:var(--ma-blue-dark)}
.ma-meta{font-size:12px;color:var(--ma-muted);font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.ma-section{padding:24px 0}
.ma-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:16px;border-bottom:3px solid var(--ma-border);padding-bottom:10px}
.ma-section-title{font-size:26px;line-height:1.1;margin:0;font-weight:950;color:var(--ma-blue-dark);letter-spacing:-.03em}
.ma-section-title span{border-bottom:4px solid var(--ma-red);padding-bottom:10px}
.ma-section-link{font-weight:900;color:var(--ma-blue)}
.ma-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ma-post-card{background:#fff;border:1px solid var(--ma-border);border-radius:var(--ma-radius);overflow:hidden;box-shadow:0 8px 20px rgba(16,24,40,.06);transition:.18s ease}
.ma-post-card:hover{transform:translateY(-3px);box-shadow:var(--ma-shadow)}
.ma-post-thumb{height:205px;background:#d0d5dd;overflow:hidden}
.ma-post-thumb img{width:100%;height:100%;object-fit:cover;transition:.25s ease}
.ma-post-card:hover .ma-post-thumb img{transform:scale(1.04)}
.ma-post-body{padding:16px}
.ma-post-body h3{font-size:20px;line-height:1.18;margin:8px 0 8px;font-weight:950;color:var(--ma-ink)}
.ma-post-body p{color:var(--ma-muted);margin:0;font-size:14px}
.ma-two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.ma-mini-list{display:grid;gap:14px}
.ma-mini-item{display:grid;grid-template-columns:104px 1fr;gap:14px;align-items:center;background:#fff;border:1px solid var(--ma-border);border-radius:16px;padding:10px}
.ma-mini-thumb{height:80px;border-radius:12px;overflow:hidden;background:#d0d5dd}
.ma-mini-thumb img{width:100%;height:100%;object-fit:cover}
.ma-mini-item h4{margin:4px 0 0;font-size:16px;line-height:1.18;font-weight:950}
.ma-cta{margin:34px 0;background:linear-gradient(135deg,var(--ma-blue-dark),var(--ma-blue));border-radius:24px;color:#fff;padding:32px;display:grid;grid-template-columns:1.4fr auto;gap:20px;align-items:center;box-shadow:var(--ma-shadow)}
.ma-cta h2{margin:0 0 8px;font-size:30px;line-height:1.05;font-weight:950}
.ma-cta p{margin:0;color:#dceafe}
.ma-footer{background:#071f42;color:#fff;margin-top:38px}
.ma-footer-inner{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:28px;padding:36px 0}
.ma-footer h3{margin:0 0 10px;font-size:18px}
.ma-footer p,.ma-footer a{color:#c7d7ee;font-size:14px}
.ma-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ma-copy{border-top:1px solid rgba(255,255,255,.12);padding:14px 0;color:#a9bdd9;font-size:13px}
.ma-page{padding:34px 0}
.ma-content-card{background:#fff;border:1px solid var(--ma-border);border-radius:var(--ma-radius);box-shadow:var(--ma-shadow);padding:clamp(20px,4vw,42px)}
.ma-article-title{font-size:clamp(34px,5vw,56px);line-height:1.02;margin:10px 0 14px;font-weight:950;letter-spacing:-.04em;color:var(--ma-blue-dark)}
.ma-article-image{border-radius:20px;overflow:hidden;margin:24px 0;background:#d0d5dd}
.ma-entry{font-size:18px;color:#26364d}
.ma-entry p{margin:0 0 18px}
.ma-entry h2,.ma-entry h3{color:var(--ma-blue-dark);font-weight:950;line-height:1.12;margin-top:30px}
.ma-empty{background:#fff;border:1px dashed var(--ma-border);border-radius:18px;padding:22px;color:var(--ma-muted);font-weight:700}
.wp-caption,.aligncenter{max-width:100%}
.aligncenter{margin-left:auto;margin-right:auto}
.screen-reader-text{position:absolute;left:-9999px}
@media (max-width:900px){
  .ma-header-inner{align-items:flex-start;flex-direction:column}
  .ma-nav ul{justify-content:flex-start}
  .ma-grid-hero,.ma-two-col,.ma-cta,.ma-footer-inner{grid-template-columns:1fr}
  .ma-post-grid{grid-template-columns:1fr 1fr}
  .ma-featured{min-height:430px}
}
@media (max-width:620px){
  .ma-topbar-inner{flex-direction:column;align-items:flex-start;gap:2px}
  .ma-brand-title{font-size:21px}
  .ma-logo{width:62px}
  .ma-nav a{font-size:13px;padding:8px 10px}
  .ma-post-grid{grid-template-columns:1fr}
  .ma-side-card,.ma-mini-item{grid-template-columns:96px 1fr}
  .ma-side-thumb{height:86px}
  .ma-featured-content{padding:22px}
  .ma-featured{min-height:390px}
}
