body, main {
 overflow-x:hidden
}

.h1, .h2, body, h1, h2 {
 font-weight:400
}

.h1 b, .h2 b, h1 b, h2 b {
 color:#0f1b44;
 display:block
}

hr, img {
 border:none
}

body, div#assistant {
 scroll-behavior:smooth
}

#mainNav span.background, #mainNav.flat span.background {
 background-image:linear-gradient(60deg, #489699, #76b799);
 position:absolute
}

div#assistant #messages div label input[type=radio]:checked+b, input[type=radio]:checked+label b {
 background-image:url(../images/layout/radio.svg)
}

body, input[type=submit] {
 font-family:Bariol, Helvetica, Arial, sans-serif
}

a.show_cookiemanager, div.scrolldown, div.scrolltop {
 bottom:40px;
 z-index:1000
}

html {
 box-sizing:border-box
}

*, :after, :before {
 box-sizing:inherit
}

body {
 margin:0;
 color:#000;
 font-size:18px;
 line-height:24px;
 letter-spacing:.05em;
 background-color:#fff
}

.h1, .h2, h1, h2 {
 color:#159a34
}

main {
 margin-top:68px
}

section {
 margin-bottom:60px
}

.content {
 max-width:1120px;
 margin:auto;
 -webkit-transition:.4s ease-in-out;
 -moz-transition:.4s ease-in-out;
 transition:.4s ease-in-out
}

.fadeDown, .fadeLeft, .fadeRight, .fadeUp {
 transition:.4s ease-in-out
}

.flex {
 display:flex;
 flex-wrap:wrap
}

.showDesktop {
 display:block
}

#sideNav #logoSquare, .showMobile, input[type=checkbox], input[type=radio] {
 display:none
}

.fadeUp {
 opacity:0;
 translate:0 30%
}

.fadeDown {
 opacity:0;
 translate:0 -30%
}

.fadeLeft {
 opacity:0;
 translate:30% 0
}

.fadeRight {
 opacity:0;
 translate:-30% 0
}

.fadeDown.active, .fadeLeft.active, .fadeRight.active, .fadeUp.active {
 opacity:1;
 translate:0;
 transition:.4s ease-in-out
}

@font-face {
 font-family:Bariol;
 src:url('../fonts/Bariol-Regular.woff2') format('woff2'), url('../fonts/Bariol-Regular.woff') format('woff'), local("?");
 font-weight:400;
 font-style:normal;
 font-display:swap
}

@font-face {
 font-family:Bariol;
 src:url('../fonts/Bariol-Bold.woff2') format('woff2'), url('../fonts/Bariol-Bold.woff') format('woff'), local("?");
 font-weight:700;
 font-style:normal;
 font-display:swap
}

@font-face {
 font-family:Grooving;
 src:url('../fonts/Grooving.woff2') format('woff2'), url('../fonts/Grooving.woff') format('woff'), local("?");
 font-weight:500;
 font-style:normal;
 font-display:swap
}

.h1, h1 {
 margin:0;
 font-size:45px;
 line-height:1.1
}

.h1 b, h1 b {
 font-size:70px
}

.h2, h2 {
 font-size:42px;
 line-height:62px
}

.h3, .h4, h3, h4 {
 font-weight:400;
 color:inherit;
 margin:0
}

.h2 b, h2 b {
 font-size:68px
}

.h3, h3 {
 font-size:30px;
 line-height:46px
}

.h4, h4 {
 font-size:28px;
 line-height:38px
}

ol, ul {
 padding:0 0 0 10px;
 margin:10px 0 10px 10px
}

.btn, div#assistant #header, p {
 font-size:18px
}

.markupIcon span, .pageName h1, b {
 font-weight:700
}

.heading {
 margin:25px 0;
 color:#fff;
 text-transform:uppercase
}

.breaker.petrol .heading .h2, .breaker.petrol .heading h2, .heading .h2, .heading h2 {
 width:fit-content;
 margin:2px 0;
 padding:0 12px;
 color:#fff;
 background:#23305f
}

.breaker.petrol .heading .h3, .breaker.petrol .heading h3, .heading .h3, .heading h3 {
 width:fit-content;
 margin:2px 0;
 padding:0 12px;
 color:#fff;
 background:#159a34
}

.pageName h1, ul.timeline li h4, ul.timeline li h5, ul.timeline li p {
 margin:5px 0
}

ul {
 list-style-type:square
}

a {
 color:#000;
 text-decoration:none
}

p {
 letter-spacing:0
}

hr {
 border-top:1px solid #d1dfdf
}

.btn {
 display:inline-block;
 width:auto;
 padding:10px 40px 10px calc(40px + .2em);
 cursor:pointer;
 font-weight:600;
 line-height:2;
 border-radius:3px;
 border:2px solid #0f1b44;
 text-align:center;
 background:0 0;
 color:#0f1b44;
 -webkit-transition:.3s;
 -moz-transition:.3s;
 transition:.3s
}

.tiles, form table {
 width:calc(100% + 40px)
}

a.show_cookiemanager, div.scrolltop a {
 -webkit-transition:.2s ease-in-out;
 -moz-transition:.2s ease-in-out;
 border-radius:3px
}

.btn:hover {
 background:#0f1b44;
 color:#fff
}

div.preloader {
 position:fixed;
 z-index:6000;
 left:0;
 top:0;
 width:100%;
 height:100%;
 background:#fff
}

a.show_cookiemanager, div.scrolldown a, div.scrolltop a, div.switch {
 width:60px;
 height:60px
}

div.preloader:before {
 display:block;
 position:absolute;
 left:50%;
 top:50%;
 width:200px;
 height:200px;
 background:url(../images/layout/preloader.svg) center/80% no-repeat;
 content:'';
 -webkit-transform:translate(-50%, -50%);
 -moz-transform:translate(-50%, -50%);
 transform:translate(-50%, -50%)
}

