﻿@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

body{ font-size:16px; font-family: 'Roboto', sans-serif !important; color:#000;}

::selection{ background:#000; color:#fff; -webkit-background-clip: unset; -webkit-text-fill-color:#fff;}
::-moz-selection{ background:#000; color:#fff; -webkit-background-clip: unset; -webkit-text-fill-color:#fff;}
h1, h2, h3, h4, h5, h6{ font-family: 'Orbitron', sans-serif; font-weight:normal; margin-top:0px;}
a{ color:#e30613; font-weight:400; transition: all .3s ease-in-out;}
a:hover, a:focus{ color:#000;}
p, li{ color:#000; font-size:17px; line-height:1.5; font-weight:400;}
p{ margin-bottom:10px;}
strong{ font-weight:700;}
.container-max{}
.container-fluid{ padding:0 60px;}
.container-fluid.container0{ padding:0px;}
.row{ margin:0 -20px;}
.row [class*="col-"]{ padding:0 20px;}
.row.row0{ margin:0px;}
.row.row0 > [class*="col-"]{ padding:0;}
.row.row01{ margin-left:-1px; margin-right:-1px;}
.row.row01 > [class*="col-"]{ padding:0 1px;}
.row.row05{ margin-left:-5px; margin-right:-5px;}
.row.row05 > [class*="col-"]{ padding:0 5px;}
.row.row10{ margin-left:-10px; margin-right:-10px;}
.row.row10 > [class*="col-"]{ padding:0 10px;}
.row.row15{ margin-left:-15px; margin-right:-15px;}
.row.row15 > [class*="col-"]{ padding:0 15px;}
.row.row40{ margin-left:-40px; margin-right:-40px;}
.row.row40 > [class*="col-"]{ padding:0 40px;}
.row.row30{ margin-left:-30px; margin-right:-30px;}
.row.row30 > [class*="col-"]{ padding:0 30px;}
.row.row60{ margin-left:-60px; margin-right:-60px;}
.row.row60 > [class*="col-"]{ padding:0 60px;}
.row.flex{ display:-webkit-box; display:-ms-flexbox; display:flex; -ms-flex-wrap:wrap; flex-wrap:wrap;}
.row.flex > [class*="col-"]{ display:-webkit-box; display:-ms-flexbox; display:flex; }
.row.flex:before, .row.flex:after{ content:none;}
.row.center{ align-items: center;}
.row.bottom{ align-items: end;}
.row.flex [class*="col-"].pull-right{ order:2;}
.mt0{ margin-top:0px !important;}
.countup{ display:inline; font-size:inherit; font-weight:inherit; margin:0px; white-space:normal; color:inherit;}
.countup > *{ float:left; font-size:inherit; font-weight:inherit;}
.text-right{ text-align:right;}
hr{ max-width:100%; margin:20px auto;}
hr.site{ width:100%; max-width:100%; height:1px; margin:0px; border:0px; background:#e1e1e1;}

input[type=text], input[type=email], input[type=password], input[type=search], input[type=file], input[type=tel], textarea{ font-family:'Roboto', sans-serif; height:45px; float:left; font-size:16px; background:#fff; border-radius:0px; -webkit-appearance: none; -moz-appearance: none; appearance: none; border:1px solid #c7c7c7;}
input[type=file]{ width:100%; height:auto; padding:15px 20px; font-size:14px;}
select{ width:100%; padding:10px; background:#fff; border:1px solid #e1e1e1; color:#000; -webkit-appearance:none;}
textarea{ -webkit-appearance: none; -moz-appearance: none; appearance: none;}
.form-group > label{ font-size:15px; text-align:left; font-weight:400; color:#000; position:relative; z-index:10;}
.form-group > label span{ color:#e30613; font-size:16px; line-height:24px; float:right; margin-left:5px;}
.check{ width:100%; float:left;}
.check input[type=checkbox] {display: none;}
.check label{float:left; width:100%; position:relative; font-weight:400; color:#5c5c5c; vertical-align:top;}
.check label:before{ width:24px; height:24px; left:0px; background:#fff; border:1px solid #c7c7c7; content:""; position:absolute; margin-right:10px; cursor:pointer; border-radius:0px;}
.check input[type=checkbox]:checked + label:before { font-family: 'FontAwesome'; content:"\f00c"; text-align:center; line-height:24px; font-size:16px; color:#000;}
.check label span{ display:inline-block; padding-left:34px; font-size:14px; text-align:left; color:#000; line-height:24px; float:left;}
.check label span a{ font-weight:600;}
.check + .check{ margin-top:5px;}
.check + input[type="submit"]{ margin-top:20px;}
.content .form .row{ margin:0 -15px;}
.content .form .row + .row{ margin-top:0px;}
.content .form .row [class*="col-"]{ padding:0 15px;}

.chosen-container{ font-family:'Roboto', sans-serif; border-radius:5px; font-size:15px; background:#f7f7f7; border-color:#c7c7c7;}
.chosen-container.chosen-container-active.chosen-with-drop{ border-bottom-right-radius:0px; border-bottom-left-radius:0px;}
.chosen-container-single .chosen-single{ height:43px; line-height:43px;}
.chosen-container-single .chosen-single span{ font-size:16px; font-weight:400; margin-right:35px;}
.chosen-container .chosen-drop{ border-radius:0px; border-top-width:0px; border-bottom-right-radius:5px; border-bottom-left-radius:5px;}
.chosen-container .chosen-results{ border-radius:0px; padding:10px;}
.chosen-container .chosen-results li{ font-size:16px; line-height:30px; border-radius:0px; color:#000;}
.chosen-container .chosen-results li:hover{ background:#e30613; border-radius:5px; color:#fff; }
.chosen-container-single .chosen-single div:after{ line-height:43px; font-size:15px;}
.widget .chosen-single{ font-weight:400; background:#f7f7f7;}
.widget .chosen-drop{ background:#f7f7f7;}
textarea{ height:110px;}
input[type="submit"].btn{ height:50px;}
.form-group{ margin-bottom:15px;}

.btn{ font-family: 'Roboto', sans-serif; font-size:15px; height:auto; padding:12px 20px; line-height:20px; text-transform:uppercase; font-weight:700; border-radius:0px;}
.btn.btn-input{ height:50px;}
.btn.btn-default{ background:#e30613; border:1px solid #e30613; color:#fff; vertical-align:top;}
.btn.btn-default:hover, .btn.btn-default:focus{ background:#D62328; border-color:#D62328; color:#fff;}
.btn.btn-primary{ background:#000; border:1px solid #000; vertical-align:top;}
.btn.btn-primary:hover, .btn.btn-primary:focus{ background:#e30613; border-color:#e30613; color:#fff;}
.btn.btn-icon{ display:flex; flex-wrap:wrap; align-items:center;}
.btn.btn-icon i{ font-size:20px; line-height:1; margin-right:10px;}

a.readmore{ font-family:'Roboto'; display:inline-block; font-size:16px; line-height:20px; position:relative; padding-left:20px; font-weight:700; color:#e30613; text-transform:uppercase;}
a.readmore span{ position:relative;}
a.readmore span:before{ content:""; width:0px; height:2px; position:absolute; right:0px; bottom:-5px; background:#e30613; -webkit-transition: all .5s ease-in-out; -moz-transition: all .5s ease-in-out; -o-transition: all .5s ease-in-out; transition: all .5s ease-in-out;}
a.readmore:after{ content:""; width:8px; height:8px; background:#e30613; position:absolute; top:4px; left:0px; text-align:right; font-size:12px; }
a.readmore:hover span:before{ width:100%;}
a.readmore.white{ color:#fff;}
a.readmore.white span:before{ background:#fff;}
a.readmore.color span:before{ background:#000;}

a.backpage{ display:inline-block; font-size:16px; line-height:20px; position:relative; font-weight:600; padding-left:15px; color:#1d6e6d; text-transform:none;}
a.backpage span{ position:relative;}
a.backpage span:before{ content:""; width:0px; height:1px; position:absolute; right:0px; bottom:-5px; background:#1d6e6d; -webkit-transition: all .5s ease-in-out; -moz-transition: all .5s ease-in-out; -o-transition: all .5s ease-in-out; transition: all .5s ease-in-out;}
a.backpage:after{ content:"\f053"; font-family: 'FontAwesome'; position:absolute; top:0px; left:0px; text-align:right; font-size:12px; }
a.backpage:hover span:before{ width:100%;}
a.backpage.white{ color:#fff;}
a.backpage.white span:before{ background:#fff;}
a.backpage.color span:before{ background:#000;}

.navbar-toggle{ width:50px; height:50px; background:none; line-height:50px; position:absolute; right:25px; top:25px; background-color:#e30613; border-radius:50%;}
.navbar-toggle i{ font-size:16px; color:#fff; line-height:50px;}
.navbar-toggle:hover{ background:#000;}
.navbar-toggle:hover i{ color:#fff;}

ul.pagination{text-align:center;}
ul.pagination li{ margin:0 5px; }
ul.pagination li a{ width:40px; height:40px; font-size:18px; line-height:40px; border:0px; border-radius:0px; font-weight:400; color:#000; background:#efefea;}
ul.pagination li a:hover, ul.pagination li a:focus{ background:#e30613; color:#fff;}
ul.pagination li.active a, ul.pagination li.active a:hover,  ul.pagination li.active a:focus{ background:#e30613; color:#fff;}
ul.pagination li a.prev{ width:40px; height:40px; border-radius:0px; background-color:#efefea; background-image:url(../images/icon-prev.png); background-size:32px auto; background-position:center center; background-repeat:no-repeat}
ul.pagination li a.prev:before{ content:"\f053"; width:40px; height:40px; font-family:'FontAwesome'; position:absolute; top:0px; left:0px; text-align:center; font-size:16px; color:#000; line-height:40px;}
ul.pagination li a.prev:hover{ background-color:#e30613;}
ul.pagination li a.prev:hover:before{ color:#fff;}
ul.pagination li.disabled a.prev:hover{ background-color:none;}
ul.pagination li.disabled a.next:hover{ background-color:none;}
ul.pagination li a.next{ width:40px; height:40px; border-radius:0px; background-color:#efefea; background-image:url(../images/icon-next.png); background-size:32px auto; background-position:center center; background-repeat:no-repeat;}
ul.pagination li a.next:before{ content:"\f054"; width:40px; height:40px; font-family:'FontAwesome'; position:absolute; top:0px; left:0px; text-align:center; font-size:16px; color:#000; line-height:40px;}
ul.pagination li a.next:hover{ background-color:#e30613;}
ul.pagination li a.next:hover:before{ color:#fff;}

/* header */

.header{ width:100%; background:none; position:absolute; z-index:9999; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out;}

.header .topbar{ position:absolute; right:60px; top:15px;}
.header .topbar .info{ width:100%; display:flex; flex-wrap:nowrap; align-items:center; justify-content:center;}
.header .topbar p{ font-size:13px; line-height:1.2; color:#000; font-weight:400;}
.header .topbar strong{ font-weight:600;}
.header .topbar span.separator{ margin:0 3px; color:#999; font-weight:300;}
.header .topbar .social{ width:auto; float:left; display:flex; flex-wrap:nowrap; align-items:center; margin-left:auto;}
.header .topbar .social span.text{ float:left; font-size:13px; line-height:1.2; font-weight:400; margin-right:10px;}
.header .topbar .social ul{margin:0;width:auto; float:left; margin-left:20px;}
.header .topbar .social li{ width:auto;float:left; padding-left:0px; margin:0 3px 0 0;}
.header .topbar .social li:last-child{ margin:0px;}
.header .topbar .social li:before{ display:none;}
.header .topbar .social li a{float:left;position:relative;border-radius:50%; background:#222;}
.header .topbar .social li a span.circle{width:24px;height:24px;float:left;color:#fff;text-align:center;}
.header .topbar .social li a span.circle i{font-size:12px;line-height:24px;vertical-align:top;}
.header .topbar .social li.facebook a{background:#3b5999}
.header .topbar .social li.instagram a{background:#E4405F}
.header .topbar .social li.linkedin a{background:#0A66C2}
.header .topbar .social li a:hover{ background:#e30613;}
.header .topbar .contacts{ float:left;}
.header .topbar .contacts a{ color:#e30613; font-weight:600;}
.header .topbar .contacts a:hover{ color:#000;}

.header .navbar{ display:flex; flex-wrap:nowrap; justify-content:space-between; align-items:center; position:relative;}
.header a.navbar-brand{ text-align:center; font-size:0px; letter-spacing:0px; position:relative; z-index:10; margin-right:auto; overflow:visible; line-height:120px;}
.header a.navbar-brand img{ height:60px; margin:0px; }
.header .navbar-collapse{ width:100%; display:flex; justify-content:right; padding:0px; margin:0px; margin-right:30px;}
.header .navbar .navbar-nav{ float:none;}
.header .navbar .navbar-nav > li{ float:left; padding:0px;}
.header .navbar .navbar-nav > li:after{ content:""; width:1px; height:30px; position:absolute; top:10px; right:0px; background:#999; transform: rotate(10deg);}
.header .navbar .navbar-nav > li > a{ font-family: 'Roboto', sans-serif; font-size:15px; color:#fff; font-weight:700; padding:15px 0; margin:0 15px; border:0px; text-transform:uppercase; line-height:20px;}
.header .navbar .navbar-nav > li > a:before{ content:""; width:0px; height:2px; position:absolute; right:0px; bottom:5px; background:#e30613; transition: all .3s ease-in-out;}
.header .navbar .navbar-nav > li:last-child:after{ display:none;}
.header .navbar .navbar-nav > li:last-child > a{ margin-right:0px;}
.header .navbar .navbar-nav > li.dropdown > a:after{ display:none;}
.header .navbar .navbar-nav > li > a:hover{ color:#e30613;}
.header .navbar .navbar-nav > li > a:hover:before{ width:100%;}
.header .navbar .navbar-nav > li.active > a{ color:#e30613;}
.header .navbar .navbar-nav > li.active > a:before{ width:100%;}
.header .request{ margin:0px;}

.header .navbar .navbar-nav > li > span.aprisottomenu{ display:none; width:22px; height:22px; float:right; position:absolute; right:0px; top:7px; cursor:pointer; text-align:center; vertical-align:middle;}
.header .navbar .navbar-nav > li > span.aprisottomenu:before{ content:"\f107"; font-family: 'Material Symbols Outlined'; width:inherit; height:inherit; font-size:22px; line-height:19px; position:absolute; left:0px; top:0px; color:#000; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out;}
.header .navbar .navbar-nav > li > span.aprisottomenu.aperto:before{ transform: rotate(180deg); color:#222222;}

.header .navbar .navbar-nav > li > span.aprisottomenu{ display:none; width:30px; height:30px; float:right; position:absolute; right:0px; top:0px; cursor:pointer; text-align:center; vertical-align:middle;}
.header .navbar .navbar-nav > li > span.aprisottomenu:before{ content:"\f107"; font-family:FontAwesome; width:inherit; height:inherit; font-size:17px; line-height:30px; position:absolute; left:0px; top:0px; color:#152933; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out;}
.header .navbar .navbar-nav > li > span.aprisottomenu.aperto:before{ transform: rotate(180deg); color:#f58220;}

/* dropdown */

.header .dropdown-menu { width:auto; min-width:250px; max-width:250px; background:#e30613; border-radius:0px; padding:20px; margin-left:0px; }
.header .navbar-nav > li.dropdown.dropdown-static{ position:relative;}
.header .navbar-nav > li > a:after { display: none; }
.header .dropdown-menu > li { padding:0px; border-bottom:1px solid rgba(256,256,256,0.3); }
.header .dropdown-menu li:focus > a, .header .dropdown-menu li:hover > a { background: none; }
.header .dropdown-menu > li:first-child { padding-top: 0px; }
.header .dropdown-menu > li:last-child { padding-bottom: 0px; border: 0px; }
.header .dropdown-menu > li > a { min-width:auto; font-size:16px; color:#fff; line-height:1.2; padding:5px 0; text-align:left; white-space:normal; border-radius:0px; font-weight:400; }
.header .dropdown-menu > li.active > a, .header .dropdown-menu > li.active > a:hover{ background:#D62328; color:#fff;}
.header .dropdown-menu > li:last-child > a { border: 0px; }
.header .dropdown-menu > li > a:hover, .header .dropdown-menu > li > a:focus { background:#D62328; color:#fff;}


.wrapper{ width:100%; float:left; overflow:unset;}
.content{ overflow:hidden; }
.content .row + .row{ margin-top:60px;}

/* visual home page */

.visual{ position:relative; background:#e1e1e1; overflow:hidden;}
.visual .background-video{ position:absolute; min-width:100%; min-height:100%; width:auto; height:auto; z-index:0; overflow:hidden; opacity:1;}
.visual .background-video:before{ content:""; width:100%; height:100%; position:absolute; left:0px; top:0px; background:rgba(0,0,0,0.6); z-index:2;}
.visual .background-video video{ width:100%; height:100%; object-fit:cover; position:absolute; left:0px; top:0px;}
.visual-image{ width:60%; height:100%; position:absolute; right:-40px; top:0px; padding:140px 0 60px 0;}
.visual-image video{ height:100%; float:right;}
.visual-image img{ display:none;}
.visual-content{ width:100%; height:100vh; min-height:800px; display:flex; flex-wrap:nowrap; align-items:center; justify-content:center; position:relative; background-size:cover; background-position: center center; z-index:10;}
.visual-content:before{ content:""; width:100%; height:400px; position:absolute; left:0px; top:0px; background: rgb(0,0,0); background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%); z-index:6;}
.visual-content:after{ content:""; width:100%; height:100%; position:absolute; left:0px; top:0px; background:rgba(0,0,0,0.25); z-index:5;}
.visual-content .inner{ width:100%;}
.visual-content .container-fluid{ width:100%;}
.visual-content .box{ width:100%; max-width:1200px; margin:0 auto; text-align:center; position:relative; z-index:100;}
.visual-content .box h1{ color:#fff; font-size:56px; line-height:1.1; text-transform:uppercase; position:relative; z-index:2; margin-bottom:40px;}
.visual-content .box h1 strong{ color:#e30613;}
.visual-content .box h3{ font-size:20px; text-transform:uppercase; letter-spacing:1px; color:#fff; margin:0px; margin-bottom:15px;}
.visual-content .box h3 strong{ color:#e30613;}
.visual-content .box p{ font-size:24px; line-height:1.5; color:#fff; position:relative; z-index:2; margin-bottom:40px;}
.visual-content .box .actions{ display:flex; align-items:center; justify-content:center; margin:0px; padding:0px;}
.visual-content .box .actions li{ margin-right:30px;}
.visual-content .box .actions li:last-child{ margin-right:0px;}

.visual .down{ width:60px; height:60px; position:absolute; z-index:2; left:50%; margin-left:-30px; bottom:0px; z-index:10;}
.visual .down:before{ content:"\f078"; font-family:FontAwesome; font-size:20px; width:100%; height:100%; position:absolute; left:0px; top:0px; text-align:center; line-height:60px; color:#fff; z-index:999;}
.visual .down:hover{ background-color:#e30613;}
.visual .down:hover:before{ color:#fff;}

/* titolo pagina */

.title{ padding:160px 0 40px 0; position:relative; text-align:center; overflow:hidden; background-image:url(../images/title.jpg); background-repeat:no-repeat; background-position:center center; background-size:cover; overflow:hidden;}
.title:before{ content:""; width:100%; height:100%; position:absolute; left:0px; top:0px; background: rgb(0,0,0); background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%); z-index:6;}
.title .text{ position:relative; z-index:10;}
.title .text h1, .title .text h2{ font-size:56px; line-height:1.1; text-transform:uppercase; color:#fff; position:relative; z-index:2; font-weight:700; margin-bottom:0px;}
.title .breadcrumb{ width:auto; display:inline-block; min-height:18px; position:relative; z-index:10; text-transform:none; margin-top:10px;}
.title .breadcrumb .box{ width:auto; display:inline-block;}
.title .breadcrumb ul{ float:left; margin:0px; padding:0px;}
.title .breadcrumb li{ width:auto; float:left; display:inline-block; position:relative; font-size:16px; line-height:18px; padding:0px; margin-right:20px; text-transform:none;}
.title .breadcrumb a{ color:#fff; float:left; line-height:18px; font-weight:700; position:relative;}
.title .breadcrumb a:hover{ color:#fff;}
.title .breadcrumb li:after{ content:""; width:1px; height:20px; position:absolute; top:0px; right:-10px; background:#999; transform: rotate(10deg);}
.title .breadcrumb li:last-child{ margin-right:0px;}
.title .breadcrumb li:last-child:after{ display:none;}

/* blocchi generale */

.block{ padding:100px 0;}
.block.small{ padding:60px 0;}
.block.gray{ background:#efefea;}
.block.black{ background:#000;}
.block.pt0{ padding-top:0px !important;}
.block.pb0{ padding-bottom:0px;}
.block h1, .block h2{ font-family: "Orbitron", serif; font-size:46px; line-height:1.1; color:#000; text-transform:uppercase; margin-bottom:0px;}
.block h1 strong, .block h2 strong{ color:#e30613;}
.block h1:last-child, .block h2:last-child, .block span.h2:last-child{ margin-bottom:0px;}
.block h3{ font-family: 'Roboto', sans-serif; font-size:22px; line-height:1.5; color:#000; margin-bottom:15px; text-transform:none; font-weight:400;}
.block h3:last-child{ margin-bottom:0px;}
.block ul, .block ol{ margin:0px; padding:0px; margin-bottom:25px;}
.block ul:last-child, .block ol:last-child{ margin-bottom:0px;}
.block li{ position:relative; margin-bottom:0px; padding-left:25px;}
.block li:last-child{ margin-bottom:0px;}
.block li:before{ content: ""; width:6px; height:6px; background:#e30613; position:absolute; left:0px; top:8px;}
.block h3 + a.readmore{ margin-top:20px;}

.block.presentation h2{ margin-bottom:0px;}
.block.presentation h3{ margin-bottom:0px;}
.block.presentation h2 + h3{ margin-top:20px;}
.block.presentation h2 + p, .block.presentation span.h2 + p{ margin-top:15px;}
.block.presentation h3 + p{ margin-top:15px;}
.block.presentation h3 + ul{ margin-top:15px;}
.block.presentation h3 + .btn{ margin-top:30px;}
.block.presentation h3 + h2{ margin-top:30px;}
.block.presentation p{ }
.block.presentation h2 + ul{ margin-top:20px;}
.block.presentation p + h2, .block.presentation p + span.h2{ margin-top:20px;}
.block.presentation p + h3{ margin-top:15px;}
.block.presentation p + .readmore{ margin-top:20px;}
.block.presentation p + .btn{ margin-top:20px;}

.block.presentation .top-title{ text-align:center;}
.block.presentation .top-title h2{ font-size:55px; line-height:1; margin:0px; color:#e30613; font-weight:700;}
.block.presentation .top-title h2 + .readmore{ margin-top:5px;}
.block.presentation .top-title h2 + h3{ margin-top:20px;}
.block.presentation .top-title h3{ padding:0 10%;}

.block.presentation span.top-intro{ width:100%; float:left; margin:0px; margin-bottom:15px; }
.block.presentation span.top-intro strong{ font-size:18px; line-height:1.2; text-transform:uppercase; letter-spacing:1px; color:#000; color:#e30613; padding-left:25px; position:relative;}
.block.presentation span.top-intro strong:before{ content:"\f0c8"; font-family:FontAwesome; position:absolute; top:5px; left:0px; font-size:12px; transform: rotate(-15deg); color:#e30613;}

.block.black h2{ color:#fff;}
.block.black h3{ color:#fff;}
.block.black p{ color:#fff;}

/* about */

.block.about{ padding-bottom:40px;}
.block.about .item{ margin-bottom:60px;}
.block.about .item .image{ margin-bottom:40px;}

/* numeri dell'azienda */

.block.numbers{ padding:0px; position:relative;}
.block.numbers:before{ content:""; width:1000px; height:100%; position:absolute; left:0px; top:0px; background:#e30613;}
.block.numbers:after{ content:""; width:1000px; height:100%; position:absolute; right:0px; top:0px; background:#9f2025;}
.block.numbers .container-fluid{ padding:0px;}
.block.numbers .item{ width:100%; display:table; background:#283373; position:relative; z-index:100; padding:40px 30px; text-align:center; overflow:hidden;}
.block.numbers .item.bottom{ border-top:2px solid #f7f7f7;}
.block.numbers .item .wrap{ display:table-cell; vertical-align:middle;}
.block.numbers .item h2{ margin-top:0px; display:flex; justify-content:center; align-items:center; color:#fff; font-weight:900;}
.block.numbers .item h2 span{ font-weight:600; display:inline-block; color:#fff; line-height:24px;}
.block.numbers .item h2 span.countup-sign{ font-weight:200; font-size:0.75em; margin-left:10px;}
.block.numbers .item h2 span.text{ font-weight:600; line-height:1; font-size:24px; margin-left:0px;}
.block.numbers .item p{ margin-bottom:0px;}
.block.numbers .item.normal h2{ font-size:60px; min-height:50px; line-height:1; margin:0px;}
.block.numbers .item.normal p{ font-size:22px; line-height:1.2; color:#fff; font-weight:400; margin-top:10px;}
.block.numbers .item.one{ background:#e30613;}
.block.numbers .item.two{ background:#c1292f;}
.block.numbers .item.three{ background:#9f2025;}

/* team */

.block.team{ padding-bottom:60px;}
.block.team .item{ width:100%; float:left; margin-bottom:40px; position:relative; background-size:cover; border-radius:0px; overflow:hidden;}
.block.team .item:before{ content:""; width:120%; height:100px; position:absolute; left:-10%; bottom:-20px; background:#333; transform:rotate(5deg); z-index:15;}
.block.team .item:after{ content:""; width:100%; height:50%; position:absolute; left:0px; bottom:-1px; z-index:5; background:rgb(0,0,0); background: linear-gradient(0deg, rgba(0,0,0,0.75) 0%, rgba(0,0,0,0) 100%);}
.block.team .item .link a{ width:100%; height:100%; position:absolute; left:0px; top:0px; z-index:10; transition: all .3s ease-in-out;}
.block.team .item .image{ width:100%; height:0px; float:left; background-size:cover;  background-position:center center; position:relative; z-index:1; padding-bottom:125%; margin-bottom:0px; -webkit-transition: all .5s ease-in-out; -moz-transition: all .5s ease-in-out; -o-transition: all .5s ease-in-out; transition: all .5s ease-in-out;}
.block.team .item .image img{ display:none;}
.block.team .item .text{ width:100%; position:absolute; left:0px; bottom:0px; padding:40px; padding-top:0px; z-index:20;}
.block.team .item .text h3{ font-size:22px; line-height:1; color:#fff; text-transform:none; margin:0px; margin-bottom:10px;}
.block.team .item .text h2{ font-size:36px; line-height:1; font-weight:700; color:#e30613; margin:0px;}
.block.team .item:hover .image{ filter: grayscale(0);}


/* fullwidth */

.block.fullwidth{ position:relative; padding:140px 0;}
.block.fullwidth .image{ width:65%; height:100%; position:absolute; top:0px; background-size:cover; background-position:center center; background-repeat:no-repeat; z-index:10;}
.block.fullwidth .image img{ display:none;}
.block.fullwidth .text{ position:relative; z-index:10;}
.block.fullwidth.left .image{ top:0px; left:0px;}
.block.fullwidth.right .image{ top:0px; right:0px;}
.block.fullwidth.gradient .image:before{ content:""; width:50%; height:100%; position:absolute;}
.block.fullwidth.gradient.right .image:before{ left:0px; top:0px; background: rgb(0,0,0); background: linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);}
.block.fullwidth.gradient.left .image:before{ right:0px; top:0px;  background: rgb(0,0,0); background: linear-gradient(-90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);}
.block.fullwidth.gradient.right.gray .image:before{ background: rgb(247,247,247); background: linear-gradient(90deg, rgba(233,233,233,1) 0%, rgba(233,233,233,0) 100%);}
.block.fullwidth.gradient.left.gray .image:before{ background: rgb(247,247,247); background: linear-gradient(-90deg, rgba(233,233,233,1) 0%, rgba(233,233,233,0) 100%);}

/* services list */

.block.services-list{ padding-bottom:40px; background:#3C3C3B;}
.block.services-list .top-title h3{ color:#fff;}
.block.services-list .item{ background:#fff; position:relative; margin-bottom:40px; overflow:hidden;}
.block.services-list .item .top{ display:flex; flex-wrap:nowrap; align-items:center; justify-content:left; padding-left:16px; position:relative;}
.block.services-list .item .top:before{ content:""; width:110%; height:110%; position:absolute; left:-5%; top:-10%; background:rgba(0,0,0,0.1); transform:rotate(2deg); z-index:0;}
.block.services-list .item .top .image{ width:100px; padding:30px 15px; position:relative; z-index:10;}
.block.services-list .item .top .name{ width:calc(100% - 100px); padding-left:10px; padding-right:10px; position:relative; z-index:10;}
.block.services-list .item .top .name h3{ color:#fff; font-size:26px; line-height:1.1; font-weight:600; margin:0px;}
.block.services-list .item .bottom{ padding:40px 30px;}
.block.services-list .item .bottom p{ color:#fff;}
.block.services-list .item .bottom p + .readmore{ margin-top:30px;}

.block.services-list .item.color1{ background:#555;}
.block.services-list .item.color2{ background:#555;}
.block.services-list .item.color3{ background:#555;}

.block.services-list.page{ background:none;}
.block.services-list.page .top-title h3{ color:#000;}

/* systems */

.block.systems{ padding-bottom:0px;}
.block.systems .item{ display:flex; flex-wrap:wrap; flex-direction:column; align-items:start; overflow:hidden;}
.block.systems .item .image{ width:120%; height:0px; padding-bottom:66.67%; float:left; transform:rotate(5deg); background-size:cover; }
.block.systems .item .image img{ display:none;}
.block.systems .item .text{ width:100%; min-height:450px; text-align:center; display:flex; align-items:center; justify-content:center; float:left; padding:40px 40px;}
.block.systems .item .text .inner{ max-width:600px;}
.block.systems .item .text h2{ color:#fff;}
.block.systems .item .text h3{ color:#fff;}
.block.systems .item .text h3 + h2{ margin-top:10px;}
.block.systems .item .text p{ color:#fff;}
.block.systems .item.item01{ background:#e30613;}
.block.systems .item.item01 .image{ margin-left:-10%; margin-top:-10%;}
.block.systems .item.item01 .text h2 strong{ color:#fff;}
.block.systems .item.item02{ background:#3C3C3B; flex-direction:column-reverse;}
.block.systems .item.item02 .image{ margin-left:-10%; margin-bottom:-10%;}

.block.result .box-list{}
.block.result .box-list .item{ padding:30px; margin-bottom:20px; background:#000;}
.block.result .box-list .item h3{ font-family: "Orbitron", serif; font-size:20px; line-height:1; color:#fff; font-weight:700; margin-bottom:10px;}
.block.result .box-list .item h4{ font-family: "Roboto", serif; max-width:80%; font-size:28px; line-height:1.2; color:#fff; font-weight:700; text-transform:none; margin-bottom:15px;}
.block.result .box-list .item p{ margin-top:0px; color:#fff;}
.block.result .box-list .item.one{ background:#e30613;}
.block.result .box-list .item.two{ background:#3c3c3b;}
.block.result .box-list .item.three{ background:#121212;}
.block.result .box-list .item.four{ background:#d62328;}
.block.result .body{ margin-top:40px;}

/* archive */

.block.archive .item{ width:100%; float:left; margin-bottom:40px;}
.block.archive .item .inner{ width:100%; height:100%; float:left; position:relative; overflow:hidden; background:#3C3C3B;}
.block.archive .item .image{ width:100%; float:left; position:relative;}
.block.archive .item .image a{ width:100%; height:0px; padding-bottom:66.67%; float:left; background-size:cover; position:relative; z-index:10;}
.block.archive .item .image:before{ content:""; width:120%; height:40px; position:absolute; left:-10%; bottom:-20px; background:#3C3C3B; transform:rotate(5deg); z-index:15;}
.block.archive .item .image img{ display:none;}
.block.archive .item .text{ width:100%; float:left; padding:30px; padding-top:20px; padding-bottom:90px; position:relative; z-index:20;}
.block.archive .item .text h2{ font-family: "Roboto", serif; font-size:28px; line-height:1.2; text-transform:none; font-weight:700;}
.block.archive .item .text h2 a{ font-weight:inherit; color:#fff;}
.block.archive .item .text h2 a:hover{ color:#e30613;}
.block.archive .item .text h3{ font-size:18px; line-height:1; font-weight:700; text-transform:uppercase; font-weight:400; color:#fff; margin-bottom:10px;}
.block.archive .item .text h3 + h2{ margin-top:0px;}
.block.archive .item .text p{ color:#000; display: -webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.block.archive .item .action{ position:absolute; bottom:40px; left:30px; z-index:20;}

/* case history */

.block.casehistory .filters ul{ display:flex; flex-wrap:wrap; justify-content:center;}
.block.casehistory .filters ul li{ float:left; padding:0px; position:relative;}
.block.casehistory .filters ul li:before{ display:none;}
.block.casehistory .filters ul li:after{ content:""; width:1px; height:30px; position:absolute; top:-3px; right:0px; background:#999; transform: rotate(10deg);}
.block.casehistory .filters ul li a{ font-family: 'Roboto', sans-serif; position:relative; font-size:20px; color:#000; font-weight:700; padding:0; margin:0 15px; border:0px; text-transform:uppercase; line-height:1;}
.block.casehistory .filters ul li > a:before{ content:""; width:0px; height:2px; position:absolute; right:0px; bottom:-5px; background:#e30613; transition: all .3s ease-in-out;}
.block.casehistory .filters ul li a:hover{ color:#e30613;}
.block.casehistory .filters ul li a:hover:before{ width:100%;}
.block.casehistory .filters ul li:last-child:after{ display:none;}
.block.casehistory .filters ul li:last-child > a{ margin-right:0px;}
.block.casehistory .filters ul li.active > a{ color:#e30613;}
.block.casehistory .filters ul li.active > a:before{ width:100%;}
.block.casehistory .item{ width:100%; float:left; margin-bottom:40px;}
.block.casehistory .item .inner{ width:100%; height:100%; float:left; position:relative; overflow:hidden; background:#3C3C3B;}
.block.casehistory .item .image{ width:100%; float:left; position:relative;}
.block.casehistory .item .image a{ width:100%; height:0px; padding-bottom:66.67%; float:left; background-size:cover; position:relative; z-index:10;}
.block.casehistory .item .image:before{ content:""; width:120%; height:80px; position:absolute; left:-10%; bottom:-50px; background:#3C3C3B; transform:rotate(3deg); z-index:15;}
.block.casehistory .item .image img{ display:none;}
.block.casehistory .item .text{ width:100%; float:left; padding:30px; padding-top:20px; padding-bottom:90px; position:relative; z-index:20;}
.block.casehistory .item .text h2{ font-family: "Roboto", serif; font-size:28px; line-height:1.2; text-transform:none; font-weight:700;}
.block.casehistory .item .text h2 a{ font-weight:inherit; color:#fff;}
.block.casehistory .item .text h2 a:hover{ color:#e30613;}
.block.casehistory .item .text h3{ font-size:18px; line-height:1; font-weight:700; text-transform:uppercase; font-weight:400; color:#fff; margin-bottom:10px;}
.block.casehistory .item .text h3 + h2{ margin-top:0px;}
.block.casehistory .item .text p{ color:#000; display: -webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.block.casehistory .item .action{ position:absolute; bottom:40px; left:30px; z-index:20;}

/* singola news */

.block.single-post{}
.block.single-post .info{ text-align:center;}
.block.single-post .info h3{ font-weight:700; margin-bottom:10px;}
.block.single-post .info h1{ font-size:50px; font-weight:700; color:#e30613; line-height:1.1; margin:0px;}
.block.single-post .body{ margin-bottom:40px;}
.block.single-post .body .text{ margin-bottom:20px;}
.block.single-post .body .text h3 + p{ margin-top:20px;}
.block.single-post .media-images{ margin-bottom:40px;}
.block.single-post .main-image{ margin-bottom:20px;}
.block.single-post .main-image img{ width:100%; height:auto;}
.block.single-post .gallery{ display:flex; flex-wrap:wrap; margin:0 -10px;}
.block.single-post .gallery .image{ width:33.33%; float:left; padding:0 10px; margin-bottom:20px;}
.block.single-post .gallery .image img{ border-radius:0px;}
.block.single-post .action{ text-align:center; margin-top:40px;}
.block.single-post .back-news{ text-align:center;}

.block.single-post.caso .info h3{ text-transform:uppercase;}

/* pagina servizio*/

.block.service-page .main-image{ margin-bottom:20px;}
.block.service-page .main-image img{ width:100%; height:auto;}
.block.service-page .gallery{ display:flex; flex-wrap:wrap; margin:0 -10px;}
.block.service-page .gallery .image{ width:50%; float:left; padding:0 10px; margin-bottom:20px;}
.block.service-page .gallery .image img{ border-radius:0px;}

/* sistemi */

.block.systems-list{ position:relative;}
.block.systems-list .item-wrap{ margin-top:60px;}
.block.systems-list .item{ margin-bottom:60px;}
.block.systems-list .item:last-child{ /* border-bottom-width:0px; padding-bottom:0px; */ margin-bottom:0px;}
.block.systems-list .item .container{ display:flex; flex-wrap:wrap;}
.block.systems-list .item .image{ width:55%; display: flex; align-items:start;  justify-content: center;}
.block.systems-list .item .text{ width:45%; display: flex; flex-direction: column; justify-content: center; text-align:left; padding-left:60px; }
.block.systems-list .item .text h2{ font-size:46px; line-height:1.1; font-weight:700; color:#e30613; margin:0px;}
.block.systems-list .item .text p{ font-size:22px;}
.block.systems-list .item .text .readmore{ margin:0px; margin-top:10px;}
.block.systems-list .item:nth-child(even) .image{ order:2;}
.block.systems-list .item:nth-child(even) .text{ padding:0px; text-align:right; padding-right:60px;}


/* contatti flash */

.block.contacts-flash{ padding:60px 0;}
.block.contacts-flash .item{ text-align:center;}
.block.contacts-flash .item h2{ font-family: "Roboto", serif; font-size:34px; line-height:1.2; color:#e30613; font-weight:700; text-transform:none; margin-bottom:15px;}
.block.contacts-flash .item a{ font-weight:700;}
.block.contacts-flash .item .social{ width:100%; float:left; margin:0px; margin-top:0px;}
.block.contacts-flash .item .social ul{ margin:0 -5px; width:auto; display:flex; flex-wrap:nowrap; justify-content:center;}
.block.contacts-flash .item .social li{ width:auto;float:left; padding-left:0px; margin:0 5px;}
.block.contacts-flash .item .social li:before{ display:none;}
.block.contacts-flash .item .social li a{float:left;position:relative;border-radius:0px; background:#444;}
.block.contacts-flash .item .social li a span.circle{width:40px;height:40px;float:left;color:#fff;text-align:center;}
.block.contacts-flash .item .social li a span.circle i{font-size:20px; line-height:40px; vertical-align:top;}
.block.contacts-flash .item .social li.facebook a:hover{background:#1877F2}
.block.contacts-flash .item .social li.linkedin a:hover{background:#0A66C2}
.block.contacts-flash .item .social li.instagram a:hover{background:#c1558b}

/* contatti form */

.block.contacts{ position:relative;}
.block.contacts .form{ margin-top:0px;}
.block.contacts .form .form-group{ position:relative;}
.block.contacts .form .form-group > label{ float:left;}
.block.contacts .form.center{ text-align:center;}
.block.contacts .form.center .check{ text-align:center;}
.block.contacts .form.center .check > span{ display:inline-block;}

/* download */

.block.download{ padding:60px 0;}
.block.download .item{ text-align:center;}
.block.download .item h2{ font-family: "Roboto", serif; font-size:34px; line-height:1.2; color:#e30613; font-weight:700; text-transform:none; margin-bottom:15px;}
.block.download .item ul{ display:flex; flex-wrap:wrap; justify-content:center; margin:0 -10px; margin-top:30px;}
.block.download .item li{ padding:0 10px;}
.block.download .item li:before{ display:none;}

/* richiedi una consulenza */

.block.contacts.consulting .item .form{ margin-top:20px;}


/* cta */

.block.cta{ position:relative; background:#000; padding:0px;}
.block.cta .background-video{ position:absolute; min-width:100%; min-height:100%; width:auto; height:auto; z-index:0; overflow:hidden; opacity:1;}
.block.cta .background-video:before{ content:""; width:75%; height:100%; position:absolute; left:0px; top:0px; z-index:2;}
.block.cta .background-video video{ width:100%; height:100%; object-fit:cover; position:absolute; left:0px; top:0px;}
.block.cta .text{ position:relative; text-align:center; padding:100px 0;}
.block.cta .text h2{ color:#fff; margin:0px; margin-bottom:10px;}
.block.cta .text h3{ font-size:20px; line-height:28px; color:#F5C44C; font-weight:600; margin:0px; margin-bottom:10px;}
.block.cta .text p{ font-size:24px; line-height:1.6; font-weight:400; margin-top:0px; color:#fff;}

/* footer */

.footer{ width:100%; background:#fff; position:relative; display:inline-block; font-family: 'Roboto', sans-serif; width:100%; float:left; overflow:hidden; background:#222;}
.footer:before{ content:""; width:100%; height:100%; position:absolute; left:0px; top:0px; background:#000; background: linear-gradient(-180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);}
.footer:after{ content:""; width:1000px; height:1000px; position:absolute; left:50%; top:-400px; margin-left:-500px; background-image:url(../images/symbol.png); background-size:100% auto; opacity:0.05;}
.footer .footer-row{ text-align:center; position:relative; z-index:20; padding:80px 0; padding-bottom:40px; overflow:hidden;}
.footer .footer-row .row{ display:flex; flex-wrap:nowrap; justify-content:center;}
.footer .footer-row .row .colfooter{ width:33.33%; padding-top:100px;}
.footer .footer-row .row .colfooter:last-child{ border:0px;}
.footer .footer-row .row .colfooter01{ text-align:center;}
.footer .footer-row .row .colfooter01 .widget{ text-align:center;}
.footer .footer-row .row .colfooter02{ padding-top:0px;}
.footer .footer-row .row .colfooter03{ text-align:center;}
.footer .footer-row .row .colfooter03 .widget{ text-align:center;}
.footer .footer-row .row.rowfooter01{ max-width:1200px; margin:0 auto;}
.footer .footer-row .widget{ width:100%; min-width:100px; float:left; text-align:center; margin-bottom:0px;}
.footer .footer-row .widget h4{ font-size:24px; line-height:1.1; color:#e30613; font-weight:700; text-transform:uppercase; margin-bottom:10px;}
.footer .footer-row .widget p + h4{ margin-top:20px;}
.footer .footer-row .widget p, .footer .footer-row .widget li{ font-family: 'Roboto', sans-serif; font-size:17px; line-height:1.6; margin-bottom:10px; color:#fff;}
.footer .footer-row .widget p:last-child{ margin-bottom:0px;}
.footer .footer-row .widget p a{ color:#e30613;}
.footer .footer-row .widget p a:hover{ color:#e30613;}
.footer .footer-row .widget.widget-company{background:none; text-align:center;}
.footer .footer-row .widget.widget-company img{ width:auto; height:70px; display:inline-block; margin-bottom:30px;}
.footer .footer-row .widget.widget-company a{ font-weight:700;}
.footer .footer-row .widget.widget-services ul{ margin-bottom:0px;}
.footer .footer-row .widget.widget-services li{ margin:0px;}
.footer .footer-row .widget.widget-services li:before{ content:""; width:6px; height:6px; position:absolute; top:7px; left:0px; background:#e30613; display:none;}
.footer .footer-row .widget.widget-services li a{ color:#fff;}
.footer .footer-row .widget.widget-services li a:hover{ color:#e30613;}
.footer .footer-row .widget.widget-book p{ margin-bottom:20px; padding:0 10%;}
.footer .footer-row .widget.widget-book a:not(.btn){ color:#e30613;}
.footer .footer-row .social{ width:100%; float:left; margin:0px; margin-top:20px;}
.footer .footer-row .social ul{ margin:0 -5px; width:auto; display:flex; flex-wrap:nowrap; justify-content:center;}
.footer .footer-row .social li{ width:auto;float:left; padding-left:0px; margin:0 5px;}
.footer .footer-row .social li:before{ display:none;}
.footer .footer-row .social li a{float:left;position:relative;border-radius:0px; background:#444;}
.footer .footer-row .social li a span.circle{width:40px;height:40px;float:left;color:#fff;text-align:center;}
.footer .footer-row .social li a span.circle i{font-size:20px; line-height:40px; vertical-align:top;}
.footer .footer-row .social li.facebook a:hover{background:#1877F2}
.footer .footer-row .social li.linkedin a:hover{background:#0A66C2}
.footer .footer-row .social li.instagram a:hover{background:#c1558b}

.footer .footer-extra{ padding:0px; padding-bottom:40px; text-align:center; background:none; position:relative; z-index:20;}
.footer .footer-extra .row{ padding:0px;}
.footer .footer-extra .row p{ font-size:13px; line-height:1.6; color:#fff; font-weight:400; margin:0px;}
.footer .footer-extra .row p span{ margin:0 3px; color:#999;}
.footer .footer-extra .row a{ color:#fff; font-weight:400;}
.footer .footer-extra .row a:hover{ color:#e30613;}

/* modal */

body.modal-open .header{ filter: blur(4px);}
body.modal-open .wrapper{ filter: blur(4px);}
body.modal-open .footer{ filter: blur(4px);}

.modal{ z-index:999999; border-radius:0px; display:none !important;}
.modal.in { display:flex !important; align-items:center; flex-direction: column; justify-content:center;}
.modal-open .modal{ overflow:auto;}
.modal-backdrop{ z-index:99999; background:#f7f7f7;}
.modal-backdrop.in{ opacity:0.75;}
.modal .modal-dialog{ width:100%; max-width:1000px; margin:0px; overflow:auto !important; box-shadow:0px 0px 100px rgba(0,0,0,0.2);}
.modal.in .modal-dialog{ top:auto; transform:none;}
.modal-body{ padding:30px;}
.modal .modal-content{ border-radius:0px; border:0px;}
.modal .close{ width:40px; height:40px; position:absolute; background-color:#fff; background-image:url(../images/icon-close.png); background-size:30px 30px; background-repeat:no-repeat; background-position:center center; top:0px; right:0px; opacity:1; z-index:9999;}
.modal .modal-body{ border-radius:0px; padding:0px;}
.modal .modal-body .image{ width:100%; background-size:cover; background-position:center center;}
.modal .modal-body .image img{ display:none;}
.modal .modal-body .text{ padding:60px 40px;}
.modal .modal-body .text h3{ font-size:22px; line-height:28px; color:#000; font-weight:300; margin-bottom:10px;}
.modal .modal-body .text h2{ font-size:34px; line-height:34px; color:#000; margin-bottom:10px;}
.modal .modal-body .text h3 + h2{ margin-top:0px;}
.modal .modal-body .text p + .btn{ margin-top:20px;}
.modal .modal-body .text .btn{ width:100%; padding:15px 20px; font-size:20px;}

#scrolltop{ width:48px; height:48px; position:fixed; z-index:999; right:20px; bottom:20px; opacity:0; visibility:hidden; -webkit-transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; transition: all .3s ease-in-out;}
#scrolltop.show{ opacity:1; visibility:visible;}
#scrolltop a{ width:48px; height:48px; float:left; background:#e30613; border-radius:50%; text-align:center;}
#scrolltop a:before{ content:"\f106"; width:50px; height:50px; font-family:FontAwesome; font-size:16px; color:#fff; line-height:50px;}
#scrolltop a:hover{ background:#000;}

form{ margin-bottom:0px !important;}

.captchaField > div {margin-bottom: 20px; text-align: center;  display: inline-block;}

footer .widget.widget-partner {margin-bottom:20px !important;}
footer .widget.widget-partner img {	max-width: 135px;	text-align: center;	display: inline-block;}


@media (min-width: 1500px) {

	.container{ width:1400px;}
	.visual .container{ width:1400px; padding:0px 30px;}


}

@media (max-width: 1499px) {

	.row.row40{ margin-left:-20px; margin-right:-20px;}
	.row.row40 > [class*="col-"]{ padding:0 20px;}

	.block{ padding:80px 0;}
	.block.small{ padding:50px 0;}
	.block h1, .block h2{ font-size:40px;}

	.visual-content .box h1{ font-size:48px; margin-bottom:30px;}
	.visual-content .box p{ font-size:20px; margin-bottom:30px;}

	.title{ padding:140px 0 40px 0;}
	.title .text h1, .title .text h2{ font-size:48px;}

	.block.presentation .top-title h2{ font-size:46px;}

	.block.numbers .item.normal h2{ font-size:50px;}
	.block.numbers .container{ padding:0px;}

	.block.fullwidth{ padding:100px 0;}

	.block.systems-list .item .text h2{ font-size:38px;}
	.block.systems-list .item .text p{ font-size:18px;}

	.block.team .item .text h2{ font-size:32px;}

	.block.cta .text{ padding:80px 0;}
	.block.cta .text p{ font-size:20px;}

	.footer .footer-row{ padding:60px 0; padding-bottom:30px;}
	.footer .footer-row .row .colfooter{ padding-top:60px;}

}

@media (max-width: 1199px){

	.container-fluid{ padding:0 40px;}

	.block{ padding:70px 0;}
	.block h1, .block h2{ font-size:36px;}
	.block h3{ font-size:20px;}

	.visual-content .box h1{ font-size:42px; margin-bottom:25px;}
	.visual-content .box h3{ font-size:18px;}
	.visual-content .box p{ font-size:18px; margin-bottom:25px;}

	.title{ padding:120px 0 30px 0;}
	.title .text h1, .title .text h2{ font-size:42px;}

	.block.presentation .top-title h2{ font-size:40px;}
	.block.presentation .top-title h3{ padding:0 5%;}

	.block.numbers .item{ padding:30px 20px;}
	.block.numbers .item.normal h2{ font-size:44px;}
	.block.numbers .item.normal p{ font-size:18px;}
	.block.numbers .container{ padding:0px;}

	.block.fullwidth{ padding:80px 0;}

	.block.services-list .item .top .name h3{ font-size:24px;}

	.block.systems .item .text{ min-height:380px; padding:30px;}

	.block.systems-list .item .text{ padding-left:40px;}
	.block.systems-list .item:nth-child(even) .text{ padding-right:40px;}
	.block.systems-list .item .text h2{ font-size:32px;}
	.block.systems-list .item .text p{ font-size:18px;}

	.block.archive .item .text h2, .block.casehistory .item .text h2{ font-size:24px;}

	.block.result .box-list .item h4{ font-size:24px; max-width:100%;}

	.block.single-post .info h1{ font-size:42px;}

	.block.cta .text h3{ font-size:18px;}
	.block.cta .text p{ font-size:18px;}

	.footer .footer-row .widget.widget-book p{ padding:0 5%;}

}

@media (max-width: 1199px) {

	.header a.navbar-brand img{ height:46px;}
	.header .navbar .navbar-nav > li > a{ margin:0 8px; font-size:13px;}
	.header .request .btn{ padding:10px 16px; font-size:13px;}

}

@media (min-width: 992px) {

	.header .navbar-collapse{ display:flex;}

}

@media (max-width: 992px) {

	.navbar-nav{ padding-bottom:0px;}
	.footer-row [class*=col-]{ margin:0px;}
	.content .row + .row{ margin-top:40px;}

}

@media (max-width: 991px) {

	.navbar-toggle{ display:block;}

	.container{ width:750px;}
	.visual .container{ width:750px;}

	.navbar-toggle{ display:block !important; z-index:2; background-color:#e30613;}
	.navbar-toggle:hover{ background-color:#000;}
	.navbar-toggle i{ text-indent:0; width:auto; height:auto; background-image:none; font-size:20px; line-height:50px; color:#fff;}

	.header .request{ margin-right:85px;}

	.header{}
	.header .navbar{ position:relative;}
	.header .navbar a.navbar-brand{ min-width:unset; position:relative; z-index:10; line-height:100px;}
	.header .navbar a.navbar-brand img{ max-height:40px;}
	.header .navbar .menu-wrap{ width:auto; }
	.header .navbar-collapse{ width:100%; position:absolute; display:block; left:0px; top:0px; background:#000; padding:20px; padding-top:100px; float:none !important; box-shadow:0px 0px 20px rgba(0,0,0,0.05); clear:both; margin:0px;}
	.header .navbar-collapse.collapse{ display:none;}
	.header .navbar-collapse.in{ display:block; }
	.header .navbar .navbar-nav{ width:100%; float:left; display:inherit; vertical-align:inherit; margin-bottom:0px; padding-bottom:0px; overflow:hidden;}
	.header .navbar .navbar-nav + .navbar-nav{ padding-top:0px;}
	.header .navbar .navbar-nav > li{ clear:both; width:100%; padding:0px; border-bottom:1px solid #333;}
	.header .navbar .navbar-nav > li:after{ display:none;}
	.header .navbar .navbar-nav > li > a:before{ display:none;}
	.header .navbar .navbar-nav > li:last-child{ border:0px;}
	.header .navbar .navbar-nav > li > a:after{ display:none;}
	.header .navbar .navbar-nav > li > a{ line-height:1 !important; font-size:17px; color:#fff; padding:5px 0; text-align:center; border-left:0px !important; margin:0px; border:0px;}
	.header .navbar .navbar-nav > li > a span:before, .header .navbar-nav > li.active > a span:before{ display:none;}
	.header .navbar .navbar-nav > li.active > a{ color:#e30613; border:0px;}
	.header .navbar .navbar-nav > li > a:hover{ color:#e30613; border:0px;}

	.visual-content{ height:100vh; min-height:600px;}
	.visual-content .box{ padding-top:100px; padding-bottom:20px;}
	.block.numbers .container{ padding:0px;}
	.visual .down{ display:none;}
	.visual-content .box h1{ font-size:36px; line-height:1.2; margin-bottom:20px;}
	.visual-content .box h3{ font-size:17px; margin-bottom:10px;}
	.visual-content .box p{ font-size:16px; margin-bottom:20px;}
	.visual-content .box .actions li{ margin-right:15px;}
	.visual-image{ width:100%; right:0px; padding:100px 0 40px 0;}

	.title{ padding:110px 0 30px 0;}
	.title .text h1, .title .text h2{ font-size:36px;}
	.title .breadcrumb li{ font-size:14px;}

	.block{ padding:60px 0;}
	.block.small{ padding:40px 0;}
	.block h1, .block h2{ font-size:32px;}
	.block h3{ font-size:19px;}

	.block.presentation .row.row40 > [class*="col-"] + [class*="col-"]{ margin-top:30px;}
	.block.presentation .top-title h2{ font-size:34px;}
	.block.presentation .top-title h3{ padding:0;}
	.block.result .box-list .item{ margin-bottom:15px;}

	.block.about{ padding-bottom:20px;}
	.block.about .item{ margin-bottom:40px;}
	.block.about .item .image{ margin-bottom:25px;}

	.block.numbers .item{ padding:30px 20px;}
	.block.numbers .item.normal h2{ font-size:38px; min-height:auto;}
	.block.numbers .item.normal p{ font-size:17px; margin-top:5px;}

	.block.team{ padding-bottom:40px;}
	.block.team .row.flex{ margin-left:0px; margin-right:0px;}
	.block.team .row.flex > [class*="col-"]{ width:50%; padding:0 8px;}
	.block.team .item{ margin-bottom:20px;}
	.block.team .item:before{ height:70px;}
	.block.team .item .text{ padding:20px;}
	.block.team .item .text h3{ font-size:15px;}
	.block.team .item .text h2{ font-size:22px;}

	.block.fullwidth{ padding:0px; padding-bottom:40px;}
	.block.fullwidth .image{ position:relative; width:100%; height:0px; padding-bottom:66.67%; top:auto; left:auto; right:auto; margin-bottom:30px;}
	.block.fullwidth.gradient .image:before{ display:none;}

	.block.services-list{ padding-bottom:20px;}
	.block.services-list .item{ margin-bottom:18px;}
	.block.services-list .item .top .image{ width:80px; padding:20px 10px;}
	.block.services-list .item .top .name{ width:calc(100% - 80px);}
	.block.services-list .item .top .name h3{ font-size:20px;}
	.block.services-list .item .bottom{ padding:25px 20px;}

	.block.systems{ padding-bottom:0px;}
	.block.systems .item.item02{ flex-direction:column;}
	.block.systems .item .image{ width:110%; margin-left:-5% !important; margin-top:-5% !important; margin-bottom:0px !important;}
	.block.systems .item .text{ min-height:auto; padding:40px 25px;}

	.block.systems-list .item-wrap{ margin-top:40px;}
	.block.systems-list .item{ margin-bottom:40px;}
	.block.systems-list .item .container{ flex-direction:column;}
	.block.systems-list .item .image, .block.systems-list .item .text{ width:100%;}
	.block.systems-list .item .text{ padding:30px 0 0 0; text-align:left;}
	.block.systems-list .item .text h2{ font-size:30px;}
	.block.systems-list .item .text p{ font-size:17px;}
	.block.systems-list .item:nth-child(even) .image{ order:0;}
	.block.systems-list .item:nth-child(even) .text{ padding:30px 0 0 0; text-align:left;}

	.block.result .box-list .item{ padding:20px;}
	.block.result .box-list .item h4{ font-size:22px; max-width:100%;}
	.block.result .body{ margin-top:25px;}

	.block.archive .item{ margin-bottom:25px;}
	.block.archive .item .text, .block.casehistory .item .text{ padding:20px; padding-bottom:70px;}
	.block.archive .item .text h2, .block.casehistory .item .text h2{ font-size:22px;}
	.block.archive .item .action, .block.casehistory .item .action{ bottom:20px; left:20px;}
	.block.casehistory .item{ margin-bottom:25px;}
	.block.casehistory .filters ul li a{ font-size:16px; margin:0 8px;}

	.block.single-post .info h1{ font-size:32px;}
	.block.single-post .body{ margin-bottom:25px;}
	.block.single-post .gallery .image{ width:50%;}

	.block.service-page .gallery .image{ width:100%;}

	.block.contacts-flash{ padding:40px 0;}
	.block.contacts-flash .item h2{ font-size:26px;}

	.block.download{ padding:40px 0;}
	.block.download .item h2{ font-size:26px;}

	.block.cta .text{ padding:60px 0;}
	.block.cta .text h3{ font-size:17px;}
	.block.cta .text p{ font-size:17px;}

	.footer .footer-row{ padding:50px 0; padding-bottom:20px;}
	.footer .footer-row .row{ flex-wrap:wrap;}
	.footer .footer-row .row .colfooter{ width:100%; padding-top:30px;}
	.footer .footer-row .row .colfooter:first-child{ padding-top:0px;}
	.footer .footer-row .row .colfooter02{ padding-top:30px;}
	.footer .footer-row .widget h4{ font-size:20px;}

	.modal .modal-body .text{ padding:40px 25px;}
	.modal .modal-body .text h2{ font-size:26px;}
	.modal .modal-body .text h3{ font-size:18px;}
	.modal .modal-body .text .btn{ font-size:16px;}

}


@media (max-width: 768px){

	.content .row + .row{ margin-top:30px;}

	.container{ width:100%; padding:0 25px;}
	.visual .container{ width:100%;}
	.container-fluid{ padding:0 25px;}

	.navbar-toggle{ width:44px; height:44px; right:15px; top:18px; line-height:44px;}
	.navbar-toggle i{ line-height:44px;}
	.header .navbar a.navbar-brand{ line-height:80px;}
	.header .navbar a.navbar-brand img{ max-height:37px;}
	.header .request{ margin-right:60px;}
	.header .request .btn{ padding:8px 12px; font-size:12px;}

	.block{ padding:50px 0;}
	.block.small{ padding:35px 0;}
	.block h1, .block h2{ font-size:28px;}
	.block h3{ font-size:18px;}

	.visual-content{ min-height:500px;}
	.visual-content .box{ padding-top:80px;}
	.visual-content .box h1{ font-size:30px; margin-bottom:15px;}
	.visual-content .box h3{ font-size:16px;}
	.visual-content .box p{ font-size:15px; margin-bottom:20px;}
	.visual-content .box .actions{ flex-wrap:wrap;}
	.visual-content .box .actions li{ margin:0 8px 10px;}

	.title{ padding:100px 0 25px 0;}
	.title .text h1, .title .text h2{ font-size:28px;}

	.block.presentation .top-title h2{ font-size:28px;}

	.btn{ font-size:14px; padding:10px 16px;}
	a.readmore, a.backpage{ font-size:14px;}

	.block.numbers .item.normal h2{ font-size:34px;}
	.block.numbers .item.normal p{ font-size:16px;}

	.block.team .row.flex > [class*="col-"]{ width:50%; padding:0 8px;}
	.block.team .item{ margin-bottom:16px;}
	.block.team .item:before{ height:60px;}
	.block.team .item .text{ padding:15px;}
	.block.team .item .text h3{ font-size:13px;}
	.block.team .item .text h2{ font-size:18px;}

	.block.services-list .item{ margin-bottom:15px;}
	.block.services-list .item .top .name h3{ font-size:18px;}

	.block.systems-list .item .text h2{ font-size:26px;}

	.block.result .box-list .item h4{ font-size:20px;}

	.block.download .item li{ margin-bottom:15px;}

	.footer .footer-extra .row p{ font-size:12px;}

	.block.archive .item .text h2, .block.casehistory .item .text h2{ font-size:20px;}
	.block.casehistory .filters ul li{ margin-bottom:10px;}
	.block.casehistory .filters ul li a{ margin:0 6px; font-size:15px;}
	.block.casehistory .filters ul li:after{ height:20px; top:3px;}

	.block.single-post .info h1{ font-size:28px;}
	.block.single-post .gallery .image{ width:100%;}

	.block.contacts-flash .item h2, .block.download .item h2{ font-size:22px;}

	.block.cta .text{ padding:50px 0;}
	.block.cta .text h2{ font-size:26px;}

	.footer .footer-row .widget.widget-company img{ height:55px; margin-bottom:20px;}
	footer .widget.widget-partner img{ max-width:110px;}

	.modal .modal-body .text{ padding:30px 20px;}
	.modal .modal-body .text h2{ font-size:24px;}

}

@media (max-width: 640px){

	.block.numbers .item{ padding:25px 15px;}
	.block.numbers .item.normal h2{ font-size:30px;}

	.block.services-list .item .top .image{ width:70px; padding:15px 10px;}
	.block.services-list .item .top .name{ width:calc(100% - 70px);}

	.block.systems .item .text{ padding:25px 20px;}

}

@media (max-width: 479px) {
	
	.navbar-toggle{ right:20px;}

	[class*=col-xs-]{ text-align:inherit;}
	.footer [class*=col-]{ text-align:inherit;}

	.container-fluid{ padding:0 20px;}
	.container{ padding:0 20px;}

	.block{ padding:40px 0;}
	.block.small{ padding:30px 0;}
	.block h1, .block h2{ font-size:24px;}

	.visual-content .box h1{ font-size:24px; line-height:1.25;}
	.visual-content .box p{ font-size:14px;}

	.title{ padding:90px 0 20px 0;}
	.title .text h1, .title .text h2{ font-size:24px;}

	.block.presentation .top-title h2{ font-size:24px;}

	.btn{ padding:10px 14px; font-size:13px;}
	a.readmore, a.backpage{ font-size:13px; padding-left:18px;}

	.block.numbers .item.normal h2{ font-size:28px;}
	.block.numbers .item.normal p{ font-size:15px;}

	.block.team .row.flex > [class*="col-"]{ padding:0 6px;}
	.block.team .item .text{ padding:12px;}
	.block.team .item .text h3{ font-size:12px;}
	.block.team .item .text h2{ font-size:16px;}

	.block.services-list .item .top .name h3{ font-size:17px;}

	.block.systems-list .item .text h2{ font-size:24px;}

	.block.result .box-list .item h4{ font-size:19px;}

	.block.contacts-flash .item h2, .block.download .item h2{ font-size:20px;}

	.block.download .item ul{ flex-direction:column; align-items:center;}
	.block.download .item li{ width:100%; max-width:280px; padding:0; margin-bottom:12px;}
	.block.download .item li:last-child{ margin-bottom:0px;}
	.block.download .item li .btn{ width:100%; justify-content:center;}

	.footer .footer-extra .row p{ font-size:11px;}

	.modal .modal-body .text{ padding:25px 15px;}
	.modal .modal-body .text h2{ font-size:20px;}
	.modal .modal-body .text h3{ font-size:16px;}
	.modal .modal-body .text .btn{ padding:12px 15px; font-size:16px;}

	.footer .footer-row .widget h4{ font-size:18px;}

}