/*
Theme Name:     Neve Child
Theme URI:      https://themeisle.com/themes/neve/
Template: neve
Author:         ThemeIsle
Author URI:     https://themeisle.com
Description:    Neve is a super fast, easily customizable, multi-purpose theme. It’s perfect for blogs, small business, startups, agencies, firms, e-commerce shops (WooCommerce storefront) as well as personal portfolio sites and most types of projects. A fully AMP optimized and responsive theme, Neve will load in mere seconds and adapt perfectly on any viewing device. While it is lightweight and has a minimalist design, the theme is highly extendable, it has a highly SEO optimized code, resulting in top rankings in Google search results. Neve works perfectly with Gutenberg and the most popular page builders (Elementor, Brizy, Beaver Builder, Visual Composer, SiteOrigin, Divi). Neve is also WooCommerce ready, responsive, RTL & translation ready. Look no further. Neve is the perfect theme for you!
Version:        1.0.0
License:        GNU General Public License v2 or later
License URI:    http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:    neve
Tags: blog, custom-logo, e-commerce, rtl-language-support, post-formats, grid-layout, one-column, two-columns, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, flexible-header, full-width-template, sticky-post, theme-options, threaded-comments, translation-ready, accessibility-ready, wide-blocks, block-styles
*/

/* Header Verlauf */
/* Desktop Header (dein sichtbarer Bereich) */
.header--row.header-main {
    background: linear-gradient(to bottom, #551360, #721E81) !important;
}

/* Innerer Container transparent machen */
.header--row.header-main .header--row-inner {
    background: transparent !important;
}

/* Navbar Toggle Icon */
.navbar-toggle {
	background: none !important;
}
.hamburger {
  margin: 5px 5px;
	padding: 15px;
}
/* Mobile Menu Breite */
@media (max-width: 768px) {
	.header-menu-sidebar {
		width: 100% !important;
	}
}

@media (max-width: 1200px) {
/* Menü in mobile Ansicht zwingen */
  #nv-primary-navigation-main {
    display: none; /* versteckt das Desktop-Menü */
  }
  .builder-item, .tablet-left, .mobile-left {
    display: flex; /* zeigt das Mobile Menü */
  }
}

/* Links */
.elementor-widget-text-editor a:link, .elementor-widget-text-editor a:visited {
	color: white;
  text-decoration: underline !important;
}
.elementor-widget-text-editor a:hover {
  color: color-mix(in srgb, var(--nv-secondary-accent) 50%, white);
}

/* Menü Oberpunkte ohne Link */
li.nolink > .wrap > a {
  pointer-events: none;
  cursor: default;
}

/* Links in Beiträgen */
.single-post-container .elementor-widget-text-editor a:link, .single-post-container .elementor-widget-text-editor a:visited, .lightlink a:link, .lightlink  a:visited {
	color: inherit;
    text-decoration: underline !important;
}
.single-post-container .elementor-widget-text-editor a:hover, .lightlink a:hover {
    color: inherit;
	opacity: 0.75;
}
.darklink a:hover {
	color: white;
}

/* Mobile Navi */
.header-menu-sidebar .nav-ul li.nv-active>.wrap>a, .header-menu-sidebar .nav-ul li.nv-active>.wrap .caret {
	color: var(--nv-primary-accent) !important;
}
.header-menu-sidebar .nav-ul li {
	border-top: solid 1px #ddd;
}
.header-menu-sidebar .nav-ul .sub-menu li {
	border-bottom: none;
}
.header-menu-sidebar .nav-ul .caret svg {
    width: 11px;
    height: 11px;
}

/* Headline Styles für nicht Headlines */
.fake-h1,
.fake-h2,
.fake-h3,
.fake-h4 {
    font-family: var(--headingsfontfamily);
	line-height: calc(1.1 + 0.05);
    margin-bottom: 0.5em;
	text-transform: uppercase;
}

/* Größen an echte Headlines anlehnen */
.fake-h1 {
    font-size: var(--h1fontsize);
	font-weight: var(--h1fontweight);
}
.fake-h2 {
    font-size: var(--h2fontsize);
	font-weight: var(--h2fontweight);
}
.fake-h3 {
    font-size: var(--h3fontsize);
	font-weight: var(--h3fontweight);
}
.fake-h4 {
    font-size: var(--h4fontsize);
	font-weight: var(--h4fontweight);
}
/* optional bessere Lesbarkeit */
@media (max-width: 576px) {
	.fake-h1, .fake-h2, .fake-h3 , .fake-h4 {
		line-height: 1.2;
		letter-spacing: -0.01em;
    }
}

/* H2 ohne Versalien */
.standard h2 {
	text-transform: none;
	font-weight: 450;
}

