/*
Theme Name: go1984
Description: Minimal theme for go1984.de – WooCommerce, Elementor, German Market
Author: logiware GmbH
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 8.0
Text Domain: go1984
License: Proprietary
*/

/* Dieses Theme laedt KEIN Parent-Theme CSS.
   Alle benoetigten Styles sind hier oder in Elementor definiert. */

/* ============================================================
   BASE FONT & RESETS
   ============================================================ */
body,
.lw-menu,
.lw-menu li a,
.lw-navbar,
.lw-topbar,
.lw-btn-cta,
.lw-mobile-menu,
input, select, textarea, button {
    font-family: 'Muli', 'Mulish', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

body {
    margin: 0;
    padding: 0;
    color: #333;
    line-height: 1.6;
    background: #f7f7f7;
}

*, *::before, *::after {
    box-sizing: border-box;
}

a { color: #0c5adb; text-decoration: none; }
a:hover { color: #093f99; }

img { max-width: 100%; height: auto; }

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

/* ============================================================
   WOOCOMMERCE: SHOP / ARCHIVE (Produktuebersicht)
   ============================================================ */
.woocommerce ul.products {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    list-style: none;
    padding: 0;
    margin: 30px 0;
}

@media (max-width: 991px) {
    .woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 575px) {
    .woocommerce ul.products { grid-template-columns: 1fr; }
}

.woocommerce ul.products li.product {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 15px;
    text-align: center;
    transition: box-shadow 0.2s;
    list-style: none;
    display: flex;
    flex-direction: column;
}

.woocommerce ul.products li.product:hover {
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product img {
    max-width: 70%;
    height: auto;
    border-radius: 8px;
    margin: 0 auto 10px;
    display: block;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-category__title,
.woocommerce ul.products li.product h3 {
    font-size: 16px !important;
    font-weight: 700;
    color: #1a1a2e;
    margin: 8px 0 5px;
}

.woocommerce ul.products li.product .price {
    color: #1a1a2e;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 5px;
}

.woocommerce ul.products li.product .price del {
    color: #999;
    font-weight: 400;
}

.woocommerce ul.products li.product .price ins {
    text-decoration: none;
    color: #d4a017;
}

/* Shop Buttons */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.add_to_cart_button,
.woocommerce ul.products li.product a.product_type_variable {
    display: inline-block;
    background: #0c5adb;
    color: #fff !important;
    padding: 10px 22px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 13px;
    border: none;
    cursor: pointer;
    text-transform: none;
    margin-top: auto;
    transition: background 0.2s;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.add_to_cart_button:hover,
.woocommerce ul.products li.product a.product_type_variable:hover {
    background: #093f99;
    color: #fff !important;
}

/* Breadcrumb */
.woocommerce .woocommerce-breadcrumb {
    padding: 15px 0;
    font-size: 14px;
    color: #666;
    margin-bottom: 0;
}

.woocommerce .woocommerce-breadcrumb a {
    color: #0c5adb;
}

/* Result Count & Ordering */
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
    margin-bottom: 20px;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul {
    display: flex;
    list-style: none;
    padding: 0;
    gap: 5px;
    justify-content: center;
    margin: 30px 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    display: inline-block;
    padding: 8px 14px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 6px;
    color: #333;
}

.woocommerce nav.woocommerce-pagination ul li span.current {
    background: #0c5adb;
    color: #fff;
    border-color: #0c5adb;
}

/* ============================================================
   WOOCOMMERCE: EINZELPRODUKT
   ============================================================ */
.woocommerce div.product {
    background: #fff;
    border-radius: 12px;
}

.woocommerce div.product .product_title {
    font-size: 30px;
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 10px;
}

.woocommerce div.product form.cart {
    margin-top: 20px;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    font-size: 24px;
    color: #d4a017;
    font-weight: 700;
}

.woocommerce div.product .woocommerce-product-details__short-description {
    margin: 15px 0;
    color: #555;
    line-height: 1.7;
}

/* Tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs {
    list-style: none;
    padding: 0;
    margin: 30px 0 0;
    display: flex;
    border-bottom: 2px solid #e5e7eb;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    margin: 0;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    display: block;
    padding: 12px 20px;
    font-weight: 600;
    color: #666;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: #0c5adb;
    border-bottom-color: #0c5adb;
}

.woocommerce div.product .woocommerce-tabs .panel {
    padding: 20px 0;
}

/* Related Products */
.woocommerce .related.products {
    margin-top: 40px;
}

.woocommerce .related.products h2 {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 20px;
}

/* Product Meta */
.woocommerce div.product .product_meta {
    font-size: 14px;
    color: #666;
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid #e5e7eb;
}

.woocommerce div.product .product_meta span {
    display: block;
    margin-bottom: 5px;
}

/* ============================================================
   WOOCOMMERCE: WARENKORB / CART
   ============================================================ */
.woocommerce table.shop_table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
}

.woocommerce table.shop_table th {
    background: #f8f9fa;
    padding: 15px;
    text-align: left;
    font-weight: 600;
    font-size: 14px;
    color: #555;
    border-bottom: 1px solid #e5e7eb;
}

.woocommerce table.shop_table td {
    padding: 15px;
    border-bottom: 1px solid #f0f0f0;
    vertical-align: middle;
}

.woocommerce table.shop_table td.product-name a {
    color: #1a1a2e;
    font-weight: 600;
}

.woocommerce table.shop_table img {
    width: 60px;
    height: auto;
    border-radius: 6px;
}

.woocommerce .cart_totals {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 25px;
    margin-top: 20px;
}

.woocommerce .cart_totals h2 {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 15px;
}

.woocommerce .cart_totals table {
    width: 100%;
}

.woocommerce .cart_totals table th,
.woocommerce .cart_totals table td {
    padding: 10px 0;
    border-bottom: 1px solid #f0f0f0;
}

/* ============================================================
   WOOCOMMERCE: CHECKOUT
   ============================================================ */
.woocommerce-checkout .woocommerce {
    max-width: 1200px;
    margin: 0 auto;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 25px;
    background: #fff;
    margin-bottom: 20px;
}

.woocommerce-checkout #customer_details {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 30px;
    margin-bottom: 20px;
}

.woocommerce-checkout h3 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #1a1a2e;
}

.woocommerce #order_review,
.woocommerce #order_review_heading {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 25px;
    margin-bottom: 20px;
}

.woocommerce #order_review_heading {
    border-bottom: none;
    border-radius: 12px 12px 0 0;
    margin-bottom: 0;
    padding-bottom: 0;
}

.woocommerce #order_review {
    border-top: none;
    border-radius: 0 0 12px 12px;
}

/* Payment Methods */
.woocommerce-checkout #payment {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
}

.woocommerce-checkout #payment ul.payment_methods {
    list-style: none;
    padding: 20px;
    margin: 0;
}

.woocommerce-checkout #payment ul.payment_methods li {
    padding: 12px 0;
    border-bottom: 1px solid #f0f0f0;
}

.woocommerce-checkout #payment ul.payment_methods li:last-child {
    border-bottom: none;
}

.woocommerce-checkout #payment div.place-order {
    padding: 20px;
}

/* ============================================================
   WOOCOMMERCE: MEIN KONTO
   ============================================================ */
