/* Fanwelt: vivid cyan, near-black and clear, readable commerce. */
:root {
  --fanwelt-paper: #F7FAFB;
  --fanwelt-ink: #071318;
  --fanwelt-muted: #455F67;
  --fanwelt-accent: #00C8E3;
  --fanwelt-accent-strong: #006F80;
  --fanwelt-accent-hover: #071318;
  --fanwelt-tint: #E5F8FB;
  --fanwelt-line: #C9E0E5;
  --fanwelt-deep: #071318;
  --fanwelt-on-dark: #F7FAFB;
  --fanwelt-accent-light: var(--fanwelt-accent);
  /* Compatibility aliases for older MU components. */
  --fanwelt-rose: var(--fanwelt-accent-strong);
  --fanwelt-blush: var(--fanwelt-tint);
  --fw-dark: var(--fanwelt-deep);
  --fw-dark2: var(--fanwelt-deep);
  --fw-dark3: var(--fanwelt-ink);
  --fw-ivory: var(--fanwelt-paper);
  --fw-ivory2: var(--fanwelt-tint);
  --fw-card: #fff;
  --fw-border-light: var(--fanwelt-line);
  --fw-text-dark: var(--fanwelt-ink);
  --fw-text-dark2: var(--fanwelt-muted);
  --fw-text-dark3: var(--fanwelt-muted);
  --fw-gold: var(--fanwelt-accent-strong);
  --fw-gold-hover: var(--fanwelt-accent-hover);
  --fw-gold-light: var(--fanwelt-tint);
  --fw-rose: var(--fanwelt-accent-strong);
}
body, body #main-container, body .site-main, body .ct-container-full,
body.home .entry-content { background-color: var(--fanwelt-paper) !important; color: var(--fanwelt-ink); }
body {
  font-size: 16px; line-height: 1.6;
  --theme-text-color: var(--fanwelt-ink);
  --theme-headings-color: var(--fanwelt-ink);
  --theme-link-initial-color: var(--fanwelt-accent-strong);
  --theme-link-hover-color: var(--fanwelt-accent-hover);
  --theme-button-background-initial-color: var(--fanwelt-accent);
  --theme-button-background-hover-color: var(--fanwelt-accent-hover);
  --theme-button-text-initial-color: var(--fanwelt-ink);
  --theme-button-text-hover-color: #fff;
  --theme-form-text-initial-color: var(--fanwelt-ink);
  --theme-form-text-focus-color: var(--fanwelt-ink);
  --theme-form-field-background-initial-color: #fff;
  --theme-form-field-background-focus-color: #fff;
  --theme-form-field-border-initial-color: var(--fanwelt-line);
  --theme-form-field-border-focus-color: var(--fanwelt-accent-strong);
}
body :is(a,button,input,select,textarea):focus-visible { outline: 3px solid var(--fanwelt-rose); outline-offset: 4px; }
body .fanwelt-shop-nav { background: var(--fanwelt-deep) !important; border-bottom: 1px solid #27434E; box-shadow: 0 2px 12px #07182006; }
body .fanwelt-shop-nav-inner { max-width: 1440px; height: 80px; gap: 14px; }
body .fanwelt-logo-img, body .fanwelt-shop-logo:hover .fanwelt-logo-img { filter: brightness(0) invert(1); }
body .fanwelt-badge { background: var(--fanwelt-accent); color: var(--fanwelt-ink); font-size: 12px; letter-spacing: .5px; padding: 6px 9px; margin-left: 0; }
body .fanwelt-shop-nav-links { gap: 4px; }
body .fanwelt-shop-nav-links a { color: var(--fanwelt-on-dark) !important; font-size: 14px; letter-spacing: .25px; padding: 24px 8px; white-space: nowrap; }
body .fanwelt-shop-nav-links a:hover, body .fanwelt-shop-nav-links li.active a { color: var(--fanwelt-accent) !important; }
body .fanwelt-shop-nav .fanwelt-nav-icon { color: var(--fanwelt-on-dark) !important; width: 44px; height: 44px; flex-shrink: 0; }
body .fanwelt-nav-hamburger { width: 44px; height: 44px; }
body .fanwelt-shop-nav .fanwelt-nav-hamburger span { background: var(--fanwelt-on-dark) !important; }
body .fanwelt-cart-badge { background: var(--fanwelt-accent); color: var(--fanwelt-ink); font-size: 12px; min-width: 22px; width: auto; height: 22px; padding-inline: 4px; }
body .fanwelt-ticker { background: var(--fanwelt-accent); text-align: center; white-space: normal; }
body .fanwelt-ticker > a { display: block; padding: 11px 20px; font: 500 14px/1.5 Montserrat,sans-serif; color: var(--fanwelt-ink); text-decoration: none; }
body .fanwelt-ticker span { margin-left: 24px; padding-left: 24px; border-left: 1px solid var(--fanwelt-accent-strong); }
/* The supplied brand portrait is presented without changing its pixels. */
body .fanwelt-slider .fanwelt-slide--brand { background-color: var(--fanwelt-deep); background-image: url("https://fanwelt.natalieholzner.at/wp-content/uploads/fanwelt/tuerkis-artwork-hintergrund-v1.webp"); background-size: cover; background-position: 65% center; background-repeat: no-repeat; }
body .fanwelt-slider .fanwelt-brand-portrait { position: absolute; inset: 0 0 0 auto; width: 58%; height: 100%; max-width: none; object-fit: cover; object-position: center top; }
body .fanwelt-slider .fanwelt-brand-overlay { background: linear-gradient(90deg, #071318 0%, #071318 33%, #071318cc 43%, #07131800 65%) !important; z-index: 1; }
body .fanwelt-slider .fanwelt-slide--brand::after { display: none; }
/* A restrained cyan rim follows the original cutout; fade before the jacket edge. */
body .fanwelt-slider .fanwelt-slide--brand::before { content: ""; position: absolute; inset: 0 0 0 auto; width: 58%; height: 100%; background: url("https://fanwelt.natalieholzner.at/wp-content/uploads/fanwelt/natalie-prontolux-original.webp") center top / cover no-repeat; filter: drop-shadow(0 0 2px #00C8E3) drop-shadow(0 0 7px #00C8E399); -webkit-mask-image: linear-gradient(180deg,#000 0%,#000 62%,transparent 93%); mask-image: linear-gradient(180deg,#000 0%,#000 62%,transparent 93%); pointer-events: none; }

body .fanwelt-slider .fanwelt-slide--brand .fanwelt-slide-content { max-width: 560px; }
body .fanwelt-values-grid > div > div { background: var(--fanwelt-deep) !important; }
body .fanwelt-values-grid svg { stroke: var(--fanwelt-accent); }
/* Photography remains the focal point. Text and controls have a clear contrast. */
body .fanwelt-slider .fanwelt-slide-title { color: #fff !important; font-size: clamp(30px,3.2vw,46px) !important; letter-spacing: -1.1px; line-height: 1.13; }
body .fanwelt-slider .fanwelt-slider-dots { left: 50% !important; transform: translateX(-50%) !important; width: auto !important; justify-content: center; }
body .fanwelt-slider .fanwelt-slide-kicker { color: var(--fanwelt-accent-light) !important; font-size: 14px !important; font-weight: 600; letter-spacing: 1.5px; }
body .fanwelt-slider :is(.fanwelt-slide-text,.fanwelt-slide-sub) { color: #fff !important; font-size: 16px !important; line-height: 1.65 !important; }
body .fanwelt-slider .fanwelt-slide-cta { background: var(--fanwelt-accent) !important; color: var(--fanwelt-ink) !important; border-radius: 6px; min-height: 48px; font-size: 16px !important; line-height: 1.5; letter-spacing: .3px !important; font-weight: 700; }
body .fanwelt-slider .fanwelt-slide-cta:hover { background: var(--fanwelt-accent-hover) !important; color: #fff !important; }
body .fw-featured, body .fw-zuhause { background: var(--fanwelt-paper) !important; }
body .fw-featured { padding: 72px 24px !important; }
body .fw-featured-title, body .fw-zuhause-title { color: var(--fanwelt-ink) !important; letter-spacing: -.7px; }
body .fw-accent, body .fw-zuhause-title span { color: var(--fanwelt-ink) !important; }
body .fw-featured-kicker, body .fw-zuhause-kicker { color: var(--fanwelt-ink) !important; font-size: 14px; letter-spacing: 1.5px; }
body .fw-featured-grid { gap: 24px !important; }
body .fw-featured-card { border: 1px solid var(--fanwelt-line); border-radius: 14px; box-shadow: none; background: #fff; }
body .fw-featured-card:hover { box-shadow: 0 10px 28px #0718200a; }
body .fw-featured-img { border-radius: 13px 13px 0 0; overflow: hidden; background-color: var(--fanwelt-paper); background-size: contain; background-position: center; background-repeat: no-repeat; }
body .fw-featured-img img { display: block; aspect-ratio: 1; width: 100%; height: 100%; object-fit: contain; object-position: center; }
/* Curated transparent product images receive a vivid brand backdrop. */
body .fw-featured-card--turquoise .fw-featured-img { background-color: var(--fanwelt-accent); }
body .fw-featured-card--turquoise .fw-featured-badge { background: var(--fanwelt-deep); color: var(--fanwelt-on-dark); }
body .fw-featured-info { padding: 17px !important; text-align: left; }
body .fw-featured-name { color: var(--fanwelt-ink); font-size: 16px; line-height: 1.5; font-weight: 600; min-height: 3em; -webkit-line-clamp: 3; overflow-wrap: anywhere; }
body .fw-featured-price { color: var(--fanwelt-ink); font-size: 20px; margin-top: 9px; line-height: 1.4; }
body .fw-featured-badge { background: var(--fanwelt-tint); color: var(--fanwelt-accent-strong); border-radius: 4px; font-size: 12px; letter-spacing: .4px; line-height: 1.4; }
body .fw-featured-badge--new { background: var(--fanwelt-blush); color: var(--fanwelt-accent-strong); }
body .fw-featured-see-all a, body .fw-zuhause-cta { border: 1px solid var(--fanwelt-accent); background: var(--fanwelt-accent); color: var(--fanwelt-ink); border-radius: 6px; padding: 15px 28px; font-size: 16px; line-height: 1.5; box-shadow: none; }
body .fanwelt-video-section--split { background: var(--fanwelt-deep) !important; color: var(--fanwelt-on-dark); }
body .fanwelt-video-section--split :is(h2,h3,p,.fanwelt-video-sig,.fanwelt-video-sig span) { color: var(--fanwelt-on-dark) !important; }
body .fanwelt-video-section--split :is(.fanwelt-video-kicker,.fanwelt-video-sig) { color: var(--fanwelt-accent-light) !important; }
/* Katalog: weniger Produkte pro Seite, mehr Raum für Bild und Namen. */
body .fanwelt-shop-sidebar { background: var(--fanwelt-paper); border-right: 1px solid var(--fanwelt-line); }
body .fanwelt-sidebar-title { color: var(--fanwelt-ink); font-size: 14px; letter-spacing: 1.2px; border-color: var(--fanwelt-line); }
body .fanwelt-sidebar-list li a { color: var(--fanwelt-ink); min-height: 44px; font-size: 16px; }
body .fanwelt-sidebar-list li a:hover, body .fanwelt-sidebar-list li.active a { background: var(--fanwelt-tint); color: var(--fanwelt-ink); }
body .fanwelt-sidebar-list .count { color: var(--fanwelt-muted); font-size: 14px; }
body .fanwelt-sidebar-all-link { color: var(--fanwelt-accent-strong); border-color: var(--fanwelt-line); font-size: 14px; min-height: 44px; display: flex; align-items: center; justify-content: center; }
body .fanwelt-sidebar-close { color: var(--fanwelt-ink); min-width: 44px; min-height: 44px; }
body .woocommerce ul.products { gap: 28px 22px; }
body .woocommerce ul.products li.product { background: #fff; border: 1px solid var(--fanwelt-line); border-radius: 12px; overflow: hidden; box-shadow: none; }
body .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 16px !important; line-height: 1.5; color: var(--fanwelt-ink) !important; }
body .woocommerce ul.products li.product .price { color: var(--fanwelt-ink) !important; font-size: 20px !important; }
body .woocommerce ul.products li.product .button { min-height: 44px; border-radius: 6px; }
body .woocommerce-pagination a, body .woocommerce-pagination span { min-width: 44px; min-height: 44px; }
body.woocommerce .fanwelt-shop-content { background: var(--fanwelt-paper); }
body.woocommerce .fanwelt-shop-content > .ct-container { width: 100%; padding-block: 12px 32px; }
body.woocommerce .fanwelt-shop-content > .hero-section { display: block !important; padding: 8px 0 16px; }
body.woocommerce .fanwelt-shop-content > .hero-section .entry-header { padding: 0; margin: 0; width: 100%; min-height: 0; text-align: left; }
body.woocommerce .fanwelt-shop-content .hero-section h1 { color: var(--fanwelt-ink) !important; font-size: 30px; line-height: 1.2; margin: 0; }
body.woocommerce .fanwelt-shop-content ul.products { gap: 24px 18px !important; }
body.woocommerce .fanwelt-shop-content ul.products li.product { border: 1px solid var(--fanwelt-line) !important; box-shadow: none !important; padding-bottom: 16px; }
body.woocommerce .fanwelt-shop-content ul.products li.product:hover { transform: none !important; }
body.woocommerce .fanwelt-shop-content ul.products li.product .ct-media-container { background: var(--fanwelt-paper) !important; }
/* Curated shop accents: Team Natalie, Kleopatra and Mission Liebe. */
body.woocommerce .fanwelt-shop-content ul.products li.product:is(.post-2896,.post-2860,.post-3048,.post-2805,.post-2943) .ct-media-container { background: var(--fanwelt-accent) !important; }
body.woocommerce .fanwelt-shop-content ul.products li.product .ct-media-container img { padding: 8px; }
body.woocommerce .fanwelt-shop-content ul.products li.product:hover .ct-media-container img { transform: none; filter: none; }
body.woocommerce .fanwelt-shop-content ul.products li.product .ct-media-container::after { display: none; }
/* More colour throughout the catalogue; portraits stay behind the real product. */
body .fw-featured-grid > :nth-child(3n+1) .fw-featured-img,
body .fw-featured-grid > :nth-child(3n+2) .fw-featured-img,
body.woocommerce .fanwelt-shop-content ul.products li.product:nth-child(3n+1) .ct-media-container,
body.woocommerce .fanwelt-shop-content ul.products li.product:nth-child(3n+2) .ct-media-container,
body .fw-featured-img.fw-tile--turquoise,
body.woocommerce .fanwelt-shop-content ul.products li.product .ct-media-container.fw-tile--turquoise { background-color: var(--fanwelt-accent) !important; }
body .fw-featured-grid .fw-featured-img.fw-tile--plain,
body.woocommerce .fanwelt-shop-content ul.products li.product .ct-media-container.fw-tile--plain { background-color: var(--fanwelt-paper) !important; }
body .fw-tile--portrait { isolation: isolate; }
body .fw-tile--portrait::before {
  content: ""; position: absolute; inset: 0; z-index: 0;
  background-image: var(--fw-tile-photo); background-repeat: no-repeat;
  background-size: var(--fw-portrait-size) auto;
  background-position: var(--fw-portrait-x) var(--fw-portrait-y);
  filter: grayscale(1) contrast(1.1); opacity: .29; mix-blend-mode: multiply;
  -webkit-mask-image: linear-gradient(90deg,transparent 20%,#000 68%);
  mask-image: linear-gradient(90deg,transparent 20%,#000 68%);
  pointer-events: none;
}
/* Match the square portrait crops from the approved selection, then offset
   each face to the right of the product. Size = source width / crop width. */
body .fw-tile--portrait-13 { --fw-portrait-size: 122.644%; --fw-portrait-x: -8.4264%; --fw-portrait-y: 0%; }
body .fw-tile--portrait-16 { --fw-portrait-size: 153.8462%; --fw-portrait-x: -32.6429%; --fw-portrait-y: 0%; }
body .fw-tile--portrait-17 { --fw-portrait-size: 115.9783%; --fw-portrait-x: -82.1769%; --fw-portrait-y: 5.8824%; }
body .fw-tile--portrait-18 { --fw-portrait-size: 124.0698%; --fw-portrait-x: -52.1739%; --fw-portrait-y: 20.2703%; }
body .fw-tile--portrait-20 { --fw-portrait-size: 181.8182%; --fw-portrait-x: 42.8889%; --fw-portrait-y: 96.7742%; }
body .fw-tile--portrait > img { position: relative; z-index: 1; }
body .fw-tile--portrait > .fw-featured-cup-image-link { z-index: 1; }
body .fw-featured-img.fw-tile--portrait img,
body.woocommerce .fanwelt-shop-content ul.products li.product .ct-media-container.fw-tile--portrait img { padding: 8px 15% 8px 2%; }
body .fw-tile--turquoise .fw-featured-badge { z-index: 2; background: var(--fanwelt-deep); color: var(--fanwelt-on-dark); }
body.woocommerce .fanwelt-shop-content ul.products li.product h2.woocommerce-loop-product__title { font-size: 16px !important; line-height: 1.5 !important; font-weight: 600 !important; text-align: left !important; padding: 14px 14px 8px !important; -webkit-line-clamp: 3; overflow-wrap: normal; word-break: normal; }
body.woocommerce .fanwelt-shop-content ul.products li.product span.price,
body.woocommerce .fanwelt-shop-content ul.products li.product .price ins { color: var(--fanwelt-ink) !important; font-size: 20px !important; line-height: 1.4; text-align: left !important; padding: 0 14px 6px !important; }
body.woocommerce .fanwelt-shop-content ul.products li.product .woocommerce-price-suffix { display: none; }
body.woocommerce .fanwelt-shop-content ul.products li.product :is(.tax-info,.shipping-costs-info) { display: block !important; color: var(--fanwelt-muted) !important; font-size: 14px !important; padding: 0 14px 5px !important; margin: 0 !important; text-align: left !important; line-height: 1.5 !important; }
body.woocommerce .fanwelt-shop-content ul.products li.product .shipping-costs-info a { color: var(--fanwelt-accent-strong) !important; display: inline !important; text-decoration: underline; }
body.woocommerce .fanwelt-shop-content ul.products li.product .entry-meta a { font-size: 12px !important; line-height: 1.5; }
body.woocommerce .fanwelt-shop-content .fanwelt-filter-toggle { min-height: 44px; margin-bottom: 12px; color: var(--fanwelt-accent-strong); background: var(--fanwelt-blush); border-color: var(--fanwelt-line); }
body.woocommerce .fanwelt-shop-content .woocommerce-result-count { color: var(--fanwelt-muted); font-size: 14px; }
body.woocommerce .fanwelt-shop-content .woocommerce-ordering select { font-size: 16px; min-height: 44px; color: var(--fanwelt-ink); }
body.woocommerce .fanwelt-shop-content .ct-pagination a { min-width: 44px; min-height: 44px; }
body.woocommerce .fanwelt-shop-content .fanwelt-quick-add-wrap { margin: 10px 12px 0; }
body.woocommerce .fanwelt-shop-content .fanwelt-quick-add-btn { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px; border: 1px solid var(--fanwelt-line); border-radius: 6px; background: var(--fanwelt-blush); color: var(--fanwelt-accent-strong) !important; font-size: 16px; font-weight: 600; text-align: center; }
/* Clear shopping routes and visible native purchase actions. */
body .fanwelt-shop-intro { margin: 0 0 28px; }
body .fanwelt-shop-intro > p { max-width: 720px; margin: 0 0 18px; color: var(--fanwelt-muted) !important; font-size: 16px; line-height: 1.6; }
body .fanwelt-shop-entry-links { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
body .fanwelt-shop-entry-links > a { display: flex; align-items: center; justify-content: center; min-height: 54px; padding: 12px; border: 1px solid var(--fanwelt-line); border-radius: 8px; background: var(--fanwelt-tint); color: var(--fanwelt-ink) !important; text-align: center; font-size: 15px; line-height: 1.4; font-weight: 600; text-decoration: none; }
body .fanwelt-shop-entry-links > a:first-child { background: var(--fanwelt-accent); border-color: var(--fanwelt-accent); }
body .fanwelt-shop-entry-links > a:hover { border-color: var(--fanwelt-accent-strong); }
body .fanwelt-shop-entry-links > a:focus-visible { outline: 3px solid var(--fanwelt-accent-strong); outline-offset: 3px; }
body.woocommerce .fanwelt-shop-content ul.products li.product { display: flex !important; flex-direction: column; }
body.woocommerce .fanwelt-shop-content li.product-type-simple .ct-woo-card-actions,
body.woocommerce .fanwelt-shop-content li.product .fanwelt-quick-add-wrap { display: flex !important; position: static !important; opacity: 1 !important; visibility: visible !important; transform: none !important; pointer-events: auto !important; order: 10; margin: auto 12px 12px; padding-top: 12px; flex-shrink: 0; }
body.woocommerce .fanwelt-shop-content li.product-type-simple .ct-woo-card-actions > .add_to_cart_button,
body.woocommerce .fanwelt-shop-content li.product .fanwelt-quick-add-btn { display: flex !important; align-items: center; justify-content: center; width: 100%; min-height: 46px; height: auto; margin: 0; padding: 10px 8px; border: 1px solid var(--fanwelt-accent); border-radius: 6px; background: var(--fanwelt-accent) !important; text-transform: none; color: var(--fanwelt-ink) !important; font-size: 14px; line-height: 1.4; font-weight: 600; letter-spacing: 0; text-align: center; opacity: 1 !important; visibility: visible !important; transform: none !important; }
body.woocommerce .fanwelt-shop-content li.product-type-simple .ct-woo-card-actions > .add_to_cart_button:hover { background: var(--fanwelt-accent-hover) !important; color: #fff !important; }
body.woocommerce .fanwelt-shop-content .fanwelt-vqa { flex-wrap: wrap; gap: 8px; }
body.woocommerce .fanwelt-shop-content .fanwelt-vqa-select { width: 100%; min-height: 44px; font-size: 16px; }
body .fanwelt-product-guide { margin: 0 0 16px; }
body .fanwelt-product-guide-intro { color: var(--fanwelt-ink) !important; font-size: 16px; line-height: 1.65; }
body .fanwelt-product-guide-facts { margin: 12px 0 0; padding-left: 20px; color: var(--fanwelt-ink) !important; font-size: 15px; line-height: 1.65; }
body .fanwelt-product-guide-facts li { margin-bottom: 5px; }
body .fanwelt-size-help { margin: 0 0 18px; padding: 14px 16px; border-left: 3px solid var(--fanwelt-accent); background: var(--fanwelt-tint); border-radius: 0 6px 6px 0; color: var(--fanwelt-ink) !important; font-size: 14px; line-height: 1.6; }
body .fanwelt-size-help a { color: var(--fanwelt-accent-strong) !important; text-decoration: underline; text-underline-offset: 3px; }
body .fanwelt-selection-hint { margin: 0 0 12px; color: var(--fanwelt-accent-strong) !important; font-size: 14px; font-weight: 600; line-height: 1.5; }
body .fanwelt-selection-hint[hidden] { display: none !important; }
@media (max-width: 768px) {
  body .fanwelt-shop-entry-links { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body .fanwelt-shop-intro { margin-bottom: 22px; }
}
/* Produkt: Titel und Preis vor der Auswahl; Galerie ohne fremden Hover-Zoom. */
body.single-product .ct-container { max-width: 1240px; }
body.single-product .product { min-width: 0; }
body.single-product ul.products li.product { background: #fff !important; border: 1px solid var(--fanwelt-line) !important; border-radius: 12px; box-shadow: none !important; }
body.single-product ul.products li.product .ct-media-container { background: var(--fanwelt-paper) !important; }
body.single-product ul.products li.product .woocommerce-loop-product__title { color: var(--fanwelt-ink) !important; font-size: 16px !important; line-height: 1.5; }
body.single-product ul.products li.product .price { color: var(--fanwelt-ink) !important; font-size: 20px !important; }
body.single-product ul.products li.product .price ins { color: var(--fanwelt-ink) !important; }
body.single-product ul.products li.product .button { background: var(--fanwelt-accent) !important; color: var(--fanwelt-ink) !important; border: 1px solid var(--fanwelt-line); min-height: 44px; border-radius: 6px; }
body.single-product ul.products li.product .button:hover { background: var(--fanwelt-accent-hover) !important; color: #fff !important; }
body.single-product ul.products li.product .fanwelt-quick-add-wrap { display: none !important; }
body.single-product .entry-summary .product_title { font-size: clamp(26px,2.5vw,36px) !important; color: var(--fanwelt-ink) !important; line-height: 1.2; }
body.single-product .product .entry-summary .price { color: var(--fanwelt-ink) !important; margin-top: 14px !important; }
body.single-product .woocommerce-tabs ul.tabs li a { color: var(--fanwelt-ink) !important; }
body.single-product .woocommerce-tabs ul.tabs li.active a { color: var(--fanwelt-accent-strong) !important; }
body.single-product :is(.wc-gzd-additional-info,.woocommerce-price-suffix),
body.single-product .wc-gzd-additional-info a { color: var(--fanwelt-muted) !important; font-size: 14px !important; }
body.single-product .related.products ul.products li.product .woocommerce-price-suffix { color: var(--fanwelt-muted) !important; font-size: 14px !important; line-height: 1.5; }
body.single-product .woocommerce-product-gallery { border: 1px solid var(--fanwelt-line); border-radius: 16px; background: #fff; }
body.single-product .fanwelt-delivery-info { padding: 14px 16px; background: var(--fanwelt-tint); border-radius: 8px; font-size: 16px; line-height: 1.6; }
body.single-product .fanwelt-delivery-info strong { color: var(--fanwelt-ink); }
body.single-product .fanwelt-delivery-info small { font-size: 14px; color: var(--fanwelt-muted); }
body.single-product .fanwelt-delivery-info a { color: var(--fanwelt-accent-strong); text-decoration: underline; text-underline-offset: 3px; }
body.single-product .single_add_to_cart_button,
body .fanwelt-mini-cart-checkout, body .fanwelt-sticky-atc-btn { background: var(--fanwelt-accent) !important; color: var(--fanwelt-ink) !important; border-radius: 8px !important; min-height: 48px; box-shadow: none; text-transform: none !important; letter-spacing: .2px !important; }
body.single-product .single_add_to_cart_button:hover { background: var(--fanwelt-accent-hover) !important; color: #fff !important; transform: none; }
body.single-product .fanwelt-swatch-size { min-height: 44px !important; font-size: 16px !important; }
body.single-product .fanwelt-swatch-size.selected { background: var(--fanwelt-accent-strong) !important; border-color: var(--fanwelt-accent-strong) !important; color: #fff !important; }
body .fanwelt-mini-cart { max-width: min(92vw,420px); width: 420px; right: -440px; height: 100dvh; }
body .fanwelt-mini-cart.open { right: 0; }
body .fanwelt-mini-cart-remove { min-width: 44px; min-height: 44px; display: flex; align-items: center; justify-content: center; }
body .fanwelt-mini-cart-body { overscroll-behavior: contain; }
body :is(.fanwelt-mini-cart-total,.fanwelt-mini-cart-title,.fanwelt-mini-cart-item-name,.fanwelt-mini-cart-added-name) { color: var(--fanwelt-ink); }
body .fanwelt-mini-cart-close { color: var(--fanwelt-muted); }
body .fanwelt-mini-cart-item-meta { color: var(--fanwelt-ink) !important; }
body .fanwelt-mini-cart-footer > a:not(.fanwelt-mini-cart-checkout) { color: var(--fanwelt-accent-strong) !important; }
body .fanwelt-sticky-atc-price { color: var(--fanwelt-ink) !important; }
/* Ein Footer, konsistente Kontakt- und Rechtslinks. */
body #footer.ct-footer { display: none !important; }
body .fanwelt-newsletter-section { background: var(--fanwelt-blush) !important; color: var(--fanwelt-ink); }
body .fanwelt-newsletter-section :is(h2,p,label) { color: var(--fanwelt-ink) !important; }
body .fanwelt-newsletter-section input[type=email] { background: #fff; color: var(--fanwelt-ink); min-height: 48px; font-size: 16px; }
body .fanwelt-newsletter-section button { min-height: 48px; background: var(--fanwelt-accent); color: var(--fanwelt-ink); }
body .fanwelt-footer { margin-top: 0; padding-top: 56px; background: var(--fanwelt-deep); border-top: 1px solid var(--fanwelt-line); color: var(--fanwelt-on-dark); }
body .fanwelt-footer :is(h4,p,a,span), body .fanwelt-footer ul li a { color: var(--fanwelt-on-dark) !important; }
body .fanwelt-footer h4 { color: var(--fanwelt-accent-light) !important; letter-spacing: 1px; }
body .fanwelt-footer-social a { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #526F7A; border-radius: 50%; }
body .fanwelt-footer ul li a { display: inline-flex; min-height: 36px; align-items: center; }
body .fanwelt-footer button.cmplz-manage-consent { position: static; display: inline-flex; align-items: center; min-height: 44px; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--fanwelt-on-dark); box-shadow: none; font: inherit; cursor: pointer; }
body .fanwelt-footer-bottom { border-top-color: #526F7A; }
body .fanwelt-payment-bar { background: var(--fanwelt-paper); padding: 24px; }
/* Cart/checkout: remove nested page padding; preserve WooCommerce forms. */
body.woocommerce-cart .entry-content, body.woocommerce-checkout .entry-content { padding: 28px 0; }
body.woocommerce-cart .entry-content > .woocommerce,
body.woocommerce-checkout .entry-content > .woocommerce { padding: 0; }
body.woocommerce-cart .quantity { width: 132px !important; min-width: 132px; height: 44px; }
body.woocommerce-cart .quantity input.qty { width: 100% !important; max-width: none; min-width: 0; height: 44px; padding: 0 44px !important; color: var(--fanwelt-ink) !important; background: #fff !important; font-size: 16px; }
body.woocommerce-cart .quantity :is(.ct-increase,.ct-decrease) { width: 44px; min-height: 44px; height: 44px; top: 0; bottom: auto; transform: none; }
body.woocommerce-cart .woocommerce-cart-form a.remove { color: var(--fanwelt-accent-strong) !important; background: var(--fanwelt-tint) !important; width: 44px; height: 44px; }
body.woocommerce-cart .woocommerce-cart-form a.remove svg { fill: var(--fanwelt-accent-strong) !important; width: 14px; height: 14px; }
body.woocommerce-cart .cart-collaterals { padding: 0 !important; border: 0; background: transparent !important; }
body.woocommerce-cart .cart_totals { padding: 24px !important; }
body.woocommerce-cart .cart_totals .order-total .woocommerce-Price-amount,
body.woocommerce-checkout .order-total .woocommerce-Price-amount { color: var(--fanwelt-ink) !important; }
body.woocommerce-cart .checkout-button, body.woocommerce-checkout #place_order { background: var(--fanwelt-accent) !important; color: var(--fanwelt-ink) !important; border-radius: 8px !important; letter-spacing: .3px !important; min-height: 48px; }
body.woocommerce-checkout #customer_details :is(input.input-text,select,.select2-selection--single) { min-height: 48px; }
body.woocommerce-checkout form.checkout a:not(.button) { color: var(--fanwelt-accent-strong) !important; text-underline-offset: 3px; }
body.woocommerce-checkout form.checkout label { line-height: 1.6; }
body .fanwelt-checkout-progress { max-width: 100%; gap: 10px; }
body .fanwelt-checkout-step { white-space: normal; letter-spacing: .3px; font-size: 14px; line-height: 1.45; }
body .fanwelt-checkout-step.active { color: var(--fanwelt-accent-strong) !important; }
body.single-product .entry-summary > .price > .woocommerce-price-suffix { display: none; }
body.single-product .entry-summary .legal-price-info { display: flex; flex-wrap: wrap; gap: 4px 8px; margin-bottom: 12px; }
body.single-product .entry-summary .legal-price-info p { margin: 0 !important; }
body.single-product .product form.cart .variations tr { gap: 4px; margin-bottom: 16px; }
body.single-product .product form.cart .variations :is(th,td) { padding: 4px 0 !important; }
body.single-product .variations th.label label { margin-bottom: 0; }
body.single-product .product form.cart .variations td.value { gap: 6px; }
/* Explicit color pairs for legacy components that previously mixed dark-theme
   text with light surfaces. Product artwork, color swatches and payment logos stay intact. */
body .fanwelt-shop-nav-links li a[aria-current="page"] { color: var(--fanwelt-accent) !important; }
body .fanwelt-shop-nav .fanwelt-nav-icon:hover { color: var(--fanwelt-accent) !important; }
body .skip-link { background: var(--fanwelt-deep) !important; color: #fff !important; }
body .skip-link:focus-visible { outline-color: var(--fanwelt-accent); }
body .fanwelt-slider .fanwelt-slider-arrow { background: var(--fanwelt-deep) !important; color: #fff !important; }
body .fanwelt-slider .fanwelt-slider-arrow:hover { background: var(--fanwelt-accent-strong) !important; color: #fff !important; }
body .fanwelt-sidebar-toggle::after { color: currentColor; }
body .fanwelt-sidebar-all-link:hover { background: var(--fanwelt-accent-strong); color: #fff; }
body .fanwelt-shop-nav :is(a,button):focus-visible,
body .fanwelt-slider :is(a,button):focus-visible,
body .fanwelt-video-section--split :is(a,button):focus-visible,
body .fanwelt-footer :is(a,button):focus-visible { outline-color: var(--fanwelt-accent-light); }
body .fw-featured-see-all a:hover, body .fw-zuhause-cta:hover { background: var(--fanwelt-accent-hover); color: #fff; border-color: var(--fanwelt-accent-hover); box-shadow: none; }
body .fw-zuhause-accent { background: var(--fanwelt-accent); }
body .fw-zuhause-price, body .fanwelt-section-card-price { color: var(--fanwelt-ink); }
body .fw-zuhause-name { color: var(--fanwelt-ink); }
body :is(.fw-zuhause-sub,.fw-featured-price del,.fanwelt-section-card-price del,.fanwelt-sticky-atc-price del) { color: var(--fanwelt-muted); }
body :is(.fw-featured-price,.fw-zuhause-price,.fanwelt-section-card-price,.fanwelt-sticky-atc-price,.fanwelt-search-item-price,.woocommerce .price) del,
body :is(.fw-featured-price,.fw-zuhause-price,.fanwelt-section-card-price,.fanwelt-sticky-atc-price,.fanwelt-search-item-price,.woocommerce .price) del :is(span,bdi) { color: var(--fanwelt-muted) !important; opacity: 1 !important; }
body .fanwelt-values-section { background: var(--fanwelt-paper) !important; color: var(--fanwelt-ink) !important; }
body .fanwelt-values-section :is(h2,h3,p,span) { color: var(--fanwelt-ink) !important; }
body .fanwelt-values-section > div > p { color: var(--fanwelt-ink) !important; }
body .fanwelt-trust-icon { background: var(--fanwelt-accent); }
body .fanwelt-trust-icon svg { stroke: var(--fanwelt-ink); }
body .fanwelt-trust-label, body .fanwelt-section-card-title { color: var(--fanwelt-ink); }
body .fanwelt-trust-sub, body .fanwelt-trust-badges span { color: var(--fanwelt-muted) !important; }
body .fanwelt-trust-badges { background: var(--fanwelt-tint) !important; border-color: var(--fanwelt-line) !important; color: var(--fanwelt-muted); }
body .fanwelt-section-title { color: var(--fanwelt-ink); border-color: var(--fanwelt-accent); }
body .fanwelt-video-section--split .fanwelt-video-sig span { color: var(--fanwelt-accent-light) !important; }
body .fanwelt-video-play-label { background: var(--fanwelt-deep); color: #fff; }
body .fanwelt-video-load { background: linear-gradient(135deg,var(--fanwelt-deep),var(--fanwelt-accent-strong)); }
body .fanwelt-video-right .fanwelt-video-wrap { box-shadow: 0 12px 48px #000B1040, 0 0 0 1px #65E3F430; }
body .fanwelt-newsletter-section :is(.fanwelt-newsletter-eyebrow,.fanwelt-newsletter-success) { color: var(--fanwelt-accent-strong) !important; }
body .fanwelt-newsletter-section :is(.fanwelt-newsletter-hint,.fanwelt-newsletter-sub) { color: var(--fanwelt-muted) !important; }
body .fanwelt-newsletter-section .fanwelt-newsletter-error { color: #A52E3D !important; }
body .fanwelt-newsletter-section .fanwelt-newsletter-input-wrap { background: #fff; border-color: var(--fanwelt-accent-strong); }
body .fanwelt-newsletter-section input[type=email] { -webkit-text-fill-color: var(--fanwelt-ink); caret-color: var(--fanwelt-accent-strong); }
body .fanwelt-newsletter-section input[type=email]::placeholder { color: var(--fanwelt-muted); -webkit-text-fill-color: var(--fanwelt-muted); opacity: 1; }
body .fanwelt-newsletter-section input[type=checkbox] { accent-color: var(--fanwelt-accent-strong); }
body .fanwelt-newsletter-section .fanwelt-newsletter-btn:hover:not(:disabled) { background: var(--fanwelt-accent-hover); color: #fff; }
body .fanwelt-newsletter-section .fanwelt-newsletter-consent a { color: var(--fanwelt-accent-strong); }
body .fanwelt-footer :is(.fanwelt-footer-payments,.fanwelt-footer-bottom p) { color: var(--fanwelt-on-dark) !important; }
body .fanwelt-footer ul li a:hover, body .fanwelt-footer a:hover, body .fanwelt-footer a:hover span,
body .fanwelt-footer a:focus-visible, body .fanwelt-footer a:focus-visible span,
body .fanwelt-footer button.cmplz-manage-consent:hover { color: var(--fanwelt-accent-light) !important; }
body .fanwelt-footer ul li a:hover { text-decoration: underline; text-underline-offset: 3px; }
body .woocommerce :is(a.button,button.button,input.button,.wp-block-button__link) { background-color: var(--fanwelt-accent) !important; color: var(--fanwelt-ink) !important; }
body .woocommerce :is(a.button,button.button,input.button,.wp-block-button__link):hover { background-color: var(--fanwelt-accent-hover) !important; color: #fff !important; }
body.woocommerce-account :is(.woocommerce-form-login,.woocommerce-form-register) .button { background: var(--fanwelt-accent) !important; color: var(--fanwelt-ink) !important; }
body.woocommerce-account :is(.woocommerce-form-login,.woocommerce-form-register) .button:hover { background: var(--fanwelt-accent-hover) !important; color: #fff !important; }
body .fanwelt-shop-content .woocommerce-pagination .page-numbers li span.current { background: var(--fanwelt-accent); color: var(--fanwelt-ink); border-color: var(--fanwelt-accent); }
body .woocommerce ul.products li.product :is(.button,.add_to_cart_button):hover,
body.woocommerce .fanwelt-shop-content li.product .fanwelt-quick-add-btn:hover { background: var(--fanwelt-accent-hover) !important; color: #fff !important; }
body .woocommerce ul.products li.product .onsale,
body .woocommerce ul.products li.product .onsale.fanwelt-sale-badge,
body .woocommerce span.onsale.fanwelt-sale-badge { background: var(--fanwelt-accent-strong) !important; color: #fff !important; box-shadow: 0 4px 12px #006F8026; }
body .fanwelt-gallery-arrow:hover { background: var(--fanwelt-accent-strong); color: #fff; }
body .ct-woo-card-extra :is(.ct-open-quick-view,button):hover { background: var(--fanwelt-accent-strong) !important; color: #fff !important; }
body.single-product .entry-summary :is(.woocommerce-product-details__short-description,.woocommerce-product-details__short-description p),
body.single-product .entry-summary .woocommerce-product-details__short-description :is(h2,h3,h4,p,li),
body.single-product .woocommerce-tabs :is(h2,h3,h4,p,li,th,td),
body.single-product :is(.fanwelt-benefit-bullets li,.fanwelt-selected-label,.fanwelt-product-meta-info) { color: var(--fanwelt-ink) !important; }
body.single-product :is(.fanwelt-benefit-bullets,.fanwelt-product-meta-info) { background: var(--fanwelt-paper); border-color: var(--fanwelt-line); }
body.single-product .fanwelt-benefit-bullets .fanwelt-bullet-icon { color: var(--fanwelt-accent-strong); }
body.single-product .fanwelt-swatch-color.selected { border-color: var(--fanwelt-accent-strong); box-shadow: 0 0 0 3px #006F8033; }
body.single-product .product .summary .stock.in-stock { color: var(--fanwelt-accent-strong) !important; }
body.single-product .entry-summary :is(.reset_variations,.product_meta a) { color: var(--fanwelt-accent-strong) !important; }
body :is(.fanwelt-variant-info,.fanwelt-swatch-more,.fanwelt-mini-cart-empty,.fanwelt-mini-cart-added-variant) { color: var(--fanwelt-muted); }
body .fanwelt-mini-cart-btn { background: var(--fanwelt-accent); color: var(--fanwelt-ink); }
body .fanwelt-mini-cart-btn:hover, body .fanwelt-mini-cart-checkout:hover,
body .fanwelt-sticky-atc-btn:hover { background: var(--fanwelt-accent-hover) !important; color: #fff !important; }
body .fanwelt-mini-cart-continue { background: var(--fanwelt-tint) !important; color: var(--fanwelt-ink); border-color: var(--fanwelt-line); }
body .fanwelt-mini-cart-item-price, body .fanwelt-mini-cart-added-price { color: var(--fanwelt-ink); }
body .fanwelt-mini-cart-added-product { background: var(--fanwelt-tint); }
body .fanwelt-mini-cart-remove { background: var(--fanwelt-tint); color: var(--fanwelt-accent-strong); }
body .fanwelt-shipbar { background: var(--fanwelt-tint); border-color: var(--fanwelt-line); }
body .fanwelt-shipbar-label, body .fanwelt-shipbar-label strong { color: var(--fanwelt-ink); }
body .fanwelt-shipbar-track { background: var(--fanwelt-line); }
body .fanwelt-shipbar-track span { background: var(--fanwelt-accent-strong); }
body .fanwelt-shipbar.is-qualified .fanwelt-shipbar-label { color: var(--fanwelt-accent-strong); }
body .fanwelt-shipbar.is-qualified .fanwelt-shipbar-track span { background: var(--fanwelt-accent-strong); }
body .fanwelt-search-input { color: var(--fanwelt-ink) !important; -webkit-text-fill-color: var(--fanwelt-ink) !important; caret-color: var(--fanwelt-accent-strong) !important; }
body .fanwelt-search-input::placeholder { color: var(--fanwelt-muted) !important; -webkit-text-fill-color: var(--fanwelt-muted) !important; opacity: 1; }
body :is(.fanwelt-search-close,.fanwelt-search-empty,.fanwelt-search-item-oos) { color: var(--fanwelt-muted); }
body .fanwelt-search-item-name { color: var(--fanwelt-ink); }
body .fanwelt-search-item-price { color: var(--fanwelt-ink); }
body .fanwelt-search-item:hover { background: var(--fanwelt-tint); }
body .fanwelt-search-input-wrap { border-color: var(--fanwelt-line); }
body :is(.woocommerce-breadcrumb,.ct-breadcrumbs) { color: var(--fanwelt-muted) !important; }
body :is(.woocommerce-breadcrumb,.ct-breadcrumbs) a { color: var(--fanwelt-accent-strong) !important; }
body :is(.woocommerce-info,.woocommerce-message,.woocommerce-error,.woocommerce-notice) { background: var(--fanwelt-tint) !important; color: var(--fanwelt-ink) !important; border-top-color: var(--fanwelt-accent-strong) !important; }
body :is(.woocommerce-info,.woocommerce-message,.woocommerce-error,.woocommerce-notice) a:not(.button) { color: var(--fanwelt-accent-strong) !important; }
body :is(.woocommerce-info,.woocommerce-message)::before { color: var(--fanwelt-accent-strong); }
body .woocommerce-error::before { color: #A52E3D; }
body :is(.woocommerce-info,.woocommerce-message,.woocommerce-error,.woocommerce-notice) :is(p,li,strong,span) { color: inherit; }
body .fanwelt-checkout-step, body .fanwelt-checkout-separator { color: var(--fanwelt-muted); }
body .fanwelt-checkout-step.completed { color: var(--fanwelt-accent-strong); }
body.woocommerce-cart .cart-empty { color: var(--fanwelt-muted) !important; }
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) :is(.cart_totals,.woocommerce-checkout-review-order,.woocommerce-form-login,.woocommerce-form-register) { background: var(--fanwelt-paper) !important; border-color: var(--fanwelt-line) !important; }
body:is(.woocommerce-cart,.woocommerce-checkout,.woocommerce-account) :is(h1,h2,h3,h4,label,.product-name,.product-name a,th,td) { color: var(--fanwelt-ink); }
body.woocommerce-checkout #payment .payment_box { background: var(--fanwelt-tint) !important; color: var(--fanwelt-ink) !important; }
body.woocommerce-checkout #payment .payment_box::before { border-bottom-color: var(--fanwelt-tint); }
body.woocommerce-checkout #payment .payment_box :is(p,label,span) { color: inherit; }
body .woocommerce :is(input.input-text,input.qty,select,textarea,.select2-selection__rendered) { color: var(--fanwelt-ink) !important; -webkit-text-fill-color: var(--fanwelt-ink) !important; }
body .woocommerce :is(input.input-text,textarea)::placeholder { color: var(--fanwelt-muted); -webkit-text-fill-color: var(--fanwelt-muted); opacity: 1; }
body .woocommerce form :is(input[type=checkbox],input[type=radio]) { accent-color: var(--fanwelt-accent-strong) !important; }
body.woocommerce-checkout .woocommerce form .form-row abbr.required { color: #A52036 !important; }
body.fanwelt-legal-page, body.fanwelt-legal-page :is(#main,article.page,.ct-container-full,.hero-section,.entry-content) { background-color: var(--fanwelt-paper) !important; color: var(--fanwelt-ink) !important; }
body.fanwelt-legal-page .hero-section .page-title,
body.fanwelt-legal-page .entry-content :is(h2,h3,h4,p,li,td,span,em,strong,code) { color: var(--fanwelt-ink) !important; border-color: var(--fanwelt-line) !important; }
body.fanwelt-legal-page .hero-section .entry-header::after { background: var(--fanwelt-accent); }
body.fanwelt-legal-page .entry-content a { color: var(--fanwelt-accent-strong) !important; text-decoration-color: currentColor !important; }
body.fanwelt-legal-page .entry-content a:hover { color: var(--fanwelt-accent-hover) !important; text-decoration-color: currentColor !important; }
body.fanwelt-legal-page .entry-content code { background: var(--fanwelt-tint) !important; }
/* Readable type across legacy MU styles, including their smaller !important rules. */
body .entry-content :is(p,li), body .fanwelt-video-section--split :is(.fanwelt-video-body,.fanwelt-video-sig) { font-size: 16px; line-height: 1.65; }
body .fanwelt-video-section--split .fanwelt-video-kicker { font-size: 14px; letter-spacing: 1.5px; }
body :is(.fanwelt-video-note,.fanwelt-video-footer,.fanwelt-trust-sub,.fanwelt-shipbar-label,.fanwelt-edit-cart-link) { font-size: 14px; line-height: 1.6; }
body .fanwelt-video-play-label { font-size: 16px; }
body .fanwelt-trust-label { font-size: 16px; line-height: 1.45; }
body .fanwelt-trust-badges span { font-size: 14px !important; }
body .fanwelt-values-section p { font-size: 16px !important; line-height: 1.65 !important; }
body .fanwelt-values-section > div > p { font-size: 14px !important; }
body .fanwelt-values-section h3 { font-size: 18px !important; line-height: 1.4 !important; }
body .fanwelt-values-grid { grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: 32px !important; }
body :is(.fw-featured-price,.fanwelt-section-card-price) del { font-size: 14px; }
body .fanwelt-section-card-title { font-size: 16px; line-height: 1.5; min-height: 3em; }
body .fanwelt-section-card-price { font-size: 20px; line-height: 1.4; }
body .woocommerce :is(input.input-text,input.qty,select,textarea,.select2-selection__rendered),
body .fanwelt-newsletter-section :is(input[type=email],button) { font-size: 16px !important; line-height: 1.5; }
body .woocommerce form .form-row label { font-size: 16px; }
body .woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error,.payment_box,.woocommerce-terms-and-conditions-wrapper) { font-size: 16px; line-height: 1.6; }
body .woocommerce :is(.woocommerce-breadcrumb,.ct-breadcrumbs) { font-size: 14px !important; line-height: 1.5; letter-spacing: .25px; }
body.single-product .entry-summary .woocommerce-product-details__short-description,
body.single-product .entry-summary .woocommerce-product-details__short-description p { font-size: 16px !important; line-height: 1.65; }
body.single-product .fanwelt-benefit-bullets li { font-size: 16px; line-height: 1.5; }
body.single-product .variations th.label label { font-size: 16px !important; letter-spacing: .5px !important; }
body.single-product :is(.fanwelt-selected-label,.reset_variations,.fanwelt-product-meta-info) { font-size: 14px; }
body.single-product .product .summary .stock.in-stock { font-size: 14px !important; }
body.single-product .fanwelt-swatch-color[data-tooltip]:hover::after { font-size: 14px; }
body.single-product .woocommerce-tabs :is(p,li,table) { font-size: 16px; line-height: 1.65; }
body.single-product .ct-cart-actions .single_add_to_cart_button,
body.single-product .single_add_to_cart_button,
body.woocommerce-checkout #place_order, body.woocommerce-cart .checkout-button { font-size: 16px !important; line-height: 1.5; }
body .fanwelt-mini-cart :is(.fanwelt-mini-cart-item-name,.fanwelt-mini-cart-btn,.fanwelt-mini-cart-checkout) { font-size: 16px; line-height: 1.5; }
body .fanwelt-mini-cart :is(.fanwelt-mini-cart-item-meta,.fanwelt-mini-cart-added-variant),
body .fanwelt-mini-cart-footer > a:not(.fanwelt-mini-cart-checkout) { font-size: 14px; line-height: 1.5; }
body .fanwelt-mini-cart-total { font-size: 18px; line-height: 1.5; }
body .fanwelt-sticky-atc-title { font-size: 14px; line-height: 1.45; }
body .fanwelt-sticky-atc-price, body .fanwelt-search-item-price { font-size: 18px; line-height: 1.4; }
body .fanwelt-sticky-atc-btn { font-size: 16px; line-height: 1.4; padding-inline: 14px; white-space: normal; }
body :is(.fanwelt-search-item-name,.fanwelt-search-empty) { font-size: 16px; line-height: 1.5; }
body .fanwelt-search-item-oos { font-size: 12px; }
body :is(.fanwelt-gallery-counter,.fanwelt-card-badge), body .woocommerce .onsale { font-size: 12px !important; }
body .fanwelt-newsletter-section :is(.fanwelt-newsletter-sub,.fanwelt-newsletter-error) { font-size: 16px; line-height: 1.65; }
body .fanwelt-newsletter-section :is(.fanwelt-newsletter-consent,.fanwelt-newsletter-hint,.fanwelt-newsletter-eyebrow) { font-size: 14px; line-height: 1.6; }
body .fanwelt-footer { font-size: 14px; }
body .fanwelt-footer p { font-size: 16px; line-height: 1.65; }
body .fanwelt-footer :is(h4,li), body .fanwelt-footer ul li a,
body .fanwelt-footer .fanwelt-footer-payments, body .fanwelt-footer-bottom p { font-size: 14px; line-height: 1.6; }
body .cmplz-cookiebanner { max-height: calc(100dvh - 16px); overflow-y: auto; }
body .cmplz-cookiebanner :is(.cmplz-message,.cmplz-description,.cmplz-link) { font-size: 14px !important; line-height: 1.55 !important; }
body .cmplz-cookiebanner .cmplz-btn { font-size: 16px !important; min-height: 48px; }
body.woocommerce-cart .cart_totals h2 { font-size: 18px !important; line-height: 1.4; }
body:is(.woocommerce-cart,.woocommerce-checkout) :is(.product-name,.product-name a,.cart_totals td,.cart_totals th),
body.woocommerce-checkout #order_review > table.woocommerce-checkout-review-order-table { font-size: 16px; line-height: 1.5; }
body:is(.woocommerce-cart,.woocommerce-checkout) table.shop_table th { font-size: 14px; letter-spacing: .3px; }
body.woocommerce-cart :is(.product-price,.product-subtotal) { font-size: 18px; }
body.woocommerce-cart :is(button[name=update_cart],.coupon button,.wc-backward),
body .woocommerce :is(.woocommerce-pagination a,.woocommerce-pagination span),
body .fanwelt-shop-content .fanwelt-filter-toggle { font-size: 16px; letter-spacing: .3px; }
body .fanwelt-shop-nav-icons { gap: 4px; margin-left: 8px; }
@media (max-width:1350px) {
  body .fanwelt-badge { display: none; }
}
@media (min-width:1101px) and (max-width:1350px) {
  body .fanwelt-shop-nav-inner { padding-inline: 20px; gap: 10px; }
  body .fanwelt-shop-nav-links { gap: 2px; }
  body .fanwelt-shop-nav-links a { padding-inline: 6px; }
  body .fanwelt-shop-nav-icons { gap: 0; margin-left: 4px; }
}
/* The global menu handler is width-independent; the shop filter stays at 768px. */
@media (max-width:1100px) {
  body .fanwelt-badge { display: none; }
  body .fanwelt-shop-nav-inner { padding-inline: 20px; gap: 10px; }
  body .fanwelt-logo-block { min-width: 0; }
  body .fanwelt-logo-img { max-width: 100%; object-fit: contain; }
  body .fanwelt-shop-nav-links { display: none; position: fixed; top: 80px; left: 0; right: 0; margin: 0; padding: 16px 0; flex-direction: column; gap: 0; align-items: stretch; background: var(--fanwelt-deep); max-height: calc(100dvh - 80px); overflow-y: auto; z-index: 998; box-shadow: 0 12px 20px #07182015; }
  body .fanwelt-shop-nav-links.open { display: flex; }
  body .fanwelt-shop-nav-links a { display: block; min-height: 48px; padding: 14px 24px; font-size: 16px !important; }
  body .fanwelt-shop-nav-icons { margin-left: auto; gap: 0; }
  body .fanwelt-nav-hamburger { display: flex; margin-left: 0; }
}
@media (max-width:768px) {
  body.woocommerce .fanwelt-shop-content ul.products { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 18px 12px !important; }
  body.woocommerce .fanwelt-shop-content ul.products li.product h2.woocommerce-loop-product__title { font-size: 15px !important; padding-inline: 12px !important; }
  body.woocommerce .fanwelt-shop-content .woo-listing-top { display: flex; flex-direction: column; align-items: stretch; gap: 10px; margin-bottom: 20px; }
  body.woocommerce .fanwelt-shop-content .woocommerce-result-count { display: block !important; margin: 0; }
  body.woocommerce .fanwelt-shop-content .woocommerce-ordering { float: none; margin: 0; width: 100%; }
  body.woocommerce .fanwelt-shop-content .woocommerce-ordering select { position: static; width: 100%; opacity: 1; padding: 10px 36px 10px 12px; }
  body.woocommerce .fanwelt-shop-content .ct-sort-icon { display: none; }
  body.woocommerce .fanwelt-shop-content :is(.fanwelt-gallery-arrow,.fanwelt-card-dots,.fanwelt-gallery-counter) { display: none; }
  body.woocommerce-cart .ct-container, body.woocommerce-checkout .ct-container { width: calc(100% - 32px); }
  body.woocommerce-cart .entry-content, body.woocommerce-checkout .entry-content { padding: 24px 0; }
  body.woocommerce-cart .woocommerce, body.woocommerce-checkout .woocommerce { padding: 0; }
  body .fanwelt-checkout-progress { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr); gap: 8px; width: 100%; padding-inline: 0; align-items: center; }
  body .fanwelt-checkout-step { min-width: 0; font-size: 14px; letter-spacing: 0; text-transform: none; overflow-wrap: anywhere; hyphens: auto; text-align: center; }
  body .fanwelt-checkout-separator { font-size: 14px; margin: 0; }
  body.woocommerce-cart .cart_totals { padding: 16px !important; }
  body.woocommerce-cart table.shop_table td { padding: 12px 0 !important; }
  body .fanwelt-shop-nav-inner { height: 64px; padding-inline: 14px; gap: 8px; }
  body .fanwelt-shop-nav-links { top: 64px; background: var(--fanwelt-deep); max-height: calc(100dvh - 64px); overflow-y: auto; box-shadow: 0 12px 20px #07182015; }
  body .fanwelt-shop-nav-links a { min-height: 48px; font-size: 16px !important; }
  body .fanwelt-shop-nav-icons { margin-left: auto; gap: 0; }
  body .fanwelt-badge { display: none; }
  body .fanwelt-ticker > a { font-size: 14px; padding: 8px 12px; }
  body .fanwelt-ticker > a { font-size: 0; }
  body .fanwelt-ticker span { font-size: 14px; margin: 0; padding: 0; border: 0; }
  body .fanwelt-slider { min-height: 560px !important; height: 560px !important; }
  body .fanwelt-slide-content { padding: 30px 24px 70px !important; max-width: 100%; }
  body .fanwelt-slide-title { max-width: 290px; font-size: 30px !important; }
  body .fanwelt-slide-text { max-width: 280px; font-size: 16px; }
  body .fanwelt-slide-portrait { display: block !important; opacity: .45 !important; right: -20% !important; height: 78% !important; }
  body .fanwelt-slide::after { background: linear-gradient(90deg,#071318D9, #07131873) !important; }
  body .fw-featured { padding: 44px 16px !important; }
  body .fw-featured-grid { gap: 14px 12px !important; }
  body .fw-featured-info { padding: 12px 10px !important; }
  body .fw-featured-name { font-size: 15px; line-height: 1.5; }
  body .fw-featured-price { font-size: 18px; }
  body .fw-featured-badge { max-width: calc(100% - 16px); font-size: 12px; padding: 4px 7px; }
  body .fw-featured-title { font-size: 26px; line-height: 1.25; }
  body .woocommerce ul.products { gap: 16px 12px; }
  body .woocommerce ul.products li.product .woocommerce-loop-product__title,
  body.single-product ul.products li.product .woocommerce-loop-product__title,
  body .fanwelt-section-card-title { font-size: 15px !important; }
  body .woocommerce ul.products li.product .price,
  body.single-product ul.products li.product .price,
  body .fanwelt-section-card-price { font-size: 18px !important; }
  body .fanwelt-values-grid { grid-template-columns: 1fr !important; gap: 28px !important; }
  body.single-product .ct-container { width: calc(100% - 32px); }
  body.single-product .entry-summary { padding: 0 !important; }
  body.single-product .entry-summary-wrapper, body.single-product .product-entry-wrapper { gap: 28px !important; }
  body .fanwelt-footer-inner { gap: 24px; padding-inline: 24px; }
  body .fanwelt-footer ul li a { min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
  .fanwelt-slider *, .fanwelt-ticker *, .fanwelt-mini-cart, .fanwelt-sticky-atc { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
@media (max-width:768px) {
  body .fanwelt-slider .fanwelt-slide--brand .fanwelt-brand-portrait { width: 60%; object-position: center top; }
  body .fanwelt-slider .fanwelt-slide--brand .fanwelt-brand-overlay { background: linear-gradient(90deg,#071318 0%,#071318 34%,#071318cc 43%,#07131800 65%) !important; }
}
@media (max-width:600px) {
  body .fanwelt-slider { height: 680px !important; min-height: 680px !important; }
  body .fanwelt-slider .fanwelt-slide--brand { align-items: flex-end; }
  body .fanwelt-slider .fanwelt-slide--brand .fanwelt-brand-portrait { width: 100%; height: 70%; object-position: center top; }
  body .fanwelt-slider .fanwelt-slide--brand .fanwelt-brand-overlay { background: linear-gradient(180deg,#07131800 20%,#0713180d 38%,#071318e6 61%,#071318 72%) !important; }
  body .fanwelt-slider .fanwelt-slide--brand .fanwelt-slide-content { width: 100%; max-width: none !important; height: auto; padding: 0 24px 72px !important; }
  body .fanwelt-slider .fanwelt-slide--brand .fanwelt-slide-text { max-width: 340px; }
}

@media (min-width: 601px) and (max-width: 768px) {
  body .fanwelt-slider .fanwelt-slide--brand .fanwelt-slide-content { max-width: 54% !important; }
}

/* Original photography: understated backdrop, visible stage moment and credits. */
body .fanwelt-slider .fanwelt-hero-credit { position: absolute; bottom: 14px; right: 18px; z-index: 3; color: var(--fanwelt-on-dark); font: 400 12px/1.5 Montserrat,sans-serif; text-shadow: 0 1px 4px #071318; background: #071318d9; padding: 3px 7px; border-radius: 3px; }
body.home .fanwelt-live-photo { width: calc(100% - 48px); max-width: 1280px; margin: 0 auto 64px; overflow: hidden; border-radius: 14px; background: var(--fanwelt-deep); }
body.home .fanwelt-live-photo img { display: block; width: 100%; height: auto; }
body.home .fanwelt-live-photo figcaption { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 4px 20px; padding: 16px 22px; color: var(--fanwelt-on-dark); font-size: 16px; line-height: 1.5; }
body.home .fanwelt-live-photo .fanwelt-photo-credit { color: var(--fanwelt-on-dark); font-size: 14px; }
@media (max-width: 600px) {
  body.home .fanwelt-live-photo { width: calc(100% - 32px); margin-bottom: 40px; border-radius: 10px; }
  body.home .fanwelt-live-photo img { aspect-ratio: 4 / 3; height: auto; object-fit: cover; object-position: 47% center; }
  body.home .fanwelt-live-photo figcaption { padding: 14px 16px; flex-direction: column; }
  body .fanwelt-slider .fanwelt-hero-credit { right: 14px; bottom: 12px; }
}

@media (max-width: 768px) {
  body .fanwelt-slider .fanwelt-slide--brand::before { width: 60%; }
}
@media (max-width: 600px) {
  body .fanwelt-slider .fanwelt-slide--brand::before { width: 100%; height: 70%; }
}
