:root {
  --ajo-ink: #090504;
  --ajo-panel: #160a07;
  --ajo-panel-soft: #24100a;
  --ajo-red: #a80d08;
  --ajo-red-bright: #e42a0d;
  --ajo-orange: #ff641a;
  --ajo-gold: #ffc94a;
  --ajo-gold-soft: #ffe7a0;
  --ajo-cream: #fff4d2;
  --ajo-muted: #d2b98c;
  --ajo-line: rgba(255, 177, 45, .27);
  --ajo-glow: 0 16px 44px rgba(86, 13, 0, .28);
}

html { color-scheme: dark; }

body {
  color: var(--ajo-cream);
  background:
    radial-gradient(circle at 12% 5%, rgba(228, 42, 13, .16), transparent 30rem),
    radial-gradient(circle at 86% 28%, rgba(255, 100, 26, .10), transparent 34rem),
    linear-gradient(180deg, #100604 0%, var(--ajo-ink) 45%, #110604 100%);
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .36;
  background-image:
    linear-gradient(rgba(255, 190, 70, .025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 190, 70, .025) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(to bottom, #000, transparent 82%);
}

a { color: var(--ajo-gold); }
a:hover { color: var(--ajo-gold-soft); }

.topbar {
  color: var(--ajo-gold-soft);
  background: linear-gradient(90deg, #170604, #410b05 48%, #170604);
  border-bottom: 1px solid var(--ajo-line);
}

.topbar a { color: var(--ajo-gold-soft); }

.navbar,
.navbar-logo {
  background: rgba(13, 6, 4, .94);
  border-color: var(--ajo-line);
  box-shadow: 0 10px 34px rgba(0, 0, 0, .34);
  backdrop-filter: blur(14px);
}

.search {
  background: #180b07;
  border-color: rgba(255, 201, 74, .35);
  box-shadow: inset 0 1px rgba(255, 255, 255, .03);
}

.search input,
.search input::placeholder { color: var(--ajo-muted); }
.search-icon-btn { color: var(--ajo-gold); }
.icon-btn { color: var(--ajo-gold-soft); }

.product-single,
.pd-breadcrumb { color: var(--ajo-muted); }
.pd-breadcrumb a,
.pd-breadcrumb .current { color: var(--ajo-gold-soft); }

.pd-media-card,
.pd-info-card,
.pd-side-card,
.pd-short-desc,
.pd-compare-section,
.pd-related-card,
.artikel-glow-KT,
.KT-faq-rainbow,
.tnt-review-mecha {
  color: var(--ajo-cream);
  background: linear-gradient(145deg, rgba(38, 15, 9, .98), rgba(13, 7, 5, .98));
  border-color: var(--ajo-line);
  box-shadow: var(--ajo-glow), inset 0 1px rgba(255, 235, 180, .05);
}

.pd-main-image {
  background: #0d0705;
  border-color: rgba(255, 201, 74, .30);
  overflow: hidden;
}

.pd-main-image img { transition: transform .65s cubic-bezier(.2, .75, .2, 1), filter .65s ease; }
.pd-main-image:hover img { transform: scale(1.018); filter: saturate(1.07) contrast(1.03); }

.pd-thumb-btn {
  background: #160a07;
  border-color: rgba(255, 201, 74, .22);
}
.pd-thumb-btn.active,
.pd-thumb-btn:hover {
  border-color: var(--ajo-gold);
  box-shadow: 0 0 0 2px rgba(255, 100, 26, .16), 0 8px 20px rgba(0, 0, 0, .28);
}

.pd-title,
.pd-related-title,
.artikel-glow-KT h2,
.KT-faq-top h2,
.tnt-header h2 {
  color: var(--ajo-gold-soft);
  text-shadow: 0 1px 0 #000, 0 0 22px rgba(255, 92, 20, .18);
}

.pd-price-current,
.pd-sticky-price,
.pd-related-card .final { color: var(--ajo-gold); }
.pd-price-original,
.pd-sticky-price-original,
.pd-related-card .ori { color: #a88d72; }

.pd-discount-badge,
.mini-disc,
.sold-inline {
  color: #fff4d2;
  background: linear-gradient(135deg, var(--ajo-red), var(--ajo-red-bright));
  border-color: rgba(255, 201, 74, .35);
  box-shadow: 0 5px 16px rgba(157, 17, 5, .24);
}

.pd-short-desc,
.pd-short-desc li,
.compare-note,
.sku,
.qty-label,
.pd-related-card .info,
.artikel-glow-KT p,
.KT-rainbow-answer p,
.tnt-comment { color: #eadcc5; }

.pd-compare-btn,
.bank-tab,
.btn-chat-icon,
.pd-share-btn,
.pd-sticky-share-btn,
.mf-share,
.mf-chat {
  color: var(--ajo-gold-soft);
  background: #21100a;
  border-color: rgba(255, 201, 74, .32);
}

.pd-compare-btn:hover,
.bank-tab:hover,
.bank-tab.active,
.pd-share-btn:hover {
  color: #210b04;
  background: linear-gradient(135deg, var(--ajo-gold), #ff9e22);
  border-color: var(--ajo-gold-soft);
}

.btn-add-cart,
.btn-buy,
.pd-sticky-btn-cart,
.pd-sticky-btn-buy,
.ajo-access-cta,
.mf-buy,
.modal-btn-primary,
#cartLoginConfirm,
#cartRegisterBtn {
  color: #fff7df;
  background: linear-gradient(135deg, #7d0906 0%, #d3220b 52%, #ff5b16 100%) !important;
  border-color: #ff8b2e !important;
  box-shadow: 0 10px 25px rgba(183, 27, 5, .25), inset 0 1px rgba(255, 239, 186, .18);
}

.btn-add-cart:hover,
.btn-buy:hover,
.pd-sticky-btn:hover,
.ajo-access-cta:hover,
.mf-buy:hover,
.modal-btn-primary:hover {
  filter: brightness(1.12) saturate(1.08);
  transform: translateY(-2px);
}

.btn-add-cart:disabled,
.btn-buy:disabled,
.pd-sticky-btn:disabled,
.mf-btn:disabled { opacity: .62; }

.pd-installment-card2,
.paylater-promo,
.ajo-access-banner,
.stock-popover,
.pd-share-modal,
.modal-dialog {
  color: var(--ajo-cream);
  background: linear-gradient(145deg, #271009, #100705);
  border-color: var(--ajo-line);
}

.inst-month-list,
.sp-item,
.pd-share-preview,
.pd-share-option,
.KT-rainbow-item {
  background: rgba(255, 231, 160, .035);
  border-color: rgba(255, 201, 74, .18);
}

.KT-rainbow-item button { color: var(--ajo-gold-soft); }
.KT-rainbow-item::before { background: linear-gradient(90deg, var(--ajo-red), var(--ajo-gold), var(--ajo-orange)); }

.pd-related-card { transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease; }
.pd-related-card:hover {
  transform: translateY(-5px);
  border-color: rgba(255, 201, 74, .52);
  box-shadow: 0 18px 42px rgba(74, 9, 0, .35), 0 0 24px rgba(255, 92, 20, .10);
}

.pd-sticky-header,
.pd-mobile-fab,
.bottom-nav,
.kt-top-fixed-footer {
  background: rgba(18, 7, 4, .94);
  border-color: var(--ajo-line);
  box-shadow: 0 -8px 26px rgba(0, 0, 0, .36);
  backdrop-filter: blur(14px);
}

.site-footer.footer-compact,
.site-footer.footer-compact.variant-stripes {
  background:
    radial-gradient(circle at 82% 12%, rgba(210, 34, 8, .19), transparent 28rem),
    linear-gradient(145deg, #1c0805, #090504 68%);
  border-top: 1px solid var(--ajo-line);
}
.site-footer.footer-compact .ft-title,
.site-footer.footer-compact .ft-address .company { color: var(--ajo-gold); }
.site-footer.footer-compact .ft-links a { color: #e3c995; }
.site-footer.footer-compact .ft-address,
.site-footer.footer-compact .ft-copy { color: #c6aa7e; }
.site-footer.footer-compact .ft-bottom { background: rgba(7, 3, 2, .72); }

.site-footer.footer-compact .ft-payments .pay-row { align-items: center; }
.site-footer.footer-compact .ft-payments .pay-card {
  display: inline-flex;
  width: 52px;
  height: 32px;
  align-items: center;
  justify-content: center;
  gap: 3px;
  padding: 0 5px;
  color: #231007;
  background: linear-gradient(145deg, #fff9e9, #e7d3a9);
  border: 1px solid rgba(255, 201, 74, .72);
  border-radius: 7px;
  box-shadow: 0 5px 12px rgba(0, 0, 0, .28), inset 0 1px #fff;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: -.2px;
  transition: transform .25s ease, box-shadow .25s ease;
}
.site-footer.footer-compact .ft-payments .pay-mark {
  display: inline-grid;
  width: 12px;
  height: 12px;
  place-items: center;
  color: #fff7df;
  background: linear-gradient(145deg, #e52b10, #8b0805);
  border: 1px solid rgba(255, 170, 45, .75);
  border-radius: 3px;
  font-size: 7px;
  line-height: 1;
  box-shadow: inset 0 1px rgba(255, 255, 255, .28);
}
.site-footer.footer-compact .ft-payments .pay-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 9px 18px rgba(0, 0, 0, .34), 0 0 14px rgba(255, 156, 28, .17);
}
.site-footer.footer-compact .pay-visa { color: #173a8f; }
.site-footer.footer-compact .pay-mastercard { color: #c42313; }
.site-footer.footer-compact .pay-jcb { color: #087c49; }
.site-footer.footer-compact .pay-amex { color: #126ca5; font-size: 9px; }
.site-footer.footer-compact .pay-unionpay { color: #9b131d; }

@keyframes ajoEmberPulse {
  0%, 100% { box-shadow: 0 10px 25px rgba(183, 27, 5, .22), inset 0 1px rgba(255, 239, 186, .16); }
  50% { box-shadow: 0 12px 31px rgba(255, 81, 15, .36), inset 0 1px rgba(255, 239, 186, .24); }
}

.btn-add-cart:not(:disabled),
.btn-buy:not(:disabled),
.mf-buy:not(:disabled) { animation: ajoEmberPulse 3.4s ease-in-out infinite; }

@media (max-width: 720px) {
  body::before { background-size: 32px 32px; }
  .pd-media-card,
  .pd-info-card,
  .pd-side-card,
  .artikel-glow-KT,
  .KT-faq-rainbow { box-shadow: 0 10px 28px rgba(68, 8, 0, .23), inset 0 1px rgba(255, 235, 180, .04); }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
