/* Shared paper canvas for the three client-facing LPs.
   The dark surfaces remain intentional media / contrast moments; the reading canvas
   follows the warm, tactile paper tone already used by Nomin Jyuku. */
:root {
  --nj-canvas: #efede7;
  --nj-canvas-deep: #e4ded4;
  --nj-canvas-soft: #f7f4ed;
  --nj-canvas-texture: url('../images/linen-canvas-soft.webp');
  --nj-ink: #17151a;
  --nj-muted: #625b55;
  --nj-line: #c9c2b8;
}

/* The real canvas is deliberately quiet: it gives the paper surfaces a tactile
   grain without turning them into a visible repeating pattern behind type. */
body.concept,
body.trial-landing,
body.cognitive-landing {
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
}

body.concept {
  --paper: var(--nj-canvas);
  --ink: var(--nj-ink);
  --muted: var(--nj-muted);
  --line: var(--nj-line);
  background: var(--nj-canvas);
  color: var(--nj-ink);
}

/* Shared navigation and the hero keep the cinematic contrast that frames the page. */
body.concept .site-header { background: var(--brand-black); color: var(--white); }
body.concept .hero-cinema { background: var(--brand-black); color: var(--white); }

/* Homepage: turn full-width reading chapters into a calm paper sequence. */
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) {
  background: var(--nj-canvas);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-story,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .method-story,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .founder-section,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .testimonials-section,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .benefits-section,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .benefits-story,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-focus-section {
  background-color: var(--nj-canvas);
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
  color: var(--nj-ink);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-story,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .method-story,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .benefits-story {
  --story-line: var(--nj-line);
  --benefit-line: var(--nj-line);
  --benefit-muted: var(--nj-muted);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-story-heading .story-eyebrow,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-story-answer > p,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .training-practice > p {
  color: var(--nj-muted);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-story-quotes li,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-story-answer,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .founder-copy .line-link,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .standards {
  border-color: var(--nj-line);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .method-story .method-switcher [role='tablist'] {
  border-color: var(--nj-line);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .method-story .method-switcher button {
  color: var(--nj-muted);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .method-story .method-switcher button[aria-selected='true'] {
  background: var(--brand-black);
  color: var(--white);
}
/* The method panel and the soroban exercise remain dark cards, rather than a dark page. */
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .method-story .method-panel,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .method-story .method-film,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .benefits-demo {
  background: var(--brand-black);
  color: var(--white);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .method-story .method-description > p,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .method-story .operations > p,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .benefits-advanced-copy > p:not(.story-eyebrow) {
  color: #d4cfcb;
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .benefits-advanced {
  background: var(--brand-black);
  --benefit-line: #ffffff30;
  --benefit-muted: #d4cfcb;
  color: var(--white);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .founder-copy > p,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .standards p,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .testimonials-section .section-top > p,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .testimonials-section .chapter,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-focus-intro {
  color: var(--nj-muted);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .founder-name {
  color: #dcd6cc;
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .testimonials-section .parent-letters {
  border-color: var(--nj-line);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-letters .parent-letter {
  border-color: var(--nj-line);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-letter summary small,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-letter blockquote {
  color: var(--nj-muted);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .parent-focus-quotes button {
  border-color: var(--nj-line);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .site-footer {
  background-color: var(--nj-canvas);
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
  color: var(--nj-ink);
  border-top: 1px solid var(--nj-line);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .footer-top > div,
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .footer-bottom {
  color: var(--nj-muted);
}
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .footer-bottom {
  border-color: var(--nj-line);
}

/* Trial LP: the source hierarchy now reads on paper, with dark cards reserved for media. */
body.trial-landing {
  --trial-line: var(--nj-line);
  --trial-dark-line: var(--nj-line);
  background-color: var(--nj-canvas);
  color: var(--nj-ink);
}
body.trial-landing .trial-hero {
  background-color: var(--nj-canvas);
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
  color: var(--nj-ink);
}
body.trial-landing .trial-hero-photo,
body.cognitive-landing .cog-hero-image {
  color: var(--white);
}
body.trial-landing .trial-hero-copy .trial-eyebrow,
body.trial-landing .trial-parent-question,
body.trial-landing .trial-hero-intro,
body.trial-landing .trial-cta-note,
body.trial-landing.trial-source-layout .trial-hero-answer,
body.trial-landing.trial-source-layout .trial-hero-intro,
body.trial-landing.trial-source-layout .trial-hero-action p,
body.trial-landing.trial-source-layout .trial-program-intro > .trial-program-structure,
body.trial-landing.trial-source-layout .trial-program-intro .trial-hero-address,
body.trial-landing .trial-highlights p {
  color: var(--nj-muted);
}
body.trial-landing.trial-source-layout .trial-hero h1,
body.trial-landing.trial-source-layout .trial-hero-answer strong,
body.trial-landing.trial-source-layout .trial-program-intro h2,
body.trial-landing.trial-source-layout .trial-highlights strong {
  color: var(--nj-ink);
}
body.trial-landing .trial-program-intro {
  border-color: var(--nj-line);
  background: transparent;
}
body.trial-landing .trial-media {
  background-color: var(--nj-canvas-deep);
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
  color: var(--nj-ink);
  border-color: var(--nj-line);
}
body.trial-landing .trial-media-intro .trial-eyebrow,
body.trial-landing .trial-media-logos li > span {
  color: var(--nj-muted);
}
body.trial-landing .trial-comparison {
  background-color: var(--nj-canvas-deep);
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
  color: var(--nj-ink);
}
body.trial-landing .trial-comparison .trial-section-heading > div:last-child > p,
body.trial-landing.trial-source-layout .trial-comparison .trial-source-intro > p,
body.trial-landing.trial-source-layout .trial-compare-head,
body.trial-landing .trial-before p,
body.trial-landing .trial-after p {
  color: var(--nj-muted);
}
body.trial-landing.trial-source-layout .trial-comparison .trial-source-intro > .trial-source-subheading,
body.trial-landing .trial-after h3,
body.trial-landing.trial-source-layout :is(.trial-before,.trial-after) strong {
  color: var(--nj-ink);
}
body.trial-landing .trial-compare-row,
body.trial-landing.trial-source-layout :is(.trial-before,.trial-after),
body.trial-landing .trial-mid-cta {
  border-color: var(--nj-line);
}
body.trial-landing.trial-source-layout .trial-mid-cta {
  background: var(--nj-canvas-soft);
}
body.trial-landing .trial-booking {
  background-color: var(--nj-canvas-deep);
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
  color: var(--nj-ink);
}
body.trial-landing .trial-booking .trial-section-heading > p,
body.trial-landing.trial-source-layout .trial-booking-intro > p,
body.trial-landing.trial-source-layout .trial-booking-reassurance p:last-child,
body.trial-landing .trial-place-bottom p {
  color: var(--nj-muted);
}
body.trial-landing.trial-source-layout .trial-booking-reassurance p,
body.trial-landing .trial-booking-address {
  color: var(--nj-ink);
}
body.trial-landing .trial-booking-place {
  border-color: var(--nj-line);
  background: var(--nj-canvas-soft);
}
body.trial-landing .site-footer {
  background-color: var(--nj-canvas);
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
  color: var(--nj-ink);
  border-color: var(--nj-line);
}
body.trial-landing .trial-footer-main p,
body.trial-landing .footer-bottom {
  color: var(--nj-muted);
}

/* Cognitive LP: training and booking are lighter editorial chapters, not black walls. */
body.cognitive-landing {
  --trial-line: var(--nj-line);
  --trial-dark-line: var(--nj-line);
  background-color: var(--nj-canvas);
  color: var(--nj-ink);
}
body.cognitive-landing .cog-hero {
  background-color: var(--nj-canvas);
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
  color: var(--nj-ink);
}
body.cognitive-landing .cog-hero .cog-kicker,
body.cognitive-landing .cog-hero .cog-lead,
body.cognitive-landing .cog-hero-meta {
  color: var(--nj-muted);
}
body.cognitive-landing .cog-hero-meta {
  border-color: var(--nj-line);
}
body.cognitive-landing .cog-hero-meta span:first-child { color: var(--nj-ink); }
body.cognitive-landing .cog-training {
  background-color: var(--nj-canvas-deep);
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
  color: var(--nj-ink);
}
body.cognitive-landing .cog-training .cog-kicker,
body.cognitive-landing .cog-training-scale-copy,
body.cognitive-landing .cog-training-copy,
body.cognitive-landing .cog-training .cog-attention-scale small {
  color: var(--nj-muted);
}
body.cognitive-landing .cog-attention-scale {
  border-color: var(--nj-line);
  background: var(--nj-canvas-soft);
}
body.cognitive-landing .cog-attention-scale > span::before,
body.cognitive-landing .cog-skills {
  border-color: var(--nj-line);
}
body.cognitive-landing .cog-attention-scale > span::before { background: var(--nj-line); }
body.cognitive-landing .cog-attention-scale i { background: var(--nj-ink); }
body.cognitive-landing .cog-skills li { color: var(--nj-ink); }
body.cognitive-landing .cog-skills svg { border-color: var(--nj-line); }
body.cognitive-landing .cog-booking {
  background-color: var(--nj-canvas-deep);
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
  color: var(--nj-ink);
}
body.cognitive-landing .cog-booking .cog-lead,
body.cognitive-landing .cog-zooza-link,
body.cognitive-landing .cog-contact span,
body.cognitive-landing .cog-contact p,
body.cognitive-landing .cog-elsewhere {
  color: var(--nj-muted);
}
body.cognitive-landing .cog-contact { border-color: var(--nj-line); }
body.cognitive-landing .cog-elsewhere button { color: var(--nj-ink); }
body.cognitive-landing .cog-footer {
  background-color: var(--nj-canvas);
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
  color: var(--nj-ink);
  border-top: 1px solid var(--nj-line);
}

/* Soft editorial seams: the page changes chapter without hard horizontal cuts. */
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing)
  :is(.trust-section, .parent-story, .method-story, .founder-section, .standards-section,
      .benefits-section, .benefits-story, .journey-story, .programs-story, .centre-story,
      .trial-story, .voices-story, .progress-story, .questions-story, .closing-story) {
  position: relative;
}

body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing)
  :is(.trust-section, .parent-story, .method-story, .founder-section, .standards-section,
      .benefits-section, .benefits-story, .journey-story, .programs-story, .centre-story,
      .trial-story, .voices-story, .progress-story, .questions-story, .closing-story)::before,
body.trial-landing :is(.trial-media, .trial-method, .trial-quality, .trial-comparison, .trial-booking, .site-footer)::before,
body.cognitive-landing :is(.cog-context, .cog-method, .cog-founder, .cog-training, .cog-proof, .cog-results, .cog-parents, .cog-path, .cog-booking, .cog-footer)::before {
  content: '';
  position: absolute;
  z-index: 1;
  top: 0;
  left: clamp(24px, 9vw, 150px);
  right: clamp(24px, 9vw, 150px);
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(201, 194, 184, .72) 14%, rgba(201, 194, 184, .72) 86%, transparent);
  pointer-events: none;
}

/* The first visible chapter starts cleanly under its header; subsequent chapters
   carry the seam so the texture does the visual transition work. */
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .trust-section::before,
body.trial-landing .trial-media::before,
body.cognitive-landing .cog-context::before {
  display: none;
}

@media (max-width: 760px) {
  body.concept,
  body.trial-landing,
  body.cognitive-landing,
  body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) :is(.parent-story, .method-story, .founder-section, .benefits-story, .site-footer),
  body.trial-landing .trial-hero,
  body.trial-landing :is(.trial-media, .trial-comparison, .trial-booking, .site-footer),
  body.cognitive-landing :is(.cog-hero, .cog-training, .cog-booking, .cog-footer) {
    background-size: 380px 380px;
  }
  body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing)
    :is(.trust-section, .parent-story, .method-story, .founder-section, .standards-section,
        .benefits-section, .benefits-story, .journey-story, .programs-story, .centre-story,
        .trial-story, .voices-story, .progress-story, .questions-story, .closing-story)::before,
  body.trial-landing :is(.trial-media, .trial-method, .trial-quality, .trial-comparison, .trial-booking, .site-footer)::before,
  body.cognitive-landing :is(.cog-context, .cog-method, .cog-founder, .cog-training, .cog-proof, .cog-results, .cog-parents, .cog-path, .cog-booking, .cog-footer)::before {
    left: 24px;
    right: 24px;
  }
}

@media (max-width: 760px) {
  body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing)
    :is(.founder-section, .testimonials-section, .voices-story, .benefits-section, .benefits-story, .site-footer),
  body.trial-landing :is(.trial-comparison, .trial-booking, .site-footer),
  body.cognitive-landing :is(.cog-training, .cog-booking, .cog-footer) {
    background-color: var(--nj-canvas);
    background-image: var(--nj-canvas-texture);
    background-size: 380px 380px;
    background-repeat: repeat;
    background-blend-mode: multiply;
  }
}
body.cognitive-landing .cog-footer-bottom p { color: var(--nj-muted); }
body.cognitive-landing .cog-footer-bottom .button { color: var(--nj-ink); border-color: var(--nj-line); }

/* Apply the tactile layer to the remaining open chapters whose base styles
   already provide the correct paper tone. Dark media cards are intentionally
   excluded so the texture never competes with a video or photograph. */
body.trial-landing :is(.trial-method, .trial-quality, .trial-faq, .trial-founder),
body.cognitive-landing :is(.cog-context, .cog-method, .cog-founder, .cog-proof, .cog-results, .cog-parents, .cog-path),
body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing)
  :is(.trust-section, .parent-story, .method-story, .founder-section, .standards-section,
      .benefits-section, .journey-story, .programs-story, .centre-story, .trial-story,
      .voices-story, .progress-story, .questions-story) {
  background-image: var(--nj-canvas-texture);
  background-size: 520px 520px;
  background-repeat: repeat;
  background-blend-mode: multiply;
}

@media (max-width: 760px) {
  body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .founder-section,
  body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .testimonials-section,
  body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .benefits-section,
  body.concept:not(.trial-landing):not(.cognitive-landing):not(.clarity-landing) .benefits-story,
  body.trial-landing .trial-comparison,
  body.trial-landing .trial-booking,
  body.cognitive-landing .cog-training,
  body.cognitive-landing .cog-booking {
    background-color: var(--nj-canvas);
    background-image: var(--nj-canvas-texture);
    background-size: 380px 380px;
    background-repeat: repeat;
    background-blend-mode: multiply;
  }
}
