html {
  position: relative;
  /* overflow-x: hidden; */
}
body {
  color: #fff;
  font-family: "Mark Pro";
  font-weight: bold;
  margin: 0;
  background-color: #000;
  position: relative;
  overflow-x: hidden;
}

.bg-opacity {
  background-image: url(../img/grass.jpg);
  opacity: 0.6;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

/* NAVBAR */
#navbar {
  height: 45px;
  background-color: transparent;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  padding: 30px 20px;
  z-index: 999;
  -webkit-transition: all 0.5s linear;
  -ms-transition: all 0.5s linear;
  transition: all 0.5s linear;
  line-height: 1.1em;
}
#navbar a.link {
  float: right;
  display: block;
  text-align: center;
  padding: 13px 37px;
  text-decoration: none;
  font-family: "HelveticaNeue";
  background-color: #009e53;
  font-size: 15px;
  font-weight: bold;
  border-radius: 43px;
  margin-left: 15px;
  color: #fff;
}
#navbar img {
  height: 90%;
  position: absolute;
  top: 11%;
  -webkit-transition: height 0.5s linear;
  -ms-transition: height 0.5s linear;
  transition: height 0.5s linear;
}
#navbar.sticky {
  position: fixed;
  top: 0;
  background-color: #ffe300;
  padding: 15px;
}
#navbar.sticky a.link {
  padding: 10px 37px;
}
#navbar.sticky img {
  height: 90%;
  top: 6%;
}
#navbar .lays-white {
  margin-top: 0;
}
/* PC size */
@media screen and (min-width: 1280px) {
  #navbar {
    padding: 30px 15%;
  }
  #navbar.sticky {
    padding: 15px 15%;
  }
}
/* Mobile and Tablet size */
@media screen and (max-width: 1179px) {
  #navbar #link-il-progetto {
    display: none;
  }
}
/* Mobile size */
@media screen and (max-width: 768px) {
  #navbar {
    padding: 8px 8px;
  }
  #navbar img {
    opacity: 0;
    height: 66px;
  }
  #navbar.sticky img {
    opacity: 1;
    height: 66px;
  }
  #navbar a.link {
    padding: 8px 18px !important;
  }
}

