/*
Theme Name: Biliauto
Theme URI: https://biliauto.dk
Description: Custom WooCommerce theme for Biliauto.dk - Dark Performance (direction A, spec 22.09.2026). Renoverede, brugte og nye motorer, gearkasser og turboladere. Danish market.
Author: MATauto
Version: 1.2.0
Requires PHP: 8.1
Text Domain: biliauto
*/

/* ==========================================================================
   1. Design tokens (spec section 3, "System wizualny A")
   Two surfaces: the dark page ground and the light card. Components read
   the --s-* surface variables, so the same markup works on both.
   ========================================================================== */
:root {
  /* brand */
  --bi-bg:            #101619;   /* page ground */
  --bi-panel:         #1B252B;   /* dark panel */
  --bi-panel-2:       #233038;   /* dark panel hover / nested */
  --bi-accent:        #00B9D6;
  --bi-accent-hover:  #25CCE6;
  --bi-accent-ink:    #06232A;   /* text on turquoise */
  --bi-accent-soft:   rgba(0, 185, 214, .12);
  --bi-text:          #F4F7F8;
  --bi-muted:         #A6B3BC;
  --bi-line:          rgba(255, 255, 255, .10);
  --bi-line-strong:   rgba(255, 255, 255, .18);

  /* light card */
  --bi-card:          #FFFFFF;
  --bi-card-alt:      #F2F4F5;   /* photo field, tab strip */
  --bi-card-text:     #1D2327;
  --bi-card-muted:    #5B6570;
  --bi-card-line:     #E3E7EA;

  /* condition */
  --bi-brugt:         #536B78;
  --bi-ny:            #178647;
  --bi-warn:          #F3B54A;
  --bi-warn-ink:      #4A3300;
  --bi-ok:            #1B8A3F;
  --bi-ok-light:      #4ED07A;   /* on dark ground */
  --bi-danger:        #C02929;
  --bi-danger-light:  #FF7A7A;
  --bi-order:         #F5A623;

  /* type */
  --bi-font:      "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  --bi-font-head: "Poppins", "Inter", -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --bi-font-code: "Inter", ui-monospace, "Cascadia Mono", Consolas, monospace;
  --bi-fs-base: 16px;
  --bi-lh: 1.6;

  /* geometry (spec: cards 8-12 px, buttons 6-8 px, 8 px rhythm) */
  --bi-radius-sm: 6px;
  --bi-radius: 8px;
  --bi-radius-lg: 12px;
  --bi-radius-pill: 999px;
  --bi-gap: 16px;
  --bi-container: 1320px;
  --bi-shadow: 0 2px 6px rgba(0, 0, 0, .25), 0 14px 40px rgba(0, 0, 0, .35);
  --bi-shadow-sm: 0 1px 2px rgba(0, 0, 0, .25), 0 6px 18px rgba(0, 0, 0, .25);
  --bi-ease: cubic-bezier(.2, .7, .2, 1);

  /* surface: dark ground by default */
  --s-bg: var(--bi-bg);
  --s-text: var(--bi-text);
  --s-muted: var(--bi-muted);
  --s-line: var(--bi-line);
  --s-link: var(--bi-accent);
  --s-field: #0B1013;
}

/* light surface: any white card */
.bi-light, .bi-card, .bi-finder, .bi-panel:not(.bi-panel--dark), .bi-tile, .bi-guide, .bi-form--card, .bi-product__media, .bi-product__buy, .bi-product__detail, .bi-lightpanel, .bi-nav__panel, .bi-finder__result {
  --s-bg: var(--bi-card);
  --s-text: var(--bi-card-text);
  --s-muted: var(--bi-card-muted);
  --s-line: var(--bi-card-line);
  --s-link: #007B91;
  --s-field: #FFFFFF;
  color: var(--s-text);
}

/* ==========================================================================
   2. Base
   ========================================================================== */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

body { margin: 0;; font-family: var(--bi-font);; font-size: var(--bi-fs-base);; line-height: var(--bi-lh);; color: var(--bi-text);; -webkit-font-smoothing: antialiased;; overflow-x: clip;; }

h1, h2, h3, h4 { font-family: var(--bi-font-head); line-height: 1.15; margin: 0 0 .5em; font-weight: 700; letter-spacing: -.01em; color: var(--s-text); }
h1 { font-size: clamp(1.9rem, 1.2rem + 2vw, 2.75rem); }
h2 { font-size: clamp(1.4rem, 1.1rem + 1vw, 1.9rem); }
h3 { font-size: 1.125rem; }
p { margin: 0 0 1em; }

a { color: var(--s-link); text-decoration: none; }
a:hover { text-decoration: underline; }
img { max-width: 100%; height: auto; display: block; }
strong { font-weight: 600; }
code, .bi-code { font-family: var(--bi-font-code); font-variant-numeric: tabular-nums lining-nums; letter-spacing: .02em; }

:focus-visible { outline: 2px solid var(--bi-accent); outline-offset: 2px; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); white-space: nowrap; }
.screen-reader-text:focus { clip: auto; width: auto; height: auto; left: 8px; top: 8px; z-index: 1000; padding: .5rem 1rem; background: var(--bi-accent); color: var(--bi-accent-ink); border-radius: var(--bi-radius); }

.bi-container { width: 100%; max-width: var(--bi-container); margin-inline: auto; padding-inline: var(--bi-gap); }
@media (min-width: 1100px) { .bi-container { padding-inline: 40px; } }

.bi-main { min-height: 40vh; }

/* text helpers */
.bi-eyebrow { margin: 0 0 .5rem; font-size: .75rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--bi-accent); }

