/*
Theme Name: Astra Emsland3D
Template: astra
Version: 1.0.0
*/

:root {
  --accent: #e85d04;
  --accent2: #ff8c00;
  --dark: #080d14;
  --dark2: #0d1520;
  --dark3: #111d2e;
  --card: #0f1a28;
  --border: rgba(232,93,4,0.15);
  --text: #c8d8e8;
  --text-muted: #6a85a0;
  --white: #f0f4f8;
}
body { background: var(--dark) !important; color: var(--text) !important; }
body::before {
  content: '';
  position: fixed; inset: 0; z-index: 0; pointer-events: none;
  background-image: linear-gradient(rgba(232,93,4,0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(232,93,4,0.03) 1px, transparent 1px);
  background-size: 40px 40px;
}
.site-header, .ast-primary-header-bar {
  background: rgba(8,13,20,0.95) !important;
  border-bottom: 1px solid var(--border) !important;
  backdrop-filter: blur(12px) !important;
  position: sticky !important; top: 0 !important; z-index: 1000 !important;
}
.ast-site-title, .ast-site-title a { color: var(--white) !important; font-weight: 700 !important; font-size: 20px !important; letter-spacing: 1px !important; }
.main-navigation a, .ast-nav-link { color: #c8d8e8 !important; font-size: 14px !important; }
.main-navigation a:hover { color: var(--accent) !important; }
.entry-title, .ast-page-title, .page-title { display: none !important; }
.ast-container { max-width: 1200px !important; }
.entry-content, .ast-article-inner { padding: 0 !important; }
.site-content { position: relative; z-index: 1; }
.ast-separate-container .ast-article-post, .page .entry-content { background: transparent !important; box-shadow: none !important; padding: 0 !important; margin: 0 !important; }
.site-footer { background: #0d1520 !important; border-top: 1px solid var(--border) !important; color: #6a85a0 !important; }
.footer-widget-area { background: #0d1520 !important; }
.ast-footer-overlay { background: transparent !important; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button { background: var(--accent) !important; color: #fff !important; border-radius: 5px !important; }

/* === FULL WIDTH OVERRIDES === */
.e3d-fullwidth { width: 100%; max-width: 100%; padding: 0; margin: 0; }
#content.e3d-fullwidth { padding: 0 !important; margin: 0 !important; }
.ast-container, .ast-grid-right-साइडbar, .ast-grid-left-sidebar { max-width: 100% !important; padding: 0 !important; }
.entry-content .e3d-hero, .e3d-fullwidth .e3d-hero { margin-left: calc(-50vw + 50%) !important; margin-right: calc(-50vw + 50%) !important; width: 100vw !important; }
.entry-content .e3d-stats, .e3d-fullwidth .e3d-stats { margin-left: calc(-50vw + 50%) !important; margin-right: calc(-50vw + 50%) !important; width: 100vw !important; }
.entry-content .e3d-section, .e3d-fullwidth .e3d-section { margin-left: calc(-50vw + 50%) !important; margin-right: calc(-50vw + 50%) !important; width: 100vw !important; }
.entry-content .e3d-calc-teaser, .e3d-fullwidth .e3d-calc-teaser { margin-left: calc(-50vw + 50%) !important; margin-right: calc(-50vw + 50%) !important; width: 100vw !important; }

/* === FOOTER FIX === */
#colophon, .site-footer, .footer-widget-area, .ast-footer-overlay, .footer-sml-layout { background: #0d1520 !important; color: #6a85a0 !important; border-top: 1px solid rgba(232,93,4,0.15) !important; }
.ast-footer-copyright, .ast-footer-copyright a { color: #6a85a0 !important; }
a.ast-footer-copyright-text { color: #e85d04 !important; }

/* === NAVIGATION FIX === */
#ast-fixed-header, .ast-primary-header-bar { background: rgba(8,13,20,0.97) !important; border-bottom: 1px solid rgba(232,93,4,0.15) !important; }
.main-header-menu > .menu-item > .menu-link { color: #c8d8e8 !important; font-size: 14px !important; font-weight: 500 !important; }
.main-header-menu > .menu-item > .menu-link:hover { color: #e85d04 !important; }

/* Footer Credit ausblenden */
.ast-footer-credit .ast-builder-grid-row { display: none !important; }
span.ast-footer-copyright { color: #6a85a0 !important; }
.footer-primary-navigation { display: none !important; }
/* Footer komplett dark */
#colophon * { background: transparent !important; }
#colophon { background: #0a1520 !important; padding: 1.5rem 0 !important; }
.site-below-footer-wrap { background: #0a1520 !important; }

/* === WOOCOMMERCE DARK THEME === */
.woocommerce, .woocommerce-page { color: #c8d8e8 !important; }
.woocommerce table.shop_table { background: #0f1a28 !important; border: 1px solid rgba(232,93,4,0.15) !important; color: #c8d8e8 !important; }
.woocommerce table.shop_table th { background: #0d1520 !important; color: #f0f4f8 !important; border-color: rgba(232,93,4,0.15) !important; }
.woocommerce table.shop_table td { border-color: rgba(232,93,4,0.1) !important; color: #c8d8e8 !important; background: transparent !important; }
.woocommerce table.shop_table .product-name a { color: #f0f4f8 !important; }
.woocommerce table.shop_table .product-subtotal, .woocommerce table.shop_table .product-price { color: #e85d04 !important; font-weight: 700 !important; }
.woocommerce .cart-collaterals, .woocommerce-cart-form { background: transparent !important; }
.woocommerce .cart_totals { background: #0f1a28 !important; border: 1px solid rgba(232,93,4,0.15) !important; border-radius: 8px !important; padding: 1.5rem !important; }
.woocommerce .cart_totals h2 { color: #f0f4f8 !important; }
.woocommerce .cart_totals table th, .woocommerce .cart_totals table td { color: #c8d8e8 !important; border-color: rgba(232,93,4,0.1) !important; }
.woocommerce .cart_totals .order-total td { color: #e85d04 !important; font-size: 1.3em !important; font-weight: 800 !important; }
.woocommerce a.button.checkout-button { background: #e85d04 !important; color: #fff !important; font-size: 16px !important; padding: 14px 28px !important; border-radius: 6px !important; font-weight: 700 !important; }
.woocommerce a.button.checkout-button:hover { background: #c94f03 !important; }
.woocommerce .wc-item-meta { color: #6a85a0 !important; font-size: 13px !important; }
.woocommerce .wc-item-meta li { margin: 2px 0 !important; }
.woocommerce .wc-item-meta strong { color: #8ba0b4 !important; }
/* Checkout */
.woocommerce form .form-row label { color: #c8d8e8 !important; }
.woocommerce form .form-row input, .woocommerce form .form-row textarea, .woocommerce form .form-row select { background: #0f1a28 !important; border: 1px solid rgba(232,93,4,0.2) !important; color: #f0f4f8 !important; border-radius: 5px !important; }
.woocommerce #payment { background: #0f1a28 !important; border-radius: 8px !important; }
.woocommerce #payment div.payment_box { background: #0d1520 !important; color: #c8d8e8 !important; }
.woocommerce-checkout h3 { color: #f0f4f8 !important; }

/* === WOOCOMMERCE PAGES LAYOUT FIX === */
.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content,
.woocommerce-account .entry-content,
.woocommerce-page .entry-content {
  padding: 2rem !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
}
.woocommerce-cart .entry-title,
.woocommerce-checkout .entry-title {
  display: block !important;
  color: #f0f4f8 !important;
  font-size: 28px !important;
  margin-bottom: 1.5rem !important;
}
/* Warenkorb Tabelle */
.woocommerce table.cart td, .woocommerce table.cart th { color: #c8d8e8 !important; }
.woocommerce .wc-proceed-to-checkout .checkout-button { width: 100% !important; text-align: center !important; }
/* Checkout Felder */
.woocommerce-checkout #order_review { background: #0f1a28 !important; border: 1px solid rgba(232,93,4,0.15) !important; border-radius: 8px !important; padding: 1.5rem !important; }
.woocommerce-checkout #order_review_heading { color: #f0f4f8 !important; }
/* MwSt Anzeige */
.woocommerce .tax-rate, .woocommerce .woocommerce-Price-amount { color: #c8d8e8 !important; }
.woocommerce .cart_totals .tax-total td { color: #8ba0b4 !important; font-size: 13px !important; }
/* Buttons */
.woocommerce .cart .button, .woocommerce .cart input.button { background: #1a2535 !important; color: #c8d8e8 !important; border: 1px solid rgba(232,93,4,0.2) !important; }
.woocommerce .cart .button:hover { background: rgba(232,93,4,0.1) !important; }
/* Leer-Warenkorb Meldung */
.woocommerce-cart p.cart-empty { color: #6a85a0 !important; text-align: center !important; padding: 3rem !important; font-size: 18px !important; }
.woocommerce-cart .return-to-shop .button { background: #e85d04 !important; color: #fff !important; }

/* === HERO BACKGROUND IMAGE === */
.e3d-hero {
  background-image: url('/wp-content/themes/astra-emsland3d/images/hero-bg.webp') !important;
  background-size: cover !important;
  background-position: center right !important;
  background-repeat: no-repeat !important;
  position: relative !important;
}
.e3d-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(8,13,20,0.92) 0%, rgba(8,13,20,0.75) 50%, rgba(8,13,20,0.3) 100%);
  pointer-events: none;
  z-index: 0;
}
.e3d-hero .e3d-wrap { position: relative; z-index: 1; }
.e3d-hero-bg { display: none !important; }

/* === HEADER HELLER === */
.site-header, .ast-primary-header-bar, #ast-fixed-header {
  background: rgba(10,15,24,0.96) !important;
  border-bottom: 1px solid rgba(232,93,4,0.2) !important;
}
.ast-site-title a, .ast-site-title {
  color: #f0f4f8 !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
}
.main-header-menu > .menu-item > .menu-link,
.ast-header-navigation-links .menu-link,
.main-navigation a {
  color: #c8d8e8 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  opacity: 1 !important;
}
.main-header-menu > .menu-item > .menu-link:hover { color: #e85d04 !important; }
.main-header-menu > .current-menu-item > .menu-link { color: #e85d04 !important; }

/* === RECHTLICHE SEITEN - Inhalt sichtbar === */
.page .entry-content,
.page-template-default .entry-content {
  padding: 2rem 2rem 3rem !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  color: #c8d8e8 !important;
}
.page .entry-title {
  display: block !important;
  color: #f0f4f8 !important;
  font-size: 32px !important;
  font-weight: 800 !important;
  margin-bottom: 2rem !important;
  padding: 2rem 2rem 0 !important;
  max-width: 900px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.page .entry-content h1, .page .entry-content h2, .page .entry-content h3 {
  color: #f0f4f8 !important;
  margin-top: 1.5rem !important;
}
.page .entry-content p, .page .entry-content li {
  color: #a0b4c8 !important;
  line-height: 1.7 !important;
}
.page .entry-content a { color: #e85d04 !important; }
.page .entry-content strong { color: #c8d8e8 !important; }

/* === FOOTER NAVIGATION === */
.footer-widget-area, #colophon { background: #0a0f18 !important; }
.ast-small-footer-section { background: #060a10 !important; border-top: 1px solid rgba(232,93,4,0.1) !important; }
.ast-footer-navigation .menu-link, .ast-footer-navigation a {
  color: #4a6a8a !important;
  font-size: 12px !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
}
.ast-footer-navigation .menu-link:hover { color: #e85d04 !important; }
.ast-footer-copyright { color: #3a5a7a !important; font-size: 12px !important; }

/* === BREADCRUMB === */
.ast-breadcrumbs-wrap { background: #0d1520 !important; padding: 8px 0 !important; border-bottom: 1px solid rgba(232,93,4,0.08) !important; }
.ast-breadcrumbs-wrap a, .ast-breadcrumbs { color: #4a6a8a !important; font-size: 13px !important; }
.ast-breadcrumbs-wrap a:hover { color: #e85d04 !important; }

/* === SITE TITLE HELL === */
.site-title, .site-title a,
.ast-site-identity .site-title,
.ast-site-identity .site-title a,
#masthead .site-title a,
.ast-logo-title-inline .site-title a,
header .site-title a {
  color: #ffffff !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
/* Logo Text auch hell */
.ast-header-sections-navigation .main-navigation a { color: #d0e0f0 !important; opacity: 1 !important; }

/* === CHECKOUT FIXES === */
/* Doppeltes Payment-Block verstecken (Germanized Bug) */
.woocommerce-checkout #order_review .woocommerce-checkout-payment,
form.checkout .gzd-checkout-payment-title:nth-of-type(2) ~ *,
.wc_payment_methods + .woocommerce-checkout-payment { display: none !important; }

/* Nur erste Payment-Section anzeigen */
.woocommerce form#order_review #payment { display: block !important; }

/* Checkout Formular Styling */
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout #order_review_heading { color: #f0f4f8 !important; font-size: 18px !important; }
.woocommerce-checkout .form-row label { color: #8ba0b4 !important; font-size: 13px !important; }
.woocommerce-checkout .form-row input,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
  background: #0f1a28 !important;
  border: 1px solid rgba(232,93,4,0.2) !important;
  color: #f0f4f8 !important;
  border-radius: 4px !important;
}
.woocommerce-checkout .form-row input:focus {
  border-color: #e85d04 !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(232,93,4,0.15) !important;
}
/* Payment methods */
.wc_payment_methods .wc_payment_method label { color: #c8d8e8 !important; }
.wc_payment_methods .wc_payment_method input[type=radio] { accent-color: #e85d04 !important; }
/* Place order button */
#place_order, .woocommerce #payment #place_order {
  background: #e85d04 !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  padding: 14px 32px !important;
  border-radius: 6px !important;
  border: none !important;
  width: 100% !important;
  cursor: pointer !important;
}
#place_order:hover { background: #c94f03 !important; }

/* === DROPDOWN NAVIGATION === */
.main-header-menu .sub-menu,
.main-navigation .sub-menu {
  background: #0d1520 !important;
  border: 1px solid rgba(232,93,4,0.2) !important;
  border-radius: 6px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.5) !important;
  min-width: 160px !important;
}
.main-header-menu .sub-menu .menu-link,
.main-navigation .sub-menu a {
  color: #8ba0b4 !important;
  font-size: 13px !important;
  padding: 8px 16px !important;
  display: block !important;
  border-bottom: 1px solid rgba(255,255,255,0.04) !important;
}
.main-header-menu .sub-menu .menu-link:hover,
.main-navigation .sub-menu a:hover {
  color: #e85d04 !important;
  background: rgba(232,93,4,0.05) !important;
}
/* Parent-Item mit Pfeil */
.main-header-menu .menu-item-has-children > .menu-link::after,
.main-navigation .menu-item-has-children > a::after {
  content:  ▾ !important;
  font-size: 10px !important;
  color: #e85d04 !important;
}

/* === SHOP: Warenkorb-Button immer sichtbar === */
.ast-on-card-button,
.woocommerce ul.products li.product .ast-on-card-button,
.ast-shop-product-in-cart-button {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  display: block !important;
  background: #e85d04 !important;
  color: #fff !important;
  border-radius: 4px !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  padding: 8px 14px !important;
  margin-top: 8px !important;
  text-align: center !important;
  width: 100% !important;
}
.ast-on-card-button:hover { background: #c94f03 !important; }
/* Produkt-Karte volle Höhe */
.woocommerce ul.products li.product { overflow: visible !important; }

/* === SHOP FIXES === */
.ast-on-card-button{display:none!important}
.ast-header-woo-cart,.ast-cart-menu-wrap,.astra-cart-drawer{display:block!important;color:#f0f4f8!important;visibility:visible!important}
.ast-addon-cart-wrap .count,.ast-addon-cart-wrap [data-cart-total]{background:#e85d04;color:#fff;border-radius:50%;padding:2px 5px;font-size:11px;font-weight:700}
.ast-cart-menu-wrap a, .ast-header-woo-cart a { color: #f0f4f8 !important; }
.ast-cart-menu-wrap svg, .ast-header-woo-cart svg { fill: #f0f4f8 !important; }
/* PayPal Banner verstecken */
.ppcp-messages, [data-pp-message] { display: none !important; }

/* Orangener Hover-Button auf Produktbild verstecken */
.ast-shop-product-in-cart-button,
.ast-on-card-btn,
.woocommerce ul.products li.product .ast-btn-wrap,
.woocommerce ul.products li.product .ast-on-card-button { display: none !important; }

/* Warenkorb-Icon im Header rechts */
.ast-header-woo-cart { display: flex !important; align-items: center !important; }
.ast-header-woo-cart .ast-icon { color: #f0f4f8 !important; font-size: 22px !important; }
.ast-header-woo-cart .count {
  position: absolute; top: -6px; right: -6px;
  background: #e85d04 !important; color: #fff !important;
  border-radius: 50% !important; width: 18px; height: 18px;
  font-size: 10px !important; font-weight: 700 !important;
  display: flex !important; align-items: center; justify-content: center;
}

/* Warenkorb-Summe Titel */
.cart_totals h2,
.cart_totals > h2,
.woocommerce .cart_totals h2 {
  color: #f0f4f8 !important;
  opacity: 1 !important;
  font-size: 20px !important;
  font-weight: 700 !important;
}

/* === WARENKORB SUMME KOMPLETT FIX === */
.cart_totals h2,
.cart_totals > h2 {
  background: #0f1a28 !important;
  color: #f0f4f8 !important;
  padding: 12px 16px !important;
  margin: 0 0 0 !important;
  border-radius: 8px 8px 0 0 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  border-bottom: 1px solid rgba(232,93,4,0.2) !important;
}
/* Gesamte cart_totals Box */
.woocommerce .cart_totals {
  background: #0f1a28 !important;
  border: 1px solid rgba(232,93,4,0.15) !important;
  border-radius: 8px !important;
}
.cart_totals table th,
.cart_totals table td {
  background: transparent !important;
  color: #c8d8e8 !important;
  border-color: rgba(255,255,255,0.06) !important;
}
.cart_totals .order-total th,
.cart_totals .order-total td {
  color: #f0f4f8 !important;
  font-weight: 700 !important;
  font-size: 16px !important;
}
.cart_totals .woocommerce-Price-amount { color: #e85d04 !important; }
.cart_totals .order-total .woocommerce-Price-amount { color: #e85d04 !important; font-size: 20px !important; font-weight: 800 !important; }

/* === TECHNIK-SEITE === */
.tech-table { width:100%; border-collapse:collapse; margin:1.5rem 0; font-size:13px; }
.tech-table th { background:#0d1520; color:#e85d04; padding:10px 12px; text-align:left; border:1px solid rgba(232,93,4,0.2); font-size:12px; letter-spacing:1px; text-transform:uppercase; }
.tech-table td { padding:9px 12px; border:1px solid rgba(255,255,255,0.06); color:#c8d8e8; vertical-align:top; }
.tech-table tr:nth-child(even) td { background:rgba(255,255,255,0.02); }
.tech-table tr:hover td { background:rgba(232,93,4,0.04); }
.tech-table td:first-child { color:#8ba0b4; font-size:12px; font-weight:600; }

.tech-tip { background:#0f1a28; border-left:3px solid #e85d04; padding:1rem 1.2rem; margin:1rem 0; border-radius:0 6px 6px 0; }
.tech-tip h3 { color:#f0f4f8; font-size:15px; margin:0 0 0.5rem; }
.tech-tip p { color:#8ba0b4; font-size:14px; margin:0; line-height:1.6; }

.tech-list { list-style:none; padding:0; }
.tech-list li { padding:8px 0; border-bottom:1px solid rgba(255,255,255,0.05); color:#c8d8e8; font-size:14px; line-height:1.6; }

.material-card.pros-cons ul { list-style:none; padding:0; margin:0; }
.material-card.pros-cons li { padding:5px 0; font-size:13px; color:#8ba0b4; display:flex; gap:8px; }
.icon-pro { color:#39ff14; font-weight:700; flex-shrink:0; }
.icon-con { color:#e85d04; font-weight:700; flex-shrink:0; }

.tech-img { width:100%; border-radius:8px; margin:1.5rem 0; border:1px solid rgba(232,93,4,0.15); display:block; }

.e3d-section h2 { color:#f0f4f8 !important; font-size:24px !important; font-weight:800 !important; margin:0 0 1.2rem !important; padding-bottom:0.5rem; border-bottom:1px solid rgba(232,93,4,0.2); }
.e3d-section h3 { color:#e85d04 !important; font-size:16px !important; font-weight:700 !important; }
.e3d-section p { color:#a0b4c8; line-height:1.7; }

/* === FDM TECHNOLOGIE SEITE - Layout Fix === */
.page-id-906 .entry-content,
.page-id-906 .ast-article-inner,
.page-id-906 .ast-container {
  margin: 0 !important;
  padding: 0 !important;
  max-width: 100% !important;
}
.page-id-906 .e3d-wrap {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 2rem 1.5rem !important;
  box-sizing: border-box !important;
}
.page-id-906 .e3d-section {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  padding: 2.5rem 0 !important;
}
.page-id-906 .e3d-cards {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
}
/* Tabelle scrollbar auf mobil */
.page-id-906 .tech-table-wrap { overflow-x: auto; }