a.show_cookiemanager {
 left:40px;
 background:0 0;
 transition:.2s ease-in-out
}

a.show_cookiemanager:hover {
 background:#159931
}

a.show_cookiemanager svg path {
 fill:none;
 stroke:#dddddd;
 stroke-width:.8
}

div.scrolltop {
 display:none;
 position:fixed;
 right:110px
}

div.scrolltop a {
 display:block;
 float:left;
 background:url(../images/layout/up.svg) center/66.6666% no-repeat;
 transition:.2s ease-in-out
}

div.scrolldown a:hover, div.scrolltop a:hover {
 background-color:#159931
}

div.scrolldown {
 display:block;
 position:fixed;
 right:110px
}

div#assistant, div.switch {
 display:none;
 position:fixed
}

div.scrolldown a {
 display:block;
 float:left;
 border-radius:3px;
 background:url(../images/layout/scrolldown.svg) center/66.6666% no-repeat;
 -webkit-transition:.2s ease-in-out;
 -moz-transition:.2s ease-in-out;
 transition:.2s ease-in-out
}

div.show_assistant {
 position:fixed;
 right:90px;
 bottom:120px;
 z-index:900;
 animation:1s linear rollIn;
 transition:.3s ease-in-out
}

div.show_assistant:hover {
 cursor:pointer;
 transform:scale(1.1) rotate(25deg);
 transition:.3s ease-in-out
}

div#assistant #close_it, div#assistant #toggle_messages {
 -webkit-transition:.2s ease-in-out;
 -moz-transition:.2s ease-in-out;
 -webkit-appearance:none;
 cursor:pointer
}

div.show_assistant img {
 width:100px;
 filter:drop-shadow(0 0 5px rgba(0, 0, 0, .1))
}

div#assistant {
 z-index:10000;
 right:180px;
 bottom:0;
 width:480px;
 max-height:100%;
 overflow:auto;
 padding:40px;
 background:#fff;
 outline:#dddddd solid 2px;
 -ms-overflow-style:none;
 scrollbar-width:none, 
}

div#assistant #close_it {
 position:absolute;
 right:40px;
 top:40px;
 width:40px;
 height:40px;
 background:url(../images/layout/close.svg) center/80% no-repeat #159a34;
 transition:.2s ease-in-out
}

div#assistant #close_it:hover {
 background-color:#000
}

div#assistant #header {
 width:100%;
 border-bottom:2px solid #ddd;
 padding:10px 0 20px 100px;
 background:url(../images/layout/rock.svg) left top/80px no-repeat;
 line-height:18px;
 text-transform:uppercase
}

div#assistant #header span {
 display:block;
 font-size:36px;
 line-height:36px;
 font-family:Grooving, Helvetica, Arial, sans-serif
}

div#assistant #toggle_messages {
 width:fit-content;
 margin:20px 0;
 padding:15px 20px;
 background:#159a34;
 color:#fff;
 line-height:14px;
 transition:.2s ease-in-out
}

div#assistant #messages div b.cta:hover, div#assistant #toggle_messages:hover {
 background:#000
}

.accordion .accTab, .highlight .small img, div#assistant #messages, table {
 width:100%
}

div#assistant #messages div {
 position:relative;
 width:100%;
 padding:20px;
 background:#ddd
}

div#assistant #messages div:before {
 display:block;
 position:absolute;
 z-index:-1;
 left:30px;
 bottom:-10px;
 width:30px;
 height:60px;
 background:#ddd;
 -webkit-transform:rotate(45deg) skewY(30deg);
 -moz-transform:rotate(45deg) skewY(30deg);
 transform:rotate(45deg) skewY(30deg);
 content:''
}

div#assistant #messages div label {
 display:block;
 position:relative;
 align-content:center;
 min-height:25px;
 margin:15px 0;
 padding:0 0 0 32px
}

div#assistant #messages div label:last-of-type {
 margin-bottom:0
}

div#assistant #messages div label input[type=checkbox]+b, div#assistant #messages div label input[type=radio]+b {
 display:block;
 position:absolute;
 top:0;
 bottom:0;
 left:0;
 width:25px;
 height:25px;
 margin:auto;
 background-color:#fff;
 background-repeat:no-repeat;
 background-position:center;
 background-size:contain;
 border:2px solid #fff
}

div#assistant #messages div label input[type=radio]+b {
 border-radius:50%
}

div#assistant #messages div label input[type=checkbox]:checked+b {
 background-image:url(../images/layout/checkbox.svg)
}

div#assistant #messages div h4 img {
 display:block;
 width:100%;
 margin:20px 0 0
}

div#assistant #messages div b.cta {
 display:block;
 padding:18px 40px;
 background:#159a34;
 margin:10px;
 color:#fff;
 line-height:14px;
 text-transform:uppercase;
 letter-spacing:.2em;
 -webkit-transition:.2s ease-in-out;
 -moz-transition:.2s ease-in-out;
 transition:.2s ease-in-out;
 cursor:pointer
}

div.switch {
 z-index:5000;
 top:0;
 right:0;
 transform:scale(.6);
 cursor:pointer;
 -webkit-transition:.4s ease-in-out;
 -moz-transition:.4s ease-in-out;
 transition:.4s ease-in-out
}

div.switch.active, div.switch:hover {
 background:#159a34
}

div.switch span {
 display:block;
 position:absolute;
 left:15px;
 height:2px;
 background:#fff;
 -webkit-transition:.2s ease-in-out;
 -moz-transition:.2s ease-in-out;
 transition:.2s ease-in-out
}

#mainNav span.background, #mainNav ul, #mainNav.flat, #mainNav.flat ul, nav#mainNav {
 transition:.4s ease-in-out
}

div.switch span:first-child {
 top:19px;
 width:30px
}

div.switch span:nth-child(2), div.switch span:nth-child(3) {
 top:29px;
 width:15px
}

