:root{
  --ink:#0b0d10;
  --ink90:#0f1217;
  --ink2:#1b2028;
  --gold:#d4af37;
  --gold2:#b99222;
  --muted:#a9b0bb;
  --white:#ffffff;
  --shadow: 0 12px 40px rgba(0,0,0,.35);
}

*{ box-sizing:border-box; }
body{ font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial; }
.font-title{ font-family: Sora, Inter, system-ui; }

.bg-ink{ background: radial-gradient(1200px 600px at 20% -10%, rgba(212,175,55,.16), transparent 60%), var(--ink); }
.bg-ink-90{ background: var(--ink90); }
.border-ink-2{ border-color: var(--ink2) !important; }

.text-muted-2{ color: var(--muted); }
.link-light-2{ color: rgba(255,255,255,.82); text-decoration:none; }
.link-light-2:hover{ color: #fff; text-decoration: underline; }

.brand-mark{
  width: 14px; height: 14px; border-radius: 4px;
  background: linear-gradient(135deg, var(--gold), #fff2b8);
  box-shadow: 0 0 0 3px rgba(212,175,55,.15);
}

.btn-gold{
  background: linear-gradient(135deg, var(--gold), #ffe9a0);
  color: #1a1a1a; border: 0; font-weight: 700;
  box-shadow: 0 10px 30px rgba(212,175,55,.18);
}
.btn-gold:hover{ filter: brightness(.98); transform: translateY(-1px); }
.btn-outline-gold{
  border: 1px solid rgba(212,175,55,.7);
  color: #fff;
}
.btn-outline-gold:hover{
  background: rgba(212,175,55,.12);
  border-color: rgba(212,175,55,1);
}

.card-glass{
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  box-shadow: var(--shadow);
}

.section{ padding: 72px 0; }
.section-title{ letter-spacing: -.02em; }
.badge-soft{
  background: rgba(212,175,55,.12);
  border: 1px solid rgba(212,175,55,.30);
  color: #ffe9a0;
}

.hero{
  position: relative;
  min-height: 78vh;
  display:flex;
  align-items:center;
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.72), rgba(0,0,0,.70)),
    radial-gradient(900px 480px at 30% 20%, rgba(212,175,55,.18), transparent 60%);
  z-index:1;
}
.hero-media{
  position:absolute; inset:0;
  background-size: cover;
  background-position: center;
  transform: scale(1.02);
  filter: saturate(1.05);
}
.hero-content{ position:relative; z-index:2; }
.hero-kicker{ color: rgba(255,255,255,.78); }

.card-hover{
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.card-hover:hover{
  transform: translateY(-4px);
  border-color: rgba(212,175,55,.30);
}

.grid-masonry{
  column-count: 1;
  column-gap: 16px;
}
@media(min-width: 576px){ .grid-masonry{ column-count: 2; } }
@media(min-width: 992px){ .grid-masonry{ column-count: 3; } }

.masonry-item{
  break-inside: avoid;
  margin-bottom: 16px;
}
.photo-tile{
  border-radius: 16px;
  overflow:hidden;
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: var(--shadow);
}
.photo-tile img{ width: 100%; height:auto; display:block; }

.input-dark, .select-dark{
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
  color:#fff;
}
.input-dark::placeholder{ color: rgba(255,255,255,.55); }

/* =========================================
   MELHORAR VISIBILIDADE DOS TEXTOS
========================================= */

/* Textos principais */
body {
    color: #f1f1f1;
}

/* Títulos */
h1,
h2,
h3,
h4,
h5,
h6,
.font-title {
    color: #ffffff !important;
    opacity: 1 !important;
}

/* Textos dentro dos cards */
.card,
.card-body,
.card p,
.card span,
.card div {
    opacity: 1;
}

/* Cards de estatísticas */
.stat-card,
.stat-card .label,
.stat-card .value {
    color: #ffffff !important;
}

.stat-card .label {
    color: #d1d5db !important;
    font-weight: 500;
}

.stat-card .value {
    color: #f4cf62 !important;
    font-weight: 700;
}

/* Cards de passos */
.step-card,
.step-card h3,
.step-card h4,
.step-card p {
    opacity: 1 !important;
}

.step-card h3,
.step-card h4 {
    color: #ffffff !important;
}

.step-card p {
    color: #d6d9df !important;
}

/* Próximas cerimônias */
.ceremony-card,
.ceremony-card h1,
.ceremony-card h2,
.ceremony-card h3,
.ceremony-card p {
    opacity: 1 !important;
}

.ceremony-card h2,
.ceremony-card h3 {
    color: #ffffff !important;
}

.ceremony-card p {
    color: #d5d9e0 !important;
}

/* Textos Bootstrap apagados */
.text-muted {
    color: #b8c0cc !important;
    opacity: 1 !important;
}

/* Qualquer texto com opacidade baixa */
.text-secondary {
    color: #c4cad3 !important;
}

/* Links */
a {
    opacity: 1;
}

/* Destaque dourado */
.text-gold {
    color: #f4cf62 !important;
}

/* Melhorar fundo dos cards */
.card,
.stat-card,
.step-card,
.ceremony-card {
    background: linear-gradient(
        135deg,
        rgba(30, 35, 43, 0.98),
        rgba(18, 22, 28, 0.98)
    ) !important;

    border-color: rgba(255, 255, 255, 0.12) !important;
}

/* Corrigir botão ao passar o mouse */

.btn:hover,
.btn:focus,
.btn:active {
    color: #ffffff !important;
}

/* Botão com borda dourada */
.btn-outline-gold:hover,
.btn-gold-outline:hover {
    color: #ffffff !important;
    background-color: rgba(212, 175, 55, 0.15) !important;
    border-color: #d4af37 !important;
}

/* =========================================
   CORRIGIR SELECTS DO ADMIN
========================================= */

/* Campo select */
select,
.form-select {
    background-color: #252a30 !important;
    color: #ffffff !important;
    border-color: #3b434c !important;
}

/* Opções abertas */
select option,
.form-select option {
    background-color: #ffffff !important;
    color: #222222 !important;
}

/* Opção selecionada */
select option:checked,
.form-select option:checked {
    background-color: #d4af37 !important;
    color: #111111 !important;
}
/* =========================================
   HOME PREMIUM — TROFÉU ESTRELAS
========================================= */
.hero-premium{min-height:86vh;background:#080a0e;}
.hero-premium::after{content:"";position:absolute;inset:auto 0 0;height:180px;background:linear-gradient(transparent,#0b0d10);z-index:1;}
.hero-premium::before{background:linear-gradient(90deg,rgba(4,5,8,.93) 0%,rgba(4,5,8,.72) 48%,rgba(4,5,8,.34) 100%),linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.78)),radial-gradient(700px 400px at 18% 25%,rgba(212,175,55,.22),transparent 65%);}
.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;color:#ffe9a0;font-size:.74rem;font-weight:800;letter-spacing:.14em;padding:10px 14px;border:1px solid rgba(212,175,55,.32);border-radius:999px;background:rgba(212,175,55,.08);margin-bottom:24px;}
.hero-eyebrow span{color:var(--gold)}
.hero-title{max-width:850px;font-size:clamp(3rem,6vw,5.7rem)!important;line-height:.98;letter-spacing:-.055em!important;text-shadow:0 8px 30px rgba(0,0,0,.4)}
.hero-title span{background:linear-gradient(90deg,#d4af37,#fff1b3,#c59a25);-webkit-background-clip:text;background-clip:text;color:transparent!important;}
.hero-kicker{max-width:680px;font-size:1.18rem;line-height:1.7;}
.hero-trust{display:flex;flex-wrap:wrap;gap:18px;color:#dce0e7;font-size:.9rem}.hero-trust span{white-space:nowrap}
.hero-stats-wrap{position:relative;margin-top:-64px;z-index:5;padding-bottom:40px}.hero-stats{overflow:hidden;border-radius:20px; margin-top: 60px;background:linear-gradient(135deg,rgba(26,30,37,.96),rgba(11,13,16,.98));}
.stat-premium{padding:26px 30px;text-align:center;border-right:1px solid rgba(255,255,255,.08)}.col-lg-3:last-child .stat-premium{border-right:0}.stat-value{font-family:Sora,Inter,sans-serif;font-size:2rem;font-weight:800;color:#f4cf62}.stat-label{color:#aeb5c0;font-size:.85rem;margin-top:4px}
.section{padding:88px 0}.section h2{font-size:clamp(2rem,4vw,3.1rem);letter-spacing:-.035em}
.card-glass{backdrop-filter:blur(10px);}.winner-row{padding:13px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.05);background:rgba(255,255,255,.025);transition:.2s}.winner-row:hover{border-color:rgba(212,175,55,.35);transform:translateX(3px)}
.cta-premium{position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(212,175,55,.15),rgba(255,255,255,.04) 48%,rgba(212,175,55,.06))}.cta-premium:after{position:absolute;right:4%;bottom:-35px;font-size:150px;opacity:.07;transform:rotate(-12deg)}
.photo-tile img{aspect-ratio:1/1;object-fit:cover;transition:transform .5s ease}.photo-tile:hover img{transform:scale(1.06)}
@media(max-width:991px){.hero-premium{min-height:78vh}.hero-premium::before{background:linear-gradient(90deg,rgba(4,5,8,.88),rgba(4,5,8,.7)),linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.85))}.hero-stats-wrap{margin-top:-35px}.stat-premium{border-right:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.section{padding:64px 0}}
@media(max-width:575px){.hero-title{font-size:2.85rem!important}.hero-eyebrow{font-size:.62rem;letter-spacing:.08em}.hero-kicker{font-size:1rem}.hero-trust{gap:9px;font-size:.78rem}.stat-premium{padding:20px 10px}.hero-stats-wrap{padding-bottom:18px}.section{padding:52px 0}}

/* =====================================================
   COMO FUNCIONA - PREMIUM
===================================================== */

.como-funciona-premium {
    position: relative;
    padding: 100px 0;
    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(212, 175, 55, 0.08),
            transparent 45%
        );
}


/* HEADER */

.como-header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 55px;
}


.section-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    color: #f4d675;

    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;

    margin-bottom: 15px;
}


.section-kicker i {
    font-size: 11px;
}


.como-header h2 {
    font-size: clamp(38px, 5vw, 60px);
    margin: 0 0 15px;
    font-weight: 800;
}


.como-header h2 span {
    color: #e8c45f;
}


.como-header p {
    max-width: 650px;
    margin: 0;

    color: #aeb5c0;

    font-size: 17px;
    line-height: 1.7;
}


/* LINK */

.como-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    color: #f1d06c;

    font-weight: 700;

    white-space: nowrap;

    text-decoration: none;

    padding-bottom: 8px;

    border-bottom: 1px solid
        rgba(241, 208, 108, 0.4);

    transition: all .3s ease;
}


