/* Makhanley spacing system.
   Keeps the existing visual language intact while normalising vertical rhythm
   and component-to-component spacing across the site. */
:root {
  --mk-space-1: .5rem;
  --mk-space-2: .75rem;
  --mk-space-3: 1rem;
  --mk-space-4: 1.5rem;
  --mk-space-5: 2rem;
  --mk-space-6: 3rem;
  --mk-space-section: 5rem;
  --mk-space-section-lg: 6rem;
}

/* -------------------------
   Shared content pages
   ------------------------- */
.content-page .simple-hero {
  padding: var(--mk-space-section-lg) 0 var(--mk-space-7, 4rem);
}
.content-page .simple-hero > p:last-child {
  margin-top: var(--mk-space-4);
}
.content-page .paper-section {
  padding-block: var(--mk-space-section);
}
.content-page .split {
  gap: var(--mk-space-6);
}
.content-page .split h2 {
  margin-bottom: 0;
}
.content-page .split p {
  margin: var(--mk-space-3) 0 0;
}
.content-page .split h2 + p {
  margin-top: var(--mk-space-4);
}
.content-page .split .button,
.content-page .article-body .button {
  margin-top: var(--mk-space-4);
}
.content-page .three-col {
  padding-block: var(--mk-space-section);
  gap: var(--mk-space-5);
}
.content-page .three-col .eyebrow {
  margin-bottom: var(--mk-space-2);
}
.content-page .three-col h2 + p {
  margin-top: var(--mk-space-3);
}
.content-page .article-body {
  padding-block: var(--mk-space-section);
}
.content-page .article-body h2 {
  margin: 0 0 var(--mk-space-3);
}
.content-page .article-body h2:not(:first-child) {
  margin-top: var(--mk-space-6);
}
.content-page .article-body p {
  margin: 0 0 var(--mk-space-3);
}
.content-page .article-body h2 + p {
  margin-top: 0;
}
.content-page .article-body .table-wrap {
  margin: var(--mk-space-4) 0;
}
.content-page .article-body .note {
  margin-top: var(--mk-space-3);
}
.content-page .process-list {
  gap: var(--mk-space-4);
  padding-bottom: var(--mk-space-section);
}
.content-page .process-list article {
  gap: var(--mk-space-6);
  padding: var(--mk-space-4);
}
.content-page .process-list .eyebrow {
  margin-bottom: var(--mk-space-2);
}
.content-page .process-list h2 + p {
  margin-top: var(--mk-space-3);
}

/* -------------------------
   Homepage
   ------------------------- */
.home-page #home > .z-10 {
  margin-top: 0 !important;
}
.home-page #home > .z-10 > span {
  margin-bottom: var(--mk-space-3) !important;
}
.home-page #home h1 {
  margin-bottom: var(--mk-space-5) !important;
}
.home-page #home h1 + p {
  margin-bottom: var(--mk-space-6) !important;
}
.home-page #home .flex.flex-col {
  gap: var(--mk-space-3) !important;
}
.home-page #roots,
.home-page #journey {
  padding-block: var(--mk-space-section-lg) !important;
}
.home-page #roots .grid {
  gap: clamp(2rem, 4vw, var(--mk-space-6));
}
.home-page #roots h2 {
  margin-bottom: var(--mk-space-4) !important;
}
.home-page #roots .w-16 {
  margin-bottom: var(--mk-space-5) !important;
}
.home-page #roots .lg\:col-span-5 > p {
  margin-bottom: var(--mk-space-4) !important;
}
.home-page #roots .lg\:col-span-5 > p + p {
  margin-bottom: var(--mk-space-5) !important;
}
.home-page #roots .lg\:col-span-5 > .grid {
  padding-top: var(--mk-space-4) !important;
}
.home-page #products .text-center {
  margin-bottom: var(--mk-space-6) !important;
}
.home-page #journey > .max-w-7xl > .max-w-2xl {
  margin-bottom: var(--mk-space-6) !important;
}
.home-page #journey > .max-w-7xl > .max-w-2xl h2 {
  margin-bottom: var(--mk-space-3) !important;
}
.home-page .journey-step {
  padding-block: var(--mk-space-4);
}
.home-page #journey .mt-12 {
  margin-top: var(--mk-space-6) !important;
}

/* -------------------------
   Bulk supply page
   ------------------------- */
