/*
Theme Name: CeKaPro
Author: Bestwebdesign
Version: 1.0
Author URI: https://bwd.pl/
*/

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap');

.comment-reply-title small a:before,
.comment-reply-link:before {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
display: inline-block;
font-family: "Genericons-Neue";
font-size: 16px;
font-style: normal;
font-variant: normal;
font-weight: normal;
line-height: 1;
speak: none;
text-align: center;
text-decoration: inherit;
text-transform: none;
vertical-align: top;
}

/* general */
* {
margin: 0;
padding: 0;
outline: none;
}

html {
background: #FFFFFF;
text-underline-offset: 2px;
}

body {
line-height: 1.5;
margin: 0;
padding: 0;
font-family: "Plus Jakarta Sans", sans-serif;
font-optical-sizing: auto;
font-size: 16px;
color: #000000;
-webkit-text-size-adjust: 100%;
image-rendering: -webkit-optimize-contrast;
min-width: 320px;
}

h1, h2, h3, h4, h5, h6, b, strong {
font-weight: 800;
}

h1, h2, h3, h4, h5, h6 {
padding-bottom: 30px;
}

h1 {
font-size: 48px;
line-height: 1.1;
}

h2 {
font-size: 36px;
line-height: 1.2;
}

h3 {
font-size: 30px;
line-height: 1.3;
}

h4 {
font-size: 24px;
}

h5 {
font-size: 20px;
}

h6 {
font-size: 18px;
}

h1, h2, h3, h4, h5, h6 {
word-wrap: normal;
}

a {
color: #c01111;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background-color, border-color, opacity;
-moz-transition-property: color, background-color, border-color, opacity;
-webkit-transition-property: color, background-color, border-color, opacity;
}

a:hover {
color: #e41919;
}

ul, ol {
padding-left: 25px;
margin-bottom: 25px;
}

p {
margin-bottom: 25px;
}

p:last-child,
ul:last-child,
ol:last-child {
margin-bottom: 0;
}

img {
border: none;
vertical-align: middle;
}

fieldset {
padding: 25px;
border: 1px solid rgba(0,0,0,0.1);
margin-bottom: 15px;
}

fieldset legend {
padding: 0 15px;
margin-left: -15px;
}

input, button, select, textarea {
font-family: "Plus Jakarta Sans", sans-serif;
font-optical-sizing: auto;
font-size: 16px;
color: #000000;
}

input[type=text],
input[type=search],
input[type=phone],
input[type=password],
input[type=email],
input[type=url],
input[type=number],
input[type=tel],
select,
.wpcf7-text {
line-height: 20px;
padding: 14px 30px;
border: 1px solid #00449d;
background: #FFFFFF;
color: #000000;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
border-radius: 8px;
}

input[type=text]:focus,
input[type=search]:focus,
input[type=phone]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=number]:focus,
input[type=tel]:focus,
textarea:focus {
border-color: #c01111 !important;
}

::-webkit-input-placeholder {
opacity: 1;
color: #000000;
}

:-moz-placeholder {
opacity: 1;
color: #000000;
}

::-moz-placeholder {
opacity: 1;
color: #000000;
}

:-ms-input-placeholder {  
opacity: 1;
color: #000000;
}

input[type=submit],
input[type=button],
input[type=reset],
button[type=submit],
button[type=reset] {
cursor: pointer;
background: #c01111;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
border-radius: 8px;
line-height: 20px;
padding: 15px 60px;
border: none;
color: #FFFFFF;
font-weight: 800;
font-size: 16px;
text-decoration: none;
box-sizing: border-box;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background, border-color, opacity;
-moz-transition-property: color, background, border-color, opacity;
-webkit-transition-property: color, background, border-color, opacity;
}

input[type=submit]:hover,
input[type=button]:hover,
input[type=reset]:hover,
button[type=submit]:hover,
button[type=reset]:hover {
background: #e41919;
color: #FFFFFF;
outline: none;
}

textarea {
line-height: 20px;
padding: 14px 30px;
border: 1px solid #00449d;
background: #FFFFFF;
color: #000000;
-moz-border-radius: 8px;
-webkit-border-radius: 8px;
border-radius: 8px;
resize: none;
}

input[type=checkbox] {
float: left;
position: relative;
top: 3px;
}

input[type=radio] {
float: left;
height: 15px;
}

label {
cursor: default;
}

.clearfix:after {
clear: both;
content: ".";
display: block;
font-size: 0;
height: 0;
line-height: 0;
visibility: hidden;
}

.clearfix {
display: block
}

#PageWrapper {
position: relative;
}

#PageContainer {
text-align: left;
}

#PageContainer {
}

#PageContent {
position: relative;
z-index: 1;
background: #FFFFFF;
overflow: hidden;
}

/* header */
#Header {
position: fixed;
z-index: 2;
top: 0;
left: 0;
width: 100%;
min-width: 320px;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: background;
-moz-transition-property: background;
-webkit-transition-property: background;
}

.tpl-header-collapsed #Header {
box-shadow: 0px 1px 0px 0px rgba(0, 0, 0, 0.05);
background: #FFFFFF;
}

.admin-bar #Header {
top: 32px;
}

#HeaderMiddle .tpl-section-wrapper {
max-width: 1680px;
padding: 0 30px;
margin: 0 auto;
}

#HeaderMiddle .tpl-logo-wrapper {
float: left;
position: relative;
z-index: 91;
}

#HeaderMiddle .tpl-header-logo {
display: block;
height: 120px;
margin: 30px 0;
font-size: 0;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.tpl-header-collapsed #HeaderMiddle .tpl-header-logo {
height: 80px;
margin: 20px 0;
}

#HeaderMiddle .tpl-header-logo img {
display: block;
height: 100%;
}

.tpl-header-collapsed #HeaderMiddle .tpl-header-logo img,
.rwd-menu-open #HeaderMiddle .tpl-header-logo img {
filter: brightness(0) saturate(100%) invert(4%) sepia(59%) saturate(5297%) hue-rotate(210deg) brightness(96%) contrast(102%);
}

#HeaderMiddle .tpl-top-menu-wrapper {
float: left;
}

#HeaderMiddle .tpl-top-menu-wrapper ul {
list-style: none;
padding: 0;
}

#HeaderMiddle .tpl-top-menu-wrapper ul li {
float: left;
margin-left: 25px;
position: relative;
}

#HeaderMiddle .tpl-top-menu-wrapper ul li:first-child {
margin-left: 0;
}

#HeaderMiddle .tpl-top-menu-wrapper ul li a {
color: inherit;
display: block;
line-height: 50px;
height: 46px;
font-size: 18px;
font-weight: 700;
text-decoration: none;
position: relative;
border-bottom: 4px solid transparent;
}

#HeaderMiddle .tpl-top-menu-wrapper ul li a:hover {
color: #c01111 !important;
}

#HeaderMiddle .tpl-top-menu-wrapper ul li.current-menu-ancestor:not(.tpl-one-page-nav-link) > a,
#HeaderMiddle .tpl-top-menu-wrapper ul li.current-menu-item:not(.tpl-one-page-nav-link) > a,
#HeaderMiddle .tpl-top-menu-wrapper ul li.current-menu-parent:not(.tpl-one-page-nav-link) > a,
#HeaderMiddle .tpl-top-menu-wrapper ul li.tpl-one-page-nav-link.tpl-current-one-page-nav-link > a,
#HeaderMiddle .tpl-top-menu-wrapper ul li.tpl-one-page-nav-link.tpl-current-one-page-nav-link > a,
#HeaderMiddle .tpl-top-menu-wrapper ul li.tpl-one-page-nav-link.tpl-current-one-page-nav-link > a {
border-color: #c01111;
}