.como-link:hover {
    color: #ffffff;

    border-color: #f1d06c;

    gap: 15px;
}


/* PROCESSO */

.processo-premium {
    display: grid;

    grid-template-columns:
        1fr
        50px
        1fr
        50px
        1fr;

    align-items: stretch;

    gap: 15px;
}


/* CARD */

.processo-card {
    position: relative;

    min-height: 360px;

    padding: 30px;

    border-radius: 22px;

    background:
        linear-gradient(
            145deg,
            rgba(29, 34, 42, 0.98),
            rgba(17, 21, 27, 0.98)
        );

    border:
        1px solid
        rgba(255, 255, 255, 0.1);

    overflow: hidden;

    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;
}


/* FUNDO DO NÚMERO */

.processo-card::before {
    content: "";

    position: absolute;

    width: 180px;
    height: 180px;

    right: -70px;
    top: -70px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(212, 175, 55, 0.14),
            transparent 70%
        );
}


/* HOVER */

.processo-card:hover {
    transform: translateY(-10px);

    border-color:
        rgba(232, 196, 95, 0.6);

    box-shadow:
        0 20px 50px
        rgba(0, 0, 0, 0.4);
}


/* TOPO */

.processo-topo {
    display: flex;

    align-items: center;

    justify-content: space-between;

    position: relative;

    z-index: 2;

    margin-bottom: 25px;
}


/* ÍCONE */

.processo-icon {
    width: 58px;
    height: 58px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 16px;

    background:
        linear-gradient(
            135deg,
            #f1d06c,
            #b88a24
        );

    color: #17120a;

    font-size: 24px;

    box-shadow:
        0 10px 30px
        rgba(212, 175, 55, 0.25);
}


/* NÚMERO */

.processo-numero {
    font-size: 50px;

    font-weight: 800;

    color:
        rgba(255, 255, 255, 0.08);

    line-height: 1;
}


/* ETIQUETA */

.processo-passo {
    display: inline-flex;

    padding:
        7px
        14px;

    margin-bottom: 18px;

    border-radius: 50px;

    border:
        1px solid
        rgba(232, 196, 95, 0.35);

    background:
        rgba(232, 196, 95, 0.06);

    color: #f1d06c;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 1.5px;
}


/* TÍTULO */

.processo-card h3 {
    font-size: 23px;

    line-height: 1.25;

    margin:
        0
        0
        15px;

    color: #ffffff;

    font-weight: 750;
}


/* TEXTO */

.processo-card p {
    color: #aeb5c0;

    font-size: 15.5px;

    line-height: 1.7;

    margin: 0;
}


/* FOOTER */

.processo-footer {
    position: absolute;

    left: 30px;
    right: 30px;

    bottom: 25px;

    display: flex;

    align-items: center;

    gap: 10px;

    padding-top: 20px;

    border-top:
        1px solid
        rgba(255, 255, 255, 0.08);

    color: #c7a94b;

    font-size: 13px;

    font-weight: 600;
}


.processo-footer i {
    font-size: 15px;
}


/* SETAS */

.processo-linha {
    display: flex;

    align-items: center;

    justify-content: center;

    color: #c7a94b;

    font-size: 20px;

    opacity: 0.8;
}


/* RESPONSIVO */

@media (max-width: 992px) {

    .como-header {
        align-items: flex-start;
        flex-direction: column;
    }


    .processo-premium {

        grid-template-columns:
            1fr;

        gap: 20px;
    }


    .processo-linha {
        display: none;
    }


    .processo-card {
        min-height: 330px;
    }

}


@media (max-width: 576px) {

    .como-funciona-premium {
        padding: 70px 0;
    }


    .como-header {
        margin-bottom: 35px;
    }


    .como-header h2 {
        font-size: 40px;
    }


    .como-header p {
        font-size: 15px;
    }


/* CARD */

.processo-card {
    position: relative;

    min-height: 430px;

    padding: 30px;

    border-radius: 22px;

    display: flex;
    flex-direction: column;

    background:
        linear-gradient(
            145deg,
            rgba(29, 34, 42, 0.98),
            rgba(17, 21, 27, 0.98)
        );

    border:
        1px solid
        rgba(255, 255, 255, 0.1);

    overflow: hidden;
}


/* CONTEÚDO */

.processo-conteudo {
    display: flex;

    flex-direction: column;

    flex: 1;
}


/* FOOTER */

.processo-footer {
    display: flex;

    align-items: center;

    gap: 10px;

    margin-top: 40px;

    padding-top: 20px;

    border-top:
        1px solid
        rgba(255, 255, 255, 0.08);

    color: #c7a94b;

    font-size: 13px;

    font-weight: 600;

    flex-shrink: 0;
}
}

@media (min-width: 993px) {

    .processo-card {
        min-height: 470px;
    }

    .processo-footer {
        margin-top: 50px;
    }

}

/* ==========================================
   EM DESTAQUE - SEÇÃO SEM CARDS
========================================== */

.em-destaque {
    position: relative;
    padding: 100px 0;
}


/* HEADER */

.destaque-section-header {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 70px;
}


.destaque-section-header h2 {
    font-size: clamp(38px, 5vw, 60px);
    font-weight: 800;
    margin: 15px 0;
}


.destaque-section-header h2 span {
    color: #e8c45f;
}


.destaque-section-header p {
    color: #aeb5c0;
    font-size: 17px;
    line-height: 1.7;
    margin: 0;
}


/* ÁREA HORIZONTAL */

.destaque-horizontal {
    display: grid;
    grid-template-columns: 1fr 1px 1fr;
    gap: 60px;
    align-items: stretch;

    padding: 10px 0;
}


/* COLUNA */

.destaque-coluna {
    position: relative;
    padding: 15px 35px 15px 0;
}


/* SEGUNDA COLUNA */

.destaque-coluna:last-child {
    padding-left: 35px;
    padding-right: 0;
}


/* TOPO */

.destaque-topo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
}


/* NÚMERO GRANDE */

.destaque-numero {
    font-size: 65px;
    font-weight: 800;
    line-height: 1;

    color: rgba(255, 255, 255, 0.07);
}


/* ÍCONE */

.destaque-icone {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 16px;

    color: #d8b958;

    border: 1px solid rgba(216, 185, 88, 0.35);

    background: rgba(216, 185, 88, 0.06);

    font-size: 21px;
}


/* TAG */

.destaque-tag {
    display: block;

    color: #d8b958;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2px;

    margin-bottom: 14px;
}


/* TÍTULO */

.destaque-coluna h3 {
    font-size: 30px;
    line-height: 1.2;

    margin: 0 0 18px;

    color: #ffffff;

    font-weight: 750;
}


/* TEXTO */

.destaque-coluna p {
    color: #aeb5c0;

    font-size: 16px;
    line-height: 1.8;

    max-width: 480px;

    margin: 0 0 30px;
}


/* DIVISOR */

.destaque-divisor {
    width: 1px;

    background:
        linear-gradient(
            to bottom,
            transparent,
            rgba(216, 185, 88, 0.45),
            transparent
        );
}


/* LINK */

.destaque-texto-link {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #c9d0da;

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

    padding-bottom: 8px;

    border-bottom:
        1px solid
        rgba(255, 255, 255, 0.12);

    transition: all .3s ease;
}


.destaque-texto-link:hover {
    color: #e8c45f;

    gap: 18px;

    border-color:
        rgba(232, 196, 95, 0.7);
}


.destaque-gold {
    color: #e8c45f;
}


/* RESPONSIVO */

@media (max-width: 768px) {

    .em-destaque {
        padding: 70px 0;
    }


    .destaque-section-header {
        text-align: left;
        margin-bottom: 45px;
    }


    .destaque-horizontal {
        grid-template-columns: 1fr;

        gap: 45px;
    }


    .destaque-divisor {
        width: 100%;
        height: 1px;

        background:
            linear-gradient(
                to right,
                transparent,
                rgba(216, 185, 88, 0.45),
                transparent
            );
    }


    .destaque-coluna,
    .destaque-coluna:last-child {
        padding: 0;
    }


    .destaque-coluna h3 {
        font-size: 26px;
    }

}

/* ==========================================
   CIDADES PREMIUM
========================================== */

.cidades-premium {
    position: relative;
    padding-top: 80px;
    padding-bottom: 100px;
}


/* HEADER */

.cidades-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 30px;

    margin-bottom: 40px;
}


.cidades-header h2 {
    font-size: clamp(38px, 4.5vw, 58px);
    line-height: 1.05;

    margin: 15px 0 15px;

    color: #ffffff;
}


.cidades-header h2 span {
    color: #e8c45f;
}


