/*
Theme Name: Twenty Twenty Child theme of twentytwenty
Theme URI: 
Description: Child theme of twentytwenty theme for the Twenty Twenty theme
Author: <a href="https://de.wordpress.org/">WordPress-Team</a>
Author URI: 
Template: twentytwenty
Version: 1.2
*/

/* Generated by Orbisius Child Theme Creator (https://orbisius.com/products/wordpress-plugins/orbisius-child-theme-creator/) on Fri, 07 Aug 2020 09:11:15 +0000 */ 
/* The plugin now uses the recommended approach for loading the css files.*/

/* Custom Styles */

/*@import url('https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,300;0,400;0,700;0,800;1,300;1,400;1,700;1,800&family=Roboto+Condensed:ital,wght@0,300;0,400;0,700;1,300;1,700&display=swap');*/

:root {
	--main-accent-color: #71b73e;
	--secondary-accent-color: #085585;
	--cta-accent-color: #d60a30;
	--main-font: "Roboto Condensed", sans-serif;
	--secondary-font: "Raleway", sans-serif; 
	--text-font-size: 16px;
	--text-color: #000000;
}

/* Allgemein */

* {
	letter-spacing: 0 !important;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: subpixel-antialiased;
    -webkit-font-smoothing: subpixel-antialiased;
}

html {
	font-size: 100%;
}

body {
	font-family: var(--main-font);
	font-size: var(--text-font-size);
	font-weight: 300;
	color: var(--text-color);
}

body,
p {
	line-height: 1.7;
}

a {
	color: var(--main-accent-color);
}

a:hover {
	color: var(--secondary-accent-color);
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--secondary-font);
	font-weight: 300;
	color: #71b73e;
}

h1 {
    font-size: 3.5rem;
}

h2 {
    font-size: 2.3rem;
}

h3 {
	font-size: 2rem;
}

h6 {
    font-size: 1.1rem;
}

th, td {
	border-color: #ddd;	
}

label, 
input {
    font-size: 1rem !important;
	font-weight: 300;
}

.uppercase {
	text-transform: uppercase;
}

.strong,
.strong * {
	font-weight: 700;
}

.subhead {
	font-family: var(--secondary-font);
	font-size: 1.5em;
	font-weight: 400;
}

.font-green {
	color: var(--main-accent-color);
}

.font-blue {
	color: var(--secondary-accent-color);
}

.font-strong-blue {
	font-weight: 800;
	color: var(--secondary-accent-color);
	text-transform: uppercase;
}

.background-flat-blue {
	background: var(--secondary-accent-color);
	color: #fff;
}

.rounded {
	border-radius: 20px;
}

.elementor-button {
	background-color: var(--cta-accent-color) !important;
	border-radius: 10px !important;
}

.elementor-button:hover {
	background-color: var(--secondary-accent-color) !important;
}

.elementor-heading-title {
	line-height: 1.3 !important;
}

.no-height-visual-element {
    min-height: 200px !important;
}

.fa-angle-left:before,
.fa-angle-right:before {
	color: var(--main-accent-color);
}

.elementor-post-navigation__link:hover .fa-angle-left:before,
.elementor-post-navigation__link:hover .fa-angle-right:before {
	color: var(--secondary-accent-color);
}

.elementor-post-navigation .post-navigation__next--title,
.elementor-post-navigation .post-navigation__prev--title {
    font-size: 1em !important;
	margin: 0 0 5px 0;
}

/* Popup */

#sgpb-popup-dialog-main-div {
	border-color: rgb(61 173 73) !important;
	border-width: 5px !important;
}

#sgpb-popup-dialog-main-div-wrapper #sgpb-popup-dialog-main-div.sgpb-theme-6-content {
    box-shadow: #000 0 0 0 0 !important;
}

/* Navigation */

#main-navigation {
	background: var(--main-accent-color);
	color: #fff;
}

#main-navigation nav a {
	color: #fff !important;
}

#main-navigation .elementor-col-33.elementor-top-column {
    align-items: center;
}

#main-navigation .elementor-social-icons-wrapper {
	justify-content: center;
}

#main-navigation .custom-social-media-icons .elementor-social-icon {
	background-color: #fff;
}

#main-navigation .custom-social-media-icons i {
	color: var(--main-accent-color);
}

#main-navigation .elementor-nav-menu--dropdown {
	background-color: transparent;
}

#main-navigation .elementor-nav-menu--dropdown li a:hover {
	background-color: var(--secondary-accent-color);
}

#main-navigation .elementor-nav-menu--dropdown .elementor-item.elementor-item-active {
	background-color: var(--secondary-accent-color);
}

#header-social-media .elementor-social-icon:hover {
    opacity: .5;
}
	
/* Slider */

#main-slider {
	font-family: var(--secondary-font);
}

