@charset "UTF-8";

/* CSS Document 

* Theme Name: MDIS Velocity
* Theme URL: https://mdis-velocity.de
* Author: Dennis Wagensohn
* Version: 1.0.0

*/


@import url(css/normalize.min.css);
@import url(css/main.css);

/* ===================
    Headings
   =================== */

.wpcf7 button, html .wpcf7 input[type="button"], .wpcf7 input[type="reset"], .wpcf7 input[type="submit"], .cr_button, input, select, textarea, body, h1, h2, h3, h4, h5, h6 { font-family: 'Montserrat', sans-serif !important; }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit;}
h1 { font-size: 50px !important; margin: 0; font-weight: 600 !important; letter-spacing: 0.3px !important; line-height: 54px !important; }
h2 { font-size: 24px !important; margin: 0; font-weight: 300 !important; letter-spacing: 0.3px !important; line-height: 28px !important; }
h3 { font-size: 20px !important; margin: 0; font-weight: 600 !important; letter-spacing: 0.3px !important; line-height: 24px !important; }
h4 { font-size: 36px !important; margin: 0; font-weight: 600 !important; letter-spacing: 0.3px !important; line-height: 40px !important; }
h5 { font-size: 22px !important; margin: 0; font-weight: 300 !important; letter-spacing: 0.3px !important; line-height: 26px !important; }
h6 { font-size: 22px !important; margin: 0; font-weight: 300 !important; letter-spacing: 0.3px !important; line-height: 26px !important; }
.main article h1 { font-size: 60px; }

.datenschutz h2 { margin: 30px 0 30px 0 !important; color: #d2ff00 !important; }
.datenschutz h3 { margin: 30px 0 15px 0 !important; color: #d2ff00 !important; }

.mainerror h1 { color: #d2ff00; margin-bottom: 50px; }

a, a:visited { color: #d2ff00; }
a { font-weight: 700; }
a { text-decoration: none; }
a:hover, a:focus, a:active { color: #ff5722; text-decoration: none; outline: none; }

p, pre { margin: 0 0 15px 0; }
p:empty { display: none; }
p:last-child { margin-bottom: 0; }

a, img, #header-container, nav li, nav li a, #kontaktbox, .cr_button, .post-container, .date, .thumbnail { -webkit-transition: all 0.5s; transition: all 0.5s; }

strong, b, .bold { font-weight: 600 !important; }

.main i { font-style: normal !important; color: #d2ff00 !important; }

.green { color: #d2ff00 !important; }

/* ===================
    ALL: Kunden Theme
   =================== */

* { -moz-box-sizing: border-box; box-sizing: border-box; }

html {
	height: 100%;
}

body {
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	font-weight: 300 !important;
    font-size: 18px;
	line-height: 24px;
	letter-spacing: 0.3px;
	height: 100%;
	overflow-y: scroll;
	overflow-x: hidden;
	color: #fff;
}

.wrapper {
	width: 1340px;
}

#nav-container, #main-container, #footer-container {
	position: relative;
}

body, #main-container {
	background: #000;
}

#header-container {
	position: fixed;
	width: 100%;
	background: rgba(0,0,0,0);
	z-index: 999;
}

.header-fixed {
	background: rgba(0,0,0,1) !important;
}

#nav-container {
	float: right;
}

#footer-container {
	padding: 50px 50px 15px 50px;
	background: #000;
}

/* ===================
    Nav
   =================== */

#nav-container nav {
	text-align: left;
	width: auto;
}

#nav-container nav li, nav li a {
	height: 80px;
	line-height: 80px;
	margin: 0;
}

#nav-container nav li {
	position: relative;
	display: block;
	float: left;
	padding: 0;
}

#nav-container nav li a {
	font-weight: 300;
	font-size: 18px;
	display: block;
	padding: 0 30px;
	width: auto;
	background: transparent;
	color: #fff;
}

#nav-container nav .menu-item-441 {
	border-right: 1px solid #000;
}

