
      /* --- Reset & Global Styles --- */
      * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
      }
      body {
        font-family: "Inter", sans-serif;
        background-color: #1a0033;
        color: #e0e0e0;
        overflow-x: hidden;
        min-height: 100vh;
        display: flex;
        flex-direction: column;
      }
      main {
        flex-grow: 1;
        /* Mobile: Tighter top padding */
        padding-top: 60px;
      }
      @media (min-width: 768px) {
        main {
          padding-top: 96px;
        }
      }

      /* Scrollbar */
      ::-webkit-scrollbar {
        width: 10px;
      }
      ::-webkit-scrollbar-track {
        background: transparent;
      }
      ::-webkit-scrollbar-thumb {
        background-color: transparent;
        border-radius: 99px;
      }
      ::-webkit-scrollbar-thumb:hover {
        background: #8a2be2;
      }

      /* --- Utility Classes --- */
      .container {
        width: 100%;
        max-width: 1280px;
        margin: 0 auto;
        padding: 0 16px;
      }
      @media (min-width: 640px) {
        .container {
          padding: 0 24px;
        }
      }
      @media (min-width: 1024px) {
        .container {
          padding: 0 32px;
        }
      }
      .section-title {
        text-align: center;
        /* Mobile: Smaller title */
        font-size: 1.5rem;
        font-weight: 800;
        color: #fff;
        margin-bottom: 12px;
      }
      @media (min-width: 768px) {
        .section-title {
          font-size: 2rem;
          margin-bottom: 16px;
        }
      }

      .section-subtitle {
        text-align: center;
        color: #d1d5db;
        /* Mobile: Smaller subtitle */
        font-size: 0.95rem;
        max-width: 700px;
        margin: 0 auto 24px auto;
      }
      @media (min-width: 768px) {
        .section-subtitle {
          font-size: 1.125rem;
          margin: 0 auto 32px auto;
        }
      }

      .animate-pulse {
        animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
      }
      @keyframes pulse {
        0%,
        100% {
          opacity: 1;
        }
        50% {
          opacity: 0.5;
        }
      }

      /* --- Header & Navigation --- */
      header {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 50;
        background-color: rgba(26, 0, 51, 0.85);
        backdrop-filter: blur(8px);
        border-bottom: 1px solid rgba(74, 14, 108, 0.5);
        width: 100%;
        padding: 10px 16px; /* Mobile: compact header */
        display: flex;
        justify-content: space-between;
        align-items: center;
      }
      @media (min-width: 768px) {
        header {
          padding: 16px 32px;
        }
      }
      @media (min-width: 1024px) {
        header {
          padding: 16px 64px;
        }
      }
      .logo-container {
        display: flex;
        align-items: center;
      }
      .logo-container img {
        height: 32px; /* Mobile: smaller logo */
        margin-right: 8px;
      }
      @media (min-width: 768px) {
        .logo-container img {
          height: 48px;
        }
      }
      .desktop-nav {
        display: none;
        gap: 16px;
        font-weight: 500;
        font-size: 16px;
      }
      @media (min-width: 768px) {
        .desktop-nav {
          display: flex;
        }
      }
      @media (min-width: 1024px) {
        .desktop-nav {
          gap: 32px;
        }
      }
      .nav-link {
        color: #d1d5db;
        text-decoration: none;
        padding: 8px 12px;
        border-radius: 6px;
        transition: color 0.2s;
      }
      .nav-link:hover {
        color: #d8b4fe;
      }
      .contact-btn {
        display: none;
        padding: 12px 24px;
        border-radius: 9999px;
        font-weight: 600;
        font-size: 14px;
        text-decoration: none;
        background-color: #8a2be2;
        color: white;
        box-shadow: 0 5px 15px rgba(138, 43, 226, 0.3);
        transition: all 0.3s ease-in-out;
      }
      @media (min-width: 768px) {
        .contact-btn {
          display: block;
        }
      }
      .contact-btn:hover {
        background-color: #7a1be2;
        transform: translateY(-3px) scale(1.02);
        box-shadow: 0 8px 20px rgba(138, 43, 226, 0.5);
      }
      .mobile-menu-button {
        display: block;
        background: none;
        border: none;
        color: white;
        cursor: pointer;
      }
      @media (min-width: 768px) {
        .mobile-menu-button {
          display: none;
        }
      }
      .mobile-menu-button svg {
        width: 24px; /* Mobile: smaller icon */
        height: 24px;
      }

      /* --- Mobile Menu --- */
      #mobile-menu {
        position: fixed;
        inset: 0;
        z-index: 40;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 20px; /* Mobile: slightly tighter gap */
        font-size: 18px; /* Mobile: slightly smaller font */
        font-weight: 600;
        background-color: rgba(26, 0, 51, 0.95);
        backdrop-filter: blur(10px);
        transform: translateY(-100%);
        transition: transform 0.3s ease-in-out;
      }
      #mobile-menu.active {
        transform: translateY(0);
      }
      #mobile-menu a {
        color: #e5e7eb;
        text-decoration: none;
        transition: all 0.2s;
      }
      #mobile-menu a:hover {
        color: #d8b4fe;
        transform: translateX(5px);
      }
      .mobile-contact-btn {
        padding: 10px 28px;
        border-radius: 9999px;
        font-weight: 600;
        font-size: 16px;
        text-decoration: none;
        text-align: center;
        width: 80%;
        max-width: 300px;
        background-color: #8a2be2;
        color: white;
        box-shadow: 0 5px 15px rgba(138, 43, 226, 0.3);
        transition: all 0.3s ease-in-out;
      }
      .mobile-contact-btn:hover {
        background-color: #7a1be2;
        transform: translateY(-3px) scale(1.02) translateX(5px);
        box-shadow: 0 8px 20px rgba(138, 43, 226, 0.5);
      }
      #close-mobile-menu {
        position: absolute;
        top: 6rem;
        background: none;
        border: none;
        color: white;
        cursor: pointer;
        transition: all 0.2s;
      }
      #close-mobile-menu:hover {
        transform: translateX(5px);
        color: #d8b4fe;
      }
      #close-mobile-menu svg {
        width: 32px;
        height: 32px;
      }

      /* --- Section: Hero --- */
      .hero {
        padding: 40px 16px; /* Mobile: reduced padding */
        text-align: center;
        background-color: #1a0033;
      }
      @media (min-width: 768px) {
        .hero {
          padding: 80px 16px;
        }
      }
      .hero-container {
        max-width: 900px;
        margin: 0 auto;
      }
      .hero-title {
        font-size: 28px; /* Mobile: reduced title size */
        font-weight: 800;
        color: #ffffff;
        margin-bottom: 16px;
        line-height: 1.2;
      }
      @media (min-width: 768px) {
        .hero-title {
          font-size: 42px;
          margin-bottom: 20px;
        }
      }
      .hero-subtitle {
        font-size: 15px; /* Mobile: smaller text */
        color: #d8b4fe;
        line-height: 1.5;
        margin-bottom: 24px;
      }
      @media (min-width: 768px) {
        .hero-subtitle {
          font-size: 18px;
          line-height: 1.6;
          margin-bottom: 32px;
        }
      }
      .hero-actions {
        display: flex;
        justify-content: center;
        gap: 12px; /* Mobile: tighter gap */
        flex-wrap: wrap;
      }
      @media (min-width: 768px) {
        .hero-actions {
          gap: 16px;
        }
      }
      .btn {
        padding: 10px 20px; /* Mobile: smaller buttons */
        border-radius: 999px;
        font-weight: 600;
        font-size: 14px;
        text-decoration: none;
        transition: all 0.25s ease;
      }
      @media (min-width: 768px) {
        .btn {
          padding: 14px 28px;
          font-size: 16px; /* Slightly larger text on desktop */
        }
      }
      .btn-primary {
        background-color: #8a2be2;
        color: #ffffff;
      }
      .btn-primary:hover {
        background-color: #7a1be2;
      }
      .btn-secondary {
        border: 2px solid #8a2be2;
        color: #8a2be2;
      }
      .btn-secondary:hover {
        background-color: #8a2be2;
        color: #ffffff;
      }
      .hero-trust {
        margin-top: 16px;
        font-size: 12px; /* Mobile: small trust text */
        color: #9ca3af;
      }
      @media (min-width: 768px) {
        .hero-trust {
          margin-top: 20px;
          font-size: 14px;
        }
      }

      /* --- Section: How it Works --- */
      .how-it-works {
        padding: 40px 16px; /* Mobile: tighter */
        background-color: #1a0033;
      }
      @media (min-width: 768px) {
        .how-it-works {
          padding: 80px 16px;
        }
      }
      .steps-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
        gap: 20px; /* Mobile: tighter gap */
        margin-top: 32px;
      }
      @media (min-width: 768px) {
        .steps-grid {
          gap: 32px;
          margin-top: 48px;
        }
      }
      .step-card {
        text-align: center;
        padding: 16px; /* Mobile: compact card */
      }
      @media (min-width: 768px) {
        .step-card {
          padding: 24px;
        }
      }
      .step-number {
        display: inline-block;
        font-size: 32px; /* Mobile: smaller number */
        font-weight: 800;
        color: rgba(138, 43, 226, 0.25);
        margin-bottom: 8px;
      }
      @media (min-width: 768px) {
        .step-number {
          font-size: 40px;
          margin-bottom: 16px;
        }
      }
      .step-card h3 {
        color: #ffffff;
        font-size: 16px; /* Mobile: smaller heading */
        margin-bottom: 8px;
      }
      @media (min-width: 768px) {
        .step-card h3 {
          font-size: 18px;
          margin-bottom: 12px;
        }
      }
      .step-card p {
        color: #d1d5db;
        font-size: 13px; /* Mobile: smaller text */
        line-height: 1.5;
      }
      @media (min-width: 768px) {
        .step-card p {
          font-size: 14px;
          line-height: 1.6;
        }
      }

      /* --- Section: Popular Prompts --- */
      .popular-prompts {
        padding: 40px 16px; /* Mobile */
        background-color: #1a0033;
      }
      @media (min-width: 768px) {
        .popular-prompts {
          padding: 80px 16px;
        }
      }
      .prompts-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
        gap: 16px; /* Mobile: tighter gap */
        margin-top: 32px;
      }
      @media (min-width: 768px) {
        .prompts-grid {
          gap: 24px;
          margin-top: 48px;
        }
      }
      .prompt-card {
        background-color: #2a0052;
        border: 1px solid rgba(138, 43, 226, 0.3);
        border-radius: 12px;
        padding: 16px; /* Mobile: compact padding */
      }
      @media (min-width: 768px) {
        .prompt-card {
          padding: 24px;
        }
      }
      .prompt-card h3 {
        font-size: 16px; /* Mobile */
        color: #ffffff;
        margin-bottom: 8px;
      }
      @media (min-width: 768px) {
        .prompt-card h3 {
          font-size: 18px;
          margin-bottom: 12px;
        }
      }
      .prompt-card p {
        font-size: 13px; /* Mobile */
        color: #d1d5db;
        line-height: 1.5;
        margin-bottom: 12px;
      }
      @media (min-width: 768px) {
        .prompt-card p {
          font-size: 14px;
          line-height: 1.6;
          margin-bottom: 16px;
        }
      }
      .prompt-link {
        color: #ec4899;
        font-weight: 600;
        text-decoration: none;
        font-size: 14px;
      }
      .prompt-link:hover {
        text-decoration: underline;
      }
      .section-cta {
        margin-top: 32px;
        text-align: center;
      }
      @media (min-width: 768px) {
        .section-cta {
          margin-top: 40px;
        }
      }

      /* --- Section: Prompt Categories --- */
      .prompt-categories {
        padding: 40px 16px; /* Mobile */
        background-color: #1a0033;
      }
      @media (min-width: 768px) {
        .prompt-categories {
          padding: 80px 16px;
        }
      }
      .categories-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
        gap: 16px; /* Mobile */
        margin-top: 32px;
      }
      @media (min-width: 768px) {
        .categories-grid {
          gap: 24px;
          margin-top: 48px;
        }
      }
      .category-card {
        display: block;
        padding: 16px; /* Mobile */
        background-color: #250044;
        border: 1px solid rgba(138, 43, 226, 0.3);
        border-radius: 12px;
        text-decoration: none;
        transition: transform 0.25s ease, box-shadow 0.25s ease;
      }
      @media (min-width: 768px) {
        .category-card {
          padding: 24px;
        }
      }
      .category-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 10px 25px rgba(138, 43, 226, 0.3);
      }
      .category-card h3 {
        color: #ffffff;
        font-size: 16px;
        margin-bottom: 8px;
      }
      @media (min-width: 768px) {
        .category-card h3 {
          font-size: 18px;
          margin-bottom: 12px;
        }
      }
      .category-card p {
        color: #d1d5db;
        font-size: 13px;
        line-height: 1.5;
      }
      @media (min-width: 768px) {
        .category-card p {
          font-size: 14px;
          line-height: 1.6;
        }
      }
      .category-card-highlight {
        border-color: #ec4899;
      }

      /* --- Section: Trust / Info --- */
      .trust-section {
        padding: 40px 16px; /* Mobile */
        background-color: #1a0033;
      }
      @media (min-width: 768px) {
        .trust-section {
          padding: 80px 16px;
        }
      }
      .trust-content {
        max-width: 1200px;
        margin: 0 auto;
      }
      .trust-content p {
        color: #d1d5db;
        font-size: 14px; /* Mobile */
        line-height: 1.6;
        margin-bottom: 16px;
      }
      @media (min-width: 768px) {
        .trust-content p {
          font-size: 16px;
          line-height: 1.8;
          margin-bottom: 20px;
        }
      }
      .section-title.bottom {
        padding-bottom: 16px;
      }
      @media (min-width: 768px) {
        .section-title.bottom {
          padding-bottom: 20px;
        }
      }

      /* --- Footer --- */
      footer {
        width: 100%;
        border-top: 1px solid #7c3aed;
        border-top-color: rgba(124, 58, 237, 0.5);
      }
      .footer-container {
        max-width: 1280px;
        margin: 0 auto;
        padding: 24px 16px; /* Mobile: compact footer */
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: space-between;
        text-align: center;
      }
      @media (min-width: 768px) {
        .footer-container {
          padding: 32px 16px;
          flex-direction: row;
          text-align: left;
        }
      }
      .footer-logo {
        font-size: 20px; /* Mobile: smaller footer logo */
        font-weight: 700;
        color: white;
        margin-bottom: 12px;
      }
      @media (min-width: 768px) {
        .footer-logo {
          font-size: 24px;
          margin-bottom: 0;
        }
      }
      .footer-copyright {
        color: #9ca3af;
        font-size: 12px; /* Mobile */
        margin-bottom: 12px;
      }
      @media (min-width: 768px) {
        .footer-copyright {
          margin-bottom: 0;
          font-size: 16px;
        }
      }
      .footer-social {
        display: flex;
        gap: 20px; /* Mobile */
        color: #9ca3af;
      }
      @media (min-width: 768px) {
        .footer-social {
          gap: 24px;
        }
      }
      .footer-social a {
        color: inherit;
        transition: all 0.3s ease;
      }
      .footer-social a:hover {
        color: #a050ff;
        transform: scale(1.2);
      }
      .footer-social svg {
        width: 18px; /* Mobile */
        height: 18px;
      }
      .footer-social svg.bi-person-fill {
        width: 22px;
        height: 22px;
      }
      @media (min-width: 768px) {
        .footer-social svg {
          width: 20px;
          height: 20px;
        }
        .footer-social svg.bi-person-fill {
          width: 25px;
          height: 25px;
        }
      }
    /* --- Section: Visual Gallery --- */