#main-slider .swiper-slide-contents {
    margin: -300px 0 0 0;
}

#main-slider .elementor-slides .swiper-slide-inner .elementor-slide-heading {
	font-size: 56px;
	font-weight: 700;
	text-transform: uppercase;
}

#main-slider .elementor-slide-heading span {
	color: var(--secondary-accent-color);
}

#main-slider .elementor-slide-heading span:nth-of-type(2) {
	color: var(--main-accent-color);
}

#main-slider .elementor-slide-description {
	font-weight: 300;
}

#main-slider h1 {
	color: #fff;
	font-weight: 700;
}

.elementor-element-0316d31 .font-strong-blue {
	font-size: 24px;
}

.elementor-element-0316d31 ul {
	list-style: none;
	margin: 0 0 30px 0;
	padding: 0;
}

.elementor-element-0316d31 ul:last-of-type {
	margin: 0;
}

.elementor-element-0316d31 li {
	margin: 10px 0;
	padding: 0;
}

/* Header Unterseite */

.custom-header .swiper-slide-inner {
    padding: 0 !important;
}

.custom-header .swiper-slide-contents {
    max-width: 100% !important;
    width: 100%;
    margin: 0 auto;
	padding: 20px 0;
    background: rgba(255, 255, 255, .8);
	
	font-family: var(--secondary-font);
	text-align: left;
	text-transform: uppercase;
    color: var(--main-accent-color);
}

.custom-header .elementor-slide-heading {
    width: 1140px;
    margin: 0 auto;
	padding: 0 10px;
	font-weight: 300 !important;
}

.custom-header h1 {
	margin: 0;
}

.elementor-slide-description {
	color: var(--secondary-accent-color);
}

/* Service */

.service-grid {
	margin: 10px 0 30px 0;
    display: grid;
    grid-gap: 10px;
    grid-template-columns: 50% 50%;
}

.text-accent {
    font-size: 24px;
    text-align: right;
    text-transform: uppercase;
}

.text-accent .font-blue {
	font-weight: 700;
}

/* Full width city */

#full-width-city {
    padding: 150px 0;
    background-repeat: no-repeat;
}

/* Beratung */

#termin-cta,
#termin-cta h2 {
	color: #fff;
}

/* Über uns */

#about .elementor-container .elementor-element:nth-of-type(1),
#about .elementor-container .elementor-element:nth-of-type(2) {
	margin: 0 20px 0 0;
}

#about .elementor-column:nth-of-type(3) .elementor-element {
    margin: 0;
}

#about figure.wp-caption {
    display: flex;
    align-items: flex-end;
}

#about figcaption.widget-image-caption.wp-caption-text {
    font-size: 1.3rem;
    margin: 0 0 0 15px;
}

/* Kompetenzen */

.kompetenzen-portfolio .elementor-grid {
    display: grid;
    grid-template-columns: calc(33% - 20px) calc(33% - 20px) calc(33% - 20px) !important;
    grid-gap: 36px;
}

.kompetenzen-portfolio h3.elementor-post__title a {
    color: #000;
}

.kompetenzen-portfolio h3.elementor-post__title {
    margin: 0 0 10px 0;
    font-weight: 400;
    font-size: 1.4rem;
}

.kompetenzen-portfolio article:nth-of-type(3n+2) a.elementor-post__thumbnail__link {
    border-color: var(--main-accent-color);
}

.kompetenzen-portfolio a.elementor-post__thumbnail__link {
    border: 5px solid var(--secondary-accent-color);
}

.elementor-element .elementor-widget-container .elementor-posts-container article.elementor-post.format-standard {
	margin-bottom: 0;
}

.elementor-post__text p {
    display: -webkit-box;
    -webkit-line-clamp: 9;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

h3.elementor-post__title a:hover {
	color: var(--main-accent-color);
}

#kontakt-cta h2 {
    color: var(--secondary-accent-color);
}

#kontakt-cta .elementor-button {
	background: var(--cta-accent-color) !important;
}

#kontakt-cta .elementor-button:hover {
	background: var(--main-accent-color) !important;
}

/* Karriere */

.custom-big-cards h3 {
	margin: 0 0 20px 0;
}

/* Kontakt */

#kontakt-formular h6 {
	margin-bottom: 10px;
}

#kontakt-formular h6:first-of-type {
	margin: 0 0 10px 0;
}

#kontakt-formular .elementor-field-group .elementor-field-textual {
    border: 1px solid #ddd;
	border-radius: 3px;
	font-family: inherit;
	padding: 5px 10px;
}

#kontakt-formular .elementor-field-group {
    margin-bottom: 20px;
}

#kontakt-formular button:hover {
	text-decoration: none;
}

#kontakt-formular .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option input {
	display: inline-block;
}

