/* =====================================================================
   ISBANETEKNIKK BUTIKK 2026 — isbat-butikk-2026.css (LIVE-BUNDLE)
   Selvbærende CSS for commerce-kontekst (isbat_child_is_commerce_context):
   /butikk/ (side 1013818), product-category-arkiv, handlekurv/kassen/
   min-konto (skall-skin via body.bt26-skall) og enkeltproduktsider
   (reskin via body.single-product). Live har IKKE site.css — alle
   nødvendige tokens og site-regler ligger i denne filen.

   ENQUEUE-MERKNAD: live laster isbat-commerce.css FØR
   isbat-woocommerce-redesign.css (verifisert med curl 2026-07-03).
   Alle motregler i LAG 3b/4 er derfor skrevet med STRENGT høyere
   spesifisitet enn iwc-reglene de overstyrer (html-prefiks + speilede
   klasser) — bundelen virker uavhengig av kildeorden. Bruk gjerne
   likevel deps=['isbat-woocommerce-redesign'] ved eget handle.
   Google Fonts (Schibsted Grotesk, Instrument Sans, JetBrains Mono)
   enqueues separat i functions-patchen — ingen @import her.

   LAG 1  tokens (:root)            — fra site.css (im + fs, uendret)
   LAG 2  site-subset (.bt26)       — kun klasser brukt i <main>-innholdet
   LAG 3  butikk26.css              — bt26-navnerom + skall-skin (.bt26-skall)
   LAG 3b live-samspill skall       — token-remap + motregler mot iwc-laget
   LAG 4  produktside-reskin        — body.single-product, kun visuelt
   ===================================================================== */

/* =====================================================================
   LAG 1 — TOKENS
   Ekstrahert 1:1 fra site.css sine to :root-blokker (im- og fs-settet),
   inkl. font-fallback-stacker. Verifisert: live har ingen fs-/im-token-
   kollisjoner, så tokens deklareres globalt på :root.
   ===================================================================== */
:root {
  /* --- im-tokens (toppmeny-settet; brukes av im-acc/FAQ og bt26-verktoy) --- */

  --im-h: 72px;
  --im-blue: #003399;        /* ISBAT-blå — hovedfarge */
  --im-blue-deep: #072a70;
  --im-red: #ff0033;         /* ISBAT-rød — kun Kontakt-CTA */
  --im-red-deep: #d4002a;
  --im-ink: #16273d;
  --im-mute: #5a6b80;
  --im-ice: #f2f7fc;
  --im-ice-2: #e5eef8;
  --im-line: #d9e4ef;
  --im-white: #ffffff;
  --im-radius: 12px;
  --im-radius-sm: 8px;
  --im-shadow: 0 24px 60px -30px rgba(7, 42, 112, .35);
  --im-shadow-soft: 0 10px 30px -18px rgba(7, 42, 112, .28);
  --im-ease: cubic-bezier(.22, 1, .36, 1);
  --im-font: "Instrument Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --im-disp: "Schibsted Grotesk", "Instrument Sans", ui-sans-serif, system-ui, sans-serif;
  --im-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;
  /* Isbane-oppmerking: blå linjer med rød midtlinje — delt signatur med forsiden */
  --im-rink: linear-gradient(90deg,
      transparent 0%, var(--im-blue) 12%, var(--im-blue) 46%,
      var(--im-red) 49.4%, var(--im-red) 50.6%,
      var(--im-blue) 54%, var(--im-blue) 88%, transparent 100%);

  /* --- fs-tokens (forside-/side-settet; hele bt26-designet bygger på disse) --- */

  --fs-blue: #003399;
  --fs-blue-deep: #072a70;
  --fs-blue-night: #051c4d;
  --fs-red: #ff0033;
  --fs-red-deep: #d4002a;
  --fs-ink: #16273d;
  --fs-mute: #55677d;
  --fs-ice: #f1f6fb;
  --fs-ice-2: #e3edf8;
  --fs-isblank: #9fc1ff;
  --fs-line: #d7e3f0;
  --fs-radius: 12px;
  --fs-radius-sm: 8px;
  --fs-shadow: 0 18px 44px -26px rgba(7, 42, 112, .35);
  --fs-ease: cubic-bezier(.22, 1, .36, 1);
  --fs-disp: "Schibsted Grotesk", "Instrument Sans", ui-sans-serif, system-ui, sans-serif;
  --fs-font: "Instrument Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --fs-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;
  /* Isbane-oppmerking: blå linje – rød midtlinje – blå linje */
  --fs-rink: linear-gradient(90deg,
      transparent 0%, var(--fs-blue) 12%, var(--fs-blue) 46%,
      var(--fs-red) 49.4%, var(--fs-red) 50.6%,
      var(--fs-blue) 54%, var(--fs-blue) 88%, transparent 100%);
}

/* =====================================================================
   LAG 2 — SITE-SUBSET, scopet under .bt26
   Kopiert regel for regel fra site.css, avgrenset til klassene som
   faktisk brukes i <main>-innholdet i butikk-2026 (landing + 46
   kategorisider + skall-sidene): fs-wrap, fs-section(--ice), fs-kicker,
   h1/h2(+em), fs-lede, fs-btn(--primar/--sekundar), fs-ico, fs-btn-rad,
   fs-avslor/.er-synlig, side-hero(--delt), smuler, im-acc(-body),
   im-chev, im-sr — pluss body-grunnlaget flyttet til .bt26-roten.
   Chrome (im-bar/im-drawer/fs-foot/meny) er BEVISST utelatt: live eier
   header/footer/meny.
   MERK spesifisitet: .side-hero-reglene bruker :where() slik at
   .bt26-kathero/.bt26-hero i LAG 3 fortsatt vinner på kildeorden,
   nøyaktig som i det lokale bygget (site.css før butikk26.css).
   ===================================================================== */

