
/* Custom CSS theme */
@charset "UTF-8";
/* Noor Coffee – Shop-Design (Produktseiten, Warenkorb, Checkout)
   Farben: Schwarz #000, Espresso #2b1d14, Creme #f5f0e8, Noor-Rot #ee3126
   Schrift: Fraunces (Überschriften) + aventa-bold (Text, wie Website) */
html #dm .dmBody div.ec-size {
  --noor-red: #ee3126;
  --noor-ink: #2b1d14;
  --noor-cream: #f5f0e8;
  --noor-line: rgba(43, 29, 20, .18);
  color: var(--noor-ink);
  font-family: "aventa-bold", "Root UI", system-ui, sans-serif;
}

/* ---------- Überschriften ---------- */
html #dm .dmBody div.ec-size .ec-header-h1,
html #dm .dmBody div.ec-size .ec-header-h2,
html #dm .dmBody div.ec-size .ec-header-h3,
html #dm .dmBody div.ec-size .page-title__name,
html #dm .dmBody div.ec-size .product-details__product-title,
html #dm .dmBody div.ec-size .ec-cart__title,
html #dm .dmBody div.ec-size .ec-confirmation__title {
  font-family: "Fraunces", Georgia, serif !important;
  font-weight: 600 !important;
  letter-spacing: -.01em;
  color: var(--noor-ink) !important;
}

html #dm .dmBody div.ec-size .product-details__product-title {
  font-size: 34px !important;
  line-height: 1.1 !important;
}

/* Kleine Labels (Mahlgrad, Lieferzeit …) als Versalien wie auf dem Etikett */
html #dm .dmBody div.ec-size .ec-header-h6,
html #dm .dmBody div.ec-size .product-details-module__title,
html #dm .dmBody div.ec-size .form-control__label {
  font-family: "aventa-bold", sans-serif !important;
  font-size: 12px !important;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--noor-ink) !important;
}

/* ---------- Preis ---------- */
html #dm .dmBody div.ec-size .product-details__product-price,
html #dm .dmBody div.ec-size .details-product-price__value {
  font-family: "Fraunces", Georgia, serif !important;
  font-size: 24px !important;
  color: var(--noor-ink) !important;
}

html #dm .dmBody div.ec-size .ec-text-muted {
  color: rgba(43, 29, 20, 0.6) !important;
}

/* ---------- Beschreibung ---------- */
html #dm .dmBody div.ec-size .product-details__product-description {
  color: var(--noor-ink) !important;
  font-size: 15px !important;
  line-height: 1.6;
}

/* ---------- Auswahlfelder (Mahlgrad) – Fix: Text war weiß auf weiß ---------- */
html #dm .dmBody div.ec-size .form-control__select,
html #dm .dmBody div.ec-size .form-control__text,
html #dm .dmBody div.ec-size .form-control__textarea {
  color: var(--noor-ink) !important;
  font-family: "aventa-bold", sans-serif !important;
}

html #dm .dmBody div.ec-size .form-control__select-text,
html #dm .dmBody div.ec-size .form-control__placeholder-inner {
  color: var(--noor-ink) !important;
}

html #dm .dmBody div.ec-size .form-control {
  border-radius: 12px !important;
}

html #dm .dmBody div.ec-size .form-control--select,
html #dm .dmBody div.ec-size .form-control--input,
html #dm .dmBody div.ec-size .form-control--textarea {
  background: #fff !important;
  border: 1.5px solid var(--noor-line) !important;
  border-radius: 12px !important;
}

html #dm .dmBody div.ec-size .form-control--select:hover,
html #dm .dmBody div.ec-size .form-control--input:hover,
html #dm .dmBody div.ec-size .form-control--focus {
  border-color: var(--noor-ink) !important;
}

html #dm .dmBody div.ec-size .form-control__select option {
  color: #000;
}

/* Optionen als Pillen (Radio/Checkbox-Varianten) */
html #dm .dmBody div.ec-size .form-control--checkbox-button .form-control__inline-label {
  border-radius: 999px !important;
  border: 1.5px solid var(--noor-ink) !important;
  color: var(--noor-ink) !important;
}

html #dm .dmBody div.ec-size .form-control--checkbox-button input:checked + .form-control__inline-label {
  background: var(--noor-red) !important;
  border-color: var(--noor-red) !important;
  color: #fff !important;
}

