/*
Theme Name: Olhar Digital
Theme URI: https://olhardigital.pt/
Author: Olhar Digital
Description: Tema editorial rápido para notícias de tecnologia e atualidade.
Version: 1.0.0
Text Domain: olhar-digital
*/

:root { --ink:#111827; --muted:#64748b; --paper:#f6f8fb; --line:#e2e8f0; --brand:#62d6c0; --night:#0b1b30; --blue:#227eb6; --coral:#ff6b57; --max:1320px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; line-height:1.55; }
a { color:inherit; text-decoration:none; }
a:hover { color:var(--brand); }
.site-header { background:var(--night); color:#fff; border-bottom:4px solid var(--brand); }
.topbar,.container { width:min(calc(100% - 40px),var(--max)); margin:auto; }
.topbar { display:flex; min-height:86px; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:flex; align-items:center; }
.brand-logo { display:block; width:176px; height:auto; transition:transform .2s ease; }
.brand:hover .brand-logo { transform:translateY(-1px); }
.category-nav { background:var(--blue); box-shadow:inset 0 -3px 0 rgba(255,255,255,.16); }
.category-nav ul { width:min(calc(100% - 40px),var(--max)); margin:auto; padding:0; display:flex; overflow-x:auto; white-space:nowrap; list-style:none; }
.category-nav li { flex:0 0 auto; }
.category-nav a { display:block; color:white; font-size:.98rem; font-weight:750; letter-spacing:.015em; padding:18px 19px; text-transform:uppercase; }
.category-nav a:hover,.category-nav .current-menu-item a { color:white; background:rgba(7,23,45,.2); box-shadow:inset 0 -5px 0 #fff; }
.breaking { background:#fff2ef; border-bottom:1px solid #ffd8d1; color:#8e2f20; font-size:.85rem; font-weight:750; }
.breaking .container { padding:9px 0; display:flex; gap:10px; }
.breaking b { color:var(--coral); text-transform:uppercase; letter-spacing:.08em; }
.page-shell { padding:44px 0 72px; }
.section-kicker { color:var(--brand); font-size:.75rem; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.section-title { font-size:clamp(1.75rem,4vw,3.3rem); line-height:1.04; letter-spacing:-.055em; margin:7px 0 30px; }
.news-grid { display:grid; grid-template-columns:1.3fr .7fr; gap:30px; align-items:start; }
.lead-card,.article-card,.newsletter { background:white; border:1px solid var(--line); border-radius:20px; overflow:hidden; }
.lead-card { padding:clamp(26px,5vw,55px); background:linear-gradient(135deg,#0b1b30,#1d78b0); color:white; min-height:390px; display:flex; flex-direction:column; justify-content:end; }
.lead-card .section-kicker { color:#9ff3e3; }
.lead-card h2 { margin:8px 0 12px; max-width:790px; font-size:clamp(2rem,4vw,4rem); line-height:1.02; letter-spacing:-.06em; }
.lead-card p { max-width:680px; color:#d8eeff; font-size:1.05rem; }
.meta { color:var(--muted); font-size:.83rem; font-weight:650; }
.lead-card .meta { color:#c1f0e8; }
.story-stack { display:grid; gap:14px; }
.article-card { padding:21px; transition:transform .2s,box-shadow .2s; }
.article-card:hover { transform:translateY(-3px); box-shadow:0 14px 32px rgba(15,23,42,.08); }
.article-card h3 { margin:5px 0 8px; font-size:1.3rem; letter-spacing:-.035em; line-height:1.18; }
.article-card p { color:var(--muted); margin:0 0 12px; font-size:.94rem; }
.articles-heading { display:flex; justify-content:space-between; align-items:end; margin:55px 0 17px; border-bottom:1px solid var(--line); padding-bottom:14px; }
.articles-heading h2 { margin:0; font-size:1.55rem; letter-spacing:-.04em; }
.article-list { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.article-list .article-card { min-height:225px; }
.source { display:flex; align-items:center; gap:7px; font-size:.78rem; color:var(--muted); }
.source:before { content:"↗"; color:#159f8d; font-weight:900; }
.entry { width:min(calc(100% - 40px),820px); margin:auto; padding:55px 0 80px; }
.entry h1 { font-size:clamp(2.3rem,6vw,4.5rem); line-height:1.02; letter-spacing:-.065em; margin:9px 0 20px; }
.entry .intro { font-size:1.2rem; color:#475569; }
.entry-content { font-family:Georgia,serif; font-size:1.18rem; line-height:1.75; margin-top:34px; }
.entry-source { border-left:3px solid var(--brand); background:#ecfdf9; padding:15px 17px; margin-top:30px; color:#245b54; }
.empty-state { background:white; border:1px dashed #b9c7d5; padding:45px; border-radius:18px; color:var(--muted); text-align:center; }
.site-footer { background:var(--night); color:#b8d0ce; padding:42px 0; }
.site-footer strong { color:white; }
@media (max-width:800px) { .topbar { min-height:68px; } .brand-logo { width:148px; } .category-nav a { padding:14px 15px; font-size:.82rem; } .news-grid,.article-list { grid-template-columns:1fr; } .page-shell { padding-top:28px; } .lead-card { min-height:310px; } }