/* Grunnlag — body-/globalreglene fra site.css flyttet til .bt26-roten */
.bt26, .bt26 *, .bt26 *::before, .bt26 *::after { box-sizing: border-box; }
.bt26 {
  color: var(--fs-ink);
  background:
    radial-gradient(1100px 520px at 85% -6%, rgba(159, 193, 255, .16), transparent 65%),
    radial-gradient(900px 460px at 0% 12%, rgba(0, 51, 153, .05), transparent 60%),
    #fbfdff;
  font-family: var(--fs-font); line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  counter-reset: fs-seksjon; /* seksjonsnummerering 01–07 (fs-kicker) */
}
.bt26 img { display: block; max-width: 100%; }
.bt26 :where(a) { color: inherit; } /* :where() — må ikke slå enkeltklasse-komponenter (bt26-btn-kurv) */
.bt26 ::selection { background: var(--fs-blue); color: #fff; }

.bt26 .fs-wrap { max-width: 1200px; margin: 0 auto; padding-left: clamp(16px, 3vw, 32px); padding-right: clamp(16px, 3vw, 32px); }
.bt26 .fs-section { position: relative; padding: clamp(52px, 7.5vw, 104px) 0; }
.bt26 .fs-section--ice { background: linear-gradient(180deg, var(--fs-ice) 0%, #f8fbfe 100%); }

/* Seksjonsnummerering 01–07 — teknisk editorial, ren CSS */
.bt26 .fs-kicker {
  counter-increment: fs-seksjon;
  display: flex; align-items: center; gap: 10px;
  margin: 0 0 14px; font-family: var(--fs-mono); font-size: .68rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--fs-blue);
}
.bt26 .fs-kicker::before {
  content: "0" counter(fs-seksjon);
  padding: 3px 7px; border: 1px solid currentColor; border-radius: 4px;
  font-size: .62rem; letter-spacing: .08em; opacity: .85;
}

.bt26 h1, .bt26 h2 { margin: 0 0 16px; font-family: var(--fs-disp); font-weight: 800; line-height: 1.02; color: var(--fs-blue-deep); letter-spacing: -.022em; }
.bt26 h1 { font-size: clamp(2.4rem, 5.4vw, 4.2rem); max-width: 15ch; text-wrap: balance; }
.bt26 h2 { font-size: clamp(1.6rem, 3vw, 2.5rem); max-width: 24ch; text-wrap: balance; }
.bt26 h1 em, .bt26 h2 em {
  font-style: normal; color: var(--fs-blue);
  background: linear-gradient(0deg, rgba(159, 193, 255, .38) 0 .18em, transparent .18em);
}
.bt26 .fs-lede { margin: 0; max-width: 60ch; font-size: clamp(1rem, 1.3vw, 1.14rem); color: var(--fs-mute); }

/* ===== Knapper ===== */
.bt26 .fs-btn {
  position: relative; display: inline-flex; align-items: center; gap: 9px; min-height: 52px; padding: 0 24px;
  border-radius: var(--fs-radius-sm); text-decoration: none; font-weight: 700; font-size: .95rem;
  transition: transform .16s var(--fs-ease), box-shadow .16s var(--fs-ease), background .16s var(--fs-ease), border-color .16s var(--fs-ease);
}
.bt26 .fs-btn:active { transform: translateY(0) scale(.985); }
.bt26 .fs-btn:focus-visible { outline: 3px solid rgba(0, 51, 153, .5); outline-offset: 3px; }
.bt26 .fs-btn--primar { background: var(--fs-blue); color: #fff; box-shadow: 0 10px 26px -14px rgba(0, 51, 153, .55); }
.bt26 .fs-btn--primar:hover { background: var(--fs-blue-deep); transform: translateY(-2px); box-shadow: var(--fs-shadow); }
.bt26 .fs-btn--sekundar { background: #fff; color: var(--fs-blue); border: 1px solid var(--fs-line); }
.bt26 .fs-btn--sekundar:hover { border-color: var(--fs-blue); transform: translateY(-2px); box-shadow: 0 12px 28px -20px rgba(7, 42, 112, .35); }
.bt26 .fs-btn .fs-ico { width: 16px; height: 16px; }
.bt26 .fs-ico { fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.bt26 .fs-btn-rad { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }

/* ===== Avsløring ved scroll =====
   JS-detekt: skjule-regelen gjelder KUN etter at WooCommerce-kjernens
   footer-script har byttet body-klassen woocommerce-no-js -> woocommerce-js
   (finnes på alle sider live — verifisert i _butikk-data/live/*.html).
   Uten JS, eller før utsatt JS har kjørt (WP Rocket delay), forblir
   .fs-avslor-innholdet dermed SYNLIG — server-rendret innhold kan aldri
   bli stående usynlig. Avslørings-shimmen i isbat-commerce.js legger
   .er-synlig ved scroll (direkte uten IO / ved prefers-reduced-motion). */
body.woocommerce-js .bt26 .fs-avslor { opacity: 0; transform: translateY(14px); transition: opacity .55s var(--fs-ease), transform .55s var(--fs-ease); }
body.woocommerce-js .bt26 .fs-avslor.er-synlig { opacity: 1; transform: none; }

/* ===== Underside-hero + brødsmuler =====
   :where() holder spesifisiteten på (0,1,0)/(0,1,1) slik at
   .bt26-kathero-reglene i LAG 3 vinner på kildeorden (som lokalt). */
.bt26 :where(.side-hero) { position: relative; padding: clamp(36px, 5vw, 64px) 0 clamp(24px, 3.5vw, 40px); }
.bt26 :where(.side-hero) h1 { font-size: clamp(2rem, 4.2vw, 3.2rem); }
.bt26 .side-hero--delt { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(24px, 4vw, 56px); align-items: center; }

.bt26 .smuler { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 18px; padding: 0; list-style: none; font-family: var(--fs-mono); font-size: .7rem; letter-spacing: .04em; color: var(--fs-mute); }
.bt26 .smuler a { color: var(--fs-blue); text-decoration: none; }
.bt26 .smuler a:hover { text-decoration: underline; text-underline-offset: 3px; }
.bt26 .smuler li + li::before { content: "/"; margin-right: 8px; opacity: .5; }
.bt26 .smuler li:first-child a {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 5px 10px 5px 13px;
  border: 1px solid rgba(0, 51, 153, .17);
  border-radius: 7px;
  background:
    linear-gradient(90deg, var(--fs-blue) 0 3px, transparent 3px),
    linear-gradient(180deg, #fff, #eef6ff);
  color: var(--fs-blue-deep);
  font-weight: 800;
}

/* ===== FAQ-trekkspill (im-acc brukes i landingens FAQ-seksjon) ===== */
.bt26 .im-sr {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.bt26 .im-chev { fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.bt26 .im-acc { border-bottom: 1px solid var(--im-line); }
.bt26 .im-acc summary {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  min-height: 54px; padding: 6px 4px; cursor: pointer; list-style: none;
  font-family: var(--im-disp); font-size: 1.06rem; font-weight: 700; letter-spacing: -.01em; color: var(--im-blue-deep);
}
.bt26 .im-acc summary::-webkit-details-marker { display: none; }
.bt26 .im-acc summary .im-chev { width: 15px; height: 15px; color: var(--im-mute); transition: transform .18s var(--im-ease); }
.bt26 .im-acc[open] summary .im-chev { transform: rotate(180deg); color: var(--im-blue); }
.bt26 .im-acc-body { display: grid; gap: 4px; padding: 0 2px 14px; }

/* ===== Responsivt (samme punkter som site.css: 1020/620) ===== */
@media (max-width: 1020px) {
  .bt26 .side-hero--delt { grid-template-columns: 1fr; }
}

/* ===== Redusert bevegelse ===== */
@media (prefers-reduced-motion: reduce) {
  body.woocommerce-js .bt26 .fs-avslor { opacity: 1; transform: none; transition: none; }
  .bt26 .fs-btn { transition: none; }
  .bt26 .im-acc summary .im-chev { transition: none !important; }
}

/* =====================================================================
   LAG 3 — BUTIKK26 (bt26-navnerom)
   Hele assets/butikk26.css med tre deploy-tilpasninger:
   1) Den lokale chrome-støtteblokken (#im-panel-omoss/.bt26-panel-liste)
      er fjernet — live eier meny og paneler.
   2) Skall-skinnets lokale banner-/varselregler er fjernet; skinnet er
      skrevet for body-klassen .bt26-skall, og generiske elementregler
      er avgrenset til .site-main (temaets chrome berøres ikke).
   3) .bt26 .bt26-verktoy { top: 0 } (dokumentert under) — lokalt lå den
      klebrige verktøylinjen under den faste im-baren (top: var(--im-h));
      live har ingen fast topplinje, så verktøylinjen fester i toppen.
   ===================================================================== */
:root {
  --bt26-gap: clamp(16px, 2vw, 24px);        /* grid-gutter */
  --bt26-sek: clamp(52px, 7.5vw, 104px);     /* seksjonsluft, = .fs-section */
  --bt26-kort-bilde: 16 / 11;                /* aspect-ratio produktbilder */
  --bt26-z-skeleton: 1;
  --bt26-z-chips: 5;
  --bt26-z-sticky: 20;
}

/* ---------------------------------------------------------------------
   Grunnlag: grids og småtekst
   --------------------------------------------------------------------- */
.bt26-grid {
  display: grid; gap: var(--bt26-gap);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: clamp(20px, 3vw, 32px);
}
.bt26-katgrid {
  display: grid; gap: var(--bt26-gap);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: clamp(20px, 3vw, 32px);
}
.bt26-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  margin: 0 0 14px; font-family: var(--fs-mono); font-size: .68rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--fs-blue);
}
.bt26-eyebrow::before { content: ""; width: 22px; height: 2px; background: var(--fs-rink); }
.bt26-mono {
  font-family: var(--fs-mono); font-size: .72rem; font-weight: 500;
  letter-spacing: .05em; color: var(--fs-mute);
}
.bt26-teller {
  margin: 14px 0 0; font-family: var(--fs-mono); font-size: .74rem; font-weight: 500;
  letter-spacing: .05em; color: var(--fs-mute);
}
.bt26-kilde {
  margin: 10px 0 0; font-family: var(--fs-mono); font-size: .7rem;
  letter-spacing: .04em; color: var(--fs-mute);
}
.bt26-kilde:empty { display: none; }

/* ---------------------------------------------------------------------
   Hero (landing) — bygger på .side-hero--delt fra site.css
   --------------------------------------------------------------------- */
.bt26-hero { position: relative; overflow: clip; }
.bt26-hero .fs-lede { max-width: 56ch; }
.bt26-hero-figur { position: relative; margin: 0; }
.bt26-hero-figur::before {
  content: ""; position: absolute; right: -12%; top: -14%; width: 58%; aspect-ratio: 1;
  border: 2px solid rgba(0, 51, 153, .14); border-radius: 999px; pointer-events: none;
}
.bt26-hero-bilde {
  position: relative; border-radius: 16px; overflow: hidden;
  box-shadow: var(--fs-shadow); aspect-ratio: var(--bt26-kort-bilde);
  background: var(--fs-ice);
}
.bt26-hero-bilde img { width: 100%; height: 100%; object-fit: cover; }

/* ---------------------------------------------------------------------
   Kategori-hero — smalere delt hero for kategorisidene
   --------------------------------------------------------------------- */
.bt26-kathero { position: relative; padding: clamp(30px, 4.5vw, 56px) 0 clamp(22px, 3vw, 36px); }
.bt26-kathero-grid {
  display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  gap: clamp(24px, 4vw, 56px); align-items: center;
}
.bt26-kathero h1 { font-size: clamp(1.9rem, 3.8vw, 2.9rem); }
.bt26-kathero .fs-lede { max-width: 58ch; }
.bt26-kathero-figur { position: relative; margin: 0; }
.bt26-kathero-bilde {
  border-radius: var(--fs-radius); overflow: hidden; box-shadow: var(--fs-shadow);
  aspect-ratio: var(--bt26-kort-bilde); background: var(--fs-ice);
}
.bt26-kathero-bilde img { width: 100%; height: 100%; object-fit: cover; }

/* ---------------------------------------------------------------------
   Kategorikort — bygger på fs-kort--media-mønsteret
   --------------------------------------------------------------------- */
.bt26-katkort {
  position: relative; display: flex; flex-direction: column;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius); background: #fff;
  text-decoration: none; color: inherit; overflow: hidden; min-width: 0;
  transition: border-color .16s var(--fs-ease), box-shadow .16s var(--fs-ease), transform .16s var(--fs-ease);
}
.bt26-katkort::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px;
  background: var(--fs-rink); opacity: 0; transition: opacity .16s var(--fs-ease);
  z-index: 1;
}
.bt26-katkort:hover { border-color: rgba(0, 51, 153, .45); box-shadow: var(--fs-shadow); transform: translateY(-2px); }
.bt26-katkort:hover::before { opacity: 1; }
.bt26-katkort:focus-visible { outline: 3px solid rgba(0, 51, 153, .5); outline-offset: 2px; }
.bt26-katkort-bilde { aspect-ratio: var(--bt26-kort-bilde); overflow: hidden; background: var(--fs-ice); }
.bt26-katkort-bilde img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform .35s var(--fs-ease);
}
.bt26-katkort:hover .bt26-katkort-bilde img { transform: scale(1.04); }
.bt26-katkort-tekst { display: flex; flex-direction: column; gap: 6px; padding: 18px 20px 20px; flex: 1; min-width: 0; }
.bt26-katkort-tekst strong {
  font-family: var(--fs-disp); font-size: 1.05rem; font-weight: 700;
  color: var(--fs-blue-deep); line-height: 1.22; letter-spacing: -.01em;
}
.bt26-katkort-utdrag {
  margin: 0; font-size: .87rem; color: var(--fs-mute); line-height: 1.5;
  display: -webkit-box; -webkit-line-clamp: 1; line-clamp: 1;
  -webkit-box-orient: vertical; overflow: hidden;
}
.bt26-katkort-antall {
  margin-top: auto; padding-top: 10px;
  font-family: var(--fs-mono); font-size: .72rem; font-weight: 700;
  letter-spacing: .06em; color: var(--fs-blue);
}

/* ---------------------------------------------------------------------
   Klyngeblokk — seksjonshode + kategorikort-rad + underkategorilenker
   --------------------------------------------------------------------- */
.bt26-klynge { margin-top: clamp(32px, 4.5vw, 56px); }
.bt26-klynge:first-of-type { margin-top: 0; }
.bt26-klynge-hode { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 10px; }
.bt26-klynge-hode h2 { font-size: clamp(1.3rem, 2.2vw, 1.7rem); margin-bottom: 8px; }
.bt26-klynge-ingress { margin: 0; max-width: 68ch; font-size: .95rem; color: var(--fs-mute); }
.bt26-klynge .bt26-katgrid { margin-top: clamp(16px, 2vw, 24px); }
.bt26-klynge-lenker {
  display: flex; flex-wrap: wrap; gap: 8px;
  margin: 14px 0 0; padding: 0; list-style: none;
}
.bt26-klynge-lenker a {
  display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 4px 13px;
  border: 1px solid var(--fs-line); border-radius: 999px; background: #fff;
  text-decoration: none; color: var(--fs-blue-deep); font-size: .84rem; font-weight: 600;
  transition: border-color .14s var(--fs-ease), background .14s var(--fs-ease), color .14s var(--fs-ease);
}
.bt26-klynge-lenker a:hover { border-color: var(--fs-blue); background: var(--fs-ice); color: var(--fs-blue); }
.bt26-klynge-lenker .bt26-chip-n { color: var(--fs-mute); }

/* ---------------------------------------------------------------------
   Produktkort — article med bilde, badge, H3, utdrag, SKU og footer
   --------------------------------------------------------------------- */
.bt26-kort {
  position: relative; display: flex; flex-direction: column;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius); background: #fff;
  overflow: hidden; min-width: 0;
  transition: border-color .16s var(--fs-ease), box-shadow .16s var(--fs-ease), transform .16s var(--fs-ease);
}
.bt26-kort:hover { border-color: rgba(0, 51, 153, .45); box-shadow: var(--fs-shadow); transform: translateY(-2px); }
.bt26-kort:focus-within { border-color: rgba(0, 51, 153, .45); }
.bt26-kort-bilde {
  position: relative; aspect-ratio: var(--bt26-kort-bilde);
  overflow: hidden; background: var(--fs-ice);
}
.bt26-kort-bilde img {
  width: 100%; height: 100%; object-fit: cover;
  transition: transform .35s var(--fs-ease);
}
.bt26-kort:hover .bt26-kort-bilde img { transform: scale(1.04); }
/* Manglende bilde → nøytral plassholder-flate med stille merking */
.bt26-kort-bilde--tom {
  display: flex; align-items: center; justify-content: center;
  background: linear-gradient(165deg, var(--fs-ice) 0%, var(--fs-ice-2) 100%);
}
.bt26-kort-bilde--tom::after {
  content: "Bilde kommer"; font-family: var(--fs-mono); font-size: .68rem;
  letter-spacing: .1em; text-transform: uppercase; color: var(--fs-mute);
}
.bt26-kort-tekst { display: flex; flex-direction: column; gap: 7px; padding: 16px 18px 18px; flex: 1; min-width: 0; }
.bt26-kort-badge {
  align-self: flex-start; font-family: var(--fs-mono); font-size: .62rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: var(--fs-blue);
  padding: 3px 8px; border: 1px solid var(--fs-ice-2); border-radius: 5px; background: var(--fs-ice);
}
.bt26-kort h3 {
  margin: 0; font-family: var(--fs-disp); font-size: 1.02rem; font-weight: 700;
  color: var(--fs-blue-deep); line-height: 1.25; letter-spacing: -.01em;
}
.bt26-kort-utdrag { margin: 0; font-size: .86rem; color: var(--fs-mute); line-height: 1.52; }
.bt26-kort-sku {
  margin: 0; font-family: var(--fs-mono); font-size: .7rem; font-weight: 500;
  letter-spacing: .04em; color: var(--fs-mute);
}
.bt26-kort-foot {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px;
  margin-top: auto; padding-top: 12px; border-top: 1px solid var(--fs-line);
}
.bt26-kort-lenke {
  display: inline-flex; align-items: center; gap: 6px; min-height: 40px;
  text-decoration: none; color: var(--fs-blue); font-size: .85rem; font-weight: 700;
  transition: color .14s var(--fs-ease);
}
.bt26-kort-lenke:hover { color: var(--fs-blue-deep); text-decoration: underline; text-underline-offset: 3px; }
.bt26-kort-lenke:focus-visible { outline: 3px solid rgba(0, 51, 153, .5); outline-offset: 2px; border-radius: 4px; }
.bt26-btn-kurv {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 42px; padding: 0 16px;
  border: 0; border-radius: var(--fs-radius-sm); cursor: pointer;
  background: var(--fs-blue); color: #fff; text-decoration: none;
  font-family: var(--fs-font); font-size: .82rem; font-weight: 700; line-height: 1.2;
  box-shadow: 0 8px 20px -12px rgba(0, 51, 153, .55);
  transition: background .16s var(--fs-ease), transform .16s var(--fs-ease), box-shadow .16s var(--fs-ease);
}
.bt26-btn-kurv:hover { background: var(--fs-blue-deep); transform: translateY(-1px); box-shadow: var(--fs-shadow); }
.bt26-btn-kurv:focus-visible { outline: 3px solid rgba(0, 51, 153, .5); outline-offset: 2px; }

/* Tjenestekort-variant — ikonfelt i stedet for produktfoto-fokus */
.bt26-kort--tjeneste .bt26-kort-ikon {
  display: flex; align-items: center; justify-content: center;
  aspect-ratio: var(--bt26-kort-bilde);
  background: linear-gradient(165deg, var(--fs-ice) 0%, var(--fs-ice-2) 100%);
  border-bottom: 1px solid var(--fs-line);
}
.bt26-kort--tjeneste .bt26-kort-ikon .fs-ico { width: 44px; height: 44px; color: var(--fs-blue); }
.bt26-kort--tjeneste .bt26-btn-kurv { background: #fff; color: var(--fs-blue); border: 1px solid var(--fs-line); box-shadow: none; }
.bt26-kort--tjeneste .bt26-btn-kurv:hover { border-color: var(--fs-blue); background: var(--fs-ice); transform: translateY(-1px); }

/* ---------------------------------------------------------------------
   Verktøylinje — sticky under kategori-hero: søk + chips + sortering
   --------------------------------------------------------------------- */
.bt26-verktoy {
  position: sticky; top: var(--im-h); z-index: var(--bt26-z-sticky);
  padding: 12px 0;
  background: rgba(251, 253, 255, .92);
  -webkit-backdrop-filter: blur(12px) saturate(1.05);
  backdrop-filter: blur(12px) saturate(1.05);
  border-top: 1px solid var(--fs-line);
  border-bottom: 1px solid var(--fs-line);
}
.bt26-verktoy-rad {
  display: flex; flex-wrap: wrap; align-items: center; gap: 10px;
}
.bt26-verktoy-rad .bt26-sok { flex: 1 1 260px; min-width: 0; }
.bt26-verktoy-rad .bt26-sort { flex: none; margin-left: auto; }

/* Søk */
.bt26-sok { position: relative; display: block; }
.bt26-sok input[type="search"] {
  width: 100%; min-height: 46px; padding: 0 14px 0 40px;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius-sm);
  background: #fff; color: var(--fs-ink);
  font-family: var(--fs-font); font-size: .92rem;
  transition: border-color .14s var(--fs-ease), box-shadow .14s var(--fs-ease);
}
.bt26-sok input[type="search"]::placeholder { color: var(--fs-mute); }
.bt26-sok input[type="search"]:focus-visible {
  outline: 3px solid rgba(0, 51, 153, .35); outline-offset: 1px; border-color: var(--fs-blue);
}
.bt26-sok::before {
  content: ""; position: absolute; left: 13px; top: 50%; width: 16px; height: 16px;
  transform: translateY(-50%); pointer-events: none; opacity: .75;
  background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2355677d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.6-3.6'/%3E%3C/svg%3E");
}

/* Kategorichips */
.bt26-chips {
  position: relative; z-index: var(--bt26-z-chips);
  display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; min-width: 0;
}
.bt26-chip {
  display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 4px 13px;
  border: 1px solid var(--fs-line); border-radius: 999px; background: #fff;
  text-decoration: none; cursor: pointer;
  color: var(--fs-blue-deep); font-family: var(--fs-font); font-size: .84rem; font-weight: 600;
  transition: border-color .14s var(--fs-ease), background .14s var(--fs-ease), color .14s var(--fs-ease);
}
.bt26-chip:hover { border-color: var(--fs-blue); background: var(--fs-ice); color: var(--fs-blue); }
.bt26-chip:focus-visible { outline: 3px solid rgba(0, 51, 153, .5); outline-offset: 2px; }
.bt26-chip.er-aktiv {
  background: var(--fs-blue); border-color: var(--fs-blue); color: #fff;
}
.bt26-chip.er-aktiv .bt26-chip-n { color: #cdddf6; }
.bt26-chip-n {
  font-family: var(--fs-mono); font-size: .68rem; font-weight: 700;
  letter-spacing: .03em; color: var(--fs-mute);
}

/* Sortering */
.bt26-sort { display: inline-flex; align-items: center; gap: 8px; }
.bt26-sort label {
  font-family: var(--fs-mono); font-size: .68rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: var(--fs-mute);
}
.bt26-sort select {
  min-height: 46px; padding: 0 34px 0 12px;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius-sm);
  background: #fff no-repeat right 10px center / 14px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316273d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  color: var(--fs-ink); font-family: var(--fs-font); font-size: .88rem; font-weight: 600;
  appearance: none; -webkit-appearance: none; cursor: pointer;
}
.bt26-sort select:focus-visible { outline: 3px solid rgba(0, 51, 153, .35); outline-offset: 1px; border-color: var(--fs-blue); }

/* ---------------------------------------------------------------------
   Steg-panel — «Slik fungerer det» (3 steg) / kurv-steg (2 steg)
   --------------------------------------------------------------------- */
.bt26-steg {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--bt26-gap);
  margin: clamp(20px, 3vw, 32px) 0 0; padding: 0; list-style: none;
  counter-reset: bt26steg;
}
.bt26-steg--to { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bt26-steg li {
  position: relative; padding: 22px; border: 1px solid var(--fs-line);
  border-radius: var(--fs-radius); background: #fff; min-width: 0;
  transition: border-color .18s var(--fs-ease), box-shadow .18s var(--fs-ease);
}
.bt26-steg li:hover { border-color: rgba(0, 51, 153, .4); box-shadow: var(--fs-shadow); }
.bt26-steg li::before {
  counter-increment: bt26steg; content: "0" counter(bt26steg);
  display: inline-block; margin-bottom: 12px; padding: 4px 9px;
  border: 1px solid var(--fs-ice-2); border-radius: 6px; background: var(--fs-ice);
  font-family: var(--fs-mono); font-size: .78rem; font-weight: 700; letter-spacing: .06em; color: var(--fs-blue);
}
.bt26-steg li strong { display: block; margin-bottom: 6px; font-family: var(--fs-disp); font-weight: 700; color: var(--fs-blue-deep); letter-spacing: -.01em; }
.bt26-steg li p { margin: 0; font-size: .87rem; color: var(--fs-mute); line-height: 1.52; }
.bt26-steg li.er-aktiv { border-color: var(--fs-blue); box-shadow: var(--fs-shadow); }
.bt26-steg li.er-aktiv::before { background: var(--fs-blue); border-color: var(--fs-blue); color: #fff; }

/* ---------------------------------------------------------------------
   CTA-panel (slutt) — gjenbruker fs-slutt-mønsteret i lys innramming
   --------------------------------------------------------------------- */
.bt26-slutt {
  position: relative; text-align: center; overflow: hidden;
  padding: clamp(30px, 4.5vw, 52px) clamp(18px, 3vw, 40px);
  border: 1px solid var(--fs-line); border-radius: 16px;
  background: linear-gradient(165deg, #fff 0%, var(--fs-ice) 100%);
}
.bt26-slutt::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px;
  background: var(--fs-rink);
}
.bt26-slutt h2 { max-width: none; margin-left: auto; margin-right: auto; }
.bt26-slutt p { margin: 0 auto; max-width: 60ch; color: var(--fs-mute); }
.bt26-slutt .fs-btn-rad { justify-content: center; }

/* ---------------------------------------------------------------------
   Hjelpeboks — kategorisidene (BUILD-SPEC 5.2 pkt 5): erstatter livets
   tomme filter-drawer. Rolig panel med kontakt-CTA og telefon.
   --------------------------------------------------------------------- */
.bt26-hjelp {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  gap: var(--bt26-gap);
  margin-top: clamp(24px, 3.5vw, 40px);
  padding: clamp(20px, 3vw, 30px);
  border: 1px solid var(--fs-line); border-left: 3px solid var(--fs-blue);
  border-radius: var(--fs-radius);
  background: linear-gradient(165deg, #fff 0%, var(--fs-ice) 100%);
}
.bt26-hjelp-tekst { flex: 1 1 380px; min-width: 0; }
.bt26-hjelp-tekst strong {
  display: block; margin-bottom: 4px;
  font-family: var(--fs-disp); font-size: 1.08rem; font-weight: 700;
  color: var(--fs-blue-deep); letter-spacing: -.01em;
}
.bt26-hjelp-tekst p { margin: 0; max-width: 64ch; font-size: .92rem; color: var(--fs-mute); line-height: 1.55; }
.bt26-hjelp-tekst a { color: var(--fs-blue); text-decoration: none; font-weight: 600; }
.bt26-hjelp-tekst a:hover { text-decoration: underline; text-underline-offset: 3px; }
.bt26-hjelp .fs-btn-rad { margin-top: 0; flex: none; }
@media (max-width: 620px) {
  .bt26-hjelp { flex-direction: column; align-items: stretch; }
  .bt26-hjelp .fs-btn-rad { margin-top: 4px; }
}

/* ---------------------------------------------------------------------
   Skeleton — kort-silhuetter med rolig shimmer under lasting
   --------------------------------------------------------------------- */
@keyframes bt26Shimmer {
  from { background-position: 160% 0; }
  to { background-position: -60% 0; }
}
.bt26-skjelett {
  position: relative; z-index: var(--bt26-z-skeleton);
  display: flex; flex-direction: column;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius);
  background: #fff; overflow: hidden; min-width: 0;
}
.bt26-skjelett-bilde { aspect-ratio: var(--bt26-kort-bilde); }
.bt26-skjelett-tekst { display: grid; gap: 10px; padding: 16px 18px 18px; }
.bt26-skjelett-linje { height: 13px; border-radius: 6px; }
.bt26-skjelett-linje:nth-child(1) { width: 42%; }
.bt26-skjelett-linje:nth-child(2) { width: 88%; height: 17px; }
.bt26-skjelett-linje:nth-child(3) { width: 66%; }
.bt26-skjelett-bilde, .bt26-skjelett-linje {
  background: linear-gradient(100deg, var(--fs-ice) 38%, var(--fs-ice-2) 50%, var(--fs-ice) 62%);
  background-size: 220% 100%;
  animation: bt26Shimmer 1.4s linear infinite;
}

/* ---------------------------------------------------------------------
   Tom-tilstand og feil-tilstand
   --------------------------------------------------------------------- */
.bt26-tom, .bt26-feil {
  grid-column: 1 / -1;
  padding: clamp(26px, 4vw, 44px) clamp(18px, 3vw, 36px);
  border: 1px dashed var(--fs-line); border-radius: var(--fs-radius);
  background: #fff; text-align: center;
}
.bt26-tom strong, .bt26-feil strong {
  display: block; margin-bottom: 8px;
  font-family: var(--fs-disp); font-size: 1.15rem; font-weight: 700;
  color: var(--fs-blue-deep); letter-spacing: -.01em;
}
.bt26-tom p, .bt26-feil p { margin: 0 auto; max-width: 52ch; font-size: .92rem; color: var(--fs-mute); }
.bt26-tom .fs-btn-rad, .bt26-feil .fs-btn-rad { justify-content: center; margin-top: 20px; }
.bt26-feil-lenker {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px;
  margin: 22px 0 0; padding: 0; list-style: none; text-align: left;
}
.bt26-feil-lenker a {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  min-height: 48px; padding: 8px 14px;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius-sm); background: #fff;
  text-decoration: none; color: var(--fs-blue-deep); font-size: .88rem; font-weight: 600;
  transition: border-color .16s var(--fs-ease), transform .16s var(--fs-ease), box-shadow .16s var(--fs-ease);
}
.bt26-feil-lenker a::after { content: "\2192"; color: var(--fs-blue); font-weight: 700; }
.bt26-feil-lenker a:hover { border-color: var(--fs-blue); transform: translateX(3px); box-shadow: 0 10px 24px -18px rgba(7, 42, 112, .4); }

/* ---------------------------------------------------------------------
   Utvalgte produkter — seksjonsmarkør på landing
   --------------------------------------------------------------------- */
.bt26-utvalgt { position: relative; }
.bt26-utvalgt::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: 2px;
  background: var(--fs-rink); opacity: .35; pointer-events: none;
}

/* ---------------------------------------------------------------------
   Produktside (produkt.html — dynamisk mal, KUN lokal referanse, kap. 5.3)
   Egne media-regler ligger samlet nederst i blokken (1020/620 — samme
   punkter som resten, ingen nye ad-hoc-breakpoints).
   --------------------------------------------------------------------- */
.bt26-produktseksjon { padding: clamp(30px, 4.5vw, 56px) 0 var(--bt26-sek); }
.bt26-produkt {
  display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: clamp(24px, 4vw, 56px); align-items: start;
  margin-top: clamp(10px, 1.5vw, 18px);
}
.bt26-produkt-info { min-width: 0; }
.bt26-produkt-info h1 { margin: 0 0 10px; font-size: clamp(1.7rem, 3.2vw, 2.5rem); line-height: 1.12; }
.bt26-pris {
  margin: 0 0 14px; font-family: var(--fs-mono); font-size: .78rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: var(--fs-blue);
}
.bt26-produkt-lead { margin: 0; max-width: 58ch; font-size: 1rem; color: var(--fs-mute); line-height: 1.6; }
.bt26-produkt-info .fs-btn-rad { margin-top: 22px; }
.bt26-produkt-info .bt26-btn-kurv { min-height: 48px; padding: 0 22px; font-size: .9rem; }

/* Galleri: hovedbilde + thumbs */
.bt26-galleri { min-width: 0; }
.bt26-galleri-hoved {
  display: flex; align-items: center; justify-content: center; margin: 0;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius);
  overflow: hidden; background: #fff; aspect-ratio: var(--bt26-kort-bilde);
}
.bt26-galleri-hoved img { width: 100%; height: 100%; object-fit: contain; }
.bt26-galleri-hoved--tom { background: linear-gradient(165deg, var(--fs-ice) 0%, var(--fs-ice-2) 100%); }
.bt26-galleri-hoved--tom::after {
  content: "Bilde kommer"; font-family: var(--fs-mono); font-size: .68rem;
  letter-spacing: .1em; text-transform: uppercase; color: var(--fs-mute);
}
.bt26-galleri-thumbs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.bt26-galleri-thumb {
  width: 76px; aspect-ratio: var(--bt26-kort-bilde); padding: 0;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius-sm);
  background: #fff; overflow: hidden; cursor: pointer;
  transition: border-color .14s var(--fs-ease), box-shadow .14s var(--fs-ease);
}
.bt26-galleri-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.bt26-galleri-thumb:hover { border-color: var(--fs-blue); }
.bt26-galleri-thumb:focus-visible { outline: 3px solid rgba(0, 51, 153, .5); outline-offset: 2px; }
.bt26-galleri-thumb.er-aktiv { border-color: var(--fs-blue); box-shadow: inset 0 0 0 1px var(--fs-blue); }

