    /* overlay عمومی برای frosted hover */
    .frosted-overlay {
      position: absolute;
      inset: 0;
      background: rgba(30,41,59,0.55);
      transform: translateY(6px) scale(1.02);
      opacity: 0;
      transition: opacity .28s cubic-bezier(.2,.9,.2,1), transform .28s cubic-bezier(.2,.9,.2,1), backdrop-filter .28s ease;
      pointer-events: none;
      backdrop-filter: blur(0px);
      -webkit-backdrop-filter: blur(0px);
      border-radius: inherit;
    }
    .frosted-btn { position: relative; overflow: hidden; }
    .frosted-btn > .frosted-overlay { z-index: 0; }
    .frosted-btn > .label { position: relative; z-index: 1; }

    .frosted-btn:hover .frosted-overlay,
    .frosted-btn:focus-visible .frosted-overlay {
      opacity: 1;
      transform: translateY(0) scale(1);
      backdrop-filter: blur(8px);
      -webkit-backdrop-filter: blur(8px);
    }

    /* CTA متمایز: overlay روشن‌تر + glow + border */
    .cta-frosted { position: relative; overflow: hidden; border-radius: .5rem; }
    .cta-frosted::before {
      content: "";
      position: absolute;
      inset: 0;
      background: rgba(255,255,255,0.06); /* روشن‌تر برای تمایز */
      opacity: 0;
      transform: translateY(6px) scale(1.02);
      transition: opacity .28s cubic-bezier(.2,.9,.2,1), transform .28s cubic-bezier(.2,.9,.2,1), backdrop-filter .28s ease;
      backdrop-filter: blur(0px);
      -webkit-backdrop-filter: blur(0px);
      z-index: 0;
      border-radius: inherit;
      box-shadow: 0 6px 18px rgba(56,189,248,0); /* پایه */
    }
    .cta-frosted:hover::before,
    .cta-frosted:focus-visible::before {
      opacity: 1;
      transform: translateY(0) scale(1);
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
      box-shadow: 0 8px 30px rgba(56,189,248,0.12); /* glow آبی ملایم */
    }
    .cta-frosted > * { position: relative; z-index: 1; }

    /* header shrink */
    .site-header { transition: padding .28s ease, backdrop-filter .28s ease, box-shadow .28s ease; }
    .site-header.shrink { padding-top: .5rem; padding-bottom: .5rem; box-shadow: 0 6px 18px rgba(2,6,23,0.6); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }

    /* mobile menu animation */
    .mobile-slide { transform-origin: top right; transition: transform .28s cubic-bezier(.2,.9,.2,1), opacity .28s ease; }
    .mobile-slide.hidden { transform: scaleY(0.98); opacity: 0; pointer-events: none; }
    .mobile-slide.open { transform: scaleY(1); opacity: 1; pointer-events: auto; }

    /* responsive positioning: absolute only on md+ */
    .logo-pos { position: static; }
    .menu-btn-pos { position: static; }
    @media (min-width: 768px) {
      .logo-pos { position: absolute; right: 1.5rem; }
      .menu-btn-pos { position: absolute; left: 1.5rem; }
    }

    /* دسترسی: focus ring */
    .focus-ring:focus-visible { outline: 2px solid rgba(56,189,248,0.9); outline-offset: 2px; }
    .no-scroll { overflow: hidden; }