@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;400;500;600&display=swap');

html {
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  overflow: hidden;
  font-size: 62.5%;
  scroll-behavior: smooth;
}

a:hover {
  cursor: pointer;
  text-decoration: underline;
}

.body {
  font-size: 1.7rem;
  line-height: 2.5rem;
  margin: 0;
  text-align: center;
}

/*COLORS*/

:root {
  --yellow: #ffff00;
  --cyan: #00ffff;
  --blue: #4a3cdb;
  --red: #ff2525;
  --night: #2d444a;
  --navy: #012948;
  --orange: #ffa500;
/*links*/
  --active: #ffc800;/*orange*/
  --hover: #ff2525;/*red*/
  --off: #4a707a; /*petrol*/
}

/*GRADIENTS*/

.gradient-orange {
  background: linear-gradient(135deg, #ffc800, #ff2525);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
}

.gradient-orange-back {
  background: linear-gradient(135deg, #ffff00, #ff2525);
}

.gradient-green {
  background: linear-gradient(135deg, #00c800, #002525);
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
}

/*EFFECTS*/

@supports ((-webkit-backdrop-filter: blur(20px)) or (backdrop-filter: blur(20px))) {
  .frosted {
    background-color: rgba(255, 255, 255, .93); /* same as if backdrop-filter is implemented because it still may be implemented but not working correctly... */
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
  }
}

@supports not ((-webkit-backdrop-filter: blur(20px)) or (backdrop-filter: blur(20px))) {
  .frosted {
    background-color: rgba(255, 255, 255, .93);
  }
}

.shadow {
  box-shadow:10px 10px 20px rgba(217,217,217,0.5), -10px -10px 20px rgba(255,255,255,0.3);
}

.big-shadow {
  box-shadow: 40px 40px 80px rgba(0,0,0,0.3), -20px -20px 40px rgba(255,255,255,0.7);
}

/*FONTS*/

h3 {
  font-size: 4rem;
  font-weight: 400;
  line-height: 2em;
}

@media screen and (max-width: 400px) {
  h3 {
    font-size: 3rem;
  }
}

h2 {
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.3em;
}

h1 {
  font-size: 2.3rem;
  font-weight: 300;
  line-height: 3rem;
}

h4 {
  font-size: 2.3rem;
  font-weight: 600;
  line-height: 3.5rem;
}

p {
  font-size: 1.5rem;
  line-height:1.7;
  color: var(--night);
}

sup {
  vertical-align: super;
  font-size: smaller;
}

/*TEXTS*/

.title {
  font-size: 7rem;
  font-weight: 600;
  line-height: 7rem;
  text-transform: uppercase;
}

@media screen and (max-width: 600px) {
  .title {
    font-size: 5rem;
    line-height: 5rem;
  }
}

.thin-title {
  font-weight: 300;
  text-align: left;
  text-transform: uppercase;
  line-height: 1.3;
}

.bold-title {
  text-transform: uppercase;
  font-weight: 600;
  line-height: 1.2;
}

.small-text {
  font-size: 1.2rem;
}

.white {
  color: white;
}

.night {
  color: var(--night);
}

/*TEXTS CONTAINERS*/

.full-text-container {
  width: 100%;
  height: auto;
  padding: 2rem;
  color: var(--night);
}

.big-text-container {
  width: 56%;
  height: auto;
  padding: 2rem;
  color: var(--night);
}

.small-text-container {
  width: 34%;
  height: auto;
  padding: 2rem;
  color: var(--night);
}

/*TEXTS CONTAINERS RESPONSIVE*/

@media screen and (max-width: 840px) {

.big-text-container {
  width: 100%;
}

.small-text-container {
  width: 100%;
}

}

/*IMAGES CONTAINERS*/

.full-image-container {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: auto;
  justify-content: center;
  align-items: center;
}

.full-image-container img {
  height: auto;
  width: 100%;
}

.big-image-container {
  display: flex;
  flex-direction: column;
  width: 56%;
  height: auto;
  justify-content: center;
  align-items: center;
}

.big-image-container img {
  height: auto;
  width: 100%;
  object-fit: cover;
}

.small-image-container {
  display: flex;
  flex-direction: column;
  width: 34%;
  height: auto;
  max-height: 100%;
  justify-content: center;
  align-items: center;
  padding: 2rem;
}

.small-image-container img {
  height: auto;
  max-height: 80%;
  width: 80%;
  object-fit: contain;
}

/*IMAGES CONTAINERS RESPONSIVE*/

@media screen and (max-width: 840px) {
  .big-image-container {
    width: 100%;
    text-align: center;
  }

  .big-image-container img {
    width: 85%;
  }

  .small-image-container {
    width: 100%;
  }

  .small-image-container img {
    max-width: 80%;
    max-height: 50vh;
  }
}

/*CONTENT*/

.main-container {
  background: rgba(234, 238, 238, 0.5);
}

/*GROUPS*/

.group-hero {
  display: flex;
  flex: 100%;
  height: auto;
  min-height: 38vh;
  justify-content: center;
  top: -70vh;
}

.group-data {
  display: flex;
  flex: 100%;
  min-height: auto;
  justify-content: center;
  align-items:flex-start;
}

.group-footer {
  display: flex;
  top: 0;
  left: 0;
  flex: 100%;
/*  height: 50vh; */
  justify-content: center;
  align-items: flex-end;
}
/*
@media screen and (max-width: 600px) {
  .group-footer {
    height: 45vh;
  }
}
*/
/*CONTAINERS*/

.button-container {
  display: flex;
  width: 100%;
  justify-content: center;
}

.flex-container {
  display: flex;
  max-width: 950px;
  flex: 100%;
  padding: 0rem 4rem;
}

@media screen and (max-width: 600px) {
  .flex-container {
    padding: 0rem 2rem;
  }
}

/*FOOTER*/

.footer-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 100%;
  max-width: 950px;
  height: 30rem;
}

.footer-text {
  display: flex;
  flex: 100%;
  justify-content: space-around;
  height: 8rem;
  text-align: center;
}

.footer-text a {
  display: inline-block;
  text-decoration: none;
  color: var(--off);
  font-size: 1.3rem;
  text-transform: uppercase;
}

.footer-text a:hover {
  color: var(--hover);
  text-decoration: underline;
}

.footer-text a:active {
  color: var(--active);
  text-decoration: underline;
}

#mentions {
  font-size: 1.1rem;
/*  color: rgba(74, 112, 122, 0.5); */
}

#mentions a {
  color: var(--off);
  font-size: 1.1rem;
}