/* Full beskrivelse — sanitert prose-container (kun hvitlistede tagger) */
.bt26-produkt-beskrivelse { margin-top: clamp(32px, 4.5vw, 56px); max-width: 76ch; }
.bt26-produkt-beskrivelse > h2 { font-size: clamp(1.25rem, 2vw, 1.55rem); }
.bt26-prose { margin-top: 14px; }
.bt26-prose h2, .bt26-prose h3, .bt26-prose h4, .bt26-prose h5, .bt26-prose h6 {
  margin: 26px 0 10px; font-family: var(--fs-disp); color: var(--fs-blue-deep);
  letter-spacing: -.01em; line-height: 1.25;
}
.bt26-prose h2 { font-size: 1.25rem; }
.bt26-prose h3 { font-size: 1.08rem; }
.bt26-prose h4, .bt26-prose h5, .bt26-prose h6 { font-size: .98rem; }
.bt26-prose p { margin: 0 0 14px; font-size: .95rem; color: var(--fs-ink); line-height: 1.65; }
.bt26-prose ul, .bt26-prose ol { margin: 0 0 14px; padding-left: 22px; }
.bt26-prose li { margin: 0 0 6px; font-size: .95rem; line-height: 1.6; }
.bt26-prose a { color: var(--fs-blue); text-decoration: underline; text-underline-offset: 3px; }
.bt26-prose img {
  display: block; max-width: 100%; height: auto; margin: 10px 0;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius);
}
.bt26-prose figure { margin: 10px 0 14px; }
.bt26-prose figcaption { margin-top: 6px; font-size: .82rem; color: var(--fs-mute); }
.bt26-prose table { width: 100%; margin: 0 0 16px; border-collapse: collapse; font-size: .9rem; }
.bt26-prose th, .bt26-prose td { padding: 8px 10px; border: 1px solid var(--fs-line); text-align: left; }
.bt26-prose th { background: var(--fs-ice); font-weight: 700; color: var(--fs-blue-deep); }
.bt26-prose blockquote {
  margin: 0 0 14px; padding: 10px 16px; border-left: 3px solid var(--fs-blue);
  background: var(--fs-ice); border-radius: 0 var(--fs-radius-sm) var(--fs-radius-sm) 0;
}