#nav-container nav .menu-item-441 a, #nav-container nav .menu-item-112 a {
	background: #d2ff00 !important;
	color: #000 !important;
}

#nav-container nav a:visited {
	color: #fff;
}

#nav-container nav .current-menu-item a, #nav-container nav .current_page_item a, #nav-container nav a:hover, #nav-container nav a:focus, #nav-container nav a:active, #nav-container nav .current-menu-ancestor a {
	color: #fff; background: #ff0064;
}

/* Submenü */

.menu-item-has-children:hover ul {
	opacity: 1;
	z-index: 1;
	height: auto;
}

.sub-menu {
    opacity: 0;
    position: absolute;
	width: 333px;
	height: 0;
    left: 0;
    top: 80px;
	padding: 16px 0;
    z-index: 1;
	background: #d2ff00;
	text-align: left;
	overflow: hidden;
}

.sub-menu li {
	display: block !important;
	width: 100% !important;
	height: 50px !important;
	line-height: 50px !important;
}

.sub-menu li a {
    color: #000 !important;
	background: #d2ff00 !important;
	width: 100% !important;
	text-align: left;
	height: 50px !important;
	line-height: 50px !important;
	text-decoration: none !important;
}

.sub-menu .current-menu-item a {
	text-decoration: underline !important;
	color: #000;
}

.sub-menu li a:hover {
	text-decoration: underline !important;
	color: #000;
}

/* ===================
    Header
   =================== */
   
/* Header Logo */

#logo {
	position: relative;
	float: left;
	margin: 20px 0 20px 50px;
}

#logo img {
	width: 71.8px !important;
	height: auto;
}

/* ===================
    Main
   =================== */

.main img, .mainacademy img {
	width: 100%;
	height: auto;
}

.main, .mainsingle {
	padding: 0;
	background: #000;
}

.mainacademy {
	padding: 0 0 100px 0;
	background: #fff;
}

.mainerror {
	padding: 230px 0 150px 0;
}

.main article, .mainacademy article {
	width: 100%;
	float: none;
	padding: 0px;
}

.liste ul {
	padding: 0 0 0 30px;
	margin: 0;
}

.liste ul li {
	list-style: none;
	position: relative;
	margin-bottom: 10px;
}

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

.liste ul li::before {
	position: absolute;
	content: "";
	top: 4px;
	left: -30px;
	width: 14px;
	height: 14px;
	background: #ff0064;
}

.elementor-slideshow__title, .elementor-slideshow__description {
	display: none;
}

.dialog-type-lightbox {
	background: rgba(0,90,220,0.5) !important;
}

/* ===================
    Kontakt
   =================== */

#wpforms-form-55 {
	background: none !important;
}

.wpforms-container {
	margin: 0 !important;
}

.wpforms-field {
	padding: 0 !important;
	margin-bottom: 20px !important;
}

.wpforms-field-label, .wpforms-field-required li {
	color: #fff !important;
}

.wpforms-field-container input, .wpforms-field-container textarea, .wpforms-field-container select {
	background-color: #fff !important;
	letter-spacing: 1px !important;
    border: none !important;
    color: #222 !important;
    padding: 15px !important;
	border-radius: 15px !important;
	height: auto !important;
}

.wpforms-field-container textarea {
	height: 150px !important;
	resize: inherit !important;
}

.wpforms-submit {
	background: #005adc !important;
	box-shadow: 0 0 8px rgba(0,0,0,0) !important;
    border: 0 none !important;
    border-radius: 25px !important;
    color: #fff !important;
    font-size: 18px !important;
	line-height: 18px !important;
    font-weight: 600 !important;
    padding: 25px !important;
	width: 100% !important;
	height: 69px !important;
	letter-spacing: 0.3px !important;
	border-left: none !important;
	-webkit-transition: all 0.5s !important;
  	transition: all 0.5s !important;
}

.wpforms-submit:hover {
    background: #ff0064 !important;
}

/* ===================
    404
   =================== */

.mainerror {
	padding: 200px 50px 100px 50px;
}

