:root {
  --primary-color: #f2e0ae;
  --secondary-color: #66161a;
  --terciary-color: #053145;
  --bg-color: #0d0d0d;
  --text-ligth-color: #ffffff;
}

/* Nohemi Regular */
@font-face {
  font-family: "Nohemi";
  src: url("/assets/fonts/Nohemi-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/* Nohemi Bold */
@font-face {
  font-family: "Nohemi";
  src: url("/assets/fonts/Nohemi-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: "Nohemi", sans-serif;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

main {
  max-width: 100%;
  margin: 0 auto;
}

/* HERO */
.hero {
  display: flex;
  flex-direction: column;

  background-color: var(--secondary-color);

  position: relative;
  width: 100%;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.data {
  max-width: 12rem;
  align-self: center;
}

.text-container {
  padding: 0 1rem;
}
.text {
  font-size: clamp(1.125rem, 0.85rem + 1.2vw, 2rem);
  text-align: center;
  color: white;
  line-height: clamp(1.5rem, 1rem + 2.22vw, 3rem);
}

.hero-video-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover;
  z-index: 1;

  mix-blend-mode: color-dodge;
  opacity: 0.35;
}

.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #66161ac0;
  z-index: 2;
}

.hero-content {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  position: relative;
  z-index: 3;
  text-align: center;
  color: #ffffff;
  width: 100%;
}

.text-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}

/* BTN */
.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  padding: 0.4rem 0.4rem 0.4rem 1.5rem;
  gap: 1rem;
  font-size: 1.125rem;
  line-height: 1;
  font-weight: bold;
  text-transform: uppercase;
  text-decoration: none;
  background-color: white;
  color: var(--secondary-color);
  border-radius: 5rem;

  transition: all ease-in-out 0.3s;
}

.icon {
  background: var(--secondary-color);
  border-radius: 20rem;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  transform: rotate(0);

  transition: all ease-in-out 0.3s;
}

svg path {
  transition: all ease-in-out 0.3s;
}

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

.btn:hover .icon {
  transform: rotate(45deg);
  fill: var(--primary-color);
}
.btn:hover svg path {
  fill: var(--primary-color);
}

/* EVENTO */
.evento {
  display: flex;
  flex-direction: column;
  padding: 6rem 1rem;
  gap: 3rem;
}

.evento__content {
  display: flex;
  flex-direction: column;
  gap: 8rem;
}

.evento__title {
  font-size: clamp(3rem, 1.33rem + 7.41vw, 8rem);
  text-transform: uppercase;
  max-width: 100%;
}

.evento__image-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  width: 100%;
  position: relative;
  grid-template-areas: ". imgArea imgArea imgArea";
}

.evento__img {
  object-fit: cover;
  width: 100%;
  height: 130%;
  grid-area: imgArea; /* Vinculado à área acima */
}

.evento__img-close {
  position: absolute;
  object-fit: cover;
  width: 10rem;
  height: 13rem;
  top: 85%;
  left: 0%;
  transform: translate(0%, 0%);
}

.evento__asterisc {
  position: absolute;
  top: -4rem;
  left: -6rem;
  width: 100%;
  height: 8rem;
}

.evento__text-container {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 13rem 1rem 0rem 1rem;
}

.evento__text-title {
  font-size: 2rem;
  font-weight: bold;
  text-align: end;
}

.evento__fome {
  height: 100%;
  width: 100%;
}

.evento__text-complemento {
  display: flex;
  gap: 1rem;
  flex-direction: row;
  align-items: flex-start;
}

.evento__text-complemento svg {
  height: 1.5rem;
}

.evento__text-description {
  font-size: clamp(1.125rem, 0.85rem + 1.2vw, 2rem);
  line-height: clamp(1.5rem, 1rem + 2.22vw, 3rem);
  color: var(--bg-color);
  font-weight: bold;
}

/* CARDS */

.cards-container {
  display: flex;
  flex-direction: column;

  gap: 3rem;
  padding: 2rem 1rem 6rem 1rem;
}

.card {
  font-size: 1.5rem;
  color: var(--secondary-color);
  text-align: center;
  border: var(--secondary-color) 1px solid;
  border-radius: 100%;
  position: relative;
  padding: 2rem 1rem;
  width: 100%;
}
.card svg {
  position: absolute;
  height: 3rem;
  top: 0%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}