/* Meta: SKU + kategorilenker til lokale kategorisider */
.bt26-produkt-meta {
  display: grid; grid-template-columns: max-content minmax(0, 1fr); gap: 8px 26px;
  margin: clamp(28px, 4vw, 44px) 0 0; padding: 18px 20px; max-width: 76ch;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius); background: var(--fs-ice);
}
.bt26-produkt-meta dt {
  align-self: center; font-family: var(--fs-mono); font-size: .68rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: var(--fs-mute);
}
.bt26-produkt-meta dd { margin: 0; font-size: .9rem; color: var(--fs-ink); }
.bt26-produkt-meta dd a { color: var(--fs-blue); font-weight: 600; text-decoration: none; }
.bt26-produkt-meta dd a:hover { text-decoration: underline; text-underline-offset: 3px; }

/* Skeleton og feiltilstand for produktsiden */
.bt26-produkt-skjelettbilde { border: 1px solid var(--fs-line); border-radius: var(--fs-radius); }
.bt26-produkt--skjelett .bt26-skjelett-tekst { padding: 0; }
.bt26-produkt-feil { margin-top: clamp(10px, 1.5vw, 18px); }
.bt26-produkt-feil h1 {
  margin: 0 0 8px; font-family: var(--fs-disp); font-size: clamp(1.4rem, 2.6vw, 1.9rem);
  font-weight: 700; color: var(--fs-blue-deep); letter-spacing: -.01em;
}

