/**
 * Main Global Styles
 * Text Domain: mindhues-academy
 */

/* =============================================
   CSS CUSTOM PROPERTIES / DESIGN TOKENS
============================================= */
:root {
  --color-primary: #DA01A4;
  --color-primary-dark: #c0007e;
  --color-primary-light: #ff33bb;
  --color-accent: #00c8c8;
  --color-dark: #111111;
  --color-gray-dark: #333333;
  --color-gray: #666666;
  --color-gray-light: #999999;
  --color-border: #e5e5e5;
  --color-bg: #ffffff;
  --color-bg-soft: #f8f8f8;
  --color-white: #ffffff;

  --font-display: 'Inter', sans-serif;
  --font-body: 'Inter', sans-serif;

  --radius-sm: 6px;
  --radius-md: 15px;
  --radius-lg: 30px;
  --radius-pill: 999px;

  --shadow-sm: 0 2px 8px rgba(0,0,0,0.07);
  --shadow-md: 0 6px 24px rgba(0,0,0,0.10);
  --shadow-lg: 0 16px 48px rgba(0,0,0,0.13);

  --container-max: 1160px;
  --section-gap: 80px;
  --section-gap-mobile: 56px;
}

/* =============================================
   RESET & BASE
============================================= */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-dark);
  background: var(--color-bg);
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
ul { list-style: none; }
button { cursor: pointer; border: none; background: none; font-family: inherit; }
.post, .page { margin: 0!important; }

/* =============================================
   UTILITY CLASSES
============================================= */
.container {
  width: 100%;
  max-width: var(--container-max);
  margin: 0 auto;
  padding: 0 20px;
}
.sr-only {
  position: absolute; width: 1px; height: 1px;
  padding: 0; margin: -1px; overflow: hidden;
  clip: rect(0,0,0,0); border: 0;
}
.text-pink { color: var(--color-primary); }
.text-center { text-align: center; }


/* =============================================
   MAIN STYLES
============================================= */
.section-title {
  font-family: var(--font-display);
  font-size: clamp(28px, 3.5vw, 60px);
  line-height: 1.15;
  letter-spacing: -0.8px;
  color: var(--color-dark);
  margin-bottom: 12px;
}

.magenta-text{color: var(--color-primary);}

p {
    margin-bottom: 1em;
}

    /* =============================================
       RESPONSIVE — TABLET
    ============================================= */
    @media (max-width: 900px) {
      :root { --section-gap: var(--section-gap-mobile); }

      .features-grid { grid-template-columns: repeat(1, 1fr);}
      .pricing-cards { grid-template-columns: repeat(1, 1fr); }
      .steps-grid { grid-template-columns: 1fr; gap: 28px; }
      .course-card { grid-template-columns: 160px 1fr; grid-template-rows: auto auto; }
      .course-action { grid-column: 2; grid-row: 2; padding-bottom: 20px; }
      .course-thumb { height: 130px; }
      .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
      .bottom-pricing-grid { grid-template-columns: repeat(1, 1fr); }
      .nav-desktop { display: none; }
      .hamburger { display: flex; }
    }

    /* =============================================
       RESPONSIVE — MOBILE
    ============================================= */
    @media (max-width: 640px) {
      .hero-inner {
        grid-template-columns: 1fr;
        gap: 36px;
        padding-bottom: 40px;
      }
      .hero-image-wrap { height: 260px; order: -1; }
      .hero h1 { font-size: 34px; letter-spacing: -1px; }
      .hero-desc { font-size: 15px; }

      .features-grid { grid-template-columns: 1fr; gap: 16px; }

      .course-card {
        grid-template-columns: 1fr;
        padding-right: 0;
      }
      .course-thumb { height: 180px; }
      .course-info { padding: 16px 20px 0; }
      .course-action { grid-column: 1; padding: 12px 20px 20px; }
      .course-action .btn { width: 100%; }

      .cta-inner { grid-template-columns: 1fr; gap: 32px; }
      .cta-image, .cta-image-placeholder { width: 100%; height: 200px; }

      .pricing-cards { grid-template-columns: repeat(2, 1fr); gap: 12px; }
      .bottom-pricing-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }

      .footer-grid { grid-template-columns: 1fr; gap: 28px; }
      .footer-bottom { flex-direction: column; text-align: center; }

      .section-title { font-size: 26px; }

      .courses-header { flex-direction: column; align-items: flex-start; }
      .search-bar { width: 100%; }
    }

    @media (max-width: 400px) {
      .pricing-cards { grid-template-columns: 1fr 1fr; }
      .pricing-price { font-size: 32px; }
      .pricing-plan { font-size: 20px; }
    }