#mentions a:hover{
  color: var(--hover);
  text-decoration: underline;
}

/*RESPONSIVE*/

@media screen and (max-width: 600px) {
  html {
    font-size: 55%;
  }

  .footer-container {
    height: 50rem;
  }

  .footer-text {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: auto;
  }

  .footer-text a{
    padding: 2rem;
    font-size: 1.5rem;
  }
}

/*ZOOM*/

.zoom {
  transition: 0.5s cubic-bezier(.18,-0.01,.24,.95);
}

@media screen and (min-width: 600px) {
  .zoom:hover {
    -ms-transform: scale(1.05); /* IE 9 */
    -webkit-transform: scale(1.05); /* Safari 3-8 */
    transform: scale(1.05);
    box-shadow:  7px 15px 30px rgba(0, 0,0, 0.2);
  }
}

/*BUTTONS*/

.button {
  border: none;
  outline: 0;
  display: inline-block;
  padding: 1.5rem 2rem;
  border-radius: 5em;
  text-decoration: none;
  text-align: center;
  font-size: 1.7rem;
  color: white;
  margin: 2rem 1rem;
  transition: 0.5s cubic-bezier(.18,-0.01,.24,.95);
  background: var(--off);
}

.button:hover {
  cursor: pointer;
  background: var(--hover);
}

#myBtn {
  display: none;
  position: fixed;
  bottom: 20px;
  right: 30px;
  z-index: 99;
  font-size: 18px;
  border: none;
  outline: none;
  background-color: red;
  color: white;
  cursor: pointer;
  padding: 15px;
  border-radius: 4px;
}

#myBtn:hover {
  background-color: #555;
}