div.switch span:nth-child(4) {
 top:39px;
 width:22.5px
}

div.switch.active span:first-child, div.switch.active span:nth-child(4) {
 top:29px;
 width:0%;
 left:50%
}

div.switch.active span:nth-child(2) {
 width:30px;
 -webkit-transform:rotate(45deg);
 -moz-transform:rotate(45deg);
 transform:rotate(45deg)
}

div.switch.active span:nth-child(3) {
 width:30px;
 -webkit-transform:rotate(-45deg);
 -moz-transform:rotate(-45deg);
 transform:rotate(-45deg)
}

header {
 display:flex;
 position:fixed;
 top:0;
 left:0;
 width:100%;
 z-index:1000
}

nav#mainNav {
 display:flex;
 width:100%;
 background:0 0
}

#mainNav span.background {
 top:0;
 left:0;
 width:100%;
 height:100%;
 background-color:transparent
}

#mainNav.flat span.background {
 width:100%;
 height:68px;
 transition:.4s ease-in-out
}

#mainNav ul {
 display:flex;
 position:relative;
 width:100%;
 padding:30px;
 list-style:none
}

#mainNav.flat ul {
 padding:0
}

#mainNav ul li {
 display:flex;
 width:20%;
 margin:0 auto;
 padding:15px 0;
 text-align:center;
 transition:.3s ease-in-out
}

#mainNav ul li a.logo img {
 width:160px;
 margin:6px 0 -1px;
 transition:.3s ease-in-out
}

#mainNav ul li a.logo:hover img {
 opacity:.5;
 transition:.3s ease-in-out
}

#mainNav ul li.navPoint a.navPointName {
 width:100%;
 padding:10px;
 margin:auto;
 color:#fff;
 font-size:20px;
 text-align:center;
 transition:.3s ease-in-out
}

#mainNav ul li.navPoint:hover {
 cursor:pointer;
 transition:.3s ease-in-out
}

#mainNav ul li.navPoint:hover a.navPointName {
 color:#159a34;
 transition:.3s ease-in-out;
 background-color:#fff
}

#mainNav ul li.navPoint:hover div.navExpand {
 visibility:visible;
 top:105px;
 opacity:1;
 transition:.5s ease-in-out
}

#mainNav.flat ul li {
 padding:10px 0 22px
}

#mainNav.flat ul li.navPoint:hover div.navExpand {
 top:79px
}

#mainNav .navExpand {
 display:flex;
 visibility:hidden;
 position:absolute;
 top:140px;
 left:0;
 width:1120px;
 min-height:400px;
 border-radius:0 0 3px 3px;
 padding:20px 40px;
 color:#000;
 font-size:16px;
 text-align:left;
 background:#fff;
 box-shadow:0 5px 5px rgba(0, 0, 0, .1);
 opacity:0;
 z-index:999
}

#mainNav.flat .navExpand {
 top:60px
}

#mainNav .navExpand a.navImg {
 width:calc(25% - 30px);
 margin:0 20px;
 height:100%
}

.navExpand a.navImg figure {
 position:relative;
 width:100%;
 height:340px;
 margin:0;
 background-position:right center;
 background-size:cover
}

.navExpand a.navImg figcaption {
 position:absolute;
 left:0;
 right:0;
 bottom:0;
 padding:30px;
 text-align:center;
 font-size:22px;
 color:#fff;
 background:rgba(0, 0, 0, .3);
 transition:.2s ease-in-out
}

.navExpand a.navImg:hover figcaption {
 padding:30px 30px 50px;
 transition:.2s ease-in-out
}

#mainNav .navExpand ul {
 display:block;
 list-style:none;
 width:calc(25% - 30px);
 margin:0 20px 0 0;
 border-right:1px solid #ccc;
 padding:0 20px
}

#mainNav .navExpand ul li {
 display:flex;
 width:100%;
 margin:5px;
 font-size:18px;
 padding:0;
 text-align:left
}

#mainNav .navExpand ul li a {
 width:100%;
 padding:10px 0;
 color:#000;
 transition:.2s ease-in-out
}

#mainNav .navExpand ul li a:hover, .pageName ul.breadcrumb a {
 color:#159a34;
 transition:.2s ease-in-out
}

#sideNav.flat:hover, nav#sideNav {
 position:fixed;
 top:0;
 right:0;
 width:70px;
 height:100vh;
 background:#fff;
 transition:.4s ease-in-out
}

#sideNav.flat {
 width:25px;
 background:#159a34
}

#sideNav ul, #sideNav.flat:hover ul {
 list-style:none;
 margin:10px;
 padding:0;
 visibility:visible;
 opacity:1;
 transition:.4s ease-in-out
}

#sideNav.flat #logoSquare {
 display:block;
 width:20px;
 margin:8px auto
}

#sideNav.flat ul {
 visibility:hidden;
 opacity:0;
 transition:.4s ease-in-out
}

#sideNav ul.shortcuts li {
 display:flex;
 margin:30px auto;
 padding:0
}

#sideNav ul.shortcuts li a {
 margin:auto;
 width:50px;
 height:50px;
 border-radius:2px;
 padding:8px;
 color:#23305f;
 transition:.4s ease-in-out
}

#sideNav ul.shortcuts li a:hover {
 background-color:#23305f38;
 transition:.4s ease-in-out
}

#sideNav ul.subShortcuts {
 display:inline-block;
 width:38px;
 margin:0 15px 25px!important;
 background:#f4f4f4;
 border-radius:319px
}

#sideNav ul.subShortcuts li {
 width:fit-content;
 height:fit-content;
 margin:15px auto;
 text-align:center
}

#sideNav ul.subShortcuts li a img {
 width:20px;
 transition:.3s ease-in-out
}

#sideNav ul.subShortcuts.socialMedia li a img {
 width:35px
}