/* ---------- Buttons ---------- */
html #dm .dmBody div.ec-size .form-control--primary .form-control__button,
html #dm .dmBody div.ec-size .details-product-purchase__add-to-bag .form-control__button,
html #dm .dmBody div.ec-size .ec-cart__button .form-control__button {
  background: var(--noor-red) !important;
  border: 2px solid var(--noor-red) !important;
  color: #fff !important;
  border-radius: 999px !important;
  font-family: "aventa-bold", sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: .04em;
  min-height: 52px;
  transition: background .2s ease, color .2s ease;
}

html #dm .dmBody div.ec-size .form-control--primary .form-control__button:hover,
html #dm .dmBody div.ec-size .details-product-purchase__add-to-bag .form-control__button:hover {
  background: #fff !important;
  color: var(--noor-red) !important;
}

html #dm .dmBody div.ec-size .form-control--secondary .form-control__button,
html #dm .dmBody div.ec-size .form-control--tertiary .form-control__button {
  background: transparent !important;
  border: 2px solid var(--noor-ink) !important;
  color: var(--noor-ink) !important;
  border-radius: 999px !important;
}

html #dm .dmBody div.ec-size .form-control__button-text,
html #dm .dmBody div.ec-size .form-control__button-svg {
  color: inherit !important;
}

/* Links */
html #dm .dmBody div.ec-size a.ec-link, html #dm .dmBody div.ec-size .ec-link {
  color: var(--noor-red) !important;
}

/* ---------- Produktbilder ---------- */
html #dm .dmBody div.ec-size .details-gallery__picture,
html #dm .dmBody div.ec-size .grid-product__image-wrap,
html #dm .dmBody div.ec-size .grid-product__bg {
  background: var(--noor-cream) !important;
  border-radius: 16px;
  overflow: hidden;
}

/* ---------- Produktliste (Shop-Seite) ---------- */
html #dm .dmBody div.ec-size .grid-product__title-inner {
  font-family: "Fraunces", Georgia, serif !important;
  font-size: 19px !important;
  color: var(--noor-ink) !important;
}

html #dm .dmBody div.ec-size .grid-product__price-amount,
html #dm .dmBody div.ec-size .grid-product__price-value {
  font-family: "aventa-bold", sans-serif !important;
  color: var(--noor-ink) !important;
}

html #dm .dmBody div.ec-size .grid-product__subtitle {
  color: rgba(43, 29, 20, 0.7) !important;
  font-size: 13px !important;
}

/* Etiketten / Badges (z. B. „Frisch geröstet“, „Ausverkauft“) */
html #dm .dmBody div.ec-size .label__text,
html #dm .dmBody div.ec-size .product-details__label-container .label__text {
  background: var(--noor-red) !important;
  color: #fff !important;
  border-radius: 999px !important;
  font-size: 11px !important;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 4px 12px !important;
}

/* ---------- Warenkorb & Checkout ---------- */
html #dm .dmBody div.ec-size .ec-cart-step__title,
html #dm .dmBody div.ec-size .ec-cart__steps .ec-cart-step__title {
  font-family: "Fraunces", Georgia, serif !important;
  color: var(--noor-ink) !important;
}

html #dm .dmBody div.ec-size .ec-cart-step__icon {
  color: var(--noor-red) !important;
}

html #dm .dmBody div.ec-size .ec-cart-summary__total,
html #dm .dmBody div.ec-size .ec-cart-summary__price {
  font-family: "Fraunces", Georgia, serif !important;
  color: var(--noor-ink) !important;
}

html #dm .dmBody div.ec-size .ec-cart__products,
html #dm .dmBody div.ec-size .ec-cart-step--current .ec-cart-step__wrap,
html #dm .dmBody div.ec-size .ec-cart__sidebar-inner {
  background: var(--noor-cream);
  border-radius: 16px;
}

html #dm .dmBody div.ec-size .ec-radiogroup__item--checked,
html #dm .dmBody div.ec-size .ec-radiogroup__item--checked .ec-radiogroup__item-inner {
  border-color: var(--noor-red) !important;
}

html #dm .dmBody div.ec-size .form-control__radio-view::after,
html #dm .dmBody div.ec-size .form-control__checkbox-view {
  color: var(--noor-red) !important;
}

