/* ==========================================================================
   PEPTIDWERK v2 - BASE
   Tokens, Typografie, Komponenten, WooCommerce-Basis.
   Kein @import. Keine Bild-URLs. !important nur dort, wo Flatsome
   Inline-Styles setzt und anders nicht erreichbar ist.
   ========================================================================== */

:root{
  /* Dunkle Zone */
  --pwk-base:#0D131A;
  --pwk-panel:#17202B;
  --pwk-line-dark:#263242;

  /* Helle Zone */
  --pwk-paper:#F2F2EE;
  --pwk-paper-2:#E7E7E1;
  --pwk-line-light:#D6D6CE;

  /* Text auf hell */
  --pwk-ink:#161E29;
  --pwk-ink-2:#4A5462;
  --pwk-ink-3:#7C8792;

  /* Text auf dunkel */
  --pwk-onDark:#F2F2EE;
  --pwk-onDark-2:#A2ACB6;
  --pwk-onDark-3:#6E7883;

  /* Signal - aus der Produktfarbe gemessen */
  --pwk-signal:#1B9EB5;
  --pwk-signal-deep:#0E6E7E;
  --pwk-signal-bg:rgba(27,158,181,.10);

  /* Status */
  --pwk-stock-in:#0E6E7E;
  --pwk-stock-low:#B07C1E;
  --pwk-stock-out:#8A5050;

  /* Schrift */
  --pwk-sans:"SpaceGrotesk",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --pwk-mono:"JetBrainsMono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;

  /* Raster */
  --pwk-container:1280px;
  --pwk-gutter:24px;
  --pwk-radius:4px;
  --pwk-hairline:1px;
}

/* --- Grundlagen ---------------------------------------------------------- */

body.pwk{
  font-family:var(--pwk-sans);
  color:var(--pwk-ink);
  background:var(--pwk-paper-2);
  -webkit-font-smoothing:antialiased;
}

.pwk h1,.pwk h2,.pwk h3,.pwk h4{
  font-family:var(--pwk-sans);
  font-weight:500;
  letter-spacing:-.02em;
  line-height:1.12;
  color:inherit;
}

.pwk h1{font-size:clamp(2.2rem,4.4vw,3.6rem)}
.pwk h2{font-size:clamp(1.7rem,2.8vw,2.4rem)}
.pwk h3{font-size:1.25rem}

.pwk p{line-height:1.65}

.pwk-mono{
  font-family:var(--pwk-mono);
  font-weight:400;
  letter-spacing:.06em;
  font-variant-numeric:tabular-nums;
}

.pwk-overline{
  font-family:var(--pwk-mono);
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--pwk-signal-deep);
  display:block;
  margin-bottom:12px;
}

.pwk-icon{display:block;flex:none}

/* --- Zonen --------------------------------------------------------------- */

.pwk-section--dark{
  background:var(--pwk-base);
  color:var(--pwk-onDark);
}
.pwk-section--dark .pwk-overline{color:var(--pwk-signal)}
.pwk-section--dark p{color:var(--pwk-onDark-2)}

.pwk-section--paper{
  background:var(--pwk-paper-2);
  color:var(--pwk-ink);
}

/* --- Links und Buttons --------------------------------------------------- */

.pwk-link{
  color:var(--pwk-signal-deep);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:border-color .15s ease;
}
.pwk-link:hover{border-bottom-color:currentColor}
.pwk-section--dark .pwk-link{color:var(--pwk-signal)}

.pwk-link--arrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:var(--pwk-mono);
  font-size:13px;
  letter-spacing:.08em;
}
.pwk-link--arrow .pwk-icon{transition:transform .15s ease}
.pwk-link--arrow:hover .pwk-icon{transform:translateX(4px)}

