/* Custom CSS */

/* Example: Override main section background color. */
/* body .jupiterx-main {
    background-color: gray;
} */
b, strong {
    font-weight: 700 !important;
}
.hidden {
	display: none !important;
}
.contact-icon .elementor-icon {
    padding: 8px;
    background-color: #2a9f47;
    border-radius: 50px;
    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.contact-icon .elementor-icon svg {
/* 	fill: #ffffff; */
    width: 25px;
}
.contact-icon-white .elementor-icon svg {
	fill: #ffffff;
}
/* .contact-icon-map svg {
	fill: initial !important;
} */
.unsere-mission {
	position: relative;
	top: 120px;
}

/* Heading */

.heading-strong {
	font-weight: 900;
}
.heading-medium {
	font-weight: 700;
	color: #ffffff !important;
	display: inline !important;
}
.heading-black {
	color: #191919 !important;
}

/* Header */

.raven-nav-menu a.raven-link-item {
	transition: color 0.3s ease;
}
.raven-nav-menu li.menu-item > a.raven-link-item .sub-arrow svg {
	width: 12px !important;
	height: 12px !important;
	opacity: 0.8;
}

/* Image Effects */
.image-effect,
.image-effect-dark {
	position: relative !important;
}
.image-effect::after {
	content: "";
    top: 25px;
    left: 25px;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(42, 159, 71, 0.08);
    z-index: 10;
    border-radius: 10px;
}
.image-effect-dark::after {
	content: "";
    top: 25px;
    left: -25px;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.05);
    z-index: -1;
    border-radius: 10px;
}
/* Custom Heading */

.custom-heading-animation .elementor-heading-title {
	overflow: hidden;
}

/* Buttons */ 

.scrollen .elementor-button-content-wrapper {
	align-items: center;
}
.scrollen .elementor-button:hover {
	opacity: 0.7;
}
.scrollen .elementor-button-icon {
	width: 30px;
    height: 30px;
    background-color: transparent;
	border: 1px solid rgba(255, 255, 255, 0.8);
    border-radius: 50%;
    display: flex;
    align-items: center;
    -webkit-justify-content: center;
    transition: ease-in 0.3s;
}
.scrollen .elementor-button-icon svg {
	width: 15px;
}
.jupiterx-corner-buttons {
	mix-blend-mode: exclusion;
}

/* Subscribe Form */

.subscribe-form p {
	display: flex;
	align-items: flex-start;
}
.subscribe-form .wpcf7-form-control {
	padding: 10px 12px;
	width: 420px;
	height: 55px;
	border-radius: 8px;
    background-color: transparent;
    border: 1px solid rgba(255, 255, 255, 0.5);
    color: rgba(255, 255, 255, 1);
	font-family: "Montserrat", Sans-serif;
	font-weight: 300;
	transition: all 0.3s ease-in-out;
}
.subscribe-form input[type="email"]:focus {
    border-color: rgba(255, 255, 255, 0.8);
    color: rgba(255, 255, 255, 1);
    outline: none;
}
.subscribe-form input::placeholder {
	color: rgba(255, 255, 255, 0.5);
}
.subscribe-form .wpcf7-submit {
	margin-left: 20px;
	padding: 10px 20px;
	width: 200px;
	height: 55px;
	border-radius: 8px;
    background-color: #2a9f47;
    border: 1px solid #2a9f47;
    color: #ffffff;
	cursor: pointer;
	transition: all .5s;
}
.subscribe-form .wpcf7-submit:hover {
	background-color: #23873b;
	border: 1px solid #23873b;
}

.subscribe-form .wpcf7-submit:focus,
.subscribe-form .wpcf7-submit:focus-visible {
	outline: none !important;
}
.subscribe-form .wpcf7-spinner {
    position: relative !important;
    top: 65px !important;
    left: -132px !important;
}
.wpcf7-not-valid-tip {
	padding-top: 5px !important;
	padding-left: 5px !important;
	font-size: 12px !important;
	font-weight: 300 !important;
}
.wpcf7-response-output {
	display: none;
}