@media (max-width: 1020px) {
  .bt26-produkt { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .bt26-produkt-meta { grid-template-columns: 1fr; gap: 4px; }
  .bt26-produkt-meta dt { margin-top: 10px; }
  .bt26-produkt-meta dt:first-child { margin-top: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .bt26-galleri-thumb { transition: none; }
}

/* ---------------------------------------------------------------------
   Stagger-animasjon for API-rendrede kort (BUILD-SPEC kap. 6)
   Kortene får .bt26-inn ved første render; en rAF legger på .er-inne.
   Delay via nth-child (maks 8 kort, resten uten delay) — ingen inline
   styles. SWR-re-render animerer ikke (JS hopper over .bt26-inn).
   --------------------------------------------------------------------- */
.bt26-inn { opacity: 0; transform: translateY(12px); }
.bt26-inn.er-inne {
  opacity: 1; transform: none;
  transition: opacity .5s var(--fs-ease), transform .5s var(--fs-ease);
  transition-delay: calc(var(--i, 0) * 40ms);
}
.bt26-inn:nth-child(2) { --i: 1; }
.bt26-inn:nth-child(3) { --i: 2; }
.bt26-inn:nth-child(4) { --i: 3; }
.bt26-inn:nth-child(5) { --i: 4; }
.bt26-inn:nth-child(6) { --i: 5; }
.bt26-inn:nth-child(7) { --i: 6; }
.bt26-inn:nth-child(8) { --i: 7; }
.bt26-inn:nth-child(n+9) { --i: 0; transition-delay: 0s; }

/* ---------------------------------------------------------------------
   Responsivt — 1279 / 1120 / 1020 / 620, ingen horisontal overflow 390px
   --------------------------------------------------------------------- */
@media (max-width: 1279px) {
  .bt26-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1120px) {
  .bt26-verktoy-rad .bt26-sort label { display: none; }
}
@media (max-width: 1020px) {
  .bt26-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bt26-katgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bt26-steg { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bt26-kathero-grid { grid-template-columns: 1fr; }
  .bt26-hero-figur::before { display: none; }
  .bt26-feil-lenker { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bt26-verktoy { top: var(--im-h); }
}
@media (max-width: 620px) {
  .bt26-grid { grid-template-columns: 1fr; }
  .bt26-katgrid { grid-template-columns: 1fr; }
  .bt26-steg, .bt26-steg--to { grid-template-columns: 1fr; }
  .bt26-feil-lenker { grid-template-columns: 1fr; }
  .bt26-verktoy { position: static; }
  .bt26-verktoy-rad { align-items: stretch; }
  .bt26-verktoy-rad .bt26-sok { flex-basis: 100%; }
  .bt26-verktoy-rad .bt26-sort { margin-left: 0; width: 100%; }
  .bt26-verktoy-rad .bt26-sort select { width: 100%; }
  .bt26-kort-foot { align-items: stretch; flex-direction: column; }
  .bt26-btn-kurv { width: 100%; }
}

/* ---------------------------------------------------------------------
   Redusert bevegelse — ALT over slås av (BUILD-SPEC kap. 6.5)
   --------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  .bt26-inn { opacity: 1; transform: none; }
  .bt26-inn.er-inne { transition: none; }
  .bt26-skjelett-bilde, .bt26-skjelett-linje { animation: none; background: var(--fs-ice); }
  .bt26-kort, .bt26-katkort, .bt26-kort-bilde img, .bt26-katkort-bilde img,
  .bt26-btn-kurv, .bt26-chip, .bt26-kort-lenke, .bt26-steg li,
  .bt26-klynge-lenker a, .bt26-feil-lenker a,
  .bt26-sok input[type="search"], .bt26-sort select { transition: none; }
  .bt26-kort:hover, .bt26-katkort:hover, .bt26-btn-kurv:hover,
  .bt26-feil-lenker a:hover { transform: none; }
  .bt26-kort:hover .bt26-kort-bilde img, .bt26-katkort:hover .bt26-katkort-bilde img { transform: none; }
}

/* ---------------------------------------------------------------------
   Tydelige kortlenker + kategorivelger + til-toppen
   Produkt, kategori og forespørsel har separate klikkflater.
   --------------------------------------------------------------------- */
.bt26-kort-tittellenke { color: inherit; text-decoration: none; }
.bt26-kort .bt26-btn-kurv, .bt26-kort a.bt26-kort-badge, .bt26-kort a.bt26-kort-lenke { position: relative; z-index: 2; }
a.bt26-kort-badge { text-decoration: none; }
a.bt26-kort-badge:hover, a.bt26-kort-badge:focus-visible { color: var(--fs-blue); text-decoration: underline; text-underline-offset: 3px; }
.bt26-kort h3 { transition: color .16s var(--fs-ease); }
.bt26-kort--lenket:hover h3, .bt26-kort--lenket:focus-within h3 { color: var(--fs-blue); }
.bt26-kort--lenket:hover .bt26-kort-lenke { color: var(--fs-blue-deep); text-decoration: underline; text-underline-offset: 3px; }
.bt26-kort-tittellenke:focus-visible { outline: 3px solid rgba(0, 51, 153, .5); outline-offset: 2px; border-radius: 4px; }

.bt26-bytt select { max-width: 250px; }

.bt26-topp {
  position: fixed; right: 18px; bottom: 18px; z-index: 60;
  width: 46px; height: 46px; border: 0; border-radius: 50%;
  background: var(--fs-blue); color: #fff; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  box-shadow: var(--fs-shadow);
  opacity: 0; visibility: hidden; transform: translateY(8px);
  transition: opacity .2s var(--fs-ease), transform .2s var(--fs-ease), visibility .2s, background .16s var(--fs-ease);
}
.bt26-topp.er-synlig { opacity: 1; visibility: visible; transform: none; }
.bt26-topp:hover { background: var(--fs-blue-deep); }
.bt26-topp .fs-ico { width: 20px; height: 20px; }
.bt26-topp:focus-visible { outline: 3px solid rgba(0, 51, 153, .5); outline-offset: 2px; }
@media (max-width: 620px) {
  .bt26-bytt select { max-width: none; }
  .bt26-topp { right: 12px; bottom: 12px; width: 42px; height: 42px; }
}
@media (prefers-reduced-motion: reduce) {
  .bt26-kort h3 { transition: none; }
  .bt26-topp { transition: none; transform: none; }
}

/* =====================================================================
   === skall-skin (.bt26-skall) ===
   Skin for handlekurv/kassen/min-konto. Live-markupen fra Woo/iwc-laget
   er fasit (verifisert mot _butikk-data/live/handlekurv-med-vare.html og
   kassen.html) — reglene under styler eksisterende Woo-klasser og virker
   under body-klassen .bt26-skall som functions-patchen legger på
   cart/checkout/account. HTML-en endres ikke.

   Funksjonelle live-fixes som beholdes (BUILD-SPEC kap. 10):
   - MVA-raden med nullbeløp (tr.tax-total) skjules med display:none.
     Varig fix er filter i child-temaet (kap. 10 #4) — regelen står til
     filteret er på plass.
   - iwc-steps (3 steg) skjules; .bt26-steg--to (2 steg) injiseres av
     PHP-patchen (kap. 10 #1).
   - body.bt26-skall #billing_state_field erstatter inline
     style="display: none" fra live-markupen (feltet er tomt/skjult).
   Generiske elementregler (h2/h3, input/select/textarea) er avgrenset
   til .site-main slik at temaets header/footer ikke berøres.
   ===================================================================== */

/* --- Skall-ramme og grunntypografi ------------------------------------ */
.bt26-skall { min-width: 0; }
.bt26-skall .site-main h2 { font-family: var(--fs-disp); letter-spacing: -.015em; color: var(--fs-blue-deep); }
.bt26-skall .site-main h3 {
  margin: 0 0 14px; font-family: var(--fs-disp); font-size: 1.12rem; font-weight: 700;
  color: var(--fs-blue-deep); letter-spacing: -.01em;
}
.bt26-skall .woocommerce-notices-wrapper:empty { display: none; }
.bt26-skall wc-order-attribution-inputs { display: none; }
.bt26-skall .screen-reader-text {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.bt26-skall .bt26-steg--to { margin: clamp(18px, 2.5vw, 28px) 0 clamp(22px, 3vw, 34px); }
.bt26-skall .bt26-steg p a { color: var(--fs-blue); font-weight: 600; }

/* Live-fix: MVA-raden med nullbeløp skjules (QA kap. 9.6). Varig fix er
   filter i child-temaet (kap. 10 #4) — regelen står til filteret er live. */
.bt26-skall tr.tax-total { display: none; }
/* Live-fix: 3-stegs iwc-steps erstattes av .bt26-steg--to (kap. 10 #1) */
.bt26-skall .iwc-steps { display: none; }
/* Erstatter fjernet inline style="display: none" fra live (tomt felt) */
body.bt26-skall #billing_state_field { display: none; }

/* --- iwc-brødsmuler og kurv-hero (handlekurv) ------------------------- */
.bt26-skall .iwc-sitecrumbs {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 18px;
  font-family: var(--fs-mono); font-size: .7rem; letter-spacing: .04em; color: var(--fs-mute);
}
.bt26-skall .iwc-sitecrumbs a { color: var(--fs-blue); text-decoration: none; }
.bt26-skall .iwc-sitecrumbs a:hover { text-decoration: underline; text-underline-offset: 3px; }
.bt26-skall .iwc-sitecrumbs span { opacity: .5; }
.bt26-skall .iwc-cart-hero { margin: 0 0 6px; }
.bt26-skall .iwc-cart-hero h1 { margin: 0 0 10px; font-size: clamp(2rem, 4.2vw, 3.2rem); }
.bt26-skall .iwc-cart-hero p { margin: 0; max-width: 58ch; font-size: clamp(1rem, 1.4vw, 1.12rem); color: var(--fs-mute); line-height: 1.6; }

/* --- Kasse-intro ------------------------------------------------------- */
.bt26-skall .iwc-quote-intro h2 { margin: 0 0 8px; }
.bt26-skall .iwc-quote-intro p { margin: 0; max-width: 58ch; color: var(--fs-mute); line-height: 1.6; }

/* --- «På forespørsel» -------------------------------------------------- */
.bt26-skall .iwc-poa {
  font-family: var(--fs-mono); font-size: .74rem; font-weight: 700;
  letter-spacing: .05em; color: var(--fs-blue); white-space: nowrap;
}

/* --- Tabeller (kurv, totaler, ordregjennomgang) ------------------------ */
.bt26-skall table.shop_table {
  width: 100%; margin: clamp(16px, 2vw, 24px) 0 0;
  border-collapse: separate; border-spacing: 0;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius);
  overflow: hidden; background: #fff; font-size: .92rem;
}
.bt26-skall table.shop_table th {
  text-align: left; padding: 12px 14px;
  font-family: var(--fs-mono); font-size: .68rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; color: var(--fs-mute);
  background: var(--fs-ice); border-bottom: 1px solid var(--fs-line);
}
.bt26-skall table.shop_table td {
  padding: 14px; border-bottom: 1px solid var(--fs-line);
  vertical-align: middle; color: var(--fs-ink);
}
.bt26-skall table.shop_table tr:last-child > td,
.bt26-skall table.shop_table tr:last-child > th { border-bottom: 0; }
.bt26-skall table.shop_table th.product-remove { width: 44px; }
.bt26-skall table.shop_table th.product-thumbnail { width: 92px; }
.bt26-skall td.product-thumbnail img {
  display: block; width: 72px; height: auto;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius-sm); background: var(--fs-ice);
}
.bt26-skall td.product-name a { color: var(--fs-blue-deep); font-weight: 600; text-decoration: none; }
.bt26-skall td.product-name a:hover { color: var(--fs-blue); text-decoration: underline; text-underline-offset: 3px; }
.bt26-skall a.remove {
  display: inline-flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; border: 1px solid var(--fs-line); border-radius: 999px;
  background: #fff; color: var(--fs-mute); text-decoration: none;
  font-size: 1.15rem; line-height: 1;
  transition: border-color .14s var(--fs-ease), color .14s var(--fs-ease), background .14s var(--fs-ease);
}
.bt26-skall a.remove:hover { border-color: var(--fs-blue); color: var(--fs-blue); background: var(--fs-ice); }
.bt26-skall a.remove:focus-visible { outline: 3px solid rgba(0, 51, 153, .5); outline-offset: 2px; }
.bt26-skall .quantity { display: inline-flex; }
.bt26-skall .quantity .qty {
  width: 84px; min-height: 44px; padding: 0 10px; text-align: center;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius-sm);
  background: #fff; color: var(--fs-ink);
  font-family: var(--fs-mono); font-size: .95rem; font-weight: 500;
}
.bt26-skall .quantity .qty:focus-visible { outline: 3px solid rgba(0, 51, 153, .35); outline-offset: 1px; border-color: var(--fs-blue); }
.bt26-skall td.actions { text-align: right; background: var(--fs-ice); }

/* --- Knapper (Woo-klassene .button / .checkout-button) ----------------- */
.bt26-skall .button,
.bt26-skall a.checkout-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 46px; padding: 10px 20px; cursor: pointer; text-decoration: none;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius-sm);
  background: #fff; color: var(--fs-blue);
  font-family: var(--fs-font); font-size: .88rem; font-weight: 700; line-height: 1.2;
  transition: background .16s var(--fs-ease), border-color .16s var(--fs-ease),
              transform .16s var(--fs-ease), box-shadow .16s var(--fs-ease);
}
.bt26-skall .button:hover { border-color: var(--fs-blue); background: var(--fs-ice); }
.bt26-skall .button:focus-visible,
.bt26-skall a.checkout-button:focus-visible,
.bt26-skall .iwc-btn:focus-visible { outline: 3px solid rgba(0, 51, 153, .5); outline-offset: 2px; }
.bt26-skall .button.alt,
.bt26-skall a.checkout-button {
  border: 0; background: var(--fs-blue); color: #fff;
  box-shadow: 0 8px 20px -12px rgba(0, 51, 153, .55);
}
.bt26-skall .button.alt:hover,
.bt26-skall a.checkout-button:hover {
  background: var(--fs-blue-deep); transform: translateY(-1px); box-shadow: var(--fs-shadow);
}

/* --- Kurv-totaler («Din forespørsel») ---------------------------------- */
.bt26-skall .cart-collaterals { display: grid; justify-content: end; margin-top: clamp(18px, 2.5vw, 28px); }
.bt26-skall .cart_totals { width: min(440px, 100%); min-width: 0; }
.bt26-skall .cart_totals h2 { margin: 0; font-size: 1.25rem; }
.bt26-skall .wc-proceed-to-checkout { display: grid; margin-top: 14px; }

/* --- Forespørselspanelet (iwc-cart-request) ----------------------------- */
.bt26-skall .iwc-cart-request {
  position: relative; overflow: hidden;
  display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: clamp(20px, 3vw, 40px);
  margin-top: clamp(28px, 4vw, 52px); padding: clamp(24px, 3.5vw, 44px);
  border: 1px solid var(--fs-line); border-radius: 16px;
  background: linear-gradient(165deg, #fff 0%, var(--fs-ice) 100%);
}
.bt26-skall .iwc-cart-request::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px;
  background: var(--fs-rink);
}
.bt26-skall .iwc-eyebrow {
  display: inline-flex; align-items: center; gap: 8px; margin: 0 0 14px;
  font-family: var(--fs-mono); font-size: .68rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--fs-blue);
}
.bt26-skall .iwc-eyebrow::before { content: ""; width: 22px; height: 2px; background: var(--fs-rink); }
.bt26-skall .iwc-cart-request__copy h2 { margin: 0 0 8px; font-size: clamp(1.3rem, 2.2vw, 1.7rem); }
.bt26-skall .iwc-cart-request__copy p { margin: 0; max-width: 46ch; color: var(--fs-mute); line-height: 1.6; }
.bt26-skall .iwc-cart-request__items { display: grid; gap: 6px; margin: 16px 0 0; padding: 0; list-style: none; }
.bt26-skall .iwc-cart-request__items li {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  padding: 10px 12px; border: 1px solid var(--fs-line); border-radius: var(--fs-radius-sm);
  background: #fff; font-size: .88rem; color: var(--fs-ink);
}
.bt26-skall .iwc-cart-request__items strong { font-family: var(--fs-mono); font-size: .78rem; color: var(--fs-blue); }
.bt26-skall .iwc-cart-request__form { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 14px; align-content: start; }
.bt26-skall .iwc-cart-request__form label { display: grid; gap: 6px; font-size: .82rem; font-weight: 600; color: var(--fs-ink); }
.bt26-skall .iwc-cart-request__wide, .bt26-skall .iwc-cart-request__submit { grid-column: 1 / -1; }
.bt26-skall .iwc-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 48px; padding: 10px 22px; border: 0; border-radius: var(--fs-radius-sm);
  cursor: pointer; font-family: var(--fs-font); font-size: .9rem; font-weight: 700; line-height: 1.2;
  transition: background .16s var(--fs-ease), transform .16s var(--fs-ease), box-shadow .16s var(--fs-ease);
}
.bt26-skall .iwc-btn--primary {
  background: var(--fs-blue); color: #fff;
  box-shadow: 0 8px 20px -12px rgba(0, 51, 153, .55);
}
.bt26-skall .iwc-btn--primary:hover { background: var(--fs-blue-deep); transform: translateY(-1px); box-shadow: var(--fs-shadow); }

/* --- Skjemafelt (Woo input-text, select, textarea) ---------------------- */
.bt26-skall .site-main input[type="text"],
.bt26-skall .site-main input[type="email"],
.bt26-skall .site-main input[type="tel"],
.bt26-skall .site-main input[type="password"],
.bt26-skall .site-main select,
.bt26-skall .site-main textarea {
  width: 100%; min-height: 46px; padding: 10px 14px;
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius-sm);
  background: #fff; color: var(--fs-ink);
  font-family: var(--fs-font); font-size: .92rem;
  transition: border-color .14s var(--fs-ease), box-shadow .14s var(--fs-ease);
}
.bt26-skall .site-main textarea { min-height: 110px; resize: vertical; }
.bt26-skall .site-main select {
  padding-right: 34px; appearance: none; -webkit-appearance: none; cursor: pointer;
  background: #fff no-repeat right 10px center / 14px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2316273d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'%3E%3C/path%3E%3C/svg%3E");
}
.bt26-skall .site-main input[type="text"]:focus-visible,
.bt26-skall .site-main input[type="email"]:focus-visible,
.bt26-skall .site-main input[type="tel"]:focus-visible,
.bt26-skall .site-main input[type="password"]:focus-visible,
.bt26-skall .site-main select:focus-visible,
.bt26-skall .site-main textarea:focus-visible {
  outline: 3px solid rgba(0, 51, 153, .35); outline-offset: 1px; border-color: var(--fs-blue);
}
.bt26-skall .site-main input[type="checkbox"] { width: 16px; height: 16px; accent-color: var(--fs-blue); }

