:root{--bg:#07050d;--bg2:#0f0b1a;--card:#140f22;--line:#241a3a;--text:#f3effc;--muted:#a79fbd;--accent:#c026ff;--accent2:#7c3aed;--ink:#fff;--shadow:0 10px 40px rgba(0,0,0,.35)}
:root[data-theme=light]{--bg:#f6f4fb;--bg2:#fff;--card:#fff;--line:#e4def2;--text:#15101f;--muted:#6b6482;--accent:#a21caf;--accent2:#6d28d9;--ink:#fff;--shadow:0 10px 30px rgba(60,30,110,.10)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}
/* topo */
.top{border-bottom:1px solid var(--line);background:var(--bg2);position:sticky;top:0;z-index:50;backdrop-filter:blur(10px)}
.top .row{display:flex;align-items:center;gap:20px;height:64px}
.logo{font-family:'Anton',Impact,sans-serif;font-size:30px;letter-spacing:1px;text-transform:uppercase;white-space:nowrap}
.logo b{color:var(--accent);font-weight:400}
.nav{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;flex:1}
.nav::-webkit-scrollbar{display:none}
.nav a{padding:8px 12px;border-radius:999px;font-weight:600;font-size:14px;color:var(--muted);white-space:nowrap}
.nav a:hover,.nav a.on{color:var(--text);background:var(--card)}
.theme{border:1px solid var(--line);background:var(--card);color:var(--text);width:38px;height:38px;border-radius:50%;cursor:pointer;font-size:16px}
.date{color:var(--muted);font-size:13px;padding:10px 0;display:flex;justify-content:space-between;gap:12px}
/* seções */
.sec-h{display:flex;align-items:baseline;justify-content:space-between;margin:34px 0 14px;border-bottom:2px solid var(--accent);padding-bottom:8px}
.sec-h h2{font-family:'Anton',Impact,sans-serif;font-size:26px;letter-spacing:.5px;text-transform:uppercase;font-weight:400}
.sec-h a{color:var(--accent);font-weight:700;font-size:14px}
.tag{display:inline-block;font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--accent)}
.meta{color:var(--muted);font-size:13px}
.grid-home{display:grid;grid-template-columns:2fr 1fr;gap:28px;margin-top:8px}
.hero{position:relative;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);display:block;min-height:420px;background:var(--card)}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(5,3,10,.92) 8%,rgba(5,3,10,.35) 55%,rgba(5,3,10,0))}
.hero .in{position:absolute;left:0;right:0;bottom:0;padding:28px;z-index:2;color:#fff}
.hero h1{font-size:clamp(26px,3.6vw,40px);line-height:1.12;margin:8px 0 10px;font-weight:800;letter-spacing:-.5px}
.hero p{color:#e6def7;font-size:16px;max-width:680px}
.hero .tag{color:#e9a6ff}
.hero .meta{color:#cfc3ea}
.side-list{display:flex;flex-direction:column;gap:14px}
.mini{display:grid;grid-template-columns:96px 1fr;gap:12px;align-items:start}
.mini img{width:96px;height:72px;object-fit:cover;border-radius:10px;background:var(--card)}
.mini h3{font-size:15px;line-height:1.3;font-weight:700}
.mini:hover h3,.card:hover h3,.row-item:hover h3{color:var(--accent)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:transform .15s,border-color .15s}
.card:hover{transform:translateY(-3px);border-color:var(--accent2)}
.card img{width:100%;aspect-ratio:16/10;object-fit:cover;background:var(--bg2)}
.card .b{padding:14px 16px 18px}
.card h3{font-size:18px;line-height:1.25;margin:6px 0 8px;font-weight:800}
.card p{color:var(--muted);font-size:14px}
.two{display:grid;grid-template-columns:2fr 1fr;gap:32px}
.row-item{display:grid;grid-template-columns:200px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.row-item img{width:200px;height:125px;object-fit:cover;border-radius:12px;background:var(--card)}
.row-item h3{font-size:20px;line-height:1.25;font-weight:800;margin:4px 0 6px}
.row-item p{color:var(--muted);font-size:14.5px}
.box{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px}
.box h4{font-family:'Anton',Impact,sans-serif;font-size:20px;letter-spacing:.5px;text-transform:uppercase;font-weight:400;margin-bottom:12px}
.rank{display:flex;gap:12px;padding:10px 0;border-top:1px solid var(--line);font-weight:700;font-size:15px;line-height:1.3}
.rank:first-of-type{border-top:0}
.rank span{font-family:'Anton',Impact,sans-serif;font-size:26px;color:var(--accent);min-width:26px;line-height:1}
.blogstrip{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.bp{border-radius:14px;overflow:hidden;position:relative;aspect-ratio:4/5;display:block;background:var(--card);border:1px solid var(--line)}
.bp img{width:100%;height:100%;object-fit:cover}
.bp span{position:absolute;right:10px;top:10px;background:rgba(5,3,10,.75);color:#fff;font-size:12px;font-weight:700;padding:4px 9px;border-radius:999px}
/* artigo */
.art{max-width:760px;margin:30px auto}
.art h1{font-size:clamp(28px,4vw,42px);line-height:1.12;margin:10px 0 12px;font-weight:800;letter-spacing:-.6px}
.art .dek{font-size:19px;color:var(--muted);margin-bottom:16px}
.art .cover{border-radius:16px;margin:20px 0 6px;width:100%;aspect-ratio:3/2;object-fit:cover}
.art .credit{font-size:12px;color:var(--muted);margin-bottom:22px}
.art h2{font-size:24px;line-height:1.25;margin:30px 0 12px;font-weight:800;letter-spacing:-.3px}
.art p{font-size:18px;line-height:1.7;margin-bottom:18px}
.src{margin-top:26px;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:var(--card);font-size:14px}
.src h4{font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.src a{color:var(--accent);font-weight:600;text-decoration:underline}
.disc{margin-top:14px;font-size:13px;color:var(--muted)}
.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:20px 0}
.gallery img{border-radius:12px;border:1px solid var(--line);width:100%}
.slidetxt h3{font-size:18px;margin:18px 0 6px;color:var(--accent)}
.page-h{margin:30px 0 6px}
.page-h h1{font-family:'Anton',Impact,sans-serif;font-size:44px;text-transform:uppercase;font-weight:400;letter-spacing:.5px}
footer{margin-top:60px;border-top:1px solid var(--line);background:var(--bg2);padding:34px 0;color:var(--muted);font-size:14px}
footer .cols{display:flex;flex-wrap:wrap;gap:28px;justify-content:space-between}
footer a{color:var(--text);margin-right:16px}
.empty{padding:60px 0;text-align:center;color:var(--muted)}
@media(max-width:900px){
 .grid-home,.two{grid-template-columns:1fr}
 .cards{grid-template-columns:1fr 1fr}
 .blogstrip{grid-template-columns:repeat(2,1fr)}
 .hero{min-height:340px}
}
@media(max-width:600px){
 .cards{grid-template-columns:1fr}
 .row-item{grid-template-columns:110px 1fr;gap:12px}
 .row-item img{width:110px;height:84px}
 .row-item h3{font-size:16px}.row-item p{display:none}
 .hero .in{padding:18px}.hero p{display:none}
 .logo{font-size:24px}.gallery{grid-template-columns:1fr}
 .art p{font-size:17px}
}
.skip{position:absolute;left:-999px;top:0;background:var(--accent);color:#fff;padding:10px 14px;z-index:100;border-radius:0 0 8px 0}
.skip:focus{left:0}
.crumbs{font-size:13px;color:var(--muted);margin:18px 0 0}
.crumbs a{color:var(--muted)}.crumbs a:hover{color:var(--accent)}
.byline{color:var(--muted);font-size:14px;margin-bottom:6px}
.byline a{color:var(--text);font-weight:600}
.fig{margin:20px 0 22px}
.fig .cover{margin:0 0 6px}
.fig .credit{margin:0}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 4px}
.tags a{background:var(--card);border:1px solid var(--line);color:var(--muted);padding:5px 12px;border-radius:999px;font-size:13px;font-weight:600}
.tags a:hover{color:var(--accent);border-color:var(--accent)}
.pager{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:28px 0 8px;color:var(--muted);font-size:14px}
.pager a{color:var(--accent);font-weight:700}
.slidetxt h2{font-size:22px;margin:24px 0 8px}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
