html { scroll-behavior: smooth; }
    body {
      -webkit-touch-callout: none;
      background: #FAF8F3;
      color: #171412;
    }
    input, textarea { user-select: text; -webkit-user-select: text; }
    img { pointer-events: none; }
    .glass { background: rgba(255,255,255,.74); backdrop-filter: blur(18px); }
    .fade-in-up { opacity: 0; transform: translateY(26px); transition: opacity .8s ease, transform .8s ease; }
    .fade-in-up.visible { opacity: 1; transform: translateY(0); }
    .img-wrap { overflow: hidden; background: #efe7dc; }
    .img-wrap img { transition: transform .8s cubic-bezier(.2,.8,.2,1), filter .8s ease; }
    .img-wrap:hover img { transform: scale(1.06); filter: saturate(1.02) contrast(1.02); }
    .modal-scroll::-webkit-scrollbar, .cart-scroll::-webkit-scrollbar { width: 6px; }
    .modal-scroll::-webkit-scrollbar-thumb, .cart-scroll::-webkit-scrollbar-thumb { background: #cbb79c; border-radius: 999px; }
    .filter-active { background: #171412 !important; color: white !important; border-color: #171412 !important; }
    .no-scroll { overflow: hidden; }
    .product-card .quick-btn { transform: translateY(14px); opacity: 0; }
    .product-card:hover .quick-btn { transform: translateY(0); opacity: 1; }
    .page-link { position: relative; }
    .page-link::after { content: ''; position: absolute; left: 0; bottom: -6px; width: 0; height: 1px; background: currentColor; transition: width .25s ease; }
    .page-link:hover::after { width: 100%; }
