/*
Theme Name: mosertronik
Theme URI: 
Author: 
Author URI: 
Description: Das ist das Hauptthema der Website des Unternehmens Mosertronik GmbH
Requires at least: 7.0
Tested up to: 7.0
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mosertronik
Tags: 
*/


/*================================================*/
/*Header styles*/
/*================================================*/
/* 1. Make Header Sticky */
header.wp-block-template-part,
.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 1000;

}

/* 2. Normal Header Height (Padding) */
.site-header {
  transition: padding 1.3s ease !important;
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

/* 3. Reduced Header Height on Scroll */
header.wp-block-template-part.is-scrolled > .wp-block-group,
.site-header.is-scrolled > .wp-block-group {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}


/*================================================*/
/*Menu reiter markieren*/
/*================================================*/
.current-menu-item > a {
    color: #aa0207 !important;         /* Textfarbe ändern */
    font-weight: bold;                 /* Fettdruck */
}

/*================================================*/
/*Akkordeon*/
/*================================================*/
/* --- GEÖFFNETER ZUSTAND (.is-open) --- */
.wp-block-accordion-item.is-open {
    background-color: #ffffff !important; /* Weißer Hintergrund */
}
.wp-block-accordion-item.is-open .wp-block-accordion-heading__toggle-title,
.wp-block-accordion-heading__toggle[aria-expanded="true"] .wp-block-accordion-heading__toggle-title {
    color: #d30000;
}
/* Sanftes Ausklappen statt Aufspringen */
/* 1. Base grid setup for the panel */
.wp-block-accordion-panel {
    display: grid !important;
    transition: grid-template-rows 0.4s ease-out, padding 0.4s ease-out, margin 0.4s ease-out;
}

/* 2. Hide inner content overflowing during the animation */
.wp-block-accordion-panel > * {
    overflow: hidden;
}

/* 3. CLOSED STATE: Triggered immediately when the parent lacks .is-open */
.wp-block-accordion-item:not(.is-open) .wp-block-accordion-panel {
    grid-template-rows: 0fr;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border-width: 0 !important; /* Optional: prevents border jumps if you added borders */
}

/* 4. OPEN STATE: Triggered immediately when parent gets .is-open */
.wp-block-accordion-item.is-open .wp-block-accordion-panel {
    grid-template-rows: 1fr;
    /* We don't need to redeclare padding/margin here. 
       Because the rule above no longer applies, it naturally 
       restores whatever spacing you set in the Gutenberg editor! */
}
.wp-block-accordion-panel{
	margin-top: 0;
}
.wp-block-accordion-heading__toggle-icon{
	color: #AA0207;
}

/*Contact Form!*/

#anfrage .star {color:#ad0408;}
#anfrage {
  background:rgba(255, 255, 255, 0.75);
  padding:20px 15px 30px 15px;
  border:1px #444;
	border-radius:5px;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.6);
	font-size:13px;
}
.form_half {
width: 49.5%;
float: left;
margin-right: 1%;
}
.form_half_last {margin-right:0;
}
#line1, #line2, #line3, #line4, #anfrage textarea {
  width:95% !important;
}
#anfrage input[type="submit"] {
  background:#ad0408;
	color:#fff;
	padding:5px 20px;
  font-size:18px;
	width:200px;
	float:right;
	border:none;
	border-radius:8px;
	margin-bottom:25px;
}
#anfrage input[type="submit"]:hover {
  background:#000;
}
#anfrage input:focus {
  border:1px solid #ad0408;
  background:#FFF;
}
#anfrage div.wpcf7-response-output {
  background:#fff;
  padding: 1.5em 1em;
}
#anfrage span.wpcf7-list-item {
	margin:0;
}
.wpcf7-form-control{
	padding: 5px;
	border: 1px, solid, #aaa;
	border-radius: 3px;
}
.wpcf7-response-output{
	color:#333333;
	border-color: #DC3232 !important;
}
/* Schriften weil gutenberg nd will*/
h1 {
    font-size: 30px !important;
}
h2 {
    font-size: 26px !important;
}
h3 {
    font-size: 22px !important;
}
h4 {
    font-size: 18px !important;
}
/*Fallback schriften*/
body, p, li, a {
    font-family: "Open Sans", "Futura", Helvetica, Arial, Lucida, sans-serif !important;
}