#sideNav ul.subShortcuts li a:hover img {
 transform:scale(1.3);
 transition:.3s ease-in-out
}

.pageName {
 position:relative;
 margin:0 0 120px;
 padding-top:65px;
 color:#fff
}

.pageName::before {
 content:"";
 position:absolute;
 height:420px;
 width:110vw;
 transform:rotate(-5deg) translate(0, -55%);
 background:url('../images/layout/header_tape.svg') bottom/cover no-repeat;
 z-index:-1
}

.pageName .content {
 margin:25px auto;
 transform:rotate(-5deg) translate(-1%, -15px)
}

.pageName ul.breadcrumb {
 display:flex;
 margin:0;
 padding:0;
 list-style:none
}

.pageName ul.breadcrumb li:nth-child(n) a::before {
 content:"> ";
 margin-left:5px
}

.pageName ul.breadcrumb li:first-child a::before {
 content:"";
 margin-left:0
}

.pageName ul.breadcrumb a:hover {
 color:#000d3e;
 transition:.2s ease-in-out
}

.pageName h1 {
 color:#fff;
 font-size:74px;
 line-height:.9
}

.breaker.petrol .h1 b, .breaker.petrol .h2 b, .breaker.petrol .h3 b, .breaker.petrol h1 b, .breaker.petrol h2 b, .breaker.petrol h3 b, .pageName h3, .tiles .tile.logo_icon:hover div {
 color:#fff
}

.breaker {
 margin:60px 0;
 padding:70px 0
}

