*{
  box-sizing:border-box;
}

:root{
  --verde:#020b07;
  --verde2:#06150d;
  --verde3:#0c2117;
  --dourado:#d7ad54;
  --dourado-claro:#f0d27d;
  --vermelho:#991b16;
  --creme:#f5ead0;
  --cinza:#c8c0ae;
}

html{
  scroll-behavior:smooth;
}

html,body{
  margin:0;
  padding:0;
  max-width:100%;
  overflow-x:hidden;
  background:var(--verde);
  color:var(--creme);
  font-family:Arial,Helvetica,sans-serif;
}

body{
  min-width:0;
}

a{
  color:inherit;
}

img{
  max-width:100%;
  display:block;
}

/* =========================
   CABEÇALHO
========================= */

.topo{
  height:82px;
  display:flex;
  align-items:center;
  padding:0 4%;
  gap:30px;
  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:30;
  background:linear-gradient(
    180deg,
    rgba(1,8,5,.96) 0%,
    rgba(1,8,5,.78) 70%,
    transparent 100%
  );
}

.logo-texto{
  text-decoration:none;
  min-width:225px;
  display:flex;
  flex-direction:column;
  color:var(--dourado-claro);
  font-family:Georgia,"Times New Roman",serif;
}

.logo-texto span{
  font-size:10px;
  letter-spacing:.35em;
  margin-bottom:3px;
}

.logo-texto strong{
  font-size:15px;
  letter-spacing:.07em;
  font-weight:400;
}

.menu{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  flex:1;
}

.menu a{
  color:#eee4ce;
  text-decoration:none;
  font-size:11px;
  letter-spacing:.09em;
  transition:.25s;
  padding:10px 0;
  border-bottom:1px solid transparent;
}

.menu a:hover,
.menu a.ativo{
  color:var(--dourado-claro);
  border-bottom-color:var(--dourado);
}

.whatsapp-topo{
  text-decoration:none;
  border:1px solid var(--dourado);
  color:#fff5db;
  font-size:10px;
  letter-spacing:.12em;
  padding:11px 15px;
  border-radius:3px;
  transition:.25s;
}

.whatsapp-topo:hover{
  background:var(--dourado);
  color:#071109;
}

.menu-btn{
  display:none;
}

.mobilemenu{
  display:none;
}


/* =========================
   HERO
========================= */

.hero{
  min-height:760px;
  position:relative;
  display:flex;
  align-items:center;
  overflow:hidden;
  background:#020b07;
}

.hero-imagem{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(
      90deg,
      rgba(1,8,5,.97) 0%,
      rgba(1,8,5,.82) 30%,
      rgba(1,8,5,.28) 63%,
      rgba(1,8,5,.45) 100%
    ),
    url("assets/caboclo.jpg?v=4");
 background-size:auto 100%;
background-position:right center;
background-repeat:no-repeat;
transform:none;
}

.hero-sombra{
  position:absolute;
  inset:0;
  background:
    linear-gradient(
      0deg,
      #020b07 0%,
      transparent 25%,
      transparent 80%,
      rgba(0,0,0,.35) 100%
    );
}

.hero-conteudo{
  position:relative;
  z-index:3;
  width:min(1200px,92%);
  margin:0 auto;
  padding-top:75px;
}

.selo{
  color:var(--dourado);
  font-size:11px;
  letter-spacing:.24em;
  margin-bottom:35px;
}

.sobrelinha{
  color:#d5c7a5;
  letter-spacing:.2em;
  font-size:11px;
  margin:0 0 16px;
}

.hero h1{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(50px,6.2vw,88px);
  line-height:.98;
  font-weight:400;
  max-width:760px;
  margin:0;
  color:#f5ead0;
  text-shadow:0 5px 25px rgba(0,0,0,.5);
}

.hero h1 em{
  color:var(--dourado-claro);
  font-weight:400;
}

.hero-texto{
  max-width:580px;
  color:#d5cdbb;
  font-size:16px;
  line-height:1.75;
  margin:30px 0;
}