.bi-text-muted { color: var(--s-muted); }
.bi-link { font-weight: 600; white-space: nowrap; color: var(--bi-accent); }
.bi-light .bi-link, .bi-card .bi-link { color: #007B91; }

/* --- buttons -------------------------------------------------------------- */
.bi-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .5em;
  min-height: 44px; padding: .6em 1.3em;
  font: inherit; font-weight: 700; line-height: 1.2;
  border: 1px solid transparent; border-radius: var(--bi-radius);
  cursor: pointer; text-decoration: none; white-space: nowrap;
  transition: background-color .18s var(--bi-ease), border-color .18s var(--bi-ease), color .18s var(--bi-ease), transform .18s var(--bi-ease);
}
.bi-btn:hover { text-decoration: none; }
.bi-btn:active { transform: translateY(1px); }
.bi-btn--primary { background: var(--bi-accent); color: var(--bi-accent-ink); }
.bi-btn--primary:hover { background: var(--bi-accent-hover); color: var(--bi-accent-ink); }
.bi-nav .bi-btn--primary, .bi-catmenu .bi-btn--primary, a.bi-btn--primary, a.bi-btn--primary:hover, a.bi-btn--primary:focus { color: var(--bi-accent-ink); } /* 12.10.2026 audyt 02 U-06: jasny tekst 2.19:1 w drawerze/mega-menu */
.bi-btn--ghost { background: transparent; color: var(--s-text); border-color: var(--s-line); }
.bi-btn--ghost:hover { border-color: var(--bi-accent); color: var(--bi-accent); }
.bi-light .bi-btn--ghost:hover, .bi-card .bi-btn--ghost:hover { color: #007B91; }
.bi-btn--dark { background: var(--bi-panel); color: var(--bi-text); border-color: var(--bi-line-strong); }
.bi-btn--dark:hover { background: var(--bi-panel-2); color: #fff; }
.bi-btn--block { width: 100%; }
.bi-btn--lg { min-height: 52px; padding: .75em 1.6em; font-size: 1.0625rem; }
.bi-btn--sm { min-height: 36px; padding: .4em .9em; font-size: .875rem; }
.bi-btn svg { width: 18px; height: 18px; flex: none; }

/* ==========================================================================
   3. Header: topbar, header row, navigation
   ========================================================================== */

.bi-header { position: sticky;; top: 0;; z-index: 90;; color: #fff;; border-bottom: 1px solid var(--bi-line);; -webkit-backdrop-filter: blur(12px);; backdrop-filter: blur(12px);; }
.bi-header .bi-container { display: flex; align-items: center; gap: 1.5rem; min-height: 72px; }
.bi-logo { flex: none; }
.bi-logo a { display: block; }

/* primary nav, inline in the header row */
.bi-nav { flex: 1; min-width: 0; display: flex; align-items: center; justify-content: center; }
.bi-nav__row { display: flex; align-items: center; gap: .25rem; }
.bi-nav ul { display: flex; gap: .25rem; list-style: none; margin: 0; padding: 0; }
.bi-nav li { position: relative; }
.bi-nav a { display: block; padding: .6em .85em; color: var(--bi-text); font-weight: 600; font-size: .9375rem; border-radius: var(--bi-radius-sm); white-space: nowrap; }
.bi-nav a:hover, .bi-nav .current-menu-item > a, .bi-nav .current_page_item > a { color: var(--bi-accent); text-decoration: none; background: rgba(255,255,255,.04); }
.bi-nav ul ul { display: none; position: absolute; left: 0; top: 100%; min-width: 220px; flex-direction: column; gap: .1rem; padding: .5rem; background: var(--bi-panel); border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius); box-shadow: var(--bi-shadow); z-index: 70; }
.bi-nav li:hover > ul, .bi-nav li:focus-within > ul { display: flex; }

/* "Reservedele": link + category mega panel */
.bi-nav__cat { position: relative; }
.bi-nav__shop { display: inline-flex; align-items: center; gap: .4rem; padding: .6em .85em; background: transparent; border: 0; border-radius: var(--bi-radius-sm); color: var(--bi-text); font: inherit; font-weight: 600; font-size: .9375rem; cursor: pointer; white-space: nowrap; }
.bi-nav__shop:hover, .bi-nav__cat.is-open .bi-nav__shop { color: var(--bi-accent); background: rgba(255,255,255,.04); }
.bi-nav__shop svg { width: 16px; height: 16px; transition: transform .18s var(--bi-ease); }
.bi-nav__cat:hover .bi-nav__shop svg, .bi-nav__cat.is-open .bi-nav__shop svg { transform: rotate(180deg); }
.bi-nav__panel { position: absolute;; left: 0;; top: calc(100% + 10px);; z-index: 80;; width: 980px;; max-width: calc(100vw - 2rem);; display: none;; grid-template-columns: repeat(4, minmax(0, 1fr));; gap: 1.5rem;; align-items: start;; padding: 1.25rem 1.4rem 1.4rem;; color: var(--bi-card-text);; border-radius: var(--bi-radius-lg);; box-shadow: var(--bi-shadow);; }
.bi-nav__panel::before { content: ""; position: absolute; left: 0; right: 0; top: -12px; height: 12px; }
.bi-nav__cat:hover .bi-nav__panel, .bi-nav__cat:focus-within .bi-nav__panel, .bi-nav__cat.is-open .bi-nav__panel { display: grid; }
.bi-nav .bi-nav__panel a { padding: .3rem .4rem;; font-weight: 500;; font-size: .9rem;; white-space: normal;; }

.bi-nav .bi-nav__panel a.bi-nav__top { display: flex; justify-content: space-between; align-items: baseline; gap: .5rem; font-family: var(--bi-font-head); font-weight: 700; font-size: 1rem; padding: 0 .4rem .45rem; margin-bottom: .45rem; border-radius: 0; border-bottom: 2px solid var(--bi-accent); }
.bi-nav .bi-nav__panel a.bi-nav__top:hover { background: none;; }
.bi-nav .bi-nav__panel ul { display: grid; gap: .05rem; }
.bi-nav .bi-nav__panel li a { display: flex; justify-content: space-between; gap: .6rem; line-height: 1.3; }
.bi-nav .bi-nav__panel span { font-weight: 500;; font-size: .8125rem;; font-variant-numeric: tabular-nums;; flex: none;; }
.bi-nav__col { min-width: 0; }
.bi-nav__panel-foot { grid-column: 1 / -1;; display: flex;; justify-content: space-between;; align-items: center;; gap: 1rem;; padding-top: .9rem;; border-top: 1px solid var(--bi-card-line);; font-size: .875rem;; }

/* header actions: search toggle, phone, account, cart */
.bi-header__actions { flex: none; display: flex; gap: .25rem; align-items: center; margin-left: auto; }
.bi-header__action { display: inline-flex; align-items: center; gap: .45rem; padding: .5rem .6rem; color: var(--bi-text); font-size: .875rem; font-weight: 600; border-radius: var(--bi-radius-sm); position: relative; background: transparent; border: 0; font-family: inherit; cursor: pointer; }
.bi-header__action:hover { color: var(--bi-accent); text-decoration: none; background: rgba(255,255,255,.04); }
.bi-header__action svg { width: 22px; height: 22px; flex: none; }
.bi-header__action--phone { color: var(--bi-accent); }
.bi-header__phone { white-space: nowrap; }
.bi-badge { position: absolute; top: 2px; right: 2px; min-width: 18px; height: 18px; display: grid; place-items: center; padding: 0 5px; background: var(--bi-accent); color: var(--bi-accent-ink); border-radius: 999px; font-size: .6875rem; font-weight: 700; }

/* global search row, toggled */
.bi-searchbar { display: none; background: var(--bi-panel); border-bottom: 1px solid var(--bi-line); }
.bi-searchbar.is-open { display: block; }
.bi-searchbar .bi-container { padding-block: .8rem; }
.bi-search { display: flex; width: 100%; max-width: 820px; margin-inline: auto; }
.bi-search input[type="search"] { flex: 1; min-width: 0; min-height: 48px; padding: .6em 1em; font: inherit; border: 2px solid transparent; border-right: 0; border-radius: var(--bi-radius) 0 0 var(--bi-radius); background: #fff; color: var(--bi-card-text); }
.bi-search input:focus { outline: none; border-color: var(--bi-accent); }
.bi-search button { padding: 0 1.3em; border: 0; cursor: pointer; background: var(--bi-accent); color: var(--bi-accent-ink); font: inherit; font-weight: 700; border-radius: 0 var(--bi-radius) var(--bi-radius) 0; }
.bi-search button:hover { background: var(--bi-accent-hover); }
.bi-searchbar__hint { margin: .5rem auto 0; max-width: 820px; font-size: .8125rem; color: var(--bi-muted); }

/* burger + mobile drawer */
.bi-nav__burger { display: none; align-items: center; justify-content: center; width: 44px; height: 44px; border: 0; cursor: pointer; color: var(--bi-text); background: transparent; border-radius: var(--bi-radius-sm); }
.bi-nav__burger svg { width: 24px; height: 24px; }
.bi-nav__burger:hover { background: rgba(255,255,255,.06); color: var(--bi-accent); }

/* 18.10: the extra Styling item made the row ~100px wider - compact earlier, never centre-overflow onto the logo */
.bi-nav { justify-content: safe center; }
@media (max-width: 1340px) {
  .bi-header .bi-container { gap: 1rem; }
  .bi-nav a, .bi-nav__shop { padding-inline: .6em; font-size: .875rem; }
  .bi-header__phone { display: none; }
}
@media (max-width: 1100px) {
  .bi-nav a, .bi-nav__shop { padding-inline: .45em; }
}
@media (min-width: 901px) and (max-width: 1060px) {
  .bi-header .bi-container { gap: .6rem; }
  .bi-nav a, .bi-nav__shop { padding-inline: .3em; font-size: .8125rem; }
}
@media (min-width: 901px) and (max-width: 980px) {
  .bi-header__actions { gap: 0; }
  .bi-header__action--phone { display: none; } /* Kontakt stays in the row */
}
@media (max-width: 900px) {
  .bi-header .bi-container { min-height: 64px; gap: .5rem; }
  .bi-logo img { height: 40px; }
  .bi-nav__burger { display: inline-flex; order: -1; }
  .bi-nav { position: fixed; inset: 0; z-index: 100; display: none; background: var(--bi-bg); overflow: auto; padding: 1rem var(--bi-gap) 2rem; justify-content: flex-start; align-items: stretch; }
  body.bi-menu-open .bi-nav { display: block; }
  body.bi-menu-open { overflow: hidden; }
  .bi-nav__row { flex-direction: column; align-items: stretch; gap: 0; padding-top: 3.5rem; }
  .bi-nav__close { position: absolute; top: .75rem; right: var(--bi-gap); width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius); background: var(--bi-panel); color: #fff; cursor: pointer; }
  .bi-nav__close svg { width: 20px; height: 20px; }
  .bi-nav ul { flex-direction: column; gap: 0; }
  .bi-nav a, .bi-nav__shop { display: block; width: 100%; text-align: left; padding: .9rem .5rem; font-size: 1.125rem; border-bottom: 1px solid var(--bi-line); border-radius: 0; }
  .bi-nav__shop { display: flex; justify-content: space-between; }
  .bi-nav__cat:hover .bi-nav__shop svg { transform: none; }
  .bi-nav__panel { position: static; width: auto; max-width: none; grid-template-columns: 1fr; gap: 1rem; margin: .5rem 0 1rem; box-shadow: none; }
  .bi-nav__cat:hover .bi-nav__panel, .bi-nav__cat:focus-within .bi-nav__panel { display: none; }
  .bi-nav__cat.is-open .bi-nav__panel { display: grid; }
  .bi-nav ul ul { position: static; display: flex; box-shadow: none; border: 0; padding: 0 0 0 1rem; background: transparent; }
  .bi-nav__mobile-extra { display: grid; gap: .6rem; margin-top: 1.25rem; }
}
.bi-nav__close, .bi-nav__mobile-extra { display: none; }
@media (max-width: 900px) { .bi-nav__close { display: grid; } .bi-nav__mobile-extra { display: grid; } }

/* ==========================================================================
   4. Shared components: badges, stock, deposit, notices, forms
   ========================================================================== */
.bi-tag {
  position: absolute; top: .6rem; left: .6rem; z-index: 2;
  display: inline-flex; align-items: center; padding: .25em .6em; border-radius: var(--bi-radius-sm);
  font-size: .6875rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; line-height: 1.2;
  background: var(--bi-panel); color: #fff;
}
.bi-tag--renoveret { background: var(--bi-accent); color: var(--bi-accent-ink); }
.bi-tag--ny        { background: var(--bi-ny); color: #fff; }
.bi-tag--brugt     { background: var(--bi-brugt); color: #fff; }
.bi-tag--static    { position: static; }

.bi-stock { display: inline-flex; align-items: center; gap: .45em; font-size: .875rem; font-weight: 600; }
.bi-stock::before { content: ""; width: .6em; height: .6em; border-radius: 50%; background: currentColor; }
.bi-stock--in { color: var(--bi-ok); }
.bi-stock--low { color: var(--bi-danger); }
.bi-stock--out { color: var(--bi-danger); }
.bi-stock--order { color: #9A6100; }
.bi-stock--order::before { background: var(--bi-order); }
/* on the dark ground the greens and reds need more light */
body > .bi-main > :not(.bi-light) .bi-stock--in:not(.bi-card *):not(.bi-light *) { color: var(--bi-ok-light); }

.bi-deposit { border: 1px solid var(--s-line);; border-left: 3px solid var(--bi-accent);; padding: .85rem 1rem;; border-radius: var(--bi-radius);; font-size: .9375rem;; }
.bi-deposit strong { display: block; }

.bi-notice--error { background: rgba(192, 41, 41, .12); border-color: var(--bi-danger); }

.bi-warnbox { display: flex; gap: .7rem; align-items: flex-start; padding: .8rem .95rem; border-radius: var(--bi-radius); background: #FFF4DE; border: 1px solid #F3B54A; color: var(--bi-warn-ink); font-size: .875rem; }
.bi-warnbox svg { width: 20px; height: 20px; flex: none; color: #B47600; }
.bi-warnbox strong { display: block; color: #3A2800; }

.bi-form { display: grid; gap: .9rem; }
.bi-form label { display: grid;; gap: .35rem;; font-size: .875rem;; font-weight: 600;; }
.bi-form input, .bi-form textarea, .bi-form select { width: 100%;; min-height: 46px;; padding: .65em .9em;; font: inherit;; font-weight: 400;; border: 1px solid var(--s-line);; border-radius: var(--bi-radius);; }
.bi-form input::placeholder, .bi-form textarea::placeholder { color: var(--s-muted); opacity: .8; }
.bi-form input:focus, .bi-form textarea:focus, .bi-form select:focus { outline: 2px solid var(--bi-accent); outline-offset: -1px; border-color: var(--bi-accent); }
.bi-form textarea { min-height: 130px; resize: vertical; }
.bi-form__row { display: grid; gap: .9rem; grid-template-columns: 1fr 1fr; }
.bi-form .bi-btn { justify-self: start; }
.bi-form--card { padding: 1.25rem; border-radius: var(--bi-radius-lg); background: var(--bi-card); }
@media (max-width: 700px) { .bi-form__row { grid-template-columns: 1fr; } }

/* ==========================================================================
   5. Front page
   ========================================================================== */
.bi-hero {
  position: relative; color: #fff; overflow: hidden; background: var(--bi-bg);
  background-image:
    linear-gradient(90deg, rgb(16,22,25) 0, rgb(16,22,25) 300px, rgba(16,22,25,.6) 520px, rgba(16,22,25,.05) 760px, rgba(16,22,25,0) 100%),
    var(--hero, none);
  background-size: cover, auto 100%; background-position: center, calc(100% + var(--hero-x, 0px)) calc(50% + var(--hero-y, 0px)); background-repeat: no-repeat;
}
.bi-hero::before { content: ""; position: absolute; inset: 0; background: radial-gradient(60% 80% at calc(80% + var(--hero-lx, 0%)) calc(30% + var(--hero-ly, 0%)), rgba(0,185,214,calc(.14 + var(--hero-glow, 0))), transparent 70%); pointer-events: none; }
.bi-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: linear-gradient(90deg, var(--bi-accent), transparent 60%); }

.bi-hero h1 { color: #fff; font-size: clamp(2rem, 1.2rem + 2.6vw, 3.4rem); line-height: 1.08; letter-spacing: -.02em; margin-bottom: 1.4rem; }
.bi-hero h1 span { color: var(--bi-accent); font-weight: 600; display: block; }
.bi-hero__lead { color: var(--bi-muted); font-size: 1rem; max-width: 52ch; margin-bottom: 1.25rem; }
.bi-hero .bi-finder { box-shadow: 0 24px 60px rgba(0,0,0,.5); }

/* entry: the engine photo comes out of the dark once, then stays still (Adam 02.10) */

@media (prefers-reduced-motion: no-preference) {
  
  /* headline stays visible from the first frame (LCP on mobile); only the finder slides in (Adam 02.10) */
  .bi-hero__copy > .bi-finder { animation: bi-rise .7s var(--bi-ease) both; animation-delay: .5s; }
  @keyframes bi-veil { from { opacity: 1; } to { opacity: 0; } }
  @keyframes bi-rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
}
@media (max-width: 980px) {
  /* mobile: the photo sits under the finder at a size that shows the whole engine (Adam 02.10) */
  .bi-hero { background-size: cover, auto 360px; background-position: center, 70% 100%; background-image: linear-gradient(180deg, rgb(16,22,25) 0, rgb(16,22,25) calc(100% - 380px), rgba(16,22,25,.35) calc(100% - 230px), rgba(16,22,25,0) 100%), var(--hero, none); }
  
  /* the hero has its own finder: the always-open header search bar would push it below the fold */
  .bi-searchbar.is-fixed { display: none; }
  .bi-searchbar.is-fixed.is-mob-open { display: block; }
  
  .bi-hero h1 { margin-bottom: 1rem; }
}

/* --- vehicle finder (the white search box) ------------------------------- */
.bi-finder { background: var(--bi-card); color: var(--bi-card-text); border-radius: var(--bi-radius-lg); overflow: hidden; }
.bi-finder__tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); background: var(--bi-card-alt); }
.bi-finder__tab { padding: .9em .4em; border: 0; background: transparent; cursor: pointer; font: inherit; font-size: .875rem; font-weight: 600; color: var(--bi-card-muted); border-bottom: 3px solid transparent;  transition: color .2s var(--bi-ease), border-color .2s var(--bi-ease), background-color .2s var(--bi-ease); }
.bi-finder__tab:hover { color: var(--bi-card-text); }
.bi-finder__tab.is-active { background: #fff; color: var(--bi-card-text); border-bottom-color: var(--bi-accent); }
.bi-finder__panel { display: none; padding: 1.1rem 1.1rem 1rem; }
.bi-finder__panel.is-active { display: block; }
@media (prefers-reduced-motion: no-preference) { .bi-finder__panel.is-active { animation: bi-fade .2s var(--bi-ease) both; } }
@keyframes bi-fade { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.bi-finder__row { display: flex; gap: .6rem; align-items: stretch; }
.bi-finder__row > :not(.bi-btn):not(.bi-plate) { flex: 1; min-width: 0; }
.bi-finder__row .bi-btn { min-height: 52px; padding-inline: 1.5em; }
.bi-finder__panel input[type="text"], .bi-finder__panel input[type="search"], .bi-finder__panel select { width: 100%; min-height: 52px; padding: .7em 1em; font: inherit; font-size: 1rem; border: 1px solid var(--bi-card-line); border-radius: var(--bi-radius); background: #fff; color: var(--bi-card-text); }
.bi-finder__panel input:focus, .bi-finder__panel select:focus { outline: 2px solid var(--bi-accent); outline-offset: -1px; }
.bi-finder__selects { display: grid; grid-template-columns: 1fr 1fr; gap: .5rem; margin-bottom: .75rem; }
.bi-finder__hint { margin: .8rem 0 0; font-size: .8125rem; color: var(--bi-card-muted); }

@media (max-width: 480px) {
  .bi-finder__tabs { grid-template-columns: 1fr 1fr; }
  .bi-finder__row { flex-wrap: wrap; }
  .bi-finder__row .bi-btn { width: 100%; }
}

/* Danish plate: white field, neutral frame (red looked like an error, Adam 02.10), blue EU/DK strip, black characters */
.bi-plate { display: flex; align-items: stretch; flex: 1; min-height: 52px; border: 2px solid #C9D1D6; border-radius: var(--bi-radius-sm); overflow: hidden; background: #fff; }
.bi-plate__country { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; padding: 0 .6em; background: #003399; color: #fff; font-weight: 800; font-size: .7rem; line-height: 1; letter-spacing: .02em; }
.bi-plate__country svg { display: block; }
.bi-plate input { border: 0 !important; border-radius: 0 !important; font-family: var(--bi-font-head); font-size: 1.35rem; font-weight: 700; letter-spacing: .08em; color: #111 !important; text-transform: uppercase; }
.bi-plate input:focus { outline: 2px solid var(--bi-accent); outline-offset: -2px; }

/* finder results (AI lookup, finder-api.php) */
.bi-finder__result { margin-top: .75rem; padding: 1rem; background: var(--bi-card); border-radius: var(--bi-radius); box-shadow: var(--bi-shadow-sm); }

  

  

/* --- stats strip ---------------------------------------------------------- */
.bi-stats { background: var(--bi-bg); border-bottom: 1px solid var(--bi-line); }
.bi-stats__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.bi-stat { display: flex; align-items: center; gap: .9rem; padding: 1.25rem 1.5rem; border-left: 1px solid var(--bi-line); }
.bi-stat:first-child { border-left: 0; padding-left: 0; }
.bi-stat__icon { flex: none; width: 44px; height: 44px; display: grid; place-items: center; border-radius: var(--bi-radius); background: var(--bi-panel); color: var(--bi-accent); }
.bi-stat__icon svg { width: 24px; height: 24px; }
.bi-stat__text { display: grid; gap: .05rem; }
.bi-stat strong { font-family: var(--bi-font-head);; line-height: 1.1;; font-variant-numeric: tabular-nums;; letter-spacing: -.01em;; color: #fff;; }
.bi-stat span { font-size: .8125rem; color: var(--bi-muted); }
@media (max-width: 980px) {
  .bi-stats__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bi-stat { padding: 1rem .75rem; }
  .bi-stat:nth-child(odd) { border-left: 0; padding-left: 0; }
  .bi-stat:nth-child(n/**/+3) { border-top: 1px solid var(--bi-line); }
}

/* --- sections ------------------------------------------------------------- */

.bi-section--alt { border-top: 1px solid var(--bi-line);; border-bottom: 1px solid var(--bi-line);; }

.bi-section__head { display: flex;; align-items: flex-end;; justify-content: space-between;; gap: 1rem;; flex-wrap: wrap;; }
.bi-section__head h2 { margin: 0; color: #fff; }
.bi-section__head p { margin: .35rem 0 0; color: var(--bi-muted); }
@media (max-width: 700px) { .bi-section { padding-block: 2.5rem; } }

/* condition filter chips (Alle / Brugt / Renoveret / Ny) */
.bi-filterchips { display: inline-flex; gap: .35rem; padding: .25rem; background: var(--bi-panel); border-radius: var(--bi-radius-pill); }
.bi-filterchips button { min-height: 36px; padding: .35em 1em; border: 0; border-radius: var(--bi-radius-pill); background: transparent; color: var(--bi-muted); font: inherit; font-size: .875rem; font-weight: 600; cursor: pointer; transition: background-color .18s var(--bi-ease), color .18s var(--bi-ease); }
.bi-filterchips button:hover { color: #fff; }
.bi-filterchips button.is-active { background: var(--bi-accent); color: var(--bi-accent-ink); }

/* --- category tiles ------------------------------------------------------- */
 /* 6 per row (Adam 25.09: smaller tiles) */

/* --- brands --------------------------------------------------------------- */
.bi-brands { list-style: none; margin: 0; padding: 0; display: grid; gap: .75rem; grid-template-columns: repeat(8, minmax(0, 1fr)); }
.bi-brands a { display: grid;; grid-template-columns: 1fr;; justify-items: center;; gap: .4rem;; padding: 1.1rem .75rem 1rem;; text-align: center;; color: var(--bi-text);; border: 1px solid var(--bi-line);; border-radius: var(--bi-radius-lg);; text-decoration: none;; transition: border-color .2s var(--bi-ease), transform .2s var(--bi-ease), background-color .2s var(--bi-ease);; }
.bi-brands a:hover { border-color: var(--bi-accent); background: var(--bi-panel-2); transform: translateY(-2px); text-decoration: none; }
.bi-brands__mark { display: grid;; place-items: center;; width: 100%;; border-radius: 10px;; padding: .3rem .6rem;; } /* light grey plate (Adam 25.09): colour logos readable, less glare than white */
.bi-brands__logo { width: auto;; height: auto;; object-fit: contain;; }

.bi-brands__word { font-family: var(--bi-font-head);; font-weight: 700;; letter-spacing: .1em;; font-size: .9rem;; }
.bi-brands strong { font-size: .875rem; font-weight: 600; white-space: normal; }
.bi-brands__count { font-size: .75rem; color: var(--bi-muted); }
@media (max-width: 980px) { .bi-brands { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 640px) { .bi-brands { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem; } .bi-brands a { padding: .8rem .4rem; } }

/* --- newest products (WooCommerce loop inside .bi-newest) ------------------ */
.bi-newest ul.products, .woocommerce .bi-newest ul.products { grid-template-columns: repeat(6, minmax(0, 1fr)) !important; gap: .75rem !important; margin-top: 0 !important; }
@media (max-width: 1200px) { .bi-newest ul.products, .woocommerce .bi-newest ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; } }
@media (max-width: 1000px) { .bi-newest ul.products, .woocommerce .bi-newest ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }
@media (max-width: 380px) { .bi-newest ul.products, .woocommerce .bi-newest ul.products { grid-template-columns: 1fr !important; } }

/* --- expert help band ----------------------------------------------------- */
.bi-band { position: relative; overflow: hidden; background: var(--bi-panel); border-top: 1px solid var(--bi-line); border-bottom: 1px solid var(--bi-line); color: #fff; }
.bi-band::before { content: ""; position: absolute; inset: 0; background: radial-gradient(50% 120% at 100% 50%, rgba(0,185,214,.16), transparent 70%); pointer-events: none; }
.bi-band__grid { position: relative; display: grid; gap: 2.5rem; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); padding-block: 3.25rem; align-items: center; }
.bi-band h2 { color: #fff; font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.2rem); margin-bottom: .6rem; }
.bi-band p { color: var(--bi-muted); max-width: 52ch; }
@media (max-width: 980px) { .bi-band__grid { grid-template-columns: 1fr; padding-block: 2.5rem; } }

.bi-page__credit { position: absolute; right: 1rem; bottom: .5rem; margin: 0; font-size: .6875rem; color: rgba(255,255,255,.55); letter-spacing: .02em; z-index: 1; }

/* --- trust strip (4 white tiles) ------------------------------------------ */

/* --- guide cards on the front page ---------------------------------------- */
.bi-help { display: grid; gap: 1rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bi-help__box { display: grid; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto 1fr; padding: 0; overflow: hidden; border-radius: var(--bi-radius-lg); }
.bi-help__media { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; }
.bi-help__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .35s var(--bi-ease); }
.bi-help__box:hover .bi-help__media img { transform: scale(1.03); }
.bi-help__body { padding: 1rem 1.1rem 1.2rem; display: grid; align-content: start; gap: .35rem; }
.bi-help__box h3 { margin: 0; font-size: 1.05rem; }
.bi-help__box p { margin: 0;; font-size: .875rem;; }
.bi-help__box .bi-link { margin-top: .25rem; }

@media (max-width: 980px) { .bi-help { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .bi-help { grid-template-columns: minmax(0, 1fr); } }


/* ==========================================================================
   6. Shop: listing, product cards, toolbar, chips
   ========================================================================== */
.bi-shop { padding-block: 1.5rem 3rem; }
.bi-shop .woocommerce-breadcrumb, .bi-breadcrumb { font-size: .8125rem; color: var(--bi-muted); margin-bottom: .75rem; }
.bi-shop .woocommerce-breadcrumb a, .bi-breadcrumb a { color: var(--bi-muted); }
.bi-shop .woocommerce-breadcrumb a:hover, .bi-breadcrumb a:hover { color: var(--bi-accent); }
.bi-shop .woocommerce-products-header { margin-bottom: 1rem; }
.bi-shop .woocommerce-products-header__title, .bi-shop h1.page-title { color: #fff; margin-bottom: .25rem; }
.bi-shop .term-description { color: var(--bi-muted); max-width: 70ch; }
.bi-shop .woocommerce-result-count { color: var(--bi-muted); font-size: .875rem; float: none; margin: 0; }
.bi-shop .woocommerce-ordering { float: none; margin: 0; }
.bi-shop .woocommerce-notices-wrapper:empty { display: none; }

.bi-shop select, .woocommerce-ordering select { min-height: 42px; padding: .5em 2.2em .5em .9em; border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius); font: inherit; font-size: .875rem; background: var(--bi-panel) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A6B3BC' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right .7em center / 16px no-repeat; color: var(--bi-text); -webkit-appearance: none; appearance: none; }

ul.products, .woocommerce ul.products, .woocommerce-page ul.products, .bi-shop ul.products {
  display: grid !important; gap: .75rem; margin: 1.25rem 0 0; padding: 0; list-style: none;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); /* 4 per row next to the filter column (Adam 25.09: smaller cards) */
}
.woocommerce ul.products li.product, .bi-shop ul.products li.product { float: none !important; width: auto !important; margin: 0 !important; clear: none !important; }
.woocommerce ul.products::before, .woocommerce ul.products::after { content: none !important; }
@media (max-width: 640px) { ul.products, .woocommerce ul.products, .bi-shop ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; } }
@media (max-width: 380px) { ul.products, .woocommerce ul.products, .bi-shop ul.products { grid-template-columns: 1fr; } }

/* product card: white, photo on white, condition badge, code, price + deposit, stock, CTA */
.bi-card { display: flex;; flex-direction: column;; overflow: hidden;; border-radius: var(--bi-radius-lg);; transition: transform .2s var(--bi-ease), box-shadow .2s var(--bi-ease);; }
.bi-card:hover { transform: translateY(-4px);; }
.bi-card__link { display: block; color: inherit; text-decoration: none; }
.bi-card__link:hover { text-decoration: none; }
.bi-card__media { position: relative;; overflow: hidden;; }
.bi-card__media img { position: absolute;; inset: 0;; width: 100%;; height: 100%;; } /* absolute so photo and data cards get the same box height */
.bi-card__body { padding: .5rem .9rem .3rem; }
.bi-card__brand { display: block; font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; color: var(--bi-card-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bi-card__title { font-family: var(--bi-font-head);; line-height: 1.25;; margin: .15rem 0 .4rem;; color: var(--bi-card-text);; display: -webkit-box;; -webkit-line-clamp: 2;; -webkit-box-orient: vertical;; overflow: hidden;; } /* 2 lines max (Adam 25.09: cards too tall) */
.bi-card__specs { list-style: none; margin: 0; padding: 0; display: grid; gap: .15rem; font-size: .8125rem; }
.bi-card__specs li { display: flex; justify-content: space-between; gap: .5rem; }
.bi-card__specs li:nth-child(n/**/+3) { display: none; } /* 2 spec rows max so cards in a row stay the same height */
.bi-card__specs span { color: var(--bi-card-muted); }
.bi-card__specs strong { font-weight: 600; font-family: var(--bi-font-code); }
.bi-card__foot { margin-top: auto; padding: .4rem .9rem .75rem; display: grid; gap: .35rem; }
.bi-card__price { display: grid; gap: .05rem; }
.bi-card__price .price, .bi-card__price ins { font-family: var(--bi-font-head); font-size: 1.15rem; font-weight: 700; color: var(--bi-card-text); text-decoration: none; }
.bi-card__price del { font-size: .875rem; color: var(--bi-card-muted); font-weight: 400; }
.bi-card__vat { font-size: .75rem; color: var(--bi-card-muted); }
.bi-card__deposit { font-size: .75rem; color: var(--bi-card-muted); }
.bi-card .bi-btn { min-height: 38px; }

/* placeholder / data card when a product has no photo */
.bi-card__media .woocommerce-placeholder { opacity: .35;; }
.bi-datacard { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .15rem; padding: 1rem; text-align: center; background: radial-gradient(120% 90% at 50% 0%, #1B2A31 0%, var(--bi-bg) 70%); color: #fff; overflow: hidden; }
.bi-datacard::before { content: ""; position: absolute; inset: 0; background-image: repeating-linear-gradient(90deg, rgba(255,255,255,.05) 0 1px, transparent 1px 34px), repeating-linear-gradient(0deg, rgba(255,255,255,.05) 0 1px, transparent 1px 34px); }
.bi-datacard > * { position: relative; }
.bi-datacard__type { font-size: .6875rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--bi-accent); }
.bi-datacard__code { font-family: var(--bi-font-head); font-size: clamp(1.4rem, 1rem + 2vw, 2rem); font-weight: 700; line-height: 1.1; letter-spacing: .02em; word-break: break-word; }
.bi-datacard__code--brand { font-size: 1.4rem; }
.bi-datacard__label { font-size: .625rem; letter-spacing: .16em; text-transform: uppercase; color: #7E8C95; }
.bi-datacard__note { margin-top: .6rem; padding: .2em .7em; font-size: .6875rem; color: #B9C2C8; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; }
.bi-datacard--photo { background-size: cover; background-position: center; }
.bi-datacard--photo::before { background-image: linear-gradient(180deg, rgba(16,22,25,.35) 0%, rgba(16,22,25,.55) 55%, rgba(16,22,25,.85) 100%); }
.bi-datacard--photo .bi-datacard__code { text-shadow: 0 2px 10px rgba(0,0,0,.6); }

/* workshop strip above listings */
.bi-mount-strip { width: 100%; clear: both; margin: .75rem 0 0; padding: .7rem 1rem; border-radius: var(--bi-radius); background: var(--bi-panel); border: 1px solid var(--bi-line); font-size: .875rem; color: var(--bi-text); }
.bi-mount-strip a { color: var(--bi-accent); font-weight: 600; }

/* category chips above search / brand results */
.bi-chips { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; width: 100%; margin: 1rem 0 0; clear: both; }
.bi-chips__label { font-size: .8125rem; color: var(--bi-muted); margin-right: .25rem; }
.bi-chip { display: inline-flex; align-items: center; gap: .35rem; min-height: 36px; padding: .35rem .8rem; border: 1px solid var(--bi-line-strong); border-radius: 999px; background: var(--bi-panel); font-size: .8125rem; font-weight: 600; color: var(--bi-text); line-height: 1.2; }
.bi-chip span { color: var(--bi-muted); font-weight: 500; font-variant-numeric: tabular-nums; }
.bi-chip:hover { border-color: var(--bi-accent); text-decoration: none; }
.bi-chip--active { background: var(--bi-accent); border-color: var(--bi-accent); color: var(--bi-accent-ink); }
.bi-chip--active span { color: var(--bi-accent-ink); opacity: .8; }
.bi-chip b { font-weight: 700; margin-left: .1rem; }
.bi-chips + ul.products { margin-top: 1rem; }

/* pagination */
.woocommerce nav.woocommerce-pagination ul, .bi-shop .woocommerce-pagination ul { display: flex; justify-content: center; gap: .35rem; list-style: none; margin: 2rem 0 0; padding: 0; border: 0; }
.woocommerce nav.woocommerce-pagination ul li { border: 0; margin: 0; float: none; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { display: grid; place-items: center; min-width: 40px; height: 40px; padding: 0 .6em; border-radius: var(--bi-radius); background: var(--bi-panel); color: var(--bi-text); font-weight: 600; }
.woocommerce nav.woocommerce-pagination ul li a:hover { background: var(--bi-panel-2); color: var(--bi-accent); }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--bi-accent); color: var(--bi-accent-ink); }

/* WooCommerce notices on the dark ground */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner { background: var(--bi-panel) !important; color: var(--bi-text) !important; border: 1px solid var(--bi-line-strong) !important; border-left: 4px solid var(--bi-accent) !important; border-radius: var(--bi-radius) !important; padding: .9rem 1rem !important; margin: 0 0 1rem !important; list-style: none; }
.woocommerce-error { border-left-color: var(--bi-danger) !important; }
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { display: none !important; }
.woocommerce-message .button, .woocommerce-info .button { float: right; background: var(--bi-accent); color: var(--bi-accent-ink); border-radius: var(--bi-radius); padding: .4em 1em; font-weight: 700; }

/* ==========================================================================
   7. Single product: white gallery + white buying panel on the dark ground
   ========================================================================== */
.bi-product { display: grid; gap: 1.5rem; padding-block: .5rem 1rem; grid-template-columns: minmax(0, 55fr) minmax(0, 45fr); align-items: start; }
.bi-product__media { border-radius: var(--bi-radius-lg); overflow: hidden; min-width: 0; max-width: 100%; } /* 12.10.2026 audyt 09 BUG-02: flexslider wrapper (n×slajd) rozpychał track gridu na mobile */
.bi-product__media .woocommerce-product-gallery { max-width: 100%; }
.bi-product__media .woocommerce-product-gallery { position: relative; padding: .75rem .75rem .75rem calc(76px + 1.4rem); }
.bi-product__media .woocommerce-product-gallery__image img { width: 100%; height: auto; border-radius: var(--bi-radius); }
.bi-product__media .woocommerce-product-gallery .flex-control-thumbs { position: absolute; left: .75rem; top: .75rem; width: 76px; list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr; align-content: start; gap: .4rem; }
.bi-product__media .woocommerce-product-gallery .flex-control-thumbs li { margin: 0 !important; width: 100% !important; float: none !important; }
.bi-product__media .flex-control-thumbs li img { width: 100%; height: auto; }
.bi-product__media .flex-control-thumbs img { border-radius: var(--bi-radius-sm); cursor: pointer; opacity: .7; border: 2px solid transparent; }
.bi-product__media .flex-control-thumbs img:hover, .bi-product__media .flex-control-thumbs .flex-active { opacity: 1; border-color: var(--bi-accent); }
.bi-product__media .woocommerce-product-gallery__trigger { z-index: 2; }
.bi-product__media .bi-datacard { position: relative; aspect-ratio: 4 / 3; }
@media (max-width: 600px) {
  .bi-product__media .woocommerce-product-gallery { padding-left: .75rem; }
  .bi-product__media .woocommerce-product-gallery .flex-control-thumbs { position: static; width: auto; margin-top: .5rem; grid-template-columns: repeat(auto-fill, minmax(56px, 1fr)); }
}

.bi-product__buy { background: var(--bi-card); color: var(--bi-card-text); border-radius: var(--bi-radius-lg); padding: 1.5rem; }
.bi-product__buy .bi-eyebrow { color: var(--bi-card-muted); }

.bi-product__title { font-size: clamp(1.3rem, 1rem + 1vw, 1.8rem); margin: .1rem 0 .8rem; color: var(--bi-card-text); overflow-wrap: anywhere; }

.bi-product__vat { font-size: .875rem; color: var(--bi-card-muted); }
.bi-product__stock { margin: .9rem 0; }
.bi-product__delivery { font-weight: 400; color: var(--bi-card-muted); font-size: .875rem; }

.bi-product__code { margin: .9rem 0 0; font-size: .875rem; color: var(--bi-card-muted); display: flex; gap: .4rem; flex-wrap: wrap; }
.bi-product__code strong { font-family: var(--bi-font-code);; letter-spacing: .04em;; }

.bi-product form.cart { display: flex; gap: .5rem; align-items: stretch; margin: 0 0 .5rem; }
.bi-product form.cart .quantity input { width: 4.5rem; min-height: 48px; padding: .7em .5em; text-align: center; font: inherit; border: 1px solid var(--bi-card-line); border-radius: var(--bi-radius); }
.bi-product button.single_add_to_cart_button, .woocommerce .bi-product button.single_add_to_cart_button { flex: 1; min-height: 48px; background: var(--bi-accent) !important; color: var(--bi-accent-ink) !important; border: 0; border-radius: var(--bi-radius); padding: .85em 1.4em; font: inherit; font-weight: 700; cursor: pointer; }
.bi-product button.single_add_to_cart_button:hover, .woocommerce .bi-product button.single_add_to_cart_button:hover { background: var(--bi-accent-hover) !important; }
.bi-mount { margin-top: 1rem; padding: .85rem 1rem; border: 1px solid var(--bi-card-line); border-left: 3px solid var(--bi-accent); border-radius: var(--bi-radius); background: var(--bi-card-alt); font-size: .9375rem; }
.bi-mount strong { display: block; margin-bottom: .2rem; }
.bi-mount p { margin: .25rem 0 0; }
.bi-mount__links { display: flex; flex-wrap: wrap; gap: .5rem 1rem; align-items: center; margin-top: .6rem !important; }
.bi-mount__links .bi-btn { min-height: 38px; padding: .45em 1em; font-size: .875rem; }
.bi-mount__links a:not(.bi-btn) { color: #007B91; font-weight: 600; }

/* tabs */
.bi-product__detail { grid-column: 1 / -1; background: var(--bi-card); color: var(--bi-card-text); border-radius: var(--bi-radius-lg); padding: 0 1.5rem 1.5rem; }
.bi-product__detail .woocommerce-tabs ul.tabs { list-style: none;; display: flex;; flex-wrap: wrap;; gap: .25rem;; margin: 0 -1.5rem 1.25rem;; padding: 0 1rem;; border-radius: var(--bi-radius-lg) var(--bi-radius-lg) 0 0;; }
.bi-product__detail .woocommerce-tabs ul.tabs li { margin: 0; }
.bi-product__detail .woocommerce-tabs ul.tabs a { display: block;; padding: .9em 1em;; font-weight: 600;; font-size: .9375rem;; border-bottom: 3px solid transparent;; }
.bi-product__detail .woocommerce-tabs ul.tabs a:hover { color: var(--bi-card-text); text-decoration: none; }
.bi-product__detail .woocommerce-tabs ul.tabs li.active a { color: var(--bi-card-text); border-bottom-color: var(--bi-accent); }
.bi-product__detail .panel > h2:first-child { display: none; }
.bi-product__detail h2 { font-size: 1.1rem; margin-top: 1.5rem; }
.bi-product__detail h2:first-of-type { margin-top: 0; }
.bi-product__detail ul { padding-left: 1.1rem; }
.bi-product__detail p, .bi-product__detail li { font-size: .9375rem; }
.bi-product__detail a { color: #007B91; }
@media (max-width: 900px) { .bi-product { grid-template-columns: minmax(0, 1fr); } .bi-product__buy { padding: 1.1rem; } .bi-product__detail { padding-inline: 1rem; } .bi-product__detail .woocommerce-tabs ul.tabs { margin-inline: -1rem; } }

/* spec table: follows the surface it sits on */
.bi-specs { width: 100%; border-collapse: collapse; margin: 1rem 0; }
.bi-specs th, .bi-specs td { text-align: left; padding: .6em .8em; border-bottom: 1px solid var(--s-line); font-size: .9375rem; vertical-align: top; }
.bi-specs th { width: 40%;; font-weight: 500;; }

.bi-fits { columns: 2; column-gap: 2rem; margin: 0 0 1rem; padding-left: 1.1rem; font-size: .9rem; }
.bi-fits li { break-inside: avoid; margin: 0 0 .2rem; }
@media (max-width: 640px) { .bi-fits { columns: 1; } }
.bi-logos { display: flex; flex-wrap: wrap; gap: .6rem; }
.bi-logos span { padding: .5rem 1rem; border: 1px solid var(--s-line); border-radius: var(--bi-radius); background: var(--s-bg); font-weight: 700; letter-spacing: .02em; color: var(--s-text); font-family: var(--bi-font-code); }

/* ==========================================================================
   8. Information pages (components authored in page content)
   ========================================================================== */
.bi-page__head { position: relative; padding-block: 3rem 2.5rem; background: var(--bi-panel); border-bottom: 1px solid var(--bi-line); overflow: hidden; }
.bi-page__head::before { content: ""; position: absolute; inset: 0; background: radial-gradient(50% 100% at 100% 50%, rgba(0,185,214,.14), transparent 70%); pointer-events: none; }
.bi-page__head .bi-container { position: relative; }
.bi-page__head h1 { margin: 0 0 .35rem; color: #fff; }
.bi-page__lead { margin: 0; color: var(--bi-muted); max-width: 62ch; font-size: 1.0625rem; }
.bi-page__head--image { color: #fff; border: 0; padding-block: 4rem 3.5rem; background: linear-gradient(90deg, rgba(16,22,25,.94) 0%, rgba(16,22,25,.8) 50%, rgba(16,22,25,.35) 100%), var(--page-img) var(--page-pos, center) / var(--page-size, cover) no-repeat, var(--bi-bg); }
@media (max-width: 760px) { .bi-page__head--image { --page-size: cover; } }
.bi-page__head--image::before { content: none; }
.bi-page__body { padding-block: 2rem 3rem; display: grid; gap: 1.5rem; grid-template-columns: minmax(0, 1fr); }
.bi-page__body > * { min-width: 0; }
.bi-page__body > p { max-width: 860px; margin: 0; }
.bi-page__body > h2 { margin: .75rem 0 0; color: #fff; }
.bi-page__body > h3 { color: #fff; }
.bi-page__body > ul, .bi-page__body > ol { max-width: 860px; margin: 0; padding-left: 1.2rem; }
.bi-page__body a { color: var(--bi-accent); }
.bi-page__body .bi-btn--primary, .bi-page__body .bi-btn--primary:hover { color: var(--bi-accent-ink); }
.bi-page__body figure { margin: 0; max-width: 560px; }
.bi-page__body figure img { width: 100%; height: auto; border-radius: var(--bi-radius-lg); background: #fff; }
.bi-page__body figcaption { margin-top: .5rem; font-size: .875rem; color: var(--bi-muted); max-width: 68ch; }
.bi-page__body table { display: table; width: 100%; max-width: 860px; border-collapse: collapse; }
.bi-page__body th, .bi-page__body td { padding: .55rem .75rem; border-bottom: 1px solid var(--s-line); text-align: left; vertical-align: top; }
.bi-page__body thead th { font-size: .8rem; letter-spacing: .03em; color: var(--s-muted); }
@media (max-width: 640px) { .bi-page__body table { display: block; overflow-x: auto; } }
.bi-page__body .wp-block-heading { color: #fff; }

.bi-tiles { display: grid; gap: .9rem; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); }
.bi-tile { display: grid; grid-template-columns: 44px 1fr; gap: .9rem; align-items: start; padding: 1.1rem; background: var(--bi-card); border-radius: var(--bi-radius-lg); }
.bi-tile svg { width: 44px; height: 44px; padding: 10px; border-radius: var(--bi-radius); background: var(--bi-card-alt); color: var(--bi-card-text); }
.bi-tile strong { display: block; font-family: var(--bi-font-head); font-size: .95rem; }
.bi-tile span { font-size: .8125rem; color: var(--bi-card-muted); }

.bi-check { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; max-width: 62ch; }
.bi-check li { position: relative; padding-left: 1.8em; }
.bi-check li::before { content: "✓"; position: absolute; left: 0; top: .1em; width: 1.25em; height: 1.25em; border-radius: 50%; display: grid; place-items: center; font-size: .75em; font-weight: 700; background: var(--bi-accent); color: var(--bi-accent-ink); }
.bi-check--warn li::before { background: var(--bi-warn); color: var(--bi-warn-ink); content: "!"; }

.bi-split { display: grid; gap: 1.5rem; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: start; }
.bi-split > * { min-width: 0; }
.bi-split img { width: 100%; height: auto; border-radius: var(--bi-radius-lg); }
.bi-split > div > h2:first-child { color: #fff; margin-top: 0; }
.bi-panel { padding: 1.5rem; background: var(--bi-card); color: var(--bi-card-text); border-radius: var(--bi-radius-lg); }
.bi-panel h2 { margin-top: 0; color: var(--bi-card-text); font-size: 1.3rem; }
.bi-panel a { color: #007B91; }
.bi-panel--dark { background: var(--bi-panel); color: var(--bi-text); border: 1px solid var(--bi-line-strong); }
.bi-panel--dark h2 { color: #fff; }
.bi-panel--dark a { color: var(--bi-accent); }
.bi-panel--dark .bi-text-muted { color: var(--bi-muted); }
@media (max-width: 800px) { .bi-split { grid-template-columns: 1fr; } }

.bi-contact { list-style: none; margin: 0; padding: 0; display: grid; gap: 1rem; }
.bi-contact li { display: grid; grid-template-columns: 40px 1fr; gap: .9rem; align-items: start; }
.bi-contact svg { width: 40px; height: 40px; padding: 9px; border-radius: var(--bi-radius); background: var(--bi-card-alt); color: var(--bi-card-text); }
.bi-panel--dark .bi-contact svg { background: var(--bi-panel-2); color: var(--bi-accent); }
.bi-contact strong { display: block; }
.bi-contact span { font-size: .875rem; color: var(--s-muted); }

.bi-guides { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); }
.bi-guides > * { min-width: 0; }
.bi-guide { display: grid;; grid-template-columns: minmax(0, 1fr);; align-content: start;; border-radius: var(--bi-radius-lg);; overflow: hidden;; text-decoration: none;; transition: transform .2s var(--bi-ease), box-shadow .2s var(--bi-ease);; }
a.bi-guide:hover { transform: translateY(-4px); box-shadow: var(--bi-shadow), 0 0 0 1px var(--bi-accent); text-decoration: none; }
.bi-guide__media { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: linear-gradient(160deg, #16232A, var(--bi-bg)); display: grid; place-items: center; color: var(--bi-accent); }
.bi-guide__media:has(img) { background: #0B1013; } /* 15.10: no white flash before lazy image loads */
.bi-guide__media svg { width: 42px; height: 42px; }
.bi-guide__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .35s var(--bi-ease); }
a.bi-guide:hover .bi-guide__media img { transform: scale(1.04); }
.bi-guide__body { padding: 1rem 1.1rem 1.2rem; display: grid; gap: .35rem; }
.bi-guide__body h3 { margin: 0;; font-size: 1rem;; }
.bi-guide__body p { margin: 0;; font-size: .875rem;; }

.bi-steps { list-style: none; margin: 0; padding: 0; display: grid; gap: .9rem; max-width: 62ch; counter-reset: step; }
.bi-steps li { position: relative; padding-left: 2.8rem; counter-increment: step; }
.bi-steps li::before { content: counter(step); position: absolute; left: 0; top: -.1rem; width: 2rem; height: 2rem; border-radius: 50%; display: grid; place-items: center; background: var(--bi-accent); color: var(--bi-accent-ink); font-family: var(--bi-font-head); font-weight: 700; font-size: .9rem; }

.bi-map { grid-column: 1 / -1; width: 100%; }
.bi-map__frame { width: 100%; height: 420px; border-radius: var(--bi-radius-lg); overflow: hidden; border: 1px solid var(--bi-line-strong); background: var(--bi-panel); }
.bi-map__frame iframe { display: block; width: 100%; height: 100%; border: 0; filter: grayscale(.2); }
@media (max-width: 720px) { .bi-map__frame { height: 300px; } }

/* --- light content panel for WooCommerce block pages (cart, checkout, account) --- */
.bi-lightpanel { border-radius: var(--bi-radius-lg);; padding: 1.5rem;; }
.bi-lightpanel a { color: #007B91; }
.bi-lightpanel h2, .bi-lightpanel h3 { color: var(--bi-card-text); }
@media (max-width: 640px) { .bi-lightpanel { padding: 1rem; border-radius: var(--bi-radius); } }

/* WooCommerce blocks (cart / checkout) inside the light panel */
.bi-lightpanel .wc-block-components-button:not(.is-link), .bi-lightpanel .wp-block-button__link, .bi-lightpanel .wc-block-cart__submit-button, .bi-lightpanel .wc-block-components-checkout-place-order-button { background: var(--bi-accent) !important; color: var(--bi-accent-ink) !important; border-radius: var(--bi-radius) !important; font-weight: 700 !important; border: 0 !important; }
.bi-lightpanel .wc-block-components-button:not(.is-link):hover, .bi-lightpanel .wc-block-cart__submit-button:hover, .bi-lightpanel .wc-block-components-checkout-place-order-button:hover { background: var(--bi-accent-hover) !important; }
.bi-lightpanel .wc-block-components-product-name, .bi-lightpanel .wc-block-components-totals-item__label, .bi-lightpanel .wc-block-components-totals-footer-item { color: var(--bi-card-text); }
.bi-lightpanel .wc-block-components-text-input input, .bi-lightpanel .wc-block-components-combobox input, .bi-lightpanel .wc-block-components-textarea textarea, .bi-lightpanel .wc-block-components-select select { border-radius: var(--bi-radius); }
.bi-lightpanel .wc-block-components-checkout-step__title, .bi-lightpanel .wc-block-components-title { font-family: var(--bi-font-head); }
.bi-lightpanel .wc-block-components-sidebar { background: var(--bi-card-alt); border-radius: var(--bi-radius-lg); padding: 1rem; }
.bi-lightpanel .wc-block-components-radio-control__option { border-radius: var(--bi-radius); }
.bi-lightpanel .wc-block-components-totals-item.wc-block-components-totals-fees { font-weight: 600; }
.bi-lightpanel .wc-block-components-totals-item.wc-block-components-totals-fees .wc-block-components-totals-item__label::before { content: ""; }
.bi-lightpanel .wc-block-components-notice-banner { background: #FFF4DE !important; color: var(--bi-warn-ink) !important; border: 1px solid var(--bi-warn) !important; border-left-width: 4px !important; }
.bi-lightpanel .wc-block-components-notice-banner.is-error { background: #FCEBEB !important; color: #5A1010 !important; border-color: var(--bi-danger) !important; }
.bi-lightpanel .wc-block-checkout__terms a { color: #007B91; }
.bi-lightpanel .wc-block-cart__empty-cart__title { color: var(--bi-card-text); }

/* classic WooCommerce pages: account, order received, forms */
.bi-lightpanel .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .25rem; }
.bi-lightpanel .woocommerce-MyAccount-navigation a { display: block; padding: .6rem .8rem; border-radius: var(--bi-radius); color: var(--bi-card-text); font-weight: 600; }
.bi-lightpanel .woocommerce-MyAccount-navigation li.is-active a, .bi-lightpanel .woocommerce-MyAccount-navigation a:hover { text-decoration: none;; }
.bi-lightpanel .woocommerce-MyAccount-navigation li.is-active a { border-left: 3px solid var(--bi-accent); }
.bi-lightpanel .woocommerce-MyAccount-content { min-width: 0; }
.bi-lightpanel .woocommerce-form-login, .bi-lightpanel .woocommerce-form-register, .bi-lightpanel .woocommerce-ResetPassword { max-width: 480px; border: 1px solid var(--bi-card-line); border-radius: var(--bi-radius-lg); padding: 1.25rem; }
.bi-lightpanel .woocommerce form .form-row { margin-bottom: .8rem; }
.bi-lightpanel .woocommerce form .form-row label { font-weight: 600; font-size: .875rem; }
.bi-lightpanel .woocommerce form .form-row .input-text, .bi-lightpanel .woocommerce form .form-row select, .bi-lightpanel .woocommerce-input-wrapper .input-text { width: 100%; min-height: 46px; padding: .6em .9em; font: inherit; border: 1px solid var(--bi-card-line); border-radius: var(--bi-radius); }
.bi-lightpanel .woocommerce .button, .bi-lightpanel .woocommerce button.button, .bi-lightpanel .woocommerce a.button, .bi-lightpanel .woocommerce input.button { background: var(--bi-accent); color: var(--bi-accent-ink); border-radius: var(--bi-radius); font-weight: 700; padding: .7em 1.3em; border: 0; }
.bi-lightpanel .woocommerce .button:hover { background: var(--bi-accent-hover); color: var(--bi-accent-ink); }
.bi-lightpanel .woocommerce table.shop_table { border: 0; border-collapse: collapse; }
.bi-lightpanel .woocommerce table.shop_table th, .bi-lightpanel .woocommerce table.shop_table td { border: 0; border-bottom: 1px solid var(--bi-card-line); padding: .7em .6em; }

.bi-lightpanel .woocommerce-error { border-left-color: var(--bi-danger) !important; }
.bi-lightpanel .woocommerce-thankyou-order-received { font-family: var(--bi-font-head); font-size: 1.4rem; font-weight: 700; }
.bi-lightpanel .woocommerce-order-overview { list-style: none; margin: 0 0 1.5rem; padding: 1rem; display: grid; gap: .5rem; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); background: var(--bi-card-alt); border-radius: var(--bi-radius-lg); }
.bi-lightpanel .woocommerce-order-overview li { font-size: .8125rem; color: var(--bi-card-muted); }
.bi-lightpanel .woocommerce-order-overview strong { display: block; color: var(--bi-card-text); font-size: 1rem; }

/* ==========================================================================
   9. Footer
   ========================================================================== */
.bi-footer { color: var(--bi-muted);; margin-top: 3.5rem;; border-top: 1px solid var(--bi-line);; }
.bi-footer a { color: var(--bi-muted); }
.bi-footer a:hover { color: #fff; }
.bi-footer__cols { display: grid; gap: 2rem; padding-block: 3rem 2rem; grid-template-columns: 1.4fr repeat(4, minmax(0, 1fr)); }
.bi-footer h3 { color: #fff; font-family: var(--bi-font-head); font-size: .9375rem; letter-spacing: .02em; margin-bottom: .8rem; }
.bi-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; font-size: .9375rem; }
.bi-footer__brand img { height: 52px; width: auto; margin-bottom: .9rem; }
.bi-footer__brand p { max-width: 34ch; font-size: .9375rem; }

.bi-footer__contact li { display: flex; gap: .6rem; align-items: flex-start; }
.bi-footer__contact svg { width: 18px; height: 18px; flex: none; color: var(--bi-accent); margin-top: .15rem; }

.bi-footer__legal { border-top: 1px solid var(--bi-line); padding-block: 1.25rem; font-size: .8125rem; display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.bi-footer__legal p { margin: 0; }
@media (max-width: 1000px) { .bi-footer__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); } .bi-footer__brand { grid-column: 1 / -1; } }
@media (max-width: 480px) { .bi-footer__cols { grid-template-columns: 1fr; gap: 1.5rem; padding-block: 2rem 1.5rem; } }

/* ==========================================================================
   10. Mobile bottom bar (phone + Find dele), spec section 6 / mockup
   ========================================================================== */
.bi-mobilebar { display: none; }
@media (max-width: 900px) {
  .bi-mobilebar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 85; display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; padding: .6rem var(--bi-gap) calc(.6rem + env(safe-area-inset-bottom)); background: rgba(16,22,25,.94); border-top: 1px solid var(--bi-line-strong); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
  .bi-mobilebar .bi-btn { min-height: 46px; }
  body.bi-has-mobilebar { padding-bottom: calc(66px + env(safe-area-inset-bottom)); }
  body.bi-has-mobilebar .bi-footer { margin-bottom: 0; }
}

/* ==========================================================================
   11. Generic fallback (search results, archives) and 404
   ========================================================================== */
.bi-archive { padding-block: 2rem; }
.bi-archive h1 { color: #fff; }
.bi-archive article { padding: 1rem 0; border-bottom: 1px solid var(--bi-line); }
.bi-archive article h2 a { color: #fff; }
.bi-404 { padding-block: 4rem; max-width: 720px; }
.bi-404 h1 { color: #fff; }
.bi-404 p { color: var(--bi-muted); }
.bi-404 .bi-search { margin: 1.5rem 0; }
.bi-404__links { display: flex; flex-wrap: wrap; gap: .5rem; }

/* reduced motion: keep values, drop the decoration */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
}

/* ==========================================================================
   12. Catalogue layout: filters sidebar (off-canvas on phones), toolbar, chips
   ========================================================================== */
.bi-shop__head { margin: .25rem 0 1.25rem; }
.bi-shop__head h1 { color: #fff; margin-bottom: .25rem; }

.bi-shop__desc p { margin: 0; }
.bi-catalog { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 1.5rem; align-items: start; }
.bi-catalog__main { min-width: 0; }
.bi-filters { position: sticky; top: 88px; background: var(--bi-panel); border: 1px solid var(--bi-line); border-radius: var(--bi-radius-lg); padding: 1rem 1.1rem 1.1rem; }
.bi-filters__head { display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding-bottom: .75rem; border-bottom: 1px solid var(--bi-line); margin-bottom: .5rem; }
.bi-filters__head strong { font-family: var(--bi-font-head); font-size: 1.05rem; color: #fff; }
.bi-filters__head a { font-size: .8125rem; color: var(--bi-accent); margin-left: auto; }
.bi-filters__close { display: none; width: 36px; height: 36px; place-items: center; border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius-sm); background: transparent; color: #fff; cursor: pointer; }
.bi-filters__close svg { width: 18px; height: 18px; }
.bi-filters__group { border: 0; margin: 0; padding: .8rem 0; border-bottom: 1px solid var(--bi-line); display: grid; gap: .4rem; min-width: 0; }
.bi-filters__group:last-of-type { border-bottom: 0; }
.bi-filters__group legend { font-weight: 700; font-size: .875rem; color: #fff; padding: 0; margin-bottom: .35rem; }
.bi-filters__opt { display: flex; align-items: center; gap: .55rem; min-height: 32px; font-size: .9rem; cursor: pointer; }
.bi-filters__opt input { width: 18px; height: 18px; margin: 0; accent-color: var(--bi-accent); }
.bi-filters__opt em { margin-left: auto; font-style: normal; font-size: .8125rem; color: var(--bi-muted); font-variant-numeric: tabular-nums; }
.bi-filters__opt--all span { color: var(--bi-muted); }
.bi-filters__select, .bi-filters__input, .bi-filters__range input { width: 100%; min-height: 42px; padding: .45em .8em; font: inherit; font-size: .9rem; border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius); background: var(--s-field); color: #fff; }
.bi-filters__select { -webkit-appearance: none; appearance: none; background: var(--s-field) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A6B3BC' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right .7em center / 16px no-repeat; padding-right: 2.2em; }
.bi-filters__select option { color: #111; background: #fff; }
.bi-filters__range { display: grid; grid-template-columns: 1fr auto 1fr; gap: .4rem; align-items: center; color: var(--bi-muted); }
.bi-filters__range input::-webkit-outer-spin-button, .bi-filters__range input::-webkit-inner-spin-button { -webkit-appearance: none; }
.bi-filters__hint { margin: .2rem 0 0; font-size: .75rem; color: var(--bi-muted); }
.bi-filters__actions { padding-top: 1rem; }
.bi-filters__backdrop { display: none; }

.bi-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: .75rem; }
.bi-toolbar__count { margin: 0; font-size: .875rem; color: var(--bi-muted); }
.bi-toolbar__mobile { display: none; gap: .5rem; }
.bi-toolbar .bi-btn--dark svg { width: 16px; height: 16px; }
.bi-active { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; margin: 0 0 1rem; }
.bi-active__reset { font-size: .8125rem; color: var(--bi-accent); margin-left: .25rem; }
.bi-catalog__main ul.products { margin-top: .5rem; }
.bi-catalog__main .bi-mount-strip { margin: 0 0 1rem; }

@media (max-width: 1100px) { .bi-catalog { grid-template-columns: 230px minmax(0, 1fr); gap: 1rem; } }
@media (max-width: 900px) {
  .bi-catalog { grid-template-columns: minmax(0, 1fr); }
  .bi-filters { position: fixed; inset: 0 auto 0 0; width: min(360px, 92vw); z-index: 110; overflow: auto; border-radius: 0; border: 0; transform: translateX(-100%); transition: transform .25s var(--bi-ease); padding-bottom: 6rem; }
  body.bi-filters-open .bi-filters { transform: none; }
  body.bi-filters-open { overflow: hidden; }
  .bi-filters__close { display: grid; }
  .bi-filters__backdrop { display: block; position: fixed; inset: 0; z-index: 105; background: rgba(0,0,0,.55); }
  .bi-filters__backdrop[hidden] { display: none; }
  .bi-filters__actions { position: sticky; bottom: 0; background: var(--bi-panel); padding: .75rem 0 .25rem; margin-top: .5rem; }
  .bi-toolbar__mobile { display: flex; width: 100%; }
  .bi-toolbar__mobile .bi-btn { flex: 1; }
  .bi-toolbar__sortbox { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .bi-toolbar__sortbox:focus-within { position: static; width: 100%; height: auto; clip: auto; overflow: visible; }
  .bi-toolbar__count { width: 100%; }
}

/* --- pasform box on the product page ------------------------------------- */
.bi-pasform { margin-top: 1rem; padding: 1rem; border: 1px solid var(--bi-card-line); border-radius: var(--bi-radius-lg); background: var(--bi-card-alt); }
.bi-pasform__title { font-size: 1.05rem; margin: 0 0 .6rem; }
.bi-pasform__tabs { display: inline-flex;; gap: .25rem;; padding: .2rem;; margin-bottom: .6rem;; border-radius: var(--bi-radius);; border: 1px solid var(--bi-card-line);; }
.bi-pasform__tabs button { min-height: 32px;; padding: .3em .9em;; border: 0;; border-radius: var(--bi-radius-sm);; background: transparent;; font: inherit;; font-size: .8125rem;; font-weight: 600;; cursor: pointer;; }

.bi-pasform__row { display: flex; gap: .5rem; margin-bottom: .6rem; }
.bi-pasform__row[hidden] { display: none; }
.bi-pasform__row .bi-plate { min-height: 46px; }
.bi-pasform__row .bi-plate input { font-size: 1.1rem; }
.bi-pasform__row > input[type="text"] { flex: 1; min-width: 0; min-height: 46px; padding: .5em .9em; font: inherit; border: 1px solid var(--bi-card-line); border-radius: var(--bi-radius); text-transform: uppercase; }
.bi-pasform__row .bi-btn { min-height: 46px; white-space: nowrap; }
.bi-pasform__hint { margin: .5rem 0 0; font-size: .75rem; color: var(--bi-card-muted); }
.bi-pasform__wait { margin: 0; font-size: .875rem; color: var(--bi-card-muted); }
.bi-pasform__car { display: block; font-weight: 600; margin-bottom: .2rem; }
.bi-pasform__cta { margin: .6rem 0 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.bi-warnbox--maybe { background: #FFF4DE; }
.bi-warnbox--no { background: #FCEBEB; border-color: #E08A8A; color: #5A1010; }
.bi-warnbox--no svg { color: var(--bi-danger); }
.bi-warnbox--no strong { color: #5A1010; }
.bi-warnbox--error { background: var(--bi-card-alt); border-color: var(--bi-card-line); color: var(--bi-card-text); }
.bi-warnbox--error svg { color: var(--bi-card-muted); }
.bi-warnbox a { color: #007B91; font-weight: 600; }
@media (max-width: 480px) { .bi-pasform__row { flex-wrap: wrap; } .bi-pasform__row .bi-btn { width: 100%; } }

/* --- sticky buy bar on phones (product page) ------------------------------ */
.bi-buybar { display: none; }
@media (max-width: 900px) {
  .bi-buybar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 85; display: flex; align-items: center; gap: .75rem; padding: .6rem var(--bi-gap) calc(.6rem + env(safe-area-inset-bottom)); background: rgba(16,22,25,.96); border-top: 1px solid var(--bi-line-strong); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); transform: translateY(110%); transition: transform .25s var(--bi-ease); }
  .bi-buybar.is-visible { transform: none; }
  .bi-buybar__price { flex: 1; min-width: 0; display: grid; line-height: 1.2; }
  .bi-buybar__price strong { font-family: var(--bi-font-head); font-size: 1.05rem; color: #fff; }
  .bi-buybar__price strong .price, .bi-buybar__price strong ins { color: #fff; text-decoration: none; }
  .bi-buybar__price strong del { display: none; }
  .bi-buybar__price span { font-size: .75rem; color: var(--bi-muted); }
  .bi-buybar .bi-btn { min-height: 46px; }
  body.single-product { padding-bottom: calc(70px + env(safe-area-inset-bottom)); }
}

/* ==========================================================================
   13. Cart, checkout, order confirmation (stage 3, spec sections 11-12)
   ========================================================================== */
.bi-page__head--compact { padding-block: 1.75rem 1.5rem; }
.bi-page__head--compact h1 { font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.1rem); }
.bi-page--cart .bi-page__body, .bi-page--checkout .bi-page__body, .bi-page--thanks .bi-page__body { gap: 1rem; }
.bi-cart__continue { margin: 0; }
.bi-cart__continue a { color: var(--bi-muted); font-weight: 600; }
.bi-cart__continue a:hover { color: var(--bi-accent); }

/* reduced checkout header: logo, "secure", phone, back to cart */
.bi-header--checkout .bi-container { min-height: 68px; gap: 1rem; }
.bi-header__secure { display: inline-flex; align-items: center; gap: .4em; margin-right: auto; color: var(--bi-muted); font-size: .8125rem; font-weight: 600; }
.bi-header__secure svg { width: 18px; height: 18px; color: var(--bi-accent); }
.bi-header--checkout .bi-header__actions { gap: .75rem; }
.bi-header--checkout .bi-btn--ghost { color: var(--bi-text); }
@media (max-width: 640px) {
  .bi-header__secure { display: none; }
  .bi-header--checkout .bi-header__action--phone .bi-header__phone { display: none; }
}

/* step indicator: sections of the single block checkout, highlighted on scroll */
.bi-cksteps { list-style: none; margin: 1rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem 2.25rem; }
.bi-cksteps li { position: relative; }
.bi-cksteps li + li::before { content: ""; position: absolute; left: -1.5rem; top: 50%; width: .75rem; height: 1px; background: var(--bi-line-strong); }
.bi-cksteps a { display: inline-flex; align-items: center; gap: .55rem; color: var(--bi-muted); font-weight: 600; font-size: .9375rem; text-decoration: none; }
.bi-cksteps a span { display: grid; place-items: center; width: 1.75rem; height: 1.75rem; border-radius: 50%; border: 1px solid var(--bi-line-strong); font-family: var(--bi-font-head); font-size: .8rem; }
.bi-cksteps li.is-current a { color: #fff; }
.bi-cksteps li.is-current a span { background: var(--bi-accent); border-color: var(--bi-accent); color: var(--bi-accent-ink); }
.bi-cksteps li.is-done a span { border-color: var(--bi-accent); color: var(--bi-accent); }
@media (max-width: 480px) { .bi-cksteps { gap: .5rem 1.5rem; } .bi-cksteps li + li::before { left: -1rem; width: .5rem; } .bi-cksteps a { font-size: .875rem; } }

/* block cart: line items + sticky summary (spec 11) */
.bi-lightpanel .wc-block-cart { margin: 0; }
.bi-lightpanel .wc-block-components-sidebar-layout .wc-block-components-sidebar { position: sticky; top: 88px; }
.bi-lightpanel .wc-block-cart-items { border-top: 0; }
.bi-lightpanel .wc-block-cart-items__header { font-family: var(--bi-font-head); font-size: .75rem; letter-spacing: .04em; text-transform: uppercase; color: var(--bi-card-muted); }
.bi-lightpanel .wc-block-cart-item__image img { border-radius: var(--bi-radius); background: #fff; }
.bi-lightpanel .wc-block-components-product-name { font-family: var(--bi-font-head); font-weight: 600; font-size: .9375rem; text-decoration: none; }
.bi-lightpanel .wc-block-components-product-details { margin: .35rem 0 0; display: grid; gap: .1rem; font-size: .8125rem; }
.bi-lightpanel .wc-block-components-product-details__name { font-weight: 600; color: var(--bi-card-muted); }
.bi-lightpanel .wc-block-components-product-details__value { color: var(--bi-card-text); }
.bi-lightpanel .wc-block-components-product-metadata__description { display: none; }
.bi-lightpanel .wc-block-components-product-details li::after, .bi-lightpanel .wc-block-components-product-details__value::after, .bi-lightpanel .wc-block-components-product-details__name::after { content: none !important; }
.bi-lightpanel .wc-block-components-totals-shipping .wc-block-components-totals-item__value:empty, .bi-lightpanel .wc-block-components-radio-control__secondary-label:empty { display: none; }
.bi-lightpanel .wc-block-components-product-details span[aria-hidden="true"] { display: none !important; }
.bi-lightpanel .wc-block-components-quantity-selector { border-radius: var(--bi-radius); }
.bi-lightpanel .wc-block-components-quantity-selector::after { border-radius: var(--bi-radius); }
.bi-lightpanel .wc-block-cart-item__remove-link { color: var(--bi-card-muted); font-size: .8125rem; }
.bi-lightpanel .wc-block-cart-item__remove-link:hover { color: var(--bi-danger); }
.bi-lightpanel .wc-block-components-totals-item { font-size: .9375rem; }
.bi-lightpanel .wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.bi-lightpanel .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-family: var(--bi-font-head); font-size: 1.125rem; }
.bi-lightpanel .wc-block-components-totals-item__description { font-size: .8125rem; color: var(--bi-card-muted); }
.bi-lightpanel .wc-block-components-totals-shipping__via { font-size: .8125rem; color: var(--bi-card-muted); }
.bi-lightpanel .wc-block-cart__submit-container { padding-top: .5rem; }
.bi-lightpanel .wc-block-cart__submit-button { min-height: 52px; font-size: 1.0625rem; }
.bi-lightpanel .wc-block-components-panel__button { font-weight: 600; }
.bi-lightpanel .wc-block-components-totals-coupon__form .wc-block-components-button { color: #fff !important;; }
.bi-lightpanel .wc-block-cart__empty-cart__title { font-family: var(--bi-font-head); }
.bi-lightpanel .wp-block-heading, .bi-page__body .bi-lightpanel .wp-block-heading { color: var(--bi-card-text); }
.bi-lightpanel .wp-block-woocommerce-empty-cart-block .wp-block-separator { border-color: var(--bi-card-line); }
.bi-lightpanel .wp-block-woocommerce-empty-cart-block > h2:not(.wc-block-cart__empty-cart__title) { font-size: 1.25rem; margin-top: 1.5rem; }
.bi-lightpanel .wc-block-grid__product { border: 0; }
.bi-lightpanel .wc-block-grid__product-title { font-family: var(--bi-font-head); font-size: .875rem; }
/* cross-sells under the items: only when there are any */
.bi-lightpanel .wp-block-woocommerce-product-collection:not(:has(.wc-block-product)) { display: none; }
.bi-lightpanel .wp-block-woocommerce-product-collection .wp-block-heading { font-size: 1.125rem; }

/* block checkout: sections read as the three steps */
.bi-lightpanel .wc-block-checkout__form { max-width: none; }
.bi-lightpanel .wc-block-components-checkout-step { padding-left: 0; }
.bi-lightpanel .wc-block-components-checkout-step__heading { margin: 0 0 .5rem; }
.bi-lightpanel .wc-block-components-checkout-step__title { font-size: 1.125rem; }
.bi-lightpanel .wc-block-components-checkout-step__description { font-size: .875rem; color: var(--bi-card-muted); }
.bi-lightpanel .wc-block-components-checkout-step:not(:last-child) { padding-bottom: 1.25rem; border-bottom: 1px solid var(--bi-card-line); margin-bottom: 1.25rem; }
.bi-lightpanel .wc-block-components-text-input input:focus, .bi-lightpanel .wc-block-components-textarea textarea:focus, .bi-lightpanel .wc-block-components-select select:focus { box-shadow: 0 0 0 1px var(--bi-accent); border-color: var(--bi-accent); }
.bi-lightpanel .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked { background: var(--bi-accent); border-color: var(--bi-accent); }
.bi-lightpanel .wc-block-components-checkbox .wc-block-components-checkbox__mark { color: var(--bi-accent-ink); }
.bi-lightpanel .wc-block-components-radio-control__input:checked { border-color: var(--bi-accent); }
.bi-lightpanel .wc-block-components-radio-control__input:checked::before { background: var(--bi-accent); }
.bi-lightpanel .wc-block-components-radio-control-accordion-option, .bi-lightpanel .wc-block-components-radio-control__option { border-color: var(--bi-card-line); }
.bi-lightpanel .wc-block-components-shipping-rates-control__package .wc-block-components-radio-control__option { padding-block: .8rem; }
.bi-lightpanel .wc-block-components-shipping-rates-control .wc-block-components-radio-control__secondary-label { font-weight: 700; color: var(--bi-card-text); }
.bi-lightpanel .wc-block-checkout__terms { font-size: .875rem; }
.bi-lightpanel .wc-block-components-checkout-place-order-button { min-height: 54px; font-size: 1.0625rem; width: 100%; }
.bi-lightpanel .wc-block-checkout__actions_row { flex-direction: column-reverse; gap: .75rem; align-items: stretch; }
.bi-lightpanel .wc-block-components-checkout-return-to-cart-button { color: var(--bi-card-muted); font-size: .875rem; text-align: center; }
.bi-lightpanel .wc-block-components-order-summary .wc-block-components-order-summary-item__description { font-size: .8125rem; }

.bi-lightpanel .wc-block-components-order-summary .wc-block-components-product-details { font-size: .75rem; }
@media (min-width: 700px) { .bi-lightpanel .wc-block-components-sidebar-layout.wc-block-checkout .wc-block-components-sidebar { position: sticky; top: 88px; } }
@media (max-width: 700px) {
  .bi-lightpanel .wc-block-components-sidebar-layout .wc-block-components-sidebar { position: static; padding: .75rem; }
  .bi-lightpanel .wc-block-cart .wc-block-components-sidebar { margin-top: 1rem; }
}

/* order confirmation */
.bi-thanks { display: grid; gap: 1.5rem; }
.bi-thanks__head { display: flex; gap: 1rem; align-items: flex-start; }
.bi-thanks__head h1 { margin: 0 0 .25rem; font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.1rem); color: var(--bi-card-text); }
.bi-thanks__head p { margin: 0; color: var(--bi-card-muted); }
.bi-thanks__icon { flex: none; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; background: var(--bi-ok); color: #fff; font-size: 1.4rem; font-weight: 700; }
.bi-thanks__icon--warn { background: var(--bi-danger); }
.bi-thanks__grid { display: grid; gap: 1.5rem; grid-template-columns: minmax(0, 1fr) minmax(280px, 340px); align-items: start; }
.bi-thanks__grid > * { min-width: 0; }
.bi-thanks__main { display: grid; gap: 1.25rem; }
.bi-thanks__status { padding: 1.1rem 1.25rem; border-radius: var(--bi-radius-lg); border: 1px solid var(--bi-card-line); border-left-width: 4px; }
.bi-thanks__status h2 { margin: 0 0 .4rem; font-size: 1.2rem; }
.bi-thanks__status p { margin: 0 0 .5rem; }

.bi-thanks__status--paid { border-left-color: var(--bi-ok);; }

.bi-thanks__gateway h2 { display: none; }
.bi-thanks__gateway p { margin: .5rem 0 0; font-size: .9375rem; }
.bi-thanks__gateway .wc-bacs-bank-details-heading { font-size: 1rem; margin: .75rem 0 .35rem; }
.bi-thanks__gateway .wc-bacs-bank-details-account-name { font-weight: 700; font-size: .9375rem; }
.bi-thanks__gateway ul.wc-bacs-bank-details, .bi-thanks__gateway .order_details { list-style: none; margin: .25rem 0 0; padding: 0; display: grid; gap: .25rem; font-size: .9375rem; }
.bi-thanks__gateway ul.wc-bacs-bank-details li strong { font-family: var(--bi-font-code); }
.bi-thanks__next h2, .bi-thanks__details h2 { font-size: 1.2rem; margin: 0 0 .75rem; }
.bi-thanks__next .bi-steps { max-width: none; }
.bi-thanks__next .bi-steps li { font-size: .9375rem; color: var(--bi-card-muted); }
.bi-thanks__next .bi-steps li strong { color: var(--bi-card-text); }
.bi-thanks .bi-deposit a { display: block; margin-top: .4rem; font-weight: 600; }
.bi-thanks .bi-notice > strong:first-child { display: block; }
.bi-thanks__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin: 0; }
.bi-thanks__details .woocommerce-order-details__title, .bi-thanks__details .woocommerce-column__title { font-size: 1.2rem; margin: 0 0 .75rem; }
.bi-thanks__details .woocommerce-table--order-details th, .bi-thanks__details .woocommerce-table--order-details td { border: 0; border-bottom: 1px solid var(--bi-card-line); padding: .7em .5em; text-align: left; vertical-align: top; font-size: .9375rem; }
.bi-thanks__details .woocommerce-table--order-details tfoot th { color: var(--bi-card-muted); font-weight: 600; }
.bi-thanks__details .woocommerce-table--order-details tfoot tr:last-child th, .bi-thanks__details .woocommerce-table--order-details tfoot tr:last-child td { font-family: var(--bi-font-head); font-size: 1.05rem; border-bottom: 0; }
.bi-thanks__details .wc-item-meta { list-style: none; margin: .25rem 0 0; padding: 0; font-size: .8125rem; color: var(--bi-card-muted); }
.bi-thanks__details .wc-item-meta p { display: inline; margin: 0; }
.bi-thanks__details .woocommerce-customer-details { margin-top: 1.5rem; }
.bi-thanks__details .woocommerce-columns { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.bi-thanks__details .woocommerce-customer-details address { font-style: normal; line-height: 1.6; }
.bi-thanks__details .woocommerce-customer-details--phone, .bi-thanks__details .woocommerce-customer-details--email { display: block; margin-top: .3rem; }
.bi-thanks__details .wc-block-components-additional-fields-list { display: grid; gap: .25rem; font-size: .9375rem; }
.bi-thanks__side { display: grid; gap: 1rem; }
.bi-thanks__card { padding: 1.1rem 1.25rem;; border-radius: var(--bi-radius-lg);; }
.bi-thanks__card h3 { margin: 0 0 .75rem; font-size: 1rem; }
.bi-thanks__card p { margin: 0 0 .75rem; font-size: .9375rem; color: var(--bi-card-muted); }
.bi-thanks__facts { margin: 0; display: grid; gap: .55rem; font-size: .9375rem; }
.bi-thanks__facts dt { font-size: .75rem; letter-spacing: .04em; text-transform: uppercase; color: var(--bi-card-muted); }
.bi-thanks__facts dd { margin: 0 0 .25rem; font-weight: 600; }
.bi-thanks__facts small { font-weight: 400; color: var(--bi-card-muted); }
.bi-thanks__state--pending { display: inline-block; margin-top: .2rem; padding: .15em .6em; border-radius: var(--bi-radius-pill); background: #FFF0D0; color: #7A4B00; font-size: .8125rem; font-weight: 700; }
.bi-thanks__state--ok { display: inline-block; margin-top: .2rem; padding: .15em .6em; border-radius: var(--bi-radius-pill); background: #DDF4E3; color: var(--bi-ok); font-size: .8125rem; font-weight: 700; }
.bi-thanks__card--contact .bi-btn { margin-bottom: .6rem; }
.bi-thanks__mail { display: block; text-align: center; font-weight: 600; }
@media (max-width: 860px) { .bi-thanks__grid { grid-template-columns: 1fr; } }

/* ==========================================================================
   14. Guides: index chips + article template (spec 15); return / fitting forms (spec 13-14)
   ========================================================================== */
.bi-guides__chips { margin-bottom: 1rem; }
.bi-guide__media .bi-tag--guide { position: absolute; top: .6rem; left: .6rem; background: rgba(16,22,25,.85); color: #fff; }
.bi-guide__body time { font-size: .75rem; color: var(--bi-card-muted); margin-top: .25rem; }
.bi-guide[hidden] { display: none; }
.bi-breadcrumb { font-size: .8125rem; color: var(--bi-muted); margin-bottom: .75rem; }
.bi-breadcrumb a { color: var(--bi-muted); }
.bi-breadcrumb a:hover { color: var(--bi-accent); }
.bi-article__summary { max-width: 70ch; }
.bi-article__meta { margin: .75rem 0 0; font-size: .8125rem; color: var(--bi-muted); }
.bi-article__grid { display: grid; gap: 2rem; grid-template-columns: 260px minmax(0, 1fr); align-items: start; padding-block: 2rem 3rem; }
.bi-article__grid > * { min-width: 0; }
.bi-toc { position: sticky; top: 88px; padding: 1rem 1.1rem; background: var(--bi-panel); border: 1px solid var(--bi-line); border-radius: var(--bi-radius-lg); }
.bi-toc summary { cursor: pointer; font-family: var(--bi-font-head); font-weight: 700; color: #fff; list-style: none; display: flex; justify-content: space-between; align-items: center; }
.bi-toc summary::-webkit-details-marker { display: none; }
.bi-toc summary::after { content: "+"; color: var(--bi-accent); font-size: 1.2rem; }
.bi-toc[open] summary::after { content: "–"; }
.bi-toc ol { margin: .75rem 0 0; padding-left: 1.4rem; display: grid; gap: .4rem; font-size: .875rem; }
.bi-toc a { color: var(--bi-muted); }
.bi-toc a:hover { color: var(--bi-accent); }
.bi-article__body { padding-block: 0; max-width: 760px; }
.bi-article__body > p, .bi-article__body > ul, .bi-article__body > ol { max-width: 68ch; font-size: 1.0625rem; line-height: 1.7; }
.bi-article__body > h2 { scroll-margin-top: 90px; margin-top: 1.5rem; }
.bi-article__body > h3 { scroll-margin-top: 90px; }
.bi-article__body figure { max-width: 680px; }
.bi-article__cta { margin-top: 1.5rem; }
.bi-article__related { margin-top: 1rem; }
.bi-article__related h2 { color: #fff; margin-bottom: 1rem; }
.bi-article__related .bi-guides { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
@media (max-width: 1000px) {
  .bi-article__grid { grid-template-columns: 1fr; gap: 1.25rem; }
  .bi-toc { position: static; }
}
.bi-form input[type="file"] { padding: .55em .9em; background: var(--s-field); }
.bi-form label small { font-weight: 400; color: var(--s-muted); font-size: .8125rem; }
.bi-form__note { margin: 0; font-size: .875rem; color: var(--s-muted); max-width: 68ch; }
.bi-retur { max-width: 860px; }
.bi-page__body > .bi-retur .bi-form--card { color: var(--bi-card-text); }
.bi-page__body .bi-form--card a { color: #007B91; }

/* ==========================================================================
   15. Brands index + brand page (spec 10), consent bar (spec 20)
   ========================================================================== */
.bi-maerker__abc { margin-bottom: .25rem; }

.bi-maerker__note { font-size: .8125rem; max-width: 70ch; }

.bi-maerke__logo img { max-width: 100%;; max-height: 100%;; }

.bi-maerke .bi-searchbar__hint { margin: .5rem 0 0; }
.bi-maerke .bi-searchbar__hint a { color: var(--bi-accent); }
.bi-maerke__models { display: flex; flex-wrap: wrap; gap: .5rem; }
.bi-maerke__models .bi-chip span { color: var(--bi-muted); font-weight: 400; }
.bi-maerke .bi-page__body > section > h2 { color: #fff; margin-bottom: .35rem; }
.bi-maerke .bi-page__body > section > .bi-text-muted { margin: 0 0 1rem; max-width: 70ch; }
.bi-maerke .bi-tile { text-decoration: none; transition: transform .2s var(--bi-ease), box-shadow .2s var(--bi-ease); }
.bi-maerke a.bi-tile:hover { transform: translateY(-4px); box-shadow: var(--bi-shadow), 0 0 0 1px var(--bi-accent); }
.bi-maerke__products .bi-section__head { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: 1rem; }
.bi-maerke__products .bi-section__head h2 { margin: 0; color: #fff; }
@media (max-width: 720px) {  .bi-maerke__logo { display: none; } }

.bi-consent { position: fixed; left: var(--bi-gap); right: var(--bi-gap); bottom: calc(var(--bi-gap) + env(safe-area-inset-bottom)); z-index: 120; max-width: 720px; margin-inline: auto; display: grid; gap: .75rem; padding: 1rem 1.1rem; background: var(--bi-panel); color: var(--bi-text); border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius-lg); box-shadow: var(--bi-shadow); font-size: .875rem; }
.bi-consent[hidden] { display: none; }
.bi-consent p { margin: 0; }
.bi-consent a { color: var(--bi-accent); }
.bi-consent__actions { display: flex; gap: .5rem; justify-content: flex-end; flex-wrap: wrap; }
body.bi-has-mobilebar .bi-consent { bottom: calc(80px + env(safe-area-inset-bottom)); }

.bi-maerke a.bi-tile, .bi-maerke a.bi-tile strong { color: var(--bi-card-text); }
.bi-maerke .bi-tile strong, .bi-maerke .bi-tile span { overflow-wrap: anywhere; }
.bi-product__mto { margin: .25rem 0 1rem; font-size: .8125rem; color: var(--s-muted); }
.bi-product__mto a { color: var(--bi-accent); }
/* free parcel freight (cart + product) */
.bi-frifragt { margin: 0 0 1.25rem; padding: 1rem 1.1rem; border-radius: var(--bi-radius); background: var(--bi-panel); border: 1px solid var(--bi-line); color: var(--bi-text); }
.bi-frifragt__msg { margin: 0 0 .6rem; font-weight: 700; }
.bi-frifragt__bar { height: 6px; border-radius: 3px; background: rgba(255,255,255,.12); overflow: hidden; }
.bi-frifragt__bar span { display: block; height: 100%; width: 0; background: var(--bi-accent); transition: width .3s; }
.bi-frifragt.is-done .bi-frifragt__msg { color: var(--bi-accent); }
.bi-frifragt__forslag h2 { margin: 1.1rem 0 .6rem; font-size: 1rem; }
.bi-frifragt__forslag ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.bi-frifragt__forslag li { display: grid; grid-template-columns: 48px 1fr; gap: .25rem .6rem; align-items: center; padding: .6rem; border-radius: var(--bi-radius-sm); background: rgba(255,255,255,.04); font-size: .8125rem; }
.bi-frifragt__forslag img { grid-row: span 2; width: 48px; height: 48px; object-fit: cover; border-radius: 4px; }
.bi-frifragt__forslag a { color: var(--bi-text); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.bi-frifragt__forslag strong { grid-column: 2; }
.bi-frifragt__forslag button { grid-column: 1 / -1; padding: .45em .8em; font-size: .8125rem; }
.bi-product__frifragt { margin: .25rem 0 .5rem; font-size: .8125rem; font-weight: 600; color: var(--bi-accent); }

/* brand / category text with FAQ (SEO, Adam 02.10) */
.bi-seotekst { margin: 2.5rem 0 1rem; max-width: 78ch; color: var(--s-text); }
.bi-seotekst h2 { font-size: 1.25rem; margin-bottom: .75rem; }
.bi-seotekst p { color: var(--s-muted); line-height: 1.65; }
.bi-seotekst__faq { margin-top: 1.25rem; border-top: 1px solid var(--s-line); }
.bi-seotekst__faq details { border-bottom: 1px solid var(--s-line); padding: .8rem 0; }
.bi-seotekst__faq summary { cursor: pointer; font-weight: 600; color: var(--s-text); }
.bi-seotekst__faq details p { margin: .5rem 0 0; }
/* finder: other parts for the car (Adam 02.10) */
.bi-parts { margin-top: 1rem; }

/* plate / VIN results page /find-dele/ (Adam 02.10) */
.bi-fd__search { display: flex; gap: .6rem; max-width: 620px; margin: 0 0 1.5rem; flex-wrap: wrap; }
.bi-fd__search .bi-plate { flex: 1 1 260px; }
.bi-fd__wait, .bi-fd__err { padding: 1rem; background: var(--bi-panel); border-radius: var(--bi-radius); }
.bi-fd__car { padding: 1.2rem 1.4rem; margin-bottom: 1.5rem; background: var(--bi-panel); border: 1px solid var(--bi-line); border-radius: var(--bi-radius-lg, 12px); }
.bi-fd__car h2 { margin: .2rem 0 .6rem; }
.bi-fd__spec { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem .6rem; }
.bi-fd__spec li { padding: .25rem .6rem; border-radius: 999px; background: rgba(255,255,255,.06); font-size: .85rem; }

.bi-fd__lab { margin: 0 0 .8rem; font-size: .85rem; color: var(--bi-muted); }

.bi-fd__grid { list-style: none;; margin: 0;; padding: 0;; display: grid;; gap: .8rem;; }
.bi-fd__card a { position: relative; display: flex; flex-direction: column; height: 100%; padding: .6rem; background: var(--bi-card); color: var(--bi-card-text); border-radius: var(--bi-radius); text-decoration: none; transition: transform .2s var(--bi-ease), box-shadow .2s; }
.bi-fd__card a:hover { transform: translateY(-3px); box-shadow: 0 0 0 1px var(--bi-accent); }
.bi-fd__img { display: block; aspect-ratio: 4 / 3; background: var(--bi-card-alt); border-radius: 6px; overflow: hidden; margin-bottom: .5rem; }
.bi-fd__img img { width: 100%; height: 100%; object-fit: cover; }
.bi-fd__name { font-weight: 600; font-size: .9rem; line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.bi-fd__meta { font-size: .78rem; color: var(--bi-card-muted); margin: .25rem 0 .4rem; }
.bi-fd__price { margin-top: auto; font-size: 1rem; }
.bi-fd__dep { font-size: .75rem; color: var(--bi-card-muted); }

/* find-dele results v2 (Adam 02.10): car card with CTA, one grid of sure matches, other options collapsed */
.bi-fd__car { display: flex; flex-wrap: wrap; gap: 1rem 2rem; align-items: center; justify-content: space-between; }
.bi-fd__car-cta { display: flex; flex-wrap: wrap; gap: .5rem; }
.bi-fd__sec > h2 { font-size: 1.35rem; }
.bi-fd__grid { grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); }
.bi-fd__img { position: relative; }
.bi-fd__type { position: absolute; left: .4rem; top: .4rem; padding: .15rem .5rem; border-radius: 999px; background: rgba(16,22,25,.82); color: #fff; font-size: .6875rem; font-weight: 600; letter-spacing: .02em; }
.bi-fd__badge { align-self: flex-start; margin: 0 0 .35rem; padding: .15rem .55rem; border-radius: 999px; font-size: .72rem; font-weight: 700; }

.bi-fd__more { margin: 0 0 2rem; padding: 1.2rem 1.2rem .2rem; background: var(--bi-panel); border: 1px solid var(--bi-line); border-radius: var(--bi-radius-lg, 12px); }
.bi-fd__more > summary { cursor: pointer; padding: 1rem 0; font-family: var(--bi-font-head); font-weight: 600; font-size: 1.1rem; list-style: none; }
.bi-fd__more > summary::-webkit-details-marker { display: none; }
.bi-fd__more > summary::before { content: "+"; display: inline-block; width: 1.2em; color: var(--bi-accent); }
.bi-fd__more[open] > summary::before { content: "2"; }
.bi-fd__more > summary span { display: block; margin: .2rem 0 0 1.2em; font-family: var(--bi-font); font-weight: 400; font-size: .85rem; color: var(--bi-muted); }
.bi-fd__more > h2 { font-size: 1.35rem; margin: 0 0 .3rem; }
.bi-fd__more h3 { margin: .4rem 0 .6rem; font-size: 1rem; }
.bi-fd__more .bi-fd__grid { margin-bottom: 1.2rem; }
.bi-fd__note { margin: 0 0 2rem; font-size: .8125rem; color: var(--bi-muted); }
@media (max-width: 640px) {
  .bi-fd__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; }
  .bi-fd__card a { padding: .45rem; }
  .bi-fd__name { font-size: .82rem; }
  .bi-fd__car-cta { width: 100%; }
  .bi-fd__car-cta .bi-btn { flex: 1 1 auto; text-align: center; }
  .bi-fd__more { padding: 0 .8rem; }
  .bi-datacard__code { font-size: 1rem; }
}

/* ==========================================================================
   12. v2 (2026-10-09, handoff homepage-v7): dark surfaces, three-engine hero,
       free-search finder, category groups, workshop, steps. Overrides above.
   ========================================================================== */
:root { --bi-surface: #18242A; --bi-surface-2: #1F2D34; --bi-surface-line: rgba(255,255,255,.10); }

/* dark cards (Adam 09.10): product cards, category groups, guide boxes, mega menu, finder */
.bi-card, .bi-help__box, .bi-nav__panel, .bi-finder--v2, .bi-group, .bi-finder__result {
  --s-bg: var(--bi-surface); --s-text: var(--bi-text); --s-muted: var(--bi-muted); --s-line: var(--bi-surface-line); --s-link: var(--bi-accent); --s-field: #fff;
  color: var(--s-text);
}
.bi-section { padding-block: 5rem; }

@media (max-width: 700px) { .bi-section { padding-block: 2.75rem; } }
.bi-section__head { margin-bottom: 2rem; }
.bi-eyebrow--line { display: inline-flex; align-items: center; gap: .7rem; }
.bi-eyebrow--line::after { content: ""; width: 34px; height: 2px; background: var(--bi-accent); }
.bi-btn--outline { background: transparent; color: var(--bi-accent); border-color: var(--bi-accent); }
.bi-btn--outline:hover { background: var(--bi-accent-soft); }
.bi-link--ul { text-decoration: underline; text-underline-offset: .3em; text-decoration-color: var(--bi-accent); }

/* header */
.bi-logo img { height: 54px; width: auto; }
.bi-logo__link { display: block; }
@media (max-width: 900px) { .bi-logo img { height: 44px; } }
.bi-nav__panel { background: var(--bi-surface); border: 1px solid var(--bi-line-strong); }
.bi-nav .bi-nav__panel a { color: var(--bi-text); }
.bi-nav .bi-nav__panel a:hover { background: var(--bi-surface-2); color: #fff; }
.bi-nav .bi-nav__panel a.bi-nav__top:hover { color: var(--bi-accent); }
.bi-nav .bi-nav__panel span { color: var(--bi-muted); }
.bi-nav__panel-foot { border-top-color: var(--bi-line); color: var(--bi-muted); }

/* hero: copy left, three real engines right on a soft turquoise ellipse */

.bi-hero__cta { display: flex;; align-items: center;; flex-wrap: wrap;; }

/* finder panel under the hero: free search first, compact field (~840 px) */

.bi-finder--v2 { display: grid;; align-items: center;; background: var(--bi-surface);; border: 1px solid var(--bi-line-strong);; border-radius: var(--bi-radius-lg);; box-shadow: 0 24px 60px rgba(0,0,0,.45);; overflow: visible;; }
.bi-finder__title { margin: 0;; color: #fff;; }
.bi-finder__main { min-width: 0; max-width: 840px; }
.bi-finder--v2 .bi-finder__tabs { display: flex;; flex-wrap: wrap;; gap: .35rem;; background: transparent;; }
.bi-finder--v2 .bi-finder__tab { padding: .45em .95em; border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius-pill); background: transparent; color: var(--bi-muted); font-size: .8125rem; }
.bi-finder--v2 .bi-finder__tab:hover { color: #fff; border-color: #fff; }
.bi-finder--v2 .bi-finder__tab.is-active { background: var(--bi-accent); border-color: var(--bi-accent); color: var(--bi-accent-ink); }
.bi-finder--v2 .bi-finder__panel { padding: 0; }
.bi-finder--v2 .bi-finder__panel input[type="text"], .bi-finder--v2 .bi-finder__panel input[type="search"], .bi-finder--v2 .bi-finder__panel select { border-color: transparent; }
.bi-finder__field { position: relative; display: flex; flex: 1; min-width: 0; }
.bi-finder__field svg { position: absolute; left: .9rem; top: 50%; width: 20px; height: 20px; transform: translateY(-50%); color: #5B6570; pointer-events: none; }
.bi-finder__field input { padding-left: 2.6rem !important; }
.bi-finder--v2 .bi-finder__hint { color: var(--bi-muted); }
.bi-finder--v2 .bi-finder__hint a { color: var(--bi-accent); }
.bi-finder--v2 .bi-finder__selects select { background: #fff; color: var(--bi-card-text); }
@media (max-width: 980px) { .bi-finder--v2 { grid-template-columns: 1fr; gap: 1rem; padding: 1.25rem; } }

/* counters */
.bi-stats--v2 { border-bottom: 0;; }

.bi-stats--v2 .bi-stat__icon { background: var(--bi-surface); border: 1px solid var(--bi-line); }
@media (max-width: 980px) { .bi-stats--v2 .bi-stat { padding: .9rem .75rem; } }

/* category groups: BRUGT / RENOVERET / NY / ELBILDELE (mockup: soft gradient tile, floating photo, list right under it) */
.bi-groups { display: grid; gap: 1rem; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.bi-group { display: flex; flex-direction: column; position: relative; background: linear-gradient(180deg, #1B2A31 0%, #131D23 100%); border: 1px solid rgba(0,185,214,.22); border-radius: var(--bi-radius-lg); overflow: hidden; transition: border-color .2s var(--bi-ease), box-shadow .2s var(--bi-ease); }
.bi-group::before { content: ""; position: absolute; inset: 0 0 auto; height: 60%; background: radial-gradient(70% 55% at 50% 0%, rgba(0,185,214,.16), transparent 70%); pointer-events: none; }
.bi-group:hover { border-color: rgba(0,185,214,.55); box-shadow: 0 16px 40px rgba(0,0,0,.35); }
.bi-group__head { position: relative; display: grid; gap: .1rem; padding: 1rem 1.1rem .2rem; color: #fff; text-decoration: none; }
.bi-group__head:hover { text-decoration: none; color: var(--bi-accent); }
.bi-group__title { font-family: var(--bi-font-head); font-weight: 700; font-size: 1.05rem; letter-spacing: .06em; color: #fff; }
.bi-group__sub { font-size: .8125rem; color: var(--bi-muted); }
.bi-group__head:hover .bi-group__sub { color: var(--bi-accent); }
.bi-group__media { position: relative; display: grid; place-items: center; margin: .25rem .6rem 0; height: 200px; }
.bi-group__media img { width: auto; height: auto; max-width: 92%; max-height: 184px; object-fit: contain; filter: drop-shadow(0 14px 18px rgba(0,0,0,.65)); transition: transform .3s var(--bi-ease); }
.bi-group:hover .bi-group__media img { transform: translateY(-4px); }
.bi-group__list { position: relative; list-style: none; margin: .5rem 0 0; padding: 0 0 .4rem; }
.bi-group__list a { display: flex; align-items: center; gap: .7rem; padding: .45rem 1.1rem .45rem 1.1rem; color: var(--bi-text); font-size: .9375rem; font-weight: 500; border-top: 1px solid rgba(255,255,255,.08); text-decoration: none; }
.bi-group__list li:first-child a { border-top-color: rgba(0,185,214,.35); }
.bi-group__list a:hover { color: var(--bi-accent); background: rgba(0,185,214,.06); text-decoration: none; }
.bi-group__list a.is-empty { color: var(--bi-muted); }
.bi-group__list a > span { flex: 1; min-width: 0; }
.bi-group__ico { flex: none; width: 40px; height: 40px; margin-left: -.3rem; object-fit: contain; filter: drop-shadow(0 3px 4px rgba(0,0,0,.6)); }
.bi-group__list svg { flex: none; width: 16px; height: 16px; color: var(--bi-accent); }
.bi-group__list small { color: var(--bi-muted); font-size: .75rem; margin-left: .3rem; }
@media (max-width: 1100px) { .bi-groups { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .bi-groups { grid-template-columns: 1fr; } .bi-group__media { height: 150px; } .bi-group__media img { max-height: 138px; } }

/* renoverede og nye dele: eight part tiles with big cut-outs */
.bi-parts .bi-section__head p { max-width: 62ch; }
.bi-parts__grid { list-style: none; margin: 0; padding: 0; display: grid; gap: .8rem; grid-template-columns: repeat(6, minmax(0, 1fr)); }
.bi-parts__tile { position: relative; display: grid; gap: .15rem; padding: .8rem .9rem .9rem; min-height: 100%; background: linear-gradient(180deg, #1B2A31 0%, #131D23 100%); border: 1px solid rgba(0,185,214,.22); border-radius: var(--bi-radius-lg); color: var(--bi-text); text-decoration: none; transition: border-color .2s var(--bi-ease), transform .2s var(--bi-ease), box-shadow .2s var(--bi-ease); }
.bi-parts__tile::before { content: ""; position: absolute; inset: 0 0 auto; height: 70%; border-radius: inherit; background: radial-gradient(70% 55% at 50% 10%, rgba(0,185,214,.14), transparent 70%); pointer-events: none; }
.bi-parts__tile:hover { border-color: rgba(0,185,214,.6); transform: translateY(-4px); box-shadow: 0 16px 40px rgba(0,0,0,.4); text-decoration: none; }
.bi-parts__tile .bi-tag { position: absolute; top: .65rem; left: .75rem; z-index: 2; }
.bi-parts__media { position: relative; display: grid; place-items: center; height: 130px; margin: .9rem 0 .3rem; }
.bi-parts__media img { width: auto; height: auto; max-width: 86%; max-height: 120px; filter: drop-shadow(0 14px 18px rgba(0,0,0,.65)); transition: transform .3s var(--bi-ease); }
.bi-parts__tile:hover .bi-parts__media img { transform: translateY(-4px) scale(1.03); }
.bi-parts__name { position: relative; font-family: var(--bi-font-head); font-weight: 700; font-size: .875rem; color: #fff; line-height: 1.25; }
.bi-parts__count { position: relative; font-size: .75rem; color: var(--bi-accent); font-weight: 600; }
@media (max-width: 1200px) { .bi-parts__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 900px) { .bi-parts__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 600px) { .bi-parts__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .bi-parts__grid { gap: .6rem; } .bi-parts__tile { padding: .8rem .8rem .9rem; } .bi-parts__media { height: 120px; } .bi-parts__media img { max-height: 112px; } }

/* workshop in Vejle: real building + repair photo, phone, video poster */
.bi-workshop__head { max-width: 760px; margin-bottom: 2rem; }
.bi-workshop__head h2 { color: #fff; font-size: clamp(1.7rem, 1.2rem + 1.8vw, 2.5rem); margin-bottom: .6rem; }
.bi-workshop__head p { color: var(--bi-muted); font-size: 1.0625rem; margin: 0; }
.bi-workshop__grid { display: grid; gap: 2.5rem; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); align-items: start; }
.bi-workshop__media { position: relative; padding-bottom: 3rem; }
.bi-workshop__photo { margin: 0; border-radius: var(--bi-radius-lg); overflow: hidden; border: 1px solid var(--bi-line); }
.bi-workshop__photo img { width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; }
.bi-workshop__inset { position: absolute; right: -1rem; bottom: 0; width: 42%; margin: 0; border-radius: var(--bi-radius-lg); overflow: hidden; border: 4px solid var(--bi-bg); box-shadow: var(--bi-shadow); }
.bi-workshop__inset img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.bi-workshop__usps { list-style: none; margin: 0 0 1.4rem; padding: 0; display: grid; gap: .9rem; }
.bi-workshop__usps li { display: flex; gap: .9rem; align-items: center; color: var(--bi-text); }
.bi-workshop__ico { flex: none; width: 44px; height: 44px; display: grid; place-items: center; border-radius: var(--bi-radius); background: var(--bi-surface); border: 1px solid var(--bi-line); color: var(--bi-accent); }
.bi-workshop__ico svg { width: 22px; height: 22px; }
.bi-workshop__cta { display: flex; flex-wrap: wrap; gap: .75rem; margin-bottom: 1rem; }
.bi-workshop__cta .bi-btn svg { width: 18px; height: 18px; margin-right: .4rem; }
.bi-workshop__addr { display: flex; align-items: center; gap: .5rem; color: var(--bi-muted); margin: 0 0 1.25rem; }
.bi-workshop__addr svg { width: 18px; height: 18px; color: var(--bi-accent); }
.bi-video { position: relative; display: block; border-radius: var(--bi-radius-lg); overflow: hidden; border: 1px solid var(--bi-line); color: #fff; text-decoration: none; }
.bi-video img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; filter: brightness(.75); transition: filter .25s var(--bi-ease); }
.bi-video:hover img { filter: brightness(.9); }
.bi-video__play { position: absolute; left: 50%; top: 50%; width: 64px; height: 64px; transform: translate(-50%, -60%); display: grid; place-items: center; border-radius: 50%; background: rgba(16,22,25,.85); border: 2px solid #fff; color: #fff; }
.bi-video__play svg { width: 30px; height: 30px; margin-left: 3px; }
.bi-video__cap { position: absolute; left: 0; right: 0; bottom: .75rem; text-align: center; font-weight: 600; text-shadow: 0 1px 6px rgba(0,0,0,.8); }
.bi-video__cap small { font-weight: 400; color: var(--bi-muted); }
@media (max-width: 980px) {
  .bi-workshop__grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .bi-workshop__media { padding-bottom: 2.25rem; }
  .bi-workshop__inset { right: 0; width: 40%; }
}

/* brands: dark tiles, monochrome white logos (Adam 09.10, mockup) */
.bi-brands a { background: var(--bi-surface); }
.bi-brands__mark { background: transparent; height: 52px; }
.bi-brands__logo { filter: brightness(0) invert(1); opacity: .92; max-width: 92px; max-height: 40px; }
.bi-brands a:hover .bi-brands__logo { opacity: 1; }
/* filled-oval marks (Ford, BMW) turn into white blobs when inverted: keep them as greyscale */
.bi-brands__logo[src*="/ford.svg"], .bi-brands__logo[src*="/bmw.svg"] { filter: grayscale(1) brightness(1.35) contrast(1.1); }
.bi-brands__word { color: #fff; }

/* product cards: dark body, photo on white */
.bi-card { color: var(--bi-text);; border: 1px solid var(--bi-line);; }
.bi-card:hover { box-shadow: var(--bi-shadow), 0 0 0 1px var(--bi-accent); border-color: transparent; }

.bi-card__brand, .bi-card__vat, .bi-card__deposit, .bi-card__specs span, .bi-card__price del { color: var(--bi-muted); }
.bi-card__title, .bi-card__price .price, .bi-card__price ins { color: #fff; }
.bi-card .bi-link { color: var(--bi-accent); }
.bi-card .bi-stock--in { color: var(--bi-ok-light); }
.bi-card .bi-btn--ghost { color: var(--bi-text); border-color: var(--bi-line-strong); }

/* bytteordning in three steps: one row, dividers, no boxes (mockup) */
.bi-bytte { list-style: none; margin: 0 0 1.5rem; padding: 0; display: grid; gap: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bi-bytte__item { display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 1rem; padding: .5rem 2rem .5rem 0; }
.bi-bytte__item + .bi-bytte__item { padding-left: 2rem; border-left: 1px solid var(--bi-line-strong); }
.bi-bytte__num { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--bi-accent); color: var(--bi-accent-ink); font-family: var(--bi-font-head); font-weight: 700; font-size: 1.05rem; }
.bi-bytte__ico { display: grid; place-items: center; width: 48px; height: 48px; color: #fff; }
.bi-bytte__ico svg { width: 34px; height: 34px; }
.bi-bytte__text { display: grid; gap: .15rem; font-size: .875rem; color: var(--bi-muted); }
.bi-bytte__text strong { color: #fff; font-family: var(--bi-font-head); font-size: 1rem; }
.bi-bytte__foot { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; }
.bi-bytte__foot p { margin: 0; color: var(--bi-muted); font-size: .875rem; }
@media (max-width: 980px) { .bi-bytte { grid-template-columns: 1fr; gap: .25rem; } .bi-bytte__item { padding: .75rem 0; border-top: 1px solid var(--bi-line); } .bi-bytte__item + .bi-bytte__item { padding-left: 0; border-left: 0; } }

/* guide cards */
.bi-help__box { background: var(--bi-surface); border: 1px solid var(--bi-line); color: var(--bi-text); }
.bi-help__media { background: var(--bi-surface-2); }
.bi-help__box h3 a { color: #fff; }
.bi-help__box h3 a:hover { color: var(--bi-accent); text-decoration: none; }
.bi-help__box p { color: var(--bi-muted); }
.bi-help__box .bi-link { color: var(--bi-accent); }

/* help band */
.bi-band--v2 { background: var(--bi-surface); }
.bi-band--v2 .bi-band__grid { grid-template-columns: minmax(0, 1.4fr) auto; padding-block: 3rem; }
.bi-band__cta { display: flex; gap: .75rem; flex-wrap: wrap; justify-content: flex-end; }
.bi-band__cta .bi-btn svg { width: 18px; height: 18px; margin-right: .4rem; }
@media (max-width: 980px) { .bi-band--v2 .bi-band__grid { grid-template-columns: 1fr; } .bi-band__cta { justify-content: flex-start; } }

/* footer: four columns */
.bi-footer--v2 { margin-top: 0; }
.bi-footer--v2 .bi-footer__cols { grid-template-columns: 1.5fr repeat(3, minmax(0, 1fr)); padding-block: 3.5rem 2.5rem; }
.bi-footer--v2 .bi-footer__brand img { height: 56px; }
@media (max-width: 1000px) { .bi-footer--v2 .bi-footer__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .bi-footer--v2 .bi-footer__cols { grid-template-columns: 1fr; } }

/* --- brand index + brand page v2 (handoff 05 / 06) ------------------------- */
.bi-maerker__hero, .bi-maerke__hero { background: var(--bi-bg);; }
.bi-maerker__hero-grid, .bi-maerke__hero-grid { display: grid;; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);; gap: 2rem;; align-items: center;; }
.bi-maerker__hero h1, .bi-maerke__hero h1 { color: #fff; font-size: clamp(2rem, 1.3rem + 2.4vw, 3.2rem); line-height: 1.05; margin: .4rem 0 .8rem; }
.bi-maerker__banner img, .bi-maerke__car img { width: 100%; height: auto; border-radius: var(--bi-radius-lg); }
.bi-maerke__car img { max-width: 600px; margin-left: auto; filter: drop-shadow(0 20px 30px rgba(0,0,0,.5)); }
.bi-maerke__title { display: flex; align-items: center; gap: 1rem; }
.bi-maerke__logo { flex: none; width: 64px; height: 64px; display: grid; place-items: center; background: #e4e7ea; border-radius: 12px; padding: 8px; }
.bi-maerke__logo img { width: 100%; height: 100%; object-fit: contain; }
@media (max-width: 980px) { .bi-maerker__hero-grid, .bi-maerke__hero-grid { grid-template-columns: 1fr; gap: 1rem; } .bi-maerke__car img { max-width: 480px; margin: 0 auto; } }

.bi-maerker__find { padding: 1.25rem 1.5rem; margin-bottom: 2rem; background: var(--bi-surface); border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius-lg); }
.bi-maerker__find h2 { margin: 0 0 .8rem; font-size: 1.25rem; color: #fff; }
.bi-maerker__tools { display: grid; gap: .9rem; }
.bi-maerker__q input { width: 100%; min-height: 48px; padding: .6em 1em .6em 2.6rem; font: inherit; border: 0; border-radius: var(--bi-radius); background: #fff; color: var(--bi-card-text); }
.bi-maerker__abc { flex-wrap: wrap; }
.bi-maerker__h { color: #fff; display: flex; align-items: center; gap: .7rem; margin-bottom: 1rem; }
.bi-maerker__h .bi-eyebrow--line::after { content: ""; display: inline-block; width: 34px; height: 2px; background: var(--bi-accent); }
.bi-brandcards { list-style: none;; margin: 0 0 1.5rem;; padding: 0;; display: grid;; grid-auto-flow: dense;; }
.bi-brandcards > li { min-width: 0; }
.bi-brandcard { position: relative; display: grid; grid-template-columns: 1fr auto; grid-template-areas: "mark mark" "name arrow" "count arrow"; align-content: start; gap: .1rem .5rem; min-height: 100%; padding: .9rem 1rem 1rem; background: linear-gradient(180deg, #1B2A31 0%, #131D23 100%); border: 1px solid rgba(0,185,214,.22); border-radius: var(--bi-radius-lg); color: var(--bi-text); text-decoration: none; overflow: hidden; transition: border-color .2s var(--bi-ease), transform .2s var(--bi-ease); }
.bi-brandcard:hover { text-decoration: none;; }
.bi-brandcard__letter { position: absolute; top: .6rem; left: .8rem; font-size: .75rem; font-weight: 700; color: var(--bi-muted); }
.bi-brandcard__mark { grid-area: mark; display: grid; place-items: center; height: 56px; margin: .6rem 0 .4rem; }

.bi-brandcard__name { grid-area: name; font-family: var(--bi-font-head); font-weight: 700; color: #fff; }
.bi-brandcard__count { grid-area: count; font-size: .8125rem; color: var(--bi-muted); }
.bi-brandcard__arrow { grid-area: arrow; align-self: center; width: 18px; height: 18px; color: var(--bi-accent); }
.bi-brandcard__car { display: none; }
.bi-brandcards > li.has-car { grid-column: span 2; }
.bi-brandcards > li.has-car .bi-brandcard { grid-template-columns: 1fr 1.2fr auto; grid-template-areas: "mark car arrow" "name car arrow" "count car arrow"; min-height: 170px; }
.bi-brandcards > li.has-car .bi-brandcard__mark { justify-items: start; height: auto; margin: .9rem 0 .2rem; }
.bi-brandcards > li.has-car .bi-brandcard__car { grid-area: car; display: block; width: 100%; height: auto; align-self: center; filter: drop-shadow(0 12px 16px rgba(0,0,0,.55)); transition: transform .3s var(--bi-ease); }
.bi-brandcards > li.has-car .bi-brandcard:hover .bi-brandcard__car { transform: translateX(-4px) scale(1.02); }
@media (max-width: 1100px) { .bi-brandcards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 700px) { .bi-brandcards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; } .bi-brandcards > li.has-car .bi-brandcard { min-height: 0; grid-template-columns: 1fr auto; grid-template-areas: "car car" "mark mark" "name arrow" "count arrow"; } .bi-brandcards > li.has-car .bi-brandcard__car { max-height: 120px; object-fit: contain; } }
.bi-maerker__empty { color: var(--bi-muted); }
.bi-band--help { margin-top: 2rem; }
.bi-band--inline { border-radius: var(--bi-radius-lg); border: 1px solid var(--bi-line-strong); margin: 2rem 0; }
.bi-band--inline .bi-band__grid { padding: 1.75rem 2rem; }

.bi-maerke__finder { margin-bottom: 2.5rem; }
.bi-maerke__sec { margin-bottom: 3rem; }
.bi-maerke__sec > h2 { color: #fff; margin-bottom: 1rem; }
.bi-modeltiles { list-style: none; margin: 0 0 1rem; padding: 0; display: grid; gap: .9rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bi-modeltile { position: relative; display: block; padding: .6rem .6rem 0; background: linear-gradient(180deg, #1B2A31 0%, #131D23 100%); border: 1px solid rgba(0,185,214,.22); border-radius: var(--bi-radius-lg); color: #fff; text-decoration: none; overflow: hidden; transition: border-color .2s var(--bi-ease), transform .2s var(--bi-ease); }
.bi-modeltile:hover { border-color: rgba(0,185,214,.6); transform: translateY(-3px); text-decoration: none; }
.bi-modeltile img { width: 100%; height: auto; border-radius: var(--bi-radius); }
.bi-modeltile__name { display: block; padding: .6rem .5rem .8rem; font-family: var(--bi-font-head); font-weight: 700; }
.bi-modeltile__name small { color: var(--bi-muted); font-weight: 500; margin-left: .3rem; }
.bi-modeltile svg { position: absolute; right: .9rem; bottom: .9rem; width: 18px; height: 18px; color: var(--bi-accent); }
@media (max-width: 700px) { .bi-modeltiles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; } }
.bi-standcards { list-style: none; margin: 0; padding: 0; display: grid; gap: .9rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bi-standcard { display: flex; align-items: center; gap: .9rem; padding: 1rem 1.1rem; background: var(--bi-surface); border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius-lg); color: #fff; text-decoration: none; transition: border-color .2s var(--bi-ease); }
.bi-standcard:hover { border-color: var(--bi-accent); text-decoration: none; }
.bi-standcard strong { flex: 1; font-family: var(--bi-font-head); font-size: .95rem; }
.bi-standcard svg { width: 18px; height: 18px; color: var(--bi-accent); }
@media (max-width: 700px) { .bi-standcards { grid-template-columns: 1fr; gap: .6rem; } }
.bi-parts__grid--brand .bi-parts__media { height: 110px; }
.bi-parts__grid--brand .bi-parts__media img { max-height: 100px; }
.bi-maerke__products ul.products { margin-top: 0; }

/* --- /find-dele/ landing (handoff 04) --------------------------------------- */
.page-find-dele .bi-page__head--image { --page-size: contain; --page-pos: right center; background-image: linear-gradient(90deg, rgba(16,22,25,1) 0%, rgba(16,22,25,.92) 42%, rgba(16,22,25,.15) 100%), var(--page-img); padding-block: 3rem; }
.page-find-dele .bi-page__head--image .bi-container { min-height: 300px; display: grid; align-content: center; }
.bi-fd__finder { margin-bottom: .75rem; }
.bi-fd__note--top { margin: 0 0 2rem; font-size: .875rem; color: var(--bi-muted); }
.bi-fd__sec { margin: 0 0 2.5rem; }
.bi-fd__sec > h2 { color: #fff; margin-bottom: 1rem; }
.bi-guides--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1100px) { .bi-guides--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .bi-guides--4 { grid-template-columns: 1fr; } }
/* guide cards: dark (Adam 09.10) */
.bi-guide { background: var(--bi-surface); color: var(--bi-text); border: 1px solid var(--bi-line); }
.bi-guide__body h3 { color: #fff; }
.bi-guide__body p { color: var(--bi-muted); }
.bi-guide .bi-link { color: var(--bi-accent); }

/* --- listing head (handoff 01 / 02) ----------------------------------------- */
.bi-shop__head--v2 { display: grid;; gap: 2rem;; align-items: center;; }

.bi-shop__search { max-width: 640px;; }
.bi-shop__search input { min-height: 48px;; padding: .6em 1em .6em 2.6rem;; font: inherit;; border: 0;; background: #fff;; color: var(--bi-card-text);; width: 100%;; }
.bi-shop__search .bi-btn { min-height: 48px; }
/* 18.10: Styling has 9 chips - wrap inside the text column, never slide under the header photo */
.bi-shop__headcopy { min-width: 0; }
.bi-shop__stand { flex-wrap: wrap; max-width: 100%; position: relative; z-index: 2; border-radius: 22px; }
.bi-shop__stand a { display: inline-flex; align-items: center; min-height: 36px; padding: .35em 1em; border-radius: var(--bi-radius-pill); color: var(--bi-muted); font-size: .875rem; font-weight: 600; text-decoration: none; }
.bi-shop__stand a:hover { color: #fff; }
.bi-shop__stand a.is-active { background: var(--bi-accent); color: var(--bi-accent-ink); }
.bi-shop__headimg { display: grid; place-items: center; }
.bi-shop__headimg img { width: auto;; height: auto;; max-width: 100%;; }
@media (max-width: 900px) { .bi-shop__head--v2 { grid-template-columns: 1fr; } .bi-shop__headimg { display: none; } }

/* --- dark surfaces on information pages and the product page (Adam 09.10) ---
   WooCommerce block pages (cart, checkout, account) keep .bi-lightpanel. */
.bi-tile, .bi-form--card, .bi-panel:not(.bi-panel--dark), .bi-product__media, .bi-product__buy, .bi-product__detail {
  --s-bg: var(--bi-surface); --s-text: var(--bi-text); --s-muted: var(--bi-muted); --s-line: var(--bi-surface-line); --s-link: var(--bi-accent); --s-field: #fff;
  background: var(--bi-surface); color: var(--bi-text); border: 1px solid var(--bi-line);
}
.bi-tile strong, .bi-panel h2, .bi-product__title, .bi-product__detail h2, .bi-product__detail h3 { color: #fff; }
.bi-tile span, .bi-panel .bi-text-muted, .bi-product__buy .bi-eyebrow, .bi-product__vat, .bi-product__delivery, .bi-product__code { color: var(--bi-muted); }
.bi-tile svg, .bi-contact svg { background: rgba(255,255,255,.05); color: var(--bi-accent); }
.bi-panel a, .bi-product__detail a, .bi-mount__links a:not(.bi-btn), .bi-light .bi-link, .bi-card .bi-link, .bi-deposit a { color: var(--bi-accent); }
.bi-form label { color: var(--bi-text); }
.bi-form input, .bi-form textarea, .bi-form select { background: #fff; color: var(--bi-card-text); border-color: transparent; }
.bi-form .bi-text-muted, .bi-form small { color: var(--bi-muted); }
.bi-product__code strong { color: #fff; }

.bi-product__media { padding: 0; }
.bi-product__media .woocommerce-product-gallery__image img { background: #fff; }
.bi-product__media .flex-control-thumbs img { background: #fff; }
.bi-product__media .bi-datacard { border-radius: var(--bi-radius); }
.bi-product form.cart .quantity input { background: #fff; border-color: transparent; }
.bi-deposit { background: rgba(0,185,214,.08); border-color: var(--bi-line); color: var(--bi-text); }
.bi-mount, .bi-pasform { background: rgba(255,255,255,.04); border-color: var(--bi-line); color: var(--bi-text); }
.bi-pasform__title { color: #fff; }
.bi-pasform__tabs { background: rgba(255,255,255,.06); border-color: var(--bi-line); }
.bi-pasform__tabs button { color: var(--bi-muted); }
.bi-pasform__tabs button.is-active { background: var(--bi-accent); color: var(--bi-accent-ink); }
.bi-pasform__row > input[type="text"] { background: #fff; border-color: transparent; }
.bi-pasform__hint, .bi-pasform__wait, .bi-product__mto { color: var(--bi-muted); }
.bi-product__detail .woocommerce-tabs ul.tabs { background: rgba(255,255,255,.04); border-bottom: 1px solid var(--bi-line); }
.bi-product__detail .woocommerce-tabs ul.tabs a { color: var(--bi-muted); }
.bi-product__detail .woocommerce-tabs ul.tabs a:hover, .bi-product__detail .woocommerce-tabs ul.tabs li.active a { color: #fff; }
.bi-product__detail p, .bi-product__detail li, .bi-product__detail td { color: var(--bi-text); }
.bi-specs th { color: var(--bi-muted); }

.bi-related .bi-section__head { margin-bottom: 1rem; }
.bi-related ul.products { margin-top: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 900px) { .bi-related ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* guides index: featured card */
.bi-guide--featured { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); align-items: center; margin-bottom: 2.5rem; background: linear-gradient(180deg, #1B2A31 0%, #131D23 100%); border-color: rgba(0,185,214,.3); }
.bi-guide--featured .bi-guide__body { padding: 1.75rem 2rem; gap: .6rem; }
.bi-guide--featured .bi-guide__body h3 { font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.1rem); }
.bi-guide--featured .bi-guide__body p { font-size: 1rem; }
.bi-guide--featured .bi-guide__body .bi-btn { justify-self: start; margin-top: .4rem; }
.bi-guide--featured .bi-guide__media { aspect-ratio: 16 / 10; margin: .6rem; border-radius: var(--bi-radius); }
.bi-guides__h { color: #fff; margin: 0 0 1rem; }
@media (max-width: 800px) { .bi-guide--featured { grid-template-columns: 1fr; } .bi-guide--featured .bi-guide__media { order: -1; margin: .6rem .6rem 0; } }

/* empty search (handoff 27) */
.bi-empty { padding: 1.75rem 2rem; background: var(--bi-surface); border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius-lg); }
.bi-empty h2 { color: #fff; margin-bottom: .4rem; }
.bi-empty p { color: var(--bi-muted); max-width: 62ch; }
.bi-empty__cta { display: flex; flex-wrap: wrap; gap: .6rem; margin: 1rem 0 1.25rem; }
.bi-empty__cats { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; margin: 0; }

.bi-guides__chips { flex-wrap: wrap; }

/* --- legal / customer-service documents (handoff 22-26) -------------------- */
.bi-doc__grid { display: grid; gap: 2.5rem; grid-template-columns: 260px minmax(0, 760px); padding-block: 2rem 3rem; align-items: start; }
.bi-doc__side { position: sticky; top: 88px; display: grid; gap: 1rem; }
.bi-doc__nav { padding: 1rem 1.1rem; background: var(--bi-surface); border: 1px solid var(--bi-line); border-radius: var(--bi-radius-lg); }
.bi-doc__nav strong { display: block; font-family: var(--bi-font-head); color: #fff; margin-bottom: .5rem; }
.bi-doc__nav ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .1rem; }
.bi-doc__nav a { display: block; padding: .45rem .6rem; border-radius: var(--bi-radius-sm); color: var(--bi-muted); font-weight: 500; }
.bi-doc__nav a:hover { color: #fff; background: rgba(255,255,255,.04); text-decoration: none; }
.bi-doc__nav li.is-active a { color: var(--bi-accent); background: rgba(0,185,214,.08); border-left: 3px solid var(--bi-accent); }
.bi-doc__toc { position: static; }
.bi-doc__toc ol a { color: var(--bi-muted); }
.bi-doc__toc ol a:hover { color: var(--bi-accent); }
.bi-doc__help { padding: 1rem 1.1rem; background: var(--bi-surface); border: 1px solid var(--bi-line); border-radius: var(--bi-radius-lg); display: grid; gap: .25rem; font-size: .9375rem; }
.bi-doc__help strong { color: #fff; font-family: var(--bi-font-head); }
.bi-doc__help a { color: var(--bi-accent); font-weight: 600; }
.bi-doc__help span { color: var(--bi-muted); font-size: .8125rem; }
.bi-doc__body { padding-block: 0; gap: 1rem; font-size: 1.0625rem; line-height: 1.7; }
.bi-doc__body h2 { margin-top: 1.5rem; padding-top: 1.5rem; border-top: 1px solid var(--bi-line); font-size: 1.4rem; scroll-margin-top: 100px; }
.bi-doc__body h2:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.bi-doc__body p, .bi-doc__body li { color: var(--bi-text); }
@media (max-width: 900px) { .bi-doc__grid { grid-template-columns: 1fr; gap: 1.5rem; } .bi-doc__side { position: static; } .bi-doc__nav ul { display: flex; flex-wrap: wrap; gap: .3rem; } .bi-doc__nav li.is-active a { border-left: 0; } }

/* --- cart / checkout / account / confirmation: dark panel (Adam 09.10, handoff 18-21) ---
   Fields stay white for legibility; the panel, text and summary go dark. */
.bi-lightpanel { background: var(--bi-surface); color: var(--bi-text); border: 1px solid var(--bi-line); }
.bi-lightpanel a, .bi-lightpanel .wc-block-checkout__terms a { color: var(--bi-accent); }
.bi-lightpanel h2, .bi-lightpanel h3, .bi-lightpanel .wp-block-heading, .bi-page__body .bi-lightpanel .wp-block-heading, .bi-lightpanel .wc-block-components-title, .bi-lightpanel .wc-block-components-checkout-step__title, .bi-lightpanel .wc-block-cart__empty-cart__title, .bi-lightpanel .woocommerce-thankyou-order-received { color: #fff; }
.bi-lightpanel, .bi-lightpanel .wc-block-components-product-name, .bi-lightpanel .wc-block-components-totals-item__label, .bi-lightpanel .wc-block-components-totals-item__value, .bi-lightpanel .wc-block-components-totals-footer-item, .bi-lightpanel .wc-block-components-product-details__value, .bi-lightpanel .wc-block-components-radio-control__label, .bi-lightpanel .wc-block-components-radio-control__secondary-label, .bi-lightpanel .wc-block-components-checkbox__label, .bi-lightpanel .wc-block-components-order-summary-item__description, .bi-lightpanel .wc-block-components-formatted-money-amount, .bi-lightpanel .wc-block-components-panel__button, .bi-lightpanel .wc-block-components-shipping-rates-control .wc-block-components-radio-control__secondary-label, .bi-lightpanel .wc-block-components-order-summary-item__total-price, .bi-lightpanel .wc-block-components-order-summary-item__individual-prices, .bi-lightpanel .wc-block-cart-item__total, .bi-lightpanel .wc-block-cart-item__prices, .bi-lightpanel table, .bi-lightpanel .woocommerce-order-overview strong, .bi-lightpanel .woocommerce-MyAccount-navigation a, .bi-lightpanel .wc-block-components-shipping-address, .bi-lightpanel .wc-block-components-address-card { color: var(--bi-text); }
.bi-lightpanel .wc-block-components-checkout-step__description, .bi-lightpanel .wc-block-components-product-details__name, .bi-lightpanel .wc-block-components-totals-item__description, .bi-lightpanel .wc-block-components-totals-shipping__via, .bi-lightpanel .wc-block-cart-items__header, .bi-lightpanel .wc-block-cart-item__remove-link, .bi-lightpanel .wc-block-components-checkout-return-to-cart-button, .bi-lightpanel .woocommerce-order-overview li, .bi-lightpanel .wc-block-components-product-metadata, .bi-lightpanel .wc-block-components-order-summary-item__quantity, .bi-lightpanel .wc-block-checkout__terms { color: var(--bi-muted); }
.bi-lightpanel .wc-block-components-sidebar, .bi-lightpanel .woocommerce-order-overview, .bi-lightpanel .woocommerce-form-login, .bi-lightpanel .woocommerce-form-register, .bi-lightpanel .woocommerce-ResetPassword { background: rgba(255,255,255,.04); border-color: var(--bi-line); }
.bi-lightpanel .wc-block-components-order-summary-item__quantity { background: var(--bi-surface); border-color: var(--bi-accent); color: #fff; }
.bi-lightpanel .wc-block-cart-items, .bi-lightpanel .wc-block-cart-items__row, .bi-lightpanel .wc-block-cart-items th, .bi-lightpanel .wc-block-cart-items td, .bi-lightpanel .wc-block-components-totals-item, .bi-lightpanel .wc-block-components-totals-footer-item, .bi-lightpanel .wc-block-components-checkout-step:not(:last-child), .bi-lightpanel .wc-block-components-panel, .bi-lightpanel .woocommerce table.shop_table th, .bi-lightpanel .woocommerce table.shop_table td, .bi-lightpanel .wc-block-components-order-summary__content, .bi-lightpanel .wc-block-components-totals-wrapper, .bi-lightpanel .wp-block-woocommerce-empty-cart-block .wp-block-separator, .bi-lightpanel .wc-block-components-address-card { border-color: var(--bi-line) !important; }
.bi-lightpanel .wc-block-components-totals-wrapper::after, .bi-lightpanel .wc-block-components-order-summary::after, .bi-lightpanel .wc-block-components-panel::after, .bi-lightpanel .wc-block-components-totals-item::after { border-color: var(--bi-line) !important; }
.bi-lightpanel .wc-block-components-radio-control-accordion-option, .bi-lightpanel .wc-block-components-radio-control__option, .bi-lightpanel .wc-block-components-radio-control-accordion-content, .bi-lightpanel .wc-block-components-shipping-rates-control__package { border-color: var(--bi-line) !important; background: transparent; color: var(--bi-text); }
.bi-lightpanel .wc-block-components-radio-control-accordion-option.wc-block-components-radio-control-accordion-option--checked-option-highlighted, .bi-lightpanel .wc-block-components-radio-control__option--checked-option-highlighted { box-shadow: inset 0 0 0 1px var(--bi-accent); }
.bi-lightpanel .wc-block-components-radio-control__input, .bi-lightpanel .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] { background: #fff; }
.bi-lightpanel .wc-block-components-text-input input, .bi-lightpanel .wc-block-components-combobox input, .bi-lightpanel .wc-block-components-textarea textarea, .bi-lightpanel .wc-block-components-select select, .bi-lightpanel .woocommerce form .form-row .input-text, .bi-lightpanel .woocommerce form .form-row select, .bi-lightpanel .wc-block-components-quantity-selector, .bi-lightpanel .wc-block-components-totals-coupon__input input { background: #fff; color: var(--bi-card-text); border-color: transparent; }
.bi-lightpanel .wc-block-components-text-input label, .bi-lightpanel .wc-block-components-combobox label, .bi-lightpanel .wc-block-components-textarea label, .bi-lightpanel .wc-block-components-select label, .bi-lightpanel .wc-block-components-totals-coupon__input label, .bi-lightpanel .wc-block-components-form .wc-block-components-text-input label { color: #5B6570; }
.bi-lightpanel .wc-block-components-quantity-selector input, .bi-lightpanel .wc-block-components-quantity-selector button { color: var(--bi-card-text); }
.bi-lightpanel .wc-block-components-quantity-selector::after { border-color: transparent; }
.bi-lightpanel .woocommerce form .form-row label, .bi-lightpanel .woocommerce-form-login label, .bi-lightpanel .wc-block-components-text-input.is-active label { color: var(--bi-text); }
.bi-lightpanel .wc-block-components-text-input.is-active label, .bi-lightpanel .wc-block-components-combobox.is-active label, .bi-lightpanel .wc-block-components-textarea.is-active label, .bi-lightpanel .wc-block-components-select.is-active label { color: #5B6570; }
.bi-lightpanel .wc-block-components-validation-error p { color: #FF7A7A; }
.bi-lightpanel .woocommerce-MyAccount-navigation li.is-active a, .bi-lightpanel .woocommerce-MyAccount-navigation a:hover { background: rgba(0,185,214,.08); color: var(--bi-accent); }
.bi-lightpanel .woocommerce-message, .bi-lightpanel .woocommerce-info, .bi-lightpanel .woocommerce-error { background: rgba(255,255,255,.04) !important; color: var(--bi-text) !important; border-color: var(--bi-line) !important; }
.bi-lightpanel .wc-block-components-totals-coupon__form .wc-block-components-button { background: rgba(255,255,255,.08) !important; }
.bi-lightpanel .wc-block-cart-item__image img, .bi-lightpanel .wc-block-components-order-summary-item__image img { background: #fff; border-radius: var(--bi-radius); }
.bi-lightpanel .wc-block-grid__product-title, .bi-lightpanel .wc-block-grid__product-price, .bi-lightpanel .wc-block-components-product-price { color: var(--bi-text); }
.bi-lightpanel .wc-block-components-product-badge { color: var(--bi-accent); }
.bi-lightpanel .wc-block-components-order-summary__button-text, .bi-lightpanel .wc-block-components-panel__button, .bi-lightpanel .wc-block-components-panel__button svg { color: #fff; }

/* card CTA as outline (mockup, Adam 09.10) */
.bi-card .bi-btn--outline { border-color: rgba(0,185,214,.6); color: var(--bi-accent); font-weight: 600; }
.bi-card:hover .bi-btn--outline { border-color: var(--bi-accent); background: rgba(0,185,214,.1); }

/* category head: intro under the title, bigger cut-out; bottom band (handoff 02) */

.bi-shop__desc { margin-top: .5rem;; }

.bi-catband { margin-top: 3rem;; border-top: 1px solid rgba(0,185,214,.25);; border-bottom: 1px solid var(--bi-line);; }
.bi-catband__grid { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 2rem; align-items: center; padding-block: 3rem; }
.bi-catband h2 { color: #fff; font-size: clamp(1.6rem, 1.2rem + 1.6vw, 2.4rem); line-height: 1.1; margin-bottom: .6rem; }
.bi-catband p { color: var(--bi-muted); max-width: 56ch; }
.bi-catband__img { display: grid; place-items: center; }
.bi-catband__img img { width: auto;; height: auto;; max-width: 100%;; }
@media (max-width: 900px) { .bi-catband__grid { grid-template-columns: 1fr; padding-block: 2rem; } .bi-catband__img img { max-height: 200px; } }

/* search results (handoff 03): sidebar boxes, fitment notice, guides band */
.bi-catalog__side { display: grid; gap: 1rem; align-content: start; }
@media (min-width: 981px) { .bi-catalog__side .bi-filters { position: static; } }
.bi-sidebox { padding: 1rem 1.1rem; background: var(--bi-surface); border: 1px solid var(--bi-line); border-radius: var(--bi-radius-lg); display: grid; gap: .5rem; }
.bi-sidebox strong { font-family: var(--bi-font-head); color: #fff; }
.bi-sidebox p { margin: 0; font-size: .875rem; color: var(--bi-muted); }
.bi-sidebox ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .3rem; }
.bi-sidebox ul a { display: block; padding: .45rem .7rem; border: 1px solid var(--bi-line); border-radius: var(--bi-radius-sm); color: var(--bi-text); font-size: .875rem; }
.bi-sidebox ul a:hover { border-color: var(--bi-accent); color: var(--bi-accent); text-decoration: none; }
.bi-sidebox--vin img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--bi-radius); margin-bottom: .25rem; }
.bi-notice { display: flex; gap: .9rem; align-items: flex-start; padding: .9rem 1rem; margin: 0 0 1rem; background: rgba(0,185,214,.07); border: 1px solid rgba(0,185,214,.3); border-radius: var(--bi-radius-lg); }
.bi-notice svg { flex: none; width: 22px; height: 22px; color: var(--bi-accent); margin-top: .1rem; }
.bi-notice strong { display: block; color: #fff; }
.bi-notice p { margin: .15rem 0 0; font-size: .875rem; color: var(--bi-muted); }
.bi-catband--guides .bi-catband__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); }
.bi-guides--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.bi-guides--3 .bi-guide__body p, .bi-guides--3 .bi-guide__body time { display: none; }
@media (max-width: 980px) { .bi-catalog--search .bi-catalog__side > .bi-sidebox { display: none; } .bi-catband--guides .bi-catband__grid { grid-template-columns: 1fr; } }
@media (max-width: 640px) { .bi-guides--3 { grid-template-columns: 1fr; } }

/* card photo without the white frame (Adam 09.10) */

.bi-card__media .woocommerce-placeholder { object-fit: contain; padding: 20%; }

/* listing hero: full bleed, real workshop photo blurred and darkened behind the cut-out (mockups 01-03) */
.bi-shophero { position: relative;; overflow: hidden;; background: var(--bi-bg);; isolation: isolate;; }
.bi-shophero::before { content: ""; position: absolute; inset: -40px; z-index: -2; background: var(--shop-bg, none) center 40% / cover no-repeat; filter: blur(14px) saturate(.6) brightness(.45); transform: scale(1.06); }
.bi-shophero::after { content: "";; position: absolute;; inset: 0;; z-index: -1;; }
.bi-shophero .bi-container { padding-top: 1rem; }
.bi-shophero .bi-breadcrumb { margin-bottom: .5rem; }
.bi-shop__head--v2 { margin: 0;; padding-block: .5rem 1.75rem;; }
.bi-shop__headimg img { filter: drop-shadow(0 24px 30px rgba(0,0,0,.7));; }
.bi-shop__head--v2 h1 { margin-bottom: .25rem; }
.bi-shop__desc { max-width: 56ch; }
.bi-shop__search { margin: .9rem 0 .75rem; }
.bi-shop { padding-top: 1.5rem; }
@media (max-width: 900px) { .bi-shop__head--v2 { grid-template-columns: 1fr; padding-bottom: 1.25rem; } .bi-shophero::after { background: linear-gradient(180deg, rgba(16,22,25,.95) 0%, rgba(16,22,25,.85) 100%); } }
/* bottom band: same backdrop, photo on the right */
.bi-catband { position: relative; overflow: hidden; isolation: isolate; background: var(--bi-bg); }
.bi-catband::before { content: ""; position: absolute; inset: -40px; z-index: -2; background: var(--shop-bg, none) center 60% / cover no-repeat; filter: blur(14px) saturate(.6) brightness(.4); transform: scale(1.06); }
.bi-catband::after { content: "";; position: absolute;; inset: 0;; z-index: -1;; }
.bi-catband__img img { max-height: 340px; filter: drop-shadow(0 24px 30px rgba(0,0,0,.7)); }
.bi-catband--guides::before, .bi-catband--guides::after { content: none; }
.bi-catband--guides { background: linear-gradient(180deg, #1B2A31 0%, #131D23 100%); }

/* front hero: same blurred workshop backdrop (Adam 09.10) */

/* --- polish after mockup comparison (GPT vision review, 09.10) --------------- */
/* hero */

.bi-hero__cta { gap: 1.5rem; }
.bi-hero__cta .bi-btn--primary { box-shadow: 0 6px 20px rgba(0,185,214,.3); }

/* listing hero */
.bi-shop__head--v2 h1 { font-size: clamp(2.4rem, 1.4rem + 3vw, 3.75rem); letter-spacing: -.025em; line-height: 1; }
.bi-shop__desc { font-size: 1.125rem; color: #C7D0D9; line-height: 1.55; }
.bi-shop__search input, .bi-shop__search .bi-btn { min-height: 56px; }
.bi-shop__search input { border-radius: 10px; font-size: 1.0625rem; }
.bi-shop__headimg img { max-height: 380px; }
.bi-shop__head--v2 { grid-template-columns: minmax(0, 1fr) 520px; }
/* product cards: photo more exposed, soft glow, bigger badge */
ul.products, .woocommerce ul.products, .bi-shop ul.products { gap: 1rem; }
.bi-card { background: #17222B; border-color: #23303D; }
.bi-card__media { margin: .75rem .75rem 0; aspect-ratio: 4 / 3; background: radial-gradient(80% 70% at 50% 65%, #2A3942 0%, #17222B 100%); border-radius: var(--bi-radius); }
.bi-card__media img { object-fit: contain;; padding: .4rem;; }
.bi-card .bi-tag { top: .7rem; left: .7rem; font-size: .75rem; padding: .35em .8em; }
.bi-card__title { font-size: .95rem; }
.bi-card__body { padding-top: .7rem; }
.bi-card .bi-btn--outline { min-height: 42px; font-size: .9375rem; }

/* generated workshop scenes (gpt-image-1, like the mockups) as backdrops: sharp, no blur */
.bi-shophero::before, .bi-catband::before { inset: 0;; transform: none;; background-position: center 70%;; }

.bi-shophero, .bi-catband { background-color: #0B1013; }
@media (max-width: 900px) { .bi-shophero::after, .bi-catband::after { background: linear-gradient(180deg, rgba(16,22,25,.9) 0%, rgba(16,22,25,.6) 100%); } }

/* floor shadow under cut-outs (mockup): soft ellipse behind the image bottom */
.bi-shop__headimg, .bi-catband__img { position: relative; }
.bi-shop__headimg::before, .bi-catband__img::before { content: "";; position: absolute;; z-index: 0;; pointer-events: none;; }

.bi-shop__headimg img, .bi-catband__img img { position: relative;; z-index: 1;; }

/* shadow ellipse anchored to the image box, not the caption */

/* stronger floor shadow (Adam 09.10: engines must cast a shadow like the mockup) */

/* one continuous scene behind hero + finder + counters, fading into the page (mockup) */

/* listing hero and band: no hard edges either */
.bi-shophero { border-bottom: 0; }

.bi-catband { border: 0; }
.bi-catband::after { background: linear-gradient(90deg, rgba(16,22,25,.88) 0%, rgba(16,22,25,.4) 45%, rgba(16,22,25,0) 72%), linear-gradient(180deg, var(--bi-bg) 0%, rgba(16,22,25,0) 25%); }

/* contact shadow like the mockup: soft, wide, no hard edge (Adam 09.10) */
.bi-shop__headimg::before, .bi-catband__img::before { left: 8%; right: 8%; bottom: 1%; height: 10%; border-radius: 50%; background: radial-gradient(50% 50% at 50% 50%, rgba(0,0,0,.75) 0%, rgba(0,0,0,.35) 45%, transparent 80%); filter: blur(10px); opacity: .9; }
.bi-shop__headimg img, .bi-catband__img img { filter: drop-shadow(0 10px 8px rgba(0,0,0,.45)) drop-shadow(0 30px 30px rgba(0,0,0,.5)); }

/* hero composition like the mockup: engines standing on the floor, bright perspective ring on the floor behind them */

/* hero scene with the ring baked into the image (Adam, ChatGPT 09.10 11:46): engines stand on that ring */

/* ring directly under the engine bases, captions below the ring */

/* (superseded by section 13) */

/* ==========================================================================
   13. Backgrounds package 2026-10-09 (MAPA-TEL.md): photo plates + CSS gradients
   ========================================================================== */
:root { --bg-border: #24434d; }
/* uniform CSS backgrounds from backgrounds.css */

.bi-header { background: linear-gradient(90deg, rgba(16,22,25,.94), rgba(8,23,29,.94)); }
.bi-footer { background: linear-gradient(135deg, #101619, #0b1b21); }

.bi-card, .bi-group, .bi-parts__tile, .bi-brandcard, .bi-modeltile, .bi-standcard, .bi-sidebox, .bi-help__box, .bi-finder--v2, .bi-doc__nav, .bi-doc__help, .bi-maerker__find, .bi-empty, .bi-tile, .bi-panel:not(.bi-panel--dark), .bi-product__buy, .bi-product__detail, .bi-lightpanel { background: linear-gradient(145deg, #10232b, #111c22); border-color: var(--bg-border); }
.bi-band--v2, .bi-catband--guides, .bi-band--inline { background: linear-gradient(110deg, #142c35, #10232b 70%, #101619); }

/* generic photo plate for page heads */
.bi-bgphoto { position: relative; isolation: isolate; overflow: hidden; background-color: #101619; }
.bi-bgphoto::before { content: ""; position: absolute; inset: 0; z-index: -2; background: var(--bg) center / cover no-repeat; }
.bi-bgphoto::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(6,16,20,.8) 0%, rgba(6,16,20,.45) 40%, transparent 70%), linear-gradient(180deg, transparent 60%, rgba(16,22,25,.9) 100%); }
.bi-bgphoto--ring::before { background-size: 115% auto; background-position: 60% 60%; }
@media (max-width: 767px) { .bi-bgphoto::after { background: linear-gradient(rgba(16,22,25,.72), rgba(16,22,25,.85)); } }
.bi-maerker__hero, .bi-maerke__hero { border-bottom: 0; }
.bi-maerker__hero-grid, .bi-maerke__hero-grid { padding-block: 2.5rem 2.5rem; }

/* 02 studio floor: product gallery, product cards, tiles (cut-out stays a separate image, contain) */
.bi-product__media { background: #101619 url("assets/bg/tlo-studio-900.webp") center / cover no-repeat; }
.bi-product__media .woocommerce-product-gallery__image img, .bi-product__media .flex-control-thumbs img { background: transparent; mix-blend-mode: normal; }
.bi-card__media, .bi-group__media, .bi-parts__media { background: url("assets/bg/tlo-studio-900.webp") center 65% / cover no-repeat; border-radius: var(--bi-radius); }
.bi-parts__media { margin-inline: -.2rem; }
.bi-card__media img { filter: drop-shadow(0 14px 14px rgba(0,0,0,.6)); }
/* 02 also behind the Bytteordning page head (page 22) */
.page-id-22 .bi-page__head--image { background: linear-gradient(90deg, rgba(16,22,25,.94) 0%, rgba(16,22,25,.75) 45%, rgba(16,22,25,.1) 100%), var(--page-img) var(--page-pos, right center) / var(--page-size, 34% auto) no-repeat, url("assets/bg/tlo-studio-1672.webp") center / cover no-repeat #101619; }
/* 04 vehicle hall: find-dele head (car cut-out on top) */
.page-id-69214 .bi-page__head--image { padding-block: 3rem; background: linear-gradient(90deg, rgba(6,16,20,.9) 0%, rgba(6,16,20,.6) 42%, rgba(6,16,20,.1) 100%), var(--page-img) right center / contain no-repeat, url("assets/bg/tlo-hall-1672.webp") center / cover no-repeat #101619; }
.page-id-69214 .bi-page__head--image .bi-container { min-height: 300px; display: grid; align-content: center; }
/* 06 guides: index head and article heads */
.page-id-4987 .bi-page__head, .bi-article .bi-page__head { position: relative; isolation: isolate; overflow: hidden; }
.page-id-4987 .bi-page__head::before, .bi-article .bi-page__head::before { content: ""; position: absolute; inset: 0; z-index: -2; background: url("assets/bg/tlo-guides-1672.webp") center 40% / cover no-repeat; }
.page-id-4987 .bi-page__head::after, .bi-article .bi-page__head::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(16,22,25,.95) 0%, rgba(16,22,25,.85) 45%, rgba(16,22,25,.35) 100%); }
.page-id-4987 .bi-page__head--image { background-image: none; }
.bi-article .bi-page__head--compact { padding-block: 2.5rem 2rem; }
/* 03 on listing: softer left gradient per backgrounds.css */
.bi-shophero::after { background: linear-gradient(90deg, rgba(6,16,20,.85) 0%, rgba(6,16,20,.5) 45%, transparent 70%), linear-gradient(180deg, transparent 70%, var(--bi-bg) 100%); }
.bi-shophero::before, .bi-catband::before { filter: none; }
.bi-shophero.is-search::before, .bi-shophero.is-search::after { content: none; }
.bi-shophero.is-search { background: linear-gradient(110deg, #182a32 0%, #10232b 52%, #101c22 100%); }

/* 01 hero ring on the front page: ring under the engine bases (Adam: za nisko, za duży) */

/* ring: smaller, passing behind the lower part of the engines; captions below (Adam 09.10, 3rd pass) */

/* ==========================================================================
   14. Hero v3 (Adam's spec 09.10): own section, 580px, bg cover center top, text 32% / engines 68%
   ========================================================================== */

.bi-finderwrap { background: var(--bi-bg); padding-block: 1.5rem 0; margin-top: 0; }

.bi-finderwrap .bi-finder--v2 { background: linear-gradient(145deg, #10232b, #111c22); -webkit-backdrop-filter: none; backdrop-filter: none; }
.bi-stats--v2 { background: var(--bi-bg); }

/* hero + finder on one background plate, fading into the page under the finder; engines on the ring; stronger shadows */

/* ring higher behind the engines (Adam 09.10) */

/* seamless page: one flat ground, no section bands; hero plate fades out through the counters (mockup) */
body { background: #101619; }
.bi-section--alt, .bi-stats--v2, .bi-finderwrap, .bi-catband--guides, .bi-band--v2, .bi-band--inline { background: #101619; }
.bi-band--v2, .bi-band--inline, .bi-catband--guides { border: 1px solid var(--bg-border); border-radius: var(--bi-radius-lg); }
.bi-band--v2:not(.bi-band--inline) { border-radius: 0; border-left: 0; border-right: 0; }

/* light pattern under alternate sections (Adam 09.10): faint cyan glow + dot grid, soft edges */
.bi-section--alt { position: relative; isolation: isolate; background: #101619; }
.bi-section--alt::before { content: "";; position: absolute;; inset: 0;; z-index: -1;; pointer-events: none;; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 8%, #000 92%, transparent 100%);; mask-image: linear-gradient(180deg, transparent 0%, #000 8%, #000 92%, transparent 100%);; }

/* organic pattern instead of the dot grid: film grain (SVG noise) + a few soft light pools, no repetition visible */
.bi-section--alt::before {
  background:
    radial-gradient(60% 55% at 82% 18%, rgba(0,185,214,.11), transparent 70%),
    radial-gradient(45% 45% at 14% 86%, rgba(0,185,214,.07), transparent 70%),
    radial-gradient(35% 30% at 48% 55%, rgba(120,160,175,.05), transparent 70%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E") 0 0 / 300px 300px,
    linear-gradient(180deg, #101619 0%, #0F1A20 50%, #101619 100%);
}

/* compact hero like the mockup (Adam 09.10): smaller type, engines 290px, tighter finder and counters */

.bi-finder--v2 { padding: 1.1rem 1.5rem; gap: 1.25rem; grid-template-columns: minmax(0, 220px) minmax(0, 1fr); }
.bi-finder__title { font-size: 1.25rem; }
.bi-finder--v2 .bi-finder__panel input[type="search"], .bi-finder--v2 .bi-finder__row .bi-btn { min-height: 46px; }
.bi-finder--v2 .bi-finder__tabs { margin-bottom: .5rem; }
.bi-stats--v2 { padding-block: .25rem .5rem; }
.bi-stats--v2 .bi-stat { padding: .75rem 1.25rem; }
.bi-stat strong { font-size: 1.3rem; }

/* contact form: file field */
.bi-form__file input[type="file"] { padding: .55em .8em; background: rgba(255,255,255,.04); border: 1px dashed var(--bi-line-strong); border-radius: var(--bi-radius); color: var(--bi-text); font-size: .875rem; }
.bi-form__file input[type="file"]::file-selector-button { margin-right: .8em; padding: .4em .9em; border: 0; border-radius: var(--bi-radius-sm); background: var(--bi-accent); color: var(--bi-accent-ink); font: inherit; font-weight: 700; cursor: pointer; }
.bi-form__file small { font-weight: 400; color: var(--bi-muted); }
/* workshop page: video poster + map (handoff 11) */

/* installation guide: top callout + code card (handoff 15) */
.bi-callout { display: flex; gap: .9rem; align-items: flex-start; padding: 1rem 1.1rem; background: rgba(243,181,74,.08); border: 1px solid rgba(243,181,74,.4); border-radius: var(--bi-radius-lg); max-width: 860px; }
.bi-callout svg { flex: none; width: 24px; height: 24px; color: var(--bi-warn); margin-top: .1rem; }
.bi-callout strong { display: block; color: #fff; }
.bi-callout p { margin: .2rem 0 0; color: var(--bi-text); font-size: .9375rem; }
.bi-codecard { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1rem; align-items: center; padding: 1.1rem 1.25rem; background: linear-gradient(145deg, #10232b, #111c22); border: 1px solid var(--bg-border); border-radius: var(--bi-radius-lg); max-width: 860px; }
.bi-codecard strong { display: block; color: #fff; font-family: var(--bi-font-head); }
.bi-codecard span { font-size: .875rem; color: var(--bi-muted); }
.bi-codecard form { display: flex; gap: .5rem; }
.bi-codecard input { min-height: 44px; padding: .5em .9em; font: inherit; border: 0; border-radius: var(--bi-radius); background: #fff; color: var(--bi-card-text); width: 200px; }
@media (max-width: 700px) { .bi-codecard { grid-template-columns: 1fr; } .bi-codecard input { width: 100%; } }

/* order confirmation on the dark panel (handoff 21) */
.bi-thanks__head h1, .bi-thanks__next h2, .bi-thanks__details h2, .bi-thanks__details .woocommerce-order-details__title, .bi-thanks__details .woocommerce-column__title, .bi-thanks__card h2, .bi-thanks__card strong, .bi-thanks__next .bi-steps li strong, .bi-thanks__status h2 { color: #fff; }
.bi-thanks__head p, .bi-thanks__next .bi-steps li, .bi-thanks__details tfoot th, .bi-thanks__details .wc-item-meta, .bi-thanks__facts dt, .bi-thanks__card p { color: var(--bi-muted); }
.bi-thanks__status--pending { background: rgba(243,181,74,.10); border-color: rgba(243,181,74,.35); border-left-color: var(--bi-warn); color: var(--bi-text); }
.bi-thanks__status--pending h2 { color: var(--bi-warn); }
.bi-thanks__status--paid { background: rgba(27,138,63,.12); border-color: rgba(78,208,122,.35); color: var(--bi-text); }
.bi-thanks__status--paid h2 { color: var(--bi-ok-light); }
.bi-thanks__gateway, .bi-thanks__gateway p, .bi-thanks__gateway li, .bi-thanks__gateway .wc-bacs-bank-details-heading, .bi-thanks__gateway .wc-bacs-bank-details-account-name { color: var(--bi-text); }
.bi-thanks__card { background: linear-gradient(145deg, #10232b, #111c22); border: 1px solid var(--bg-border); color: var(--bi-text); }
.bi-thanks__card--contact { background: rgba(0,185,214,.08); border-color: rgba(0,185,214,.35); }
.bi-thanks__card--contact a:not(.bi-btn) { color: var(--bi-accent); }
.bi-thanks__facts dd { color: #fff; }
.bi-thanks__details .woocommerce-table--order-details th, .bi-thanks__details .woocommerce-table--order-details td, .bi-thanks__details address { color: var(--bi-text); border-color: var(--bi-line); }
.bi-thanks__details .woocommerce-customer-details address { background: rgba(255,255,255,.04); border: 1px solid var(--bi-line); }
.bi-thanks .bi-deposit { background: rgba(0,185,214,.08); color: var(--bi-text); }
.bi-thanks .bi-steps li::before { background: var(--bi-accent); }

/* ellipse higher behind the engines (Adam 09.10) */

/* brand index: 70 equal cards with a 3:2 illustration field (package 2026-10-09) */
.bi-brandcards { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.bi-brandcards > li, .bi-brandcards > li.has-car { grid-column: auto; }
.bi-brandcard, .bi-brandcards > li.has-car .bi-brandcard { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "car car" "mark mark" "name arrow" "count arrow"; gap: .1rem .5rem; padding: 0 0 1rem; min-height: 0; background: #101619; border: 1px solid #24434d; border-radius: 12px; overflow: hidden; }
.bi-brandcard:hover { border-color: var(--bi-accent); box-shadow: 0 8px 28px rgba(0,0,0,.22); transform: none; }
.bi-brandcard__car, .bi-brandcards > li.has-car .bi-brandcard__car { grid-area: car; display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: contain; background: #101619; filter: none; transform: none !important; }
.bi-brandcard__letter { display: none; }
.bi-brandcard__mark, .bi-brandcards > li.has-car .bi-brandcard__mark { grid-area: mark; justify-items: start; height: auto; margin: .6rem 1rem .2rem; }
.bi-brandcard__mark .bi-brands__logo { max-width: 90px; max-height: 32px; }
.bi-brandcard__name { margin-inline: 1rem; }
.bi-brandcard__count { margin-inline: 1rem; }
.bi-brandcard__arrow { margin-right: 1rem; }
@media (max-width: 1024px) { .bi-brandcards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) { .bi-brandcards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } .bi-brandcards > li.has-car .bi-brandcard { grid-template-areas: "car car" "mark mark" "name arrow" "count arrow"; } }
@media (max-width: 359px) { .bi-brandcards { grid-template-columns: 1fr; } }

/* ==========================================================================
   15. Workshop page /montering/ (handoff 11)
   ========================================================================== */
.page-id-4970 .bi-page__head { display: none; }   /* the page builds its own hero below */
.page-id-4970 .bi-page__body { padding-top: 1.5rem; }
.bi-ws { display: grid; gap: 2.5rem; }
.bi-ws__hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 2rem; align-items: center; }
.bi-ws__h1 { color: #fff; font-size: clamp(2rem, 1.3rem + 2.4vw, 3.2rem); line-height: 1.02; letter-spacing: -.02em; margin: .3rem 0 .9rem; }
.bi-ws__h1 span { display: block; color: var(--bi-accent); font-size: .72em; font-weight: 600; margin-top: .25rem; }
.bi-ws__copy > p { color: var(--bi-muted); max-width: 48ch; }
.bi-ws__cta { display: flex; gap: .75rem; flex-wrap: wrap; margin-top: 1.2rem; }
.bi-ws__photo { margin: 0; border-radius: var(--bi-radius-lg); overflow: hidden; border: 1px solid var(--bi-line); }
.bi-ws__photo img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.bi-ws__services { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.bi-ws__svc { display: grid; gap: .5rem; padding: 1.25rem 1.3rem 1.1rem; background: linear-gradient(145deg, #10232b, #111c22); border: 1px solid var(--bg-border); border-radius: var(--bi-radius-lg); }
.bi-ws__svc svg { width: 32px; height: 32px; color: var(--bi-accent); }
.bi-ws__svc h3 { margin: 0; color: #fff; font-size: 1.1rem; }
.bi-ws__svc p { margin: 0; color: var(--bi-muted); font-size: .9375rem; }
.bi-ws__tag { display: inline-flex; align-items: center; gap: .5rem; margin-top: .5rem; padding-top: .8rem; border-top: 1px solid var(--bi-line); color: #fff; font-weight: 600; font-size: .9375rem; }
.bi-ws__tag::before { content: ""; width: 16px; height: 16px; background: var(--bi-accent); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 5.5a4 4 0 0 0 5 5L9 21l-3-3L16.5 7.5a4 4 0 0 0-2-2z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 5.5a4 4 0 0 0 5 5L9 21l-3-3L16.5 7.5a4 4 0 0 0-2-2z'/%3E%3C/svg%3E") center / contain no-repeat; }
.bi-ws__ask { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 0; background: linear-gradient(145deg, #10232b, #111c22); border: 1px solid var(--bg-border); border-radius: var(--bi-radius-lg); overflow: hidden; }
.bi-ws__repair { margin: 0; min-height: 100%; }
.bi-ws__repair img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bi-ws__form { padding: 1.75rem 2rem 2rem; }
.bi-ws__form h2 { color: #fff; margin: .3rem 0 .4rem; }
.bi-ws__form .bi-form--card { padding: 0; background: transparent; border: 0; margin-top: 1rem; }
.bi-ws__h2 { color: #fff; margin: 0; }
.bi-ws__steps { margin-top: -1.5rem; }
.bi-ws__where { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr) minmax(0, 1.1fr); gap: 1.25rem; align-items: stretch; }
.bi-ws__where-copy h2 { color: #fff; margin: .3rem 0 .6rem; }
.bi-ws__addr { display: flex; align-items: center; gap: .5rem; color: #fff; font-weight: 600; margin: 0 0 .3rem; }
.bi-ws__addr svg { width: 20px; height: 20px; color: var(--bi-accent); }
.bi-ws__where .bi-map__frame { min-height: 240px; border-radius: var(--bi-radius-lg); overflow: hidden; border: 1px solid var(--bi-line); }
.bi-ws__where .bi-map__frame iframe { width: 100%; height: 100%; min-height: 240px; border: 0; display: block; filter: grayscale(.25) contrast(1.05); }
.bi-ws__where .bi-video img { aspect-ratio: 16 / 10; height: 100%; }
@media (max-width: 980px) { .bi-ws__hero, .bi-ws__ask, .bi-ws__where { grid-template-columns: 1fr; } .bi-ws__services { grid-template-columns: 1fr; } .bi-ws__repair img { aspect-ratio: 4 / 3; height: auto; } }

/* file picker with our own Danish button (browser default showed the visitor's UI language) */
.bi-form__filelabel { display: block; font-size: .875rem; font-weight: 600; color: var(--bi-text); margin-bottom: .35rem; }
.bi-filepick { position: relative; display: flex; align-items: center; gap: .8rem; padding: .45rem .5rem .45rem .45rem; border: 1px dashed var(--bi-line-strong); border-radius: var(--bi-radius); background: rgba(255,255,255,.04); cursor: pointer; }
.bi-filepick:hover { border-color: var(--bi-accent); }
.bi-filepick input[type="file"] { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; }
.bi-filepick:focus-within { outline: 2px solid var(--bi-accent); outline-offset: 2px; }
.bi-filepick .bi-btn { pointer-events: none; }
.bi-filepick__names { font-size: .875rem; color: var(--bi-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bi-form__file small { display: block; margin-top: .35rem; }

/* ==========================================================================
   16. Bytteordning page (handoff 12)
   ========================================================================== */
.page-id-22 .bi-page__head { display: none; }
.page-id-22 .bi-page__body { padding-top: 1.5rem; }
.bi-bo { display: grid; gap: 3rem; }
.bi-bo__hero { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 2rem; align-items: center; padding: 2rem 2rem 1.5rem; border-radius: var(--bi-radius-lg); border: 1px solid var(--bg-border); overflow: hidden; isolation: isolate; background: #0B1419 url("assets/bg/tlo-studio-1672.webp") center 70% / cover no-repeat; }
.bi-bo__hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(11,20,25,.92) 0%, rgba(11,20,25,.6) 45%, rgba(11,20,25,.1) 100%); }
.bi-bo__h1 { color: #fff; font-size: clamp(1.9rem, 1.3rem + 2.2vw, 3rem); line-height: 1.04; letter-spacing: -.02em; margin: .3rem 0 .8rem; }
.bi-bo__h1 span { display: block; color: var(--bi-accent); font-size: .66em; font-weight: 600; margin-top: .35rem; line-height: 1.2; }
.bi-bo__copy > p { color: var(--bi-muted); max-width: 46ch; font-size: .95rem; }
.bi-bo__cta { display: flex; gap: .75rem; flex-wrap: wrap; margin-top: 1rem; }
.bi-bo__visual { position: relative; display: grid; place-items: center; min-height: 320px; }
.bi-bo__visual img { position: relative;; max-height: 340px;; width: auto;; filter: drop-shadow(0 24px 24px rgba(0,0,0,.7));; }
.bi-bo__arrows { position: absolute;; inset: 0;; width: 100%;; height: 100%;; pointer-events: none;; }
.bi-bo__sec > h2, .bi-bo__sec .bi-section__head h2 { color: #fff; margin: .3rem 0 1.25rem; }
.bi-bo__steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.bi-bo__steps li { position: relative; display: grid; grid-template-columns: auto auto; grid-template-areas: "num ico" "h h" "p p"; align-items: center; justify-content: start; gap: .5rem .7rem; padding: 1.1rem 1.2rem 1.2rem; background: linear-gradient(145deg, #10232b, #111c22); border: 1px solid var(--bg-border); border-radius: var(--bi-radius-lg); counter-increment: none; }
.bi-bo__steps li::before { content: none; }
.bi-bo__steps li:not(:last-child)::after { content: ""; position: absolute; right: -1rem; top: 50%; width: 1rem; height: 2px; background: rgba(0,185,214,.5); }
.bi-bo__num { grid-area: num; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--bi-accent); color: var(--bi-accent-ink); font-family: var(--bi-font-head); font-weight: 700; }
.bi-bo__steps svg { grid-area: ico; width: 28px; height: 28px; color: #fff; }
.bi-bo__steps h3 { grid-area: h; margin: .2rem 0 0; color: #fff; font-size: 1.05rem; }
.bi-bo__steps p { grid-area: p; margin: 0; color: var(--bi-muted); font-size: .9rem; }
.bi-bo__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.bi-bo__card { display: grid; gap: .5rem; padding: 1.25rem 1.3rem; background: linear-gradient(145deg, #10232b, #111c22); border: 1px solid var(--bg-border); border-radius: var(--bi-radius-lg); }
.bi-bo__card svg { width: 30px; height: 30px; color: #fff; }
.bi-bo__card h3 { margin: 0; color: #fff; font-size: 1.1rem; }
.bi-bo__card p { margin: 0; color: var(--bi-muted); font-size: .9375rem; }
.bi-bo__price { margin-top: .5rem; padding: .6rem .8rem; border-radius: var(--bi-radius-sm); background: rgba(255,255,255,.04); border: 1px solid var(--bi-line); color: #fff; font-weight: 600; font-size: .9rem; }
.bi-bo__note { display: flex; align-items: center; gap: .5rem; margin: 1rem 0 0; color: var(--bi-muted); font-size: .875rem; }
.bi-bo__note svg { width: 18px; height: 18px; color: var(--bi-accent); flex: none; }
.bi-bo__faq { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem 1rem; }
.bi-bo__faq details { background: linear-gradient(145deg, #10232b, #111c22); border: 1px solid var(--bg-border); border-radius: var(--bi-radius); padding: 0 1rem; }
.bi-bo__faq summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .85rem 0; color: #fff; font-weight: 600; font-size: .9375rem; }
.bi-bo__faq summary::-webkit-details-marker { display: none; }
.bi-bo__faq summary::after { content: ""; flex: none; width: 10px; height: 10px; border-right: 2px solid var(--bi-accent); border-bottom: 2px solid var(--bi-accent); transform: rotate(45deg); transition: transform .2s; }
.bi-bo__faq details[open] summary::after { transform: rotate(-135deg); }
.bi-bo__faq details p { margin: 0 0 1rem; color: var(--bi-muted); font-size: .9375rem; }
.bi-bo__faq details a { color: var(--bi-accent); }
#anmod h2 { color: #fff; }
@media (max-width: 980px) { .bi-bo__hero { grid-template-columns: 1fr; } .bi-bo__steps { grid-template-columns: 1fr 1fr; } .bi-bo__steps li:not(:last-child)::after { content: none; } .bi-bo__cards, .bi-bo__faq { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .bi-bo__steps { grid-template-columns: 1fr; } .bi-bo__hero { padding: 1.25rem; } .bi-bo__visual { min-height: 220px; } .bi-bo__visual img { max-height: 220px; } }

/* ==========================================================================
   17. Product page v3 (handoff 08)
   ========================================================================== */
.bi-product--v3 { grid-template-columns: minmax(0, 54fr) minmax(0, 46fr); gap: 1.5rem; }
.bi-product--v3 .bi-product__media { position: relative; padding: 1rem; }
/* 20.10.2026 Adam: photo follows the scroll next to a tall buy box, but stops at the trust row (its box ends there) */
.bi-product__top { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 54fr) minmax(0, 46fr); gap: 1.5rem; align-items: start; min-width: 0; }
@media (min-width: 901px) { .bi-product--v3 .bi-product__top > .bi-product__media { position: sticky; top: calc(72px + 1rem); } }
@media (max-width: 900px) { .bi-product__top { grid-template-columns: minmax(0, 1fr); } .bi-product__top > * { min-width: 0; max-width: 100%; } }
.bi-product--v3 .bi-product__media > .bi-tag { position: absolute; top: 1.4rem; left: 1.4rem; z-index: 5; font-size: .8125rem; padding: .4em .9em; }
.bi-product--v3 .bi-product__media .woocommerce-product-gallery { padding: 0; }
.bi-product--v3 .bi-product__media .woocommerce-product-gallery__image img { border-radius: var(--bi-radius); background: transparent; }
.bi-product--v3 .bi-product__media .woocommerce-product-gallery .flex-control-thumbs { position: static; width: auto; margin-top: .75rem; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .6rem; }
.bi-product--v3 .bi-product__media .flex-control-thumbs img { background: transparent; border: 2px solid var(--bi-line); border-radius: var(--bi-radius); opacity: .85; aspect-ratio: 4 / 3; object-fit: cover; width: 100%; }
.bi-product--v3 .bi-product__media .flex-control-thumbs .flex-active, .bi-product--v3 .bi-product__media .flex-control-thumbs img:hover { opacity: 1; border-color: var(--bi-accent); }
.bi-product--v3 .bi-product__buy { padding: 1.5rem 1.6rem 1.6rem; }
.bi-product--v3 .bi-product__title { font-size: clamp(1.5rem, 1.1rem + 1.3vw, 2.1rem); margin: .3rem 0 .2rem; }
.bi-product__sub { margin: 0 0 .6rem; color: #fff; font-family: var(--bi-font-head); font-weight: 600; font-size: 1.05rem; }
.bi-product__lead { color: var(--bi-muted); font-size: .9375rem; margin-bottom: 1rem; }
.bi-product__lead p { margin: 0 0 .5em; }
.bi-facts { list-style: none; margin: 0 0 1.1rem; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.bi-facts li { display: flex; align-items: center; gap: .7rem; padding: .7rem .9rem; background: rgba(255,255,255,.03); border: 1px solid var(--bi-line); border-radius: var(--bi-radius); }
.bi-facts svg { flex: none; width: 22px; height: 22px; color: var(--bi-accent); }
.bi-facts span { display: grid; line-height: 1.25; }
.bi-facts small { font-size: .75rem; color: var(--bi-muted); }
.bi-facts strong { color: #fff; font-size: .95rem; }
.bi-buy { display: grid; gap: .7rem; padding: 1rem 1.1rem 1.1rem; background: rgba(255,255,255,.03); border: 1px solid var(--bi-line); border-radius: var(--bi-radius-lg); }
.bi-buy__row { display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem; flex-wrap: wrap; }
.bi-buy__price { display: grid; gap: .1rem; }
.bi-buy__price small { font-size: .75rem; color: var(--bi-muted); }
.bi-buy__price .price, .bi-buy__price ins { font-family: var(--bi-font-head); font-size: 1.9rem; font-weight: 700; color: #fff; text-decoration: none; line-height: 1.1; }
.bi-buy__price del { font-size: 1rem; color: var(--bi-muted); }
.bi-buy__price .bi-product__vat { font-size: .78rem; }
.bi-buy__qty { display: inline-flex; align-items: stretch; border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius); overflow: hidden; background: rgba(255,255,255,.04); }
.bi-buy__qty .quantity { display: flex; }
.bi-buy__qty .quantity label { display: none; }
.bi-buy__qty input.qty { width: 3.2rem; min-height: 42px; border: 0; background: transparent; color: #fff; text-align: center; font: inherit; font-weight: 700; -moz-appearance: textfield; }
.bi-buy__qty input.qty::-webkit-outer-spin-button, .bi-buy__qty input.qty::-webkit-inner-spin-button { -webkit-appearance: none; }
.bi-qty__btn { width: 38px; border: 0; background: transparent; color: var(--bi-text); font-size: 1.2rem; cursor: pointer; }
.bi-qty__btn:hover { background: rgba(255,255,255,.06); color: var(--bi-accent); }
.bi-buy__dep { display: grid;; gap: .1rem .8rem;; align-items: center;; padding: .7rem .9rem;; background: rgba(0,185,214,.07);; border: 1px solid rgba(0,185,214,.25);; border-radius: var(--bi-radius);; font-size: .9rem;; color: var(--bi-text);; }
.bi-buy__dep strong { color: #fff; margin-left: .3rem; }
.bi-buy__dep a { display: inline-flex; align-items: center; gap: .3rem; color: var(--bi-accent); font-size: .8125rem; }
.bi-buy__dep a svg { width: 16px; height: 16px; }
.bi-buy__dep em { grid-column: 1 / -1; font-style: normal; font-size: .78rem; color: var(--bi-muted); }
.bi-buy__cart form.cart { margin: 0; }
.bi-buy__cart form.cart .quantity { display: none; }   /* moved next to the price by script */
.bi-buy__cart button.single_add_to_cart_button, .woocommerce .bi-buy__cart button.single_add_to_cart_button { width: 100%; min-height: 50px; font-size: 1rem; }
.bi-buy__cart button.single_add_to_cart_button::before { content: ""; display: inline-block; width: 18px; height: 18px; margin-right: .5rem; vertical-align: -3px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2.2l2.3 11h9.6l2.1-7.5H6.2'/%3E%3Ccircle cx='9.5' cy='19' r='1.6'/%3E%3Ccircle cx='17' cy='19' r='1.6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4h2.2l2.3 11h9.6l2.1-7.5H6.2'/%3E%3Ccircle cx='9.5' cy='19' r='1.6'/%3E%3Ccircle cx='17' cy='19' r='1.6'/%3E%3C/svg%3E") center / contain no-repeat; }
.bi-buy .bi-btn--outline { min-height: 48px; }
.bi-buy .bi-btn--outline svg { width: 18px; height: 18px; margin-right: .4rem; }
.bi-buy__phone { display: flex; align-items: center; gap: .8rem; padding: .7rem .9rem; border: 1px solid var(--bi-line); border-radius: var(--bi-radius); color: var(--bi-text); text-decoration: none; }
.bi-buy__phone:hover { border-color: var(--bi-accent); text-decoration: none; }
.bi-buy__phone svg { width: 22px; height: 22px; color: var(--bi-accent); flex: none; }
.bi-buy__phone span { display: grid; line-height: 1.2; }
.bi-buy__phone strong { color: var(--bi-accent); }
.bi-buy__phone small { font-size: .78rem; color: var(--bi-muted); }
.bi-buy .bi-product__stock { margin: .3rem 0 0; }
.bi-buy .bi-product__code { margin: 0; }
.bi-trustrow { grid-column: 1 / -1; list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; }
.bi-trustrow li { display: flex; align-items: center; gap: .8rem; padding: .9rem 1rem; background: linear-gradient(145deg, #10232b, #111c22); border: 1px solid var(--bg-border); border-radius: var(--bi-radius-lg); }
.bi-trustrow svg { flex: none; width: 34px; height: 34px; padding: 7px; border-radius: 50%; background: rgba(0,185,214,.12); color: var(--bi-accent); }
.bi-trustrow span { display: grid; line-height: 1.25; }
.bi-trustrow strong { color: #fff; font-size: .9rem; }
.bi-trustrow small { font-size: .78rem; color: var(--bi-muted); }
.bi-product__detail--v3 { padding: 0; background: transparent; border: 0; }
.bi-psec { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 1.25rem; align-items: start; }
.bi-psec__item { min-width: 0; overflow-wrap: anywhere; padding: 1.4rem 1.6rem; background: linear-gradient(145deg, #10232b, #111c22); border: 1px solid var(--bg-border); border-radius: var(--bi-radius-lg); }
.bi-psec__item--passer_til { grid-column: 1 / -1; }
.bi-psec__h { display: flex; align-items: center; gap: .7rem; margin: 0 0 .9rem; font-size: 1.2rem; color: #fff; }
.bi-psec__h .bi-eyebrow--line::after { content: ""; display: inline-block; width: 30px; height: 2px; background: var(--bi-accent); }
.bi-psec__item p, .bi-psec__item li { color: var(--bi-text); font-size: .9375rem; }
.bi-psec__item h2:not(.bi-psec__h), .bi-psec__item h3 { color: #fff; font-size: 1.05rem; }
.bi-psec__item .bi-specs th, .bi-psec__item .bi-specs td { font-size: .9rem; padding: .5em .6em; }
.bi-psec__item .bi-specs th { color: var(--bi-muted); width: 44%; }
.bi-product__extra { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.bi-xcard { padding: 1.4rem 1.6rem; background: linear-gradient(145deg, #10232b, #111c22); border: 1px solid var(--bg-border); border-radius: var(--bi-radius-lg); }
.bi-xcard .bi-pasform, .bi-xcard .bi-mount { margin: 0; padding: 0; background: transparent; border: 0; }
.bi-xcard .bi-mount strong { font-family: var(--bi-font-head); font-size: 1.2rem; color: #fff; }
.bi-xcard .bi-pasform__title { font-size: 1.2rem; }
@media (max-width: 900px) { .bi-product--v3 { grid-template-columns: minmax(0, 1fr); } .bi-product > * { min-width: 0; max-width: 100%; } /* 12.10.2026 audyt 09 BUG-02: .bi-related rozpychała track 1fr do 449px */ .bi-relcats { grid-template-columns: repeat(2, minmax(0, 1fr)); } .bi-relcats > li, .bi-relcats .bi-relcat { min-width: 0; max-width: 100%; } .bi-relcats .bi-relcat { grid-template-columns: minmax(0, 1fr); } .bi-relcats .bi-relcat__media { min-width: 0; } .woocommerce-product-gallery__image { overflow: hidden; } .zoomImg { display: none !important; } /* zoom off na mobile: audyt 05 W-02 */ .bi-relcat { overflow: hidden; } .bi-relcat strong, .bi-relcat__sub, .bi-relcat__cta { overflow-wrap: anywhere; hyphens: auto; min-width: 0; } .bi-trustrow, .bi-psec, .bi-product__extra { grid-template-columns: minmax(0, 1fr); } .bi-psec > *, .bi-trustrow > *, .bi-product__extra > * { min-width: 0; } .bi-facts { grid-template-columns: 1fr 1fr; } }
@media (max-width: 480px) { .bi-trustrow { grid-template-columns: 1fr; } .bi-facts { grid-template-columns: 1fr; } }

/* product without photo: the data card must stay visible over the studio backdrop */
.bi-product--v3 .bi-product__media .bi-datacard { position: relative; aspect-ratio: 4 / 3; border-radius: var(--bi-radius); background: radial-gradient(120% 90% at 50% 0%, rgba(27,42,49,.85) 0%, rgba(16,22,25,.85) 70%); }
.bi-product--v3 .bi-product__media .bi-datacard::before { background-image: repeating-linear-gradient(90deg, rgba(255,255,255,.05) 0 1px, transparent 1px 34px), repeating-linear-gradient(0deg, rgba(255,255,255,.05) 0 1px, transparent 1px 34px); }
.bi-buy__dep { grid-template-columns: 1fr; }
.bi-buy__dep a { justify-self: start; }

/* exchange arrows: vertical arcs at the sides, behind the engine */
.bi-bo__arrows { filter: drop-shadow(0 0 8px rgba(0,185,214,.7));; }

.bi-bo__arrows { z-index: 2; }
.bi-bo__visual img { max-width: 58%;; }

/* exchange arrows: left arc in front of the engine, right arc comes out from behind it (mockup 12) */
.bi-bo__arrows--back { z-index: 0; }
.bi-bo__arrows--front { z-index: 2; }
.bi-bo__visual img { z-index: 1; }

/* related categories under the product (mockup 07-10) */
.bi-related { grid-column: 1 / -1; margin: .5rem 0 1rem; }
.bi-relcats { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.bi-relcat { display: grid; gap: .15rem; padding: .9rem 1rem 1rem; background: linear-gradient(145deg, #10232b, #111c22); border: 1px solid var(--bg-border); border-radius: var(--bi-radius-lg); color: var(--bi-text); text-decoration: none; transition: border-color .2s var(--bi-ease), transform .2s var(--bi-ease); }
.bi-relcat:hover { border-color: var(--bi-accent); transform: translateY(-3px); text-decoration: none; }
.bi-relcat__media { display: grid; place-items: center; height: 120px; margin-bottom: .5rem; border-radius: var(--bi-radius); background: url("assets/bg/tlo-studio-900.webp") center 65% / cover no-repeat; }
.bi-relcat__media img { width: auto; height: auto; max-width: 80%; max-height: 100px; filter: drop-shadow(0 12px 14px rgba(0,0,0,.6)); }
.bi-relcat strong { color: #fff; font-family: var(--bi-font-head); font-size: 1rem; }
.bi-relcat__sub { font-size: .8125rem; color: var(--bi-muted); }
.bi-relcat__cta { margin-top: .4rem; font-size: .875rem; font-weight: 600; color: var(--bi-accent); }
@media (max-width: 900px) { .bi-relcats { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .bi-relcats { grid-template-columns: minmax(0, 1fr); } }

/* ==========================================================================
   18. Hero v4 (brief 09.10 #2): studio plate, soft arc, two shadow layers, finder in flow
   ========================================================================== */

/* soft turquoise arc behind the products (about 30% of the old ring's intensity) */

   /* +15% */

/* finder: normal flow, centred, max 960px, 32-40px below the engines */
.bi-finderwrap--v4 { background: var(--bi-bg); padding: 36px 0 8px; margin: 0; }
.bi-finderwrap--v4 .bi-finder--v2 { max-width: 960px; margin-inline: auto; grid-template-columns: minmax(0, 220px) minmax(0, 1fr); padding: 1.25rem 1.5rem; background: linear-gradient(145deg, #10232b, #111c22); -webkit-backdrop-filter: none; backdrop-filter: none; }

.bi-stats--v2 { padding-top: .75rem; }

/* hero v4 fixes: headline 3-4 lines on desktop, no horizontal overflow on phones */

/* hero v4: headline in 4 lines (no forced break), finder tabs wrap on phones */

@media (max-width: 640px) { .bi-finder--v2 .bi-finder__tabs { flex-wrap: wrap; } .bi-finder--v2 .bi-finder__tab { flex: 0 1 auto; max-width: 100%; } }

/* hero v4 mobile: Mercedes full width first, the two others side by side; finder single column */
@media (max-width: 1023px) { .bi-finderwrap--v4 .bi-finder--v2 { grid-template-columns: 1fr; gap: .9rem; padding: 1.1rem 1.1rem 1rem; } .bi-finderwrap--v4 { padding-top: 28px; } }
@media (max-width: 640px) {     .bi-finder--v2 .bi-finder__tabs { flex-direction: row; } .bi-finder--v2 .bi-finder__row { flex-wrap: wrap; } .bi-finder--v2 .bi-finder__row .bi-btn { width: 100%; } }

/* ==========================================================================
   19. Hero as one image (Adam 09.10): hero-silniki-bez-napisow-v2 as backdrop, HTML copy + captions on top
   ========================================================================== */
.bi-hero--img { position: relative; isolation: isolate; background: #0B1013; overflow: hidden; }
.bi-hero--img::before { content: ""; position: absolute; inset: 0; z-index: 0; background: var(--hero-img) right center / cover no-repeat; }
.bi-hero--img::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: linear-gradient(90deg, rgba(11,16,19,.6) 0%, rgba(11,16,19,.25) 28%, rgba(11,16,19,0) 42%), linear-gradient(180deg, rgba(11,16,19,0) 70%, rgba(16,22,25,.95) 100%); }
.bi-hero__stage { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr; aspect-ratio: 3 / 1; min-height: 480px; max-height: 640px; align-content: end; padding-bottom: .75rem; }
.bi-hero--img .bi-hero__copy { position: absolute; left: var(--bi-gap); top: 50%; transform: translateY(-58%); max-width: 36%; }
.bi-hero--img h1 { font-size: clamp(1.9rem, 1.1rem + 1.9vw, 2.6rem); line-height: 1.05; letter-spacing: -.02em; margin-bottom: .8rem; color: #fff; }
.bi-hero--img h1 br { display: none; }
.bi-hero--img h1 span { display: block; color: var(--bi-accent); font-weight: 600; margin-top: .15em; }
.bi-hero--img .bi-hero__lead { color: #B6C9D6; font-size: 1rem; margin-bottom: 1.3rem; max-width: 36ch; }
/* captions: three columns over the right part where the engines stand (centres ~45 / 65 / 85 % of the image) */
.bi-hero__caps { list-style: none; margin: 0 0 0 auto; padding: 0; width: 60%; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1rem; }
.bi-hero__cap a { display: grid; justify-items: center; text-align: center; gap: .1rem; color: #fff; text-decoration: none; }
.bi-hero__cap strong { font-family: var(--bi-font-head); font-size: 1rem; letter-spacing: .1em; text-shadow: 0 2px 10px rgba(0,0,0,.8); }
.bi-hero__cap em { font-style: normal; font-size: .8125rem; color: #B6C9D6; text-shadow: 0 2px 8px rgba(0,0,0,.8); }
.bi-hero__cap a:hover strong { color: var(--bi-accent); text-decoration: none; }
.bi-hero--img + .bi-finderwrap { padding-top: 28px; }
@media (max-width: 1100px) { .bi-hero--img .bi-hero__copy { max-width: 40%; } }
@media (max-width: 900px) {
  .bi-hero__stage { aspect-ratio: auto; min-height: 0; max-height: none; padding: 1.75rem 0 0; }
  .bi-hero--img .bi-hero__copy { position: static; transform: none; max-width: 36rem; margin-bottom: 1rem; }
  .bi-hero--img::before { background: var(--hero-img-sm) 62% center / auto 100% no-repeat; }
  
  .bi-hero__caps { width: 100%; }
  .bi-hero--img::after { background: linear-gradient(180deg, rgba(11,16,19,.92) 0%, rgba(11,16,19,.85) 38%, rgba(11,16,19,.1) 60%, rgba(16,22,25,.95) 100%); }
}
@media (max-width: 640px) {
  .bi-hero--img::before { background: none; }
  .bi-hero__caps { display: none; }
}

/* hero image: tablet/phone = copy above, then the picture band with captions (no overlap) */
@media (max-width: 900px) {
  .bi-hero--img::before { content: none; }
  .bi-hero--img::after { content: none; }
  .bi-hero__stage { display: grid; gap: .5rem; padding: 1.75rem 0 0; }
  .bi-hero__caps { position: relative; width: 100%; padding-top: 30%; margin-top: .25rem; }
  .bi-hero__caps::before { content: ""; position: absolute; inset: 0 0 2.6rem; background: var(--hero-img-sm) 68% center / auto 100% no-repeat; border-radius: var(--bi-radius-lg); }
  .bi-hero__caps::after { content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: 2.6rem; border-radius: var(--bi-radius-lg); background: linear-gradient(180deg, rgba(11,16,19,0) 70%, rgba(16,22,25,.7) 100%); pointer-events: none; }
  .bi-hero__cap { position: relative; z-index: 1; align-self: end; }
}
@media (max-width: 640px) {
  .bi-hero__caps { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: .4rem; padding-top: 40%; }
  .bi-hero__caps::before { background-position: 60% center; background-size: auto 100%; }
  .bi-hero__cap strong { font-size: .8125rem; letter-spacing: .06em; }
  .bi-hero__cap em { font-size: .7rem; }
}

/* hero image on tablet/phone: show the full engine group (right edge of the picture), no crop of the Nissan */
@media (max-width: 900px) { .bi-hero__caps::before { background-position: 100% center; background-size: auto 100%; } }
@media (max-width: 640px) { .bi-hero__caps { padding-top: 46%; } .bi-hero__caps::before { background-position: 100% center; background-size: auto 100%; } }

/* mobile menu: backdrop-filter on the header makes it the containing block of the fixed drawer (64px tall). Drop it while open. */
@media (max-width: 900px) {
  body.bi-menu-open .bi-header { -webkit-backdrop-filter: none; backdrop-filter: none; background: var(--bi-bg); }
  body.bi-menu-open .bi-nav { position: fixed; inset: 0; height: 100vh; height: 100dvh; display: block; }
}

/* product page phone: tight gallery thumbs, closer buy panel, visible related images */
@media (max-width: 900px) {
  .bi-product--v3 { gap: 1rem; }
  .bi-product--v3 .bi-product__media { padding: .75rem; }
  .bi-product--v3 .bi-product__media .woocommerce-product-gallery .flex-control-thumbs { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .4rem; }
  .bi-product--v3 .bi-product__buy { padding: 1.1rem 1.1rem 1.25rem; }
  .bi-facts { grid-template-columns: 1fr 1fr; gap: .5rem; }
  .bi-facts li { padding: .55rem .7rem; }
  .bi-trustrow { grid-template-columns: 1fr 1fr; gap: .6rem; }
  .bi-trustrow li { padding: .7rem .8rem; }
  .bi-relcats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
  .bi-relcat__media { height: 100px; }
}
@media (max-width: 480px) { .bi-trustrow { grid-template-columns: 1fr; } }
.bi-relcat__media img { display: block; }

/* listing head on tablet/phone: single column, full-width text (was squeezed to one word per line) */
@media (max-width: 1023px) {
  .bi-shop__head--v2 { grid-template-columns: 1fr; gap: 1rem; }
  .bi-shop__headcopy { min-width: 0; width: 100%; }
  .bi-shop__head--v2 h1 { font-size: clamp(1.8rem, 1.2rem + 2.4vw, 2.6rem); overflow-wrap: anywhere; }
  .bi-shop__desc, .bi-shop__desc p { max-width: none; width: 100%; }
  .bi-shop__search { max-width: none; }
  .bi-shop__headimg { display: none; }
}

/* phone: the filters are off-canvas; the side wrapper must not reserve their space */
@media (max-width: 980px) { .bi-catalog__side { display: contents; } }

/* ==========================================================================
   20. Mobile review 09.10 (390px pass)
   ========================================================================== */
/* brand page finder: the desktop 2-column grid from section 13 (line ~2074) won the cascade over the
   <=980px rule in section 12 -> page overflowed to 498px on phones */
@media (max-width: 1023px) {
  .bi-finder--v2 { grid-template-columns: 1fr; gap: .9rem; padding: 1.1rem 1.1rem 1rem; }
  .bi-finder__field input { width: 100%; }
}
/* content tables on phones: keep the horizontal scroll but make it obvious and tighter */
@media (max-width: 640px) {
  .bi-page__body table { font-size: .9rem; -webkit-overflow-scrolling: touch; }
  .bi-page__body th, .bi-page__body td { padding: .45rem .55rem; white-space: normal; min-width: 7.5em; }
}
/* hero engines clickable (Adam 09.10): each caption link gets an invisible hotspot that reaches up over its engine,
   so tapping the engine itself opens the category; the whole caption highlights on hover */
.bi-hero__cap { position: relative; }
.bi-hero__cap a { position: static; padding: .35rem .5rem; border-radius: var(--bi-radius); transition: background-color .15s; }
.bi-hero__cap a::before { content: ""; position: absolute; left: 0; right: 0; bottom: 0; top: -380px; cursor: pointer; }
.bi-hero__cap a:hover, .bi-hero__cap a:focus-visible { background: rgba(0,185,214,.12); }
.bi-hero__cap a:hover em, .bi-hero__cap a:focus-visible em { color: #fff; }
.bi-hero__cap a:focus-visible { outline: 2px solid var(--bi-accent); outline-offset: 2px; }
@media (max-width: 900px) { .bi-hero__cap a::before { top: -34vw; } }
@media (max-width: 640px) { .bi-hero__cap a::before { top: -50vw; } }
/* Min konto: WooCommerce's show-password toggle has no icon without woocommerce.css -> rendered as a stray dash */
.woocommerce-form .show-password-input, .password-input .show-password-input { display: none !important; }
/* phone number next to a button inside a panel paragraph must not wrap mid-number */
.bi-panel p > a[href^="tel:"], .bi-article__cta a[href^="tel:"] { white-space: nowrap; display: inline-block; }

/* ==========================================================================
   21. Phone thumbnails (Adam 09.10: "zrob jako miniaturka"): on <=640px the long
   category lists, the 12 part tiles, newest products, brand grid, model tiles and
   popular parts become horizontal strips of small thumbnails instead of tall grids.
   ========================================================================== */
@media (max-width: 640px) {
  .bi-strip, .bi-group__list, .bi-parts__grid, .bi-brands, .bi-modeltiles, .bi-chips.bi-maerke__models,
  .bi-newest ul.products, .woocommerce .bi-newest ul.products, .bi-maerke__products ul.products, .woocommerce .bi-maerke__products ul.products {
    display: flex !important; flex-wrap: nowrap !important; gap: .55rem !important; overflow-x: auto; overflow-y: hidden;
    margin-inline: calc(-1 * var(--bi-gap)); padding-inline: var(--bi-gap); padding-bottom: .4rem;
    scroll-snap-type: x proximity; scroll-padding-inline: var(--bi-gap); -webkit-overflow-scrolling: touch; scrollbar-width: none; grid-template-columns: none !important;
  }
  .bi-group__list::-webkit-scrollbar, .bi-parts__grid::-webkit-scrollbar, .bi-brands::-webkit-scrollbar, .bi-modeltiles::-webkit-scrollbar, .bi-maerke__models::-webkit-scrollbar, .bi-newest ul.products::-webkit-scrollbar, .bi-maerke__products ul.products::-webkit-scrollbar { display: none; }

  /* category groups: smaller picture, list -> icon thumbnails */
  .bi-group__media { height: 120px; margin-top: .25rem; }
  .bi-group__media img { max-height: 108px; }
  .bi-group__list { margin: .5rem 0 0; padding-top: .2rem; }
  .bi-group__list li { flex: 0 0 auto; scroll-snap-align: start; }
  .bi-group__list a { flex-direction: column; justify-content: flex-start; gap: .35rem; width: 104px; min-height: 100%; padding: .55rem .4rem .6rem; text-align: center; font-size: .75rem; line-height: 1.2; border: 1px solid rgba(0,185,214,.18); border-top-color: rgba(0,185,214,.18); border-radius: var(--bi-radius); background: rgba(0,185,214,.05); }
  .bi-group__list li:first-child a { border-top-color: rgba(0,185,214,.18); }
  .bi-group__list a > span { flex: none; width: 100%; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
  .bi-group__list a svg { display: none; }
  .bi-group__list small { display: block; margin: .1rem 0 0; }
  .bi-group__ico { width: 48px; height: 48px; margin: 0; }
  .bi-group__list li:last-child { padding-right: var(--bi-gap); }

  /* 12 part tiles and the popular parts on the brand page */
  .bi-parts__grid > li { flex: 0 0 150px; scroll-snap-align: start; }
  .bi-parts__grid .bi-parts__tile { padding: .6rem .6rem .7rem; height: 100%; }
  .bi-parts__grid .bi-parts__media, .bi-parts__grid--brand .bi-parts__media { height: 88px; }
  .bi-parts__grid .bi-parts__media img, .bi-parts__grid--brand .bi-parts__media img { max-height: 80px; }
  .bi-parts__name { font-size: .8125rem; line-height: 1.2; }
  .bi-parts__count { font-size: .7rem; }

  /* brand logos on the front page */
  .bi-brands > li { flex: 0 0 108px; scroll-snap-align: start; }
  .bi-brands a { height: 100%; padding: .7rem .35rem .6rem; gap: .3rem; }
  .bi-brands strong { font-size: .75rem; line-height: 1.15; }
  .bi-brands__count { font-size: .68rem; }

  /* product cards in "Senest lagt på lager" and "På lager lige nu": compact thumbnails */
  .bi-newest ul.products > li, .bi-maerke__products ul.products > li { flex: 0 0 160px; scroll-snap-align: start; margin: 0 !important; }
  .bi-newest .bi-card__specs, .bi-maerke__products .bi-card__specs, .bi-newest .bi-card__foot .bi-btn, .bi-maerke__products .bi-card__foot .bi-btn, .bi-newest .bi-card__vat, .bi-maerke__products .bi-card__vat { display: none; }
  .bi-newest .bi-card__title, .bi-maerke__products .bi-card__title { font-size: .8125rem; line-height: 1.25; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
  .bi-newest .bi-card__brand, .bi-maerke__products .bi-card__brand { font-size: .62rem; }
  .bi-newest .bi-card__body, .bi-maerke__products .bi-card__body { padding: .5rem .6rem .2rem; }
  .bi-newest .bi-card__foot, .bi-maerke__products .bi-card__foot { padding: 0 .6rem .6rem; gap: .2rem; }
  .bi-newest .bi-card__price, .bi-maerke__products .bi-card__price { font-size: .9rem; }
  .bi-newest .bi-stock, .bi-maerke__products .bi-stock { font-size: .7rem; }

  /* brand page: model tiles + model chips in one scrolling row each */
  .bi-modeltiles > li { flex: 0 0 150px; scroll-snap-align: start; }
  .bi-modeltile { height: 100%; }
  .bi-chips.bi-maerke__models { margin-top: .6rem; }
  .bi-chips.bi-maerke__models .bi-chip { flex: 0 0 auto; white-space: nowrap; }
}
/* pagination: woocommerce.css is no longer loaded on listings (v3.9.6), so wrap the page list ourselves (9 items > 358px on phones) */
.woocommerce nav.woocommerce-pagination ul, .bi-shop .woocommerce-pagination ul { flex-wrap: wrap; row-gap: .35rem; }
@media (max-width: 640px) { .bi-newest .bi-card__deposit, .bi-maerke__products .bi-card__deposit { display: block; font-size: .68rem; } }

/* ==========================================================================
   22. Renovering section (09.10): two process photos side by side inside articles
   ========================================================================== */
.bi-figrow { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin: 1.25rem 0 1.5rem; }
.bi-figrow figure { margin: 0; max-width: none; }
.bi-figrow figure img, .bi-article__body figure.wp-block-image img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--bi-radius-lg); background: #0B1013; }
.bi-article__body figure.wp-block-image { max-width: 760px; margin: 1.25rem 0 1.5rem; }
.bi-article__body figcaption { margin-top: .45rem; font-size: .8125rem; color: var(--bi-muted); }
@media (max-width: 640px) { .bi-figrow { grid-template-columns: 1fr; gap: .75rem; } }
/* mobile drawer: the Reservedele panel foot (one-line text + button) overflowed to 522px and made the drawer scroll sideways (Adam 13.10) */
@media (max-width: 900px) {
  body.bi-menu-open .bi-nav { overflow-x: hidden; overflow-y: auto; }
  .bi-nav__panel { min-width: 0; overflow: hidden; }
  .bi-nav__panel-foot { flex-wrap: wrap; gap: .6rem; }
  .bi-nav .bi-nav__panel .bi-nav__panel-foot span { white-space: normal; flex: 1 1 100%; min-width: 0; line-height: 1.4; }
  .bi-nav .bi-nav__panel-foot a.bi-btn { width: auto; display: inline-flex; }
}
/* find-dele: category icon over the data card when a product has no photo */
.bi-fd__img .bi-fd__ico { position: absolute; left: 50%; top: 18%; width: 34%; height: auto; max-height: 40%; transform: translateX(-50%); object-fit: contain; opacity: .9; filter: drop-shadow(0 6px 10px rgba(0,0,0,.6)); z-index: 2; pointer-events: none; }
.bi-fd__img .bi-datacard { justify-content: flex-end; padding-bottom: .5rem; }
.bi-fd__img .bi-datacard__code { font-size: clamp(1rem, .8rem + 1vw, 1.4rem); }
.bi-fd__car { scroll-margin-top: 72px; }
/* find-dele results as a list (Adam 13.10) */
.bi-fd__list { list-style: none; margin: .5rem 0 1.25rem; padding: 0; border: 1px solid var(--bi-line-strong); border-radius: var(--bi-radius-lg); overflow: hidden; background: linear-gradient(145deg, #10232b, #111c22); }
.bi-fd__row + .bi-fd__row { border-top: 1px solid var(--bi-line); }
.bi-fd__row a { display: grid; grid-template-columns: 190px minmax(0, 1fr) 160px 160px; gap: .5rem 1rem; align-items: center; padding: .7rem 1rem; color: var(--bi-text); text-decoration: none; }
.bi-fd__row a:hover { background: rgba(0,185,214,.08); text-decoration: none; }
.bi-fd__row a:hover .bi-fd__rname { color: var(--bi-accent); }
.bi-fd__rtype { font-size: .72rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--bi-muted); overflow-wrap: anywhere; line-height: 1.2; }
.bi-fd__rname { font-weight: 600; font-size: .9375rem; line-height: 1.3; }
.bi-fd__rname em { font-style: normal; font-weight: 400; color: var(--bi-muted); font-size: .8125rem; white-space: nowrap; }
.bi-fd__list .bi-fd__badge { position: static; justify-self: start; }
.bi-fd__rprice { text-align: right; line-height: 1.2; }
.bi-fd__rprice strong { display: block; font-size: 1rem; color: #fff; }
.bi-fd__rprice small { display: block; font-size: .72rem; color: var(--bi-muted); }
@media (max-width: 900px) {
  .bi-fd__row a { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "type price" "name price" "badge price"; padding: .65rem .8rem; gap: .2rem .75rem; }
  .bi-fd__rtype { grid-area: type; }
  .bi-fd__rname { grid-area: name; }
  .bi-fd__list .bi-fd__badge { grid-area: badge; margin-top: .15rem; }
  .bi-fd__rprice { grid-area: price; align-self: center; }
}
/* product page: link to the renovering process page (13.10) */
.bi-product__renov { margin: .35rem 0 0; font-size: .875rem; }
.bi-product__renov a { color: var(--bi-accent); font-weight: 600; }
/* /renovering/ hub tiles: 3 per row, 2 on tablets, 1 on phones; hide the date line (process pages, not news) */
.bi-guides--renov { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 1rem 0 2rem; }
.bi-guides--renov .bi-guide time { display: none; }
@media (max-width: 1000px) { .bi-guides--renov { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .bi-guides--renov { grid-template-columns: 1fr; } }

/* 15.10.2026: long OEM numbers without spaces (e.g. BI16319700018+17459700020) widened product sections on mobile */
.bi-product__detail, .bi-product__summary, .bi-product__title, .woocommerce-product-details__short-description { overflow-wrap: anywhere; }
.bi-psec__item table:not(.bi-specs) { display: block; max-width: 100%; overflow-x: auto; }

/* 15.10.2026 Adam: "nie ma oznaczenia, ze mozna przewijac" - hint for phone strips (assets/js/scroll-hint.js) */
@media (max-width: 640px) {
  .bi-hscroll { position: relative; margin-inline: calc(-1 * var(--bi-gap)); }
  .bi-hscroll > [data-hscroll] { margin-inline: 0 !important; }
  .bi-hscroll.can-next > [data-hscroll] { -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 56px), transparent); mask-image: linear-gradient(to right, #000 calc(100% - 56px), transparent); }
  .bi-hscroll.can-prev > [data-hscroll] { -webkit-mask-image: linear-gradient(to right, transparent, #000 40px); mask-image: linear-gradient(to right, transparent, #000 40px); }
  .bi-hscroll.can-prev.can-next > [data-hscroll] { -webkit-mask-image: linear-gradient(to right, transparent, #000 40px, #000 calc(100% - 56px), transparent); mask-image: linear-gradient(to right, transparent, #000 40px, #000 calc(100% - 56px), transparent); }
  .bi-hscroll__btn { position: absolute; top: 50%; z-index: 3; display: grid; place-items: center; width: 34px; height: 34px; margin-top: -17px; padding: 0; border: 0; border-radius: 50%; background: var(--bi-accent); color: var(--bi-accent-ink, #06161b); box-shadow: 0 4px 14px rgba(0,0,0,.45); opacity: 0; pointer-events: none; transition: opacity .2s; cursor: pointer; }
  .bi-hscroll__btn svg { width: 18px; height: 18px; }
  .bi-hscroll__btn--next { right: 6px; }
  .bi-hscroll__btn--prev { left: 6px; }
  .bi-hscroll.can-next .bi-hscroll__btn--next, .bi-hscroll.can-prev .bi-hscroll__btn--prev { opacity: 1; pointer-events: auto; }
}
@media (min-width: 641px) { .bi-hscroll__btn { display: none; } }

/* 15.10.2026 Adam: "nie lubie nieparzystych rzeczy" - finder tabs never 3+1: one row of 4 equal pills, 2x2 on narrow phones */
@media (max-width: 640px) {
  .bi-finder--v2 .bi-finder__tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .35rem; }
  .bi-finder--v2 .bi-finder__tab { max-width: none; width: 100%; padding: .5em .3em; text-align: center; font-size: .78rem; white-space: nowrap; }
}
@media (max-width: 439px) {
  .bi-finder--v2 .bi-finder__tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bi-finder--v2 .bi-finder__tab { font-size: .8125rem; }
}

/* 15.10.2026 realiseringer: photo gallery grid at the end of a case study */
.bi-galleri { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin: 1rem 0 1.5rem; }
.bi-galleri figure { margin: 0; max-width: none; }
.bi-galleri img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--bi-radius); background: #0B1013; }
@media (max-width: 640px) { .bi-galleri { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; } }

/* 16.10.2026: dele der skal skiftes ved montering (mu-plugin bi-dele-montering.php) */
.bi-olie { margin: 1rem 0 .25rem; padding: .9rem 1rem 1rem; border: 1px solid rgba(0,185,214,.35); border-radius: var(--bi-radius-lg); background: rgba(0,185,214,.06); }
.bi-olie__h { display: flex; align-items: center; gap: .45rem; margin: 0 0 .6rem; font-weight: 700; font-size: .9375rem; color: var(--bi-accent); }
.bi-olie__h svg { width: 18px; height: 18px; flex: none; }
.bi-olie__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; }
.bi-olie--buy .bi-olie__grid { grid-template-columns: minmax(0, 1fr); }
.bi-olie__card { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: .7rem; align-items: center; padding: .55rem; border: 1px solid var(--bi-line); border-radius: var(--bi-radius); background: var(--bi-surface); color: var(--bi-text); text-decoration: none; transition: border-color .2s var(--bi-ease); }
.bi-olie__card:hover { border-color: var(--bi-accent); text-decoration: none; }
.bi-olie__img img { width: 72px; height: 72px; object-fit: contain; border-radius: var(--bi-radius); background: #fff; display: block; }
.bi-olie__body { display: grid; gap: .15rem; min-width: 0; }
.bi-olie__body strong { font-size: .85rem; line-height: 1.25; color: #fff; }
.bi-olie__price { font-size: .9rem; font-weight: 700; color: var(--bi-accent); }
.bi-olie__price del { color: var(--bi-muted); font-weight: 400; margin-right: .3rem; }
.bi-olie__cta { font-size: .78rem; color: var(--bi-muted); }
@media (max-width: 640px) { .bi-olie__grid { grid-template-columns: minmax(0, 1fr); } }

/* 22 Styling (17.10.2026): own mega panel (list + photo), "Stylingdele ->" link in Nye dele */
.bi-nav__panel--styling { width: 620px; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); align-items: center; }
.bi-nav__styleimg { display: grid; place-items: center; min-height: 190px; padding: .5rem; background: url("assets/bg/tlo-studio-900.webp") center 65% / cover no-repeat; border-radius: var(--bi-radius); }
.bi-nav .bi-nav__styleimg { padding: .5rem; }
.bi-nav__styleimg img { width: 100%; height: auto; max-height: 180px; object-fit: contain; filter: drop-shadow(0 12px 14px rgba(0,0,0,.6)); }
.bi-nav__panel--styling .bi-nav__panel-foot { grid-column: 1 / -1; }
.bi-nav__more a { color: var(--bi-accent); font-weight: 600; }
@media (max-width: 980px) {
  .bi-nav__panel--styling { width: auto; grid-template-columns: 1fr; }
  .bi-nav__styleimg { display: none; }
}

/* Styling guide (page 75493, 18.10.2026): own head background instead of the shared engine photo */
.page-id-75493 .bi-page__head::before { background: url("/wp-content/uploads/2026/10/guide-bilstyling-haekspoiler-frontsplitter-bodykit-okladka.webp") center 55% / cover no-repeat; }

/* ==========================================================================
   23 Hero light (21.10.2026): sweep along the horizon arc, breathing glow, button shine.
   Compositor only (transform/opacity), desktop >900 px, off with reduced motion.
   Kill switch: .bi-hero__fx { display: none } + .bi-hero__cta .bi-btn--primary::after { content: none }
   ========================================================================== */
.bi-hero__fx { position: absolute; inset: 0; z-index: 0; pointer-events: none; display: none; }
.bi-hero__fx svg { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.bi-hero__glow { opacity: .3; }
.bi-hero__sweep { --fx-line: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='2172' height='724' viewBox='0 0 2172 724'%3E%3Cdefs%3E%3Cfilter id='s' x='-5%25' y='-5%25' width='110%25' height='110%25'%3E%3CfeGaussianBlur stdDeviation='4'/%3E%3C/filter%3E%3Cfilter id='h' x='-5%25' y='-50%25' width='110%25' height='200%25'%3E%3CfeGaussianBlur stdDeviation='11'/%3E%3C/filter%3E%3Cfilter id='m' x='-5%25' y='-50%25' width='110%25' height='200%25'%3E%3CfeGaussianBlur stdDeviation='3'/%3E%3C/filter%3E%3Cmask id='c' maskUnits='userSpaceOnUse' x='0' y='0' width='2172' height='724'%3E%3Crect width='2172' height='724' fill='white'/%3E%3Cg fill='black' filter='url(%23s)'%3E%3Cpath d='M1114 212L1090 205L1052 210L1045 201L1017 201L1013 204L1013 218L1009 221L992 223L990 219L973 222L969 231L965 231L960 222L952 222L950 229L923 226L916 230L914 238L882 232L875 236L869 256L836 247L829 251L817 268L796 269L782 283L780 300L771 306L771 315L776 319L776 338L783 357L782 377L807 431L807 436L801 440L803 455L818 454L822 489L847 523L895 538L907 561L922 575L966 583L982 581L994 530L1010 523L1040 479L1059 471L1073 472L1083 466L1085 456L1096 444L1098 430L1109 449L1098 467L1098 482L1111 483L1129 467L1164 504L1175 502L1175 454L1147 443L1158 426L1158 413L1139 379L1139 365L1151 364L1162 355L1166 315L1142 305L1129 283L1126 257L1130 239L1118 231Z'/%3E%3Cpath d='M1578 231L1566 231L1546 214L1531 210L1530 201L1526 199L1504 201L1500 205L1469 201L1447 195L1418 176L1404 180L1380 178L1376 182L1372 169L1367 166L1355 166L1350 170L1348 183L1335 203L1303 203L1243 216L1229 234L1229 251L1221 263L1221 282L1233 292L1238 302L1242 336L1236 346L1236 356L1248 361L1259 374L1255 391L1263 401L1257 409L1257 418L1265 427L1250 439L1224 438L1204 445L1204 455L1197 459L1196 470L1212 484L1219 513L1249 536L1261 554L1279 564L1289 576L1304 583L1331 583L1349 568L1351 538L1375 525L1383 500L1419 473L1432 452L1461 437L1504 444L1524 434L1546 414L1551 359L1539 334L1548 325L1549 315L1557 309L1561 295L1585 279L1589 261L1597 255L1597 248L1580 237Z'/%3E%3Cpath d='M1969 240L1948 229L1907 225L1899 220L1888 204L1879 201L1849 200L1832 211L1749 210L1703 222L1698 228L1698 238L1676 270L1675 290L1670 294L1671 322L1676 329L1683 381L1652 385L1645 392L1628 433L1630 468L1636 473L1649 473L1649 489L1658 504L1658 514L1666 525L1684 537L1722 539L1726 562L1762 577L1789 578L1801 573L1805 555L1836 558L1884 556L1917 545L1934 531L1963 521L1966 505L1982 499L1983 488L1995 483L1991 468L2002 457L1999 434L2008 432L2017 418L2017 402L2011 389L2011 364L2021 350L2021 337L2013 327L2019 316L2017 300L1997 292L1998 281L1988 275L1981 251Z'/%3E%3C/g%3E%3C/mask%3E%3C/defs%3E%3Cg mask='url(%23c)' fill='none' stroke='white' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M578 465.2L586 464.8L594 464.0L602 462.6L610 460.9L618 459.3L626 457.6L634 455.9L642 454.4L650 452.8L658 451.3L666 449.9L674 448.5L682 447.0L690 445.6L698 444.3L706 442.9L714 441.6L722 440.2L730 439.0L738 437.7L746 436.4L754 435.1L762 433.8L770 432.6L778 431.4L786 430.3L794 429.6L802 429.0L810 425.9L818 424.7L826 423.6L834 422.4L842 421.3L850 420.2L858 419.1L866 418.0L874 417.0L882 415.9L890 414.9L898 413.9L906 412.9L914 411.9L922 411.0L930 410.0L938 409.1L946 408.2L954 407.3L962 406.4L970 405.5L978 404.7L986 403.8L994 403.0L1002 402.2L1010 401.4L1018 400.7L1026 399.9L1034 399.2L1042 398.4L1050 397.7L1058 397.0L1066 396.4L1074 395.7L1082 395.1L1090 394.5L1098 393.8L1106 393.2L1114 392.7L1122 392.1L1130 391.6L1138 391.0L1146 392.8L1154 392.5L1162 392.3L1170 391.9L1178 391.6L1186 391.2L1194 391.0L1202 390.7L1210 390.3L1218 390.0L1226 389.8L1234 389.5L1242 389.3L1250 389.2L1258 389.2L1266 384.8L1274 384.5L1282 384.3L1290 384.0L1298 383.8L1306 383.6L1314 383.5L1322 383.3L1330 383.2L1338 383.0L1346 382.9L1354 382.8L1362 382.8L1370 382.7L1378 382.7L1386 382.6L1394 382.6L1402 382.6L1410 382.6L1418 382.7L1426 382.7L1434 382.8L1442 382.9L1450 383.0L1458 383.1L1466 383.2L1474 383.3L1482 383.5L1490 383.7L1498 383.9L1506 384.1L1514 384.3L1522 384.6L1530 384.8L1538 385.1L1546 390.9L1554 391.0L1562 391.1L1570 391.4L1578 391.7L1586 392.0L1594 392.3L1602 392.6L1610 393.0L1618 393.3L1626 393.7L1634 394.0L1642 394.1L1650 390.6L1658 391.2L1666 391.7L1674 392.2L1682 392.8L1690 393.4L1698 394.0L1706 394.6L1714 395.2L1722 395.9L1730 396.5L1738 397.2L1746 397.9L1754 398.6L1762 399.3L1770 400.1L1778 400.8L1786 401.6L1794 402.4L1802 403.2L1810 404.0L1818 404.9L1826 405.7L1834 406.6L1842 407.5L1850 408.4L1858 409.3L1866 410.2L1874 411.2L1882 412.2L1890 413.1L1898 414.1L1906 415.1L1914 416.2L1922 417.2L1930 418.3L1938 419.4L1946 420.5L1954 421.6L1962 422.7L1970 423.8L1978 425.0L1986 426.2L1994 427.4L2002 428.6L2010 430.5L2018 431.1L2026 431.7L2034 433.0L2042 434.3L2050 435.6L2058 436.9L2066 438.3L2074 439.7L2082 441.2L2090 442.6L2098 444.0L2106 445.5L2114 447.0L2122 448.6L2130 450.3L2138 451.9L2146 453.5L2154 454.9L2162 455.9L2170 456.3' stroke-opacity='.55' stroke-width='26' filter='url(%23h)'/%3E%3Cpath d='M578 465.2L586 464.8L594 464.0L602 462.6L610 460.9L618 459.3L626 457.6L634 455.9L642 454.4L650 452.8L658 451.3L666 449.9L674 448.5L682 447.0L690 445.6L698 444.3L706 442.9L714 441.6L722 440.2L730 439.0L738 437.7L746 436.4L754 435.1L762 433.8L770 432.6L778 431.4L786 430.3L794 429.6L802 429.0L810 425.9L818 424.7L826 423.6L834 422.4L842 421.3L850 420.2L858 419.1L866 418.0L874 417.0L882 415.9L890 414.9L898 413.9L906 412.9L914 411.9L922 411.0L930 410.0L938 409.1L946 408.2L954 407.3L962 406.4L970 405.5L978 404.7L986 403.8L994 403.0L1002 402.2L1010 401.4L1018 400.7L1026 399.9L1034 399.2L1042 398.4L1050 397.7L1058 397.0L1066 396.4L1074 395.7L1082 395.1L1090 394.5L1098 393.8L1106 393.2L1114 392.7L1122 392.1L1130 391.6L1138 391.0L1146 392.8L1154 392.5L1162 392.3L1170 391.9L1178 391.6L1186 391.2L1194 391.0L1202 390.7L1210 390.3L1218 390.0L1226 389.8L1234 389.5L1242 389.3L1250 389.2L1258 389.2L1266 384.8L1274 384.5L1282 384.3L1290 384.0L1298 383.8L1306 383.6L1314 383.5L1322 383.3L1330 383.2L1338 383.0L1346 382.9L1354 382.8L1362 382.8L1370 382.7L1378 382.7L1386 382.6L1394 382.6L1402 382.6L1410 382.6L1418 382.7L1426 382.7L1434 382.8L1442 382.9L1450 383.0L1458 383.1L1466 383.2L1474 383.3L1482 383.5L1490 383.7L1498 383.9L1506 384.1L1514 384.3L1522 384.6L1530 384.8L1538 385.1L1546 390.9L1554 391.0L1562 391.1L1570 391.4L1578 391.7L1586 392.0L1594 392.3L1602 392.6L1610 393.0L1618 393.3L1626 393.7L1634 394.0L1642 394.1L1650 390.6L1658 391.2L1666 391.7L1674 392.2L1682 392.8L1690 393.4L1698 394.0L1706 394.6L1714 395.2L1722 395.9L1730 396.5L1738 397.2L1746 397.9L1754 398.6L1762 399.3L1770 400.1L1778 400.8L1786 401.6L1794 402.4L1802 403.2L1810 404.0L1818 404.9L1826 405.7L1834 406.6L1842 407.5L1850 408.4L1858 409.3L1866 410.2L1874 411.2L1882 412.2L1890 413.1L1898 414.1L1906 415.1L1914 416.2L1922 417.2L1930 418.3L1938 419.4L1946 420.5L1954 421.6L1962 422.7L1970 423.8L1978 425.0L1986 426.2L1994 427.4L2002 428.6L2010 430.5L2018 431.1L2026 431.7L2034 433.0L2042 434.3L2050 435.6L2058 436.9L2066 438.3L2074 439.7L2082 441.2L2090 442.6L2098 444.0L2106 445.5L2114 447.0L2122 448.6L2130 450.3L2138 451.9L2146 453.5L2154 454.9L2162 455.9L2170 456.3' stroke-opacity='.75' stroke-width='8' filter='url(%23m)'/%3E%3Cpath d='M578 465.2L586 464.8L594 464.0L602 462.6L610 460.9L618 459.3L626 457.6L634 455.9L642 454.4L650 452.8L658 451.3L666 449.9L674 448.5L682 447.0L690 445.6L698 444.3L706 442.9L714 441.6L722 440.2L730 439.0L738 437.7L746 436.4L754 435.1L762 433.8L770 432.6L778 431.4L786 430.3L794 429.6L802 429.0L810 425.9L818 424.7L826 423.6L834 422.4L842 421.3L850 420.2L858 419.1L866 418.0L874 417.0L882 415.9L890 414.9L898 413.9L906 412.9L914 411.9L922 411.0L930 410.0L938 409.1L946 408.2L954 407.3L962 406.4L970 405.5L978 404.7L986 403.8L994 403.0L1002 402.2L1010 401.4L1018 400.7L1026 399.9L1034 399.2L1042 398.4L1050 397.7L1058 397.0L1066 396.4L1074 395.7L1082 395.1L1090 394.5L1098 393.8L1106 393.2L1114 392.7L1122 392.1L1130 391.6L1138 391.0L1146 392.8L1154 392.5L1162 392.3L1170 391.9L1178 391.6L1186 391.2L1194 391.0L1202 390.7L1210 390.3L1218 390.0L1226 389.8L1234 389.5L1242 389.3L1250 389.2L1258 389.2L1266 384.8L1274 384.5L1282 384.3L1290 384.0L1298 383.8L1306 383.6L1314 383.5L1322 383.3L1330 383.2L1338 383.0L1346 382.9L1354 382.8L1362 382.8L1370 382.7L1378 382.7L1386 382.6L1394 382.6L1402 382.6L1410 382.6L1418 382.7L1426 382.7L1434 382.8L1442 382.9L1450 383.0L1458 383.1L1466 383.2L1474 383.3L1482 383.5L1490 383.7L1498 383.9L1506 384.1L1514 384.3L1522 384.6L1530 384.8L1538 385.1L1546 390.9L1554 391.0L1562 391.1L1570 391.4L1578 391.7L1586 392.0L1594 392.3L1602 392.6L1610 393.0L1618 393.3L1626 393.7L1634 394.0L1642 394.1L1650 390.6L1658 391.2L1666 391.7L1674 392.2L1682 392.8L1690 393.4L1698 394.0L1706 394.6L1714 395.2L1722 395.9L1730 396.5L1738 397.2L1746 397.9L1754 398.6L1762 399.3L1770 400.1L1778 400.8L1786 401.6L1794 402.4L1802 403.2L1810 404.0L1818 404.9L1826 405.7L1834 406.6L1842 407.5L1850 408.4L1858 409.3L1866 410.2L1874 411.2L1882 412.2L1890 413.1L1898 414.1L1906 415.1L1914 416.2L1922 417.2L1930 418.3L1938 419.4L1946 420.5L1954 421.6L1962 422.7L1970 423.8L1978 425.0L1986 426.2L1994 427.4L2002 428.6L2010 430.5L2018 431.1L2026 431.7L2034 433.0L2042 434.3L2050 435.6L2058 436.9L2066 438.3L2074 439.7L2082 441.2L2090 442.6L2098 444.0L2106 445.5L2114 447.0L2122 448.6L2130 450.3L2138 451.9L2146 453.5L2154 454.9L2162 455.9L2170 456.3' stroke-opacity='1' stroke-width='3'/%3E%3C/g%3E%3C/svg%3E"); position: absolute; inset: 0; -webkit-mask: var(--fx-line) right center / cover no-repeat; mask: var(--fx-line) right center / cover no-repeat; }
.bi-hero__sweep > span { position: absolute; inset: 0; opacity: 0; background: linear-gradient(90deg, rgba(150,240,255,0) 0%, rgba(150,240,255,.55) 6%, rgba(225,252,255,1) 13%, rgba(150,240,255,.55) 20%, rgba(150,240,255,0) 26%, rgba(150,240,255,0) 100%); }
.bi-hero__cta .bi-btn__arr { display: inline-block; margin-left: -.22em; }
@media (min-width: 901px) and (prefers-reduced-motion: no-preference) {
  .bi-hero__fx { display: block; }
  .bi-hero__glow { will-change: opacity; animation: bi-fx-breathe 7.5s ease-in-out infinite; }
  /* the line is a static mask aligned with the photo; only the light band under it moves (no re-raster, no sub-pixel drift) */
  .bi-hero__sweep > span { will-change: transform, opacity; animation: bi-fx-sweep 9s cubic-bezier(.45, 0, .3, 1) 2.5s infinite; }
}
@keyframes bi-fx-breathe { 0%, 100% { opacity: .3; } 50% { opacity: 1; } }
@keyframes bi-fx-sweep { 0% { transform: translateX(10%); opacity: 0; } 3% { opacity: 1; } 17% { opacity: 1; } 20% { transform: translateX(100%); opacity: 0; } 100% { transform: translateX(100%); opacity: 0; } }
@media (prefers-reduced-motion: no-preference) {
  .bi-hero__cta .bi-btn__arr { transition: transform .2s var(--bi-ease); }
  .bi-hero__cta .bi-btn--primary:hover .bi-btn__arr, .bi-hero__cta .bi-btn--primary:focus-visible .bi-btn__arr { transform: translateX(3px); }
  .bi-hero__cta .bi-btn--primary { position: relative; overflow: hidden; isolation: isolate; }
  .bi-hero__cta .bi-btn--primary::after { content: ""; position: absolute; top: -20%; bottom: -20%; left: 0; width: 45%; z-index: -1; pointer-events: none; background: linear-gradient(100deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.6) 50%, rgba(255,255,255,0) 100%); transform: translateX(-120%) skewX(-18deg); will-change: transform; animation: bi-fx-shine 11s ease-in-out 4s infinite; }
}
@keyframes bi-fx-shine { 0% { transform: translateX(-120%) skewX(-18deg); } 8%, 100% { transform: translateX(300%) skewX(-18deg); } }

/* ==========================================================================
   24 Product gallery before flexslider starts (21.10.2026, audyt 05 W-02): WooCommerce keeps the gallery at
   opacity 0 until the footer scripts run. Show the first photo at once, hide the other slides, and reserve the
   exact height of the thumbnail rows (4 per row, gap .6rem; 5 per row, gap .4rem at <=900 px) so nothing jumps.
   ========================================================================== */
.bi-product__media .woocommerce-product-gallery:not(:has(.flex-viewport)) { opacity: 1 !important; }
.bi-product__media .woocommerce-product-gallery:not(:has(.flex-viewport)) .woocommerce-product-gallery__image:nth-child(n+2) { display: none !important; } /* beats WooCommerce's own pre-slider thumb row (0,5,2) */
.bi-product__media .woocommerce-product-gallery:not(:has(.flex-viewport)):has(.woocommerce-product-gallery__image:nth-child(2))::after { content: ""; display: block; --r: 1; padding-top: calc((100% - 1.8rem) * .1875 * var(--r) + (var(--r) - 1) * .6rem); }
.bi-product__media .woocommerce-product-gallery:not(:has(.flex-viewport)):has(.woocommerce-product-gallery__image:nth-child(5))::after { --r: 2; }
.bi-product__media .woocommerce-product-gallery:not(:has(.flex-viewport)):has(.woocommerce-product-gallery__image:nth-child(9))::after { --r: 3; }
.bi-product__media .woocommerce-product-gallery:not(:has(.flex-viewport)):has(.woocommerce-product-gallery__image:nth-child(13))::after { --r: 4; }
@media (max-width: 900px) {
  .bi-product__media .woocommerce-product-gallery:not(:has(.flex-viewport)):has(.woocommerce-product-gallery__image:nth-child(2))::after { --r: 1; padding-top: calc((100% - 1.6rem) * .15 * var(--r) + (var(--r) - 1) * .4rem); }
  .bi-product__media .woocommerce-product-gallery:not(:has(.flex-viewport)):has(.woocommerce-product-gallery__image:nth-child(6))::after { --r: 2; }
  .bi-product__media .woocommerce-product-gallery:not(:has(.flex-viewport)):has(.woocommerce-product-gallery__image:nth-child(11))::after { --r: 3; }
  .bi-product__media .woocommerce-product-gallery:not(:has(.flex-viewport)):has(.woocommerce-product-gallery__image:nth-child(16))::after { --r: 4; }
}

/* finder results: readable condition tag + coloured match verdict (Adam 21.10: "95 %" and grey "Brugt" said nothing) */
.bi-fd__rname .bi-fd__cond { margin: 0 .5rem 0 0; vertical-align: .12em; font-size: .6875rem; padding: .3em .6em; }
.bi-fd__list .bi-fd__badge { display: inline-flex; flex-direction: column; gap: .1rem; margin: 0; padding: .35rem .7rem; border-radius: 8px; border: 1px solid transparent; line-height: 1.15; cursor: default; }
.bi-fd__badge b { font-size: .8125rem; font-weight: 700; }
.bi-fd__badge small { font-size: .72rem; font-weight: 500; opacity: .85; overflow-wrap: anywhere; }
.bi-fd__badge--ok  { background: rgba(34,197,94,.14);  border-color: rgba(34,197,94,.45);  color: #6ee7a0; }
.bi-fd__badge--mid { background: rgba(245,166,35,.14); border-color: rgba(245,166,35,.45); color: #fbc96b; }
.bi-fd__badge--low { background: rgba(239,68,68,.12);  border-color: rgba(239,68,68,.4);   color: #fca5a5; }
.bi-fd__badge--ok b::before  { content: "✓ "; }
.bi-fd__badge--mid b::before { content: "? "; }
.bi-fd__badge--low b::before { content: "! "; }

/* social proof strip in the hero + follow links (Adam 21.10: rating only, no counts) */
.bi-proof { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1.25rem; margin-top: 1.5rem; }
.bi-proof__rate { display: inline-flex; align-items: baseline; gap: .35rem; color: var(--bi-text); text-decoration: none; font-size: .9375rem; }
.bi-proof__rate:hover { text-decoration: none; }
.bi-proof__rate:hover span:last-child { color: var(--bi-accent); }
.bi-proof__star { color: var(--rate, #fbbc04); font-size: 1.05rem; line-height: 1; }
.bi-proof__rate strong { font-size: 1.05rem; color: #fff; }
.bi-proof__rate span:last-child { color: var(--bi-muted); }
.bi-proof__follow { display: inline-flex; align-items: center; gap: .5rem; color: var(--bi-muted); font-size: .9375rem; padding-left: 1.25rem; border-left: 1px solid var(--bi-line-strong); }
.bi-social { display: flex; gap: .5rem; }
.bi-social__link { display: inline-grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--bi-line-strong); color: var(--bi-text); transition: color .2s, border-color .2s; }
.bi-social__link:hover { color: var(--bi-accent); border-color: var(--bi-accent); }
.bi-social__link svg { width: 18px; height: 18px; }
.bi-social--sm .bi-social__link { width: 30px; height: 30px; }
.bi-social--sm .bi-social__link svg { width: 15px; height: 15px; }
.bi-footer__brand .bi-social { margin-top: 1rem; }
@media (max-width: 600px) { .bi-proof__follow { padding-left: 0; border-left: 0; } }

/* 2026-10-22 Fri fragt på stylingdele (inc/frifragt.php): badge under the price, tile tag, Styling category banner */
.bi-frifragt { display: inline-flex; align-items: center; gap: .6rem; padding: .5rem .9rem .5rem .6rem; border-radius: var(--bi-radius-pill);
  background: linear-gradient(135deg, #00B9D6 0%, #18D3B4 100%); color: var(--bi-accent-ink); line-height: 1.15; text-decoration: none;
  box-shadow: 0 4px 14px rgba(0, 185, 214, .35); }
.bi-frifragt:hover { color: var(--bi-accent-ink); filter: brightness(1.05); }
.bi-frifragt svg { width: 34px; height: 34px; flex: none; }
.bi-frifragt b { display: block; font: 700 .95rem/1.15 var(--bi-font-head); letter-spacing: .01em; }
.bi-frifragt small { display: block; font-size: .75rem; font-weight: 600; opacity: .85; }
.bi-product__fri { margin: .9rem 0 .4rem; }
.bi-frifragt-tag { position: absolute; top: .6rem; right: .6rem; z-index: 2; display: inline-flex; align-items: center; gap: .3rem;
  padding: .2em .6em .2em .35em; border-radius: var(--bi-radius-pill); background: var(--bi-accent); color: var(--bi-accent-ink);
  font-size: .6875rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; line-height: 1.2; box-shadow: 0 2px 8px rgba(0, 0, 0, .25); }
.bi-frifragt-tag svg { width: 18px; height: 18px; flex: none; }
.bi-frifragt-banner { display: flex; align-items: center; gap: 1rem; margin-top: 1rem; padding: .85rem 1.1rem; border-radius: var(--bi-radius-lg);
  background: var(--bi-panel); border: 1px solid rgba(0, 185, 214, .45); color: var(--bi-accent); max-width: 46rem; }
.bi-frifragt-banner svg { width: 48px; height: 48px; flex: none; }
.bi-frifragt-banner b { display: block; font: 600 1.05rem/1.3 var(--bi-font-head); color: var(--bi-text); }
.bi-frifragt-banner span { display: block; color: var(--bi-muted); font-size: .875rem; }
@media (max-width: 640px) {
  .bi-frifragt-banner { align-items: flex-start; gap: .75rem; padding: .75rem .9rem; }
  .bi-frifragt-banner svg { width: 38px; height: 38px; }
  .bi-frifragt-tag { top: .45rem; right: .45rem; font-size: .625rem; }
}