.esquerda {
  transform: rotate(-5deg);
}
.direita {
  transform: rotate(5deg);
}

/* SEÇÃO DESPERTAR */

.despertar {
  background-color: var(--terciary-color);
  height: fit-content;
  padding: 6rem 1rem;
  position: relative;
  width: 100%;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.despertar__video-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover;
  z-index: 1;
  mix-blend-mode: color-dodge;
  opacity: 0.35;
}

.despertar__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #05314575;
  z-index: 2;
}

.despertar__content {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 3;
  width: 100%;
}

.despertar__inner {
  display: flex;
  flex-direction: column;
  gap: 8rem;
}

.despertar__title-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
}

.despertar__title-group svg {
  height: 1.8rem;
}

.despertar__momento {
  font-size: clamp(1rem, 1.2rem + 2.67vw, 3.8rem);
  text-align: center;
  font-weight: 400;
  max-width: 100%;
  color: white;
}

.despertar__text-header {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.despertar__text-header img {
  width: 100%;
  height: auto;
}

.despertar__subtitle-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

.despertar__subtitle-group svg {
  height: 1.8rem;
}

.despertar__momento--preparando {
  text-align: center;
  max-width: 100%;
}

.despertar__image-container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  width: 100%;
  position: relative;
  grid-template-areas: ". imgArea imgArea imgArea";
}

.despertar__img {
  object-fit: cover;
  width: 100%;
  height: 130%;
  grid-area: imgArea;
}

.despertar__img-close {
  position: absolute;
  object-fit: cover;
  width: 10rem;
  height: 13rem;
  top: 85%;
  left: 0%;
}

.despertar__asterisc {
  position: absolute;
  top: -4rem;
  left: -6rem;
  width: 100%;
  height: 8rem;
}

.despertar__description-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
}

.despertar__description {
  padding: 6rem 0 0 0;
  font-size: clamp(1.125rem, 0.85rem + 1.2vw, 2rem);
  text-align: center;
  color: white;
  line-height: 1.6;
}

.ingressos-titulo {
  color: var(--bg-color);
  font-size: clamp(3rem, 1.33rem + 7.41vw, 8rem);
  text-transform: uppercase;
}

.ingressos {
  padding: 8rem 1rem;
}
.ingressos-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6rem;
}

.ingressos-svg-container {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: relative;
  max-width: 20rem;
  align-self: center;
}
.ingressos-svg-container svg {
  height: 4rem;
  position: absolute;
  left: -5rem;
  top: -1rem;
}
.garanta {
  font-size: 2rem;
  font-weight: bold;
  z-index: 1;
}

.ingresso_mobile {
  width: 100%;
}
.ingresso_desktop {
  display: none;
}

.camisetas_itens {
  display: flex;
  flex-direction: column;
}
.foto_camisetas {
  width: 100%;
  margin-top: 1rem;
}

.faq-section {
  background-color: var(--terciary-color);
  padding: 9rem 2rem;
  display: flex;
  flex-direction: column;
  align-items: center;

  margin: 0 auto;
}

.faq-title {
  font-size: clamp(3rem, 1.33rem + 7.41vw, 8rem);
  text-transform: uppercase;
  color: white;
  padding-bottom: 6rem;
}
.faq-item {
  border-bottom: 1px solid var(--faq-border);
  max-width: 900px;
  align-self: c;
}

.faq-trigger {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: none;
  border: none;
  padding: 1.5rem 0;
  color: white;
  font-size: 1.5rem;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
  outline: none;
  gap: 1rem;
}

.faq-icon {
  position: relative;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

.faq-icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: var(--primary-color);
  transform: translateY(-50%);
}

.faq-icon::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 2px;
  height: 100%;
  background-color: var(--primary-color);
  transform: translateX(-50%);
  transition:
    transform 0.4s ease,
    opacity 0.4s ease;
}

/* Estado Aberto / Ativo */
.faq-trigger[aria-expanded="true"] .faq-icon::after {
  transform: translateX(-50%) rotate(90deg);
  opacity: 0;
}

.faq-content {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease-out;
  overflow: hidden;
}

