/*
 * Theme « tech » (after v4.css): electronics. Always dark (v4.css swaps the tokens of main and the bar) on a
 * neutral anthracite; the brand as the electric accent (brand-on-ink, readable on the dark for any brand colour);
 * a blueprint grid, circuit traces, cards as spec sheets (corner brackets, a number), figures in the system's
 * monospace. Bricks: the split opening, lines repeated as a blueprint, a grid of 4, corner brackets in gradients.
 * Signature « la mise sous tension »: the traces light up, a scan line runs over the products (once).
 */
.theme-tech{--v4-night:#111317;--tc-volt:var(--brand-on-ink);--tc-dim:color-mix(in srgb,var(--brand-on-ink) 30%,transparent);--tc-grid:color-mix(in srgb,var(--brand-on-ink) 9%,transparent);--tc-mono:ui-monospace,"Cascadia Mono",Consolas,"Courier New",monospace;--v4-page:var(--v4-night);--v4-tw:700;--v4-tls:-.04em;--v4-tk:.8;--v4-cr:10px;--v4-cpad:8px 8px 12px;--v4-mr:6px;--v4-add-bg:var(--brand-on-ink);--v4-add-fg:#111317;--v4-add-r:8px;--v4-price:var(--brand-on-ink);--v4-fam:var(--on-ink-muted);--v4-cols:3;--v4-cols-xl:4;--v4-gap:12px;--v4h-ratio:1;--chip-glow:0 0 0 1px var(--brand-on-ink),0 0 18px -6px var(--brand-on-ink);--chip-sheen:color-mix(in srgb,var(--brand-on-ink) 18%,transparent)}
.theme-tech :is(main,.bar){--surface:#1b1e24;--brand-soft:#1b1e24}
.theme-tech{--tc-corner:linear-gradient(var(--tc-volt),var(--tc-volt)) 0 0 / 14px 2px no-repeat,linear-gradient(var(--tc-volt),var(--tc-volt)) 0 0 / 2px 14px no-repeat,linear-gradient(var(--tc-volt),var(--tc-volt)) 100% 100% / 14px 2px no-repeat,linear-gradient(var(--tc-volt),var(--tc-volt)) 100% 100% / 2px 14px no-repeat}
.theme-tech main .btn--add{--bg:var(--brand-on-ink);--fg:#111317}
.theme-tech .mono{background:none;color:var(--tc-volt);box-shadow:inset 0 0 0 1.5px var(--tc-volt)}
/* The opening: a blueprint, two traces, a scan line */
.theme-tech .v4h{--v4-hero-bg:var(--v4-night)}
.tc-grid{position:absolute;inset:0;background:linear-gradient(var(--tc-grid) 1px,transparent 1px) 0 0 / 32px 32px,linear-gradient(90deg,var(--tc-grid) 1px,transparent 1px) 0 0 / 32px 32px;mask-image:radial-gradient(80% 80% at 70% 40%,#000,transparent)}
.tc-trace{position:absolute;border:solid var(--tc-dim);border-width:2px 2px 0 0}
.tc-trace::after{content:"";position:absolute;right:-6px;bottom:-6px;width:10px;height:10px;border-radius:50%;background:var(--tc-volt)}
.tc-trace--1{top:22%;left:-2%;width:38%;height:30%}
.tc-trace--2{top:12%;right:4%;width:22%;height:64%;border-width:0 0 2px 2px}
.tc-trace--2::after{right:auto;left:-6px}
.tc-scan{position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--tc-volt),transparent);opacity:0}
.theme-tech .v4h__item{background:var(--tc-corner),var(--surface)}
.theme-tech .v4h__price{font-family:var(--tc-mono)}
.theme-tech .v4h__tagline em{font-family:var(--tc-mono);font-style:normal;color:var(--tc-volt)}
.theme-tech .v4h__eyebrow{font-family:var(--tc-mono);letter-spacing:.1em}
.theme-tech .chips--v4 .chips__chip{border-radius:8px;background:none;box-shadow:inset 0 0 0 1px var(--tc-dim);font-family:var(--tc-mono)}
.theme-tech .chips--v4 .chips__chip:is(:hover,.is-on){background:var(--tc-volt);color:#111317}
/* Signature: power on */
html.sig-first:not(.motion-low) .tc-trace{animation:tc-on .9s steps(6,end) both}
html.sig-first:not(.motion-low) .tc-trace--2{animation-delay:.25s}
html.sig-first:not(.motion-low) .tc-scan{animation:tc-scan 1.2s .4s var(--ease) both}
html.sig-first:not(.motion-low) .theme-tech{--v4-sig:v4-blur;--v4-sig-t:.6s}
@keyframes tc-on{from{clip-path:inset(0 100% 100% 0)}to{clip-path:inset(-10px)}}
@keyframes tc-scan{0%{opacity:1;transform:translateY(70px)}100%{opacity:0;transform:translateY(min(90svh,800px))}}
/* The page: spec sheets */
.theme-tech .grid{counter-reset:tc}
.theme-tech .card{counter-increment:tc;background:var(--tc-corner),var(--surface)}
.theme-tech .card__body::before{content:"#" counter(tc,decimal-leading-zero);display:block;margin-bottom:2px;color:var(--on-ink-muted);font:600 12px/1.4 var(--tc-mono);letter-spacing:.06em}
.theme-tech :is(.price__now,.price__was,.step__num){font-family:var(--tc-mono)}
.theme-tech .price__now{letter-spacing:-.02em}
.theme-tech .filter{border-radius:8px;background:none;box-shadow:inset 0 0 0 1px var(--tc-dim);font-family:var(--tc-mono)}
.theme-tech .filter.is-on,.theme-tech .filter[aria-pressed=true]{background:var(--tc-volt);color:#111317;box-shadow:none}
.theme-tech .filters{background:color-mix(in srgb,var(--v4-night) 90%,transparent)}
.theme-tech :is(.step,.faq__item,.delivery,.acc__item){border-radius:10px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--tc-grid)}
.theme-tech .marquee{background:var(--surface);color:var(--tc-volt);font-family:var(--tc-mono);border-block:1px solid var(--tc-dim)}
.theme-tech .foot{background:#0b0c0f;box-shadow:0 -1px 0 var(--tc-dim)}
.theme-tech .media.is-loaded,.theme-tech .media:has(.poster){background:#1b1e24}
.theme-tech .pdp .media,.theme-tech .gallery .media{border-radius:10px;box-shadow:inset 0 0 0 1px var(--tc-dim)}
.theme-tech .btn{border-radius:8px}
/* Nouveautés: on the bench, numbered */
.theme-tech .ft{background:linear-gradient(var(--tc-grid) 1px,transparent 1px) 0 0 / 32px 32px,linear-gradient(90deg,var(--tc-grid) 1px,transparent 1px) 0 0 / 32px 32px}
.theme-tech .ft__item{padding:8px;border-radius:10px;background:var(--tc-corner),var(--surface)}
.theme-tech .ft__media{border-radius:6px}
.theme-tech :is(.ft__badge,.ft__tag,.ft-pill__tag,.ft__count){font-family:var(--tc-mono);border-radius:6px}
/* Diapos: the switch (the next picture cuts in like a screen changing source) */
.theme-tech .sl--tech.is-on .sl__slide{transform:translateX(-3%);filter:contrast(1.6) brightness(1.3);transition-duration:.35s;transition-timing-function:steps(5,end)}
.theme-tech .sl--tech.is-on .sl__slide.is-active{transform:none;filter:none}
.theme-tech .sl--tech .sl__track{border-radius:12px;box-shadow:0 0 0 1px var(--tc-dim)}
.theme-tech .sl--tech .sl__link{border-radius:12px}
.theme-tech .sl--tech .sl__cap{border-radius:8px;background:var(--tc-corner),var(--surface)}
.theme-tech .sl--tech .sl__go{border-radius:8px;background:var(--tc-volt);color:#111317}
.theme-tech .sl--tech .sl__count{font-family:var(--tc-mono)}
/* Avis: numbered spec sheets, square-bracket corners */
.theme-tech .pv--tech .pv__list{counter-reset:tcp}
.theme-tech .pv--tech .pv__card{counter-increment:tcp;border-radius:10px;background:var(--tc-corner),var(--surface);box-shadow:none;padding-top:34px}
.theme-tech .pv--tech .pv__card::before{content:"REV-" counter(tcp,decimal-leading-zero);position:absolute;top:12px;left:16px;color:var(--on-ink-muted);font:600 12px/1 var(--tc-mono);letter-spacing:.08em}
.theme-tech .pv--tech .pv__stars{color:var(--tc-volt)}
.theme-tech .pv--tech .pv__founder{border-radius:10px;background:var(--tc-corner),var(--surface)}
.theme-tech .pv--tech .pv__play{background:var(--tc-volt);color:#111317}
/* Puces */
.theme-tech :is(.offer,.benefit__go){border-radius:8px}