body:not(.tpl-header-collapsed) #HeaderMiddle .tpl-top-menu-wrapper ul li a {
color: #FFFFFF;
}

#HeaderMiddle .tpl-top-menu-wrapper ul li.menu-item-has-children > a > span {
padding-right: 18px;
position: relative;
}

#HeaderMiddle .tpl-top-menu-wrapper ul li.menu-item-has-children > a > span:after {
position: absolute;
right: 0px;
top: 50%;
margin-top: -2px;
width: 12px;
height: 7px;
content: '';
background: url(img/top_menu_arrow.png) 0 0 no-repeat;
background-size: 100% auto;
}

#HeaderMiddle .tpl-top-menu-wrapper ul li.menu-item-has-children > a:hover > span:after {
background-image: url(img/top_menu_arrow_hover.png) !important;
}

body:not(.tpl-header-collapsed) #HeaderMiddle .tpl-top-menu-wrapper ul li.menu-item-has-children > a > span:after {
background-image: url(img/top_menu_arrow_white.png);
}

/* #HeaderMiddle .tpl-top-menu-wrapper ul li.menu-item-has-children.current-menu-ancestor:not(.tpl-one-page-nav-link) > a > span:after,
#HeaderMiddle .tpl-top-menu-wrapper ul li.menu-item-has-children.current-menu-item:not(.tpl-one-page-nav-link) > a > span:after,
#HeaderMiddle .tpl-top-menu-wrapper ul li.menu-item-has-children.current-menu-parent:not(.tpl-one-page-nav-link) > a > span:after,
#HeaderMiddle .tpl-top-menu-wrapper ul li.menu-item-has-children.tpl-one-page-nav-link.tpl-current-one-page-nav-link > a > span:after,
#HeaderMiddle .tpl-top-menu-wrapper ul li.menu-item-has-children.tpl-one-page-nav-link.tpl-current-one-page-nav-link > a > span:after,
#HeaderMiddle .tpl-top-menu-wrapper ul li.menu-item-has-children.tpl-one-page-nav-link.tpl-current-one-page-nav-link > a > span:after {
background-image: url(img/top_menu_arrow.png);
} */

/* menu dropdown */
#Header .tpl-top-menu-wrapper ul li ul {
float: left;
position: absolute;
left: 0;
width: 250px;
z-index: 1;
padding: 0;
background: #00449d;
border-radius: 8px;
white-space: normal;
opacity: 0;
visibility: hidden;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: opacity, visibility;
-moz-transition-property: opacity, visibility;
-webkit-transition-property: opacity, visibility;
}

#Header .tpl-top-menu-wrapper ul li ul li {
background: none;
padding: 0;
margin: 0;
display: block;
border-bottom: 1px solid rgba(255,255,255,0.1);
}

#Header .tpl-top-menu-wrapper ul li ul li:last-child {
border-bottom: none;
}

#Header .tpl-top-menu-wrapper ul li ul ul {
margin-left: 264px;
top: -1px;
}

#Header .tpl-top-menu-wrapper ul li:hover > ul {
opacity: 1;
visibility: visible;
}

#Header .tpl-top-menu-wrapper ul li li:hover > ul {
opacity: 1;
visibility: visible;
}

#Header .tpl-top-menu-wrapper ul li li {
float: none;
height: auto;
padding: 0;
}

#Header .tpl-top-menu-wrapper ul li li a {
display: block;
height: auto;
font-size: 14px;
margin: 0;
padding: 0;
border: none;
color: #FFFFFF;
text-decoration: none;
}

#Header .tpl-top-menu-wrapper ul li li a:after {
display: none !important;
}

#Header .tpl-top-menu-wrapper ul li li a:hover {
color: #e41919;
}

#Header .tpl-top-menu-wrapper ul li li.current-menu-item > a,
#Header .tpl-top-menu-wrapper ul li li.current-menu-ancestor > a,
#Header .tpl-top-menu-wrapper ul li li.current-menu-parent > a,
#Header .tpl-top-menu-wrapper ul li li.current_page_parent > a {
color: #c01111 !important;
}

#Header .tpl-top-menu-wrapper ul li li a span {
display: block;
line-height: 16px;
padding: 12px 25px;
}

#Header .tpl-top-menu-wrapper ul li li.menu-item-has-children a span:after {
right: 15px;
width: 5px;
height: 8px;
top: 12px;
background-position: 0 -13px;
}

#Header .tpl-top-menu-wrapper ul li li.menu-item-has-children > a:hover > span:after,
#Header .tpl-top-menu-wrapper ul li li.current-menu-item.menu-item-has-children > a span:after,
#Header .tpl-top-menu-wrapper ul li li.current-menu-ancestor.menu-item-has-children > a span:after,
#Header .tpl-top-menu-wrapper ul li li.current-menu-parent.menu-item-has-children > a span:after,
#Header .tpl-top-menu-wrapper ul li li.current_page_parent.menu-item-has-children > a span:after {
background-position: 0 -20px;
}

#HeaderMiddle .tpl-header-right {
float: right;
margin: 35px 0;
}

#HeaderMiddle .tpl-header-right .tpl-header-phone {
float: left;
margin-left: 60px;
}

#HeaderMiddle .tpl-header-right .tpl-header-phone a {
display: inline-block;
padding: 0 30px;
line-height: 50px;
border-radius: 8px;
font-size: 18px;
background: #c01111;
color: #FFFFFF;
font-weight: 800;
text-decoration: none;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

#HeaderMiddle .tpl-header-right .tpl-header-phone a:hover {
background: #e41919;
}

#HeaderMiddle .tpl-header-right .tpl-header-phone a span {
display: inline-block;
padding-left: 35px;
color: inherit;
background: url(img/phone_white.png) no-repeat scroll 0 center;
background-size: 25px auto;
}

#Slideshow {
position: relative;
background: #000b1d;
}

.tpl-video-overlay-controls-wrapper {
position: absolute;
bottom: 30px;
left: 0;
width: 100%;
height: 0;
z-index: 2;
}

.tpl-video-overlay-controls-wrapper .tpl-video-overlay-controls {
text-align: right;
height: 0;
max-width: 1680px;
padding: 0 60px;
margin: 0 auto;
}

.tpl-video-overlay-controls-wrapper .tpl-video-overlay-controls a {
margin-top: -32px;
display: inline-block;
vertical-align: top;
width: 32px;
height: 32px;
font-size: 0;
background: #000000;
background: url(img/video_play.svg) center no-repeat;
background-size: 100% auto;
}

.tpl-video-overlay-controls-wrapper .tpl-video-overlay-controls a:hover {
opacity: 0.7;
}

.tpl-video-overlay-controls-wrapper .tpl-video-overlay-controls a.tpl-pause {
background-image: url(img/video_pause.svg);
}

.tpl-video-overlay-controls-wrapper .tpl-video-overlay-controls a.tpl-hidden {
display: none;
}

.tpl-video-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: hidden;
}

.tpl-video-overlay video {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
}

.tpl-video-overlay-mask {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: url(img/video_overlay_mask.png) center no-repeat;
background-size: 100% 100%;
}

#Slideshow .tpl-slideshow-wrapper {
box-sizing: border-box;
position: relative;
}

#Slideshow .tpl-slideshow {
width: 100%;
height: 100%;
white-space: nowrap;
position: relative;
color: #FFFFFF;
}

#Slideshow .slick-list,
#Slideshow .slick-track {
height: 100%;
}

#Slideshow .tpl-slide-wrapper {
max-width: 1380px;
padding: 0 30px;
margin: 0 auto;
height: 100%;
position: relative;
}

