/*
Theme Name:Vita Arborea
Theme URI: http://www.projektvenice.com
Author: Projekt Venice GmbH
Author URI: http://www.projektvenice.ch/
Description: Venice Template
Version: 4.1
Text Domain: venice_lang
License: all rights reserved @ projektvenice.com
License URI: projektvenice.com
*/
@import url(https://use.typekit.net/bup8hwu.css);
@import url("https://fonts.googleapis.com/css2?family=Source+Sans+Pro:ital,wght@0,200;0,300;0,400;0,600;0,700;0,900;1,200;1,300;1,400;1,600;1,700;1,900&display=swap");
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font: inherit; font-size: 100%; vertical-align: baseline; }

html { line-height: 1; }

ol, ul { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; }

caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }

q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; }

a img { border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }

/* Functions
-------------------------------------------------------------- */
/* =Mixin REM TO PX
-------------------------------------------------------------- */
/* =Mixin Button
-------------------------------------------------------------- */
/* =Basic Elements
-------------------------------------------------------------- */
#page { position: relative; padding-bottom: 500px; color: #5ac42f; background: linear-gradient(#ffffff, #cdbb7d); min-height: 100vh; overflow: hidden; font-family: 'Source Sans Pro', sans-serif; text-transform: none; font-weight: normal; color: #000; font-size: 1.313rem; line-height: 2rem; font-style: normal; text-decoration: none; }
#page a { font-family: 'Source Sans Pro', sans-serif; text-transform: none; font-weight: normal; color: #2a3425; font-size: 1.125rem; line-height: 1.375rem; font-style: normal; text-decoration: none; }

i { font-family: "FontAwesome" !important; }

body, html { height: 100%; margin: 0; padding: 0; width: 100%; }

.row { max-width: 84.375rem; }

