:root{--bg:#0a0b0e;--panel:#161920;--hi:#1e222b;--gold:#c8a24a;--gb:#f0d27a;--gd:#9a7328;--bz:#5e3b25;--tx:#f2e8d0;--dim:#b8a888}
@font-face{font-family:Jersey;src:url(fonts/Jersey10-Regular.ttf) format("truetype");font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:64px}
body{margin:0;background:var(--bg);color:var(--tx);font:17px/1.65 system-ui,"Segoe UI",Roboto,sans-serif;overflow-wrap:anywhere}
img{max-width:100%;height:auto}
.px{image-rendering:pixelated;image-rendering:crisp-edges}
.wrap{max-width:1120px;margin:0 auto;padding:0 16px}
h1,h2,h3,.brand,.btn,.badge,.stats b,.kicker,nav a,dt,summary{font-family:Jersey,"Courier New",monospace;font-weight:400;letter-spacing:.03em}
h1{font-size:clamp(2.6rem,8vw,4.4rem);line-height:1;margin:.2em 0;color:var(--gb);text-shadow:3px 3px 0 #000}
h2{font-size:clamp(1.9rem,4vw,2.5rem);margin:0 0 .3em;color:var(--gold);line-height:1.1}
h3{font-size:1.3rem;margin:1em 0 .3em;color:var(--gb)}
a{color:var(--gb)}a:hover{color:#fff}
:focus-visible{outline:3px solid var(--gb);outline-offset:2px}
.skip{position:absolute;left:-999px;background:var(--gb);color:#000;padding:8px 12px;z-index:99}.skip:focus{left:8px;top:8px}
/* barra */
.top{position:sticky;top:0;z-index:20;background:#0a0b0ef0;border-bottom:3px solid var(--gd)}
.bar{display:flex;flex-wrap:wrap;align-items:center;gap:2px 18px;padding-top:4px;padding-bottom:4px}
.brand{display:flex;align-items:center;gap:8px;font-size:1.8rem;color:var(--gb);text-decoration:none;text-shadow:2px 2px 0 #000}
.brand img{width:32px;height:32px}
nav{display:flex;flex-wrap:wrap;gap:0 2px}
nav a{font-size:1.25rem;color:var(--tx);text-decoration:none;padding:4px 10px;min-height:44px;display:inline-flex;align-items:center}
nav a:hover,nav a[aria-current]{color:var(--gb);background:var(--hi);box-shadow:inset 0 -3px 0 var(--gold)}
/* hero */
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:max(560px,min(calc(100svh - 56px),1000px));display:grid;place-items:center;text-align:center;padding:48px 16px 96px;background:#000}
.hero-bg{position:absolute;inset:0;z-index:-3;background:url(img/salao-guilda.webp) center/cover;image-rendering:pixelated;filter:blur(2.5px) saturate(.9) brightness(.55);transform:scale(1.08)}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 50% 45%,#0a0b0e55 0,#0a0b0ecc 70%),linear-gradient(#0a0b0e99,#0a0b0e00 30%,#0a0b0e 100%)}
.mist{position:absolute;left:-50%;width:200%;height:55%;z-index:-1;pointer-events:none;opacity:.35;background:radial-gradient(ellipse at 20% 50%,#c9d4e0 0,transparent 45%),radial-gradient(ellipse at 60% 40%,#a9b8c8 0,transparent 40%),radial-gradient(ellipse at 90% 60%,#c9d4e0 0,transparent 45%);filter:blur(24px);animation:drift 60s linear infinite alternate}
.mist.m1{bottom:-8%}.mist.m2{top:0;opacity:.18;animation-duration:90s;animation-direction:alternate-reverse}
@keyframes drift{to{transform:translateX(25%)}}
.crest{width:min(256px,52vw);height:auto;animation:glow 5s ease-in-out infinite alternate}
@keyframes glow{from{filter:drop-shadow(0 0 8px #c8a24a55)}to{filter:drop-shadow(0 0 26px #f0d27acc)}}
.hero h1{font-size:clamp(3.6rem,13vw,8rem);margin:.1em 0 0;background:linear-gradient(#fff3c4,#f0d27a 45%,#c8a24a);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(4px 4px 0 #000)}
.hero .tag{font-size:clamp(1.1rem,2.6vw,1.5rem);color:var(--tx);max-width:34ch;margin:.2em auto 0;text-shadow:0 2px 6px #000}
.cta{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:26px 0 10px}
.kicker{color:var(--gold);font-size:1.3rem;margin:.6em 0 0;text-shadow:0 2px 4px #000}
.btn{display:inline-flex;align-items:center;font-size:1.45rem;padding:8px 24px;min-height:48px;background:var(--gold);color:#1a1006;text-decoration:none;box-shadow:0 0 0 2px #000,0 0 0 4px var(--gd),4px 6px 0 4px #000;border:0;transition:transform .15s}
.btn:hover{background:var(--gb);color:#000;transform:translateY(-2px)}.btn.alt{background:#1e222bdd;color:var(--gb)}.btn.alt:hover{background:var(--bz);color:#fff}
.btn.off{background:var(--hi);color:var(--dim);box-shadow:0 0 0 2px #000,0 0 0 4px #333}.btn.off:hover{transform:none}
.warn{color:var(--gb);font-size:.95rem;text-shadow:0 1px 3px #000}.dim{color:var(--dim);font-size:.95rem}.center{text-align:center}
/* secoes */
.sec{padding:64px 0 8px}.sec>.wrap>h2,.sec>.wrap>.sub{text-align:center}
.sub{color:var(--dim);max-width:62ch;margin:0 auto 26px}
.orn{display:flex;align-items:center;gap:12px;max-width:260px;margin:0 auto 12px;color:var(--gold)}
.orn::before,.orn::after{content:"";flex:1;height:2px;background:linear-gradient(90deg,transparent,var(--gd))}.orn::after{transform:scaleX(-1)}
.orn i{width:9px;height:9px;background:var(--gold);transform:rotate(45deg)}
.lead{font-size:1.15rem;color:var(--dim);max-width:60ch}
.head{padding-top:44px;padding-bottom:8px}
.stats{list-style:none;margin:-48px 0 0;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));position:relative;z-index:2}
.stats li{background:var(--panel);padding:12px 6px;text-align:center;box-shadow:0 0 0 2px #000,0 0 0 4px var(--gd)}
.stats b{display:block;font-size:2.4rem;color:var(--gb);line-height:1}.stats span{color:var(--dim);font-size:.9rem}
.grid2,.grid3,.grid4{display:grid;align-items:stretch;gap:24px;grid-template-columns:minmax(0,1fr)}
@media(min-width:600px){.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:760px){.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1000px){.grid3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.card{background:var(--panel);padding:18px 20px;box-shadow:0 0 0 2px #000,0 0 0 4px var(--gd),0 0 0 6px #000;transition:transform .15s,box-shadow .15s;position:relative}
a.card{display:block;color:var(--tx);text-decoration:none}
.card:hover{transform:translateY(-3px);box-shadow:0 0 0 2px #000,0 0 0 4px var(--gold),0 0 0 6px #000,0 8px 24px #000a}
.card h2,.card h3{margin-top:0}.card h3{font-size:1.5rem;color:var(--gold)}
.card p{margin:.3em 0 .7em}.list{padding-left:1.1em;margin:.3em 0}.list li{margin:.35em 0}.log{list-style:none;padding:0}
.ico{width:48px;height:48px;flex:none}.grid3.fit{grid-template-columns:repeat(auto-fit,minmax(min(var(--m),100%),1fr))}.chead h3,.chead h2{display:flex;flex-wrap:wrap;gap:2px 8px;align-items:center}.badge{white-space:nowrap;margin-left:0!important}.chead{display:flex;align-items:center;gap:12px;margin-bottom:6px}.chead h2,.chead h3{margin:0}
.race{border-top:4px solid var(--ac,var(--gd))}
dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:.6em 0}dt{color:var(--gold);font-size:1.15rem}dd{margin:0}
.pill{display:inline-block;background:var(--hi);color:var(--gb);padding:2px 10px;box-shadow:0 0 0 2px var(--gd);font-size:.95rem}
.lore{font-style:italic}
.badge{font-size:1rem;padding:1px 9px;vertical-align:middle;color:#111;margin-left:6px}
.b-pronto{background:#5fb44b}.b-em{background:var(--gold)}.b-planejado{background:#7fc4f4}
.role{padding:0 6px;color:#111;background:var(--dim)}.r-dano{background:#e65c4c}.r-tanque{background:#7fc4f4}.r-suporte{background:#5fb44b}.r-controle{background:#c9a0ff}
/* quadros e carrossel */
.frame{margin:0;background:var(--panel);box-shadow:0 0 0 2px #000,0 0 0 5px var(--gd),0 0 0 7px #000,0 10px 30px #000a}
.frame img{display:block;width:100%;height:auto}
figcaption{padding:8px 12px;font-size:.9rem;color:var(--dim)}
.car{display:flex;align-items:flex-start;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;padding:12px 10px 22px;scrollbar-color:var(--gd) var(--panel)}
.car figure{flex:0 0 min(86%,720px);scroll-snap-align:center}
.carbtn{display:flex;justify-content:center;gap:12px;margin-top:4px}
.carbtn button{font:inherit;font-family:Jersey,monospace;font-size:1.3rem;background:var(--hi);color:var(--gb);border:2px solid var(--gd);padding:4px 18px;min-height:44px;cursor:pointer}.carbtn button:hover{background:var(--bz);color:#fff}
/* biomas */
.biome{padding:0;overflow:hidden}.biome img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.biome .bt{padding:12px 18px 14px}.biome h3{margin:0}.noimg img{opacity:.35;width:64px;height:64px}.noimg{aspect-ratio:16/9;display:grid;place-items:center;opacity:.9;background:linear-gradient(135deg,var(--c1),var(--c2))}
/* barras */
.bars{display:grid;gap:8px}.bar-row{display:grid;grid-template-columns:7.5em 1fr 8em;align-items:center;gap:10px;font-size:.95rem}
.bar-row .tr{height:16px;background:#000;box-shadow:0 0 0 2px var(--gd);display:flex}.bar-row .tr i{display:block;height:100%}
.sA{background:var(--gold)}.sP{background:#7fc4f4}
.legend{font-size:.9rem;color:var(--dim)}.legend i{display:inline-block;width:12px;height:12px;margin:0 4px 0 12px;vertical-align:-1px}
table{border-collapse:collapse;width:100%;min-width:460px;font-size:.95rem}th,td{white-space:nowrap;padding:6px 8px;border-bottom:1px solid #2a2f3a;text-align:right}th:first-child,td:first-child{text-align:left}th{color:var(--gold);font-family:Jersey,monospace;font-weight:400;font-size:1.1rem}
.scroll{overflow-x:auto}
/* oficios */
.craft{display:flex;align-items:center;gap:12px}.craft img{width:48px;height:48px;flex:none}.craft b{font-family:Jersey,monospace;font-size:1.3rem;color:var(--gb);font-weight:400;display:block;line-height:1.1}
/* linha do tempo */
.tl{display:grid;gap:24px;grid-template-columns:minmax(0,1fr);position:relative}
@media(min-width:900px){.tl{grid-template-columns:repeat(3,minmax(0,1fr))}.tl::before{content:"";position:absolute;left:0;right:0;top:20px;height:3px;background:var(--gd)}}
.tl .card{margin-top:0}.tl .stage{position:relative;padding-top:8px}
.dot{width:14px;height:14px;transform:rotate(45deg);background:var(--c);box-shadow:0 0 0 3px #000;margin:0 0 14px 6px}
.diary{list-style:none;padding:0;margin:0;display:grid;gap:18px}.diary li{background:var(--panel);padding:14px 18px;box-shadow:0 0 0 2px #000,0 0 0 4px var(--gd)}
.diary time{color:var(--gold);font-family:Jersey,monospace;font-size:1.15rem}.diary h3{margin:.1em 0 .2em}.diary p{margin:0}
.faq{background:var(--panel);margin:10px 0;box-shadow:0 0 0 2px #000,0 0 0 4px var(--gd)}.faq summary{cursor:pointer;padding:10px 16px;font-size:1.3rem;color:var(--gb);min-height:48px}.faq p{padding:0 16px 12px;margin:0}
.narrow{max-width:760px}.prose h2{font-size:1.8rem;margin-top:1.4em}.prose li{margin:.3em 0}
.final{text-align:center;padding:72px 0 24px}
.foot{margin-top:56px;padding:28px 0 40px;border-top:3px solid var(--gd);background:#07080a;font-size:.92rem}.foot p{margin:.35em 0}.foot nav{margin:.5em 0}.foot nav a{font-size:1.1rem}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mist,.crest{animation:none}*{transition:none!important}}
@media(max-width:560px){.bn{display:none}.bar{gap:0 4px}nav a{padding:4px 6px!important}.bar-row{grid-template-columns:5.5em 1fr 6.5em;font-size:.88rem}.top .brand{font-size:1.5rem}nav a{padding:4px 7px;font-size:1.1rem}}
@media(min-width:2200px){body{font-size:21px}.wrap{max-width:1500px}}