#Slideshow .tpl-slide {
position: relative;
z-index: 1;
white-space: normal;
height: 0;
display: inline-block;
vertical-align: top;
height: 100%;
width: 100%;
}

#Slideshow .tpl-slide .tpl-table {
display: table;
min-height: 780px;
width: 50%;
padding: 60px 0;
box-sizing: border-box;
position: relative;
}

#Slideshow .tpl-slide .tpl-cell {
display: table-cell;
vertical-align: middle;
box-sizing: border-box;
padding-top: 120px;
}

#Slideshow .tpl-slide .tpl-title {
font-size: 30px;
line-height: 1.2;
}

#Slideshow .tpl-slide .tpl-text {
font-size: 18px;
}

#Slideshow .tpl-slide .tpl-link {
margin-top: 30px;
display: inline-block;
vertical-align: top;
color: #FFFFFF;
font-weight: bold;
font-size: 18px;
padding: 15px 30px;
line-height: 20px;
background: #c01111;
text-decoration: none;
border-radius: 8px;
}

#Slideshow .tpl-slide .tpl-link:hover {
background: #e41919;
}

#MiddleBar {
padding-top: 150px;
background: url(img/footer_bg.webp) no-repeat scroll bottom center #000b1d;
background-size: cover;
color: #FFFFFF;
position: relative;
}

.tpl-middle-bar {
max-width: 1320px;
padding: 60px 30px;
margin: 0 auto;
text-align: center;
position: relative;
}

.tpl-middle-bar h1 {
padding: 0;
}

#AboutUs {
background: #f0f0f0;
}

.tpl-about-us-section .tpl-section-content {
max-width: 1320px;
margin: 0 auto;
padding: 90px 30px;
}

.tpl-about-us-section .tpl-section-title {
text-align: center;
padding-bottom: 90px;
font-size: 48px;
line-height: 1.1;
color: #00449d;
}

.tpl-about-us-section .tpl-section-title span {
color: #c01111;
}

.tpl-about-us-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
align-items: flex-start;
}

.tpl-about-us-row .tpl-about-us-column {
width: 50%;
box-sizing: border-box;
}

.tpl-about-us-row .tpl-text-column {
padding-right: 120px;
}

#AboutUsMore .tpl-about-us-row .tpl-text-column {
padding-right: 0;
padding-left: 120px;
order: 1;
}

.tpl-about-us-row .tpl-text-column .tpl-text h3 {
font-size: 24px;
line-height: 1.3;
}

.tpl-about-us-row .tpl-text-column .tpl-readmore {
padding-top: 45px;
}

.tpl-about-us-row .tpl-text-column .tpl-readmore a {
display: inline-block;
padding: 15px 30px;
line-height: 20px;
border-radius: 8px;
font-size: 16px;
line-height: 20px;
background: #c01111;
color: #FFFFFF;
font-weight: 800;
text-decoration: none;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.tpl-about-us-row .tpl-text-column .tpl-readmore a:hover {
background: #e41919;
}

.tpl-about-us-row .tpl-image-column {
position: relative;
}

.tpl-about-us-row .tpl-image-column .tpl-image img {
display: block;
width: 100%;
height: auto;
}

#AboutMe {
background: #000b1d;
position: relative;
color: #FFFFFF;
}

#AboutMe .tpl-background {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: url(img/o-mnie.webp) no-repeat scroll center;
background-size: cover;
}

#AboutMe .tpl-section-content {
max-width: 1320px;
margin: 0 auto;
padding: 90px 30px;
position: relative;
z-index: 1;
}

#AboutMe .tpl-section-title {
padding-bottom: 30px;
font-size: 24px;
line-height: 1.3;
}

#AboutMe .tpl-section-title span {
color: #c01111;
}

.tpl-about-me-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
align-items: center;
}

.tpl-about-me-row .tpl-about-me-column {
box-sizing: border-box;
}

.tpl-about-me-row .tpl-text-column {
padding-right: 120px;
max-width: 780px;
flex: 1;
}

.tpl-about-me-row .tpl-more-column {
margin-left: auto;
text-align: right;
}

.tpl-about-me-row .tpl-text-column .tpl-text h3 {
font-size: 24px;
line-height: 1.3;
color: #c01111;
}

.tpl-about-me-row .tpl-more-column .tpl-readmore a {
display: inline-block;
min-width: 240px;
text-align: center;
box-sizing: border-box;
padding: 15px 30px;
line-height: 20px;
border-radius: 8px;
font-size: 16px;
line-height: 20px;
background: #c01111;
color: #FFFFFF;
font-weight: 800;
text-decoration: none;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.tpl-about-me-row .tpl-more-column .tpl-readmore a:hover {
background: #e41919;
}

#Clients {
background: #f0f0f0;
}

#Clients .tpl-section-wrapper {
max-width: 1320px;
margin: 0 auto;
padding: 90px 30px;
}

#Clients .tpl-section-content {
position: relative;
}

#Clients .tpl-section-wrapper h2.tpl-title {
font-size: 48px;
line-height: 1.1;
font-weight: 400;
padding-bottom: 60px;
text-align: center;
}

.tpl-clients-row {
margin: 0 -15px -30px -15px;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
justify-content: center;
}

.tpl-clients-row .tpl-clients-column {
width: 16.66%;
padding: 0 15px 30px 15px;
box-sizing: border-box;
}

.tpl-clients-row .tpl-clients-column .tpl-client {
display: block;
font-size: 0;
text-align: center;
border: 1px solid #dfe1de;
border-radius: 8px;
text-align: center;
}

.tpl-clients-row .tpl-clients-column a.tpl-client:hover {
background: #dfe1de;
}

.tpl-clients-row .tpl-clients-column .tpl-client img {
max-width: 100%;
height: auto;
mix-blend-mode: multiply;
}

#ContactForm .tpl-section-wrapper {
max-width: 840px;
margin: 0 auto;
padding: 90px 30px;
}

#ContactForm .tpl-section-title {
font-size: 48px;
line-height: 1.1;
text-align: center;
padding-bottom: 60px;
color: #00449d;
}

/* content */
#Content {
position: relative;
z-index: 0;
}

#Content .tpl-section-wrapper {
padding: 90px 30px;
max-width: 1320px;
margin: 0 auto;
}

.single #Content .tpl-section-wrapper {
max-width: 820px;
}

#Content .tpl-section-content.tpl-column-layout {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
}

h1.page-title {
font-size: 48px;
padding-bottom: 60px;
}

.tpl-form-section:not(.tpl-last-section) {
padding-bottom: 60px;
}

.tpl-form-row {
margin: 0 -5px -10px -5px;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
align-items: flex-start;
}

.tpl-form-row .tpl-form-column {
width: 100%;
padding: 0 5px 10px 5px;
box-sizing: border-box;
}

.tpl-form-row .tpl-form-column.tpl-width-33 {
width: 33.33%;
}

.tpl-form-row .tpl-form-column.tpl-width-50 {
width: 50%;
}

.tpl-form-row .tpl-form-column.tpl-gdpr {
padding-top: 20px;
text-align: justify;
-moz-text-align-last: center;
text-align-last: center;
font-size: 12px;
}

.tpl-form-row .tpl-file-upload-info {
font-size: 12px;
text-align: center;
}

.tpl-form-row .tpl-upload-column p {
margin: 0;
}

.tpl-form-row .tpl-form-column .tpl-form-label {
padding-bottom: 10px;
display: inline-block;
}

.tpl-form-row .tpl-form-column.tpl-submit {
text-align: center;
padding-top: 20px;
}

