/*
Theme Name: Polski Serwis Tachografów Sp. z o.o.
Author: Bestwebdesign
Version: 1.0
Author URI: https://bwd.pl/
*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,400;0,600;1,400;1,600&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;
}

body {
line-height: 1.3;
margin: 0;
padding: 0;
font-family: 'Poppins', sans-serif;
font-size: 18px;
color: #222222;
-webkit-text-size-adjust: 100%;
image-rendering: -webkit-optimize-contrast;
min-width: 320px;
}

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

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

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

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

h4 {
font-size: 22px;
}

h5 {
font-size: 20px;
}

h6 {
font-size: 18px;
}

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

a {
color: #7ed957;
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: #afe997;
}

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

p {
padding-bottom: 20px;
}

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

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

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

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

input, button, select, textarea {
font-family: 'Poppins', sans-serif;
font-size: 18px;
color: #222222;
}

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: 15px 30px;
border: none;
background: #f0f0f0;
color: #222222;
-moz-border-radius: 0px;
-webkit-border-radius: 0px;
border-radius: 0px;
}

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

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

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

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

input[type=submit],
input[type=button],
input[type=reset],
button[type=submit],
button[type=reset] {
cursor: pointer;
background: #7ed957;
-moz-border-radius: 0px;
-webkit-border-radius: 0px;
border-radius: 0px;
line-height: 20px;
padding: 15px 60px;
border: none;
color: #FFFFFF;
font-weight: 600;
font-size: 18px;
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-color, border-color, opacity;
-moz-transition-property: color, background-color, border-color, opacity;
-webkit-transition-property: color, background-color, border-color, opacity;
}

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

textarea {
line-height: 20px;
padding: 15px 30px;
border: none;
background: #f0f0f0;
color: #222222;
-moz-border-radius: 0px;
-webkit-border-radius: 0px;
border-radius: 0px;
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;
padding-top: 150px;
}

/* 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;
background: #ffffff;
border-bottom: 1px solid #e7e7e7;
}

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

#HeaderTop {
position: relative;
}

#HeaderTop:before {
position: absolute;
bottom: -1px;
left: 0;
width: 100%;
border-top: 2px dashed rgba(0,0,0,0.3);
content: '';
}

.tpl-header-top {
max-width: 1680px;
padding: 0 30px;
margin: 0 auto;
height: 30px;
line-height: 30px;
font-size: 14px;
}

.tpl-header-top .tpl-header-contact {
float: right;
font-weight: 600;
}

.tpl-header-top .tpl-header-contact a {
float: left;
margin-left: 25px;
color: inherit;
text-decoration: none;
}

.tpl-header-top .tpl-header-contact a:hover {
color: #7ed957;
}

.tpl-header-top .tpl-header-contact a span {
color: #7ed957;
}

.tpl-header-middle {
max-width: 1680px;
padding: 0 30px;
margin: 0 auto;
}

#HeaderMiddle .tpl-header-logo {
float: left;
display: block;
width: 198px;
height: 120px;
line-height: 120px;
font-size: 0;
}

#HeaderMiddle .tpl-header-logo img {
max-width: 100%;
max-height: 120px;
height: auto;
}

.tpl-header-middle-right {
float: right;
margin-top: 30px;
}

.tpl-header-middle-logos {
float: left;
margin-left: 45px;
line-height: 60px;
font-size: 0;
width: 198px;
}

.tpl-header-middle-logos img {
max-width: 100%;
max-height: 60px;
}

#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;
}

#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: 60px;
height: 56px;
font-size: 18px;
font-weight: 600;
text-decoration: none;
border-bottom: 4px solid transparent;
}

#HeaderMiddle .tpl-top-menu-wrapper ul li a:hover {
color: #7ed957;
}

#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: #7ed957;
}

#MiddleBar {
background: #e7e7e7;
}

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

.tpl-middle-bar h1 {
font-size: 60px;
font-weight: 400;
color: inherit;
padding: 0;
}

#HomepageHeader {
background: url(img/homepage_header_bg.jpg) center no-repeat #e7e7e7;
background-size: cover;
}

#HomepageHeader .tpl-section-content {
padding-top: 60px;
padding-bottom: 90px;
}

#HomepageHeader .tpl-section-content h1 {
padding: 0;
font-size: 60px;
color: inherit;
font-weight: 400;
}

#Services .tpl-section-content {
margin-top: -30px;
position: relative;
padding-top: 0;
padding-bottom: 60px;
}

.tpl-services-row {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
justify-content: center;
margin: 0 -10px -20px -10px;
}

.tpl-services-row .tpl-services-column {
width: 25%;
padding: 0 10px 20px 10px;
box-sizing: border-box;
}

.tpl-services-row .tpl-services-column a {
display: block;
background: #7ed957;
text-align: center;
color: inherit;
text-decoration: none;
padding: 45px 40px 60px 40px;
}

.tpl-services-row .tpl-services-column a:hover {
background: #afe997;
}

.tpl-services-row .tpl-services-column a span {
display: block;
}

.tpl-services-row .tpl-services-column a .tpl-icon {
height: 30px;
line-height: 30px;
font-size: 0;
position: relative;
}

.tpl-services-row .tpl-services-column a .tpl-icon:before,
.tpl-services-row .tpl-services-column a .tpl-icon:after {
position: absolute;
top: 50%;
margin-top: -1px;
left: 0;
right: calc(50% + 40px);
border-top: 2px dashed #222222;
content: '';
}

.tpl-services-row .tpl-services-column a .tpl-icon:after {
left: calc(50% + 40px);
right: 0;
}

.tpl-services-row .tpl-services-column a .tpl-icon img {
max-width: 100%;
max-height: 30px;
}

.tpl-services-row .tpl-services-column a .tpl-content {
flex: 1;
padding: 30px 30px 30px 0;
}

.tpl-services-row .tpl-services-column a .tpl-title {
font-size: 22px;
font-weight: bold;
line-height: 1.3;
padding-top: 30px;
}

#Logos .tpl-section-content {
padding-top: 60px;
padding-bottom: 60px;
}

.tpl-logos-row {
margin: 0 -10px -20px -10px;
}

.tpl-logos-row:not(.slick-slider) {
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row wrap;
justify-content: center;
}

.tpl-logos-row .tpl-logos-column {
width: 20%;
padding: 0 10px 20px 10px;
box-sizing: border-box;
}

.tpl-logos-row .tpl-logos-column .tpl-logo-entry {
display: block;
text-align: center;
border: 1px solid #e5e5e5;
font-size: 0;
}

.tpl-logos-row .tpl-logos-column a.tpl-logo-entry:hover {
border-color: #7ed957;
}

.tpl-logos-row .tpl-logos-column .tpl-logo-entry img {
max-width: 100%;
height: auto;
}

/* .tpl-text-image {
background: url(img/text_image_bg.png) no-repeat scroll center;
background-size: 100% 100%;
}

.tpl-text-image.tpl-text-image-left {
background-image: url(img/text_image_left_bg.png);
} */