/* Contact Form */

.contact-form .contact-form-columns-2 {
	display: flex;
	align-items: center;
	gap: 15px;
}
.contact-form .contact-input-holder .wpcf7-text,
.contact-form .contact-input-holder .wpcf7-textarea {
	padding: 10px 12px;
	width: 100%;
	height: 55px;
	border-radius: 8px;
    background-color: transparent;
    border: 1px solid rgba(25, 25, 25, 0.2);
    color: rgba(25, 25, 25, 1);
	transition: all 0.3s ease-in-out;
}
.contact-form .contact-input-holder .wpcf7-textarea {
	height: auto;
}
.contact-form .contact-input-holder .wpcf7-text:focus,
.contact-form .contact-input-holder .wpcf7-text:focus-visible,
.contact-form .contact-input-holder .wpcf7-textarea:focus,
.contact-form .contact-input-holder .wpcf7-textarea:focus-visible {
	border: 1px solid #2a9f47 !important;
	color: rgba(25, 25, 25, 1) !important;
	outline: none !important;
}
.contact-form .contact-input-holder input::placeholder,
.contact-form .contact-input-holder textarea::placeholder {
	color: rgba(25, 25, 25, 0.2);
}

.contact-form .contact-form-submit .wpcf7-submit {
	padding: 10px 20px;
	width: 100%;
	height: 55px;
	border-radius: 8px;
    background-color: #2a9f47;
    border: 1px solid #2a9f47;
    color: #ffffff;
	cursor: pointer;
	transition: all .5s;	
}
.contact-form .contact-form-submit .wpcf7-submit:focus,
.contact-form .contact-form-submit .wpcf7-submit:focus-visible {
	outline: none !important;
}
.contact-form .contact-form-submit .wpcf7-submit:hover {
	background-color: #23873b;
	border: 1px solid #23873b;
}
.contact-form .contact-form-submit p { 
	position: relative;
}
.contact-form .contact-form-submit p .wpcf7-spinner {
    position: absolute;
	margin: 0;
	top: 70px;
    left: 50%;
    transform: translateX(-50%);
}

/* Custom Services */

.services-list .elementor-icon-list-item a {
	padding: 15px 25px;
	background-color: #ffffff;
    box-shadow: 0px 5px 10px 0px rgba(25, 25, 25, 0.1);
	border: 1px solid rgba(25, 25, 25, 0.1);
	border-radius: 8px;
}
.services-list-style {
	padding: 50px;
	background-color: #ffffff;
	box-shadow: 0px 5px 10px 0px rgba(25, 25, 25, 0.05);
    border-radius: 8px;
}
.services-list-style h4 {
	color: #29A6DE;
	font-weight: 400;
}
.services-list-style ul {
    padding-left: 20px;
    padding-top: 15px;	
	margin-bottom: 0;
}
.services-list-style p {
	padding-top: 15px;
	margin-bottom: 0;
}
.services-list-style ul li,
.services-list-style p {
	margin-bottom: 8px;
    font-size: 16px;
    font-weight: 300;
    line-height: 24px;
    color: #191919CC;	
}
.services-list-style ul li strong,
.services-list-style p strong {
	font-weight: 600;
}
.services-list-style ul li:last-child {
	margin-bottom: 0;
}
.services-list-home .elementor-widget-container ul {
	padding-left: 20px;
}
.services-list-home .elementor-widget-container ul li {
	margin-bottom: 10px;
}
.services-list-home .elementor-widget-container ul li b,
.services-list-home .elementor-widget-container p strong {
	font-weight: 700;
}
.services-list-home .elementor-widget-container ul li:last-child {
	margin-bottom: 0;
}
/* Footer */

.jupiterx-footer {
    width: calc(100% - 60px);
    margin-right: auto;
    margin-left: auto;
    margin-top: 30px;
    margin-bottom: 30px;
	border-radius: 15px;
	background-color: #0A1F23;
/* 	background: linear-gradient(180deg, #6DC28D0D 0%, #D3B2760D 100%); */
}
.jupiterx-scroll-top {
	outline: none !important;
}