/* --- Kasse-skjemaet (billing + tillegg + ordregjennomgang) -------------- */
.bt26-skall .col2-set {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(20px, 3vw, 36px); margin-top: clamp(16px, 2vw, 24px);
}
.bt26-skall .col2-set .col-1,
.bt26-skall .col2-set .col-2 {
  min-width: 0; padding: clamp(20px, 2.6vw, 30px);
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius); background: #fff;
}
.bt26-skall .woocommerce-billing-fields__field-wrapper,
.bt26-skall .woocommerce-additional-fields__field-wrapper {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px 14px;
}
.bt26-skall p.form-row { display: grid; gap: 6px; margin: 0; min-width: 0; }
.bt26-skall p.form-row-wide, .bt26-skall p.form-row.notes { grid-column: 1 / -1; }
.bt26-skall .form-row label { font-size: .82rem; font-weight: 600; color: var(--fs-ink); }
.bt26-skall .form-row .required { color: var(--fs-blue); text-decoration: none; }
.bt26-skall .form-row .optional { color: var(--fs-mute); font-weight: 400; font-size: .92em; }
.bt26-skall .woocommerce-input-wrapper { display: block; min-width: 0; }
.bt26-skall #order_review_heading { margin: clamp(24px, 3.5vw, 40px) 0 0; }
.bt26-skall #order_review { min-width: 0; }
.bt26-skall #payment .place-order { display: grid; gap: 14px; margin: 0; padding: 16px 14px; background: var(--fs-ice); }
.bt26-skall .woocommerce-privacy-policy-text p { margin: 0; font-size: .8rem; color: var(--fs-mute); line-height: 1.55; }
.bt26-skall .woocommerce-privacy-policy-text a { color: var(--fs-blue); }
.bt26-skall #place_order { min-height: 52px; font-size: .95rem; }

/* --- Min konto: login-skjema + fakta-boks ------------------------------- */
.bt26-konto {
  display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
  gap: clamp(20px, 3vw, 40px); align-items: start;
}
.bt26-skall .woocommerce-form-login {
  display: grid; gap: 16px; padding: clamp(20px, 2.6vw, 30px);
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius); background: #fff;
}
.bt26-skall .woocommerce-form-login .form-row:not(.form-row-wide) {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px;
}
.bt26-skall .woocommerce-form__label-for-checkbox {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: .88rem; font-weight: 500; color: var(--fs-ink); cursor: pointer;
}
.bt26-skall .woocommerce-form-login__submit {
  border: 0; background: var(--fs-blue); color: #fff; min-width: 140px;
  box-shadow: 0 8px 20px -12px rgba(0, 51, 153, .55);
}
.bt26-skall .woocommerce-form-login__submit:hover { background: var(--fs-blue-deep); transform: translateY(-1px); box-shadow: var(--fs-shadow); }
.bt26-skall .lost_password { margin: 0; font-size: .85rem; }
.bt26-skall .lost_password a { color: var(--fs-blue); font-weight: 600; text-decoration: none; }
.bt26-skall .lost_password a:hover { text-decoration: underline; text-underline-offset: 3px; }
.bt26-konto-fakta {
  position: relative; overflow: hidden; padding: clamp(20px, 2.6vw, 30px);
  border: 1px solid var(--fs-line); border-radius: var(--fs-radius);
  background: linear-gradient(165deg, #fff 0%, var(--fs-ice) 100%);
}
.bt26-konto-fakta::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; height: 3px;
  background: var(--fs-rink);
}
.bt26-konto-fakta h2 { margin: 0 0 10px; font-size: 1.15rem; }
.bt26-konto-fakta ul { display: grid; gap: 8px; margin: 0 0 14px; padding: 0 0 0 1.1em; color: var(--fs-mute); font-size: .92rem; line-height: 1.6; }
.bt26-konto-fakta p { margin: 0; font-size: .92rem; color: var(--fs-mute); line-height: 1.6; }
.bt26-konto-fakta a { color: var(--fs-blue); font-weight: 600; text-decoration: none; }
.bt26-konto-fakta a:hover { text-decoration: underline; text-underline-offset: 3px; }

/* --- Responsivt (1020 / 620 — samme punkter som resten) ----------------- */
@media (max-width: 1020px) {
  .bt26-skall .iwc-cart-request { grid-template-columns: 1fr; }
  .bt26-skall .col2-set { grid-template-columns: 1fr; }
  .bt26-konto { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .bt26-skall .woocommerce-billing-fields__field-wrapper,
  .bt26-skall .woocommerce-additional-fields__field-wrapper,
  .bt26-skall .iwc-cart-request__form { grid-template-columns: 1fr; }
  /* Stablet kurvtabell: rader som kort, data-title som etikett */
  .bt26-skall table.shop_table_responsive thead,
  .bt26-skall table.shop_table_responsive tr > th { display: none; }
  .bt26-skall table.shop_table_responsive tr { display: block; }
  .bt26-skall table.shop_table_responsive tr + tr { border-top: 1px solid var(--fs-line); }
  .bt26-skall table.shop_table_responsive td { display: block; padding: 10px 14px; border-bottom: 0; }
  .bt26-skall table.shop_table_responsive td[data-title] {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
  }
  .bt26-skall table.shop_table_responsive td[data-title]::before {
    content: attr(data-title);
    font-family: var(--fs-mono); font-size: .66rem; font-weight: 700;
    letter-spacing: .1em; text-transform: uppercase; color: var(--fs-mute);
  }
  .bt26-skall table.shop_table_responsive td.product-remove { padding-top: 14px; text-align: right; }
  .bt26-skall td.actions { text-align: left; }
  .bt26-skall td.actions .button, .bt26-skall a.checkout-button { width: 100%; }
  .bt26-skall .cart-collaterals { justify-content: stretch; }
  .bt26-skall .cart_totals { width: 100%; }
}

/* --- Redusert bevegelse — skall-skinnets transisjoner slås av ----------- */
@media (prefers-reduced-motion: reduce) {
  .bt26-skall .button, .bt26-skall a.checkout-button, .bt26-skall .iwc-btn,
  .bt26-skall a.remove, .bt26-skall .site-main input, .bt26-skall .site-main select, .bt26-skall .site-main textarea,
  .bt26-skall .woocommerce-form-login__submit { transition: none; }
  .bt26-skall .button.alt:hover, .bt26-skall a.checkout-button:hover,
  .bt26-skall .iwc-btn--primary:hover,
  .bt26-skall .woocommerce-form-login__submit:hover { transform: none; }
}

/* ---------------------------------------------------------------------
   Landing (BUILD-SPEC kap. 5.1.3): ved aktivt søk eller kategorifilter
   erstattes seksjon 4–5 (.bt26-skjulbar) av resultatgridet
   (.bt26-resultater). Tilstanden leses fra DOM-en butikk26.js allerede
   vedlikeholder: aktiv chip (.er-aktiv på annet enn «Alle») og
   søkefeltets :placeholder-shown. Uten :has-støtte (eldre motorer)
   vises alle seksjoner — funksjonelt, bare lengre side.
   --------------------------------------------------------------------- */
@supports selector(main:has(a)) {
  .bt26:not(:has(.bt26-chip.er-aktiv:not([data-bt26-kategori=""]))):not(:has([data-bt26-sok]:not(:placeholder-shown))) .bt26-resultater {
    display: none;
  }
  .bt26:has(.bt26-chip.er-aktiv:not([data-bt26-kategori=""])) .bt26-skjulbar,
  .bt26:has([data-bt26-sok]:not(:placeholder-shown)) .bt26-skjulbar {
    display: none;
  }
}

/* Deploy-tilpasning (dokumentert): lokalt fester verktøylinjen seg under
   den faste im-baren (top: var(--im-h) = 72px). Live-headeren ruller
   vekk, så linjen skal feste helt i toppen. Vinner over LAG 3-reglene
   (0,1,0) på spesifisitet (0,2,0) — også 1020-medieregelen. */
.bt26 .bt26-verktoy { top: 0; }

/* =====================================================================
   LAG 3b — LIVE-SAMSPILL FOR SKALL-SIDENE (.bt26-skall mot iwc-laget)
   isbat-woocommerce-redesign.css (nedlastet i dag) styler cart/checkout/
   account med token-baserte regler + noen sene literal-regler med
   !important. Strategien her:
   1) Token-remap: iwc-tokens pekes om til fs-paletten under
      body.bt26-skall — da løser iwc-lagets egne !important-regler seg
      selv til bt26-uttrykket (farger, radier, skygger, font).
   2) Motregler: kun der iwc bruker LITERALE verdier med !important
      (mørk kurv-hero, mørkt forespørselspanel, cyan-gradienter på
      innsendingsknapper, hvite tekst-spans). Hver motregel er
      dokumentert med iwc-linjenummer, speiler iwc-selektoren og løftes
      med html-prefiks (+ .bt26-skall) så den vinner deterministisk.
   Motreglene inkluderer .isbat-*-redesign-klassene: de lever og dør
   sammen med iwc-reglene de motvirker.
   ===================================================================== */

body.bt26-skall {
  /* token-remap: iwc → fs (samme kart som LAG 4) */
  --iwc-blue: var(--fs-blue);
  --iwc-blue-600: var(--fs-blue-deep);
  --iwc-blue-700: var(--fs-blue-deep);
  --iwc-blue-ink: var(--fs-blue-deep);
  --iwc-blue-glow: rgba(0, 51, 153, .22);
  --iwc-navy: var(--fs-blue-night);
  --iwc-navy-2: var(--fs-blue-deep);
  --iwc-ice: var(--fs-ice);
  --iwc-grey: var(--fs-ice);
  --iwc-surface-2: var(--fs-ice);
  --iwc-line: var(--fs-line);
  --iwc-line-strong: var(--fs-line);
  --iwc-ink: var(--fs-ink);
  --iwc-ink-soft: var(--fs-mute);
  --iwc-ink-muted: var(--fs-mute);
  --iwc-on-dark: #cdddf6;
  --iwc-font: var(--fs-font);
  --iwc-r-sm: var(--fs-radius-sm);
  --iwc-r: var(--fs-radius);
  --iwc-r-lg: 16px;
  --iwc-r-pill: var(--fs-radius-sm); /* pillene blir rolige bt26-hjørner */
  --iwc-shadow: var(--fs-shadow);
  --iwc-shadow-md: var(--fs-shadow);
  --iwc-shadow-lg: 0 24px 60px -30px rgba(7, 42, 112, .35);
  --iwc-glow: 0 0 0 1px var(--fs-blue), var(--fs-shadow);
  --iwc-ease: var(--fs-ease);
  /* de sene cyan-gradientene bruker --isbat-blue-settet — pek om til fs */
  --isbat-blue: var(--fs-blue);
  --isbat-blue-2: var(--fs-blue-deep);
  --isbat-blue-3: var(--fs-blue-night);
}

/* --- Kurv-hero: iwc tegner mørkt panel med hvit H1 (iwc-css l.2039–2080,
   #fff !important). bt26-skallet vil ha lys, rolig hero. --------------- */
html body.bt26-skall .iwc-cart-hero {
  padding: 0 !important;          /* motregel: iwc padding på mørkt panel */
  border: 0 !important;           /* motregel: iwc border l.2042 */
  background: none !important;    /* motregel: iwc mørk gradient l.2044 */
  box-shadow: none !important;    /* motregel: iwc shadow l.2047 */
}
html body.bt26-skall .iwc-cart-hero h1 {
  font-family: var(--fs-disp); letter-spacing: -.022em; font-weight: 800;
  color: var(--fs-blue-deep) !important;                 /* mot #fff !important l.2052 */
  -webkit-text-fill-color: var(--fs-blue-deep) !important;
}
html body.bt26-skall .iwc-cart-hero p {
  color: var(--fs-mute) !important;                      /* mot rgba(238,...) !important l.2069 */
  -webkit-text-fill-color: var(--fs-mute) !important;
}

/* --- Forespørselspanelet: iwc «contrast polish» tegner kopikolonnen mørk
   med hvit tekst og cyan-aksenter (iwc-css l.2370–2397, !important).
   bt26-skallet er lyst. ------------------------------------------------ */
html body.bt26-skall.isbat-cart-redesign .iwc-cart-request__copy {
  padding: 0 !important;          /* mot l.2371 */
  border: 0 !important;           /* mot l.2374 */
  background: none !important;    /* mot mørk gradient !important l.2373 */
  box-shadow: none !important;    /* mot l.2375 */
  color: var(--fs-ink) !important;                       /* mot #fff !important l.2376 */
  -webkit-text-fill-color: var(--fs-ink) !important;
}
html body.bt26-skall.isbat-cart-redesign .iwc-cart-request__copy h2 {
  font-family: var(--fs-disp); letter-spacing: -.015em;
  color: var(--fs-blue-deep) !important;                 /* mot #fff !important l.2381 */
  -webkit-text-fill-color: var(--fs-blue-deep) !important;
}
html body.bt26-skall.isbat-cart-redesign .iwc-cart-request__copy p {
  color: var(--fs-mute) !important;                      /* mot #fff !important l.2381 */
  -webkit-text-fill-color: var(--fs-mute) !important;
}
html body.bt26-skall.isbat-cart-redesign .iwc-cart-request__copy .iwc-eyebrow {
  color: var(--fs-blue) !important;                      /* mot cyan #8fe8ff !important l.2385 */
  -webkit-text-fill-color: var(--fs-blue) !important;
}
html body.bt26-skall.isbat-cart-redesign .iwc-cart-request__items li {
  background: #fff !important;                           /* mot rgba(255,255,255,.09) !important l.2389 */
  color: var(--fs-ink) !important;                       /* mot #fff !important l.2390 */
  -webkit-text-fill-color: var(--fs-ink) !important;
  border: 1px solid var(--fs-line) !important;
}
html body.bt26-skall.isbat-cart-redesign .iwc-cart-request__items strong {
  color: var(--fs-blue) !important;                      /* mot cyan #8fe8ff !important l.2395 */
  -webkit-text-fill-color: var(--fs-blue) !important;
}
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .iwc-cart-request__items li span {
  color: var(--fs-ink) !important;                       /* mot #fff !important l.3150–3153 */
  -webkit-text-fill-color: var(--fs-ink) !important;
}

/* --- Skjemafelt/etiketter: sene literal-regler (iwc-css l.3101–3148)
   setter cyan-borders, inset-skygger og fete etiketter med !important. - */
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .iwc-cart-request__form label,
html body.bt26-skall.woocommerce-checkout.isbat-checkout-redesign .form-row label,
html body.bt26-skall.woocommerce-account.isbat-account-redesign .woocommerce form label {
  color: var(--fs-ink) !important;                       /* mot #0f253b !important l.3104 */
  -webkit-text-fill-color: var(--fs-ink) !important;
  font-weight: 600 !important;                           /* mot 800 !important l.3106 */
  font-size: .82rem;
}
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .iwc-cart-request__form input[type="text"],
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .iwc-cart-request__form input[type="email"],
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .iwc-cart-request__form input[type="tel"],
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .iwc-cart-request__form textarea,
html body.bt26-skall.woocommerce-checkout.isbat-checkout-redesign .form-row input.input-text,
html body.bt26-skall.woocommerce-checkout.isbat-checkout-redesign .form-row textarea,
html body.bt26-skall.woocommerce-checkout.isbat-checkout-redesign .form-row select,
html body.bt26-skall.woocommerce-account.isbat-account-redesign .woocommerce form .input-text,
html body.bt26-skall.woocommerce-account.isbat-account-redesign .woocommerce form textarea,
html body.bt26-skall.woocommerce-account.isbat-account-redesign .woocommerce form select {
  color: var(--fs-ink) !important;                       /* mot #0b1624 !important l.3120 */
  -webkit-text-fill-color: var(--fs-ink) !important;
  border: 1px solid var(--fs-line) !important;           /* mot cyan-border !important l.3122 */
  border-radius: var(--fs-radius-sm) !important;
  box-shadow: none !important;                           /* mot inset-skygge !important l.3124 */
}
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .iwc-cart-request__form input:focus,
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .iwc-cart-request__form textarea:focus,
html body.bt26-skall.woocommerce-checkout.isbat-checkout-redesign .form-row input.input-text:focus,
html body.bt26-skall.woocommerce-checkout.isbat-checkout-redesign .form-row textarea:focus,
html body.bt26-skall.woocommerce-checkout.isbat-checkout-redesign .form-row select:focus,
html body.bt26-skall.woocommerce-account.isbat-account-redesign .woocommerce form .input-text:focus {
  border-color: var(--fs-blue) !important;               /* mot cyan-fokus !important l.3143 */
  box-shadow: 0 0 0 3px rgba(0, 51, 153, .2) !important; /* mot cyan-ring !important l.3144 */
}

/* --- Innsendingsknapper: sene cyan-gradienter med !important
   (iwc-css l.3155–3169). bt26-primær er rolig ISBAT-blå. --------------- */
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .iwc-cart-request__submit,
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .wc-proceed-to-checkout .checkout-button,
html body.bt26-skall.woocommerce-checkout.isbat-checkout-redesign #place_order,
html body.bt26-skall.woocommerce-checkout.isbat-checkout-redesign form.checkout button#place_order {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: var(--fs-blue) !important;                 /* mot cyan-gradient !important l.3161 */
  border: 0 !important;                                  /* mot hvit border !important l.3164 */
  box-shadow: 0 8px 20px -12px rgba(0, 51, 153, .55) !important; /* mot glød !important l.3165 */
}
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .iwc-cart-request__submit:hover,
html body.bt26-skall.woocommerce-cart.isbat-cart-redesign .wc-proceed-to-checkout .checkout-button:hover,
html body.bt26-skall.woocommerce-checkout.isbat-checkout-redesign #place_order:hover,
html body.bt26-skall.woocommerce-checkout.isbat-checkout-redesign form.checkout button#place_order:hover {
  background: var(--fs-blue-deep) !important;            /* hover må også forbi gradienten */
  transform: translateY(-1px);
  box-shadow: var(--fs-shadow) !important;
}