.mainerror img {
	width: 50% !important;
	margin: 0 auto;
	display: block;
}

/* ===================
    Newsletter
   =================== */

#nlbox .cr_body {
	padding: 0 !important;
	background: rgba(0,0,0,0) !important;
}

.nlpage .cr_body {
	padding: 0 !important;
	margin: 0 auto !important;
}

#nlbox .cr_ipe_item {
	margin: 0 0 15px 0 !important;
	padding: 0 !important;
}

#nlbox .cr_ipe_item:last-child {
	margin: 0 !important;
}

#nlbox .itemname, #nlbox .cr_ipe_item br {
	display: none !important;
}

#nlbox .cr_ipe_item input {
	border: none !important;
	padding: 25px 40px !important;
	border-radius: 50px;
	background: #fff !important;
}

#nlbox .cr_ipe_checkbox {
	margin-right: 10px !important;
}

#nlbox .cr_button {
	margin: 0 !important;
	display: block !important;
	color: #fff !important;
	font-weight: 300 !important;
	background: #005adc !important;
	padding: 25px 40px !important;
	border-radius: 50px !important;
	height: auto !important;
	font-size: 18px !important;
	line-height: 18px !important;
}

#text5682499 { width: 250px !important; }

#nlbox .cr_button:hover {
	background: #ff0064 !important;
	opacity: 1 !important;
}

.nlpage .editable_content {
	text-align: center !important;
}

/* Formulare CR */

.cr_body {
	box-shadow: none !important;
}

#crform .cr_body {
	background: rgba(255,0,100,0) !important;
	box-shadow: none !important;
}

#crform .itemname, #crform .cr_form-component--email label, #crform .cr_form-component--header {
	font-family: 'Montserrat', sans-serif !important;
	font-weight: 600 !important;
	font-size: 18px !important;
	line-height: 22px !important;
	color: #fff !important;
	margin: 20px 0 10px 0 !important;
}

#crform .cr_ipe_item input {
	border-radius: 25px !important;
	border: none !important;
}

#crform .cr_form-inputgroup--typecheckbox label {
	color: #fff !important;
	font-family: 'Montserrat', sans-serif !important;
}

#crform .cr_button {
	font-family: 'Montserrat', sans-serif !important;
	margin: 0 !important;
	display: block !important;
	color: #000 !important;
	font-weight: 300 !important;
	background: #d2ff00 !important;
	padding: 25px 40px !important;
	border-radius: 50px !important;
	height: auto !important;
	font-size: 18px !important;
	line-height: 18px !important;
}

#crform .cr_button:hover {
	background: #005adc !important;
	color: #fff !important;
	opacity: 1 !important;
}

/* ===================
    Blog
   =================== */

.recent-posts-container {
	padding: 0 50px;
}

.recent-posts {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -25px;
}

.post-container {
	position: relative;
	margin: 0 25px 50px 25px;
	display: block;
	width: calc(25% - 50px);
	overflow: hidden;
	border-radius: 50px;
	background: #000;
}

.post-container .beitrag {
	position: relative;
}

.post-container .thumbnail {
	position: relative;
}

/*.post-container .thumbnail::after {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(top, rgba(0,90,220,1) 0%, rgba(0,90,220,0) 100%);
	background: -moz-linear-gradient(top, rgba(0,90,220,1) 0%, rgba(0,90,220,0) 100%);
	background: -webkit-linear-gradient(top, rgba(0,90,220,1) 0%, rgba(0,90,220,0) 100%);
	background: -ms-linear-gradient(top, rgba(0,90,220,1) 0%, rgba(0,90,220,0) 100%);
	background: -o-linear-gradient(top, rgba(0,90,220,1) 0%, rgba(0,90,220,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#005adc endColorstr=#005adc,GradientType=1);
}*/

.post-container .text {
	position: relative;
	padding: 0 50px 50px 50px;
	border-top: 5px solid #005adc;
}

.post-container .date {
	position: relative;
	color: #fff;
	margin: 25px 0;
	font-size: 14px;
	line-height: 14px;
	font-weight: 300;
}

