/* MobiSaz storefront — shared base ported from design/storefront-prototype/assets/base.css (approved).
   Tokens --pf-* are overridden per template package (templates/<slug>/tokens.css). Logical properties only;
   RTL is the default. Port changes (doc 18 E4): three font files (D26: 400/700/800), no text below 12px,
   320px header, card-title target >= 24px, real images instead of the CSS phone art, demo bar removed. */

@font-face{font-family:Vazirmatn;font-weight:400;font-display:swap;src:url(fonts/Vazirmatn-Regular.woff2) format("woff2")}
@font-face{font-family:Vazirmatn;font-weight:700;font-display:swap;src:url(fonts/Vazirmatn-Bold.woff2) format("woff2")}
@font-face{font-family:Vazirmatn;font-weight:800;font-display:swap;src:url(fonts/Vazirmatn-ExtraBold.woff2) format("woff2")}

:root{
  --pf-primary:#1D4ED8;
  --pf-primary-dark:color-mix(in srgb,var(--pf-primary) 82%,#000);
  --pf-primary-soft:color-mix(in srgb,var(--pf-primary) 10%,var(--pf-surface));
  --pf-primary-mid:color-mix(in srgb,var(--pf-primary) 22%,var(--pf-surface));
  --pf-primary-ink:var(--pf-primary);
  --pf-on-primary:#fff;
  --pf-ink:#0F172A;--pf-ink-2:#334155;--pf-muted:#475569;
  --pf-line:#E2E8F0;--pf-line-strong:#CBD5E1;
  --pf-bg:#F4F6FA;--pf-surface:#fff;--pf-surface-2:#F1F5F9;--pf-dark:#0F1E3D;
  --pf-radius:16px;--pf-radius-sm:10px;--pf-radius-lg:22px;--pf-btn-radius:12px;
  --pf-shadow:0 1px 2px rgba(15,23,42,.06);--pf-shadow-lg:0 18px 40px -20px rgba(15,23,42,.35);
  --pf-font:Vazirmatn,Tahoma,sans-serif;--pf-font-scale:1;
  --pf-focus:#F59E0B;
  --pf-success:#15803D;--pf-success-soft:#DCFCE7;
  --pf-warn:#92400E;--pf-warn-soft:#FEF3C7;--pf-warn-line:#FCD34D;
  --pf-danger:#DC2626;--pf-danger-ink:#B91C1C;--pf-danger-soft:#FEE2E2;
  --pf-info:#1E40AF;--pf-info-soft:#DBEAFE;
  --pf-inst:#6D28D9;--pf-inst-ink:#4C1D95;--pf-inst-soft:#F3EEFF;
  --pf-gap:32px;--pf-wrap:1280px;
  color-scheme:light;
}
:root[data-mode="dark"]{
  --pf-ink:#F1F5F9;--pf-ink-2:#CBD5E1;--pf-muted:#A3AEC0;
  --pf-line:#273244;--pf-line-strong:#3A475C;
  --pf-bg:#0B1120;--pf-surface:#121A2B;--pf-surface-2:#1A2436;--pf-dark:#060B16;
  --pf-primary-soft:color-mix(in srgb,var(--pf-primary) 22%,var(--pf-surface));
  --pf-primary-mid:color-mix(in srgb,var(--pf-primary) 35%,var(--pf-surface));
  --pf-primary-ink:color-mix(in srgb,var(--pf-primary) 45%,#fff);
  --pf-success:#4ADE80;--pf-success-soft:#12301F;
  --pf-warn:#FCD34D;--pf-warn-soft:#2D2210;--pf-warn-line:#6B5212;
  --pf-danger-ink:#FCA5A5;--pf-danger-soft:#3A1616;
  --pf-info:#93C5FD;--pf-info-soft:#14274A;
  --pf-inst:#C4B5FD;--pf-inst-ink:#DDD6FE;--pf-inst-soft:#221A3D;
  --pf-shadow:0 1px 2px rgba(0,0,0,.4);--pf-shadow-lg:0 18px 40px -20px rgba(0,0,0,.8);
  color-scheme:dark;
}

/* ---------- base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:120px}
body{margin:0;background:var(--pf-bg);color:var(--pf-ink);font-family:var(--pf-font);font-size:calc(15px*var(--pf-font-scale));line-height:1.75;text-rendering:optimizeLegibility}
a{color:var(--pf-primary-ink);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:4px}
h1,h2,h3,p{margin:0}
h1{font-size:26px;font-weight:900;line-height:1.55}
h2{font-size:21px;font-weight:800;line-height:1.6}
h3{font-size:16px;font-weight:700}
ul,ol{margin:0;padding:0}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
svg{flex:none}
:focus-visible{outline:3px solid var(--pf-focus);outline-offset:2px;border-radius:4px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;inset-inline-start:12px;top:-60px;z-index:100;background:var(--pf-ink);color:var(--pf-surface);padding:10px 16px;border-radius:10px}
.skip:focus{top:12px}
.wrap{width:100%;max-width:var(--pf-wrap);margin-inline:auto;padding-inline:24px}
main{padding-block:20px 56px}
main>*+*{margin-top:24px}
main.stack>*+*{margin-top:var(--pf-gap)}
.muted{color:var(--pf-muted)}
.fine{font-size:12px;color:var(--pf-muted);display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.lead{font-size:17px;line-height:2;color:var(--pf-ink-2)}
.eyebrow{font-size:14px;font-weight:700;color:var(--pf-primary-ink)}
.pill{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;font-size:13px;font-weight:700;color:var(--pf-primary-ink);background:var(--pf-surface);padding:4px 12px;border-radius:999px}
.display{font-size:52px;font-weight:900;line-height:1.35;letter-spacing:-.5px}
.link-u{font-weight:700;color:var(--pf-ink);text-decoration:underline;text-underline-offset:6px}
.sub{font-size:14px;font-weight:700;color:var(--pf-ink-2)}
.pdp-info .sub,.pdp-cols .sub{margin-top:6px;margin-bottom:10px}
.num{font-weight:700;white-space:nowrap}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:var(--pf-btn-radius);font-weight:700;font-size:15px;border:1px solid transparent;text-decoration:none!important;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}
.btn-primary{background:var(--pf-primary);color:var(--pf-on-primary)}
.btn-primary:hover{background:var(--pf-primary-dark);color:var(--pf-on-primary)}
.btn-outline{background:var(--pf-surface);border-color:var(--pf-line-strong);color:var(--pf-ink)}
.btn-outline:hover{border-color:var(--pf-primary);color:var(--pf-primary-ink)}
.btn-ghost{background:transparent;color:var(--pf-ink-2)}
.btn-ghost:hover{background:var(--pf-surface-2);color:var(--pf-ink)}
.btn-ink{background:var(--pf-ink);color:var(--pf-surface)}
.btn-ink:hover{color:var(--pf-surface);opacity:.9}
.btn-onaccent{color:var(--pf-on-primary);border-color:color-mix(in srgb,var(--pf-on-primary) 60%,transparent);background:transparent}
.btn-onaccent:hover{color:var(--pf-on-primary);background:color-mix(in srgb,var(--pf-on-primary) 12%,transparent)}
.btn-bright{background:color-mix(in srgb,var(--pf-primary) 40%,#fff);color:#18181B}
.btn-bright:hover{color:#18181B}
.btn-lg{min-height:52px;font-size:16px}
.btn-sm{min-height:40px;padding:0 14px;font-size:13px}
.btn-block{width:100%}
.btn[disabled]{opacity:.55;cursor:not-allowed}
.icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--pf-radius-sm);background:transparent;border:0;color:var(--pf-ink);list-style:none;cursor:pointer;flex:none}
.icon-btn:hover{background:var(--pf-surface-2)}
.icon-btn.btn-outline{border:1px solid var(--pf-line-strong);width:52px;height:52px}
.icon-btn[aria-pressed="true"]{color:var(--pf-danger)}
.icon-btn[aria-pressed="true"] svg{fill:currentColor}
.round-btn{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:0;background:var(--pf-ink);color:var(--pf-surface)}
.link-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:0;padding:0;min-height:44px;color:var(--pf-ink-2);font-size:13px;font-weight:600;cursor:pointer}
.link-btn:hover{color:var(--pf-primary-ink)}
.link-btn.danger{color:var(--pf-danger-ink)}

/* ---------- header ---------- */
.topbar{background:var(--pf-dark);color:#E2E8F0;font-size:13px}
.topbar .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;padding-block:8px}
.topbar nav{display:flex;flex-wrap:wrap;gap:20px}
.topbar a{color:#E2E8F0}
.announce{background:#1C1917;color:#F5F5F4;font-size:13px;text-align:center;padding:9px 16px}
.announce a{color:#fff;font-weight:700;text-decoration:underline}
.hdr{background:var(--pf-surface);border-bottom:1px solid var(--pf-line);position:sticky;top:0;z-index:30}
.hdr-row{display:flex;align-items:center;gap:14px 26px;padding-block:14px}
.hdr-actions{display:flex;align-items:center;gap:6px}
.logo{display:flex;align-items:center;gap:10px;color:var(--pf-ink);text-decoration:none!important;flex:none}
.logo-mark{width:42px;height:42px;border-radius:12px;background:var(--pf-primary);color:var(--pf-on-primary);display:grid;place-items:center;font-weight:900;font-size:18px}
.logo-text{display:flex;flex-direction:column;line-height:1.35}
.logo-text strong{font-size:20px;font-weight:900}
.logo-text small{font-size:12px;color:var(--pf-muted)}
.search{flex:1 1 380px;min-width:0;display:flex;align-items:center;gap:8px;background:var(--pf-surface-2);border:1px solid var(--pf-line);border-radius:12px;height:48px;padding-inline:14px 5px}
.search:focus-within{border-color:var(--pf-primary);box-shadow:0 0 0 3px var(--pf-primary-soft)}
.search>.ic{color:var(--pf-muted)}
.search input{flex:1;min-width:24px;width:0;border:0;background:transparent;outline:0;font-size:14px;color:var(--pf-ink);height:100%}
.search input::placeholder{color:var(--pf-muted)}
/* Lux keeps its search among the header actions: it must not be squeezed below a usable target (WCAG 2.5.8) */
.hdr-lux .hdr-actions .search{flex:0 1 240px;min-width:180px}
.search-btn{display:inline-flex;align-items:center;gap:6px;height:38px;min-width:38px;padding:0 10px;border:0;border-radius:9px;background:var(--pf-primary);color:var(--pf-on-primary);font-weight:700;font-size:14px;justify-content:center}
.search-big{max-width:640px;background:var(--pf-surface);height:52px}
.cart-link,.account-link{position:relative;display:inline-flex;align-items:center;gap:8px;min-width:44px;height:46px;padding:0 11px;border-radius:12px;color:var(--pf-ink);text-decoration:none!important;font-weight:700;font-size:14px;justify-content:center}
.cart-link:hover,.account-link:hover{background:var(--pf-surface-2)}
.cart-link.with-text{background:var(--pf-surface-2)}
.count{position:absolute;top:2px;inset-inline-end:2px;min-width:19px;height:19px;border-radius:10px;background:var(--pf-danger);color:#fff;font-size:12px;display:grid;place-items:center;border:2px solid var(--pf-surface);line-height:1}
.with-text .count{position:static;border:0;background:var(--pf-primary);color:var(--pf-on-primary);min-width:22px;height:22px}
.login-btn{height:46px}
.catnav{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:2px 24px;font-size:14px;min-height:48px}
.catnav>a{color:var(--pf-ink-2);padding-block:12px}
.catnav>a.hot{color:var(--pf-danger-ink);font-weight:700}
.mega>summary{display:flex;align-items:center;gap:8px;font-weight:800;padding-block:12px;cursor:pointer;list-style:none;border-bottom:3px solid var(--pf-primary)}
details>summary::-webkit-details-marker{display:none}
details>summary{list-style:none}
.mega-panel{position:absolute;inset-inline:0;top:100%;z-index:40;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:0 0 18px 18px;box-shadow:var(--pf-shadow-lg);padding:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 260px;gap:24px}
.mega-panel h3{font-size:14px;color:var(--pf-muted);margin-bottom:10px}
.mega-panel ul{list-style:none;display:flex;flex-direction:column;gap:4px}
.mega-panel a{display:flex;align-items:center;gap:8px;color:var(--pf-ink);padding:6px 0}
.mega-promo{border-radius:16px;background:var(--pf-primary-soft);padding:20px;display:flex;flex-direction:column;gap:6px;color:var(--pf-ink)!important}
.mega-promo strong{font-size:18px}
.drawer{display:none}
.drawer>summary{list-style:none}
.drawer-panel{position:fixed;inset-block:0;inset-inline-start:0;width:min(320px,86vw);background:var(--pf-surface);z-index:60;padding:20px 16px;overflow:auto;box-shadow:var(--pf-shadow-lg)}
.drawer[open]>summary::after{content:"";position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:55}
.drawer-title{font-weight:900;font-size:18px;padding:4px 8px 14px;border-bottom:1px solid var(--pf-line);margin-bottom:8px}
.drawer-panel ul{list-style:none}
.drawer-panel a{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 8px;color:var(--pf-ink);border-radius:10px}
.drawer-panel a:hover{background:var(--pf-surface-2);text-decoration:none}
.hdr-sub{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 20px}
.city{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--pf-ink-2)}
.hdr-min .hdr-row{justify-content:space-between}
.secure{display:inline-flex;align-items:center;gap:6px;color:var(--pf-success);font-weight:700;font-size:14px}

/* ---------- footer ---------- */
.ftr{margin-top:48px;background:var(--pf-surface);border-top:1px solid var(--pf-line);color:var(--pf-ink-2)}
.ftr-grid{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr)) minmax(0,1.1fr);gap:28px;padding-block:40px 24px}
.ftr-about{display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:2}
.ftr-name{font-size:19px;font-weight:900;color:var(--pf-ink)}
.ftr h2{font-size:15px;color:var(--pf-ink);margin-bottom:10px}
.ftr ul{list-style:none;display:flex;flex-direction:column;gap:6px;font-size:14px}
.ftr a{color:var(--pf-ink-2)}
.ftr-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding-block:16px 24px;border-top:1px solid var(--pf-line);font-size:13px;color:var(--pf-muted)}
/* A link inside a line of text is told apart by more than colour (WCAG 1.4.1, Lighthouse link-in-text-block). */
.ftr-bottom a{text-decoration:underline;text-underline-offset:2px}
.trust-badges{display:flex;gap:10px;flex-wrap:wrap}
.trust-badge{width:92px;height:92px;border:1px dashed var(--pf-line-strong);border-radius:14px;display:grid;place-items:center;text-align:center;font-size:12px;line-height:1.7;color:var(--pf-muted)!important;background:var(--pf-surface);padding:6px}
.ftr-dark{background:#18181B;color:#D4D4D8;border-top:0}
.ftr-dark .ftr-name,.ftr-dark h2{color:#fff}
.ftr-dark a{color:#E4E4E7}
.ftr-dark .ftr-bottom{border-color:#3F3F46;color:#D4D4D8}
.ftr-dark .trust-badge{border-style:solid;border-color:#fff;color:#3F3F46!important;background:#fff}
.ftr-soft{background:var(--pf-surface-2);border-top:0}

/* ---------- bottom nav (mobile) ---------- */
.bnav{display:none}

.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:80;background:var(--pf-ink);color:var(--pf-surface);padding:12px 18px;border-radius:12px;font-weight:600;box-shadow:var(--pf-shadow-lg)}
.toast[hidden]{display:none}

/* ---------- breadcrumbs, headings ---------- */
.crumbs{font-size:13px;padding-block:14px 0}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.crumbs li+li::before{content:"/";margin-inline-end:6px;color:var(--pf-line-strong)}
.crumbs a{color:var(--pf-muted)}
.crumbs [aria-current]{color:var(--pf-ink);font-weight:600}
.sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 12px;margin-bottom:16px}
.more{display:inline-flex;align-items:center;gap:4px;font-size:14px;font-weight:700}
.page-head{display:flex;flex-direction:column;gap:10px}
.page-head h1 small{font-size:15px;font-weight:600}
.panel{background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:18px;padding:22px 24px;display:flex;flex-direction:column;gap:14px}
.panel-lux{border:1px solid var(--pf-line);border-radius:28px;padding:36px;display:flex;flex-direction:column;gap:18px;background:var(--pf-surface)}
.split-2{display:flex;flex-wrap:wrap;gap:20px}
.split-2>*{flex:1 1 440px;min-width:0}
.chip-links{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.chip-links a{display:inline-flex;align-items:center;min-height:42px;border:1px solid var(--pf-line-strong);border-radius:10px;padding:0 14px;background:var(--pf-surface);color:var(--pf-ink);font-size:14px}
.chip-links a:hover,.chip-links a[aria-current]{border-color:var(--pf-primary);color:var(--pf-primary-ink);text-decoration:none}
.use-grid{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.use-grid a{display:flex;flex-direction:column;gap:4px;border-radius:14px;padding:16px;background:var(--pf-primary-soft);color:var(--pf-ink)}
.use-grid small{font-size:12px;color:var(--pf-muted)}

/* ---------- tints, phone art ---------- */
.tint-1{--tb:#DBEAFE;--tf:#1E40AF}.tint-2{--tb:#E0E7FF;--tf:#3730A3}.tint-3{--tb:#DCFCE7;--tf:#166534}.tint-4{--tb:#FCE7F3;--tf:#9D174D}
.tint-5{--tb:#FEF9C3;--tf:#854D0E}.tint-6{--tb:#E2E8F0;--tf:#334155}.tint-7{--tb:#D1FAE5;--tf:#065F46}.tint-8{--tb:#FFEDD5;--tf:#9A3412}
[class*="tint-"]{background:var(--tb);color:var(--tf)}
[data-mode="dark"] [class*="tint-"]{background:color-mix(in srgb,var(--tf) 30%,var(--pf-surface));color:color-mix(in srgb,var(--tb) 85%,#fff)}
/* real product images (the prototype drew phones with CSS); fixed boxes keep CLS at zero */
.card-media img,.gallery-slide img,.ci-media img,.cat-ic img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.card-media picture,.gallery-slide picture{display:contents}
.card-media img{max-height:180px}
.gallery-slide img{max-height:420px}
.media-ph{display:grid;place-items:center;width:100%;height:100%;color:var(--pf-line-strong)}
.gallery-thumbs img{width:56px;height:56px;object-fit:contain;border-radius:8px}
.slide-art{display:grid;place-items:center}
.slide-art img{max-width:100%;max-height:100%;object-fit:contain}
.logo-img img{display:block;max-height:42px;width:auto}
.cat-ic img{width:40px;height:40px}
.price-none{font-size:14px;font-weight:700;color:var(--pf-muted)}
.pdp-desc{color:var(--pf-ink-2);line-height:2}
.pdp-form{display:block}
[hidden]{display:none!important}

/* ---------- swatches ---------- */
.swatches{display:inline-flex;gap:6px;align-items:center}
.sw{display:inline-block;width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.2);vertical-align:middle}
.sw-black{background:#1F2937}.sw-silver{background:#D1D5DB}.sw-blue{background:#3B82F6}.sw-gray{background:#6B7280}.sw-olive{background:#708238}.sw-pink{background:#F9A8D4}
.sw-lavender{background:#C4B5FD}.sw-white{background:#F9FAFB}.sw-orange{background:#EA7A2E}.sw-navy{background:#1E3A5F}.sw-yellow{background:#EAB308}.sw-sky{background:#7DD3FC}

/* ---------- badges, chips, price ---------- */
.badges{display:flex;flex-wrap:wrap;gap:6px;min-height:24px}
.badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;padding:3px 8px;border-radius:6px;line-height:1.5;white-space:nowrap}
.badge-off{background:var(--pf-danger);color:#fff;border-radius:999px;font-weight:800}
.badge-ship,.badge-ok,.badge-delivered{background:var(--pf-success-soft);color:var(--pf-success)}
.badge-reg,.badge-info,.badge-shipping,.badge-answered{background:var(--pf-info-soft);color:var(--pf-info)}
.badge-new{background:var(--pf-primary-soft);color:var(--pf-primary-ink)}
.badge-plain{background:var(--pf-surface);color:var(--pf-ink)}
.badge-returned,.badge-closed{background:var(--pf-surface-2);color:var(--pf-muted)}
.chips{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.chips li{font-size:12px;background:var(--pf-surface-2);color:var(--pf-ink-2);padding:2px 8px;border-radius:6px}
.price{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.price-old{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--pf-muted)}
.price-now{font-size:18px;font-weight:800;white-space:nowrap}
.price-now small{font-size:12px;font-weight:500;color:var(--pf-muted)}
.price-inline{flex-direction:row-reverse;justify-content:flex-end;align-items:baseline;gap:10px}
.price-lg .price-now{font-size:28px}
.price-sm .price-now{font-size:16px}
.stock{font-size:12px;font-weight:700}
.stock-low{color:var(--pf-danger-ink);font-weight:700;font-size:13px}
.stock-out{color:var(--pf-muted);font-weight:700}
.stock-ok{color:var(--pf-success);font-weight:700}
.inst{font-size:12px;font-weight:600;color:var(--pf-inst)}

/* ---------- product cards ---------- */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(228px,1fr));gap:16px}
.pgrid-4{grid-template-columns:repeat(auto-fill,minmax(max(220px,calc((100% - 48px)/4)),1fr))}
.pgrid-3{grid-template-columns:repeat(auto-fill,minmax(max(220px,calc((100% - 32px)/3)),1fr))}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,230px);gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;overscroll-behavior-x:contain}
.rail>*{scroll-snap-align:start}
.card{position:relative;display:flex;flex-direction:column;gap:10px;min-width:0}
.card-title{font-size:14px;font-weight:600;line-height:1.85;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(2*1.85em)}
.card-title a{color:var(--pf-ink)}
.card-media{position:relative;display:grid;place-items:center;border-radius:12px;background:var(--pf-surface-2);height:210px}
.card-media>a{display:grid;place-items:center;width:100%;height:100%;text-decoration:none}
.card-flag{position:absolute;top:10px;inset-inline-start:10px;z-index:1}
.wish{position:absolute;top:4px;inset-inline-end:4px;z-index:1;color:var(--pf-muted)}
.card.is-out .card-media>a,.card.is-out .card-media>.ph{opacity:.5;filter:grayscale(.7)}
.card-showcase{background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:var(--pf-radius);padding:14px;transition:box-shadow .2s,transform .2s}
.card-showcase:hover{box-shadow:var(--pf-shadow-lg);transform:translateY(-2px)}
.card-brand{font-size:12px;font-weight:600;color:var(--pf-muted)}
.card-showcase .price{margin-top:auto}
.card-showcase .inst{border-top:1px dashed var(--pf-line);padding-top:8px}
.card-compact{background:var(--pf-surface);border-radius:var(--pf-radius);padding:14px;box-shadow:0 1px 0 var(--pf-line)}
.card-compact .card-media{height:180px}
.card-colors{position:absolute;top:150px;inset-inline-start:24px;font-size:12px;font-weight:600;color:var(--pf-ink-2);background:var(--pf-surface);border-radius:6px;padding:1px 8px}
.card-compact .chips li{background:transparent;border:1px solid var(--pf-line);border-radius:999px}
.card-foot{display:flex;flex-direction:column;align-items:stretch;gap:4px;margin-top:auto}
.card-foot .price{align-items:flex-end}
.ship{font-size:12px;color:var(--pf-success);font-weight:700}
.card-editorial{gap:12px}
.card-editorial .card-media{height:300px;border-radius:22px}
.card-editorial .round-btn{position:absolute;bottom:14px;inset-inline-end:14px}
.card-editorial .card-title{font-size:17px;font-weight:700;min-height:0;-webkit-line-clamp:1}
.card-spec{font-size:13px;color:var(--pf-muted)}
.card-editorial .price-now{font-size:18px}
.card-editorial .inst{font-size:13px}

/* ---------- home sections ---------- */
.usp{list-style:none}
.usp li{display:flex;align-items:center;gap:14px}
.usp li>span:last-child{display:flex;flex-direction:column}
.usp strong{font-size:15px}
.usp small{font-size:13px;color:var(--pf-muted)}
.usp-ic{width:46px;height:46px;flex:none;border-radius:12px;background:var(--pf-primary-soft);color:var(--pf-primary-ink);display:grid;place-items:center}
.usp-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:16px}
.usp-strip li{padding:18px 22px}
.usp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.usp-cards li{flex-direction:column;align-items:flex-start;border-radius:22px;background:var(--pf-surface-2);padding:26px;gap:12px}
.usp-cards .usp-ic{background:var(--pf-surface)}
.cat-tiles{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:14px}
.cat-tiles a{display:flex;flex-direction:column;align-items:center;gap:12px;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:16px;padding:20px 10px 16px;color:var(--pf-ink);font-size:14px;font-weight:600;text-align:center}
.cat-tiles a:hover{border-color:var(--pf-primary);text-decoration:none}
.cat-ic{width:64px;height:64px;border-radius:50%;display:grid;place-items:center}
.brands-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.brands-row h2{font-size:18px;margin-inline-end:8px}
.brand-chips{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.brand-chips a{display:inline-flex;align-items:center;min-height:44px;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:999px;padding:0 22px;font-weight:700;color:var(--pf-ink)}
.hero-split{display:flex;flex-wrap:wrap;gap:20px}
.hero-main{flex:2 1 600px;min-width:0}
.hero-side{flex:1 1 300px;display:flex;flex-direction:column;gap:20px}
.promo{border-radius:20px;padding:24px 26px;display:flex;flex-direction:column;justify-content:space-between;gap:10px;color:var(--pf-ink)!important;text-decoration:none!important;min-height:150px}
.promo strong{font-size:20px;font-weight:800;line-height:1.6}
.promo-k{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:14px}
.promo-more{font-size:14px;font-weight:700}
.promo-inst{flex:1;background:var(--pf-inst-soft)}.promo-inst .promo-k,.promo-inst .promo-more{color:var(--pf-inst)}
.promo-acc{flex:1;background:#FFF4E5}.promo-acc .promo-k,.promo-acc .promo-more{color:#9A3412}
.promo-1{background:#FEF3C7}.promo-1 .promo-k{color:#92400E}
.promo-2{background:#DCFCE7}.promo-2 .promo-k{color:#166534}
.promo-3{background:#E0E7FF}.promo-3 .promo-k{color:#3730A3}
.promo-4{background:#FCE7F3}.promo-4 .promo-k{color:#9D174D}
[data-mode="dark"] .promo-acc,[data-mode="dark"] .promo-1,[data-mode="dark"] .promo-2,[data-mode="dark"] .promo-3,[data-mode="dark"] .promo-4{background:var(--pf-surface-2)}
[data-mode="dark"] .promo .promo-k,[data-mode="dark"] .promo .promo-more{color:var(--pf-primary-ink)}
.slide{min-height:380px;border-radius:20px;background:var(--pf-primary-soft);display:flex;flex-wrap:wrap;align-items:center;gap:24px;padding:40px 48px 56px;position:relative;overflow:hidden}
.slide-text{flex:1 1 300px;display:flex;flex-direction:column;gap:14px;z-index:1}
.slide-text .pill{direction:ltr}
.slide-title{font-size:36px;font-weight:900;line-height:1.45}
.slide-text p{color:var(--pf-ink-2)}
.slide-price{font-size:18px;font-weight:800;color:var(--pf-ink)!important}
.slide-cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.slide-art{flex:0 0 300px;height:300px;position:relative}
.slide-art .ph:first-child{position:absolute;left:20px;top:0}
.slide-art .ph:last-child{position:absolute;right:10px;top:30px}
.tabs-dots{position:relative}
.tabs-dots>.tablist{position:absolute;bottom:14px;inset-inline-start:40px;z-index:2;display:flex;gap:2px}
.tabs-dots [role="tab"]{width:30px;height:24px;border:0;background:none;padding:0;font-size:0;display:grid;place-items:center}
.tabs-dots [role="tab"]::before{content:"";width:8px;height:8px;border-radius:4px;background:var(--pf-line-strong);transition:width .2s}
.tabs-dots [role="tab"][aria-selected="true"]::before{width:26px;background:var(--pf-primary)}
.tabs-pills>.tablist,.tabs-plain>.tablist{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.tabs-pills [role="tab"]{min-height:40px;padding:0 16px;border-radius:999px;font-size:14px;font-weight:600;border:1px solid var(--pf-line-strong);background:var(--pf-surface);color:var(--pf-ink-2)}
.tabs-pills [role="tab"][aria-selected="true"]{background:var(--pf-primary);border-color:var(--pf-primary);color:var(--pf-on-primary)}
.tabs-plain [role="tab"]{min-height:40px;padding:0 14px;border:0;border-radius:10px;background:transparent;color:var(--pf-ink-2);font-weight:700;font-size:14px}
.tabs-plain [role="tab"][aria-selected="true"]{background:var(--pf-primary-soft);color:var(--pf-primary-ink)}
.tabs-seg>.tablist{display:inline-flex;flex-wrap:wrap;background:var(--pf-surface-2);border-radius:999px;padding:4px;gap:2px;margin-bottom:24px}
.tabs-seg [role="tab"]{min-height:40px;padding:0 18px;border-radius:999px;border:0;background:transparent;color:var(--pf-muted);font-weight:600;font-size:14px}
.tabs-seg [role="tab"][aria-selected="true"]{background:var(--pf-surface);color:var(--pf-ink);box-shadow:var(--pf-shadow)}
.tabs-models>.tablist{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:28px}
.tabs-models [role="tab"]{min-height:44px;padding:0 20px;border-radius:999px;border:1px solid var(--pf-line-strong);background:var(--pf-surface);color:var(--pf-ink);font-weight:600;direction:ltr}
.tabs-models [role="tab"][aria-selected="true"]{background:var(--pf-ink);color:var(--pf-surface);border-color:var(--pf-ink)}
.deal-band{background:var(--pf-primary);border-radius:22px;padding:22px;display:flex;flex-wrap:wrap;gap:20px;align-items:stretch;max-width:calc(var(--pf-wrap) - 48px)}
.deal-intro{flex:0 1 220px;color:var(--pf-on-primary);display:flex;flex-direction:column;justify-content:center;gap:12px;padding:6px 8px}
.deal-intro h2{font-size:26px;font-weight:900}
.deal-intro p{opacity:.92;font-size:13px}
.deal-band .rail{flex:1 1 560px;min-width:0}
.timer{display:inline-flex;direction:ltr;gap:5px;align-items:center;justify-content:flex-end}
.timer b{display:grid;place-items:center;min-width:42px;height:42px;padding:0 6px;border-radius:10px;background:var(--pf-surface);color:var(--pf-ink);font-weight:800;font-size:18px}
.timer i{font-style:normal;font-weight:800}
.panel .ptable{min-width:520px}
.calc{flex:1 1 380px;background:var(--pf-surface);border-radius:16px;padding:20px 22px;display:flex;flex-direction:column;gap:12px}
.calc-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:14px}
.calc-row span{color:var(--pf-muted)}
.calc-result{border-top:1px solid var(--pf-line);padding-top:12px}
.calc-result strong{font-size:22px;color:var(--pf-inst)}
.seg{border:0;padding:0;margin:0;display:flex;gap:8px;flex-wrap:wrap}
.seg legend{font-size:14px;font-weight:600;margin-bottom:8px;width:100%}
.seg label{flex:1 1 90px;position:relative}
.seg input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.seg span{display:grid;place-items:center;min-height:44px;border:1px solid var(--pf-line-strong);border-radius:10px;font-weight:700;font-size:14px;background:var(--pf-surface)}
.seg input:checked+span{background:var(--pf-inst);border-color:var(--pf-inst);color:#fff}
[data-mode="dark"] .seg input:checked+span{color:#1E1B4B}
.seg input:focus-visible+span{outline:3px solid var(--pf-focus);outline-offset:2px}
.band{border-radius:22px;padding:30px 34px;display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}
.band>div:first-child{flex:1 1 340px;display:flex;flex-direction:column;gap:10px}
.band p{line-height:2}
.band-inst{background:var(--pf-inst-soft)}
.band-inst h2{color:var(--pf-inst-ink);font-size:24px;font-weight:900}
.band-inst p{color:var(--pf-inst-ink)}
.band-pickup{background:var(--pf-surface);border:1px solid var(--pf-line);padding:22px 24px;justify-content:flex-start}
.band-pickup>div{flex:1 1 300px}
.band-pickup h2{font-size:17px}
.band-pickup p{color:var(--pf-muted);font-size:14px}
.band-ic{width:52px;height:52px;border-radius:14px;background:var(--pf-primary-soft);color:var(--pf-primary-ink);display:grid;place-items:center;flex:none}
.band-dark{background:#18181B;color:#fff}
.band-dark p{color:#D4D4D8}
.band-dark h2{font-size:26px;font-weight:900}
.band-dark .btn{align-self:flex-start}
[data-mode="dark"] .band-dark{background:var(--pf-surface-2)}
.steps{flex:2 1 520px;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.steps li{background:#27272A;border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:8px}
.steps small{font-size:13px;color:#D4D4D8;line-height:1.8}
.step-n{width:34px;height:34px;border-radius:50%;background:color-mix(in srgb,var(--pf-primary) 40%,#fff);color:#18181B;font-weight:900;display:grid;place-items:center}
.band-soft{background:var(--pf-primary-soft);border-radius:28px;padding:40px 48px}
.band-soft h2{font-size:30px;font-weight:900}
.stories{display:flex;gap:16px;overflow-x:auto;padding-block:4px}
.story{flex:none;width:90px;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--pf-ink);font-size:13px;font-weight:600;text-align:center;line-height:1.5}
.story:hover{text-decoration:none}
.story-ring{width:80px;height:80px;border-radius:50%;padding:3px;border:2.5px solid var(--pf-line-strong);display:flex}
.story-0 .story-ring,.story-1 .story-ring{border-color:var(--pf-primary)}
.story-ic{flex:1;border-radius:50%;display:grid;place-items:center}
.hero-wide .slide{min-height:360px;border-radius:26px;padding:40px 56px 56px}
.promo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.promo-grid .promo{min-height:120px;border-radius:18px;padding:20px 22px}
.promo-grid .promo strong{font-size:18px}
.flash{background:var(--pf-surface);border-radius:22px;overflow:hidden;box-shadow:0 1px 0 var(--pf-line);padding:0;max-width:calc(var(--pf-wrap) - 48px)}
.flash-head{background:var(--pf-primary);color:var(--pf-on-primary);padding:14px 24px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.flash-head h2{display:flex;align-items:center;gap:8px;font-size:22px;font-weight:900}
.flash-sub{font-size:13px;flex:1}
.flash-head a{color:var(--pf-on-primary);font-weight:700;text-decoration:underline;text-underline-offset:5px}
.flash-head .timer b{background:rgba(0,0,0,.22);color:var(--pf-on-primary);min-width:36px;height:34px;font-size:16px}
.flash .rail{padding:16px}
.brand-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.brand-grid a{display:flex;flex-direction:column;align-items:center;justify-content:center;height:86px;background:var(--pf-surface);border-radius:16px;color:var(--pf-ink);box-shadow:0 1px 0 var(--pf-line)}
.brand-grid strong{font-size:18px}
.brand-grid small{color:var(--pf-muted);font-size:12px}
.lux-hero{background:var(--pf-surface-2);border-radius:28px;padding:56px 56px 36px;max-width:calc(var(--pf-wrap) - 48px)}
.lux-hero-in{display:flex;flex-wrap:wrap;align-items:center;gap:40px}
.lux-hero-text{flex:1 1 420px;display:flex;flex-direction:column;gap:18px}
.lux-hero-text .lead{max-width:480px}
.lux-hero-art{flex:0 1 460px;height:360px;position:relative;display:flex;justify-content:center;align-items:center}
.lux-hero-art .ph:nth-child(1){transform:rotate(-10deg) translateX(40px);opacity:.92}
.lux-hero-art .ph:nth-child(2){z-index:1;box-shadow:0 40px 70px -30px rgba(28,25,23,.55)}
.lux-hero-art .ph:nth-child(3){transform:rotate(8deg) translateX(-40px);opacity:.92}
.brand-tiles{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.bt{position:relative;overflow:hidden;height:230px;border-radius:24px;padding:26px;display:flex;flex-direction:column;gap:4px;color:var(--pf-ink)!important;text-decoration:none!important}
.bt strong{font-size:28px;font-weight:900;direction:ltr;text-align:right}
.bt span{font-size:14px;color:var(--pf-ink-2);z-index:1}
.bt .bt-more{margin-top:auto;font-weight:700;color:var(--pf-ink)}
.bt .ph{position:absolute;left:22px;bottom:-46px;transform:rotate(-12deg)}
.bt-1{background:#E8EEF8}.bt-2{background:#F3EFEA}.bt-3{background:#FCEFE6}.bt-4{background:#E6F4F1}
[data-mode="dark"] .bt{background:var(--pf-surface-2)}
.ctable{width:100%;border-collapse:collapse;font-size:15px;min-width:600px}
.ctable th,.ctable td{text-align:start;padding:14px 10px;border-top:1px solid var(--pf-line);vertical-align:top}
.ctable thead th{border-top:0;font-size:17px;font-weight:800}
.ctable tbody th{color:var(--pf-muted);font-weight:500;width:24%}
.ctable td{font-weight:600}
.store-split{display:flex;flex-wrap:wrap;gap:18px}
.store-split>*{flex:1 1 420px}
.map{min-height:260px;border-radius:24px;background-color:var(--pf-primary-soft);background-image:linear-gradient(var(--pf-primary-mid) 1px,transparent 1px),linear-gradient(90deg,var(--pf-primary-mid) 1px,transparent 1px);background-size:32px 32px;display:grid;place-items:center}
.map-tall{min-height:420px}
.map-pin{width:58px;height:58px;border-radius:50%;background:var(--pf-primary);color:var(--pf-on-primary);display:grid;place-items:center;box-shadow:0 0 0 12px color-mix(in srgb,var(--pf-primary) 18%,transparent)}
.dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:10px 18px;font-size:15px}
.dl dt{color:var(--pf-muted)}
.dl dd{margin:0;font-weight:600}
.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.post-card a{display:flex;flex-direction:column;height:100%;background:var(--pf-surface);border-radius:18px;overflow:hidden;color:var(--pf-ink);border:1px solid var(--pf-line);text-decoration:none}
.post-card a:hover strong{color:var(--pf-primary-ink)}
.post-art{height:150px;display:flex;align-items:center;justify-content:center;gap:12px;overflow:hidden}
.post-art .ph{transform:rotate(-8deg)}
.post-art .ph+.ph{transform:rotate(8deg)}
.post-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px}
.post-body strong{font-size:16px;line-height:1.8}
.post-body small{font-size:12px;color:var(--pf-muted)}
.post-cat{font-size:12px;font-weight:700;color:var(--pf-primary-ink)}
.post-hero a{display:flex;flex-wrap:wrap;background:var(--pf-surface);border-radius:22px;overflow:hidden;border:1px solid var(--pf-line);color:var(--pf-ink);text-decoration:none}
.post-art.big{flex:1 1 420px;height:300px;gap:18px}
.post-hero .post-body{flex:1 1 360px;padding:32px;justify-content:center;gap:12px}
.post-hero .post-body strong{font-size:28px;font-weight:900;line-height:1.6}

/* ---------- listing ---------- */
.plp{display:grid;grid-template-columns:280px minmax(0,1fr);grid-template-areas:"head head" "side main";gap:20px 24px;align-items:start}
.plp-head{grid-area:head;display:flex;flex-direction:column;gap:6px}
.plp-side{grid-area:side;position:sticky;top:130px;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:18px;padding:16px 18px;max-height:calc(100vh - 150px);overflow:auto}
.plp-main{grid-area:main;min-width:0}
.plp-dense{grid-template-columns:250px minmax(0,1fr)}
.plp-dense .pgrid{grid-template-columns:repeat(auto-fill,minmax(186px,1fr));gap:12px}
.plp-minimal{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "main"}
.plp-minimal .plp-head h1{font-size:34px}
.toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.toolbar>.muted{font-size:14px}
.plp-sidebar .filter-open,.plp-dense .filter-open{display:none}
.sort{display:flex;align-items:center;gap:8px}
.sort label{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--pf-muted)}
select,input[type="text"],input[type="tel"],input[type="search"]:not(.search input),input[type="number"],input[type="email"],input:not([type]),textarea{border:1px solid var(--pf-line-strong);border-radius:12px;background:var(--pf-surface);color:var(--pf-ink);padding:0 14px;min-height:46px;font-size:15px}
textarea{padding:12px 14px;resize:vertical;line-height:1.9}
select{padding-inline:12px 32px}
select:focus,input:focus,textarea:focus{outline:0;border-color:var(--pf-primary);box-shadow:0 0 0 3px var(--pf-primary-soft)}
.search input:focus{box-shadow:none}
input:user-invalid,textarea:user-invalid{border-color:var(--pf-danger)}
.active-chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.active-chips a{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:999px;background:var(--pf-primary-soft);color:var(--pf-primary-ink);font-size:13px;font-weight:700}
.quick-filters{list-style:none;display:flex;gap:8px;overflow-x:auto;margin-bottom:16px;padding-bottom:4px}
.quick-filters a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--pf-line-strong);color:var(--pf-ink);white-space:nowrap;background:var(--pf-surface)}
.quick-filters a[aria-current]{background:var(--pf-ink);color:var(--pf-surface);border-color:var(--pf-ink)}
.filters{display:flex;flex-direction:column;gap:8px}
.fgroup{border-top:1px solid var(--pf-line);padding-top:4px}
.fgroup>summary{display:flex;justify-content:space-between;align-items:center;min-height:46px;font-weight:700;cursor:pointer}
.fgroup[open]>summary svg{transform:rotate(180deg)}
.fgroup-body{display:flex;flex-direction:column;padding-bottom:10px}
.check{display:flex;align-items:center;gap:10px;min-height:40px;font-size:14px;cursor:pointer}
.check input,.opt input{width:19px;height:19px;accent-color:var(--pf-primary);flex:none;margin:0}
.check small{margin-inline-start:auto;color:var(--pf-muted)}
.switch{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px;cursor:pointer}
.switch input{appearance:none;-webkit-appearance:none;width:42px;height:24px;border-radius:999px;background:var(--pf-line-strong);position:relative;flex:none;margin:0;cursor:pointer;transition:background .15s}
.switch input::before{content:"";position:absolute;top:3px;inset-inline-start:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:inset-inline-start .15s}
.switch input:checked{background:var(--pf-primary)}
.switch input:checked::before{inset-inline-start:21px}
.range{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.range label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--pf-muted)}
.range input{width:100%;min-width:0}
.filters-actions{display:flex;flex-direction:column;gap:6px;margin-top:6px}
.sheet{border:0;padding:0;background:var(--pf-surface);color:var(--pf-ink);border-radius:20px;width:min(480px,100%);max-height:88vh;box-shadow:var(--pf-shadow-lg)}
.sheet::backdrop{background:rgba(0,0,0,.45)}
.sheet-head{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;padding:12px 16px 12px 20px;background:var(--pf-surface);border-bottom:1px solid var(--pf-line)}
.sheet-head h2{font-size:18px}
.sheet>form,.sheet>.calc{padding:16px 20px 20px}
.sheet .calc{background:none}
.pager ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:28px}
.pager a,.pager span{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:44px;height:44px;padding:0 12px;border-radius:10px;border:1px solid var(--pf-line);background:var(--pf-surface);color:var(--pf-ink);font-weight:700}
.pager [aria-current]{background:var(--pf-primary);border-color:var(--pf-primary);color:var(--pf-on-primary)}
.seo-text{background:var(--pf-surface);border-radius:18px;padding:26px 30px;display:flex;flex-direction:column;gap:12px;border:1px solid var(--pf-line);max-width:calc(var(--pf-wrap) - 48px)}
.seo-text p,.seo-text li{line-height:2.1;color:var(--pf-ink-2)}
.seo-text ul{padding-inline-start:22px}
.faq details{border-bottom:1px solid var(--pf-line)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:52px;font-weight:600;cursor:pointer}
.faq details[open] summary svg{transform:rotate(180deg)}
.faq p{padding-bottom:14px}

/* ---------- tables ---------- */
.table-wrap{position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.ptable{width:100%;border-collapse:collapse;font-size:14px}
.ptable th,.ptable td{text-align:start;padding:12px 10px;border-bottom:1px solid var(--pf-line)}
.ptable thead th{font-size:13px;font-weight:600;color:var(--pf-muted)}
.ptable tbody th{font-weight:700}
.ptable tbody th a{color:var(--pf-ink)}
.chg{color:var(--pf-muted);font-weight:600;white-space:nowrap}
.chg-up{color:var(--pf-danger-ink)}.chg-down{color:var(--pf-success)}
.neg{color:var(--pf-danger-ink)}.pos{color:var(--pf-success)}
.cmp-head{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-size:15px}
.cmp-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:150px;border:2px dashed var(--pf-line-strong);border-radius:16px;color:var(--pf-muted);font-weight:700}
.cmp.is-diff tr[data-same]{display:none}
.hours{border-collapse:collapse;width:100%;max-width:360px}
.hours th,.hours td{text-align:start;padding:8px 0;border-bottom:1px solid var(--pf-line)}
.hours th{color:var(--pf-muted);font-weight:500}
.hours td{font-weight:600}

/* ---------- product page ---------- */
.pdp{display:grid;gap:28px;align-items:start}
.pdp-classic{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.pdp-cols{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start;margin-top:16px}
.pdp-market{grid-template-columns:minmax(0,4fr) minmax(0,5fr) 320px}
.pdp-buy{position:sticky;top:130px;display:flex;flex-direction:column;gap:12px}
.pdp-gallery-l{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px}
.pdp-info{display:flex;flex-direction:column;gap:18px;min-width:0}
.pdp-info.sticky{position:sticky;top:110px}
.pdp-title{display:flex;flex-direction:column;gap:8px}
.pdp-brand{font-size:13px;font-weight:700;color:var(--pf-primary-ink)}
.pdp-title h1{font-size:22px;font-weight:800;line-height:1.75}
.pdp-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13px}
.pdp-meta a{color:var(--pf-ink-2);display:inline-flex;align-items:center;gap:6px}
.stars{display:inline-flex;gap:1px;color:var(--pf-line-strong);vertical-align:middle}
.stars svg{fill:currentColor;stroke:none}
.stars .on{color:#F59E0B}
.gallery{background:var(--pf-surface-2);border-radius:22px;padding:24px;position:sticky;top:130px}
.pdp-gallery-l .gallery{min-height:560px;display:flex;flex-direction:column;justify-content:center}
.gallery-stage{display:grid;place-items:center;min-height:360px}
.gallery-slide{margin:0;display:grid;place-items:center}
.gallery-slide[hidden]{display:none}
.gallery-thumbs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px}
.gallery-thumbs button{width:64px;height:64px;border-radius:12px;border:1px solid var(--pf-line);background:var(--pf-surface);display:grid;place-items:center;padding:0}
.gallery-thumbs button[aria-pressed="true"]{border:2px solid var(--pf-primary)}
.gallery-thumbs .ph{box-shadow:none}
.variants{display:flex;flex-direction:column;gap:16px}
.vgroup{border:0;padding:0;margin:0;min-width:0}
.vgroup legend{font-size:14px;margin-bottom:10px;padding:0}
.vcolors{display:flex;flex-wrap:wrap;gap:12px}
.vcolor{position:relative;display:grid;place-items:center;width:44px;height:44px;cursor:pointer}
.vcolor input,.vstorage input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.vcolor .sw{width:34px;height:34px;border:2px solid var(--pf-surface);box-shadow:0 0 0 1px var(--pf-line-strong)}
.vcolor input:checked+.sw{box-shadow:0 0 0 2px var(--pf-primary)}
.vcolor input:focus-visible+.sw,.vstorage input:focus-visible+span{outline:3px solid var(--pf-focus);outline-offset:2px}
.vstorages{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}
.vstorage{position:relative}
.vstorage span{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--pf-line-strong);border-radius:12px;min-height:58px;background:var(--pf-surface)}
.vstorage small{font-size:12px;color:var(--pf-muted)}
.vstorage input:checked+span{border:2px solid var(--pf-primary);background:var(--pf-primary-soft);padding:9px 11px}
.buybox{display:flex;flex-direction:column;gap:14px;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:var(--pf-radius);padding:18px}
.pdp-buy .buybox{box-shadow:var(--pf-shadow-lg)}
.buy-price .price{align-items:flex-start}
.stock-line{font-size:14px}
.inst-bar{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;background:var(--pf-inst-soft);color:var(--pf-inst-ink)!important;font-size:14px;text-decoration:none!important}
.inst-more{margin-inline-start:auto;font-weight:800;text-decoration:underline}
.buy-actions{display:flex;gap:8px}
.ship-promise{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--pf-success)}
.svc{list-style:none;display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13px;color:var(--pf-muted);border-top:1px solid var(--pf-line);padding-top:12px}
.svc li{display:inline-flex;align-items:center;gap:6px}
.seller{display:flex;align-items:center;gap:10px;font-size:13px;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:14px;padding:12px 14px}
.seller span{display:flex;flex-direction:column}
.seller small{color:var(--pf-success);font-weight:700}
.notify-form{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600}
.row{display:flex;gap:8px}
.row input{flex:1;min-width:0}
.alert{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:14px}
.alert-warn{background:var(--pf-warn-soft);color:var(--pf-warn);border:1px solid var(--pf-warn-line)}
.alert p{font-size:13px;line-height:1.9;margin-top:4px}
.spec-tiles{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.spec-tiles li{background:var(--pf-surface-2);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:3px;min-width:0}
.spec-tiles svg{color:var(--pf-primary-ink)}
.spec-tiles span{font-size:12px;color:var(--pf-muted)}
.spec-tiles strong{font-size:13px;overflow-wrap:anywhere}
/* Highlights under the gallery: the gallery stops being sticky so it never slides over them. */
.pdp-gallery>.gallery:not(:last-child){position:static}
.pdp-hl{margin-top:16px;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:var(--pf-radius);padding:18px 20px;display:flex;flex-direction:column;gap:14px}
.pdp-hl-title{font-size:16px;font-weight:800}
.pdp-hl-part h3{font-size:14px;font-weight:700;color:var(--pf-ink-2);margin-bottom:6px}
.pdp-hl-specs{margin:0}
.pdp-hl-specs>div{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:12px;padding-block:9px;border-top:1px solid var(--pf-surface-2)}
.pdp-hl-specs>div:first-child{border-top:0}
.pdp-hl-specs dt{font-size:13px;color:var(--pf-muted)}
.pdp-hl-specs dd{margin:0;font-size:13px;font-weight:600;overflow-wrap:anywhere}
.pdp-hl-box{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.pdp-hl-box li{font-size:13px;padding:6px 12px;border-radius:999px;background:var(--pf-surface-2);overflow-wrap:anywhere}
.pdp-hl-more{align-self:flex-start;font-size:13px;font-weight:700;color:var(--pf-primary-ink);text-decoration:underline;text-underline-offset:2px}
.pdp-tabs{display:flex;gap:6px;overflow-x:auto;border-bottom:1px solid var(--pf-line);margin-top:36px!important}
.pdp-tabs a{display:inline-flex;align-items:center;min-height:48px;padding:0 16px;color:var(--pf-ink-2);font-weight:700;white-space:nowrap;border-bottom:3px solid transparent}
.pdp-tabs a:hover{border-color:var(--pf-primary);text-decoration:none}
.pdp-more{display:grid;gap:20px}
.pdp-more>section{background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:14px}
.spec-group{border-bottom:1px solid var(--pf-line)}
.spec-group>summary{display:flex;justify-content:space-between;align-items:center;min-height:50px;font-weight:700;cursor:pointer}
.spec-group[open]>summary svg{transform:rotate(180deg)}
.spec-table{width:100%;border-collapse:collapse;margin-bottom:10px}
.spec-table th,.spec-table td{text-align:start;padding:10px 0;font-size:14px;border-top:1px solid var(--pf-surface-2)}
.spec-table th{width:38%;color:var(--pf-muted);font-weight:500}
.spec-table td{font-weight:600}
.chart{margin:0;max-width:760px}
.chart svg{width:100%;height:auto;display:block}
.chart-line{fill:none;stroke:var(--pf-primary);stroke-width:2.5;stroke-linejoin:round}
.chart-area{fill:var(--pf-primary-soft);stroke:none}
.chart circle{fill:var(--pf-surface);stroke:var(--pf-primary);stroke-width:2}
.chart figcaption{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;color:var(--pf-muted);margin-top:8px}
.reviews{display:grid;grid-template-columns:300px minmax(0,1fr);gap:28px;align-items:start}
.rev-summary{display:flex;flex-direction:column;gap:10px;background:var(--pf-surface-2);border-radius:16px;padding:20px}
.rev-avg{font-size:44px;font-weight:900;line-height:1}
.crit{list-style:none;display:flex;flex-direction:column;gap:6px}
.crit li{display:grid;grid-template-columns:86px 1fr 30px;gap:8px;align-items:center;font-size:13px}
.bar{height:8px;border-radius:4px;background:var(--pf-line);overflow:hidden}
.bar i{display:block;height:100%;border-radius:4px;background:var(--pf-primary)}
.w-60{width:60%}.w-70{width:70%}.w-80{width:80%}.w-90{width:90%}.w-100{width:100%}
.rev-list{list-style:none}
.rev-list li{border-bottom:1px solid var(--pf-line);padding:14px 0;display:flex;flex-direction:column;gap:6px}
.rev-top{display:flex;align-items:center;gap:10px}
.rev-list p{line-height:2}
.rev-meta{font-size:13px}
.qa ol{list-style:none}
.qa li{border-bottom:1px solid var(--pf-line);padding:14px 0}
.q{display:flex;gap:8px;font-weight:700}
.a{padding-inline-start:26px;color:var(--pf-ink-2);line-height:2;margin-top:4px}
.ask{display:flex;flex-direction:column;gap:8px;margin-top:16px;font-weight:600;font-size:14px}
.ask .btn{align-self:flex-start}
.buybar{display:none}
.model-head{display:flex;flex-wrap:wrap;gap:32px;align-items:center}
.model-head>div:last-child{flex:1 1 420px;display:flex;flex-direction:column;gap:10px}
.model-art{flex:0 0 260px;height:260px;display:flex;align-items:center;justify-content:center;gap:0}
.model-art .ph:first-child{transform:rotate(-8deg) translateX(20px)}
.model-art .ph:last-child{transform:rotate(6deg) translateX(-10px)}
.brand-hero{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;background:var(--pf-primary-soft);border-radius:24px;padding:32px 40px;max-width:calc(var(--pf-wrap) - 48px);overflow:hidden}
.brand-hero>div:first-child{display:flex;flex-direction:column;gap:10px}
.brand-hero h1{font-size:36px}
.brand-hero-art{display:flex;gap:0;height:220px;align-items:center}
.brand-hero-art .ph:first-child{transform:rotate(-8deg) translateX(20px)}
.camp-hero{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;background:var(--pf-primary);color:var(--pf-on-primary);border-radius:26px;padding:40px 48px;max-width:calc(var(--pf-wrap) - 48px);overflow:hidden}
.camp-hero>div:first-child{display:flex;flex-direction:column;gap:12px}
.camp-hero h1{font-size:42px}
.camp-hero .pill{background:color-mix(in srgb,var(--pf-on-primary) 20%,transparent);color:var(--pf-on-primary)}
.camp-timer{display:flex;flex-direction:column;gap:8px;font-size:14px}
.camp-timer .timer{justify-content:flex-start}
.camp-art{display:flex;height:280px;align-items:center}
.camp-art .ph:first-child{transform:rotate(-10deg) translateX(30px)}
.camp-art .ph:last-child{transform:rotate(8deg)}
.suggest{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;color:var(--pf-muted)}
.embed{display:flex;flex-wrap:wrap;align-items:center;gap:14px;background:var(--pf-surface-2);border-radius:16px;padding:14px 18px;margin:20px 0}
.embed>span:nth-child(2){flex:1 1 220px;display:flex;flex-direction:column;gap:4px}
.embed .price{align-items:flex-start}

/* ---------- cart & checkout ---------- */
.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}
.cart-items>ul,.saved ul{list-style:none;display:flex;flex-direction:column;gap:12px}
.cart-item{background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:18px;padding:14px;display:grid;grid-template-columns:96px minmax(0,1fr) auto;gap:14px;align-items:start}
.cart-item.small{grid-template-columns:64px minmax(0,1fr) auto;align-items:center}
.ci-media{width:96px;height:96px;border-radius:12px;background:var(--pf-surface-2);display:grid;place-items:center;overflow:hidden}
.small .ci-media,.order-items .ci-media{width:64px;height:64px}
.ci-media .ph{--w:40px}
.ci-body{display:flex;flex-direction:column;gap:4px;min-width:0}
.ci-body .muted{font-size:13px}
.ci-title{font-weight:600;line-height:1.8;color:var(--pf-ink)}
.ci-actions{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin-top:6px}
.qty{display:inline-flex;align-items:center;border:1px solid var(--pf-line-strong);border-radius:12px;height:46px}
.qty button{width:44px;height:44px;border:0;background:none;color:var(--pf-primary-ink);display:grid;place-items:center}
.qty output{min-width:28px;text-align:center;font-weight:800}
.ci-price{align-self:center}
.saved{margin-top:20px}
.saved h2{font-size:16px;margin-bottom:10px}
.summary{position:sticky;top:130px;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:14px}
.summary h2{font-size:18px}
.ship-progress p{font-size:13px;margin-bottom:6px}
progress{width:100%;height:8px;border:0;border-radius:4px;background:var(--pf-line);overflow:hidden;appearance:none;-webkit-appearance:none}
progress::-webkit-progress-bar{background:var(--pf-line);border-radius:4px}
progress::-webkit-progress-value{background:var(--pf-success);border-radius:4px}
progress::-moz-progress-bar{background:var(--pf-success);border-radius:4px}
.sum{margin:0;display:flex;flex-direction:column;gap:10px}
.sum>div{display:flex;justify-content:space-between;gap:10px;font-size:14px}
.sum dt{color:var(--pf-muted)}
.sum dd{margin:0;font-weight:600}
.sum .save dd{color:var(--pf-success)}
.sum .total{border-top:1px solid var(--pf-line);padding-top:12px;font-size:16px}
.sum .total dd{font-weight:900}
.coupon{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600}
.checkout{max-width:1120px}
.checkout>h1{margin-bottom:6px}
.cstep{list-style:none;display:flex;margin:6px 0 20px;counter-reset:s}
.cstep li{flex:1;text-align:center;font-size:13px;color:var(--pf-muted);position:relative;padding-top:34px;counter-increment:s}
.cstep li::before{content:counter(s);position:absolute;top:0;left:50%;transform:translateX(-50%);width:28px;height:28px;border-radius:50%;background:var(--pf-surface);border:2px solid var(--pf-line-strong);display:grid;place-items:center;font-weight:800;font-size:13px}
.cstep li.done{color:var(--pf-success)}
.cstep li.done::before{content:"✓";background:var(--pf-success);border-color:var(--pf-success);color:#fff}
.cstep li[aria-current]{color:var(--pf-primary-ink);font-weight:800}
.cstep li[aria-current]::before{border-color:var(--pf-primary);color:var(--pf-primary-ink)}
.co-form{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px 24px;align-items:start}
.co-box{grid-column:1;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:14px}
.co-box h2{display:flex;align-items:center;gap:10px;font-size:17px}
.n{width:28px;height:28px;border-radius:50%;background:var(--pf-primary);color:var(--pf-on-primary);display:grid;place-items:center;font-size:14px;flex:none}
.co-sum{grid-column:2;grid-row:1/span 3;position:sticky;top:100px;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:14px}
.co-sum h2{font-size:18px}
.co-sum ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.co-sum li{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13px}
.co-sum .ci-media{width:48px;height:48px}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-size:14px;font-weight:600}
.field small{font-size:12px;color:var(--pf-muted)}
.opts{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;min-width:0}
.opts legend{font-size:14px;font-weight:700;margin-bottom:8px;padding:0}
.opt{display:flex;align-items:center;gap:12px;border:1px solid var(--pf-line-strong);border-radius:14px;padding:12px 14px;min-height:58px;cursor:pointer}
.opt span{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.opt small{font-size:12px;color:var(--pf-muted)}
.opt em{font-style:normal;font-size:13px;font-weight:700;white-space:nowrap}
.opt:has(input:checked){border-color:var(--pf-primary);background:var(--pf-primary-soft)}
.form-error{color:var(--pf-danger-ink);font-size:13px;font-weight:700}
.form-error[hidden]{display:none}

/* ---------- track, auth, account ---------- */
.narrow{max-width:800px;display:flex;flex-direction:column;gap:18px}
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;align-items:end}
.form-grid>h2,.form-grid>.wide,.field.wide,.form-grid>fieldset{grid-column:1/-1}
.form-grid>.btn{justify-self:start}
.timeline{list-style:none;position:relative}
.timeline li{position:relative;padding-block:0 20px;padding-inline-start:34px;display:flex;flex-direction:column}
.timeline li::before{content:"";position:absolute;inset-inline-start:0;top:6px;width:16px;height:16px;border-radius:50%;background:var(--pf-surface);border:2px solid var(--pf-line-strong);z-index:1}
.timeline li::after{content:"";position:absolute;inset-inline-start:7px;top:22px;bottom:0;width:2px;background:var(--pf-line)}
.timeline li:last-child::after{display:none}
.timeline li.done::before{background:var(--pf-success);border-color:var(--pf-success)}
.timeline small{color:var(--pf-muted);font-size:13px}
.auth{display:grid;place-items:center;min-height:56vh}
.auth-card{width:100%;max-width:440px;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:22px;padding:28px;display:flex;flex-direction:column;gap:18px;box-shadow:var(--pf-shadow-lg)}
.otp-step{display:flex;flex-direction:column;gap:14px}
.otp-step[hidden]{display:none}
.otp-input{letter-spacing:.6em;text-align:center;font-size:22px!important;font-weight:800}
.account{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start}
.acc-side{position:sticky;top:130px;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:18px;padding:16px}
.acc-user{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--pf-line)}
.acc-user span:last-child{display:flex;flex-direction:column}
.acc-user small{color:var(--pf-muted)}
.avatar{width:44px;height:44px;border-radius:50%;background:var(--pf-primary-soft);color:var(--pf-primary-ink);font-weight:800;display:grid;place-items:center;flex:none}
.acc-side ul{list-style:none;display:flex;flex-direction:column;gap:2px;margin-top:10px}
.acc-side a{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;border-radius:10px;color:var(--pf-ink-2)}
.acc-side a:hover{background:var(--pf-surface-2);text-decoration:none}
.acc-side a[aria-current]{background:var(--pf-primary-soft);color:var(--pf-primary-ink);font-weight:800}
.acc-main{display:flex;flex-direction:column;gap:18px;min-width:0}
.acc-main>h1{font-size:22px}
.acc-stats{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.acc-stats a{display:flex;flex-direction:column;gap:4px;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:16px;padding:16px;color:var(--pf-ink)}
.acc-stats svg{color:var(--pf-primary-ink)}
.acc-stats strong{font-size:20px}
.acc-stats span{font-size:13px;color:var(--pf-muted)}
.orders,.tickets,.addr-list,.rewards,.trust-list{list-style:none;display:flex;flex-direction:column;gap:12px}
.order{background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px}
.order-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.order-items{display:flex;gap:8px}
.order-actions{display:flex;flex-wrap:wrap;gap:8px}
.tablist.plain{display:flex;gap:6px;overflow-x:auto}
.tablist.plain a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:10px;color:var(--pf-ink-2);white-space:nowrap}
.tablist.plain a.is-on{background:var(--pf-primary-soft);color:var(--pf-primary-ink);font-weight:800}
.addr-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.wallet-card{background:var(--pf-primary);color:var(--pf-on-primary);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:6px}
.wallet-card strong{font-size:30px;font-weight:900}
.club-card{background:#18181B;color:#fff;border-radius:20px;padding:24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}
.club-card>div{display:flex;flex-direction:column;gap:4px}
.club-card span{color:#D4D4D8;font-size:13px}
.club-card strong{font-size:26px;font-weight:900}
.club-progress{grid-column:1/-1}
.rewards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.rewards li{display:flex;flex-direction:column;gap:8px}
.rewards .btn{align-self:flex-start}

/* ---------- content ---------- */
.post{max-width:800px;display:flex;flex-direction:column;gap:20px}
.post header{display:flex;flex-direction:column;gap:10px}
.post h1{font-size:32px;line-height:1.6}
.toc{background:var(--pf-surface-2);border-radius:16px;padding:16px 20px}
.toc ol{padding-inline-start:22px;margin-top:6px;line-height:2.1}
.toc a{color:var(--pf-ink-2)}
.prose{font-size:16px}
.prose p,.prose li{line-height:2.2;color:var(--pf-ink-2)}
.prose p+p{margin-top:14px}
.prose h2{font-size:22px;margin:30px 0 10px}
.prose ul{padding-inline-start:22px;margin:12px 0}
.prose-page{display:flex;flex-direction:column;gap:14px}
.legal{display:grid;grid-template-columns:240px minmax(0,1fr);gap:32px;align-items:start}
.legal .toc{position:sticky;top:130px}
.legal .toc ul{list-style:none;padding:0}
.legal .toc a{display:block;padding:10px 12px;border-radius:10px}
.legal .toc a[aria-current]{background:var(--pf-primary-soft);color:var(--pf-primary-ink);font-weight:800}
.trust-list li.panel{flex-direction:row;align-items:flex-start;gap:16px}
.trust-list svg{color:var(--pf-primary-ink)}
.trust-list h2{font-size:16px}
.trust-list p{color:var(--pf-muted);font-size:14px}
.pickup{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}
.pickup>div:first-child{display:flex;flex-direction:column;gap:16px}
.pickup ul{padding-inline-start:20px;line-height:2}
.sys{align-items:center;text-align:center;padding-block:40px;margin-inline:auto}
.empty{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;color:var(--pf-muted);padding:20px 0}
.empty svg{color:var(--pf-primary-ink)}
.empty h2{color:var(--pf-ink)}
.empty .search{width:100%;margin-top:10px}
.logo-mark.big{width:80px;height:80px;border-radius:50%;background:var(--pf-primary-soft);color:var(--pf-primary-ink)}
.is-bare main{min-height:100vh;display:grid;place-items:center}

.wrap.band,.wrap.panel,.wrap.panel-lux{max-width:calc(var(--pf-wrap) - 48px)}
/* ---------- responsive ---------- */
@media (max-width:1180px){
  .ftr-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ftr-about{grid-column:1/-1}
  .pdp-market{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .pdp-market .pdp-buy{grid-column:1/-1;position:static}
  .pdp-cols{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:1023px){
  .plp,.plp-dense{grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "main"}
  .plp-side{display:none}
  .plp-sidebar .filter-open,.plp-dense .filter-open{display:inline-flex}
  .pdp-classic,.pdp-gallery-l,.pdp-market{grid-template-columns:minmax(0,1fr);gap:20px}
  .gallery,.pdp-info.sticky{position:static}
  .pdp-gallery-l .gallery{min-height:0}
  .cart-layout,.co-form{grid-template-columns:minmax(0,1fr)}
  .co-sum{grid-column:1;grid-row:auto;position:static}
  .summary{position:static}
  .account,.legal,.pickup{grid-template-columns:minmax(0,1fr)}
  .acc-side,.legal .toc{position:static}
  .acc-side ul{flex-direction:row;overflow-x:auto}
  .acc-side a{white-space:nowrap}
  .reviews{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:899px){
  .wrap{padding-inline:16px}
  .deal-band,.flash,.lux-hero,.brand-hero,.camp-hero,.seo-text,.wrap.band,.wrap.panel,.wrap.panel-lux{max-width:calc(100% - 32px)}
  .topbar nav,.catnav,.hdr-sub .city,.login-btn,.hdr-bazar .account-link span,.cart-link.with-text>span:not(.count){display:none}
  .hdr-sub{display:none}
  .drawer{display:block}
  .hdr-row{flex-wrap:wrap;gap:8px;padding-block:8px 10px}
  .hdr-row .logo{flex:1;min-width:0}
  .logo-text{min-width:0}
  .logo-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .hdr-row .search{order:9;flex:1 1 100%;height:46px}
  .hdr-lux .hdr-actions .search{display:none}
  .hdr-lux .hdr-row::after{content:none}
  .logo-text small{display:none}
  .logo-mark{width:36px;height:36px;font-size:16px}
  .logo-text strong{font-size:18px}
  .topbar .wrap{justify-content:center;text-align:center;font-size:12px}
  .search input{font-size:16px}
  select,input,textarea{font-size:16px!important}
  h1{font-size:22px}
  .display{font-size:30px}
  main{padding-block:14px 40px}
  main.stack>*+*{margin-top:24px}
  .bnav{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);position:fixed;inset-inline:0;bottom:0;z-index:40;height:68px;background:var(--pf-surface);border-top:1px solid var(--pf-line);padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -6px 20px -14px rgba(15,23,42,.35)}
  .bnav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:12px;font-weight:700;color:var(--pf-muted);text-decoration:none}
  .bnav a.is-active{color:var(--pf-primary-ink)}
  .bnav-ic{display:grid;place-items:center;border-radius:50%}
  .bnav-fab{height:72px;align-items:end;padding-bottom:8px}
  .bnav-fab .bnav-cart{color:var(--pf-primary-ink)}
  .bnav-fab .bnav-cart .bnav-ic{width:54px;height:54px;margin-top:-26px;background:var(--pf-primary);color:var(--pf-on-primary);box-shadow:0 8px 18px -6px color-mix(in srgb,var(--pf-primary) 60%,transparent)}
  .bnav-pill{inset-inline:12px;bottom:12px;height:64px;border-radius:22px;background:#1C1917;border:0;padding:6px;gap:4px}
  .bnav-pill a{color:#E7E5E4;border-radius:16px}
  .bnav-pill a.is-active{background:#fff;color:#1C1917}
  [data-mode="dark"] .bnav-pill{background:#F5F5F4}
  [data-mode="dark"] .bnav-pill a{color:#44403C}
  [data-mode="dark"] .bnav-pill a.is-active{background:#1C1917;color:#fff}
  body{padding-bottom:84px}
  .nav-pill{padding-bottom:92px}
  .has-buybar{padding-bottom:150px}
  .buybar{display:flex;position:fixed;inset-inline:0;bottom:68px;z-index:39;justify-content:space-between;align-items:center;gap:12px;background:var(--pf-surface);border-top:1px solid var(--pf-line);padding:10px 16px;box-shadow:0 -6px 20px -14px rgba(15,23,42,.35)}
  .nav-pill .buybar{bottom:84px;inset-inline:12px;border-radius:18px;border:1px solid var(--pf-line)}
  .ftr{margin-top:32px}
  .ftr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding-block:28px 18px}
  .ftr-trust{grid-column:1/-1}
  .hero-split,.hero-side{gap:12px}
  .hero-side{flex-direction:row}
  .hero-side .promo{min-height:120px;padding:16px}
  .hero-side .promo strong{font-size:15px}
  .slide,.hero-wide .slide{padding:22px 20px 44px;min-height:0;gap:10px;flex-wrap:nowrap;border-radius:18px}
  .slide-text{flex:1 1 auto;gap:8px}
  .slide-text>p:not(.slide-title):not(.slide-price){display:none}
  .slide-title{font-size:20px;line-height:1.6}
  .slide-price{font-size:14px}
  .slide-cta .btn-ghost{display:none}
  .slide-art{flex:0 0 108px;height:190px}
  .slide-art .ph{--w:80px}
  .slide-art .ph:first-child{left:0}
  .slide-art .ph:last-child{right:0;top:18px}
  .tabs-dots>.tablist{inset-inline-start:50%;transform:translateX(50%);bottom:6px}
  .usp-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;background:none;border:0}
  .usp-strip li{background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:12px;padding:10px;gap:8px}
  .usp-strip small{display:none}
  .usp-strip strong{font-size:12px}
  .usp-strip .usp-ic{width:34px;height:34px}
  .usp-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .usp-cards li{padding:16px}
  .usp-cards small{font-size:12px}
  .cat-tiles{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 6px}
  .cat-tiles a{background:none;border:0;padding:0;font-size:12px;gap:7px;line-height:1.5}
  .cat-ic{width:58px;height:58px}
  .deal-band{border-radius:18px;padding:16px 0;flex-direction:column;flex-wrap:nowrap;gap:12px}
  .deal-intro{flex:none;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:0 16px;gap:8px}
  .deal-intro h2{font-size:18px}
  .deal-intro p,.deal-intro .btn{display:none}
  .deal-band .rail{flex:none;padding-inline:16px}
  .timer b{min-width:32px;height:30px;font-size:14px;border-radius:7px}
  .rail{grid-auto-columns:minmax(156px,168px);gap:8px}
  .pgrid,.pgrid-4,.pgrid-3,.plp-dense .pgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .card-showcase,.card-compact{padding:10px;gap:7px}
  .card-media,.card-compact .card-media{height:150px}
  .card-media .ph-m{--w:62px}
  .card-colors{top:122px;inset-inline-start:16px;font-size:12px}
  .card-title{font-size:13px}
  .card-showcase .chips,.card-compact .chips{max-height:44px;overflow:hidden}
  .chips li{font-size:12px;padding:1px 6px}
  .price-now{font-size:15px}
  .price-now small{font-size:12px}
  .card-foot{flex-direction:column;align-items:stretch}
  .card-foot .price{align-items:flex-end}
  .card-showcase .badges{display:none}
  .card-editorial .card-media{height:196px;border-radius:18px}
  .card-editorial .card-media .ph-l{--w:70px}
  .card-editorial .card-title{font-size:14px}
  .card-editorial .card-spec,.card-editorial .inst{font-size:12px}
  .card-editorial .round-btn{width:44px;height:44px;bottom:8px;inset-inline-end:8px}
  .card-editorial .price-inline{flex-direction:column;align-items:flex-start;gap:0}
  .wish{width:40px;height:40px}
  .split-2>*{flex-basis:100%}
  .panel{padding:16px}
  .band,.band-soft{padding:20px 18px;border-radius:18px}
  .band-inst h2,.band-dark h2,.band-soft h2{font-size:19px}
  .calc{padding:16px}
  .stories{gap:10px}
  .story{width:70px;font-size:12px}
  .story-ring{width:64px;height:64px}
  .story-ic svg{width:24px;height:24px}
  .promo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .promo-grid .promo{min-height:96px;padding:14px}
  .promo-grid .promo strong{font-size:14px}
  .flash{border-radius:0;max-width:none;box-shadow:none}
  .flash-head{padding:12px 16px}
  .flash-head h2{font-size:17px}
  .flash-sub,.flash-head a{display:none}
  .brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .brand-grid a{height:70px}
  .brand-grid strong{font-size:15px}
  .steps li{padding:12px}
  .lux-hero{padding:26px 18px 18px;border-radius:24px;text-align:center}
  .lux-hero-in{flex-direction:column;gap:10px}
  .lux-hero-text{flex:none;align-items:center;gap:10px}
  .lux-hero-text .lead{display:none}
  .lux-hero-art{flex:none;height:230px;width:100%}
  .lux-hero-art .ph-l{--w:76px}
  .lux-hero-art .ph-xl{--w:104px}
  .tabs-models>.tablist{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;margin-top:14px}
  .tabs-models [role="tab"]{flex:none;font-size:13px;padding:0 14px}
  .brand-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .bt{height:150px;padding:16px;border-radius:20px}
  .bt strong{font-size:20px}
  .bt .bt-more{display:none}
  .bt .ph{--w:58px;left:14px;bottom:-34px}
  .tabs-seg>.tablist{display:flex;flex-wrap:nowrap;overflow-x:auto;margin-bottom:16px}
  .tabs-seg [role="tab"]{flex:none;padding:0 13px;font-size:13px}
  .panel-lux{padding:18px;border-radius:22px}
  .ctable{min-width:0;font-size:13px}
  .ctable th,.ctable td{padding:10px 6px}
  .store-split>*{flex-basis:100%}
  .post-art{height:110px}
  .post-art.big{height:200px}
  .post-hero .post-body{padding:18px}
  .post-hero .post-body strong{font-size:20px}
  .plp-minimal .plp-head h1{font-size:24px}
  .seo-text{padding:18px}
  .pdp-title h1{font-size:18px}
  .gallery{padding:16px}
  .gallery-stage{min-height:300px}
  .gallery-stage .ph-xl{--w:120px}
  .spec-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pdp-more>section{padding:16px}
  .brand-hero,.camp-hero{padding:24px 20px}
  .brand-hero h1{font-size:26px}
  .camp-hero h1{font-size:30px}
  .camp-art,.brand-hero-art{display:none}
  .model-art{flex-basis:100%;height:200px}
  .model-art .ph-l{--w:86px}
  .cart-item{grid-template-columns:72px minmax(0,1fr)}
  .ci-media{width:72px;height:72px}
  .ci-price{grid-column:2;justify-self:end}
  .cart-item.small{grid-template-columns:64px minmax(0,1fr)}
  .cart-item.small .btn{grid-column:1/-1}
  .sheet{width:100%;max-width:100%;margin:auto auto 0;border-radius:20px 20px 0 0;max-height:90vh}
  .post h1{font-size:24px}
  .prose{font-size:15px}
}
@media (max-width:380px){
  .cat-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}
  .hero-side{flex-direction:column}
  /* E4: the header row fits 320px (drawer, logo, mode, cart) without horizontal scroll */
  .hdr-row{gap:6px 4px}
  .logo{gap:6px}
  .logo-mark{width:32px;height:32px;border-radius:10px}
  .logo-text strong{font-size:16px}
  .hdr-actions{gap:0}
}
@media print{.hdr,.topbar,.announce,.bnav,.buybar,.ftr{display:none}body{background:#fff}}
/* Jalali dates keep their digit order inside RTL text (was an inline <style> of wp-parsidate, Assets::INLINE_HEAD_STYLES) */
mark.order-date,time{unicode-bidi:embed}
/* Store-module seams: campaign line and model-page link on the product page, helpdesk chat widget (links only) */
.pdp-campaign{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-block:8px}
.pdp-campaign a{color:inherit}
.pdp-promise{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-block:8px;font-size:14px;font-weight:600}
.pdp-model{display:inline-block;margin-top:6px;font-size:13px;font-weight:700;color:var(--pf-primary-ink);text-decoration:underline;text-underline-offset:2px}
.chatw{position:fixed;inset-block-end:20px;z-index:45}
.chatw-end{inset-inline-end:16px}
.chatw-start{inset-inline-start:16px}
.chatw summary{display:inline-flex;align-items:center;gap:6px;min-height:48px;padding-inline:16px;border-radius:999px;background:var(--pf-primary);color:var(--pf-on-primary);font-weight:700;cursor:pointer;list-style:none;box-shadow:var(--pf-shadow-lg)}
.chatw summary::-webkit-details-marker{display:none}
.chatw-panel{position:absolute;inset-block-end:calc(100% + 8px);inset-inline-end:0;inline-size:min(280px,86vw);display:grid;gap:8px;padding:14px;background:var(--pf-surface);color:var(--pf-ink);border:1px solid var(--pf-line);border-radius:14px;box-shadow:var(--pf-shadow-lg)}
.chatw-start .chatw-panel{inset-inline-end:auto;inset-inline-start:0}
.chatw ul{list-style:none;display:grid;gap:6px}
.chatw ul a{display:flex;align-items:center;min-height:44px;padding-inline:12px;border:1px solid var(--pf-line-strong);border-radius:10px;color:var(--pf-ink)}
.chatw-hours{font-size:13px;color:var(--pf-muted)}
@media (max-width:899px){.chatw{inset-block-end:84px}}
@media print{.chatw{display:none}}
/* Step-5 seams: instalment strip in the buy box, review and Q&A sections, rating stars (data from modules only) */
.pdp-installments{margin-block:8px;padding:10px 12px;border:1px dashed var(--pf-line);border-radius:12px;font-size:14px}
.pdp-installments-title{font-weight:700;margin-block-end:4px}
.pdp-installments ul{list-style:none;display:grid;gap:4px}
.rv-summary{display:flex;align-items:baseline;gap:8px;font-weight:700}
.rv-list,.qa-list{list-style:none;display:grid;gap:12px}
.rv-item,.qa-item{display:grid;gap:4px;padding-block-end:12px;border-bottom:1px solid var(--pf-line)}
.rv-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--pf-muted)}
.rv-reply{padding-inline-start:12px;border-inline-start:3px solid var(--pf-line);font-size:14px}
.rv-actions{display:flex;flex-wrap:wrap;gap:12px}

/* Product detail sections, Pishro style (doc 21 R6) */
.pdp-details{position:relative}
.pdp-tabs{position:sticky;top:0;z-index:5;display:flex;gap:4px;overflow-x:auto;background:var(--pf-surface);border:1px solid var(--pf-line);border-radius:14px;padding:6px;scrollbar-width:none}
.pdp-tabs::-webkit-scrollbar{display:none}
.pdp-tabs a{flex:0 0 auto;padding:10px 16px;border-radius:10px;font-weight:700;color:var(--pf-muted,inherit);text-decoration:none;white-space:nowrap}
.pdp-tabs a:hover,.pdp-tabs a:focus-visible{background:var(--pf-soft,rgba(0,0,0,.05));color:var(--pf-text,inherit)}
.pdp-panel{scroll-margin-top:72px}
.pdp-panel>h2{margin:0;font-size:1.15rem}
.pdp-review{line-height:2}
.pdp-review h2,.pdp-review h3{margin-block:1.2em .5em}
.pdp-review table{width:100%;border-collapse:collapse}
.pdp-review td,.pdp-review th{border:1px solid var(--pf-line);padding:8px}
.mz-tldr{background:var(--pf-soft,rgba(0,0,0,.04));border:1px solid var(--pf-line);border-radius:14px;padding:14px 18px;margin-block-end:16px}
.mz-tldr__title,.mz-tldr>p:first-child{font-weight:800;margin:0 0 6px}
.pc-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.pc{border-radius:14px;padding:16px 18px;border:1px solid var(--pf-line)}
.pc h3{margin:0 0 10px;font-size:1rem}
.pc ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.pc li{position:relative;padding-inline-start:26px;line-height:1.9}
.pc li::before{position:absolute;inset-inline-start:0;top:.15em;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;color:#fff}
.pc--pros{background:color-mix(in srgb,#16a34a 7%,var(--pf-surface))}
.pc--pros h3{color:#15803d}
.pc--pros li::before{content:"+";background:#16a34a}
.pc--cons{background:color-mix(in srgb,#dc2626 6%,var(--pf-surface))}
.pc--cons h3{color:#b91c1c}
.pc--cons li::before{content:"−";background:#dc2626}
.faq-list{display:grid;gap:8px}
.faq-item{border:1px solid var(--pf-line);border-radius:12px;padding:0 16px;background:var(--pf-surface)}
.faq-item>summary{min-height:52px;display:flex;align-items:center;font-weight:700;cursor:pointer;list-style:none}
.faq-item>summary::-webkit-details-marker{display:none}
.faq-item>summary::after{content:"+";margin-inline-start:auto;font-size:1.2rem;font-weight:400}
.faq-item[open]>summary::after{content:"−"}
.faq-item__a{padding:0 0 14px;line-height:2}
@media (max-width:640px){.pdp-tabs a{padding:9px 12px;font-size:.9rem}.pdp-panel{scroll-margin-top:64px}}