/* Fallback für Überschriften (falls abweichend) */
h1,
h2,
h3,
h4,
h5,
h6,
header a,
footer a,
h2 a{
    font-family: "Futura", Helvetica, Arial, Lucida, sans-serif !important;
    font-weight: 700 !important;
}
/*Translator */
.gt-current-lang  {
	background-color: black;
	padding-top: 15px !important;
}
.nturl, .gt_float_switcher, .gt_options, #gt_float_wrapper, .gt-selected{
		background-color: black !important;
}
.gt-lang-code{
	font-family: "Futura", Helvetica, Arial, Lucida, sans-serif !important;
	padding-top: 4.5px
}
.gt-lang-code {
	font-size: 20px;
	color: #BBBBBB;
}
/*centered div*/
.centered-div {
	margin-right:10vw;
	margin-left:10vw;
}
.centered-div-padding {
	padding-right:10vw !important;
	padding-left:10vw !important;
}
/*Sitemap*/
.rank-math-html-sitemap__title{
	color: #333333;
}
/*Banner*/
/* Basis-Container (ersetzt #mt-custom-banner) */
        #dynamic-popup-banner {
            position: fixed;
            bottom: 0;
            left: 0;
            right: 0;
            z-index: 999999;
            background: linear-gradient(135deg, #8a0106 0%, #aa0207 50%, #8a0106 100%);
            color: #ffffff;
            box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.3);
            font-family: 'Open Sans', Arial, Helvetica, sans-serif;
            border-top: 3px solid #ffffff;
            
            /* Startzustand für Animation (außerhalb des Bildschirms) */
            transform: translateY(100%);
            transition: transform 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
            display: none; /* Verhindert Layout-Sprünge beim Laden */
        }

        /* Aktiv-Zustand für die Animation */
        #dynamic-popup-banner.banner-visible {
            transform: translateY(0);
        }

        /* Innerer Container (ersetzt .mt-banner-inner) */
        .popup-banner-content {
            max-width: 1100px;
            margin: 0 auto;
            padding: 20px 55px 20px 28px;
            position: relative;
        }

        /* Schließen-Button (angepasst für das &times; HTML-Zeichen statt SVG) */
        .popup-banner-close {
            position: absolute;
            top: 12px;
            right: 14px;
            width: 32px;
            height: 32px;
            background: rgba(255, 255, 255, 0.12);
            border: 1px solid rgba(255, 255, 255, 0.3);
            border-radius: 50%;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: background 0.2s, transform 0.2s;
            padding: 0;
            line-height: 1;
            color: #ffffff;
            font-size: 22px;
        }

        .popup-banner-close:hover {
            background: rgba(255, 255, 255, 0.25);
            transform: scale(1.1);
        }

        /* --- Gutenberg Content Styling --- */
        
        /* Überschriften (ersetzt .mt-banner-title) */
        .popup-banner-inner-content h2,
        .popup-banner-inner-content h3,
        .popup-banner-inner-content h4 {
            font-size: 17px !important;
            font-weight: 700!important;
            margin: 0 0 8px 0!important;
            color: #ffffff!important;
            letter-spacing: 0.02em!important;
            line-height: 1.3!important;
        }

        /* Telefon-Icon vor der Überschrift */
        .popup-banner-inner-content h2::before,
        .popup-banner-inner-content h3::before,
        .popup-banner-inner-content h4::before {
            content: "\260E";
            margin-right: 8px;
            font-size: 18px;
        }

        /* Standard-Text (ersetzt .mt-banner-text) */
        .popup-banner-inner-content p {
            font-size: 14px;
            line-height: 1.55;
            margin: 0 0 10px 0;
            color: rgba(255, 255, 255, 0.92);
        }

        .popup-banner-inner-content p:last-child {
            margin-bottom: 0;
        }

        /* Listen / Öffnungszeiten (ersetzt .mt-banner-hours) */
        .popup-banner-inner-content ul {
            display: block;
            margin: 0 0 10px 0;
            padding: 0;
            list-style: none;
        }

        .popup-banner-inner-content ul li {
            font-size: 14px;
            line-height: 1.5;
            color: #ffffff;
            padding-left: 18px;
            position: relative;
        }

        .popup-banner-inner-content ul li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 7px;
            width: 8px;
            height: 8px;
            background: #ffffff;
            border-radius: 50%;
        }

        /* Kursiver Text (ersetzt .mt-banner-note / .mt-banner-thanks) */
        .popup-banner-inner-content em {
            font-size: 13px;
            line-height: 1.5;
            color: rgba(255, 255, 255, 0.8);
            font-style: italic;
            display: inline-block;
            margin-top: 4px;
        }

        /* --- Mobile Anpassungen --- */