.tpl-form-row .tpl-form-column .wpcf7-spinner {
position: absolute;
right: 15px;
top: 50%;
margin: 0;
margin-top: -12px;
}

.tpl-form-row .tpl-form-column.tpl-submit button {
box-sizing: border-box;
position: relative;
}

.tpl-form-row .tpl-form-column input[type=text],
.tpl-form-row .tpl-form-column input[type=phone],
.tpl-form-row .tpl-form-column input[type=email],
.tpl-form-row .tpl-form-column input[type=url],
.tpl-form-row .tpl-form-column input[type=number],
.tpl-form-row .tpl-form-column input[type=tel],
.tpl-form-row .tpl-form-column textarea,
.tpl-form-row .tpl-form-column select {
width: 100%;
box-sizing: border-box;
}

/* footer */
#Footer {
overflow: hidden;
}

#FooterTop {
background: url(img/footer_bg.webp) no-repeat scroll center #000b1d;
background-size: cover;
color: #FFFFFF;
}

.tpl-footer-top {
max-width: 1320px;
margin: 0 auto;
padding: 90px 30px;
position: relative;
}

.tpl-footer-top .tpl-section-title-wrapper {
text-align: center;
margin-bottom: 90px;
}

.tpl-footer-top .tpl-section-title {
font-size: 48px;
line-height: 1.2;
font-weight: 800;
}

.tpl-footer-top .tpl-section-title + .tpl-section-text {
padding-top: 15px;
}

.tpl-footer-top-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
margin: 0 -60px -60px -60px;
justify-content: center;
text-align: center;
}

.tpl-footer-top-column {
width: 25%;
box-sizing: border-box;
padding: 0 60px 60px 60px;
}

.tpl-footer-top-column .tpl-icon {
width: 90px;
height: 90px;
line-height: 90px;
font-size: 0;
margin: 0 auto 30px auto;
border-radius: 8px;
background: #ffffff;
}

.tpl-footer-top-column .tpl-icon img {
max-width: 90px;
max-height: 90px;
}

.tpl-footer-top-column .tpl-title {
font-size: 22px;
font-weight: 800;
padding-bottom: 15px;
}

.tpl-footer-top-column .tpl-text a {
color: inherit;
text-decoration: none;
}

.tpl-footer-top-column .tpl-text a:hover {
color: #e41919;
}

.tpl-footer-social-media {
margin-top: 60px;
text-align: center;
font-size: 0;
}

.tpl-footer-social-media a {
display: inline-block;
width: 32px;
height: 32px;
background: url(img/facebook_white.png) no-repeat scroll center;
background-size: 32px auto;
margin: 0 5px;
}

.tpl-footer-social-media a:hover {
filter: brightness(0) saturate(100%) invert(16%) sepia(68%) saturate(4733%) hue-rotate(351deg) brightness(97%) contrast(101%);
}

.tpl-bottom-line-text {
margin-top: 60px;
text-align: center;
font-size: 16px;
}

.tpl-bottom-line-text > div {
display: inline-block;
vertical-align: top;
}

.tpl-bottom-line-text > div:not(:last-child) {
margin-right: 15px;
padding-right: 15px;
border-right: 1px solid #FFFFFF;
}

.tpl-footer-privacy-policy a {
color: inherit;
}

.tpl-footer-privacy-policy a:hover {
color: #e41919;
}

.tpl-contact-layout-row {
margin: 0 -60px;
}

.tpl-contact-layout-column {
width: 50%;
float: left;
padding: 0 60px;
box-sizing: border-box;
}

.tpl-contact-layout-column.tpl-text-column {
padding-top: 60px;
}

.tpl-contact-layout-column.tpl-text-column h2.page-title {
/* font-size: 48px;
line-height: 1.1; */
padding-bottom: 60px;
}

.tpl-contact-details-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
margin: -15px -30px;
}

.tpl-contact-details-column {
width: 50%;
padding: 15px 30px;
box-sizing: border-box;
}

.tpl-contact-details-column h3 {
font-size: 24px;
padding-bottom: 15px;
}

.tpl-contact-details-column .tpl-text a {
color: inherit;
}

.tpl-contact-details-column .tpl-text a:hover {
color: #e41919;
}

.tpl-contact-layout-column .tpl-form-wrapper {
padding: 60px;
background: #f0f0f0;
}

.tpl-contact-layout-column .tpl-form-wrapper .tpl-title {
padding-bottom: 30px;
font-size: 24px;
font-weight: 800;
}

.tpl-contact-layout-column .tpl-form-row {
margin: 0 -5px;
}

.tpl-contact-layout-column .tpl-form-column {
float: left;
width: 50%;
padding: 5px;
box-sizing: border-box;
}

.tpl-contact-layout-column .tpl-form-column.tpl-message,
.tpl-contact-layout-column .tpl-form-column.tpl-submit,
.tpl-contact-layout-column .tpl-form-column.tpl-gdpr {
width: 100%;
}

.tpl-contact-layout-column .tpl-form-column.tpl-gdpr {
text-align-last: left;
}

.tpl-form-column.tpl-submit {
position: relative;
}

.tpl-contact-layout-column .tpl-form-column input,
.tpl-contact-layout-column .tpl-form-column textarea {
width: 100%;
box-sizing: border-box;
background: transparent;
}

.tpl-contact-layout-column .tpl-form-column button {
width: 100%;
box-sizing: border-box;
}

.tpl-form-column button .wpcf7-spinner {
position: absolute;
right: 30px;
top: 50%;
margin: 0;
margin-top: -10px;
}

.tpl-contact-layout-column .tpl-form-column textarea {
height: 120px;
}

#ContactMap {
height: 560px;
background: #f9f9f9;
}

#ContactMap p,
#ContactMap iframe {
display: block;
width: 100%;
height: 100%;
}

.tpl-footer-bottom {
max-width: 1320px;
margin: 0 auto;
padding: 21px 30px;
line-height: 18px;
font-size: 12px;
position: relative;
}

.tpl-footer-bottom:before {
border-top: 1px solid rgba(255,255,255,0.2);
position: absolute;
top: 0;
left: 60px;
right: 60px;
content: '';
}

.tpl-copyright {
float: left;
}

.tpl-footer-spacer {
display: inline-block;
padding: 0 10px;
}

.tpl-copyright a {
color: inherit;
}

.tpl-copyright a:hover {
color: #ffc509;
}

.tpl-footer-author {
float: right;
}

.tpl-footer-author a {
display: inline-block;
line-height: 18px;
margin-left: 6px;
padding-left: 25px;
color: inherit;
font-weight: 700;
text-decoration: none;
background: url(img/bwd.png) no-repeat scroll 0 0px;
background-size: 18px auto;
}

.tpl-footer-author a:hover {
opacity: 0.7;
}

/* wpcf7 */
body .wpcf7-form .form-row {
margin-bottom: 20px;
}

body .wpcf7-form .form-row label {
display: block;
padding-bottom: 5px;
}

body .wpcf7-form-control.wpcf7-acceptance {
display: block;
}

body .wpcf7-list-item {
display: block;
margin: 0 0 10px 0;
}

body .wpcf7-list-item:last-child {
margin: 0;
}

body .wpcf7-list-item label {
display: inline-block;
cursor: pointer;
line-height: 1.2;
position: relative;
}

body .wpcf7-list-item label input[type=checkbox],
body .wpcf7-list-item label input[type=radio] {
opacity: 0;
visibility: hidden;
position: absolute;
top: 0;
left: 0;
}

body .wpcf7-list-item label .wpcf7-list-item-label {
display: inline-block;
position: relative;
display: inline-flex;
align-items: center;
flex-flow: row nowrap;
}