.hero-botoes{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.botao{
  display:inline-block;
  text-decoration:none;
  padding:15px 23px;
  font-size:11px;
  letter-spacing:.11em;
  border-radius:3px;
  transition:.25s;
  text-align:center;
}

.botao-vermelho{
  background:var(--vermelho);
  border:1px solid #ba352d;
  color:white;
}

.botao-vermelho:hover{
  background:#b52620;
  transform:translateY(-2px);
}

.botao-contorno{
  border:1px solid var(--dourado);
  color:#f6e9c6;
  background:rgba(0,0,0,.15);
}

.botao-contorno:hover{
  background:var(--dourado);
  color:#08110b;
}

.valores{
  margin-top:55px;
  display:flex;
  flex-wrap:wrap;
  gap:30px;
}

.valores span{
  color:#bba878;
  font-size:10px;
  letter-spacing:.22em;
}


/* =========================
   TÍTULOS
========================= */

.titulo-secao{
  text-align:center;
  max-width:800px;
  margin:0 auto 50px;
}

.titulo-secao span,
.mini-titulo{
  color:var(--dourado);
  font-size:10px;
  letter-spacing:.25em;
}

.titulo-secao h2,
.agenda h2,
.texto-casa h2,
.visite h2{
  font-family:Georgia,"Times New Roman",serif;
  font-weight:400;
  color:#f0dfb5;
}

.titulo-secao h2{
  font-size:clamp(34px,4vw,52px);
  margin:12px 0 20px;
}

.linha-dourada{
  width:75px;
  height:1px;
  margin:auto;
  background:var(--dourado);
}

.traco-vermelho{
  width:55px;
  height:3px;
  background:var(--vermelho);
  margin:22px 0;
}


/* =========================
   CARDS HOME
========================= */

.caminhos{
  padding:100px 5%;
  background:
    radial-gradient(circle at 50% 0,#10271b 0%,#05120c 40%,#020b07 78%);
}

.cards-home{
  max-width:1200px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.card-home{
  min-height:285px;
  padding:34px 27px;
  border:1px solid rgba(215,173,84,.38);
  background:
    linear-gradient(
      145deg,
      rgba(19,43,30,.8),
      rgba(2,11,7,.9)
    );
  text-decoration:none;
  transition:.3s;
  position:relative;
  overflow:hidden;
}

.card-home:before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:2px;
  background:linear-gradient(90deg,transparent,var(--dourado),transparent);
  opacity:.5;
}

.card-home:hover{
  transform:translateY(-7px);
  border-color:var(--dourado);
  box-shadow:0 18px 50px rgba(0,0,0,.35);
}

.icone-card{
  color:var(--dourado);
  font-size:27px;
  margin-bottom:30px;
}

.card-home h3{
  font-family:Georgia,serif;
  font-size:24px;
  font-weight:400;
  color:var(--dourado-claro);
  margin:0 0 17px;
}

.card-home p{
  color:#c7beaa;
  line-height:1.65;
  font-size:14px;
  margin-bottom:25px;
}

.card-home strong{
  color:var(--dourado);
  font-size:10px;
  letter-spacing:.12em;
}


/* =========================
   GIRAS
========================= */

.giras-home{
  min-height:620px;
  display:grid;
  grid-template-columns:1fr 1.15fr 1fr;
  background:#030c08;
  position:relative;
}

.orixa{
  overflow:hidden;
  position:relative;
}

.orixa:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    rgba(2,11,7,.15),
    rgba(2,11,7,.1),
    rgba(2,11,7,.8)
  );
}

.orixa-iansa:after{
  background:linear-gradient(
    90deg,
    rgba(2,11,7,.8),
    rgba(2,11,7,.1),
    rgba(2,11,7,.15)
  );
}

.orixa img{
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.78;
}

