/* Páginas estáticas (para Google e leitura rápida). O site interativo usa css/style.css. */
@font-face { font-family:"JetBrains Mono"; font-style:normal; font-weight:400; font-display:swap; src:url("../fonts/jetbrains-mono-latin-ext-400-normal.woff2") format("woff2"); unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family:"JetBrains Mono"; font-style:normal; font-weight:400; font-display:swap; src:url("../fonts/jetbrains-mono-latin-400-normal.woff2") format("woff2"); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }
@font-face { font-family:"JetBrains Mono"; font-style:normal; font-weight:700; font-display:swap; src:url("../fonts/jetbrains-mono-latin-ext-700-normal.woff2") format("woff2"); unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF; }
@font-face { font-family:"JetBrains Mono"; font-style:normal; font-weight:700; font-display:swap; src:url("../fonts/jetbrains-mono-latin-700-normal.woff2") format("woff2"); unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD; }

:root { --bg:#fff; --fg:#000; --pad:12px; --mute:rgba(0,0,0,.55); }
* { box-sizing:border-box; }
html { background:var(--bg); }
body { margin:0; color:var(--fg); background:var(--bg); font:12px/1.55 "JetBrains Mono",ui-monospace,Menlo,Consolas,monospace; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:underline; text-underline-offset:3px; }
a:hover { text-decoration-thickness:2px; }
a:focus-visible { outline:1px solid currentColor; outline-offset:3px; }
h1, h2 { font:inherit; margin:0; }

.bar { position:sticky; top:0; z-index:5; display:flex; flex-wrap:wrap; gap:8px 20px; justify-content:space-between; align-items:center; padding:var(--pad); background:var(--bg); text-transform:uppercase; font-weight:700; }
.bar a { text-decoration:none; }
.bar nav { display:flex; gap:16px; }
.bar .langs a[aria-current="true"] { text-decoration:underline; text-underline-offset:4px; }

main { max-width:1500px; margin:0 auto; padding:var(--pad) var(--pad) 48px; }
.crumbs { text-transform:uppercase; color:var(--mute); margin:8px 0 0; }
h1 { font-size:20px; line-height:1.2; text-transform:uppercase; margin:20px 0 4px; font-weight:700; }
h1 small { font-size:12px; font-weight:400; color:var(--mute); }
h2 { text-transform:uppercase; font-weight:700; margin:28px 0 8px; }
h2.sec { font-size:14px; margin-top:40px; }
.ev { color:var(--mute); text-transform:uppercase; margin:0 0 18px; }
p { margin:0 0 12px; max-width:68ch; }

.case { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:32px; align-items:start; }
@media (max-width:860px) { .case { grid-template-columns:1fr; } }
.meta { display:grid; grid-template-columns:auto 1fr; gap:4px 18px; margin:26px 0; text-transform:uppercase; }
.meta dt { color:var(--mute); }
.meta dd { margin:0; }
.links { list-style:none; padding:0; margin:0 0 8px; display:flex; flex-direction:column; gap:6px; font-weight:700; }
.cta { display:inline-block; margin:18px 0 6px; padding:9px 14px; border:1px solid var(--fg); text-transform:uppercase; font-weight:700; text-decoration:none; }
.cta:hover { background:var(--fg); color:var(--bg); }

.media figure, .media .vid { margin:0 0 12px; }
.media img, .media video { display:block; width:100%; height:auto; background:#111; }
.media .vid { position:relative; aspect-ratio:16/9; background:#111; }
.media .vid iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }

.pn { display:flex; flex-wrap:wrap; gap:8px 24px; justify-content:space-between; margin:36px 0 0; text-transform:uppercase; }

.grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:16px 12px; }
.card { display:block; text-decoration:none; }
.card img { display:block; width:100%; aspect-ratio:4/3; object-fit:cover; background:#111; }
.card b { display:block; margin-top:6px; text-transform:uppercase; }
.card span { color:var(--mute); text-transform:uppercase; }
.card:hover b { text-decoration:underline; text-underline-offset:3px; }

.about .cv { margin-top:8px; }
.cvi { margin:0 0 12px; max-width:78ch; }
.cvi strong { display:block; text-transform:uppercase; }
.cvi span { display:block; color:var(--mute); }
.skills { list-style:none; padding:0; margin:0 0 8px; display:flex; flex-wrap:wrap; gap:4px 14px; }

footer { display:flex; flex-wrap:wrap; gap:8px 20px; padding:24px var(--pad) 32px; text-transform:uppercase; border-top:1px solid rgba(0,0,0,.15); }
footer a { text-decoration:none; }

:root { color-scheme:light; }