#kontakt-formular .e-form__buttons {
	width: 30%;
}

/* Footer */

.elementor.elementor-73.elementor-location-footer {
    border-top: 5px solid #71b73e;
}

.custom-social-media-icons .elementor-social-icon {
	font-size: 15px;
	background-color: var(--main-accent-color);
}

.custom-social-media-icons .elementor-social-icon:hover {
	background-color: var(--secondary-accent-color);
}

.custom-social-media-icons {
	line-height: 1.5em;
}

.elementor-social-icons-wrapper {
	display: flex;
	justify-content: center;
}

ul.shutterstock-images img {
    height: 200px;
    margin: 10px 0;
}

/******************/

.fa,.fab,.fad,.fal,.far,.fas {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1
}

.fa-facebook:before {
    content: "\f09a"
}

.fa-linkedin:before {
    content: "\f08c"
}

.fa-whatsapp:before {
    content: "\f232"
}

.fa-xing:before {
    content: "\f168"
}

.fa-angle-left:before {
    content: "\f104"
}

.fa-angle-right:before {
    content: "\f105"
}

.fab {
    font-family: "Font Awesome 5 Brands"
}

.fa,.far,.fas {
    font-family: "Font Awesome 5 Free"
}

.fa,.fas {
    font-weight: 900
}

/******************/

.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input,.elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%
}

.e-form__buttons,.e-form__buttons__wrapper,.e-form__step:not(.elementor-hidden) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.elementor-form .elementor-button>span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.elementor-form .elementor-button .elementor-button-text {
    white-space: normal;
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0
}

.elementor-slides .swiper-slide-bg {
    -webkit-background-size: cover;
    background-size: cover;
    background-position: 50%;
    background-repeat: no-repeat;
    min-width: 100%;
    min-height: 100%
}

.elementor-slides .swiper-slide-inner {
    background-repeat: no-repeat;
    background-position: 50%;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 50px;
    margin: auto
}