.cidades-header p {
    max-width: 650px;

    margin: 0;

    color: #aeb5c0;

    font-size: 16px;

    line-height: 1.7;
}


/* LINK */

.cidades-link {
    display: inline-flex;
    align-items: center;

    gap: 10px;

    color: #d8b958;

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

    white-space: nowrap;

    padding-bottom: 8px;

    border-bottom:
        1px solid
        rgba(216, 185, 88, 0.35);

    transition: all .3s ease;
}


.cidades-link:hover {
    color: #ffffff;

    gap: 16px;

    border-color: #d8b958;
}


/* GRID */

.cidades-grid {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 18px;
}


/* ITEM */

.cidade-item {
    position: relative;

    display: block;

    height: 420px;

    overflow: hidden;

    text-decoration: none;

    border-radius: 18px;

    background: #181d24;

    isolation: isolate;
}


/* IMAGEM */

.cidade-imagem {
    position: absolute;

    inset: 0;

    background-size: cover;

    background-position: center;

    transition:
        transform .7s ease;
}


.cidade-item:hover .cidade-imagem {
    transform: scale(1.08);
}


/* OVERLAY */

.cidade-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(7, 9, 12, 0.98) 0%,
            rgba(7, 9, 12, 0.65) 35%,
            rgba(7, 9, 12, 0.05) 75%
        );

    transition: .4s ease;
}


.cidade-item:hover .cidade-overlay {
    background:
        linear-gradient(
            to top,
            rgba(7, 9, 12, 0.98) 0%,
            rgba(7, 9, 12, 0.72) 45%,
            rgba(212, 175, 55, 0.08) 100%
        );
}


/* BORDA */

.cidade-item::after {
    content: "";

    position: absolute;

    inset: 0;

    border-radius: 18px;

    border:
        1px solid
        rgba(255, 255, 255, 0.12);

    transition: .35s ease;

    pointer-events: none;
}


.cidade-item:hover::after {
    border-color:
        rgba(232, 196, 95, 0.7);
}


/* CONTEÚDO */

.cidade-conteudo {
    position: absolute;

    left: 30px;
    right: 30px;

    bottom: 28px;

    z-index: 2;
}


/* LOCAL */

.cidade-local {
    display: flex;

    align-items: center;

    gap: 8px;

    color: #e8c45f;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 1.8px;

    margin-bottom: 12px;
}


.cidade-local i {
    font-size: 12px;
}


/* NOME */

.cidade-conteudo h3 {
    margin: 0 0 18px;

    color: #ffffff;

    font-size: 28px;

    font-weight: 750;

    line-height: 1.15;

    transition: .3s ease;
}


.cidade-item:hover .cidade-conteudo h3 {
    color: #f1d06c;
}


/* EXPLORAR */

.cidade-explorar {
    display: flex;

    align-items: center;

    justify-content: space-between;

    padding-top: 15px;

    border-top:
        1px solid
        rgba(255, 255, 255, 0.18);

    color: #c7ced7;

    font-size: 13px;

    font-weight: 600;

    transition: .3s ease;
}


.cidade-explorar i {
    color: #e8c45f;

    transition: .3s ease;
}


.cidade-item:hover .cidade-explorar {
    color: #ffffff;
}


.cidade-item:hover .cidade-explorar i {
    transform: translateX(6px);
}


/* RESPONSIVO */

@media (max-width: 992px) {

    .cidades-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }


    .cidade-item {
        height: 380px;
    }

}


@media (max-width: 768px) {

    .cidades-premium {
        padding-top: 60px;
        padding-bottom: 70px;
    }


    .cidades-header {
        align-items: flex-start;

        flex-direction: column;

        margin-bottom: 30px;
    }


    .cidades-header h2 {
        font-size: 38px;
    }


    .cidades-grid {
        grid-template-columns: 1fr;

        gap: 15px;
    }


    .cidade-item {
        height: 330px;
    }


    .cidade-conteudo {
        left: 25px;
        right: 25px;

        bottom: 25px;
    }

}

/* ==========================================
   MOMENTOS PREMIUM / GALERIA
========================================== */

.momentos-premium {
    position: relative;

    padding:
        90px
        0
        110px;

    overflow: hidden;
}


/* HEADER */

.momentos-header {
    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 30px;

    margin-bottom: 40px;
}


.momentos-titulo {
    max-width: 680px;
}


.momentos-titulo h2 {
    margin: 14px 0;

    font-size:
        clamp(40px, 5vw, 62px);

    line-height: 1.05;

    color: #ffffff;
}


.momentos-titulo h2 span {
    color: #e8c45f;
}


.momentos-titulo p {
    margin: 0;

    max-width: 600px;

    color: #aeb5c0;

    font-size: 16px;

    line-height: 1.7;
}


/* LINK */

.momentos-link {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #e8c45f;

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

    white-space: nowrap;

    padding-bottom: 8px;

    border-bottom:
        1px solid
        rgba(232, 196, 95, 0.35);

    transition: all .3s ease;
}


.momentos-link:hover {
    color: #ffffff;

    gap: 18px;

    border-color:
        #e8c45f;
}


/* GALERIA */

.momentos-galeria {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    grid-auto-rows: 190px;

    gap: 14px;
}


/* FOTO */

.momento-item {
    position: relative;

    display: block;

    overflow: hidden;

    border-radius: 16px;

    background: #171c23;

    text-decoration: none;

    isolation: isolate;
}


/* FOTO PRINCIPAL */

.momento-item:nth-child(1) {
    grid-column: span 2;

    grid-row: span 2;
}


/* FOTO DESTAQUE LATERAL */

.momento-item:nth-child(4) {
    grid-column: span 2;
}


/* OUTRA FOTO MAIOR */

.momento-item:nth-child(7) {
    grid-column: span 2;
}


/* IMAGEM */

.momento-item img {
    width: 100%;

    height: 100%;

    object-fit: cover;

    display: block;

    transition:
        transform .7s ease,
        filter .4s ease;
}


/* HOVER */

.momento-item:hover img {
    transform: scale(1.08);

    filter: brightness(1.08);
}


/* OVERLAY */

.momento-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(7, 9, 12, 0.92) 0%,
            rgba(7, 9, 12, 0.45) 35%,
            transparent 70%
        );

    transition: .4s ease;
}


.momento-item:hover .momento-overlay {
    background:
        linear-gradient(
            to top,
            rgba(7, 9, 12, 0.95) 0%,
            rgba(7, 9, 12, 0.55) 50%,
            rgba(212, 175, 55, 0.08) 100%
        );
}


/* BORDA */

.momento-item::after {
    content: "";

    position: absolute;

    inset: 0;

    border:
        1px solid
        rgba(255, 255, 255, 0.08);

    border-radius: 16px;

    pointer-events: none;

    transition: .3s ease;
}


.momento-item:hover::after {
    border-color:
        rgba(232, 196, 95, 0.65);
}


/* INFORMAÇÕES */

.momento-info {
    position: absolute;

    left: 22px;

    right: 22px;

    bottom: 20px;

    z-index: 2;

    transform:
        translateY(5px);

    transition: .35s ease;
}


.momento-item:hover .momento-info {
    transform:
        translateY(0);
}


/* LOCAL */

.momento-local {
    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 7px;

    color: #f1d16c;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 1.2px;

    text-transform: uppercase;
}


.momento-local i {
    font-size: 11px;
}


/* LEGENDA */

.momento-caption {
    margin-top: 7px;

    color: #ffffff;

    font-size: 15px;

    font-weight: 600;

    line-height: 1.3;

    opacity: 0;

    max-height: 0;

    overflow: hidden;

    transition:
        opacity .3s ease,
        max-height .3s ease;
}


.momento-item:hover .momento-caption {
    opacity: 1;

    max-height: 60px;
}


/* BOTÃO ZOOM */

.momento-zoom {
    position: absolute;

    top: 18px;

    right: 18px;

    width: 42px;

    height: 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background:
        rgba(10, 12, 16, 0.7);

    backdrop-filter:
        blur(10px);

    border:
        1px solid
        rgba(255, 255, 255, 0.15);

    color: #ffffff;

    font-size: 13px;

    opacity: 0;

    transform:
        scale(.8);

    transition: .3s ease;
}


.momento-item:hover .momento-zoom {
    opacity: 1;

    transform:
        scale(1);
}


/* LINK MOBILE */

.momentos-mobile-link {
    display: none;
}


/* TABLET */

@media (max-width: 992px) {

    .momentos-galeria {
        grid-template-columns:
            repeat(3, 1fr);

        grid-auto-rows: 180px;
    }


    .momento-item:nth-child(1) {
        grid-column: span 2;

        grid-row: span 2;
    }


    .momento-item:nth-child(4),
    .momento-item:nth-child(7) {
        grid-column: span 1;
    }

}


/* MOBILE */

@media (max-width: 768px) {

    .momentos-premium {
        padding:
            65px
            0
            75px;
    }


    .momentos-header {
        display: block;

        margin-bottom: 30px;
    }


    .momentos-link {
        display: none;
    }


    .momentos-titulo h2 {
        font-size: 40px;
    }


    .momentos-galeria {
        grid-template-columns:
            repeat(2, 1fr);

        grid-auto-rows: 170px;

        gap: 10px;
    }


    .momento-item:nth-child(1) {
        grid-column: span 2;

        grid-row: span 2;
    }


    .momento-item:nth-child(4),
    .momento-item:nth-child(7) {
        grid-column: span 1;

        grid-row: span 1;
    }


    .momento-info {
        left: 15px;

        right: 15px;

        bottom: 15px;
    }


    .momento-caption {
        display: none;
    }


    .momento-zoom {
        display: none;
    }


    .momentos-mobile-link {
        display: block;

        margin-top: 30px;
    }


    .momentos-mobile-link a {
        display: flex;

        align-items: center;

        justify-content: space-between;

        padding: 18px 0;

        color: #e8c45f;

        font-weight: 700;

        text-decoration: none;

        border-top:
            1px solid
            rgba(255,255,255,.1);

        border-bottom:
            1px solid
            rgba(255,255,255,.1);
    }

}