.tpl-section-wrapper {
position: relative;
}

.tpl-section-border {
position: absolute;
top: -1px;
left: 0;
right: calc(50% + 40px);
border-top: 2px dashed rgba(0,0,0,0.3);
}

.tpl-section-border.tpl-section-border-left {
left: calc(50% + 40px);
right: 0;
}

.tpl-section-icon {
position: absolute;
top: -15px;
left: 50%;
margin-left: -40px;
width: 80px;
height: 30px;
background: url(img/suma.png) no-repeat scroll center;
background-size: auto 30px;
}

.tpl-section-wrapper .tpl-section-content {
max-width: 1320px;
margin: 0 auto;
padding: 120px 30px;
}

.tpl-section-wrapper:not(.tpl-text-image) .tpl-section-title {
text-align: center;
padding-bottom: 60px;
}

#Pricelist .tpl-section-wrapper .tpl-section-title {
color: #FFFFFF;
}

#Pricelist {
background: #7ed957;
}

#Pricelist .tpl-text table,
#Pricelist .tpl-text tbody,
#Pricelist .tpl-text tr,
#Pricelist .tpl-text td {
display: block;
}

#Pricelist .tpl-text tr {
margin-bottom: 10px;
position: relative;
overflow: hidden;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-flow: row nowrap;
}

#Pricelist .tpl-text tr:before {
position: absolute;
left: 0;
right: 0;
bottom: '';
content: '............................................................................................................................................................................................................................................................................';
}

#Pricelist .tpl-text tr:last-child {
margin-bottom: 0;
}

#Pricelist .tpl-text tr:after {
clear: both;
content: ".";
display: block;
font-size: 0;
height: 0;
line-height: 0;
visibility: hidden;
}

#Pricelist .tpl-text td {
background: #7ed957;
position: relative;
padding-right: 10px;
}

#Pricelist .tpl-text td:last-child {
padding-left: 10px;
padding-right: 0;
margin-left: auto;
text-align: right;
white-space: nowrap;
}