/* Elementor custom animations */

.elementor-element-518bbb1c {
    width: calc(100% - 60px) !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

.animated.animated-fast {
  animation-duration: .75s; }

@-webkit-keyframes fadeInUpShort {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 40px, 0);
    transform: translate3d(0, 40px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInUpShort {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 40px, 0);
    transform: translate3d(0, 40px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@-webkit-keyframes fadeInDownShort {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -40px, 0);
    transform: translate3d(0, -40px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInDownShort {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -40px, 0);
    transform: translate3d(0, -40px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@-webkit-keyframes fadeInLeftShort {
  from {
    opacity: 0;
    -webkit-transform: translate3d(40px, 0, 0);
    transform: translate3d(40px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInLeftShort {
  from {
    opacity: 0;
    -webkit-transform: translate3d(40px, 0, 0);
    transform: translate3d(40px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@-webkit-keyframes fadeInRightShort {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-40px, 0, 0);
    transform: translate3d(-40px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

@keyframes fadeInRightShort {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-40px, 0, 0);
    transform: translate3d(-40px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }

.elementor .fadeInUp {
  -webkit-animation-name: fadeInUpShort;
  animation-name: fadeInUpShort; }

.elementor .fadeInDown {
  -webkit-animation-name: fadeInDownShort;
  animation-name: fadeInDownShort; }

.elementor .fadeInLeft {
  -webkit-animation-name: fadeInLeftShort;
  animation-name: fadeInLeftShort; }

.elementor .fadeInRight {
  -webkit-animation-name: fadeInRightShort;
  animation-name: fadeInRightShort; }

/* Responsive */

.menu-item-mobile {
	display: none !important;
}
@media screen and (max-width: 1025px) { 
	.unsere-mission {
		position: relative;
		top: 60px;
	}
	.menu-item-mobile {
		display: inline-block !important;
	}
}

@media screen and (max-width: 767px) {
    .vc_hidden-xs {
        display: none !important;
    }
	.elementor-element-518bbb1c {
		width: calc(100% - 40px) !important;
	}
	.raven-nav-menu-mobile .raven-nav-menu {
		padding: 12px 0 !important;
	}
	.raven-nav-menu ul.raven-submenu, .raven-nav-menu ul.sub-menu {
		padding-left: 8px !important;
	}
	.subscribe-form p {
		flex-direction: column;
	}
	.subscribe-form .wpcf7-form-control {
		width: 100%;
		height: 50px;
	}
	.subscribe-form .wpcf7-submit {
		width: 100%;
		height: 50px;
		margin-top: 20px;
		margin-left: 0;
	}
	.contact-icon .elementor-icon-box-wrapper {
		display: flex !important;
		text-align: initial !important;
	}
	.contact-icon .elementor-icon-box-icon {
		margin-right: 20px !important;
		margin-bottom: 0 !important;
	}
	.contact-form .contact-form-columns-2 {
		flex-direction: column;
		gap: 0;
	}
	.jupiterx-footer {
		width: calc(100% - 40px);
		border-radius: 15px;
	}
	.contact-form .contact-form-submit .wpcf7-submit {
		width: 100%;
		height: 50px;	
	}
	.contact-form .contact-input-holder .wpcf7-text,
	.contact-form .contact-input-holder .wpcf7-textarea {
		width: 100%;
		height: 50px;
	}
	.contact-form .contact-input-holder .wpcf7-textarea {
		height: auto;
	}
	.image-effect::after {
		top: 10px;
		left: 10px;
	}
	.image-effect-dark::after {
		top: 10px;
		left: -10px;
	}
	.elementor-element-518bbb1c {
		width: calc(100% - 40px) !important;
	}
	.jupiterx-footer {
		width: calc(100% - 40px) !important;
	}
	.unsere-mission {
		position: relative;
		top: 60px;
	}
}