/*
 * CANAMEK 1.4 core design system + global chrome (handle canamek-core).
 * Loaded on every front-end page after style.css. Ported from the round-3 boards
 * (docs/redesign/shared.css + round3.css + the Kit fixes). Owner: core-chrome,
 * except the two blocks marked "owner: platform".
 * House rule: never write a less-than character inside a CSS comment.
 */

/* == 1. Tokens (core-chrome) == */
/* The Customizer prints --red, --red-deep, --red-accent and --red-rgb in wp_head AFTER this file, so its values win. */
:root{
  --red:#ED1C24; --red-accent:#FF3848; --red-deep:#C5151B; --red-hover:#AE1218; --red-rgb:237,28,36;
  --ink:#282828; --ink-soft:#4a4a4a; --ink-muted:#6e6e6e;
  --line:#e7e5e2; --line-soft:#f0eeea; --bg:#FBFBFA; --bg-warm:#f5f3ef; --bg-band:#FAF9F7; --white:#fff; --ok:#1b7f4c;
  --peach:#FFBD59; --yellow:#FFCB59;
  --hair:rgba(40,40,40,.08); --hair-2:rgba(40,40,40,.14); --hair-3:rgba(40,40,40,.22); --hair-4:rgba(40,40,40,.55); --field-line:#8a8a8a;
  /* lighter survey ground (round 3, R1) */
  --grid-minor:rgba(40,40,40,.018); --grid-major:rgba(40,40,40,.038);
  --contour:rgba(40,40,40,.05); --contour-index:rgba(40,40,40,.09);
  --dot-off:#cfccc6; --dot-on:var(--red);
  --laser-glow:0 0 10px rgba(var(--red-rgb),.45);
  --r-s:4px; --r-m:8px; --r-l:14px; --r-dock:18px; --r-pill:999px;
  --r-sm:4px; --r-md:8px; --r-lg:14px;
  --e0:0 0 0 1px rgba(40,40,40,.06);
  --e1:0 1px 2px rgba(40,40,40,.06);
  --e2:0 12px 28px -14px rgba(40,40,40,.24);
  --e2h:0 22px 40px -18px rgba(40,40,40,.38);
  --e3:0 24px 56px -22px rgba(40,40,40,.34);
  --e-photo:0 10px 26px -10px rgba(0,0,0,.5);
  --e-red:0 10px 22px -12px rgba(197,21,27,.6);
  --f-d:'Space Grotesk',system-ui,sans-serif; --f-b:'Manrope',system-ui,sans-serif; --f-m:'JetBrains Mono',ui-monospace,monospace;
  --t-display:var(--f-d); --t-body:var(--f-b); --t-mono:var(--f-m);
  --wrap:1440px; --gut:48px; --hdr-h:68px; --header-h:82px; --hdr-zone:82px; --sticky-top:96px;
  --sec-t:80px; --sec-b:96px; --gap:24px;
  --t-press:120ms; --t-hover:180ms; --t-sweep:240ms; --t-enter:220ms; --t-exit:150ms; --t-slide:600ms;
  --ease:cubic-bezier(.2,.7,.2,1); --ease-in:cubic-bezier(.4,0,1,1);
  --ck-fab-gap:24px; --ck-fab-fallback:0px;
}
@media (max-width:900px){
  :root{--gut:20px;--sec-t:48px;--sec-b:56px;--gap:16px;
    --ck-bottom-nav-h:calc(80px + env(safe-area-inset-bottom));
    --ck-fab-gap:8px;--ck-fab-fallback:var(--ck-bottom-nav-h)}
}
@media (max-width:640px){
  :root{--hdr-zone:70px}
}

