/* Fontes oficiais — arquivos em assets/fontes */
@font-face {
  font-family: "Averta";
  src: url("assets/fontes/Averta.otf") format("opentype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Averta";
  src: url("assets/fontes/Averta Light Italic.otf") format("opentype");
  font-style: italic;
  font-weight: 300;
  font-display: swap;
}

@font-face {
  font-family: "Averta";
  src: url("assets/fontes/Averta Bold (1).otf") format("opentype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Averta";
  src: url("assets/fontes/Averta Bold Italic.otf") format("opentype");
  font-style: italic;
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "Averta";
  src: url("assets/fontes/Averta Extra Bold.otf") format("opentype");
  font-style: normal;
  font-weight: 800;
  font-display: swap;
}

@font-face {
  font-family: "Averta";
  src: url("assets/fontes/Averta Extra Bold Italic.otf") format("opentype");
  font-style: italic;
  font-weight: 800;
  font-display: swap;
}

@font-face {
  font-family: "Heebo";
  src: url("assets/fontes/Heebo-Regular.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Heebo";
  src: url("assets/fontes/Heebo-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root {
  --purple: #32002f;
  --purple-deep: #2a0029;
  --purple-card: #3a0038;
  --pink: #f51f69;
  --coral: #f15162;
  --orange: #ff963e;
  --yellow: #ffc22f;
  --ice: #6c8082;
  --soft-gray: #eef0f1;
  --white: #ffffff;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  overflow-x: hidden;
  background: var(--white);
  color: var(--purple);
  font-family: "Averta", Arial, Helvetica, sans-serif;
  -webkit-font-smoothing: antialiased;
}

.laptop,
.mobile {
  display: none !important;
}

@media (max-width: 1599px) {
  .desktop,
  .mobile {
    display: none !important;
  }
  .laptop {
    display: flex !important
  }
}

@media (max-width: 767px) {
  .desktop,
  .tablet,
  .laptop {
    display: none !important;
  }
  .mobile {
    display: flex  !important
  }
}


button,
a {
  -webkit-tap-highlight-color: transparent;
}

.landing-page {
  width: 100%;
  overflow: hidden;
}

.gradient-line {
  width: 100%;
  height: min(1.1vw, 21px);
  min-height: 7px;
  background: linear-gradient(90deg, var(--yellow) 0%, var(--orange) 30%, var(--pink) 68%, #8d245d 100%);
}

/* Buttons */
.btn-gradient,
.btn-outline-alfa,
.btn-inscricao {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.75vw;
  min-height: 3.2vw;
  padding: 0.vw 1.6vw;
  font-size: 1vw;
  font-weight: 700;
  line-height: 1.05;
  text-decoration: none;
}



.btn-gradient {
  border: 0;
  color: var(--white);
  background: linear-gradient(100deg, var(--orange), var(--coral) 55%, var(--pink));
}

.btn-outline-alfa {
  border: 1.5px solid var(--pink);
  color: white;
  background: transparent;
  font-weight: 700!important
}

/* Mantém a aparência dos botões no hover/focus (anula o Bootstrap) */
.btn-gradient,
.btn-gradient:hover,
.btn-gradient:focus,
.btn-gradient:active {
    color: var(--white);
    background: linear-gradient(100deg, var(--orange), var(--coral) 55%, var(--pink));
    border: 0;
    box-shadow: none;
    filter: none;
    transform: none;
    font-size: 1.9cqw;
    height: 4cqw;
}

@media (max-width: 767px) {
  .btn-gradient,
  .btn-gradient:hover,
  .btn-gradient:focus,
  .btn-gradient:active {
    font-size: 4.5cqw;
    height: 9cqw;   
    border-radius: 1.4cqw; 
  }  
}

.btn-outline-alfa,
.btn-outline-alfa:hover,
.btn-outline-alfa:focus,
.btn-outline-alfa:active {
  color: #fff;
  background: transparent;
  border: 1.5px solid var(--pink);
  box-shadow: none;
  filter: none;
  transform: none;
}

.btn-inscricao,
.btn-inscricao:hover,
.btn-inscricao:focus,
.btn-inscricao:active {
  color: var(--coral);
  background: var(--purple);
  border: 0;
  box-shadow: none;
  filter: none;
  transform: none;
}


/* Official brand marks. */
.scholarship-logo {
  display: inline-flex;
  flex-direction: column;
  width: max-content;
  color: var(--purple);
  line-height: 0.83;
  text-transform: uppercase;
}

.scholarship-logo.is-light {
  color: var(--white);
}

.scholarship-logo.is-official {
  display: block;
  line-height: normal;
  text-transform: none;
}

.scholarship-logo.is-official img {
  display: block;
  width: 32cqw;
  height: auto;
  margin: auto;
  margin-top: 3cqw;
}

@media (max-width: 1599px) {
   .scholarship-logo.is-official img {
    margin-top: 11%;
   }  
}

@media (max-width: 1500px) {
   .scholarship-logo.is-official img {
    width: 22cqw
   }  
}

@media (max-width: 767px) {
  .scholarship-logo.is-official img {
      width: 72cqw;
      margin-top: 17cqw;
  }
}

.scholarship-kicker {
  margin: 0 0 0.3em 0.15em;
  font-family: Impact, "Arial Narrow", sans-serif;
  font-size: 0.24em;
  letter-spacing: 0.12em;
}

.scholarship-word {
  font-family: Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  font-size: 1em;
  font-weight: 900;
  letter-spacing: 0.01em;
  white-space: nowrap;
}

.logo-o {
  position: relative;
  display: inline-block;
  color: var(--purple);
  text-shadow: 0.07em 0 var(--pink), -0.04em 0 var(--orange);
  transform: rotate(-5deg);
}

.is-light .logo-o {
  color: var(--white);
}

.alfa-logo {
  position: relative;
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  align-items: center;
  width: max-content;
  color: var(--purple);
}

.alfa-logo.is-light {
  color: var(--white);
}

.alfa-logo.is-official {
  display: block;
}

.alfa-logo.is-official img {
  display: block;
  width: 1.75em;
  height: auto;
}

.alfa-logov2 img{
  display: block;
  width: 90%;
  height: auto;
}

.alfa-emblem {
  position: relative;
  grid-row: 1 / 3;
  display: inline-block;
  width: 0.78em;
  height: 0.78em;
  margin-right: 0.13em;
  border-radius: 50%;
  background: conic-gradient(#0f1c73 0 25%, #00886f 25% 42%, #f5b51b 42% 58%, #ef4c35 58% 78%, #4d1b70 78% 100%);
}

.alfa-emblem::after {
  content: "";
  position: absolute;
  inset: 20%;
  border-radius: 50%;
  background: var(--white);
}

.hero-header {
    display: grid;
    grid-template-columns: 1fr auto;  
}
@media (max-width: 767px) {
  .hero-header {
    display: flex;
    flex-direction: column-reverse;
  }
}
.hero__content {
  position: relative
}

.hero__content img{
    width: 100%;
    height: 100vh;
    object-fit: cover;
}

@media (max-width: 1599px) {
  .hero__content img {
    height: 100%
  }
}

@media (max-width: 1300px) and (min-height: 699px) {
    .hero__content img {
        height: 100vh;
    }
}
@media (max-width: 1235px) {
  .hero__content img {
    height: 100vh
  }  
}

@media (max-width: 767px) {
  .hero__content img {
    height: 100%
  }  
}

.hero__content-buttons,
.hero__content-buttons li,
.hero__content-buttons a {
  margin: 0;
  padding: 0;
}

.hero__content-buttons {
  display: flex;
  align-items: center;
  gap: 1.2cqw;
  position: absolute;
  top: 0;
  padding: 4cqw 4cqw 0 ;
}

@media (max-width: 1599px) {
  .hero__content-buttons {
    right: 0;
    padding-top: 12px;
  }
}

.hero__content-buttons li {
    list-style: none;
    padding: 0.4cqw 1.1cqw;
    border: 1px solid #eef0f1;
    border-radius: 0.5cqw;
    transition: all .3s ease;
    cursor: pointer;
}

.hero__content-buttons li:hover {
    background: #fff;
}

.hero__content-buttons a {
    display: block;
    text-decoration: none;
    color: #eef0f1;
    transition: color .3s ease;
    font-size: 0.8cqw;
}

.hero__content-buttons a:hover li {
    color: #2a0029;
}

@media (max-width: 767px) {
  .hero__content-buttons a {
    font-size: 3cqw
  }
}

.date-line {
  display: flex;
  align-items: center;
  gap: 1vw;
  min-height: 4.6vw;
}

@media (max-width: 767px) {
  .date-line {
    gap: 3vw
  }
}

.date-icon-calendar,
.date-icon {
  height: auto;
  width: 2.5cqw
}

@media (max-width: 767px) {
  .date-icon-calendar,
  .date-icon {
    height: auto;
    width: 8cqw;
  }  
}

.date-line b {
  font-size: 4cqw;
  font-style: italic;
  font-weight: 800;
  line-height: 0.95;

  background: linear-gradient(
    90deg,
    var(--orange) 0%,
    var(--coral) 55%,
    var(--pink) 100%
  );

  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

@media (max-width: 1500px) {
 .date-line b {
    font-size: 4cqw;
 } 
}

@media (max-width: 767px) {
 .date-line b {
    font-size: 11cqw;
 } 
}

.event-date {
  width: 100%;
}

@media (max-width: 767px) {
  .event-date {
      width:77%;
  }  
}

.event-date-info {
    display: flex;
    gap: 2cqw;  
}

@media (max-width: 767px) {
  .event-date-info {
    gap: 5cqw;    
  }
}

.event-date strong {
  font-size: 1.8cqw;
}

@media (max-width: 767px) {
  .event-date strong {
      font-size: 4.6cqw;
      display: block;
      margin: 2cqw 0;
  }  
}

.hero-aviso {
  font-size: 1.5cqw;
  margin: 0 0 1cqw;
}

@media (max-width: 1500px) {
  .hero-aviso {
      font-size: 1.1cqw;
      margin: 0 0 1cqw;
  }  
}

@media (max-width: 767px) {
  .hero-aviso {
      font-size: 3.3cqw;
      margin: 3.4cqw 0;
  }  
}

.hero-aviso span {
  background: linear-gradient(90deg, var(--orange) 0%, var(--coral) 55%, var(--pink) 100%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  font-weight: bold;
  font-style: italic;
}

.hero-copy {
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: start;
  padding: 0 3vw 1vw 5vw;
  color: var(--white);
  background: var(--purple);
}

@media (max-width: 1500px) {
  .hero-copy {
    padding: 1vw 4vw 1vw 4vw;
  }
}

@media (max-width: 767px) {
  .hero-copy {
    padding: 4vw 4vw 6vw 4vw
  }
}

.hero-title {
  margin: 0 0 3vw;
  font-size: min(3.15vw, 60px);
  font-style: italic;
  font-weight: 400;
  line-height: 1;
}

.hero-title b {
  font-weight: 900;
}

.hero-brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2vw;
  margin: 0 0 3vw 0vw;
}

@media (max-width: 1599px) {
  .hero-brand {
    margin:0 0 1vw 0vw;
  }  
}

.hero-brand .scholarship-logo {
  font-size: min(6vw, 114px);
}

.hero-brand .alfa-logo {
  font-size: min(4.2vw, 80px);
}

.hero-note {
  width: 100%;
  margin: 0 0 2.2vw;
  font-size:min(1.2vw, 27px);
  font-style: italic;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
}


.hero-photo {
  position: relative;
  overflow: hidden;
  
}

.hero-photo img {
  object-fit: cover;
  object-position: 52% center;
}

.hero__content-participe {
  position: absolute;
  bottom: 0;
  display: flex;
  justify-content: center;
  align-items: start;
  gap: 3.9cqw;
  margin: 0 auto;  
  width: 100%;
  padding: 0 3cqw 3cqw;
}

@media (max-width: 1599px) {
  .hero__content-participe {
    flex-direction: column;
    justify-content: space-between;
    margin: 0 auto;
    height: 100vh;
    padding: 2cqw 3cqw;
    top: 0;
  }  
}

@media (max-width: 767px) {
  .hero__content-participe {
    display: none;
  }  
}

.hero__content-participe h2 {
  margin: 0.7vw 0 2.2vw;
  font-size: 4.4cqw;
  font-style: italic;
  font-weight: 900;
  line-height: 1.02;
  color: #eef0f1
}

.hero__content-participe h2 em {
  font-style: italic;
  font-size: 5.3cqw;
  background: linear-gradient(
    90deg,
    var(--orange) 0%,
    var(--coral) 55%,
    var(--pink) 100%
  );

  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

.hero__content-participe ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.hero__content-participe li {
  position: relative;
  margin: 0.35vw 0;
  padding-left: 2vw;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.08;
  display: flex;
  color: #eef0f1;
  align-items: center;
  gap: 5cqw;
}

.hero__content-participe li::before {
  content: "";
  background: url(./assets/check.png) no-repeat center;
  background-size: 1cqw;
  position: absolute;
  left: 0;
  color: var(--coral);
  font-size: 1.3em;
  font-weight: 900;
  width: 1cqw;
  height: 1cqw;
}
/* Desktop e laptop */
@media (min-width: 768px) {
  .hero-header {
      min-height: 100vh;
      grid-template-columns: 1fr auto;
      align-items: stretch;
  }

  .hero__content {
      position: relative;
      min-height: 100vh;
      overflow: hidden;
  }

  .hero__content > img {
      position: absolute;
      inset: 0;
      display: block;
      width: 100%;
      height: 100%;
      object-fit: cover;
  }

  .hero-copy {
      min-height: 100vh;
      height: 100%;
  }
}

@media (min-width: 768px) {
  .hero-copy {
    height: 100dvh;
    overflow: hidden;
    justify-content: start; 
    gap: 0;
  }
}

/* Espaçamento dos botões */
.action-buttons {
}
.action-buttons {
  display: flex;
  align-items: stretch;
    gap: min(0.5cqw, 1vh);
  align-self: center;  
  width: 100%;
  flex-direction: column;  
}

@media (max-width: 767px) {
  .action-buttons {
    width: 78%;
    gap: 1.5cqw;
  }
}

/* Botões */
.btn-gradient,
.btn-gradient:hover,
.btn-gradient:focus,
.btn-gradient:active {
    height: min(4cqw, 5.5vh);
    font-size: min(1.9cqw, 2vh);
}

@media (max-width: 767px) {
  /* Botões */
  .btn-gradient,
  .btn-gradient:hover,
  .btn-gradient:focus,
  .btn-gradient:active {
    height: 8.5cqw;
    font-size: 4cqw;
  }    
}

/* Logo */
.hero-brand .scholarship-logo {
    font-size: min(6vw, 8vh);
}

/* Hero brand */
.hero-brand {
    gap: min(1.2vw, 1.5vh);
    margin: 0 0 min(3vw, 2vh);
}

/* Título */
.hero-title {
    margin: 0 0 min(3vw, 2vh);
}