@media (max-width: 600px) {
            .popup-banner-content {
                padding: 16px 45px 16px 18px;
            }
            .popup-banner-inner-content h2,
            .popup-banner-inner-content h3 {
                font-size: 15px;
            }
            .popup-banner-inner-content p,
            .popup-banner-inner-content ul li {
                font-size: 13px;
            }
            .popup-banner-inner-content ul {
                display: flex;
                flex-direction: column;
                gap: 4px;
            }
            .popup-banner-close {
                top: 10px;
                right: 10px;
                width: 28px;
                height: 28px;
                font-size: 18px;
            }
        }
/* ==========================================
   FLOATING CONTACT BUTTONS
========================================== */

.custom-float-contact-group {
    position: fixed;
    right: 0;
    top: 20%;
    z-index: 9999;

    display: flex;
    flex-direction: column;
    gap: 6px;
}


/* Einzelner Button */
.custom-float-btn {
    width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    background-color: #bd181e;

    border-radius: 8px 0 0 8px;
    border: none;
    outline: none;

    box-shadow: -2px 2px 6px rgba(0, 0, 0, 0.30);

    cursor: pointer;
    text-decoration: none;

    padding: 0;

    transition:
        background-color 0.25s ease,
        transform 0.25s ease,
        opacity 0.25s ease;
}


.custom-float-btn:hover {
    background-color: #9a1318;
    transform: translateX(-3px);
}


/* ==========================================
   ICONS
========================================== */

.float-icon {
    width: 25px;
    height: 25px;
    fill: #ffffff;
}


/* Mail bekommt wieder den weißen Kreis */
.icon-circle {
    width: 28px;
    height: 28px;

    display: flex;
    align-items: center;
    justify-content: center;

    background-color: #ffffff;
    border-radius: 50%;
}


.mail-icon {
    width: 16px;
    height: 16px;
    fill: #bd181e;
}


/* ==========================================
   MOBILE BUTTONS AUF DESKTOP AUSBLENDEN
========================================== */

.custom-mobile-only {
    display: none;
}


/* ==========================================
   SCROLL TO TOP
========================================== */

.float-scroll-btn {
    position: fixed;

    right: 0;
    bottom: 30px;

    z-index: 9999;

    opacity: 0;
    visibility: hidden;

    transform: translateX(20px);
}


.float-scroll-btn.show {
    opacity: 1;
    visibility: visible;

    transform: translateX(0);
}


.float-scroll-btn.show:hover {
    transform: translateX(-3px);
}


.chevron-icon {
    width: 26px;
    height: 26px;
    fill: #ffffff;
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 600px) {

    /*
     * Mobile:
     *
     * WhatsApp
     * Telefon
     * Mail
     */

    .custom-mobile-only {
        display: flex;
    }


    .custom-float-contact-group {
        top: 45%;
        gap: 5px;
    }


    .custom-float-btn {
        width: 48px;
        height: 48px;
    }


    .float-icon {
        width: 24px;
        height: 24px;
    }


    .float-scroll-btn {
        bottom: 20px;
    }

}
/*Bewerbungsformular*/
/* =========================================
   MOSERTRONIK – BEWERBUNGSFORMULAR
   Contact Form 7
========================================= */

.mt-application-form {
    --mt-red: #c72027;
    --mt-dark: #252525;
    --mt-text: #4a4a4a;
    --mt-border: #d9d9d9;
    --mt-light: #f5f5f5;
    --mt-white: #ffffff;

    max-width: 920px;
    margin: 0 auto;
    color: var(--mt-text);
    font-size: 16px;
    line-height: 1.6;
}


/* INTRO */

.mt-form-intro {
    margin-bottom: 45px;
}

.mt-kicker {
    display: inline-block;
    margin-bottom: 8px;

    color: var(--mt-red);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.8px;
}

.mt-form-intro h2 {
    margin: 0 0 12px;

    color: var(--mt-dark);
    font-size: clamp(30px, 4vw, 42px);
    line-height: 1.15;
    font-weight: 700;
}

