:root {
      --rose: #0e008b;
      --rose-lite: rgba(0, 64, 212, 0.15);
      --gold: #645da6;
      --gold-lite: rgba(0, 93, 253, 0.15);
      --teal: #1500d3;
      --teal-lite: rgba(0,201,177,0.15);

      /* Dark Theme */
      --bg-primary: #0D0D0F;
      --bg-secondary: #141418;
      --bg-card: #1A1A20;
      --bg-card-hover: #212128;
      --border: rgba(255,255,255,0.07);
      --border-strong: rgba(255,255,255,0.12);
      --text-main: #F0EDF5;
      --text-sub: rgba(240,237,245,0.55);
      --text-muted: rgba(240,237,245,0.35);
      --nav-bg: rgba(13,13,15,0.85);
      --input-bg: #1E1E26;
    }

    * { margin:0; padding:0; box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body {
      font-family:'Vazirmatn',sans-serif;
      background:var(--bg-primary);
      color:var(--text-main);
      overflow-x:hidden;
    }

    /* ===== CURSOR ===== */
    .cursor-dot {
      width:10px; height:10px; border-radius:50%;
      background:var(--rose);
      position:fixed; top:0; left:0;
      pointer-events:none; z-index:9999;
      transform:translate(-50%,-50%);
      transition:transform 0.05s;
    }
    .cursor-ring {
      width:36px; height:36px; border-radius:50%;
      border:2px solid var(--rose);
      position:fixed; top:0; left:0;
      pointer-events:none; z-index:9998;
      transform:translate(-50%,-50%);
      transition:transform 0.15s, width 0.2s, height 0.2s, opacity 0.2s;
      opacity:0.5;
    }
    @media (max-width:768px) { .cursor-dot,.cursor-ring { display:none; } }

    /* ===== SCROLL TOP ===== */
    #scrollTop {
      position:fixed; bottom:2rem; left:2rem;
      width:44px; height:44px; border-radius:50%;
      background:linear-gradient(135deg,var(--rose),#FF6B9D);
      border:none; cursor:pointer; color:#fff;
      font-size:1.1rem; display:none; align-items:center; justify-content:center;
      box-shadow:0 6px 20px rgba(255,45,107,0.4);
      transition:transform 0.2s; z-index:200;
    }
    #scrollTop:hover { transform:translateY(-3px); }
    #scrollTop.visible { display:flex; }

    /* ===== TOAST ===== */
    .toast {
      position:fixed; bottom:2rem; left:50%;
      transform:translateX(-50%) translateY(100px);
      background:var(--bg-card); color:#fff;
      padding:0.8rem 2rem; border-radius:50px;
      font-size:0.9rem; font-weight:600;
      box-shadow:0 10px 30px rgba(0,0,0,0.4);
      z-index:1000; transition:transform 0.4s cubic-bezier(.175,.885,.32,1.275);
      display:flex; align-items:center; gap:8px;
      border:1px solid var(--border-strong);
    }
    .toast.show { transform:translateX(-50%) translateY(0); }
    .toast-dot { width:8px; height:8px; border-radius:50%; background:var(--teal); }

    /* ===== NAVBAR ===== */
    nav {
      position:fixed; top:0; left:0; right:0; z-index:100;
      display:flex; align-items:center; justify-content:space-between;
      padding:1rem 3rem;
      background:var(--nav-bg);
      backdrop-filter:blur(20px);
      border-bottom:1px solid var(--border);
      transition:all 0.3s;
    }
    nav.scrolled { padding:0.7rem 3rem; box-shadow:0 4px 30px rgba(0,0,0,0.3); }
    .nav-logo {
      font-size:1.7rem; font-weight:900;
      background:linear-gradient(135deg,var(--rose),var(--gold));
      -webkit-background-clip:text; -webkit-text-fill-color:transparent;
      letter-spacing:-1px; text-decoration:none;
    }
    .nav-links { display:flex; gap:2rem; align-items:center; }
    .nav-links a {
      font-size:0.9rem; font-weight:500;
      color:var(--text-sub); text-decoration:none;
      position:relative; padding-bottom:4px;
      transition:color 0.2s;
    }
    .nav-links a::after {
      content:''; position:absolute; bottom:0; right:0;
      width:0; height:2px;
      background:linear-gradient(90deg,var(--rose),var(--gold));
      border-radius:2px; transition:width 0.3s;
    }
    .nav-links a:hover { color:var(--text-main); }
    .nav-links a:hover::after { width:100%; left:0; right:auto; }
    .nav-cta {
      background:linear-gradient(135deg,var(--rose),#FF6B9D);
      color:#fff !important; border-radius:50px;
      padding:0.45rem 1.3rem !important;
      font-weight:700 !important;
    }
    .nav-cta::after { display:none !important; }
    .nav-cta:hover { opacity:0.9; transform:translateY(-1px); }
    .hamburger { display:none; background:none; border:none; cursor:pointer; padding:4px; position:relative; z-index:101; }
    .ham-line { display:block; width:24px; height:2px; background:var(--text-main); border-radius:2px; margin:5px 0; transition:transform 0.3s ease, opacity 0.3s ease; transform-origin:center; }
    .hamburger.active .ham-line:nth-child(1) { transform:translateY(7px) rotate(45deg); }
    .hamburger.active .ham-line:nth-child(2) { opacity:0; transform:scaleX(0); }
    .hamburger.active .ham-line:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }

    .nav-overlay { display:none; }

    /* Mobile nav styles live in the responsive section below */

    /* ===== HERO ===== */
    .hero {
      min-height:100svh;
      display:flex; align-items:center; justify-content:center;
      padding:7rem 3rem 4rem;
      position:relative; overflow:hidden;
      text-align:center;
    }
    .hero-bg-blob {
      position:absolute; border-radius:50%;
      filter:blur(80px); pointer-events:none; z-index:0;
    }
    .blob1 { width:500px; height:500px; background:rgba(7, 41, 164, 0.385); top:-100px; left:-100px; animation:blobMove 8s ease-in-out infinite alternate; }
    .blob2 { width:400px; height:400px; background:rgba(6, 46, 166, 0.362); bottom:50px; right:5%; animation:blobMove 10s ease-in-out infinite alternate-reverse; }
    .blob3 { width:300px; height:300px; background:rgba(161, 151, 220, 0.62); top:40%; left:40%; animation:blobMove 7s ease-in-out infinite alternate; }
    @keyframes blobMove { from{transform:translate(0,0) scale(1)} to{transform:translate(40px,30px) scale(1.05)} }

    .hero-text { position:relative; z-index:2; max-width:700px; }
    .hero-badge {
      display:inline-flex; align-items:center; gap:8px;
      background:var(--rose-lite); color:var(--rose);
      font-size:0.82rem; font-weight:700;
      border-radius:50px; padding:6px 16px;
      border:1px solid rgb(255, 255, 255);
      margin-bottom:1.8rem;
      animation:fadeUp 0.6s ease both;
    }
    .hero-badge span { width:8px; height:8px; border-radius:50%; background:#ff3b30; animation:pulse 1s infinite; }
    @keyframes pulse { 0%,49%{opacity:1} 50%,100%{opacity:0} }

    .hero-title {
      font-size:3.8rem; font-weight:900; line-height:1.15;
      color:var(--text-main); margin-bottom:1.2rem;
      animation:fadeUp 0.6s 0.1s ease both;
    }
    .hero-title .accent {
      background:linear-gradient(135deg,var(--rose),var(--gold));
      -webkit-background-clip:text; -webkit-text-fill-color:transparent;
    }
    .hero-sub {
      font-size:1.05rem; line-height:1.9; color:var(--text-sub);
      max-width:500px; margin:0 auto 2.5rem;
      animation:fadeUp 0.6s 0.2s ease both;
    }
    .hero-buttons {
      display:flex; gap:1rem; flex-wrap:wrap; justify-content:center;
      animation:fadeUp 0.6s 0.3s ease both; margin-bottom:3rem;
    }
    .btn-primary {
      background:linear-gradient(135deg,var(--rose),#768d90a0);
      color:#fff; font-size:1rem; font-weight:700;
      padding:0.85rem 2rem; border-radius:50px;
      text-decoration:none; border:none; cursor:pointer;
      transition:transform 0.2s, box-shadow 0.2s;
      box-shadow:0 8px 30px rgb(111, 85, 162);
    }
    .btn-primary:hover { transform:translateY(-3px); box-shadow:0 14px 35px rgba(255,45,107,0.5); }
    .btn-secondary {
      background:transparent; color:var(--text-main);
      font-size:1rem; font-weight:600;
      padding:0.85rem 2rem; border-radius:50px;
      text-decoration:none; border:1.5px solid var(--border-strong);
      cursor:pointer; transition:all 0.2s;
    }
    .btn-secondary:hover { color: #72459b;}

    .hero-stats {
      display:flex; gap:3rem; justify-content:center;
      animation:fadeUp 0.6s 0.4s ease both;
    }
    .stat-item { text-align:center; }
    .stat-num {
      font-size:1.8rem; font-weight:900;
      color:var(--text-main);
    }
    .stat-label { font-size:0.78rem; color:var(--text-muted); font-weight:500; }

    @keyframes fadeUp { from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} }

    /* ===== MARQUEE ===== */
    .marquee-section {
      background:linear-gradient(135deg,var(--rose),#C8004A);
      padding:0.9rem 0; overflow:hidden; position:relative; z-index:2;
    }
    .marquee-track {
      display:flex; gap:3rem; white-space:nowrap;
      animation:marquee 20s linear infinite;
    }
    .marquee-track span { font-size:0.88rem; font-weight:600; color:rgba(255,255,255,0.9); }
    .marquee-sep { color:rgba(255,255,255,0.4); }
    @keyframes marquee { from{transform:translateX(0)} to{transform:translateX(-50%)} }

    /* ===== SECTION ===== */
    .section { padding:5rem 3rem; position:relative; }
    .section-header { text-align:center; margin-bottom:3.5rem; }
    .section-badge {
      display:inline-block;
      background:var(--rose-lite); color:var(--rose);
      font-size:0.78rem; font-weight:700;
      padding:5px 16px; border-radius:50px;
      border:1px solid rgba(246, 0, 131, 0.681);
      margin-bottom:1rem;
      color:#fff
    }
    .section-title { font-size:2.4rem; font-weight:900; color:var(--text-main); line-height:1.2; margin-bottom:0.8rem; }
    .section-sub { font-size:0.95rem; color:var(--text-sub); max-width:500px; margin:0 auto; }

    /* ===== PRODUCTS ===== */
    .products { background:var(--bg-secondary); }
    .filter-tabs {
      display:flex; justify-content:center; gap:0.8rem;
      margin-bottom:3rem; flex-wrap:wrap;
    }
    .filter-tab {
      padding:0.5rem 1.3rem; border-radius:50px;
      font-size:0.85rem; font-weight:600;
      border:1.5px solid var(--border-strong);
      background:transparent; color:var(--text-sub);
      cursor:pointer; transition:all 0.2s;
      font-family:'Vazirmatn',sans-serif;
    }
    .filter-tab.active, .filter-tab:hover {
      background:linear-gradient(135deg,var(--rose),#FF6B9D);
      color:#fff; border-color:transparent;
      box-shadow:0 6px 20px rgba(255,45,107,0.3);
    }

    .products-grid {
      display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem;
    }
    .product-card {
      background:var(--bg-card); border-radius:20px;
      overflow:hidden; position:relative;
      transition:transform 0.3s, box-shadow 0.3s;
      border:1px solid var(--border);
      cursor:pointer;
    }
    .product-card:hover {
      transform:translateY(-6px);
      box-shadow:0 20px 50px rgba(0,0,0,0.3);
      border-color:var(--border-strong);
    }
    .product-badge {
      position:absolute; top:12px; right:12px;
      font-size:0.72rem; font-weight:700;
      padding:4px 10px; border-radius:50px; z-index:2;
    }
    .badge-new { background:var(--teal); color:#fff; }
    .badge-sale { background:var(--rose); color:#fff; }
    .badge-hot { background:var(--gold); color:#111; }

    .product-img {
      height:200px;
      display:flex; align-items:center; justify-content:center;
      position:relative; overflow:hidden;
    }
    .product-img img {
      width:100%; height:100%; object-fit:cover;
      transition:transform 0.4s ease;
    }
    .product-card:hover .product-img img { transform:scale(1.05); }
    .product-img-placeholder {
      width:100%; height:100%;
      display:flex; align-items:center; justify-content:center;
      font-size:0.8rem; color:var(--text-muted);
      flex-direction:column; gap:6px;
    }
    .product-img-icon { font-size:2.5rem; opacity:0.4; }
    .product-wishlist {
      position:absolute; bottom:12px; left:12px;
      width:34px; height:34px; border-radius:50%;
      background:rgba(0,0,0,0.5); border:1px solid var(--border);
      cursor:pointer; display:flex; align-items:center; justify-content:center;
      font-size:1rem; backdrop-filter:blur(6px);
      transition:all 0.2s; opacity:0;
    }
    .product-card:hover .product-wishlist { opacity:1; }
    .product-wishlist.active { background:var(--rose-lite); }

    .product-body { padding:1.1rem; }
    .product-brand { font-size:0.72rem; color:var(--text-muted); font-weight:600; margin-bottom:3px; text-transform:uppercase; letter-spacing:0.04em; }
    .product-name { font-size:0.9rem; font-weight:700; color:var(--text-main); line-height:1.4; margin-bottom:0.5rem; }
    .product-stars { font-size:0.8rem; color:var(--gold); margin-bottom:0.8rem; }
    .product-stars span { color:var(--text-muted); }
    .product-footer { display:flex; align-items:center; justify-content:space-between; }
    .product-price { font-size:0.9rem; font-weight:700; color:var(--rose); }
    .product-price-old { font-size:0.78rem; color:var(--text-muted); text-decoration:line-through; margin-left:4px; }
    .btn-add-cart {
      width:32px; height:32px; border-radius:50%;
      background:linear-gradient(135deg,var(--rose),#FF6B9D);
      color:#fff; border:none; cursor:pointer; font-size:1.1rem;
      display:flex; align-items:center; justify-content:center;
      transition:transform 0.2s, box-shadow 0.2s;
      box-shadow:0 4px 12px rgba(255,45,107,0.4);
    }
    .btn-add-cart:hover { transform:scale(1.15); }

    /* ===== PRODUCT MODAL ===== */
    .product-overlay {
      position:fixed; inset:0; z-index:500;
      display:none; align-items:center; justify-content:center;
      padding:1.5rem;
    }
    .product-overlay.open { display:flex; }
    .product-overlay-bg {
      position:absolute; inset:0;
      background:rgba(0,0,0,0.85);
      backdrop-filter:blur(12px);
      cursor:pointer;
    }
    .product-modal {
      position:relative; z-index:1;
      background:var(--bg-card);
      border:1px solid var(--border-strong);
      border-radius:28px; overflow:hidden;
      width:100%; max-width:700px;
      display:grid; grid-template-columns:1fr 1fr;
      animation:modalIn 0.3s ease;
    }
    @keyframes modalIn { from{opacity:0;transform:scale(0.9)} to{opacity:1;transform:scale(1)} }
    .product-modal-gallery {
      position:relative; background:var(--bg-secondary);
      height:380px; overflow:hidden;
    }
    .gallery-slides { display:flex; height:100%; transition:transform 0.4s ease; }
    .gallery-slide {
      min-width:100%; height:100%;
      display:flex; align-items:center; justify-content:center;
      font-size:5rem;
    }
    .gallery-slide img { width:100%; height:100%; object-fit:cover; }
    .gallery-nav {
      position:absolute; bottom:14px; left:50%; transform:translateX(-50%);
      display:flex; gap:6px;
    }
    .gallery-dot {
      width:8px; height:8px; border-radius:50%;
      background:rgba(255,255,255,0.3); cursor:pointer; transition:all 0.2s;
    }
    .gallery-dot.active { background:#fff; width:20px; border-radius:4px; }
    .gallery-prev, .gallery-next {
      position:absolute; top:50%; transform:translateY(-50%);
      width:36px; height:36px; border-radius:50%;
      background:rgba(0,0,0,0.5); border:1px solid var(--border);
      color:#fff; cursor:pointer; font-size:1rem;
      display:flex; align-items:center; justify-content:center;
      backdrop-filter:blur(6px); transition:background 0.2s;
    }
    .gallery-prev { right:12px; }
    .gallery-next { left:12px; }
    .gallery-prev:hover, .gallery-next:hover { background:rgba(255,45,107,0.5); }
    .product-modal-info {
      padding:2rem; display:flex; flex-direction:column; justify-content:space-between;
    }
    .modal-close {
      position:absolute; top:14px; left:14px;
      width:32px; height:32px; border-radius:50%;
      background:rgba(0,0,0,0.5); border:1px solid var(--border);
      color:#fff; cursor:pointer; font-size:1.1rem;
      display:flex; align-items:center; justify-content:center;
      z-index:2; transition:background 0.2s;
    }
    .modal-close:hover { background:var(--rose); }
    .modal-brand { font-size:0.72rem; color:var(--text-muted); font-weight:700; letter-spacing:0.06em; text-transform:uppercase; margin-bottom:6px; }
    .modal-name { font-size:1.3rem; font-weight:900; color:var(--text-main); line-height:1.3; margin-bottom:0.8rem; }
    .modal-stars { color:var(--gold); margin-bottom:1rem; }
    .modal-price { font-size:1.5rem; font-weight:900; color:var(--rose); margin-bottom:1.5rem; }
    .modal-desc { font-size:0.85rem; color:var(--text-sub); line-height:1.8; margin-bottom:1.5rem; }
    .modal-add-cart {
      width:100%; padding:0.9rem;
      background:linear-gradient(135deg,var(--rose),#FF6B9D);
      color:#fff; border:none; border-radius:14px; cursor:pointer;
      font-family:'Vazirmatn',sans-serif; font-size:1rem; font-weight:700;
      transition:transform 0.2s, box-shadow 0.2s;
      box-shadow:0 8px 25px rgba(255,45,107,0.35);
    }
    .modal-add-cart:hover { transform:translateY(-2px); box-shadow:0 12px 30px rgba(255,45,107,0.5); }

    /* ===== ABOUT + CONTACT MERGED ===== */
    .about-contact-section {
      background:var(--bg-primary); padding:5rem 3rem;
    }
    .about-contact-grid {
      display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:start;
    }
    .about-label {
      display:inline-block; font-size:0.78rem; font-weight:700;
      color:var(--rose); letter-spacing:0.1em;
      border-bottom:2px solid var(--rose); padding-bottom:4px;
      margin-bottom:1.5rem;
    }
    .about-title { font-size:2.4rem; font-weight:900; line-height:1.15; margin-bottom:1.5rem; color:var(--text-main); }
    .about-title em { font-style:normal; color:var(--rose); }
    .about-text { font-size:0.95rem; line-height:1.9; color:var(--text-sub); margin-bottom:1.5rem; }
    .about-features { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-bottom:2rem; }
    .about-feat {
      display:flex; align-items:center; gap:10px;
      font-size:0.85rem; color:var(--text-sub); font-weight:500;
    }
    .about-feat-icon {
      width:32px; height:32px; border-radius:8px;
      display:flex; align-items:center; justify-content:center;
      font-size:1rem; flex-shrink:0;
    }
    .fi1 { background:rgba(255,45,107,0.15); }
    .fi2 { background:rgba(0,201,177,0.15); }
    .fi3 { background:rgba(255,179,71,0.15); }
    .fi4 { background:rgba(255,255,255,0.06); }

    /* Social links in about section */
    .social-section-title { font-size:1rem; font-weight:700; color:var(--text-main); margin-bottom:1rem; }
    .social-links-big { display:flex; gap:1rem; flex-wrap:wrap; }
    .social-link-big {
      display:flex; align-items:center; gap:10px;
      padding:0.75rem 1.4rem; border-radius:14px;
      background:var(--bg-card); border:1px solid var(--border);
      color:var(--text-main); text-decoration:none;
      font-size:0.88rem; font-weight:600;
      transition:all 0.2s;
    }
    .social-link-big:hover { border-color:var(--rose); transform:translateY(-2px); }
    .social-link-big.insta:hover { background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045); border-color:transparent; color:#fff; }
    .social-link-big.telegram:hover { background:#229ED9; border-color:transparent; color:#fff; }
    .social-link-big.rubika:hover { background:#8BC34A; border-color:transparent; color:#fff; }
    .social-icon { font-size:1.3rem; }

    /* Contact info side */
    .contact-box {
      background:var(--bg-card); border:1px solid var(--border);
      border-radius:24px; padding:2.5rem;
    }
    .contact-box-title { font-size:1.5rem; font-weight:900; color:var(--text-main); margin-bottom:0.5rem; }
    .contact-box-sub { font-size:0.9rem; color:var(--text-sub); line-height:1.7; margin-bottom:2rem; }
    .contact-items { display:flex; flex-direction:column; gap:1rem; }
    .contact-item {
      display:flex; align-items:center; gap:1rem;
      padding:1rem 1.2rem; border-radius:14px;
      background:var(--bg-secondary); border:1px solid var(--border);
    }
    .contact-icon {
      width:44px; height:44px; border-radius:12px;
      display:flex; align-items:center; justify-content:center;
      font-size:1.2rem; flex-shrink:0;
    }
    .ci1 { background:var(--rose-lite); }
    .ci2 { background:var(--teal-lite); }
    .ci3 { background:var(--gold-lite); }
    .contact-label { font-size:0.75rem; color:var(--text-muted); font-weight:600; }
    .contact-val { font-size:0.9rem; font-weight:700; color:var(--text-main); margin-top:2px; }

    /* ===== FOOTER ===== */
    footer { background:var(--bg-secondary); color:rgba(255,255,255,0.6); padding:4rem 3rem 2rem; border-top:1px solid var(--border); }
    .footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:3rem; margin-bottom:3rem; }
    .footer-brand-name {
      font-size:1.8rem; font-weight:900;
      background:linear-gradient(135deg,var(--rose),var(--gold));
      -webkit-background-clip:text; -webkit-text-fill-color:transparent;
      margin-bottom:1rem;
    }
    .footer-brand-desc { font-size:0.85rem; line-height:1.8; color:var(--text-muted); max-width:260px; margin-bottom:1.5rem; }
    .footer-socials { display:flex; gap:0.8rem; }
    .social-btn {
      width:38px; height:38px; border-radius:10px;
      background:rgba(255,255,255,0.05); border:1px solid var(--border);
      display:flex; align-items:center; justify-content:center;
      font-size:1rem; cursor:pointer; color:rgba(255,255,255,0.5);
      text-decoration:none; transition:background 0.2s, color 0.2s;
    }
    .social-btn:hover { background:var(--rose); color:#fff; border-color:var(--rose); }
    .social-btn img { width:22px; height:22px; object-fit:contain; border-radius:6px; }
    .footer-col-title { font-size:0.85rem; font-weight:700; color:#fff; margin-bottom:1.2rem; }
    .footer-links { display:flex; flex-direction:column; gap:0.7rem; }
    .footer-links a { font-size:0.82rem; color:var(--text-muted); text-decoration:none; transition:color 0.2s; }
    .footer-links a:hover { color:var(--rose); }
    .footer-bottom {
      border-top:1px solid var(--border);
      padding-top:2rem;
      display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1rem;
    }
    .footer-copy { font-size:0.8rem; color:var(--text-muted); }
    .footer-social-row { display:flex; gap:0.6rem; }

    /* ===== REVEAL ===== */
    .reveal { opacity:0; transform:translateY(30px); transition:opacity 0.6s ease, transform 0.6s ease; }
    .reveal.visible { opacity:1; transform:translateY(0); }
    
    /* ===== RESPONSIVE ===== */
    @media (max-width:1024px) {
      nav { padding:1rem 2rem; }
      nav.scrolled { padding:0.7rem 2rem; }
      .hero { padding:7rem 2rem 3rem; }
      .hero-title { font-size:3rem; }
      .products-grid { grid-template-columns:repeat(2,1fr); }
      .footer-grid { grid-template-columns:1fr 1fr; }
      .about-contact-grid { grid-template-columns:1fr; }
      .section { padding:4rem 2rem; }
      .about-contact-section { padding:4rem 2rem; }
      .hamburger { display:block; }

      .nav-overlay {
        display:block; position:fixed; inset:0;
        background:rgba(0,0,0,0.55); backdrop-filter:blur(3px);
        opacity:0; pointer-events:none;
        transition:opacity 0.3s ease;
        z-index:98;
      }
      body.menu-open .nav-overlay { opacity:1; pointer-events:auto; }
      body.menu-open { overflow:hidden; }

      .nav-links {
        flex-direction:column; align-items:stretch;
        position:fixed; top:74px; left:1rem; right:1rem;
        background:linear-gradient(160deg, rgba(40,40,48,0.97), rgba(18,18,22,0.97));
        backdrop-filter:blur(40px) saturate(180%);
        -webkit-backdrop-filter:blur(40px) saturate(180%);
        border:1px solid rgba(255,255,255,0.14);
        border-radius:20px;
        padding:0.9rem;
        gap:0.25rem;
        box-shadow:0 25px 60px -10px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.12);
        z-index:99;
        opacity:0; visibility:hidden;
        transform:translateY(-16px) scale(0.97);
        transform-origin:top center;
        transition:opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
        pointer-events:none;
      }
      .nav-links.open { opacity:1; visibility:visible; transform:translateY(0) scale(1); pointer-events:auto; }
      .nav-links a {
        padding:0.85rem 1.1rem; border-radius:12px;
        text-align:center; font-size:1rem;
        color:var(--text-main);
        text-shadow:0 1px 6px rgba(0,0,0,0.35);
        transition:background 0.2s, color 0.2s;
      }
      .nav-links a::after { display:none; }
      .nav-links a:hover { background:rgba(255,255,255,0.1); color:var(--text-main); }
      .nav-links .nav-cta { margin-top:0.4rem; }
      .nav-links.open a {
        animation:navItemIn 0.35s ease both;
      }
      .nav-links.open a:nth-child(1) { animation-delay:0.04s; }
      .nav-links.open a:nth-child(2) { animation-delay:0.08s; }
      .nav-links.open a:nth-child(3) { animation-delay:0.12s; }
      .nav-links.open a:nth-child(4) { animation-delay:0.16s; }
      @keyframes navItemIn { from{opacity:0; transform:translateY(-8px);} to{opacity:1; transform:translateY(0);} }

    }
    @media (max-width:640px) {
      .hero-title { font-size:2.3rem; }
      .hero-stats { gap:1.5rem; }
      .stat-num { font-size:1.5rem; }
      .products-grid { grid-template-columns:repeat(2,1fr); gap:0.8rem; }
      .product-card { border-radius:14px; }
      .product-img { height:160px; }
      .product-body { padding:0.9rem; }
      .product-name { font-size:0.82rem; }
      .section-title { font-size:1.9rem; }
      .footer-grid { grid-template-columns:1fr; gap:2rem; }
      .about-features { grid-template-columns:1fr; }
      .product-modal { grid-template-columns:1fr; max-width:360px; }
      .product-modal-gallery { height:260px; }
      .product-modal-info { padding:1.5rem; }
      .hero-badge { font-size:0.75rem; }
      .filter-tabs { gap:0.5rem; }
      .filter-tab { padding:0.45rem 1rem; font-size:0.8rem; }
      .social-links-big { flex-direction:column; }
    }
    /* ===== PURCHASE POPUP ===== */
    .purchase-overlay {
      position:fixed; inset:0; z-index:600;
      display:none; align-items:center; justify-content:center;
      padding:1.5rem;
    }
    .purchase-overlay.open { display:flex; }
    .purchase-overlay-bg {
      position:absolute; inset:0;
      background:rgba(0,0,0,0.85);
      backdrop-filter:blur(14px);
      cursor:pointer;
    }
    .purchase-popup {
      position:relative; z-index:1;
      background:var(--bg-card);
      border:1px solid var(--border-strong);
      border-radius:28px; padding:2.5rem 2rem 2rem;
      width:100%; max-width:420px;
      text-align:center;
      animation:modalIn 0.35s cubic-bezier(.175,.885,.32,1.275);
    }
    .purchase-close {
      position:absolute; top:14px; left:14px;
      width:32px; height:32px; border-radius:50%;
      background:rgba(255,255,255,0.07); border:1px solid var(--border);
      color:var(--text-sub); cursor:pointer; font-size:1rem;
      display:flex; align-items:center; justify-content:center;
      transition:background 0.2s;
    }
    .purchase-close:hover { background:var(--rose); color:#fff; }
    .purchase-icon { font-size:3rem; margin-bottom:0.8rem; }
    .purchase-title {
      font-size:1.2rem; font-weight:900; color:var(--text-main);
      margin-bottom:0.4rem; line-height:1.4;
    }
    .purchase-price {
      font-size:1.1rem; font-weight:700; color:var(--rose);
      margin-bottom:1.2rem;
    }
    .purchase-desc {
      font-size:0.88rem; color:var(--text-sub);
      line-height:1.7; margin-bottom:1.5rem;
    }
    .purchase-channels { display:flex; flex-direction:column; gap:0.75rem; margin-bottom:1.2rem; }
    .purchase-channel {
      display:flex; align-items:center; gap:1rem;
      padding:0.9rem 1.2rem; border-radius:16px;
      border:1.5px solid var(--border);
      background:var(--bg-secondary);
      text-decoration:none; color:var(--text-main);
      transition:all 0.22s; text-align:right;
    }
    .purchase-channel:hover { transform:translateY(-2px); border-color:var(--rose); }
    .insta-ch:hover { background:linear-gradient(135deg,rgba(131,58,180,0.15),rgba(253,29,29,0.15)); border-color:#fd1d1d; }
    .tg-ch:hover { background:rgba(34,158,217,0.12); border-color:#229ED9; }
    .ru-ch:hover { background:rgba(139,195,74,0.12); border-color:#8BC34A; }
    .pch-icon { font-size:1.6rem; flex-shrink:0; }
    .pch-icon img { width:34px; height:34px; object-fit:contain; display:block; border-radius:9px; }
    .pch-name { font-size:0.92rem; font-weight:700; color:var(--text-main); }
    .pch-handle { font-size:0.8rem; color:var(--text-muted); margin-top:2px; direction:ltr; text-align:left; }
    .pch-arrow { margin-right:auto; font-size:1rem; color:var(--text-muted); }
    .purchase-note {
      font-size:0.78rem; color:var(--text-muted);
      background:rgba(255,255,255,0.04);
      border-radius:10px; padding:0.6rem 1rem;
    }

    /* ===== CATEGORY CARDS ===== */
    .category-cards {
      display:grid; grid-template-columns:repeat(5,1fr); gap:1rem;
      margin-bottom:0;
    }
    .cat-card {
      background:var(--bg-card); border:1px solid var(--border);
      border-radius:20px; padding:1.5rem 1rem;
      text-align:center; cursor:pointer;
      transition:transform 0.25s, box-shadow 0.25s, border-color 0.25s;
    }
    .cat-card:hover {
      transform:translateY(-5px);
      box-shadow:0 16px 40px rgba(0,0,0,0.3);
      border-color:var(--rose);
    }
    .cat-card-icon { font-size:2.2rem; margin-bottom:0.6rem; }
    .cat-card-name { font-size:0.9rem; font-weight:700; color:var(--text-main); margin-bottom:0.3rem; }
    .cat-card-count { font-size:0.75rem; color:var(--text-muted); }

    /* ===== CATEGORY PAGE OVERLAY ===== */
    .cat-page-overlay {
      position:fixed; inset:0; z-index:400;
      background:var(--bg-primary);
      display:none; flex-direction:column;
      overflow-y:auto;
      animation:slideInRight 0.35s ease;
    }
    .cat-page-overlay.open { display:flex; }
    @keyframes slideInRight { from{opacity:0;transform:translateX(-40px)} to{opacity:1;transform:translateX(0)} }
    .cat-page-inner { padding:6rem 3rem 4rem; max-width:1200px; margin:0 auto; width:100%; }
    .cat-page-header {
      display:flex; align-items:center; gap:1.5rem;
      margin-bottom:2.5rem;
    }
    .cat-page-back {
      background:var(--bg-card); border:1px solid var(--border);
      color:var(--text-main); padding:0.6rem 1.4rem;
      border-radius:50px; cursor:pointer; font-family:'Vazirmatn',sans-serif;
      font-size:0.9rem; font-weight:600;
      transition:all 0.2s; white-space:nowrap;
    }
    .cat-page-back:hover { border-color:var(--rose); color:var(--rose); }
    .cat-page-badge {
      display:inline-block; font-size:0.78rem; font-weight:700;
      color:var(--rose); background:var(--rose-lite);
      border:1px solid rgba(255,45,107,0.3);
      padding:4px 14px; border-radius:50px; margin-bottom:0.4rem;
    }
    .cat-page-title { font-size:2rem; font-weight:900; color:var(--text-main); }
    .cat-page-grid {
      display:grid; grid-template-columns:repeat(4,1fr); gap:1.2rem;
    }
    .cat-page-empty {
      grid-column:1/-1; text-align:center;
      padding:4rem 2rem; font-size:1.1rem; color:var(--text-sub);
    }

    /* ===== SUPPORT SECTION ===== */
    .support-section { padding:5rem 3rem; background:var(--bg-card); }
    .support-grid {
      display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem;
      max-width:900px; margin:0 auto;
    }
    .support-card {
      background:var(--bg-secondary); border:1px solid var(--border);
      border-radius:24px; padding:2rem; text-align:center;
      transition:transform 0.25s, border-color 0.25s;
    }
    .support-card:hover { transform:translateY(-4px); border-color:var(--rose); }
    .support-card-icon {
      width:60px; height:60px; border-radius:18px;
      display:flex; align-items:center; justify-content:center;
      font-size:1.8rem; margin:0 auto 1rem;
    }
    .support-card-icon img { width:48px; height:48px; object-fit:contain; border-radius:14px; }
    .support-card-title { font-size:1.1rem; font-weight:900; color:var(--text-main); margin-bottom:0.5rem; }
    .support-card-desc { font-size:0.85rem; color:var(--text-sub); line-height:1.6; margin-bottom:1.2rem; }
    .support-card-btn {
      display:inline-block; padding:0.55rem 1.5rem;
      border-radius:50px; font-size:0.85rem; font-weight:700;
      text-decoration:none; transition:opacity 0.2s;
    }
    .support-card-btn:hover { opacity:0.85; }
    .insta-btn { background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045); color:#fff; }
    .tg-btn { background:#229ED9; color:#fff; }
    .ru-btn { background:#8BC34A; color:#111; }

    /* ===== RESPONSIVE ADDITIONS ===== */
    @media (max-width:1024px) {
      .category-cards { grid-template-columns:repeat(4,1fr); }
      .cat-page-grid { grid-template-columns:repeat(3,1fr); }
      .cat-page-inner { padding:5rem 2rem 3rem; }
    }
    @media (max-width:768px) {
      .category-cards { grid-template-columns:repeat(3,1fr); }
      .support-grid { grid-template-columns:1fr; max-width:400px; }
      .cat-page-grid { grid-template-columns:repeat(2,1fr); }
    }
    @media (max-width:640px) {
      .category-cards { grid-template-columns:repeat(2,1fr); }
      .cat-page-inner { padding:5rem 1rem 2rem; }
      .cat-card { padding:1.2rem 0.7rem; }
      .cat-card-icon { font-size:1.8rem; }
      .purchase-popup { padding:2rem 1.2rem 1.5rem; }
    }
.html{
  scroll-behavior: smooth;
}
