/* roulang page: index */
:root {
      --primary-accent: #0EA5E9;
      --primary-dark: #0284C7;
      --bg-page: #F8FAFC;
      --text-main: #0F172A;
      --text-muted: #475569;
      --border-subtle: #E2E8F0;
      --transition-smooth: cubic-bezier(0.16, 1, 0.3, 1);
    }

    body {
      background-color: #FFFFFF;
      color: var(--text-main);
      font-feature-settings: "cv02", "cv03", "cv04", "cv11";
      -webkit-font-smoothing: antialiased;
    }

    .glass-nav {
      background: rgba(255, 255, 255, 0.88);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
    }

    .ultra-border {
      border: 1px solid var(--border-subtle);
    }

    .card-float {
      transition: transform 0.25s var(--transition-smooth), box-shadow 0.25s var(--transition-smooth), border-color 0.25s var(--transition-smooth);
    }
    .card-float:hover {
      transform: translateY(-3px);
      box-shadow: 0 12px 32px -4px rgba(15, 23, 42, 0.08);
      border-color: #CBD5E1;
    }

    .hero-slider-slide {
      display: none;
      opacity: 0;
      transition: opacity 0.5s var(--transition-smooth);
    }
    .hero-slider-slide.active {
      display: block;
      opacity: 1;
    }

    details > summary {
      list-style: none;
    }
    details > summary::-webkit-details-marker {
      display: none;
    }
    details[open] summary .arrow-icon {
      transform: rotate(180deg);
    }

    @media (max-width: 768px) {
      .mobile-menu-drawer {
        transition: transform 0.3s var(--transition-smooth);
      }
    }
