/*
Theme Name: Cafe Grillo CMMD
Theme URI: https://www.cafegrillo.com.mx/
Author: FactoriaDigital
Author URI: https://factoriadigital.store/
Description: Tema editorial premium para Cafe Grillo, medio integrante de la red CMMD. Diseno tipo cafe politico digital, portada por bloques, espacios comerciales y arquitectura SEO.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: cafe-grillo-cmmd
*/

:root{
  --espresso:#21150f;
  --coffee:#4a2c1d;
  --cream:#f6ead7;
  --paper:#fffaf0;
  --ink:#14110f;
  --red:#b1442e;
  --green:#29493b;
  --gold:#c89b52;
  --muted:#74665a;
  --line:rgba(33,21,15,.14);
  --shadow:0 18px 42px rgba(33,21,15,.12);
  --radius:22px;
  --max:1320px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;background:var(--cream);color:var(--ink);line-height:1.55} a{color:inherit;text-decoration:none} img{max-width:100%;height:auto;display:block} .wrap{width:min(var(--max),calc(100% - 36px));margin:0 auto}.site-bg{background:radial-gradient(circle at 15% 10%,rgba(200,155,82,.24),transparent 28%),radial-gradient(circle at 90% 0%,rgba(177,68,46,.16),transparent 26%),linear-gradient(90deg,rgba(33,21,15,.055) 1px,transparent 1px),linear-gradient(0deg,rgba(33,21,15,.045) 1px,transparent 1px);background-size:auto,auto,34px 34px,34px 34px;min-height:100vh}.topbar{background:var(--espresso);color:var(--cream);font-size:13px}.topbar .wrap{display:flex;justify-content:space-between;align-items:center;padding:8px 0;gap:18px;flex-wrap:wrap}.network-badge{color:var(--gold);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.site-header{position:sticky;top:0;z-index:999;background:rgba(246,234,215,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);transition:transform .32s ease, box-shadow .32s ease}.site-header.hide-head{transform:translateY(-110%)}.masthead{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:18px 0}.brand{display:flex;align-items:center;gap:14px}.brand svg{width:238px;height:auto}.brand-text{display:flex;flex-direction:column}.brand-name{font-weight:950;font-size:30px;letter-spacing:-.04em;line-height:.95}.brand-name span{color:var(--red)}.tagline{font-size:13px;color:var(--muted);font-weight:700}.menu{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.menu a{font-size:14px;font-weight:900;padding:10px 12px;border-radius:999px;color:var(--espresso)}.menu a:hover{background:var(--espresso);color:var(--cream)}.ad-top{background:linear-gradient(135deg,var(--espresso),var(--green));border:1px solid rgba(200,155,82,.35);color:var(--cream);border-radius:18px;padding:14px 18px;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:950;letter-spacing:.12em;text-transform:uppercase;box-shadow:var(--shadow);position:relative;overflow:hidden}.ad-top:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);transform:translateX(-100%);animation:shine 4s infinite}@keyframes shine{50%,100%{transform:translateX(100%)}}.hero{padding:28px 0 20px}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:22px}.card{background:rgba(255,250,240,.88);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.feature{position:relative;min-height:520px;display:flex;align-items:flex-end;background:var(--espresso)}.feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.78}.feature:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 20%,rgba(33,21,15,.96))}.feature-content{position:relative;z-index:2;color:var(--paper);padding:34px}.kicker{display:inline-flex;align-items:center;gap:8px;background:var(--red);color:#fff;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.kicker:before{content:"";width:8px;height:8px;background:var(--gold);border-radius:50%}.feature h1{font-size:clamp(34px,4vw,58px);line-height:.95;margin:18px 0 12px;letter-spacing:-.055em}.feature p{font-size:18px;color:rgba(255,250,240,.86);max-width:760px}.side-stack{display:grid;gap:16px}.mini-card{display:grid;grid-template-columns:155px 1fr;gap:14px;padding:12px;align-items:center}.mini-card img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:16px}.mini-card h3{font-size:18px;line-height:1.08;margin:7px 0}.mini-card p,.post-card p{font-size:14px;color:var(--muted);margin:0}.section{padding:28px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px;border-bottom:3px solid var(--espresso);padding-bottom:10px}.section-head h2{margin:0;font-size:30px;letter-spacing:-.04em}.section-head small{color:var(--muted);font-weight:800}.post-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.post-card{padding:12px}.post-card img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:16px;margin-bottom:12px;background:#ddd}.post-card h3{font-size:19px;line-height:1.1;margin:7px 0}.meta{font-size:12px;font-weight:900;color:var(--red);text-transform:uppercase;letter-spacing:.06em}.ad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.ad-box{min-height:160px;border-radius:var(--radius);background:linear-gradient(135deg,var(--coffee),var(--espresso));border:1px solid rgba(200,155,82,.38);color:var(--cream);display:flex;align-items:center;justify-content:center;text-align:center;font-weight:950;letter-spacing:.14em;text-transform:uppercase;box-shadow:var(--shadow);position:relative;overflow:hidden}.ad-box:before{content:"";position:absolute;inset:14px;border:1px dashed rgba(246,234,215,.28);border-radius:16px}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;padding:34px 0}.article{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(22px,4vw,48px);box-shadow:var(--shadow)}.article h1{font-size:clamp(34px,5vw,60px);line-height:.95;letter-spacing:-.055em;margin:10px 0 16px}.article .entry-content{font-size:18px}.article .entry-content p{margin:0 0 1.1em}.article .entry-content h2{font-size:30px;margin-top:1.5em}.sidebar{display:grid;gap:18px;align-content:start}.widget-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}.widget-card h3{margin-top:0}.site-footer{background:var(--espresso);color:var(--cream);margin-top:42px;padding:38px 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:22px}.site-footer a{color:var(--gold);font-weight:800}.back-top{position:fixed;right:22px;bottom:22px;width:52px;height:52px;border-radius:50%;border:0;background:var(--red);color:#fff;font-size:26px;font-weight:900;box-shadow:0 16px 32px rgba(0,0,0,.25);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(18px);transition:.25s ease;z-index:1000}.back-top.show{opacity:1;visibility:visible;transform:translateY(0)}.archive-title{padding:34px 0 4px}.archive-title h1{font-size:48px;letter-spacing:-.05em;margin:0}.pagination{padding:24px 0}.pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}.pagination a,.pagination span{padding:10px 14px;background:var(--paper);border:1px solid var(--line);border-radius:999px;font-weight:900}.pagination .current{background:var(--espresso);color:var(--cream)}.screen-reader-text{position:absolute;left:-9999px}.wp-caption,.gallery-caption,.bypostauthor{max-width:100%}.alignleft{float:left;margin:0 20px 20px 0}.alignright{float:right;margin:0 0 20px 20px}.aligncenter{margin-left:auto;margin-right:auto}.no-posts{padding:30px;background:var(--paper);border-radius:var(--radius);border:1px solid var(--line)}
@media(max-width:980px){.hero-grid,.content-layout,.footer-grid{grid-template-columns:1fr}.post-grid{grid-template-columns:repeat(2,1fr)}.ad-grid{grid-template-columns:1fr}.feature{min-height:420px}.masthead{align-items:flex-start;flex-direction:column}.menu{justify-content:flex-start}.brand svg{width:210px}}
@media(max-width:620px){.wrap{width:min(100% - 24px,var(--max))}.post-grid{grid-template-columns:1fr}.mini-card{grid-template-columns:120px 1fr}.feature-content{padding:24px}.feature{min-height:390px}.brand-name{font-size:25px}.menu a{padding:8px 10px;font-size:13px}.topbar .wrap{display:block}.section-head{display:block}.article{padding:22px}}

.network-badge,
a.network-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  text-decoration:none;
  color:#f4e3c3;
}
a.network-badge:hover{color:#d58a2a;}
