:root {
  --red-color: #7E2034;
  --darkred-color: #5A1422;
  --white-color: #FFF;
  --grey-color: #222222;
  --black-color: #151515;
  --lightgrey-color: #575656;
  --light-color: #EFEFEF;
}
html, body {
  padding: 0px;
  margin: 0px;
  color: var(--lightgrey-color);
  outline: none;
  font-size: 20px;
  line-height: 1.4;
  font-weight: 400;
  background-color: var(--white-color);
  font-family: 'Roboto', sans-serif;
}
html, body {
  -webkit-font-smoothing: antialiased;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);
  -moz-osx-font-smoothing: grayscale;
  -webkit-overflow-scrolling: touch;
}
* {
  outline: none !important;
}
a {
  text-decoration: none;
  color: inherit;
  transition: color 0.2s;
}
a:hover {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}
.align-center {
  text-align: center;
}
.align-right {
  text-align: right;
}
.align-justify {
  text-align: justify;
}
._block {
  display: block !important;
}
.nomargin {
  margin: 0 !important;
}
.nopadding {
  padding: 0 !important;
}
.noborder {
  border: none !important;
}
.sticky-top {
  top: 0;
}
dl, ol, ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
/**main setting**/
.container-main {
  overflow: hidden;
}
section {
  position: relative;
}
section.section-first {
  padding-bottom: 0 !important;
}
section.section-pad {
  padding: 7.5rem 0;
}
section.section-pad-top {
  padding-top: 7.5rem;
}
.container {
  width: 100%;
  max-width: 100%;
  padding: 0 5rem;
  margin-bottom: 5rem;
}
.container:last-of-type {
  margin-bottom: 0;
}
.container.container-inside {
  max-width: 1024px;
}
.row {
  margin-bottom: 7.5rem;
}
.row:last-of-type {
  margin-bottom: 0;
}
.el-margin {
  margin-top: 5em;
}
.col-pad {
  padding: 0 5rem;
}
.col-pad-left {
  padding-left: 5rem;
}
.col-pad-right {
  padding-right: 5rem;
}
.col-pad-top {
  padding-top: 5rem;
  padding-bottom: 5rem;
}
/**bg**/
.bg-dark {
  background-color: var(--black-color);
}
.bg-grey {
  background-color: var(--grey-color);
}
.bg-red {
  background-color: var(--red-color);
}
.bg-black {
  background-color: var(--black-color);
}
.bg-light {
  background-color: var(--light-color);
}
.bg-red h1, .bg-red h2, .bg-red h3, .bg-red h5, .bg-red {
  color: var(--white-color);
}
.bg-red .btn-more {
  background-color: var(--black-color);
}
.bg-red .subtitle h5 {
  border-color: var(--white-color);
}
.bg-grey h1, .bg-grey h2, .bg-grey h3, .bg-grey h5, .bg-grey {
  color: var(--white-color);
}
.bg-grey .btn-more:hover {
  background-color: var(--red-color);
}
/**border**/
.border-after-left::after, .border-after-right::after {
  content: "";
  width: 5rem;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.border-after-right::after {
  right: 0;
  left: auto;
}
.border-after-red::after {
  background-color: var(--darkred-color);
}
.border-after-grey::after {
  background-color: var(--lightgrey-color);
}
/**end main setting**/
/**hackrow*/
.big-gutters {
  margin-right: -2rem !important;
  margin-left: -2rem !important;
}
.big-gutters > .col, .big-gutters > [class*=col-] {
  padding-right: 2rem;
  padding-left: 2rem;
}
.row {
  margin-right: -2.5rem !important;
  margin-left: -2.5rem !important;
}
.row > .col, .row > [class*=col-] {
  padding-right: 2.5rem;
  padding-left: 2.5rem;
}
.row.row-little {
  margin-right: -15px !important;
  margin-left: -15px !important;
}
.row.row-little > .col, .row.row-little > [class*=col-] {
  padding-right: 15px;
  padding-left: 15px;
}
/**end hackrow*/
/**image setting**/
.cover {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  font-family: 'object-fit: cover;';
}
.img-free, .img-free img {
  width: 100%;
  max-width: 100%;
}
/*end image setting*/
/*typo*/
h1, h2, h3, h4, h5, h6 {
  padding: 0px;
  margin: 0 0 0 0;
  margin-bottom: 2.5rem;
  font-weight: 300;
  font-family: 'Roboto Condensed', sans-serif;
  color: var(--red-color);
}
h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child, h6:last-child {
  margin-bottom: 0;
}
h1 {
  font-size: 3rem;
}
h2, h3, h4 {
  font-size: 2.2rem;
  margin-top: 2.5rem;
}
h2:first-child, h3:first-child, h4:first-child {
  margin-top: 0;
}
h3.text-intro, .app-corso h3 {
  font-size: 1.5rem;
  font-family: 'Roboto', sans-serif;
  font-weight: 700;
}
h5 {
  font-size: 0.75rem;
  color: var(--lightgrey-color);
  text-transform: uppercase;
}
h2 strong, h3 strong, h4 strong {
  font-weight: 400;
}
p {
  font-size: 1rem;
  margin-bottom: 2rem;
}
p a {
  font-weight: 500;
}
p strong {
  font-weight: 500;
}
p:last-child, p:last-of-type {
  margin-bottom: 0;
}
blockquote {
  font-family: "Times New Roman", "serif";
  font-style: italic;
  color: var(--red-color);
  font-size: 1.5rem;
  margin: 0;
}
blockquote span.signature {
  display: block;
  margin-top: 1.5rem;
  font-size: 1rem;
  color: var(--lightgrey-color);
}
blockquote::before, blockquote::after {
  content: "";
  display: block;
  width: 5rem;
  height: 3px;
  background-color: var(--red-color);
  margin-bottom: 2.5rem;
}
blockquote::after {
  margin: 0;
  margin-top: 2.5rem;
}
/*end typo*/
/*btn*/
.btn-more {
  position: relative;
  display: inline-block;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  color: var(--white-color);
  border-radius: 0;
  background-color: var(--red-color);
  padding: 0.65rem 1.5rem;
  margin-top: 3rem;
  transition: background 0.3s, color 0.3s;
  /**/
  font-weight: 500;
  font-size: 0.8rem;
  letter-spacing: 0.02rem;
}
.btn-more:hover {
  color: var(--white-color);
}
@media only screen and (min-width: 992px) {
  .btn-more:hover {
    color: var(--white-color);
    background-color: var(--black-color);
  }
}
/*end btn*/
/*page*/
.bread {
  background-color: var(--light-color);
  padding: 2rem 5rem;
  color: var(--red-color);
  font-size: 0.55rem;
}
.bread a {
  color: var(--lightgrey-color);
}
.title-page .logo-page {
  margin-bottom: 0 !important;
  margin-right: 2rem;
}
.subtitle {
  margin-bottom: 3.5rem;
}
.subtitle h5 {
  display: inline-block;
  padding: 0 0 0.25rem 0;
  border-bottom: 1px solid var(--lightgrey-color);
}
.slide-home {
  position: relative;
}
.hero-claim {
  position: absolute;
  left: 5rem;
  bottom: 0;
  padding: 2rem 2.5rem;
  border-bottom: 2rem solid var(--darkred-color);
  max-width: 50%;
  z-index: 5;
}
.title-claim {
  font-weight: 300;
  font-family: 'Roboto Condensed', sans-serif;
  color: var(--white-color);
  font-size: 2rem;
  margin-bottom: 1.5rem;
}
.hero-claim .btn-more {
  margin-top: 1.5rem;
}
.text-nota {
  padding: 3rem;
  background-color: rgba(255, 255, 255, 0.1);
  border: 1px dashed rgba(255, 255, 255, 0.5);
}
.text-nota p {
  font-size: 0.85rem;
}
.app-corso {
  margin-bottom: 2.5rem;
  padding: 3rem;
  background-color: rgba(0, 0, 0, 0.2);
  box-shadow: 0px 3px 4px 0px rgb(0 0 0 / 25%);
}
.app-corso ul li {
  display: flex;
  font-weight: 300;
  font-family: 'Roboto Condensed', sans-serif;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  font-size: 0.8rem;
}
.app-corso ul li span:first-child {
  margin-right: 1rem;
}
.app-corso ul li:last-child {
  margin-bottom: 0;
}
.app-corso:last-child {
  margin-bottom: 0;
}
/*end page*/
/*img*/
figure {
  position: relative;
  margin-bottom: 2rem;
  width: 100%;
  overflow: hidden;
}
figure:last-of-type {
  margin-bottom: 0;
}
figure.img-hero {
  height: 100vh;
  min-height: 750px;
  z-index: 1;
}
figure.img-box {
  height: 800px;
  min-height: 800px;
}
.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--black-color);
  opacity: 0.2;
  z-index: 2;
}
.row-loghi {
  display: flex;
  justify-content: space-between;
}
.item-logo {
  background-color: rgba(0, 0, 0, 0.05);
  border-radius: 15px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 15px 0;
}
.item-logo img {
  max-width: 70%;
  max-height: 60%;
  mix-blend-mode: multiply;
}
@media only screen and (min-width: 1200px) {
  .item-logo {
    height: 130px;
  }
}
/*end img*/
/*margin hack*/
.row.remove-margin-list {
  margin-bottom: -4rem !important;
}
.row.remove-margin-list > [class*=col-] {
  margin-bottom: 4rem;
}
/*end margin hack*/
/*footer*/
footer {
  padding: 10rem 0 5rem 0;
  background-color: var(--black-color);
  color: var(--white-color);
}
footer .row {
  margin-bottom: 5rem;
}
footer p {
  font-size: 0.8rem;
}
a.logo-footer {
  display: block;
  margin: 0 auto;
  width: 200px;
}
a.logo-footer img {
  width: 100%;
}
.social-link {
  display: inline-block;
  margin: 0 2rem;
  font-size: 1.5rem;
}
/*end footer*/
/*swiper*/
.swiper-pagination {
  text-align: right;
  padding-right: 25px;
  bottom: 25px !important;
}
.swiper-pagination-bullet {
  width: 15px;
  height: 15px;
  display: inline-block;
  border-radius: 0;
  background: transparent;
  border: 1px solid var(--white-color);
  opacity: 1;
}
.swiper-pagination-bullet-active {
  background-color: var(--white-color);
}
/*end swiper*/
/*swiper testimonianze*/
.item-quote {
  padding: 3rem 2rem;
  background-color: rgba(0, 0, 0, 0.15);
  border-top-right-radius: 30px;
  border-bottom-left-radius: 30px;
  min-height: 100%;
}
.icon-quote {
  height: 25px;
  margin-bottom: 3rem;
}
.icon-quote img {
  height: 100%;
}
.swiper.galleryFull .swiper-slide {
  height: auto;
}
.swiper-control {
  position: relative;
  height: 40px;
  margin-top: 2rem;
}
@media only screen and (max-width: 767px) {
.swiper-control {
	display: none !important;
}
}
.swiper-button-prev, .swiper-button-next {
  width: 40px;
  height: 40px;
  border-radius: 40px;
  background-image: url('../img/icon/arrow-right.png');
  background-size: 12px;
  background-repeat: no-repeat;
  background-position: center;
  top: 0;
  margin-top: 0;
  border: 1px solid #fff;
}
.swiper-button-prev {
  left: 0;
  transform: rotate(180deg);
}
.swiper-button-next {
  right: 0;
}
.swiper-button-prev.swiper-button-prev-galleryFullPage {
  left: 20px;
  transform: rotate(180deg);
}
.swiper-button-next.swiper-button-next-galleryFullPage {
  right: 20px;
}
.swiper-button-next:after, .swiper-button-prev:after {
  display: none;
}
@media only screen and (min-width: 1200px) {
  .swiper.galleryFull {
    margin-left: 3rem;
  }
  .icon-quote {
    height: 35px;
  }
}
/*end swiper testimonianze*/
/****************/
/********svg star********/
/*setting*/
#star-imprenditore .st0 {
  fill: #E3D4D7;
}
#star-imprenditore .st1 {
  fill: #666666;
}
#star-imprenditore .st2 {
  enable-background: new;
}
#star-imprenditore .st3 {
  fill: #712938;
}
#star-imprenditore .st4 {
  fill: #E3D4D7;
  stroke: #808080;
  stroke-width: 5.67;
  stroke-miterlimit: 10;
}
#star-imprenditore .st5 {
  fill: none;
  stroke: #808080;
  stroke-width: 5.67;
  stroke-miterlimit: 10;
}
#star-imprenditore .st6 {
  fill: #C6A9AF;
  stroke: #CCCCCC;
  stroke-width: 5.67;
  stroke-miterlimit: 10;
}
#star-imprenditore .st7 {
  fill: #AA7F88;
  stroke: #B3B3B3;
  stroke-width: 5.67;
  stroke-miterlimit: 10;
}
#star-imprenditore .st8 {
  fill: #8D5460;
  stroke: #712938;
  stroke-width: 5.67;
  stroke-miterlimit: 10;
}
#star-venditore .st0 {
  fill: #E6E6E6;
  transform: translate(-6px, 20px);
}
#star-venditore .st1 {
  fill: #712938;
}
#star-venditore .st2 {
  fill: #808080;
  stroke: #712938;
  stroke-width: 5.67;
  stroke-miterlimit: 10;
}
#star-venditore .st3 {
  enable-background: new;
}
#star-venditore .st4 {
  fill: #CCCCCC;
  stroke: #712938;
  stroke-width: 5.67;
  stroke-miterlimit: 10;
}
#star-venditore .st5 {
  fill: #B3B3B3;
  stroke: #712938;
  stroke-width: 5.67;
  stroke-miterlimit: 10;
}
#star-venditore .st6 {
  fill: #999999;
  stroke: #712938;
  stroke-width: 5.67;
  stroke-miterlimit: 10;
}
#star-venditore .st7 {
  fill: #E6E6E6;
  stroke: #712938;
  stroke-width: 5.67;
  stroke-miterlimit: 10;
}
/*animation*/
.star-el {
  opacity: 0;
}
svg.scroll-reveal.inview .star-el {
  transition: opacity 1.2s;
  opacity: 1;
}
svg.scroll-reveal.inview #star {
  transition: opacity 1s;
  transition-delay: 0s;
}
svg.scroll-reveal.inview #star-el-01 {
  transition-delay: 0.2s;
}
svg.scroll-reveal.inview #star-el-02 {
  transition-delay: 1s;
}
svg.scroll-reveal.inview #star-el-03 {
  transition-delay: 2s;
}
svg.scroll-reveal.inview #star-el-04 {
  transition-delay: 3s;
}
svg.scroll-reveal.inview #star-el-05 {
  transition-delay: 4s;
}
/********end svg star********/
/****************/
/*selection*/ ::-moz-selection {
  color: white;
  background: var(--red-color);
}
::selection {
  color: white;
  background: var(--red-color);
}
/*end selection*/
/*lazy loading vanilla*/
img.lazy {
  opacity: 0;
  transition: opacity 0.5s;
}
img.lazy.lazy-loaded {
  opacity: 1;
  transition-delay: 0.2s;
}
/*end lazy loading vanilla*/