/* ============================================================
   Softfocus — Blog
   ============================================================ */

/* ---------- hero ---------- */
.blog-hero{position:relative;padding:196px 0 76px}
.blog-hero h1{font-size:clamp(38px,4.8vw,62px);margin:22px 0 0;max-width:17ch}
.blog-lead{margin-top:26px;font-size:18.5px;font-weight:300;color:var(--ink-2);max-width:560px;line-height:1.65}

/* ---------- destaque ---------- */
.feat-section{padding:0 0 40px;position:relative}
.feat{display:grid;grid-template-columns:1.06fr .94fr;gap:0;border:1px solid var(--line-strong);border-top:2px solid var(--blue);border-radius:24px;overflow:hidden;background:linear-gradient(180deg,#1b2c46,#121e31);box-shadow:0 40px 90px -44px rgba(0,0,0,.85),0 0 0 1px rgba(120,134,148,.12),0 0 80px -30px rgba(0,163,228,.28);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.feat:hover{transform:translateY(-4px);box-shadow:0 50px 100px -44px rgba(0,0,0,.9),0 0 0 1px rgba(0,163,228,.28),0 0 100px -30px rgba(0,163,228,.38)}
.feat-body{padding:clamp(30px,3.4vw,52px);display:flex;flex-direction:column;justify-content:center;gap:18px}
.feat-kicker{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.feat h2{font-size:clamp(26px,2.9vw,40px);line-height:1.12;text-wrap:pretty}
.feat p{font-size:16.5px;font-weight:300;color:var(--ink-2);line-height:1.7;max-width:52ch}
.feat-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:13px;color:var(--ink-3);padding-top:18px;border-top:1px solid var(--line)}
.feat-media{position:relative;min-height:400px;border-left:1px solid var(--line)}
.feat-media image-slot{position:absolute;inset:0;width:100%;height:100%}
.feat-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(270deg,rgba(8,12,20,.12),rgba(8,12,20,.7) 88%),linear-gradient(150deg,rgba(0,163,228,.22),transparent 60%)}
.feat-read{align-self:flex-start;margin-top:6px}
@media (max-width:900px){.feat{grid-template-columns:1fr}.feat-media{min-height:240px;border-left:0;border-bottom:1px solid var(--line);order:-1}}

/* ---------- tag / badge ---------- */
.tag{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);padding:6px 12px;border-radius:100px;background:rgba(0,163,228,.1);border:1px solid rgba(0,163,228,.26);white-space:nowrap}
.tag.sl{color:var(--slate-soft);background:rgba(120,134,148,.12);border-color:rgba(120,134,148,.26)}
.meta-dot{width:4px;height:4px;border-radius:50%;background:var(--slate);flex-shrink:0}

/* ---------- filtros ---------- */
.blog-filters{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 44px}
.f-chip{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13.5px;color:var(--ink-2);background:#fff;border:1px solid var(--line);border-radius:100px;padding:10px 18px;cursor:none;transition:color .28s var(--ease),border-color .28s var(--ease),background .28s var(--ease),transform .28s var(--ease)}
.f-chip:hover{color:var(--ink);border-color:rgba(0,163,228,.5);transform:translateY(-1px)}
.f-chip.on{background:var(--blue-deep);border-color:var(--blue-deep);color:#fff}

/* ---------- grade de posts ---------- */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.post{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);overflow:hidden;transition:transform .4s var(--ease),border-color .4s var(--ease),box-shadow .4s var(--ease)}
.post[hidden]{display:none}
.post-media{position:relative;height:186px;background:rgba(18,42,70,.05);border-bottom:1px solid var(--line)}
.post-media image-slot{position:absolute;inset:0;width:100%;height:100%}
.post-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,12,20,0),rgba(8,12,20,.34));opacity:0;transition:opacity .4s var(--ease)}
.post:hover{transform:translateY(-5px)}
.post:hover .post-media::after{opacity:1}
.post-body{padding:24px 26px 26px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;flex:1}
.post-body>*{align-self:flex-start}
.post-meta{align-self:stretch}
.post h3{font-size:20px;line-height:1.24;text-wrap:pretty}
.post p{font-size:14.5px;font-weight:300;color:var(--ink-2);line-height:1.62}
.post-meta{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-3)}
.post-link{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;margin-top:4px;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:13.5px;color:var(--blue-deep)}
.post-link svg{width:15px;height:15px;transition:transform .3s var(--ease)}
.post:hover .post-link svg{transform:translateX(4px)}
@media (max-width:1000px){.posts{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.posts{grid-template-columns:1fr}}

.section-light .post{box-shadow:0 1px 2px rgba(16,40,66,.04),0 18px 40px -26px rgba(16,40,66,.22)}
.section-light .post:hover{box-shadow:0 1px 2px rgba(16,40,66,.05),0 26px 54px -24px rgba(0,163,228,.28)}
.section-light .tag{color:var(--blue-deep)}
.section-light .tag.sl{color:#4d5c6b}

.posts-empty{display:none;padding:40px 0;font-size:15px;color:var(--ink-3)}
.posts-empty.show{display:block}

.blog-more{display:flex;justify-content:center;margin-top:52px}

/* ---------- newsletter ---------- */
.news{position:relative;padding:120px 0}
.news-card{display:grid;grid-template-columns:1fr .9fr;gap:48px;align-items:center;border:1px solid var(--line-strong);border-radius:26px;padding:clamp(30px,3.6vw,54px);background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));box-shadow:0 40px 90px -46px rgba(0,0,0,.8)}
.news-card h2{font-size:clamp(26px,2.8vw,38px);margin-top:18px}
.news-card p{margin-top:16px;font-size:16.5px;font-weight:300;color:var(--ink-2);max-width:46ch;line-height:1.7}
.news-form{display:flex;flex-direction:column;gap:12px}
.news-inputs{display:flex;gap:10px;flex-wrap:wrap}
.news-inputs input{flex:1;min-width:200px;font-family:'Inter',sans-serif;font-size:15px;color:var(--ink);background:rgba(255,255,255,.05);border:1px solid var(--line-strong);border-radius:12px;padding:15px 16px;transition:border-color .3s var(--ease),box-shadow .3s var(--ease)}
.news-inputs input::placeholder{color:var(--ink-3)}
.news-inputs input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(0,163,228,.14)}
.news-note{font-size:12.5px;color:var(--ink-3);font-weight:300}
.news-ok{display:none;font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:15px;color:var(--blue)}
.news-ok.show{display:block}
@media (max-width:900px){.news{padding:90px 0}.news-card{grid-template-columns:1fr;gap:30px}}