.faq-trigger[aria-expanded="true"] + .faq-content {
  grid-template-rows: 1fr;
}

/* Conteúdo interno */
.faq-content-inner {
  min-height: 0px;
}

.faq-content-inner p {
  color: rgba(255, 255, 255, 0.8);
  font-size: 1.1rem;
  line-height: 1.5;
  margin: 0;
  padding-bottom: 1.5rem;
}
.logo-container {
  width: 100%;
  display: flex;
  background-color: var(--terciary-color);
  padding: 3rem 0;
  gap: 3rem;
  align-items: center;
  justify-content: center;
}

.footer-logo {
  height: 50px;
}
footer {
  padding: 1rem;
  background-color: #032c3f;
  color: white;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: space-between;
  align-items: center;
}

.logo_am {
  max-width: 60px;
}
.dev {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.logo_avua {
  height: 20px;
}

.evento__img-close,
.despertar__img-close {
  will-change: transform; /* Avisa o navegador para renderizar a animação usando a GPU */
}

.btn_dark {
  background: var(--terciary-color);
  color: white;
}
.btn_dark:hover {
  color: var(--terciary-color);
}

@media (min-width: 640px) {
  /* EVENTO */
  .evento__title {
    max-width: 490px;
    width: 100%; /* Garante que ele use o espaço até o limite de 480px */
  }

  /* CARDS */

  /* DESPERTAR */

  /* INGRESSOS */

  /* FAQ */
}

@media (min-width: 768px) {
  /* hero */

  .text-container {
    max-width: 58rem;
    display: flex; /* Se for um container flex, o align-self precisa dele */
    flex-direction: column;
    align-self: center;
  }
  footer {
    flex-direction: row;
    gap: 1rem;
  }
  /* EVENTO */

  /* CARDS */

  /* DESPERTAR */

  /* INGRESSOS */

  /* FAQ */
}

@media (min-width: 768px) {
  /* HERO */
  .hero {
    margin: 0;
    min-height: fit-content;
    padding: 10rem 0;
  }

  .hero-content {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 2rem;
    width: 100%;
  }

  .data {
    grid-column: span 12;
    justify-self: center;
  }

  .text-container {
    align-items: start;
    grid-column: 5 / span 6;
  }

  .timeline-logo {
    grid-column: span 12;
    justify-content: flex-start;
    justify-self: center;
    width: 100%;
    max-width: 100%;
  }

  .text {
    text-align: start;
  }

  /* EVENTO */
  .evento {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    max-width: 1440px;
    margin: 0 auto;
    padding: 6rem 2rem;
    overflow: hidden;
  }

  .evento__content {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 0;
  }

  .evento__title {
    grid-column: 1 / span 6;
    z-index: 20;
    max-width: 80rem;
  }

  .evento__image-container {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-areas: none;
    gap: 0;
  }

  .evento__img {
    grid-column: 5 / span 8;
    width: 100%;
    height: 66.26rem;
    z-index: 10;
  }

  .evento__img-close {
    position: absolute;
    top: auto;
    bottom: -10%;
    left: 0;
    width: 45%;
    height: auto;
    aspect-ratio: 89 / 80;
    z-index: 30;
    will-change: transform;
  }

  .evento__asterisc {
    position: absolute;
    top: -8rem;
    right: 15%;
    left: auto;
    width: 18rem;
    height: 18rem;
    z-index: 25;
  }

  .evento__text-container {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 3rem;
    padding: 8rem 0 0 0;
    width: 100%;
  }

  .evento__text-title {
    grid-column: 3 / span 10;
    text-align: left;
    font-size: clamp(2rem, 1rem + 2.5vw, 3.5rem);
    max-width: 64rem;
  }

  .evento__fome {
    grid-column: 1 / -1;
    width: 100%;
    height: auto;
  }

  .evento__text-complemento {
    grid-column: 6 / span 7;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 2rem;
    padding-top: 1rem;
  }

  .evento__text-complemento svg {
    width: 6rem;
    height: auto;
    flex-shrink: 0;
  }

  .evento__text-description {
    font-size: clamp(1.25rem, 0.85rem + 1.5vw, 2.25rem);
    line-height: 1.3;
    text-align: left;
  }

  .cards-container {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    row-gap: 4rem;
    column-gap: 1.5rem;
    max-width: 1440px;
    margin: 0 auto;
    padding: 8rem 2rem;
    width: 100%;
    align-items: center;
  }

  .card {
    width: 100%;
    padding: 3.5rem 2rem;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2.5rem;
  }

  .card svg {
    height: 4rem;
    top: 50%;
    left: -8%;
    transform: translateY(-50%);
    z-index: -1;
  }

  .cards-container .card:nth-child(1) {
    grid-column: 1 / span 5;
    transform: rotate(-5deg) !important;
  }

  .cards-container .card:nth-child(2) {
    grid-column: 7 / span 5;
    transform: rotate(5deg) !important;
  }

  .cards-container .card:nth-child(2) svg {
    left: 60%;
    top: 0;
  }

  .cards-container .card:nth-child(3) {
    grid-column: 2 / span 10;
    padding: 4rem 6rem;
    margin-top: 1rem;
    transform: rotate(-5deg) !important;
  }

  .cards-container .card:nth-child(3) svg {
    top: auto;
    bottom: 12%;
    left: 18%;
  }

  .cards-container .card:nth-child(4) {
    grid-column: 2 / span 4;
    margin-top: -1rem;
    transform: rotate(5deg) !important;
  }

  .cards-container .card:nth-child(5) {
    grid-column: 6 / span 4;
    margin-top: 2rem;
  }

  .cards-container .card:nth-child(5) svg {
    top: auto;
    bottom: -8%;
    left: auto;
    right: 12%;
  }

  /*DESPERTAR*/
  .despertar__content {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    max-width: 1440px;
    margin: 0 auto;
    padding: 8rem 2rem;
    width: 100%;
  }

  .despertar__inner {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 0;
  }

  .despertar__text-header {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    row-gap: 1.5rem;
  }

  .despertar__title-group {
    grid-column: 3 / span 8;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 1rem;
  }

  .despertar__title-group svg {
    height: 1.5rem;
    width: auto;
  }

  .despertar__momento {
    text-align: left;
    font-size: clamp(1.5rem, 1rem + 1.5vw, 2.5rem);
    text-transform: uppercase;
  }

  .despertar__vector-title {
    grid-column: 1 / -1;
    width: 100% !important;
    height: auto;
  }

  .despertar__subtitle-group {
    grid-column: 5 / span 8;
    align-items: flex-start;
  }

  .despertar__momento--preparando {
    text-align: left;
  }

  .despertar__image-container {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-areas: none;
    gap: 0;
    position: relative;
    width: 100%;
    margin-top: 4rem;
  }

  .despertar__img {
    grid-column: 1 / span 7;
    grid-area: auto;
    width: 50rem;
    height: 45.50125rem;
    object-fit: cover;
    display: block;
    /* z-index: 5; */
  }

  .despertar__img-close {
    position: absolute;
    top: auto;
    left: calc((100% / 12) * 4) !important;
    width: calc((100% / 12) * 7) !important;
    height: 18.12213rem;
    object-fit: cover;
    bottom: 10%;
    z-index: 10;
    will-change: transform;
  }

  .despertar__asterisc {
    position: absolute;
    top: -4rem;
    left: -2rem;
    width: 12rem;
    height: 12rem;
    z-index: 2;
  }

  .despertar__description-container {
    grid-column: 5 / span 6;
    align-items: flex-start;
    padding: 4rem 0 0 0;
    gap: 2.5rem;
  }

  .despertar__description {
    padding: 0;
    text-align: left;
    font-size: clamp(1.125rem, 0.9rem + 0.8vw, 1.75rem);
    line-height: 1.4;
    font-weight: 400;
  }

  .despertar__description-container .btn {
    align-self: flex-start;
  }

  /* Ingresso */

  .ingresso_mobile {
    display: none;
  }
  .ingresso_desktop {
    width: 100%;
    display: block;
  }

  .camisetas_itens {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: center;

    gap: 1rem;
  }
  .foto_camisetas {
    width: 100%;
    max-width: 40%;
  }
}
@media (min-width: 1920px) {
  .evento {
    max-width: 1920px;
    margin: auto;
  }
}