/* ==========================================
   PÁGINA SOBRE
========================================== */


/* HERO */

.sobre-hero {
    padding: 120px 0 90px;
}


.sobre-hero-content {
    max-width: 900px;
}


.sobre-hero h1 {
    margin: 18px 0 22px;

    font-size: clamp(48px, 6vw, 82px);

    line-height: 1.02;

    color: #ffffff;
}


.sobre-hero h1 span {
    color: #e8c45f;
}


.sobre-hero p {
    max-width: 700px;

    color: #aeb5c0;

    font-size: 19px;

    line-height: 1.8;

    margin: 0;
}


/* ==========================================
   APRESENTAÇÃO
========================================== */

.sobre-apresentacao {
    padding: 90px 0;

    border-top:
        1px solid
        rgba(255,255,255,.07);

    border-bottom:
        1px solid
        rgba(255,255,255,.07);
}


.sobre-apresentacao-grid {
    display: grid;

    grid-template-columns:
        0.8fr 1.2fr;

    gap: 100px;

    align-items: center;
}


/* NÚMERO / LADO ESQUERDO */

.sobre-numero {
    position: relative;

    min-height: 280px;

    display: flex;

    flex-direction: column;

    justify-content: center;
}


.sobre-numero span {
    position: absolute;

    top: 0;

    font-size: 180px;

    line-height: 1;

    color:
        rgba(232,196,95,.08);

    font-weight: 800;
}


.sobre-numero strong {
    position: relative;

    color: #ffffff;

    font-size: 34px;

    z-index: 1;
}


.sobre-numero small {
    position: relative;

    display: block;

    margin-top: 12px;

    max-width: 180px;

    color: #aeb5c0;

    font-size: 14px;

    line-height: 1.6;

    z-index: 1;
}


/* TEXTO */

.sobre-label {
    display: block;

    color: #e8c45f;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;

    margin-bottom: 16px;
}


.sobre-texto h2 {
    margin: 0 0 25px;

    font-size: clamp(36px, 4vw, 56px);

    line-height: 1.08;

    color: #ffffff;
}


.sobre-texto h2 span {
    display: block;

    color: #e8c45f;
}


.sobre-texto p {
    max-width: 620px;

    color: #aeb5c0;

    font-size: 17px;

    line-height: 1.8;

    margin-bottom: 18px;
}


/* ==========================================
   PROPÓSITO
========================================== */

.sobre-proposito {
    padding: 110px 0;
}


.sobre-section-header {
    max-width: 700px;

    margin-bottom: 65px;
}


.sobre-section-header h2 {
    margin: 16px 0;

    font-size: clamp(40px, 5vw, 62px);

    line-height: 1.05;

    color: #ffffff;
}


.sobre-section-header h2 span {
    color: #e8c45f;
}


.sobre-section-header p {
    color: #aeb5c0;

    font-size: 17px;

    line-height: 1.7;

    margin: 0;
}


/* GRID */

.proposito-grid {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 65px;
}


/* ITEM */

.proposito-item {
    position: relative;

    padding-right: 30px;
}


/* DIVISOR */

.proposito-item:not(:last-child)::after {
    content: "";

    position: absolute;

    top: 0;

    right: 0;

    width: 1px;

    height: 100%;

    background:
        linear-gradient(
            to bottom,
            transparent,
            rgba(255,255,255,.15),
            transparent
        );
}


/* TOPO */

.proposito-topo {
    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 35px;
}


/* NÚMERO */

.proposito-numero {
    font-size: 55px;

    font-weight: 800;

    color:
        rgba(255,255,255,.08);
}


/* ÍCONE */

.proposito-icone {
    width: 58px;

    height: 58px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 16px;

    color: #e8c45f;

    font-size: 21px;

    border:
        1px solid
        rgba(232,196,95,.35);

    background:
        rgba(232,196,95,.06);
}


/* TAG */

.proposito-tag {
    display: block;

    color: #e8c45f;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;

    margin-bottom: 15px;
}


/* TITULO */

.proposito-item h3 {
    margin: 0 0 18px;

    color: #ffffff;

    font-size: 28px;

    line-height: 1.2;
}


/* TEXTO */

.proposito-item p {
    margin: 0;

    color: #aeb5c0;

    font-size: 16px;

    line-height: 1.8;
}


/* ==========================================
   CREDIBILIDADE
========================================== */

.credibilidade-section {
    padding: 100px 0;

    background:
        rgba(255,255,255,.015);

    border-top:
        1px solid
        rgba(255,255,255,.07);

    border-bottom:
        1px solid
        rgba(255,255,255,.07);
}


.credibilidade-grid {
    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 100px;

    align-items: start;
}


.credibilidade-titulo h2 {
    margin: 16px 0 0;

    font-size: clamp(38px, 4.5vw, 58px);

    line-height: 1.08;

    color: #ffffff;
}


.credibilidade-titulo h2 span {
    display: block;

    color: #e8c45f;
}


/* CONTEÚDO */

.credibilidade-conteudo p {
    color: #aeb5c0;

    font-size: 17px;

    line-height: 1.8;

    margin-bottom: 20px;
}


/* ITENS */

.credibilidade-itens {
    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 15px;

    margin-top: 35px;

    padding-top: 30px;

    border-top:
        1px solid
        rgba(255,255,255,.1);
}


.credibilidade-itens div {
    display: flex;

    align-items: center;

    gap: 10px;

    color: #d5dae2;

    font-size: 14px;

    font-weight: 600;
}


.credibilidade-itens i {
    color: #e8c45f;

    font-size: 12px;
}


/* ==========================================
   CTA
========================================== */

.sobre-cta {
    padding: 110px 0;
}


.sobre-cta-content {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 50px;

    padding: 55px 0;

    border-top:
        1px solid
        rgba(232,196,95,.25);

    border-bottom:
        1px solid
        rgba(232,196,95,.25);
}


.sobre-cta-content h2 {
    margin: 12px 0;

    color: #ffffff;

    font-size: clamp(34px, 4vw, 52px);
}


.sobre-cta-content p {
    margin: 0;

    max-width: 600px;

    color: #aeb5c0;

    font-size: 16px;

    line-height: 1.7;
}


/* BOTÃO */

.sobre-cta-btn {
    display: inline-flex;

    align-items: center;

    gap: 14px;

    padding: 17px 24px;

    background: #e8c45f;

    color: #17120a;

    font-size: 14px;

    font-weight: 800;

    text-decoration: none;

    border-radius: 8px;

    white-space: nowrap;

    transition: .3s ease;
}


.sobre-cta-btn:hover {
    transform: translateY(-3px);

    gap: 20px;

    color: #17120a;
}


/* ==========================================
   RESPONSIVO
========================================== */

@media (max-width: 992px) {

    .sobre-apresentacao-grid {
        grid-template-columns: 1fr;

        gap: 50px;
    }


    .sobre-numero {
        min-height: 160px;
    }


    .proposito-grid {
        grid-template-columns: 1fr;

        gap: 45px;
    }


    .proposito-item {
        padding-right: 0;

        padding-bottom: 45px;

        border-bottom:
            1px solid
            rgba(255,255,255,.1);
    }


    .proposito-item:not(:last-child)::after {
        display: none;
    }


    .proposito-item:last-child {
        border-bottom: 0;

        padding-bottom: 0;
    }


    .credibilidade-grid {
        grid-template-columns: 1fr;

        gap: 45px;
    }

}


@media (max-width: 768px) {

    .sobre-hero {
        padding: 80px 0 65px;
    }


    .sobre-hero h1 {
        font-size: 46px;
    }


    .sobre-hero p {
        font-size: 17px;
    }


    .sobre-apresentacao,
    .sobre-proposito,
    .credibilidade-section,
    .sobre-cta {
        padding: 70px 0;
    }


    .sobre-numero span {
        font-size: 120px;
    }


    .sobre-section-header {
        margin-bottom: 45px;
    }


    .credibilidade-itens {
        grid-template-columns: 1fr;
    }


    .sobre-cta-content {
        flex-direction: column;

        align-items: flex-start;

        padding: 40px 0;
    }


    .sobre-cta-btn {
        width: 100%;

        justify-content: space-between;
    }

}

/* ==========================================
   COMO FUNCIONA
========================================== */


/* HERO */

.funciona-hero {
    padding: 120px 0 90px;
}


.funciona-hero-content {
    max-width: 850px;
}


.funciona-hero h1 {
    margin: 18px 0 22px;

    font-size: clamp(48px, 6vw, 80px);

    line-height: 1.02;

    color: #ffffff;
}


.funciona-hero h1 span {
    color: #e8c45f;
}


.funciona-hero p {
    max-width: 720px;

    margin: 0;

    color: #aeb5c0;

    font-size: 19px;

    line-height: 1.8;
}


/* ==========================================
   PROCESSO
========================================== */

.processo-section {
    padding: 100px 0;
}


.processo-header {
    max-width: 720px;

    margin-bottom: 65px;
}


.processo-header h2 {
    margin: 16px 0;

    font-size: clamp(40px, 5vw, 62px);

    line-height: 1.05;

    color: #ffffff;
}


.processo-header h2 span {
    color: #e8c45f;
}


.processo-header p {
    margin: 0;

    color: #aeb5c0;

    font-size: 17px;

    line-height: 1.7;
}


/* GRID */

