/* Colori principali */
:root {
  --white: #F7F6F2;
  --brown: #7D3A2E;
  --black: #2D2A26;
  --orange: #CB975D;

  --nero: #000;
  --tre: #333;
  --neon: #DEFF00;
}

.white {
  background-color: var(--white);
}

.brown {
  background-color: var(--brown);
}

.black {
  background-color: var(--black);
}

.orange {
  background-color: var(--orange);
}

.text-black {
  color: var(--black);
}

.nero {
  background-color: var(--nero);
}

.tre {
  background-color: var(--tre);
}

@font-face {
  font-family: Avenir;
  src: url(asset\font\avenir\AvenirLTStd-Black.otf);
}

@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@100;200;300;400;500;600;700&family=Inter:wght@100;200;300;400;500;600;700;800;900&family=Roboto+Mono:wght@500&display=swap');

@font-face {
  font-family: BlueCashews;
  src: url(asset/font/bluecash/BlueCashews.otf);
}

.noVideo {
  display: none;
}

body {
  max-width: 100vw;
  overflow-x: hidden;
  /* bande nascoste */
  /* scroll-behavior: smooth; */
  /* lag su Chrome */
  text-align: inherit;
  background-color: var(--black);
}

/* margini azzerati */
.row {
  margin: 0 9vw;
  /* margine responsive */
  padding: 0;
}

.container-fluid {
  margin: 0;
  padding: 0;
}

/* selection customizzata */
::selection {
  color: var(--white);
  background: var(--black);
}

/* classe per ottenere scroll a schede */
.cards {
  position: sticky !important;
  top: 0;
}

/* dividers */
.separator, .separator2 {
  padding-top: 50px !important;
  top: 0;
  padding-bottom: 8.75vw !important;
}

.separator::after {
  position: absolute;
  top: -8.65vw;
  content: "";
  width: 100vw;
  height: 8.75vw;
  /* cateto_a = cateto_b * tangente angolo compreso
  per mantenere inclinazione costante al resize
  l'altezza è espressa in tangente di 5° (pendenza del divider)vw */
  background: inherit;
  /* eredita lo sfondo dalla section parent */
  clip-path: polygon(100% 0, 0 100%, 100% 100%);
  /* / */
  left: 0;
}

.separator2::after {
  position: absolute;
  top: -8.65vw;
  content: "";
  width: 100%;
  height: 8.75vw;
  /* cateto_a = cateto_b * tangente angolo compreso
  per mantenere inclinazione costante al resize
  l'altezza è espressa in tangente di 5° (pendenza del divider)vw */
  background-color: inherit;
  /* eredita lo sfondo dalla section parent */
  clip-path: polygon(0 0, 0 100%, 100% 100%);
  /* \ */
  z-index: 10;
  left: 0;
}

.mockup {
  width: 60%;
  width: 200px;
  overflow: hidden;
}

#hero {
  margin-top: -20vw !important;
  margin-bottom: 9vw;
}

#funz {
  z-index: 100;
  position: flex;
}

/* video hero: 100% width e height per andare in copertina */
.myVideo {
  position: fixed;
  /* right: 0; */
  bottom: 0;
  min-width: 100%;
  min-height: 100%;
  z-index: -1;
  left: 50%;
  transform: translate(-50%);
}

/* cursore personalizzato */
* {
  cursor: none;
}

.cursor {
  width: 13vh;
  height: 13vh;
  border-radius: 50%;
  position: fixed;
  backface-visibility: hidden;
  background-color: #FFF;
  mix-blend-mode: difference;
  /* transition-duration: 200ms;
  transition-timing-function: ease-in; */
  pointer-events: none;
  transform: translate(-50%, -50%) scale(.5);
  z-index: 20000;
}

.custom-cursor--link {
  transform: translate(-50%, -50%) scale(1);
}

/* immagini testimoninaza */
.conta {
  position: relative;
  overflow: hidden;
}