body .wpcf7-list-item label .wpcf7-list-item-label:before {
margin-right: 15px;
width: 30px;
height: 30px;
border-radius: 8px;
border: 1px solid #f0f0f0;
background: #f0f0f0;
background-position: center;
background-repeat: no-repeat;
background-size: 100% auto;
content: '';
text-align: center;
}

body .wpcf7-list-item label input[type=checkbox]:checked + .wpcf7-list-item-label:before,
body .wpcf7-list-item label input[type=radio]:checked + .wpcf7-list-item-label:before {
background-image: url(img/check.png);
}

body .wpcf7-list-item label .wpcf7-list-item-label a {
color: inherit;
}

body .wpcf7-list-item label .wpcf7-list-item-label a:hover {
opacity: 0.7;
}

body .wpcf7-list-item label .wpcf7-list-item-label .tpl-more-text {
display: none;
opacity: 0.7;
}

body .wpcf7-list-item label .wpcf7-list-item-label .tpl-more-text.tpl-visible {
display: inline-block;
padding-top: 15px;
}

@-moz-keyframes rotating {
	from{
		-moz-transform: rotate(0deg);
	}
	to{
		-moz-transform: rotate(360deg);
	}
}

@-webkit-keyframes rotating {
	from {
		-webkit-transform: rotate(0deg);
	}
	to{
		-webkit-transform: rotate(360deg);
	}
}