.pwk .pwk-btn,
.pwk a.button.pwk-btn{
  font-family:var(--pwk-mono);
  font-size:12px;
  letter-spacing:.10em;
  text-transform:uppercase;
  border-radius:var(--pwk-radius);
  padding:14px 28px;
  border:1px solid transparent;
  box-shadow:none;
  transition:background-color .15s ease,color .15s ease,border-color .15s ease;
}
.pwk .pwk-btn--primary{background:var(--pwk-onDark);color:var(--pwk-base);border-color:var(--pwk-onDark)}
.pwk .pwk-btn--primary:hover{background:var(--pwk-signal);border-color:var(--pwk-signal);color:#fff}
.pwk .pwk-btn--ghost{background:transparent;color:var(--pwk-signal);border-color:var(--pwk-signal)}
.pwk .pwk-btn--ghost:hover{background:var(--pwk-signal-bg)}

/* --- Topbar / Header ----------------------------------------------------- */

.pwk-topbar{background:var(--pwk-panel);color:var(--pwk-onDark-3)}
.pwk-topbar__inner{
  max-width:var(--pwk-container);
  margin:0 auto;
  padding:9px var(--pwk-gutter);
  display:flex;
  justify-content:space-between;
  gap:16px;
  font-size:12px;
  letter-spacing:.06em;
}
.pwk-topbar a{color:var(--pwk-signal);text-decoration:none}

.pwk-chrome--header{position:relative;z-index:60}
.pwk-chrome--header .pwk-header{
  background:var(--pwk-base);
  border-bottom:var(--pwk-hairline) solid var(--pwk-line-dark);
}
.pwk-chrome--header .pwk-header a{color:var(--pwk-onDark)}
.pwk-header__actions{display:flex;gap:20px;align-items:center;font-size:12px;letter-spacing:.08em}
.pwk-header__actions a{text-decoration:none}
.pwk-header__actions a:hover{color:var(--pwk-signal)}

/* Standard-Flatsome-Header nur ausblenden, wenn unserer wirklich rendert */
body.pwk-has-header #header,
body.pwk-has-header .header-wrapper{display:none}

/* --- Trust Strip --------------------------------------------------------- */

.pwk-trust{background:var(--pwk-base);color:var(--pwk-onDark);border-top:var(--pwk-hairline) solid var(--pwk-line-dark);border-bottom:var(--pwk-hairline) solid var(--pwk-line-dark)}
.pwk-trust--paper{background:var(--pwk-paper);color:var(--pwk-ink);border-color:var(--pwk-line-light)}
.pwk-trust__inner{
  max-width:var(--pwk-container);
  margin:0 auto;
  padding:26px var(--pwk-gutter);
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:24px;
}
.pwk-trust__item{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center}
.pwk-trust__icon{grid-row:1 / span 2;color:var(--pwk-signal)}
.pwk-trust__title{font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.pwk-trust__text{font-size:13px;color:var(--pwk-onDark-2)}
.pwk-trust--paper .pwk-trust__text{color:var(--pwk-ink-2)}
.pwk-trust--paper .pwk-trust__icon{color:var(--pwk-signal-deep)}

/* --- Produktkarten ------------------------------------------------------- */

.pwk-grid{
  display:grid;
  gap:20px;
  align-items:stretch;
}
.pwk-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pwk-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pwk-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pwk-grid__more{margin-top:28px}

.pwk-card{
  display:grid;
  grid-template-rows:auto auto auto auto 1fr auto auto auto;
  background:var(--pwk-paper);
  border:var(--pwk-hairline) solid var(--pwk-line-light);
  border-radius:var(--pwk-radius);
  padding:16px 18px 14px;
  transition:border-color .15s ease;
}
.pwk-card:hover{border-color:var(--pwk-signal-deep)}
.pwk-card__media{display:block;aspect-ratio:4/5;overflow:hidden;margin-bottom:14px}
.pwk-card__media img{width:100%;height:100%;object-fit:contain;display:block}
.pwk-card__code{font-size:11px;letter-spacing:.10em;color:var(--pwk-ink-3);text-transform:uppercase}
.pwk-card__title{font-size:1.15rem;margin:6px 0 0}
.pwk-card__title a{color:var(--pwk-ink);text-decoration:none}
.pwk-card__sub{font-size:12px;color:var(--pwk-ink-2);margin:4px 0 0}
.pwk-card__spacer{min-height:12px}
/* Preis und Pflichtangaben kommen aus WooCommerce / German Market.
   Wir formatieren nur, statt sie nachzubauen. */
.pwk-card__meta .price{
  display:block;font-family:var(--pwk-mono);font-size:1.05rem;
  font-weight:500;color:var(--pwk-ink);margin:0 0 6px;
}
.pwk-card__meta .price del{color:var(--pwk-ink-3);font-weight:400;margin-right:6px;font-size:.85em}
.pwk-card__meta .price ins{text-decoration:none}
.pwk-card__meta,
.pwk-card__meta .wgm-info,
.pwk-card__meta .german-market-shipping-costs,
.pwk-card__meta .delivery-time-information,
.pwk-card__meta .price_unit,
.pwk-card__meta .wgm-tax-info{
  font-family:var(--pwk-mono);font-size:11px;line-height:1.55;color:var(--pwk-ink-3);
}
.pwk-card__meta a{color:var(--pwk-ink-3);text-decoration:underline}
.pwk-card__meta .button,
.pwk-card__meta .add_to_cart_button{display:none}
.pwk-card__foot{display:flex;justify-content:flex-end;margin-top:12px;padding-top:12px;border-top:var(--pwk-hairline) solid var(--pwk-line-light)}
.pwk-card__cta{color:var(--pwk-signal-deep);display:inline-flex;transition:transform .15s ease}
.pwk-card:hover .pwk-card__cta{transform:translateX(4px)}

/* --- Compound-Index ------------------------------------------------------ */

.pwk-index{display:grid;gap:28px 40px}
.pwk-index--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pwk-index--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pwk-index--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pwk-index__letter{
  display:block;font-size:12px;letter-spacing:.16em;color:var(--pwk-signal-deep);
  border-bottom:var(--pwk-hairline) solid var(--pwk-line-light);padding-bottom:6px;margin-bottom:10px;
}
.pwk-index__list{list-style:none;margin:0;padding:0}
.pwk-index__list li{margin:0 0 6px}
.pwk-index__list a{color:var(--pwk-ink);text-decoration:none;font-size:15px}
.pwk-index__list a:hover{color:var(--pwk-signal-deep)}

/* --- Analytik ------------------------------------------------------------ */

.pwk-analytics{border-top:var(--pwk-hairline) solid var(--pwk-line-dark)}
.pwk-analytics__row{
  display:grid;
  grid-template-columns:1fr auto auto auto;
  gap:18px;align-items:baseline;
  padding:14px 0;
  border-bottom:var(--pwk-hairline) solid var(--pwk-line-dark);
  text-decoration:none;color:var(--pwk-onDark);
}
.pwk-analytics__row:hover{color:var(--pwk-signal)}
.pwk-analytics__name{font-size:15px}
.pwk-analytics__charge{font-size:12px;color:var(--pwk-onDark-3)}
.pwk-analytics__value,.pwk-analytics__endo{font-size:13px;color:var(--pwk-signal)}
.pwk-analytics__more{margin-top:20px}
.pwk-analytics__note{font-family:var(--pwk-mono);font-size:11px;color:var(--pwk-onDark-3);margin-top:14px}

/* --- CoA-Box auf der Produktseite --------------------------------------- */

.pwk-coa{
  border:var(--pwk-hairline) solid var(--pwk-line-light);
  border-radius:var(--pwk-radius);
  padding:16px 18px;margin:22px 0;background:var(--pwk-paper);
}
.pwk-coa__head{display:flex;align-items:center;gap:8px;color:var(--pwk-signal-deep);font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.pwk-coa__list{margin:0;display:grid;gap:8px}
.pwk-coa__row{display:flex;justify-content:space-between;gap:16px;border-bottom:var(--pwk-hairline) solid var(--pwk-line-light);padding-bottom:6px}
.pwk-coa__row dt{font-size:13px;color:var(--pwk-ink-2);margin:0}
.pwk-coa__row dd{margin:0;font-size:13px;color:var(--pwk-ink)}
.pwk-coa__links{display:flex;gap:20px;flex-wrap:wrap;margin-top:14px;font-family:var(--pwk-mono);font-size:12px}
.pwk-coa__note{font-family:var(--pwk-mono);font-size:11px;color:var(--pwk-ink-3);margin:12px 0 0}

/* --- Spezifikationstabelle ---------------------------------------------- */

.pwk-spec{width:100%;border-collapse:collapse;margin:20px 0}
.pwk-spec th,.pwk-spec td{text-align:left;padding:10px 0;border-bottom:var(--pwk-hairline) solid var(--pwk-line-light);font-size:14px}
.pwk-spec th{font-weight:400;color:var(--pwk-ink-2);width:40%}

/* --- RUO-Leiste und Footer ---------------------------------------------- */

.pwk-ruo{
  background:var(--pwk-panel);color:var(--pwk-onDark-3);
  text-align:center;font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  padding:12px var(--pwk-gutter);
}
.pwk-chrome--footer .pwk-footer{background:var(--pwk-base);color:var(--pwk-onDark-2);padding:56px var(--pwk-gutter)}
.pwk-chrome--footer .pwk-footer a{color:var(--pwk-onDark-2);text-decoration:none}
.pwk-chrome--footer .pwk-footer a:hover{color:var(--pwk-signal)}
.pwk-chrome--footer .pwk-footer h3{color:var(--pwk-onDark);font-size:1.1rem}
.pwk-chrome--footer .pwk-footer ul{list-style:none;margin:0;padding:0}
.pwk-chrome--footer .pwk-footer li{margin-bottom:8px;font-size:14px}
body.pwk-has-footer .footer-wrapper > .footer-1,
body.pwk-has-footer .footer-wrapper > .footer-2,
body.pwk-has-footer .absolute-footer,
body.pwk-has-footer .footer-widgets{display:none}

/* --- WooCommerce-Archiv -------------------------------------------------- */

.pwk .woocommerce ul.products{display:grid;gap:20px;margin:0}
.pwk-loop-card{
  display:grid !important;
  grid-template-rows:auto auto 1fr auto auto;
  background:var(--pwk-paper);
  border:var(--pwk-hairline) solid var(--pwk-line-light);
  border-radius:var(--pwk-radius);
  padding:14px 16px;
}
.pwk-loop-card .box-image img{object-fit:contain}
.pwk-loop-code{display:block;font-size:11px;letter-spacing:.10em;color:var(--pwk-ink-3);text-transform:uppercase;margin-bottom:4px}
.pwk .woocommerce-loop-product__title{font-size:1.05rem;font-weight:500;letter-spacing:-.01em}
.pwk ul.products li.product .price{font-family:var(--pwk-mono);font-size:1rem;font-weight:500;color:var(--pwk-ink)}

/* German Market Zusatzangaben in Karten ruhig setzen */
.pwk .wgm-info,
.pwk .german-market-shipping-costs,
.pwk .delivery-time-information,
.pwk .price_unit{
  font-family:var(--pwk-mono);
  font-size:11px;
  line-height:1.5;
  color:var(--pwk-ink-3);
}

/* --- FAQ ----------------------------------------------------------------- */

.pwk .pwk-faq .accordion-title{
  font-family:var(--pwk-sans);
  font-size:1.05rem;
  border-top:var(--pwk-hairline) solid var(--pwk-line-light);
  padding:18px 0;
}
.pwk .pwk-faq .accordion-inner{padding:0 0 18px;color:var(--pwk-ink-2)}

/* --- Hero ---------------------------------------------------------------- */

.pwk-hero__slide{background-color:var(--pwk-base)}
.pwk-hero__box{color:var(--pwk-onDark)}
.pwk-hero__box h1,.pwk-hero__box h2{color:var(--pwk-onDark)}
.pwk-hero__box p{color:var(--pwk-onDark-2);max-width:44ch}


/* --- Hauptmenue ---------------------------------------------------------- */

.pwk-menu{
  list-style:none;margin:0;padding:0;
  display:flex;align-items:center;justify-content:center;
  gap:28px;flex-wrap:wrap;
}
.pwk-menu li{margin:0}
.pwk-menu a{
  color:var(--pwk-onDark);text-decoration:none;
  font-size:14px;letter-spacing:.01em;
  padding:6px 0;display:inline-block;
}
.pwk-menu a:hover{color:var(--pwk-signal)}
.pwk-menu .current-menu-item > a,
.pwk-menu .current_page_item > a{box-shadow:inset 0 -2px 0 var(--pwk-signal)}
.pwk-menu .sub-menu{display:none}

/* --- Hero-Textblock ------------------------------------------------------ */

.pwk-hero__box{text-align:left}
.pwk-hero__box h1{margin:0 0 14px}
.pwk-hero__box p{margin:0 0 22px}
.pwk-hero__box .pwk-btn{margin:0 10px 0 0}
