@import url('https://fonts.googleapis.com/css2?family=Libre+Caslon+Text:ital,wght@0,400;0,700;1,400&display=swap');
* {
  margin: 0;
  padding: 0;
}

:root {
  --padding: 1.5rem;
  --color-black: #000;
  --color-white: #fff;
  --color-grey: #7f7b77;
  --color-blue:  #001c2c;
  --color-light: #f2eee6; /* #fff6ef */
  --color-text: var(--color-grey);
  --color-text-grey: var(--color-grey);
  --color-background: var(--color-light);

  --font-family-sans: 'Libre Franklin', Helvetica, Arial, sans-serif;
  --font-family-serif: 'Libre Caslon Text', Georgia, Times, serif;
}

html {
  font-family: var(--font-family-serif);
  color: var(--color-text);
  background: var(--color-background);
  box-sizing: border-box;
  scroll-behavior: smooth;
}
body {
  margin: 0 auto;
}
.start-section{
  position: relative;
  z-index: 999;
  display: block;
  height: 100vh;
}
.vertical-section{
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

main {

}
.pure-g  {
  overflow: hidden;
}
.pure-g [class*="pure-u"] {
  font-family: var(--font-family-serif);
  overflow: hidden;
}
p{
  color:  var(--color-black);
}
h1 {
  margin: 0;
  padding: 0;
}

div{
  box-sizing: border-box;
}

section {
  min-height: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 4rem;
}
main section:first-child {
  padding-top: 6rem;
}

figure{
  text-align: center; /* ensures the image is always in the h-middle */
  overflow: hidden; /* hide the cropped portion */
  max-height: 100vh;
}
figure img{
  object-fit: cover;
  width: 100%;
}
section h1{
  font-size: 2.4rem;
  letter-spacing: 0.1rem;
  font-weight: 900;
}
section h2{
  font-size: 2rem;
  letter-spacing: 0.05rem;
  font-weight: 400;

}
section p{
  line-height: 1.5;
  margin-top: 1rem;
}



.full {
  width: 100%;
}

.boxed {
  max-width: 1280px;
  margin: 0 auto;
}

.header {
  background-color: rgba(255,255,255, 1);
  position: fixed;
  width: 100%;
  height: 0;
  z-index: 99;
}
.header .logo {
  float: left;
  padding: 1rem 0.4rem 1rem 1rem;
}
.header .logo img{
  float: left;
  width: 36px;
  display: block;

}
.menu{
  background-color: var(--color-light);
  opacity: 0.96;
  /*border-bottom: 1px solid var(--color-grey);*/
}
.menu ul {
  display: block;
  margin-top: 0.6rem;
}
.menu ul li {
  float: left;
  display: block;
}
.menu ul li a {
  padding: 0.35rem 0.8rem;
  display: block;
  text-decoration: none;
  color: var(--color-grey);
  font-weight: 700;
  font-size: 0.9rem;
}
}
.menu ul li a[aria-current] {
  text-decoration: underline;
}
.header .logo-loredan {
  float: right;
  padding: 0.4rem 1rem 1rem 0.4rem;
}
.header .logo-loredan img{
  float: left;
  width: 32px;
  display: block;

}

.tcenter{
  text-align: left;
}

.social {
  display: none;
  width: 48px;
  margin: 20px 2rem;
  float: right;

}
.social a {
  padding: .7rem .5rem;
}



.vimeo-wrapper {
  background-color: var(--color-light);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  pointer-events: none;
  overflow: hidden;
}
.vimeo-wrapper video{
   width: 100vw;
   height: 56.25vw; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
   min-height: 100vh;
   min-width: 177.77vh; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
}
.start-logo{
  width: 280px;
  padding-top: 20vh;
  margin: 0 auto;
}

.start-logo a{
 width: 100%;
 display: block;
}

.start-logo a::after {
  content: " ";
  display: block;
  margin: 3rem auto;
  width: 1px;
  height: 20vh;
  border-left: 1px solid  var(--color-grey);
}

.start-mouse{
  width: 24px;
  margin: 0 auto;
}

.start-mouse a{
 width: 100%;
 display: block;
  position: relative;
  animation: pulse 2.5s infinite;
  animation-timing-function: ease-in-out;
}

.start-button{
  width: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}
.start-button a{
  color: var(--color-grey);
  font-family: var(--font-family-serif);
  letter-spacing: 0.05rem;
  text-decoration: none;
  font-size: 1.2rem;
}

.start-button a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f078";
  font-style: normal;
  width: 100%;
  display: block;
  text-align: center;
  font-size: 1.5rem;
  position: relative;
  animation: pulse 2.5s infinite;
  animation-timing-function: ease-in-out; 
  margin-bottom: 0.8em;
}
@keyframes pulse {
  0% {
    top: 14px;
  }
  50% {
    top: 5px;
  }
  100% {
    top: 14px;
  }
}

.start-button a i{
  font-size: 2rem;
  width: auto;

}


.box1{
  padding: 2rem;
}
.box2{
  padding: 2rem;
}
.box3{
  padding: 2rem;
}
.box4{
  padding: 2rem;
}
.box5{
  padding: 2rem;
}
.box6{
  padding: 2rem;
}

.box-end{
  padding: 2rem 2rem 4rem 2rem;
}

.box-scheda{
  position: relative;
}
.scheda{
  width: 100%;
  text-align: center;
  transition: 0.6s cubic-bezier(.86,0,.07,1);
  margin-top: 3rem;
}
.scheda h3{
  font-size: 1.8rem;
}
.scheda h3 a{
  color: var(--color-grey);
  text-decoration: none;
}
.scheda:hover{
  opacity: 0.85;
}

.hr-area {
  margin: 0 auto;
  max-width: 240px;
  text-align: center;
  margin-top: 4rem;
}
.scheda hr{
  margin: 0.4rem 4rem;
  transition: 0.6s cubic-bezier(.86,0,.07,1);
}
.scheda:hover hr{
  margin: 0.4rem 5rem;
}
.video-container {
  width: 100%;
  height: 100vh;
  position: absolute;
  z-index: -1;
}

.video-container video {
  width: 50%;
  position: absolute;
  z-index: -1;
  bottom: 6vh;
  right: 0;
}
.pure-g video{
  width: 100%;
}
.rwd-video {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}
/*.rwd-video iframe,
.rwd-video object,
.rwd-video embed {
  height: 132%;
  left: 0;
  position: absolute;
  top: 0;
  width: 132%;
  margin-top: -10%;
  left: -16%;
}*/


.rwd-video iframe,
.rwd-video object,
.rwd-video embed {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;

}


.footer{
  /*background-color: var(--color-white);*/
  padding-top: 2rem;
}

.footer p{
  font-size: 0.9rem;
}
.footer h4{
  color: var(--color-black);
  line-height: 1.5;
  margin-top: 1rem;
  font-size: 1.4rem;
  font-weight: 400;
}
.footer a{
  color: var(--color-black);
}
.copyright{
  font-size: 0.8rem !important;
  font-weight: 700;
  letter-spacing: 0.02rem;
  color: var(--color-grey);
}

.swiper {
  width: 100%;
  height: 100%;
}
.swiper-slide{
  width: 100% !important;
}
.swiper img{
  width: 100%;
  object-fit: cover;
}

.swiper-button-next, .swiper-button-prev {
  color: var(--color-light);
}

.wow{
  overflow: hidden;
}



.swiper-button-next, .swiper-button-prev {
  scale: 0.6;
}