.conta img {
  -webkit-transition: -webkit-transform 0.5s ease;
  -moz-transition: -moz-transform 0.5s ease;
  transition: transform 0.5s ease;
}

.conta:hover img {
  -webkit-transform: rotate(3deg) scale(1.1);
  -moz-transform: rotate(3deg) scale(1.1);
  -o-transform: rotate(3deg) scale(1.1);
  transform: rotate(3deg) scale(1.1);
}

.overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  transition: .5s ease;
  /* background-color: var(--viola); */
  mix-blend-mode: soft-light;
}

.conta:hover .overlay {
  opacity: 1;
}

/* bande gialle */
.bannerContainer {
  margin-top: -15em;
}

mark {
  font-family: DrukTextWide;
  font-size: 1.47vw;
  font-style: normal;
  font-weight: 700;
  line-height: 24px;
  color: black;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
  background-color: #DEFF00;
}

/* navbar style */
#navbar {
  padding: 15px 9.2vw;
  transition: top 0.6s;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background-color: rgba(34, 34, 34, 0.9);
}

.btn-sm {
  font-size: 1rem;
}

.btn-outline-secondary {
  color: #FFF;
  border-color: #FFF;
}

.btn-outline-secondary:hover {
  background-color: #FFF;
  border-color: #FFF;
}

#navbarNav {
  /* position: absolute; */
  font-family: DrukTextWide;
  font-size: 20px;
  font-style: normal;
  text-transform: uppercase;
  font-weight: 500;
  color: white;
  overflow: hidden;
}

#navbarNav :hover {
  color: #9B51E0;
}

/* Non strettamente necessaria, default=sx ma per eventuali necessità */
.textAlignLeft {
  text-align: left;
}

.textAlignRight {
  text-align: right;
}

.telefoni {
  position: relative;
  overflow: auto !important;
}

.telefoni img {
  -webkit-transition: -webkit-transform 0.5s ease;
  -moz-transition: -moz-transform 0.5s ease;
  transition: transform 0.5s ease;
}

.telefoni:hover img {
  -webkit-transform: rotate(-3deg);
  -moz-transform: rotate(-3deg);
  -o-transform: rotate(-3deg);
  transform: rotate(-3deg);
}

/* ==== TIPOGRAFIA ==== */

#hero h1, h2 {
  color: var(--white);
}


#homeH1 {
  font-size: 96px;
  line-height: 0.9;
}

#homeTitle {
  height: 71.042px;
}

h2 {
  font-family: 'Inter', sans-serif;
  font-size: 36px;
  line-height: 1.2;
  font-weight: 500;
  margin-bottom: 20px;
}

p {
  font-family: 'Inter', sans-serif;
  font-size: 18px;
  font-weight: 400;
  margin: 9px 0;
  padding: 0 25vw;
}

.footerP {
  margin: 0;
  padding: 0;
}

h1 {
  font-family: 'Inter', sans-serif;
  font-size: 36px;
  font-style: normal;
  font-weight: 600;
  line-height: 1.1;
  margin-bottom: 48px;
  padding: 0 20vw;
}

button a {
  font-family: 'Inter', sans-serif;
  text-decoration: none;
  font-weight: 500;
  color: var(--black);
}

#testipassione {
  background-color:
}

/* tag di sezione */
.title {
  /* position: absolute; */
  font-family: DrukTextWide;
  font-size: 20px;
  font-style: normal;
  text-transform: uppercase;
  font-weight: 500;
  margin-bottom: 20px;
  color: white;
  overflow: hidden;
}

.titleStroke {
  color: black;
  /* -webkit-text-fill-color: black; */
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: white;
  opacity: 0.5;
}

.containerTitle {
  height: 50px;
  /* justify-content: space-between; */
  align-items: center;
}

/* badge targhetta viola */
.badge {
  font-family: DrukTextWide;
  font-size: 15px;
  font-style: normal;
  text-transform: uppercase;
  font-weight: 400;
  margin-bottom: 20px;
  color: white;
  background-color: #9B51E0;
  border-radius: 0;
}

