:root{--bg: #0e1116;--surface: #161b22;--surface-alt: #1c2330;--text: #eef1f3;--muted: #9aa5ad;--primary: #2fa968;--primary-hover: #3bc57c;--accent: #4d8fdb;--danger: #ff6b60;--warning: #e0a742;--border: #2b333a;color-scheme:dark}@media(prefers-color-scheme:light){:root{--bg: #f4f6f8;--surface: #ffffff;--surface-alt: #eef1f3;--text: #1a1f24;--muted: #5b6670;--primary: #0f6b3a;--primary-hover: #0c5730;--accent: #1a4d8f;--danger: #b3261e;--warning: #8a5a00;--border: #dde2e6;color-scheme:light}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden}a{color:var(--accent)}.skip-link{position:absolute;left:-999px;top:0;background:var(--surface);color:var(--text);padding:8px 16px;z-index:100}.skip-link:focus{left:8px;top:8px}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border);flex-wrap:wrap;gap:12px}.site-header .brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.1rem;text-decoration:none;color:var(--text)}.site-header .brand img{width:32px;height:32px;border-radius:8px}.site-nav{display:flex;gap:4px;flex-wrap:wrap}.site-nav a,.site-nav button{padding:8px 12px;border-radius:8px;color:var(--muted);text-decoration:none;font-size:.9rem;background:transparent;border:none;cursor:pointer}.site-nav a:hover,.site-nav a.active{color:var(--text);background:var(--surface-alt)}main{max-width:1080px;margin:0 auto;padding:32px 24px 64px}.hero{text-align:center;padding:48px 16px 32px}.hero h1{font-size:clamp(2rem,5vw,3rem);margin:0 0 12px}.hero p{color:var(--muted);font-size:1.1rem;max-width:640px;margin:0 auto 24px}.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:24px}.btn{display:inline-block;padding:12px 20px;border-radius:10px;font-weight:600;text-decoration:none;background:var(--primary);color:#fff;border:none;cursor:pointer;font-size:.95rem}.btn:hover{background:var(--primary-hover)}.btn.secondary{background:transparent;color:var(--text);border:1px solid var(--border)}.disclaimer-banner{background:color-mix(in srgb,var(--warning) 15%,transparent);color:var(--warning);border:1px solid color-mix(in srgb,var(--warning) 40%,transparent);border-radius:10px;padding:10px 16px;font-size:.85rem;text-align:center;max-width:640px;margin:0 auto 24px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:24px 0}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px}.card h3{margin:0 0 8px;font-size:1rem}.card p{color:var(--muted);font-size:.9rem;margin:0}h1,h2,h3{line-height:1.25}h2{font-size:1.5rem;margin:40px 0 16px}.steps{list-style:none;counter-reset:step;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.steps li{counter-increment:step;display:flex;gap:14px;align-items:flex-start;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px}.steps li:before{content:counter(step);flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem}details{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 16px;margin-bottom:8px}summary{cursor:pointer;font-weight:600}.status-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.status-list li{display:flex;justify-content:space-between;padding:10px 14px;background:var(--surface);border:1px solid var(--border);border-radius:8px;font-size:.9rem}.badge-ok{color:var(--primary)}.badge-unknown{color:var(--muted)}.legal h2{font-size:1.2rem}.legal p,.legal li{color:var(--text);line-height:1.6}.legal .meta{color:var(--muted);font-size:.85rem}.legal table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.9rem}.legal th,.legal td{text-align:left;padding:8px 12px;border-bottom:1px solid var(--border)}.legal th{color:var(--muted);font-weight:600}.site-footer{border-top:1px solid var(--border);padding:32px 24px;color:var(--muted);font-size:.85rem}.site-footer-inner{max-width:1080px;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px}.footer-links{display:flex;flex-wrap:wrap;gap:8px 16px}.footer-links a{color:var(--muted);text-decoration:none}.footer-links a:hover{color:var(--text)}@media(max-width:640px){main{padding:24px 16px 48px}}.cidade-brand{display:flex;justify-content:center;margin:-8px 0 24px}.cidade-brand-logo img{border-radius:50%;width:96px;height:96px;object-fit:cover;border:2px solid var(--border)}.cidade-filtros{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0 0 8px}.cidade-filtros button{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:999px;padding:8px 18px;font-size:.9rem;cursor:pointer}.cidade-filtros button:hover{border-color:var(--primary)}.cidade-filtros button.active{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.cidade-nota-crescimento{text-align:center;color:var(--muted);font-size:.85rem;margin:32px 0 8px}.local-card{display:block;background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--text);transition:border-color .15s ease}.local-card:hover{border-color:var(--primary)}.local-card-image{display:block;aspect-ratio:16 / 9;width:100%;background:var(--surface-alt)}.local-card-image img{width:100%;height:100%;object-fit:cover;display:block}.local-card-body{padding:16px}.local-card-body h3{margin:8px 0 6px;font-size:1.05rem}.local-card-body p{color:var(--muted);font-size:.9rem;margin:0 0 10px}.local-card-link{color:var(--accent);font-size:.85rem;font-weight:600}.categoria-badge{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:4px 10px;border-radius:999px;border:1px solid var(--border)}.categoria-safe-zone{color:var(--primary);border-color:var(--primary)}.categoria-area-perigosa{color:var(--danger);border-color:var(--danger)}.categoria-ponto-turistico{color:var(--accent);border-color:var(--accent)}.cidade-local{max-width:760px;margin:0 auto}.cidade-local h1{margin:12px 0 24px}.cidade-local-galeria{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-bottom:24px}.cidade-local-foto-btn{padding:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--surface-alt);cursor:zoom-in;aspect-ratio:16 / 9}.cidade-local-foto-btn img{width:100%;height:100%;object-fit:cover;display:block}.cidade-local-descricao{color:var(--text);line-height:1.7;font-size:1rem}.cidade-local-info{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px 20px;margin:24px 0}.cidade-local-info dt{color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px}.cidade-local-info dd{margin:0;font-weight:600}.lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e0;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.lightbox-content{position:relative;max-width:92vw;max-height:92vh;display:flex;flex-direction:column;align-items:center}.lightbox-content picture,.lightbox-content img{max-width:90vw;max-height:80vh;width:auto;height:auto;object-fit:contain;border-radius:8px}.lightbox-close{position:absolute;top:-44px;right:0;background:transparent;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:8px;line-height:1}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1f;border:none;color:#fff;font-size:2rem;width:44px;height:44px;border-radius:50%;cursor:pointer;line-height:1}.lightbox-prev{left:-8px}.lightbox-next{right:-8px}.lightbox-caption{color:#fff;margin-top:12px;font-size:.9rem;text-align:center}@media(max-width:640px){.lightbox-nav{display:none}}
