/*Tema */
:root {
  --cprimario: #30b2e5;
  --csecundario: #68bb49;
  --cfondo: #fff;
  --ctexto: #494b4e;
  --blanco: #fff;
  --negro: #000;
  accent-color: var(--colorprimario);
  --sombra: 0px 4px 10px -10px #00000063;
  --sombrahover: 0px 4px 4px 0px #00000063;
}
/*Fontes */
@font-face {
  font-family: "titulos";
  src: url("fonts/Vollda-Bold.otf");
}
@font-face {
  font-family: "corpo";
  src: url("fonts/GothamRounded-Book.otf");
}
/*axustes inciales*/
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth; /*scroll suave*/
  background: var(--cfondo);
}
body,
figure {
  margin: 0;
  padding: 0;
}
/*Textos*/
body {
  font-family: "corpo", sans-serif;
}
a {
  text-decoration: none;
  font-weight: 800;
}
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
p {
  text-wrap: pretty;
  /*max-width: 70ch; /*textos lexibles*/
  line-height: 1.4;
  margin-bottom: 1em;
}
p,
a,
li {
  font-family: "corpo", sans-serif;
  color: var(--ctexto);
  font-size: 1em;
}
h1,
h2,
h3,
h4 {
  font-family: "titulos", serif;
  color: var(--cprimario);
}
h1 {
  font-size: 3em;
}
h2 {
  font-size: 3em;
}
h3 {
  font-size: 2em;
}
/*elementos*/
.boton {
  background: var(--cprimario);
  border-radius: 15px;
  padding: 15px;
  color: var(--blanco);
  transition: background 0.6s ease;
}
.boton:hover {
  background: var(--csecundario);
}
/*estructura*/
html {
  scroll-padding-top: 70px;
}
.contenedor {
  padding: 1rem;
  max-width: 1200px;
  margin: 0 auto;
}
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 70px;
  padding: 1rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  box-shadow: var(--sombra);
  z-index: 10;
  background: var(--cfondo);
}
header .logo {
  max-width: 200px;
}
header .logo img {
  width: 100%;
  height: a;
}
header nav {
  display: flex;
  gap: 1rem;
}
header nav a {
  color: var(--cprimario);
  font-size: 1.1em;
  transition: color 0.6s ease;
}
header nav a:hover,
header nav a:active {
  color: var(--csecundario);
}
body {
  margin-top: 70px;
}
.hero {
  width: 100%;
}
.hero img {
  width: 100%;
  height: auto;
}
.festadeza {
  margin: 4rem 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
.festadeza .foto,
.festadeza .texto {
  width: 48%;
}
.festadeza .foto img {
  width: 100%;
  height: auto;
}
.festadeza .texto h2,
.festadeza .texto h3,
.festadeza .texto h4,
.festadeza .texto p {
  color: var(--negro);
  margin: 0.5rem;
  padding: 0;
  line-height: 1;
}
.festadeza .texto h2 {
  font-size: 5em;
  color: var(--cprimario);
}
.festadeza .texto h3 {
  font-size: 3em;
  color: var(--csecundario);
}
.festadeza .texto h3 span {
  font-size: 0.8em;
  color: var(--negro);
}
.festadeza .texto h4 {
  font-family: "corpo", sans-serif;
  font-weight: 900;
  font-size: 2em;
}
.festadeza .texto p {
  font-weight: 400;
  font-size: 1.2em;
  margin-top: 1rem;
}
#pasada {
  margin: 4rem 0;
}
#pasada p {
  margin-bottom: 3rem;
}
#pasada .video {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 4rem;
}
#contacto {
  margin: 4rem 0;
}
#contacto h2 {
  display: flex;
  align-items: center;
  gap: 1rem;
}
#contacto h2 svg {
  color: var(--csecundario);
  width: 3.5rem;
  height: auto;
}
#contacto .contacto {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
#contacto .contacto a {
  display: flex;
  align-items: center;
  font-size: 1.2em;
  font-weight: 400;
  gap: 1rem;
  transition: color 0.6s ease;
}
#contacto .contacto a:hover,
#contacto .contacto a:active {
  color: var(--csecundario);
}
#contacto .contacto a svg {
  width: 2rem;
  height: 2rem;
}
footer {
  border-top: 1px solid #00000023;
}
.patrocinadores {
  margin: 4rem 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 1rem;
}
.patrocinadores a img {
  height: 100%;
  width: auto;
}
footer img {
  width: 100%;
  height: auto;
}
#posts .cabeceira {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
#posts .cabeceira img,
#posts .cabeceira h3 {
  width: 48%;
}
#posts .cabeceira h3 {
  color: var(--csecundario);
}

/*responsive */
@media (max-width: 700px) {
  header {
    position: relative;
    height: 100px;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: center;
    gap: 1rem;
  }
  body {
    margin-top: 0;
  }
  .escritorio {
    display: none;
  }
  #posts .cabeceira img,
  #posts .cabeceira h3 {
    width: 100%;
  }
}
@media (max-width: 888px) {
  .festadeza {
    flex-direction: column-reverse;
    gap: 1rem;
  }
  .festadeza .foto,
  .festadeza .texto {
    width: 100%;
  }
  .festadeza .texto h2 {
    font-size: 3.5em;
  }
  .festadeza .texto h3 {
    font-size: 2.1em;
  }
  .festadeza .texto h4 {
    font-size: 2em;
  }
  .festadeza .texto p {
    font-size: 1.2em;
  }
}
/*animacions */
.vibrate {
  -webkit-animation: vibrate 2s linear infinite both;
  animation: vibrate 2s linear infinite both;
  overflow: hidden;
}
@-webkit-keyframes vibrate {
  0% {
    -webkit-transform: translate(0);
    transform: translate(0);
  }
  20% {
    -webkit-transform: translate(-2px, 2px);
    transform: translate(-2px, 2px);
  }
  40% {
    -webkit-transform: translate(-2px, -2px);
    transform: translate(-2px, -2px);
  }
  60% {
    -webkit-transform: translate(2px, 2px);
    transform: translate(2px, 2px);
  }
  80% {
    -webkit-transform: translate(2px, -2px);
    transform: translate(2px, -2px);
  }
  100% {
    -webkit-transform: translate(0);
    transform: translate(0);
  }
}
@keyframes vibrate {
  0% {
    -webkit-transform: translate(0);
    transform: translate(0);
  }
  20% {
    -webkit-transform: translate(-2px, 2px);
    transform: translate(-2px, 2px);
  }
  40% {
    -webkit-transform: translate(-2px, -2px);
    transform: translate(-2px, -2px);
  }
  60% {
    -webkit-transform: translate(2px, 2px);
    transform: translate(2px, 2px);
  }
  80% {
    -webkit-transform: translate(2px, -2px);
    transform: translate(2px, -2px);
  }
  100% {
    -webkit-transform: translate(0);
    transform: translate(0);
  }
}
