/* ── Hero ── */
    .np-404-hero { text-align: center; margin-bottom: 64px; }

    .np-404-num {
      font-size: clamp(100px, 20vw, 200px);
      font-weight: 800;
      line-height: 1;
      background: linear-gradient(90deg, #ea580c, #ef4444, #ea580c);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
      display: inline-block;
      /* filter: drop-shadow(0 0 20px rgba(251,146,60,0.3)); */
      animation: fadeDown 0.6s ease both;
    }
    .np-404-deepak{
          position: relative;
    bottom: 25px;
    width: 150px;
    }

    .np-404-hero h1 {
      font-size: clamp(1.5rem, 4vw, 2.75rem);
      font-weight: 700;
      color: #111827;
      margin: 16px 0 12px;
      animation: fadeUp 0.6s 0.1s ease both;
    }

    .np-404-hero p {
      font-size: clamp(1rem, 2vw, 1.125rem);
      color: #6b7280;
      max-width: 540px;
      margin: 0 auto 32px;
      line-height: 1.7;
      animation: fadeUp 0.6s 0.2s ease both;
    }

    .np-404-btn-row {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 16px;
      animation: fadeUp 0.6s 0.3s ease both;
    }

    .np-404-btn {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      padding: 14px 32px;
      border-radius: 9999px;
      font-size: 1rem;
      font-weight: 600;
      font-family: 'Poppins', sans-serif;
      cursor: pointer;
      border: none;
      transition: transform 0.18s, box-shadow 0.18s;
      text-decoration: none;
    }
    .np-404-btn:hover { transform: translateY(-2px); }

    .np-404-btn-primary {
      background: #f37420;
      color: #fff !important;
      box-shadow: 0 10px 24px rgba(234,88,12,0.35);
    }
    .np-404-btn-primary:hover { box-shadow: 0 14px 28px rgba(234,88,12,0.45); }

    .np-404-btn-outline {
      background: #fff;
      color: #ea580c;
      border: 2px solid #fed7aa;
      box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    }
    .np-404-btn-outline:hover { border-color: #fb923c; box-shadow: 0 8px 20px rgba(0,0,0,0.12); }


    /* ── Section headings ── */
    .np-404-section-head {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      margin-bottom: 32px;
    }
    .np-404-section-head i { color: #ea580c; font-size: 1.3rem; }
    /* .np-404-section-head h2 { font-size: clamp(1.25rem, 3vw, 1.75rem); font-weight: 700; color: #111827; } */
    .np-404-section-sub { text-align: center; color: #6b7280; margin-top: -20px; margin-bottom: 32px; }

    /* ── Puja Grid ── */
    .np-404-puja-section { margin-bottom: 56px; animation: fadeUp 0.6s 0.4s ease both; }

    .np-404-puja-grid {
      /* max-width: 900px; */
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 16px;
    }

    .np-404-puja-card {
      background: linear-gradient(135deg, #fff7ed, #fffbeb);
      border: 1.5px solid #fed7aa;
      border-radius: 18px;
          padding: 12px 15px;
      cursor: pointer;
      transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
    }
    .np-404-puja-card:hover {
      border-color: #fb923c;
      box-shadow: 0 8px 24px rgba(234,88,12,0.12);
      transform: translateY(-3px);
    }
    .np-404-puja-card h3 { font-size: 0.95rem; font-weight: 700; color: #111827; margin-bottom: 6px; }
    .np-404-puja-card p  { font-size: 0.8rem !important; color: #6b7280; line-height: 1.6; margin-bottom: 0; }

    /* ── Cities ── */
    .np-404-cities-section { margin-bottom: 56px; animation: fadeUp 0.6s 0.45s ease both; }

    .np-404-cities-wrap {
      background: linear-gradient(135deg, #fff7ed, #fffbeb);
      border-radius: 28px;
      padding: 40px;
    }

    .np-404-cities-flex { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }

    .np-404-city-btn {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      background: #fff;
      border: 1.5px solid #fed7aa;
      border-radius: 9999px;
      padding: 10px 22px;
      font-size: 0.9rem;
      font-weight: 500;
      color: #111827;
      cursor: pointer;
      font-family: 'Poppins', sans-serif;
      transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
      box-shadow: 0 2px 8px rgba(0,0,0,0.07);
    }
    .np-404-city-btn:hover {
      border-color: #fb923c;
      box-shadow: 0 4px 14px rgba(234,88,12,0.15);
      transform: translateY(-2px);
    }
    .np-404-city-btn i { color: #ea580c; font-size: 0.45rem; }

    /* ── More Services ── */
    .np-404-more-section { animation: fadeUp 0.6s 0.5s ease both; }

    .np-404-more-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
    }

    .np-404-more-card {
      background: #fff;
      border: 1.5px solid #f3f4f6;
      border-radius: 20px;
      padding: 24px;
      cursor: pointer;
      transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
      position: relative;
      overflow: hidden;
    }
    .np-404-more-card:hover {
      border-color: #fed7aa;
      box-shadow: 0 12px 32px rgba(0,0,0,0.1);
      transform: translateY(-4px);
    }

    .np-404-blob {
      position: absolute;
      top: -20px; right: -20px;
      width: 96px; height: 96px;
      border-radius: 0 0 0 9999px;
      opacity: 0.12;
      transition: transform 0.4s;
    }
    .np-404-more-card:hover .np-404-blob { transform: scale(1.6); }

    .np-404-icon-box {
      width: 52px; height: 52px;
      border-radius: 14px;
      display: flex; align-items: center; justify-content: center;
      margin-bottom: 16px;
      box-shadow: 0 4px 12px rgba(0,0,0,0.12);
      position: relative;
      z-index: 1;
      color: #fff;
    }
    .np-404-icon-box i { color: #fff; font-size: 1.3rem; }

    .np-404-more-card h3 { font-size: 1rem; font-weight: 700; color: #111827; margin-bottom: 6px; position: relative; z-index: 1; }
    .np-404-more-card p  { font-size: 0.8rem; color: #6b7280; margin-bottom: 16px; line-height: 1.6; position: relative; z-index: 1; }

    .np-404-learn-link {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      font-size: 0.82rem;
      font-weight: 600;
      color: var(--sacred-saffron) !important;
      position: relative;
      z-index: 1;
          text-decoration: none;
          font-size: 14px;
    }
    .np-404-learn-link span { transition: transform 0.2s; font-size: 20px; }
    .np-404-more-card:hover .np-404-learn-link span { transform: translateX(4px); }

    /* ── Animations ── */
    @keyframes fadeDown { from { opacity: 0; transform: translateY(-20px); } to { opacity: 1; transform: none; } }
    @keyframes fadeUp   { from { opacity: 0; transform: translateY(20px);  } to { opacity: 1; transform: none; } }

    /* ── Responsive ── */
    @media (max-width: 600px) {
      .np-404-cities-wrap { padding: 24px 16px; }
    }
    @media (max-width: 768px) {
      .np-404-more-grid{grid-template-columns: repeat(1, 1fr);}
      .np-404-deepak {
    position: relative;
    bottom: 25px;
    width: 100px !important;
}
    }
    .np-404-hero {
    text-align: center;
    margin-bottom: 0px !important;
    margin-top: 30px;
}