.breaker.petrol {
 position:relative;
 margin-top:0;
 background:linear-gradient(60deg, #489699, #5fa799 25%, #5fa799 75%, #76b799 100%);
 color:#fff
}

.breaker.petrol .h1, .breaker.petrol .h2, .breaker.petrol .h3, .breaker.petrol .h4, .breaker.petrol h1, .breaker.petrol h2, .breaker.petrol h3, .breaker.petrol h4, .gallery figcaption {
 color:#0f1b44
}

.breaker.petrol .content .cols .col a p {
 color:#fff;
 font-size:24px;
 font-weight:700
}

.breaker.petrol-light {
 position:relative;
 margin-top:0;
 background:linear-gradient(60deg, #48969940, #76b79924 100%);
 color:#23305f
}

.breaker.vid {
 overflow:hidden;
 position:relative;
 min-height:500px
}

.breaker.vid.befLeft:before, .breaker.vid.befRight:before {
 content:'';
 display:block;
 position:absolute;
 top:0;
 width:60%;
 height:100%;
 background:linear-gradient(90deg, #ffffffab 50%, transparent);
 z-index:2
}

.breaker.vid.befLeft {
 left:0
}

.breaker.vid.befRight {
 right:0
}

.breaker.vid .content {
 position:relative;
 z-index:3
}

.breaker.vid video {
 position:absolute;
 top:0;
 bottom:0;
 left:0;
 right:0;
 width:100%;
 margin:auto;
 object-fit:cover;
 z-index:1
}

.breaker div.grid {
 position:absolute;
 background:url('../images/layout/grid.svg') center/contain no-repeat;
 -moz-filter:opacity(0.2);
 -webkit-filter:opacity(0.2);
 filter:opacity(.2)
}

.breaker div.grid:first-of-type {
 left:30px;
 top:30px;
 width:350px;
 height:350px;
 right:0;
 bottom:0
}

.breaker div.grid:nth-of-type(2n) {
 right:40px;
 bottom:30px;
 width:200px;
 height:200px;
 transform:rotate(180deg)
}

.cols {
 display:flex;
 flex-wrap:wrap;
 margin:0 -20px
}

.cols .col {
 margin:20px
}

.cols .col.d1, .cols .col.d22, .cols .col.d33, .cols .col.d44, .cols .col.d55, .cols .col.d66, .cols .col.m1, .cols .col.m22, .cols .col.m33, .cols .col.m44, .cols .col.m55, .cols .col.m66 {
 width:calc(100% - 40px)
}

.cols .col.d110, .cols .col.m110 {
 width:calc(10% - 40px)
}

.cols .col.d15, .cols .col.d210, .cols .col.m15, .cols .col.m210 {
 width:calc(20% - 40px)
}

.cols .col.d310, .cols .col.m310 {
 width:calc(30% - 40px)
}

.cols .col.d25, .cols .col.d410, .cols .col.m25, .cols .col.m410 {
 width:calc(40% - 40px)
}

.cols .col.d12, .cols .col.d24, .cols .col.d36, .cols .col.m12, .cols .col.m24, .cols .col.m36, .cols .col.m510 .cols .col.d510 {
 width:calc(50% - 40px)
}

.cols .col.d35, .cols .col.d610, .cols .col.m35, .cols .col.m610 {
 width:calc(60% - 40px)
}

.cols .col.d710, .cols .col.m710 {
 width:calc(70% - 40px)
}

.cols .col.d45, .cols .col.d810, .cols .col.m45, .cols .col.m810 {
 width:calc(80% - 40px)
}

.cols .col.d910, .cols .col.m910 {
 width:calc(90% - 40px)
}

.cols .col.d14, .cols .col.m14 {
 width:calc(25% - 40px)
}

.cols .col.d34, .cols .col.m34 {
 width:calc(75% - 40px)
}

.cols .col.d16, .cols .col.m16 {
 width:calc(16.666% - 40px)
}

.cols .col.d13, .cols .col.d26, .cols .col.m13, .cols .col.m26 {
 width:calc(33.333% - 40px)
}

.cols .col.d23, .cols .col.d46, .cols .col.m23, .cols .col.m46 {
 width:calc(66.666% - 40px)
}

.cols .col.d56, .cols .col.m56 {
 width:calc(83.333% - 40px)
}

.cols .col img, .cols .col svg, .cols .col video {
 max-width:100%
}

.cards {
 display:grid;
 grid-template-columns:33% 33% 33%;
 grid-row-gap:30px;
 grid-column-gap:30px
}

.cards .card {
 display:flex;
 margin:0;
 border-radius:5px;
 align-content:center;
 background:#fff;
 box-shadow:0 0 10px rgba(0, 0, 0, .2)
}

input[type=checkbox]+label b, input[type=radio]+label b {
 background-position:center;
 background-color:#fff;
 width:30px
}

.markupIcon::before, input[type=checkbox]+label b, input[type=radio]+label b {
 background-repeat:no-repeat;
 background-size:contain
}

.cards .card .cardIco {
 display:block;
 position:relative;
 height:fit-content;
 z-index:1
}

.cards .card .cardIco:after, .cards .card .cardIco:before {
 content:'';
 display:block;
 position:absolute;
 top:-10%;
 left:-10%;
 width:120%;
 height:120%;
 border-radius:3px;
 background:#159a34;
 opacity:.15;
 z-index:-1;
 -webkit-transition:.3s ease-in-out;
 -moz-transition:.3s ease-in-out;
 transition:.3s ease-in-out
}

.cards .card:hover .cardIco:before {
 top:-20%;
 left:-20%;
 opacity:.3;
 -webkit-transition:.3s ease-in-out;
 -moz-transition:.3s ease-in-out;
 transition:.3s ease-in-out
}

.accordion .accTitle, .cards .card:hover .cardIco:after {
 -moz-transition:.3s ease-in-out;
 -webkit-transition:.3s ease-in-out
}

.cards .card:hover .cardIco:after {
 top:0;
 left:0;
 background:#0f1b44;
 opacity:.3;
 transition:.3s ease-in-out
}

.markupIcon span, .markupIcon.active span, .markupIcon.active::before, .markupIcon::before, .tiles .tile div, .tiles .tile span, .tiles .tile:hover span {
 transition:.4s ease-in-out
}

.cards .card .cardIco img {
 display:block;
 max-width:50px;
 margin:auto
}

ul.goTo {
	display: flex;
	flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  list-style: none;	
}

ul.goTo li {
	width: calc(20% - 20px);
}

ul.goTo li a {
	display: inline-block;
	position: relative;
	width:100%;
	border: 1px solid #0f1b44;
	border-radius: 3px;
	padding: 5px 10px 5px 45px;
	-webkit-transition: .3s;
  -moz-transition: .3s;
  transition: .3s;
}

ul.goTo li a:hover, ul.goTo li a:focus {
	color: #fff;
	background: #0f1b44;
	-webkit-transition: .3s;
  -moz-transition: .3s;
  transition: .3s;		
}

ul.goTo li a:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 5px;
	width: 30px;
	height: 30px;
	margin: auto;
	border-radius: 50px;
	background: center 50% no-repeat #0f1b44;	
	background-image: url('../images/layout/right.svg');
	background-size: 55%;
}


.highlight {
 display:flex;
 position:relative;
 margin:40px 0;
 padding:40px 0;
 color:#fff
}

.highlight::before {
 z-index:-1;
 content:"";
 width:75%;
 height:100%;
 position:absolute;
 top:0;
 left:0;
 background-color:#0f1b44
}

.highlight .large {
 width:calc(60% - 60px);
 margin:auto 60px;
 background-color:#0f1b44
}

.highlight .small, .markupIcon::before {
 margin:auto;
 background-color:transparent
}

.highlight .large * {
 color:#fff;
 line-height:1.2
}

.highlight .large .btn {
 color:#fff;
 border:2px solid #fff
}

.highlight .large .btn:hover {
 color:#23305f;
 border:2px solid #fff;
 background:#fff
}

.highlight .small {
 width:40%
}

.highlight .small.text {
 padding:15px 20px;
 color:#0f1b44;
 text-align:right;
 background-color:#eee
}

.highlight.right::before {
 right:0;
 left:auto
}

.highlight.right .large {
 text-align:right
}

.markupIcon {
 position:relative;
 display:flex;
 min-height:45px;
 margin:10px auto
}

.markupIcon::before {
 content:"";
 position:absolute;
 top:0;
 left:0;
 width:45px;
 height:45px;
 z-index:-1;
 opacity:0
}

.markupIcon.boxes::before {
 background-image:url('../images/layout/boxes.svg')
}

.markupIcon.germany::before {
 background-image:url('../images/layout/germany.svg')
}

.markupIcon.truck::before {
 background-image:url('../images/layout/truck.svg')
}

.markupIcon span {
 width:0;
 margin:auto 0 auto auto;
 font-size:18px;
 text-align:left;
 opacity:0
}

.chat section h1, .chat section h3, .osm_error h4, .tiles .tile div, a.buttonlink, footer .copyright {
 text-align:center
}

.markupIcon.active::before {
 left:calc(50% - 22px);
 opacity:1
}

.markupIcon.active span {
 width:50%;
 opacity:1
}

.tiles {
 float:none;
 margin:20px 0 20px -20px
}

.tiles:after {
 display:block;
 content:'';
 float:none;
 clear:both;
 width:100%
}

.tiles .tile {
 float:left;
 position:relative;
 margin:20px;
 border-radius:3px;
 background-color:rgba(0, 0, 0, .5);
 background-size:cover;
 background-position:center;
 background-repeat:no-repeat
}

.tiles .tile.logo_icon {
 background-color:#fff;
 background-size:auto;
 box-shadow:inset 0 0 40px rgba(0, 0, 0, .2)
}

.tiles .tile.tile_xl {
 width:540px;
 height:540px
}

.tiles .tile.tile_l {
 width:540px;
 height:250px
}

.tiles .tile.tile_ml {
 width:540px;
 height:315px
}

.tiles .tile.tile_m {
 width:calc(33.3333% - 40px);
 height:192px
}

.tiles .tile.tile_mm {
 width:calc(33.3333% - 40px);
 height:315px
}

.tiles .tile.tile_s {
 width:250px;
 height:250px
}

.tiles .tile span {
 position:absolute;
 width:calc(100% - 20px);
 height:calc(100% - 40px);
 top:20px;
 left:0;
 margin:10px;
 border-radius:3px;
 background:#23305f;
 opacity:0
}

.tiles .tile:hover span {
 top:0;
 height:calc(100% - 20px);
 opacity:.7
}

.tiles .tile div {
 position:absolute;
 bottom:0;
 left:0;
 right:0;
 margin:auto;
 padding:30px 30px 50px;
 color:#fff;
 background-image:linear-gradient(transparent, rgba(0, 0, 0, .3)80%)
}

.tiles .tile.logo_icon div {
 padding:10px 30px;
 background-image:none;
 color:#000
}

.tiles .tile div .info, .tiles .tile div p {
 visibility:hidden;
 height:0;
 margin:10px 0 0;
 font-size:18px;
 line-height:1.1;
 opacity:0;
 transition:.2s ease-in-out
}

.tiles .tile:hover div {
 bottom:50%;
 background-image:none;
 -webkit-transform:translateY(50%);
 -moz-transform:translateY(50%);
 -ms-transform:translateY(50%);
 transform:translateY(50%);
 transition:.4s ease-in-out
}

.tiles .tile:hover div.full {
 bottom:100%;
 background-image:none;
 -webkit-transform:translateY(100%);
 -moz-transform:translateY(100%);
 -ms-transform:translateY(100%);
 transform:translateY(100%)
}

.tiles .tile:hover div .info, .tiles .tile:hover div p {
 visibility:visible;
 opacity:1;
 transition:.4s ease-in-out
}

ul.timeline li, ul.timeline li:hover {
 -webkit-transition:ease-in-out;
 -moz-transition:.2s ease-in-out
}

.tiles .tile div .info p, .tiles .tile div .info table, .tiles .tile div .info ul {
 margin:auto;
 text-align:left
}

.timeline {
 position:relative;
 z-index:1;
 width:calc(100% - 80px);
 padding:0;
 margin:40px;
 list-style:none
}

ul.timeline::after {
 content:'';
 position:absolute;
 width:6px;
 background-color:#ddd;
 top:0;
 bottom:0;
 left:50%;
 margin-left:-3px
}

ul.timeline li {
 position:relative;
 width:46.5%;
 margin:-15px 0;
 border-radius:5px 0 5px 5px;
 padding:25px;
 background:#f4f4f4;
 z-index:5;
 transition:.2s ease-in-out
}

ul.timeline article {
 margin:15px 5px
}

ul.timeline li p {
 opacity:.8
}

ul.timeline li:hover {
 background:#d7e8e7;
 transition:.2s ease-in-out
}

ul.timeline li:before, ul.timeline li:hover:before {
 -webkit-transition:ease-in-out;
 -moz-transition:.2s ease-in-out
}

ul.timeline li:before {
 content:'';
 position:absolute;
 width:25px;
 height:25px;
 top:-12px;
 right:-49px;
 margin:auto 0;
 border:4px solid #159a34;
 border-radius:50px;
 background-color:#fff;
 z-index:1;
 transition:.2s ease-in-out
}

ul.timeline li:hover:before {
 transform:scale(1.25);
 background:#d7e8e7;
 border:4px solid #23305f;
 transition:.2s ease-in-out
}

ul.timeline li:nth-of-type(2n) {
 margin-left:auto;
 border-radius:0 5px 5px 0
}

ul.timeline li:nth-of-type(2n):before {
 right:0;
 left:-49px
}

ul.timeline li:after {
 content:'';
 position:absolute;
 width:30px;
 height:20px;
 top:0;
 right:-8px;
 background:#f4f4f4;
 -webkit-transform:skewX(-45deg);
 -moz-transform:skewX(-45deg);
 transform:skewX(-45deg);
 z-index:-1;
 -webkit-transition:ease-in-out;
 -moz-transition:.2s ease-in-out;
 transition:.2s ease-in-out
}

ul.timeline li:hover:after {
 background:#d7e8e7
}

ul.timeline li:nth-of-type(2n):after {
 left:-8px;
 -webkit-transform:skewX(45deg);
 -moz-transform:skewX(45deg);
 transform:skewX(45deg)
}

form table {
 padding:10px;
 border-style:none;
 border-spacing:0;
 margin:-20px
}

form table tr td {
 position:relative;
 width:50%;
 padding:10px;
 border:none
}

input[type=checkbox]+label, input[type=radio]+label {
 display:block;
 position:relative;
 float:left;
 width:100%;
 padding:0 0 0 50px
}

input[type=radio]+label b {
 display:block;
 position:absolute;
 left:0;
 top:0;
 height:30px;
 border:2px solid #ddd;
 border-radius:50%
}

input[type=checkbox]+label b {
 display:block;
 position:absolute;
 left:0;
 top:0;
 height:30px;
 border:2px solid #ddd
}

input[type=checkbox].error+label b, input[type=date].error, input[type=radio].error+label b, input[type=text].error, input[type=time].error, select.error, textarea.error {
 border-color:red
}

input[type=radio]:checked+label b {
 border-color:#000
}

input[type=checkbox]:checked+label b {
 background-image:url(../images/layout/checkbox.svg);
 border-color:#000
}

input[type=date], input[type=file], input[type=text], input[type=time], select, textarea {
 float:left;
 width:100%;
 padding:16px;
 background:#fff;
 border:2px solid #ddd;
 color:#000;
 font-size:14px;
 line-height:24px;
 font-weight:400;
 font-family:Bariol, Helvetica, Arial, sans-serif;
 -webkit-transition:.2s ease-in-out;
 -moz-transition:.2s ease-in-out;
 transition:.2s ease-in-out;
 -webkit-appearance:none
}

input[type=date]+label, input[type=text]+label, input[type=time]+label, select+label, textarea+label {
 display:block;
 position:absolute;
 left:10px;
 top:10px;
 padding:18px;
 font-size:14px;
 line-height:24px;
 pointer-events:none;
 -webkit-transition:.2s ease-in-out;
 -moz-transition:.2s ease-in-out;
 transition:.2s ease-in-out
}

input[type=file]+label {
 position:absolute
}

input[type=date]:focus, input[type=date]:not(:placeholder-shown), input[type=file]:focus, input[type=text]:focus, input[type=text]:not(:placeholder-shown), input[type=time]:focus, input[type=time]:not(:placeholder-shown), select:focus, select:not([value=""]), textarea:focus, textarea:not(:placeholder-shown) {
 border-color:#000;
 outline:0
}

input[type=date]:focus+label, input[type=date]:not(:placeholder-shown)+label, input[type=file]+label, input[type=text]:focus+label, input[type=text]:not(:placeholder-shown)+label, input[type=time]:focus+label, input[type=time]:not(:placeholder-shown)+label, select:focus+label, select:not([value=""])+label, textarea:focus+label, textarea:not(:placeholder-shown)+label {
 left:16px;
 top:-10px;
 padding:12px;
 background:#fff;
 font-size:12px;
 line-height:18px
}

a.buttonlink, input[type=submit] {
 background:#159a34;
 text-transform:uppercase;
 width:100%;
 float:left;
 color:#fff
}

a.buttonlink:hover, footer, input[type=submit]:hover {
 background:#23305f
}

#map h4, footer {
 font-size:14px
}

select {
 background-image:url(../images/layout/select.svg);
 background-repeat:no-repeat;
 background-position:right center;
 background-size:contain
}

textarea {
 height:400px;
 overflow:auto;
 resize:none
}

:-ms-input-placeholder {
 color:#000
}

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

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

::-webkit-input-placeholder {
 color:#000
}

input[type=file] {
 padding:22px 16px
}

input[type=file]:hover {
 cursor:pointer
}

input[type=file]::file-selector-button {
 margin-right:15px;
 border:none;
 padding:10px 22px;
 font-family:Bariol, Helvetica, Arial, sans-serif;
 text-transform:uppercase;
 color:#fff;
 background-color:#159a34
}

input[type=submit] {
 height:80px;
 padding:0;
 border:none;
 font-size:18px;
 line-height:18px;
 font-weight:700;
 cursor:pointer;
 -webkit-transition:.2s ease-in-out;
 -moz-transition:.2s ease-in-out;
 transition:.2s ease-in-out
}

.gallery a:before, a.buttonlink {
 -webkit-transition:.2s ease-in-out;
 -moz-transition:.2s ease-in-out;
 display:block
}

a.buttonlink {
 padding:23px;
 line-height:14px;
 transition:.2s ease-in-out
}

.texterror {
 padding:0 25px;
 background:rgba(255, 0, 0, .2);
 color:#e40000
}

table tr td {
 padding:8px;
 border-bottom:1px solid #d1dfdf
}

.accordion {
 border-bottom:1px solid #353732
}

.accordion .accTitle {
 display:block;
 position:relative;
 width:100%;
 border-top:1px solid #353732;
 padding:15px 10px;
 font-size:18px;
 cursor:pointer;
 transition:.3s ease-in-out
}

.accordion .accTitle:hover {
 background:#5fa79929;
 -moz-transition:.3s ease-in-out;
 -webkit-transition:.3s ease-in-out;
 transition:.3s ease-in-out
}

.accordion .accTitle:after, .accordion .accTitle:before {
 content:'';
 display:block;
 position:absolute;
 top:0;
 bottom:0;
 margin:auto;
 background:#353732
}

.accordion .accTitle:before {
 right:15px;
 width:18px;
 height:2px
}

.accordion .accTitle:after {
 right:23px;
 width:2px;
 height:18px;
 -webkit-animation:.4s forwards acc_icon_rotate1;
 -moz-animation:.4s forwards acc_icon_rotate1;
 animation:.4s forwards acc_icon_rotate1
}

.accordion .accTitle.active {
 background:#5fa79929
}

.accordion .accTitle.active:after {
 -webkit-animation:.4s forwards acc_icon_rotate2;
 -moz-animation:.4s forwards acc_icon_rotate2;
 animation:.4s forwards acc_icon_rotate2
}

.accordion .accContent {
 display:none;
 width:100%;
 padding:10px
}

.topicCarousel {
 margin:30px 0
}

.gallery.carousel button.slick-arrow, .topicCarousel button.slick-arrow {
 display:block;
 position:absolute;
 z-index:100;
 top:45%;
 width:50px;
 height:50px;
 background:center/50% no-repeat #5fa799;
 border:none;
 border-radius:50%;
 font-size:0;
 -webkit-transition:.4s ease-in-out;
 -moz-transition:.4s ease-in-out;
 transition:.4s ease-in-out
}
	
.gallery.carousel button.slick-arrow:hover, .topicCarousel button.slick-arrow:hover {
 cursor:pointer;
 animation:.8s linear infinite bounce
}

.gallery.carousel button.slick-prev, .topicCarousel button.slick-prev {
 left:0;
 background-image:url('../images/layout/left.svg')
}

.gallery.carousel button.slick-prev:hover, .topicCarousel button.slick-prev:hover {
 animation:.8s linear infinite bounceLeft
}

.gallery.carousel button.slick-next, .topicCarousel button.slick-next {
 right:0;
 background-image:url('../images/layout/right.svg')
}

.gallery.carousel button.slick-next:hover, .topicCarousel button.slick-next:hover {
 animation:.8s linear infinite bounceRight
}

.topicCarousel .item {
 margin:15px
}

.topicCarousel .item a {
 display:block;
 position:relative;
 height:445px;
 background-position:right center;
 background-size:cover
}

.topicCarousel .item a h3, .topicCarousel .item a p {
 text-align:center;
 position:absolute;
 left:0;
 right:0;
 margin:auto;
 color:#fff;
 bottom:25px;
 transition:.4s ease-in-out
}

.topicCarousel .item a:hover h3, .topicCarousel .item a:hover p {
 bottom:40px;
 transition:.4s ease-in-out
}

.topicCarousel .item a span {
 position:absolute;
 width:calc(100% - 20px);
 height:calc(100% - 20px);
 top:20px;
 left:0;
 margin:10px;
 background:#5fa799;
 opacity:0;
 transition:.4s ease-in-out
}

.topicCarousel .item a:hover span {
 top:0;
 height:calc(100% - 20px);
 opacity:.6;
 transition:.4s ease-in-out
}

.gallery {
 width:100%;
 display:flex;
 margin:auto
}

.gallery a {
 display:block;
 position:relative;
 width:100%;
 padding:0 0 100%;
 overflow:hidden
}

.gallery a:before {
 content:'';
 position:absolute;
 top:5px;
 right:5px;
 z-index:1;
 width:35px;
 height:35px;
 background:url(../images/layout/zoom.svg) center/50% no-repeat;
 transition:.2s ease-in-out
}

.gallery a:hover:before {
 right:0;
 top:0;
 width:100%;
 height:100%;
 background-color:#ffffff66;
 background-size:25%
}

.gallery a img {
 display:block;
 position:absolute;
 left:0;
 top:0;
 width:100%;
 height:100%;
 object-fit:cover;
 -webkit-transition:.2s ease-in-out;
 -moz-transition:.2s ease-in-out;
 transition:.2s ease-in-out
}

.gallery a:hover img {
 -webkit-transform:scale(1.04);
 -moz-transform:scale(1.04);
 transform:scale(1.04)
}

.gallery figcaption p {
 width:fit-content;
 margin:0;
 padding:4px 8px;
 font-size:14px;
 background-color:rgba(35, 48, 95, .2)
}

.chat section b, .chat section i {
 position:relative;
 clear:both;
 padding:20px;
 display:block
}

#map, footer .copyright a {
 font-size:12px
}

