  /* ── Reset & Base ── */
  *, *::before, *::after { box-sizing: border-box; }
  html { scroll-behavior: smooth; scroll-padding-top: 80px; }
  body { margin: 0; -webkit-font-smoothing: antialiased; }

  /* ── Nav ── */
  #nav { background: rgba(253,248,240,0.8); backdrop-filter: blur(16px); border-bottom: 1px solid rgba(0,0,0,0.05); }
  #nav.scrolled { background: rgba(253,248,240,0.95); box-shadow: 0 4px 30px rgba(0,0,0,0.06); }
  .nav-link { position: relative; }
  .nav-link::after { content: ''; position: absolute; bottom: -2px; left: 0; width: 0; height: 2px; background: #FF6B57; border-radius: 2px; transition: width 0.3s; }
  .nav-link:hover::after { width: 100%; }

  /* ── Cards ── */
  .card { border-radius: 1.25rem; transition: transform 0.4s cubic-bezier(.22,.61,.36,1), box-shadow 0.4s ease; }
  .card:hover { transform: translateY(-6px); box-shadow: 0 20px 60px rgba(0,0,0,0.1); }
  .service-card { background: white; border: 1px solid rgba(0,0,0,0.06); padding: 0; overflow: hidden; }
  .service-card .card { padding: 1.5rem; border: none; background: transparent; box-shadow: none; }
  .service-card:hover { transform: translateY(-4px); box-shadow: 0 20px 60px rgba(0,0,0,0.08); }

  /* ── Floating animation ── */
  @keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
  }
  .animate-float { animation: float 4s ease-in-out infinite; }

  /* ── Scroll reveal ── */
  .reveal { opacity: 0; transform: translateY(30px); transition: opacity 0.7s cubic-bezier(.22,.61,.36,1), transform 0.7s cubic-bezier(.22,.61,.36,1); }
  .reveal.visible { opacity: 1; transform: translateY(0); }
  .reveal-delay-1 { transition-delay: 0.1s; }
  .reveal-delay-2 { transition-delay: 0.2s; }
  .reveal-delay-3 { transition-delay: 0.3s; }
  .reveal-delay-4 { transition-delay: 0.4s; }
  .reveal-delay-5 { transition-delay: 0.5s; }

  /* ── Mobile menu ── */
  #mobile-menu { animation: slideDown 0.3s ease; }
  @keyframes slideDown { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }

  /* ── Form ── */
  select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important; background-repeat: no-repeat !important; background-position: right 1rem center !important; }

  /* ── Selection ── */
  ::selection { background: rgba(255,107,87,0.2); color: #2e333b; }

  /* ── Scrollbar ── */
  ::-webkit-scrollbar { width: 8px; }
  ::-webkit-scrollbar-track { background: #fdf8f0; }
  ::-webkit-scrollbar-thumb { background: #e3e4e6; border-radius: 4px; }
  ::-webkit-scrollbar-thumb:hover { background: #c4c6ca; }