.elementor-slides .swiper-slide-inner,.elementor-slides .swiper-slide-inner:hover {
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.elementor-slides .swiper-slide-inner .elementor-slide-heading {
    font-size: 35px;
    font-weight: 700;
    line-height: 1
}

.elementor--v-position-bottom .swiper-slide-inner {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.elementor--h-position-center .swiper-slide-inner {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.swiper-slide {
    border-style: solid;
    border-width: 0;
    -webkit-transition-duration: .5s;
    -o-transition-duration: .5s;
    transition-duration: .5s;
    -webkit-transition-property: border,background,-webkit-transform;
    transition-property: border,background,-webkit-transform;
    -o-transition-property: border,background,transform;
    transition-property: border,background,transform;
    transition-property: border,background,transform,-webkit-transform;
    overflow: hidden
}

.elementor-nav-menu--main .elementor-nav-menu a {
    -webkit-transition: .4s;
    -o-transition: .4s;
    transition: .4s
}

.elementor-nav-menu--main .elementor-nav-menu a,.elementor-nav-menu--main .elementor-nav-menu a.highlighted,.elementor-nav-menu--main .elementor-nav-menu a:focus,.elementor-nav-menu--main .elementor-nav-menu a:hover {
    padding: 13px 20px
}

.elementor-nav-menu--layout-horizontal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.elementor-nav-menu--layout-horizontal .elementor-nav-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.elementor-nav-menu--layout-horizontal .elementor-nav-menu a {
    white-space: nowrap
}

.elementor-nav-menu__align-center .elementor-nav-menu {
    margin-left: auto;
    margin-right: auto
}

.elementor-nav-menu__align-center .elementor-nav-menu,.elementor-nav-menu__align-center .elementor-nav-menu--layout-vertical>ul>li>a {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.elementor-widget-nav-menu .elementor-widget-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.elementor-nav-menu {
    position: relative;
    z-index: 2
}

.elementor-nav-menu:after {
    content: "\00a0";
    display: block;
    height: 0;
    font: 0/0 serif;
    clear: both;
    visibility: hidden;
    overflow: hidden
}

.elementor-nav-menu,.elementor-nav-menu li,.elementor-nav-menu ul {
    display: block;
    list-style: none;
    margin: 0;
    padding: 0;
    line-height: normal;
    -webkit-tap-highlight-color: rgba(0,0,0,0)
}

.elementor-nav-menu a,.elementor-nav-menu li {
    position: relative
}

.elementor-nav-menu li {
    border-width: 0
}

.elementor-nav-menu a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.elementor-nav-menu a,.elementor-nav-menu a:focus,.elementor-nav-menu a:hover {
    padding: 10px 20px;
    line-height: 20px
}

.elementor-menu-toggle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 22px;
    padding: .25em;
    cursor: pointer;
    border: 0 solid;
    border-radius: 3px;
    background-color: rgba(0,0,0,.05);
    color: #494c4f
}

.elementor-nav-menu--dropdown {
    background-color: #fff;
    font-size: 13px
}

.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    margin-top: 10px;
    -webkit-transition: max-height .3s,-webkit-transform .3s;
    transition: max-height .3s,-webkit-transform .3s;
    -o-transition: max-height .3s,transform .3s;
    transition: max-height .3s,transform .3s;
    transition: max-height .3s,transform .3s,-webkit-transform .3s;
    -webkit-transform-origin: top;
    -ms-transform-origin: top;
    transform-origin: top;
    overflow: auto
}

.elementor-nav-menu--toggle .elementor-menu-toggle:not(.elementor-active)+.elementor-nav-menu__container {
    -webkit-transform: scaleY(0);
    -ms-transform: scaleY(0);
    transform: scaleY(0);
    max-height: 0
}

@media (min-width: 1025px) {
    .elementor-nav-menu--dropdown-tablet .elementor-menu-toggle,.elementor-nav-menu--dropdown-tablet .elementor-nav-menu--dropdown {
        display:none
    }
}

.elementor-location-footer:before,.elementor-location-header:before {
    content: "";
    display: table;
    clear: both
}

.elementor-sticky--active {
    z-index: 99
}

/* Media Queries */

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

}

@media only screen and (max-width: 992px) { 
	.custom-header h1 {
		font-size: 8vw;
	}
	
	.custom-header .elementor-slides .swiper-slide-inner .elementor-slide-heading {
		margin-bottom: 0;
	}
	
	.elementor-column.elementor-col-16 {
		width: 33% !important;
	}
}

@media only screen and (max-width: 768px) {
	.elementor-section-wrap>section:not(.custom-header) {
		padding-right: 2rem !important;
		padding-left: 2rem !important;
	}
	
	.elementor-section-wrap>section.elementor-element-451980a {
		padding: 0 !important;
	}
	
	#header-social-media {
		display: none;
	}
	
	h1 {
		font-size: 3.5vw;
	}
	
	h2 {
		font-size: 5vw;
	}
	
	h3 {
		font-size: 4vw;
	}
	
	h4 {
		font-size: 3vw;
	}
	
	h5 {
		font-size: 2vw;
	}
	
	h6 {
		font-size: 3vw;
	}
	
	#main-slider h1 {
		font-size: 8vw;
	}
	
	.custom-header .elementor-slide-heading {
		width: 100%;
		padding: 0 30px;
	}
	
	footer {
		text-align: center;
	}
	
	footer .elementor-container .elementor-row > div {
		margin: 10px 0;
	}
	
	.elementor-column.elementor-col-16 {
		width: 100% !important;
	}
	
	.elementor-32 .elementor-element.elementor-element-4ad20f2 .swiper-slide-contents {
		max-width: 68% !important;
	}
	
	.kompetenzen-portfolio .elementor-grid {
		grid-template-columns: calc(50% - 20px) calc(50% - 20px);
	}
}

@media only screen and (max-width: 576px) {
	
	.custom-header .swiper-slide {
		height: 200px !important;
	}
	
	.elementor-32 .elementor-element.elementor-element-0316d31 {
		padding: 0 !important;
	}
	
	.subheader-with-heading {
		padding: 50px 0 15px 0 !important;
	}
	
	.elementor-column.elementor-col-16 {
		width: 100% !important;
	}
	
	.service-grid {
		grid-template-columns: 100%;
		display: block;
	}
	
	.elementor-38 .elementor-element.elementor-element-4eee776 > .elementor-element-populated,
	.elementor-38 .elementor-element.elementor-element-51ef02a > .elementor-element-populated,
	.elementor-38 .elementor-element.elementor-element-49485bb > .elementor-element-populated,
	.elementor-38 .elementor-element.elementor-element-b41b25a > .elementor-element-populated,
	.elementor-40 .elementor-element.elementor-element-05ad6f5 > .elementor-element-populated,
	.elementor-40 .elementor-element.elementor-element-ea76ed0 > .elementor-element-populated {
		padding: 25px !important;
	}
	
	.elementor-42 .elementor-element.elementor-element-9fbae37,
	.elementor-36 .elementor-element.elementor-element-d405684 > .elementor-widget-container {
		padding: 0 !important;
	}
	
	
	#about .elementor-container .elementor-element:nth-of-type(1),
	#about .elementor-container .elementor-element:nth-of-type(2) {
		margin: 0;
	}
	
	.kompetenzen-portfolio .elementor-grid {
		grid-template-columns: 100%;
	}
	
	.elementor-button {
		width: 100% !important;
	}
	
	.elementor-73 .elementor-element.elementor-element-a5040eb .elementor-widget-container {
		justify-content: center !important;
	}
	
}