/*
Theme Name: Pershume
Theme URI: https://pershume.ir
Author: Pershume
Author URI: https://pershume.ir
Description: قالبِ اختصاصیِ فروشگاهِ عطرِ پرشیوم — سبک، سریع و RTL برای ووکامرس. جایگزینِ WoodMart/Elementor با رنگِ برندِ بنفش و فونتِ سلف‌هاستِ وزیرمتن.
Version: 1.0.0
Requires at least: 5.8
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pershume
Tags: woocommerce, rtl, e-commerce, custom-colors, full-width-template
*/

/* ============================================================================
 * Self-hosted Vazirmatn (pershume-speed blocks Google Fonts — do NOT @import).
 * woff2 weights bundled in assets/fonts/.
 * ========================================================================== */
@font-face{font-family:"Vazirmatn";font-style:normal;font-weight:400;font-display:swap;
  src:url("assets/fonts/Vazirmatn-Regular.woff2") format("woff2")}
@font-face{font-family:"Vazirmatn";font-style:normal;font-weight:500;font-display:swap;
  src:url("assets/fonts/Vazirmatn-Medium.woff2") format("woff2")}
@font-face{font-family:"Vazirmatn";font-style:normal;font-weight:600;font-display:swap;
  src:url("assets/fonts/Vazirmatn-SemiBold.woff2") format("woff2")}
@font-face{font-family:"Vazirmatn";font-style:normal;font-weight:700;font-display:swap;
  src:url("assets/fonts/Vazirmatn-Bold.woff2") format("woff2")}
@font-face{font-family:"Vazirmatn";font-style:normal;font-weight:900;font-display:swap;
  src:url("assets/fonts/Vazirmatn-Black.woff2") format("woff2")}

/* ============================================================================
 * Homepage styles — ported from mockups/phome-scento.html
 * ========================================================================== */