/* Teilen-Buttons ausblenden – ruhiger Look */
html #dm .dmBody div.ec-size .details-product-share__title,
html #dm .dmBody div.ec-size .ec-likely {
  display: none !important;
}

/* Geschmacks-Pillen in den Produktbeschreibungen (Website-Stil überschreibt sonst die Schriftfarbe) */
html #dm .dmBody div.ec-size .product-details__product-description span[style*="border-radius:999px"] {
  color: #fff !important;
}

html #dm .dmBody div.ec-size .product-details__product-description span[style*="border:1.5px"] {
  color: #2b1d14 !important;
}

html #dm .dmBody div.ec-size .product-details__product-description div[style*="background:#2b1d14"],
html #dm .dmBody div.ec-size .product-details__product-description div[style*="background:#2b1d14"] p {
  color: #f5f0e8 !important;
}

html #dm .dmBody div.ec-size .product-details__product-description p[style*="color:#ee3126"],
html #dm .dmBody div.ec-size .product-details__product-description p[style*="color:#d8432f"] {
  color: #ee3126 !important;
}

html #dm .dmBody div.ec-size .ec-iconable-block__text {
  color: rgba(43, 29, 20, 0.75) !important;
}

/* ---------- Kontrast-Fix: Website-Widget setzt Shop-Texte auf Weiß ---------- */
html body #dm .dmBody div.ec-size div.ec-store * {
  color: #2b1d14 !important;
}

html body #dm .dmBody div.ec-size div.ec-store .ec-text-muted,
html body #dm .dmBody div.ec-size div.ec-store .ec-text-muted * {
  color: rgba(43, 29, 20, 0.62) !important;
}

html body #dm .dmBody div.ec-size div.ec-store a,
html body #dm .dmBody div.ec-size div.ec-store a *,
html body #dm .dmBody div.ec-size div.ec-store .ec-link,
html body #dm .dmBody div.ec-size div.ec-store .ec-link * {
  color: #ee3126 !important;
}

html body #dm .dmBody div.ec-size div.ec-store .form-control--primary .form-control__button,
html body #dm .dmBody div.ec-size div.ec-store .form-control--primary .form-control__button *,
html body #dm .dmBody div.ec-size div.ec-store .details-product-purchase__add-to-bag .form-control__button,
html body #dm .dmBody div.ec-size div.ec-store .details-product-purchase__add-to-bag .form-control__button * {
  color: #fff !important;
}

html body #dm .dmBody div.ec-size div.ec-store .form-control--primary .form-control__button:hover,
html body #dm .dmBody div.ec-size div.ec-store .form-control--primary .form-control__button:hover * {
  color: #ee3126 !important;
}

html body #dm .dmBody div.ec-size div.ec-store .product-details__product-description span[style*="border-radius:999px"] {
  color: #fff !important;
}

html body #dm .dmBody div.ec-size div.ec-store .product-details__product-description span[style*="border:1.5px"] {
  color: #2b1d14 !important;
}

html body #dm .dmBody div.ec-size div.ec-store .product-details__product-description div[style*="background:#2b1d14"],
html body #dm .dmBody div.ec-size div.ec-store .product-details__product-description div[style*="background:#2b1d14"] * {
  color: #f5f0e8 !important;
}

html body #dm .dmBody div.ec-size div.ec-store .product-details__product-description p[style*="color:#ee3126"],
html body #dm .dmBody div.ec-size div.ec-store .product-details__product-description div[style*="background:#2b1d14"] p[style*="color:#ee3126"] {
  color: #ee3126 !important;
}

html body #dm .dmBody div.ec-size div.ec-store .label__text {
  color: #fff !important;
}

html body #dm .dmBody div.ec-size div.ec-store .ec-cart-item__title,
html body #dm .dmBody div.ec-size div.ec-store .ec-cart-item__title * {
  color: #2b1d14 !important;
  opacity: 1 !important;
}

/* Produktnamen in der Shop-Übersicht dunkel, Rot nur beim Hover */
html body #dm .dmBody div.ec-size div.ec-store .grid-product__title,
html body #dm .dmBody div.ec-size div.ec-store .grid-product__title * {
  color: #2b1d14 !important;
}

html body #dm .dmBody div.ec-size div.ec-store .grid-product__wrap:hover .grid-product__title,
html body #dm .dmBody div.ec-size div.ec-store .grid-product__wrap:hover .grid-product__title * {
  color: #ee3126 !important;
}