.woocommerce-account .woocommerce-MyAccount-navigation {
    width: 25%;
    float: left;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none;
    padding: 0;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    overflow: hidden;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
    display: block;
    padding: 12px 20px;
    color: #333;
    border-bottom: 1px solid #f0f0f0;
    transition: background 0.2s;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a {
    background: #f0f4ff;
    color: #0c5adb;
}

.woocommerce-account .woocommerce-MyAccount-content {
    width: 72%;
    float: right;
}

@media (max-width: 767px) {
    .woocommerce-account .woocommerce-MyAccount-navigation,
    .woocommerce-account .woocommerce-MyAccount-content {
        width: 100%;
        float: none;
    }
    .woocommerce-account .woocommerce-MyAccount-navigation {
        margin-bottom: 20px;
    }
}

/* ============================================================
   WOOCOMMERCE: BUTTONS (global)
   ============================================================ */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .button,
.woocommerce #place_order {
    background: #0c5adb;
    color: #fff;
    padding: 12px 28px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 15px;
    border: none;
    cursor: pointer;
    display: inline-block;
    text-align: center;
    transition: background 0.2s;
    line-height: 1.4;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce #place_order:hover {
    background: #093f99;
    color: #fff;
}

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #place_order {
    background: #0c5adb;
    color: #fff;
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #place_order:hover {
    background: #093f99;
}

/* ============================================================
   WOOCOMMERCE: FORMULARE
   ============================================================ */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-size: 15px;
    line-height: 1.5;
    transition: border-color 0.2s;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
    border-color: #0c5adb;
    outline: none;
    box-shadow: 0 0 0 3px rgba(12, 90, 219, 0.1);
}

.woocommerce form .form-row label {
    display: block;
    margin-bottom: 5px;
    font-weight: 600;
    font-size: 14px;
    color: #333;
}

/* ============================================================
   WOOCOMMERCE: NOTICES
   ============================================================ */
.woocommerce-message,
.woocommerce-info {
    border-left: 4px solid #0c5adb;
    background: #f0f4ff;
    padding: 15px 20px 15px 50px;
    border-radius: 0 8px 8px 0;
    margin-bottom: 20px;
    color: #1a1a2e;
    position: relative;
}

.woocommerce-error {
    border-left: 4px solid #e74c3c;
    background: #fef2f2;
    padding: 15px 20px 15px 50px;
    border-radius: 0 8px 8px 0;
    margin-bottom: 20px;
    color: #1a1a2e;
    position: relative;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
}

.woocommerce-message a.button,
.woocommerce-info a.button {
    float: right;
    font-size: 13px;
    padding: 8px 16px;
}

/* ============================================================
   WOOCOMMERCE: QUANTITY
   ============================================================ */
.woocommerce .quantity .qty {
    width: 60px;
    padding: 8px;
    text-align: center;
    border: 1px solid #d1d5db;
    border-radius: 6px;
}

/* ============================================================
   WOOCOMMERCE: ONSALE BADGE
   ============================================================ */
.woocommerce span.onsale {
    background: #e74c3c;
    color: #fff;
    padding: 6px 12px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 700;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 1;
}

/* ============================================================
   WOOCOMMERCE: STAR RATINGS
   ============================================================ */
.woocommerce .star-rating {
    color: #d4a017;
}

/* ============================================================
   LAYOUT: CLEARFIX
   ============================================================ */
.woocommerce::after,
.woocommerce-page::after {
    content: '';
    display: table;
    clear: both;
}


/* ============================================================
   BESTEHENDES CSS (unverändert)
   ============================================================ */

@media only screen and (max-width: 767px) {
    /* Zeige Thumbnails und Produktnamen wieder an */
    .woocommerce-cart .woocommerce table td.product-thumbnail,
    .woocommerce-cart .woocommerce table th.product-name,
    .woocommerce-cart .woocommerce table td.product-name {
        display: table-cell !important;
    }
    
    /* Optional: Thumbnail Größe auf Mobilgeräten anpassen */
    .woocommerce-cart table.cart img {
        width: 50px !important;
        height: auto !important;
    }
}


.wgm-digital-checkout-notice {
    color: #616161 !important;
    display: block;
    float: left;
    width:100%
}   

.mean-container .mean-nav ul li {}