/* scrittona outline svg */
#h2Dojo {
  height: auto;
  width: 52vw;
  margin-top: 30px;
  position: relative;
}

/* tipografia footer */
.footerTag {
  font-size: 12px;
  text-transform: uppercase;
  color: #b2b2b2;
}

.footerBodyCopy {
  margin-bottom: 10px;
  font-size: 14px;
}

.solo-mobile {
  display: none;
}

.centrato {
  text-align: center !important;
}

button {
  background-color: var(--white);
  font-size: 24px;
  border: none;
  padding: 9px 24px;
  border-radius: 100px;
}

button:hover {
  background-color: var(--black);
}

button:hover a {
    color: var(--white);
}

#timer {
  font-family: 'Roboto Mono', monospace;
  font-weight: 500;
  background-color: var(--white);
  font-size: 24px;
  border: none;
  padding: 2px 18px;
  border-radius: 100px;
}

.payoff {
  max-height: 151.2px;
  max-width: 90vw;
  margin: 96px 0 48px 0;
}

.payoff2 {
  max-height: 167.95px;
  max-width: 90vw;
  margin: 96px 0 48px 0;
}

#payoffDiv {

}

#footer p {
  color: var(--white);
  font-family: 'Inter', sans-serif;
  font-size: 18px;
  font-weight: 400;
}

#timerdiv {
  margin-bottom: 18px;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 6px
}

#homeContent {
  margin-bottom: 60px
}

/*-----------------------------------------------------------------------------------*/
/*	desktop
/*-----------------------------------------------------------------------------------*/
@media (max-width: 1600px) {
  .dkt_none {
    display: none;
  }
}

/*-----------------------------------------------------------------------------------*/
/*	tablet
/*-----------------------------------------------------------------------------------*/
/* @media screen and (max-width: 1024px) { */
@media (max-width: 1024px) {
  body {
    overflow-x: hidden !important;
  }

  h1 {
    padding: 0 10vw;
  }


  h2 {
    font-size: 24px;
    margin-bottom: 20px;
  }

  button {
    font-size: 16px;
    border: none;
    padding: 4px 16px;
    border-radius: 100px;
  }

  #homeH1 {
    font-size: 3.5em;
    line-height: 60px;
  }

  p {
    padding: 0 10vw;
  }

  #homeTitle {
    height: auto;
  }


  .no-tablet {
    display: none;
  }

  * {
    cursor: auto;
  }

  .navbar-dark .navbar-toggler {
    color: rgba(255, 255, 255, .55);
    border: 0;
  }
}

@media (max-width: 820px) {
  .no-tablet-vert {
    display: none;
  }
}

/*-----------------------------------------------------------------------------------*/
/*	mobile
/*-----------------------------------------------------------------------------------*/
@media (max-width: 576px) {

  #timerdiv {
    flex-direction: column;
    align-items: center;
    gap: 12px
  }

  #homeContent {
    margin-bottom: 120px
  }

  #hero {
    margin-top: -5vh !important;
    margin-bottom: -6vh !important;
  }

  .no-mobile {
    display: none;
  }

  html, body {
    text-align: center !important;
    overflow-x: hidden !important;
  }

  * {
    cursor: auto;
  }

  .row {
    margin: 0 16px;
  }

  /* h1 {
    font-size: 48px;
    line-height: 1.1;
  } */

  #h2Dojo {
    width: 80vw;
  }

  mark {
    font-family: DrukTextWide;
    font-size: 1rem;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    color: black;
    text-transform: uppercase;
    text-align: center;
    white-space: nowrap;
    background-color: #DEFF00;
  }

  #navbar {
    padding: 15px 16px;
    transition: top 0.6s;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    /* backdrop-filter: blur(10px); */
  }

  .cards {
    position: relative !important;
    top: 0;
  }

  .solo-mobile {
    display: block;
  }

  .containerTitle {
    margin-bottom: 5vw;
  }
}