#map {
 width:100%;
 padding:0 0 25%;
 line-height:18px;
 white-space:nowrap;
 -moz-filter:grayscale(0.8);
 -webkit-filter:grayscale(0.8);
 filter:grayscale(.8)
}

#map h4 {
 line-height:24px
}

.osm_error {
 position:relative;
 float:left;
 width:100%;
 padding:0 0 33.3333%;
 background:#ddd
}

.chat, footer ul {
 padding:0
}

.osm_error h4 {
 position:absolute;
 left:50%;
 top:50%;
 -webkit-transform:translate(-50%, -50%);
 -moz-transform:translate(-50%, -50%);
 transform:translate(-50%, -50%)
}

#foerderung table tr td:nth-of-type(2) {
 width:25%;
 text-align:right
}

.chat section {
 float:left;
 width:100%;
 padding:40px calc(50% - 440px);
 background:#fff
}

.chat section b {
 float:right;
 background:#dfdfdf;
 border-radius:5px 0 5px 5px;
 margin:10px 10px 10px 80px;
 font-weight:500
}

.chat section b:before {
 display:block;
 font-size:18px;
 line-height:30px;
 content:'Frage:'
}

.chat section b:after {
 display:block;
 position:absolute;
 right:-10px;
 top:0;
 width:0;
 height:0;
 border-style:solid;
 border-width:10px 10px 0 0;
 border-color:#dfdfdf transparent transparent;
 content:''
}