.processo-grid {
    display: grid;

    grid-template-columns:
        1fr 70px 1fr 70px 1fr;

    align-items: center;
}


/* ITEM */

.processo-item {
    position: relative;

    min-height: 380px;

    padding: 10px 30px 25px;

    border-top:
        1px solid
        rgba(255,255,255,.12);

    border-bottom:
        1px solid
        rgba(255,255,255,.12);
}


/* TOPO */

.processo-topo {
    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 35px;
}


/* ÍCONE */

.processo-icone {
    width: 58px;

    height: 58px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 16px;

    background:
        rgba(232,196,95,.08);

    border:
        1px solid
        rgba(232,196,95,.35);

    color: #e8c45f;

    font-size: 21px;
}


/* NUMERO */

.processo-numero {
    color:
        rgba(255,255,255,.08);

    font-size: 54px;

    font-weight: 800;
}


/* TAG */

.processo-tag {
    display: block;

    margin-bottom: 15px;

    color: #e8c45f;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}


/* TITULO */

.processo-item h3 {
    margin: 0 0 18px;

    color: #ffffff;

    font-size: 27px;

    line-height: 1.2;
}


/* TEXTO */

.processo-item p {
    margin: 0;

    color: #aeb5c0;

    font-size: 16px;

    line-height: 1.8;
}


/* FOOTER */

.processo-footer {
    position: absolute;

    left: 30px;

    right: 30px;

    bottom: 20px;

    padding-top: 15px;

    border-top:
        1px solid
        rgba(255,255,255,.1);

    color: #e8c45f;

    font-size: 13px;

    font-weight: 700;
}


.processo-footer i {
    margin-right: 8px;
}


/* SETA */

.processo-seta {
    display: flex;

    align-items: center;

    justify-content: center;

    color: #e8c45f;

    font-size: 22px;
}


/* ==========================================
   REGRAS
========================================== */

.regras-section {
    padding: 110px 0;

    background:
        rgba(255,255,255,.015);

    border-top:
        1px solid
        rgba(255,255,255,.07);

    border-bottom:
        1px solid
        rgba(255,255,255,.07);
}


.regras-grid {
    display: grid;

    grid-template-columns:
        0.9fr 1.1fr;

    gap: 100px;

    align-items: center;
}


/* INTRO */

.regras-intro h2 {
    margin: 16px 0 22px;

    font-size: clamp(38px, 4.5vw, 58px);

    line-height: 1.08;

    color: #ffffff;
}


.regras-intro h2 span {
    display: block;

    color: #e8c45f;
}


.regras-intro p {
    max-width: 540px;

    color: #aeb5c0;

    font-size: 17px;

    line-height: 1.8;
}


/* INSTAGRAM */

.regras-instagram {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    margin-top: 25px;

    color: #e8c45f;

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

    border-bottom:
        1px solid
        rgba(232,196,95,.3);

    padding-bottom: 10px;

    transition: .3s ease;
}


.regras-instagram:hover {
    gap: 18px;

    color: #ffffff;
}


/* LISTA */

.regras-lista {
    border-top:
        1px solid
        rgba(255,255,255,.12);
}


.regra-item {
    display: grid;

    grid-template-columns:
        60px 1fr;

    gap: 20px;

    padding: 25px 0;

    border-bottom:
        1px solid
        rgba(255,255,255,.1);
}


.regra-item > span {
    color: #e8c45f;

    font-size: 13px;

    font-weight: 800;

    letter-spacing: 1px;
}


.regra-item h4 {
    margin: 0 0 8px;

    color: #ffffff;

    font-size: 18px;
}


.regra-item p {
    margin: 0;

    color: #aeb5c0;

    font-size: 15px;

    line-height: 1.7;
}


/* ==========================================
   APURAÇÃO
========================================== */

.apuracao-section {
    padding: 110px 0;
}


.apuracao-header {
    max-width: 650px;

    margin-bottom: 60px;
}


.apuracao-header h2 {
    margin: 16px 0 0;

    font-size: clamp(40px, 5vw, 62px);

    line-height: 1.05;

    color: #ffffff;
}


.apuracao-header h2 span {
    color: #e8c45f;
}


/* GRID */

.apuracao-grid {
    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 40px;
}


/* ITEM */

.apuracao-item {
    position: relative;

    padding-left: 20px;

    border-left:
        1px solid
        rgba(232,196,95,.35);
}


.apuracao-icon {
    width: 45px;

    height: 45px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin-bottom: 22px;

    color: #e8c45f;

    font-size: 18px;
}


.apuracao-item h3 {
    margin: 0 0 12px;

    color: #ffffff;

    font-size: 20px;

    line-height: 1.3;
}


.apuracao-item p {
    margin: 0;

    color: #aeb5c0;

    font-size: 15px;

    line-height: 1.7;
}


/* ==========================================
   TRANSPARÊNCIA
========================================== */

.transparencia-section {
    padding: 100px 0;

    border-top:
        1px solid
        rgba(255,255,255,.08);

    border-bottom:
        1px solid
        rgba(255,255,255,.08);
}


.transparencia-grid {
    display: grid;

    grid-template-columns:
        1fr 1fr;

    gap: 100px;
}


.transparencia-titulo h2 {
    margin: 16px 0;

    color: #ffffff;

    font-size: clamp(38px, 4.5vw, 58px);

    line-height: 1.08;
}


.transparencia-titulo h2 span {
    display: block;

    color: #e8c45f;
}


.transparencia-conteudo > p {
    margin: 0 0 30px;

    color: #aeb5c0;

    font-size: 17px;

    line-height: 1.8;
}


.transparencia-lista {
    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 25px;

    padding-top: 30px;

    border-top:
        1px solid
        rgba(255,255,255,.1);
}


.transparencia-lista div {
    display: flex;

    gap: 12px;

    color: #d8dde5;

    font-size: 14px;

    line-height: 1.6;
}


.transparencia-lista i {
    margin-top: 4px;

    color: #e8c45f;

    font-size: 12px;
}


/* ==========================================
   FAQ
========================================== */

.faq-section {
    padding: 110px 0;
}


.faq-header {
    margin-bottom: 50px;
}


.faq-header h2 {
    margin: 16px 0 0;

    font-size: clamp(40px, 5vw, 62px);

    color: #ffffff;
}


.faq-header h2 span {
    color: #e8c45f;
}


/* LISTA */

.faq-lista {
    max-width: 900px;

    border-top:
        1px solid
        rgba(255,255,255,.12);
}


.faq-item {
    border-bottom:
        1px solid
        rgba(255,255,255,.12);
}


.faq-item summary {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    padding: 25px 0;

    cursor: pointer;

    list-style: none;

    color: #ffffff;

    font-size: 19px;

    font-weight: 600;
}


.faq-item summary::-webkit-details-marker {
    display: none;
}


.faq-item summary i {
    color: #e8c45f;

    font-size: 14px;

    transition: .3s ease;
}


.faq-item[open] summary i {
    transform: rotate(45deg);
}


/* RESPOSTA */

.faq-resposta {
    padding:
        0
        50px
        25px
        0;

    color: #aeb5c0;

    font-size: 16px;

    line-height: 1.8;
}


/* LINK */

.faq-link-edicoes {
    margin-top: 35px;
}


.faq-link-edicoes a {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #e8c45f;

    font-size: 14px;

    font-weight: 700;

    text-decoration: none;

    transition: .3s ease;
}


.faq-link-edicoes a:hover {
    gap: 18px;

    color: #ffffff;
}


/* ==========================================
   RESPONSIVO
========================================== */

@media (max-width: 1100px) {

    .processo-grid {
        grid-template-columns:
            1fr;
    }


    .processo-seta {
        display: none;
    }


    .processo-item {
        min-height: 320px;
    }


    .processo-item:not(:last-child) {
        border-bottom: 0;
    }


    .apuracao-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

}


@media (max-width: 992px) {

    .regras-grid {
        grid-template-columns: 1fr;

        gap: 60px;
    }


    .transparencia-grid {
        grid-template-columns: 1fr;

        gap: 50px;
    }

}


@media (max-width: 768px) {

    .funciona-hero {
        padding: 80px 0 65px;
    }


    .funciona-hero h1 {
        font-size: 46px;
    }


    .funciona-hero p {
        font-size: 17px;
    }


    .processo-section,
    .regras-section,
    .apuracao-section,
    .transparencia-section,
    .faq-section {
        padding: 70px 0;
    }


    .processo-header {
        margin-bottom: 45px;
    }


    .processo-item {
        padding: 25px 20px;

        min-height: 350px;
    }


    .processo-footer {
        left: 20px;

        right: 20px;
    }


    .apuracao-grid {
        grid-template-columns: 1fr;

        gap: 35px;
    }


    .transparencia-lista {
        grid-template-columns: 1fr;
    }


    .faq-item summary {
        font-size: 17px;
    }


    .faq-resposta {
        padding-right: 10px;
    }

}

/* ==========================================
   PÁGINA EDIÇÕES
========================================== */


/* ==========================================
   HERO
========================================== */

.edicoes-hero {
    padding: 120px 0 90px;
}


.edicoes-hero-content {
    max-width: 900px;
}


.edicoes-hero h1 {
    margin: 18px 0 22px;

    font-size: clamp(50px, 7vw, 82px);

    line-height: 1.02;

    color: #ffffff;
}


.edicoes-hero h1 span {
    color: #e8c45f;
}


.edicoes-hero p {
    max-width: 720px;

    margin: 0;

    color: #aeb5c0;

    font-size: 19px;

    line-height: 1.8;
}


/* ==========================================
   INFO HERO
========================================== */

.edicoes-hero-info {
    display: flex;

    align-items: center;

    gap: 28px;

    margin-top: 45px;
}


.edicoes-hero-info > div:not(.edicoes-info-line) {
    display: flex;

    flex-direction: column;

    gap: 4px;
}


.edicoes-hero-info strong {
    color: #e8c45f;

    font-size: 25px;

    font-weight: 800;
}


.edicoes-hero-info span {
    color: #89919d;

    font-size: 12px;

    text-transform: uppercase;

    letter-spacing: 1px;
}


.edicoes-info-line {
    width: 1px;

    height: 40px;

    background:
        rgba(255,255,255,.12);
}


/* ==========================================
   FILTROS
========================================== */

.edicoes-filtros-section {
    padding: 70px 0;

    background:
        rgba(255,255,255,.015);

    border-top:
        1px solid
        rgba(255,255,255,.07);

    border-bottom:
        1px solid
        rgba(255,255,255,.07);
}


/* HEADER */

.edicoes-filtros-header {
    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 30px;

    margin-bottom: 35px;
}


.edicoes-small-label {
    display: block;

    margin-bottom: 10px;

    color: #e8c45f;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}


.edicoes-filtros-header h2 {
    margin: 0;

    color: #ffffff;

    font-size: 30px;

    font-weight: 600;
}


.edicoes-limpar {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #aeb5c0;

    text-decoration: none;

    font-size: 13px;

    transition: .3s ease;
}


.edicoes-limpar:hover {
    color: #e8c45f;
}


/* FORM */

.edicoes-filtros {
    display: grid;

    grid-template-columns:
        1.5fr
        1fr
        .7fr
        1fr
        auto;

    gap: 14px;

    align-items: end;
}


/* CAMPO */

.edicoes-campo {
    display: flex;

    flex-direction: column;

    gap: 9px;
}


.edicoes-campo label {
    display: flex;

    align-items: center;

    gap: 8px;

    color: #89919d;

    font-size: 12px;

    font-weight: 600;
}


.edicoes-campo label i {
    color: #e8c45f;

    font-size: 11px;
}


/* INPUT */

.edicoes-campo input,
.edicoes-campo select {
    width: 100%;

    height: 48px;

    padding: 0 15px;

    background:
        rgba(255,255,255,.035);

    border:
        1px solid
        rgba(255,255,255,.1);

    border-radius: 8px;

    outline: none;

    color: #e3e6eb;

    font-size: 14px;

    transition: .3s ease;
}


.edicoes-campo input::placeholder {
    color: #68707b;
}


.edicoes-campo input:focus,
.edicoes-campo select:focus {
    border-color:
        rgba(232,196,95,.6);

    background:
        rgba(255,255,255,.055);
}


/* SELECT */

.edicoes-campo select option {
    background: #171c23;

    color: #ffffff;
}


/* BOTÃO */

.edicoes-filtrar-btn button {
    height: 48px;

    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding: 0 22px;

    border: 0;

    border-radius: 8px;

    background: #e8c45f;

    color: #1a1509;

    font-size: 13px;

    font-weight: 800;

    cursor: pointer;

    transition: .3s ease;
}


.edicoes-filtrar-btn button:hover {
    transform: translateY(-2px);

    gap: 15px;
}


/* ==========================================
   RESULTADOS
========================================== */

.edicoes-resultados {
    padding: 110px 0;
}


/* TOPO */

.edicoes-resultados-topo {
    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 30px;

    margin-bottom: 50px;
}


.edicoes-resultados-topo h2 {
    margin: 0;

    color: #ffffff;

    font-size: clamp(40px, 5vw, 60px);

    line-height: 1.05;
}


.edicoes-resultados-topo h2 span {
    color: #e8c45f;
}


.edicoes-resultado-total {
    padding-bottom: 8px;

    color: #89919d;

    font-size: 13px;
}


.edicoes-resultado-total strong {
    color: #e8c45f;

    font-size: 20px;

    margin-right: 5px;
}


/* ==========================================
   GRID
========================================== */

.edicoes-grid {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 28px;
}


/* ==========================================
   CARD
========================================== */

.edicao-card {
    position: relative;

    display: flex;

    flex-direction: column;

    min-height: 100%;

    overflow: hidden;

    text-decoration: none;

    background:
        #171d25;

    border:
        1px solid
        rgba(255,255,255,.1);

    border-radius: 16px;

    transition: .35s ease;
}


.edicao-card:hover {
    transform: translateY(-7px);

    border-color:
        rgba(232,196,95,.4);

    box-shadow:
        0 20px 50px
        rgba(0,0,0,.25);
}


/* ==========================================
   IMAGEM
========================================== */

.edicao-card-imagem {
    position: relative;

    height: 220px;

    background-size: cover;

    background-position: center;

    overflow: hidden;
}


.edicao-card-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to bottom,
            rgba(0,0,0,.05),
            rgba(0,0,0,.35)
        );
}