/* == 2. Base + resets (core-chrome) == */
/* style.css keeps overflow-x:hidden and the safe-area side padding on body */
body.canamek{background:var(--bg);color:var(--ink);font:500 16px/1.6 var(--f-b);letter-spacing:normal;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
/* zero-specificity resets, scoped: redesigned pages (body.ck-rd) and the global chrome (.ck-chrome).
   Untouched pages (cart, checkout, account, blog, page content) keep the style.css spacing. */
:where(.ck-rd,.ck-chrome) img{max-width:100%;display:block}
:where(.ck-rd,.ck-chrome) :where(h1,h2,h3,h4,p,ul,ol,dl,dd,figure,fieldset){margin:0}
:where(.ck-rd,.ck-chrome) :where(ul,ol){padding:0}
:where(.ck-rd,.ck-chrome) fieldset{border:0;padding:0;min-width:0}
:where(.ck-rd,.ck-chrome) :where(button,input,select,textarea){font:inherit;color:inherit}
:where(.ck-rd,.ck-chrome) a{color:var(--red-deep);text-decoration:none}
:where(.ck-rd,.ck-chrome) a:where(:hover){color:var(--ink)}
/* the hidden attribute always wins over a component display value (.ck-mega{display:grid} etc.) */
.ck-chrome [hidden],.ck-chrome[hidden],.ck-rd [hidden]{display:none}
/* one focus ring: red-deep 2px (style.css sets the 2px solid ring; its white rings on dark bands still win) */
:focus-visible{outline-color:var(--red-deep);outline-offset:3px}
.ck-on-red :focus-visible,.ck-on-red:focus-visible{outline-color:#fff}
/* the red-deep ring vanishes on red (1.37:1) and is weak on ink (2.46:1): white on the red and dark surfaces of the
   untouched account, contact and cart templates (white: 4.0:1 on #ED1C24, 14.7:1 on #282828) */
.ck-active-order :focus-visible,.ck-warranty-band :focus-visible,.ck-earnings-card :focus-visible,.ck-account-hero :focus-visible,
.ck-contact-grid aside :focus-visible,.ck-bundle-saver :focus-visible,.ck-trust-block :focus-visible,.ck-features-panel :focus-visible{outline-color:#fff}
.ck-vh{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ck-skip{position:absolute;left:16px;top:-200px;z-index:1000;display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:var(--r-s);
  background:#fff;color:var(--ink);font:700 15px/1 var(--f-b);text-decoration:none;box-shadow:0 0 0 2px var(--red-deep),var(--e3)}
.ck-skip:focus{top:12px;color:var(--ink)}
.ck-skip+.ck-skip{left:200px}
/* sticky header, bottom bars and the floating Live Expert button never hide the focused element: the bottom padding is
   the bars' measured top (--ck-fab-base, theme.js placeFabs) + the button's gap + 56 px button + 16 px air, at every width */
html{scroll-padding-top:96px;scroll-padding-bottom:calc(max(var(--ck-fab-base,0px),var(--ck-fab-fallback)) + var(--ck-fab-gap) + 72px)}
@media (max-width:640px){ html{scroll-padding-top:84px} }

/* == 3. Layout (core-chrome) == */
/* .ck-wrap itself stays in style.css (max-width + side gutters only); positioned on redesigned pages and in the footer */
:where(.ck-rd,.ck-footer) .ck-wrap{position:relative}
.ck-sec{position:relative;isolation:isolate;padding:var(--sec-t) 0 var(--sec-b)}
.ck-sec--warm,.ck-band{background:var(--bg-band)}
.ck-sec--white{background:#fff}
.ck-sec--tight{padding:48px 0 56px}
.ck-sec--line{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ck-grid{display:grid;gap:var(--gap);grid-template-columns:repeat(12,minmax(0,1fr))}
.ck-cols{display:grid;gap:var(--gap)}
.ck-cols--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.ck-cols--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ck-cols--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.ck-stack{display:flex;flex-direction:column;gap:16px}
.ck-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}

/* == 4. Glass + fallbacks + scrim (core-chrome) == */
.gl-1{background:rgba(255,255,255,.64);-webkit-backdrop-filter:blur(14px) saturate(1.4);backdrop-filter:blur(14px) saturate(1.4);
  border:1px solid rgba(255,255,255,.92);box-shadow:0 0 0 1px var(--hair),inset 0 1px 0 #fff,var(--e2)}
.gl-2{background:rgba(251,251,250,.84);-webkit-backdrop-filter:blur(22px) saturate(1.6);backdrop-filter:blur(22px) saturate(1.6);
  border:1px solid rgba(255,255,255,.95);box-shadow:0 0 0 1px rgba(40,40,40,.09),inset 0 1px 0 #fff,var(--e3)}
.gl-photo{background:rgba(251,251,250,.78);-webkit-backdrop-filter:blur(16px) saturate(1.5);backdrop-filter:blur(16px) saturate(1.5);
  border:1px solid rgba(255,255,255,.75);box-shadow:0 0 0 1px rgba(40,40,40,.18),inset 0 1px 0 rgba(255,255,255,.9),var(--e-photo)}
.gl-chip{background:rgba(255,255,255,.86);-webkit-backdrop-filter:blur(10px) saturate(1.5);backdrop-filter:blur(10px) saturate(1.5);
  border:1px solid rgba(255,255,255,.9);box-shadow:0 0 0 1px var(--hair-2),0 2px 6px -2px rgba(40,40,40,.2)}
.gl-solid{background:#fff;border:1px solid #fff;box-shadow:0 0 0 1px var(--hair),var(--e2)}   /* reading panel, no blur */
.gl-flat{box-shadow:0 0 0 1px var(--hair),inset 0 1px 0 #fff}                                /* modifier: glass without lift */
@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){
  .gl-1{background:rgba(255,255,255,.94)} .gl-2,.gl-photo,.gl-chip{background:rgba(251,251,250,.97)}
}
@media (prefers-reduced-transparency:reduce){
  .gl-1,.gl-2,.gl-photo,.gl-chip,.btn--glass,.chip{background:rgba(251,251,250,.97);-webkit-backdrop-filter:none;backdrop-filter:none}
  .ck-spill{display:none}
}
.ck-scrim{position:fixed;inset:0;z-index:900;background:rgba(40,40,40,.18);-webkit-backdrop-filter:blur(4px) saturate(.9);backdrop-filter:blur(4px) saturate(.9)}

/* == 5. Survey ground (core-chrome) == */
.ck-ground{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
/* the first section of a redesigned page reaches up behind the header (82px, 70px on phones) */
.ck-ground--hdr{top:calc(-1 * var(--hdr-zone))}
/* untouched pages: grid only, printed between the promo bar and the header (static top = under the promo bar) */
.ck-topground{position:absolute;top:auto;bottom:auto;left:0;right:0;height:calc(var(--hdr-zone) + 48px);z-index:-1;pointer-events:none}
.tx-grid{position:absolute;inset:0;
  background-image:linear-gradient(var(--grid-major) 1px,transparent 1px),linear-gradient(90deg,var(--grid-major) 1px,transparent 1px),
                   linear-gradient(var(--grid-minor) 1px,transparent 1px),linear-gradient(90deg,var(--grid-minor) 1px,transparent 1px);
  background-size:120px 120px,120px 120px,24px 24px,24px 24px;background-position:center top}
.tx-grid--on-red{background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:120px 120px}
.tx-topo{position:absolute;inset:0;width:100%;height:100%;fill:none}
.tx-topo__n{stroke:var(--contour);stroke-width:1}
.tx-topo__i{stroke:var(--contour-index);stroke-width:1.25}
.tx-fade-b{-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}
.tx-fade-t{-webkit-mask-image:linear-gradient(transparent,#000 40%);mask-image:linear-gradient(transparent,#000 40%)}
.tx-fade-tb{-webkit-mask-image:linear-gradient(transparent,#000 18%,#000 72%,transparent);mask-image:linear-gradient(transparent,#000 18%,#000 72%,transparent)}
.tx-hatch{background:repeating-linear-gradient(135deg,rgba(40,40,40,.08) 0 1px,transparent 1px 8px),#fff}
.ck-laser{display:block;height:2px;border-radius:2px;background:var(--red);box-shadow:var(--laser-glow)}
/* registration marks on one element (8 gradient strokes): --mk colour (.20 since round 3), --mo inset, --ms length */
.ck-marks{--mk:rgba(40,40,40,.20);--mo:8px;--ms:10px;
  background-color:#fff;background-repeat:no-repeat;
  background-image:linear-gradient(var(--mk),var(--mk)),linear-gradient(var(--mk),var(--mk)),linear-gradient(var(--mk),var(--mk)),linear-gradient(var(--mk),var(--mk)),
                   linear-gradient(var(--mk),var(--mk)),linear-gradient(var(--mk),var(--mk)),linear-gradient(var(--mk),var(--mk)),linear-gradient(var(--mk),var(--mk));
  background-size:var(--ms) 1px,1px var(--ms),var(--ms) 1px,1px var(--ms),var(--ms) 1px,1px var(--ms),var(--ms) 1px,1px var(--ms);
  background-position:left var(--mo) top var(--mo),left var(--mo) top var(--mo),right var(--mo) top var(--mo),right var(--mo) top var(--mo),
                      left var(--mo) bottom var(--mo),left var(--mo) bottom var(--mo),right var(--mo) bottom var(--mo),right var(--mo) bottom var(--mo)}
.ck-marks--out{position:absolute;inset:-9px;--mo:0px;--ms:14px;--mk:rgba(40,40,40,.55);background-color:transparent;pointer-events:none}
.ck-ph{position:relative;display:flex;align-items:center;justify-content:center;min-height:160px;border-radius:var(--r-s);
  background:repeating-linear-gradient(135deg,rgba(40,40,40,.08) 0 1px,transparent 1px 8px),#fff;box-shadow:0 0 0 1px var(--hair)}
.ck-ph span{padding:6px 10px;border-radius:var(--r-s);background:#fff;box-shadow:0 0 0 1px var(--hair-2);font:500 12px/1.4 var(--f-m);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);text-align:center}

/* == 6. Spill (core-chrome) == */
/* packshot spill under glass panels (images already on the page). Off on phones, reduced transparency and Save-Data. */
.ck-spillwrap{position:relative;isolation:isolate}
.ck-spill{position:absolute;inset:0;z-index:-1;overflow:hidden;border-radius:var(--r-l);pointer-events:none}
.ck-spill__in{position:absolute;inset:-12%;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);filter:blur(40px) saturate(1.6);opacity:.36}
.ck-spill__in img{width:100%;height:100%;object-fit:cover;transform:scale(1.9)}
@media (max-width:640px){ .ck-spill{display:none} }
@media (prefers-reduced-data:reduce){ .ck-spill{display:none} }

/* == 7. Type (core-chrome) == */
.t-display{font:600 56px/1.02 var(--f-d);letter-spacing:-.025em;text-wrap:balance}
.t-h1{font:600 44px/1.06 var(--f-d);letter-spacing:-.02em;text-wrap:balance}
.t-h2{font:600 48px/1.04 var(--f-d);letter-spacing:-.025em;text-wrap:balance}
.t-h3{font:600 24px/1.2 var(--f-d);letter-spacing:-.01em;text-wrap:balance}
.t-h4{font:600 20px/1.25 var(--f-d);letter-spacing:-.01em}
.t-lede{font:500 18px/1.6 var(--f-b);color:var(--ink-soft)}
.t-body{font:500 16px/1.6 var(--f-b)}
.t-small{font:500 14px/1.45 var(--f-b)}
.t-cap{font:500 13px/1.4 var(--f-b)}
.t-mono{font:500 12px/1.3 var(--f-m);letter-spacing:.14em;text-transform:uppercase}
.t-num{font-variant-numeric:tabular-nums}
.t-ink{color:var(--ink)} .t-soft{color:var(--ink-soft)} .t-muted{color:var(--ink-muted)} .t-red{color:var(--red-deep)}
.ck-eyebrow{display:flex;align-items:center;gap:12px;font:500 12px/1.4 var(--f-m);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
.ck-eyebrow b{font-weight:600;color:var(--red-deep)}
.ck-sku{font:500 12px/1.2 var(--f-m);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}
/* rich text: the redesigned pages only (style.css .ck-rte stays in charge on canvas pages and old templates) */
.ck-rd .ck-rte{max-width:72ch;font:500 16px/1.7 var(--f-b);color:var(--ink-soft)}
.ck-rd .ck-rte>*+*{margin-top:16px}
.ck-rd .ck-rte h2{margin-top:48px;font:600 28px/1.2 var(--f-d);letter-spacing:-.015em;color:var(--ink)}
.ck-rd .ck-rte h3{margin-top:32px;font:600 20px/1.3 var(--f-d);color:var(--ink)}
.ck-rd .ck-rte strong{color:var(--ink)}
.ck-rd .ck-rte ul{list-style:none;padding:0}
.ck-rd .ck-rte li{position:relative;padding-left:20px}
.ck-rd .ck-rte li+li{margin-top:8px}
.ck-rd .ck-rte li::before{content:"";position:absolute;left:2px;top:.68em;width:6px;height:6px;background:var(--red-deep)}
.ck-rd .ck-rte a{font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* == 8. Icons (core-chrome) == */
.ic{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.ic--16{width:16px;height:16px;stroke-width:2} .ic--24{width:24px;height:24px} .ic--28{width:28px;height:28px;stroke-width:1.6}
.ic--fill{fill:currentColor;stroke:none}
.ck-iwell{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border-radius:var(--r-s);
  color:var(--red-deep);box-shadow:0 0 0 1px var(--hair);--mo:3px;--ms:6px}
.ck-iwell--24{width:24px;height:24px}
.ck-iwell--40{width:40px;height:40px} .ck-iwell--56{width:56px;height:56px;--mo:5px;--ms:8px}

/* == 9. Buttons (core-chrome) == */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 18px;
  border:1px solid transparent;border-radius:var(--r-s);cursor:pointer;white-space:nowrap;text-decoration:none;
  font:700 15px/1 var(--f-b);letter-spacing:.005em;
  transition:background-color var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease),transform var(--t-press) ease-out}
.btn:active{transform:translateY(1px)}
.btn--sm{min-height:44px;padding:0 14px;font-size:14px}
.btn--lg{min-height:48px;padding:0 22px}
.btn--xl{min-height:56px;padding:0 26px;font-size:16px}
.btn--block{display:flex;width:100%}
.btn--split{justify-content:space-between}
.btn--red{background:var(--red-deep);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),var(--e-red)}
.btn.btn--red:hover{background:var(--red-hover);color:#fff;box-shadow:inset 0 -2px 0 var(--red-accent),0 0 0 4px rgba(var(--red-rgb),.14)}
.btn--glass{background:rgba(255,255,255,.66);color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  border-color:rgba(255,255,255,.9);box-shadow:0 0 0 1px var(--hair-2),inset 0 1px 0 #fff}
.btn.btn--glass:hover{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--hair-3),inset 0 -2px 0 var(--red)}
.btn--glass .ic{color:var(--red-deep)}
.btn--line{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.btn.btn--line:hover{background:#fff;color:var(--ink)}
.btn--white{background:#fff;color:var(--red-deep);box-shadow:0 10px 22px -12px rgba(0,0,0,.4)}   /* on the red band: 6.00 */
.btn.btn--white:hover{background:#fff;color:var(--ink)}
.btn--link{min-height:44px;padding:0;background:none;color:var(--red-deep);font-weight:700}
.btn--link .ic{transition:transform var(--t-hover) var(--ease)}
.btn.btn--link:hover{color:var(--ink)} .btn--link:hover .ic{transform:translateX(3px)}
.btn[disabled],.btn[aria-disabled="true"]{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}
.btn--glass[disabled],.btn--glass[aria-disabled="true"]{box-shadow:0 0 0 1px var(--hair-2)}   /* disabled glass keeps its ring */
.btn--line[disabled],.btn--line[aria-disabled="true"]{box-shadow:inset 0 0 0 1px var(--ink)}  /* disabled line keeps its ring */
.btn.is-loading{color:transparent!important;pointer-events:none}
.btn.is-loading::after{content:"";position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;
  border:2px solid currentColor;border-color:rgba(255,255,255,.95) rgba(255,255,255,.95) rgba(255,255,255,.3) rgba(255,255,255,.3);animation:ck-spin .8s linear infinite}
.btn--glass.is-loading::after,.btn--line.is-loading::after{border-color:var(--ink) var(--ink) var(--hair-3) var(--hair-3)}
.btn--white.is-loading::after{border-color:var(--red-deep) var(--red-deep) rgba(197,21,27,.25) rgba(197,21,27,.25)}
@keyframes ck-spin{to{transform:rotate(360deg)}}
.ib{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;padding:0;
  border:0;border-radius:var(--r-m);background:transparent;color:var(--ink);cursor:pointer;text-decoration:none}
.ib:hover{background:rgba(40,40,40,.06);color:var(--ink)}
.ib--round{border-radius:var(--r-pill)}
.ib--glass{background:rgba(255,255,255,.66);box-shadow:0 0 0 1px var(--hair-2),inset 0 1px 0 #fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.ib--glass:hover{background:#fff}
/* photo-glass icon buttons keep their glass (.ib background came after .gl-photo) */
.ib.gl-photo{background:rgba(251,251,250,.78);box-shadow:0 0 0 1px rgba(40,40,40,.18),inset 0 1px 0 rgba(255,255,255,.9),var(--e-photo)}
.ib.gl-photo:hover{background:#fff}
.gl-photo :focus-visible{outline-offset:-3px}
/* legacy button classes on the untouched templates (cart, checkout, account, about, contact, blog, 404):
   same sizes as the new kit; primary moves to red-deep (white on #ED1C24 was 4.38:1, red-deep is 6.00:1) */
.btn-primary{background:var(--red-deep);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.18),var(--e-red)}
.btn.btn-primary:hover,.btn-primary:hover{background:var(--red-hover);color:#fff;box-shadow:inset 0 -2px 0 var(--red-accent),0 0 0 4px rgba(var(--red-rgb),.14)}
.btn-ghost{background:transparent;color:var(--ink);border-color:transparent;box-shadow:inset 0 0 0 1px var(--ink)}
.btn.btn-ghost:hover,.btn-ghost:hover{background:#fff;color:var(--ink)}
.btn-sm{min-height:44px;padding:0 14px;font-size:14px}
.btn-lg{min-height:48px;padding:0 22px}
.btn-block{display:flex;width:100%;justify-content:center}

/* == 10. Chips, badges, counts, stock (core-chrome) == */
.chip-row{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:var(--r-m);cursor:pointer;
  font:600 14px/1 var(--f-b);color:var(--ink);text-decoration:none;white-space:nowrap;
  background:rgba(255,255,255,.62);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.9);box-shadow:0 0 0 1px var(--hair-2),inset 0 1px 0 #fff}
.chip:hover{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--hair-3),inset 0 1px 0 #fff}
.chip .n{font:500 12px/1 var(--f-m);letter-spacing:.04em;color:var(--ink-soft)}
.chip[aria-pressed="true"],.chip[aria-current],.chip.is-on{background:#fff;box-shadow:0 0 0 1px var(--hair-4),inset 0 1px 0 #fff}
.chip[aria-current]:hover,.chip[aria-pressed="true"]:hover{box-shadow:0 0 0 1px var(--hair-4),inset 0 1px 0 #fff}
.chip[aria-pressed="true"]::after,.chip[aria-current]::after,.chip.is-on::after{content:"";position:absolute;left:14px;right:14px;bottom:6px;height:2px;border-radius:2px;background:var(--red);box-shadow:var(--laser-glow)}
.chip--rm{padding-right:0}
.chip__x{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:-1px -1px -1px -4px;border:0;background:none;color:var(--ink-soft);cursor:pointer;border-radius:0 var(--r-m) var(--r-m) 0}
.chip__x:hover{color:var(--red-deep)}
/* chip-row variants: --ic icon chips, --mark square marker chips, --flat no blur inside a glass bar, --go 5-up link grid */
.chip-row--ic .chip .ic{color:var(--ink-soft)}
.chip-row--ic .chip[aria-current] .ic{color:var(--red-deep)}
.chip-row--mark .chip::before{content:"";width:8px;height:8px;flex:none;box-shadow:inset 0 0 0 1.5px var(--ink-soft)}
.chip-row--mark .chip[aria-current]::before{background:var(--red-deep);box-shadow:none}
.chip-row--flat .chip{background:rgba(255,255,255,.8);-webkit-backdrop-filter:none;backdrop-filter:none}
.chip-row--flat .chip[aria-current]{background:#fff}
.chip-row--go{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.chip-row--go .chip{justify-content:space-between}
.chip-row--go .chip .ic{color:var(--ink-soft)}
.badge{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 8px;border-radius:var(--r-s);white-space:nowrap}
.badge--sale{background:var(--red-deep);color:#fff;font:800 12px/1 var(--f-b);letter-spacing:.02em}                 /* 6.00 */
.badge--new{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--hair-3);font:600 11px/1 var(--f-m);letter-spacing:.12em}
.badge--count{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--hair-3);font:600 11px/1 var(--f-m);letter-spacing:.12em;text-transform:uppercase}
.badge--oos{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--hair-3);font:600 11px/1 var(--f-m);letter-spacing:.12em;text-transform:uppercase}
.tag-new{display:inline-flex;align-items:center;height:18px;padding:0 5px;border-radius:var(--r-s);background:var(--red-deep);color:#fff;font:700 11px/1 var(--f-m);letter-spacing:.06em}
.ck-count{position:absolute;top:4px;right:2px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--red-deep);color:#fff;font:700 11px/1 var(--f-m);box-shadow:0 0 0 2px #fff}
.ck-count[hidden]{display:none}
/* scoped: WooCommerce prints p.stock on its own templates */
:where(.ck-rd,.ck-chrome) .stock{display:inline-flex;align-items:center;gap:8px;font:600 13px/1 var(--f-b);color:var(--ink)}
:where(.ck-rd,.ck-chrome) .stock::before{content:"";width:8px;height:8px;background:var(--ok)}
:where(.ck-rd,.ck-chrome) .stock--out::before{background:transparent;box-shadow:inset 0 0 0 1.5px var(--ink)}

/* == 11. Rating, price (core-chrome) == */
.ck-rating{display:inline-flex;align-items:center;gap:8px;font:500 13px/1 var(--f-b);color:var(--ink-soft)}
.ck-stars{display:inline-flex;gap:2px;color:var(--red-deep)}
.ck-stars .ic{width:14px;height:14px}
.ck-stars .is-empty{fill:none;stroke:var(--ink-soft);stroke-width:1.5}
.ck-price{display:flex;flex-direction:column;gap:4px;margin:0}
.ck-price__lbl{font:500 11px/1 var(--f-m);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
.ck-price__row{display:flex;align-items:baseline;flex-wrap:wrap;gap:2px 10px;line-height:1}
.ck-price__amt{font:700 28px/1 var(--f-d);letter-spacing:-.015em;font-variant-numeric:tabular-nums;color:var(--ink)}
.ck-price del{font:600 16px/1 var(--f-d);color:var(--ink-soft);font-variant-numeric:tabular-nums}
.ck-price ins{text-decoration:none;color:var(--red-deep)}
.ck-price ins .ck-price__amt{color:var(--red-deep)}
.ck-price__cfg{font:700 14px/1.3 var(--f-b);color:var(--ink)}
.ck-price__gate{display:inline-flex;align-items:center;gap:8px;min-height:44px;font:700 16px/1.2 var(--f-b);color:var(--red-deep)}
.ck-price__oos{display:inline-flex;align-items:center;gap:8px;font:700 16px/1.2 var(--f-b);color:var(--ink)}
.ck-price__oos::before{content:"";width:8px;height:8px;box-shadow:inset 0 0 0 1.5px var(--ink)}
.ck-price--box .ck-price__amt{font-size:44px;letter-spacing:-.02em}
.ck-price--box del{font-size:20px}
.ck-price--bar .ck-price__amt{font-size:24px}
.ck-price--bar del{font-size:14px}
/* gated / out-of-stock price blocks in a card are as tall as label + amount, so the hairlines line up */
.ck-pc__price .ck-price__oos,.ck-pc__price .ck-price__gate{min-height:44px}

/* == 12. Inputs (core-chrome) == */
/* .select is scoped (WooCommerce prints select.select on checkout and account); .ck-qty is the renamed board
   stepper (WooCommerce input.qty on the cart keeps its own look; the product page shows no quantity box) */
.field{display:flex;flex-direction:column;gap:8px}
.field__label{font:600 14px/1.3 var(--f-b);color:var(--ink)}
.field__label .req{color:var(--red-deep)}
.field__hint{font:500 13px/1.4 var(--f-b);color:var(--ink-soft)}
.field__err{display:none;align-items:center;gap:8px;font:600 14px/1.35 var(--f-b);color:var(--red-deep)}
.input,:where(.ck-rd,.ck-chrome) .select,.textarea{display:block;width:100%;min-height:48px;padding:0 14px;border:0;border-radius:var(--r-s);background:#fff;
  box-shadow:0 0 0 1px var(--field-line),inset 0 1px 2px rgba(40,40,40,.06);font:500 16px/1.4 var(--f-b);color:var(--ink);
  -webkit-appearance:none;appearance:none;transition:box-shadow var(--t-hover)}
.textarea{min-height:120px;padding:12px 14px;resize:vertical}
.input::placeholder,.textarea::placeholder{color:var(--ink-muted)}       /* 5.10 on #fff */
.input:hover,:where(.ck-rd,.ck-chrome) .select:hover,.textarea:hover{box-shadow:0 0 0 1px var(--ink-muted),inset 0 1px 2px rgba(40,40,40,.06)}
.input:focus-visible,:where(.ck-rd,.ck-chrome) .select:focus-visible,.textarea:focus-visible{outline:2px solid var(--red-deep);outline-offset:2px;box-shadow:0 0 0 1px var(--ink)}
:where(.ck-rd,.ck-chrome) .select{padding-right:40px;cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);
  background-position:right 19px center,right 14px center;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.input--xl{min-height:56px;font-size:18px}
.ck-inprefix{display:flex;align-items:stretch;border-radius:var(--r-s);background:#fff;box-shadow:0 0 0 1px var(--field-line),inset 0 1px 2px rgba(40,40,40,.06)}
.ck-inprefix>span{display:flex;align-items:center;padding:0 12px;border-right:1px solid var(--line);font:600 15px/1 var(--f-m);color:var(--ink-soft)}
.ck-inprefix .input{box-shadow:none;border-radius:0 var(--r-s) var(--r-s) 0}
.field.is-error .input,.field.is-error .select,.field.is-error .textarea{box-shadow:0 0 0 2px var(--red-deep)}
.field.is-error .field__err{display:flex}
.check{display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer;font:500 15px/1.35 var(--f-b);color:var(--ink)}
.check input{width:20px;height:20px;margin:0;flex:none;accent-color:var(--red-deep);cursor:pointer}
.check .n{margin-left:auto;font:500 12px/1 var(--f-m);color:var(--ink-soft)}
.ck-qty{display:inline-flex;align-items:center;height:48px;border-radius:var(--r-s);background:#fff;box-shadow:0 0 0 1px var(--field-line);flex:none}
.ck-qty button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:100%;border:0;background:transparent;color:var(--ink);cursor:pointer;border-radius:var(--r-s)}
.ck-qty button:hover{background:rgba(40,40,40,.06)}
.ck-qty button[disabled]{color:var(--hair-3);cursor:not-allowed;background:none}
.ck-qty input{width:44px;height:100%;border:0;background:transparent;text-align:center;font:600 16px/1 var(--f-m);color:var(--ink);-moz-appearance:textfield}
.ck-qty--xl{height:56px}
/* input with a leading icon (drawer search) */
.ck-field-ic{position:relative}
.ck-field-ic>.ic{position:absolute;left:14px;top:14px;color:var(--ink-soft);pointer-events:none}
.ck-field-ic .input{padding-left:44px}

/* == 13. Section head + datum (core-chrome) == */
.ck-shead{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px 32px}
.ck-shead .t-h2{margin-top:14px}
.ck-shead--center{grid-template-columns:1fr;justify-items:center;text-align:center}
.ck-shead--center .ck-eyebrow{justify-content:center}
.ck-datum{position:relative;height:10px;margin-top:28px;border-bottom:1px solid var(--hair-3);
  background:repeating-linear-gradient(90deg,rgba(40,40,40,.30) 0 1px,transparent 1px 24px) left bottom/100% 5px no-repeat,
             repeating-linear-gradient(90deg,rgba(40,40,40,.45) 0 1px,transparent 1px 120px) left bottom/100% 10px no-repeat}
.ck-datum::before{content:"";position:absolute;left:0;bottom:-1px;width:96px;height:2px;border-radius:2px;background:var(--red);box-shadow:var(--laser-glow)}

/* == 13b. Content primitives (core-chrome) == */
.ck-tile{display:flex;flex-direction:column;gap:12px;padding:24px;border-radius:var(--r-l)}
.ck-tile h3{font:600 20px/1.25 var(--f-d);letter-spacing:-.01em;color:var(--ink)}
.ck-tile p{font:500 15px/1.55 var(--f-b);color:var(--ink-soft)}
.ck-frame{position:relative;border-radius:var(--r-l);overflow:visible}
.ck-frame>img,.ck-frame>.ck-ph{width:100%;height:100%;border-radius:var(--r-l);object-fit:cover;box-shadow:0 0 0 1px var(--hair-2),var(--e3)}
.ck-ticks{list-style:none;display:flex;flex-direction:column;gap:12px;padding:0}
.ck-ticks li{position:relative;padding-left:22px;font:500 16px/1.55 var(--f-b);color:var(--ink-soft)}
.ck-ticks li::before{content:"";position:absolute;left:2px;top:.62em;width:8px;height:8px;background:var(--red-deep)}
.ck-ticks b{color:var(--ink)}
.ck-checks{list-style:none;display:grid;gap:10px;padding:0}
.ck-checks li{display:flex;align-items:flex-start;gap:12px;font:600 15px/1.45 var(--f-b);color:var(--ink)}
.ck-checks .ic{margin-top:1px;color:var(--red-deep)}
/* decorative square marker (aria-hidden), e.g. before an eyebrow */
.ck-sq{display:inline-block;flex:none;width:7px;height:7px;background:var(--red-deep)}

/* == 14. Breadcrumbs (core-chrome) == */
/* also on the untouched About and Contact templates, so list margins are set here, not by the scoped reset */
.ck-bc-wrap{margin-top:16px}
.ck-bc{display:flex;align-items:center;min-height:44px}
.ck-bc ol{display:flex;flex-wrap:wrap;align-items:center;margin:0;padding:0;list-style:none;font:500 12px/1.3 var(--f-m);letter-spacing:.12em;text-transform:uppercase}
.ck-bc li{display:inline-flex;align-items:center;margin:0}
.ck-bc li+li::before{content:"/";content:"/" / "";margin:0 10px;color:var(--hair-3)}
.ck-bc a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;color:var(--ink-soft);text-decoration:none}
.ck-bc a:hover{color:var(--ink)}
.ck-bc li:first-child a{justify-content:flex-start}   /* the trail starts on the gutter; the target stays 44 x 44 */
/* About / Contact keep their style.css layout (a centred .ck-wrap of 960 / 900 px inside a .ck-section with gutter
   padding): the trail starts where their text starts */
.page-template-page-about .ck-bc-wrap,.page-template-page-contact .ck-bc-wrap{padding-left:calc(2 * var(--gut));padding-right:calc(2 * var(--gut))}
.page-template-page-about .ck-bc-wrap{max-width:calc(960px + 2 * var(--gut))}
.page-template-page-contact .ck-bc-wrap{max-width:calc(900px + 2 * var(--gut))}
.ck-bc li>span{color:var(--ink-soft)}
.ck-bc [aria-current="page"]{color:var(--ink)}
/* phone back link (shown at 640 or less); .ck-bc a would otherwise un-hide it */
.ck-bc .ck-bc__back{display:none}
.ck-bc__back{gap:6px;min-height:44px;font:500 12px/1.3 var(--f-m);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}
.ck-bc .ck-bc__back:hover{color:var(--ink)}
.ck-bc__back .ic{color:var(--ink)}

/* == 15. Accordion (core-chrome) == */
.ck-acc{border-radius:var(--r-l);background:#fff;box-shadow:0 0 0 1px var(--hair),var(--e2);overflow:hidden}
.ck-acc__item+.ck-acc__item{border-top:1px solid var(--line)}
.ck-acc__q{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:64px;margin:0;padding:16px 16px 16px 24px;border:0;background:none;cursor:pointer;
  text-align:left;font:700 17px/1.4 var(--f-b);color:var(--ink)}
.ck-acc__q:hover{background:var(--bg)}
.ck-acc__q:focus-visible{outline-offset:-3px;border-radius:10px}   /* the panel clips (overflow:hidden), so the ring sits inside */
.ck-acc__ic{position:relative;width:32px;height:32px;flex:none;border-radius:var(--r-s);background:rgba(255,255,255,.7);box-shadow:0 0 0 1px var(--hair-2),inset 0 1px 0 #fff}
.ck-acc__ic::before,.ck-acc__ic::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;background:var(--ink);border-radius:1px;transition:transform var(--t-hover) var(--ease)}
.ck-acc__ic::after{transform:rotate(90deg)}
.ck-acc__q[aria-expanded="true"] .ck-acc__ic::after{transform:rotate(0)}
.ck-acc__item+.ck-acc__item .ck-acc__q[aria-expanded="true"]::before{content:"";position:absolute;left:24px;top:-1px;width:24px;height:2px;background:var(--red);box-shadow:var(--laser-glow)}
.ck-acc__a{padding:0 64px 22px 24px;max-width:calc(70ch + 88px);font:500 16px/1.65 var(--f-b);color:var(--ink-soft)}
.ck-acc__a[hidden]{display:none}
/* a list of links inside an accordion panel (drawer groups) */
.ck-acc-links{display:flex;flex-direction:column}
.ck-acc-links a{display:flex;align-items:center;gap:12px;min-height:44px;font:600 15px/1.3 var(--f-b);color:var(--ink);text-decoration:none}
.ck-acc-links a:hover{color:var(--red-deep)}
.ck-acc-links a .ic{color:var(--red-deep)}

/* == 16. Promo bar (core-chrome) == */
/* black since round 3 (R2); the 1px red laser line under it is unchanged */
.ck-promo{position:relative;z-index:6;background:#282828;color:#fff}
.ck-promo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--red);box-shadow:var(--laser-glow)}
.ck-promo .ck-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px}
.ck-promo__msg{display:flex;align-items:center;gap:10px;min-width:0;margin:0;font:600 14px/1.3 var(--f-b);color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ck-promo .ic{color:var(--red-accent)}
.ck-promo__txt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ck-promo__msg--m{display:none}
.ck-promo__links{display:flex;align-items:center;flex:none;font:500 12px/1 var(--f-m);letter-spacing:.06em}
.ck-promo__links a{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 10px;color:rgba(255,255,255,.82);text-decoration:none}
.ck-promo__links a:hover{color:#fff}
.ck-promo__links .sep{width:1px;height:14px;background:rgba(255,255,255,.28)}
.ck-promo :focus-visible{outline:2px solid #fff;outline-offset:-3px}
/* the offer is never cut: the utility links (also in the header, the Dealers menu and the footer) hide at 1280 or less */
@media (max-width:1280px){
  .ck-promo__links{display:none}
  .ck-promo .ck-wrap{justify-content:center}
}
/* 641-720: two centred lines instead of an ellipsis */
@media (min-width:641px) and (max-width:720px){
  .ck-promo__msg--d,.ck-promo__msg--d .ck-promo__txt{white-space:normal}
  .ck-promo__msg--d{padding:6px 0;text-align:center}
}
@media (max-width:640px){
  .ck-promo .ck-wrap{justify-content:center;min-height:36px}
  .ck-promo__msg--d,.ck-promo__links{display:none}
  .ck-promo__msg--m{display:flex;font:700 12px/1.2 var(--f-b);letter-spacing:.06em;text-transform:uppercase}
}

/* == 17. Header + nav (core-chrome) == */
/* sticky wrapper: 14px gap above the panel, sticks 12px from the top (top -2px); phones 10px / 8px */
.ck-hdr-wrap{position:sticky;top:-2px;z-index:500;padding-top:14px;pointer-events:none}
.ck-hdr-wrap>*{pointer-events:auto}
.admin-bar .ck-hdr-wrap{top:30px}
@media (max-width:782px){ .admin-bar .ck-hdr-wrap{top:44px} }
@media (max-width:600px){ .admin-bar .ck-hdr-wrap{top:-2px} }
.ck-hdr{position:relative;z-index:1;display:flex;align-items:center;gap:16px;height:var(--hdr-h);padding:0 10px 0 20px;border-radius:var(--r-l)}
.ck-hdr.is-scrolled{box-shadow:0 0 0 1px rgba(40,40,40,.09),inset 0 1px 0 #fff,0 28px 60px -22px rgba(40,40,40,.42)}
.ck-logo{display:inline-flex;align-items:center;flex:none;height:44px;text-decoration:none}
.ck-logo .custom-logo-link{display:inline-flex;align-items:center;height:44px}
.ck-logo img,.ck-logo .custom-logo{display:block;height:38px;width:auto;max-width:190px;object-fit:contain}
.ck-nav{display:flex;align-items:center;gap:2px;margin-left:6px}
.ck-nav__list{display:flex;align-items:center;gap:2px;margin:0;padding:0;list-style:none}
.ck-nav__item{position:relative;margin:0}
.ck-nav__item--mega{position:static}
/* top-level links and disclosure buttons only (the dropdown rows inside are .ck-drop a) */
.ck-nav__item>a,.ck-nav__btn{position:relative;display:inline-flex;align-items:center;gap:5px;min-height:44px;padding:0 11px;border:0;border-radius:var(--r-s);background:none;cursor:pointer;
  font:600 16px/1 var(--f-d);letter-spacing:-.005em;color:var(--ink);white-space:nowrap;text-decoration:none}
.ck-nav__item>a:hover,.ck-nav__btn:hover{background:rgba(40,40,40,.05);color:var(--ink)}
.ck-nav__item>a .ic,.ck-nav__btn .ic{width:14px;height:14px;stroke-width:2;color:var(--ink-soft)}
.ck-nav__btn .tag-new{margin-left:2px}
/* current section (page = here, true = inside it) and open disclosure: the laser underline */
.ck-nav__item>[aria-current]::after,.ck-nav__btn[aria-expanded="true"]::after{content:"";position:absolute;left:11px;right:11px;bottom:5px;height:2px;border-radius:2px;background:var(--red);box-shadow:var(--laser-glow)}
.ck-hacts{display:flex;align-items:center;gap:4px;margin-left:auto;min-width:0}
.ck-hsearch{position:relative;display:flex;align-items:center;flex:0 1 230px;min-width:180px;height:44px;margin:0}
.ck-hsearch .ic{position:absolute;left:11px;color:var(--ink-soft);pointer-events:none}
.ck-hsearch input{width:100%;height:44px;margin:0;padding:0 8px 0 35px;border:0;border-radius:var(--r-m);background:rgba(255,255,255,.9);
  box-shadow:0 0 0 1px var(--field-line),inset 0 1px 2px rgba(40,40,40,.06);font:500 15px/1 var(--f-b);color:var(--ink);-webkit-appearance:none;appearance:none}
.ck-hsearch input::placeholder{color:var(--ink-soft);opacity:1}
.ck-hsearch input:hover{box-shadow:0 0 0 1px var(--ink-muted),inset 0 1px 2px rgba(40,40,40,.06)}
.ck-hsearch input:focus-visible{outline:2px solid var(--red-deep);outline-offset:2px;box-shadow:0 0 0 1px var(--ink)}
@media (min-width:1440px){ .ck-hsearch{flex-basis:252px} }   /* 230px clipped the placeholder next to the search-cancel slot */
.ck-hsearch-btn{display:none}
.ck-burger{display:none}
.ck-hdr__cta{margin-left:4px}
/* header fit, measured on the boards: search field 1440+, locale capsule 1280+, Account icon hidden 1101-1180, nav 1101+ */
@media (max-width:1439px){
  .ck-hsearch{display:none} .ck-hsearch-btn{display:inline-flex}
}
@media (max-width:1279px){
  .ck-hacts .ck-locale{display:none} .ck-burger{display:inline-flex}
}
@media (min-width:1101px) and (max-width:1180px){
  .ck-hacts .ck-acct{display:none}
}
@media (max-width:1180px){
  .ck-nav__item>a,.ck-nav__btn{padding:0 9px;font-size:15px}
}
@media (max-width:1100px){
  .ck-nav{display:none} .ck-burger{display:inline-flex}
}
@media (max-width:640px){
  .ck-hdr-wrap{padding-top:10px}
  .ck-hdr-wrap.ck-wrap{padding-left:12px;padding-right:12px}
  .ck-hdr{height:60px;padding:0 4px 0 14px;gap:4px;border-radius:12px}
  .ck-logo img,.ck-logo .custom-logo{height:30px}
  .ck-hdr .ck-hdr__cta,.ck-hdr .ck-hsearch-btn,.ck-hdr .ck-cart-d{display:none}
}

/* == 18. Dropdowns, popovers (core-chrome) == */
/* they sit inside the glass header (nested backdrop-filter would blur only the header): near-solid fill, no blur */
.ck-drop,.ck-pop{position:absolute;top:calc(100% + 20px);z-index:510;background:rgba(251,251,250,.97);-webkit-backdrop-filter:none;backdrop-filter:none}
.ck-drop{left:0} .ck-pop{right:0}
.ck-drop::before,.ck-pop::before{content:"";position:absolute;left:0;right:0;top:-20px;height:20px}   /* hover bridge */
.ck-drop{width:300px;padding:8px;border-radius:var(--r-l)}
ul.ck-drop{list-style:none;margin:0}
.ck-drop li{margin:0}
.ck-drop a{display:flex;align-items:flex-start;gap:12px;min-height:48px;padding:10px 12px;border-radius:var(--r-m);color:var(--ink);text-decoration:none}
.ck-drop a:hover{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--hair)}
.ck-drop a:focus-visible{outline-offset:-2px}
.ck-drop a .ic{margin-top:1px;color:var(--red-deep)}
.ck-drop b{display:block;font:700 15px/1.3 var(--f-b)}
.ck-drop small{display:block;margin-top:2px;font:500 13px/1.35 var(--f-b);color:var(--ink-soft)}
.ck-pop{width:280px;padding:8px;border-radius:var(--r-l)}
.ck-pop__h{margin:0;padding:8px 12px 6px;font:500 12px/1.3 var(--f-m);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
.ck-pop__p{margin:0;padding:0 12px 8px;font:500 14px/1.4 var(--f-b);color:var(--ink-soft)}
.ck-pop a,.ck-pop button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;margin:0;padding:0 12px;border:0;border-radius:var(--r-m);background:none;
  font:600 15px/1 var(--f-b);color:var(--ink);text-align:left;cursor:pointer;text-decoration:none}
.ck-pop a:hover,.ck-pop button:hover{background:rgba(255,255,255,.7);color:var(--ink);box-shadow:0 0 0 1px var(--hair)}
.ck-pop a:focus-visible,.ck-pop button:focus-visible{outline-offset:-2px}
.ck-pop .code{width:44px;flex:none;font:600 13px/1 var(--f-m);letter-spacing:.06em}
.ck-pop .flag{display:inline-flex;width:20px;height:14px;border-radius:2px;flex:none;overflow:hidden;box-shadow:0 0 0 1px var(--hair-2)}
.ck-pop .flag svg,.ck-pop .flag img{display:block;width:100%;height:100%;object-fit:cover}
.ck-pop__name{flex:1;min-width:0;font:600 15px/1.2 var(--f-b);color:var(--ink)}
.ck-pop .ck-pop__name+.code{width:auto;font-weight:500;color:var(--ink-soft)}
.ck-pop [aria-current="true"]{background:#fff;box-shadow:0 0 0 1px var(--hair)}
.ck-pop [aria-current="true"] .ic{margin-left:auto;color:var(--red-deep)}
.ck-pop [aria-current="true"] .ck-pop__name+.code+.ic{margin-left:0}
/* fallback switcher rows: the tick is printed on every row and shown on the current one */
.ck-pop [data-ck-currency-option] .ic{margin-left:auto;color:var(--red-deep)}
.ck-pop [data-ck-currency-option]:not([aria-current="true"]) .ic{visibility:hidden}
.ck-pop .ck-pop__more{justify-content:space-between;margin-top:2px;font-size:14px;color:var(--ink-soft)}
.ck-pop .ck-pop__more .ic{width:16px;height:16px;color:var(--ink-soft)}
.ck-pop__list{display:flex;flex-direction:column}
/* the currency popover (popular codes, then "All N currencies") scrolls as one box */
#ck-pop-cur{max-height:min(560px,calc(100vh - 120px));overflow-y:auto;overscroll-behavior:contain}
.ck-pop__foot{margin:6px 0 0;padding:10px 12px 4px;border-top:1px solid var(--hair);font:500 12px/1.45 var(--f-b);color:var(--ink-soft)}
/* no JS: dropdowns and locale popovers open on hover and focus-within */
html:not(.ck-js) .ck-nav__item--drop:hover>.ck-drop,html:not(.ck-js) .ck-nav__item--drop:focus-within>.ck-drop,
html:not(.ck-js) .ck-locale__part:hover>.ck-pop,html:not(.ck-js) .ck-locale__part:focus-within>.ck-pop{display:block}

/* == 19. Locale + CURCY skin (core-chrome) == */
.ck-locale{display:inline-flex;align-items:center;flex:none;height:44px;margin:0 4px;border-radius:var(--r-m);background:rgba(255,255,255,.6);box-shadow:0 0 0 1px var(--hair-2),inset 0 1px 0 #fff}
.ck-locale__part{position:relative;display:flex;align-items:center;height:44px}
.ck-locale__btn{display:inline-flex;align-items:center;gap:6px;height:44px;margin:0;padding:0 10px;border:0;border-radius:var(--r-m);background:transparent;cursor:pointer;
  font:600 12px/1 var(--f-m);letter-spacing:.08em;color:var(--ink);white-space:nowrap}
.ck-locale__btn:hover{background:rgba(255,255,255,.9);color:var(--ink)}
.ck-locale__btn[aria-expanded="true"]{background:#fff}
.ck-locale__btn:focus-visible{outline-offset:-2px}
.ck-locale__btn .ic{width:14px;height:14px;color:var(--ink-soft)}
.ck-locale .d{width:1px;height:18px;background:var(--hair-2)}
.ck-curcy-slot{display:inline-flex;align-items:center;height:44px}
/* CURCY widget: restyled to sit in the 44px capsule (no JS) and hidden once theme.js has built the popover */
.ck-locale .woocommerce-multi-currency.wmc-shortcode,.ck-drawer__cur .woocommerce-multi-currency.wmc-shortcode{position:relative;margin:0}
.ck-locale .wmc-currency-wrapper,.ck-drawer__cur .wmc-currency-wrapper{position:relative}
.ck-locale .wmc-currency-wrapper::after{content:"";position:absolute;left:0;right:0;top:100%;height:22px}   /* hover bridge to the list */
.ck-locale .wmc-current-currency,.ck-drawer__cur .wmc-current-currency{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 10px;
  font:600 12px/1 var(--f-m);letter-spacing:.08em;color:var(--ink);background:none;border:0;cursor:pointer}
.ck-locale .wmc-current-flag,.ck-locale .wmc-sub-currency .vi-flag-64,
.ck-drawer__cur .wmc-current-flag,.ck-drawer__cur .wmc-sub-currency .vi-flag-64{display:none}
.ck-locale .wmc-sub-currency,.ck-drawer__cur .wmc-sub-currency{position:absolute;right:0;top:calc(100% + 20px);z-index:510;width:280px;max-height:360px;overflow:auto;padding:8px;
  border-radius:14px;background:rgba(251,251,250,.97);border:1px solid rgba(255,255,255,.95);box-shadow:0 0 0 1px rgba(40,40,40,.09),inset 0 1px 0 #fff,var(--e3)}
.ck-drawer__cur .wmc-sub-currency{left:0;right:auto;top:calc(100% + 4px)}
.ck-locale .wmc-currency a,.ck-drawer__cur .wmc-currency a{display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:8px;font:600 13px/1 var(--f-m);color:var(--ink)}
.ck-locale__part--cur.is-enhanced .woocommerce-multi-currency,.ck-drawer__cur.is-enhanced .woocommerce-multi-currency,
.ck-curcy-slot.is-enhanced .woocommerce-multi-currency{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* == 20. Mega menu (core-chrome) == */
/* a sibling of .ck-hdr inside .ck-hdr-wrap (full glass, no nested backdrop-filter); desktop only */
.ck-mega{position:absolute;left:var(--gut);right:var(--gut);top:calc(100% + 8px);z-index:2;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:32px;padding:32px;border-radius:var(--r-l)}
.ck-mega:not(:has(.ck-mega__feat)){grid-template-columns:1.4fr 1fr 1fr}
.ck-scrim--mega{position:fixed;inset:0;z-index:0}
.ck-mega__h{margin:0 0 14px;font:500 12px/1.3 var(--f-m);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}
/* the index is a laser tick + ink-soft number (no red text under 24px on .gl-2 that can open over the hero) */
.ck-mega__h b{position:relative;display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--ink-soft)}
.ck-mega__h b::before{content:"";width:12px;height:2px;border-radius:2px;background:var(--red);box-shadow:var(--laser-glow)}
.ck-mega__h--sub{margin-top:22px}
.ck-mega__sys{display:grid;grid-template-columns:1fr;gap:2px}
.ck-mega__tile{position:relative;display:flex;align-items:flex-start;gap:12px;min-height:64px;padding:10px;border-radius:var(--r-m);color:var(--ink);text-decoration:none}
.ck-mega__tile:hover{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--hair)}
.ck-mega__tile b{display:block;font:700 15px/1.3 var(--f-b)}
.ck-mega__tile small{display:block;margin-top:2px;font:500 13px/1.35 var(--f-b);color:var(--ink-soft)}
.ck-mega__row{display:flex;align-items:center;gap:12px;min-height:52px;padding:6px 8px;border-radius:var(--r-m);font:700 15px/1.2 var(--f-b);color:var(--ink);text-decoration:none}
.ck-mega__row:hover{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--hair)}
.ck-mega__row .ic:last-child{margin-left:auto;color:var(--ink-soft)}
.ck-mega__row .ck-mega__thumb .ic{margin-left:0;color:var(--red-deep)}
.ck-mega__q>.ic:first-child{color:var(--red-deep)}
.ck-mega__tile:focus-visible,.ck-mega__row:focus-visible{outline-offset:-2px}
.ck-mega__thumb{width:40px;height:40px;flex:none;border-radius:var(--r-s);--mo:3px;--ms:6px;display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 0 0 1px var(--hair)}
.ck-mega__thumb img{width:34px;height:34px;object-fit:contain}
.ck-mega__feat{display:flex;flex-direction:column;gap:12px;padding:10px;border-radius:var(--r-m)}
.ck-mega__feat>.ck-mega__h{margin:-10px 0 2px}
.ck-mega__feat .img{aspect-ratio:4/3;border-radius:var(--r-s);display:flex;align-items:center;justify-content:center;overflow:hidden}
.ck-mega__feat .img img{width:80%;height:80%;object-fit:contain}
.ck-mega__feat>b{font:700 16px/1.3 var(--f-b);color:var(--ink)}
.ck-mega__feat-d{margin:0;font:500 14px/1.45 var(--f-b);color:var(--ink-soft)}
.ck-mega__feat .btn--link{align-self:flex-start}
.ck-mega .btn--link{color:var(--ink)}
.ck-mega .btn--link .ic{color:var(--red-deep)}
.ck-mega .btn.btn--link:hover{color:var(--red-deep)}
/* no JS: the mega menu opens on hover and focus-within */
/* :has() in its own rule: a browser without it would drop the whole list (Safari 15.0-15.3) */
html:not(.ck-js) .ck-hdr-wrap:has(.ck-nav__item--mega:hover) .ck-mega,html:not(.ck-js) .ck-hdr-wrap:has(.ck-nav__item--mega:focus-within) .ck-mega{display:grid}
html:not(.ck-js) .ck-mega:hover,html:not(.ck-js) .ck-mega:focus-within{display:grid}
html:not(.ck-js) .ck-mega::before{content:"";position:absolute;left:0;right:0;top:-20px;height:20px}   /* hover bridge over the gap under the nav item */
@media (max-width:1180px){
  .ck-mega{grid-template-columns:1.4fr 1fr 1fr}
  .ck-mega>.ck-mega__feat{display:none}
}
@media (max-width:1100px){
  .ck-mega,.ck-scrim--mega{display:none!important}
}

/* == 21. Drawer (core-chrome) == */
/* the BODY of the drawer scrolls, never the drawer itself (a flex child needs min-height:0) */
.ck-scrim--drawer{z-index:900}
.ck-drawer{position:fixed;top:0;right:0;bottom:0;z-index:910;width:min(420px,100%);height:100vh;height:100dvh;display:flex;flex-direction:column;
  border-radius:var(--r-l) 0 0 var(--r-l);overflow:hidden;transform:translateX(100%);transition:transform 260ms var(--ease)}
.ck-drawer.is-open{transform:none}
.ck-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;min-height:64px;padding:8px 8px 8px 20px;border-bottom:1px solid var(--hair)}
.ck-drawer__logo{display:block;height:28px;width:auto}
.ck-drawer__body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:12px 20px 20px}
.ck-drawer__foot{flex:none;display:flex;flex-direction:column;gap:10px;padding:16px 20px calc(20px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line)}
.ck-drawer__foot p{margin:0;font:500 13px/1.5 var(--f-m);letter-spacing:.04em;color:var(--ink-soft);text-align:center}
.ck-seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;border-radius:var(--r-m);background:rgba(40,40,40,.05)}
.ck-seg button,.ck-seg a{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;margin:0;border:0;border-radius:6px;background:none;cursor:pointer;
  font:600 14px/1 var(--f-b);color:var(--ink-soft);text-decoration:none}
.ck-seg button:hover,.ck-seg a:hover{color:var(--ink)}
.ck-seg [aria-selected="true"],.ck-seg [aria-current]{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--hair),0 4px 10px -6px rgba(40,40,40,.3)}
.ck-mrow{display:flex;align-items:center;gap:12px;min-height:52px;padding:4px 0;border-bottom:1px solid var(--hair);font:600 16px/1.25 var(--f-b);color:var(--ink);text-decoration:none}
.ck-mrow:hover{color:var(--red-deep)}
.ck-mrow:focus-visible{outline-offset:-2px}
.ck-mrow .ic:last-child{margin-left:auto;color:var(--ink-soft)}
.ck-mrow .ck-iwell .ic,.ck-mrow .ck-mega__thumb .ic{margin-left:0;color:var(--red-deep)}   /* the well's own icon is also :last-child */
/* drawer rhythm (Kit M2) */
.ck-drawer .ck-field-ic{margin:0}
.ck-drawer .ck-seg{margin-top:16px}
.ck-drawer [role="tabpanel"]{margin-top:6px}
.ck-drawer__groups{margin-top:20px}
.ck-drawer__groups .ck-acc__a{padding:0 18px 12px}
.ck-drawer__links{margin-top:16px}
.ck-drawer__cur{margin-top:22px}
.ck-drawer__lang{margin-top:18px}
.ck-drawer__lang .chip-row{margin-top:0}
@media (min-width:1280px){
  .ck-drawer,.ck-scrim--drawer{display:none!important}
}

/* == 22. Search overlay (core-chrome) == */
.ck-scrim--search{z-index:915}
.ck-search{position:fixed;left:0;right:0;top:0;z-index:920;max-height:100vh;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;padding:20px var(--gut) 24px;border-radius:0 0 var(--r-l) var(--r-l);
  transition:opacity var(--t-enter) var(--ease),transform var(--t-enter) var(--ease)}
.ck-search:not(.is-in){opacity:0;transform:translateY(-8px)}
.ck-search__bar{display:flex;align-items:center;gap:10px;max-width:880px;margin:0 auto}
.ck-search__bar .input{min-height:56px;font-size:18px;padding-left:48px}
.ck-search__field{position:relative;flex:1;min-width:0}
.ck-search__field .ic{position:absolute;left:16px;top:18px;color:var(--ink-soft);pointer-events:none}
.ck-search__hint{max-width:880px;margin:10px auto 0;font:500 12px/1.4 var(--f-m);letter-spacing:.08em;color:var(--ink-soft)}
.ck-search__sugg{max-width:880px;margin:20px auto 0}
.ck-search__list{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;margin:0;padding:0;list-style:none}
.ck-search__list>li{margin:0;min-width:0}
.ck-sugg{display:flex;align-items:center;gap:14px;min-height:64px;padding:8px 12px;border-radius:var(--r-m);color:var(--ink);text-decoration:none}
.ck-sugg:hover{background:#fff;color:var(--ink);box-shadow:0 0 0 1px var(--hair)}
.ck-sugg:focus-visible{outline-offset:-2px}
.ck-sugg>span:nth-child(2){flex:1;min-width:0}
.ck-sugg .th{width:48px;height:48px;flex:none;border-radius:var(--r-s);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:0 0 0 1px var(--hair)}
.ck-sugg .th img{width:42px;height:42px;object-fit:contain}
.ck-sugg b{display:block;font:700 15px/1.3 var(--f-b)}
.ck-sugg .ck-sku{display:block;margin-top:4px}
.ck-sugg .p{margin-left:auto;flex:none;font:700 17px/1 var(--f-d);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.ck-sugg .p small{display:block;margin-bottom:4px;font:500 11px/1 var(--f-m);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);text-align:right}
.ck-sugg .p del{display:none}
.ck-sugg .p ins{text-decoration:none;color:var(--red-deep)}
.ck-sugg .p--gate{display:inline-flex;align-items:center;gap:6px;font:700 14px/1.2 var(--f-b);color:var(--red-deep);white-space:normal}
@media (max-width:640px){
  .ck-search{padding:12px 12px 16px}
  .ck-search__bar{flex-wrap:wrap}
  .ck-search__field{flex:1 1 100%}
  .ck-search__bar .btn--xl{flex:1}
  .ck-search__list{grid-template-columns:1fr}
}

/* == 23. Modal, sheet (core-chrome) == */
/* placement (fixed, z-index) belongs to the area that prints them (financing modal, filter sheet) */
.ck-modal{position:relative;width:min(520px,100%);border-radius:var(--r-l);overflow:hidden}
.ck-modal__head{display:flex;align-items:flex-start;gap:14px;padding:20px 12px 16px 24px}
.ck-modal__body{background:#fff;padding:24px;display:flex;flex-direction:column;gap:18px}
.ck-sheet{border-radius:var(--r-dock) var(--r-dock) 0 0;overflow:hidden;display:flex;flex-direction:column}
.ck-sheet__grab{width:40px;height:4px;margin:10px auto 2px;border-radius:2px;background:var(--hair-3)}
.ck-sheet__head{display:flex;align-items:center;justify-content:space-between;padding:4px 8px 8px 20px}
.ck-sheet__body{padding:4px 20px 20px;overflow:auto}
.ck-sheet__foot{display:grid;grid-template-columns:1fr 1.6fr;gap:10px;padding:12px 16px 16px;border-top:1px solid var(--hair);background:rgba(255,255,255,.7)}

/* == 24. Toasts (core-chrome) == */
/* icon | message | close; the actions row spans under the close button */
.ck-toast{display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:12px;align-items:start;width:min(520px,100%);padding:14px 8px 14px 16px;border-radius:var(--r-l)}
.ck-toast[hidden]{display:none}
.ck-toast__ic{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex:none;border-radius:50%;background:#fff;color:var(--ok);box-shadow:0 0 0 1px var(--hair)}
.ck-toast--err .ck-toast__ic{color:var(--red-deep)}
.ck-toast__code{font:600 12px/1 var(--f-m);letter-spacing:.06em;color:var(--ink)}
.ck-toast>.ck-toast__msg{align-self:center;margin:0;font:500 15px/1.45 var(--f-b);color:var(--ink)}
.ck-toast__msg strong{font-weight:700}
.ck-toast__msg a{color:var(--red-deep)}
.ck-toast>.ck-toast__acts{grid-column:2 / -1;display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.ck-toast--lang>.ck-toast__acts{grid-column:1 / -1;margin-top:12px}
.ck-toast--banner{width:100%;max-width:none}
.ck-toast--banner:focus{outline:none}
.ck-toast--banner:focus-visible{outline:2px solid var(--red-deep);outline-offset:3px}
.ck-toast__go{font-weight:700;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}
.ck-banner-wrap{margin-top:16px}
/* placement: cart toast top right, language suggestion bottom left (above the bottom bars at 900 or less) */
#ck-cart-toast{position:fixed;top:96px;right:24px;z-index:800;width:min(520px,calc(100vw - 48px));
  transition:opacity var(--t-exit) var(--ease-in),transform var(--t-exit) var(--ease-in)}
#ck-cart-toast:not(.is-in):not(.is-visible){opacity:0;transform:translateY(-8px)}
#ck-cart-toast.is-in,#ck-cart-toast.is-visible{transition-duration:var(--t-enter);transition-timing-function:var(--ease)}
@media (max-width:640px){ #ck-cart-toast{top:80px;left:12px;right:12px;width:auto} }
.ck-toast--lang{position:fixed;left:24px;bottom:24px;z-index:800;width:min(360px,calc(100vw - 48px));
  transition:opacity var(--t-exit) var(--ease-in),transform var(--t-exit) var(--ease-in)}
.ck-toast--lang:not(.is-in){opacity:0;transform:translateY(8px)}
.ck-toast--lang.is-in{transition-duration:var(--t-enter);transition-timing-function:var(--ease)}
@media (max-width:900px){ .ck-toast--lang{left:12px;right:12px;width:auto;bottom:calc(max(var(--ck-fab-base,0px),var(--ck-fab-fallback)) + 12px)} }
@keyframes ck-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes ck-drop-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
/* menus fade in when they open (no class needed: the animation runs when hidden is removed) */
.ck-drop:not([hidden]),.ck-pop:not([hidden]),.ck-mega:not([hidden]){animation:ck-drop-in var(--t-enter) var(--ease)}
.ck-fab-menu:not([hidden]){animation:ck-rise var(--t-enter) var(--ease)}
body.ck-lock{overflow:hidden}

/* == 25. Floating controls (core-chrome) == */
/* Live Expert + language (round 3, R5). Fixed bottoms measured from --ck-fab-base (theme.js placeFabs: the top of the
   visible bottom nav / sticky add-to-cart / filter bar), never lower than the bottom-nav height at 900 or less
   (max(): a stale or cached script that writes 0 cannot drop the buttons onto the nav).
   z 800: over content, sticky bars (700) and the bottom nav (720); under scrims, drawer, search (900+). */
.ck-fabs{position:fixed;right:0;bottom:0;width:0;height:0;z-index:800;transition:opacity var(--t-exit) var(--ease),visibility 0s linear}
.ck-fab-expert{position:fixed;top:auto;right:24px;bottom:calc(max(var(--ck-fab-base,0px),var(--ck-fab-fallback)) + var(--ck-fab-gap));z-index:800;
  display:flex;align-items:center;gap:10px;border-radius:999px;color:var(--ink);text-decoration:none;
  pointer-events:none;transition:opacity var(--t-exit) var(--ease),transform var(--t-exit) var(--ease)}   /* the gap and a folded label let clicks through */
.ck-fab-expert__lbl{display:inline-block;height:44px;padding:0 16px;border-radius:999px;font:600 14px/42px var(--f-b);color:var(--ink);white-space:nowrap;   /* block, not flex: keeps the word spaces */
  pointer-events:auto;transition:opacity var(--t-exit) var(--ease),visibility 0s linear}
.ck-fab-expert__btn{display:inline-flex;align-items:center;justify-content:center;flex:none;width:56px;height:56px;border-radius:50%;pointer-events:auto;
  background:var(--red-deep);color:#fff;box-shadow:0 0 0 6px rgba(var(--red-rgb),.14),var(--e3);transition:background-color var(--t-hover) var(--ease)}
.ck-fab-expert:hover{color:var(--ink)}
.ck-fab-expert:hover .ck-fab-expert__lbl{background:#fff}
.ck-fab-expert:hover .ck-fab-expert__btn{background:var(--red-hover)}
.ck-fab-expert__short{display:none}
.ck-fab-lang{position:fixed;top:auto;right:26px;bottom:calc(max(var(--ck-fab-base,0px),var(--ck-fab-fallback)) + var(--ck-fab-gap) + 72px);z-index:800;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:52px;height:52px;margin:0;padding:0;border-radius:50%;cursor:pointer;
  color:var(--ink);font:600 12px/1 var(--f-m);letter-spacing:.06em}
.ck-fab-lang .ic{width:16px;height:16px;stroke-width:2;color:var(--ink-soft)}
.ck-fab-lang:hover,.ck-fab-lang[aria-expanded="true"]{background:#fff;color:var(--ink)}
.ck-fab-lang[aria-expanded="true"]{box-shadow:0 0 0 1px var(--hair-4),inset 0 1px 0 #fff,var(--e3)}
.ck-fab-expert:focus-visible,.ck-fab-lang:focus-visible{outline:3px solid var(--red-deep);outline-offset:3px}
/* Folded (compact): the label fades into the circle. Its box stays where it is (visibility, not display), so the button
   never changes size or place: no layout shift, and theme.js keeps measuring the unfolded pill. .is-avoid = theme.js
   (the pill would cover a link, button, field, form or a data-ck-fab-avoid region); .is-compact = phones after the
   first scroll, and product pages while the buy box is on screen (ck-product.css). The link keeps its aria-label. */
.ck-fab-expert.is-avoid .ck-fab-expert__lbl{visibility:hidden;opacity:0;pointer-events:none;transition-delay:0s,var(--t-exit)}
.ck-fab-expert.is-avoid:focus-visible{outline:0}
.ck-fab-expert.is-avoid:focus-visible .ck-fab-expert__btn{outline:3px solid var(--red-deep);outline-offset:3px}
/* 900 or less, where the circle sits on the content column: it steps aside (faded, clicks pass through) while it would
   cover a marked region (the buy box, a form); keyboard focus brings it back */
.ck-fab-expert.is-aside{opacity:0}
.ck-fab-expert.is-aside .ck-fab-expert__lbl,.ck-fab-expert.is-aside .ck-fab-expert__btn{pointer-events:none}
.ck-fab-expert.is-aside:focus-visible{opacity:1}
/* language menu: left of the language button, bottom edges aligned */
.ck-fab-menu{position:fixed;top:auto;right:88px;bottom:calc(max(var(--ck-fab-base,0px),var(--ck-fab-fallback)) + var(--ck-fab-gap) + 72px);z-index:810;width:232px;padding:6px;border-radius:var(--r-l)}
.ck-fab-menu a{display:flex;align-items:center;gap:12px;min-height:44px;padding:0 12px;border-radius:var(--r-m);font:600 15px/1 var(--f-b);color:var(--ink);text-decoration:none}
.ck-fab-menu .code{width:24px;flex:none;font:600 12px/1 var(--f-m);letter-spacing:.08em;color:var(--ink-soft)}
.ck-fab-menu .ck-fab-menu__tick{margin-left:auto;color:var(--red-deep)}
.ck-fab-menu a:hover{background:rgba(255,255,255,.7);color:var(--ink);box-shadow:0 0 0 1px var(--hair)}
.ck-fab-menu a[aria-current="true"]{background:#fff;box-shadow:0 0 0 1px var(--hair)}
.ck-fab-menu a[aria-current="true"] .code{color:var(--ink)}
.ck-fab-menu :focus-visible{outline-offset:-3px}
/* 641-1100: Live Expert is the circle only (the label sat over page text); the link keeps its aria-label */
@media (min-width:641px) and (max-width:1100px){
  .ck-fab-expert__lbl{display:none}
}
/* phones: 52px circle + short "Live Expert" label (collapses after the first scroll), 48px language circle */
@media (max-width:640px){
  .ck-fab-expert{right:16px;gap:8px}
  .ck-fab-expert__lbl{height:36px;padding:0 12px;font-size:13px;line-height:34px}
  .ck-fab-expert__btn{width:52px;height:52px}
  .ck-fab-expert__full{display:none} .ck-fab-expert__short{display:inline}
  .ck-fab-expert.is-compact .ck-fab-expert__lbl{visibility:hidden;opacity:0;pointer-events:none;transition-delay:0s,var(--t-exit)}
  .ck-fab-expert.is-compact:focus-visible{outline:0}
  .ck-fab-expert.is-compact:focus-visible .ck-fab-expert__btn{outline:3px solid var(--red-deep);outline-offset:3px}
  .ck-fab-lang{right:18px;width:48px;height:48px;gap:2px;bottom:calc(max(var(--ck-fab-base,0px),var(--ck-fab-fallback)) + var(--ck-fab-gap) + 64px)}
  .ck-fab-menu{right:76px;bottom:calc(max(var(--ck-fab-base,0px),var(--ck-fab-fallback)) + var(--ck-fab-gap) + 64px)}
}
/* hidden while a drawer, the search, the mega menu, a sheet or modal (body.ck-lock) or a toast is open */
body.ck-lock .ck-fabs,body.ck-mega-open .ck-fabs,body.ck-toast-on .ck-fabs{visibility:hidden;opacity:0;transition:opacity var(--t-exit) var(--ease),visibility 0s linear var(--t-exit)}

/* == 26. Bottom nav (core-chrome) == */
/* 5 labelled items (Home, Shop, Search, Cart, Account), shown at 900 or less; one current treatment for every aria-current */
.ck-bnav{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:720;display:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;height:68px;padding:4px;border-radius:var(--r-dock)}
.ck-bnav a,.ck-bnav button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:0;min-height:58px;margin:0;padding:0;
  border:0;border-radius:14px;background:none;cursor:pointer;font:600 12px/1 var(--f-b);color:var(--ink-soft);text-decoration:none;white-space:nowrap}
.ck-bnav a:hover,.ck-bnav button:hover{background:rgba(40,40,40,.05);color:var(--ink)}
.ck-bnav a:focus-visible,.ck-bnav button:focus-visible{outline-offset:-3px}
.ck-bnav [aria-current]{color:var(--ink)}
.ck-bnav [aria-current] .ic{color:var(--red-deep)}
.ck-bnav [aria-current]::before{content:"";position:absolute;top:3px;left:50%;width:20px;margin-left:-10px;height:2px;border-radius:2px;background:var(--red);box-shadow:var(--laser-glow)}
.ck-bnav .ck-count{top:4px;right:auto;left:50%;margin-left:4px}
@media (max-width:900px){
  .ck-bnav{display:grid}
  body.canamek{padding-bottom:0}   /* the footer carries the bottom-nav reserve (no empty band under it) */
}

/* == 27. Footer (core-chrome) == */
/* black since round 3 (R8): the tokens are re-pointed inside, so rules that use var(--ink) or var(--hair) follow */
.ck-footer{--ink:#fff;--ink-soft:rgba(255,255,255,.80);--ink-muted:rgba(255,255,255,.72);
  --hair:rgba(255,255,255,.12);--hair-2:rgba(255,255,255,.16);--hair-3:rgba(255,255,255,.24);--hair-4:rgba(255,255,255,.5);
  --line:rgba(255,255,255,.12);--grid-major:rgba(255,255,255,.035);--grid-minor:transparent;
  position:relative;isolation:isolate;margin:0;padding:80px 0 32px;background:#282828;color:#fff}
.ck-footer::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:var(--red);box-shadow:var(--laser-glow)}
.ck-footer__grid{display:grid;grid-template-columns:1.3fr .9fr .9fr 1.45fr .9fr;gap:40px}
.ck-footer__brand img{display:block;height:36px;width:auto;max-width:100%}
.ck-footer__brand p{margin:18px 0 0;max-width:40ch;font:500 15px/1.65 var(--f-b);color:rgba(255,255,255,.80)}
.ck-footer__social{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.ck-footer h3{margin:0 0 14px;font:600 12px/1.3 var(--f-m);letter-spacing:.14em;text-transform:uppercase;color:#fff}
.ck-footer ul{margin:0;padding:0;list-style:none}
.ck-footer li{margin:0}
.ck-footer li a{display:inline-flex;align-items:center;gap:10px;min-height:44px;min-width:44px;font:500 15px/1.35 var(--f-b);color:rgba(255,255,255,.80);text-decoration:none}
.ck-footer li a:hover{color:#fff}
.ck-footer li .ic,.ck-footer__txt .ic{color:var(--red-accent)}
.ck-footer__txt{display:flex;gap:10px;margin:0;padding:7px 0;font:500 15px/1.45 var(--f-b);color:rgba(255,255,255,.80)}
.ck-footer__txt .ic{margin-top:1px}
.ck-footer .ib,.ck-footer .ib--glass{width:44px;height:44px;background:rgba(255,255,255,.06);color:#fff;
  -webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.ck-footer .ib:hover,.ck-footer .ib--glass:hover{background:rgba(255,255,255,.14);color:#fff}
.ck-tblock{display:flex;flex-wrap:wrap;align-items:stretch;margin-top:56px;border-radius:var(--r-l);overflow:hidden}
.ck-tblock>*{display:flex;align-items:center;min-height:52px;margin:0;padding:0 20px;border-right:1px solid var(--hair);font:500 12px/1.3 var(--f-m);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none}
.ck-tblock>*:last-child{border-right:0;margin-left:auto}
.ck-tblock a:hover{color:var(--ink)}
.ck-tblock a:focus-visible{outline-offset:-4px}
.ck-footer .ck-tblock{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}
.ck-footer .ck-tblock>*{color:rgba(255,255,255,.72);border-color:rgba(255,255,255,.12)}
.ck-footer .ck-tblock a:hover{color:#fff}
.ck-footer :focus-visible{outline:2px solid #fff}
@media (max-width:1280px){
  .ck-footer__grid{grid-template-columns:1.4fr 1fr 1fr 1.2fr;row-gap:40px}
}
@media (max-width:900px){
  .ck-footer{padding:56px 0 calc(24px + var(--ck-bottom-nav-h) + 16px)}
  .ck-footer__grid{grid-template-columns:1fr 1fr;gap:32px 24px}
  .ck-footer__brand{grid-column:1 / -1}
  .ck-tblock>*:last-child{margin-left:0}
}
@media (max-width:640px){
  .ck-footer__grid{gap:28px 16px}
  .ck-footer__contact{grid-column:1 / -1}
  /* title block in two rows: copyright, then Privacy | Terms | USD . EN */
  .ck-tblock{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
  .ck-tblock>*{justify-content:center;min-height:44px;margin:0;padding:0 12px;border-bottom:0;border-right:1px solid var(--hair)}
  .ck-tblock>:first-child{grid-column:1 / -1;letter-spacing:.06em;border-right:0;border-bottom:1px solid var(--hair);white-space:nowrap}
  .ck-tblock>:last-child{border-right:0}
}

/* == 28. reCAPTCHA slot (core-chrome) == */
/* round 3, R10: directly above the submit button, after the last field (the form's own gap spaces it; .ck-recaptcha--gap
   in a form without one). Placeholder for Google's iframe: 304 x 78, shrinks to 100% when narrower. */
.ck-recaptcha{position:relative;width:304px;max-width:100%;flex:none}
.ck-recaptcha--gap{margin:16px 0}
.ck-recaptcha__w{display:flex;align-items:center;gap:12px;height:78px;padding:0 8px 0 11px;background:#f9f9f9;border:1px solid #d3d3d3;border-radius:3px;
  box-shadow:0 0 4px 1px rgba(0,0,0,.08)}
.ck-recaptcha__box{flex:none;width:28px;height:28px;background:#fff;border:2px solid #c1c1c1;border-radius:2px}
.ck-recaptcha__lbl{flex:1;min-width:0;font:500 14px/1.2 var(--f-b);color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ck-recaptcha__logo{display:flex;flex-direction:column;align-items:center;flex:none;width:62px;text-align:center}
.ck-recaptcha__ic{width:32px;height:32px;fill:none;stroke:#4a90e2;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ck-recaptcha__brand{margin-top:2px;font:500 10px/1.2 var(--f-b);color:#555}
.ck-recaptcha__links{margin-top:1px;font:500 8px/1.2 var(--f-b);color:#555;white-space:nowrap}
/* v3 (invisible): no widget, this line under the submit button */
.ck-recaptcha-note{font:500 12px/1.5 var(--f-b);color:var(--ink-soft)}
.ck-recaptcha-note a{color:var(--ink);font-weight:700;text-decoration:underline;text-underline-offset:2px}
.ck-recaptcha-note a:hover{color:var(--red-deep)}

/* == reCAPTCHA live widget + legacy forms (owner: platform) == */
/* Live states of the slot printed by canamek_recaptcha_field() (inc/canamek-recaptcha.php) and driven by
   assets/js/ck-recaptcha.js: Google's iframe in __g over the drawn placeholder, error ring + message (RC3),
   v3 notice; plus the theme forms that have no flex gap of their own. */
.ck-rc-field{display:flex;flex-direction:column;gap:8px;min-width:0}
.ck-recaptcha{width:min(304px,100%)}   /* same box, but no 304 px min-content: a narrow grid column (contact page at 320) can shrink it */
.ck-rc-field .field__err{display:none}
.ck-rc-field.is-error .field__err{display:flex}
.ck-recaptcha:focus{outline:none}
.ck-recaptcha:focus-visible{outline:2px solid var(--red-deep);outline-offset:3px}
.ck-recaptcha__g{position:absolute;left:0;top:0;transform-origin:0 0}
.ck-recaptcha.is-ready .ck-recaptcha__w{visibility:hidden}
.ck-recaptcha.is-error .ck-recaptcha__w{border-color:var(--red-deep);box-shadow:0 0 0 1px var(--red-deep),0 0 4px 1px rgba(0,0,0,.08)}
.ck-recaptcha.is-error.is-ready{border-radius:3px;box-shadow:0 0 0 2px var(--red-deep)}
.ck-recaptcha--v3{display:none}
.ck-recaptcha-note{margin:0}
.grecaptcha-badge{visibility:hidden!important}          /* v3: the notice line is printed under every protected submit button */
.ck-newsletter__form{flex-wrap:wrap}
.ck-newsletter__form .ck-rc-field{flex:1 0 100%;order:2}
.ck-newsletter__form button[type="submit"]{order:3}
.ck-newsletter__form .ck-recaptcha-note{flex:1 0 100%;order:4;color:rgba(255,255,255,.72)}
.ck-newsletter__form .ck-recaptcha-note a{color:#fff}
.comment-form .ck-rc-field,.woocommerce-form .ck-rc-field{margin:16px 0}
/* == end reCAPTCHA live widget + legacy forms (owner: platform) == */

/* == 29. product card (owner: platform) == */
/* == product card (owner: platform) == */
/* article.ck-pc in ul.ck-pgrid (canamek_render_product_card() / _grid(), inc/woo-query-helpers.php). Shared by home,
   archive, "Frequently paired" and 404; it resets its own margins so it also looks right outside .ck-rd.
   Price, badge, rating, button, marks and placeholder base rules: sections 5, 9-11 above. */
.ck-pgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none}
.ck-pgrid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ck-pgrid>li{display:flex;min-width:0;margin:0;padding:0}
.ck-pc{position:relative;display:flex;flex-direction:column;width:100%;padding:10px;border-radius:var(--r-m);color:var(--ink);
  transition:transform var(--t-hover) var(--ease),box-shadow var(--t-hover) var(--ease)}
.ck-pc :where(p,h2,h3,h4){margin:0}   /* :where = no specificity, so .ck-pc__price{margin-top:auto} still lines prices up */
.ck-pc a{text-decoration:none}
.ck-pc__media{position:relative;display:block;aspect-ratio:1/1;border-radius:var(--r-s);overflow:hidden;box-shadow:0 0 0 1px rgba(40,40,40,.06)}
.ck-pc__media img{position:absolute;left:8%;top:8%;width:84%;height:84%;object-fit:contain;max-width:none}
.ck-pc__media::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--red);box-shadow:var(--laser-glow);transform:scaleX(0);transform-origin:left;transition:transform var(--t-sweep) var(--ease)}
.ck-pc__media .ck-ph{position:absolute;inset:0;min-height:0;border-radius:0;box-shadow:none}
.ck-pc__media .ck-ph>span{max-width:calc(100% - 48px)}
.ck-pc__badge{position:absolute;top:20px;left:20px;z-index:2}
.ck-pc__new{position:absolute;top:20px;right:20px;z-index:2}
.ck-pc:has(.ck-pc__badge) .ck-pc__media{background-size:0 0,0 0,var(--ms) 1px,1px var(--ms),var(--ms) 1px,1px var(--ms),var(--ms) 1px,1px var(--ms)}
.ck-pc:has(.ck-pc__new) .ck-pc__media{background-size:var(--ms) 1px,1px var(--ms),0 0,0 0,var(--ms) 1px,1px var(--ms),var(--ms) 1px,1px var(--ms)}
.ck-pc:has(.ck-pc__badge):has(.ck-pc__new) .ck-pc__media{background-size:0 0,0 0,0 0,0 0,var(--ms) 1px,1px var(--ms),var(--ms) 1px,1px var(--ms)}
.ck-pc__info{display:flex;flex-direction:column;flex:1;padding:14px 8px 0}
.ck-pc .ck-sku{margin:0}
.ck-pc__name{margin:8px 0 0;min-height:2.7em;font:700 17px/1.35 var(--f-b);letter-spacing:-.005em}
.ck-pc__name a{color:var(--ink)}
.ck-pc__name a::after{content:"";position:absolute;inset:0;z-index:1;border-radius:var(--r-m)}
.ck-pc__name a:focus-visible{outline:none}
.ck-pc:has(.ck-pc__name a:focus-visible){outline:2px solid var(--red-deep);outline-offset:3px}
.ck-pc__info>.ck-pc__name{margin-bottom:16px}
.ck-pc__name:has(+.ck-pc__rating){margin-bottom:0}
.ck-pc__rating{margin:8px 0 16px}
.ck-pc__price{margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.ck-pc .ck-price__gate{position:relative;z-index:2}
.ck-pc__price .ck-price__oos,.ck-pc__price .ck-price__gate{min-height:44px}
.ck-pc__act{position:relative;z-index:2;margin:12px 0 0}
.ck-pc__act.btn--red{box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.ck-pc__lbl{min-width:0;overflow:hidden;text-overflow:ellipsis}
.ck-pc__act.loading{color:transparent!important;pointer-events:none}                 /* WooCommerce's own class = .is-loading */
.ck-pc__act.loading::after{content:"";position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;
  border:2px solid;border-color:rgba(255,255,255,.95) rgba(255,255,255,.95) rgba(255,255,255,.3) rgba(255,255,255,.3);animation:ck-spin .8s linear infinite}
.ck-pc__more,.ck-pc a.added_to_cart{position:relative;z-index:2;align-self:center;display:inline-flex;align-items:center;gap:10px;min-height:44px;margin-top:2px;
  padding:0;background:none;font:700 15px/1 var(--f-b);color:var(--red-deep)}
.ck-pc__done{position:relative;z-index:2;display:flex;align-items:center;gap:12px;margin-top:12px}
.ck-pc__done .ck-pc__act{flex:1;margin:0}
.ck-pc__done .ck-pc__more{margin:0;flex:none}
.ck-pc:hover,.ck-pc:focus-within{transform:translateY(-3px);box-shadow:0 0 0 1px var(--hair-2),inset 0 1px 0 #fff,var(--e2h)}
.ck-pc:hover .ck-pc__media::after,.ck-pc:focus-within .ck-pc__media::after{transform:scaleX(1)}
.ck-pc:hover .ck-pc__media,.ck-pc:focus-within .ck-pc__media{--mk:rgba(var(--red-rgb),.75)}
.ck-pc:hover .ck-pc__name a{color:var(--red-deep)}
.ck-pc.is-oos .ck-pc__media img{opacity:.55}
.ck-star-half{position:relative;display:inline-flex}
.ck-star-half__in{position:absolute;left:0;top:0;width:50%;overflow:hidden}
@media (max-width:1100px){ .ck-pgrid,.ck-pgrid--3{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:900px){ .ck-pc:hover:not(:focus-within){transform:none;box-shadow:0 0 0 1px var(--hair),inset 0 1px 0 #fff,var(--e2)} }
@media (max-width:640px){
  .ck-pgrid,.ck-pgrid--3{grid-template-columns:1fr;gap:12px}
  .ck-pgrid .ck-pc{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(255,255,255,.9)}   /* long lists: no blur (ArchiveMobile) */
  .ck-pc{display:grid;grid-template-columns:120px minmax(0,1fr);column-gap:14px;align-items:start;padding:10px}
  .ck-pc__media{grid-column:1;grid-row:1;--mo:6px;--ms:8px}
  .ck-pc__media img{left:6%;top:6%;width:88%;height:88%}
  .ck-pc__media .ck-ph>span{max-width:calc(100% - 16px);padding:5px 6px}
  .ck-pc__badge{top:16px;left:16px}
  .ck-pc__badge.badge,.ck-pc__new.badge{height:22px;font-size:12px;padding:0 6px}
  .ck-pc__new{right:auto;left:16px;top:104px}
  .ck-pc:has(.ck-pc__new) .ck-pc__media{background-size:var(--ms) 1px,1px var(--ms),var(--ms) 1px,1px var(--ms),0 0,0 0,var(--ms) 1px,1px var(--ms)}
  .ck-pc__info{grid-column:2;grid-row:1;padding:2px 0 0}
  .ck-pc__info>.ck-pc__name{margin:6px 0 0;min-height:0;font-size:17px;line-height:1.3}
  .ck-pc__rating{margin:6px 0 0}
  .ck-pc__price{margin-top:10px!important;padding:0;border:0}
  .ck-pc__price .ck-price__amt{font-size:24px}
  .ck-pc__price del{font-size:15px}
  .ck-pc__price .ck-price__gate{min-height:44px;margin:-6px 0 -8px;font-size:17px}
  .ck-pc__act,.ck-pc__done{grid-column:1 / -1;grid-row:2;margin-top:12px;min-height:48px}
  .ck-pc__act{justify-content:space-between}
  .ck-pc__more,.ck-pc a.added_to_cart{grid-column:1 / -1;grid-row:3;justify-self:center}
  .ck-pc:hover,.ck-pc:focus-within{transform:none}
  .ck-pc:active{transform:scale(.99)}
}
@media (prefers-reduced-motion:reduce){
  .ck-pc,.ck-pc__media::after{transition:none}
  .ck-pc:hover,.ck-pc:focus-within,.ck-pc:active{transform:none}
}
/* == end product card (owner: platform) == */

/* == 29b. Responsive rules of core components (core-chrome) == */
/* shared.css section 23, only the lines for the components in this file; page files port their own */
@media (max-width:1100px){
  .ck-grid>*{grid-column:1 / -1!important}
  .ck-cols--4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .t-display{font-size:36px;line-height:1.06}
  .t-h1{font-size:30px;line-height:1.1}
  .t-h2{font-size:30px;line-height:1.1;letter-spacing:-.02em}
  .t-h3{font-size:20px;line-height:1.25}
  .t-h4{font-size:18px}
  .t-lede{font-size:17px}
  .ck-shead{grid-template-columns:1fr}
  .ck-shead .ck-shead__act{justify-self:stretch}
  .ck-shead .ck-shead__act .btn{width:100%}
  .ck-datum{margin-top:20px}
  .ck-cols--2,.ck-cols--3{grid-template-columns:1fr}
  .ck-acc__q{font-size:16px;padding-left:18px}
  .ck-acc__a{padding:0 18px 20px}
  .ck-acc__item+.ck-acc__item .ck-acc__q[aria-expanded="true"]::before{left:18px}
}
@media (max-width:640px){
  .ck-bc ol>li{display:none}
  .ck-bc .ck-bc__back{display:inline-flex}
  .ck-toast{width:100%}
  .ck-toast--lang{width:auto}   /* left/right 12 px (section 24); width:100% pushed it 12 px off screen */
  .ck-drawer{border-radius:0}
}

/* == 30. Reduced motion + transparency (core-chrome) == */
@media (prefers-reduced-motion:reduce){
  :where(.ck-rd,.ck-chrome) *,:where(.ck-rd,.ck-chrome) *::before,:where(.ck-rd,.ck-chrome) *::after,
  .ck-chrome,.ck-chrome::before,.ck-chrome::after{transition:none!important;animation:none!important}
  .ck-drawer,.ck-search,.ck-toast,#ck-cart-toast:not(.is-in),.ck-toast--lang:not(.is-in){transform:none}
  .btn:active{transform:none}
}
