/* ==========================================================================
   MMP — Sound Archive Books imprint page
   File: assets/css/sound-archive-books.css
   ========================================================================== */

.mmp-sab-hero {
  background: linear-gradient(135deg, var(--mmp-page-ink), #5a4031);
  color: var(--mmp-page-paper);
  padding: 90px 40px !important;
}

.mmp-sab-hero-grid {
  gap: 50px !important;
  align-items: center;
}

.mmp-sab-hero h1 {
  color: var(--mmp-page-paper) !important;
  font-size: clamp(3.5rem, 7vw, 5.9rem) !important;
  line-height: 0.95 !important;
  margin: 0 !important;
}

.mmp-sab-hero .mmp-kicker {
  color: var(--mmp-page-gold);
}

.mmp-sab-hero-lede {
  color: rgba(255, 250, 241, .9);
  font-family: var(--mmp-font-editorial);
  font-size: clamp(1.35rem, 2.6vw, 1.7rem);
  margin: 22px 0 14px !important;
}

.mmp-sab-hero-body {
  color: rgba(255, 250, 241, .78);
  max-width: 720px;
}

.mmp-sab-btn-row {
  display: flex !important;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 28px !important;
}

.mmp-sab-btn .wp-block-button__link {
  background: var(--mmp-page-paper) !important;
  color: var(--mmp-page-ink) !important;
  border: 1px solid var(--mmp-page-paper) !important;
  border-radius: 0 !important;
  font-family: var(--mmp-font-body);
  font-size: 0.85rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 14px 22px;
}

.mmp-sab-btn-outline .wp-block-button__link {
  background: transparent !important;
  color: var(--mmp-page-paper) !important;
  border-color: rgba(255, 250, 241, .5) !important;
}

.mmp-sab-btn .wp-block-button__link:hover {
  background: var(--mmp-page-gold) !important;
  border-color: var(--mmp-page-gold) !important;
  color: var(--mmp-page-ink) !important;
}

.mmp-sab-hero-image {
  margin: 0 !important;
}

.mmp-sab-hero-image img,
.mmp-sab-large-image img {
  width: 100%;
  min-height: 420px;
  object-fit: cover;
  display: block;
  background: linear-gradient(135deg, #7d5d45, var(--mmp-page-blue));
}

.mmp-sab-hero-image img[src=""],
.mmp-sab-large-image img[src=""] {
  min-height: 420px;
  background: linear-gradient(135deg, #7d5d45, var(--mmp-page-blue));
}

.mmp-sab-section {
  padding: 90px 40px !important;
}

.mmp-sab-section h2,
.mmp-sab-why h2 {
  margin-bottom: 20px !important;
  color: var(--mmp-page-ink) !important;
}

.mmp-sab-why {
  background: var(--mmp-page-paper);
}

.mmp-sab-lede {
  font-family: var(--mmp-font-editorial);
  font-size: clamp(1.25rem, 2.4vw, 1.6rem);
  line-height: 1.45;
  color: var(--mmp-page-ink);
  max-width: 900px;
}

.mmp-sab-dark {
  background: var(--mmp-page-ink);
  color: var(--mmp-page-paper);
}

.mmp-sab-dark h2,
.mmp-sab-dark h3 {
  color: var(--mmp-page-paper) !important;
}

.mmp-sab-dark .mmp-kicker {
  color: var(--mmp-page-gold);
}

.mmp-sab-card-grid {
  gap: 20px !important;
}

.mmp-sab-card {
  background: var(--mmp-page-paper);
  border: 1px solid rgba(255, 250, 241, .18);
  padding: 28px !important;
  box-shadow: var(--mmp-shadow-subtle);
}

.mmp-sab-card h3 {
  color: var(--mmp-page-ink) !important;
  margin-bottom: 10px !important;
}

.mmp-sab-card p {
  color: var(--mmp-page-muted);
  margin: 0 !important;
}

.mmp-sab-case-study {
  background: var(--mmp-white);
}

.mmp-sab-featured-grid {
  gap: 30px !important;
  align-items: center;
  margin-top: 36px !important;
}

.mmp-sab-large-image {
  margin: 0 !important;
}

.mmp-sab-stat-grid {
  gap: 15px !important;
  margin-top: 24px !important;
}

.mmp-sab-stat {
  background: var(--mmp-page-cream);
  border: 1px solid var(--mmp-page-border-light);
  padding: 18px !important;
  text-align: center;
}

.mmp-sab-stat p {
  margin: 0 !important;
  color: var(--mmp-page-ink);
  font-weight: 800;
}

.mmp-sab-project-grid {
  gap: 20px !important;
  margin-top: 36px !important;
}

.mmp-sab-project-featured {
  flex-basis: 45% !important;
}

.mmp-sab-project {
  background: var(--mmp-white);
  border: 1px solid var(--mmp-page-border-light);
  overflow: hidden;
  box-shadow: var(--mmp-shadow-subtle);
}

.mmp-sab-project-image {
  margin: 0 !important;
}

.mmp-sab-project-image img {
  width: 100%;
  height: 240px;
  object-fit: cover;
  display: block;
  background: linear-gradient(135deg, var(--mmp-page-blue), #7d5d45);
}

.mmp-sab-project-image img[src=""] {
  height: 240px;
  background: linear-gradient(135deg, var(--mmp-page-blue), #7d5d45);
}

.mmp-sab-project-image p {
  color: var(--mmp-page-paper);
  font-family: var(--mmp-font-heading);
  font-size: 1.2rem;
  font-weight: 700;
  margin: 0 !important;
}

.mmp-sab-project-content {
  padding: 24px !important;
}

.mmp-sab-project-content h3 {
  color: var(--mmp-page-ink) !important;
  margin-bottom: 10px !important;
}

.mmp-sab-project-content p {
  color: var(--mmp-page-muted);
}

.mmp-sab-merch {
  background: var(--mmp-page-cream);
}

.mmp-sab-storybook {
  background: var(--mmp-page-blue);
  color: var(--mmp-page-paper);
  text-align: center;
}

.mmp-sab-storybook h2,
.mmp-sab-storybook h3 {
  color: var(--mmp-page-paper) !important;
}

.mmp-sab-storybook .mmp-kicker {
  color: var(--mmp-page-gold);
}

.mmp-sab-flow {
  gap: 20px !important;
  margin-top: 36px !important;
}

.mmp-sab-step {
  background: rgba(255, 250, 241, .08);
  border: 1px solid rgba(255, 250, 241, .16);
  padding: 24px !important;
}

.mmp-sab-step p {
  color: rgba(255, 250, 241, .78);
}

.mmp-sab-cta {
  background: var(--mmp-page-ink);
  color: var(--mmp-page-paper);
  text-align: center;
  padding: 90px 40px !important;
}

.mmp-sab-cta-inner {
  max-width: 860px;
  margin: 0 auto;
}

.mmp-sab-cta h2 {
  color: var(--mmp-page-paper) !important;
}

.mmp-sab-cta .mmp-kicker {
  color: var(--mmp-page-gold);
}

.mmp-sab-cta p {
  color: rgba(255, 250, 241, .78);
  margin-left: auto !important;
  margin-right: auto !important;
}

.mmp-sab-cta .mmp-sab-btn-row {
  justify-content: center;
}

@media (max-width: 900px) {
  .mmp-sab-hero-grid,
  .mmp-sab-featured-grid,
  .mmp-sab-card-grid,
  .mmp-sab-project-grid,
  .mmp-sab-flow {
    flex-direction: column !important;
  }

  .mmp-sab-stat-grid {
    flex-wrap: wrap !important;
  }

  .mmp-sab-stat-grid > .wp-block-column {
    flex-basis: calc(50% - 10px) !important;
  }

  .mmp-sab-hero,
  .mmp-sab-section,
  .mmp-sab-cta {
    padding-top: 72px !important;
    padding-bottom: 72px !important;
  }
}

@media (max-width: 680px) {
  .mmp-sab-hero,
  .mmp-sab-section,
  .mmp-sab-cta {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .mmp-sab-stat-grid > .wp-block-column {
    flex-basis: 100% !important;
  }
}