/* Shared with the homepage and every public route. Admin styles stay independent. */
:root{--sf-bg:#F6F7FA;--sf-card:#ffffffd9;--sf-ink:#1A2233;--sf-muted:#5B6577;--sf-line:#E4E8EF;--sf-accent:#C91F35}
html[data-theme=dark]{--sf-bg:#0B1830;--sf-card:#1c2533df;--sf-ink:#f4f6fc;--sf-muted:#afbbce;--sf-line:#344053;--sf-accent:#E26E7E}
html body{--store-ink:var(--sf-ink);--store-muted:var(--sf-muted);--store-line:var(--sf-line);--store-glass:var(--sf-card);--store-photo:linear-gradient(150deg,#c6d5e41a,#9898d51a);--ink:var(--sf-ink);--muted:var(--sf-muted);--line:var(--sf-line);--paper:var(--sf-bg);--ux-ink:var(--sf-ink);--ux-muted:var(--sf-muted);--ux-line:var(--sf-line);--ui-accent:var(--sf-accent);--ui-border:var(--sf-line);--ui-surface:var(--sf-card);--ui-muted:var(--sf-muted);font-family:system-ui,sans-serif!important;color:var(--sf-ink)!important;background:radial-gradient(ellipse at 90% 0,#e7d8f5,transparent 40%),radial-gradient(ellipse at 0 20%,#e3edf6,transparent 40%),var(--sf-bg)!important}
html[data-theme=dark] body,html[data-theme=dark] body:has(main[data-server-rendered]){background:radial-gradient(ellipse at 90% 0,#35264466,transparent 40%),radial-gradient(ellipse at 0 20%,#19314d66,transparent 40%),var(--sf-bg)!important}
/* Clip the 3–4 px white edge in the supplied bitmap; keep the original file intact. */
header>a>img,html body header.header.hdr2>.brand .official-logo{clip-path:inset(0 0 0 .7%);background:transparent!important;box-shadow:none!important;border:0!important;animation:none!important}
html body header.header.hdr2>.brand,html[data-theme=dark] body header.header.hdr2>.brand{background:transparent!important;box-shadow:none!important;border:0!important;padding:0!important}
html body header.header.hdr2>.brand::before,html body header.header.hdr2>.brand::after{content:none!important;display:none!important}
html:root body .server-page{color:var(--sf-ink)}
html:root body .server-page :is(.server-product-card,.ux-card,.qnl-card,.server-offer-card,.cat-sub,.mac-tile,.server-info-page,.server-toolbar,.server-filters,.qf,.pdp-summary,.pdp-options){background:var(--sf-card)!important;color:var(--sf-ink)!important;border:1px solid var(--sf-line)!important;border-radius:22px;box-shadow:none!important}
html:root body .server-page :is(.cat-hero,.cat-feature-band,.qnl-hero,.qnl-star){background:linear-gradient(130deg,#8cbdec15,#ffabc115),var(--sf-card)!important;color:var(--sf-ink)!important;border-color:var(--sf-line)!important;border-radius:26px;box-shadow:none!important}
html:root body .server-page :is(.ux-body,.qnl-body,.qnl-config,.qnl-detail,.qf-details){background:transparent!important;color:var(--sf-ink)!important}
html:root body .server-page :is(h1,h2,h3,h4,h1 a,h2 a,h3 a,.ux-name,.ux-price,.qnl-price,.server-offer-price,.price){color:var(--sf-ink)!important}
html:root body .server-page :is(.server-intro,.cat-lead,.breadcrumbs,.ux-brand,.ux-cfg,.ux-spec,.server-count,.store-card-stock){color:var(--sf-muted)!important}
html:root body .server-page :is(.ux-ph,.qnl-img,.mac-tile-img,.cat-sub-img){background:var(--store-photo)!important}
html:root body .server-page :is(.dark-button,.server-pagination a[aria-current=page]){background:var(--sf-accent)!important;color:#fff!important;border-color:transparent!important;border-radius:14px}
html:root body .server-page :is(input,select,textarea){color:var(--sf-ink)!important;background:var(--sf-card)!important;border-color:var(--sf-line)!important}
html body footer,html[data-theme=dark] body footer{background:transparent!important;color:var(--sf-muted)!important;border-color:var(--sf-line)!important}
/* A compact loupe reveals a real search form; no search fields are removed. */
.compact-search-toggle{display:grid;place-items:center;width:44px;height:44px;flex:none;padding:10px;border:1px solid var(--sf-line);border-radius:50%;background:var(--sf-card);color:var(--sf-ink);cursor:pointer}
.compact-search-toggle svg{width:21px;height:21px}
.tools.search-compact{position:relative;justify-content:flex-end}.tools.search-compact>.search{display:none;position:absolute;z-index:12;top:calc(100% + 8px);right:0;width:min(420px,100%);filter:drop-shadow(0 10px 20px #14213c18)}.tools.search-compact.search-is-open>.search{display:block}
html body .header.hdr2 .header-search-toggle{display:grid!important;place-items:center;width:44px;height:44px;padding:10px;border-radius:50%;color:var(--sf-ink);background:transparent}
html body .header.hdr2>.hdr-search{display:none!important;position:absolute!important;grid-area:auto!important;top:calc(100% + 8px);right:0;left:auto;width:min(420px,calc(100vw - 32px));height:48px;margin:0!important;background:var(--sf-card)!important;color:var(--sf-ink)!important;border:1px solid var(--sf-line)!important;border-radius:16px;backdrop-filter:blur(22px);z-index:95}
html body .header.hdr2.simple-search-open>.hdr-search{display:flex!important}
html body .header.hdr2 .hdr-search input{min-width:0;color:var(--sf-ink)!important;background:transparent!important}
@media(max-width:1023px){html body header.header.hdr2[class]{grid-template-areas:'brand end' 'cats cats'!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important}html body .header.hdr2 .header-end{grid-area:end;display:flex!important;align-items:center;gap:5px!important}}
@media(hover:hover) and (pointer:fine){.server-page :is(.server-product-card,.qnl-card,.server-offer-card){transition:transform .22s,box-shadow .22s}.server-page :is(.server-product-card,.qnl-card,.server-offer-card):hover{transform:translateY(-4px);box-shadow:0 15px 28px #16294712!important}}
@media(prefers-reduced-motion:reduce){.server-page :is(.server-product-card,.qnl-card,.server-offer-card){transition:none!important;transform:none!important}}

html:root body .server-info-page,html:root body .pdp-sticky{background:var(--sf-card)!important;color:var(--sf-ink)!important;border-color:var(--sf-line)!important;box-shadow:none!important}
html:root body .server-page :is(.pdp-promise,.pdp-highlights,.pdp-inbox,.pdp-price-explanation,.pdp-wholesale){background:var(--sf-card)!important;color:var(--sf-ink)!important;border-color:var(--sf-line)!important}
html:root body .pdp-sticky .dark-button{background:var(--sf-accent)!important;color:#fff!important;border-color:transparent!important}
.compact-search-toggle:focus-visible{outline:3px solid #5594dc;outline-offset:3px}

/* App chrome: contact and legal links stay reachable without a long footer. */
.app-info-trigger[hidden]{display:none!important}
html body dialog.site-info{width:min(540px,calc(100% - 28px));max-width:540px;max-height:80dvh;overflow:auto;padding:24px;border:1px solid var(--sf-line);border-radius:26px;background:var(--sf-bg)!important;color:var(--sf-ink)!important;box-sizing:border-box;overscroll-behavior:contain}
.site-info::backdrop{background:#111b2b99;backdrop-filter:blur(5px)}
.site-info-close{float:right;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--sf-line);border-radius:50%;background:var(--sf-card);color:var(--sf-ink);font:24px system-ui;cursor:pointer}
.site-info h2{font:650 22px/1.3 system-ui;letter-spacing:-.5px;margin:7px 48px 20px 0}
html body .site-info footer{display:flex!important;flex-direction:column;align-items:stretch;width:100%;max-width:100%;gap:8px;margin:0;padding:0!important;font:13px/1.6 system-ui;color:var(--sf-muted)!important}
html body .site-info footer :is(a,button){margin:0!important;padding:10px 12px!important;min-height:44px;border:1px solid var(--sf-line)!important;border-radius:12px;background:var(--sf-card)!important;color:var(--sf-ink)!important;text-align:left;font:inherit;letter-spacing:normal}
html body .site-info footer p,html body .site-info footer>span{margin:8px 0;font-size:12px;color:var(--sf-muted)!important}
html body .site-info footer .brand{align-self:flex-start;border:0!important;background:transparent!important;padding:0!important;box-shadow:none!important}
html body .site-info footer img{width:140px;height:auto;max-height:none;clip-path:inset(0 0 0 .7%)}
.dock .app-info-trigger,.mobile-nav .app-info-trigger{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-width:0;min-height:44px;border:0;background:transparent;color:var(--sf-ink);font:11px system-ui;cursor:pointer}
.dock:has(.app-info-trigger:not([hidden])) :is(a,button){min-width:0;padding:8px 5px;font-size:10px}.dock:has(.app-info-trigger:not([hidden])){gap:2px}.app-info-trigger b{display:block;height:23px;margin-bottom:3px}
.mobile-nav:has(.app-info-trigger:not([hidden])){grid-template-columns:repeat(5,minmax(0,1fr))!important}.mobile-nav .app-info-trigger span{font-size:10px}
.top-actions .app-info-trigger,.header-end .app-info-trigger{display:flex;align-items:center;gap:6px;border:1px solid var(--sf-line);border-radius:20px;background:var(--sf-card);color:var(--sf-ink);padding:8px 12px;min-height:44px;cursor:pointer}.top-actions .app-info-trigger b,.header-end .app-info-trigger b{margin:0}
.app-info-trigger:focus-visible,.site-info-close:focus-visible{outline:3px solid #5594dc;outline-offset:3px}
/* Gentle accents on internal catalogue pages, without tinting the photographs. */
html:root body .server-page :is(.cat-hero,.cat-feature-band,.qnl-hero){background:radial-gradient(ellipse at 90% 20%,#a6bde842,transparent 60%),radial-gradient(ellipse at 5% 90%,#cbb7e62e,transparent 60%),var(--sf-card)!important}
html:root body .server-page :is(.ux-card,.qnl-card):nth-child(3n+1) :is(.ux-ph,.qnl-img){background:radial-gradient(ellipse at 50% 85%,#a9bfff30,transparent 85%)!important}
html:root body .server-page :is(.ux-card,.qnl-card):nth-child(3n+2) :is(.ux-ph,.qnl-img){background:radial-gradient(ellipse at 50% 85%,#80d5cc30,transparent 85%)!important}
html:root body .server-page :is(.ux-card,.qnl-card):nth-child(3n) :is(.ux-ph,.qnl-img){background:radial-gradient(ellipse at 50% 85%,#d8b1db30,transparent 85%)!important}
/* One navigation component, shared by the static home and every server-rendered page. */
html body .store-header{position:relative;z-index:50;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;max-width:1180px;margin:0 auto;padding:24px;background:transparent;border:0;border-radius:0;box-shadow:none;color:var(--sf-ink);font:15px system-ui;isolation:auto}
html body .store-header>.store-brand{display:block;flex:none;line-height:0;text-decoration:none;border:0;background:transparent;padding:0}
html body .store-header>.store-brand>img{display:block;width:150px;height:50px;object-fit:contain;clip-path:inset(0 0 0 .7%);filter:none}
html body .store-header .top-actions{display:flex;align-items:center;gap:10px}
html body .store-header .icon{display:grid;place-items:center;box-sizing:border-box;flex:none;width:44px;height:44px;min-height:44px;padding:0;border:1px solid var(--sf-line);border-radius:50%;background:var(--sf-card);color:var(--sf-ink);box-shadow:none;font:20px system-ui;text-decoration:none;cursor:pointer}
html body .store-quick-links{display:flex;box-sizing:border-box;align-items:center;gap:8px;width:100%;max-width:1180px;margin:0 auto;padding:0 24px 16px;overflow:auto;scrollbar-width:none;background:transparent;font:12px system-ui}
html body .store-quick-links>a{display:block;flex:none;white-space:nowrap;margin:0;padding:10px 15px;min-height:36px;border:1px solid var(--sf-line);border-radius:22px;color:var(--sf-ink);font:12px/1.2 system-ui;text-decoration:none;box-shadow:none}
html body .store-quick-links>a:nth-child(1){background:linear-gradient(120deg,#dce7fcaa,var(--sf-card))}html body .store-quick-links>a:nth-child(2){background:linear-gradient(120deg,#dcefe8aa,var(--sf-card))}html body .store-quick-links>a:nth-child(3){background:linear-gradient(120deg,#f6e1e5aa,var(--sf-card))}html body .store-quick-links>a:nth-child(4){background:linear-gradient(120deg,#eae0f6aa,var(--sf-card))}
html[data-theme=dark] body .store-quick-links>a{background:linear-gradient(120deg,#7086b025,var(--sf-card))}
html body .store-quick-links>a[aria-current=page]{border-color:var(--sf-accent)}
html body .store-dock{box-sizing:border-box;position:fixed;inset:auto auto 16px 50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:space-around;gap:2px;width:min(440px,calc(100% - 28px));max-width:none;min-height:66px;margin:0;padding:9px 9px calc(9px + env(safe-area-inset-bottom,0px));border:1px solid var(--sf-line);border-radius:26px;background:var(--sf-card);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 12px 35px #14213c22;z-index:60;font:11px system-ui}
html body .store-dock>a,html body .store-dock>button{box-sizing:border-box;display:block;flex:1;min-width:0;min-height:44px;margin:0;padding:8px 5px;border:0;border-radius:18px;background:transparent;color:var(--sf-ink);font:11px/1.2 system-ui;text-align:center;text-decoration:none;cursor:pointer}
html body .store-dock b{display:block;height:23px;margin:0 0 3px;font:700 19px/23px system-ui;color:inherit}
html body .store-dock .active{background:var(--sf-accent);color:#fff}
html body .store-dock>.app-info-trigger{display:flex;font-size:10px}.store-dock .app-info-trigger svg{display:block;margin:auto}
html body .store-header .store-header-form{position:absolute;top:calc(100% - 12px);right:24px;z-index:80;display:flex;box-sizing:border-box;gap:6px;width:min(420px,calc(100vw - 32px));padding:8px;border:1px solid var(--sf-line);border-radius:18px;background:var(--sf-card);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 12px 28px #14213c22}
html body .store-header .store-header-form[hidden]{display:none}
html body .store-header-form input{box-sizing:border-box;min-width:0;flex:1;width:100%;height:44px;margin:0;padding:10px;border:0;border-radius:10px;background:transparent;color:var(--sf-ink);font:14px system-ui}
html body .store-header-form button{height:44px;padding:0 12px;border:0;border-radius:12px;background:var(--sf-accent);color:#fff;font:600 12px system-ui;cursor:pointer}
html body .store-header :is(a,button,input):focus-visible,html body .store-quick-links a:focus-visible,html body .store-dock :is(a,button):focus-visible{outline:3px solid #5594dc;outline-offset:3px}
@media(max-width:650px){html body .store-header{padding:15px 16px;gap:10px}html body .store-header>a>img{width:120px;height:42px}html body .store-header .top-actions{gap:6px}html body .store-quick-links{padding-inline:16px}html body .store-header .store-header-form{right:16px}html body .store-dock>a{font-size:10px}}
/* Predictive search shares the same compact panel on all screens. */
html body .store-header .store-header-form{flex-wrap:wrap;max-height:calc(100dvh - 110px);overflow-y:auto;overscroll-behavior:contain}
html body .store-header-form>input{width:0;flex:1 1 120px}
.store-suggestions{flex:0 0 100%;min-width:0}.store-suggestions[hidden]{display:none}
html body .store-suggestion-status{margin:8px 6px;font:12px/1.4 system-ui;color:var(--sf-muted)}
html body .store-suggestion{display:flex;align-items:center;gap:12px;padding:10px 7px;border:0;border-bottom:1px solid var(--sf-line);border-radius:10px;background:transparent;color:var(--sf-ink);text-decoration:none;text-align:left;min-height:76px}
html body .store-suggestion:hover,html body .store-suggestion[aria-selected=true]{background:#8ba8d51f}
.store-suggestion img{flex:none;object-fit:contain;width:52px;height:52px;border-radius:9px;background:#a9bfff14}
.store-suggestion>span{display:grid;gap:3px;min-width:0}.store-suggestion b{font:650 13px/1.3 system-ui;color:var(--sf-ink)}.store-suggestion small{font:11px/1.4 system-ui;color:var(--sf-muted);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.store-suggestion strong{font:650 12px/1.4 system-ui;color:var(--sf-ink)}
html body .store-suggestions-all{display:block;padding:13px 8px;color:var(--sf-accent);font:600 12px system-ui;text-decoration:none}.store-suggestions-all[hidden]{display:none!important}
/* Compact official mark; the loading cue is separate from the permanent menu icon. */
html body .store-header>a>img.store-brand-icon{width:44px!important;height:44px!important;border-radius:50%;object-fit:contain;clip-path:none!important;animation:none!important;opacity:1;transform:none}
html body footer img.store-brand-icon{width:44px!important;height:44px!important;max-height:44px!important;object-fit:contain;clip-path:none!important;border-radius:50%}
/* A separate loading surface follows actual readiness; CSS also clears it if JS fails. */
.store-page-loading{display:none;pointer-events:none}
html.store-is-loading .store-page-loading{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;margin:0;background:var(--sf-bg,#F6F7FA);opacity:1;animation:store-loading-safety .3s 5s forwards;transition:opacity .3s ease,visibility .3s ease}
.store-loading-emblem{position:relative;width:112px;height:112px;display:grid;place-items:center}
.store-loading-emblem img{display:block;width:96px;height:96px;object-fit:contain;border-radius:50%;clip-path:circle(49%);animation:store-loading-breathe 1.4s ease-in-out infinite;box-shadow:0 12px 36px #bb12352b}
.store-loading-emblem span{position:absolute;inset:-5px;border:2px solid transparent;border-top-color:#d41639;border-right-color:#d4163940;border-radius:50%;animation:store-loading-orbit 1.2s linear infinite}
html.store-is-loading .store-page-loading.is-leaving{opacity:0;visibility:hidden}
@keyframes store-loading-breathe{0%,100%{transform:scale(.92);opacity:.8}50%{transform:scale(1);opacity:1}}
@keyframes store-loading-orbit{to{transform:rotate(360deg)}}
@keyframes store-loading-safety{to{opacity:0;visibility:hidden}}
@media(prefers-reduced-motion:reduce){.store-loading-emblem img,.store-loading-emblem span{animation:none}html.store-is-loading .store-page-loading{transition:none}}

.store-policy-links{display:flex;justify-content:center;gap:18px;max-width:1180px;margin:0 auto 110px;padding:0 16px;font:12px/1.5 system-ui;color:var(--sf-muted)}.store-policy-links[hidden]{display:none}.store-policy-links a{padding:8px 0;color:inherit;text-decoration:underline;text-underline-offset:3px}

/* Direct contact is consistent across public routes; display settings live in Contact on mobile. */
html body .store-header .store-whatsapp{color:#18825a;background:linear-gradient(145deg,#c5e8d433,var(--sf-card))}
html[data-theme=dark] body .store-header .store-whatsapp{color:#7cddb0}
.site-info .site-theme-setting{display:block;width:100%;min-height:44px;padding:10px 14px;margin:0 0 16px;text-align:left;border:1px solid var(--sf-line);border-radius:12px;background:var(--sf-card);color:var(--sf-ink);font:13px system-ui}
.site-info .site-theme-setting:after{content:'  Changer le thème clair / sombre'}
@media(max-width:1023px){html body .store-header #theme{display:grid}html body .store-header .top-actions{gap:8px}}

/* Clear glass dock. Zoom changes only icon/label rendering, never the click targets. */
html body .store-dock{width:min(420px,calc(100% - 28px));gap:4px;overflow:visible;background:linear-gradient(135deg,#ffffff40,#ffffff12),#ffffff24;border:1px solid #ffffff85;box-shadow:inset 0 1px 0 #ffffff99,inset 0 -1px 0 #ffffff20,0 12px 32px #15203426;backdrop-filter:blur(14px) saturate(165%);-webkit-backdrop-filter:blur(14px) saturate(165%)}
html[data-theme=dark] body .store-dock{background:linear-gradient(135deg,#ffffff16,#ffffff03),#0c15276b;border-color:#ffffff32;box-shadow:inset 0 1px 0 #ffffff30,0 12px 32px #0005}
html body .store-dock>:is(a,button),html body .store-dock>:is(a,button):hover,html body .store-dock>:is(a,button):focus-visible{position:relative;z-index:var(--dock-depth,1);flex:1;min-width:0;transform:none;transition:transform .18s cubic-bezier(.2,.75,.3,1);will-change:auto}
html body .store-dock b{display:grid;place-items:center;height:25px;margin:0 0 5px;font-size:21px;line-height:25px;transform:translateY(var(--dock-lift,0px)) scale(var(--dock-icon-scale,1));transform-origin:center bottom;transition:transform .18s cubic-bezier(.2,.75,.3,1)}
html body .store-dock b svg{width:22px;height:22px;margin:0}
html body .store-dock>a>span,html body .store-dock>button>span{display:block;white-space:nowrap;font-size:10px;transform:translateY(var(--dock-lift,0px)) scale(var(--dock-label-scale,1));transform-origin:center;transition:transform .18s cubic-bezier(.2,.75,.3,1);text-shadow:0 1px 7px #fff9;pointer-events:none}
html[data-theme=dark] body .store-dock>:is(a,button)>span{text-shadow:0 1px 7px #000}
html body .store-dock .active{background:#C91F3517;color:var(--sf-accent);box-shadow:inset 0 1px 0 #ffffff45}
html[data-theme=dark] body .store-dock .active{background:#E26E7E1d}
html body .store-dock>.app-info-trigger{display:flex;flex-direction:column;justify-content:center;align-items:center}
html body .store-dock.is-magnifying{box-shadow:inset 0 1px 0 #ffffff80,0 16px 36px #15203432}
.site-contact-overview{display:grid;gap:8px}.site-contact-overview[hidden]{display:none}.site-contact-overview p{font:13px/1.6 system-ui;color:var(--sf-muted)}.site-contact-overview a{display:block;padding:12px 14px;border:1px solid var(--sf-line);border-radius:12px;color:var(--sf-ink);text-decoration:none;font:13px system-ui}.site-contact-overview a:first-of-type{background:var(--sf-accent);color:#fff;border-color:transparent}
@supports not (backdrop-filter:blur(1px)){html body .store-dock{background:var(--sf-card)}}
@media(prefers-reduced-motion:reduce){html body .store-dock>:is(a,button),html body .store-dock>:is(a,button):hover,html body .store-dock>:is(a,button):focus-visible{transform:none;transition:none}html body .store-dock b,html body .store-dock>:is(a,button)>span{transform:none!important;transition:none}}
@media(prefers-reduced-transparency:reduce){html body .store-dock,html[data-theme=dark] body .store-dock{background:var(--sf-bg)}}

/* ASAPH logo palette: signal red, deep red, white and graphite. */
:root{--brand-red:#C91F35;--brand-deep:#A9182C;--sf-accent:#174C89}
html[data-theme=dark]{--sf-accent:#E26E7E}
html body{--accent:var(--brand-red);background:radial-gradient(ellipse at 95% 0,#dce0e54a,transparent 45%),radial-gradient(ellipse at 0 25%,#e4e4e22e,transparent 45%),var(--sf-bg)!important}
html[data-theme=dark] body,html[data-theme=dark] body:has(main[data-server-rendered]){background:radial-gradient(ellipse at 95% 0,#34394340,transparent 45%),var(--sf-bg)!important}
html body :is(.hero-order,.primary),html body .store-header-form button,html body .site-contact-overview a:first-of-type,html:root body :is(.server-page,.pdp-sticky) .dark-button{background:var(--brand-red)!important;color:#fff!important;border-color:transparent!important}
html body .hero-actions .primary{background:transparent!important;color:var(--sf-ink)!important;border-color:var(--sf-line)!important}
html body .store-header .store-whatsapp{color:var(--sf-accent);background:var(--sf-card)}
html[data-theme=dark] body .store-header .store-whatsapp{color:var(--sf-accent)}
html body .store-quick-links>a:nth-child(n){background:linear-gradient(145deg,#e5e5e526,var(--sf-card));color:var(--sf-ink)}
html body .store-quick-links>a:hover,html body .store-quick-links>a[aria-current=page]{color:var(--sf-accent);border-color:var(--sf-accent)}
html body .store-header #theme{display:grid}
html body .store-header #theme[aria-pressed=true]{color:var(--sf-accent);border-color:#C91F3555}
html body .store-dock .active{background:transparent;color:var(--sf-accent);box-shadow:inset 0 -2px 0 var(--brand-red)}
html[data-theme=dark] body .store-dock .active{background:transparent}
html body .store-header :is(a,button,input):focus-visible,html body .store-dock :is(a,button):focus-visible{outline-color:var(--sf-accent)}
html body .ads-consent button:first-child,html body .pwa-promo button:not(.pwa-dismiss),html body .store-compare[aria-pressed=true],html body .store-compare-bar button:not(.store-compare-clear){background:var(--brand-red);border-color:var(--brand-red);color:#fff}

/* Touch scrubbing: keep vertical page scrolling available and follow the finger. */
html body .store-dock{touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none}
html body .store-dock::before{content:'';position:absolute;top:7px;bottom:7px;left:0;width:var(--dock-touch-width,0px);transform:translateX(var(--dock-touch-x,0px));border:1px solid #ffffff7a;border-radius:19px;background:linear-gradient(140deg,#ffffff65,#ffffff24);box-shadow:inset 0 1px 0 #ffffff80,0 3px 10px #00000012;opacity:0;pointer-events:none;transition:opacity .12s ease}
html body .store-dock.is-scrubbing::before{opacity:1;transition:opacity .08s linear}
html[data-theme=dark] body .store-dock::before{border-color:#ffffff40;background:linear-gradient(140deg,#ffffff2e,#ffffff0c)}
html body .store-dock :is(a,button){-webkit-tap-highlight-color:transparent}
/* During direct touch manipulation, follow each frame without an easing backlog. */
html body .store-dock.is-scrubbing b,html body .store-dock.is-scrubbing>:is(a,button)>span{transition:none}
html body .store-dock.is-scrubbing .active{box-shadow:none;color:var(--sf-ink)}
html body .store-dock.is-scrubbing .is-touch-target{color:var(--sf-accent)}
@media(prefers-reduced-motion:reduce){html body .store-dock::before{transition:none}}

/* Validated ASAPH palette, 30 October: red for offers/prices, blue for navigation. */
:root{--red-50:#FCEEF0;--red-100:#F8D5DA;--red-200:#EFA6B0;--red-300:#E26E7E;--red-400:#D64459;--red-500:#C91F35;--red-600:#A9182C;--red-700:#861324;--red-800:#5F0E1A;--blue-50:#EEF3FA;--blue-100:#D6E2F2;--blue-200:#A9C2E3;--blue-300:#6F98CC;--blue-400:#3E71B0;--blue-500:#174C89;--blue-600:#123D6F;--blue-700:#0F2E55;--night:#0B1830;--blue-900:#070F1F;--gold:#C9A45C;--whatsapp:#1FA855;--amber:#E39B2E;--brand-red:var(--red-500);--brand-deep:var(--red-600);--brand-blue:var(--blue-500);--sf-bg:#F6F7FA;--sf-ink:#1A2233;--sf-muted:#5B6577;--sf-line:#E4E8EF;--sf-accent:var(--blue-500);--price-ink:var(--red-500)}
html[data-theme=dark]{--sf-bg:var(--night);--sf-card:#14233beb;--sf-ink:#F6F7FA;--sf-muted:#A9B7CC;--sf-line:#2A3D58;--sf-accent:var(--blue-200);--price-ink:var(--red-300)}
html body{--bg:var(--sf-bg);--accent:var(--red-500);background:var(--sf-bg)!important}
html[data-theme=dark] body,html[data-theme=dark] body:has(main[data-server-rendered]){background:var(--sf-bg)!important}
html body :is(.primary),html body .store-header-form button,html body .site-contact-overview a:first-of-type,html:root body :is(.server-page,.pdp-sticky) .dark-button{background:var(--brand-blue)!important;color:#fff!important;border-color:var(--brand-blue)!important}
html body .hero-actions .primary{background:var(--brand-blue)!important;color:#fff!important;border-color:var(--brand-blue)!important}
html body .hero-order{background:var(--whatsapp)!important;color:var(--blue-900)!important;border-color:transparent!important}
html:root body :is(.server-page,.pdp-sticky) a.dark-button[href^="https://wa.me/"],html:root body :is(.pdp-wa,.ux-wa,.vehx-wa){background:var(--whatsapp)!important;color:var(--blue-900)!important;border-color:transparent!important}
html body .store-header .store-whatsapp,html[data-theme=dark] body .store-header .store-whatsapp{display:flex;align-items:center;justify-content:center;gap:8px;width:auto;padding:0 16px;border-radius:999px;background:#128244;color:#fff;border:1px solid #ffffff26;box-shadow:0 3px 10px #12824420;font-size:12px;font-weight:650;transition:background .18s,box-shadow .18s}
html body :is(.hero-order,.primary):hover{filter:brightness(.96)}
html body .ads-consent button:first-child,html body .pwa-promo button:not(.pwa-dismiss),html body .store-compare[aria-pressed=true],html body .store-compare-bar button:not(.store-compare-clear){background:var(--brand-blue);border-color:var(--brand-blue);color:#fff}
html body .store-dock .active{color:var(--sf-accent);box-shadow:inset 0 -2px 0 var(--brand-blue)}
html body .store-header #theme[aria-pressed=true]{color:var(--sf-accent);border-color:var(--blue-300)}
html body .store-quick-links>a:nth-child(n){color:var(--sf-accent);background:var(--sf-card);border-color:var(--sf-line)}
html body .store-quick-links>a:hover,html body .store-quick-links>a[aria-current=page]{border-color:var(--sf-accent);color:var(--sf-accent)}
html body .store-home :is(.price,.hero-product-price,.home-daily-card strong),html:root body .server-page :is(.ux-price,.qnl-price,.server-offer-price,.price){color:var(--price-ink)!important}
/* Full-width night strip, with no moving text on desktop. */
.store-night-bar{height:40px;background:var(--night);color:var(--blue-100);font:11px/1.4 system-ui;overflow:hidden}
.store-night-inner{max-width:1180px;height:100%;margin:auto;padding:0 24px;display:grid;grid-template-columns:1fr 1.2fr 1.35fr;align-items:center;gap:20px}
.store-night-message{display:block;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}
.store-night-message b{color:#fff;font-weight:650}.store-night-message em{color:var(--gold);font-style:normal;font-weight:700;margin-right:5px}
/* Header grid leaves a real slot for the current offer or the inline search. */
html body .store-header{display:grid;grid-template-columns:170px minmax(0,1fr) auto;grid-template-areas:'brand offer actions';align-items:center;gap:20px;padding:18px 24px 12px}
html body .store-header>.store-brand{grid-area:brand;max-width:170px}
html body .store-header .store-brand-logo{display:block;width:auto!important;height:46px!important;max-width:170px;border-radius:0!important;clip-path:inset(0 0 0 .7%)!important;object-fit:contain;box-shadow:none;animation:none!important;opacity:1!important;transform:none!important}
html body .store-header .top-actions{grid-area:actions;gap:7px}
html body .store-header .icon{width:40px;height:40px;min-height:40px}
html body .store-header .store-whatsapp{width:auto}
html body .store-header .store-header-form{top:calc(100% + 4px);right:24px;max-height:calc(100dvh - 180px)}
html body .store-header-form[data-inline-search=true]{grid-area:offer;position:relative;inset:auto;width:100%;max-width:500px;height:48px;max-height:none;overflow:visible;flex-wrap:nowrap;margin:0;padding:3px;box-shadow:none;background:var(--sf-card)}
html body .store-header-form[data-inline-search=true] input{height:40px;font-size:12px}
html body .store-header-form[data-inline-search=true] button{height:38px;min-height:38px;font-size:11px}
html body .store-header-form[data-inline-search=true] .store-suggestions{position:absolute;top:calc(100% + 8px);left:0;right:0;max-height:420px;overflow:auto;padding:8px;background:var(--sf-bg);border:1px solid var(--sf-line);border-radius:16px;box-shadow:0 12px 24px #0b183022}
html body .store-header-offer{grid-area:offer;display:grid;box-sizing:border-box;grid-template-columns:minmax(0,1fr) auto auto;grid-template-rows:auto auto;align-items:center;gap:5px 12px;min-width:0;min-height:66px;padding:10px 14px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--red-500),var(--red-700));color:#fff;text-decoration:none;line-height:1.35}
html body .store-header-offer[hidden]{display:none!important}
.store-offer-tag{grid-area:1/1;font-size:9px;letter-spacing:1px;font-weight:750;text-transform:uppercase}
.store-header-offer-copy{grid-area:2/1;display:flex;gap:10px;align-items:baseline;min-width:0}
.store-header-offer-copy b{font-size:11px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.store-header-offer-copy strong{flex:none;font-size:15px;font-weight:750;white-space:nowrap;color:#fff}
.store-offer-deadline{grid-area:1/2/3/3;padding-left:12px;border-left:1px solid #ffffff40;white-space:nowrap}
.store-offer-deadline small{display:block;font-size:8px;margin-bottom:4px;color:#fff}
.store-offer-deadline time{display:block;font:650 12px/1.2 ui-monospace,monospace;font-variant-numeric:tabular-nums;color:#fff}
.store-offer-see{grid-area:1/3/3/4;padding:7px 9px;border-radius:8px;background:#fff;color:var(--red-700);font-size:10px;font-weight:700;white-space:nowrap}
html body .store-quick-links{gap:6px;padding:0 24px 12px}
html body .store-quick-links>a{min-height:34px;padding:8px 12px;font-size:11px}
html body footer{background:var(--night)!important;color:var(--blue-100)!important;border-color:#243652!important;border-radius:24px;padding:24px 24px 100px}
html body footer :is(p,small,span){color:inherit!important}
html body footer .store-footer-logo{width:156px!important;height:auto!important;max-height:51px;clip-path:none!important;object-fit:contain;display:block;margin:0 0 14px}
html body footer .store-footer-brand{display:block;width:max-content;margin:0 0 16px}
html body .site-info footer{padding:16px!important;border-radius:18px}
html body .site-info footer :is(p,small,span){color:var(--blue-100)!important}
@media(max-width:1000px) and (min-width:761px){html body .store-header{grid-template-columns:140px minmax(0,1fr) auto;gap:12px;padding-inline:20px}.store-whatsapp-label{display:none}.store-offer-see{display:none}.store-header-offer-copy{display:grid;gap:2px}.store-header-offer-copy b{max-width:170px}}
@media(max-width:760px){
 .store-night-bar{height:34px;font-size:10px}.store-night-inner{display:block;padding:0 12px}.store-night-message{display:none;height:34px;line-height:34px;text-align:center}.store-night-message.is-current{display:block;animation:night-message-in .25s ease}
 html body .store-header{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'brand actions' 'offer offer';gap:8px 10px;padding:12px 12px 10px}
 html body .store-header .store-brand-logo{height:34px!important;max-width:108px!important}
 html body .store-header .top-actions{gap:5px}
 html body .store-header .icon{width:36px;height:40px;min-height:40px;font-size:18px}
 html body .store-header .icon svg{width:19px;height:19px}
 html body .store-header .store-whatsapp{width:40px;height:40px;padding:0;border-radius:50%}.store-whatsapp-label{display:none}
 html body .store-header-offer{min-height:55px;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:9px 11px;border-radius:12px}
 .store-header-offer-copy{gap:7px}.store-header-offer-copy b{font-size:10px}.store-header-offer-copy strong{font-size:13px}.store-offer-tag{font-size:8px}.store-offer-deadline{padding-left:10px}.store-offer-deadline small{font-size:7px}.store-offer-deadline time{font-size:11px}.store-offer-see{display:none}
 html body:has(.store-home) .store-quick-links,html body .store-quick-links{display:flex;padding:0 12px 10px;gap:5px}
 html body .store-quick-links>a{padding:7px 10px;min-height:32px;font-size:10px}
 html body .store-header .store-header-form{right:12px;width:calc(100vw - 24px)}
}
@keyframes night-message-in{from{opacity:.25}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.store-night-message.is-current{animation:none}}
.store-offer-deadline time{min-width:82px}
@media(max-width:760px){html body .store-header:not(.has-header-offer){grid-template-areas:'brand actions'}}

@media(hover:hover) and (pointer:fine){html body .store-header .store-whatsapp:hover{background:#0D6D38;box-shadow:0 5px 14px #12824430}}
@media(prefers-reduced-motion:reduce){html body .store-header .store-whatsapp{transition:none}}

/* Accessible product information in both themes; photographic assets stay intact. */
html:root body .server-page :is(.dark-button),html:root body .pdp-sticky .dark-button{background:#174C89!important;color:#fff!important}
html:root body :is(.server-page,.pdp-sticky) a.dark-button[href^="https://wa.me/"],html:root body :is(.pdp-wa,.ux-wa,.vehx-wa){background:#128244!important;color:#fff!important}
html:root body .pdp-wa b{color:inherit!important}
html[data-theme=dark]{--sf-ink:#F0F3FA;--sf-muted:#A9C2E3;--ux-navy:#6F98CC;--ux-navy-d:#A9C2E3}
html[data-theme=dark] body .server-page :is(.pdp-promise,.pdp-highlights,.pdp-price-explanation,.pdp-options){background:#14253F!important;color:#F0F3FA!important}
html[data-theme=dark] body .server-page :is(.pdp-promise b,.pdp-label,.pdp-chip span,.pdp-colors>p b){color:#F0F3FA!important}
html[data-theme=dark] body .server-page :is(.pdp-promise span,.pdp-saving,.pdp-colors>p,.pdp-colors small,.stk>span,.qn-real-gallery>p:not(.eyebrow)){color:#A9C2E3!important}
html[data-theme=dark] body .server-page :is(.pdp-saving strong,.pdp-chip b,.stk b){color:#6F98CC!important}
html[data-theme=dark] body .server-page .pdp-chip{background:#0F2E55!important;color:#F0F3FA!important;border-color:#6F98CC!important}
html[data-theme=dark] body .server-page .stk-big{background:#0B1830!important;border-color:#6F98CC!important}
html[data-theme=dark] body .server-page :is(.pdp-checked,.ux-checked){color:#88D6A6!important}
html[data-theme=dark] body .server-page :is(.cat-faq details,.qnl-card,.qnl-body,.qnl-config,.qf-txt,.qn-real-row figure){background:#0F2E55!important;color:#F0F3FA!important;border-color:#2A4D77!important}
html[data-theme=dark] body .server-page :is(.cat-faq summary,.qn-real-row figcaption b){color:#F0F3FA!important}
html[data-theme=dark] body .server-page :is(.cat-faq details p,.qnl-body small,.qnl-config small,.qf-txt small,.qn-real-row figcaption span){color:#A9C2E3!important}
.stock-label,.hero-stock{display:block;color:var(--sf-accent);font-size:11px;font-weight:650;line-height:1.4;margin:5px 0}
.stock-label[data-stock=in]{color:#12613B}html[data-theme=dark] .stock-label[data-stock=in]{color:#88D6A6}
.stock-filter{display:flex;align-items:center;gap:7px;font-size:12px;margin:0 0 14px;color:var(--sf-ink)}.stock-filter input{accent-color:var(--brand-blue);width:18px;height:18px}
html body .qnl-card.qn-deferred{display:none!important}.qn-load-more{display:block;margin:20px auto;min-height:44px}.qn-gallery-fold{margin:28px 0;border:1px solid var(--sf-line);border-radius:18px;padding:16px}.qn-gallery-fold>summary{cursor:pointer;font-weight:650}.qn-gallery-fold .qn-real-gallery{margin:16px 0 0}.ck-refresh-note{color:var(--sf-accent);font-size:13px;line-height:1.5}.ck-go:disabled{opacity:.6;cursor:wait}

/* Public sharing: separate from product links and business WhatsApp contact. */
.sf-share-page{display:flex;justify-content:flex-end;margin:8px 0 12px;padding-inline:clamp(12px,3vw,32px)}
.sf-share-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:9px 12px;border:1px solid var(--sf-line,#d5dfed);border-radius:14px;background:var(--sf-card,#fff);color:var(--sf-ink,#14253f);font:inherit;font-size:13px;font-weight:600;cursor:pointer;position:relative;z-index:3}
.sf-share-button svg{width:18px;height:18px;flex:none}.sf-share-button:focus-visible,.sf-share-dialog :focus-visible{outline:3px solid #6f98cc;outline-offset:3px}
.sf-share-card>.sf-share-button{margin:6px 12px 12px;width:calc(100% - 24px)}
.sf-share-dialog{box-sizing:border-box;width:min(440px,calc(100% - 32px));padding:22px;border:1px solid var(--sf-line,#d5dfed);border-radius:24px;background:var(--sf-card,#fff);color:var(--sf-ink,#14253f);box-shadow:0 24px 90px #0004}
.sf-share-dialog::backdrop{background:#07122580;backdrop-filter:blur(4px)}
.sf-share-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.sf-share-heading h2{font-size:22px;margin:0}.sf-share-heading button{width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:inherit;font-size:28px;cursor:pointer}
.sf-share-dialog p{line-height:1.5}.sf-share-options{display:grid;gap:9px;margin:18px 0}.sf-share-options :is(a,button){display:block;text-align:center;border:1px solid var(--sf-line,#d5dfed);padding:13px;border-radius:14px;color:inherit;background:transparent;text-decoration:none;font:inherit;cursor:pointer}.sf-share-options [data-share-whatsapp]{background:#128044;color:#fff;border-color:transparent}.sf-share-dialog label{display:block;font-size:12px;margin:14px 0 7px}.sf-share-dialog input{box-sizing:border-box;width:100%;padding:12px;border:1px solid var(--sf-line,#d5dfed);border-radius:10px;background:transparent;color:inherit;font-size:13px}.sf-share-dialog [role=status]{min-height:22px;font-size:13px;margin-bottom:0}
.sf-share-options [hidden]{display:none}.daily-offer .sf-share-button{margin-top:8px}.sf-share-dialog{background:#fff}html[data-theme=dark] .sf-share-dialog{background:#14253f}
/* Contact and sharing are two independent actions, always visible together. */
html body .sf-card-actions{display:flex;gap:6px;align-items:stretch;position:relative;z-index:4;margin:8px 10px 12px;min-width:0}
html body .sf-card-actions>.sf-share-button,html body .sf-card-actions>.sf-contact-button{flex:1 1 0;box-sizing:border-box;width:auto!important;min-width:0;min-height:44px;margin:0!important;padding:9px 5px!important;border-radius:12px!important;font-size:12px!important;line-height:1.25;font-weight:650;white-space:normal!important;text-align:center;display:flex!important;align-items:center;justify-content:center;gap:4px;text-decoration:none}
html body .sf-card-actions>.sf-contact-button{background:#128244!important;color:#fff!important;border:1px solid transparent;box-shadow:none!important}
html body .sf-card-actions>.sf-share-button{background:var(--sf-card);color:var(--sf-ink)}
html body .sf-pdp-actions{margin:0;width:100%;flex-basis:100%;max-width:420px}
html body .sf-flash-actions{flex-wrap:wrap}html body .sf-flash-actions .sf-share-button{width:100%;font-size:12px;min-height:40px}
html body .sf-card-actions{grid-column:1/-1}html body .sf-card-actions>a::after{content:none!important}
.sf-contact-button svg{width:20px;height:20px;flex:none}
@media(max-width:760px){
 html body .sf-card-actions{justify-content:flex-end;gap:10px}
 html body .sf-card-actions>.sf-contact-button,html body .sf-card-actions>.sf-share-button{flex:0 0 44px;width:44px!important;height:44px;min-width:44px;padding:0!important}
 html body .sf-card-actions>:is(.sf-contact-button,.sf-share-button)>span,html body .sf-flash-actions>.sf-share-button>span{display:none}
 html body .sf-card-actions svg,html body .sf-flash-actions>.sf-share-button svg{width:22px;height:22px}
 html body .sf-flash-actions>.sf-share-button{flex:0 0 44px;width:44px!important;padding:0}
}