#ContactForm {
background: #f0f0f0;
}

#Pricelist .tpl-section-content {
max-width: 360px;
}

#ContactForm .tpl-section-content {
	max-width: 840px;
}

#ContactForm .tpl-form-row .tpl-form-column input[type=text],
#ContactForm .tpl-form-row .tpl-form-column input[type=phone],
#ContactForm .tpl-form-row .tpl-form-column input[type=email],
#ContactForm .tpl-form-row .tpl-form-column input[type=url],
#ContactForm .tpl-form-row .tpl-form-column input[type=number],
#ContactForm .tpl-form-row .tpl-form-column input[type=tel],
#ContactForm .tpl-form-row .tpl-form-column textarea,
#ContactForm .tpl-form-row .tpl-form-column select {
background-color: #FFFFFF;
}

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

.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-row {
margin: 0 -10px -10px -10px;
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 10px 10px 10px;
box-sizing: border-box;
}

.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-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: #7ed957;
}

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

.tpl-footer-top .tpl-section-title {
text-align: center;
font-size: 36px;
line-height: 1.2;
margin-bottom: 90px;
font-weight: 600;
color: #FFFFFF;
}

.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;
-moz-border-radius: 50%;
-webkit-border-radius: 50%;
border-radius: 50%;
border: 2px dashed #FFFFFF;
overflow: hidden;
}

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

.tpl-footer-top-column .tpl-title {
font-size: 22px;
font-weight: 600;
padding-bottom: 15px;
color: #FFFFFF;
}

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

.tpl-footer-top-column .tpl-text a:hover {
opacity: 0.7;
}

#FooterMap {
height: 330px;
}

#FooterMap iframe {
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;
text-decoration: none;
}

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

.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: 600;
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 */
.wpcf7-form .form-row {
margin-bottom: 20px;
}

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

@-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: 120px;
bottom: 0;
left: 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;
border-top: 1px solid #e7e7e7;
}

.admin-bar .responsive-menu-wrapper {
top: calc(120px + 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 > 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: 15px 30px 15px 30px;
display: block;
font-size: 18px;
line-height: 16px;
font-weight: 600;
text-decoration: none;
border-bottom: 1px solid #e7e7e7;
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 li.tpl-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: #7ed957;
}

.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: 1px;
width: 44px;
height: 46px;
color: #FFFFFF;
display: block;
background: url(img/responsive_menu_dropdown.png) no-repeat scroll center 22px rgba(255,255,255,0.1);
cursor: pointer;
}

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

.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 {
font-size: 12px;
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: 65px;
z-index: 91;
text-align: center;
cursor: pointer;
display: none;
}

.responsive-menu-button span {
display: block;
width: 25px;
height: 2px;
background: #222222;
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;
}

.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: #7ed957;
}

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

.tpl-pagination .nav-links span.current {
background: #7ed957;
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: #7ed957;
}

.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: #7ed957;
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: #7ed957;
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: #7ed957;
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: #222222;
}

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

#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-left .tpl-text-image-row .tpl-text-column {
order: 2;
padding-left: 120px;
padding-right: 0;
}

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

.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-no-padding-top {
padding-top: 0px;
}

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

.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: -7px;
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: 7px;
box-sizing: border-box;
}

.tpl-gallery-section ul li a {
display: block;
position: relative;
overflow: hidden;
}

.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(0,104,145,0.8);
background-size: 24px 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: -15px;
justify-content: center;
}