.learn_btn { font-weight:700; color:#ffffff; font-size:16px; letter-spacing:1px; }
.top-address { text-align:left; }
/* .yay-currency-custom-select-wrapper.small { width:fit-content !important; }
.yay-currency-custom-select.open .yay-currency-custom-options { display:block !important; height:auto; opacity:1 !important; visibility:visible !important; pointer-events:all !important; border-radius:0 0 4px 4px; background:#fff !important; } */

.cartcount { font-size:11px; background:#00005a; width:19px; height:19px; display:inline-block; border-radius:100%; text-align:center; line-height:19px; color:#FFF; position:relative; top:-12px; left:-7px; outline:1px solid white; }

.wp-gr.wpac .wp-google-name a { color:#fff !important; }
.wp-gr .wp-google-powered { color:#fff !important; }
.techno_menu > ul > li > a { font-size:17px !important; }
.techno_menu ul .sub-menu li a { text-transform:none !important; }

#lw h4 { color:#6ec1e4; }
.elementor-alert { border-radius:10px !important; }
.style-two .order_now a { text-transform:none !important; }

.label-primary { background-color:#0c5adb; }
.label-warning  { background-color:#FFC000; }
.label-success  { background-color:#61CE70; }
.label { display:inline-block; padding:.50em .8em; font-size:95%; font-weight:bold; line-height:1; color:#fff; text-align:center; vertical-align:baseline; border-radius:.375rem; }

table, th, td, tr { border:0px solid !important; }
.counter_title h4 { text-transform:none !important; }
.h2Version  { color:#6ec1e4; }
.historyLink { color:#6ec1e4 !important; }
.historyLink:hover { color:#3fb0e0 !important; text-decoration:none; }
.historyText { color:#fff; }

.mean-container .mean-nav ul li a { background:#f8f8f8; color:#232323; display:block; float:left; font-size:14px; margin:0; padding:1em 5%; text-align:left; text-decoration:none; text-transform:none !important; width:90%; }
.mean-container .mean-bar { background:linear-gradient(180deg,#ddd 0%,#fff 99%) !important; }
.mean-container .mean-bar::before { color:#19369a !important; }
.mean-container a.meanmenu-reveal span { background:#19369a !important; }
.mean-container a.meanmenu-reveal { color:#19369a !important; }
.mean-container a.meanmenu-reveal:hover span { background:#19369a !important; }

.techno-blog-index.blog-area.techno-blog-area,
.techno-blog-area.techno-blog-archive,
.techno-search-page { padding:100px 0; background:#0B1827 !important; border-bottom:1px solid #1c3c6e !important; }
.techno-single-blog-details { border-radius:10px !important;border: 1px solid #1c3c6e !important;  }

.blog-left-side>div {
    background: #0a0e17 !important;
    border: 1px solid #1c3c6e !important; 
    color: white !important;
}
.blog-left-side .widget ul li {   
    border-top: 1px solid #3b82f6 !important;
}
.blog-left-side .widget ul li a {
    color: #60a5fa !important;
}
.blog-left-side .wp-block-heading{
   color: #3b82f6 !important;
}

.elementor-20393 .elementor-element.elementor-element-eb04e55 .hero-text h1,
.elementor-20393 .elementor-element.elementor-element-eb04e55 .hero-text p { color:#FFFFFF; text-shadow:-1px -1px 0 #0D0F3B,1px -1px 0 #0D0F3B,-1px 1px 0 #0D0F3B,1px 1px 0 #0D0F3B !important; }
.elementor-20393 .elementor-element.elementor-element-eb04e55 .hero-text p { letter-spacing:2px; }
.dreamit-slick-slider .hero-text-wrap h1 { font-size:60px; color:#232323; animation:1s 1.6s fadeInUp both; line-height:1.1; text-shadow:-1px -1px 0 #0D0F3B,1px -1px 0 #0D0F3B,-1px 1px 0 #0D0F3B,1px 1px 0 #0D0F3B !important; }
.elementor-22358 .elementor-element.elementor-element-eb04e55 .hero-text p { text-shadow:-1px -1px 0 #0D0F3B,1px -1px 0 #0D0F3B,-1px 1px 0 #0D0F3B,1px 1px 0 #0D0F3B !important; }

/* Login */
#login h1 a { display:none; }
body.login { background-image:url('/wp-content/uploads/2023/04/go198_desk.jpg'); background-size:cover; display:flex; flex-flow:column nowrap; height:auto !important; min-height:100vh; justify-content:space-between; }
.login form { box-shadow:none; padding:20px; }
#login { background:rgba(255,255,255,.9); width:320px; border-radius:12px; border:1px solid gray; padding:0 !important; box-shadow:.0078125px 0 65px 15px rgba(0,0,0,.93); }
.login #nav { margin:4px 0 0 !important; text-align:center !important; text-transform:uppercase !important; }
.login label { color:#000; font-size:14px; }
.login form .forgetmenot { float:none; }
#loginform { background:rgba(255,255,255,0); border-radius:10px; border:0 transparent; }
#loginform label { text-transform:uppercase !important; }
.login #backtoblog a, .login #nav a { text-decoration:none; color:#000 !important; font-weight:400; color:darkblue !important; }
#login form p.submit { margin-top:15px; }
.login.wp-core-ui .button-primary { background:#0C5ADB; border-color:#0C5ADB; color:#FFF; text-shadow:none; float:none; clear:both; display:block; width:100%; padding:5px; height:auto; font-size:15px; font-weight:500; text-transform:uppercase !important; }
#login-message { margin:20px !important; }

/* WooCommerce */
.order-total strong .amount { visibility:visible; }
.order-total strong { visibility:collapse; }
.woocommerce table.shop_attributes td p { margin:0; padding:8px 0; text-align:left !important; }
.woocommerce-store-notice, p.demo_store { position:absolute; top:0; left:0; right:0; margin:0; width:100%; font-size:1em; padding:1em 0; text-align:center; background-color:#7f54b3; color:#fff; z-index:99998; box-shadow:0 1px 1em rgba(0,0,0,.2); display:none; height:max-content !important; }

.badge { position:fixed; top:10px; left:0; background-color:#fedd89; color:#b38702; border-top:1px solid; border-radius:0 5px 5px 0 !important; border-right:1px solid; border-bottom:1px solid; border-left:20px solid #fedd89; padding-right:20px !important; }
.pricing_top_bar { position:relative; }

.mean-container .mean-nav { background:#f8f8f8 none repeat scroll 0 0 !important; float:none; left:0; position:absolute; right:0; top:60px; }
.mean-container .mean-nav ul li { background:#f8f8f8 !important; }

/* .yay-currency-dropdown { border-radius:4px; height:30px !important; max-width:96% !important; padding-top:8px !important; padding-bottom:10px !important; padding-left:16px !important; } */
.techno_menu ul li:hover > .sub-menu { z-index:9999 !important; }


/* ============================================================
   MEANMENU VOLLSTÄNDIG DEAKTIVIEREN
   Das Techno Parent-Theme lädt MeanMenu, das auf echten
   Mobilgeräten (User-Agent-basiert) aktiviert wird und unser
   Custom Mobile-Menü (lw-*) überlagert/stört.
   Im Browser-Responsive-Modus wird MeanMenu NICHT aktiviert,
   daher tritt das Problem dort nicht auf.
   ============================================================ */
html body .mean-container,
html body .mean-bar,
html body .mean-nav,
html body .mean-push,
html body .meanmenu-reveal,
html body nav.mean-nav,
html body .mean-container .mean-bar,
html body .mean-container .mean-nav,
html body .mean-container a.meanmenu-reveal,
html body .mean-container .mean-bar *,
html body .mean-container .mean-nav *,
html body a.meanmenu-reveal {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  width: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  position: absolute !important;
  z-index: -9999 !important;
  clip: rect(0, 0, 0, 0) !important;
}

/* Sicherstellen, dass MeanMenu unser Custom-Menü-Container
   nicht per JS versteckt oder verändert */
html body #lw-header-wrap,
html body #lw-navbar,
html body .lw-navbar,
html body .lw-navbar-inner,
html body #lw-hamburger,
html body .lw-hamburger,
html body #lw-mobile-menu,
html body .lw-mobile-menu {
  clip: auto !important;
  clip-path: none !important;
}

/* ============================================================
   DARK HEADER – NEU  (lw-* Klassen)
   ============================================================ */

:root {
  --lw-bg-topbar:   #080d14;
  --lw-bg-navbar:   #111827;
  --lw-border:      rgba(255, 255, 255, 0.07);
  --lw-cyan:        #22d3ee;
  --lw-cyan-dim:    rgba(34, 211, 238, 0.12);
  --lw-yellow:      #f59e0b;
  --lw-text:        #e2e8f0;
  --lw-text-muted:  #94a3b8;
  --lw-radius-sm:   6px;
  --lw-radius:      10px;
  --lw-transition:  0.18s ease;
}


/* ═══════════════════════════════════════════════════════
   NAVBAR + TOPBAR IMMER SICHTBAR – gegen Parent-Theme
   das auf Mobile display:none setzt
═══════════════════════════════════════════════════════ */
html body .em40_header_area_main,
html body .lw-topbar,
html body .lw-navbar,
html body div#lw-navbar {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  overflow: visible !important;
}
html body .lw-navbar-inner {
  display: flex !important;
  visibility: visible !important;
}

/* ══════════════════════════════════════════════════════════════
   ALTEN HEADER KOMPLETT AUSBLENDEN
   Sehr hohe Spezifität + !important um Parent-Theme zu schlagen
   ══════════════════════════════════════════════════════════════ */
html body .techno-header-top          { display: none !important; }
html body .techno-main-menu           { display: none !important; }
html body .em40_header_area_main .menu-bar { display: none !important; }
html body .menu-bar                   { display: none !important; }
html body .menu-bar *                 { display: none !important; }
html body .techno-main-menu *         { display: none !important; }
html body div.home-2.mbm              { display: none !important; }

/* ══════════════════════════════════════════════════════════════
   LOGO: Altes JPEG mit weißem Hintergrund durch transparentes
   PNG ersetzen. Das Bild wird per CSS content-swap ersetzt.
   HINWEIS: Wenn das Logo in WordPress-Customizer auf das
   transparente PNG geändert wurde, kann dieser Block entfernt
   werden.
   ══════════════════════════════════════════════════════════════ */
.lw-logo-img {
  content: url('https://www.go1984.de/wp-content/uploads/logiware_composition_logo.png');
}
/* Fallback falls obige URL nicht existiert – bitte ggf. anpassen
   auf den tatsächlichen Pfad des transparenten Logos: */
/* .lw-logo-img {
  content: url('/wp-content/themes/techno-child/images/logiware_composition_logo.png');
} */

/* ══════════════════════════════════════════════════════════════
   NAV-LINK FARBEN – Parent-Theme überschreiben
   Techno setzt a { color: #0c5adb } global, daher !important
   ══════════════════════════════════════════════════════════════ */

/* Haupt-Nav-Links */
html body .lw-navbar .lw-menu > li > a,
html body .lw-navbar .lw-nav > ul > li > a,
html body .lw-navbar .lw-menu > li > a:link,
html body .lw-navbar .lw-nav > ul > li > a:link,
html body .lw-navbar .lw-menu > li > a:visited,
html body .lw-navbar .lw-nav > ul > li > a:visited {
  color: var(--lw-text-muted) !important;
  background: transparent !important;
  text-decoration: none !important;
  border: none !important;
  text-transform: none !important;
}
html body .lw-navbar .lw-menu > li > a:hover,
html body .lw-navbar .lw-nav > ul > li > a:hover,
html body .lw-navbar .lw-menu > li:hover > a,
html body .lw-navbar .lw-nav > ul > li:hover > a {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.06) !important;
}
html body .lw-navbar .lw-menu > li.current-menu-item > a,
html body .lw-navbar .lw-nav > ul > li.current-menu-item > a,
html body .lw-navbar .lw-menu > li.current-menu-ancestor > a,
html body .lw-navbar .lw-nav > ul > li.current-menu-ancestor > a,
html body .lw-navbar .lw-menu > li.current-menu-parent > a,
html body .lw-navbar .lw-nav > ul > li.current-menu-parent > a {
  color: var(--lw-cyan) !important;
  background: var(--lw-cyan-dim) !important;
}

/* Dropdown Sub-Menüs */
html body .lw-navbar .lw-menu .sub-menu,
html body .lw-navbar .lw-nav .sub-menu {
  display: none !important;
}
/* NUR 2. Ebene bei Hover öffnen */
html body .lw-navbar .lw-menu > li:hover > .sub-menu,
html body .lw-navbar .lw-nav > ul > li:hover > .sub-menu {
  display: block !important;
}
/* 3. Ebene: erst öffnen wenn das li in der 2. Ebene gehovert wird */
html body .lw-navbar .lw-menu .sub-menu li:hover > .sub-menu,
html body .lw-navbar .lw-nav .sub-menu li:hover > .sub-menu {
  display: block !important;
}
html body .lw-navbar .lw-menu .sub-menu li a,
html body .lw-navbar .lw-nav .sub-menu li a,
html body .lw-navbar .lw-menu .sub-menu li a:link,
html body .lw-navbar .lw-nav .sub-menu li a:link,
html body .lw-navbar .lw-menu .sub-menu li a:visited,
html body .lw-navbar .lw-nav .sub-menu li a:visited {
  color: var(--lw-text-muted) !important;
  background: transparent !important;
  text-decoration: none !important;
  text-transform: none !important;
  border: none !important;
}
html body .lw-navbar .lw-menu .sub-menu li a:hover,
html body .lw-navbar .lw-nav .sub-menu li a:hover {
  color: var(--lw-cyan) !important;
  background: var(--lw-cyan-dim) !important;
}

/* CTA-Button – auf Desktop ausblenden */
html body .lw-navbar a.lw-btn-cta,
html body .lw-navbar .lw-btn-cta { display: none !important; }

/* Icon-Buttons (Suche, Warenkorb) */
html body .lw-navbar .lw-icon-btn,
html body .lw-navbar .lw-icon-btn:link,
html body .lw-navbar .lw-icon-btn:visited {
  color: var(--lw-text-muted) !important;
  text-decoration: none !important;
}
html body .lw-navbar .lw-icon-btn:hover {
  color: var(--lw-cyan) !important;
}

/* Top-Bar – alle Elemente (Links UND Spans) gleiche Farbe */
html body .lw-topbar a,
html body .lw-topbar a:link,
html body .lw-topbar a:visited,
html body .lw-topbar .lw-tb-item,
html body .lw-topbar span.lw-tb-item {
  color: var(--lw-text-muted) !important;
  text-decoration: none !important;
}
html body .lw-topbar a:hover,
html body .lw-topbar a.lw-tb-item:hover { color: var(--lw-cyan) !important; }
html body .lw-topbar .lw-social-icon { color: var(--lw-text-muted) !important; }
html body .lw-topbar .lw-social-icon:hover { color: var(--lw-cyan) !important; }

/* Mobile Menü Links */
html body .lw-mobile-menu a,
html body .lw-mobile-menu a:link,
html body .lw-mobile-menu a:visited { color: var(--lw-text-muted) !important; text-decoration: none !important; }
html body .lw-mobile-menu a:hover   { color: var(--lw-cyan) !important; }

/* ── TOP BAR ── */
.lw-topbar {
  background: var(--lw-bg-topbar);
  border-bottom: 1px solid var(--lw-border);
  position: relative;
  z-index: 200;
}
.lw-topbar-inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 1.5rem;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.lw-topbar-left {
  display: flex;
  align-items: center;
  gap: 1.4rem;
  overflow: hidden;
}
.lw-topbar-item {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.72rem;
  color: var(--lw-text-muted);
  text-decoration: none;
  white-space: nowrap;
  transition: color var(--lw-transition);
}
.lw-topbar-item:hover { color: var(--lw-cyan); }
.lw-topbar-item svg { width: 13px; height: 13px; flex-shrink: 0; }

.lw-topbar-right {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-shrink: 0;
}
.lw-social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px; height: 26px;
  border-radius: var(--lw-radius-sm);
  border: 1px solid var(--lw-border);
  color: var(--lw-text-muted);
  text-decoration: none;
  transition: all var(--lw-transition);
  line-height: 1;
}
.lw-social-icon svg { width: 12px; height: 12px; }
.lw-social-icon i   { font-size: 12px; }
.lw-social-icon:hover { border-color: var(--lw-cyan); color: var(--lw-cyan); background: var(--lw-cyan-dim); }

.lw-topbar-divider { width: 1px; height: 16px; background: var(--lw-border); margin: 0 0.2rem; }

.lw-lang-badge {
  display: flex; align-items: center; gap: 0.3rem;
  padding: 2px 8px; border-radius: 20px;
  border: 1px solid var(--lw-border);
  font-size: 0.68rem; font-weight: 500; letter-spacing: 0.04em;
  text-transform: uppercase; cursor: pointer;
  color: var(--lw-text-muted);
  transition: all var(--lw-transition);
}
.lw-lang-badge:hover,
.lw-lang-badge.lw-lang-active { border-color: var(--lw-cyan); color: var(--lw-cyan); background: var(--lw-cyan-dim); }

/* ── MAIN NAVBAR ── */
.lw-navbar {
  background: var(--lw-bg-navbar);
  border-bottom: 1px solid var(--lw-border);
  position: relative;
  z-index: 190;
  transition: box-shadow 0.3s ease;
}
.lw-navbar--sticky {
  position: sticky;
  top: 0;
  box-shadow: 0 4px 32px rgba(0, 0, 0, 0.45);
}
.lw-navbar-inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 1.5rem;
  height: 66px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

/* Logo – ersetzt das JPEG mit weißem Hintergrund durch das transparente PNG */
.lw-logo { display: flex; align-items: center; flex-shrink: 0; text-decoration: none; }
.lw-logo-img {
  height: 44px !important; width: auto; display: block;
  content: url('https://www.go1984.de/wp-content/uploads/logiware_composition_logo.png');
}

/* Desktop Nav */
.lw-nav { display: flex; align-items: center; flex: 1; overflow: visible; }

/*
  WordPress rendert wp_nav_menu() mit der class die im menu_class-Parameter
  angegeben wird. Da 'main-menu' als theme_location nicht registriert ist,
  fällt WP auf das erste verfügbare Menü zurück und nutzt dessen eigene
  CSS-Klasse "sub-menu" für das <ul>. Wir stylen daher BEIDE Klassen:
  .lw-menu (falls korrekt) und .lw-nav > ul (als sicherer Fallback).
*/
.lw-nav > ul,
.lw-menu {
  display: flex; align-items: center; gap: 0.1rem;
  list-style: none; margin: 0; padding: 0;
}

/* Erste Ebene */
.lw-nav > ul > li,
.lw-menu > li {
  position: relative;
}

.lw-nav > ul > li > a,
.lw-menu > li > a {
  display: flex; align-items: center; gap: 0.3rem;
  padding: 0.5rem 0.8rem;
  border-radius: var(--lw-radius-sm);
  font-size: 1rem; font-weight: 500;
  color: var(--lw-text-muted) !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: all var(--lw-transition);
  text-transform: none !important;
  background: transparent !important;
}

.lw-nav > ul > li > a:hover,
.lw-nav > ul > li:hover > a,
.lw-menu > li > a:hover,
.lw-menu > li:hover > a {
  color: #ffffff !important;
  background: rgba(255,255,255,0.07) !important;
}

.lw-nav > ul > li.current-menu-item > a,
.lw-nav > ul > li.current-menu-ancestor > a,
.lw-menu > li.current-menu-item > a,
.lw-menu > li.current-menu-ancestor > a {
  color: var(--lw-cyan) !important;
  background: var(--lw-cyan-dim) !important;
}

/* Unsichtbare Brücke zwischen Menüpunkt und Dropdown,
   damit die Maus den 4px Gap überqueren kann */
.lw-nav > ul > li > .sub-menu::before,
.lw-menu > li > .sub-menu::before {
  content: '';
  position: absolute;
  top: -8px;
  left: 0;
  right: 0;
  height: 8px;
}

/* WooCommerce Mini-Cart der im Menü landet – verstecken */
.lw-nav ul#site-header-cart { display: none !important; }

/* Dropdowns – initial versteckt, bei hover sichtbar */
.lw-nav > ul > li > .sub-menu,
.lw-menu > li > .sub-menu {
  display: none !important;
  position: absolute; top: calc(100% + 4px); left: 0;
  width: max-content;
  min-width: 210px;
  max-width: 340px;
  background: #1a2438;
  border: 1px solid var(--lw-border);
  border-radius: var(--lw-radius);
  padding: 0.4rem;
  box-shadow: 0 20px 40px rgba(0,0,0,0.5);
  z-index: 9999;
  list-style: none; margin: 0;
}

.lw-nav > ul > li:hover > .sub-menu,
.lw-menu > li:hover > .sub-menu {
  display: block !important;
}

.lw-nav .sub-menu li a,
.lw-menu .sub-menu li a {
  display: flex; align-items: center;
  padding: 0.45rem 0.75rem;
  font-size: 1.0rem; font-weight: 400;
  color: var(--lw-text-muted) !important;
  text-decoration: none !important;
  border-radius: var(--lw-radius-sm);
  text-transform: none !important;
  background: transparent !important;
  transition: all var(--lw-transition);
  white-space: nowrap;
}

.lw-nav .sub-menu li a:hover,
.lw-menu .sub-menu li a:hover {
  color: var(--lw-cyan) !important;
  background: var(--lw-cyan-dim) !important;
}

/* Nav Right */
.lw-nav-right { display: flex; align-items: center; gap: 0.5rem; flex-shrink: 0; }

.lw-icon-btn {
  display: flex; align-items: center; justify-content: center;
  width: 38px; height: 38px;
  border-radius: var(--lw-radius-sm);
  border: 1px solid var(--lw-border);
  color: var(--lw-text-muted);
  background: transparent; cursor: pointer;
  text-decoration: none; position: relative;
  transition: all var(--lw-transition);
}
.lw-icon-btn svg { width: 18px; height: 18px; }
.lw-icon-btn:hover { border-color: var(--lw-cyan); color: var(--lw-cyan); background: var(--lw-cyan-dim); }

.lw-cart-badge {
  position: absolute; top: -5px; right: -5px;
  width: 17px; height: 17px;
  background: var(--lw-yellow); color: #000;
  font-size: 0.6rem; font-weight: 700; border-radius: 50%;
  display: none; align-items: center; justify-content: center;
  line-height: 1;
}
/* Beide Klassen abdecken – PHP generiert --on, CSS hatte --visible */
.lw-cart-badge--visible,
.lw-cart-badge--on { display: flex !important; }

.lw-btn-cta {
  display: flex; align-items: center; gap: 0.4rem;
  padding: 0.5rem 1.1rem;
  background: var(--lw-yellow); color: #000;
  font-size: 0.825rem; font-weight: 700; letter-spacing: 0.02em;
  border-radius: var(--lw-radius-sm);
  text-decoration: none; white-space: nowrap;
  box-shadow: 0 4px 14px rgba(245,158,11,0.3);
  transition: all var(--lw-transition);
}
.lw-btn-cta svg { width: 14px; height: 14px; flex-shrink: 0; }
.lw-btn-cta:hover { background: #fbbf24; color: #000; text-decoration: none; transform: translateY(-1px); box-shadow: 0 6px 20px rgba(245,158,11,0.4); }

/* Suchleiste */
.lw-search-bar {
  height: 0; overflow: hidden;
  background: #0e1420;
  border-top: 0 solid var(--lw-border);
  transition: height 0.25s ease, border-top-width 0.25s ease;
}
.lw-search-bar--open { height: 56px; border-top-width: 1px; }
.lw-search-bar form {
  max-width: 1280px; margin: 0 auto; padding: 0 1.5rem;
  height: 56px; display: flex; align-items: center; gap: 0.75rem;
}
.lw-search-bar input[type="search"] {
  flex: 1; background: transparent; border: none; outline: none;
  color: var(--lw-text); font-size: 1rem; caret-color: var(--lw-cyan);
}
.lw-search-bar input::placeholder { color: var(--lw-text-muted); }
.lw-search-bar button[type="submit"] {
  background: transparent; border: none;
  color: var(--lw-text-muted); cursor: pointer;
  display: flex; align-items: center;
  transition: color var(--lw-transition);
}
.lw-search-bar button[type="submit"]:hover { color: var(--lw-cyan); }
.lw-search-bar button[type="submit"] svg { width: 20px; height: 20px; }

/* ── HAMBURGER ── */
.lw-hamburger {
  display: none; flex-direction: column; justify-content: center;
  align-items: center; gap: 5px;
  width: 44px; height: 44px;   /* 44px = Apple HIG minimum touch target */
  background: transparent;
  border: 1px solid var(--lw-border);
  border-radius: var(--lw-radius-sm);
  cursor: pointer;
  -webkit-tap-highlight-color: transparent; /* iOS: kein grauer Flash */
  touch-action: manipulation;               /* iOS: kein 300ms Delay */
  -webkit-appearance: none;                 /* iOS: Button-Reset */
  transition: border-color var(--lw-transition);
}
.lw-hamburger:hover { border-color: var(--lw-cyan); }
.lw-hamburger span {
  display: block; width: 20px; height: 2px;
  background: var(--lw-text-muted); border-radius: 2px;
  transition: all 0.3s ease; transform-origin: center;
}
.lw-hamburger--open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.lw-hamburger--open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.lw-hamburger--open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ── MOBILE MENÜ ── */
.lw-mobile-menu {
  display: none;
  position: fixed; top: 0; left: 0; right: 0; bottom: 0;
  background: var(--lw-bg-navbar);
  z-index: 188; overflow-y: auto;
  padding-top: 110px; /* Höhe Topbar (38px) + Navbar (66px) + 6px Puffer */
  transform: translateX(-100%);
  transition: transform 0.3s cubic-bezier(0.4,0,0.2,1);
}
.lw-mobile-menu--open { transform: translateX(0); }

/* Alle möglichen Klassen die wp_nav_menu() generieren kann */
.lw-mobile-menu ul,
.lw-mobile-menu .lw-mob-list,
.lw-mobile-menu .lw-mobile-nav-list,
.lw-mobile-menu .menu {
  list-style: none; margin: 0; padding: 0;
}

/* Erste Ebene */
.lw-mobile-menu > ul > li,
.lw-mobile-menu .lw-mob-list > li,
.lw-mobile-menu .lw-mobile-nav-list > li,
.lw-mobile-menu .menu > li {
  border-bottom: 1px solid var(--lw-border);
  position: relative;
}

/* Alle li in Sub-Menüs brauchen auch position:relative
   damit der Toggle-Button (position:absolute) korrekt sitzt */
.lw-mobile-menu .sub-menu li {
  position: relative;
  border-bottom: 1px solid var(--lw-border);
}

/* Alle Links */
.lw-mobile-menu a,
.lw-mobile-menu a:link,
.lw-mobile-menu a:visited {
  display: block;
  padding: 0.9rem 3.5rem 0.9rem 1.5rem; /* rechts Platz für Toggle-Button */
  color: var(--lw-text) !important;
  text-decoration: none !important;
  font-size: 1rem; font-weight: 500;
  transition: color var(--lw-transition);
  background: transparent !important;
}
.lw-mobile-menu a:hover { color: var(--lw-cyan) !important; }
.lw-mobile-menu .current-menu-item > a { color: var(--lw-cyan) !important; }

/* Sub-Menüs: standardmäßig GESCHLOSSEN */
.lw-mobile-menu .sub-menu {
  display: none !important;
  background: rgba(0, 0, 0, 0.2);
  list-style: none; padding: 0; margin: 0;
  border-top: 1px solid var(--lw-border);
}

/* Sub-Menü Links etwas eingerückt */
.lw-mobile-menu .sub-menu a,
.lw-mobile-menu .sub-menu a:link,
.lw-mobile-menu .sub-menu a:visited {
  padding-left: 2.5rem !important;
  font-size: 0.9rem !important;
  font-weight: 400 !important;
  color: var(--lw-text-muted) !important;
}
.lw-mobile-menu .sub-menu a:hover { color: var(--lw-cyan) !important; }

/* Sub-Menü sichtbar wenn Parent .lw-sub-open hat */
.lw-mobile-menu .lw-sub-open > .sub-menu { display: block !important; }

/* 3. Menüebene Mobile: tiefere Einrückung + dunkler */
.lw-mobile-menu .sub-menu .sub-menu {
  background: rgba(0, 0, 0, 0.3) !important;
}
.lw-mobile-menu .sub-menu .sub-menu a,
.lw-mobile-menu .sub-menu .sub-menu a:link,
.lw-mobile-menu .sub-menu .sub-menu a:visited {
  padding-left: 3.5rem !important;
  font-size: 0.85rem !important;
}

/* WPML Sprachumschalter im Mobile-Menü (alt, Fallback) */
.lw-mobile-menu .wpml-ls-item a,
.lw-mobile-menu .wpml-ls-item a:link {
  padding-left: 1.5rem !important;
  font-size: 0.875rem !important;
}

/* ── Mobile-Menü: Sprache + Währung ── */
.lw-mob-lang {
  border-top: 1px solid var(--lw-border);
  padding: 1rem 1.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}

/* Flaggen nebeneinander */
.lw-mob-flags {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}
.lw-mob-flags div {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}
.lw-mob-flags ul {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 0.4rem !important;
}
.lw-mob-flags li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
.lw-mob-flags a,
.lw-mob-flags a:link,
.lw-mob-flags a:visited {
  display: flex !important;
  align-items: center !important;
  gap: 0.35rem !important;
  padding: 0.4rem 0.6rem !important;
  border: 1px solid var(--lw-border) !important;
  border-radius: var(--lw-radius-sm) !important;
  font-size: 0.78rem !important;
  font-weight: 500 !important;
  color: var(--lw-text-muted) !important;
  text-decoration: none !important;
  background: transparent !important;
  transition: all var(--lw-transition) !important;
  white-space: nowrap !important;
}
.lw-mob-flags a:hover,
.lw-mob-flags .wpml-ls-current-language a {
  border-color: var(--lw-cyan) !important;
  color: var(--lw-cyan) !important;
  background: var(--lw-cyan-dim) !important;
}
.lw-mob-flags img {
  width: 20px !important;
  height: 14px !important;
  border-radius: 2px !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.08) !important;
}

/* YayCurrency im Mobile-Menü */
.lw-mob-currency {
  display: flex;
  align-items: center;
}
.lw-mob-currency .yay-currency-custom-select__trigger,
.lw-mob-currency .yay-currency-custom-select-wrapper {
  background: transparent !important;
  border: 1px solid var(--lw-border) !important;
  border-radius: var(--lw-radius-sm) !important;
  color: var(--lw-text-muted) !important;
  font-size: 0.78rem !important;
  padding: 0.35rem 0.6rem !important;
  min-width: auto !important;
  width: auto !important;
}
.lw-mob-currency .yay-currency-custom-select__trigger:hover {
  border-color: var(--lw-cyan) !important;
  color: var(--lw-cyan) !important;
}
.lw-mob-currency .yay-currency-custom-options {
  background: #1a2438 !important;
  border: 1px solid var(--lw-border) !important;
  border-radius: var(--lw-radius) !important;
  box-shadow: 0 12px 32px rgba(0,0,0,0.5) !important;
  bottom: 100% !important;
  top: auto !important;
  margin-bottom: 4px !important;
}

/* Toggle-Button (+ / -) neben Eltern-Links */
.lw-sub-toggle,
.lw-submenu-toggle {
  position: absolute;
  right: 1rem;
  /* Feste Position: Mitte der ersten Zeile (Link-Padding 0.9rem + halbe Zeilenhöhe)
     statt top:50% das bei aufgeklapptem Sub-Menü verrutscht */
  top: 0.9rem;
  width: 32px; height: 32px;
  background: transparent;
  border: 1px solid var(--lw-border);
  border-radius: var(--lw-radius-sm);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  color: var(--lw-text-muted);
  transition: all var(--lw-transition);
  flex-shrink: 0;
}
.lw-sub-toggle svg,
.lw-submenu-toggle svg {
  width: 14px; height: 14px;
  transition: transform 0.25s ease;
  pointer-events: none;
}
.lw-sub-toggle:hover,
.lw-submenu-toggle:hover {
  border-color: var(--lw-cyan);
  color: var(--lw-cyan);
}
/* Pfeil dreht sich wenn offen */
.lw-sub-open > .lw-sub-toggle svg,
.lw-sub-open > .lw-submenu-toggle svg { transform: rotate(180deg); }

body.lw-no-scroll { overflow: hidden; }

/* 3. Menüebene Desktop: Flyout nach rechts
   Beide Selektoren (.lw-menu UND .lw-nav) da WordPress die
   menu_class ignoriert wenn theme_location nicht registriert ist. */

/* li in der 2. Ebene braucht position:relative als Anker für das Flyout */
html body .lw-navbar .lw-menu .sub-menu li,
html body .lw-navbar .lw-nav .sub-menu li {
    position: relative !important;
}

/* Parent-Dropdown darf Flyout nicht abschneiden */
html body .lw-navbar .lw-menu .sub-menu,
html body .lw-navbar .lw-nav .sub-menu {
    overflow: visible !important;
}

html body .lw-navbar .lw-menu .sub-menu .sub-menu,
html body .lw-navbar .lw-nav .sub-menu .sub-menu {
    display: none !important;
    position: absolute !important;
    left: 100% !important;
    top: 0 !important;
    width: max-content !important;
    min-width: 210px !important;
    max-width: 340px !important;
    background: #1a2438 !important;
    border: 1px solid var(--lw-border) !important;
    border-radius: var(--lw-radius) !important;
    padding: 0.4rem !important;
    box-shadow: 0 20px 40px rgba(0,0,0,0.5) !important;
    z-index: 10000 !important;
    list-style: none !important;
    margin: 0 !important;
}

/* Unsichtbare Brücke für 3. Ebene (Flyout nach rechts → Brücke links) */
html body .lw-navbar .lw-menu .sub-menu .sub-menu::before,
html body .lw-navbar .lw-nav .sub-menu .sub-menu::before {
    content: '';
    position: absolute;
    top: 0;
    left: -8px;
    bottom: 0;
    width: 8px;
}

/* Pfeil-Indikator: zeigt an dass ein 2.-Ebene-Eintrag Kinder hat */
html body .lw-navbar .lw-menu .sub-menu .menu-item-has-children > a::after,
html body .lw-navbar .lw-nav .sub-menu .menu-item-has-children > a::after {
    content: '›';
    margin-left: auto;
    padding-left: 0.5rem;
    font-size: 1.1em;
    opacity: 0.5;
}

/* Bullet-Punkte in 3. Ebene entfernen (Parent-Theme setzt list-style) */
html body .lw-navbar .lw-menu .sub-menu .sub-menu li,
html body .lw-navbar .lw-nav .sub-menu .sub-menu li {
    list-style: none !important;
}
html body .lw-navbar .lw-menu .sub-menu .sub-menu li::before,
html body .lw-navbar .lw-nav .sub-menu .sub-menu li::before,
html body .lw-navbar .lw-menu .sub-menu .sub-menu li::marker,
html body .lw-navbar .lw-nav .sub-menu .sub-menu li::marker {
    content: none !important;
    display: none !important;
}

/* ── RESPONSIVE ──
   Breakpoint: 768px (nur Smartphones)
   Alle Regeln mit !important gegen Parent-Theme Overrides.
──────────────────────────────────────────────────────── */

/* Ab 769px: Desktop-Ansicht erzwingen */
@media (min-width: 769px) {
  html body .lw-navbar .lw-nav       { display: flex !important; }
  html body .lw-navbar .lw-hamburger { display: none !important; }
  html body .lw-mobile-menu          { display: none !important; transform: translateX(-100%) !important; }
}

/* Bis 768px: Hamburger-Menü */
@media (max-width: 768px) {
  /* Desktop-Nav ausblenden */
  html body .lw-navbar .lw-nav                    { display: none !important; }
  html body .lw-navbar .lw-nav-right .lw-btn-cta  { display: none !important; }

  /* Hamburger anzeigen – maximale Spezifität */
  html body div.lw-navbar div.lw-navbar-inner button.lw-hamburger {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  /* Mobile-Menü bereit (zugeklappt via transform) */
  html body .lw-mobile-menu { display: block !important; }

  /* Topbar: nur Adresse anzeigen, Rest ausblenden */
  .lw-topbar-left .lw-topbar-item                 { display: none !important; }
  .lw-topbar-left .lw-topbar-item:first-child     { display: flex !important; }
}

/* Kleine Smartphones (<576px): Topbar weg, aber Navbar + Mobile-Menü bleiben sichtbar */
@media (max-width: 575px) {
  html body .lw-topbar                            { display: none !important; }
  /* Navbar bleibt sichtbar */
  html body #lw-navbar,
  html body .lw-navbar                            { display: block !important; visibility: visible !important; }
  html body .lw-navbar-inner                      { display: flex !important; }
  /* Hamburger explizit sichtbar */
  html body div#lw-navbar div.lw-navbar-inner button.lw-hamburger {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
  /* Mobile-Menü sichtbar (noch zugeklappt via transform) */
  html body #lw-mobile-menu,
  html body .lw-mobile-menu                       { display: block !important; visibility: visible !important; padding-top: 66px !important; }
}

@media (max-width: 380px) {
  .lw-mobile-menu a { font-size: 0.9rem !important; }
}


/* Topbar-Text kleiner */
html body .lw-topbar .lw-tb-item {
  font-size: 0.75rem !important;
}

/* ============================================================
   go1984 – YayCurrency Pro Switcher Custom Styles
   Design System: go1984-redesign-v2 (Dark Theme)
   
   Basiert auf der tatsächlichen DOM-Struktur von YayCurrency Pro:
   .yay-currency-block-switcher
     └ .yay-currency-custom-select-wrapper
         └ .yay-currency-custom-select
             ├ .yay-currency-custom-select__trigger
             │   ├ .yay-currency-custom-selected-option
             │   │   ├ .yay-currency-flag
             │   │   └ .yay-currency-selected-option
             │   ├ .yay-currency-custom-arrow
             │   └ .yay-currency-custom-loader
             └ ul.yay-currency-custom-options
                 └ li.yay-currency-custom-option-row
                     ├ .yay-currency-flag
                     ├ .yay-currency-custom-option
                     └ .yay-currency-selected-checked-icon
   
   Alle Werte mit !important für maximale Spezifität.
   ============================================================ */

/* ---- CSS Custom Properties (konsistent mit go1984-redesign) ---- */
:root {
  --go1984-bg-primary: #0a0e17;
  --go1984-bg-secondary: #111827;
  --go1984-bg-card: #161d2e;
  --go1984-bg-card-hover: #1c2540;
  --go1984-accent: #3b82f6;
  --go1984-accent-bright: #60a5fa;
  --go1984-accent-glow: rgba(59, 130, 246, 0.15);
  --go1984-accent-green: #10b981;
  --go1984-text-primary: #f1f5f9;
  --go1984-text-secondary: #94a3b8;
  --go1984-text-muted: #64748b;
  --go1984-border: rgba(255, 255, 255, 0.06);
  --go1984-border-accent: rgba(59, 130, 246, 0.3);
  --go1984-font-body: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --go1984-font-mono: 'JetBrains Mono', monospace;
}


/* ============================================================
   1. BLOCK-WRAPPER
   ============================================================ */

.yay-currency-block-switcher {
  position: relative !important;
  font-family: var(--go1984-font-body) !important;
}

/* Natives <select> verstecken (wird durch Custom-Select ersetzt) */
.yay-currency-block-switcher .yay-currency-form-switcher {
  position: absolute !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}


/* ============================================================
   2. CUSTOM SELECT WRAPPER
   ============================================================ */

.yay-currency-custom-select-wrapper {
  position: relative !important;
  display: inline-block !important;
  font-family: var(--go1984-font-body) !important;
}


/* ============================================================
   3. TRIGGER (der sichtbare Button mit aktueller Währung) 
   ============================================================ */

.yay-currency-custom-select__trigger {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.35rem !important;
  padding: 0.35rem 0.75rem !important;
  /* background: var(--go1984-bg-card) !important; mw */
  background: var(--lw-cyan-dim) !important;
  border: 1px solid var(--go1984-border) !important;
  border-radius: 6px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
}

.yay-currency-custom-select__trigger.small {
  padding: 0.3rem 0.7rem !important;
}

.yay-currency-custom-select__trigger:hover {
  background: var(--go1984-bg-card-hover) !important;
  border-color: var(--go1984-border-accent) !important;
}

/* Trigger im geöffneten Zustand */
.yay-currency-custom-select.open .yay-currency-custom-select__trigger,
.yay-currency-custom-select.active .yay-currency-custom-select__trigger {
  background: var(--go1984-bg-card-hover) !important;
  border-color: var(--go1984-border-accent) !important;
}


/* ============================================================
   4. AUSGEWÄHLTE OPTION IM TRIGGER
   ============================================================ */

.yay-currency-custom-selected-option {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.4rem !important;
}

.yay-currency-selected-option {
  font-family: var(--go1984-font-mono) !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  /* color: var(--go1984-text-secondary) !important; mw */
  letter-spacing: 0.03em !important;
  line-height: 1.4 !important;
    color: var(--lw-cyan) !important;
  
}

.yay-currency-custom-select__trigger:hover .yay-currency-selected-option {
  /* color: var(--go1984-text-primary) !important; mw*/
   color: var(--lw-cyan) !important;
}

.yay-currency-custom-select.open .yay-currency-selected-option,
.yay-currency-custom-select.active .yay-currency-selected-option {
  /* color: var(--go1984-text-primary) !important; */
   color: var(--lw-cyan) !important;
}


/* ============================================================
   5. PFEIL / ARROW
   ============================================================ */

.yay-currency-custom-arrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: 0.15rem !important;
  transition: transform 0.2s ease !important;
}

.yay-currency-custom-arrow svg,
.yay-currency-arrow-icon {
  width: 14px !important;
  height: 14px !important;
  stroke: var(--go1984-text-muted) !important;
  transition: stroke 0.2s ease, transform 0.2s ease !important;
}

.yay-currency-custom-select__trigger:hover .yay-currency-custom-arrow svg,
.yay-currency-custom-select__trigger:hover .yay-currency-arrow-icon {
  stroke: var(--go1984-text-secondary) !important;
}

/* Pfeil gedreht wenn offen */
.yay-currency-custom-select.open .yay-currency-custom-arrow,
.yay-currency-custom-select.active .yay-currency-custom-arrow {
  transform: rotate(180deg) !important;
}

.yay-currency-custom-select.open .yay-currency-custom-arrow svg,
.yay-currency-custom-select.active .yay-currency-custom-arrow svg {
  stroke: var(--go1984-accent-bright) !important;
}


/* ============================================================
   6. LOADER
   ============================================================ */

.yay-currency-custom-loader {
  border-color: var(--go1984-border) !important;
  border-top-color: var(--go1984-accent-bright) !important;
}


/* ============================================================
   7. DROPDOWN-LISTE (ul.yay-currency-custom-options)
   ============================================================ */

ul.yay-currency-custom-options {
  position: absolute !important;
  top: calc(100% + 6px) !important;
  right: 0 !important;
  left: auto !important;
  z-index: 9999 !important;
  min-width: 140px !important;
  padding: 0.35rem !important;
  margin: 0 !important;
  background: var(--go1984-bg-card) !important;
  border: 1px solid var(--go1984-border-accent) !important;
  border-radius: 8px !important;
  box-shadow:
    0 4px 24px rgba(0, 0, 0, 0.4),
    0 0 0 1px rgba(59, 130, 246, 0.08) !important;
  list-style: none !important;
  overflow: hidden !important;
  animation: go1984-dropdown-in 0.15s ease-out !important;
}

@keyframes go1984-dropdown-in {
  from {
    opacity: 0;
    transform: translateY(-6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}


/* ============================================================
   8. DROPDOWN-ITEMS (li.yay-currency-custom-option-row)
   ============================================================ */

li.yay-currency-custom-option-row {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  padding: 0.5rem 0.75rem !important;
  margin: 0 !important;
  border-radius: 5px !important;
  list-style: none !important;
  cursor: pointer !important;
  transition: all 0.15s ease !important;
  white-space: nowrap !important;
  background: none !important;
}

li.yay-currency-custom-option-row:hover {
  background: var(--go1984-accent-glow) !important;
}

/* Aktive / ausgewählte Währung */
li.yay-currency-custom-option-row.selected {
  background: var(--go1984-accent-glow) !important;
}


/* ============================================================
   9. OPTION-TEXT (.yay-currency-custom-option)
   ============================================================ */

.yay-currency-custom-option {
  font-family: var(--go1984-font-mono) !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  color: var(--go1984-text-secondary) !important;
  letter-spacing: 0.03em !important;
  line-height: 1.4 !important;
}

.yay-currency-custom-option.small {
  font-size: 0.78rem !important;
}

li.yay-currency-custom-option-row:hover .yay-currency-custom-option {
  color: var(--go1984-text-primary) !important;
}

li.yay-currency-custom-option-row.selected .yay-currency-custom-option {
  color: var(--go1984-accent-bright) !important;
}


/* ============================================================
   10. FLAGGEN-ICONS (.yay-currency-flag)
   ============================================================ */

.yay-currency-flag {
  display: inline-block !important;
  width: 20px !important;
  height: 15px !important;
  border-radius: 2px !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.08) !important;
  flex-shrink: 0 !important;
}

.yay-currency-flag.small {
  width: 18px !important;
  height: 13px !important;
}

.yay-currency-flag.selected {
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.12) !important;
}


/* ============================================================
   11. CHECK-ICON (ausgewählte Währung)
   ============================================================ */

.yay-currency-selected-checked-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-left: auto !important;
}

.yay-currency-selected-checked-icon svg {
  width: 14px !important;
  height: 14px !important;
  stroke: var(--go1984-accent-bright) !important;
}


/* ============================================================
   12. NATIVES <select> FALLBACK
   (falls Custom-Select nicht geladen wird)
   ============================================================ */

select.yay-currency-switcher {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  padding: 0.35rem 2rem 0.35rem 0.75rem !important;
  background-color: var(--go1984-bg-card) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 0.6rem center !important;
  background-size: 12px !important;
  border: 1px solid var(--go1984-border) !important;
  border-radius: 6px !important;
  color: var(--go1984-text-secondary) !important;
  font-family: var(--go1984-font-mono) !important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.03em !important;
  line-height: 1.4 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  outline: none !important;
}

select.yay-currency-switcher:hover {
  background-color: var(--go1984-bg-card-hover) !important;
  border-color: var(--go1984-border-accent) !important;
  color: var(--go1984-text-primary) !important;
}

select.yay-currency-switcher:focus {
  border-color: var(--go1984-accent) !important;
  box-shadow: 0 0 0 2px var(--go1984-accent-glow) !important;
  color: var(--go1984-text-primary) !important;
}

select.yay-currency-switcher option {
  background: var(--go1984-bg-card) !important;
  color: var(--go1984-text-secondary) !important;
  padding: 0.4rem 0.6rem !important;
}


/* ============================================================
   13. SINGLE PRODUCT PAGE SWITCHER
   ============================================================ */

.yay-currency-single-page-switcher {
  margin-bottom: 0 !important;
}

.single-product .yay-currency-block-switcher {
  margin-bottom: 1rem !important;
}

.single-product .yay-currency-custom-select__trigger {
  padding: 0.45rem 1rem !important;
}

.single-product .yay-currency-selected-option {
  font-size: 0.85rem !important;
}


/* ============================================================
   14. RESPONSIVE
   ============================================================ */

@media (max-width: 900px) {
  ul.yay-currency-custom-options {
    right: 0 !important;
    left: auto !important;
    min-width: 120px !important;
  }
}

@media (max-width: 600px) {
  .yay-currency-custom-select__trigger {
    padding: 0.3rem 0.6rem !important;
  }

  .yay-currency-selected-option {
    font-size: 0.75rem !important;
  }

  .yay-currency-flag,
  .yay-currency-flag.small {
    width: 16px !important;
    height: 11px !important;
  }

  .yay-currency-custom-arrow svg,
  .yay-currency-arrow-icon {
    width: 12px !important;
    height: 12px !important;
  }
}
