/* ===== Fasta Kinshasa · Noticias / Blog — hoja compartida ===== */
:root{
  --navy:#111f45; --navy-2:#182a5c; --blue:#2f8fd6; --blue-bright:#42a4ea;
  --red:#ce2b37; --gold:#f4c20d; --gold-soft:#f7cf3f;
  --cream:#fbf6ec; --paper:#ffffff; --ink:#191a1f; --muted:#5b6070;
  --line:rgba(17,31,69,.12);
  --shadow:0 24px 60px -28px rgba(17,31,69,.45);
  --shadow-sm:0 10px 30px -18px rgba(17,31,69,.4);
  --serif:"Fraunces",Georgia,serif; --sans:"Mulish",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--ink);background:var(--cream);line-height:1.65;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.05;letter-spacing:-.02em}
.wrap{width:min(1100px,92vw);margin-inline:auto}
.narrow{width:min(760px,92vw);margin-inline:auto}

/* buttons (accent amarillo) */
.btn{display:inline-flex;align-items:center;gap:.55em;font-family:var(--sans);font-weight:800;font-size:.98rem;
  padding:.85em 1.5em;border-radius:100px;border:0;cursor:pointer;line-height:1;
  transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s,background .25s}
.btn svg{width:1.05em;height:1.05em}
.btn-gold{background:var(--gold);color:var(--navy);box-shadow:0 12px 26px -12px rgba(244,194,13,.6)}
.btn-gold:hover{transform:translateY(-3px);background:var(--gold-soft);box-shadow:0 20px 34px -12px rgba(244,194,13,.8)}
.btn-ghost{background:transparent;color:var(--navy);border:1.5px solid var(--line)}
.btn-ghost:hover{border-color:var(--navy)}

/* top nav */
header{position:sticky;top:0;z-index:100;background:rgba(251,246,236,.9);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:.7rem 0}
.brand img{height:46px}
.nav-links{display:flex;align-items:center;gap:1.8rem;list-style:none}
.nav-links a{font-weight:700;font-size:.94rem;color:var(--navy);transition:.2s}
.nav-links a:hover{color:var(--red)}
.nav-links a.active{color:var(--red)}
.nav-right{display:flex;align-items:center;gap:1rem}

/* blog hero */
.blog-hero{padding:clamp(3rem,7vw,6rem) 0 clamp(2rem,4vw,3rem);text-align:center}
.eyebrow{font-family:var(--sans);font-weight:800;letter-spacing:.18em;text-transform:uppercase;font-size:.75rem;
  color:var(--red);display:inline-flex;align-items:center;gap:.6rem;margin-bottom:1.1rem}
.eyebrow:before,.eyebrow:after{content:"";width:26px;height:2px;background:var(--red)}
.blog-hero h1{font-size:clamp(2.4rem,6vw,4.2rem);color:var(--navy);max-width:16ch;margin:0 auto}
.blog-hero p{color:var(--muted);font-size:clamp(1.05rem,1.6vw,1.2rem);max-width:52ch;margin:1.2rem auto 0}

/* post grid */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;padding:1rem 0 clamp(4rem,8vw,7rem)}
.post-card{background:var(--paper);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-sm);
  border:1px solid rgba(17,31,69,.06);display:flex;flex-direction:column;transition:.4s}
.post-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.post-card .ph{aspect-ratio:16/10;overflow:hidden}
.post-card .ph img{width:100%;height:100%;object-fit:cover;transition:.7s}
.post-card:hover .ph img{transform:scale(1.07)}
.post-card .body{padding:1.5rem 1.4rem 1.6rem;display:flex;flex-direction:column;flex:1}
.post-card .date{font-size:.78rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--blue)}
.post-card h2{font-size:1.35rem;color:var(--navy);margin:.5rem 0 .6rem;line-height:1.15}
.post-card p{color:var(--muted);font-size:.96rem;flex:1}
.post-card .more{margin-top:1.2rem;font-weight:800;color:var(--red);display:inline-flex;align-items:center;gap:.4rem;font-size:.92rem}
.post-card .more svg{transition:.3s}.post-card:hover .more svg{transform:translateX(5px)}

/* article */
.article-hero{position:relative;height:min(58vh,520px);overflow:hidden;display:flex;align-items:flex-end;color:#fff}
.article-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.article-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,31,69,.25),rgba(12,22,52,.92));z-index:1}
.article-hero .wrap{position:relative;z-index:2;padding-bottom:clamp(2rem,5vw,3.5rem)}
.article-hero .date{font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:.8rem;color:var(--gold)}
.article-hero h1{font-size:clamp(2.1rem,5vw,3.8rem);max-width:20ch;margin-top:.8rem}
.back{display:inline-flex;align-items:center;gap:.5rem;font-weight:800;font-size:.9rem;color:var(--muted);margin:2rem 0 0}
.back:hover{color:var(--red)}
.prose{padding:clamp(2.2rem,5vw,3.5rem) 0 clamp(3.5rem,7vw,6rem);font-size:1.13rem;color:#2b2e3a}
.prose p{margin-bottom:1.3rem}
.prose h2{font-size:clamp(1.5rem,3vw,2rem);color:var(--navy);margin:2.4rem 0 1rem}
.prose .lead{font-family:var(--serif);font-size:clamp(1.3rem,2.4vw,1.7rem);color:var(--navy);line-height:1.35;font-weight:500;margin-bottom:1.6rem}
.prose blockquote{border-left:4px solid var(--gold);padding:.4rem 0 .4rem 1.5rem;margin:2rem 0;
  font-family:var(--serif);font-style:italic;font-size:1.35rem;color:var(--navy)}
.prose figure{margin:2rem 0}
.prose figure img{border-radius:16px;box-shadow:var(--shadow-sm)}
.prose figcaption{font-size:.85rem;color:var(--muted);margin-top:.6rem;text-align:center}
.article-cta{background:var(--navy);color:#fff;border-radius:22px;padding:clamp(1.8rem,4vw,2.6rem);text-align:center;margin-top:1rem}
.article-cta h3{font-size:1.6rem;margin-bottom:.6rem}
.article-cta p{color:rgba(255,255,255,.8);margin-bottom:1.4rem;font-size:1rem}

/* footer */
footer{background:#0c1533;color:rgba(255,255,255,.7);padding:3rem 0 2rem;margin-top:2rem}
.f-in{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.4rem}
footer .brand img{height:56px}
footer a{transition:.2s}footer a:hover{color:var(--gold)}
.f-links{display:flex;gap:1.4rem;font-weight:700;font-size:.92rem}
.f-copy{width:100%;border-top:1px solid rgba(255,255,255,.12);padding-top:1.4rem;font-size:.82rem}

@media(max-width:860px){.posts{grid-template-columns:1fr;max-width:460px;margin-inline:auto}}
@media(max-width:620px){.nav-links{display:none}}
