@font-face {font-family: 'Rubik'; font-display: swap; font-style: normal; font-weight: 400; src: local('Rubik'), local('Rubik-Regular'), url(/css/fonts/rubik-v9-latin-regular.eot?#iefix) format('embedded-opentype'), url(/css/fonts/rubik-v9-latin-regular.woff2) format('woff2'), url(/css/fonts/rubik-v9-latin-regular.woff) format('woff'), url(/css/fonts/rubik-v9-latin-regular.ttf) format('truetype'), url(/css/fonts/rubik-v9-latin-regular.svg#Rubik) format('svg') }
@font-face {font-family: 'Rubik'; font-display: swap; font-style: italic; font-weight: 400; src: local('Rubik Italic'), local('Rubik-Italic'), url(/css/fonts/rubik-v9-latin-italic.eot?#iefix) format('embedded-opentype'), url(/css/fonts/rubik-v9-latin-italic.woff2) format('woff2'), url(/css/fonts/rubik-v9-latin-italic.woff) format('woff'), url(/css/fonts/rubik-v9-latin-italic.ttf) format('truetype'), url(/css/fonts/rubik-v9-latin-italic.svg#Rubik) format('svg') }
@font-face {font-family: 'Rubik'; font-display: swap; font-style: normal; font-weight: 500; src: local('Rubik Medium'), local('Rubik-Medium'), url(/css/fonts/rubik-v9-latin-500.eot?#iefix) format('embedded-opentype'), url(/css/fonts/rubik-v9-latin-500.woff2) format('woff2'), url(/css/fonts/rubik-v9-latin-500.woff) format('woff'), url(/css/fonts/rubik-v9-latin-500.ttf) format('truetype'), url(/css/fonts/rubik-v9-latin-500.svg#Rubik) format('svg') }
@font-face {font-family: 'Rubik'; font-display: swap; font-style: normal; font-weight: 700; src: local('Rubik Bold'), local('Rubik-Bold'), url(/css/fonts/rubik-v9-latin-700.eot?#iefix) format('embedded-opentype'), url(/css/fonts/rubik-v9-latin-700.woff2) format('woff2'), url(/css/fonts/rubik-v9-latin-700.woff) format('woff'), url(/css/fonts/rubik-v9-latin-700.ttf) format('truetype'), url(/css/fonts/rubik-v9-latin-700.svg#Rubik) format('svg') }
/* body, html{ scroll-behavior: smooth; } */
body{ font-family: 'Rubik', sans-serif; color: #333f48; font-size: 16px; line-height: 1.8; }
header{ background: linear-gradient(to left, transparent 70%, #f2f3f5 30%); position: relative; z-index: 2; transform: translateY(50%); margin-top: -35px; }
strong{ font-weight: bold; }
ul.nav li a{ font-weight: 500; color: #333f48; font-size: 14px; }
ul.nav.navbar-nav li:last-child a:not(.dropdown-item) { color: #EF3340; }
.h1{ font-size: 3rem; font-weight: 300; }
.text-red{ color: #EF3340; }
.text-green{ color: #22b573; }
.text-lgrey{ color: #a8abaf; }
.bg-white{ background-color: #FFF; }
.bg-red{ background-color: #EF3340; }
.bg-green{ background-color: #22b573; }
.bg-blue{ background-color: #333f48; }
.bg-lgrey{ background-color: #f2f3f5; }
.bg-button{ transition: all .4s; } 
.bg-red.bg-button:hover{ background-color: #FF525B; }
.bg-green.bg-button:hover{ background-color: #27D688; }
.green-strong strong{ color: #27D688; }
.red-strong strong{ color: #FF525B; }
.form-control:focus{ border-color: initial; box-shadow: none; }
.skew-parent{ -webkit-transform: skewX(-15deg); -ms-transform: skewX(-15deg); transform: skewX(-15deg); display: inline-block; }
.skew-content{ -webkit-transform: skewX(15deg); -ms-transform: skewX(15deg); transform: skewX(15deg); display: inline-block; color: #FFF; white-space: nowrap; }
.skew-button{ padding: 20px 60px; font-size: 14px; }
.text-border{ position: relative; }
.text-border::after{ content: ''; position: absolute; bottom: -10px; left: 0; width: 25%; height: 1px; background-color: #FFFFFF; }
.text-border-dark::after{ content: ''; position: absolute; bottom: -10px; left: 0; width: 25%; height: 1px; background-color: #333f48; }
#nav-contact div{ font-size: 13px; }
#main-menu{ background-color: #f2f3f5; }
.bg-section{ background-size: cover; background-repeat: no-repeat; width: 100%; background-position: center; height: 600px; overflow-y: visible; }
.bg-section .image-caption{ position: relative; top: 50%; transform: translateY(-50%); display: flex; justify-content: end; }
.bg-section .image-caption .image-caption-wrapper{ padding-top: 100px; padding-bottom: 100px; padding-left: 50px; text-align: right; position: relative; }
.bg-section .image-caption .image-caption-wrapper::after{ content:""; position: absolute; top: 0; bottom: 0; background-color: #EF3340; left: calc(100% - 1px); width: 600px; z-index: -1; }
.bg-triangle{ height: 600px; min-height: 600px; overflow-y: visible; }
.arrowline{ width: 35px; position: relative; display: inline-block; vertical-align: middle; height: 19px; left: 0; }
.arrowline *{ stroke: currentColor; fill: none; stroke-miterlimit: 10; color: #ef3340; stroke-width: 3; }
.arrowline .arrow-down { transform: rotate(0deg); transition: opacity .3s ease,-webkit-transform .3s ease; transform-origin: right; }
.arrowline .arrow-up { transform: rotate(0deg); transition: opacity .3s ease,-webkit-transform .3s ease; transform-origin: right; }
.custom-button{ padding: 15px 55px; padding-right: 25px; font-size: 13px; text-decoration:none!important; transition: all .4s; cursor: pointer;}
.custom-button img{ width: 80px; margin-left: 20px; }
.transparent-button{ border: 1px solid white; color: #FFF; }
.transparent-button:hover{ background-color: #FFF; color: #EF3340; }
.transparent-button:hover .arrowline *{ color: #EF3340; }
.red-button{ border: 1px solid #EF3340; background-color: #EF3340; color: #FFF; }
.red-button:hover{ background-color: #FF525B; color: #FFF; }
.green-button{ border: 1px solid #22b573; background-color: #22b573; color: #FFF; }
.green-button:hover{ background-color: #27D688; border: 1px solid #27D688; color: #FFF; }
.translated-div{ transform: translateY(70px); height: 100%; width:100%; position:relative; overflow-x:hidden; }
.square{ position: absolute; right: 0; top: 0; bottom: 0; z-index:1; }
/* .square-content{ position: absolute; z-index:2;left: 50%;transform: translate(-50%,-50%);text-align: right;top: 50%;  } */
.square-content{ position: relative; z-index:2; text-align: right; }
.card-button-white{ background-color: #FFF; }
.row-type .card .card-button.card-button-blue, .card-button.card-button-blue{ background-color: #333f48; }
.row-gallery .gallery-item{ position: relative; }
.row-gallery .gallery-item:not(.gallery-item-last):after { content: ""; pointer-events: none; background: linear-gradient( 180deg, rgba(255,255,255,0.1) 0%, rgba(0,0,0,0.8) 100%); position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: 1; }
.row-gallery .gallery-item .gallery-text{ position: absolute; left: 15px; bottom: 0; z-index: 2; color: #FFF; }
.row-gallery .gallery-item img{ object-fit: cover; object-position: center; height: auto; max-width: 100%; }
.row-gallery .gallery-item-last img{ opacity: 0; }
.row-gallery .gallery-item-last{ color: #FFF; position: relative; max-width: 100%; }
.row-gallery .gallery-item-last .card-title { padding-bottom: 10px; border-bottom: 1px solid #FFF; }
.row-gallery .gallery-item-last .card-button{ position: absolute; bottom: 0; left: 15px; }
.row-gallery .gallery-item-last .gallery-text{ bottom: 0; top: 50%; transform: translateY(-50%); left: 15px; right: 15px; }
.card-button .arrowline{ width: 50px; position: relative; display: inline-block; vertical-align: middle; height: 19px; left: 0; }
.card-button .arrowline * {stroke: currentColor; fill: none; stroke-miterlimit: 10; color: #FFF; stroke-width: 2; }
.card-button .arrowline .arrow-down { transform: rotate(0deg); transition: opacity .3s ease,-webkit-transform .3s ease; transform-origin: right; }
.card-button .arrowline .arrow-up { transform: rotate(0deg); transition: opacity .3s ease,-webkit-transform .3s ease; transform-origin: right; }
.card-button:hover .arrowline .arrow-down{ transform: rotate(45deg); opacity: 0; }
.card-button:hover .arrowline .arrow-up{ transform: rotate(-45deg); opacity: 0; }
.card-button-white .arrowline * {stroke: currentColor; fill: none; stroke-miterlimit: 10; color: #EF3340; stroke-width: 2; }
.custom-button .arrowline{ width: 50px; position: relative; display: inline-block; vertical-align: middle; height: 19px; left: 0; margin-left: 15px; margin-top: -3px; }
.custom-button .arrowline * {stroke: currentColor; fill: none; stroke-miterlimit: 10; color: #FFF; stroke-width: 2; }
.custom-button .arrowline .arrow-down { transform: rotate(0deg); transition: opacity .3s ease,-webkit-transform .3s ease; transform-origin: right; }
.custom-button .arrowline .arrow-up { transform: rotate(0deg); transition: opacity .3s ease,-webkit-transform .3s ease; transform-origin: right; }
.custom-button:hover .arrowline .arrow-down{ transform: rotate(45deg); opacity: 0; }
.custom-button:hover .arrowline .arrow-up{ transform: rotate(-45deg); opacity: 0; }
.bg-section-2{ background-size: cover; background-repeat: no-repeat; width: 100%; background-position: center; height: 600px; overflow-y: visible; position: relative; }
.bg-section-2::after{ content: ""; position: absolute; top: 0; left: 0; bottom: 0; right: 0; background-color: rgba(0,0,0, 0.6); z-index: 0; pointer-events: none;}
.box-red{ position: absolute; top: 0; right: 0; left: 0; bottom: 0; z-index: 1; }
.triangle{ position: absolute; width: 100%; top: 0; bottom: 0; right: 0; transform-origin: top; }
.carousel-type{ top: 50%; transform: translateY(-50%); margin-left: -150px; }
.box-type{ background-color: #FFF; }
.box-type .card-title{ padding-bottom: 5px; border-bottom: 1px solid #333f48; }
#contact-form { background-color: #FFF;  padding: 30px; }
.request_form input { background: transparent; border: none; border-bottom: 1px solid #333f48; }
.request_form textarea { background: transparent; border: none; border-bottom: 1px solid #333f48; }
.request_form input, .request_form textarea, .request_form select{ margin-bottom: 40px; width: 100%; border-radius: 0; padding-left: 0; }
.request_form select { background: transparent; border: none; border-bottom: 1px solid #333f48; }
.request_form input[name="privacy"]{ display: inline-block; width: auto; position: absolute; }
.request_form label[for="privacy_policy"]{ margin-left: 20px; margin-top: -3px; }
.form-section .box-red{ left: 60%; z-index: 0; margin-top: 70px; }
.form-section .triangle{ left: 60%; transform-origin: top; width: auto; margin-top: 70px;}
footer{ background: linear-gradient(#f2f3f5 50%, transparent 50%); }
footer .footer-left-side{ -webkit-transform: skewX(-15deg); -ms-transform: skewX(-15deg); transform: skewX(-15deg); transform-origin: bottom; }
footer .row-translate{ transform: translateY(25px); }
.navbar-collapse{ flex-grow: 0; }
.navbar-toggler{ width: auto; }
.translate-carousel{ transform: translateY(70px); }
#offcanvasPreventivo{ height: auto; cursor: pointer; box-shadow: 0px -3px 6px 2px rgba(0,0,0,0.25); -webkit-box-shadow: 0px -3px 6px 2px rgba(0,0,0,0.25); -moz-box-shadow: 0px -3px 6px 2px rgba(0,0,0,0.25); }
.glide__slide{ padding:0; }
.breadcrumb li a, .breadcrumb li.active,.breadcrumb-item+.breadcrumb-item::before{ color: #FFFFFF; text-decoration: none; }
.navbar-nav .dropdown-menu{ border: 0; border-radius: 0; box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;}
.dropdown-item:active { background-color: #e9ecef; }

@media (min-width: 1200px){
  .container-fluidRight { width: calc(((100% - 1140px) / 2) + 1140px) !important; margin-right: 0; max-width: 100%; }
}

@media (min-width: 1400px){
  .row-gallery .gallery-item{ display: table; }
  .container-fluidRight { width: calc(((100% - 1340px) / 2) + 1340px) !important; margin-right: 0; max-width: 100%; }
}


@media (max-width: 1299px){
  .skew-button { padding: 20px 40px; }
}

@media (max-width: 1099px){
  .skew-button { padding: 20px 30px; }
}

@media (max-width: 1199px){
  .bg-section-2{ height: auto; }
  .bg-section-2 .translate-carousel{ transform: translateY(0);}
  .bg-section-2 .carousel-type{ top: 0; transform: translateY(0); margin-left: 0; }
  .bg-section-2 .box-red{ position: static; background-color: transparent; }
  .bg-section-2 .triangle{ display: none; }
}

@media (max-width: 991px){
  header{ transform: translateY(0); margin-top: 0; position: fixed; top: 0; left: 0; bottom: 0; z-index: 6; }
  .row-gallery .gallery-item img{ width: 100%; }
  #navbarResponsive .skew-parent,#navbarResponsive .skew-parent .skew-content{ transform: none; }
  ul.nav{ width: 100%; justify-content: space-between; }
  .navbar-toggler:focus{ box-shadow: none; }
  .navbar-toggler{ width: 50px; height: 50px; position: relative; -webkit-transform: rotate( 0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate( 0deg); -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; cursor: pointer; }
  .navbar-toggler span:nth-child(1) { top: 15px; width: 30px; }
  .navbar-toggler span:nth-child(2) { top: 23.5px; width: 25px; }
  .navbar-toggler span:nth-child(3) { top: 33px; width: 20px; }
  .navbar-toggler span { display: block; position: absolute; height: 2px; width: 100%; border-radius: 1px; opacity: 1; background: #333f48; left: 10px; -webkit-transform: rotate( 0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate( 0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out; }
  .navbar-toggler.opened span{ background: #FFF; }
  .navbar-toggler.opened span:nth-child(1) { top: 25px; -webkit-transform: rotate( 135deg); -moz-transform: rotate(135deg); -o-transform: rotate(135deg); transform: rotate( 135deg);}
  .navbar-toggler.opened span:nth-child(2){ opacity: 0; left: -60px; }
  .navbar-toggler.opened span:nth-child(3) { top: 25px; width: 30px; -webkit-transform: rotate( -135deg); -moz-transform: rotate(-135deg); -o-transform: rotate(-135deg); transform: rotate( -135deg); }
  .navbar-nav .dropdown-menu{ padding-top: 0; box-shadow: none!important}
  .navbar-nav .dropdown-menu .dropdown-item{ font-size: 13px; margin-top: -5px; }
  #navbarResponsive{ transform: translateX(-100%); -webkit-transition: transform .25s ease-in-out; -moz-transition: transform .25s ease-in-out; -o-transition: transform .25s ease-in-out; transition: transform .25s ease-in-out; background: #FFFFFF; padding: 20px 10px; min-width: 50%;}
  #backdrop{ background-color: rgb(0,0,0); opacity: 0; -webkit-transition: opacity .25s ease-in-out; -moz-transition: opacity .25s ease-in-out; -o-transition: opacity .25s ease-in-out; transition: opacity .25s ease-in-out; }
  #backdrop.show{ position:fixed; top: 0; left: 0; right: 0; bottom: 0; opacity: 0.6; z-index: 5;}
  #navbarResponsive.show{ transform: translateX(0); }
  #offcanvasPreventivo{ z-index: 4; }
  #main-menu{ background-color: #FFFFFF; }
  footer .footer-info{ margin-bottom: 61px; }
}