:root{
    --ink:#1c1b24;
    --ink-soft:#6b6a76;
    --line:#e8e8ef;
    --line-soft:#f2f2f7;
    --paper:#ffffff;
    --paper-2:#f6f6fb;
    /* MANDATORY compatibility vars — pershume-image-fx promo bar (pershume-image-fx.php)
       and sms-suite OTP buttons (sms-suite/assets/css/login.css) read these EXACT names */
    --wd-primary-color:#6b6bb3;   /* پرشیوم brand violet */
    --wd-link-color:#4a4ab2;
    --accent:var(--wd-primary-color);   /* the ONE accent */
    --accent-deep:var(--wd-link-color);
    --sale:var(--wd-primary-color);
    --radius:10px;
    --maxw:1440px;
    --gut:clamp(20px,5vw,72px);
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    font-family:"Vazirmatn","Segoe UI",Tahoma,sans-serif;
    background:var(--paper);
    color:var(--ink);
    line-height:1.85;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  a{color:inherit;text-decoration:none}
  img{max-width:100%}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut)}

  /* micro label — the gallery voice */
  .label{
    font-size:11px;
    letter-spacing:.32em;
    text-transform:uppercase;
    color:var(--ink-soft);
    font-weight:500;
    display:inline-block;
  }
  .label-en{font-family:"Segoe UI",sans-serif}

  /* ---------- promo bar ---------- */
  .promo{
    background:var(--accent);
    color:#fff;
    text-align:center;
    font-size:11.5px;
    letter-spacing:.22em;
    padding:9px 16px;
    font-weight:300;
  }
  .promo b{color:#fff;font-weight:700}

  /* ---------- header ---------- */
  /* slim top utility strip */
  .utilbar{
    background:var(--paper-2);
    border-bottom:1px solid var(--line-soft);
    font-size:12px;color:var(--ink-soft);
  }
  .utilbar .wrap{display:flex;align-items:center;justify-content:space-between;height:38px}
  .utilbar a{color:var(--ink-soft);transition:color .25s}
  .utilbar a:hover{color:var(--accent)}
  .utilbar .u-right{display:flex;align-items:center;gap:18px}
  .utilbar .u-sep{color:var(--line)}
  .utilbar .u-left{display:flex;align-items:center;gap:8px}
  .utilbar .u-left b{color:var(--accent);font-weight:600}
  @media(max-width:560px){.utilbar .u-left{display:none}.utilbar .wrap{justify-content:center;height:auto;min-height:44px}.utilbar a{display:inline-flex;align-items:center;min-height:44px;padding:0 6px}}
  header{
    position:sticky;top:0;z-index:50;
    background:rgba(255,255,255,.9);
    backdrop-filter:saturate(140%) blur(14px);
    border-bottom:1px solid var(--line);
  }
  .bar{
    display:flex;align-items:center;gap:28px;
    height:80px;
  }
  .logo{
    display:inline-flex;align-items:center;line-height:1;white-space:nowrap;
  }
  .logo img{height:40px;width:auto;display:block}
  nav.main{display:flex;gap:30px;margin-inline-start:14px}
  nav.main a{
    font-size:13.5px;color:var(--ink-soft);position:relative;
    padding:4px 0;transition:color .3s;
  }
  nav.main a::after{
    content:"";position:absolute;bottom:-2px;right:0;left:auto;
    width:0;height:1px;background:var(--accent);transition:width .35s ease;
  }
  nav.main a:hover{color:var(--ink)}
  nav.main a:hover::after{width:100%}
  .tools{margin-inline-start:auto;display:flex;align-items:center;gap:6px}
  .search{
    display:flex;align-items:center;gap:8px;
    border:1px solid var(--line);border-radius:40px;
    padding:7px 14px;background:#fff;transition:border-color .3s, box-shadow .3s;
    min-width:170px;
  }
  .search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(107,107,179,.13)}
  .search input{border:0;outline:0;background:transparent;font-family:inherit;font-size:12.5px;width:100%}
  .search input::placeholder{color:#9a9aa6}
  .icon-btn{
    width:42px;height:42px;border-radius:50%;border:1px solid transparent;
    background:transparent;cursor:pointer;font-size:16px;
    display:grid;place-items:center;position:relative;transition:.3s;color:var(--ink);
  }
  .icon-btn:hover{background:#fff;border-color:var(--line)}
  .cart-count{
    position:absolute;top:4px;left:4px;background:var(--accent);color:#fff;
    font-size:11px;min-width:15px;height:15px;border-radius:9px;display:grid;place-items:center;
    padding:0 3px;letter-spacing:0;
  }
  /* hamburger — hidden on desktop */
  .nav-toggle{
    display:none;width:44px;height:44px;border-radius:50%;border:1px solid transparent;
    background:transparent;cursor:pointer;font-size:20px;color:var(--ink);
    place-items:center;transition:.3s;
  }
  .nav-toggle:hover{background:#fff;border-color:var(--line)}
  /* mobile nav backdrop + mobile-only nav extras */
  .nav-backdrop{position:fixed;inset:0;background:rgba(28,27,36,.45);z-index:40;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
  .nav-backdrop.open{opacity:1;visibility:visible}
  .nav-extra{display:none}
  @media(min-width:1081px){.nav-backdrop{display:none}}
  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

  /* ---------- hero ---------- */
  .hero{
    position:relative;
    padding:clamp(34px,6vh,64px) 0 12px;
    border-bottom:1px solid var(--line);
    background:radial-gradient(120% 100% at 100% 0%, rgba(107,107,179,.07) 0%, transparent 55%), var(--paper);
  }
  .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,64px);align-items:stretch}
  .hero-content{display:flex;flex-direction:column;justify-content:space-between}
  .hero-eyebrow{
    align-self:flex-start;
    display:inline-flex;align-items:center;gap:9px;line-height:1;
    font-size:11px;letter-spacing:.12em;color:var(--accent-deep);font-weight:600;
    padding:8px 15px;border:1px solid var(--line);border-radius:40px;
    background:rgba(107,107,179,.05);
    margin-bottom:26px;
  }
  .hero-eyebrow .dot{
    width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none;
    animation:livedot 2s ease-out infinite;
  }
  @keyframes livedot{0%{box-shadow:0 0 0 0 rgba(107,107,179,.5)}100%{box-shadow:0 0 0 9px rgba(107,107,179,0)}}
  .hero h1{
    font-size:clamp(23px,3vw,38px);
    line-height:1.14;font-weight:700;letter-spacing:-.01em;
    margin-bottom:18px;
  }
  .hero h1 em{
    font-style:normal;font-weight:700;position:relative;white-space:nowrap;
    background:linear-gradient(95deg,var(--accent-deep) 0%,var(--accent) 52%,var(--accent) 100%);
    -webkit-background-clip:text;background-clip:text;
    -webkit-text-fill-color:transparent;color:var(--accent-deep);
    padding-bottom:3px;
  }
  .hero h1 em::after{
    content:"";position:absolute;right:2px;left:2px;bottom:0;height:6px;
    background:linear-gradient(90deg,rgba(74,74,178,0) 0%,var(--accent) 50%,rgba(74,74,178,0) 100%);
    border-radius:6px;opacity:.55;
  }
  .hero h1 em::before{
    content:"✦";position:absolute;top:-.55em;left:-.62em;
    font-size:.4em;color:var(--accent);opacity:.7;-webkit-text-fill-color:var(--accent);
    animation:emSpark 3.2s ease-in-out infinite;
  }
  @keyframes emSpark{0%,100%{opacity:.35;transform:scale(.9)}50%{opacity:.85;transform:scale(1.1)}}
  .hero .lead{
    font-size:clamp(15px,1.7vw,17px);color:var(--ink-soft);max-width:44ch;
    line-height:1.85;margin-bottom:30px;font-weight:300;
  }
  .hero .lead b{color:var(--ink);font-weight:600}
  .btn{
    display:inline-flex;align-items:center;gap:12px;
    background:var(--accent);color:#fff;
    padding:16px 24px;border-radius:40px;border:1px solid var(--accent);
    font-size:13.5px;letter-spacing:.05em;cursor:pointer;font-family:inherit;
    transition:.4s cubic-bezier(.2,.7,.3,1);
  }
  .btn:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:#fff;gap:18px}
  .btn .arr{transition:transform .4s}
  .btn:hover .arr{transform:translateX(-4px)}
  .btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
  .btn-ghost:hover{background:var(--ink);color:var(--paper)}

  /* ---------- hero: perfume finder (عطریاب) ---------- */
  .hero-aside{position:relative;display:flex}
  .finder{
    background:linear-gradient(180deg,#ffffff 0%,#fcfcfe 100%);
    border:1px solid var(--line);border-radius:20px;
    box-shadow:0 30px 70px -46px rgba(74,74,178,.55), 0 1px 0 rgba(255,255,255,.7) inset;
    padding:clamp(24px,2.6vw,34px);position:relative;overflow:hidden;flex:1;display:flex;flex-direction:column;justify-content:center;
  }
  .finder::before{
    content:"";position:absolute;top:0;right:0;left:0;height:3px;
    background:linear-gradient(90deg,var(--accent-deep),var(--accent),transparent);opacity:.85;
  }
  .fnd-head{
    display:flex;align-items:center;justify-content:space-between;
    margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line-soft);
  }
  .fnd-tag{
    display:inline-flex;align-items:center;gap:7px;
    font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--accent-deep);
  }
  .fnd-tag-ic{width:15px;height:15px;flex:none}
  .fnd-ind{font-size:11px;color:var(--ink-soft);font-weight:600;letter-spacing:.04em}
  /* smooth screen swap */
  @keyframes fndIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
  .fnd-body{animation:fndIn .4s cubic-bezier(.2,.7,.3,1)}

  /* intro */
  .fnd-intro{text-align:center;padding:clamp(8px,2vw,22px) 4px clamp(4px,1vw,10px)}
  .fnd-intro .fnd-emoji{display:block;margin:0 auto 14px;width:46px;height:46px;color:var(--accent)}
  .fnd-intro .fnd-emoji svg{width:100%;height:100%;display:block}
  .fnd-intro h3{font-size:clamp(18px,2.1vw,22px);font-weight:700;line-height:1.4;margin-bottom:10px}
  .fnd-intro p{font-size:13.5px;color:var(--ink-soft);font-weight:300;line-height:1.85;max-width:30ch;margin:0 auto 22px}
  .fnd-start{
    display:inline-flex;align-items:center;gap:10px;
    background:linear-gradient(95deg,var(--accent-deep) 0%,var(--accent) 100%);
    color:#fff;border:1px solid transparent;
    padding:16px 30px;border-radius:40px;font-family:inherit;font-size:14.5px;font-weight:700;letter-spacing:.02em;
    box-shadow:0 16px 30px -14px rgba(74,74,178,.7);
    cursor:pointer;transition:.35s cubic-bezier(.2,.7,.3,1);
  }
  .fnd-start:hover{gap:16px;box-shadow:0 20px 38px -14px rgba(74,74,178,.85);transform:translateY(-2px)}
  .fnd-start span{transition:transform .35s}
  .fnd-start:hover span{transform:translateX(-4px)}

  /* progress + question */
  .fnd-progress{height:5px;border-radius:5px;background:var(--line-soft);overflow:hidden;margin-bottom:20px}
  .fnd-progress span{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--accent),var(--accent-deep));transition:width .45s cubic-bezier(.2,.7,.3,1)}
  .fnd-q{font-size:clamp(17px,2vw,21px);font-weight:700;margin-bottom:18px;line-height:1.4}
  .fnd-opts{display:flex;flex-direction:column;gap:10px}
  .fnd-opt{
    display:flex;align-items:center;gap:12px;width:100%;text-align:right;
    background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);
    padding:13px 16px;font-family:inherit;font-size:14.5px;color:var(--ink);
    cursor:pointer;transition:.25s;
  }
  .fnd-opt:hover{border-color:var(--accent);background:rgba(107,107,179,.05);transform:translateX(-3px)}
  .fnd-opt .fo-e{font-size:20px;line-height:1;flex:none}
  .fnd-opt .fo-t{font-weight:600}
  .fnd-back{
    margin-top:16px;background:transparent;border:0;color:var(--ink-soft);
    font-family:inherit;font-size:12.5px;cursor:pointer;transition:color .25s;
  }
  .fnd-back:hover{color:var(--accent)}

  /* result */
  .fnd-res-head{font-size:14px;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:8px}
  .fnd-res-head b{font-weight:700}
  .fnd-cards{display:flex;flex-direction:column;gap:10px}
  .fnd-card{
    display:flex;align-items:center;gap:12px;
    background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;transition:.25s;
  }
  .fnd-card:hover{border-color:var(--accent)}
  .fnd-card .fc-shot{
    width:56px;height:64px;flex:none;border:1px solid var(--line-soft);border-radius:var(--radius);
    background:#fff;display:grid;place-items:center;padding:6px;overflow:hidden;
  }
  .fnd-card .fc-shot img{width:100%;height:100%;object-fit:contain}
  .fnd-card .fc-info{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
  .fnd-card .fc-match{
    align-self:flex-start;font-size:11px;font-weight:700;color:var(--accent-deep);
    background:rgba(107,107,179,.12);padding:3px 9px;border-radius:20px;
  }
  .fnd-card .fc-name{font-size:13px;font-weight:600;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .fnd-card .fc-price{font-size:12.5px;font-weight:700}
  .fnd-card .fc-price span{font-size:11px;color:var(--ink-soft);font-weight:400;margin-inline-start:2px}
  .fnd-card .fc-buy{
    flex:none;background:var(--ink);color:#fff;border:1px solid var(--ink);
    border-radius:30px;padding:9px 18px;font-family:inherit;font-size:12.5px;font-weight:600;
    cursor:pointer;transition:.3s;
  }
  .fnd-card .fc-buy:hover{background:var(--accent);border-color:var(--accent)}
  .fnd-restart{
    display:block;margin:16px auto 0;background:transparent;border:0;color:var(--accent);
    font-family:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:opacity .25s;
  }
  .fnd-restart:hover{opacity:.7}

  /* ---------- hero: payment deck — refined separated chips ---------- */
  .pay-deck{margin-bottom:2px}
  .pay-deck .deck-h{
    display:flex;align-items:center;gap:8px;font-size:11px;color:var(--ink-soft);
    margin-bottom:14px;font-weight:600;letter-spacing:.05em;text-transform:none;
  }
  .pay-deck .deck-h svg{width:15px;height:15px;color:var(--accent);flex:none}
  /* refined chip row — tidy individual cards */
  .pay-row{display:flex;flex-wrap:wrap;gap:10px}
  .pay-c{
    flex:1 1 0;min-width:128px;
    display:flex;align-items:center;gap:11px;
    padding:13px 14px;border:1px solid var(--line);border-radius:13px;
    background:var(--paper);transition:border-color .3s, background .3s, box-shadow .3s, transform .3s;
  }
  .pay-c:hover{
    border-color:var(--accent);background:rgba(107,107,179,.035);
    box-shadow:0 12px 26px -18px rgba(74,74,178,.55);transform:translateY(-2px);
  }
  .pay-c .pc-ico{
    flex:none;width:38px;height:38px;display:grid;place-items:center;
    border-radius:10px;background:rgba(107,107,179,.09);color:var(--accent-deep);
  }
  .pay-c .pc-ico svg{width:20px;height:20px}
  .pay-c .pc-txt{display:flex;flex-direction:column;gap:6px;line-height:1.2;min-width:0}
  .pay-c .pc-nm{font-size:14.5px;font-weight:700;color:var(--ink)}
  .pay-c .pc-st{
    align-self:flex-start;
    font-size:10px;font-weight:700;letter-spacing:.02em;color:var(--accent-deep);
    display:inline-flex;align-items:center;gap:5px;
    padding:3px 9px 3px 8px;border-radius:20px;background:rgba(107,107,179,.11);
  }
  .pay-c .pc-st::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}
  .pay-c.soon .pc-ico{color:var(--ink-soft);background:var(--line-soft)}
  .pay-c.soon .pc-nm{color:var(--ink-soft)}
  .pay-c.soon .pc-st{color:#8c8b96;background:var(--line-soft)}
  .pay-c.soon .pc-st::before{background:#b6b5c0}

  /* clean line icons — inherit color from theme */
  .ico{width:19px;height:19px;display:block;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
  .search .ico{width:17px;height:17px;color:#9a9aa6}

  /* brand chips — neat aligned grid (سطر و ستونی), equal-width columns */
  .brand-chips{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;max-width:1100px;margin:0 auto;padding:0 24px}
  .brand-chip{display:flex;align-items:center;justify-content:center;text-align:center;padding:11px 12px;
    border:1px solid var(--line);border-radius:11px;background:var(--paper);text-decoration:none;
    font-family:"Segoe UI",sans-serif;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;
    color:var(--ink-soft);font-weight:600;line-height:1.3;transition:.3s;}
  .brand-chip:hover{border-color:var(--accent);color:var(--accent-deep);background:rgba(107,107,179,.05)}
  @media(max-width:1080px){.brand-chips{grid-template-columns:repeat(4,1fr)}}
  @media(max-width:560px){.brand-chips{grid-template-columns:repeat(3,1fr)}}
  @media(max-width:380px){.brand-chips{grid-template-columns:repeat(2,1fr)}}

  /* ---------- brand infinite marquee ---------- */
  .marquee{direction:ltr;
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    overflow:hidden;background:var(--paper);
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%);
            mask-image:linear-gradient(90deg,transparent 0,#000 8%,#000 92%,transparent 100%);
  }
  .marquee-track{
    display:flex;width:max-content;align-items:center;padding:17px 0;
    animation:marquee 80s linear infinite;direction:ltr;
    will-change:transform;
  }
  .marquee:hover .marquee-track{animation-play-state:paused}
  .marquee-item{
    display:inline-flex;align-items:center;padding:10px 22px;margin:0 6px;
    border:1px solid var(--line);border-radius:11px;background:var(--paper);
    font-family:"Segoe UI",sans-serif;
    font-size:clamp(12px,1.4vw,15px);letter-spacing:.18em;text-transform:uppercase;
    color:var(--ink-soft);font-weight:600;white-space:nowrap;transition:.3s;
  }
  .marquee-item:hover{color:var(--accent);border-color:var(--accent);background:rgba(107,107,179,.05)}
 .marquee-dot{display:none}
  .marquee-cell{position:relative;flex-shrink:0;text-align:center;padding:8px clamp(34px,4vw,56px);
    font-family:"Segoe UI",sans-serif;font-size:13px;letter-spacing:.26em;color:#9492a0;font-weight:600;white-space:nowrap;transition:color .4s;}
  .marquee-cell::before{content:"";position:absolute;inset-inline-start:0;top:50%;transform:translateY(-50%);width:1px;height:13px;background:var(--line)}
  .marquee-cell:hover{color:var(--accent-deep)}
  @keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  @media(max-width:560px){
    .marquee-cell{padding:8px 28px;letter-spacing:.24em;font-size:11.5px}
    .marquee-track{animation-duration:60s}
  }

  /* ---------- section heads ---------- */
  .sec{padding:clamp(60px,9vh,110px) 0}
  .sec-head{
    display:flex;justify-content:space-between;align-items:flex-end;
    gap:24px;margin-bottom:54px;
  }
  .sec-head h2{font-size:clamp(26px,3.4vw,40px);font-weight:700;letter-spacing:-.01em;line-height:1.2}
  .sec-head .sub{font-size:13px;color:var(--ink-soft);font-weight:300;margin-top:8px;max-width:40ch}
  .sec-head .label{margin-bottom:14px}

  /* ---------- categories ---------- */
  /* richer-but-minimal tiles: each a bordered, softly-tinted card with a visible CTA */
  .cats{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(12px,1.4vw,18px)}
  a.cat{text-decoration:none;color:inherit}
  .cat{
    padding:30px 26px;border:1px solid var(--line);border-radius:16px;position:relative;overflow:hidden;
    min-height:212px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;
    background:var(--tint,linear-gradient(160deg,rgba(107,107,179,.07) 0%,#fff 72%));
    transition:border-color .4s,box-shadow .4s,transform .4s cubic-bezier(.2,.7,.3,1);
  }
  /* faint decorative ring in the top corner for a finished, on-brand feel — tinted per category */
  .cat::after{content:"";position:absolute;top:-46px;inset-inline-end:-46px;width:120px;height:120px;border-radius:50%;
    border:1px solid var(--cring,rgba(107,107,179,.16));pointer-events:none;transition:border-color .4s}
  .cat:hover{border-color:var(--cedge,rgba(107,107,179,.4));box-shadow:0 14px 32px var(--cshad,rgba(74,74,178,.12));transform:translateY(-5px)}
  .cat .num{font-family:"Segoe UI",sans-serif;font-size:11px;color:var(--caccent,var(--accent));letter-spacing:.2em;font-weight:700}
  .cat h3{font-size:21px;font-weight:700;margin-top:auto}
  .cat .en{font-size:11px;letter-spacing:.28em;color:var(--ink-soft);text-transform:uppercase;margin-top:4px;font-family:"Segoe UI",sans-serif}
  /* clearer «مشاهده ←» CTA — a small pill that reads unmistakably as a link */
  .cat .go{
    margin-top:18px;align-self:flex-start;font-size:12.5px;font-weight:700;color:var(--caccent,var(--accent-deep));
    display:inline-flex;gap:7px;align-items:center;min-height:36px;
    padding:7px 15px;border-radius:30px;background:rgba(255,255,255,.62);
    border:1px solid var(--cring,var(--line));backdrop-filter:blur(2px);
    transition:gap .35s,background .35s,border-color .35s,box-shadow .35s;
  }
  .cat .go .a{transition:transform .35s}
  .cat:hover .go{gap:12px;background:#fff;border-color:var(--caccent,var(--accent));box-shadow:0 6px 16px var(--cshad,rgba(74,74,178,.12))}
  .cat:hover .go .a{transform:translateX(-4px)}

  /* ---------- product grid — Scento-style cards (standalone rounded tiles) ---------- */
  .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,22px)}

  /* ===== unified product card — Scento style (approved mockups/scento-cards-sample.html) =====
     shared by #grid, the flash row & recently-viewed row. A cutout bottle floats on a
     per-product colour-matched radial halo (--tint, from the bottle's dominant colour). */
  .pcard{
    position:relative;display:flex;flex-direction:column;
    background:var(--paper);border:1px solid var(--line);border-radius:20px;overflow:hidden;
    box-shadow:0 1px 2px rgba(20,18,40,.04);
    transition:border-color .35s, box-shadow .25s ease, transform .25s ease;
  }
  .pcard:hover{
    border-color:rgba(107,107,179,.30);
    transform:translateY(-5px);
    box-shadow:0 22px 46px -20px rgba(40,36,80,.30);
  }
  /* colored stage — radial halo built from the product's own --tint pastel */
  .pc-stage{
    position:relative;padding:18px 18px 0;height:clamp(244px,24vw,288px);
    background:radial-gradient(135% 100% at 50% 8%,
      var(--tint,#e9e6f1) 0%,
      color-mix(in srgb,var(--tint,#e9e6f1) 82%,#fff) 30%,
      color-mix(in srgb,var(--tint,#e9e6f1) 40%,#fff) 60%,
      #ffffff 88%);
  }
  /* corner badge — soft, glassy pill */
  .pc-badge{
    position:absolute;top:14px;inset-inline-end:14px;z-index:3;
    font-size:11.5px;font-weight:700;line-height:1.5;
    padding:5px 11px;border-radius:999px;
    box-shadow:0 4px 12px -4px rgba(40,30,70,.35);
  }
  .pc-badge-best{background:#fff;color:var(--accent-deep);border:1px solid #e6e6f4}
  .pc-badge-excl{background:var(--accent);color:#fff}
  .pc-badge-limited{background:#2a2735;color:#fff}
  /* wishlist heart — opposite corner */
  .pc-wish{
    position:absolute;top:13px;inset-inline-start:14px;z-index:3;
    width:34px;height:34px;border-radius:50%;
    background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);
    display:grid;place-items:center;cursor:pointer;
    box-shadow:0 4px 12px -5px rgba(40,30,70,.3);transition:.3s;
  }
  .pc-wish svg{width:18px;height:18px;fill:none;stroke:#9a98ab;stroke-width:1.7}
  .pc-wish:hover svg{stroke:var(--accent);fill:rgba(107,107,179,.12)}
  .pc-wish.on svg{stroke:var(--accent);fill:rgba(107,107,179,.22)}
  /* cutout bottle, floating, aligned to the stage floor */
  .pc-bottle-wrap{
    position:relative;height:100%;display:flex;align-items:flex-end;justify-content:center;
  }
  .pc-bottle-wrap img,.pc-bottle{
    position:relative;z-index:2;max-height:88%;width:auto;max-width:100%;object-fit:contain;
    transform:translateY(-6px);
    filter:drop-shadow(0 16px 17px rgba(28,26,40,.26));
    transition:transform .3s ease;
  }
  .pcard:hover .pc-bottle-wrap img{transform:translateY(-11px) scale(1.03)}
  .pc-floor{
    position:absolute;bottom:8px;left:50%;transform:translateX(-50%);
    width:62%;height:20px;z-index:1;
    background:radial-gradient(50% 100% at 50% 50%, rgba(40,30,20,.22), transparent 72%);
    filter:blur(4px);
  }
  /* body */
  .pc-body{display:flex;flex-direction:column;flex:1;padding:0 18px 18px;text-align:center}
  .pc-brand{
    font-family:"Segoe UI",sans-serif;
    font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
    color:var(--ink-soft);margin-top:14px;
  }
  .pc-name{font-size:16px;font-weight:800;line-height:1.5;margin-top:5px;letter-spacing:-.2px}
  .pc-name a{color:var(--ink)}
  /* star rating */
  .pc-rating{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:9px}
  .pc-stars{display:inline-flex;gap:1px;direction:ltr}
  .pc-stars .star{width:15px;height:15px;display:inline-block;position:relative}
  .pc-stars .star .st{width:15px;height:15px;position:absolute;inset:0}
  .pc-stars .star.full .st{fill:#f3b340}
  .pc-stars .star.empty .st{fill:#e2e1ea}
  .pc-stars .star.half .st{fill:#e2e1ea}
  .pc-stars .star.half::before{
    content:"";position:absolute;inset:0;width:50%;overflow:hidden;z-index:2;
    background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23f3b340" d="M12 2l2.9 6.3 6.9.8-5.1 4.7 1.4 6.8L12 17.8 5.9 21.4l1.4-6.8L2.2 9.9l6.9-.8z"/></svg>') left/15px 15px no-repeat;
  }
  .pc-rate-num{font-size:13px;font-weight:700;color:#46444f}
  /* 3-note row */
  .pc-notes{
    display:grid;grid-template-columns:repeat(3,1fr);gap:6px;
    margin-top:14px;padding:11px 4px;
    background:#fafaff;border:1px solid #f0f0f7;border-radius:13px;
  }
  .pc-note{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0}
  .pc-note-ic{
    font-size:17px;width:34px;height:34px;border-radius:50%;
    display:grid;place-items:center;background:#fff;
    box-shadow:0 2px 6px -2px rgba(40,30,70,.18);
  }
  .pc-note-lb{font-size:11.5px;color:#56545f;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  /* پخش / ماندگاری chips */
  .pc-stats{display:flex;gap:8px;margin-top:12px;justify-content:center}
  .pc-chip{
    flex:1;font-size:11.5px;color:#5d5b67;
    background:#f5f5fb;border-radius:9px;padding:7px 6px;
    display:flex;align-items:center;justify-content:center;gap:4px;
  }
  .pc-chip .ci{font-size:13px}
  .pc-chip b{color:var(--accent-deep);font-weight:800}
  /* sale strip */
  .pc-price-top{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:15px;min-height:20px}
  .pc-off{background:var(--accent);color:#fff;font-size:11.5px;font-weight:800;padding:2px 8px;border-radius:7px}
  .pc-off-soft{background:#eaf6ee;color:#2e9a55}
  .pc-old{font-size:12.5px;color:#a6a4b1;text-decoration:line-through}
  /* buy button */
  .pc-buy{
    margin-top:9px;width:100%;border:none;cursor:pointer;
    background:var(--accent);color:#fff;border-radius:13px;padding:11px 14px;
    display:flex;align-items:center;justify-content:space-between;
    box-shadow:0 10px 20px -10px rgba(107,107,179,.7);
    transition:background .2s ease, box-shadow .2s ease;
  }
  .pc-buy:hover{background:var(--accent-deep);box-shadow:0 14px 24px -10px rgba(84,84,154,.8)}
  .pc-buy-price{font-size:15px;font-weight:800}
  .pc-buy-price .cur{font-size:11px;font-weight:600;opacity:.85}
  .pc-buy-cta{font-size:12px;font-weight:700;opacity:.95;border-inline-start:1px solid rgba(255,255,255,.28);padding-inline-start:10px}

  /* ---------- product tabs (پرفروش / جدید / تخفیف‌دار) — flush with the grid ---------- */
  /* sit the tab row 1px over the grid's top border so the two read as one connected unit */
  .prod-tabs{
    display:flex;gap:0;flex-wrap:wrap;align-items:stretch;justify-content:center;
    margin-bottom:-1px;position:relative;z-index:1;
  }
  .prod-tab{
    position:relative;background:transparent;border:0;
    border-inline-start:1px solid var(--line);
    font-family:inherit;font-size:16.5px;font-weight:600;color:var(--ink-soft);
    padding:18px 36px;cursor:pointer;transition:color .3s;white-space:nowrap;
  }
  .prod-tab:first-child{border-inline-start:0;padding-inline-start:0}
  .prod-tab::after{
    content:"";position:absolute;bottom:-1px;right:0;left:0;height:2px;
    background:var(--accent);transform:scaleX(0);transform-origin:center;
    transition:transform .35s cubic-bezier(.2,.7,.3,1);
  }
  .prod-tab:hover{color:var(--ink)}
  .prod-tab.is-active{color:var(--accent-deep)}
  .prod-tab.is-active::after{transform:scaleX(1)}
  .prod-tab .pt-n{
    font-family:"Segoe UI",sans-serif;font-size:11px;font-weight:700;color:var(--ink-soft);
    background:var(--line-soft);border-radius:20px;padding:1px 7px;margin-inline-start:7px;
    transition:.3s;
  }
  .prod-tab.is-active .pt-n{background:rgba(107,107,179,.13);color:var(--accent-deep)}
  @keyframes gridIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

  /* ---------- پیشنهادِ شگفت‌انگیز (flash deals) — delicate, editorial, white ---------- */
  /* no purple panel: the section reads as plain page, bound only by hairlines */
  .flash{
    background:var(--paper);
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    padding:clamp(40px,6vh,72px) 0;margin-top:clamp(46px,7vh,72px);
  }
  .flash-head{
    display:flex;align-items:center;justify-content:space-between;gap:16px 24px;
    flex-wrap:wrap;margin-bottom:54px;
  }
  .flash-title{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
  .flash-title h2{
    font-size:clamp(26px,3.4vw,40px);font-weight:700;letter-spacing:-.01em;line-height:1.2;
    display:inline-flex;align-items:center;gap:10px;
  }
  .flash-title h2 .bolt{color:var(--accent);line-height:0;display:inline-flex}
  .flash-title h2 .bolt svg{width:.92em;height:.92em;display:block}
  /* tasteful creative touch — a thin vertical accent-gradient divider */
  .flash-sep{
    width:1px;height:26px;flex:none;
    background:linear-gradient(var(--line) 0%,var(--accent) 50%,var(--line) 100%);
    opacity:.65;
  }
  /* countdown — minimal, no chunky pill panel; clean tinted digit chips */
  .flash-countdown{display:inline-flex;align-items:center;gap:10px}
  .flash-countdown .cd-lbl{font-size:11px;color:var(--ink-soft);font-weight:500;letter-spacing:.02em}
  .flash-clock{display:inline-flex;align-items:center;gap:4px;direction:ltr}
  .flash-clock b{
    font-family:"Segoe UI",sans-serif;font-size:12.5px;font-weight:700;color:var(--accent-deep);
    background:rgba(107,107,179,.07);border-radius:5px;padding:2px 6px;min-width:25px;text-align:center;
  }
  .flash-clock i{font-style:normal;color:var(--accent);opacity:.5;font-weight:700}
  .flash-all{
    display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;
    color:var(--accent-deep);transition:gap .3s;margin-inline-start:auto;
  }
  .flash-all:hover{gap:13px}
  .flash-all .arr{transition:transform .3s}
  /* horizontal scroller — hosts the unified .pcard, hidden scrollbar */
  .flash-row{
    display:flex;gap:clamp(12px,1.4vw,18px);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;
    padding:3px 0 4px;
  }
  .flash-row::-webkit-scrollbar{display:none}
  .flash-row .pcard{flex:0 0 clamp(248px,26vw,300px)}
  /* delicate deal card — slimmer & airier than the main grid card */
  .fcard{
    flex:0 0 clamp(196px,21vw,224px);position:relative;padding:24px 20px 22px;
    border-inline-start:1px solid var(--line);background:var(--paper);transition:background .4s;
    display:flex;flex-direction:column;
  }
  .fcard:first-child{border-inline-start:0}
  .fcard:hover{background:var(--paper-2)}
  /* refined ٪۳۰ badge — small, elegant, brand-purple, floats on the photo corner */
  .fcard .fbadge{
    position:absolute;top:16px;inset-inline-end:16px;z-index:2;
    font-size:11px;font-weight:700;letter-spacing:.02em;color:var(--accent-deep);
    background:rgba(107,107,179,.1);padding:3px 9px;border-radius:30px;line-height:1.5;
  }
  /* lighter photo — hairline tile, no heavy shadow */
  .fcard .fshot{
    aspect-ratio:1/1.15;margin:4px 0 16px;
    background:#fff;border:1px solid var(--line-soft);border-radius:var(--radius);
    display:grid;place-items:center;padding:14px;overflow:hidden;
  }
  .fcard .fshot img{width:100%;height:100%;object-fit:contain;transition:transform .55s cubic-bezier(.2,.7,.3,1)}
  .fcard:hover .fshot img{transform:translateY(-5px) scale(1.04)}
  .fcard .fbrand{
    font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);
    font-family:"Segoe UI",sans-serif;font-weight:600;margin-bottom:7px;
  }
  .fcard .fname{
    font-size:13.5px;font-weight:600;line-height:1.5;color:var(--ink);margin-bottom:12px;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:40px;
  }
  .fcard .fprices{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-bottom:14px}
  .fcard .fnow{font-size:14px;font-weight:700;color:var(--ink);letter-spacing:.01em}
  .fcard .fnow .ft{font-size:11px;color:var(--ink-soft);font-weight:400;margin-inline-start:3px}
  .fcard .fold{font-size:11.5px;color:#9a9aa6;text-decoration:line-through}
  /* lighter «افزودن به سبد» — slim ghost text + minimal + icon, over a hairline */
  .fcard .fadd{
    margin-top:auto;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;
    background:transparent;border:0;border-top:1px solid var(--line-soft);
    padding:13px 0 0;font-family:inherit;font-size:12.5px;font-weight:600;letter-spacing:.01em;
    color:var(--accent-deep);cursor:pointer;transition:color .3s;
  }
  .fcard .fadd:hover{color:var(--accent)}
  .fcard .fadd .fadd-ic{
    width:24px;height:24px;flex:none;display:grid;place-items:center;line-height:1;
    border:1px solid var(--line);border-radius:50%;font-size:14px;color:var(--accent-deep);transition:.35s;
  }
  .fcard .fadd:hover .fadd-ic{background:var(--accent);border-color:var(--accent);color:#fff;transform:rotate(90deg)}
  @media(max-width:480px){
    .flash{margin-top:40px;padding:34px 0}
    .flash-head{margin-bottom:22px}
    .flash-sep{display:none}
    .flash-all{margin-inline-start:0}
    .fcard{flex:0 0 168px;padding:18px 16px 18px}
    .fcard .fname{font-size:13px;min-height:38px}
    .fcard .fadd{font-size:12px}
  }

  /* ---------- brands ---------- */
  .brands{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}
  .brands-track{display:flex;gap:0}
  .brand{
    flex:1;text-align:center;padding:38px 12px;
    border-inline-start:1px solid var(--line);font-family:"Segoe UI",sans-serif;
    font-size:clamp(13px,1.6vw,17px);letter-spacing:.28em;color:#9a9aa6;font-weight:500;
    transition:.4s;cursor:default;white-space:nowrap;
  }
  .brand:first-child{border-inline-start:0}
  .brand:hover{color:var(--accent-deep);background:#fff;letter-spacing:.34em}

  /* ---------- trust / commitment (تعهدِ ما — the ONE trust section) ---------- */
  .trust-head{align-items:flex-end}
  .trust-head .sub{font-size:13px;color:var(--ink-soft);font-weight:300;margin-top:10px;max-width:44ch}
  /* headline stat — folds the «۳۳۰+ عطرِ اورجینال» number in, cleanly */
  .trust-stat{flex:none;text-align:left;line-height:1.15}
  .trust-stat b{
    display:block;font-size:clamp(36px,4.6vw,54px);font-weight:700;
    letter-spacing:-.02em;line-height:1;
    background:linear-gradient(95deg,var(--accent-deep) 0%,var(--accent) 58%,var(--accent) 100%);
    -webkit-background-clip:text;background-clip:text;
    -webkit-text-fill-color:transparent;color:var(--accent-deep);
  }
  .trust-stat span{font-size:12.5px;color:var(--ink-soft);font-weight:500;letter-spacing:.02em;margin-top:6px;display:inline-block}

  .trust{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .tr{
    padding:56px 32px;border-inline-start:1px solid var(--line);text-align:center;
    transition:background .4s;
  }
  .tr:first-child{border-inline-start:0}
  .tr:hover{background:var(--paper-2)}
  .tr .ic{
    width:64px;height:64px;margin:0 auto 22px;border:1px solid var(--line);border-radius:50%;
    display:grid;place-items:center;color:var(--accent);transition:.4s;
  }
  .tr .ic svg{width:25px;height:25px}
  .tr:hover .ic{border-color:var(--accent);background:#fff;transform:translateY(-4px);box-shadow:0 16px 32px rgba(74,74,178,.14)}
  .tr h4{font-size:16.5px;font-weight:700}
  .tr p{font-size:12.5px;color:var(--ink-soft);font-weight:300;margin-top:8px;line-height:1.7}

  /* ---------- brand story (about band) — flat, editorial, hairline ---------- */
  .story{
    border-top:1px solid var(--line);
    background:var(--paper);
  }
  .story-in{
    display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(36px,6vw,84px);
    align-items:center;padding:clamp(56px,9vh,110px) 0;
  }
  .story-media{position:relative;justify-self:center;max-width:420px;width:100%}
  /* image framed by a single clean hairline — no glow, no heavy shadow */
  .story-frame{
    position:relative;overflow:hidden;border-radius:16px;
    border:1px solid var(--line);background:#fff;
  }
  .story-frame img{display:block;width:100%;height:auto}
  .story-badge{
    position:absolute;z-index:2;bottom:14px;right:14px;
    display:inline-flex;align-items:center;gap:9px;
    background:rgba(255,255,255,.92);backdrop-filter:blur(6px);
    border:1px solid var(--line);border-radius:40px;padding:8px 15px;
  }
  .story-badge svg{width:18px;height:18px;color:var(--accent);flex:none}
  .story-badge b{font-size:12.5px;font-weight:700;color:var(--ink)}
  .story-body .label{margin-bottom:16px}
  .story-body h2{
    font-size:clamp(26px,3.4vw,42px);font-weight:700;line-height:1.22;
    letter-spacing:-.01em;margin-bottom:22px;
  }
  .story-body h2 em{font-style:normal;color:var(--accent)}
  /* story copy — set off by a thin hairline rule, not a panel */
  .story-body p.lead{
    font-size:clamp(14.5px,1.6vw,17px);color:var(--ink-soft);font-weight:300;
    line-height:2.05;max-width:52ch;
    padding-top:22px;border-top:1px solid var(--line);margin-bottom:30px;
  }
  .story-cta{
    display:inline-flex;align-items:center;gap:12px;
    background:var(--accent);color:#fff;border:1px solid var(--accent);
    padding:14px 28px;border-radius:40px;font-size:13.5px;font-weight:600;
    letter-spacing:.02em;transition:.4s cubic-bezier(.2,.7,.3,1);cursor:pointer;
  }
  .story-cta:hover{background:transparent;color:var(--accent-deep);gap:18px}
  .story-cta .arr{transition:transform .4s}
  .story-cta:hover .arr{transform:translateX(-4px)}

  /* about: two concentration items — connected hairline grid */
  .conc-cards{
    display:grid;grid-template-columns:1fr 1fr;
    border-block:1px solid var(--line);margin-bottom:30px;
  }
  .conc{
    display:flex;align-items:center;gap:13px;
    padding:16px 18px;border-inline-start:1px solid var(--line);transition:background .3s;
  }
  .conc:first-child{border-inline-start:0;padding-inline-start:0}
  .conc:hover{background:var(--paper-2)}
  .conc .conc-letter{
    width:42px;height:42px;flex:none;display:grid;place-items:center;
    font-family:"Segoe UI",sans-serif;font-weight:700;font-size:14px;letter-spacing:.02em;
    border:1px solid var(--line);border-radius:var(--radius);color:var(--accent-deep);
  }
  .conc.conc-x .conc-letter{background:var(--accent);color:#fff;border-color:var(--accent)}
  .conc .conc-txt{display:flex;flex-direction:column;line-height:1.4;min-width:0;text-align:right}
  .conc .conc-txt b{font-size:14.5px;font-weight:700;color:var(--ink)}
  .conc .conc-txt .conc-en{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);font-family:"Segoe UI",sans-serif;margin-top:3px}

  /* ---------- footer (flat, light, hairline — cohesive with the page) ---------- */
  footer{
    color:var(--ink-soft);
    background:var(--paper);
    border-top:1px solid var(--line);
  }

  /* trust / payment row */
  .f-trust{
    border-bottom:1px solid var(--line);
    padding:clamp(34px,5vh,56px) 0;
  }
  .f-trust-in{display:grid;grid-template-columns:auto 1fr;gap:clamp(26px,4vw,56px);align-items:center}
  .seals{display:flex;gap:14px;flex-wrap:wrap;align-items:stretch}
  /* credible seal badges — framed tile, shield+check crest, verified strip */
  .seal-tile{
    position:relative;background:linear-gradient(165deg,#fbfbff 0%,#fff 100%);
    border:1px solid var(--line);border-radius:14px;padding:14px 14px 12px;
    display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;
    transition:.3s;box-shadow:0 2px 10px rgba(74,74,178,.04);
  }
  .seal-tile:hover{border-color:rgba(107,107,179,.4);box-shadow:0 10px 24px rgba(74,74,178,.1)}
  .seal-tile img{display:block}
  .seal-tile .ss-ic{
    width:42px;height:42px;border-radius:12px;display:grid;place-items:center;margin:2px auto 8px;
    background:linear-gradient(160deg,rgba(107,107,179,.16),rgba(107,107,179,.06));
    color:var(--accent-deep);border:1px solid rgba(107,107,179,.22);
  }
  .seal-tile .ss-ic svg{width:23px;height:23px}
  .seal-tile b{font-size:11.5px;font-weight:700;color:var(--ink);display:block;line-height:1.45;padding:0 2px}
  .seal-tile>span{font-size:11px;letter-spacing:.16em;color:var(--ink-soft);text-transform:uppercase;font-family:"Segoe UI",sans-serif;display:block;margin-top:3px}
  .seal-vf{display:inline-flex;align-items:center;gap:4px;margin-top:9px;font-size:11px;font-weight:700;
    color:var(--accent-deep);background:rgba(107,107,179,.1);border-radius:20px;padding:3px 10px;letter-spacing:0}
  .seal-vf svg{width:11px;height:11px;flex:none}
  .seal-enamad{width:138px}
  .seal-saman{width:120px}
  .pay-block{display:flex;flex-direction:column;gap:12px;justify-self:end;min-width:0}
  .pay-block .pb-h{
    font-size:11px;letter-spacing:.2em;text-transform:uppercase;
    color:var(--ink-soft);font-weight:600;
  }
  .pay-chips{display:flex;gap:10px;flex-wrap:wrap}
  .pchip{
    display:inline-flex;align-items:center;gap:9px;
    background:var(--paper);border-radius:40px;padding:8px 16px;
    font-size:12.5px;font-weight:600;color:var(--ink);
    border:1px solid var(--line);transition:.3s;
  }
  .pchip:hover{border-color:var(--accent);color:var(--accent-deep)}
  .pchip img{display:block;flex:none}
  .pchip .pc-dot{width:9px;height:9px;border-radius:50%;background:var(--accent);flex:none}
  .pchip svg{width:16px;height:16px;color:var(--accent-deep);flex:none}
  .pchip.secure{background:rgba(107,107,179,.07);color:var(--accent-deep);border-color:rgba(107,107,179,.3)}
  .pchip.secure svg{color:var(--accent-deep)}

  .f-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.3fr;gap:40px;padding:clamp(48px,7vh,80px) 0 54px}
  .f-logo{margin-bottom:18px}
  .f-logo img{height:38px;width:auto;display:block}
  .f-about{font-size:13px;color:var(--ink-soft);line-height:2.1;font-weight:300;max-width:38ch}
  .f-col h5{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);margin-bottom:20px;font-weight:600}
  .f-col a,.f-col p{display:block;font-size:13px;color:var(--ink-soft);margin-bottom:12px;transition:color .3s;font-weight:300}
  .f-col a:hover{color:var(--accent-deep)}
  .f-contact b{font-family:"Segoe UI",sans-serif;letter-spacing:.04em;direction:ltr;display:inline-block;color:var(--ink)}
  .f-bottom{
    border-top:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;
    align-items:center;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--ink-soft);
  }
  .socials{display:flex;gap:10px}
  .socials a{position:relative;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;transition:.3s;background:var(--paper);color:var(--ink-soft)}
  .socials a::after{content:"";position:absolute;inset:-3px;border-radius:50%}
  .socials a:hover{border-color:var(--accent);color:var(--accent-deep);background:rgba(107,107,179,.05)}

  /* ---------- chat fab ---------- */
  .fab{
    position:fixed;bottom:26px;left:26px;z-index:60;
    width:58px;height:58px;border-radius:50%;background:var(--ink);color:var(--paper);
    border:0;cursor:pointer;font-size:22px;display:grid;place-items:center;
    box-shadow:0 14px 34px rgba(74,74,178,.22);transition:.4s;
  }
  .fab:hover{transform:translateY(-4px) scale(1.05);background:var(--accent-deep)}
  .fab::after{
    content:"";position:absolute;inset:0;border-radius:50%;border:1px solid var(--accent);
    animation:ring 2.4s ease-out infinite;
  }
  @keyframes ring{0%{transform:scale(1);opacity:.6}100%{transform:scale(1.6);opacity:0}}

  /* ============ responsive ============ */

  /* tablet — collapse desktop nav into a dropdown toggled by the hamburger */
  @media(max-width:1080px){
    .nav-toggle{display:grid}
    nav.main{
      display:none;position:absolute;top:100%;right:0;left:0;
      flex-direction:column;gap:0;margin:0;background:var(--paper);
      border-bottom:1px solid var(--line);box-shadow:0 18px 30px rgba(74,74,178,.08);
    }
    nav.main.open{display:flex}
    nav.main a{
      font-size:15px;padding:15px var(--gut);border-top:1px solid var(--line-soft);
    }
    nav.main a::after{display:none}
    nav.main .nav-extra{display:block;color:var(--accent-deep);font-weight:600}

    .grid,.cats,.trust{grid-template-columns:repeat(2,1fr)}
    .grid .card:nth-child(4n+1){border-inline-start:1px solid var(--line)}
    .grid .card:nth-child(2n+1),.cats .cat:nth-child(2n+1),.trust .tr:nth-child(2n+1){border-inline-start:0}
    .hero-grid{grid-template-columns:1fr;gap:clamp(30px,5vw,44px)}
    .f-grid{grid-template-columns:1fr 1fr}
    .brands-track{flex-wrap:wrap}
    .brand{flex:0 0 25%;border-bottom:1px solid var(--line)}
  }

  /* small tablet / large phone */
  @media(max-width:768px){
    .bar{height:64px;gap:14px}
    .search{min-width:0;width:160px}
    .search input{width:100%}
    .promo{font-size:11px;letter-spacing:.16em}
    .sec{padding:clamp(48px,7vh,80px) 0}
    .sec-head{margin-bottom:36px}
    .brand{flex:0 0 33.333%;padding:30px 8px}

    /* brand story → stack, image first */
    .story-in{grid-template-columns:1fr;gap:34px;text-align:center}
    .story-media{order:-1}
    .story-body .label{margin-bottom:12px}
    .story-body p.lead{max-width:none;margin-inline:auto}

    /* footer trust row → stack */
    .f-trust-in{grid-template-columns:1fr;gap:30px}
    .seals{justify-content:center}
    .pay-block{justify-self:stretch}
    .pay-chips{justify-content:center}
    .pay-block .pb-h{text-align:center}

    /* trust head → stack the stat under the heading */
    .trust-head{flex-direction:column;align-items:flex-start;gap:18px}
    .trust-stat{text-align:right;display:flex;align-items:baseline;gap:10px}
    .trust-stat span{margin-top:0}
  }

  /* phones — keep a comfortable 2-column product grid */
  @media(max-width:480px){
    .bar{height:60px}
    .logo img{height:34px}
    .search{display:none}
    .tools{gap:2px}
    .icon-btn{width:44px;height:44px;font-size:17px}

    .hero{padding:26px 0 30px}
    .hero h1{margin-bottom:14px}
    .hero .lead{font-size:14px;line-height:1.85;margin-bottom:22px}
    .hero-eyebrow{margin-bottom:18px;font-size:10.5px;padding:7px 13px}
    .finder{padding:20px 16px}
    .pay-c{min-width:0;flex:1 1 100%;padding:13px 15px;justify-content:space-between}
    .pay-c .pc-txt{align-items:flex-start}

    .sec-head{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:28px}
    .sec-head .sub{max-width:none}

    /* product tabs: horizontal scroll, no wrap, hidden scrollbar */
    .prod-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
    .prod-tabs::-webkit-scrollbar{display:none}
    .prod-tab{flex:none;padding:12px 14px;font-size:13.5px}
    .prod-tab .pt-n{margin-inline-start:5px;font-size:11px}

    /* product grid: exactly 2 columns, comfortable */
    .grid{grid-template-columns:repeat(2,1fr);gap:12px}
    .pc-stage{height:clamp(180px,42vw,232px);padding:14px 14px 0}
    .pc-body{padding:0 13px 14px}
    .pc-badge{font-size:10.5px;padding:4px 9px;top:10px;inset-inline-end:10px}
    .pc-wish{width:32px;height:32px;top:10px;inset-inline-start:10px}
    .pc-wish svg{width:16px;height:16px}
    .pc-name{font-size:14px;margin-top:6px;line-height:1.45}
    .pc-note-lb{font-size:11px}
    .pc-note-ic{width:30px;height:30px;font-size:15px}
    .pc-chip{font-size:11px;padding:6px 5px}
    .pc-buy-price{font-size:14px}
    .pc-buy-cta{font-size:11px;padding-inline-start:8px}
    .pc-old{font-size:11px}

    /* categories & trust: 2 columns */
    .cats{grid-template-columns:repeat(2,1fr)}
    .cat{min-height:160px;padding:24px 18px}
    .cat h3{font-size:18px}
    .trust{grid-template-columns:repeat(2,1fr)}
    .tr{padding:30px 16px}

    /* about: concentration items stack — hairline switches to top dividers */
    .conc-cards{grid-template-columns:1fr}
    .conc,.conc:first-child{border-inline-start:0;padding-inline-start:18px}
    .conc{border-top:1px solid var(--line)}
    .conc:first-child{border-top:0}

    /* brands: 2 per row */
    .brand{flex:0 0 50%;padding:26px 8px;font-size:13px;letter-spacing:.2em}

    /* footer single column */
    .f-grid{grid-template-columns:1fr;gap:30px}
    .f-bottom{flex-direction:column;text-align:center}

    .fab{width:50px;height:50px;font-size:19px;bottom:18px;left:18px}
  }

  /* ---------- آخرین بازدیدهای شما (recently viewed) — horizontal row, same unified card ---------- */
  .recent-row{
    display:flex;gap:clamp(12px,1.4vw,18px);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;
    padding:3px 0 4px;
  }
  .recent-row::-webkit-scrollbar{display:none}
  .recent-row .pcard{flex:0 0 clamp(248px,26vw,300px)}
  @media(max-width:480px){
    .flash-row .pcard,.recent-row .pcard{flex:0 0 230px}
  }

  /* ---------- مجلهٔ پرشیوم (magazine / blog) — flat editorial grid ---------- */
  .mag-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
  a.mcard{text-decoration:none;color:inherit}
  .mcard{
    display:flex;flex-direction:column;
    border-inline-start:1px solid var(--line);border-bottom:1px solid var(--line);
    background:var(--paper);transition:transform .4s cubic-bezier(.2,.7,.3,1), box-shadow .4s;
  }
  .mag-grid .mcard:nth-child(3n+1){border-inline-start:0}
  .mcard:hover{transform:translateY(-5px);box-shadow:0 22px 44px rgba(74,74,178,.10)}
  .mcard-cover{aspect-ratio:16/10;overflow:hidden;background:var(--paper-2);border-bottom:1px solid var(--line-soft)}
  .mcard-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.2,.7,.3,1)}
  .mcard:hover .mcard-cover img{transform:scale(1.05)}
  .mcard-body{padding:26px 26px 28px;display:flex;flex-direction:column;flex:1}
  .mtag{
    align-self:flex-start;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
    color:var(--accent-deep);background:rgba(107,107,179,.1);padding:4px 11px;border-radius:30px;
    font-family:"Segoe UI",sans-serif;font-weight:700;margin-bottom:16px;
  }
  .mtitle{font-size:17.5px;font-weight:700;line-height:1.55;color:var(--ink);margin-bottom:10px;transition:color .3s}
  .mcard:hover .mtitle{color:var(--accent-deep)}
  .mexcerpt{font-size:13px;color:var(--ink-soft);font-weight:300;line-height:1.9;margin-bottom:20px}
  .mmeta{
    margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;
    padding-top:16px;border-top:1px solid var(--line-soft);font-size:12px;color:var(--ink-soft);
  }
  .mmeta .mdate{display:inline-flex;align-items:center;gap:8px;font-weight:300}
  .mmeta .mdate i{font-style:normal;width:3px;height:3px;border-radius:50%;background:var(--line)}
  .mmore{display:inline-flex;align-items:center;gap:7px;color:var(--accent-deep);font-weight:600;transition:gap .3s}
  .mcard:hover .mmore{gap:11px}
  @media(max-width:900px){
    .mag-grid{grid-template-columns:repeat(2,1fr)}
    .mag-grid .mcard:nth-child(3n+1){border-inline-start:1px solid var(--line)}
    .mag-grid .mcard:nth-child(2n+1){border-inline-start:0}
  }
  @media(max-width:560px){
    .mag-grid{grid-template-columns:1fr}
    .mag-grid .mcard,.mag-grid .mcard:nth-child(2n+1),.mag-grid .mcard:nth-child(3n+1){border-inline-start:0}
    .mcard-body{padding:22px 20px 24px}
  }

  /* ✦ experiment: all action buttons → filled brand-purple (like .fnd-start) */
  .add, .fnd-card .fc-buy, .story-cta, .btn{
    background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important;
  }
  .add:hover, .fnd-card .fc-buy:hover, .story-cta:hover, .btn:hover{
    background:var(--accent-deep)!important;color:#fff!important;border-color:var(--accent-deep)!important;
  }
  .add .pls{color:#fff!important;border-color:rgba(255,255,255,.6)!important;background:transparent!important}

  /* ---------- hero slider (image-only banners — like the real pershume.ir) ---------- */
  /* deep brand-purple gradient base so the slim band is never a dead black rectangle,
     even while the geo-blocked banner images fail to load */
  .hslider{position:relative;overflow:hidden;border-bottom:1px solid var(--line);
    background:linear-gradient(120deg,#2a2348 0%,#4a4ab2 58%,#6b6bb3 100%)}
  .hs-track{display:flex;direction:ltr;transition:transform .6s cubic-bezier(.4,0,.2,1)}
  /* the banner JPG sits ON TOP of a per-slide purple gradient fallback (2nd bg layer);
     if the image fails, the gradient shows through instead of black.
     SLIM banner strip — no text overlay, just the image */
  .hs-slide{flex:0 0 100%;height:clamp(150px,21vw,300px);
    background-size:cover;background-position:center;background-repeat:no-repeat;
    position:relative;display:block}
  /* faint bottom gradient only — purely so the white dots stay legible over light banners */
  .hs-slide::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
    background:linear-gradient(to top,rgba(16,14,34,.22) 0%,rgba(16,14,34,0) 26%)}
  .hs-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;
    background:rgba(255,255,255,.82);border:0;font-size:22px;line-height:1;color:var(--ink);cursor:pointer;
    display:grid;place-items:center;transition:.3s;z-index:3;box-shadow:0 4px 16px rgba(0,0,0,.18)}
  .hs-arrow:hover{background:#fff;color:var(--accent-deep)}
  .hs-prev{right:18px}.hs-next{left:18px}
  .hs-dots{position:absolute;bottom:12px;left:0;right:0;display:flex;justify-content:center;gap:8px;z-index:3}
  .hs-dots button{position:relative;width:9px;height:9px;border-radius:50%;border:0;background:rgba(255,255,255,.55);cursor:pointer;transition:.3s;padding:0}
  .hs-dots button::after{content:"";position:absolute;inset:-18px -8px}
  .hs-dots button.on{background:#fff;width:26px;border-radius:5px}
  @media(max-width:560px){.hs-slide{height:clamp(110px,30vw,160px)}
    .hs-arrow{width:44px;height:44px;font-size:21px}.hs-prev{right:10px}.hs-next{left:10px}}

  /* ✦ polish: scroll-reveal + smooth scroll + back-to-top */
  html{scroll-behavior:smooth}
  .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1)}
  .reveal.in{opacity:1;transform:none}
  .to-top{position:fixed;bottom:24px;right:24px;width:46px;height:46px;border-radius:50%;
    background:var(--accent);color:#fff;border:0;cursor:pointer;display:grid;place-items:center;
    font-size:20px;opacity:0;visibility:hidden;transform:translateY(10px);transition:.35s;z-index:50;
    box-shadow:0 8px 24px rgba(107,107,179,.35)}
  .to-top.on{opacity:1;visibility:visible;transform:none}
  .to-top:hover{background:var(--accent-deep)}
  @media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}html{scroll-behavior:auto}}
  .pc-en{display:block;font-size:12px;color:var(--ink-soft);letter-spacing:.05em;margin:-3px 0 9px;font-family:"Segoe UI",sans-serif;font-weight:600}