.tpl-page-builder-boxes-column {
width: 33.33%;
box-sizing: border-box;
padding: 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 {
position: relative;
background: #f5f5f5;
height: 100%;
box-sizing: border-box;
font-size: 16px;
}

.tpl-page-builder-boxes-column .tpl-page-builder-box .tpl-readmore {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1;
}

.tpl-page-builder-boxes-column .tpl-image {
overflow: hidden;
position: relative;
}

.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-has-link .tpl-page-builder-box:hover .tpl-image img {
-moz-transform: scale(1.05) perspective(1px) translateZ(0);
-webkit-transform: scale(1.05) perspective(1px) translateZ(0);
transform: scale(1.05)perspective(1px) translateZ(0);
}

.tpl-page-builder-boxes-column.tpl-has-link .tpl-image:before {
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-color, border-color, opacity;
-moz-transition-property: color, background-color, border-color, opacity;
-webkit-transition-property: color, background-color, border-color, opacity;
z-index: 1;
}

.tpl-page-builder-boxes-column.tpl-has-link .tpl-page-builder-box:hover .tpl-image:before {
opacity: 1;
}

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

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

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

.tpl-page-builder-boxes-column .tpl-page-builder-boxes-column-content {
padding: 60px;
}

.tpl-page-builder-boxes-column .tpl-title {
font-size: 22px;
line-height: 1.2;
font-weight: 600;
display: block;
position: relative;
color: #222222;
}

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

@media screen and (max-width: 1380px) {
	#HeaderMiddle .tpl-header-logo {
	width: 150px;
	}
	
	.tpl-header-middle-logos {
	display: none;
	}
	
	#AboutUs .tpl-section-title,
	#ContactForm .tpl-section-title,
	.tpl-footer-top .tpl-section-title,
	h1,
	h1.page-title {
	font-size: 36px;
	}
	
	.tpl-middle-bar h1 {
	font-size: 48px;
	}
	
	/* content builder */
	.tpl-page-builder-boxes-column .tpl-icon {
	padding: 30px 30px 0px 30px;
	margin-bottom: 0px;
	}
	
	.tpl-page-builder-boxes-column .tpl-icon span {
	width: 60px;
	height: 60px;
	line-height: 60px;
	}

	.tpl-page-builder-boxes-column .tpl-icon img {
	max-width: 60px;
	max-height: 60px;
	}
	
	.tpl-page-builder-boxes-column .tpl-page-builder-boxes-column-content {
	padding: 30px;
	}
	/* end content builder */
}

@media screen and (max-width: 1280px) {
	/* 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-left .tpl-text-image-row .tpl-text-column {
	padding-left: 60px;
	}
	/* end content builder */
}

@media screen and (max-width: 1080px) {
	#PageContent {
	padding-top: 120px;
	}
	
	#HeaderMiddle .tpl-header-logo {
	height: 90px;
	line-height: 90px;
	}

	#HeaderMiddle .tpl-header-logo img {
	max-height: 90px;
	}
	
	#HeaderMiddle .tpl-top-menu-wrapper {
	display: none;
	}
	
	.responsive-menu-button {
	display: block;
	}
	
	.tpl-services-row .tpl-services-column {
	width: 50%;
	}
	
	.tpl-posts-row .tpl-post-entry {
	width: 50%;
	}
	
	.tpl-footer-top-column {
	width: 33.33%;
	}
	
	.tpl-logos-row .tpl-logos-column {
	width: 33.33%;
	}
	
	/* content builder */
	.tpl-text-image-row .tpl-text-image-column {
	width: 100%;
	padding-right: 0;
	}
	
	.tpl-text-image-left .tpl-text-image-row .tpl-text-column {
	order: 0;
	padding-left: 0;
	}
	
	.tpl-text-image-row .tpl-text-column {
	padding-bottom: 60px;
	}
	
	.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%;
	}
	/* end content builder */
}

@media screen and (max-width: 880px) {
	#HomepageHeader .tpl-section-content h1 {
	font-size: 48px;
	}
	
	.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;
	}
}

@media screen and (max-width: 680px) {
	.tpl-middle-bar h1 {
	font-size: 36px;
	}
	
	.tpl-form-row .tpl-form-column.tpl-width-50 {
	width: 100%;
	}
	
	.tpl-posts-row .tpl-post-entry {
	width: 100%;
	}
	
	.tpl-logos-row .tpl-logos-column {
	width: 50%;
	}
	
	#Pricelist .tpl-text tr {
	display: block;
	margin-bottom: 30px;
	}
	
	#Pricelist .tpl-text tr:before {
	display: none;
	}
	
	#Pricelist .tpl-text td {
	padding-right: 0px;
	text-align: center;
	}

	#Pricelist .tpl-text td:last-child {
	padding-left: 0px;
	text-align: center;
	padding-top: 5px;
	font-weight: bold;
	}
	
	.tpl-footer-spacer {
	display: block;
	font-size: 0;
	line-height: 0;
	}
}

@media screen and (max-width: 580px) {
	/* 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%;
	}
	/* end content builder */
}

@media screen and (max-width: 480px) {
	#PageContent {
	padding-top: 90px;
	}
	
	#HeaderTop {
	display: none;
	}
	
	.responsive-menu-button {
	top: 35px;
	}
	
	#HomepageHeader {
	background-position: 60% center;
	}
	
	#HomepageHeader .tpl-section-content h1 {
	font-size: 36px;
	}
	
	.tpl-services-row .tpl-services-column {
	width: 100%;
	}
	
	.responsive-menu-wrapper {
	top: 90px;
	}
}