.chat section i {
 float:left;
 background:#24972b;
 border-radius:0 5px 5px;
 margin:10px 80px 10px 10px;
 color:#fff;
 font-style:normal
}

.chat section i:before {
 display:block;
 font-size:18px;
 line-height:30px;
 content:'Antwort:'
}

.chat section i:after {
 display:block;
 position:absolute;
 left:-10px;
 top:0;
 width:0;
 height:0;
 border-style:solid;
 border-width:0 10px 10px 0;
 border-color:transparent #24972b transparent transparent;
 content:''
}

footer {
 width:100%;
 padding:40px 0 0;
 color:#fff
}

footer ul {
 margin:0;
 list-style:none;
 color:#fff
}

footer h5 {
 font-size:16px;
 margin:2px 0;
 line-height:1.2em
}

footer a, footer p {
 font-size:14px;
 line-height:1.4em;
 color:#fff;
 transition:.3s ease-in-out
}

footer a:hover {
 opacity:.3;
 transition:.3s ease-in-out
}

footer a.btn {
 padding:0 20px;
 border:2px solid #fff;
 color:#fff
}

footer a.btn:hover {
 color:#23305f;
 background:#fff;
 opacity:1
}

footer .cols ul.data li {
 align-content: center;
 padding: 5px 25px;
}

footer .cols ul.data li img {
	display: block;
	float: left;
	width: 22px;
	margin-right: 5px;
}

footer .cols ul.data li a.logo img {
	display: inherit;
	float: none;
	width: 200px;	
}

footer .cols .col.d13:nth-child(2) {
 border-left:1px solid #fff;
 border-right:1px solid #fff
}

footer .cols .col.d13:nth-of-type(3n) a {
 text-align:right;
 font-size:20px;
 line-height:1.7em
}

footer .sitelinks {
		column-count: 2;
 	column-gap: 20px;
}

footer .linkList {
 border-top:1px solid #fff;
 padding:10px 0
}

footer .linkList ul {
 display:flex;
 padding:0
}

footer .linkList ul li {
 margin:auto;
 padding:5px 10px
}

footer .linkList .socials img {
 width:32px;
 filter:brightness(100)
}

footer .linkList .legals {
 margin-left:auto
}

footer .copyright {
 padding:20px 0;
 background:#0f1b44
}