/* STATUS */

.edicao-status {
    position: absolute;

    top: 18px;

    left: 18px;

    padding: 7px 12px;

    border-radius: 30px;

    backdrop-filter: blur(10px);

    font-size: 10px;

    font-weight: 800;

    letter-spacing: .5px;

    text-transform: uppercase;
}


/* CONCLUÍDA */

.status-concluida {
    background:
        rgba(20,25,31,.75);

    border:
        1px solid
        rgba(255,255,255,.2);

    color: #ffffff;
}


/* VOTAÇÃO */

.status-em_votacao {
    background:
        rgba(232,196,95,.9);

    color: #17120a;
}


/* PRÓXIMA */

.status-proxima {
    background:
        rgba(60,90,130,.85);

    color: #ffffff;
}


/* ANO */

.edicao-ano {
    position: absolute;

    right: 18px;

    top: 14px;

    color:
        rgba(255,255,255,.75);

    font-size: 30px;

    font-weight: 800;

    line-height: 1;
}


/* ==========================================
   CONTEÚDO CARD
========================================== */

.edicao-card-conteudo {
    display: flex;

    flex-direction: column;

    flex: 1;

    padding: 24px;
}


/* CIDADE */

.edicao-card-cidade {
    display: flex;

    align-items: center;

    gap: 8px;

    margin-bottom: 12px;

    color: #e8c45f;

    font-size: 12px;

    font-weight: 700;
}


.edicao-card-cidade i {
    font-size: 11px;
}


/* TITULO */

.edicao-card h3 {
    margin: 0 0 16px;

    color: #ffffff;

    font-size: 23px;

    line-height: 1.2;
}


/* META */

.edicao-card-meta {
    display: flex;

    flex-direction: column;

    gap: 8px;

    margin-bottom: 16px;
}


.edicao-card-meta span {
    display: flex;

    align-items: center;

    gap: 8px;

    color: #89919d;

    font-size: 12px;
}


.edicao-card-meta i {
    width: 14px;

    color: #e8c45f;

    font-size: 11px;
}


/* RESUMO */

.edicao-card p {
    margin: 0;

    color: #aeb5c0;

    font-size: 14px;

    line-height: 1.7;
}


/* FOOTER */

.edicao-card-footer {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 15px;

    margin-top: auto;

    padding-top: 20px;

    color: #e8c45f;

    font-size: 13px;

    font-weight: 700;
}


.edicao-card-footer i {
    transition: .3s ease;
}


.edicao-card:hover
.edicao-card-footer i {
    transform: translateX(6px);
}


/* ==========================================
   VAZIO
========================================== */

.edicoes-vazio {
    max-width: 600px;

    margin: 20px auto;

    padding: 70px 30px;

    text-align: center;

    border-top:
        1px solid
        rgba(255,255,255,.1);

    border-bottom:
        1px solid
        rgba(255,255,255,.1);
}


.edicoes-vazio-icon {
    width: 65px;

    height: 65px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin: 0 auto 25px;

    border-radius: 50%;

    background:
        rgba(232,196,95,.08);

    border:
        1px solid
        rgba(232,196,95,.3);

    color: #e8c45f;

    font-size: 22px;
}


.edicoes-vazio h3 {
    margin: 0 0 12px;

    color: #ffffff;

    font-size: 25px;
}


.edicoes-vazio p {
    margin: 0 0 25px;

    color: #89919d;

    line-height: 1.7;
}


.edicoes-vazio a {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    color: #e8c45f;

    text-decoration: none;

    font-size: 13px;

    font-weight: 700;
}


/* ==========================================
   CTA
========================================== */

.edicoes-cta {
    padding: 90px 0;
}


.edicoes-cta-content {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 50px;

    padding: 55px 0;

    border-top:
        1px solid
        rgba(232,196,95,.3);

    border-bottom:
        1px solid
        rgba(232,196,95,.3);
}


.edicoes-cta-content h2 {
    margin: 0 0 15px;

    color: #ffffff;

    font-size: clamp(34px, 4vw, 52px);

    line-height: 1.1;
}


.edicoes-cta-content h2 span {
    display: block;

    color: #e8c45f;
}


.edicoes-cta-content p {
    max-width: 620px;

    margin: 0;

    color: #aeb5c0;

    font-size: 16px;

    line-height: 1.7;
}


/* BOTÃO CTA */

.edicoes-cta-btn {
    display: inline-flex;

    align-items: center;

    gap: 14px;

    padding: 17px 24px;

    border-radius: 8px;

    background: #e8c45f;

    color: #17120a;

    text-decoration: none;

    font-size: 14px;

    font-weight: 800;

    white-space: nowrap;

    transition: .3s ease;
}


.edicoes-cta-btn:hover {
    transform: translateY(-3px);

    gap: 20px;

    color: #17120a;
}


/* ==========================================
   RESPONSIVO
========================================== */

@media (max-width: 1100px) {


    .edicoes-filtros {
        grid-template-columns:
            repeat(2, 1fr);
    }


    .edicoes-filtrar-btn {
        grid-column: span 2;
    }


    .edicoes-filtrar-btn button {
        width: 100%;

        justify-content: center;
    }


    .edicoes-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

}


