/*
 Theme Name:     Mittwald Divi Child
 Theme URI:      https://www.elegantthemes.com/gallery/divi/
 Description:    Nutzen Sie das Child Theme um Änderungen am Divi Theme vorzunehmen. Sie können dazu den <a href="/wp-admin/theme-editor.php">Theme-Editor</a> benutzen.
 Author:         Mittwald CM Service GmbH & Co.KG
 Author URI:     https://www.mittwald.de/
 Template:       Divi
 Version:        1.0.0
*/


/* =Theme customization starts here
------------------------------------------------------- */

/* ============================================================
   VAPOR SPIRIT — Design Variante C
   Stand 28.08.2026 · Kategorieseite (Vollversion)
   Header, Navigation, Footer, Kategorie- und Produktseiten global.
   Akzentfarbe ist die Variable --acc (Grün-Variante siehe unten).
   ============================================================ */

:root{
  --acc:#ED1566; --acc-hover:#C70E53; --acc-soft:#FDECF3; --acc-border:#F6B8CF;
  --ink:#0A1A2E; --navy:#123A63;
  --t2:#42556B; --t3:#556A80; --tw:#64748B; --tvw:#8D9DB0; --tk:#2C3E52; --tf:#38495C;
  --line:#D7E1EE; --linef:#EDF2F8; --linefil:#E4EBF3;
  --input:#BFD0E3; --fl:#F7FAFD; --fh:#F0F5FA; --fh2:#F4F8FC;
  --star:#E0A526;
}
/* Grün-Alternative — bei Freigabe hier tauschen:
:root{ --acc:#1F7A4C; --acc-hover:#155C38; --acc-soft:#E8F3ED; --acc-border:#AED4C1; } */

/* ============================================================
   Shop- und Kategorieseiten
   ============================================================ */
.woocommerce, .woocommerce-page{ font-family:'Instrument Sans', -apple-system, sans-serif; }
.archive.woocommerce #main-content .container,
.archive.woocommerce #content-area,
.archive.woocommerce #left-area{
  width:100% !important; max-width:100% !important; padding:0 !important; float:none !important;
}
.archive.woocommerce #sidebar{ display:none !important; }
.woocommerce h1, .woocommerce h2, .woocommerce h3{ font-family:'Archivo', sans-serif; letter-spacing:-.02em; color:var(--ink); }

/* Breadcrumb */
.woocommerce .woocommerce-breadcrumb{
  background:var(--fl); border-bottom:1px solid var(--line);
  padding:16px 48px !important; margin:0 !important;
  font-size:15px; color:var(--tw);
}
.woocommerce .woocommerce-breadcrumb a{ color:var(--tw); }
.woocommerce .woocommerce-breadcrumb a:hover{ color:var(--navy); }

/* Kopfbereich: H1 + Einstiegstext */
.woocommerce .woocommerce-products-header{ max-width:900px; padding:44px 48px 0; margin:0; }
.woocommerce .woocommerce-products-header__title{
  font-size:44px; font-weight:700; letter-spacing:-.025em; line-height:1.08;
  margin:0 0 14px; padding:0;
}
.woocommerce .term-description.vs-term-intro{
  max-width:860px; padding:0 48px; margin:0;
  font-size:19px; line-height:1.62; color:var(--tf);
}
.woocommerce .term-description.vs-term-intro p{ margin:0; }

