/*
Theme Name: CometumOne
Description: Custom Wordpress Theme for Cometum One
Author: Sebastian Klammer Grafikdesign Berlin
Author URI: https://sebastian-klammer.de/
Version: 1.0 (25.05.2026)
*/

/* === FONTS === */


@import url('fonts/stylesheet.css');


/* === ANIMATIONS === */

/*@import url('animate.css');*/

.show-on-scroll { opacity: 0; transition: transform 4s .25s cubic-bezier(0,1,.3,1), opacity .3s .25s ease-out; transform: translate(0, calc(40% + 1em)); }

.show-on-scroll.is-visible { opacity: 1; transform: translate(0, 0); }

#main > section.no-animation .show-on-scroll,
#main > section#projectpage .show-on-scroll  { opacity: 1; transform: translate(0, 0); }


/* === RESET === */


body, div, h1, h2, h3, h4, h5, h6, p, blockquote, pre, code, ol, ul, li, dl, dt, dd, figure, table, th, td, form, fieldset, legend, input, textarea { margin: 0; padding: 0; }
header, footer, nav, section, aside, article, figure, figcaption { display: block }
table { border-spacing: 0; border-collapse: collapse; }
caption, th, td { text-align: left; text-align: start; vertical-align: top; }
abbr, acronym { font-variant: normal; border-bottom: 1px dotted #666; cursor: help; }
blockquote, q { quotes: none; }
fieldset, img { border: 0; }
ul { list-style-type: none; }
ul li { margin-bottom: 10px; line-height: 1.6 !important; }
p + ul { margin-top: 2em !important; }
.inclcontent ol li { margin-bottom: 10px !important; line-height: 1.6 !important; }
sup { vertical-align: text-top; }
sub { vertical-align: text-bottom; }
del { text-decoration: line-through; }
ins { text-decoration: none; }
*, *:before, *:after { box-sizing: inherit; }

html { position: relative; overflow-y: scroll; height: 100%; }
body { /* overflow-y: scroll; overflow-x: hidden; */ }
input, button, textarea, select { vertical-align: baseline; *vertical-align: middle; }
button, input.submit { *overflow: visible; }
table { font-size: inherit; }
img, object, embed, video { max-width: 100%; }
a img { border: none; display: block; }
img { height: auto; }


/* === GENERIC === */


.desk-size { display: block; }
.tablet-size { display: none; }
.phone-size { display: none; }
.clr { clear: both; }
.clrfix:after { content: "."; clear: both; display: block; visibility: hidden; height: 0; }
.hide-mobile { display: block; }
.show-mobile { display: none; }

a { text-decoration: none; transition: all .2s ease; }
a:hover { text-decoration: none; }

.button { display: inline-block; padding: 0.5em 2em; font-size: 1em; text-decoration: none; margin-top: .5em; }
.button.small { padding: 0.4em 1em; font-size: .9em; }
.button.large { padding: 1.5em 3em; font-size: 1.2em; }
.button:hover { text-decoration: none; cursor: pointer; transform: scale(1.05); }
.button.glass { background-color: rgba(255,255,255,0.70) !important; backdrop-filter: saturate(180%) blur(20px); color: #fff; }
.button.glass:hover { background-color: rgba(255,255,255,0.70) !important; backdrop-filter: saturate(180%) blur(20px); color: #fff; }

.button + .button { margin-left: 20px; }

.float-left { display: inline; float: left; margin-right: 1.5em; }
.float-right { display: inline; float: right; margin-left: 1.5em; }
.float-none { float: none; }
.clear { clear: both; }
.clear-left { clear: left; }
.clear-right { clear: right; }

.aligncenter { display: block; margin-right: auto; margin-left: auto; }
.alignleft { float: left; margin-right: 2em; }
.alignright { float: right; margin-left: 2em; }

.align-left, .has-text-align-left { text-align: left; }
.align-right, .has-text-align-right { text-align: right; }
.align-center, .has-text-align-center { text-align: center; }
.align-justify { text-align: justify; }
.vertical-center { display: flex; align-items: center; /*justify-content: center; */}
.vertical-center h2 { line-height: 1; padding-bottom: 1em; }

article#main { width: 100%; height: auto; overflow: hidden; }
article ul, article ol { margin: 0 0 1.5em; zoom: 1; }
article ul { list-style-type: none; }
article ol { list-style-type: decimal; }
article ol li { margin: 0 0 0 1em; padding: 0 0 0 0.5em; }
article ul li { position: relative; margin: 0 0 0 0.75em; padding: 0 0 0 0.5em; }

#main > section { position: relative; display: flex; align-items: center; background-position: center center; background-repeat: no-repeat; background-size: cover; }

#main > section.bgimage-black .bgimage-overlay { display: none; position: absolute; top: 0; left: 0; height: 100%; width: 100%; background-color: rgba(0,0,0,0.30); }
#main > section.bgimage-black .inside { z-index: 1; }

.inside { width: 100%; max-width: 1320px; margin: 0 auto; box-sizing: border-box; padding: 4.5em 0; }
#main > section.less-padding .inside { padding: .5em 0 ; }

section.white + section.white .inside,
section.lightgrey + section.lightgrey .inside,
section.black + section.black .inside,
section.darkblue + section.darkblue .inside,
section.blue + section.blue .inside,
section.bgimage-black + section.bgimage-black .inside { padding-top: 0; }

.image-overlay { opacity: 0; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url(images/bg_image-overlay.png); background-position: center center; background-size: cover; background-repeat: no-repeat; transition: opacity .2s ease-in-out; }
.image-overlay:hover { opacity: 1; }

.vh25 { height: auto; min-height: 25vh !important; }
.vh50 { height: auto; min-height: 50vh !important; }
.vh75 { height: auto; min-height: 75vh !important; }
.vh100 { height: auto; min-height: 100vh !important; }


/* === FONTS === */


html { font-size: 62.5%; /* font-size 1em = 10px on default browser settings */ }
body, button, input, select, textarea { line-height: 1.5; font-family: 'host_grotesk', sans-serif; font-weight: normal; font-size: 18px; font-size: 1.8rem; }

h1, h2, h3, h4, h5 { line-height: 1; padding-bottom: .5em; }
h2 { letter-spacing: -0.05em; }
h1 { font-size: 5.0em; padding-bottom: 0; }
h1 + p { margin-top: 1em; }
h2 { font-size: 3.5em; line-height: .9; }
h2 + h2 { font-size: 1.9em; margin-top: -1.2em; }
h2.section-header { font-size: 3.5em; line-height: 1; margin-bottom: .5em; }
h2.section-header span.sub-line { font-size: 18px; font-size: 1.8rem; color: #bbbbbb; text-transform: uppercase; letter-spacing: 1px; }
h2.section-header:has(.sub-line) { padding-bottom: 0.25em; margin-bottom: 0; }
h3 { font-size: 1.9em; margin-bottom: 1em; }
h3.large { font-size: 2.75em; }
h3 + h3 { margin-top: -1em; }
h4 { font-size: 1.5em; margin-bottom: 1.5em; }
h4.sub-line { margin-top: 0; font-size: 1em; margin-bottom: 1em; text-transform: uppercase; }
h5 { font-size: 1.5em; padding-bottom: 0.25em; font-weight: 600; }

p { margin-bottom: 1.6em; width: 100%; hyphens: auto; height: auto; }
p + p { margin-top: 1em; }
p:last-of-type { margin-bottom: 0; }
p.highlight { font-size: 1.3em !important; font-style: 400; box-sizing: border-box; margin-top: -0.2em; }
.large-text { font-size: 1.75em; line-height: 1.1; }
.small-text { font-size: .75em; line-height: 1.2; }

b, strong, p > strong { font-weight: 700; }
p + h3, p + h4 { margin-top: 2em; }


/* === COLORS === */


body, button, input, select, textarea { color: #636363; }

.button { background: #1941f5; color: #fff; }
.button:hover { background: #1941f5; color: #fff; }
.button.outline { background: transparent; border: 1px solid #1941f5; color: #636363; }
.button.outline:hover { background: transparent; border: 1px solid #1941f5; color: #1941f5; }

.transparent { background-color: transparent; color: #636363; }
.transparent h1, .transparent h2, .transparent h3, .transparent h4, .transparent h5 { color: #000000; }
.transparent h4.sub-line { color: #bbbbbb; }
.transparent p.highlight { color: #636363; }
.transparent a { color: #1941f5; }
.transparent a:hover { color: #19417f; }
.transparent .button { background: #1941f5; color: #fff; }
.transparent .button:hover { background: #1941f5; color: #fff; }
.transparent .button.outline { border-color: #1941f5; color: #1941f5; }
.transparent .button.outline:hover { border-color: #1941f5; color: #1941f5; }

.white { background-color: #fff; color: #636363; }
.clmn.white h1, .clmn.white h2, .clmn.white h3, .clmn.white h4, .clmn.white h5 { color: #000000; }
.white h4.sub-line { color: #bbbbbb; }
.clmn.white p.highlight { color: #636363; }
.clmn.white a { color: #1941f5; }
.clmn.white a:hover { color: #1941f5; }
.clmn.white .button { background: #1941f5; color: #fff; }
.clmn.white .button:hover { background: #1941f5; color: #fff; }
.clmn.white .button.outline { border-color: #1941f5; color: #1941f5; }
.clmn.white .button.outline:hover { border-color: #1941f5; color: #1941f5; }

.clmn.white.glass { background-color: rgba(255,255,255,0.8) ; -webkit-backdrop-filter: saturate(150%) blur(20px); -moz-backdrop-filter: saturate(150%) blur(20px); -o-backdrop-filter: saturate(150%) blur(20px); -ms-backdrop-filter: saturate(150%) blur(20px); backdrop-filter: saturate(150%) blur(20px); }

.lightgrey { background-color: #f0f0f1; color: #636363; }
.clmn.lightgrey h1, .clmn.lightgrey h2, .clmn.lightgrey h3, .clmn.lightgrey h4, .clmn.lightgrey h5 { color: #000000; }
.clmn.lightgrey p.highlight { color: #636363; }
.clmn.lightgrey a { color: #1941f5; }
.clmn.lightgrey a:hover { color: #1941f5; }
.clmn.lightgrey .button { background: #1941f5; color: #fff; }
.clmn.lightgrey .button:hover { background: #1941f5; color: #fff; }
.clmn.lightgrey .button.outline { border-color: #1941f5; color: #1941f5; }
.clmn.lightgrey .button.outline:hover { border-color: #1941f5; color: #1941f5; }

.black { background-color: #000; color: #fff; }
.clmn.black h1, .clmn.black h2, .clmn.black h3, .clmn.black h4, .clmn.black h5 { color: #fff; }
.clmn.black p { color: #fff; }
.clmn.black p.highlight { color: #fff; }
.clmn.black a { color: #1941f5; }
.clmn.black a:hover { color: #1941f5; }
.clmn.black .button { background: #1941f5; color: #fff; }
.clmn.black .button:hover { background: #1941f5; color: #fff; }
.clmn.black .button.outline { border-color: #1941f5; color: #1941f5; }
.clmn.black .button.outline:hover { border-color: #1941f5; color: #1941f5; }

.darkblue { background-color: #0e2056; color: #fff; }
.clmn.darkblue h1, .clmn.darkblue h2, .clmn.darkblue h3, .clmn.darkblue h4, .clmn.darkblue h5 { color: #c2e3f8; }
.clmn.darkblue p { color: #fff; }
.clmn.darkblue p.highlight { color: #fff; }
.clmn.darkblue a { color: #1941f5; }
.clmn.darkblue a:hover { color: #1941f5; }
.clmn.darkblue .button { background: #1941f5; color: #fff; }
.clmn.darkblue .button:hover { background: #1941f5; color: #fff; }
.clmn.darkblue .button.outline { border-color: #1941f5; color: #1941f5; }
.clmn.darkblue .button.outline:hover { border-color: #1941f5; color: #1941f5; }

.blue { background-color: #1941f5; color: #fff; }
.clmn.blue h1, .clmn.blue h2, .clmn.blue h3, .clmn.blue h4, .clmn.blue h5 { color: #fff; }
.clmn.blue p { color: #fff; }
.clmn.blue p.highlight { color: #fff; }
.clmn.blue a { color: #0e2056; }
.clmn.blue a:hover { color: #1941f5; }
.clmn.blue .button { background: #0e2056; color: #fff; }
.clmn.blue .button:hover { background: #1941f5; color: #fff; }
.clmn.blue .button.outline { border-color: #0e2056; color: #0e2056; }
.clmn.blue .button.outline:hover { border-color: #1941f5; color: #1941f5; }

.bgimage-black { background-image: #000; color: #fff; }
.bgimage-black h1, .bgimage-black h2, .bgimage-black h3, .bgimage-black h4, .bgimage-black h5 { color: #fff; }
.bgimage-black p  { color: #fff; }
.bgimage-black p.highlight { color: #fff; }
.bgimage-black a { color: #1941f5; }
.bgimage-black a:hover { color: #1941f5; }
.bgimage-black .button { background: #1941f5; color: #fff; }
.bgimage-black .button:hover { background: #1941f5; color: #fff; }
.bgimage-black .button.outline { border-color: #1941f5; color: #1941f5; }
.bgimage-black .button.outline:hover { border-color: #1941f5; color: #1941f5; }

.black > .inside > .columns > .clmn.transparent > .clmn-content > h1, 
.black > .inside > .columns > .clmn.transparent > .clmn-content > h2, 
.black > .inside > .columns > .clmn.transparent > .clmn-content > h3, 
.black > .inside > .columns > .clmn.transparent > .clmn-content > h4, 
.black > .inside > .columns > .clmn.transparent > .clmn-content > h5  { color: #fff; }
.black > .inside > .columns > .clmn.transparent > .clmn-content > p,
.black > .inside > .columns > .clmn.transparent > .clmn-content > ul li,
.black > .inside > .columns > .clmn.transparent > .clmn-content > ul li:before { color: #fff; } { color: #fff; }
.black > .inside > .columns > .clmn.transparent > .clmn-content > p.highlight { color: #fff; }
.black > .inside > .columns > .clmn.transparent > .clmn-content > a { color: #1941f5; }
.black > .inside > .columns > .clmn.transparent > .clmn-content > a:hover { color: #1941f5; }
.black > .inside > .columns > .clmn.transparent > .clmn-content > .button { background: #1941f5; color: #fff; }
.black > .inside > .columns > .clmn.transparent > .clmn-content > .button:hover { background: #1941f5; color: #fff; }
.black > .inside > .columns > .clmn.transparent > .clmn-content > .button.outline { border-color: #1941f5; color: #1941f5; }
.black > .inside > .columns > .clmn.transparent > .clmn-content > .button.outline:hover { border-color: #1941f5; color: #1941f5; }

.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > h1, 
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > h2, 
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > h3, 
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > h4, 
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > h5  { color: #fff; }
.darkblue > .inside > h2.section-header span.sub-line { color: #c2e3f8; }
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > p,
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > ul li,
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > ul li:before { color: #fff; }
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > p.highlight { color: #fff; }
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > a { color: #1941f5; }
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > a:hover { color: #1941f5; }
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > .button { background: #1941f5; color: #fff; }
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > .button:hover { background: #1941f5; color: #fff; }
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > .button.outline { border-color: #1941f5; color: #1941f5; }
.darkblue > .inside > .columns > .clmn.transparent > .clmn-content > .button.outline:hover { border-color: #1941f5; color: #1941f5; }

.blue > .inside > .columns > .clmn.transparent > .clmn-content > h1, 
.blue > .inside > .columns > .clmn.transparent > .clmn-content > h2, 
.blue > .inside > .columns > .clmn.transparent > .clmn-content > h3, 
.blue > .inside > .columns > .clmn.transparent > .clmn-content > h4, 
.blue > .inside > .columns > .clmn.transparent > .clmn-content > h5  { color: #fff; }
.blue > .inside > .columns > .clmn.transparent > .clmn-content > p,
.blue > .inside > .columns > .clmn.transparent > .clmn-content > ul li,
.blue > .inside > .columns > .clmn.transparent > .clmn-content > ul li:before { color: #fff; } { color: #fff; }
.blue > .inside > .columns > .clmn.transparent > .clmn-content > p.highlight { color: #fff; }
.blue > .inside > .columns > .clmn.transparent > .clmn-content > a { color: #0e2056; }
.blue > .inside > .columns > .clmn.transparent > .clmn-content > a:hover { color: #1941f5; }
.blue > .inside > .columns > .clmn.transparent > .clmn-content > .button { background: #0e2056; color: #fff; }
.blue > .inside > .columns > .clmn.transparent > .clmn-content > .button:hover { background: #1941f5; color: #fff; }
.blue > .inside > .columns > .clmn.transparent > .clmn-content > .button.outline { border-color: #0e2056; color: #0e2056; }
.blue > .inside > .columns > .clmn.transparent > .clmn-content > .button.outline:hover { border-color: #1941f5; color: #1941f5; }

.text-white { color: #fff !important; }
.text-darkblue { color: #0e2056 !important; }
.text-blue { color: #1941f5 !important; }


/* === HEADER === */


#header { position: fixed; top: 0; display: block; height: auto; width: 100%; z-index: 9; background-color: transparent; transition: all .5s ease; padding-top: 7vh; padding-bottom: 1em; padding-left: 2em; padding-right: 2em; box-sizing: border-box; }
#header .inside { display: table; position: relative; padding: 0 1.5em; background-color: rgba(255,255,255,0.5) ; -webkit-backdrop-filter: saturate(150%) blur(8px); -moz-backdrop-filter: saturate(150%) blur(8px); -o-backdrop-filter: saturate(150%) blur(8px); -ms-backdrop-filter: saturate(150%) blur(8px); backdrop-filter: saturate(150%) blur(8px); border-radius: .25em; }
#header .clmn { padding: 0; }

#header .logo { display: inline-block; float: left; height: 50px; margin: 1.5em 0; background-image: url(images/logo_cometumone_black.svg); background-position: top left; background-size: auto 100%; background-repeat: no-repeat; }
body.about #header .logo { background-image: url(images/logo_cometum_black.svg); }
#header .logo img { display: block; height: auto; width: 100%; }

.navToggle { display: none; }

#mainmenu { width: auto; float: right; }
#mainmenu ul { width: 100%; text-align: right; }
#mainmenu ul.menu > li { display: inline-block; position: relative; margin-top: 1.65em; }
#mainmenu ul.menu > li > a { display: block; color: #000; font-family: inherit; font-size: 1em; padding: 0.6em 1.2em; }
#mainmenu ul.menu > li > a:hover { color: #fff; cursor: pointer; text-decoration: none; }
#mainmenu ul.menu > li.current-menu-item > a,
#mainmenu ul.menu > li.current_page_item > a,
#mainmenu ul.menu > li.current-page-ancestor > a { color: #fff; text-decoration: none; }
#mainmenu ul.menu > li.menu-item-has-children { border-top-left-radius: .75em; border-top-right-radius: .75em; }
#mainmenu ul.menu > li.menu-item-has-children:hover { background-color: #000; }
#mainmenu ul.menu > li.menu-item-has-children:hover > a { color: #fff; }

#mainmenu ul.menu > li > ul.sub-menu { display: none; position: absolute; top: 100%; left: 0; width: auto; }
#mainmenu ul.menu > li:hover > ul.sub-menu { display: block; text-align: left; }
#mainmenu ul.sub-menu > li { position: relative; display: block; padding: 0; margin: 0; margin-top: 0 !important; }
#mainmenu ul.sub-menu > li > a { display: block; font-size: 0.8em; background-color: #000; color: #fff; padding: 0.75em 1.2em; white-space: nowrap; margin: 0; }
#mainmenu ul.sub-menu > li:first-of-type > a { border-top-right-radius: .75em; }
#mainmenu ul.sub-menu > li:last-of-type a { border-bottom-left-radius: .75em; border-bottom-right-radius: .75em; }
#mainmenu ul.sub-menu > li > a:hover,
#mainmenu ul.sub-menu > li.current-menu-item > a { background-color: #000; color: #1941f5; text-decoration: none; }

#mainmenu ul.sub-menu > li > ul.sub-menu { display: none; position: absolute; top: 0; left: 100%; }
#mainmenu ul.sub-menu > li:hover > ul.sub-menu { display: block; }
#mainmenu ul.sub-menu > li > ul.sub-menu > li > a { text-align: left; }

#header .menu-widgets { display: inline-block; position: absolute; top: 16px; right: 100px; }
#header .menu-widget { box-sizing: border-box; float: left; margin-left: 20px; }
#header .menu-widget:first-of-type { margin-left: 0; }
#header .menu-widget p { margin-bottom: 0; }
#header .menu-widget a { color: #fff; }
#header .menu-widget a:hover { color: #cb0819; }


/* --- LANGUAGE MENU --- */


#header .langswitch { float: right; border: 1px solid #000; border-radius: 30px; margin-top: 38px; margin-left: 10px; transition: all .2s ease-in-out; }
#header .langswitch a { display: inline-block; float: left; text-align: center; margin: 2px 2px 2px 2px; padding: 2px 4px 4px; line-height: 1.1; text-transform: uppercase; border-top: 2px solid transparent; color: #000; font-size: 0.7em; border-radius: 30px; }
#header .langswitch a.current_language { background-color: #000; color: #fff; }

#header .langswitch:hover { border-color: #000; }
#header .langswitch:hover a { color: #000; }
#header .langswitch:hover a.current_language { background-color: #000; color: #fff; }


/* --- SCROLLING HEADER --- */


body.scrolling { }
body.scrolling #header { padding-top: 1em; padding-bottom: 0; }

body.scrolling #header .logo { height: 30px; margin: 1em 0; background-image: url(images/logo_cometumone_black.svg); }
body.about.scrolling #header .logo { background-image: url(images/logo_cometum_black.svg); }

body.scrolling #mainmenu ul.menu > li { margin-top: .6em; }
body.scrolling #mainmenu ul.menu > li > a { color: #000; }
body.scrolling #mainmenu ul.menu > li > a:hover,
body.scrolling #mainmenu ul.menu > li.current-menu-item > a,
body.scrolling #mainmenu ul.menu > li.current-page-ancestor > a { color: #1941f5; }

body.scrolling #header .langswitch { margin-top: 20px; }


/* === SLIDER === */


.slider { width: 100% !important; max-width: 5000px; overflow: hidden; }
.slider ul.bjqs { height: 100% !important; width: 100% !important; list-style-type: none; position: relative; margin: 0; }
.slider ul.bjqs li.bjqs-slide { position: absolute; background-size: cover; background-position: center center; background-repeat: no-repeat; height: 100% !important; width: 100% !important; margin: 0; padding: 0; box-sizing: border-box; display: none; }

.slider .slider-image-wrapper { background-size: cover; background-repeat: no-repeat; position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: 0; }
.slider .slider-image-wrapper.bg-position-top { background-position: top center; }
.slider .slider-image-wrapper.bg-position-center { background-position: center center; }
.slider .slider-image-wrapper.bg-position-bottom { background-position: bottom center; }

.slider .slider-content-wrapper { position: relative; width: 100%; height: 100%; margin: 0; display: flex; align-items: end; z-index: 2; }

.slider .slider-content-wrapper img { }

.slider .slider-content-wrapper .inside { padding-top: 3em; padding-bottom: 3em; position: relative; box-sizing: border-box; max-width: 5000px; padding-bottom: 5em; }
.slider .slider-content-wrapper.slider-content-left .inside { max-width: 1260px; margin: 0 auto; box-sizing: border-box; padding-right: 30%; }
.slider .slider-content-wrapper.slider-content-center .inside { height: auto; width: 100%; padding-left: 10%; padding-right: 10%; text-align: center;}
.slider .slider-content-wrapper.slider-content-right .inside { max-width: 1260px; margin: 0 auto; box-sizing: border-box; padding-left: 30%; }

.slider .slider-content-wrapper .inside p { font-size: 1em; }

.slider .slider-content-wrapper .inside.slider-text-white h1,
.slider .slider-content-wrapper .inside.slider-text-white h2,
.slider .slider-content-wrapper .inside.slider-text-white p { color: #fff; }

.slider .slider-content-wrapper .inside.slider-text-black h1,
.slider .slider-content-wrapper .inside.slider-text-black h2, 
.slider .slider-content-wrapper .inside.slider-text-black p { color: #000; }

.slider .bjqs-markers { position: absolute; bottom: 0; margin: 0; left: 0 !important; height: 60px; width: 100%; text-align: center; background-image: url(images/bg_bjqs-markers.png); background-position: bottom center; background-repeat: repeat-x; z-index: 2; }
.slider .bjqs-markers li { display: inline-block; margin: 0 5px; line-height: 30px; }
.slider .bjqs-markers li a { font-size: 0; background-color: #fff; display: block; width: 8px; height: 8px; border: 2px solid #fff; border-radius: 16px; }
.slider .bjqs-markers li.active-marker a { background-color: #fff; width: 50px; }

.slider .bjqs-controls li { margin: 0.75em; padding: 0; -webkit-transition: all .2s ease-in-out; transition: all .2s ease-in-out; }
.slider .bjqs-controls li:hover { transform: scale(1.2); }


.slider .bjqs-controls li:last-of-type { margin-left: 0; }
.slider .bjqs-controls li.bjqs-prev a { background-image: url(images/icon_slider_prev.svg); background-position: center center; background-repeat: no-repeat; background-size: 100% auto; }
.slider .bjqs-controls li.bjqs-next a { background-image: url(images/icon_slider_next.svg); background-position: center center; background-repeat: no-repeat; background-size: 100% auto; }


.slider.slider-default { }
.slider.slider-left,
.slider.slider-right { margin: 0 auto; padding: 0; max-width: 5000px; box-sizing: border-box; }
.slider.slider-left .slider-content-wrapper .inside,
.slider.slider-right .slider-content-wrapper .inside { padding-left: 0; padding-right: 0; }

.slider.slider-left .bjqs-markers,
.slider.slider-right .bjqs-markers { display: none; }

.slider.slider-left .bjqs-controls,
.slider.slider-right .bjqs-controls { position: absolute; top: 90%; z-index: 3; }
.slider.slider-left .bjqs-controls { left: 50%; }
.slider.slider-right .bjqs-controls { left: 42%; }

.slider.slider-left .bjqs-controls li,
.slider.slider-right .bjqs-controls li { display: inline-block; }
.slider.slider-left .bjqs-controls li:before,
.slider.slider-right .bjqs-controls li:before { display: none; }

.slider.slider-left .bjqs-controls li a,
.slider.slider-right .bjqs-controls li a { box-sizing: border-box; display: block; width: 40px; height: 40px; font-size: 0; }

.slider.slider-left { }
.slider.slider-left .slider-image-wrapper { z-index: 0; position: absolute; left: 0; top: 0; width: 50%; box-sizing: border-box; }
.slider.slider-left .slider-content-wrapper { z-index: 2; position: absolute; left: 50%; top: 0; width: 50%; box-sizing: border-box; padding: 4em 12em 4em 4em; }

.slider.slider-right { }
.slider.slider-right .slider-image-wrapper { position: absolute; left: 50%; top: 0; width: 50%; box-sizing: border-box; }
.slider.slider-right .slider-content-wrapper { position: absolute; left: 0; top: 0; width: 50%; box-sizing: border-box; padding: 4em 4em 4em 6em; }

.slider.slider-default .slider-overlay { display: none; z-index: 1; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.25); opacity: 1; }
.slider.slider-left .slider-overlay,
.slider.slider-right .slider-overlay { display: none; }

.slider.slider-video { }
.slider.slider-video .slider-content-wrapper { padding: 0; }
.slider.slider-video .clmn .inside { padding: 0; margin: 0; height: 100%; max-width: 6000px; }

.slider.slider-video .nk-awb { height: 100%; width: 100%; display: flex; align-items: center; }
.slider.slider-video .nk-awb p { width: 0; }
.slider.slider-video .nk-awb .awb_content { width: 100%; padding: 0 2em; box-sizing: border-box; }
.slider.slider-video .nk-awb .awb_content p { width: auto; }
.slider.slider-video .hero-content-wrapper { position: absolute; bottom: 10em; width: 100%; }
.slider.slider-video .hero-content-wrapper .inside { margin: 0 auto; max-width: 1420px; padding: 0 3em; }

.slider.vh100:after { display: block; width: 64px; height: 64px; content: ""; background-image: url(images/arrow-down.gif); background-size: 100% auto; background-position: center center; background-repeat: no-repeat; position: absolute; bottom: 50px; left: calc(50% - 32px); z-index: 2; }


/* === BANNER === */


.banner { position: relative; height: 70vh; background-color: #000; background-size: cover; background-position: top center; background-repeat: no-repeat; }
.banner-overlay { display: none; position: absolute; bottom: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.25); background-image: url(); background-size: 100% 100%; background-repeat: no-repeat; }


/* === MAIN === */


.pagecontent, .inclcontent { box-sizing: border-box; }
.inclcontent.vh25 { min-height: 25vh; }
.inclcontent.vh50 { min-height: 50vh; }
.inclcontent.vh75 { min-height: 75vh; }
.inclcontent.vh100 { min-height: 100vh; }


/* === COLUMNS === */


.columns { width: calc(100% + 2em); height: 100%; position: relative; flex-wrap: wrap; display: flex; padding-top: 4em; padding-bottom: 2em; margin-left: -1em; }
.columns+.columns { padding-top: 0; }

.columns:first-of-type { padding-top: 0; }
.columns:last-of-type { padding-bottom: 0; }

.columns.black-line-top { border-top: 1px solid #000; padding-top: 2.5em; margin-top: 1em; }
.columns.black-line-bottom { border-bottom: 1px solid #000; margin-bottom: 2.5em; }
.columns.white-line-top { border-top: 1px solid #fff; padding-top: 2.5em; margin-top: 1em; }
.columns.white-line-bottom { border-bottom: 1px solid #fff; margin-bottom: 2.5em; }

.clmn { box-sizing: border-box; float: left; margin-left: 1em; margin-right: 1em; padding: 2em; }
.clmn.transparent { padding: 0; }

.clmn .clmn-content { position: relative; }

.clmn.col20 { width: calc(20% - 2em); }
.clmn.col25 { width: calc(25% - 2em); margin-left: 1em; margin-right: 1em; }
.clmn.col33 { width: calc(33.333333% - 2em); margin-left: 1em; margin-right: 1em; }
.clmn.col50 { width: calc(50% - 2em); }
.clmn.col60 { width: calc(60% - 2em); }
.clmn.col67 { width: calc(67% - 2.3em); }
.clmn.col75 { width: calc(75% - 2em); }
.clmn.col80 { width: calc(80% - 2em); }
.clmn.col100 { width: calc(100% - 2em); }

#header .columns { }
#header .columns .clmn { margin-left: 0; }
#header .columns .clmn.col20 { width: 20%; }
#header .columns .clmn.col60 { width: 60%; }

.clmn.col_align_left { /*margin-left: 0;*/ }
.clmn.col_align_center { margin: 0 auto; }
.clmn.col_align_right { float:right; margin-left: auto;}

.clmn.align-center ul li { text-align: left; }

.clmn img { width: 100%; height: auto; }

.section-header + .columns { padding-top: 0; }


/* --- CUSTOM COLUMN STYLES --- */


.clmn.icon { text-align: left; }
.clmn.icon .clmn-content h3:after { display: none; margin-bottom: 0; }
.clmn.icon img { float: none; width: 125px; height: 125px; margin: 0 auto; margin-bottom: -1em; }

.clmn.highlight-box h3 { font-size: 1.75em; color: #0e2056; margin-bottom: 3em; }
.clmn.highlight-box p { font-size: .9em; color: #636363; }

.numbers { width: 100%; height: auto; overflow: hidden; display: flex; }
.numbers.two-columns { }
.numbers.two-columns .number-item { float: left; width: 50%; }
.numbers.three-columns { }
.numbers.three-columns .number-item { float: left; width: 33.3333%; }
.numbers.four-columns { }
.numbers.four-columns .number-item { float: left; width: 25%%; }
.number-item { display: block; text-align: left; margin: .5em .5em .5em .5em; padding: 1em; box-sizing: border-box; border: 1px solid #fff; }
.number-item .number { font-size: 3.0em; color: #fff; margin-bottom: .5em; }
.number-item .description, .number-item p { color: rgba(255,255,255,0.8) !important; font-size: 1em; }

.numbers.numbers-darkblue .number-item { border: 1px solid #0e2056; }
.numbers.numbers-darkblue .number-item .number { color: #0e2056; }
.numbers.numbers-darkblue .number-item .description, .numbers.numbers-darkblue .number-item p { color: #0e2056 !important; }

.numbers.numbers-blue .number-item { border: 1px solid #1941f5; }
.numbers.numbers-blue .number-item .number { color: #1941f5; }
.numbers.numbers-blue .number-item .description, .numbers.numbers-blue .number-item p { color: #1941f5 !important; }

.numbers.numbers-white .number-item { border: 1px solid #fff; }
.numbers.numbers-white .number-item .number { color: #fff; }
.numbers.numbers-white .number-item .description, .numbers.numbers-white .number-item p { color: rgba(255,255,255,0.8) !important; }


/* === TEASER-BOXES === */


.clmn.teaser-item { position: relative; height: auto; margin-bottom: 2em; transition: all .2s ease; overflow: hidden; }
.clmn.teaser-item:hover { transform: scale(1.03); box-shadow: 3px 6px 20px rgba(0,0,0,0.2); }
.clmn.teaser-item .image { display: block; position: relative; width: 100%; height: auto; z-index: 0; }
.clmn.teaser-item .image img { display: block; width: 100%; height: auto; }
.clmn.teaser-item .box { position: absolute; left: 1em; right: 1em; bottom: 1em; z-index: 1; padding: 2em 2em 2em 2em; box-sizing: border-box; transition: all .2s ease; background-color: rgba(255,255,255,0.70); backdrop-filter: saturate(180%) blur(20px); }
.clmn.teaser-item .box a { width: 100%; height: 100%; text-decoration: none; }
.clmn.teaser-item .box h3 { margin-top: 0; font-size: 1.3em; color: #0e2056; }
.clmn.teaser-item .box p { position: relative; color: #0e2056; font-size: 0.9em; line-height: 1.2; width: 100%; margin-bottom: 0; height: auto; opacity: 1; transition: all .2s ease; }
.clmn.teaser-item .box a.button { display: inline-block; width: auto; }
.clmn.teaser-item .nk-awb { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }


/* === IMAGE FORMATS === */


img.icon { display: block; width: 50px; height: 50px; margin-top: 2em; }
.align-center img { margin: 0 auto; }

.gallery { text-align: center; }
.gallery .gallery-item { float: none !important; display: inline-block !important; box-sizing: border-box; padding: 20px; padding-top: 0; }
.gallery .gallery-item img { border: none !important; }
.gallery.gallery-columns-2 .gallery-item { margin-left: 10px; margin-right: 10px; padding-left: 0; padding-right: 0; width: calc(50% - 20px) !important; }


/* === SOCIAL ICONS === */


ul.social-icons { display: block; list-style-type: none; margin-bottom: 2.5em; }
ul.social-icons li { display: inline-block; margin: 0; padding: 0; }
ul.social-icons li:before { display: none; }
ul.social-icons li a { display: block; width: 36px; height: 36px; font-size: 0px; margin: 0 8px; background-position: center center; background-size: 100% auto; background-repeat: no-repeat; }
ul.social-icons li:first-of-type a { margin-left: 0; }
ul.social-icons li:last-of-type a { margin-right: 0; }
ul.social-icons li a:hover { transform: scale(1.2); }
ul.social-icons li a.facebook { background-image: url(images/icon_socials_facebook_black.svg); }
ul.social-icons li a.instagram { background-image: url(images/icon_socials_instagram_white.svg); }
ul.social-icons li a.linkedin { background-image: url(images/icon_socials_linkedin_black.svg); }
ul.social-icons li a.youtube { background-image: url(images/icon_socials_youtube_black.svg); }
ul.social-icons li a.web { background-image: url(images/icon_socials_web_black.svg); }


/* === ARTICLES OVERVIEW === */


.blog-title { display: block; float: left; width: 100%; padding-top: 8em; }
.blog-title .inside { padding: 1em 80px; }

section.bloglist { clear: left; border-left: none; }
section.bloglist .inside { padding: 0 80px; }

#blog-overview { padding: 0; margin: 0; width: 100%; }
#blog-overview h1 { padding-left: 1em; margin-top: 1em; margin-bottom: 0; }

#blog-overview .item { position: relative; padding: 0; margin: 0 0 1.5em; background-color: #f1f1f1; width: calc(50% - 1em); }
#blog-overview .item:nth-of-type(odd) { clear: left; }
#blog-overview .item:nth-of-type(even) { margin-left: 2em; }
#blog-overview .item h3  { color: #252627; }
#blog-overview .item p { color: rgba(0,0,0,0.75); }
#blog-overview .item:hover h3, #blog-overview .item:hover p { color: #000; }
#blog-overview .item .button:hover { background-color: #252627; cursor: pointer; }

#blog-overview .clmn.item .meta { position: absolute; top: 0; left: 0; box-sizing: border-box; padding: 1em; background-color: #252627; color: #fff; font-size: .8em; }

#blog-overview .clmn.item .image { position: relative; overflow: hidden; margin-bottom: 2em; padding: 0; margin: 0; width: 100%; }
#blog-overview .clmn.item .text { padding: 1.5em; box-sizing: border-box; }
#blog-overview .clmn.item h3 { margin-bottom: 0.5em; margin-top: 1em; line-height: 1.2; }
#blog-overview .clmn.item .excerpt { font-size: .9em; line-height: 1.5; }

#blog-sidebar { padding-top: 4.5em; }
#blog-sidebar .sidebar-widget { width: 100%; float: left; display: block; margin-bottom: 2em; padding-bottom: 2em; border-bottom: 2px dotted #8da67f; }
#blog-sidebar h3 { text-transform: none; font-size: 1.5em; }


/* === BLOG ARTICLES === */


#banner + article#main { margin-top: 0; overflow: visible; }
section.blogcontent { margin-top: 4em; margin-bottom: 4em; }
section.blogcontent .inside { padding: 0 80px; }
section.blogcontent h1 { text-align: center; line-height: 1.2; padding-bottom: 0.2em; max-width: 60%; margin: 0 auto; }
section.blogcontent h2 { font-size: 2.0em; }
section.blogcontent h3 { font-size: 1.5em; margin-top:1em; }


/* === GLOSSARY PAGE === */


.glossar-title { background-color: #f0f0f1; padding-top: 9em; color: #000; }
.glossar-item { display: block; height: auto; overflow: hidden; border-bottom: 1px solid #1941f5; padding: 2em 0; color: #000; }
.glossar-item h3 { color: #000; margin-bottom: 0; }


/* — SIDEBAR —— */


.blogcontent .aside.col25 { width: calc(25% - 2em); padding: 0 2em; }

.blogcontent .aside .sidebar-widget {display:block; margin-bottom: 2em; padding-bottom: 2em; border-bottom: 1px solid #e3ebde; }
.blogcontent .aside .sidebar-widget h3 { text-transform: none; font-size: 1.3em; }
.blogcontent .aside .sidebar-widget h3:after {display: none !important; }
.blogcontent .aside .sidebar-widget p { font-size: 16px; font-size: 1.6rem; line-height: 1.6; }
.blogcontent .aside .sidebar-widget iframe { max-width: 100% !important; }
.blogcontent .aside .sidebar-widget ul li { margin-left: 0; padding-left: 0; font-size: 0.9em; line-height: 1.2 !important; margin-bottom: 1em; }
.blogcontent .aside .sidebar-widget ul li:before { display: none; }
.blogcontent .aside .sidebar-widget a { color: #cb0819; }
.blogcontent .aside .sidebar-widget a:hover { color: #f8283a; }


/* --- TESTIMONIAL SLIDER --- */


.cbp-fwslider { position: relative; margin: 0 0 10px; padding: 0 0 20px; display: block; height: auto; /* overflow: hidden; */ margin-top: 0; }
.cbp-fwslider ul { margin: 0; padding: 0; white-space: normal; list-style-type: none; }
.cbp-fwslider ul li { transform: translateZ(0); float: left; display: block; }
.cbp-fwslider ul li { text-align: center !important; font-size: 1.5em; }
.cbp-fwslider ul li span.small { font-size: .5em; }
.cbp-fwslider ul li:before { display: none; }
.cbp-fwslider nav { display: none; }
.cbp-fwslider nav span { position: absolute; top: 50%; width: 50px; height: 100px; background: transparent; text-align: center; margin-top: -50px; line-height: 100px; cursor: pointer; }
.cbp-fwslider nav span:hover { color: #fff; background: transparent; }
.cbp-fwslider nav span.cbp-fwnext { right: 0; }
.cbp-fwslider nav span.cbp-fwprev { left: 0; }
.cbp-fwdots { position: absolute; bottom: -10px; left: 0; white-space: nowrap; text-align: center; width: 100%; }
.cbp-fwdots span { display: inline-block; width: 8px; height: 8px; background: rgba(0,0,0,0.3); margin: 4px; border-radius: 50%; cursor: pointer; }
.cbp-fwdots span:hover { background: #000; }
.cbp-fwdots span.cbp-fwcurrent { background: #fff; box-shadow: 0 0 0 0px #fff; transition: box-shadow 0.2s ease-in-out; }


/* === TABELLEN === */


table { width: 100%; margin-top: 2em; margin-bottom: 2em; overflow: hidden !important; }
table tbody, table tbody tr { width: 100%; }
table.lines tbody tr { border-bottom: 1px solid #fff; }

table tbody tr:nth-of-type(odd) { }
table tbody tr:nth-of-type(even) { }
table tbody tr td { padding: .5em 0; box-sizing: border-box; }

table.checkmarks tr td { background-image: url(images/checklist-icon_blue.svg); background-size: auto 40%; background-position: center left; background-repeat: no-repeat; padding-left: 40px; box-sizing: border-box; }


/* === LISTEN STYLES === */


ul.two-columns { column-count: 2; column-gap: 3em; }
ul.two-columns li { width: 100%; }

ul.three-columns { column-count: 3; column-gap: 3em; }
ul.three-columns li { width: 100%; }

ul.large-number-list {  }
ul.large-number-list li { margin: 0 0 1em 0; padding: 0 0 1em 2em; border-bottom: 1px solid #666; }
ul.large-number-list li:last-of-type { margin-bottom: 0; padding-bottom: 0; border-bottom: none; }
ul.large-number-list li:before { display: none; }
ul.large-number-list li h4 { margin-bottom: 0; padding-bottom: 0; }
ul.large-number-list li h4 span.number { margin-left: -1.3em; }

ul.checklist li { float: left; margin: 1em 0 0 1.2em; text-align: left; padding-left: 1em; }
ul.checklist li:before { content: ""; position: absolute; color: #cb0819; left: -1em; top: 4px; font-size: 1.3em; background-image: url(images/checklist-icon_blue.svg); background-position: center center; background-repeat: no-repeat; width: 1em; height: 1em; }
ul.checklist.white-bullets li:before { color: #fff; background-image: url(images/checklist-icon_white.svg); }

ul.arrowlist li { margin: 1em 0 0 1.5em; text-align: left; }
ul.arrowlist li:before { content: url('images/list-arrow_blue.svg'); position: absolute; left:-1em; margin-top: -3px; width: .8em; height: .8em; }
ul.arrowlist.white-arrows li:before { content: url('images/list-arrow_white.svg'); }

ul.questionlist li { margin: 1em 0 0 1.2em; }
ul.questionlist li:before { content: "?"; position: absolute; color: #cb0819; left: -1em; top: 0; font-size: 1.3em; }

ul.contentlist { list-style-type: none !important; }
ul.contentlist li { display: block; width: 100%; border-bottom: 1px solid #E9EDFA; margin-left: 0; margin-bottom: 1.5em !important; padding-left: 0; padding-bottom: 1.3em; }
ul.contentlist li:before { display: none; }
ul.contentlist li:last-of-type { border-bottom: none; margin-bottom: 0; }

ul.tag-list li { display: inline-block; margin: 2px; margin-bottom: 2px; border-radius: 30px; background-color: rgba(0,0,0,0.1); color: inherit; padding: .4em 1.4em; }
ul.tag-list li:before { display: none; }

ul.contactlist li { margin: 0; padding: 1em 0; text-align: left; border-bottom: 1px solid #0e205636; }
ul.contactlist li:before { display: none; }
ul.contactlist span.department { display: inline-block; width: 40%; color: #bbbbbb; text-transform: uppercase; }


/* === FOOTER === */


#bottom { background-color: #0e2056; position: relative; font-size: 1em; color: #fff; padding: .5em 0; display: block; float: left; width: 100%; height: auto; overflow: hidden; }
#bottom .inside { padding-top: 0; padding-bottom: 0; }
#bottom .columns { width: 100%; margin-left: 0; padding: 2em 0 0; }
#bottom .clmn { margin-left: 2.5%; margin-right: 2.5; padding-bottom: 0; }
#bottom .clmn.col25 { width: 19%; }
#bottom .clmn.col33 { width: 28%; }
#bottom .clmn.col100 { width: 100%; padding: 0; margin: 0; }

#bottom .footer-widget { margin-bottom: 2em; text-align: left; }
#bottom .footer-widget h3 { font-size: 1.5em; padding-bottom: 1em; color: #fff; }
#bottom .footer-widget p { color: #fff; margin-bottom: 0; }
#bottom .footer-widget ul li { margin-bottom: 0 !important; }
#bottom .footer-widget ul li a { display: block; padding: 0.3em 0; }
#bottom .footer-widget img { max-width: 50% !important; }
#bottom a, #bottom .footer-widget a { color: #1941f5; }
#bottom a:hover, #bottom .footer-widget a:hover { color: #fff; text-decoration: none; }

#bottom .col100 .footer-widget { text-align: center; margin-bottom: 2em; }
#bottom .col100 .footer-widget img { max-width: 5000px; width: auto; max-height: 50px; }

#bottom .glossary-bar { text-align: center; padding-top: 2em; margin-top: -2em; border-top: 1px solid #fff; }
#bottom .glossary-bar h3 { display: none; }
#bottom .glossary-bar a { color: #fff; display: inline-block;
padding: 0 .65em 0 0.85em; border-left: 1px solid rgba(255,255,255,0.5); font-size: .9em !important; }
#bottom .glossary-bar a:first-of-type { border-left: none; }


/* === ARCONIX FAQ CUSZOMIZATION === */


h3.arconix-faq-term-title { display: none !important; }

.ui-widget { font-family: inherit; font-size: 1.5em !important; width: 100%; }
.ui-accordion .ui-accordion-header { color: #000; border: none; border-top: 1px solid rgba(0,0,0,0.1); background-color: #fff !important; padding: 1em 0 1em 1.5em !important; font-family: 'host_grotesk', sans-serif; font-weight: normal; font-size: .8em !important; }
.ui-accordion .ui-accordion-header.ui-state-active { color: #1941f5 !important; }
.arconix-faq-accordion-title.ui-accordion-header span.ui-icon { background-image: url(images/arconix_icon_plus.svg) !important; margin-top: -7px; left: -1em !important; right: 0; width: 30px; height: 30px; background-position: center center; background-size: 100%; }
.arconix-faq-accordion-title.ui-accordion-header.ui-accordion-header-active .ui-icon { background-image: url(images/arconix_icon_minus.svg) !important; }

.ui-widget-content { position: relative; border: none; background-color: #fff !important; font-family: 'host_grotesk', sans-serif; font-weight: normal; line-height: 1.6rem; color: #636363; margin-top: 10px; background-image: none !important; }
.ui-accordion .ui-accordion-content { padding: 1em 2.5em !important; overflow: visible; border: none; }
.arconix-faq-accordion-content h3 { margin-bottom: 1em; }
.arconix-faq-accordion-content p { font-size: 16px; font-size: 1.6rem; line-height: 1.6; }
.arconix-faq-accordion-content p a {  }
.arconix-faq-accordion-content p a:hover {  }
.arconix-faq-accordion-content li:before { color: #000; }
.arconix-faq-accordion-content table { width: auto; margin-top: 0; margin-bottom: 0; font-size: 0.6em; }
.arconix-faq-accordion-content table tbody tr { background-color: transparent; }


/* === COLLAPSE-O-MATIC === */


.clmn .collapseomatic { display: block; padding: 0 25px 0 0 !important; width: 100%; background-position: center right; background-image: url('images/collapsomatic-plus.png'); background-repeat: no-repeat; background-size: auto 70%; font-size: 1.2em; font-family: inherit; }
.clmn .colomat-close { background-image: url('images/collapsomatic-minus.png'); }
.clmn .collapseomatic:hover { text-decoration: none; }
.clmn .collapseomatic_excerpt, .collapseomatic_content { float: left; margin-left: 0 !important; margin-top: -1em !important; }
.clmn .collapseomatic_content + h3 { margin-top: 2em; }

.clmn.icon .collapseomatic { padding: 0 24px 0 0 !important; }


/* === CONTACT FORM 7 CUSTOMIZATION == */


.wpcf7 { width: 100%; display: block; height: auto; }
.wpcf7 br { display: none; }
.wpcf7 .wpcf7-form { width: 100%; }
.wpcf7 input, .wpcf7 textarea { background-color: #fff; font-size: 1em; border: none; padding: .6em 1.2em; margin-bottom: 1em; color: #000; }
.wpcf7 textarea { height: 150px; }

.wpcf7 .full-width { float: left; width: 100%; }
.wpcf7 .half-width { float: left; width: 49%; margin-left: 2%; }
.wpcf7 .half-width-first { float: left; width: 49%; margin-left: 0; }

.wpcf7 .wpcf7-checkbox { float: left; width: 100%; margin-bottom: 1em; }
.wpcf7 .wpcf7-checkbox .wpcf7-list-item { margin: .6em 0 0 0; width: 50%; }

.wpcf7 .wpcf7-acceptance { float: left; width: 100%; }
.wpcf7 .wpcf7-acceptance .wpcf7-list-item { float: left; width: 100%; margin: 0; }
.wpcf7 .wpcf7-acceptance input { float: left; display: inline-block; width: auto; }
.wpcf7 .wpcf7-acceptance .wpcf7-list-item-label { float: left; display: inline-block; font-size: .75em; width: 92%; margin-left: 12px; line-height: 1.4; margin-bottom: 1em; }

.wpcf7 .button { background-color: #1941f5; color: #fff; border: none; transition: all .2s ease-in-out; }
.wpcf7 .button:hover { }

.wpcf7 ::placeholder { color: #000; }


/* === WP SHOW POSTS CUSTOMIZATION === */


section.wp-show-posts { height: auto; padding-bottom: 0em !important; }

.wp-show-posts-columns { margin-bottom: 2em; }

.wp-show-posts-single { transition: all .2s ease-in-out; }
.wp-show-posts-single:hover { transform: scale(1.03); }
.wp-show-posts-single:hover .wp-show-posts-inner { }

.clmn.transparent .wp-show-posts-inner { background-color: #f6f5f6; transition: all .2s ease-in-out; }
.clmn.white .wp-show-posts-inner { background-color: #f6f5f6; transition: all .2s ease-in-out; }
.clmn.lightgrey .wp-show-posts-inner { background-color: #fff; }
.clmn.black .wp-show-posts-inner { background-color: rgba(255,255,255,0.1); }
.clmn.darkblue .wp-show-posts-inner { background-color: rgba(255,255,255,0.1); }
.clmn.blue .wp-show-posts-inner { background-color: rgba(255,255,255,0.1); }

.wp-show-posts-inner .wp-show-posts-image { margin: 0; }
.wp-show-posts-inner .wp-show-posts-entry-header { padding: 1.5em; margin: 0; }
.wp-show-posts-inner .wp-show-posts-entry-title { position: relative; text-align: left; color: #000; font-size: 1.2em; }
.wp-show-posts-inner .wp-show-posts-entry-title a { color: #000; }
.wp-show-posts-inner .wp-show-posts-entry-title:after { display: none; }
.wp-show-posts-inner .wp-show-posts-entry-meta a { display: block; position: relative; color: #cb0819; text-align: left; margin-top: -.5em; }
.wp-show-posts-inner .wp-show-posts-entry-summary { position: absolute; bottom: 0; right: 10px; padding: 1.5em; padding-top: 0; margin-bottom: 0; text-align: left; font-size: 1em; color: #fff; }
.wp-show-posts-inner .wpsp-read-more { text-align: left; float: left; margin: 1.5em !important; margin-top: 0 !important; }
.wp-show-posts-inner .wpsp-read-more a { text-align: left; margin: 0; padding: 0; font-size: .9em; border: none; text-shadow: none; color: #cb0819; }
.wp-show-posts-inner .wpsp-read-more a:hover { border: none; transform: none; background-color: transparent; }
.wp-show-posts-inner a.wp-show-posts-read-more, .wp-show-posts-inner a.wp-show-posts-read-more:visited { color: #cb0819; }
.wp-show-posts-inner a.wp-show-posts-read-more:hover { color: #000; }


/* === POPUPS === */


.logo-grid { width: 100%; display: flex; margin-bottom: 1em; margin-top: -1em; }
.logo-grid.two-columns a { display: flex; width: 48%; margin-left: 1%; margin-right: 1%; padding: .5em 2em; box-sizing: border-box; align-items: center; background-color: #f2f2f2; border-radius: 6px; transition: all .2s ease; }
.logo-grid.two-columns a:hover { transform: scale(1.05); }
.logo-grid.two-columns a img { width: 100%; height: auto; }


/* === COOKIE NOTICE === */


#cookie-notice { bottom: 10px; left:10px !important; right:10px !important; box-shadow: 0 10px 20px rgba(0,0,0,0.3); min-width:90% !important;  }
span#cn-notice-text { display: block; width: 80%; margin: 0 auto; margin-bottom:20px; }
.cn-button.wp-default { color: #fff; background: #000 !important; }
.cn-button.wp-default:hover { color: #fff; background: #000 !important; }


/* === GUTENBERG BLOCKS === */


.wp-block-columns { display: flex; margin-top: 3em; padding-bottom: 3em; border-bottom: 1px solid #dedede; }
.wp-block-columns:last-of-type { border-bottom: none; }
.wp-block-column.block-align-center { margin: 0 auto; }
.wp-block-column ul li { margin-bottom: .5em; }

.wp-block-button { text-align: center; background-color: #000; border: none; }
.wp-block-button:hover { background-color: #000; border: none; }
.wp-block-button__width-100 { width: 100%; }

.wp-block-button a.wp-block-button__link { color: #fff; }

.wp-block-buttons.is-content-justification-center { text-align: center; }


/* === RESPONSIVENESS === */


@media screen and (max-width:1620px) {
	body,
	h2.section-header span.sub-line { font-size: 16px; font-size: 1.6rem; }
	#header .logo { height: 40px; }
	#header .langswitch { margin-top: 20px; }
	#mainmenu ul.menu li { margin-top: 1.4em; }
	.navToggle .bar.two { top: 14px; }
	.navToggle .bar.three { top: 28px; }
	.slider.slider-left .slider-content-wrapper { padding: 4em 4em 4em 4em; }
	.slider.slider-right .slider-content-wrapper { padding: 4em 4em 4em 4em; }
}

@media screen and (max-width:1280px) {
	body,
	h2.section-header span.sub-line { font-size: 15px; font-size: 1.5rem; }
	.inside { padding: 5em 40px; }
}

@media screen and (max-width:1023px) {
	#header { background-position: bottom left; padding-top: 2em; }
	#header .inside { position: relative; float: left; width: 100%; padding: 0 40px; }
	#header .logo, body.scrolling #header .logo { height: 25px; }
	#headermenu ul.menu > li { margin-top: 26px; }
	#headermenu ul.menu > li > a { padding: 0 1em; }
	#header .menu-widgets { right: 70px; }
	#header .langswitch, 
	body.scrolling #header .langswitch { position: absolute; margin-top: 0; top: 25px; right: 85px; }
	
	.navToggle { display: block; position: absolute; z-index: 999; top: 22px; right: 20px; height: 36px; width: 36px; }
	body.scrolling .navToggle { top: 16px; }
	.navToggle .bar { position: absolute; width: 30px; height: 2px; background-color: #000; transition: all .2s ease-in-out;  }
	.navToggle:hover .bar { background-color: #000; }
	.navToggle .bar.one {top: 0; }
	.navToggle .bar.two {top: 10px; }
	.navToggle .bar.three {top: 20px; }
	.navToggle.active .bar { background-color: #000; }
	.navToggle.active:hover .bar { background-color: #000; }
	.navToggle.active .bar.one { transform: rotate(135deg); top: 12px; }
	.navToggle.active .bar.two { visibility: none; opacity: 0; }
	.navToggle.active .bar.three { transform: rotate(45deg); top: 12px; }
	
	#mainmenu { display: block; opacity: 0; width: auto; height: 0; z-index: -1; overflow: hidden; float: right; }
	#mainmenu.open { opacity: 1; height: auto; }

	#mainmenu ul.menu { display: block; box-sizing: border-box; padding: 1em; width: 100%; margin: 0 auto; text-align: right; margin-top: 5em; margin-bottom: 1em; }
	#mainmenu ul.menu > li { display: block; margin-top: 0 !important; margin-bottom: 0; }
	#mainmenu ul.menu > li > a { display: block; font-size: 1.2em; width: 100%; color: #000; padding: 0.5em 0.3em !important; }
	#mainmenu ul.menu > li:hover { background-color: transparent !important; }
	#mainmenu ul.menu > li > a:hover, 
	#mainmenu ul.menu > li.current-menu-item > a, 
	#mainmenu ul.menu > li.current_page_item > a { color: #fff; }
	#mainmenu ul.menu > li > ul.sub-menu { display: block; position: relative; box-shadow: none; }
	#mainmenu ul.menu > li:hover > ul.sub-menu,
	#mainmenu ul.menu > li.current-menu-item > ul.sub-menu,
	#mainmenu ul.menu > li.current-page-ancestor > ul.sub-menu { display: block; }
	#mainmenu ul.sub-menu { background-color: transparent; }
	#mainmenu ul.sub-menu > li > a { text-align: left; border-left: none; padding: 0.2em 1em !important; font-size: 1.2em; }
	#mainmenu ul.sub-menu > li > a:hover { background-color: transparent; }	
	
	#mainmenu ul.menu > li.menu-item-has-children:hover > a { }
	#mainmenu ul.menu > li:hover > ul.sub-menu { background-color: transparent; }
	#mainmenu ul.menu li a:hover { cursor: pointer; }
	
	.slider.slider-video { height: 60vh !important; min-height: 60vh !important; }
	.slider.slider-video .hero-content-wrapper { bottom: 2em; }
	.slider.vh100:after { display: none; }
	
	.banner-overlay { height: 100%; }
	
	section.blogcontent { margin-top: 0; }
	section.blogcontent .inside { padding: 0 40px; }
	section.blogcontent h1 { max-width: 80%; font-size: 2.2em; }
	section.blogcontent h2 { font-size: 1.2em; }
	section.blogcontent .wp-block-columns { display: block; }
	
	section.bgimg, .bgimg.fix, .parallax { background-attachment: scroll; }
	
	.inside { padding-left: 40px; padding-right: 40px; }
	.slider.slider-right .slider-content-wrapper { padding: 2em; }
	.inclcontent ol li { padding: 0 0 0 80px !important; min-height: 90px; }
	.inclcontent ol li::before { width: 70px; height: 70px; line-height: 70px; }
	h2 + h2 { margin-top: -0.7em; }
	em { padding-top: 70px; background-size: 60px auto; }
	.icon img { width: 80px; height: 80px; margin-bottom: 1em; }
	.gallery .gallery-item { width: 33% !important; padding: 0 25px !important; }
}

@media screen and (max-width:640px) {
	body,
	h2.section-header span.sub-line { font-size: 15px; font-size: 1.5rem; }
	.hide-mobile { display: none; }
	.show-mobile { display: block; }
	#header .inside { padding-left: 20px; padding-right: 20px; }
	#header .logo,
	body.scrolling #header .logo { height: 25px !important; margin: 18px 0; margin-top: 12px !important; }
	#header .langswitch,
	body.scrolling #header .langswitch { top: 16px; right: 70px; }
	
	.contact-button { position: fixed; bottom: 20px; right: 15px; width: 50px; height: 50px; }
	
	.navToggle { top: 18px; right: 16px; }
	
	#mainmenu ul.menu { margin-top: 2em; }
	#headermenu { display: none; }
	#header .menu-widgets { right: 64px; top: 10px; }
	#header .menu-widget a.button { padding: 0.5em 1.2em; }
	
	.inside { padding: 3em 20px; }
	
	.vh75 { min-height: 35vh !important; }
	.slider.vh50 { min-height: 60vh !important; }
	.slider.slider-right .slider-content-wrapper { position: relative; width: 100%; box-sizing: border-box; padding: 0; margin: 0; background-image: url(images/slider-overlay.png); background-position: center center; background-size: 100% 100%; }
	.slider.slider-right .slider-image-wrapper { position: absolute; left: 0; width: 100%; margin: 0; }
	.slider .slider-image-wrapper, 
	.slider .slider-content-wrapper { margin-top: 0; }
	.slider .slider-content-wrapper .inside { padding-top: 1em; }
	.slider .slider-content-wrapper.slider-content-left > .inside,
	.slider .slider-content-wrapper.slider-content-right > .inside { padding-left: 0; padding-right: 0; }
	.slider .slider-content-wrapper .inside h1 { font-size: 3em !important; }
	.slider .slider-content-wrapper .inside h2 { font-size: 2.75em; }
	.slider .slider-content-wrapper .inside p { font-size: 1.2em !important; color: #fff !important; line-height: 1.2; margin-bottom: 1em; }
	.slider .slider-content-wrapper .inside h1.small { font-size: 1.3em; }
	.slider .slider-content-wrapper .inside h2.large { font-size: 2.0em; }
	.slider .bjqs-controls { position: relative; width: 80%; padding: 0; top: 87% !important; left: 0 !important; margin-left: 10%; margin-right: 10%; }
	.slider .bjqs-controls li.bjqs-prev { position: absolute; left: 0; }
	.slider .bjqs-controls li.bjqs-next { position: absolute; right: 0; }
	.slider .bjqs-controls li a { opacity: 0.5; }
	.slider .bjqs-controls li a:hover { opacity: 1.0; }
	
	.slider.slider-left .slider-content-wrapper,
	.slider.slider-right .slider-content-wrapper { left: 0; top: 50%; width: 100%; padding: .5em; height: 50%; display: flex; align-items: center; }
	.slider.slider-left .slider-content-wrapper .inside,
	.slider.slider-right .slider-content-wrapper .inside { padding-top: 0; padding-bottom: 0; height: auto; overflow: hidden; }
	.slider.slider-left .slider-content-wrapper .inside .highlight,
	.slider.slider-right .slider-content-wrapper .inside .highlight { border-left: none; padding-left: 0; margin-top: 0; line-height: 1.4; }
	.slider.slider-left .slider-image-wrapper,
	.slider.slider-right .slider-image-wrapper { height: 50%; width: 100%; }
	.slider.slider-left.black .slider-content-wrapper,
	.slider.slider-right.black .slider-content-wrapper { background-color: #000; }
	
	.slider.slider-video { height: 70vh !important; min-height: 70vh !important; }
	.slider.slider-video .slider-content-wrapper,
	.slider.slider-video .slider-content-wrapper .inside { padding: 0; }
	.slider.slider-video .hero-content-wrapper .inside { padding: 0 2em; }
	
	.banner { height: 35vh; margin-top: 50px; }
	
	.button + .button { margin-left: 0; margin-top: 10px; }

	h1.section-header,
	h2.section-header { padding-top: 0; padding-left: 0; padding-right: 0; margin-left: 0; /*margin-top: -0.6em;*/ text-align: left; }
	h2, h2.large { font-size: 2.3em; }
	
	p.larger-text { font-size: 18px; font-size: 1.8rem; }

	.columns { width: 100%; margin: 0 auto; }
	.inclcontent ol li { padding: 0 0 0 80px !important; min-height: 90px; }
	.inclcontent ol li::before { width: 70px; height: 70px; line-height: 70px; }
	.inclcontent .clmn,
	.project-single .clmn,
	.blogcontent .clmn { padding: 0; margin: 0 !important; width: 100%; }
	.inclcontent .clmn.col100,
	.inclcontent .clmn.col80,
	.inclcontent .clmn.col75,
	.inclcontent .clmn.col67,
	.inclcontent .clmn.col50,
	.inclcontent .clmn.col33,
	.inclcontent .clmn.col25,
	.blogcontent .clmn.col75,
	.blogcontent .clmn.col67,
	.blogcontent .clmn.col33,
	.blogcontent .clmn.col25,
	.teaser-item.clmn,
	.inclcontent .clmn.col20 { width: 100%; margin-left: 0; margin-right: 0 }
	.clmn + .clmn { margin-top: 1.5em !important; }
	.clmn.white, .clmn.lightgrey, .clmn.black, .clmn.darkgreen, .clmn.blue, .clmn.lightblue { padding: 1.5em; }

	.clmn.teaser-item { margin-bottom: 1em; }
	.clmn.teaser-item .box {  }

	.inclcontent ol li { padding: 0 0 0 65px !important; min-height: 100px; }
	
	.teaser-box .teaserbox-content { padding: 2em; }
	.teaser-box .teaserbox-content .button { left: 4em; bottom: 4em; }
	.teaser-item { margin: 0; }
	.teaser-item h3 { margin-top: 0 !important; }
	
	.numbers.three-columns { display: block; }
	.numbers.three-columns .number-item { float: left; width: 98%; box-sizing: border-box; }

	section.bloglist .inside { padding: 0 1.2em; }
	section.bloglist .inside .columns { width: 100%; margin-left: 0; }
	section.bloglist .inside .columns .col100 { width: 100%; }
	#blog-overview { margin-left: 0; padding-top: 0; }
	#blog-overview .clmn.col33.item { width: 100%; padding-left: 0; margin-left: 0; border-bottom: 2px dotted rgba(227,235,222,1); padding-bottom: 1.4em; }
	
	.blog-title { padding-top: 6em; }
	.blog-title .inside { padding: 0 1.2em; }
	#blog-overview .clmn.item { width: 100%; margin-left: 0; }
	#blog-overview .clmn.item h3 { font-size: 1.2em; text-align: left; margin: 0; }
	#blog-overview .clmn.item .text { padding: 1em; margin: 0; }
	#blog-overview .clmn.item .meta { font-size: .8em; margin-bottom: 1.5em; text-align: center; }
	#blog-overview .clmn.item .excerpt { font-size: 1em; line-height: 1.6; }
	#blog-overview .clmn.item .readmore .button { text-align: center; }
	
	.gallery .gallery-item { width: 33% !important; padding: 0px 10px !important; }
	.gallery br { display: none !important; }

	.wpcf7 .full-width,
	.wpcf7 .half-width, 
	.wpcf7 .half-width-first { width: 100%; margin-right: 0; }
	.wpcf7 .wpcf7-checkbox .wpcf7-list-item { width: 100%; }
	
	article#main section:last-of-type { padding-bottom: 8em; }
	#bottom-title { margin-top: -8em; margin-bottom: -5px; }
	#bottom-title .footer-title { font-size: 1.6em; margin-top: 2em; }
	
	#bottom-title { background-size: 160% 100%; }
	#bottom .inside { padding-left: 0; padding-right: 0; }
	#bottom .columns { padding-bottom: 0; }
	#bottom .clmn.col33, 
	#bottom .clmn.col25 { width: 100%; box-sizing: border-box; padding: 0 40px; margin: 0 !important; }
	#bottom .clmn .footer-widget { }
	#bottom .clmn .footer-widget img { width: 100%; height: auto; margin: 0 auto; }
	#bottom .footer-widget h3 { font-size: 1em; text-align: left; }
	#bottom .footer-widget p { font-size: 1em; }
	#bottom .footer-widget ul li { text-align: left; }
	#bottom .col100 .footer-widget img { width: auto; max-height: 30px; }
	
	.arconix-faq-accordion-title.ui-accordion-header span.ui-icon { display: none !important; }
	.ui-accordion .ui-accordion-header { padding: 1em !important; }
	.ui-accordion .ui-accordion-content { padding: 1em !important; }
		
}