.mt-form-intro p {
    max-width: 700px;
    margin: 0;

    font-size: 17px;
    line-height: 1.7;
}


/* FORMULAR ABSCHNITTE */

.mt-form-section {
    padding: 32px;
    margin-bottom: 22px;

    background: var(--mt-white);
    border: 1px solid #e7e7e7;
    border-top: 3px solid var(--mt-red);
}

.mt-form-section h3 {
    margin: 0 0 25px;

    color: var(--mt-dark);
    font-size: 21px;
    font-weight: 700;
}


/* GRID */

.mt-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 26px;
}

.mt-field-full {
    width: 100%;
}

.mt-field + .mt-field-full,
.mt-field-full + .mt-field-full {
    margin-top: 22px;
}


/* LABELS */

.mt-field label {
    display: block;
    margin-bottom: 7px;

    color: var(--mt-dark);
    font-size: 14px;
    font-weight: 600;
}

.mt-field label span {
    color: var(--mt-red);
}


/* INPUTS */

.mt-application-form input[type="text"],
.mt-application-form input[type="email"],
.mt-application-form input[type="tel"],
.mt-application-form select,
.mt-application-form textarea {
    box-sizing: border-box;
    width: 100%;

    padding: 13px 15px;

    color: var(--mt-dark);
    background: #fafafa;

    border: 1px solid var(--mt-border);
    border-radius: 0;

    font: inherit;

    transition:
        border-color 0.2s ease,
        background-color 0.2s ease,
        box-shadow 0.2s ease;
}

.mt-application-form textarea {
    min-height: 150px;
    resize: vertical;
}

.mt-application-form input:focus,
.mt-application-form select:focus,
.mt-application-form textarea:focus {
    outline: none;

    background: #fff;
    border-color: var(--mt-red);

    box-shadow: 0 0 0 2px rgba(199, 32, 39, 0.08);
}

.mt-application-form input::placeholder,
.mt-application-form textarea::placeholder {
    color: #999;
}


/* SELECT */

.mt-application-form select {
    min-height: 50px;
    cursor: pointer;
}


/* UPLOAD */

.mt-upload-section {
    background: var(--mt-light);
}

.mt-upload-info {
    margin: -12px 0 24px;
    font-size: 14px;
    color: #686868;
}

.mt-upload-field {
    padding: 20px;

    background: #fff;
    border: 1px dashed #c9c9c9;
}

.mt-upload-field input[type="file"] {
    width: 100%;
    margin-top: 5px;

    font-size: 14px;
}

.mt-upload-field input[type="file"]::file-selector-button {
    margin-right: 12px;
    padding: 9px 14px;

    color: #fff;
    background: var(--mt-dark);

    border: 0;
    border-radius: 0;

    font-weight: 600;
    cursor: pointer;

    transition: background 0.2s ease;
}

.mt-upload-field input[type="file"]::file-selector-button:hover {
    background: var(--mt-red);
}

.mt-upload-field small {
    display: block;
    margin-top: 9px;

    color: #777;
    font-size: 12px;
}


/* DATENSCHUTZ */

.mt-privacy {
    margin: 28px 0 25px;

    font-size: 14px;
    line-height: 1.6;
}

.mt-privacy .wpcf7-list-item {
    margin: 0;
}

.mt-privacy label {
    display: flex;
    align-items: flex-start;
    gap: 11px;

    cursor: pointer;
}

.mt-privacy input[type="checkbox"] {
    width: 18px;
    height: 18px;
    min-width: 18px;
    margin-top: 3px;

    accent-color: var(--mt-red);
}

.mt-privacy a {
    color: var(--mt-red);
    text-decoration: underline;
    text-underline-offset: 2px;
}


/* SUBMIT BUTTON */

.mt-submit {
    margin-top: 10px;
}

.mt-application-form input[type="submit"] {
    display: inline-block;

    min-width: 220px;
    padding: 14px 28px;

    color: #fff;
    background: var(--mt-red);

    border: 2px solid var(--mt-red);
    border-radius: 0;

    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.3px;

    cursor: pointer;

    transition:
        background 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

.mt-application-form input[type="submit"]:hover {
    color: var(--mt-red);
    background: transparent;

    transform: translateY(-1px);
}

.mt-application-form input[type="submit"]:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}


/* PFLICHTFELDER */

