:root {
    --dourado: #d4af37;
    --preto: #050505;
    --cinza-card: #121212;
}

body, html { margin: 0; padding: 0; font-family: 'Montserrat', sans-serif; background: var(--preto); color: #fff; overflow-x: hidden; }

header {
    display: flex; align-items: center; padding: 15px 5%;
    background: rgba(5, 5, 5, 0.98); backdrop-filter: blur(10px);
    position: fixed; width: 100%; top: 0; z-index: 2000;
    border-bottom: 2px solid var(--dourado); box-sizing: border-box;
}

nav { order: 1; display: flex; gap: 20px; }
nav a { color: #fff; text-decoration: none; font-size: 12px; font-weight: bold; text-transform: uppercase; transition: 0.3s; position: relative; }
nav a:hover { color: var(--dourado); }

.btn-emergencia { color: #ff4d4d !important; }
nav a.btn-emergencia:hover { color: #ff4d4d !important; animation: pulsarSuave 1.5s infinite alternate !important; }

@keyframes pulsarSuave {
    0% { color: #ff4d4d !important; text-shadow: 0 0 5px rgba(255, 77, 77, 0.5); }
    100% { color: #ffffff !important; text-shadow: 0 0 15px rgba(255, 255, 255, 0.8); }
}

.logo-container { order: 2; text-align: center; flex-grow: 1; margin: 0 20px; }
.logo-container h1 { margin: 0; font-size: 24px; font-family: 'Playfair Display', serif; letter-spacing: 2px; }
.logo-container span { color: var(--dourado); font-size: 9px; text-transform: uppercase; letter-spacing: 4px; }

.search-container { order: 3; }
.search-container input { padding: 8px 15px; border-radius: 20px; border: 1px solid #333; background: #111; color: #fff; width: 160px; }

.slider-container { position: relative; width: 100%; height: 600px; margin-top: 75px; overflow: hidden; }
.slide { position: absolute; width: 100%; height: 100%; opacity: 0; transition: 1s ease-in-out; background-size: cover; background-position: center; display: flex; align-items: center; justify-content: center; text-decoration: none; }
.slide.active { opacity: 1; }

.timer-bar-container { position: absolute; bottom: 0; width: 100%; height: 4px; background: rgba(255,255,255,0.1); z-index: 100; }
.timer-bar { width: 0%; height: 100%; background: var(--dourado); }

.dots-container { position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%); display: flex; gap: 10px; z-index: 100; }
.dot { width: 12px; height: 12px; border-radius: 50%; background: rgba(255,255,255,0.3); border: 1px solid var(--dourado); cursor: pointer; transition: 0.3s; }
.dot.active { background: var(--dourado); transform: scale(1.2); }

.grid-atuacao { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 30px; padding: 80px 5%; }
.card-atuacao { background: var(--cinza-card); padding: 45px; border-radius: 12px; border: 1px solid #222; text-align: center; transition: 0.4s; text-decoration: none; color: #fff; }
.card-atuacao:hover { border-color: var(--dourado); transform: translateY(-10px); }
.card-atuacao i { color: var(--dourado); font-size: 40px; margin-bottom: 20px; display: block; }

footer { background: #000; padding: 80px 5%; display: flex; flex-wrap: wrap; gap: 50px; border-top: 1px solid #222; }
.footer-info { flex: 1.5; min-width: 300px; }
.footer-info h4 { color: var(--dourado); margin-bottom: 20px; font-size: 20px; }
.footer-info p { color: #aaa; line-height: 1.8; margin-bottom: 15px; }

.social-box { display: flex; gap: 15px; margin-top: 25px; }
.social-box a { color: #fff; width: 45px; height: 45px; border: 1px solid #333; border-radius: 50%; display: flex; align-items: center; justify-content: center; transition: 0.3s; text-decoration: none; }
.social-box a:hover { border-color: var(--dourado); color: var(--dourado); transform: scale(1.1); }

.footer-map { flex: 2; min-width: 300px; }
.map-frame { width: 100%; height: 350px; border-radius: 15px; border: 1px solid var(--dourado); filter: grayscale(1) invert(0.9); }