/* --- Tabellfinish i kurven: iwc-regler med høyere spesifisitet enn
   skinnets (body + 2 klasser mot skinnets 2 klasser). ------------------ */
/* th-typografien fra skinnet (mono/uppercase) løftes forbi iwc l.1022 */
html body.bt26-skall.woocommerce-page table.shop_table th {
  font-family: var(--fs-mono); font-size: .68rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase; padding: 12px 14px;
}
/* iwc setter border-top på td (l.1023), skinnet border-bottom → doble
   hårlinjer. Behold skinnets bunnlinje. */
html body.bt26-skall.woocommerce-page table.shop_table td { border-top: 0; padding: 14px; }
/* men kurv-totalene styres av iwc l.1046 (!important) — la dem være */
/* produktlenken i kurven: iwc låser til ink med !important (l.1025–1027) */
html body.bt26-skall.isbat-cart-redesign td.product-name a {
  color: var(--fs-blue-deep) !important;
  -webkit-text-fill-color: var(--fs-blue-deep) !important;
}
html body.bt26-skall.isbat-cart-redesign td.product-name a:hover {
  color: var(--fs-blue) !important;
  -webkit-text-fill-color: var(--fs-blue) !important;
}
/* miniatyr som i skinnet (72px, rolig ramme) — iwc l.1024 sier 64px */
html body.bt26-skall.woocommerce-page table.shop_table td.product-thumbnail img {
  width: 72px; border: 1px solid var(--fs-line); border-radius: var(--fs-radius-sm);
}
/* actions-cellen: iwc tvinger hvit td-bakgrunn med !important (l.1023) */
html body.bt26-skall.isbat-cart-redesign table.shop_table td.actions {
  background: var(--fs-ice) !important;
}

/* =====================================================================
   LAG 4 — PRODUKTSIDE-RESKIN (body.single-product)
   Live enkeltproduktsider rendres av iwc-laget (body.single-product +
   body.isbat-product-redesign). Dette laget gir dem bt26-uttrykket:
   fs-tokens for farge/typografi, bt26-knapper (primær «Legg i
   tilbudsforespørsel»), kort/paneler med --fs-radius/--fs-shadow/
   --fs-line og rolig hover. Layout-mekanikken (grid, sticky galleri,
   tabs, relatert-grid) beholdes fra iwc — kun visuell samstemming.

   Strategi som i LAG 3b: (1) token-remap under body.single-product —
   iwc-lagets egne regler (også de med !important) løser seg da selv til
   fs-paletten; (2) et lite sett motregler der iwc bruker literale
   verdier med !important — hver er dokumentert med iwc-linjenummer.
   ===================================================================== */

body.single-product {
  --iwc-blue: var(--fs-blue);
  --iwc-blue-600: var(--fs-blue-deep);
  --iwc-blue-700: var(--fs-blue-deep);
  --iwc-blue-ink: var(--fs-blue-deep);
  --iwc-blue-glow: rgba(0, 51, 153, .22);
  --iwc-navy: var(--fs-blue-night);
  --iwc-navy-2: var(--fs-blue-deep);
  --iwc-ice: var(--fs-ice);
  --iwc-grey: var(--fs-ice);
  --iwc-surface-2: var(--fs-ice);
  --iwc-line: var(--fs-line);
  --iwc-line-strong: var(--fs-line);
  --iwc-ink: var(--fs-ink);
  --iwc-ink-soft: var(--fs-mute);
  --iwc-ink-muted: var(--fs-mute);
  --iwc-on-dark: #cdddf6;      /* tekst på mørk ekspert-flate — fs-tonet */
  --iwc-font: var(--fs-font);  /* iwc tvinger denne på div.product * */
  --iwc-r-sm: var(--fs-radius-sm);
  --iwc-r: var(--fs-radius);
  --iwc-r-lg: 16px;
  --iwc-r-pill: var(--fs-radius-sm); /* knapper/tabs får bt26-hjørner, ikke piller */
  --iwc-shadow: var(--fs-shadow);
  --iwc-shadow-md: var(--fs-shadow);
  --iwc-shadow-lg: 0 24px 60px -30px rgba(7, 42, 112, .35);
  --iwc-glow: 0 0 0 1px var(--fs-blue), var(--fs-shadow); /* rolig hover-glød */
  --iwc-ease: var(--fs-ease);
  /* de sene cyan-gradientene (iwc-css l.2940–2971) bruker --isbat-blue-settet */
  --isbat-blue: var(--fs-blue);
  --isbat-blue-2: var(--fs-blue-deep);
  --isbat-blue-3: var(--fs-blue-night);
}

/* --- Typografi: display-font og bt26-blå på overskrifter ---------------
   !important kreves fordi iwc setter font-family med !important på
   div.product * (l.578–581) og farge + text-fill med !important på
   overskriftene (l.603–615, 649–657). ---------------------------------- */
html body.single-product .product_title.entry-title {
  font-family: var(--fs-disp) !important;   /* mot font !important l.581 */
  color: var(--fs-blue-deep) !important;    /* mot ink !important l.610 */
  -webkit-text-fill-color: var(--fs-blue-deep) !important;
  letter-spacing: -.022em;
  line-height: 1.1;
}
html body.single-product .woocommerce-Tabs-panel h2,
html body.single-product .woocommerce-Tabs-panel h3,
html body.single-product .woocommerce-Tabs-panel h4,
html body.single-product .related.products > h2,
html body.single-product .upsells.products > h2 {
  font-family: var(--fs-disp) !important;   /* mot font !important l.581 */
  color: var(--fs-blue-deep) !important;    /* mot ink !important l.610/655 */
  -webkit-text-fill-color: var(--fs-blue-deep) !important;
  letter-spacing: -.015em;
}
/* ekspert-kortet ligger på mørk flate — H3 skal forbli hvit (iwc l.617) */
html body.single-product .iwc-expert h3,
html body.single-product .iwc-expert__body h3 {
  font-family: var(--fs-disp) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* --- Pris-linjen «Pris på forespørsel» → bt26-pris-uttrykket -----------
   (mono, liten, uppercase — aldri beløp). font-family trenger !important
   mot div.product *-regelen (l.581); fargen mot l.618–623 (!important). */
html body.single-product .summary .price,
html body.single-product .summary .price .isbat-price-on-request {
  font-family: var(--fs-mono) !important;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--fs-blue) !important;
  -webkit-text-fill-color: var(--fs-blue) !important;
}

/* --- Kategori-eyebrow over tittelen (.iwc-psum__cat) → bt26-eyebrow ---- */
html body.single-product .iwc-psum__cat {
  font-family: var(--fs-mono) !important;   /* mot font !important l.581 */
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .16em;
  color: var(--fs-blue) !important;         /* mot blue !important l.618–623 */
  -webkit-text-fill-color: var(--fs-blue) !important;
}

/* --- Brødsmuler (.iwc-sitecrumbs--single) → smuler-uttrykket ----------- */
body.single-product .iwc-sitecrumbs {
  font-family: var(--fs-mono);
  font-size: .7rem;
  font-weight: 500;
  letter-spacing: .04em;
  color: var(--fs-mute);
}
body.single-product .iwc-sitecrumbs a { color: var(--fs-blue); }
body.single-product .iwc-sitecrumbs a:hover { color: var(--fs-blue-deep); }
body.single-product .iwc-sitecrumbs strong { color: var(--fs-ink); font-weight: 700; }

/* --- Primærknapp «Legg i forespørselsliste» -----------------------------
   Farge/radius/skygge kommer via token-remapen (iwc-reglene l.793–808
   bruker tokens). Motreglene under gjelder KUN den sene cyan-gradienten
   med !important (l.2962–2971) og gir rolig bt26-hover (-1px). --------- */
