/* Estilos do site público (Açores Aventura) — reformulação */

:root {
    --brand: #f89201;
    --brand-dark: #d97a00;
    --ink: #0f172a;
}

body { color: var(--ink); }

/* ---------- Hero ---------- */
.site-hero {
    background: linear-gradient(135deg, #0f172a 0%, #1e3a8a 55%, #2563eb 100%);
    color: #fff;
    border-radius: 0 0 1.5rem 1.5rem;
}
.site-hero h1 { font-weight: 800; line-height: 1.1; }
.site-hero .btn-brand { background: var(--brand); border-color: var(--brand); color: #fff; font-weight: 700; }
.site-hero .btn-brand:hover { background: var(--brand-dark); border-color: var(--brand-dark); color: #fff; }

/* ---------- Section heading ---------- */
.section-title { font-weight: 800; display: flex; align-items: center; gap: .5rem; }
.section-title .dot { width: .65rem; height: .65rem; border-radius: 50%; display: inline-block; }

/* ---------- Event card ---------- */
.event-card {
    overflow: hidden;
    transition: transform .15s ease, box-shadow .15s ease;
}
.event-card:hover { transform: translateY(-4px); box-shadow: 0 .75rem 1.5rem rgba(0, 0, 0, .12) !important; }
.event-card__img {
    height: 180px;
    background-size: cover;
    background-position: center;
    background-color: #e9edf5;
    position: relative;
}
.event-card--muted { opacity: .68; filter: saturate(.6); }
.event-card--muted:hover { opacity: 1; filter: none; }

/* ---------- Public navbar ---------- */
.navbar-brand img { width: 200px; max-width: 60vw; }

/* ---------- Event detail ---------- */
.event-detail__banner {
    height: 320px;
    background-size: cover;
    background-position: center;
    background-color: #e9edf5;
    border-radius: 1rem;
}
.event-meta i { width: 1.5rem; color: var(--brand); }
.event-cta { font-weight: 800; letter-spacing: .03em; }

@media (max-width: 575.98px) {
    .event-detail__banner { height: 200px; }
    .site-hero h1 { font-size: 1.8rem; }
}

/* ---------- Home: seção de inscrições abertas em destaque ---------- */
.open-section {
    background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 70%);
    border: 1px solid #d7f0e0;
    border-left: 5px solid #198754;
    border-radius: 1rem;
}

/* ---------- Login ---------- */
.auth-wrap { background: linear-gradient(135deg, #eef2ff 0%, #f8fafc 100%); }
.auth-card { border-radius: 1rem; }
.auth-side {
    background: linear-gradient(135deg, #0f172a 0%, #1e3a8a 60%, #2563eb 100%);
}

/* ---------- Páginas de conteúdo (Sobre / Corrida de Aventura) ---------- */
.content-hero {
    background: linear-gradient(135deg, #0f172a 0%, #1e3a8a 55%, #2563eb 100%);
    color: #fff;
    border-radius: 0 0 1.75rem 1.75rem;
    position: relative;
    overflow: hidden;
}
.content-hero::after {
    content: "\f14e"; /* fa-compass */
    font-family: "Font Awesome 6 Free"; font-weight: 900;
    position: absolute; right: -2rem; bottom: -2.5rem;
    font-size: 16rem; opacity: .08; pointer-events: none;
}
.content-hero h1 { font-weight: 800; }

.feature-card {
    border: 1px solid #eef1f6; border-radius: 1rem;
    transition: transform .15s ease, box-shadow .15s ease; height: 100%;
}
.feature-card:hover { transform: translateY(-4px); box-shadow: 0 .75rem 1.5rem rgba(0,0,0,.08); }
.feature-icon {
    width: 56px; height: 56px; border-radius: 14px;
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 1.4rem;
}

.stat-box { border-radius: 1rem; }
.stat-box .stat-num { font-size: 2.2rem; font-weight: 800; line-height: 1; }

.cta-band {
    background: linear-gradient(135deg, var(--brand) 0%, #ff5e3a 100%);
    color: #fff; border-radius: 1.25rem;
}

/* animação suave de entrada */
.fade-up { opacity: 0; transform: translateY(16px); animation: fadeUp .6s ease forwards; }
.fade-up.d1 { animation-delay: .08s; } .fade-up.d2 { animation-delay: .16s; }
.fade-up.d3 { animation-delay: .24s; } .fade-up.d4 { animation-delay: .32s; }
@keyframes fadeUp { to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .fade-up { animation: none; opacity: 1; transform: none; } }
