/* VARIABILI */


/* Reset */
body, html{ font-family: sans-serif; line-height: 1; font-size: 16px; box-sizing: border-box;margin: 0;padding: 0;}*,*:before,*:after{ box-sizing: border-box; }h1,h2,h3,h4,h5,h6, p, ol, ul{margin: 0 0 1rem 0;padding: 0;}ol,ul{padding-left: 20px;line-height: 1.5;}img{height: auto;}h1{font-size: 4rem;} h2{font-size: 3rem;} h3{font-size: 2rem;} h4{font-size: 1rem;} h5{font-size: 0.8rem;} h6{font-size: 0.6rem;}a{text-decoration:none}
body{ background: var(--body-bg);}

/* Miscellanea */
.spacer{height: 80px;}

/* ! Title System */
h1, .text-1 {font-size: 3.5rem;margin-bottom:0.5rem}
h2, .text-2 {font-size: 2.4rem;margin-bottom:1rem}
h3, .text-3  {font-size: 1.8rem;margin-bottom:1rem}
h4, p, .text-4 {font-size: 1rem;margin-bottom:1rem; line-height: 1.5;}
a{color: var(--title-a-color)}

h1, .text-1 {font-size: 2.2rem;margin-bottom:1rem}
h2, .text-2 {font-size: 2.0rem;margin-bottom:1rem}
h3, .text-3  {font-size: 1.8rem;margin-bottom:1rem}
h4, p, .text-4 {font-size: 1.2rem;margin-bottom:1rem; line-height: 1.5;}

/* ! Button System */
.button { 
  font-size: 1rem; text-transform: uppercase; background: var(--button-bg); color: var(--button-color);
  text-decoration: none;padding: 14px 25px; display: inline-block;
  border-radius: 4px; font-weight: 700;
}
.button:hover{ background: #444; }

/* ! Grid System */
.grid { margin: 0 auto; padding: 0 15px; max-width: 1250px; display: flex; flex-flow: row; flex-wrap: wrap;}
.grid--center{justify-content: center;}
.col{ flex: 1;}

[class*='col-'] { position: relative;padding: 0 15px;}
.grid .grid [class*='col-'] {padding: 0px;}

.col-20{ width: 20%; }
.col-25{ width: 25%; }
.col-30{ width: 30%; }
.col-33{ width: 33.33%; }
.col-50{ width: 50%; }
.col-70{ width: 70%; }
.col-80{ width: 80%; }
.col-100{ width: 100%; }

@media (max-width: 991px) {
    .tab-20 { width: 20%; }
    .tab-25 { width: 25%; }
    .tab-33 { width: 33.33%; }
    .tab-50 { width: 50%; }
    .tab-100 { width: 100%; }
}

@media (max-width: 768px) {
    [class*='col-'] { width: 100%;}
    .sma-20 { width: 20%; }
    .sma-25 { width: 25%; }
    .sma-33 { width: 33.33%; }
    .sma-50 { width: 50%; }
    .sma-100 { width: 100%; }
}

/* ! Helpers  */
.mt-0{margin-top: 0 }
.mt-1{margin-top: 10px}
.mt-2{margin-top: 20px}
.mt-3{margin-top: 40px}
.mt-4{margin-top: 100px }

.mb-0{margin-bottom: 0}
.mb-1{margin-bottom: 10px}
.mb-2{margin-bottom: 20px}
.mb-3{margin-bottom: 40px}
.mb-4{margin-bottom: 100px}

.p-0{padding: 0}
.p-1{padding: 10px}
.p-2{padding: 20px}
.p-3{padding: 40px}
.p-4{padding: 100px}

.pt-1{padding-top: 10px;}
.pt-2{padding-top: 20px;}
.pt-3{padding-top: 40px;}
.pt-4{padding-top: 15vh;}

.pb-1{padding-bottom: 10px;}
.pb-2{padding-bottom: 20px;}
.pb-3{padding-bottom: 40px;}
.pb-4{padding-bottom: 15vh;}

.text-center { text-align: center; }
.text-right { text-align: right; }
.text-left { text-align: left; }
.img-res { width: 100%; height: auto; margin-bottom: 20px;vertical-align: middle;}
.relative{position: relative;}

@media (max-width: 768px) {
    .sma-text-center{text-align: center;}
  }

/* ! Cover */
.cover{ 
  text-align: center; padding:10px; margin:0px; min-height:600px; width:100%; 
  display:flex; flex-direction:column; justify-content:center; 
  background-position: center center; background-size:cover;
}
.cover * {color: var(--cover-color)}

/* Helpers - Utility */
.img-round{ border-radius: 50%;}
.round{border-radius: 20px;}
.spacer{height: 10vh;}
.relative{position: relative;}
.overflow-h{overflow: hidden;}
@media (max-width: 768px) {
  .sma-text-center{text-align: center;}
}

.img-small{height: 270px;object-fit: cover;}
.ionicon{width: 20px;height: 20px;margin: 10px;}
.font-normal{font-weight: 400;}

/* Menu */

.header { 
  background-color: var(--menu-bg); 
  position: fixed; /**/
  top:0;  left:0; z-index: 9999; width: 100%; padding: 10px 15px; }
.header__content{max-width: 1200px;width: 100%;margin: 0 auto; display: flex;justify-content: space-between;}

.header__logo,
.header__quick{display: flex; align-items: center;color:var(--menu-color)}

.header__img{height:50px;}

.header__menu{padding: 0;margin: 0;}
.header__menu li{display: inline-block;}
.header__menu li a{color:var(--menu-color); opacity: 0.8;display: block;padding: 16px;font-size: 15px;}

@media (max-width: 768px) {
  .header__menu{   
    position: absolute; top:60px; left:0; background-color: var(--menu-bg); width: 100%; height: 100vh;
    height: 0vh; overflow: hidden;transition: all 1s cubic-bezier(.215, .61, .355, 1);
    z-index: 9999;
  }

  .header__menu li{width: 100%;border-bottom: 1px solid #444}
  .menu-open .header__menu{height: 100vh;padding: 3%;}

  .icon-hamburger{height: 50px;width: 40px;margin-left: 20px;padding-top: 5px;}
  .icon-hamburger span{height: 2px; width: 30px;background: var(--menu-color);position: relative;display: block;margin-top: 11px;transition: all 0.2s cubic-bezier(.215, .61, .355, 1);}

  .menu-open .icon-hamburger span:nth-child(1){transform: rotate(45deg) translateY(9px);}
  .menu-open .icon-hamburger span:nth-child(2){transform: rotate(-45deg) translateY(-9px);}

  .header__quick{display: flex; justify-content: flex-end; width: 50%;}

}

.hero{min-height: 100vh;display: flex;align-items: center;}

/* Footer */
.footer{ background-color: var(--footer-bg);color:var(--footer-color);}
.footer-bottom{ background-color: var(--footer-bottom-bg); color: var(--footer-bottom-color); padding: 20px; text-align: center; margin-bottom: 0;}
.footer-bottom a{ color: var(--footer-bottom-color)}