/* Sonstige Auszeichnungen */
.intro {
	font-size: 20px;
	font-weight: 600;
}
@media (max-width: 960px) {
	.intro {
		font-size: 17px;
	}
}
@media (max-width: 576px) {
	.intro {
		font-size: 17px;
	}
}
.subhead {
    font-family: var(--headingsfontfamily);
	font-size: 25px;
	font-weight: 500;
	line-height: 1.4em;
}
@media (max-width: 960px) {
	.subhead {
		font-size: 20px;
		line-height: 1.3em;
	}
}
@media (max-width: 576px) {
	.subhead {
		font-size: 20px;
		line-height: 1.3em;
	}
}

/* Listen */
.checklist ul, .starlist ul {
    font-family: var(--headingsfontfamily);
    font-size: 20px;
    font-weight: 400;
	padding-left: 20px;
	margin-left: 0;
    list-style: none;
}
.starlist ul li::before {
    content: "★ ";
		color: gold;
	  padding-right: 5px;
	  margin-left: -25px;
}
.checklist ul li::before {
    content: "✓";
	  padding-right: 10px;
	  margin-left: -25px;
}
@media (max-width: 576px) {
	.checklist ul, .starlist ul {
		font-size: 16px;
		font-weight: 500;
	}
	.checklist ul {
		color: var(--e-global-color-nvsitebg); 
	}
}
@media (max-width: 576px) {
	.nv-content-wrap ul {
    margin: 0px 0;
	}
}

/* Elementor Header Vorgaben neutralisieren */
.elementor-heading-title {
    line-height: calc(1.1 + 0.05);
}
/* Fix weisser Rand unter Slider */
.swiper-slide-image {
    display: block;
}

/* Aufzählung */
.step {
	display: flex;
    align-items: center;
    gap: 10px;
}
.step h4 {
	 padding: 0;
	 margin: 0;
}
.step strong {
	font-size: calc(var(--h3fontsize) - 0.3em);
    font-family: var(--headingsfontfamily);
	font-weight: 500;
}
.step .num {
    width: 46px;
    height: 46px;
	margin-bottom: 0.5em;
    border-radius: 50%;
    background: var(--secondarybtncolor);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 500;
}

/* Kontaktformuar */
.contactform .gfield_label {
	color: white;
}
.gform_wrapper.gravity-theme .gfield_required .gfield_required_text {
	color: white;
	padding-left: 8px;
}
.gform_wrapper.gravity-theme .field_sublabel_above .gfield_description {
	color: white;
	line-height: 1.4em;
}
.contactform input[type="submit"] {
    font-family: "Open Sans", Sans-serif;
	 color: var(--e-global-color-nvsitebg) !important;
    background-color: var(--e-global-color-nvprimaryaccent) !important;
}
.gform_wrapper.gravity-theme .gform_footer button, .gform_wrapper.gravity-theme .gform_footer input, .gform_wrapper.gravity-theme .gform_page_footer button, .gform_wrapper.gravity-theme .gform_page_footer input {
    padding: 8px 25px;
}

/* Blog */
.post .elementor img {
	margin: 3% 0 8% 0;
}
.post figcaption {
	margin-top: -3%;
}
.nv-post-cover {
	--height: 360px;
	--padding: 10px;
  margin-bottom: 40px;
}  
.nv-is-boxed.nv-title-meta-wrap {
	margin-bottom: -350px;
}
@media (min-width: 577px) {
.nv-post-cover {
	--height: 380px;
	margin-bottom: 80px;
	}
}  
.nv-is-boxed.nv-title-meta-wrap {
	margin-bottom: -360px;
}
@media (min-width: 960px) {
  .nv-post-cover {
    --height: 700px;
		--padding: 60px 140px;
		margin-bottom: 120px;
  }  
	.nv-is-boxed.nv-title-meta-wrap {
    margin-bottom: -190px;
  }
}
.post .excerpt-wrap ol, .excerpt-wrap ul, .post .nv-content-wrap ol, .nv-content-wrap ul {
    margin: 0px 0 30px 0;
}
	
/* Mobile Seitenbreite Bugfix */
@media (max-width: 786px){
	body, section, .site-content {
		overflow-x:hidden!important;
		overflow-y: visible;
	}
}
	
/* DJ Seiten */
.autor {
    font-family: var(--headingsfontfamily);
	font-size: 1em;
    font-weight: 400;
}
.autor .elementor-widget-container p {
  	padding: 0 !important;
	margin: 0;
}
.company {
	font-size: 0.9em;
    font-family: var(--headingsfontfamily);
    font-weight: 400;
	text-transform: uppercase;
}

/* Footer Menus */
.footernav .elementor a, .footernav .elementor a:visited, .footernav a, .footernav a:visited  {
	color: #fff !important;
	font-size: 0.9em;
}
.footernav h5 {
	margin-bottom: 15px;
	color: #fff !important;
	font-size: 0.9em;
}
	
/* Footer Bottom Links */
.footerbottom a:link, .direct a:link {
	color: #fff;
}
/* Footer Block */
.crowd .elementor img, .crowd .elementor-widget-container {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    display: flex;
    justify-content: center;
    display: flex !important;
}
/* Galerie */
.gallery img {
	width: 100%;
	height: 250px;
	object-fit: cover;
	margin: 0 !important;
}