@media (max-width: 768px) {


    /* HERO */

    .edicoes-hero {
        padding: 80px 0 65px;
    }


    .edicoes-hero h1 {
        font-size: 46px;
    }


    .edicoes-hero p {
        font-size: 16px;
    }


    .edicoes-hero-info {
        flex-wrap: wrap;

        gap: 20px;

        margin-top: 35px;
    }


    .edicoes-info-line {
        display: none;
    }


    /* FILTROS */

    .edicoes-filtros-section {
        padding: 55px 0;
    }


    .edicoes-filtros-header {
        flex-direction: column;

        align-items: flex-start;

        margin-bottom: 30px;
    }


    .edicoes-filtros-header h2 {
        font-size: 25px;
    }


    .edicoes-filtros {
        grid-template-columns: 1fr;
    }


    .edicoes-filtrar-btn {
        grid-column: auto;
    }


    /* RESULTADOS */

    .edicoes-resultados {
        padding: 75px 0;
    }


    .edicoes-resultados-topo {
        flex-direction: column;

        align-items: flex-start;

        gap: 15px;

        margin-bottom: 35px;
    }


    .edicoes-grid {
        grid-template-columns: 1fr;

        gap: 20px;
    }


    .edicao-card-imagem {
        height: 210px;
    }


    /* CTA */

    .edicoes-cta {
        padding: 70px 0;
    }


    .edicoes-cta-content {
        flex-direction: column;

        align-items: flex-start;

        padding: 40px 0;
    }


    .edicoes-cta-btn {
        width: 100%;

        justify-content: space-between;
    }

}

/* ==========================================
   GALERIA
========================================== */


/* ==========================================
   HERO
========================================== */

.galeria-hero {
    padding: 120px 0 90px;
}


.galeria-hero-content {
    max-width: 900px;
}


.galeria-hero h1 {
    margin: 18px 0 22px;

    color: #ffffff;

    font-size: clamp(50px, 7vw, 82px);

    line-height: 1.02;
}


.galeria-hero h1 span {
    color: #e8c45f;
}


.galeria-hero p {
    max-width: 720px;

    margin: 0;

    color: #aeb5c0;

    font-size: 19px;

    line-height: 1.8;
}


/* ==========================================
   INFORMAÇÕES HERO
========================================== */

.galeria-hero-info {
    display: flex;

    align-items: center;

    gap: 30px;

    margin-top: 45px;
}


.galeria-info-item {
    display: flex;

    flex-direction: column;

    gap: 5px;
}


.galeria-info-item strong {
    color: #e8c45f;

    font-size: 25px;

    font-weight: 800;
}


.galeria-info-item strong i {
    font-size: 22px;
}


.galeria-info-item span {
    color: #89919d;

    font-size: 11px;

    font-weight: 600;

    text-transform: uppercase;

    letter-spacing: 1px;
}


.galeria-info-line {
    width: 1px;

    height: 42px;

    background:
        rgba(255,255,255,.12);
}


/* ==========================================
   CIDADES
========================================== */

.galeria-cidades {
    padding: 100px 0;

    background:
        rgba(255,255,255,.012);

    border-top:
        1px solid
        rgba(255,255,255,.06);
}


/* ==========================================
   HEADER
========================================== */

.galeria-section-header {
    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 40px;

    margin-bottom: 50px;
}


.galeria-small-label {
    display: block;

    margin-bottom: 12px;

    color: #e8c45f;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}


.galeria-section-header h2 {
    margin: 0 0 15px;

    color: #ffffff;

    font-size: clamp(42px, 5vw, 64px);

    line-height: 1.05;
}


.galeria-section-header h2 span {
    color: #e8c45f;
}


.galeria-section-header p {
    max-width: 620px;

    margin: 0;

    color: #aeb5c0;

    font-size: 16px;

    line-height: 1.7;
}


/* ÍCONE */

.galeria-header-icon {
    width: 65px;

    height: 65px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    border:
        1px solid
        rgba(232,196,95,.3);

    border-radius: 14px;

    background:
        rgba(232,196,95,.05);

    color: #e8c45f;

    font-size: 24px;
}


/* ==========================================
   GRID
========================================== */

.galeria-grid {
    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 28px;
}


/* ==========================================
   CARD CIDADE
========================================== */

.galeria-cidade-card {
    display: flex;

    flex-direction: column;

    overflow: hidden;

    min-height: 100%;

    background:
        #171d25;

    border:
        1px solid
        rgba(255,255,255,.1);

    border-radius: 16px;

    text-decoration: none;

    transition: .35s ease;
}


.galeria-cidade-card:hover {
    transform: translateY(-7px);

    border-color:
        rgba(232,196,95,.45);

    box-shadow:
        0 20px 55px
        rgba(0,0,0,.28);
}


/* ==========================================
   IMAGEM
========================================== */

.galeria-cidade-imagem {
    position: relative;

    height: 250px;

    background-size: cover;

    background-position: center;

    overflow: hidden;

    transition: .5s ease;
}


.galeria-cidade-card:hover
.galeria-cidade-imagem {
    transform: scale(1.03);
}


.galeria-cidade-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            to bottom,
            rgba(0,0,0,.05),
            rgba(0,0,0,.45)
        );
}


/* ==========================================
   ÍCONE CAMERA
========================================== */

.galeria-card-camera {
    position: absolute;

    top: 18px;

    right: 18px;

    width: 42px;

    height: 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background:
        rgba(15,18,23,.65);

    border:
        1px solid
        rgba(255,255,255,.15);

    backdrop-filter: blur(10px);

    color: #ffffff;

    font-size: 15px;
}


/* ==========================================
   DESTAQUE
========================================== */

.galeria-destaque {
    position: absolute;

    left: 18px;

    bottom: 18px;

    display: inline-flex;

    align-items: center;

    gap: 7px;

    padding: 8px 12px;

    border-radius: 30px;

    background:
        rgba(232,196,95,.92);

    color: #201809;

    font-size: 10px;

    font-weight: 800;

    text-transform: uppercase;

    letter-spacing: .5px;
}


/* ==========================================
   CONTEÚDO
========================================== */

.galeria-cidade-conteudo {
    display: flex;

    flex-direction: column;

    flex: 1;

    padding: 24px;
}


/* TOPO */

.galeria-cidade-topo {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;
}


.galeria-card-label {
    display: block;

    margin-bottom: 8px;

    color: #e8c45f;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 1.5px;
}


.galeria-cidade-card h3 {
    margin: 0;

    color: #ffffff;

    font-size: 25px;

    line-height: 1.2;
}


/* SETA */

.galeria-card-arrow {
    width: 42px;

    height: 42px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    border-radius: 50%;

    border:
        1px solid
        rgba(232,196,95,.3);

    color: #e8c45f;

    font-size: 13px;

    transition: .3s ease;
}


.galeria-cidade-card:hover
.galeria-card-arrow {
    background: #e8c45f;

    color: #1b160a;

    transform: rotate(-45deg);
}


/* ==========================================
   FOOTER CARD
========================================== */

.galeria-card-footer {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 15px;

    margin-top: 25px;

    padding-top: 18px;

    border-top:
        1px solid
        rgba(255,255,255,.08);
}


.galeria-card-footer span:first-child {
    display: flex;

    align-items: center;

    gap: 8px;

    color: #89919d;

    font-size: 12px;
}


.galeria-card-footer span:first-child i {
    color: #e8c45f;
}


.galeria-card-footer span:last-child {
    color: #e8c45f;

    font-size: 12px;

    font-weight: 700;
}


/* ==========================================
   CTA
========================================== */

.galeria-cta {
    padding: 90px 0;
}


.galeria-cta-content {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 50px;

    padding: 55px 0;

    border-top:
        1px solid
        rgba(232,196,95,.3);

    border-bottom:
        1px solid
        rgba(232,196,95,.3);
}


.galeria-cta-content h2 {
    margin: 0 0 15px;

    color: #ffffff;

    font-size: clamp(34px, 4vw, 52px);

    line-height: 1.1;
}


.galeria-cta-content h2 span {
    color: #e8c45f;
}


.galeria-cta-content p {
    max-width: 650px;

    margin: 0;

    color: #aeb5c0;

    font-size: 16px;

    line-height: 1.7;
}


/* BOTÃO */

.galeria-cta-btn {
    display: inline-flex;

    align-items: center;

    gap: 14px;

    padding: 17px 25px;

    border-radius: 8px;

    background: #e8c45f;

    color: #1b160a;

    text-decoration: none;

    font-size: 14px;

    font-weight: 800;

    white-space: nowrap;

    transition: .3s ease;
}


.galeria-cta-btn:hover {
    color: #1b160a;

    transform: translateY(-3px);

    gap: 20px;
}


/* ==========================================
   RESPONSIVO
========================================== */

@media (max-width: 1000px) {


    .galeria-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

}


@media (max-width: 768px) {


    /* HERO */

    .galeria-hero {
        padding: 80px 0 65px;
    }


    .galeria-hero h1 {
        font-size: 46px;
    }


    .galeria-hero p {
        font-size: 16px;
    }


    .galeria-hero-info {
        flex-wrap: wrap;

        gap: 20px;

        margin-top: 35px;
    }


    .galeria-info-line {
        display: none;
    }


    /* CIDADES */

    .galeria-cidades {
        padding: 70px 0;
    }


    .galeria-section-header {
        align-items: flex-start;

        margin-bottom: 35px;
    }


    .galeria-header-icon {
        display: none;
    }


    .galeria-section-header h2 {
        font-size: 42px;
    }


    /* GRID */

    .galeria-grid {
        grid-template-columns: 1fr;

        gap: 20px;
    }


    .galeria-cidade-imagem {
        height: 220px;
    }


    /* CTA */

    .galeria-cta {
        padding: 70px 0;
    }


    .galeria-cta-content {
        flex-direction: column;

        align-items: flex-start;

        padding: 40px 0;
    }


    .galeria-cta-btn {
        width: 100%;

        justify-content: space-between;
    }

}