.catname {
	position: relative;
	display: inline-block;
	font-size: 14px;
	line-height: 14px;
	background-color: #005adc;
	font-weight: 600;
	color: #fff;
	border-radius: 50px 50px 50px 50px;
	padding: 10px 15px 10px 15px;
	top: -19.5px;
}

.post-container h3 {
	text-align: left !important;
}

.post-container h3 a {
	color: #d2ff00;
}

.post-container h3 a:hover {
	color: #ff0064;
}

/* Tablepress */

.tablepress thead th {
	background: none !important;
	color: #ff5722 !important;
}

.tablepress tbody td {
	color: #fff !important;
	-webkit-hyphens: auto;
	hyphens: auto;
}

/* ===================
    Footer
   =================== */
   
#footer-container footer {
	padding: 0;
}

#footerbox {
	float: left;
}

#footerbox img {
	width: 100px;
	height: auto;
}

.footercontent:first-child {
	margin-bottom: 25px;
}

#footer-container footer nav {
    float: right;
    width: auto;
	margin-top: 0;
	padding: 0;
}

footer nav li {
	position: relative;
	display: block;
	float: none;
	height: 18px;
	line-height: 18px;
	padding: 0;
	margin-bottom: 15px;
	border: none !important;
}

footer nav li:last-child {
	margin: 0;
}

footer nav li a	{
	display: block;
	height: 18px;
	line-height: 18px;
	padding: 0;
	font-size: 18px;
	font-weight: 300;
	width: auto;
	background: none;
	color: #fff;
	margin: 0;
}

footer nav a:visited { color: #fff; }
footer nav a:hover { color: #d2ff00; text-decoration: none; outline: none; } 
footer nav a:focus { color: #d2ff00; outline: none; }
footer nav a:active { color: #d2ff00; outline: none; }
footer nav .current-menu-item a, footer nav .current_page_item a, footer nav a:hover {
	color: #d2ff00;
	background: none;
}

.copyright {
	margin-top: 50px;
	text-align: center;
	color: #fff;
	font-size: 12px;
	line-height: 18px;
}

/* ===================
    Responsive
   =================== */

@media only screen and (max-width: 1450px) {

}
@media only screen and (max-width: 1250px) {
	#logo { margin: 20px 0 20px 25px; }
	#nav-container nav li a { font-size: 16px; padding: 0 20px; }
	.post-container { width: calc(33.333% - 50px); }
	#footer-container { padding: 50px 25px 15px 25px; }
}
@media only screen and (max-width: 1200px) {
	.main { -webkit-hyphens: auto; hyphens: auto; }
}
@media only screen and (max-width: 1000px) {
	#nav-container { display: none; }
	.main .e-parent:first-child { padding: 180px 5% 100px 5% !important; }
	.mobmenur-container i { background: #d2ff00; width: 42px; height: 42px; padding-top: 6px; border-radius: 10px; }
	.sub-menu { height: auto !important; padding: 10px 0 !important; }
	.sub-menu li { padding: 10px 20px; line-height: 40px !important; height: 40px !important; }
	.sub-menu li a { padding: 0 !important; line-height: 20px !important; height: 20px !important; }
	.post-container { width: calc(50% - 50px); }
	.recent-posts-container { padding: 0 25px; }
}
@media only screen and (max-width: 750px) {
	h1 { font-size: 35px !important; line-height: 39px !important; }
	h2 { font-size: 22px !important; line-height: 26px !important; }
	h3 { font-size: 22px !important; line-height: 26px !important; }
	h4 { font-size: 30px !important; line-height: 34px !important; }
	h5 { font-size: 22px !important; line-height: 26px !important; }
	h6 { font-size: 22px !important; line-height: 26px !important; }
	.main article h1 { font-size: 50px; }
	.post-container { width: calc(100% - 50px); }
}
@media only screen and (max-width: 500px) {
	#footerbox { float: none; margin-bottom: 50px; }
	#footer-container footer nav { float: none; }
	footer nav li a { text-align: left; }
}