/* Restrained editorial direction
   Mostly white/cream. Colour is used as focus, not everywhere.
   Decorative language uses route/maze motifs, not generic blobs.
*/

/* Main canvas */
body {
  background: #fffdfa;
}

.section,
.section.human-intro,
.section.shop-packs,
.section.support,
.section.notes-preview,
.section.notes-list,
.section.article-detail,
.section.testimonials {
  background: #fffdfa !important;
}

/* Keep only selected focus blocks coloured */
.section.scorecard {
  background: #e8eee0 !important;
}

.section.testimonials {
  background: #fffdfa !important;
  border-top: 1px solid rgba(23, 34, 57, 0.08);
  border-bottom: 1px solid rgba(23, 34, 57, 0.08);
}

/* Footer must not merge with Guides/Notes */
.site-footer {
  background: #172239 !important;
  color: #fffdfa !important;
  border-top: 0 !important;
}

.site-footer,
.site-footer p,
.site-footer a,
.site-footer li,
.site-footer span,
.site-footer strong,
.site-footer h2,
.site-footer h3,
.site-footer h4 {
  color: #fffdfa !important;
}

.site-footer a {
  text-decoration-color: rgba(255, 253, 250, 0.32);
}

/* Remove generic ghost words and blobs */
.section::before,
.section.notes-preview::before,
.section.notes-list::before,
.section.article-detail::before,
.section.human-intro::before,
.section.combined-intro::before {
  display: none !important;
}

/* Subtle Messy Middle route / maze motif */
.section.human-intro,
.section.scorecard,
.section.support,
.section.notes-preview,
.section.article-detail {
  position: relative;
}

.section.human-intro::after,
.section.scorecard::after,
.section.support::after,
.section.notes-preview::after,
.section.article-detail::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: clamp(180px, 21vw, 340px);
  height: clamp(180px, 21vw, 340px);
  right: clamp(20px, 5vw, 82px);
  top: clamp(28px, 5vw, 76px);
  opacity: 0.18;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(197, 101, 53, 0.7) 0 48%, transparent 48% 100%) 0 12% / 100% 3px no-repeat,
    linear-gradient(90deg, rgba(197, 101, 53, 0.7) 0 62%, transparent 62% 100%) 0 38% / 100% 3px no-repeat,
    linear-gradient(90deg, transparent 0 24%, rgba(197, 101, 53, 0.7) 24% 100%) 0 64% / 100% 3px no-repeat,
    linear-gradient(90deg, rgba(197, 101, 53, 0.7) 0 36%, transparent 36% 100%) 0 88% / 100% 3px no-repeat,
    linear-gradient(180deg, rgba(197, 101, 53, 0.7) 0 38%, transparent 38% 100%) 18% 0 / 3px 100% no-repeat,
    linear-gradient(180deg, transparent 0 16%, rgba(197, 101, 53, 0.7) 16% 72%, transparent 72% 100%) 42% 0 / 3px 100% no-repeat,
    linear-gradient(180deg, rgba(197, 101, 53, 0.7) 0 64%, transparent 64% 100%) 66% 0 / 3px 100% no-repeat,
    linear-gradient(180deg, transparent 0 36%, rgba(197, 101, 53, 0.7) 36% 100%) 86% 0 / 3px 100% no-repeat;
}

.section.human-intro > *,
.section.scorecard > *,
.section.support > *,
.section.notes-preview > *,
.section.article-detail > * {
  position: relative;
  z-index: 1;
}

/* Use maze motif with different restraint per section */
.section.scorecard::after {
  opacity: 0.2;
  right: clamp(16px, 4vw, 60px);
  top: auto;
  bottom: clamp(28px, 5vw, 76px);
}

.section.support::after,
.section.notes-preview::after,
.section.article-detail::after {
  opacity: 0.11;
}