.bulk-page > main > section:first-of-type {
  padding-top: var(--mk-space-section-lg) !important;
  padding-bottom: var(--mk-space-6) !important;
}
.bulk-page > main > section:nth-of-type(2) {
  padding-block: var(--mk-space-section) !important;
}
.bulk-page > main > section:nth-of-type(3) {
  padding-block: var(--mk-space-section-lg) !important;
}
.bulk-page > main > section:nth-of-type(4) {
  margin-top: 0 !important;
  padding-block: var(--mk-space-section) !important;
}
.bulk-page > .h-16 {
  height: 0 !important;
}
.bulk-page .enquiry-heading {
  margin-top: var(--mk-space-3) !important;
}
.bulk-page .enquiry-heading + div {
  margin-top: var(--mk-space-4) !important;
}
.bulk-page #bulk-enquiry-form > .grid {
  gap: var(--mk-space-4) !important;
}
.bulk-page #bulk-enquiry-form > .mt-5 {
  margin-top: var(--mk-space-4) !important;
}
.bulk-page #bulk-enquiry-form > .makhanley-captcha {
  margin-top: var(--mk-space-4);
}
.bulk-page #bulk-enquiry-form > .mt-4 {
  margin-top: var(--mk-space-4) !important;
}
.bulk-page #submit-button {
  margin-top: var(--mk-space-2) !important;
}
.bulk-page #confirmation-state {
  padding-block: var(--mk-space-4) !important;
}
.bulk-page #confirmation-state h3 {
  margin-top: var(--mk-space-4) !important;
}

/* -------------------------
   Consumer products page
   ------------------------- */
.products-page .products-intro {
  padding-top: var(--mk-space-section-lg) !important;
  padding-bottom: var(--mk-space-4) !important;
}
.products-page .products-intro > p:first-child {
  margin-bottom: var(--mk-space-2) !important;
}
.products-page .products-intro h1 {
  margin-bottom: 0 !important;
}
.products-page .products-intro h1 + p {
  margin-top: var(--mk-space-4) !important;
}
.products-page > main > section:first-of-type {
  padding-block: var(--mk-space-section-lg) !important;
}
.products-page > main > section:last-of-type {
  padding-top: var(--mk-space-section) !important;
  padding-bottom: var(--mk-space-section) !important;
}
.products-page > main > section:last-of-type h2 {
  margin-bottom: var(--mk-space-3) !important;
}
.products-page > main > section:last-of-type p:not([style*="margin:0 0 .75rem"]) {
  margin-top: var(--mk-space-3) !important;
}
.products-page > main > section:last-of-type > a[href*="bulk-makhana"] {
  margin-top: var(--mk-space-4) !important;
}

/* -------------------------
   Product detail page
   ------------------------- */
.product-detail-page .product-page {
  padding-top: var(--mk-space-section-lg);
  padding-bottom: var(--mk-space-section);
}
.product-detail-page .product-overview {
  gap: clamp(var(--mk-space-5), 4vw, 4.5rem);
}
.product-detail-page .product-purchase-row {
  margin-block: var(--mk-space-4) var(--mk-space-3);
}
.product-detail-page .product-description {
  margin-block: var(--mk-space-4);
}
.product-detail-page .product-highlights {
  margin-top: var(--mk-space-4);
  margin-bottom: var(--mk-space-5);
}
.product-detail-page .product-ingredients {
  padding-top: var(--mk-space-4);
}
.product-detail-page .nutrition-section {
  margin-top: var(--mk-space-section);
  padding-top: var(--mk-space-5);
}
.product-detail-page .product-not-found {
  margin-block: var(--mk-space-section);
}

/* -------------------------
   404 page
   ------------------------- */
.error-page .error-main {
  padding-top: var(--mk-space-section);
  padding-bottom: var(--mk-space-section);
}
.error-page .error-actions {
  margin-top: var(--mk-space-4);
}

/* -------------------------
   Responsive rhythm
   ------------------------- */
@media (max-width: 767px) {
  .content-page .simple-hero {
    padding-top: 5rem;
    padding-bottom: 3.5rem;
  }
  .content-page .paper-section,
  .content-page .three-col,
  .content-page .article-body,
  .content-page .process-list {
    padding-block: 4rem;
  }
  .content-page .process-list {
    padding-bottom: 4rem;
  }
  .content-page .split,
  .content-page .process-list article {
    gap: var(--mk-space-4);
  }

  .home-page #roots,
    .home-page #journey {
    padding-block: 4.5rem !important;
  }
  .home-page .journey-step {
    padding-block: var(--mk-space-3);
  }

  .bulk-page > main > section:first-of-type {
    padding-top: 5rem !important;
    padding-bottom: 3.5rem !important;
  }
  .bulk-page > main > section:nth-of-type(2),
  .bulk-page > main > section:nth-of-type(3),
  .bulk-page > main > section:nth-of-type(4) {
    padding-block: 4rem !important;
  }

  .products-page .products-intro {
    padding-top: 5rem !important;
    padding-bottom: 3.5rem !important;
  }
  .products-page > main > section:first-of-type,
  .products-page > main > section:last-of-type {
    padding-block: 4rem !important;
  }

  .product-detail-page .product-page {
    padding-top: 5rem;
    padding-bottom: 4rem;
  }
  .product-detail-page .product-overview {
    gap: var(--mk-space-5);
  }
  .product-detail-page .nutrition-section {
    margin-top: 3.5rem;
  }

  .error-page .error-main {
    padding-top: 4rem;
    padding-bottom: 5rem;
  }
}