.visual-gallery {
  padding: 40px 16px;
  background-color: #1a0033;
}

@media (min-width: 768px) {
  .visual-gallery {
    padding: 80px 16px;
  }
}

.gallery-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin-top: 32px;
}

@media (min-width: 640px) {
  .gallery-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .gallery-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}

.gallery-card {
  background-color: #250044;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(138, 43, 226, 0.3);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.gallery-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 25px rgba(138, 43, 226, 0.35);
}

.gallery-card img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  display: block;
}

@media (min-width: 768px) {
  .gallery-card img {
    height: 220px;
  }
}

.gallery-card figcaption {
  padding: 12px;
  text-align: center;
  font-size: 14px;
  font-weight: 600;
  color: #e5e7eb;
  background: linear-gradient(
    to top,
    rgba(26, 0, 51, 0.9),
    rgba(26, 0, 51, 0.6)
  );
}
.gradient-text {
  background: linear-gradient(to right,#a855f7,#ec4899,#f97316);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.prompt-education {
  padding: 60px 16px;
  background-color: #1a0033;
}

@media (min-width: 768px) {
  .prompt-education {
    padding: 100px 16px;
  }
}

.prompt-edu-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 20px;
  margin-top: 40px;
}

@media (min-width: 768px) {
  .prompt-edu-grid {
    gap: 32px;
  }
}

.prompt-edu-card {
  background-color: #250044;
  border: 1px solid rgba(138, 43, 226, 0.3);
  border-radius: 14px;
  padding: 20px;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

@media (min-width: 768px) {
  .prompt-edu-card {
    padding: 28px;
  }
}

.prompt-edu-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(138, 43, 226, 0.35);
}

.prompt-edu-card h3 {
  color: #ffffff;
  font-size: 16px;
  margin-bottom: 10px;
}

@media (min-width: 768px) {
  .prompt-edu-card h3 {
    font-size: 18px;
  }
}

.prompt-edu-card p {
  color: #d1d5db;
  font-size: 13px;
  line-height: 1.6;
}

@media (min-width: 768px) {
  .prompt-edu-card p {
    font-size: 14px;
  }
}

.edu-step {
  display: inline-block;
  font-size: 28px;
  font-weight: 800;
  color: rgba(138, 43, 226, 0.25);
  margin-bottom: 8px;
}

.prompt-edu-card.highlight {
  border-color: #ec4899;
  background: linear-gradient(
    135deg,
    rgba(236, 72, 153, 0.15),
    rgba(138, 43, 226, 0.15)
  );
}