/* =Kontakt Alert
-------------------------------------------------------------- */
.panel.success { color: #3c763d; background-color: #dff0d8; border-color: #d0e9c6; }

.panel.error { color: #a94442; background-color: #f2dede; border-color: #ebcccc; }

.panel { padding: 15px; margin-bottom: 1rem; border: 1px solid transparent; border-radius: .25rem; }

/*! Pushy - v1.0.0 - 2016-3-1
* Pushy is a responsive off-canvas navigation menu using CSS transforms & transitions.
* https://github.com/christophery/pushy/
* by Christopher Yee */
#header-mobile { display: none; height: 80px; }
#header-mobile a { display: block; position: absolute; top: 5px; left: 20px; height: 70px; }
#header-mobile a img { width: 200px; height: auto; }
#header-mobile .menu-btn { position: absolute; top: 25px; right: 20px; font-size: 30px; cursor: pointer; }

/* Menu Appearance */
.pushy { position: fixed; width: 200px; height: 100%; top: 0; z-index: 9999; background: #191918; overflow: auto; visibility: hidden; -webkit-overflow-scrolling: touch; /* enables momentum scrolling in iOS overflow elements */ }
.pushy a { display: block; color: #b3b3b1; padding: 8px 15px; text-decoration: none; outline: 0; font-family: "Open Sans", sans-serif; font-size: 0.875rem; line-height: 160%; }
.pushy a:hover { color: #FFF; }
.pushy ul { margin: 0; }
.pushy ul:first-child { margin-top: 10px; }
.pushy.pushy-left { left: 0; }
.pushy.pushy-right { right: 0; }
.pushy #lang_sel_list li { display: inline-block; }

/* Menu Movement */
.pushy-left { -webkit-transform: translate3d(-200px, 0, 0); -ms-transform: translate3d(-200px, 0, 0); transform: translate3d(-200px, 0, 0); }

.pushy-open-left #container, .pushy-open-left .push { -webkit-transform: translate3d(200px, 0, 0); -ms-transform: translate3d(200px, 0, 0); transform: translate3d(200px, 0, 0); }

.pushy-right { -webkit-transform: translate3d(200px, 0, 0); -ms-transform: translate3d(200px, 0, 0); transform: translate3d(200px, 0, 0); }

.pushy-open-right #container, .pushy-open-right .push { -webkit-transform: translate3d(-200px, 0, 0); -ms-transform: translate3d(-200px, 0, 0); transform: translate3d(-200px, 0, 0); }

.pushy-open-left .pushy, .pushy-open-right .pushy { -webkit-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

/* Menu Transitions */
#container, .pushy, .push { transition: transform 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99); }

/* Site Overlay */
.site-overlay { display: none; }

.pushy-open-left .site-overlay, .pushy-open-right .site-overlay { display: block; position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 9998; background-color: rgba(0, 0, 0, 0.5); -webkit-animation: fade 500ms; animation: fade 500ms; }

@keyframes fade { 0% { opacity: 0; }
  100% { opacity: 1; } }
@-webkit-keyframes fade { 0% { opacity: 0; }
  100% { opacity: 1; } }
/* Submenu Appearance */
.pushy-submenu { /* Submenu Icon */ }
.pushy-submenu ul { padding-left: 15px; transition: max-height 0.2s ease-in-out; margin: 0; list-style: none; }
.pushy-submenu ul .pushy-link { transition: opacity 0.2s ease-in-out; }
.pushy-submenu > a { position: relative; }
.pushy-submenu > a::after { font-family: FontAwesome; content: '\f105'; display: block; height: 11px; width: 8px; position: absolute; top: 50%; right: 15px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); transition: transform 0.2s; }

/* Submenu Movement */
.pushy-submenu-closed ul { max-height: 0; overflow: hidden; }
.pushy-submenu-closed .pushy-link { opacity: 0; }

.pushy-submenu-open { /* Submenu Icon */ }
.pushy-submenu-open ul { max-height: 1000px; }
.pushy-submenu-open .pushy-link { opacity: 1; }
.pushy-submenu-open a::after { -webkit-transform: translateY(-50%) rotate(90deg); -ms-transform: translateY(-50%) rotate(90deg); transform: translateY(-50%) rotate(90deg); }

.no-csstransforms3d .pushy-submenu-closed ul { max-height: none; display: none; }

#header { position: absolute; top: 0; left: 0; width: 100%; z-index: 1; }
#header #header-logo a img { margin-top: -20px; max-width: 312px; }
#header #top-header { font-size: 1rem; line-height: 1.25rem; padding-top: 10px; text-align: right; color: #FFF; }
#header #top-header .phone::before { content: "\f095"; font-family: fontawesome; margin-right: 7px; color: #8EC23A; }
#header #top-header .mail::before { content: "\f0e0"; font-family: fontawesome; margin-left: 15px; margin-right: 7px; color: #8EC23A; }
#header #top-header .shop::before { content: "\f07a"; font-family: fontawesome; margin-left: 15px; margin-right: 7px; color: #8EC23A; }
#header #top-header .mail a, #header #top-header .shop a { color: #FFF; }
#header .wrapper-bottom-header { position: absolute; top: -45px; left: -50px; width: calc(100% + 100px); padding-top: 220px; background-color: #3D7222; border-bottom: #2A3425 solid 6px; transform: rotate(-2deg); z-index: -1; }
#header .line { position: absolute; top: 0; left: 0; width: 100%; height: 2px; background-color: #3D7222; }
#header #bottom-header { text-align: right; }
#header #bottom-header .page-title { color: #8EC23A; font-family: classico-urw; font-size: 31px; line-height: 42px; font-weight: 600; padding-bottom: 10px; display: block; }
#header #primary-menu { padding-top: 30px; }
#header #primary-menu a { color: #FFF; }
#header #primary-menu .menu { list-style: none; padding: 0; margin: 0; }
#header #primary-menu .menu > .menu-item { position: relative; display: inline-block; }
#header #primary-menu .menu > .menu-item > a { display: block; padding: 15px 20px; text-transform: none; }
#header #primary-menu .menu > .menu-item:hover > a::before, #header #primary-menu .menu > .menu-item.current-menu-item > a::before, #header #primary-menu .menu > .menu-item.current-menu-parent > a::before { content: ''; position: absolute; left: 20px; bottom: 8px; width: calc(100% - 40px); height: 4px; background-color: #8EC23A; }
#header #primary-menu .menu > .menu-item.menu-item-has-children.current-menu-item > a::before, #header #primary-menu .menu > .menu-item.menu-item-has-children.current-menu-parent > a::before { width: calc(100% - 50px); }
#header #primary-menu .menu > .menu-item.menu-item-has-children > a { padding: 15px 30px 15px 20px; }
#header #primary-menu .menu > .menu-item.menu-item-has-children > a::after { content: "\f078"; position: absolute; top: 14px; right: 5px; font-family: fontawesome; }
#header #primary-menu .menu > .menu-item:hover.menu-item-has-children > a::after { content: "\f077"; }
#header #primary-menu .menu > .menu-item:hover > .sub-menu { display: block; }
#header #primary-menu .menu > .menu-item:last-child a { padding-right: 0; }
#header #primary-menu .menu > .menu-item:last-child a::before { width: calc(100% - 20px); }
#header #primary-menu .menu .sub-menu { display: none; position: absolute; top: 50px; left: -40px; min-width: 250px; padding: 50px 40px; background-color: #FFF; list-style: none; border-radius: 16px; z-index: 1; }
#header #primary-menu .menu .sub-menu a { position: relative; font-size: 1.2rem; line-height: 35px; font-weight: 300; color: #000000; z-index: 2; }
#header #primary-menu .menu .sub-menu a::before { content: ''; display: block; position: absolute; left: 0; bottom: 2px; height: 0; background-color: #8EC23A; width: 100%; z-index: -1; transition: .5s; }
#header #primary-menu .menu .sub-menu a:hover::before { height: 12px; }

#slider { position: relative; height: 650px; }
#slider .slider-container, #slider .venice-slider, #slider .slick-list, #slider .slick-track, #slider .image { height: 100%; }
#slider .image { background-position: center; }
#slider .slick-slider { margin-bottom: 0; }
#slider .description { position: absolute; left: 0; bottom: 200px; width: 100%; font-family: 'Source Sans Pro', sans-serif; color: #fff; font-size: 3.813rem; line-height: 4.813rem; font-weight: 600; text-shadow: 0px 0px 6px #000000CC; }
#slider .fa-long-arrow-down { display: none; position: absolute; left: 50%; bottom: 60px; color: #FFF; font-size: 50px; transform: translateX(-50%); animation-name: arrow; animation-duration: 1s; animation-iteration-count: infinite; text-shadow: 0px 0px 10px #00000080; }
#slider .fa-long-arrow-down:hover { cursor: pointer; }

.home #slider { margin-top: 130px; height: calc(100vh - 130px); }
.home #slider .fa-long-arrow-down { display: block; }
.home #slider .description { bottom: 300px; }

@keyframes arrow { 0% { bottom: 60px; }
  50% { bottom: 90px; }
  100% { bottom: 60px; } }
.home #main-content article p { margin-bottom: 40px; }
.home #main-content.row { max-width: 84.375rem; }

#main-content { padding-top: 60px; padding-bottom: 50px; }
#main-content .box { padding: 40px 40px 10px 40px; background: #FFFFFF 0% 0% no-repeat padding-box; box-shadow: 3px 3px 16px #00000029; border-radius: 16px; opacity: 1; }
#main-content h1 { margin-bottom: 36px; }
#main-content h2 { margin-bottom: 36px; }
#main-content h3 { margin-bottom: 14px; }
#main-content ul { list-style: none; margin-left: 0; }
#main-content ul li { position: relative; padding-left: 30px; line-height: 2rem; }
#main-content ul li::before { content: ''; display: block; position: absolute; top: 8px; left: 0; height: 10px; width: 10px; border-radius: 50%; background-color: #000; }
#main-content a { position: relative; font-family: 'Source Sans Pro', sans-serif; text-transform: none; font-weight: normal; color: #2a3425; font-size: 1.125rem; line-height: 1.375rem; font-style: normal; text-decoration: none; z-index: 1; }
#main-content a::before { content: ''; display: block; position: absolute; left: 0; bottom: 2px; height: 7px; background-color: #58C42C75; width: 100%; z-index: -1; transition: .5s; }
#main-content a:hover::before { height: 13px; }
#main-content .button, #main-content .wp-block-button a { font: normal normal normal 21px/32px Source Sans Pro; text-align: center; color: #FFFFFF; padding: 12px 18px; border: 1px solid #FFFFFF; box-shadow: 0px 3px 16px #00000029; transition: .5s; background: #3D7222 0% 0% no-repeat padding-box; padding: 7px 22px; border-radius: 16px; }
#main-content .button::before, #main-content .wp-block-button a::before { display: none; }
#main-content .button:hover, #main-content .wp-block-button a:hover { color: #FFFFFF; background-color: #5AC42F; }
#main-content .wp-block-gallery .wp-block-image img { box-shadow: 3px 3px 16px #00000029; border-radius: 16px; }

#main-content article a { display: inline-block; }

.archive-page#main-content h1, #kurs-head h1, #kurs-list h1 { font: normal normal 600 46px/58px Source Sans Pro; color: #3D7222; }
.archive-page#main-content h2, #kurs-head h2, #kurs-list h2 { font: normal normal 600 40px/50px Source Sans Pro; color: #3D7222; margin-top: 47px; }
.archive-page#main-content label, #kurs-head label, #kurs-list label { font: normal normal 600 23px/25px Source Sans Pro; color: #000000; }
.archive-page#main-content .entry-content, #kurs-head .entry-content, #kurs-list .entry-content { font: normal normal normal 21px/27px Source Sans Pro; color: #000000; margin-bottom: 24px; }
.archive-page#main-content .entry-image img, #kurs-head .entry-image img, #kurs-list .entry-image img { border-radius: 16px; border: 1px solid #FFFFFF; box-shadow: 0px 3px 16px #00000029; }
.archive-page#main-content article, #kurs-head article, #kurs-list article { padding-top: 82px; padding-bottom: 73px; border-bottom: 1px solid #707070; }
.archive-page#main-content article:first-child, #kurs-head article:first-child, #kurs-list article:first-child { padding-top: 36px; }
.archive-page#main-content #special-spacing .columns, #kurs-head #special-spacing .columns, #kurs-list #special-spacing .columns { padding: 0.9375rem; }

.singel-post#main-content a.back { position: relative; padding-left: 46px; }
.singel-post#main-content a.back::before { width: calc(100% - 40px); left: 40px; }
.singel-post#main-content a.back::after { content: "\f060"; position: absolute; top: 0; left: 0; font-family: fontawesome; }
.singel-post#main-content .entry-info span { position: relative; display: block; padding-left: 45px; }
.singel-post#main-content .entry-info span::before { content: ""; position: absolute; top: 0; left: 0; font-family: fontawesome; font-size: 2rem; color: #3D7222; }
.singel-post#main-content .entry-info .address::before { content: "\f041"; }
.singel-post#main-content .entry-info .pdf::before { content: "\f1c1"; }
.singel-post#main-content .entry-info .kursnummer::before { content: "\f187"; }
.singel-post#main-content .entry-info .date::before { content: "\f133"; }
.singel-post#main-content .entry-title h1 { text-align: center; margin-top: 49px; margin-bottom: 54px; }
.singel-post#main-content .entry-image { margin-bottom: 64px; }
.singel-post#main-content .entry-image img { width: 100%; box-shadow: 0px 3px 16px #00000029; border: 1px solid #FFFFFF; border-radius: 16px; }

.single-kurs article { padding-top: 40px; }

.page-template-kontakt #main-content h1 { font: normal normal 600 46px/58px Source Sans Pro; color: #3D7222; }
.page-template-kontakt #main-content label { font: normal normal normal 21px/32px Source Sans Pro; color: #000; }
.page-template-kontakt #main-content input, .page-template-kontakt #main-content textarea { border: 1px solid #3D7222; border-radius: 12px; margin-top: 0; margin-bottom: 16px; }
.page-template-kontakt #main-content .map iframe { width: 100%; height: 559px; margin-bottom: 55px; box-shadow: 0px 3px 16px #00000029; border: 1px solid #FFFFFF; border-radius: 16px; }
.page-template-kontakt #main-content .button { font: normal normal normal 21px/32px Source Sans Pro; color: #FFFFFF; background: #3D7222 0% 0% no-repeat padding-box; border: 1px solid #FFFFFF; margin-top: 26px; padding: 7px 22px; border-radius: 16px; }
.page-template-kontakt #main-content .button:hover { background-color: #5AC42F; }

#division { margin-bottom: 120px; }
#division .box { position: relative; display: block; width: 100%; height: 420px; background-size: cover; background-position: center; color: #FFFFFF; text-decoration: none; border: 1px solid #707070; border-radius: 16px; box-shadow: 3px 3px 16px #00000029; }
#division .box:hover { text-decoration: none; }
#division .text { display: block; position: absolute; left: 0; bottom: 0; width: 100%; height: 55px; padding: 10px 30px; background-color: #3D7222; border-bottom-left-radius: 16px; border-bottom-right-radius: 16px; transition: .5s; overflow: hidden; }
#division .text h2 { margin-top: 7px; font: normal normal normal 30px/21px Source Sans Pro; color: #FFFFFF; }
#division .text div { margin-top: 24px; font: normal normal normal 21px/27px Source Sans Pro; color: #FFFFFF; transition: 1s; }
#division .text a { color: #FFFFFF; position: absolute; left: 30px; bottom: -80px; transition: .5s; z-index: 1; font-weight: 400; }
#division .text a:hover { color: #FFFFFF; }
#division .text a::before { content: ''; display: block; position: absolute; left: 0; bottom: 2px; height: 7px; background-color: #58C42C75; width: 100%; z-index: -1; transition: .5s; }
#division .text a:hover::before { height: 13px; }
#division .text div, #division .text a { opacity: 0; }
#division .box:hover .text { height: 100%; border-radius: 16px; }
#division .box:hover .text div, #division .box:hover .text a { opacity: 1; }
#division .box:hover .text a { bottom: 80px; }

#news h2, #kurs-list h2 { font: normal normal bold 40px/50px Source Sans Pro; color: #3D7222; }
#news .text-right, #kurs-list .text-right { text-align: right; padding-top: 22px; }
#news .text-right a, #kurs-list .text-right a { color: #3D7222; }
#news .line, #kurs-list .line { width: 100%; height: 2px; margin-bottom: 80px; background-color: #2D4C00; }
#news .item, #kurs-list .item { position: relative; height: 652px; background: #FFFFFF 0% 0% no-repeat padding-box; box-shadow: 3px 3px 16px #00000029; border-radius: 16px; }
#news .item .img, #kurs-list .item .img { width: 100%; height: 270px; background-size: cover; background-position: center; border-top-left-radius: 16px; border-top-right-radius: 16px; border: 1px solid #FFFFFF; }
#news .item .content, #kurs-list .item .content { position: relative; height: calc(100% - 270px); padding: 25px 25px 60px 25px; }
#news .item .date, #news .item .ort, #kurs-list .item .date, #kurs-list .item .ort { position: relative; display: block; font-size: 1.188rem; line-height: 1.625rem; color: #000; padding-left: 30px; }
#news .item .date::before, #news .item .ort::before, #kurs-list .item .date::before, #kurs-list .item .ort::before { position: absolute; top: 0; left: 0; font-family: fontawesome; color: #3D7222; }
#news .item .date::before, #kurs-list .item .date::before { content: "\f133"; }
#news .item .ort::before, #kurs-list .item .ort::before { content: "\f041"; left: 4px; }
#news .item h3, #kurs-list .item h3 { min-height: 59px; margin-top: 17px; margin-bottom: 10px; font-size: 1.438rem; line-height: 1.563rem; color: #000000; font-weight: 600; }
#news .item p, #kurs-list .item p { text-align: left; font-size: 1.313rem; line-height: 1.688rem; letter-spacing: 0px; color: #000000; font-weight: 400; }
#news .item a, #kurs-list .item a { position: absolute; left: 25px; bottom: 25px; font-family: 'Source Sans Pro', sans-serif; text-transform: none; font-weight: 400; color: #000; font-size: 1.313rem; line-height: 1.188rem; font-style: normal; text-decoration: none; z-index: 1; }
#news .item a::before, #kurs-list .item a::before { content: ''; display: block; position: absolute; left: 0; bottom: 2px; height: 7px; background-color: #58C42C75; width: 100%; z-index: -1; transition: .5s; }
#news .item a:hover::before, #kurs-list .item a:hover::before { height: 13px; }

#kurs-head h2 { padding-bottom: 20px; margin-bottom: 50px; border-bottom: 1px solid #000; }
#kurs-head label { margin-bottom: 20px; }
#kurs-head select { height: 60px; width: 340px; border: 2px solid #3D7222; margin-bottom: 70px; }

#team h2 { font-family: classico-urw; text-transform: none; font-weight: 600; color: #5AC42F; font-size: 30px; line-height: 35px; font-style: normal; text-decoration: none; }
#team .team-member { min-height: 550px; background-color: #FFFFFF; border-radius: 16px; font-size: 16px; line-height: 22px; margin: 15px 0; box-shadow: 3px 3px 16px #00000029; }
#team .team-member a { font-size: 16px; line-height: 22px; }
#team .team-member h3 { color: #3D7222; margin-bottom: 5px; font: normal normal 600 30px/25px Source Sans Pro; }
#team .team-member h4 { color: #3D7222; font: normal normal 600 21px/30px Source Sans Pro; }
#team .team-member .img { height: 300px; border-top-left-radius: 16px; border-top-right-radius: 16px; background-position: center; background-size: cover; }
#team .team-member .beschribung { font: italic normal normal 21px/22px Source Sans Pro; margin-top: 13px; margin-bottom: 20px; }
#team .team-member .beruf { margin-top: 20px; margin-bottom: 10px; }
#team .team-member .taetigkeit { margin-bottom: 20px; }
#team .team-member .adresse, #team .team-member .telefonnummer, #team .team-member .mail { position: absolute; left: 20px; bottom: 80px; display: block; font: normal normal normal 21px/30px Source Sans Pro; padding-left: 35px; }
#team .team-member .adresse::before, #team .team-member .telefonnummer::before, #team .team-member .mail::before { content: "\f041"; font-family: fontawesome; position: absolute; top: -2px; left: 6px; font-size: 26px; color: #3D7222; }
#team .team-member .adresse a, #team .team-member .telefonnummer a, #team .team-member .mail a { position: relative; display: inline-block; font: normal normal normal 21px/30px Source Sans Pro; z-index: 2; }
#team .team-member .adresse a::before, #team .team-member .telefonnummer a::before, #team .team-member .mail a::before { content: ''; display: block; position: absolute; left: 0; bottom: 2px; height: 7px; background-color: #58C42C75; width: 100%; z-index: -1; transition: .5s; }
#team .team-member .adresse a:hover::before, #team .team-member .telefonnummer a:hover::before, #team .team-member .mail a:hover::before { height: 13px; }
#team .team-member .telefonnummer { bottom: 50px; }
#team .team-member .telefonnummer::before { content: "\f095"; top: 1px; left: 3px; }
#team .team-member .mail { bottom: 20px; }
#team .team-member .mail::before { content: "\f0e0"; top: 2px; left: 0; }
#team .team-member .content { position: relative; padding: 20px; min-height: 513px; }
#team .team-member .ausbildung { margin-top: 10px; }
#team .team-member .entry { margin-top: 10px; }

.single-kurs #slider { display: none; }
.single-kurs #main-content { margin-top: 200px; }
.single-kurs #main-content .line { background-color: #2D4C00; height: 1px; margin-top: 70px; margin-bottom: 70px; }
.single-kurs .formular .kursteilnehmer { margin-top: 70px; margin-bottom: 70px; }
.single-kurs .formular .kursteilnehmer .list strong { font: normal normal 600 21px/27px Source Sans Pro; color: #3D7222; margin-bottom: 20px; }
.single-kurs .formular .kursteilnehmer .list .teilnehmer { margin-bottom: 70px; }
.single-kurs .formular .kursteilnehmer .button { margin-top: 0px; }
.single-kurs .formular label { font: normal normal normal 21px/32px Source Sans Pro; color: #000; }
.single-kurs .formular input, .single-kurs .formular textarea { border: 1px solid #3D7222; border-radius: 12px; margin-top: 0; margin-bottom: 16px; }
.single-kurs .formular textarea { margin-bottom: 70px; }
.single-kurs .formular .info { margin-bottom: 70px; }
.single-kurs .formular input[type=checkbox] { background: #FFFFFF 0% 0% no-repeat padding-box; border: 1px solid #3D7222; border-radius: 12px; }
.single-kurs .formular .button { font: normal normal normal 21px/32px Source Sans Pro; color: #FFFFFF; background: #3D7222 0% 0% no-repeat padding-box; border: 1px solid #FFFFFF; margin-top: 26px; padding: 7px 22px; border-radius: 16px; }
.single-kurs .formular em { font-size: 1rem; }
.single-kurs .formular .singelcheckbox { /* Customize the label (the container) */ /* Hide the browser's default checkbox */ /* Create a custom checkbox */ /* On mouse-over, add a grey background color */ /* When the checkbox is checked, add a blue background */ /* Create the checkmark/indicator (hidden when not checked) */ /* Show the checkmark when checked */ /* Style the checkmark/indicator */ }
.single-kurs .formular .singelcheckbox .container { display: block; position: relative; padding-left: 35px; margin-bottom: 12px; cursor: pointer; font-size: 22px; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.single-kurs .formular .singelcheckbox .container input { position: absolute; opacity: 0; cursor: pointer; height: 0; width: 0; }
.single-kurs .formular .singelcheckbox .checkmark { position: absolute; top: 2px; left: 0; height: 28px; width: 28px; background: #FFFFFF 0% 0% no-repeat padding-box; border: 1px solid #3D7222; border-radius: 12px; }
.single-kurs .formular .singelcheckbox .container:hover input ~ .checkmark { background-color: #FFF; }
.single-kurs .formular .singelcheckbox .container input:checked ~ .checkmark { background-color: #3D7222; }
.single-kurs .formular .singelcheckbox .checkmark:after { content: ""; position: absolute; display: none; }
.single-kurs .formular .singelcheckbox .container input:checked ~ .checkmark:after { display: block; }
.single-kurs .formular .singelcheckbox .container .checkmark:after { left: 10px; top: 6px; width: 7px; height: 12px; border: solid white; border-width: 0 3px 3px 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }

#footer { position: absolute; left: 0; bottom: 0; width: 100%; height: 250px; font-weight: 400; background-color: #3D7222; z-index: 1; color: #FFF; }
#footer h2 { font-family: 'Source Sans Pro', sans-serif; font-size: 21px; line-height: 25px; font-weight: 600; margin-bottom: 42px; color: #FFF; }
#footer a { font-weight: 400; color: #FFF; }
#footer .menu { list-style: none; padding: 0; margin: 0; }
#footer .menu .menu-item a { font-size: 16px; line-height: 32px; color: #fff; }
#footer .line { width: 100%; height: 2px; margin-top: 70px; margin-bottom: 70px; background-color: #2D4C00; }
#footer #info { width: 100%; font-size: 1.313rem; line-height: 1.688rem; }
#footer #info h2 { margin-bottom: 16px; }
#footer #info a { font-size: 1.313rem; line-height: 1.688rem; }
#footer #info .info-menu { text-align: right; }
#footer #info .menu .menu-item a { font-size: 1.313rem; line-height: 1.688rem; }
#footer #copyright { position: absolute; left: 0; bottom: 0; padding-top: 26px; width: 100%; height: 66px; font-size: 1.313rem; line-height: 1.688rem; color: #FFFFFF; background-color: #2A3425; }
#footer #copyright #copyright-venice { text-align: right; }
#footer:before { content: ''; position: absolute; left: -20px; bottom: calc(100% - 52px); width: calc(100vw + 40px); height: 120px; background-color: #3D7222; border-top: #2A3425 solid 6px; transform: rotate(-2deg); z-index: -1; }

/* =Responsive
-------------------------------------------------------------- */
@media only screen and (max-width: 84.375rem) { #header { display: none; }
  #header-mobile { display: block; }
  #slider { height: 250px; }
  .home #slider { margin-top: 50px; height: calc(100vh - 80px); }
  #division .text div { font-size: 13px; line-height: 15px; } }
@media only screen and (max-width: 1140px) { #division .text h2 { font-size: 16px; line-height: 28px; } }
@media only screen and (max-width: 1125px) { #news .item { height: 900px; } }
@media only screen and (max-width: 840px) { #page { padding-bottom: 0; }
  #division .box, #news .item { margin-bottom: 15px; }
  #news .item { height: 652px; }
  #main-content .kontakt-adresse { margin-top: 30px; }
  #main-content .kontakt-adresse h2 { margin-bottom: 15px; }
  #footer { position: relative; margin-top: 150px; height: auto; text-align: center; }
  #footer h2 { margin-top: 30px; margin-bottom: 15px; }
  #footer #copyright { position: relative; height: auto; margin-top: 30px; padding: 20px 0; }
  #footer #copyright #copyright-venice { text-align: center; }
  #footer #menu-footer { text-align: center; padding-top: 30px; } }
