/* roulang page: index */
:root {
      --primary: #1E40AF;
      --secondary: #3B82F6;
      --accent: #F59E0B;
      --bg-base: #F8FAFC;
      --text-main: #0F172A;
      --text-muted: #64748B;
      --card-shadow: 0 10px 25px -5px rgba(15, 23, 42, 0.05), 0 8px 10px -6px rgba(15, 23, 42, 0.05);
      --card-shadow-hover: 0 20px 30px -10px rgba(15, 23, 42, 0.12), 0 10px 15px -5px rgba(30, 64, 175, 0.08);
    }
    html {
      scroll-behavior: smooth;
    }
    body {
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
      background-color: var(--bg-base);
      color: var(--text-main);
      overflow-x: hidden;
    }
    .custom-shadow {
      box-shadow: var(--card-shadow);
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .custom-shadow:hover {
      box-shadow: var(--card-shadow-hover);
      transform: translateY(-4px);
    }
    .coupon-ticket {
      background: radial-gradient(circle at left, transparent 12px, #ffffff 13px) left,
                  radial-gradient(circle at right, transparent 12px, #ffffff 13px) right;
      background-size: 51% 100%;
      background-repeat: no-repeat;
      filter: drop-shadow(0 4px 6px rgba(0,0,0,0.06));
    }
    .hero-bg {
      background-image: linear-gradient(135deg, rgba(15, 23, 42, 0.88) 0%, rgba(30, 64, 175, 0.82) 100%), url('/assets/images/d0299ac1bfac3571.webp');
      background-size: cover;
      background-position: center;
    }
    .dark-case-bg {
      background-image: radial-gradient(circle at top right, rgba(59, 130, 246, 0.15), transparent 40%), linear-gradient(to bottom, #0F172A, #090D16);
    }