@keyframes rotating {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

body span.wpcf7-not-valid-tip {
font-size: 11px;
padding-top: 5px;
text-align: left;
}

body .wpcf7 form .wpcf7-response-output {
margin-left: 0;
margin-right: 0;
padding: 10px 30px;
font-size: 14px;
margin-top: 30px;
margin-bottom: 0;
}

body .wpcf7-form-control-wrap {
display: block;
}

/* alignments */
.alignleft {
float: left;
margin: 0.375em 50px 50px 0;
}

.alignright {
float: right;
margin: 0.375em 0 50px 50px;
}

.aligncenter {
clear: both;
display: block;
margin: 0 auto 50px;
}

.alignnone {
max-width: 100%;
width: auto;
height: auto;
}

blockquote.alignleft {
margin: 0.3157894737em 1.4736842105em 1.473684211em 0;
}

blockquote.alignright {
margin: 0.3157894737em 0 1.473684211em 1.4736842105em;
}

blockquote.aligncenter {
margin-bottom: 1.473684211em;
}

/* responsive menu */
.responsive-menu-wrapper {
position: fixed;
z-index: 90;
top: 0;
left: 0;
bottom: 0;
width: 100%;
overflow: auto;
background: #FFFFFF;
transition: .2s ease-out;
-moz-transition: .2s ease-out;
-webkit-transition: .2s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.admin-bar .responsive-menu-wrapper {
top: 32px;
}

.responsive-menu-wrapper {
opacity: 0;
visibility: hidden;
margin-left: -100%;
}

.responsive-menu-wrapper.flexnav-show {
opacity: 1;
visibility: visible;
margin-left: 0;
}

.responsive-menu-container {
border-top: 1px solid #f0f0f0;
margin-top: 120px;
}

.responsive-menu-container > ul {
margin: 0;
padding: 0;
}

.responsive-menu-container > ul li {
list-style: none;
background: none;
margin: 0;
}

.responsive-menu-container > ul > li:first-child {
border-top: none;
}

.responsive-menu-container > ul li.item-with-ul {
position: relative;
}

.responsive-menu-container > ul li a {
color: inherit;
padding: 14px 30px 14px 30px;
display: block;
font-size: 18px;
line-height: 1.2;
font-weight: 800;
text-decoration: none;
border-bottom: 1px solid #f0f0f0;
position: relative;
}

.responsive-menu-container > ul li.current-menu-ancestor:not(.tpl-one-page-nav-link) > a,
.responsive-menu-container > ul li.current-menu-item:not(.tpl-one-page-nav-link) > a,
.responsive-menu-container > ul li.current-menu-parent:not(.tpl-one-page-nav-link) > a,
.responsive-menu-container > ul li.tpl-one-page-nav-link.tpl-current-one-page-nav-link > a,
.responsive-menu-container > ul litpl-one-page-nav-link.tpl-current-one-page-nav-link > a,
.responsive-menu-container > ul li.tpl-one-page-nav-link.tpl-current-one-page-nav-link > a {
color: #c01111;
}

.responsive-menu-container > ul li a > span {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row nowrap;
align-items: center;
}

.responsive-menu-container > ul li a > span .tpl-icon {
width: 60px;
flex-grow: 0; 
flex-shrink: 0;
text-align: center;
}

.responsive-menu-container > ul li a > span .tpl-icon img {
max-width: 100%;
max-width: 36px;
max-height: 36px;
}

.responsive-menu-container > ul li a > span .tpl-title {
flex: 1;
}

.responsive-menu-container > ul li.item-with-ul a {
padding-right: 45px;
}

.responsive-menu-container > ul li .touch-button {
position: absolute;
right: 0px;
top: 0px;
width: 50px;
height: 51px;
color: #FFFFFF;
display: block;
background: url(img/responsive_menu_dropdown.png) no-repeat scroll center 23px #f0f0f0;
cursor: pointer;
}

.responsive-menu-container > ul li .touch-button.active {
background-position: center -37px;
}

.responsive-menu-container > ul li .touch-button i {
position: absolute;
left: 50%;
top: 50%;
-moz-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
font-size: 10px;
display: none;
}

.responsive-menu-container > ul li ul {
display: none;
padding: 0;
margin: 0;
}

.responsive-menu-container > ul li ul.flexnav-show {
display: block;
}

.responsive-menu-container > ul li li a {
padding-left: 60px;
}

.responsive-menu-container > ul li li li a {
padding-left: 90px;
}

/* responsive menu button */
.responsive-menu-button {
position: absolute;
right: 30px;
top: 52px;
z-index: 91;
text-align: center;
cursor: pointer;
display: none;
}

.responsive-menu-button span {
display: block;
width: 25px;
height: 2px;
background: #000000;
margin-bottom: 5px;
transition: 0.3s ease-out;
-moz-transition: 0.3s ease-out;
-webkit-transition: 0.3s ease-out;
transition-property: opacity, transform, background;
-moz-transition-property: opacity, transform, background;
-webkit-transition-property: opacity, transform, background;
}

body:not(.tpl-header-collapsed) .responsive-menu-button:not(.active) span {
background: #FFFFFF;
}

.responsive-menu-button.active span {
background: #c01111;
}

.responsive-menu-button.active .tpl-line-1 {
transform: rotate(-45deg) translate(-5px,5px);
-moz-transform: rotate(-45deg) translate(-5px,5px);
-webkit-transform: rotate(-45deg) translate(-5px,5px);
}

.responsive-menu-button.active .tpl-line-2 {
opacity: 0;
}

.responsive-menu-button.active .tpl-line-3 {
transform: rotate(45deg) translate(-5px,-5px);
-moz-transform: rotate(45deg) translate(-5px,-5px);
-webkit-transform: rotate(45deg) translate(-5px,-5px);
}

.responsive-menu-button .tpl-line-3 {
margin-bottom: 0;
}

.responsive-menu-button .touch-button {
display: none;
}

/* pagination */
.tpl-pagination {
text-align: center;
}

.tpl-pagination .screen-reader-text {
display: none;
}

.tpl-pagination .navigation {
padding-top: 60px;
font-size: 16px;
}

.tpl-pagination .nav-links a,
.tpl-pagination .nav-links span {
display: inline-block;
height: 30px;
width: 30px;
line-height: 30px;
margin: 0 2px 4px 2px;
color: inherit;
text-decoration: none;
text-align: center;
cursor: pointer;
}

.tpl-pagination .nav-links .prev,
.tpl-pagination .nav-links .next {
width: auto;
}

.tpl-pagination .nav-links a:hover {
color: #c01111;
}

.tpl-pagination .nav-links span {
background: none;
}

.tpl-pagination .nav-links span.current {
background: #c01111;
color: #ffffff;
cursor: default;
}

.tpl-posts-row {
margin: 0 -15px -60px -15px;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
align-items: stretch;
flex-flow: row wrap;
}

.tpl-posts-row .tpl-post-entry {
padding: 0 15px 60px 15px;
width: 33.33%;
box-sizing: border-box;
}

.tpl-posts-row .tpl-post-entry a {
display: block;
color: inherit;
text-decoration: none;
}

.tpl-posts-row .tpl-post-entry a:hover {
color: #c01111;
}

.tpl-posts-row .tpl-post-entry a span {
display: block;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-image {
position: relative;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-image:after {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: '';
background: rgba(0,104,145,0.8);
opacity: 0;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background, border-color, opacity;
-moz-transition-property: color, background, border-color, opacity;
-webkit-transition-property: color, background, border-color, opacity;
}

.tpl-posts-row .tpl-post-entry a:hover .tpl-post-entry-image:after {
opacity: 1;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-image img {
display: block;
width: 100%;
height: auto;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-date {
position: absolute;
right: 0;
bottom: 0;
padding: 10px 30px 5px 30px;
background: #c01111;
color: #FFFFFF;
font-weight: bold;
line-height: 1;
z-index: 1;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-date .tpl-day {
font-size: 48px;
float: left;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-date .tpl-month-year {
padding-left: 15px;
float: left;
text-transform: uppercase;
padding-top: 3px;
line-height: 20px;
text-align: center;
}

.tpl-posts-row .tpl-post-entry .tpl-post-entry-title {
font-size: 22px;
padding-top: 30px;
padding-right: 60px;
}

.tpl-video {
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
}

.tpl-video iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.tpl-post-content .tpl-post-main-image {
margin-bottom: 60px;
position: relative;
}

.tpl-post-content .tpl-post-main-image img {
max-width: 100%;
height: auto;
}

.tpl-post-content .tpl-post-entry-date {
position: absolute;
right: 0;
bottom: 0;
padding: 10px 30px 5px 30px;
background: #c01111;
color: #FFFFFF;
font-weight: bold;
line-height: 1;
z-index: 1;
}

.tpl-post-content .tpl-post-entry-date .tpl-day {
font-size: 48px;
float: left;
}

.tpl-post-content .tpl-post-entry-date .tpl-month-year {
padding-left: 15px;
float: left;
text-transform: uppercase;
padding-top: 3px;
line-height: 20px;
text-align: center;
}

.tpl-post-content .tpl-post-entry-date .tpl-month-year span {
display: block;
}

.tpl-post-content .tpl-back-link {
padding-top: 60px;
}

.tpl-post-content .tpl-back-link a {
display: inline-block;
padding: 20px 30px;
background: #c01111;
color: #FFFFFF;
text-decoration: none;
font-weight: bold;
min-width: 300px;
box-sizing: border-box;
text-align: center;
}

.tpl-post-content .tpl-back-link a:hover {
background: #006891;
}

.tpl-text ul {
list-style: none;
padding: 0 0 0 10px;
}

.tpl-text ul li {
padding-left: 30px;
margin-bottom: 5px;
position: relative;
}

.tpl-text ul li:before {
position: absolute;
top: 6px;
left: 0;
width: 18px;
height: 14px;
content: '';
background: url(img/list.webp) no-repeat scroll center;
background-size: contain;
}

.tpl-text ul li:last-child {
margin-bottom: 0;
}

.tpl-text ol li {
margin-bottom: 5px;
}

.tpl-text ol li:last-child {
margin-bottom: 0;
}

/* content builder */
#PageBuilder {
margin-top: -90px;
margin-bottom: -90px;
}

#PageBuilder + .tpl-section-title {
margin-top: 120px;
}

.tpl-text-image-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
}

.tpl-text-image-row .tpl-text-image-column {
width: 50%;
box-sizing: border-box;
}

.tpl-text-image-row .tpl-text-column {
align-self: center;
padding-right: 120px;
}

.tpl-text-image-row.image_left .tpl-text-column {
order: 2;
padding-left: 120px;
padding-right: 0;
}

.tpl-text-image-row .tpl-text-column .tpl-link {
margin-top: 30px;
display: inline-block;
padding: 15px 30px;
line-height: 20px;
border-radius: 8px;
font-size: 16px;
line-height: 20px;
background: #c01111;
color: #FFFFFF;
font-weight: 800;
text-decoration: none;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.tpl-text-image-row .tpl-text-column .tpl-link:hover {
background: #e41919;
}

.tpl-text-image-row .tpl-image-column img {
max-width: 100%;
height: auto;
}

.tpl-text-image-row .tpl-text-slideshow {
position: relative;
}

.tpl-text-image-row .tpl-text-slideshow .tpl-slide {
display: none;
}

.tpl-text-image-row .tpl-text-slideshow .slick-slide,
.tpl-text-image-row .tpl-text-slideshow .tpl-slide:first-child {
display: block;
}

.tpl-text-image-row .tpl-text-slideshow .slick-slide img {
width: 100%;
height: 100%;
object-fit: cover;
}

.tpl-text-image-row .tpl-text-slideshow .slick-arrow {
position: absolute;
top: 50%;
right: 30px;
margin-top: -25px;
width: 50px;
height: 50px;
border-radius: 50%;
cursor: pointer;
background: #f0f0f0;
z-index: 1;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.tpl-text-image-row .tpl-text-slideshow .slick-arrow:before {
position: absolute;
top: 50%;
left: 50%;
width: 14px;
height: 24px;
margin-top: -12px;
margin-left: -8px;
box-sizing: border-box;
background: none;
border: none;
font-size: 0;
padding: 0;
background: url(img/slideshow_nav_arrow.png) 0 0 no-repeat;
background-size: contain;
content: '';
transform: scale(0.75);
}

.tpl-text-image-row .tpl-text-slideshow .slick-next {
transform: rotate(180deg);
}

.tpl-text-image-row .tpl-text-slideshow .slick-prev {
left: 30px;
right: auto;
}	

.tpl-text-image-row .tpl-text-slideshow .slick-arrow:hover {
background: #FFFFFF;
}

.tpl-page-builder-section {
padding-top: 60px;
padding-bottom: 60px;
}

.tpl-page-builder-section.tpl-padding-top-120 {
padding-top: 120px;
}

.tpl-page-builder-section.tpl-padding-top-90 {
padding-top: 90px;
}

.tpl-page-builder-section.tpl-no-padding-top {
padding-top: 0px;
}

.tpl-page-builder-section.tpl-padding-bottom-120 {
padding-bottom: 120px;
}

.tpl-page-builder-section.tpl-padding-bottom-90 {
padding-bottom: 90px;
}

.tpl-page-builder-section.tpl-no-padding-bottom {
padding-bottom: 0px;
}

.tpl-page-builder-section h1:last-child,
.tpl-page-builder-section h2:last-child,
.tpl-page-builder-section h3:last-child,
.tpl-page-builder-section h4:last-child,
.tpl-page-builder-section h5:last-child,
.tpl-page-builder-section h6:last-child {
padding-bottom: 0;
}

.tpl-gallery-section ul {
margin: -10px;
padding: 0;
list-style: none;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
}

.tpl-gallery-section ul li {
width: 20%;
padding: 10px;
box-sizing: border-box;
}

.tpl-gallery-section ul li a {
display: block;
position: relative;
overflow: hidden;
border: 1px solid #f0f0f0;
border-radius: 8px;
}

.tpl-gallery-section ul li a img {
width: 100%;
height: auto;
}

.tpl-gallery-section ul li a:after {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
opacity: 0;
background: url(img/gallery_zoom.svg) center calc(50% - 10px) no-repeat rgba(209,8,26,0.8);
background-size: 30px auto;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: opacity, background;
-moz-transition-property: opacity, background;
-webkit-transition-property: opacity, background;
}

.tpl-gallery-section ul li a:hover:after {
background-position: center;
opacity: 1;
}

.tpl-image-section .tpl-image img {
max-width: 100%;
height: auto;
}

.tpl-page-builder-boxes-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
margin: 0 -15px -30px -15px;
}

.tpl-page-builder-boxes-column {
width: 33.33%;
box-sizing: border-box;
padding: 0 15px 30px 15px;
}

.tpl-page-builder-boxes-column.tpl-column-width-20 {
width: 20%;
}

.tpl-page-builder-boxes-column.tpl-column-width-25 {
width: 25%;
}

.tpl-page-builder-boxes-column.tpl-column-width-33 {
width: 33.33%;
}

.tpl-page-builder-boxes-column.tpl-column-width-50 {
width: 50%;
}

.tpl-page-builder-boxes-column.tpl-column-width-100 {
width: 100%;
}

.tpl-page-builder-boxes-column .tpl-page-builder-box {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: column nowrap;
position: relative;
height: 100%;
box-sizing: border-box;
overflow: hidden;
padding: 60px;
background: #f0f0f0;
text-align: center;
color: inherit;
text-decoration: none;
}

.tpl-page-builder-boxes-column .tpl-page-builder-box > * {
width: 100%;
}

.tpl-page-builder-boxes-column .tpl-image {
overflow: hidden;
position: relative;
margin: 0 auto 30px auto;
}

.tpl-page-builder-boxes-column .tpl-image img {
display: block;
width: 100%;
height: auto;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: transform;
-moz-transition-property: -moz-transform;
-webkit-transition-property: -webkit-transform;
-webkit-transform: perspective(1px) translateZ(0);
transform: perspective(1px) translateZ(0);
}

.tpl-page-builder-boxes-column .tpl-icon {
margin-bottom: 30px;
}

.tpl-page-builder-boxes-column .tpl-icon span {
display: inline-block;
vertical-align: top;
width: 60px;
height: 60px;
line-height: 60px;
font-size: 0;
}

.tpl-page-builder-boxes-column .tpl-icon img {
max-width: 60px;
max-height: 60px;
}

.tpl-page-builder-boxes-column .tpl-page-builder-box .tpl-readmore {
margin-top: auto;
padding-top: 30px;
}

.tpl-page-builder-boxes-column .tpl-page-builder-box .tpl-readmore span {
display: inline-block;
padding: 15px 30px;
line-height: 20px;
border-radius: 8px;
font-size: 16px;
line-height: 20px;
background: #c01111;
color: #FFFFFF;
font-weight: 800;
text-decoration: none;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: all;
-moz-transition-property: all;
-webkit-transition-property: all;
}

.tpl-page-builder-boxes-column a.tpl-page-builder-box:hover .tpl-readmore span {
background: #e41919;
}

.tpl-page-builder-boxes-column .tpl-title {
font-size: 24px;
font-weight: 800;
line-height: 1.3;
display: block;
position: relative;
}

.tpl-page-builder-boxes-column .tpl-title + .tpl-text {
padding-top: 15px;
}

.tpl-faq-section,
.tpl-text-section {
max-width: 860px;
margin-left: auto;
margin-right: auto;
}

.tpl-faq-section .tpl-page-builder-faq-entry {
margin-top: 15px;
}

.tpl-faq-section .tpl-page-builder-faq-entry:first-child {
margin-top: 0;
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title {
padding: 14px 30px;
font-size: 18px;
font-weight: 800;
cursor: pointer;
line-height: 1.2;
background: #f0f0f0;
transition: .15s ease-out;
-moz-transition: .15s ease-out;
-webkit-transition: .15s ease-out;
transition-property: color, background-color, border-color, opacity;
-moz-transition-property: color, background-color, border-color, opacity;
-webkit-transition-property: color, background-color, border-color, opacity;
border-radius: 8px;
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title:hover {
background: #e5e5e5;
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title span {
position: relative;
display: block;
padding-right: 45px;
word-wrap: break-word;
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title span:after {
position: absolute;
right: 0;
top: 50%;
margin-top: -9px;
width: 18px;
height: 18px;
line-height: 14px;
content: '+';
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title.ui-accordion-header-active {
background: #c01111;
color: #FFFFFF;
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-title.ui-accordion-header-active span:after {
content: '-';
}

.tpl-faq-section .tpl-page-builder-faq-entry .tpl-text > div {
padding: 30px;
border-top: none;
}

.tpl-text-text-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
margin: 0 -60px -60px -60px;
}

.tpl-text-text-row .tpl-text-text-column {
width: 50%;
box-sizing: border-box;
padding: 0 60px 60px 60px;
}

.tpl-page-builder-section.tpl-case-studies-section {
position: relative;
}

.tpl-page-builder-section.tpl-case-studies-section:before {
position: absolute;
left: 50%;
top: 0;
-moz-transform: translateX(-50%);
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
width: 100vw;
height: 100%;
content: '';
background: #f0f0f0;
z-index: -1;
}

.tpl-page-builder-section-title {
text-align: center;
padding-bottom: 90px;
}

/* .tpl-page-builder-section .tpl-text h2 {
font-weight: bold;
font-size: 48px;
line-height: 1.1;
padding-bottom: 60px;
} */

.tpl-page-builder-section .tpl-text h3 {
text-align: left;
}
/* end content builder */

@media screen and (max-width: 1680px) {
	#HeaderMiddle .tpl-header-logo {
	width: 300px;
	}
	
	#HeaderMiddle .tpl-header-right .tpl-header-phone {
	display: none;
	}
}

@media screen and (max-width: 1480px) {
	#HomepageServices .tpl-section-title,
	#Clients .tpl-section-wrapper h2.tpl-title,
	.tpl-about-us-section .tpl-section-title,
	#ContactForm .tpl-section-title,
	.tpl-contact-layout-column.tpl-text-column h2.page-title,
	.tpl-footer-top .tpl-section-title,
	h1,
	h1.page-title,
	.tpl-about-us-row .tpl-text-column .tpl-title,
	.tpl-page-builder-section .tpl-text h2 {
	font-size: 36px;
	line-height: 1.2;
	}

	#HeaderMiddle .tpl-top-menu-wrapper {
	margin-left: 30px;
	}
	
	#HeaderMiddle .tpl-top-menu-wrapper ul li {
	margin-left: 30px;
	}

	#SlideshowWrapper .tpl-slideshow-container .tpl-slide-title {
	font-size: 48px;
	}
}

@media screen and (max-width: 1280px) {
	#HeaderMiddle .tpl-header-logo {
	width: 250px;
	line-height: 90px;
	}
	
	#HeaderMiddle .tpl-top-menu-wrapper ul li {
	margin-left: 20px;
	}
	
	#HeaderMiddle .tpl-top-menu-wrapper ul li a {
	font-size: 16px;
	}

	.tpl-about-us-row .tpl-text-column {
	padding-right: 60px;
	}
	
	#AboutUsMore .tpl-about-us-row .tpl-text-column {
	padding-left: 60px;
	}
	
	/* content builder */
	.tpl-page-builder-boxes-column,
	.tpl-page-builder-boxes-column.tpl-column-width-20,
	.tpl-page-builder-boxes-column.tpl-column-width-25 {
	width: 33.33%;
	}
	
	.tpl-text-image-row .tpl-text-column {
	padding-right: 60px;
	}

	.tpl-text-image-row.image_left .tpl-text-column {
	padding-left: 60px;
	}
	
	.tpl-text-text-row {
	margin-left: -30px;
	margin-right: -30px;
	}

	.tpl-text-text-row .tpl-text-text-column {
	padding-left: 30px;
	padding-right: 30px;
	}
	/* end content builder */
}

@media screen and (max-width: 1080px) {
	#HeaderMiddle .tpl-top-menu-wrapper {
	display: none;
	}
	
	#HeaderMiddle .tpl-header-logo {
	height: 80px;
	margin: 20px 0;
	}
	
	#HeaderMiddle .tpl-header-right {
	display: none;
	}
	
	#Slideshow .tpl-slide .tpl-table {
	width: 100%;
	min-height: 600px;
	}
	
	#Slideshow .tpl-slide .tpl-cell {
	padding-top: 90px;
	}
	
	#MiddleBar {
	padding-top: 120px;
	}
	
	.tpl-middle-bar {
	padding-top: 60px;
	padding-bottom: 60px;
	}
	
	.responsive-menu-button {
	display: block;
	}
	
	.responsive-menu-wrapper {
	position: fixed;
	z-index: 90;
	}

	.admin-bar .responsive-menu-wrapper {
	top: 32px;
	}
	
	#SlideshowWrapper .tpl-slideshow-container .tpl-slide-box {
	max-width: 50%;
	}
	
	#SlideshowWrapper .tpl-slideshow-container .tpl-slide-sup {
	margin-bottom: 30px;
	}
	
	#SlideshowWrapper .tpl-slideshow-container .tpl-slide-title {
	font-size: 36px;
	}
	
	#SlideshowWrapper .tpl-slideshow-container .tpl-slide-link {
	margin-top: 30px;
	}
	
	.tpl-posts-row .tpl-post-entry {
	width: 50%;
	}
	
	.tpl-footer-top-column {
	width: 33.33%;
	} 
	
	.tpl-about-us-row .tpl-about-us-column {
	width: 100%;
	}

	.tpl-about-us-row .tpl-text-column,
	#AboutUsMore .tpl-about-us-row .tpl-text-column {
	padding-left: 0;
	padding-right: 0;
	padding-bottom: 60px;
	order: 0;
	}

	.tpl-clients-row {
	margin: 0 -7px -15px -7px;
	}

	.tpl-clients-row .tpl-clients-column {
	width: 25%;
	padding: 0 7px 15px 7px;
	}
	
	.tpl-contact-layout-column {
	width: 100%;
	}
	
	.tpl-contact-layout-column.tpl-text-column {
	padding-top: 0;
	padding-bottom: 90px;
	}
	
	.tpl-contact-layout-column.tpl-form-column {
	margin-bottom: -90px;
	}
	
	.tpl-contact-layout-column .tpl-form-wrapper {
	padding: 90px 30px;
	margin: 0 -30px;
	border-radius: 0;
	}

	/* content builder */
	.tpl-text-image-row .tpl-text-image-column {
	width: 100%;
	padding-right: 0;
	}
	
	.tpl-text-image-row.image_left .tpl-text-column {
	order: 0;
	padding-left: 0;
	}
	
	.tpl-text-image-row .tpl-text-column {
	padding-bottom: 60px;
	}
	
	.tpl-text-text-row .tpl-text-text-column {
	width: 100%;
	}
	
	.tpl-gallery-section ul li {
	width: 33.33%;
	}
	
	.tpl-page-builder-boxes-column,
	.tpl-page-builder-boxes-column.tpl-column-width-20,
	.tpl-page-builder-boxes-column.tpl-column-width-25,
	.tpl-page-builder-boxes-column.tpl-column-width-33, 
	.tpl-page-builder-boxes-column.tpl-column-width-50,
	.tpl-page-builder-boxes-column.tpl-column-width-100 {
	width: 50%;
	}
	
	.tpl-page-builder-boxes-column .tpl-page-builder-box {
	padding: 30px;
	}
	/* end content builder */
}