/* Logo do menu */

.brand-logo {
    width: 42px;
    height: 42px;
    object-fit: contain;
    display: block;
}

/* ==========================================
   AJUSTE LOGO E MENU
========================================== */

.navbar-brand {
    gap: 8px !important;
    white-space: nowrap;
}

.brand-logo {
    width: 38px;
    height: 38px;
    object-fit: contain;
    display: block;
    flex-shrink: 0;
}

.navbar-brand .font-title {
    font-size: 20px;
}


/* Não deixa os menus quebrarem */

.navbar-nav .nav-link {
    white-space: nowrap;
    font-size: 15px;
}


/* Ajuste espaçamento do menu */

.navbar-nav {
    gap: 8px !important;
}


/* Botão Instagram */

.navbar-nav .btn-gold {
    white-space: nowrap;
    padding: 10px 16px;
    font-size: 14px;
}

/* =========================================
   PÁGINA DA EDIÇÃO
   RESULTADOS OFICIAIS
========================================= */

.edition-content {
    padding-top: 80px;
}


/* CONTAINER */

.official-results {
    margin-bottom: 48px;
}


/* HEADER */

.official-results-header {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 30px;
    margin-bottom: 32px;
}


.official-results-header h2 {
    font-size: clamp(2rem, 4vw, 3.2rem);
    margin: 10px 0;
}


/* CONTADOR */

.results-counter {
    display: flex;
    align-items: center;
    gap: 8px;

    font-size: 1.1rem;
    font-weight: 600;

    color: #e7c45c;

    white-space: nowrap;

    padding: 12px 18px;

    border: 1px solid rgba(231, 196, 92, .25);

    border-radius: 100px;

    background:
        rgba(231, 196, 92, .05);
}


.results-counter-line {
    color:
        rgba(255, 255, 255, .35);
}


/* =========================================
   SLIDER
========================================= */

.results-slider-wrap {
    position: relative;

    display: flex;
    align-items: center;

    gap: 16px;
}


/* ÁREA ROLÁVEL */

.results-slider {

    display: flex;

    gap: 18px;

    overflow-x: auto;

    scroll-behavior: smooth;

    scroll-snap-type:
        x mandatory;

    scrollbar-width: none;

    width: 100%;

    padding: 5px;

    cursor: grab;

}


.results-slider:active {
    cursor: grabbing;
}


.results-slider::-webkit-scrollbar {
    display: none;
}


/* =========================================
   SLIDE
========================================= */

.result-slide {

    flex:
        0 0
        calc(
            (100% - 72px) / 5
        );

    min-width: 0;

    scroll-snap-align:
        start;

}


.result-image {

    position: relative;

    display: block;

    overflow: hidden;

    border-radius: 14px;

    background:
        #151a22;

    border:
        1px solid
        rgba(231, 196, 92, .18);

    transition:
        transform .25s ease,
        border-color .25s ease,
        box-shadow .25s ease;

}


.result-image:hover {

    transform:
        translateY(-5px);

    border-color:
        rgba(231, 196, 92, .65);

    box-shadow:
        0 15px 40px
        rgba(0, 0, 0, .3);

}


/* IMAGEM INTEIRA */

.result-image img {

    display: block;

    width: 100%;

    height: auto;

    aspect-ratio: auto;

    object-fit:
        contain;

    background:
        #111;

}


/* OVERLAY */

.result-image-overlay {

    position: absolute;

    inset: 0;

    display: flex;

    justify-content: center;
    align-items: center;

    opacity: 0;

    background:
        rgba(0, 0, 0, .5);

    transition:
        opacity .25s ease;

}


.result-image:hover
.result-image-overlay {

    opacity: 1;

}


.result-image-overlay span {

    display: flex;

    align-items: center;

    gap: 8px;

    padding:
        10px 14px;

    border-radius:
        100px;

    font-size:
        .75rem;

    font-weight:
        600;

    color:
        #fff;

    background:
        rgba(0, 0, 0, .7);

    border:
        1px solid
        rgba(255, 255, 255, .2);

}


/* =========================================
   NÚMERO
========================================= */

.result-number {

    margin-top: 12px;

    text-align: center;

    font-size: .7rem;

    letter-spacing: .12em;

    font-weight: 700;

    color:
        rgba(231, 196, 92, .8);

}


/* =========================================
   SETAS
========================================= */

.results-nav {

    flex:
        0 0 auto;

    width: 48px;
    height: 48px;

    display: flex;

    justify-content: center;
    align-items: center;

    border-radius: 50%;

    border:
        1px solid
        rgba(231, 196, 92, .35);

    background:
        #171c24;

    color:
        #e7c45c;

    font-size:
        1rem;

    transition:
        all .25s ease;

}


.results-nav:hover {

    background:
        #e7c45c;

    color:
        #111;

    transform:
        scale(1.08);

}


.results-nav:disabled {

    opacity:
        .35;

    cursor:
        not-allowed;

}


.results-nav:disabled:hover {

    background:
        #171c24;

    color:
        #e7c45c;

    transform:
        none;

}


/* =========================================
   DOTS
========================================= */

.results-dots {

    display: flex;

    justify-content: center;

    gap: 8px;

    margin-top: 24px;

}


.result-dot {

    width: 8px;
    height: 8px;

    padding: 0;

    border: 0;

    border-radius: 50%;

    background:
        rgba(255, 255, 255, .2);

    transition:
        all .25s ease;

}


.result-dot.active {

    width: 26px;

    border-radius:
        20px;

    background:
        #e7c45c;

}


/* =========================================
   SEM RESULTADOS
========================================= */

.results-empty {

    display: flex;

    align-items: center;

    gap: 20px;

    padding: 32px;

    margin-bottom: 40px;

}


.results-empty {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 22px;

    padding: 38px 32px;

    margin-bottom: 40px;

    text-align: left;
}


.results-empty h3 {
    margin: 0 0 6px;
    font-size: 1.7rem;
}


.results-empty-icon {
    width: 62px;
    height: 62px;

    margin: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;
}

@media (max-width: 767px) {

    .results-empty {
        flex-direction: column;

        text-align: center;

        gap: 15px;

        padding: 32px 20px;
    }

}

/* =========================================
   FOTOS DA EDIÇÃO
========================================= */

.edition-photos {

    margin-top:
        40px;

}


/* =========================================
   RESPONSIVO
========================================= */


/* NOTEBOOK */

@media
(max-width: 1199px) {

    .result-slide {

        flex-basis:
            calc(
                (100% - 36px) / 3
            );

    }

}


/* TABLET */

@media
(max-width: 991px) {

    .edition-content {
        padding-top: 55px;
    }


    .official-results-header {

        align-items:
            flex-start;

    }


    .result-slide {

        flex-basis:
            calc(
                (100% - 18px) / 2
            );

    }

}


/* CELULAR */

@media
(max-width: 767px) {


    .official-results-header {

        flex-direction:
            column;

        gap:
            16px;

        margin-bottom:
            24px;

    }


    .results-counter {

        padding:
            9px 14px;

        font-size:
            .9rem;

    }


    .results-slider-wrap {

        gap:
            8px;

    }


    .results-nav {

        width:
            38px;

        height:
            38px;

        font-size:
            .8rem;

    }


    .result-slide {

        flex:
            0 0 100%;

    }


    .result-image {

        border-radius:
            12px;

    }


    .result-image-overlay {

        display:
            none;

    }


    .result-number {

        margin-top:
            10px;

    }


    .results-dots {

        margin-top:
            18px;

    }


    .edition-photos {

        margin-top:
            30px;

    }


}


/* CELULAR PEQUENO */

@media
(max-width: 420px) {


    .results-slider-wrap {

        gap:
            5px;

    }


    .results-nav {

        width:
            34px;

        height:
            34px;

    }


}

/* =========================================
   RESULTADO EM BREVE
========================================= */

.results-coming {
    display: inline-flex;
    align-items: center;

    padding: 12px 20px;

    border-radius: 100px;

    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .12em;

    color: #e7c45c;

    background: rgba(231, 196, 92, .06);

    border: 1px solid rgba(231, 196, 92, .25);
}


/* CARD SEM RESULTADOS */

.results-coming-box {
    display: flex;

    justify-content: center;
    align-items: center;

    gap: 20px;

    min-height: 170px;

    padding: 35px;

    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.025),
            rgba(255,255,255,.01)
        );

    border:
        1px solid rgba(231, 196, 92, .12);
}


.results-coming-icon {
    width: 64px;
    height: 64px;

    display: flex;

    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    border-radius: 16px;

    font-size: 1.4rem;

    color: #e7c45c;

    background: rgba(231, 196, 92, .08);

    border: 1px solid rgba(231, 196, 92, .2);
}


.results-coming-box h3 {
    margin: 0 0 7px;

    font-size: 1.4rem;

    font-family: 'Sora', sans-serif;
}


.results-coming-box p {
    margin: 0;

    color: rgba(255,255,255,.6);
}


/* CELULAR */

@media (max-width: 767px) {

    .results-coming-box {
        flex-direction: column;

        text-align: center;

        padding: 35px 20px;
    }

}

/* =========================================
   REMOVER DESCRIÇÃO DO LIGHTBOX - RESULTADOS
========================================= */

.glightbox-container .gslide-description {
    display: none !important;
}

.glightbox-container .gslide-image {
    margin-bottom: 0 !important;
}