/* ASPECT RATIO HELPERS */
.ar {
  position: absolute;
  top: 0;
  left: 0;
}
.ar-img,
.ar-by-height .ar-img {
  display: block;
  width: auto;
  height: 100%;
}
.ar-by-width .ar-img {
  display: block;
  width: 100%;
  height: auto;
}
.ar-inner {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

/* LAYOUT-HELPERS */
.full-height {
  height: 100%;
}
.full-width {
  height: 100%;
}
.absolute-center-center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.absolute-fill {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

h1 {
  font-family: "Mark Pro";
  font-weight: bold;
  text-transform: uppercase;
  color: #fff;
  text-align: center;
  text-shadow: 1px 2px 16px #00000085;
}

.container {
  max-width: 1920px;
  padding: 0 15%;
  line-height: 1.1em;
  overflow: hidden;
}

@media screen and (max-width: 1400px) {
  .container {
    max-width: 1200px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 500px) {
  .container {
    max-width: 100%;
    width: 100%;
    padding: 0;
  }
}

.d-table {
  display: table;
  height: 100%;
  width: 100%;
}
.d-table-cell {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
}

.dl-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.fl-wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.align-center {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  align-self: center;
}

.align-left {
  -webkit-box-align: left;
  -ms-flex-align: left;
  align-items: left;
  align-self: left;
}

.j-between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.left-text {
  text-align: left;
}
.center-text {
  text-align: center;
}

.y-text {
  color: #ffe300;
}
.uppercase {
  text-transform: uppercase;
}
h1 {
  font-size: 100px;
  margin: 15vw 0 9vw 0;
}

@media screen and (min-width: 1281px) {
  h1 {
    font-size: 119px;
    margin: 13vw 0 6vw 0;
  }
}

.desc {
  font-size: 20px;
  letter-spacing: 1px;
  line-height: 23px;
}
.lays-yellow img {
  height: 9vw;
  padding-right: 8vh;
  max-width: 190px;
  padding-left: 6vw;
}
.replay img {
  height: 5vw;
  padding-left: 14vh;
  padding-right: 8vh;
  max-width: 198px;
}

@media screen and (min-width: 1281px) {
  .lays-yellow img {
    height: 15vh;
    padding-right: 4vw;
    padding-left: 13vw;
    max-width: 190px;
  }
  .replay img {
    height: 9vh;
    padding-left: 14vw;
    padding-right: 3.4vw;
    max-width: 198px;
  }
}

.mt-10 {
  margin-top: 10vh;
}

.three-blocks .block {
  flex: 1;
  margin: 15vh 0;
  /* padding: 0px 6vh; */
}
/* .three-blocks .block:nth-child(2) {
  min-width: 45vh;
} */
.three-blocks .block p {
  color: #ffe300;
  text-shadow: 2px 2px 4px #00000085;
  font-size: 22px;
}
.three-blocks .block span {
  text-shadow: 2px 2px 4px #00000085;
  letter-spacing: 1px;
  line-height: 20px;
}
.three-blocks .block img {
  height: 18vh;
  max-width: 160px;
}
/* .field {
  color: #363636;
  margin-top: 15vh;
  margin: 10vh auto;
  max-width: 99vh;
}
.field p {
  font-size: 14px;
  text-align: left;
}
.field p.title {
  font-size: 22px;
}
.field .bg-yellow {
  background-color: #ffe300;
  border-radius: 29px;
  box-shadow: 2px 2px 4px #00000085;
  width: 50%;
}
.field .bg-yellow div {
  padding: 8vh;
}
.field .bg-field {
  background-image: url(../img/field.svg);
  background-size: contain;
  background-repeat: no-repeat;
  border-radius: 29px;
} */

.wrapper-center {
  display: flex;
  flex-direction: column;
  align-content: center;
}

.wrapper-field {
  margin: 50px auto;
  width: 654px;
  background-image: url(../img/field.png);
  background-size: auto 100%;
  background-repeat: no-repeat;
  border-radius: 29px;
}

.wrapper-field p.title,
.wrapper-program p.title {
  font-size: 25px;
}
.bl-field {
  background-color: #ffe300;
  border-radius: 29px;
  box-shadow: 2px 2px 4px #00000085;
  color: #363636;
  padding: 44px 30px;
  width: 270px;
  /* width: 40%; */
}

.wrapper-program {
  margin: 50px auto;
  width: 654px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  /* width: 114vh; */
  border-radius: 29px;
  /* margin: 10vh auto; */
  background-image: url(../img/program.jpg);
  background-size: auto 100%;
  background-repeat: no-repeat;
}

.get-involved {
  position: relative;
  text-align: center;
}
.get-involved h2 {
  text-transform: uppercase;
  font-size: 86px;
  margin-bottom: 0;
  line-height: 101px;
}
.get-involved h2 span {
  font-size: 142px;
}

.get-involved p {
  color: #ffe300;
  font-size: 31px;
  line-height: 38px;
  margin-top: 10px;
}

.lateral-packs {
  position: absolute;
  left: 0;
  right: 0;
}

.lateral-packs .left-pack {
  position: absolute;
  left: -332px;
  height: 1000px;
  top: -190px;
}

.lateral-packs .right-pack {
  position: absolute;
  right: -307px;
  height: 925px;
  top: -160px;
  transform: rotate(12deg);
}
@media screen and (min-width: 1281px) {
  .three-blocks {
    width: 72%;
    margin: 0 auto;
  }
  .three-blocks .block {
    margin: 12vh 0;
  }
  .three-blocks .block img {
    height: 10vh;
  }
  .manifesto h1 {
    font-size: 124px;
  }
  .manifesto {
    /* height: 100vh; */
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: center;
    text-align: center;
    max-width: 100%;
    /* margin-top: 4vh; */
  }
  .manifesto .desc p {
    font-size: 19px;
    line-height: 23px;
  }
  .manifesto p.y-text {
    font-size: 25px;
    line-height: 29px;
  }
  .manifesto .desc {
    padding: 0px 21vh;
  }
  .wrapper-field,
  .wrapper-program {
    /* width: 654px; */
    /* margin: 50px auto; */
  }
  .wrapper-field {
    margin-top: 10vh auto;
  }
  .wrapper-field p.title,
  .wrapper-program p.title {
    font-size: 27px;
  }
}

@media screen and (max-width: 1450px) {
  .lateral-packs .left-pack {
    height: 889px;
    top: -101px;
  }

  .lateral-packs .right-pack {
    height: 860px;
    top: -101px;
  }
}
@media screen and (max-width: 1279px) {
  .lateral-packs .left-pack {
    height: 831px;
    top: -44px;
  }

  .lateral-packs .right-pack {
    height: 800px;
    top: -40px;
  }

  .get-involved h2 span {
    font-size: 135px;
  }
  .get-involved h2 {
    font-size: 78px;
  }
  .get-involved p {
    /* font-size: 26px;
    line-height: 32px; */
  }
}

@media screen and (max-width: 1170px) {
  .lays-yellow img,
  .replay img {
    padding-left: 0;
  }
}
@media screen and (max-width: 1135px) {
  .manifesto h1 {
    font-size: 85px;
  }
  .get-involved h2 span {
    font-size: 118px;
  }
  .get-involved h2 {
    font-size: 70px;
  }
  .get-involved p {
    font-size: 26px;
    line-height: 32px;
  }
}

/* @media screen and (max-width: 1110px) {
  .bg-circle .white-pack {
    height: 46vh;
    position: absolute;
    left: calc(50% - 23vh);
    top: 20vh;
  }
  .bg-circle p {
    font-size: 18px;
    top: 66vh;
  }
  .bg-circle .left-pack {
    height: 86vh;
  }
  .bg-circle .right-pack {
    height: 76vh;
  }
} */
/* @media screen and (max-width: 1110px) {
} */
@media screen and (max-width: 989px) {
  /* .bg-circle .white-pack {
    height: 37vh;
  }
  .bg-circle p {
    font-size: 17px;
    top: 58vh;
  } */
  h1 {
    font-size: 81px;
  }
  .desc {
    font-size: 17px;
  }
  /* .manifesto {
    height: 117vh;
  } */
  .manifesto .desc {
    padding: 0;
  }
  .manifesto .lays-white {
    max-width: 121px;
  }
  .manifesto p.y-text {
    font-size: 20px;
    line-height: 25px;
  }
  .manifesto h1 {
    font-size: 66px;
    margin: 3vw 0 5vw 0;
  }

  .wrapper-field {
    /* margin: 15vh auto 2vh auto; */
  }
  .get-involved h2 {
    font-size: 62px;
    line-height: 78px;
  }
  .get-involved h2 span {
    font-size: 101px;
  }
  .get-involved p {
    font-size: 22px;
    line-height: 32px;
  }
  .inauguration p.date {
    font-size: 25px;
    margin-top: 0;
  }

  .lateral-packs .left-pack {
    left: -345px;
    height: 751px;
    top: -56px;
  }

  .lateral-packs .right-pack {
    right: -345px;
    height: 735px;
    top: -51px;
  }
}

@media screen and (max-width: 868px) {
  /* .bg-circle .white-pack {
    height: 32vh;
    left: calc(50% - 16vh);
  }
  .bg-circle p {
    font-size: 15px;
    top: 55vh;
  }
  .bg-circle .lays-white {
    width: 120px;
    bottom: -10vw;
    left: calc(50% - 9vh);
  } */
  h1 {
    font-size: 70px;
  }
  .get-involved h2 span {
    font-size: 93px;
  }
  .get-involved h2 {
    font-size: 56px;
  }
  .get-involved p {
    font-size: 26px;
    line-height: 32px;
  }
  .lateral-packs .left-pack {
    left: -363px;
    height: 751px;
    top: -30px;
  }

  .lateral-packs .right-pack {
    right: -369px;
    height: 735px;
    top: -34px;
  }
}

@media screen and (max-width: 769px) {
  #menu-mobile {
    display: block;
  }
  /* .bg-circle .white-pack {
    height: 20vh;
    left: calc(50% - 12vh);
    top: 17vh;
  }
  .bg-circle .lays-white {
    width: 19vh;
    bottom: -10vw;
    left: calc(50% - 9.5vh);
  }
  .bg-circle p {
    font-size: 16px;
    top: 39vh;
  } */
  .three-blocks .block {
    margin: 6vh 0;
  }
  /* .manifesto {
    height: 54vh;
  } */
  .three-blocks .block {
    margin: 7vh 0;
  }
  .wrapper-field {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
  .wrapper-program {
    width: 100%;
  }
  .project-wrapper .dl-flex {
    align-items: flex-start;
    flex-direction: column;
  }
  .lays-yellow img {
    height: 13vw;
    margin-bottom: 10px;
  }
  .replay img {
    height: 8vw;
    margin-bottom: 20px;
  }
  .three-blocks .dl-flex {
    display: block;
  }

  .three-blocks {
    margin: 60px 0;
  }
  .bl-field {
    padding: 13px 26px;
    width: 56%;
  }
  /* .manifesto {
    height: 192vw;
  } */
  .manifesto .desc p {
    font-size: 14px;
    line-height: 15px;
  }
  .manifesto .lays-white {
    padding-top: 15px;
    max-width: 100px;
  }
  .manifesto h1 {
    font-size: 53px;
    margin: 4vw 0 6vw 0;
  }
  .get-involved h2 {
    font-size: 46px;
    line-height: 68px;
  }
  .get-involved h2 span {
    font-size: 83px;
  }
  .get-involved p {
    font-size: 20px;
    line-height: 27px;
  }
  .inauguration p.date {
    font-size: 20px !important;
    margin-top: 0;
  }

  #countDown div > div {
    font-size: 29px;
    border-radius: 15px;
    margin: 0 8px;
    width: 43px;
    height: 44px;
    padding: 5px;
  }
  footer {
    padding: 0 5% 5% 5%;
  }
  .get-involved h2 span {
    font-size: 60px;
  }
  .get-involved h2 {
    font-size: 37px;
  }
  .get-involved p {
    font-size: 17px;
    line-height: 32px;
  }
  .get-involved .date {
    font-size: 1;
  }
  .lateral-packs {
    display: none;
  }
}
@media screen and (max-width: 500px) {
  #countDown div > div {
    margin: 0 10px !important;
    font-size: 34px !important;
    border-radius: 22px;
    width: 50px !important;;
    height: 50px !important;;
    padding: 7px;
  }
  /* .bg-circle{
      background-size: auto 100%;
      height: 84vh;
      background-position: center;
  }
  .bg-circle .white-pack {
    height: 26vh;
    left: calc(50% - 13vh);
    top: 17vh;
  } */
  /* .bg-circle .white-pack {
    height: 10vh;
    left: calc(50% - 5vh);
    top: 4vh;
  } */
  /* .bg-circle .empty-div {
    height: 72vw;
  }
  .bg-circle .lays-white {
    display: none;
  }
  .bg-circle p{
    font-size: 14px;
    top: 46vh;
  } */

  /* .bg-circle p {
    font-size: 10px;
    top: 14vh;
  } */
  h1 {
    font-size: 35px;
    margin: 9vw 0;
  }
  .project-wrapper {
    padding-left: 5%;
    width: 90%;
  }
  .lays-yellow img {
    height: 16vw;
  }
  .replay img {
    height: 10vw;
  }
  .three-blocks {
    margin: 20px 0;
  }
  .three-blocks .block p {
    margin: 8px 0;
  }
  .three-blocks .block img {
    height: 15vh;
  }
  .manifesto h1 {
    font-size: 35px;
    margin: 20px 0 20px 0;
  }
  .manifesto {
    height: auto;
    padding-bottom: 14vh;
    background-size: auto 100%;
    background-position: center;
  }

  .manifesto .desc {
    padding: 0 5%;
    text-align: left;
  }

  .wrapper-center {
    padding: 0 5%;
  }
  .wrapper-field {
    width: 100%;
    flex-direction: row;
    background-size: auto 97%;
    background-position: 45%;
    margin: 50px auto 0 auto;
  }
  .bl-field {
    width: 100%;
  }
  .get-involved h2 {
    font-size: 30px;
    line-height: 47px;
  }
  .get-involved h2 span {
    font-size: 48px;
    line-height: 41px;
  }
  .get-involved p {
    font-size: 15px;
    line-height: 20px;
  }
  .inauguration p.date {
    font-size: 19px;
    margin-top: 0;
  }
  .get-involved .left-pack,
  .get-involved .right-pack {
    display: none;
  }
  #countDown {
    margin-bottom: 0;
  }
  .inauguration p:nth-child(1) {
    margin-bottom: 7px;
  }
  .inauguration p.date {
    font-size: 16px;
    margin-top: 0;
  }
}
/* Landscape */
@media only screen and (min-device-width: 320px) and (max-device-width: 480px) and (-webkit-min-device-pixel-ratio: 2) and (orientation: landscape) {
  .bg-circle {
    background-size: 100%;
    height: auto;
    background-position: top;
  }
  .bg-circle p {
    font-size: 12px;
    top: 46vh;
  }
}

@media screen and (device-width: 360px) and (device-height: 640px) and (-webkit-device-pixel-ratio: 2) {
  .bg-circle p {
    font-size: 16px;
    top: 58vh;
  }
  .bg-circle .white-pack {
    height: 34vh;
    left: calc(50% - 17vh);
    top: 23vh;
  }
}