@media screen and (max-width: 880px) {
	.tpl-about-me-row .tpl-text-column {
	width: 100%;
	flex: 0 1 auto;
	padding-right: 0;
	}
	
	.tpl-about-me-row .tpl-more-column {
	width: 100%;
	padding-top: 30px;
	text-align: left;
	}
	
	#AboutMe .tpl-background {
	position: static;
	background-position: calc(50% - 245px) center;
    height: 450px;
	}
	
	.tpl-footer-top-column {
	width: 100%;
	}
	
	.tpl-footer-bottom {
	text-align: center;
	line-height: 1.5;
	}
	
	.tpl-copyright,
	.tpl-footer-author {
	float: none;
	}
	
	.tpl-footer-author {
	padding-top: 5px;
	}
	
	#SlideshowWrapper .tpl-slideshow-container.slick-slider .tpl-slide-description {
	padding-left: 75px;
	padding-right: 75px;
	}
	
	.tpl-bottom-line-text > div,
	.tpl-bottom-line-text > div:not(:last-child) {
	display: block;
	margin-right: 0;
	padding-right: 0;
	border: none;
	}
	
	.tpl-bottom-line-text > div:not(:last-child) {
	padding-bottom: 5px;
	}
}

@media screen and (max-width: 680px) {
	#Slideshow .tpl-slide .tpl-title {
	font-size: 24px;
	}
	
	.tpl-middle-bar h1 {
	font-size: 36px;
	}
	
	#Slideshow .tpl-slide .tpl-text {
	font-size: inherit;
	}
	
	#AboutMe .tpl-section-title {
	font-size: 24px;
	}
	
	.tpl-form-row .tpl-form-column.tpl-width-50,
	.tpl-form-row .tpl-form-column.tpl-width-33 {
	width: 100%;
	}
	
	.tpl-posts-row .tpl-post-entry {
	width: 100%;
	}
	
	.tpl-page-builder-section .tpl-text h2 {
	font-size: 24px;
	line-height: 1.3;
	}

	.tpl-page-builder-section .tpl-text h3 {
	font-size: 20px;
	line-height: 1.3;
	}
	
	.tpl-page-builder-section .tpl-text h4 {
	font-size: 18px;
	line-height: 1.3;
	}
}

@media screen and (max-width: 580px) {
	.tpl-clients-row .tpl-clients-column {
	width: 50%;
	}

	/* content builder */
	.tpl-gallery-section ul li {
	width: 50%;
	}
	
	.tpl-page-builder-boxes-column,
	.tpl-page-builder-boxes-column.tpl-column-width-20,
	.tpl-page-builder-boxes-column.tpl-column-width-25,
	.tpl-page-builder-boxes-column.tpl-column-width-33, 
	.tpl-page-builder-boxes-column.tpl-column-width-50,
	.tpl-page-builder-boxes-column.tpl-column-width-100 {
	width: 100%;
	}
	
	.tpl-page-builder-boxes-column .tpl-page-builder-box {
	padding: 30px;
	}
	/* end content builder */
}

@media screen and (max-width: 480px) {
	#HeaderMiddle .tpl-header-logo {
	width: 180px;
	}
	
	#SlideshowWrapper .tpl-slideshow-container .tpl-slide-sizer {
	padding-bottom: 250px;
	background-size: auto 250px;
	background-position: right bottom;
	}

	.tpl-contact-details-column {
	width: 100%;
	}
}