/* Schnelleinstieg in Unterkategorien */
.vs-quickjump{ padding:26px 48px 0; max-width:900px; }
.vs-label{
  display:block; font-size:13px; font-weight:700; letter-spacing:.1em;
  text-transform:uppercase; color:var(--tw); margin-bottom:14px;
}
.vs-chips{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.vs-chip{
  display:flex; align-items:baseline; gap:8px;
  border:1px solid var(--line); border-radius:3px; background:#fff;
  padding:13px 16px; min-height:48px;
  transition:border-color .15s ease-out, background-color .15s ease-out;
}
.vs-chip:hover{ border-color:var(--navy); background:var(--fh2); }
.vs-chip b{ font-size:17px; font-weight:600; color:var(--ink); }
.vs-chip small{ font-size:15px; color:var(--tw); margin-left:auto; }

/* Ergebniszeile: Zähler links, Sortierung rechts */
.woocommerce .woocommerce-notices-wrapper{ padding:0 48px; }
.archive.woocommerce .woocommerce-result-count,
.archive.woocommerce .woocommerce-ordering{
  margin:0 !important; padding:0; float:none !important;
}
.archive.woocommerce .woocommerce-result-count.vs-count{
  font-size:17px; color:var(--tw); line-height:1.3;
}
.archive.woocommerce .woocommerce-result-count.vs-count b{
  font-family:'Archivo',sans-serif; font-size:20px; font-weight:700; color:var(--ink);
}
.archive.woocommerce .woocommerce-ordering select{
  border:2px solid var(--input); border-radius:3px;
  padding:12px 14px; font-size:17px; font-weight:600;
  font-family:'Instrument Sans',sans-serif; color:var(--ink); background:#fff;
}
/* Zähler und Sortierung in einer Zeile über dem Gitter */
.archive.woocommerce .woocommerce-notices-wrapper + .woocommerce-result-count,
.archive.woocommerce .woocommerce-result-count.vs-count{
  display:inline-block; margin:34px 0 0 !important;
}
.archive.woocommerce .woocommerce-ordering{
  display:inline-block; float:right !important; margin-top:28px !important;
}
.archive.woocommerce.tax-product_cat #left-area > .woocommerce-result-count,
.archive.woocommerce #left-area > .woocommerce-ordering{ padding:0 48px; }

/* Produktgitter — drei Spalten laut Design */
.woocommerce ul.products,
.woocommerce ul.products.columns-1, .woocommerce ul.products.columns-2,
.woocommerce ul.products.columns-3, .woocommerce ul.products.columns-4,
.woocommerce ul.products.columns-5, .woocommerce ul.products.columns-6{
  display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:20px;
  padding:20px 48px 56px !important; margin:0 !important; max-width:1440px;
  clear:both;
}
.woocommerce ul.products:before, .woocommerce ul.products:after{ display:none !important; }

.woocommerce ul.products li.product{
  width:auto !important; margin:0 !important; float:none !important;
  border:1px solid var(--line); border-radius:4px; background:#fff;
  display:flex; flex-direction:column; padding:0 0 20px;
  transition:border-color .15s ease-out, box-shadow .15s ease-out;
}
.woocommerce ul.products li.product:hover{
  border-color:var(--navy); box-shadow:0 8px 20px rgba(10,26,46,.07);
}
/* Divi umschliesst das Bild mit .et_shop_image inklusive Overlay */
.woocommerce ul.products li.product .et_shop_image{ display:block; box-shadow:none !important; }
.woocommerce ul.products li.product .et_overlay{ display:none !important; }
.woocommerce ul.products li.product a img{
  width:100%; height:230px; object-fit:contain; padding:20px; background:#fff;
  margin:0 !important; box-shadow:none !important; border-radius:0;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:'Instrument Sans',sans-serif !important;
  font-size:18px !important; font-weight:600; line-height:1.3; color:var(--ink);
  padding:0 20px 4px !important; margin:0;
}
.woocommerce ul.products li.product .star-rating{
  margin:2px 20px 6px; color:var(--star); font-size:14px; float:none;
}
.woocommerce ul.products li.product .price{
  font-family:'Archivo',sans-serif; font-size:24px; font-weight:700;
  color:var(--ink) !important; padding:0 20px; margin:auto 0 12px; display:block;
}
.woocommerce ul.products li.product .price del{
  font-size:16px; color:var(--tvw); font-weight:400; opacity:1;
}
.woocommerce ul.products li.product .price ins{ text-decoration:none; color:var(--acc) !important; }
.woocommerce ul.products li.product .price .woocommerce-Price-currencySymbol{ font-size:.75em; }
/* „ab" vor Preisspannen */
.woocommerce ul.products li.product .price .from{ font-size:14px; color:var(--tw); }

/* Badge liegt unter dem Bild und überlappt das Produkt nie */
.woocommerce ul.products li.product{ position:relative; }
.woocommerce span.onsale{
  position:static !important; top:auto !important; right:auto !important; left:auto !important;
  background:var(--acc-soft) !important; color:var(--acc) !important;
  font-family:'Instrument Sans',sans-serif;
  font-size:13px !important; font-weight:700; text-transform:uppercase; letter-spacing:.04em;
  border-radius:3px; padding:4px 9px !important; margin:0 20px 8px !important;
  min-height:0 !important; min-width:0 !important; line-height:1.4 !important;
  align-self:flex-start; order:-1;
}
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{
  margin:0 20px !important; background:var(--acc) !important; color:#fff !important;
  font-family:'Instrument Sans',sans-serif;
  font-size:16px !important; font-weight:700; padding:14px 18px !important;
  border-radius:3px !important; text-align:center; border:0;
  transition:background-color .15s ease-out;
}
.woocommerce ul.products li.product .button:hover{ background:var(--acc-hover) !important; }

/* Blättern */
.woocommerce nav.woocommerce-pagination{ padding:0 48px 56px; text-align:left; }
.woocommerce nav.woocommerce-pagination ul{ border:0; }
.woocommerce nav.woocommerce-pagination ul li{ border:0; margin-right:8px; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  border:2px solid var(--line); border-radius:3px; padding:12px 18px;
  font-size:16px; font-weight:700; color:var(--navy); background:#fff;
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  border-color:var(--navy); background:var(--navy); color:#fff;
}

/* ============================================================
   Kaufberatung unter dem Gitter (SEO-Teil mit Inhaltsverzeichnis)
   ============================================================ */
.vs-guide-block{ background:var(--fl); border-top:1px solid var(--line); padding:56px 48px; }
.vs-guide-inner{
  max-width:1440px; margin:0 auto;
  display:grid; grid-template-columns:280px 1fr; gap:52px; align-items:start;
}
.vs-toc-inner{
  position:sticky; top:24px;
  background:#fff; border:1px solid var(--line); border-radius:4px; padding:22px;
}
.vs-toc nav{ display:flex; flex-direction:column; gap:3px; }
.vs-toc nav a{
  font-size:16px; line-height:1.4; color:var(--tk); padding:7px 0;
  border-bottom:1px solid var(--linef);
}
.vs-toc nav a:last-child{ border-bottom:0; }
.vs-toc nav a:hover{ color:var(--navy); }
.vs-toc nav a.vs-toc-h3{ padding-left:14px; font-size:15px; color:var(--tw); }
.vs-toc-meta{ font-size:14px; color:var(--tw); margin:16px 0 0; line-height:1.45; }

.vs-eyebrow{
  display:block; font-size:13px; font-weight:700; letter-spacing:.1em;
  text-transform:uppercase; color:var(--acc); margin-bottom:12px;
}
.vs-guide-text{ max-width:860px; font-size:18px; line-height:1.7; color:var(--tf); }
.vs-guide-text h2{
  font-family:'Archivo',sans-serif; font-size:30px; font-weight:700;
  letter-spacing:-.02em; color:var(--ink); margin:38px 0 14px; scroll-margin-top:24px;
}
.vs-guide-text h2:first-of-type{ margin-top:0; }
.vs-guide-text h3{
  font-family:'Archivo',sans-serif; font-size:22px; font-weight:700;
  color:var(--ink); margin:30px 0 10px; scroll-margin-top:24px;
}
.vs-guide-text p{ margin:0 0 18px; }
.vs-guide-text strong{ color:var(--ink); }
.vs-guide-text a{ color:var(--navy); border-bottom:1px solid #C7D8EC; }
.vs-guide-text a:hover{ border-bottom-color:var(--navy); }
.vs-guide-text ul, .vs-guide-text ol{ margin:0 0 20px; padding-left:22px; }
.vs-guide-text li{ margin-bottom:8px; }
.vs-guide-text blockquote{
  border-left:3px solid var(--acc); background:#fff;
  margin:24px 0; padding:18px 22px; border-radius:0 4px 4px 0;
}
.vs-guide-text table{
  width:100%; border-collapse:collapse; margin:22px 0; font-size:16px;
  background:#fff; border:1px solid var(--line); border-radius:4px; overflow:hidden;
}
.vs-guide-text th{
  background:var(--fh); font-weight:700; color:var(--ink); text-align:left;
  padding:14px 16px; border-bottom:1px solid var(--line); font-size:15px;
}
.vs-guide-text td{ padding:14px 16px; border-bottom:1px solid var(--linef); }
.vs-guide-text tr:last-child td{ border-bottom:0; }

/* ============================================================
   Responsive
   ============================================================ */
@media(max-width:1100px){
  .woocommerce ul.products,
  .woocommerce ul.products.columns-1, .woocommerce ul.products.columns-2,
  .woocommerce ul.products.columns-3, .woocommerce ul.products.columns-4,
  .woocommerce ul.products.columns-5, .woocommerce ul.products.columns-6{
    grid-template-columns:repeat(2,1fr) !important;
  }
  .vs-guide-inner{ grid-template-columns:1fr; gap:28px; }
  .vs-toc-inner{ position:static; }
}
@media(max-width:782px){
  .woocommerce .woocommerce-breadcrumb,
  .woocommerce .woocommerce-products-header,
  .woocommerce .term-description.vs-term-intro,
  .vs-quickjump{ padding-left:18px !important; padding-right:18px !important; }
  .woocommerce .woocommerce-products-header__title{ font-size:30px; }
  .woocommerce .term-description.vs-term-intro{ font-size:17px; }
  .vs-chips{ grid-template-columns:1fr; }
  .woocommerce ul.products,
  .woocommerce ul.products.columns-1, .woocommerce ul.products.columns-2,
  .woocommerce ul.products.columns-3, .woocommerce ul.products.columns-4{
    grid-template-columns:1fr !important; padding:16px 18px 40px !important;
  }
  .archive.woocommerce .woocommerce-ordering{ float:none !important; display:block; margin-top:14px !important; }
  .vs-guide-block{ padding:36px 18px; }
  .vs-guide-text{ font-size:17px; }
  .vs-guide-text h2{ font-size:24px; }
  .woocommerce nav.woocommerce-pagination{ padding:0 18px 40px; }
}

/* ============================================================
   Rahmen: Divi-Header/-Footer/-Sidebar ausblenden
   ============================================================ */
body.vs-framed #main-header,
body.vs-framed #top-header,
body.vs-framed #main-footer,
body.vs-framed .et_slide_in_menu_container,
body.vs-framed #et-secondary-nav,
body.vs-framed .et_pb_scroll_top,
body.vs-framed #sidebar,
body.vs-framed .et_pb_widget_area{ display:none !important; }
body.vs-framed #page-container{ padding-top:0 !important; margin-top:0 !important; }
body.vs-framed.et_fixed_nav #page-container{ padding-top:0 !important; }
body.vs-framed #main-content{ padding-top:0; }
body.vs-framed #content-area,
body.vs-framed #left-area{
  width:100% !important; max-width:100% !important; float:none !important; padding-right:0 !important;
}
body.vs-framed #main-content .container{ width:100% !important; max-width:100% !important; padding:0 !important; }
body.vs-framed #main-content .container:before{ display:none !important; }

/* ============================================================
   Eigener Header / Navigation / Footer
   ============================================================ */
.vs-shell{ font-family:'Instrument Sans',sans-serif; color:var(--ink); line-height:1.4; background:#fff; }
.vs-shell *{ box-sizing:border-box; }
.vs-shell a{ text-decoration:none; color:inherit; }

.vs-sale{ background:var(--navy); color:#fff; font-size:15px; text-align:center; padding:11px 48px; }
.vs-sale b{ font-weight:700; border:1px dashed rgba(255,255,255,.6); padding:3px 10px; border-radius:3px; margin-left:8px; }

.vs-head{ display:flex; align-items:center; gap:40px; padding:22px 48px; background:#fff; }
.vs-head-reduced{ border-bottom:1px solid var(--line); }
.vs-secure{ margin-left:auto; font-size:15px; color:var(--tw); }
.vs-logo{ display:flex; align-items:center; gap:12px; flex:none; white-space:nowrap; }
.vs-logo-ph{ width:42px; height:42px; border:2px dashed var(--input); border-radius:3px; display:flex; align-items:center; justify-content:center; font-size:9px; font-weight:600; color:var(--tvw); text-align:center; line-height:1.1; }
.vs-logo-wm{ font-family:'Archivo',sans-serif; font-size:26px; font-weight:700; letter-spacing:-.02em; color:var(--ink); }
.vs-logo-wm span{ color:var(--acc); }

.vs-search{ flex:1; max-width:640px; display:flex; align-items:stretch; border:2px solid var(--navy); border-radius:4px; background:#fff; overflow:hidden; }
.vs-lupe{ flex:none; align-self:center; margin:0 14px 0 20px; width:18px; height:18px; border:2.5px solid var(--navy); border-radius:50%; position:relative; }
.vs-lupe:after{ content:''; position:absolute; right:-6px; bottom:-4px; width:9px; height:2.5px; background:var(--navy); transform:rotate(45deg); }
.vs-search input[type=search]{ flex:1; border:0 !important; outline:0; font-family:'Instrument Sans',sans-serif; font-size:19px; padding:19px 0 !important; color:var(--ink); min-width:0; background:#fff; box-shadow:none !important; }
.vs-search input[type=search]::placeholder{ color:var(--tw); }
.vs-search button{ border:0; cursor:pointer; background:var(--navy); color:#fff; font-family:'Instrument Sans',sans-serif; font-size:17px; font-weight:700; padding:19px 32px; transition:background-color .15s ease-out; }
.vs-search button:hover{ background:#0A2846; }

.vs-acct{ display:flex; gap:26px; align-items:center; margin-left:auto; font-size:16px; font-weight:600; white-space:nowrap; }
.vs-cart-n{ background:var(--acc); color:#fff; font-size:13px; font-weight:700; border-radius:999px; padding:2px 8px; margin-left:8px; }

.vs-nav{ border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#fff; padding:0 48px; display:flex; gap:38px; align-items:center; position:sticky; top:0; z-index:200; overflow-x:auto; }
.vs-nav a{ font-size:17px; font-weight:600; color:var(--ink); padding:18px 0; border-bottom:3px solid transparent; white-space:nowrap; transition:border-color .15s ease-out; }
.vs-nav a:hover, .vs-nav a.on{ color:var(--navy); border-bottom-color:var(--navy); }

.vs-foot{ background:var(--ink); color:#A9BDD2; padding:48px; display:grid; grid-template-columns:repeat(5,1fr); gap:30px; margin-top:60px; }
.vs-foot b{ display:block; font-size:15px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:#fff; margin-bottom:16px; }
.vs-foot a, .vs-foot span{ display:block; font-size:16px; color:#A9BDD2; margin-bottom:11px; line-height:1.4; }
.vs-foot a:hover{ color:#fff; }
.vs-foot-b{ background:#071322; padding:16px 48px; display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; font-size:15px; color:#7E93A9; }

/* ============================================================
   Produktseite
   ============================================================ */
.single-product div.product{
  max-width:1440px; margin:0 auto; padding:40px 48px 52px;
  display:grid; grid-template-columns:1.15fr 1fr; gap:52px; align-items:start;
}
.single-product div.product > .woocommerce-product-gallery{ width:100% !important; float:none !important; margin:0 !important; }
.single-product .woocommerce-product-gallery__wrapper img{
  border:1px solid var(--line); border-radius:4px; background:#fff; padding:34px;
  object-fit:contain; width:100%;
}
.single-product .flex-control-thumbs{ display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:12px; padding:0; }
.single-product .flex-control-thumbs li{ width:100% !important; margin:0 !important; }
.single-product .flex-control-thumbs img{ border:2px solid var(--line); border-radius:4px; padding:8px; object-fit:contain; height:96px; width:100%; opacity:1; }
.single-product .flex-control-thumbs img.flex-active{ border-color:var(--navy); }
.single-product div.product > .summary{ width:100% !important; float:none !important; margin:0 !important; }
.single-product div.product .product_title{
  font-family:'Archivo',sans-serif; font-size:40px; line-height:1.08; font-weight:700;
  letter-spacing:-.025em; margin:0 0 12px; padding:0;
}
.single-product .woocommerce-product-rating{ margin-bottom:14px; }
.single-product .star-rating{ color:var(--star); }
.single-product div.product p.price, .single-product div.product span.price{
  font-family:'Archivo',sans-serif; font-size:42px; font-weight:700; line-height:1;
  color:var(--ink) !important; margin:6px 0 8px;
}
.single-product div.product p.price ins{ text-decoration:none; color:var(--acc) !important; }
.single-product div.product p.price del{ font-size:24px; color:var(--tvw); opacity:1; }
.single-product .woocommerce-product-details__short-description{ font-size:17px; color:var(--t2); line-height:1.6; margin-bottom:18px; }
.single-product .variations{ margin-bottom:18px; }
.single-product .variations th, .single-product .variations td{ padding:8px 0; border:0; }
.single-product .variations label{ font-size:17px; font-weight:700; color:var(--ink); }
.single-product .variations select{
  border:2px solid var(--input); border-radius:3px; padding:15px 14px; font-size:18px;
  font-family:'Archivo',sans-serif; font-weight:700; min-height:56px; width:100%; background:#fff;
}
.single-product form.cart{ display:flex; gap:14px; align-items:stretch; flex-wrap:wrap; margin:20px 0 !important; }
.single-product form.cart.variations_form{ display:block; }
.single-product form.cart .quantity{ flex:none; }
.single-product .quantity input.qty{
  border:2px solid var(--input); border-radius:3px; height:70px; width:92px;
  font-size:19px; text-align:center; font-family:'Archivo',sans-serif; font-weight:700;
}
.woocommerce div.product form.cart .button,
.woocommerce div.product .single_add_to_cart_button{
  background:var(--acc) !important; color:#fff !important; border:0;
  font-family:'Instrument Sans',sans-serif; font-size:21px !important; font-weight:700;
  padding:22px 34px !important; border-radius:3px !important; flex:1; min-height:70px;
  transition:background-color .15s ease-out;
}
.woocommerce div.product form.cart .button:hover{ background:var(--acc-hover) !important; }
.single-product .product_meta{ font-size:15px; color:var(--tw); border-top:1px solid var(--line); padding-top:16px; margin-top:20px; }
.single-product .product_meta a{ color:var(--navy); }

/* Reiter und Beschreibung */
.single-product .woocommerce-tabs{ grid-column:1/-1; max-width:900px; margin-top:8px; }
.single-product .woocommerce-tabs ul.tabs{ padding:0 !important; margin:0 !important; border-bottom:1px solid var(--line); }
.single-product .woocommerce-tabs ul.tabs:before{ border:0 !important; }
.single-product .woocommerce-tabs ul.tabs li{
  background:none !important; border:0 !important; border-radius:0 !important;
  margin:0 26px 0 0 !important; padding:0 !important;
}
.single-product .woocommerce-tabs ul.tabs li:before,
.single-product .woocommerce-tabs ul.tabs li:after{ display:none !important; }
.single-product .woocommerce-tabs ul.tabs li a{
  font-size:17px !important; font-weight:600; color:var(--ink) !important;
  padding:16px 0 !important; display:block; border-bottom:3px solid transparent;
}
.single-product .woocommerce-tabs ul.tabs li.active a{ color:var(--navy) !important; border-bottom-color:var(--navy); }
.single-product .woocommerce-tabs .panel{ font-size:18px; line-height:1.7; color:var(--tf); padding-top:22px; }
.single-product .woocommerce-tabs .panel h2{ font-size:26px; }
.single-product .woocommerce-tabs table.shop_attributes th{ background:var(--fl); }
.single-product .related.products, .single-product .upsells.products{
  grid-column:1/-1; border-top:1px solid var(--line); padding-top:40px; margin-top:20px;
}
.single-product .related.products > h2, .single-product .upsells.products > h2{ font-size:30px; padding:0 0 4px; }

/* ============================================================
   Inhaltsseiten und Beiträge
   ============================================================ */
body.vs-framed.page:not(.woocommerce-page) .entry-content,
body.vs-framed.single-post .entry-content{
  max-width:860px; margin:0 auto; padding:0 24px 20px;
  font-size:18px; line-height:1.7; color:var(--tf);
}
body.vs-framed.page:not(.woocommerce-page) .entry-title,
body.vs-framed.single-post .entry-title{
  max-width:860px; margin:44px auto 16px; padding:0 24px;
  font-family:'Archivo',sans-serif; font-size:40px; line-height:1.1; font-weight:700; letter-spacing:-.025em;
}
body.vs-framed .entry-content h2{ font-family:'Archivo',sans-serif; font-size:30px; margin:38px 0 14px; }
body.vs-framed .entry-content h3{ font-family:'Archivo',sans-serif; font-size:22px; margin:28px 0 10px; }
body.vs-framed .entry-content p{ margin:0 0 18px; }
body.vs-framed .entry-content a{ color:var(--navy); border-bottom:1px solid #C7D8EC; }
body.vs-framed .entry-content ul, body.vs-framed .entry-content ol{ margin:0 0 20px; padding-left:22px; }
body.vs-framed .entry-content li{ margin-bottom:8px; }
body.vs-framed .entry-content table{
  width:100%; border-collapse:collapse; margin:22px 0; font-size:16px;
  border:1px solid var(--line); border-radius:4px; overflow:hidden;
}
body.vs-framed .entry-content th{ background:var(--fl); font-weight:700; padding:14px 16px; text-align:left; border-bottom:1px solid var(--line); }
body.vs-framed .entry-content td{ padding:14px 16px; border-bottom:1px solid var(--linef); }

/* Blog-Archiv als Kartenraster */
body.vs-framed.archive #left-area, body.vs-framed.blog #left-area, body.vs-framed.search #left-area{
  display:grid; grid-template-columns:repeat(3,1fr); gap:20px;
  max-width:1440px; margin:0 auto; padding:40px 48px !important;
}
body.vs-framed.archive.woocommerce #left-area, body.vs-framed.woocommerce-page #left-area{ display:block; padding:0 !important; }
body.vs-framed .et_pb_post{
  background:#fff; border:1px solid var(--line); border-radius:4px; padding:24px;
  margin:0 !important; display:flex; flex-direction:column; gap:10px;
  transition:border-color .15s ease-out, box-shadow .15s ease-out;
}
body.vs-framed .et_pb_post:hover{ border-color:var(--navy); box-shadow:0 8px 20px rgba(10,26,46,.07); }
body.vs-framed .et_pb_post .entry-title{
  font-family:'Archivo',sans-serif; font-size:21px !important; line-height:1.24;
  margin:0 !important; padding:0 !important; max-width:none !important;
}
body.vs-framed .et_pb_post .post-meta{ font-size:14px; color:var(--tw); padding:0; }
body.vs-framed .et_pb_post .post-content{ font-size:16px; color:var(--t3); line-height:1.5; }
body.vs-framed .et_pb_post .more-link{ font-size:16px; font-weight:700; color:var(--acc) !important; border:0; }
body.vs-framed .pagination{ grid-column:1/-1; }

@media(max-width:1100px){
  .vs-head{ flex-wrap:wrap; gap:16px; }
  .vs-search{ order:3; flex-basis:100%; max-width:none; }
  .vs-foot{ grid-template-columns:repeat(2,1fr); }
  .single-product div.product{ grid-template-columns:1fr; gap:32px; }
  body.vs-framed.archive #left-area, body.vs-framed.blog #left-area{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:782px){
  .vs-sale, .vs-head, .vs-nav, .vs-foot, .vs-foot-b{ padding-left:18px; padding-right:18px; }
  .vs-nav{ gap:22px; }
  .vs-logo-ph{ width:32px; height:32px; }
  .vs-logo-wm{ font-size:21px; }
  .vs-search input[type=search]{ font-size:17px; padding:16px 0 !important; }
  .vs-search button{ font-size:16px; padding:16px 22px; }
  .vs-foot{ grid-template-columns:1fr; }
  .single-product div.product{ padding:24px 18px 40px; }
  .single-product div.product .product_title{ font-size:28px; }
  .single-product div.product p.price{ font-size:32px; }
  body.vs-framed.page .entry-title, body.vs-framed.single-post .entry-title{ font-size:28px; margin-top:28px; }
  body.vs-framed.archive #left-area, body.vs-framed.blog #left-area{ grid-template-columns:1fr; padding:24px 18px !important; }
}

/* Kaufblock: Button darf nicht umbrechen, Mengenfeld kompakt */
.woocommerce div.product form.cart .button,
.woocommerce div.product .single_add_to_cart_button{
  white-space:nowrap; padding:22px 28px !important; font-size:20px !important;
}
.single-product div.product .summary{ min-width:0; }
.single-product div.product .product_title{ text-wrap:balance; }
/* Breadcrumb: „Uncategorized" ist ein Datenproblem, kein Layoutfehler */
.woocommerce .woocommerce-breadcrumb{ line-height:1.5; }

/* ============================================================
   Typografie global durchsetzen — Divi bringt aus dem Demo-Setup
   eine kursive Serifenschrift mit.
   ============================================================ */
body.vs-framed,
body.vs-framed p, body.vs-framed li, body.vs-framed td, body.vs-framed th,
body.vs-framed span, body.vs-framed div, body.vs-framed a,
body.vs-framed input, body.vs-framed select, body.vs-framed textarea, body.vs-framed button,
body.vs-framed .entry-content, body.vs-framed .entry-content *{
  font-family:'Instrument Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-style:normal;
}
body.vs-framed h1, body.vs-framed h2, body.vs-framed h3,
body.vs-framed h4, body.vs-framed h5, body.vs-framed h6,
body.vs-framed .entry-title, body.vs-framed .product_title,
body.vs-framed .vs-logo-wm, body.vs-framed .price,
body.vs-framed .woocommerce-products-header__title{
  font-family:'Archivo', -apple-system, sans-serif !important;
  font-style:normal; text-transform:none;
}
body.vs-framed em, body.vs-framed i{ font-style:italic; }
body.vs-framed strong, body.vs-framed b{ font-weight:700; }
body.vs-framed .entry-content h2{ text-transform:none; }

/* Doppelte Überschrift vermeiden: Inhalts-H1 unter dem Seitentitel kleiner */
body.vs-framed.page .entry-content > h1:first-child,
body.vs-framed.single-post .entry-content > h1:first-child{
  font-size:28px; margin:0 0 18px; color:var(--t2); font-weight:600;
}

/* ============================================================
   Sortierung — natives Select-Aussehen ersetzen (Design: Label
   „Sortieren" plus Feld mit 2px Rahmen und eigenem Pfeil)
   ============================================================ */
.woocommerce .woocommerce-ordering{
  display:flex !important; align-items:center; gap:12px;
}
.woocommerce .woocommerce-ordering:before{
  content:"Sortieren"; font-size:16px; color:var(--tw); white-space:nowrap;
}
.woocommerce .woocommerce-ordering select,
.woocommerce .woocommerce-ordering select.orderby{
  -webkit-appearance:none; -moz-appearance:none; appearance:none;
  border:2px solid var(--input); border-radius:3px; background-color:#fff;
  padding:13px 42px 13px 16px; margin:0;
  font-family:'Instrument Sans',sans-serif; font-size:17px; font-weight:600;
  color:var(--ink); line-height:1.2; min-height:50px; cursor:pointer;
  box-shadow:none; outline:none; text-indent:0; max-width:none; width:auto;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23123A63' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 16px center; background-size:12px 8px;
  transition:border-color .15s ease-out;
}
.woocommerce .woocommerce-ordering select:hover{ border-color:var(--navy); }
.woocommerce .woocommerce-ordering select:focus{ border-color:var(--navy); }
.woocommerce .woocommerce-ordering select::-ms-expand{ display:none; }

@media(max-width:782px){
  .woocommerce .woocommerce-ordering{ flex-wrap:wrap; }
  .woocommerce .woocommerce-ordering select{ width:100%; }
}

/* ============================================================
   WooCommerce-Seiten: Konto, Warenkorb, Kasse, Bestellungen
   ============================================================ */

/* Gemeinsamer Rahmen */
body.vs-framed.woocommerce-account .entry-content,
body.vs-framed.woocommerce-cart .entry-content,
body.vs-framed.woocommerce-checkout .entry-content,
body.vs-framed.woocommerce-order-received .entry-content{
  max-width:1280px; margin:0 auto; padding:0 48px 40px;
  font-size:17px; color:var(--tf);
}
body.vs-framed.woocommerce-account .entry-title,
body.vs-framed.woocommerce-cart .entry-title,
body.vs-framed.woocommerce-checkout .entry-title,
body.vs-framed.woocommerce-order-received .entry-title{
  max-width:1280px; margin:44px auto 22px; padding:0 48px;
  font-family:'Archivo',sans-serif; font-size:40px; font-weight:700;
  letter-spacing:-.025em; line-height:1.1;
}

/* Hinweise */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-noreviews{
  border-top:0 !important; border:1px solid var(--line) !important;
  border-left:4px solid var(--navy) !important;
  background:var(--fl) !important; color:var(--ink) !important;
  border-radius:4px; font-size:16px; line-height:1.5;
  padding:18px 22px !important; margin:0 0 24px !important; list-style:none;
}
.woocommerce-message{ border-left-color:var(--acc) !important; }
.woocommerce-error{ border-left-color:#C0392B !important; }
.woocommerce-message:before, .woocommerce-info:before,
.woocommerce-error:before, .woocommerce-noreviews:before{ display:none !important; }
.woocommerce-message a.button, .woocommerce-info a.button{ float:right; }

/* Buttons */
.woocommerce .button, .woocommerce input.button, .woocommerce a.button,
.woocommerce button.button, .woocommerce input[type=submit].button{
  background:var(--navy); color:#fff; border:0; border-radius:3px;
  font-family:'Instrument Sans',sans-serif; font-size:17px; font-weight:700;
  padding:16px 26px; line-height:1.2; transition:background-color .15s ease-out;
  text-transform:none; letter-spacing:0;
}
.woocommerce .button:hover, .woocommerce input.button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover{ background:#0A2846; color:#fff; }
.woocommerce .button.alt, .woocommerce input.button.alt, .woocommerce a.button.alt,
.woocommerce button.button.alt{ background:var(--acc) !important; color:#fff !important; }
.woocommerce .button.alt:hover, .woocommerce button.button.alt:hover{ background:var(--acc-hover) !important; }

/* Formularfelder */
.woocommerce form .form-row{ margin:0 0 18px; padding:0; }
.woocommerce form .form-row label,
.woocommerce-account label, .woocommerce-checkout label{
  display:block; font-size:16px; font-weight:600; color:var(--tk); margin-bottom:7px;
}
.woocommerce form .form-row .required{ color:var(--acc); text-decoration:none; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-account input[type=text], .woocommerce-account input[type=email],
.woocommerce-account input[type=password], .woocommerce-account input[type=tel],
.woocommerce input[type=text], .woocommerce input[type=email],
.woocommerce input[type=password], .woocommerce input[type=tel]{
  width:100%; border:2px solid var(--input) !important; border-radius:3px !important;
  background:#fff; color:var(--ink);
  font-family:'Instrument Sans',sans-serif; font-size:17px !important;
  padding:15px 16px !important; min-height:54px; box-shadow:none !important;
  transition:border-color .15s ease-out;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce input[type=text]:focus, .woocommerce input[type=email]:focus,
.woocommerce input[type=password]:focus{ border-color:var(--navy) !important; outline:none; }
.woocommerce form .form-row-first, .woocommerce form .form-row-last{ width:48.5%; }
.woocommerce .select2-container--default .select2-selection--single{
  border:2px solid var(--input); border-radius:3px; height:54px;
}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{
  line-height:50px; padding-left:14px; font-size:17px; color:var(--ink);
}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow{ height:50px; }

/* --- Mein Konto: Navigation als Karte, Inhalt daneben --- */
.woocommerce-account.logged-in .woocommerce{
  display:grid; grid-template-columns:260px 1fr; gap:40px; align-items:start;
}
.woocommerce-account:not(.logged-in) .woocommerce{ display:block; max-width:560px; }
.woocommerce-notices-wrapper:empty{ display:none !important; }
.woocommerce-account .woocommerce > h2{
  font-family:'Archivo',sans-serif; font-size:26px; margin:0 0 18px;
}
.woocommerce-account .woocommerce-notices-wrapper{ grid-column:1/-1; padding:0; }
.woocommerce-account .woocommerce-MyAccount-navigation{
  width:auto !important; float:none !important;
  border:1px solid var(--line); border-radius:4px; background:#fff; padding:8px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:0; }
.woocommerce-account .woocommerce-MyAccount-navigation li{
  list-style:none; margin:0; padding:0; border-bottom:1px solid var(--linef);
}
.woocommerce-account .woocommerce-MyAccount-navigation li:last-child{ border-bottom:0; }
.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:block; padding:14px 16px; font-size:17px; font-weight:600;
  color:var(--tk); border:0; border-radius:3px; transition:background-color .15s ease-out;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{ background:var(--fh2); color:var(--navy); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
  background:var(--fh); color:var(--navy); box-shadow:inset 3px 0 0 var(--navy);
}
.woocommerce-account .woocommerce-MyAccount-content{
  width:auto !important; float:none !important;
  border:1px solid var(--line); border-radius:4px; background:#fff; padding:30px;
  font-size:17px; line-height:1.6;
}
.woocommerce-account .woocommerce-MyAccount-content p{ margin:0 0 16px; }
.woocommerce-account .woocommerce-MyAccount-content a{ color:var(--navy); font-weight:600; }
.woocommerce-account .woocommerce-MyAccount-content h2,
.woocommerce-account .woocommerce-MyAccount-content h3{
  font-family:'Archivo',sans-serif; font-size:24px; margin:0 0 16px;
}
.woocommerce-account .woocommerce-Address{
  border:1px solid var(--line); border-radius:4px; padding:22px; background:var(--fl);
}
.woocommerce-account .woocommerce-Address-title h2, .woocommerce-account .woocommerce-Address-title h3{ font-size:20px; }
.woocommerce-account .addresses .col-1, .woocommerce-account .addresses .col-2{ width:48.5%; }

/* Login und Registrierung */
.woocommerce form.woocommerce-form-login,
.woocommerce form.woocommerce-form-register,
.woocommerce form.woocommerce-ResetPassword{
  border:1px solid var(--line); border-radius:4px; padding:30px; background:#fff; margin:0;
}
.woocommerce form.login .woocommerce-form-login__submit,
.woocommerce form.register button{ background:var(--acc) !important; font-size:19px; padding:18px 30px; width:100%; }
.woocommerce-form-login__rememberme{ font-weight:400 !important; }

/* Bestellungen und Tabellen */
.woocommerce table.shop_table, .woocommerce table.woocommerce-orders-table{
  border:1px solid var(--line) !important; border-radius:4px; border-collapse:collapse;
  width:100%; background:#fff; font-size:16px; margin:0 0 24px;
}
.woocommerce table.shop_table th, .woocommerce table.woocommerce-orders-table th{
  background:var(--fl); font-family:'Instrument Sans',sans-serif; font-weight:700;
  font-size:14px; text-transform:uppercase; letter-spacing:.06em; color:var(--tw);
  padding:14px 18px; border-bottom:1px solid var(--line); text-align:left;
}
.woocommerce table.shop_table td, .woocommerce table.woocommerce-orders-table td{
  padding:18px; border-top:1px solid var(--linef); vertical-align:middle; color:var(--ink);
}
.woocommerce table.shop_table img{
  width:72px !important; border:1px solid var(--line); border-radius:4px; padding:6px; background:#fff;
}
.woocommerce table.shop_table .product-name a{ font-size:17px; font-weight:600; color:var(--ink); border:0; }
.woocommerce table.shop_table .product-price, .woocommerce table.shop_table .product-subtotal,
.woocommerce table.shop_table .amount{ font-family:'Archivo',sans-serif; font-weight:700; color:var(--ink); }
.woocommerce a.remove{ color:var(--tw) !important; font-weight:400; font-size:22px; line-height:1; }
.woocommerce a.remove:hover{ background:none !important; color:var(--acc) !important; }
.woocommerce .quantity input.qty{
  border:2px solid var(--input); border-radius:3px; height:52px; width:76px;
  font-size:17px; text-align:center; font-family:'Archivo',sans-serif; font-weight:700;
}

/* Warenkorb-Layout */
.woocommerce-cart .woocommerce{ display:grid; grid-template-columns:1fr 380px; gap:40px; align-items:start; }
.woocommerce-cart .woocommerce-notices-wrapper,
.woocommerce-cart form.woocommerce-cart-form{ grid-column:1; }
.woocommerce-cart .cart-collaterals{ grid-column:2; width:auto !important; float:none !important; }
.woocommerce-cart .cart-collaterals .cart_totals{ width:auto !important; float:none !important; }
.woocommerce .cart_totals{
  border:1px solid var(--line); border-radius:4px; background:var(--fl); padding:26px;
}
.woocommerce .cart_totals h2{ font-family:'Archivo',sans-serif; font-size:22px; margin:0 0 16px; }
.woocommerce .cart_totals table.shop_table{ border:0 !important; background:transparent; }
.woocommerce .cart_totals table.shop_table th{ background:transparent; text-transform:none; font-size:16px; color:var(--tk); padding:12px 0; }
.woocommerce .cart_totals table.shop_table td{ padding:12px 0; border-top:1px solid var(--linef); text-align:right; }
.woocommerce .cart_totals .order-total .amount{ font-family:'Archivo',sans-serif; font-size:26px; }
.woocommerce .wc-proceed-to-checkout a.checkout-button{
  background:var(--acc) !important; color:#fff !important;
  font-size:20px !important; padding:20px !important; width:100%; text-align:center; display:block;
}
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover{ background:var(--acc-hover) !important; }
.woocommerce .coupon{ display:flex; gap:10px; align-items:stretch; }
.woocommerce .coupon input[type=text]{ min-width:220px; }
.woocommerce .cart-empty{
  font-family:'Archivo',sans-serif; font-size:30px; font-weight:700; color:var(--ink);
  text-align:left; border:0; padding:0; margin:10px 0 18px;
}
.woocommerce .return-to-shop a.button{ background:var(--acc); font-size:19px; padding:18px 30px; }
.woocommerce .return-to-shop a.button:hover{ background:var(--acc-hover); }

/* Kasse */
.woocommerce-checkout form.checkout{ display:grid; grid-template-columns:1.15fr .85fr; gap:48px; align-items:start; }
.woocommerce-checkout form.checkout #customer_details{ grid-column:1; }
.woocommerce-checkout form.checkout #order_review_heading,
.woocommerce-checkout form.checkout #order_review{ grid-column:2; }
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2{ width:100%; float:none; }
.woocommerce-checkout h3{ font-family:'Archivo',sans-serif; font-size:24px; margin:0 0 18px; }
.woocommerce-checkout #order_review{
  border:1px solid var(--line); border-radius:4px; background:var(--fl); padding:26px;
}
.woocommerce-checkout #order_review table.shop_table{ border:0 !important; background:transparent; }
.woocommerce-checkout #payment{ background:transparent; border-radius:4px; padding:0; }
.woocommerce-checkout #payment ul.payment_methods{
  border:1px solid var(--line) !important; border-radius:4px; background:#fff;
  padding:14px 18px; margin:0 0 18px; list-style:none;
}
.woocommerce-checkout #payment ul.payment_methods li{ margin:0 0 8px; font-size:16px; list-style:none; }
.woocommerce-checkout #payment div.form-row{ padding:0; }
.woocommerce-checkout #place_order{
  background:var(--acc) !important; font-size:20px !important; padding:20px !important; width:100%;
}
.woocommerce-checkout #place_order:hover{ background:var(--acc-hover) !important; }

/* Bestellbestätigung */
.woocommerce-order .woocommerce-thankyou-order-received{
  font-family:'Archivo',sans-serif; font-size:28px; font-weight:700; color:var(--ink);
  border:1px solid var(--line); border-left:4px solid var(--acc);
  background:var(--fl); padding:24px 26px; border-radius:4px; margin:0 0 26px;
}
.woocommerce-order ul.order_details{
  border:1px solid var(--line); border-radius:4px; padding:22px; margin:0 0 26px;
  background:#fff; display:flex; flex-wrap:wrap; gap:26px; list-style:none;
}
.woocommerce-order ul.order_details li{
  border:0 !important; margin:0; padding:0; font-size:14px; color:var(--tw);
  text-transform:uppercase; letter-spacing:.06em; font-weight:700;
}
.woocommerce-order ul.order_details li strong{
  display:block; font-family:'Archivo',sans-serif; font-size:18px; color:var(--ink);
  text-transform:none; letter-spacing:0; margin-top:6px;
}

@media(max-width:1100px){
  .woocommerce-account .woocommerce{ grid-template-columns:1fr; gap:24px; }
  .woocommerce-cart .woocommerce{ grid-template-columns:1fr; }
  .woocommerce-cart .cart-collaterals{ grid-column:1; }
  .woocommerce-checkout form.checkout{ grid-template-columns:1fr; gap:30px; }
  .woocommerce-checkout form.checkout #customer_details,
  .woocommerce-checkout form.checkout #order_review_heading,
  .woocommerce-checkout form.checkout #order_review{ grid-column:1; }
}
@media(max-width:782px){
  body.vs-framed.woocommerce-account .entry-content,
  body.vs-framed.woocommerce-cart .entry-content,
  body.vs-framed.woocommerce-checkout .entry-content,
  body.vs-framed.woocommerce-order-received .entry-content{ padding:0 18px 32px; }
  body.vs-framed.woocommerce-account .entry-title,
  body.vs-framed.woocommerce-cart .entry-title,
  body.vs-framed.woocommerce-checkout .entry-title,
  body.vs-framed.woocommerce-order-received .entry-title{ padding:0 18px; font-size:28px; }
  .woocommerce form .form-row-first, .woocommerce form .form-row-last,
  .woocommerce-account .addresses .col-1, .woocommerce-account .addresses .col-2{ width:100%; }
  .woocommerce .coupon{ flex-wrap:wrap; }
  .woocommerce table.shop_table img{ width:56px !important; }
}

/* ============================================================
   Nachbesserungen 08.09.2026 (Feedback Matthias)
   ============================================================ */
/* Kategorieseiten: Inhalt auf 1440 zentriert, Gitter mit Seitenabstand */
.archive.woocommerce #left-area{ max-width:1440px !important; margin:0 auto !important; }
.woocommerce ul.products{ margin:0 auto !important; padding:0 48px !important; box-sizing:border-box; }
.archive.woocommerce .woocommerce-ordering{ margin-top:24px !important; }
.archive.woocommerce .woocommerce-ordering select{ min-width:260px; }

/* Preiszusatz „inkl. MwSt." klein und dezent */
.woocommerce .price .woocommerce-price-suffix,
.woocommerce ul.products li.product .price .woocommerce-price-suffix{
  font-family:'Instrument Sans',sans-serif; font-size:13px; font-weight:400; color:var(--tw); margin-left:6px;
}
.single-product div.product p.price .woocommerce-price-suffix,
.single-product div.product span.price .woocommerce-price-suffix{
  display:block; font-size:14px; margin:8px 0 0; letter-spacing:0;
}

/* Produktseite: Divi packt Galerie und Kauffeld in einen .clearfix – dieser wird zum Zweispalter */
.single-product div.product{ grid-template-columns:1fr !important; max-width:1440px; }
.single-product div.product > .clearfix{
  display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:56px; align-items:start; width:100%;
}
.single-product div.product > .clearfix > .woocommerce-product-gallery,
.single-product div.product > .clearfix > .summary{ width:100% !important; float:none !important; margin:0 !important; }
.single-product .woocommerce-product-gallery__wrapper{ width:100%; }
.single-product .woocommerce-product-gallery__image img{ width:100%; height:auto; }
.single-product .woocommerce-tabs{ max-width:none; }

/* Varianten-Auswahl, Menge und Zurücksetzen im Designsystem */
.woocommerce div.product form.cart .variations select,
.single-product .variations select{
  -webkit-appearance:none; appearance:none;
  background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'><path d='M1 1l7 7 7-7' fill='none' stroke='%23123A63' stroke-width='2'/></svg>") no-repeat right 16px center !important;
  border:2px solid var(--input) !important; border-radius:3px !important;
  padding:14px 48px 14px 16px !important; min-height:56px; height:auto !important; width:100%;
  font-family:'Instrument Sans',sans-serif !important; font-size:17px !important; font-weight:600 !important;
  color:var(--ink) !important; line-height:1.3; box-shadow:none !important;
}
.single-product .variations select:focus{ border-color:var(--navy) !important; outline:0; }
.single-product .variations th{ vertical-align:middle; width:auto; padding-right:16px; }
.single-product .variations label{ font-size:16px; line-height:1.3; white-space:nowrap; }
.single-product .variations td.value{ width:100%; }
.single-product .reset_variations{ display:inline-block; margin-top:8px; font-size:14px; color:var(--tw) !important; text-decoration:underline; }
.single-product .quantity input.qty{ background:#fff; color:var(--ink); height:64px; -moz-appearance:textfield; }
.single-product .single_variation_wrap .woocommerce-variation-price .price{ font-size:36px; }
.single-product .single_variation_wrap .woocommerce-variation-add-to-cart{ display:flex; gap:14px; align-items:stretch; }

/* Hinweisbox „…wurde deinem Warenkorb hinzugefügt": zentriert, Button sichtbar */
.woocommerce .woocommerce-notices-wrapper{ max-width:1440px; margin:0 auto; box-sizing:border-box; }
.woocommerce-message, .woocommerce-info{
  display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
  margin:24px 0 !important;
}
.woocommerce-message a.button, .woocommerce-info a.button{
  float:none !important; order:2; margin-left:auto;
  background:var(--navy) !important; color:#fff !important; border:0 !important;
  font-family:'Instrument Sans',sans-serif; font-size:15px !important; font-weight:700;
  padding:12px 20px !important; border-radius:3px !important; line-height:1.2;
  transition:background-color .15s ease-out;
}
.woocommerce-message a.button:hover, .woocommerce-info a.button:hover{ background:#0A2846 !important; color:#fff !important; }

/* Blog: Kommentare weg */
body.vs-framed #comment-wrap, body.vs-framed .comments-area, body.vs-framed #respond,
body.vs-framed .post-meta .comments-number{ display:none !important; }

@media(max-width:1100px){
  .single-product div.product > .clearfix{ grid-template-columns:1fr; gap:32px; }
}
@media(max-width:782px){
  .woocommerce ul.products{ padding:0 18px !important; }
}

/* Warenkorb: breitere Summenbox, Versandoptionen linksbündig, Buttons ohne Divi-Pfeil */
.woocommerce-cart .woocommerce{ grid-template-columns:minmax(0,1fr) 440px; }
.woocommerce .cart_totals table.shop_table tr.woocommerce-shipping-totals td{ text-align:left; padding-left:16px; }
.woocommerce .cart_totals ul#shipping_method{ margin:0; padding:0; list-style:none; }
.woocommerce .cart_totals ul#shipping_method li{ display:flex; align-items:flex-start; gap:10px; margin:0 0 10px; font-size:15px; line-height:1.4; }
.woocommerce .cart_totals ul#shipping_method li input[type=radio]{ margin:4px 0 0; flex:none; }
.woocommerce .cart_totals ul#shipping_method li label{ margin:0; font-weight:500; color:var(--ink); }
.woocommerce .cart_totals .woocommerce-shipping-destination{ font-size:13px; color:var(--tw); margin:6px 0 4px; }
.woocommerce .cart_totals .shipping-calculator-button{ font-size:14px; color:var(--navy); }
.woocommerce .cart_totals .order-total .includes_tax{ display:block; font-size:13px; font-weight:400; color:var(--tw); margin-top:4px; }
.woocommerce .cart_totals .order-total .includes_tax .amount{ font-size:13px; font-family:'Instrument Sans',sans-serif; font-weight:600; }
.woocommerce .cart_totals .wc-proceed-to-checkout{ padding:16px 0 0; }
.woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button{
  display:block; width:100%; text-align:center; background:var(--acc) !important; color:#fff !important;
  border:0 !important; border-radius:3px !important; padding:20px 24px !important; font-size:18px !important; font-weight:700;
  font-family:'Instrument Sans',sans-serif; line-height:1.2; box-sizing:border-box; transition:background-color .15s ease-out;
}
.woocommerce .cart_totals .wc-proceed-to-checkout a.checkout-button:hover{ background:var(--acc-hover) !important; }
.woocommerce .button:after, .woocommerce a.button:after, .woocommerce button.button:after,
.woocommerce input.button:after, .woocommerce #respond input#submit:after{ display:none !important; }
.woocommerce-cart table.shop_table td.actions{ padding:20px 0 0 !important; border:0 !important; }
.woocommerce-cart table.shop_table td.actions .coupon{ display:inline-flex; gap:12px; align-items:stretch; }
.woocommerce-cart table.shop_table td.actions .coupon input#coupon_code{
  width:220px !important; min-height:52px; padding:0 14px; border:2px solid var(--input); border-radius:3px; background:#fff; font-size:16px; color:var(--ink);
}
.woocommerce-cart table.shop_table td.actions .coupon button.button,
.woocommerce-cart table.shop_table td.actions button[name=update_cart]{
  background:var(--navy) !important; color:#fff !important; border:0 !important; border-radius:3px !important;
  padding:0 22px !important; min-height:52px; font-size:16px !important; font-weight:700; font-family:'Instrument Sans',sans-serif;
  line-height:1.2; cursor:pointer; transition:background-color .15s ease-out;
}
.woocommerce-cart table.shop_table td.actions button[name=update_cart]{ float:right; background:#fff !important; color:var(--navy) !important; border:2px solid var(--navy) !important; }
.woocommerce-cart table.shop_table td.actions button[name=update_cart]:disabled{ opacity:.45; cursor:default; }
.woocommerce-cart table.shop_table td.actions .coupon button.button:hover{ background:#0A2846 !important; }
.woocommerce-cart table.shop_table .quantity input.qty{ border:2px solid var(--input); border-radius:3px; background:#fff; height:48px; width:72px; text-align:center; font-weight:700; color:var(--ink); }
.woocommerce-cart table.shop_table .product-remove a.remove{ color:var(--tw) !important; font-size:20px; font-weight:400; background:transparent !important; }
.woocommerce-cart table.shop_table .product-remove a.remove:hover{ color:var(--acc) !important; }

/* Kasse: Bestellübersicht rechts neben den Kontaktfeldern, nicht darunter */
.woocommerce-checkout form.checkout{
  grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr); grid-template-rows:auto auto 1fr;
}
.woocommerce-checkout form.checkout #customer_details{ grid-column:1; grid-row:1 / span 3; }
.woocommerce-checkout form.checkout #order_review_heading{ grid-column:2; grid-row:1; margin:0 0 14px; }
.woocommerce-checkout form.checkout #order_review{ grid-column:2; grid-row:2; position:sticky; top:24px; }
.woocommerce-checkout #order_review table.shop_table th, .woocommerce-checkout #order_review table.shop_table td{ padding:12px 0; }
.woocommerce-checkout #order_review table.shop_table tfoot th{ background:transparent; }
.woocommerce-checkout #order_review ul#shipping_method li{ display:flex; align-items:flex-start; gap:10px; margin:0 0 8px; font-size:15px; line-height:1.4; }
.woocommerce-checkout #order_review ul#shipping_method li input[type=radio]{ margin:4px 0 0; flex:none; }
.woocommerce-checkout #order_review .order-total .includes_tax{ display:block; font-size:13px; font-weight:400; color:var(--tw); margin-top:4px; }
@media(max-width:1100px){
  .woocommerce-checkout form.checkout{ grid-template-columns:1fr; grid-template-rows:auto; }
  .woocommerce-checkout form.checkout #customer_details{ grid-row:auto; }
  .woocommerce-checkout form.checkout #order_review_heading, .woocommerce-checkout form.checkout #order_review{ grid-column:1; grid-row:auto; position:static; }
  .woocommerce-cart .woocommerce{ grid-template-columns:1fr; }
  .woocommerce-cart .cart-collaterals{ grid-column:1; }
}

/* Produktseite: „Angebot!"-Badge liegt über der Galerie statt als eigene Rasterzelle */
.single-product div.product > .clearfix{ position:relative; }
.single-product div.product > .clearfix > .onsale,
.single-product div.product span.onsale{
  position:absolute !important; top:14px; left:14px; z-index:5; margin:0 !important;
  width:auto !important; min-width:0 !important; min-height:0 !important; height:auto !important; line-height:1.2 !important;
  padding:6px 12px !important; border-radius:3px !important; background:var(--acc-soft) !important; color:var(--acc) !important;
  font-family:'Instrument Sans',sans-serif; font-size:13px !important; font-weight:700; letter-spacing:.04em; text-transform:uppercase;
  border:0 !important; box-shadow:none !important; grid-column:auto; justify-self:start;
}

/* Kategoriekopf: volle Breite, Sortierung rechts auf Höhe von „Direkt zur passenden Auswahl" */
.woocommerce .woocommerce-products-header{ max-width:none; }
.woocommerce .woocommerce-products-header__title,
.woocommerce .term-description.vs-term-intro{ max-width:804px; }
.vs-quickjump{ display:flex; justify-content:space-between; align-items:flex-start; gap:32px; }
.vs-qj-l{ flex:1 1 auto; max-width:804px; min-width:0; }
.vs-qj-r{ flex:none; padding-top:2px; }
.archive.woocommerce .vs-qj-r .woocommerce-ordering{ display:flex; align-items:center; gap:12px; margin:0 !important; padding:0 !important; float:none !important; }
@media(max-width:782px){
  .vs-quickjump{ flex-direction:column; gap:16px; }
  .vs-qj-r{ width:100%; }
  .archive.woocommerce .vs-qj-r .woocommerce-ordering select{ width:100%; }
}

/* Buttons: kein Divi-Hover (Padding-Sprung, Pfeil) – nur Farbwechsel */
.woocommerce div.product form.cart .button:hover,
.woocommerce div.product .single_add_to_cart_button:hover,
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover,
.woocommerce #respond input#submit:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover{
  padding:inherit; transform:none !important; letter-spacing:inherit;
}
.woocommerce div.product form.cart .button:hover,
.woocommerce div.product .single_add_to_cart_button:hover{ padding:22px 34px !important; }
.woocommerce ul.products li.product .button:hover{ padding-left:inherit; padding-right:inherit; }
.woocommerce .button:before, .woocommerce a.button:before, .woocommerce button.button:before{ display:none !important; }
.et_pb_button:hover:after, .woocommerce .button:hover:after{ display:none !important; }
.woocommerce div.product form.cart .button.wc-variation-selection-needed,
.woocommerce div.product form.cart .button.disabled{ opacity:.55; cursor:not-allowed; }
.vs-quickjump{ max-width:none !important; width:auto; box-sizing:border-box; }
.vs-qj-l{ flex:0 1 804px; }
.vs-qj-r{ display:flex; justify-content:flex-end; min-width:320px; }
.archive.woocommerce .vs-qj-r .woocommerce-ordering{ float:none !important; position:static; display:flex !important; }
/* Warenkorb: alle Aktionsbuttons gleich hoch (56px), Update-Button mit Rahmen in Boxgrösse */
.woocommerce-cart table.shop_table td.actions{ display:flex; align-items:stretch; gap:12px; flex-wrap:wrap; }
.woocommerce-cart table.shop_table td.actions .coupon{ display:flex; gap:12px; align-items:stretch; margin:0; }
.woocommerce-cart table.shop_table td.actions .coupon input#coupon_code,
.woocommerce-cart table.shop_table td.actions .coupon button.button,
.woocommerce-cart table.shop_table td.actions button[name=update_cart]{
  height:56px !important; min-height:56px !important; box-sizing:border-box; line-height:1 !important; margin:0 !important;
}
.woocommerce-cart table.shop_table td.actions button[name=update_cart]{ float:none !important; margin-left:auto !important; padding:0 22px !important; }
/* Gitter mit Seitenabstand (schlägt die spezifischeren columns-Regeln), Breadcrumb-Leiste durchgehend */
.archive.woocommerce #left-area > ul.products, .archive.woocommerce #left-area > ul.products[class*="columns-"]{ padding:0 48px !important; }
.archive.woocommerce #left-area > nav.woocommerce-breadcrumb{ position:relative; z-index:0; }
.archive.woocommerce #left-area > nav.woocommerce-breadcrumb:before{ content:""; position:absolute; top:0; bottom:0; left:calc(50% - 50vw); width:100vw; background:inherit; border-bottom:inherit; z-index:-1; }
@media(max-width:782px){ .archive.woocommerce #left-area > ul.products, .archive.woocommerce #left-area > ul.products[class*="columns-"]{ padding:0 18px !important; } }
/* Korrekturen: Aktionszelle bleibt Tabellenzelle (colspan!), Breadcrumb-Hintergrund über volle Breite */
.woocommerce-cart table.shop_table td.actions{ display:table-cell !important; }
.woocommerce-cart table.shop_table td.actions .coupon{ display:inline-flex; vertical-align:middle; }
.woocommerce-cart table.shop_table td.actions button[name=update_cart]{ float:right !important; margin-left:12px !important; }
.archive.woocommerce #left-area > nav.woocommerce-breadcrumb{ isolation:isolate; }
.archive.woocommerce #left-area > nav.woocommerce-breadcrumb:before{ background:var(--fl); border-bottom:1px solid var(--line); }
/* Breadcrumb im Rahmen: volle Breite, gleiche Einrückung wie Header */
.vs-shell .woocommerce-breadcrumb{ background:var(--fl); border-bottom:1px solid var(--line); padding:16px 48px !important; margin:0 !important; font-size:15px; color:var(--tw); font-family:'Instrument Sans',sans-serif; }
.vs-shell .woocommerce-breadcrumb a{ color:var(--tw); text-decoration:none; }
.vs-shell .woocommerce-breadcrumb a:hover{ color:var(--navy); }
.archive.woocommerce #left-area > nav.woocommerce-breadcrumb:before{ display:none; }
@media(max-width:782px){ .vs-shell .woocommerce-breadcrumb{ padding:12px 18px !important; font-size:13px; } }
/* Mein Konto: Navigation links, Inhalt rechts – Divi-Pseudoelemente belegen sonst eine Rasterzelle */
.woocommerce-account.logged-in .woocommerce:before, .woocommerce-account.logged-in .woocommerce:after{ display:none !important; content:none !important; }
.woocommerce-account.logged-in .woocommerce-MyAccount-navigation{ grid-column:1; grid-row:1; }
.woocommerce-account.logged-in .woocommerce-MyAccount-content{ grid-column:2; grid-row:1; }
.woocommerce-account.logged-in .woocommerce-notices-wrapper{ grid-column:1/-1; grid-row:auto; }
@media(max-width:782px){ .woocommerce-account.logged-in .woocommerce-MyAccount-navigation, .woocommerce-account.logged-in .woocommerce-MyAccount-content{ grid-column:1; grid-row:auto; } }
/* Pagination (Suche/Shop/Kategorien): Abstand zum Gitter und zum Footer */
.woocommerce nav.woocommerce-pagination{ margin:36px 0 56px !important; padding:0 48px; }
.search .woocommerce nav.woocommerce-pagination, .woocommerce-page nav.woocommerce-pagination{ margin-top:36px !important; }
@media(max-width:782px){ .woocommerce nav.woocommerce-pagination{ padding:0 18px; margin:24px 0 40px !important; } }
/* Suche/Shop: gleiche Ergebniszeile und Gitterabstände wie Kategorieseiten (Body hat dort kein .archive) */
body.search.woocommerce #left-area, body.post-type-archive-product #left-area{ max-width:1440px !important; margin:0 auto !important; }
body.woocommerce #left-area > .woocommerce-result-count,
body.woocommerce #left-area > .woocommerce-ordering{ margin:34px 0 0 !important; padding:0 48px; float:none !important; display:inline-block; }
body.woocommerce #left-area > .woocommerce-ordering{ float:right !important; margin-top:28px !important; }
body.woocommerce #left-area > ul.products, body.woocommerce #left-area > ul.products[class*="columns-"]{ padding:0 48px !important; margin-top:20px !important; clear:both; }
body.woocommerce #left-area > .woocommerce-ordering select{ border:2px solid var(--input); border-radius:3px; padding:12px 14px; font-size:17px; font-weight:600; font-family:'Instrument Sans',sans-serif; color:var(--ink); background:#fff; min-width:260px; }
@media(max-width:782px){ body.woocommerce #left-area > .woocommerce-result-count, body.woocommerce #left-area > .woocommerce-ordering{ padding:0 18px; float:none !important; display:block; } body.woocommerce #left-area > ul.products, body.woocommerce #left-area > ul.products[class*="columns-"]{ padding:0 18px !important; } }
body.woocommerce #left-area > .woocommerce-ordering, body.woocommerce #left-area > .woocommerce-result-count{ margin-bottom:24px !important; }
.woocommerce .woocommerce-ordering select{
  -webkit-appearance:none; appearance:none;
  background:#fff url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'><path d='M1 1l7 7 7-7' fill='none' stroke='%23123A63' stroke-width='2'/></svg>") no-repeat right 16px center !important;
  padding-right:44px !important;
}

/* ============================================================
   FAQ-Seite (08.09.2026)
   ============================================================ */
body.vs-framed.page-id-336 .entry-title{ display:none; }
body.vs-framed.page-id-336 .entry-content{ max-width:none; padding:0; }
.vs-faq{ font-family:'Instrument Sans',sans-serif; color:var(--ink); }
.vs-faq-hero{ background:var(--fl); border-bottom:1px solid var(--line); padding:56px 48px 40px; }
.vs-faq-hero > *{ max-width:860px; }
.vs-faq-kicker{ font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--acc); margin:0 0 12px; }
.vs-faq-title{ font-family:'Archivo',sans-serif; font-size:44px; line-height:1.08; letter-spacing:-.025em; font-weight:700; margin:0 0 18px; }
.vs-faq-lead{ font-size:18px; line-height:1.6; color:var(--t2); }
.vs-faq-lead p{ margin:0 0 8px; }
.vs-faq-search{ display:flex; align-items:center; gap:0; margin-top:26px; max-width:640px; border:2px solid var(--navy); border-radius:4px; background:#fff; position:relative; }
.vs-faq-search input{ flex:1; border:0 !important; outline:0; font-family:'Instrument Sans',sans-serif; font-size:18px; padding:17px 14px 17px 0 !important; color:var(--ink); background:#fff; box-shadow:none !important; min-width:0; }
.vs-faq-search input::placeholder{ color:var(--tvw); }
.vs-faq-count{ flex:none; font-size:14px; color:var(--tw); padding:0 16px; white-space:nowrap; }
.vs-faq-body{ max-width:1440px; margin:0 auto; padding:48px 48px 24px; display:grid; grid-template-columns:280px minmax(0,1fr); gap:56px; align-items:start; }
.vs-faq-nav-in{ position:sticky; top:24px; }
.vs-faq-nav .vs-label{ display:block; font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--tw); margin:0 0 10px; }
.vs-faq-nav nav{ display:flex; flex-direction:column; }
.vs-faq-nav nav a{ display:flex; justify-content:space-between; align-items:center; gap:10px; padding:11px 12px; border-left:3px solid transparent; border-bottom:1px solid var(--linef); font-size:15px; font-weight:600; color:var(--t2); text-decoration:none; line-height:1.3; }
.vs-faq-nav nav a small{ font-size:12px; color:var(--tvw); font-weight:600; background:var(--fh); border-radius:10px; padding:2px 8px; }
.vs-faq-nav nav a:hover{ color:var(--navy); background:var(--fh2); }
.vs-faq-nav nav a.on{ color:var(--navy); border-left-color:var(--acc); background:var(--fh2); }
.vs-faq-main{ min-width:0; max-width:860px; }
.vs-faq-sec{ margin:0 0 44px; scroll-margin-top:96px; }
.vs-faq-sec h2{ font-family:'Archivo',sans-serif; font-size:26px; letter-spacing:-.02em; margin:0 0 6px; padding:0 0 12px; border-bottom:2px solid var(--ink); }
.vs-faq-secintro{ font-size:16px; color:var(--t3); margin:12px 0 4px; }
.vs-faq-item{ border-bottom:1px solid var(--line); }
.vs-faq-item summary{ list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:18px 0; font-family:'Archivo',sans-serif; font-size:18px; font-weight:600; line-height:1.3; color:var(--ink); transition:color .15s ease-out; }
.vs-faq-item summary::-webkit-details-marker{ display:none; }
.vs-faq-item summary:hover{ color:var(--navy); }
.vs-faq-item summary i{ flex:none; width:28px; height:28px; border:2px solid var(--line); border-radius:50%; position:relative; transition:transform .2s ease-out,border-color .15s ease-out; }
.vs-faq-item summary i:before, .vs-faq-item summary i:after{ content:''; position:absolute; background:var(--navy); left:50%; top:50%; transform:translate(-50%,-50%); }
.vs-faq-item summary i:before{ width:12px; height:2px; }
.vs-faq-item summary i:after{ width:2px; height:12px; transition:opacity .15s ease-out; }
.vs-faq-item[open] summary{ color:var(--navy); }
.vs-faq-item[open] summary i{ border-color:var(--acc); transform:rotate(180deg); }
.vs-faq-item[open] summary i:after{ opacity:0; }
.vs-faq-item[open] summary i:before{ background:var(--acc); }
.vs-faq-a{ padding:0 44px 22px 0; font-size:17px; line-height:1.65; color:var(--t2); }
.vs-faq-a p{ margin:0 0 12px; }
.vs-faq-a p:last-child{ margin-bottom:0; }
.vs-faq-a a{ color:var(--navy); font-weight:600; }
.vs-faq-a ul, .vs-faq-a ol{ margin:0 0 12px 20px; padding:0; }
.vs-faq-empty{ font-size:17px; color:var(--tw); padding:24px 0; }
.vs-faq-cta{ max-width:1344px; margin:16px auto 64px; background:var(--navy); color:#fff; border-radius:6px; padding:40px 48px; display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap; }
.vs-faq-cta h2{ font-family:'Archivo',sans-serif; font-size:26px; letter-spacing:-.02em; margin:0 0 8px; color:#fff; }
.vs-faq-cta p{ margin:0; font-size:17px; color:#C9D6E5; max-width:640px; line-height:1.5; }
.vs-faq-cta-b{ display:flex; gap:12px; flex-wrap:wrap; }
.vs-faq-cta .vs-btn, .vs-faq-cta .vs-btn-o{ display:inline-block; padding:16px 26px; border-radius:3px; font-size:16px; font-weight:700; text-decoration:none; line-height:1.2; transition:background-color .15s ease-out; }
.vs-faq-cta .vs-btn{ background:var(--acc); color:#fff; }
.vs-faq-cta .vs-btn:hover{ background:var(--acc-hover); }
.vs-faq-cta .vs-btn-o{ border:2px solid #fff; color:#fff; padding:14px 24px; }
.vs-faq-cta .vs-btn-o:hover{ background:rgba(255,255,255,.1); }
@media(max-width:1100px){
  .vs-faq-body{ grid-template-columns:1fr; gap:24px; }
  .vs-faq-nav-in{ position:static; }
  .vs-faq-nav nav{ flex-direction:row; flex-wrap:wrap; gap:8px; }
  .vs-faq-nav nav a{ border:1px solid var(--line); border-radius:20px; padding:8px 14px; font-size:14px; }
  .vs-faq-nav nav a.on{ border-color:var(--navy); }
}
@media(max-width:782px){
  .vs-faq-hero{ padding:36px 18px 28px; }
  .vs-faq-title{ font-size:30px; }
  .vs-faq-body{ padding:28px 18px 8px; }
  .vs-faq-item summary{ font-size:16px; }
  .vs-faq-cta{ margin:8px 18px 48px; padding:28px 22px; }
}
body.vs-framed.page-id-336 .entry-content, body.vs-framed.page:not(.woocommerce-page).page-id-336 .entry-content{ max-width:none !important; padding:0 !important; margin:0 !important; }
body.vs-framed.page-id-336 article.et_pb_post{ padding:0 !important; }
.vs-faq-item[hidden], .vs-faq-sec[hidden], .vs-faq-empty[hidden]{ display:none !important; }
.vs-faq-hero{ padding-left:max(48px, calc(50% - 672px)); padding-right:max(48px, calc(50% - 672px)); }
.vs-faq-cta .vs-btn-o, .vs-faq-cta .vs-btn-o:visited, body.vs-framed .entry-content .vs-faq-cta a{ color:#fff !important; }
body.vs-framed .entry-content .vs-faq-cta a.vs-btn{ background:var(--acc); }
@media(max-width:782px){ .vs-faq-hero{ padding-left:18px; padding-right:18px; } }
/* Bestellbestätigung / Konto: Aktions-Buttons (Bezahlen, Stornieren, Ansehen) mit sichtbarem Text */
.woocommerce-table__actions a.button, .woocommerce-orders-table__cell-order-actions a.button, .woocommerce-order-details a.button,
.woocommerce a.button.pay, .woocommerce a.button.cancel, .woocommerce a.button.view{
  background:var(--navy) !important; color:#fff !important; border:0 !important; border-radius:3px !important;
  font-family:'Instrument Sans',sans-serif; font-size:15px !important; font-weight:700; padding:12px 20px !important; line-height:1.2; margin:0 8px 6px 0;
}
.woocommerce a.button.cancel{ background:#fff !important; color:var(--navy) !important; border:2px solid var(--navy) !important; padding:10px 18px !important; }