/* Headings: keep hero expressive, calm the rest */
.section:not(.mm-hero) h2,
.section:not(.hero) h2,
.human-intro__copy h2,
.scorecard-box h2,
.shop-packs h2,
.support h2,
.notes-head h2,
.notes-page-head h1,
.testimonials__head h2 {
  font-size: clamp(2rem, 2.75vw, 3.35rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.04em !important;
}

.section:not(.mm-hero) h3,
.section:not(.hero) h3,
.support-card h3,
.note-preview-card h3,
.article-row__main h2,
.testimonial-card blockquote {
  font-size: clamp(1.3rem, 1.65vw, 1.95rem) !important;
  line-height: 1.14 !important;
  letter-spacing: -0.028em !important;
}

/* Scorecard: Kin-style focus block, not a card */
.scorecard-box,
.scorecard-panel,
.scorecard-card {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.section.scorecard .container,
.section.scorecard .scorecard-box {
  max-width: 1180px !important;
}

/* Notes/guides: editorial rows, not card wall */
.note-preview-card,
.article-row {
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid rgba(23, 34, 57, 0.12) !important;
}

.note-preview-card:last-child,
.article-row:last-child {
  border-bottom: 1px solid rgba(23, 34, 57, 0.12) !important;
}

.note-preview-card::after {
  display: none !important;
}

/* Detail notes: editorial reading style */
.article-detail__image,
.article-detail__feature-card,
.article-detail__resource,
.article-detail__side-note {
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.article-detail__feature-card,
.article-detail__resource,
.article-detail__side-note {
  background: #f8f3eb !important;
}

.article-detail h1 {
  font-size: clamp(2.5rem, 3.7vw, 4.25rem) !important;
  line-height: 1.03 !important;
  letter-spacing: -0.045em !important;
}

/* Testimonials: colour only here, but reduce saturation dominance */
.testimonial-card {
  border-radius: 0 !important;
  box-shadow: none !important;
}

.testimonial-card--teal {
  background: #b9ded7 !important;
}

.testimonial-card--terracotta {
  background: #e5b092 !important;
}

.testimonial-card--sage {
  background: #dfe8d6 !important;
}

.testimonial-card--navy {
  background: #172239 !important;
}

.testimonial-card blockquote,
.testimonial-card strong,
.testimonial-card span {
  color: #172239 !important;
}

.testimonial-card--navy blockquote,
.testimonial-card--navy strong,
.testimonial-card--navy span {
  color: #fffdfa !important;
}

/* Support readability and calmer treatment */
.support-intro-card {
  background: #172239 !important;
  color: #fffdfa !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.support-intro-card h2,
.support-intro-card h3,
.support-intro-card p,
.support-intro-card li,
.support-intro-card span,
.support-intro-card strong {
  color: #fffdfa !important;
}

.support-card {
  background: #f8f3eb !important;
  color: #172239 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.support-card h2,
.support-card h3,
.support-card p,
.support-card li,
.support-card span,
.support-card strong {
  color: #172239 !important;
}

/* Remove decorative circles/blobs that compete with route motif */
.human-intro__quote::before,
.support-intro-card::before,
.support-intro-card::after,
.support-card::after,
.article-detail__feature::before,
.article-detail__feature::after {
  display: none !important;
}

/* Editorial quote block */
.human-intro__quote {
  background: #f8f3eb !important;
  border: 0 !important;
  box-shadow: none !important;
}

.human-intro__quote blockquote {
  font-size: clamp(1.75rem, 2.35vw, 2.65rem) !important;
}

/* More air between blocks */
@media (min-width: 981px) {
  .section.human-intro,
  .section.scorecard,
  .section.shop-packs,
  .section.support,
  .section.testimonials,
  .section.notes-preview {
    padding-top: clamp(88px, 7vw, 122px) !important;
    padding-bottom: clamp(88px, 7vw, 122px) !important;
  }
}

/* Mobile */
@media (max-width: 760px) {
  .section.human-intro::after,
  .section.scorecard::after,
  .section.support::after,
  .section.notes-preview::after,
  .section.article-detail::after {
    width: 160px;
    height: 160px;
    opacity: 0.08;
  }

  .section:not(.mm-hero) h2,
  .section:not(.hero) h2,
  .human-intro__copy h2,
  .scorecard-box h2,
  .shop-packs h2,
  .support h2,
  .notes-head h2,
  .notes-page-head h1,
  .testimonials__head h2 {
    font-size: clamp(1.95rem, 8vw, 2.85rem) !important;
  }
}