html body.single-product.isbat-product-redesign.woocommerce div.product .summary form.cart .single_add_to_cart_button.button.alt,
html body.single-product.isbat-product-redesign.woocommerce div.product .summary form.cart button.single_add_to_cart_button.button.alt {
  background: var(--fs-blue) !important;    /* mot cyan-gradient !important l.2968 */
  box-shadow: 0 8px 20px -12px rgba(0, 51, 153, .55);
}
html body.single-product.isbat-product-redesign.woocommerce div.product .summary form.cart .single_add_to_cart_button.button.alt:hover,
html body.single-product.isbat-product-redesign.woocommerce div.product .summary form.cart button.single_add_to_cart_button.button.alt:hover {
  background: var(--fs-blue-deep) !important; /* hover må også forbi gradienten */
  box-shadow: var(--fs-shadow);
}
/* rolig hover: -1px i stedet for iwc sine -2px (l.803–808, ikke !important) */
html body.single-product .summary form.cart .button:hover,
html body.single-product .summary .single_add_to_cart_button:hover,
html body.single-product .summary .isbat-quote-button:hover {
  transform: translateY(-1px);
}
html body.single-product .iwc-btn--primary:hover,
html body.single-product .iwc-btn--ghost:hover {
  transform: translateY(-1px);              /* iwc: -2px (l.109/111) */
}
/* bt26-fokusmarkør på kjøps-/forespørselsknappene */
body.single-product .summary .single_add_to_cart_button:focus-visible,
body.single-product .summary .isbat-quote-button:focus-visible,
body.single-product .iwc-btn:focus-visible {
  outline: 3px solid rgba(0, 51, 153, .5);
  outline-offset: 2px;
}

/* --- Galleri: fs-tonet flate og ramme ----------------------------------
   iwc setter bakgrunnsgradienten med !important (l.689–692) — motregelen
   må derfor også være !important. Aspekt/posisjonering beholdes. ------- */
html body.single-product .woocommerce-product-gallery__wrapper {
  background:
    radial-gradient(circle at 50% 45%, rgba(0, 51, 153, .06), transparent 56%),
    linear-gradient(180deg, #fff, #f8fbfe) !important;  /* mot blå-tint !important l.689 */
  border-color: var(--fs-line);
  border-radius: var(--fs-radius);
  box-shadow: var(--fs-shadow);
}

/* --- Forespørselspanelet i summary (.isbat-product-quote-panel) --------
   bt26-hjelp-uttrykket: venstre aksentlinje, rolig is-gradient. -------- */
html body.single-product .isbat-product-quote-panel {
  border: 1px solid var(--fs-line);
  border-left: 3px solid var(--fs-blue);
  border-radius: var(--fs-radius);
  background: linear-gradient(165deg, #fff 0%, var(--fs-ice) 100%);
}
html body.single-product .isbat-product-quote-panel,
html body.single-product .isbat-product-quote-panel p {
  color: var(--fs-ink);
  font-size: .92rem;
  line-height: 1.55;
}

/* --- Relaterte produkter: bt26-kort-uttrykk ----------------------------
   Grid/kolonner beholdes fra iwc (l.2005–2020). ------------------------ */
html body.single-product .related.products ul.products li.product:hover,
html body.single-product .upsells.products ul.products li.product:hover {
  transform: translateY(-2px);              /* iwc: -4px (l.916, ikke !important) */
  border-color: rgba(0, 51, 153, .45);
  box-shadow: var(--fs-shadow);
}
html body.single-product .related.products li.product .woocommerce-loop-product__title,
html body.single-product .upsells.products li.product .woocommerce-loop-product__title {
  font-family: var(--fs-disp) !important;   /* mot font !important l.581-mønsteret */
  color: var(--fs-blue-deep) !important;    /* mot ink !important l.918 */
  -webkit-text-fill-color: var(--fs-blue-deep) !important;
  letter-spacing: -.01em;
}
html body.single-product .related.products li.product img,
html body.single-product .upsells.products li.product img {
  background: linear-gradient(180deg, #fff, var(--fs-ice)); /* iwc: #eef8ff (l.2030) */
}
/* kortknappen i relatert-gridet: den sene cyan-gradienten (l.2940–2950) */
html body.single-product.isbat-product-redesign .related.products li.product .button,
html body.single-product.isbat-product-redesign .upsells.products li.product .button,
html body.single-product.isbat-product-redesign.woocommerce .related.products ul.products li.product a.button.iwc-card__cta,
html body.single-product.isbat-product-redesign.woocommerce .related.products li.product a.button.product_type_simple.add_to_cart_button.iwc-card__cta {
  background: var(--fs-blue) !important;    /* mot cyan-gradient !important l.2946–2949/2968 */
  box-shadow: 0 8px 20px -12px rgba(0, 51, 153, .55);
}
html body.single-product.isbat-product-redesign .related.products li.product .button:hover,
html body.single-product.isbat-product-redesign .upsells.products li.product .button:hover {
  background: var(--fs-blue-deep) !important; /* hover forbi samme gradient */
}

/* --- Produkt-meta (SKU/kategorier) → bt26-meta-uttrykket --------------- */
html body.single-product .product_meta {
  font-family: var(--fs-mono) !important;   /* mot font !important l.581 */
  font-size: .74rem;
  letter-spacing: .04em;
}

/* --- Trust-/sjekklister og FAQ: farge og linjer via remapen ------------
   (iwc-ptrust/iwc-checklist/iwc-faq bruker tokens — ingen motregler). -- */

/* --- Klebrig mobil-CTA: pris-linjen i bt26-mono ------------------------ */
body.single-product .iwc-stickycta__price {
  font-family: var(--fs-mono);
  font-size: .72rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}

/* --- Ismaling: tydelig underkategoriarkiv og søkbart støtteinnhold -------- */
.bt26 .bt26-grid--kategorier {
  grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
}

.bt26 .bt26-verktoy--underkategorier .bt26-bytt {
  display: none !important;
}

.bt26 .bt26-gridtittel {
  margin: 0 0 8px;
  color: var(--fs-blue-deep);
  font-family: var(--fs-disp);
  font-size: clamp(1.5rem, 2.4vw, 2.25rem);
  line-height: 1.12;
}

.bt26 .bt26-kort--kategori .bt26-kort-bilde img {
  object-fit: contain;
  background: var(--fs-ice);
}

.bt26 .bt26-seo {
  padding-top: 0;
}

.bt26 .bt26-seo-copy {
  width: min(100%, 880px);
  padding-top: clamp(30px, 4vw, 48px);
  border-top: 1px solid var(--fs-line);
  color: var(--fs-mute);
}

.bt26 .bt26-seo-copy h2 {
  margin: 0 0 14px;
  color: var(--fs-blue-deep);
  font-family: var(--fs-disp);
  font-size: clamp(1.45rem, 2vw, 2rem);
  line-height: 1.16;
}

.bt26 .bt26-seo-copy h2:not(:first-child) {
  margin-top: 34px;
}

.bt26 .bt26-seo-copy p,
.bt26 .bt26-seo-copy li {
  color: var(--fs-mute);
  font-size: 1rem;
  line-height: 1.72;
}

.bt26 .bt26-seo-copy a {
  color: var(--fs-blue);
  font-weight: 700;
}

.bt26 .bt26-seo-copy ul {
  margin: 14px 0 0;
  padding-left: 1.25rem;
}

/* Balansér produktattributter slik at ett ord ikke blir stående alene. */
body.single-product .iwc-speclist__k {
  white-space: nowrap;
}

body.single-product .iwc-speclist__v {
  min-width: 0;
  flex: 1 1 auto;
  text-wrap: pretty;
}

/* --- Redusert bevegelse: iwc slår selv av alt på produktsidene
   (l.250–253, transition/animation: none !important) — dekkende. ------- */

/* =====================================================================
   2026-07-25 — tydelig, lett prisforespørsel
   ===================================================================== */

.bt26-kort-prisinfo {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 2px 0 0;
  color: var(--fs-blue);
  font-family: var(--fs-mono);
  font-size: .72rem;
  font-weight: 700;
  line-height: 1.35;
}

.bt26-kort-prisinfo::before {
  content: "";
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 999px;
  background: var(--fs-rink);
  box-shadow: 0 0 0 4px rgba(0, 51, 153, .08);
}

.bt26-btn-kurv {
  min-height: 44px;
  white-space: normal;
  text-align: center;
  line-height: 1.2;
}

.bt26-prisforklaring {
  max-width: 50ch;
  margin: -8px 0 6px;
  color: var(--fs-mute);
  font-size: .86rem;
  font-weight: 600;
  line-height: 1.5;
}

@media (max-width: 620px) {
  .bt26-kort-prisinfo {
    font-size: .75rem;
  }
}

/* ===================================================================
   KATEGORI-NAV SIDEBAR (kategorisider) — samme navigasjon som /butikk/
   Wrapper: .bt26-katlayout > .fs-wrap.bt26-katlayout-grid
   =================================================================== */
.bt26 .bt26-katlayout { width: 100%; }
.bt26 .bt26-katlayout-grid {
  display: grid;
  grid-template-columns: 262px minmax(0, 1fr);
  gap: clamp(22px, 3vw, 40px);
  align-items: start;
}
.bt26 .bt26-katlayout-main { min-width: 0; }
/* verktÃ¸y + grid-seksjonen inne i main skal ikke ha egen fs-wrap-padding (ligger allerede i grid) */
.bt26 .bt26-katlayout-main .fs-wrap { max-width: none; padding-left: 0; padding-right: 0; }

.bt26 .bt26-katsidebar {
  position: sticky; top: 88px;
  background: #fff;
  border: 1px solid var(--fs-line, #d7e3f0);
  border-radius: var(--fs-radius, 12px);
  box-shadow: var(--fs-shadow, 0 18px 44px -26px rgba(7,42,112,.35));
  overflow: hidden;
  font-size: .94rem;
}
.bt26 .bt26-katsidebar-head {
  padding: 16px 18px 12px;
  border-bottom: 1px solid var(--fs-line, #d7e3f0);
}
.bt26 .bt26-katsidebar-head span {
  display: block; font-size: .66rem; font-weight: 800; letter-spacing: .12em;
  text-transform: uppercase; color: var(--fs-blue, #003399); margin-bottom: 4px;
}
.bt26 .bt26-katsidebar-head strong { display: block; font-size: 1.04rem; color: var(--fs-ink, #16273d); }

.bt26 .bt26-katsidebar-all {
  display: block; margin: 10px 12px; padding: 10px 12px; border-radius: var(--fs-radius-sm, 8px);
  text-decoration: none; font-weight: 700; font-size: .9rem;
  color: var(--fs-ink, #16273d); background: var(--fs-ice, #f1f6fb);
  transition: background .15s ease, color .15s ease;
}
.bt26 .bt26-katsidebar-all:hover { background: var(--fs-ice-2, #e3edf8); }
.bt26 .bt26-katsidebar-all.er-aktiv { background: var(--fs-blue, #003399); color: #fff; }

.bt26 .bt26-katsidebar-tre { padding: 0 6px 6px; }
.bt26 .bt26-katsidebar-gruppe { padding: 6px 6px 10px; }
.bt26 .bt26-katsidebar-glabel {
  margin: 8px 6px 6px; font-size: .64rem; font-weight: 800; letter-spacing: .1em;
  text-transform: uppercase; color: #7d8da5;
}
.bt26 .bt26-katsidebar-tre ul { list-style: none; margin: 0; padding: 0; }
.bt26 .bt26-katsidebar-tre li > a {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  padding: 8px 10px; border-radius: var(--fs-radius-sm, 8px); text-decoration: none;
  color: #3f5169; font-size: .9rem;
  transition: background .15s ease, color .15s ease;
}
.bt26 .bt26-katsidebar-tre li > a:hover { background: var(--fs-ice, #f1f6fb); color: var(--fs-blue, #003399); }
.bt26 .bt26-katsidebar-tre li > a.er-aktiv { background: var(--fs-ice, #f1f6fb); color: var(--fs-blue, #003399); font-weight: 700; }
.bt26 .bt26-katsidebar-tre li > a small { color: #93a2b8; font-size: .78em; font-weight: 600; }
.bt26 .bt26-katsidebar-sub { margin: 2px 0 4px; padding-left: 12px; border-left: 2px solid var(--fs-line, #d7e3f0); }
.bt26 .bt26-katsidebar-sub li > a { font-size: .84rem; padding: 6px 10px; }

.bt26 .bt26-katsidebar-hjelp { padding: 16px 14px; border-top: 1px solid var(--fs-line, #d7e3f0); }
.bt26 .bt26-katsidebar-hjelp span { display: block; font-size: .88rem; color: #3f5169; margin-bottom: 10px; }
.bt26 .bt26-katsidebar-hjelp .fs-btn { width: 100%; }

/* Mobil: sidebar over innhold, ikke sticky */
@media (max-width: 940px) {
  .bt26 .bt26-katlayout-grid { grid-template-columns: 1fr; }
  .bt26 .bt26-katsidebar { position: static; margin-bottom: 18px; }
}