.agenda{
  position:relative;
  z-index:2;
  padding:80px 55px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:
    radial-gradient(circle at center,#10271b 0,#06150d 55%,#020b07 100%);
}

.agenda h2{
  font-size:clamp(36px,4vw,55px);
  line-height:1.05;
  margin:15px 0 0;
}

.agenda-intro{
  color:#c9c0ad;
  line-height:1.7;
  font-size:15px;
}

.horarios{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:15px;
  margin:20px 0;
}

.horarios div{
  border:1px solid rgba(215,173,84,.35);
  padding:20px;
  background:rgba(0,0,0,.25);
}

.horarios span{
  display:block;
  font-size:9px;
  letter-spacing:.15em;
  color:#b9a775;
  margin-bottom:7px;
}

.horarios strong{
  font-family:Georgia,serif;
  font-size:31px;
  font-weight:400;
  color:var(--dourado-claro);
}

.ordem{
  color:#d2c7ae;
  margin-bottom:25px;
}


/* =========================
   NOSSA CASA
========================= */

.nossa-casa{
  padding:110px max(5%,calc((100% - 1200px)/2));
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:85px;
  align-items:center;
  background:
    radial-gradient(circle at 15% 50%,#163224 0,#06150d 30%,#020b07 70%);
}

.foto-mae{
  position:relative;
  padding:20px;
}

.moldura-mae{
  position:relative;
  border:1px solid rgba(215,173,84,.65);
  padding:10px;
}

.moldura-mae:before{
  content:"";
  position:absolute;
  width:70%;
  height:70%;
  left:-20px;
  bottom:-20px;
  border-left:2px solid var(--vermelho);
  border-bottom:2px solid var(--vermelho);
}

.moldura-mae img{
  width:100%;
  max-height:580px;
  object-fit:cover;
  position:relative;
  z-index:2;
}

.texto-casa h2{
  font-size:clamp(40px,5vw,65px);
  line-height:1.05;
  margin:15px 0 0;
}

.texto-casa h2 em{
  color:var(--dourado-claro);
  font-weight:400;
}

.texto-casa p{
  color:#c9c0ad;
  line-height:1.8;
  font-size:15px;
  max-width:620px;
}

.texto-casa blockquote{
  border-left:2px solid var(--dourado);
  margin:30px 0;
  padding:8px 0 8px 25px;
  color:#e7d7ae;
  font-family:Georgia,serif;
  font-size:19px;
  font-style:italic;
  line-height:1.6;
}


/* =========================
   REGRAS
========================= */

.conduta{
  padding:100px 5%;
  background:#05110b;
}

.regras{
  max-width:1100px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.regra{
  text-align:center;
  padding:32px 22px;
  border-top:1px solid rgba(215,173,84,.35);
}

.regra>span{
  font-size:27px;
}

.regra h3{
  color:var(--dourado-claro);
  font-family:Georgia,serif;
  font-weight:400;
  font-size:21px;
}

.regra p{
  color:#bfb6a2;
  line-height:1.65;
  font-size:14px;
}


/* =========================
   VISITE
========================= */

.visite{
  padding:110px 20px;
  text-align:center;
  background:
    radial-gradient(circle at center,#173326 0,#07170f 38%,#020b07 75%);
  border-top:1px solid rgba(215,173,84,.2);
}

.visite h2{
  font-size:clamp(40px,5vw,64px);
  margin:15px 0 25px;
}

.endereco{
  color:#d1c6ae;
  line-height:1.8;
  font-size:16px;
}

.visite-botoes{
  margin-top:30px;
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
}


/* =========================
   RODAPÉ
========================= */

footer{
  min-height:150px;
  padding:35px 5%;
  background:#010704;
  border-top:1px solid rgba(215,173,84,.25);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;
  color:#887f6c;
  font-size:11px;
}

footer div{
  display:flex;
  flex-direction:column;
  gap:7px;
}

footer strong{
  color:var(--dourado);
  font-family:Georgia,serif;
  font-size:14px;
  font-weight:400;
}

footer span{
  letter-spacing:.1em;
}

.whatsapp-flutuante{
  position:fixed;
  z-index:60;
  right:22px;
  bottom:22px;
  width:54px;
  height:54px;
  border-radius:50%;
  background:#185f3d;
  border:1px solid #7caf87;
  color:white;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:23px;
  box-shadow:0 8px 25px rgba(0,0,0,.45);
  transition:.25s;
}

.whatsapp-flutuante:hover{
  transform:scale(1.08);
}


/* =========================
   PÁGINAS INTERNAS
   mantém compatibilidade
========================= */

.page{
  min-height:100vh;
  padding:120px 20px 70px;
  background:
    radial-gradient(circle at 50% 0,#163425 0,#06150d 35%,#020b07 75%);
}

.inner{
  max-width:1000px;
  margin:auto;
}

.brand{
  color:var(--dourado);
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:12px;
}

.page h1{
  font-family:Georgia,serif;
  font-weight:400;
  color:var(--dourado-claro);
  font-size:clamp(40px,7vw,65px);
  margin:18px 0 10px;
}

.page h2{
  font-family:Georgia,serif;
  color:var(--dourado-claro);
  font-weight:400;
}

.page p{
  font-size:17px;
  line-height:1.7;
  max-width:780px;
}

.rule{
  width:70px;
  height:3px;
  background:var(--vermelho);
  margin:18px 0 28px;
}

.card{
  border:1px solid rgba(215,173,84,.55);
  background:rgba(0,0,0,.32);
  padding:28px;
  border-radius:5px;
  margin:24px 0;
}

.btn{
  display:inline-block;
  border:1px solid var(--dourado);
  color:#fff;
  text-decoration:none;
  padding:13px 20px;
  border-radius:4px;
  margin:8px 8px 0 0;
}

.btn.primary{
  background:var(--vermelho);
}

.back{
  display:inline-block;
  color:var(--dourado-claro);
  text-decoration:none;
  margin-bottom:18px;
}

.grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.small{
  opacity:.8;
  font-size:14px;
}


/* =========================
   TABLET
========================= */

@media(max-width:1050px){

  .menu{
    gap:11px;
  }

  .menu a{
    font-size:9px;
  }

  .whatsapp-topo{
    display:none;
  }

  .cards-home{
    grid-template-columns:repeat(2,1fr);
  }

  .giras-home{
    grid-template-columns:1fr 1.3fr;
  }

  .orixa-iansa{
    display:none;
  }

  .nossa-casa{
    gap:45px;
  }

  .regras{
    grid-template-columns:repeat(2,1fr);
  }
}


/* =========================
   CELULAR
========================= */

@media(max-width:760px){

  .topo{
    position:absolute;
    height:68px;
    padding:0 17px;
    justify-content:space-between;
  }

  .logo-texto{
    min-width:0;
  }

  .logo-texto span{
    font-size:8px;
  }

  .logo-texto strong{
    font-size:12px;
  }

  .menu{
    display:none;
  }

  .menu-btn{
    display:block;
    background:transparent;
    border:1px solid var(--dourado);
    color:white;
    border-radius:3px;
    font-size:20px;
    padding:6px 10px;
  }

  .mobilemenu{
    display:none;
    position:fixed;
    z-index:55;
    top:68px;
    left:0;
    right:0;
    padding:15px 20px 22px;
    background:rgba(2,11,7,.98);
    border-bottom:1px solid var(--dourado);
  }

  .mobilemenu.open{
    display:grid;
  }

  .mobilemenu a{
    padding:13px 3px;
    color:#eee2c5;
    text-decoration:none;
    font-size:12px;
    letter-spacing:.1em;
    border-bottom:1px solid rgba(215,173,84,.18);
  }

  .hero{
    min-height:780px;
    align-items:flex-end;
  }

  .hero-imagem{
    background-image:
      linear-gradient(
        0deg,
        #020b07 3%,
        rgba(2,11,7,.83) 38%,
        rgba(2,11,7,.18) 73%,
        rgba(2,11,7,.35) 100%
      ),
      url("assets/caboclo.jpg");
    background-position:60% center;
  }

  .hero-conteudo{
    width:100%;
    padding:100px 22px 65px;
  }

  .selo{
    margin-bottom:25px;
    font-size:9px;
  }

  .sobrelinha{
    font-size:9px;
  }

  .hero h1{
    font-size:47px;
  }

  .hero-texto{
    font-size:15px;
    line-height:1.65;
  }

  .hero-botoes{
    display:grid;
  }

  .botao{
    width:100%;
  }

  .valores{
    gap:14px;
    margin-top:35px;
  }

  .valores span{
    font-size:8px;
  }

  .caminhos{
    padding:75px 20px;
  }

  .cards-home{
    grid-template-columns:1fr;
  }

  .card-home{
    min-height:auto;
  }

  .giras-home{
    display:flex;
    flex-direction:column;
  }

  .orixa{
    height:340px;
  }

  .orixa-xango:after{
    background:linear-gradient(0deg,#06150d 0%,transparent 55%);
  }

  .agenda{
    padding:55px 22px 65px;
  }

  .agenda h2{
    font-size:42px;
  }

  .horarios{
    grid-template-columns:1fr 1fr;
  }

  .nossa-casa{
    padding:75px 20px;
    grid-template-columns:1fr;
    gap:55px;
  }

  .foto-mae{
    padding:10px;
  }

  .texto-casa h2{
    font-size:46px;
  }

  .conduta{
    padding:75px 20px;
  }

  .regras{
    grid-template-columns:1fr;
  }

  .regra{
    padding:25px 15px;
  }

  .visite{
    padding:80px 20px;
  }

  footer{
    flex-direction:column;
    text-align:center;
    justify-content:center;
  }

  .grid{
    grid-template-columns:1fr;
  }

  .page{
    padding-top:95px;
  }

  .page p{
    font-size:16px;
  }
}


/* =========================
   CELULARES PEQUENOS
========================= */

@media(max-width:430px){

  .hero h1{
    font-size:41px;
  }

  .horarios{
    grid-template-columns:1fr;
  }

  .agenda h2{
    font-size:38px;
  }

  .texto-casa h2{
    font-size:40px;
  }

  .titulo-secao h2{
    font-size:36px;
  }
}
/* =========================================
   GIRAS HOME - VERSÃO SEM IMAGENS ANTIGAS
========================================= */

.giras-home.giras-sem-imagens{
  min-height:620px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:90px 20px;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 45%,
      rgba(31,72,50,.55) 0%,
      rgba(7,28,18,.92) 35%,
      #020b07 72%);
}

.giras-home.giras-sem-imagens::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  border:1px solid rgba(215,173,84,.10);
  border-radius:50%;
  left:-250px;
  top:50%;
  transform:translateY(-50%);
}

.giras-home.giras-sem-imagens::after{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  border:1px solid rgba(215,173,84,.10);
  border-radius:50%;
  right:-250px;
  top:50%;
  transform:translateY(-50%);
}

.agenda-central{
  width:min(760px,100%);
  padding:65px 70px;
  text-align:center;
  align-items:center;
  position:relative;
  z-index:2;
  border:1px solid rgba(215,173,84,.35);
  background:
    linear-gradient(145deg,
      rgba(12,40,27,.92),
      rgba(2,11,7,.96));
  box-shadow:0 30px 80px rgba(0,0,0,.35);
}

.agenda-central .traco-vermelho{
  margin:24px auto;
}

.agenda-central .agenda-intro{
  max-width:530px;
  margin:0 auto 20px;
}

.agenda-central .horarios{
  width:100%;
  max-width:570px;
}

.agenda-central .ordem{
  margin-top:15px;
}

.agenda-frase{
  color:#b9a982;
  font-family:Georgia,serif;
  font-style:italic;
  line-height:1.6;
  margin:5px 0 30px;
}

@media(max-width:760px){

  .giras-home.giras-sem-imagens{
    min-height:auto;
    padding:65px 18px;
  }

  .agenda-central{
    padding:48px 22px;
  }

  .agenda-central h2{
    font-size:40px;
  }
}
/* CORREÇÃO FINAL - BLOCO GIRAS CENTRALIZADO */

.giras-home.giras-sem-imagens{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  width:100% !important;
  padding:90px 20px !important;
}

.giras-home.giras-sem-imagens .agenda.agenda-central{
  width:min(760px,100%) !important;
  max-width:760px !important;
  margin:0 auto !important;
  padding:65px 70px !important;
  text-align:center !important;
  align-items:center !important;
  background:
    linear-gradient(
      145deg,
      rgba(12,40,27,.96),
      rgba(2,11,7,.98)
    ) !important;
  border:1px solid rgba(215,173,84,.38) !important;
}

.giras-home.giras-sem-imagens .agenda-central .traco-vermelho{
  margin:24px auto !important;
}

.giras-home.giras-sem-imagens .agenda-central .agenda-intro{
  margin:0 auto 22px !important;
}

.giras-home.giras-sem-imagens .agenda-central .horarios{
  width:100% !important;
  max-width:570px !important;
  margin:22px auto !important;
}

@media(max-width:760px){
  .giras-home.giras-sem-imagens{
    padding:60px 18px !important;
  }

  .giras-home.giras-sem-imagens .agenda.agenda-central{
    padding:45px 22px !important;
  }
}
/* =========================================
   PRÓXIMA GIRA - HOME
========================================= */

.proxima-gira-home{
  width:100%;
  padding:100px 6%;
  background:
    radial-gradient(circle at 75% 50%,rgba(120,18,15,.18),transparent 38%),
    linear-gradient(180deg,#020b07 0%,#06150d 50%,#020b07 100%);
}

.proxima-gira-box{
  width:min(1180px,100%);
  margin:0 auto;
  display:grid;
  grid-template-columns:1.15fr .85fr;
  border:1px solid rgba(215,173,84,.38);
  background:rgba(3,17,11,.88);
  box-shadow:0 35px 90px rgba(0,0,0,.35);
}

.proxima-gira-info{
  padding:70px;
}

.proxima-gira-dia{
  margin:20px 0 8px;
  color:#c8c0ae;
  font-size:13px;
  letter-spacing:.22em;
}

.proxima-gira-info h2{
  margin:0;
  color:#f5ead0;
  font-family:Georgia,serif;
  font-size:clamp(46px,5vw,72px);
  line-height:.98;
  font-weight:400;
}

.proxima-gira-info h2 em{
  color:#f0d27d;
  font-weight:400;
}

.proxima-gira-texto{
  max-width:620px;
  margin:25px 0;
  color:#c8c0ae;
  font-size:16px;
  line-height:1.8;
}

.proxima-gira-dados{
  display:grid;
  grid-template-columns:1fr 1fr 1.4fr;
  gap:12px;
  margin:32px 0;
}

.proxima-gira-dados div{
  min-height:105px;
  padding:20px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border:1px solid rgba(215,173,84,.32);
  background:rgba(0,0,0,.18);
}

.proxima-gira-dados span{
  color:#d7ad54;
  font-size:10px;
  letter-spacing:.18em;
  margin-bottom:9px;
}

.proxima-gira-dados strong{
  color:#f5ead0;
  font-family:Georgia,serif;
  font-size:23px;
  font-weight:400;
}

.proxima-gira-visual{
  min-height:590px;
  position:relative;
  overflow:hidden;
  padding:60px 40px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  background:
    radial-gradient(circle at 50% 42%,
      rgba(156,24,18,.42) 0%,
      rgba(55,12,10,.28) 28%,
      rgba(2,11,7,.98) 70%);
  border-left:1px solid rgba(215,173,84,.25);
}

.proxima-gira-visual::before{
  content:"";
  position:absolute;
  width:390px;
  height:390px;
  border:1px solid rgba(215,173,84,.18);
  border-radius:50%;
}

.proxima-gira-visual::after{
  content:"";
  position:absolute;
  width:300px;
  height:300px;
  border:1px solid rgba(153,27,22,.35);
  border-radius:50%;
}

.proxima-gira-visual > *{
  position:relative;
  z-index:2;
}

.proxima-gira-simbolo{
  color:#d7ad54;
  font-size:36px;
  margin-bottom:28px;
}

.proxima-gira-visual span{
  color:#d7ad54;
  font-size:10px;
  letter-spacing:.22em;
}

.proxima-gira-visual strong{
  margin:28px 0;
  color:#f5ead0;
  font-family:Georgia,serif;
  font-size:clamp(48px,5vw,70px);
  line-height:.9;
  font-weight:400;
  letter-spacing:.03em;
}

.proxima-gira-visual strong em{
  color:#b5221c;
  font-size:40px;
  font-weight:400;
}

.proxima-gira-visual p{
  color:#a99c80;
  font-family:Georgia,serif;
  font-style:italic;
}

@media(max-width:850px){

  .proxima-gira-home{
    padding:65px 18px;
  }

  .proxima-gira-box{
    grid-template-columns:1fr;
  }

  .proxima-gira-info{
    padding:45px 25px;
  }

  .proxima-gira-dados{
    grid-template-columns:1fr 1fr;
  }

  .proxima-gira-dados div:last-child{
    grid-column:1/-1;
  }

  .proxima-gira-visual{
    min-height:430px;
    border-left:0;
    border-top:1px solid rgba(215,173,84,.25);
  }
}

@media(max-width:480px){

  .proxima-gira-info h2{
    font-size:43px;
  }

  .proxima-gira-dados{
    grid-template-columns:1fr;
  }

  .proxima-gira-dados div:last-child{
    grid-column:auto;
  }

  .proxima-gira-visual{
    min-height:390px;
  }

  .proxima-gira-visual::before{
    width:300px;
    height:300px;
  }

  .proxima-gira-visual::after{
    width:225px;
    height:225px;
  }
}
/* AJUSTE DO CABOCLO NO HERO */

.hero{
  background-size:cover !important;
  background-position:72% 22% !important;
}

@media(min-width:1000px){
  .hero{
    background-size:auto 112% !important;
    background-position:82% center !important;
    background-repeat:no-repeat !important;
  }
}
/* ===== LOGO PEQUENA DO CABEÇALHO ===== */

.logo-topo{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  width:auto !important;
  height:82px !important;
  overflow:visible !important;
  text-decoration:none !important;
  flex-shrink:0 !important;
}

.logo-topo img{
  width:75px !important;
  height:75px !important;
  max-width:75px !important;
  max-height:75px !important;
  object-fit:contain !important;
  display:block !important;
}

.logo-topo div{
  display:block !important;
}

.logo-topo span{
  display:block !important;
  font-size:8px !important;
  letter-spacing:3px !important;
}

.logo-topo strong{
  display:block !important;
  font-size:13px !important;
  white-space:nowrap !important;
}
/* =====================================================
   PROXIMA GIRA — EXU E POMBAGIRA PREMIUM
===================================================== */

.proxima-gira-home{
  padding:90px 6%;
  background:
    radial-gradient(circle at 85% 50%,rgba(120,15,12,.10),transparent 34%),
    #020b07;
}

.proxima-gira-box{
  width:min(1180px,100%);
  margin:auto;
  display:grid;
  grid-template-columns:1.08fr .92fr;
  border:1px solid rgba(215,173,84,.35);
  background:#031009;
  overflow:hidden;
}


/* LADO ESQUERDO */

.proxima-gira-info{
  padding:72px 70px;
}

.proxima-etiqueta{
  display:block;
  color:#d7ad54;
  font-size:10px;
  letter-spacing:.32em;
  margin-bottom:22px;
}

.proxima-dia{
  display:block;
  color:#e7ddc7;
  font-size:13px;
  letter-spacing:.22em;
  margin-bottom:8px;
}

.proxima-gira-info h2{
  margin:0;
  color:#f5ead0;
  font-family:Georgia,serif;
  font-size:clamp(50px,5vw,70px);
  line-height:.95;
  font-weight:400;
}

.proxima-gira-info h2 em{
  display:block;
  color:#e3bd5c;
  font-weight:400;
}

.proxima-texto{
  max-width:560px;
  margin:28px 0 34px;
  color:#c8c0ae;
  line-height:1.8;
}

.proxima-gira-dados{
  display:grid;
  grid-template-columns:1fr 1fr 1.35fr;
  gap:12px;
  margin-bottom:32px;
}

.proxima-gira-dados div{
  min-height:116px;
  padding:24px 20px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border:1px solid rgba(215,173,84,.35);
  background:rgba(0,0,0,.16);
}

.proxima-gira-dados span{
  color:#d7ad54;
  font-size:9px;
  letter-spacing:.20em;
  margin-bottom:10px;
}

.proxima-gira-dados strong{
  color:#f5ead0;
  font-family:Georgia,serif;
  font-size:23px;
  line-height:1.25;
  font-weight:400;
}


/* LADO DIREITO */

.gira-premium{
  min-height:620px;
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:60px 35px;
  text-align:center;

  background:
    linear-gradient(
      180deg,
      rgba(2,7,5,.22) 0%,
      rgba(20,5,4,.28) 45%,
      rgba(2,7,5,.82) 100%
    ),
    url("assets/exu-pombagira.jpg?v=1");

  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}


.gira-luz{
  position:absolute;
  width:230px;
  height:230px;
  border-radius:50%;
  background:rgba(150,20,15,.16);
  filter:blur(55px);
}

.gira-conteudo{
  position:relative;
  z-index:3;
  width:100%;
}

.gira-superior{
  display:block;
  color:#cda64c;
  font-size:9px;
  letter-spacing:.27em;
  margin-bottom:26px;
}

.gira-simbolo{
  color:#e3bd5c;
  font-size:30px;
  margin-bottom:24px;
}

.gira-linha{
  display:block;
  color:#bda66f;
  font-size:10px;
  letter-spacing:.34em;
  margin-bottom:15px;
}

.gira-conteudo h3{
  margin:0;
  color:#f5ead0;
  font-family:Georgia,serif;
  font-size:clamp(50px,5vw,72px);
  line-height:.90;
  font-weight:400;
  letter-spacing:.03em;
}

.gira-conteudo h3 small{
  display:block;
  margin:16px 0;
  color:#b5221c;
  font-size:31px;
  font-weight:400;
}

.gira-separador{
  margin:30px auto 22px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:12px;
}

.gira-separador i{
  width:58px;
  height:1px;
  background:rgba(215,173,84,.45);
}

.gira-separador span{
  color:#b5221c;
  font-size:11px;
}

.gira-conceito{
  color:#d7ad54;
  font-size:9px;
  letter-spacing:.20em;
}

.gira-frase{
  margin-top:28px;
  color:#b9aa8b;
  font-family:Georgia,serif;
  font-size:15px;
  font-style:italic;
}

.gira-rodape{
  margin-top:35px;
  color:#8d8066;
  font-size:8px;
  letter-spacing:.25em;
}


/* CELULAR */

@media(max-width:850px){

  .proxima-gira-home{
    padding:60px 18px;
  }

  .proxima-gira-box{
    grid-template-columns:1fr;
  }

  .proxima-gira-info{
    padding:45px 25px;
  }

  .proxima-gira-dados{
    grid-template-columns:1fr;
  }

  .gira-premium{
    min-height:520px;
    border-top:1px solid rgba(215,173,84,.25);
  }

  .gira-premium::before{
    width:340px;
    height:340px;
  }

  .gira-premium::after{
    width:270px;
    height:270px;
  }

}
/* IDENTIFICAÇÃO SOBRE A FOTO DA PRÓXIMA GIRA */

.gira-conteudo-foto{
  position:absolute;
  inset:0;
  z-index:4;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:0 35px 42px;
}

.gira-identificacao{
  width:100%;
  max-width:410px;
  padding:18px 22px;
  text-align:center;

  background:rgba(2,7,5,.72);
  border-top:1px solid rgba(215,173,84,.55);
  border-bottom:1px solid rgba(215,173,84,.25);
  backdrop-filter:blur(5px);
}

.gira-identificacao span{
  display:block;
  margin-bottom:7px;
  color:#d7ad54;
  font-size:8px;
  letter-spacing:.28em;
}

.gira-identificacao strong{
  display:block;
  color:#f5ead0;
  font-family:Georgia,serif;
  font-size:22px;
  font-weight:400;
  letter-spacing:.04em;
}

.gira-identificacao strong em{
  color:#b5221c;
  font-style:normal;
}

.gira-identificacao p{
  margin:8px 0 0;
  color:#c8c0ae;
  font-size:9px;
  letter-spacing:.20em;
}

/* =====================================================
   POST SEMANAL — PRÓXIMA GIRA
   Área preparada para arte 4:5 do Instagram
===================================================== */

.post-proxima-gira{
  min-height:620px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:35px;
  overflow:hidden;

  background:
    radial-gradient(
      circle at 50% 40%,
      rgba(153,27,22,.18) 0%,
      rgba(2,11,7,.15) 35%,
      rgba(2,11,7,.98) 75%
    ),
    #020b07;

  border-left:1px solid rgba(215,173,84,.25);
}


/* Placeholder enquanto não houver post */

.post-gira-placeholder{
  width:min(390px,100%);
  aspect-ratio:4 / 5;

  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;

  padding:45px 30px;
  text-align:center;

  border:1px solid rgba(215,173,84,.45);

  background:
    linear-gradient(
      145deg,
      rgba(3,15,10,.98),
      rgba(26,8,7,.94)
    );

  box-shadow:
    0 30px 70px rgba(0,0,0,.45),
    inset 0 0 60px rgba(215,173,84,.025);
}


.post-gira-placeholder > span{
  color:#d7ad54;
  font-size:9px;
  letter-spacing:.30em;
}


.post-gira-simbolo{
  margin:35px 0 25px;
  color:#d7ad54;
  font-size:28px;
}


.post-gira-placeholder strong{
  color:#f5ead0;
  font-family:Georgia,serif;
  font-size:48px;
  line-height:.95;
  font-weight:400;
}


.post-gira-placeholder p{
  margin:28px 0;
  color:#c8c0ae;
  font-family:Georgia,serif;
  font-size:15px;
  line-height:1.6;
  font-style:italic;
}


.post-gira-placeholder small{
  margin-top:15px;
  color:#8e8065;
  font-size:8px;
  letter-spacing:.22em;
}


/* Quando colocarmos a arte semanal */

.post-proxima-gira > img{
  display:block;
  width:min(390px,100%);
  aspect-ratio:4 / 5;
  object-fit:cover;

  border:1px solid rgba(215,173,84,.45);

  box-shadow:
    0 30px 70px rgba(0,0,0,.50);
}


/* CELULAR */

@media(max-width:850px){

  .post-proxima-gira{
    min-height:auto;
    padding:35px 20px;
    border-left:0;
    border-top:1px solid rgba(215,173,84,.25);
  }

  .post-gira-placeholder,
  .post-proxima-gira > img{
    width:min(420px,100%);
  }

}

/* ASSINATURA MÃE LUCIANA - FOTO */

.foto-mae-assinatura{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:5px !important;
  margin-top:0 !important;
}

.foto-mae-assinatura strong{
  display:block !important;
  font-family:Georgia, serif !important;
  font-size:24px !important;
  font-weight:400 !important;
  color:#d7ad54 !important;
  line-height:1.1 !important;
}

.foto-mae-assinatura span{
  display:block !important;
  font-size:9px !important;
  letter-spacing:2.2px !important;
  color:#f5ead6 !important;
  line-height:1.4 !important;
}

/* =========================================================
   CONDUTA PREMIUM — ANTES DE SUA VISITA
   ========================================================= */

.conduta-premium{
  position:relative;
  padding:110px 6% 105px;
  background:
    radial-gradient(circle at 50% 0%,
      rgba(129,94,28,.10) 0%,
      rgba(2,20,13,0) 38%),
    linear-gradient(180deg,#02150e 0%,#031910 55%,#020f0a 100%);
  overflow:hidden;
}

.conduta-premium::before{
  content:"";
  position:absolute;
  top:0;
  left:8%;
  right:8%;
  height:1px;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(215,173,84,.45),
    transparent
  );
}


/* CABEÇALHO */

.conduta-cabecalho{
  max-width:900px;
  margin:0 auto 65px;
  text-align:center;
}

.conduta-cabecalho .mini-titulo{
  display:block;
  margin-bottom:20px;
  color:#d7ad54;
  font-size:10px;
  letter-spacing:.38em;
}

.conduta-cabecalho h2{
  margin:0;
  color:#f5ead6;
  font-family:Georgia,serif;
  font-size:clamp(42px,5vw,70px);
  line-height:1.02;
  font-weight:400;
}

.conduta-cabecalho h2 em{
  color:#d7ad54;
  font-weight:400;
}

.conduta-cabecalho .traco-vermelho{
  width:55px;
  height:3px;
  margin:28px auto;
  background:#991b16;
}

.conduta-cabecalho p{
  max-width:720px;
  margin:0 auto;
  color:#c8c0ae;
  font-size:15px;
  line-height:1.9;
}


/* CARDS */

.regras-premium{
  max-width:1180px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}

.regra-premium{
  position:relative;
  min-height:390px;
  padding:38px 28px 32px;
  text-align:left;

  background:
    linear-gradient(
      145deg,
      rgba(11,35,25,.96),
      rgba(3,20,14,.96)
    );

  border:1px solid rgba(215,173,84,.28);
  transition:
    transform .3s ease,
    border-color .3s ease,
    box-shadow .3s ease;
}

.regra-premium:hover{
  transform:translateY(-7px);
  border-color:rgba(215,173,84,.72);
  box-shadow:0 24px 55px rgba(0,0,0,.32);
}


/* NÚMERO */

.regra-numero{
  position:absolute;
  top:25px;
  right:25px;
  color:rgba(215,173,84,.38);
  font-family:Georgia,serif;
  font-size:36px;
  line-height:1;
}


/* SÍMBOLO */

.regra-icone{
  width:52px;
  height:52px;
  margin-bottom:34px;

  display:flex;
  align-items:center;
  justify-content:center;

  border:1px solid rgba(215,173,84,.48);
  border-radius:50%;

  color:#d7ad54;
  font-size:21px;
}


/* TEXTOS */

.regra-etiqueta{
  display:block;
  margin-bottom:13px;
  color:#d7ad54;
  font-size:8px;
  letter-spacing:.24em;
}

.regra-premium h3{
  margin:0 0 20px;
  color:#f5ead6;
  font-family:Georgia,serif;
  font-size:27px;
  font-weight:400;
}

.regra-premium p{
  margin:0;
  color:#bdb5a4;
  font-size:14px;
  line-height:1.8;
}


/* MENSAGEM FINAL */

.conduta-mensagem{
  max-width:1180px;
  margin:55px auto 0;
  padding:34px 40px;

  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:24px;

  border-top:1px solid rgba(215,173,84,.35);
  border-bottom:1px solid rgba(215,173,84,.18);

  background:rgba(0,0,0,.12);
}

.conduta-mensagem > span{
  color:#d7ad54;
  font-size:22px;
}

.conduta-mensagem p{
  margin:0;
  color:#ddd2bd;
  font-family:Georgia,serif;
  font-size:18px;
  line-height:1.55;
}

.conduta-mensagem p strong{
  color:#f5ead6;
  font-weight:400;
}

.conduta-mensagem small{
  color:#d7ad54;
  font-size:8px;
  letter-spacing:.20em;
  white-space:nowrap;
}


/* RESPONSIVO */

@media(max-width:1000px){

  .regras-premium{
    grid-template-columns:repeat(2,1fr);
  }

  .conduta-mensagem{
    grid-template-columns:auto 1fr;
  }

  .conduta-mensagem small{
    grid-column:2;
  }
}

@media(max-width:650px){

  .conduta-premium{
    padding:80px 22px;
  }

  .regras-premium{
    grid-template-columns:1fr;
  }

  .regra-premium{
    min-height:auto;
  }

  .conduta-mensagem{
    padding:28px 22px;
    grid-template-columns:1fr;
  }

  .conduta-mensagem small{
    grid-column:1;
    white-space:normal;
    line-height:1.7;
  }
}

.regra-premium .regra-etiqueta{
  font-size:10px !important;
  letter-spacing:.16em !important;
  line-height:1.55 !important;
  max-width:190px;
}

/* =========================================================
   ÍCONES PREMIUM — REGRAS DA CASA
   ========================================================= */

.regra-icone{
  width:52px !important;
  height:52px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid rgba(215,173,84,.55) !important;
  border-radius:50% !important;
  margin-bottom:34px !important;
}

.regra-icone svg{
  width:25px !important;
  height:25px !important;

  fill:none !important;
  stroke:#d7ad54 !important;
  stroke-width:1.5 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;

  display:block !important;
}

.regra-icone svg path,
.regra-icone svg rect,
.regra-icone svg circle,
.regra-icone svg line{
  fill:none !important;
  stroke:#d7ad54 !important;
  stroke-width:1.5 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}

/* =====================================================
   RODAPÉ — IDENTIDADE COBRA CORAL
===================================================== */

.footer-cobra{
  position:relative !important;
  min-height:250px !important;
  overflow:hidden !important;
  background:#010b07 !important;
  border-top:1px solid rgba(215,173,84,.35) !important;
}

/* Cobra Coral atravessando o rodapé */
.footer-cobra-arte{
  position:absolute !important;
  left:0 !important;
  bottom:0 !important;

  width:64% !important;
  height:100% !important;

  background-image:url("assets/cobra-rodape.png?v=3") !important;
  background-repeat:no-repeat !important;
  background-position:left center !important;
  background-size:contain !important;

  z-index:1 !important;
  pointer-events:none !important;
}

/* Informações do rodapé */
.footer-conteudo{
  position:relative !important;
  z-index:2 !important;

  min-height:250px !important;
  width:100% !important;

  display:grid !important;
  grid-template-columns:1fr auto !important;
  grid-template-rows:auto auto !important;

  align-content:center !important;
  gap:18px 50px !important;

  padding:45px 6% 45px 58% !important;
}

/* Marca */
.footer-marca{
  grid-column:2 !important;
}

.footer-marca strong{
  display:block !important;
  color:#d7ad54 !important;
  font-family:Georgia,serif !important;
  font-size:15px !important;
  font-weight:400 !important;
  letter-spacing:.02em !important;
}

.footer-marca span{
  display:block !important;
  margin-top:8px !important;
  color:#c8c0ae !important;
  font-size:11px !important;
  letter-spacing:.12em !important;
}

/* Localização */
.footer-local{
  grid-column:2 !important;
  margin:0 !important;
  color:#c8c0ae !important;
  font-size:11px !important;
}

/* Copyright */
.footer-cobra .copyright{
  grid-column:2 !important;
  margin:0 !important;
  color:#8f897d !important;
  font-size:10px !important;
}

/* Mobile */
@media(max-width:850px){

  .footer-cobra{
    min-height:360px !important;
  }

  .footer-cobra-arte{
    width:100% !important;
    height:190px !important;
    bottom:0 !important;
    background-position:center bottom !important;
  }

  .footer-conteudo{
    min-height:360px !important;
    display:block !important;
    padding:45px 25px 190px !important;
    text-align:center !important;
  }

  .footer-marca,
  .footer-local,
  .footer-cobra .copyright{
    margin-bottom:14px !important;
  }
}/* =====================================================
   PRÓXIMA GIRA - ARTE CABOCLOS
===================================================== */

.post-gira-caboclos{
  position:relative !important;
  overflow:hidden !important;

  background:
    linear-gradient(
      180deg,
      rgba(1,10,6,.08) 0%,
      rgba(1,10,6,.18) 45%,
      rgba(1,10,6,.35) 100%
    ),
    url("assets/gira-caboclos.jpg?v=1") center center / cover no-repeat !important;

  border:1px solid rgba(215,173,84,.65) !important;
}

/* A arte já possui toda a programação escrita.
   Escondemos o texto HTML do card para não duplicar. */
.post-gira-caboclos > *{
  visibility:hidden !important;
}

