/*
 * Rowland Made Website V176 — Balanced Site Spacing
 *
 * A tighter responsive rhythm for composed and legacy pages. The four Page
 * Composer spacing values keep their existing stored keys, so every published
 * Studio layout remains compatible while rendering with the cleaner scale.
 */

:root {
  --rm-section-space-compact: 14px;
  --rm-section-space-standard: 28px;
  --rm-section-space-spacious: 46px;
}

/* Studio Page Composer contract: none / compact / standard / spacious. */
.rm-live-pc-section.spacing-none { padding-block: 0; }
.rm-live-pc-section.spacing-compact { padding-block: var(--rm-section-space-compact); }
.rm-live-pc-section.spacing-standard { padding-block: var(--rm-section-space-standard); }
.rm-live-pc-section.spacing-spacious { padding-block: var(--rm-section-space-spacious); }

/* Remove the inherited second layer of padding around composed product rails. */
.rm-live-pc-product-rail {
  border-top: 1px solid rgba(7, 30, 61, 0.2);
}

.rm-live-pc-product-rail .rm-product-rail-section {
  padding: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
}

.rm-live-pc-page {
  padding-bottom: clamp(20px, 3.5vw, 44px);
}

.rm-live-pc-section-head {
  margin-bottom: 18px;
}

.rm-live-pc-promo-card {
  min-height: 210px;
  justify-content: center;
  padding: 22px 20px;
}

/* Shared mobile-first section rhythm. */
.section {
  padding: 28px 24px;
}

.page-head {
  padding: 32px 24px 16px;
}

.rm-product-rail-section {
  padding: 30px 18px 34px;
}

.rm-product-rail-head {
  margin-bottom: 16px;
}

.rm-product-rail {
  padding-bottom: 12px;
}

.rm-shop-all-products {
  padding: 32px 18px 36px;
}

.commission-simple {
  padding-top: 24px;
  padding-bottom: 28px;
}

.ask-nat-hero {
  padding-top: 28px;
  padding-bottom: 32px;
}

.rosie-section {
  padding-top: 28px;
  padding-bottom: 32px;
}

.meet-rowlands-intro {
  padding-top: 32px;
  padding-bottom: 34px;
}

.rowland-maker-copy {
  padding-top: 30px;
  padding-bottom: 34px;
}

.rm-past-hero {
  padding-block: clamp(46px, 8vw, 72px);
}

.rm-past-browser {
  padding-block: clamp(32px, 5vw, 58px);
}

.rm-checkout-page {
  padding-top: 28px;
  padding-bottom: 44px;
}

@media (min-width: 768px) {
  :root {
    --rm-section-space-compact: 20px;
    --rm-section-space-standard: 40px;
    --rm-section-space-spacious: 64px;
  }

  .section {
    padding-block: 36px;
  }

  .page-head {
    padding-top: 38px;
    padding-bottom: 20px;
  }

  .hero-intro {
    padding-top: 26px !important;
    padding-bottom: 30px !important;
  }

  .desktop-home-promos {
    gap: 16px;
    padding-block: 0;
  }

  .desktop-promo {
    min-height: 230px;
    padding: 34px clamp(28px, 4vw, 58px);
  }

  .rm-live-pc-promo-card {
    min-height: 220px;
    padding: 24px;
  }

  .rm-product-rail-section {
    padding: 42px clamp(34px, 5vw, 76px) 46px;
  }

  .rm-product-rail-head {
    margin-bottom: 20px;
  }

  .rm-shop-all-products {
    padding-top: 40px;
    padding-bottom: 46px;
  }

  .commission-head {
    padding-top: 52px;
    padding-bottom: 56px;
  }

  .commission-simple {
    padding: 0;
  }

  .commission-desktop-layout {
    padding-top: 44px;
    padding-bottom: 44px;
  }

  .commission-process {
    padding-top: 22px;
    padding-bottom: 22px;
  }

  .ask-nat-trust article {
    min-height: 190px;
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .rosie-section {
    padding-top: 40px;
    padding-bottom: 44px;
  }

  .meet-rowlands-hero {
    padding-top: 48px;
    padding-bottom: 42px;
  }

  .meet-rowlands-intro {
    padding-top: 44px;
    padding-bottom: 48px;
  }

  .rowland-maker-copy {
    padding-top: 42px;
    padding-bottom: 42px;
  }

  .desktop-shop-categories-v127 {
    padding-top: 40px;
    padding-bottom: 44px;
  }

  .desktop-shop-floor-v127 {
    padding-top: 46px;
    padding-bottom: 56px;
  }

  .product-hero {
    padding-top: 34px;
    padding-bottom: 42px;
  }

  .product-details {
    padding-top: 44px;
    padding-bottom: 50px;
  }

  .ask-nat-pdp {
    padding-bottom: 52px;
  }

  .rm-checkout-page {
    padding-top: 40px;
    padding-bottom: 60px;
  }
}

@media (min-width: 768px) and (max-width: 1050px) {
  .ask-nat-hero {
    min-height: 0;
    padding: 36px;
  }
}

@media (min-width: 1051px) {
  .ask-nat-hero {
    min-height: 560px;
    gap: 50px;
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