.mt-required {
    margin-top: 12px;

    color: #888;
    font-size: 12px;
}


/* CF7 MELDUNGEN */

.mt-application-form .wpcf7-not-valid-tip {
    margin-top: 6px;

    color: var(--mt-red);
    font-size: 13px;
}

.mt-application-form .wpcf7-response-output {
    margin: 25px 0 0 !important;
    padding: 14px 18px !important;

    border: 0 !important;
    border-left: 4px solid var(--mt-red) !important;

    background: var(--mt-light);
    color: var(--mt-dark);
}


/* SPINNER */

.mt-application-form .wpcf7-spinner {
    vertical-align: middle;
}


/* MOBILE */

@media (max-width: 600px) {

    .mt-form-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .mt-form-section {
        padding: 24px 20px;
    }

    .mt-form-intro {
        margin-bottom: 30px;
    }

    .mt-application-form input[type="submit"] {
        width: 100%;
    }

}


/*navigation dropdown*/
/* =========================================================
   MOBILE NAVIGATION ONLY
   Desktop bleibt Gutenberg-Standard
   ========================================================= */

@media (max-width: 600px) {

	/* =====================================================
	   GEMEINSAM
	   ===================================================== */

	.nav-burger,
	nav.footer-nav-burger {
		--nav-red: #d71920;
		--nav-bg: #3c3c3c;
		--nav-bg-hover: #474747;
		--nav-text: #c7c7c7;
		--nav-white: #ffffff;

		position: relative !important;
	}



	/* =====================================================
	   HEADER NAVIGATION
	   ===================================================== */

	.nav-burger > .wp-block-navigation__responsive-container-open {
		display: flex !important;
		align-items: center;
		justify-content: center;

		width: 42px;
		height: 42px;

		padding: 0;
		margin: 0;

		background: transparent !important;
		border: 0 !important;

		color: var(--nav-red) !important;

		cursor: pointer;
	}


	/* Original Gutenberg Burger verstecken */
	.nav-burger > .wp-block-navigation__responsive-container-open svg {
		display: none !important;
	}


	/* eigener Burger */
	.nav-burger > .wp-block-navigation__responsive-container-open::before {
		content: "";

		display: block;

		width: 24px;
		height: 2px;

		background: var(--nav-red);

		box-shadow:
			0 -7px 0 var(--nav-red),
			0 7px 0 var(--nav-red);
	}


	/* =====================================================
	   HEADER – GEÖFFNETES MENÜ
	   ===================================================== */

	.nav-burger
	> .wp-block-navigation__responsive-container.is-menu-open {
		position: absolute !important;

		top: calc(100% + 5px) !important;
		right: 0 !important;
		left: auto !important;
		bottom: auto !important;

		width: 220px !important;
		min-width: 220px !important;
		height: auto !important;
		min-height: 0 !important;

		padding: 0 !important;
		margin: 0 !important;

		background: var(--nav-bg) !important;
		color: var(--nav-text) !important;

		border: 1px solid #292929 !important;
		border-top: 2px solid var(--nav-red) !important;

		box-shadow: 0 7px 18px rgba(0, 0, 0, .3);

		overflow: visible !important;

		z-index: 999999 !important;
	}


	.nav-burger
	.wp-block-navigation__responsive-close {
		position: relative !important;

		width: 100% !important;
		max-width: none !important;

		padding: 0 !important;
		margin: 0 !important;
	}


	.nav-burger
	.wp-block-navigation__responsive-dialog {
		position: relative !important;

		width: 100% !important;

		padding: 0 !important;
		margin: 0 !important;
	}


	.nav-burger
	.wp-block-navigation__responsive-container-content {
		width: 100% !important;

		padding: 42px 0 0 !important;
		margin: 0 !important;
	}


	/* =====================================================
	   HEADER – CLOSE BUTTON
	   ===================================================== */

	.nav-burger
	.wp-block-navigation__responsive-container-close {
		position: absolute !important;

		top: 6px !important;
		right: 7px !important;

		display: flex !important;
		align-items: center;
		justify-content: center;

		width: 30px !important;
		height: 30px !important;

		padding: 4px !important;
		margin: 0 !important;

		background: transparent !important;
		border: 0 !important;

		color: var(--nav-red) !important;

		cursor: pointer !important;

		z-index: 10;
	}


	.nav-burger
	.wp-block-navigation__responsive-container-close svg {
		display: block !important;

		width: 22px !important;
		height: 22px !important;

		fill: var(--nav-red) !important;

		pointer-events: none;
	}


	.nav-burger
	.wp-block-navigation__responsive-container-close svg path {
		fill: var(--nav-red) !important;
	}


	/* =====================================================
	   HEADER – LISTE
	   ===================================================== */

	.nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation__container {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;

		width: 100% !important;

		gap: 0 !important;

		padding: 0 !important;
		margin: 0 !important;
	}


	.nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item {
		display: block !important;

		width: 100% !important;

		padding: 0 !important;
		margin: 0 !important;
	}


	.nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item__content {
		display: block !important;

		width: 100% !important;

		box-sizing: border-box;

		padding: 10px 18px !important;

		background: transparent !important;
		color: var(--nav-text) !important;

		border-bottom: 1px solid rgba(255,255,255,.06);

		font-family: inherit;
		font-size: 16px;
		font-weight: 700;
		font-style: italic;
		line-height: 1.2;

		text-decoration: none !important;

		transition:
			background .15s ease,
			color .15s ease,
			padding-left .15s ease;
	}


	.nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item__content:hover {
		background: var(--nav-bg-hover) !important;
		color: var(--nav-white) !important;

		padding-left: 23px !important;
	}


	/* aktive Seite */
	.nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.current-menu-item
	> .wp-block-navigation-item__content,

	.nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item__content[aria-current="page"] {
		color: #fff !important;

		border-left: 3px solid var(--nav-red);

		padding-left: 15px !important;
	}



	/* =====================================================
	   FOOTER NAVIGATION
	   ===================================================== */

	nav.footer-nav-burger {
		width: 34px !important;
		min-width: 34px !important;

		flex: 0 0 34px !important;

		padding: 0 !important;
		margin: 0 !important;

		background: transparent !important;
		border: 0 !important;
	}


	/* =====================================================
	   FOOTER BURGER
	   ===================================================== */

	nav.footer-nav-burger
	> .wp-block-navigation__responsive-container-open {
		display: flex !important;
		align-items: center;
		justify-content: center;

		width: 34px !important;
		height: 34px !important;

		padding: 0 !important;
		margin: 0 !important;

		background: transparent !important;
		border: 0 !important;

		color: var(--nav-red) !important;

		cursor: pointer;
	}


	nav.footer-nav-burger
	> .wp-block-navigation__responsive-container-open svg {
		display: none !important;
	}


	nav.footer-nav-burger
	> .wp-block-navigation__responsive-container-open::before {
		content: "";

		width: 15px;
		height: 2px;

		background: var(--nav-red);

		box-shadow:
			0 -5px 0 var(--nav-red),
			0 5px 0 var(--nav-red);
	}



	/* =====================================================
	   FOOTER – GEÖFFNETES MENÜ
	   klappt nach oben
	   ===================================================== */

	nav.footer-nav-burger
	> .wp-block-navigation__responsive-container.is-menu-open {
		position: absolute !important;

		left: 0 !important;
		right: auto !important;

		top: auto !important;
		bottom: calc(100% + 8px) !important;

		width: 220px !important;
		min-width: 220px !important;

		height: auto !important;
		min-height: 0 !important;

		padding: 0 !important;
		margin: 0 !important;

		background: var(--nav-bg) !important;
		color: var(--nav-text) !important;

		border: 1px solid #292929 !important;
		border-top: 2px solid var(--nav-red) !important;

		box-shadow: 0 -5px 15px rgba(0,0,0,.25);

		overflow: visible !important;

		z-index: 999999 !important;
	}


	nav.footer-nav-burger
	> .wp-block-navigation__responsive-container.is-menu-open
	> .wp-block-navigation__responsive-close {
		position: relative !important;

		width: 100% !important;
		max-width: none !important;

		height: auto !important;

		padding: 0 !important;
		margin: 0 !important;
	}


	nav.footer-nav-burger
	.wp-block-navigation__responsive-dialog {
		position: relative !important;

		width: 100% !important;
		height: auto !important;

		padding: 0 !important;
		margin: 0 !important;
	}


	nav.footer-nav-burger
	.wp-block-navigation__responsive-container-content {
		display: block !important;

		width: 100% !important;

		padding: 10px 0 !important;
		margin: 0 !important;
	}



	/* =====================================================
	   FOOTER – CLOSE BUTTON
	   ===================================================== */

	nav.footer-nav-burger
	.wp-block-navigation__responsive-container-close {
		position: absolute !important;

		top: 50% !important;
		right: -22px !important;

		transform: translateY(-50%) !important;

		display: flex !important;
		align-items: center;
		justify-content: center;

		width: 22px !important;
		height: 22px !important;

		padding: 0 !important;
		margin: 0 !important;

		background: var(--nav-red) !important;

		border: 0 !important;
		border-radius: 0 2px 2px 0 !important;

		cursor: pointer !important;

		z-index: 1000000 !important;
	}


	/* X verstecken */
	nav.footer-nav-burger
	.wp-block-navigation__responsive-container-close svg {
		display: none !important;
	}


	/* Pfeil */
	nav.footer-nav-burger
	.wp-block-navigation__responsive-container-close::before {
		content: "";

		width: 6px;
		height: 6px;

		border-right: 2px solid #fff;
		border-bottom: 2px solid #fff;

		transform: rotate(45deg) translate(-1px, -1px);
	}



	/* =====================================================
	   FOOTER – MENÜLISTE
	   ===================================================== */

	nav.footer-nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	ul.wp-block-navigation__container {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;

		position: static !important;

		width: 100% !important;

		gap: 0 !important;

		padding: 0 !important;
		margin: 0 !important;

		background: transparent !important;
		border: 0 !important;
	}


	nav.footer-nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	li.wp-block-navigation-item {
		display: block !important;

		width: 100% !important;

		padding: 0 !important;
		margin: 0 !important;

		background: transparent !important;
	}


	nav.footer-nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item__content {
		display: block !important;

		width: 100% !important;

		box-sizing: border-box;

		padding: 7px 18px !important;
		margin: 0 !important;

		background: transparent !important;
		color: var(--nav-text) !important;

		font-family: inherit !important;
		font-size: 13px !important;
		font-weight: 700 !important;
		font-style: italic !important;
		line-height: 1.15 !important;

		text-decoration: none !important;

		border: 0 !important;

		transition:
			color .15s ease,
			background .15s ease,
			padding-left .15s ease;
	}


	nav.footer-nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item__label {
		color: inherit !important;
	}


	nav.footer-nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item__content:hover {
		background: var(--nav-bg-hover) !important;
		color: #fff !important;

		padding-left: 23px !important;
	}


	nav.footer-nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item__content:hover::before {
		content: "›";

		display: inline-block;

		margin-right: 6px;

		color: var(--nav-red);

		font-style: normal;
	}


	/* aktive Seite */
	nav.footer-nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.current-menu-item
	> .wp-block-navigation-item__content,

	nav.footer-nav-burger
	.wp-block-navigation__responsive-container.is-menu-open
	.wp-block-navigation-item__content[aria-current="page"] {
		background: var(--nav-bg-hover) !important;
		color: #fff !important;

		border-left: 3px solid var(--nav-red) !important;

		padding-left: 15px !important;
	}



	/* =====================================================
	   SOCIAL ICONS IM FOOTER
	   ===================================================== */

	footer .wp-block-social-links {
		flex-shrink: 0 !important;

		margin: 0 !important;
	}


	footer
	.wp-block-group.is-nowrap.is-layout-flex {
		position: relative;

		align-items: center !important;
	}

}

/*video play icon*/
.custom-video-play {
	position: relative;
	width: 100%;
}

/* Video */
.custom-video-play video {
	display: block;
	width: 100%;
    height: 100%;
}

/* Eigener Play Button */
.custom-video-play .custom-play-button {
	position: absolute;
	top: 50%;
	left: 50%;

	transform: translate(-50%, -50%);

	width: 90px;
	height: 90px;

	padding: 0;

	border: 0;
	background: transparent url("https://mosertronik.com/wp-content/uploads/2026/08/PlayIcon.png") center / contain no-repeat !important;

	cursor: pointer;

	z-index: 5;
}

/* Nach Start ausblenden */
.custom-video-play.is-playing .custom-play-button {
	display: none;
}
.custom-video-play video::-moz-media-controls-overlay-play-button {
	display: none !important;
}

@media (max-width: 600px) {
	.willnimma{
		flex-direction: column;
	}
}