/* ═══════════════════════════════════════════════════════════════
   Myrvann V — Brutalist Investor Pitch
   Scoped to .br-section.* classes on this page only.
   Visual intent from brutalist-pitch.css, re-expressed for
   core-block markup (wp:group/list/table instead of wp:html).
   ═══════════════════════════════════════════════════════════════ */

:root {
  --br-mono: ui-monospace, 'Courier New', Courier, monospace;
  --br-serif-display: 'new-spirit-condensed', 'new-spirit', Georgia, serif;
  --br-serif: 'karmina', 'new-spirit', Georgia, serif;
  --br-italic: 'am-augusta', Georgia, serif;
  --br-sans: 'mendl-sans-variable', system-ui, sans-serif;
}

/* ── LAYOUT RE-CONSTRAINT ── */

.wp-block-group.alignfull.br-section > *:not(.wp-block-columns):not(.wp-block-image):not(.wp-block-group__inner-container),
.wp-block-group.alignfull.br-section > .wp-block-group__inner-container > *:not(.wp-block-columns):not(.wp-block-image):not(.br-spec-grid):not(.br-big-numbers):not(.wp-block-table) {
  max-width: var(--max-width, 680px);
  margin-inline: auto;
  padding-inline: 1.5rem;
}

.wp-block-group.alignfull.br-section > .wp-block-columns,
.wp-block-group.alignfull.br-section > .wp-block-group__inner-container > .wp-block-columns,
.wp-block-group.alignfull.br-section > .wp-block-group__inner-container > .br-spec-grid,
.wp-block-group.alignfull.br-section > .wp-block-group__inner-container > .br-big-numbers,
.wp-block-group.alignfull.br-section > .wp-block-group__inner-container > .wp-block-table {
  max-width: var(--wide-width, 1100px);
  margin-inline: auto;
  padding-inline: 1.5rem;
}

.br-section.wp-block-group {
  margin-bottom: 0;
}

/* ── SHARED ── */

.br-section {
  padding-block: clamp(4rem, 10vw, 9rem);
  position: relative;
  overflow: hidden;
}

.br-label {
  font-family: var(--br-mono);
  font-size: 0.65rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  opacity: 0.5;
  margin-bottom: 1.5rem;
  display: block;
}

/* ── S01: HERO ── */

.br-hero {
  min-height: 100svh;
  display: flex;
  align-items: flex-end;
  background: var(--color-brown-900, #1a120b);
  color: var(--color-cream-100, #f5ecd9);
  padding-bottom: clamp(4rem, 8vw, 8rem) !important;
}

.br-hero .wp-block-cover__inner-container {
  position: relative;
  z-index: 2;
}

.br-hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 30%, var(--color-brown-900, #1a120b) 100%);
  z-index: 1;
  pointer-events: none;
}

.br-hero :is(h1, h2, p) {
  color: inherit;
}

.br-hero .br-hero__title {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(2.8rem, 8vw, 6rem);
  line-height: 0.95;
  letter-spacing: -0.03em;
  text-transform: uppercase;
  color: var(--color-cream-100, #f5ecd9);
  margin: 0;
}

.br-hero .br-hero__title--alt {
  margin-bottom: 2rem;
}

.br-hero .br-hero__sub {
  font-family: var(--br-serif);
  font-size: clamp(1rem, 1.8vw, 1.2rem);
  line-height: 1.7;
  max-width: 38ch;
  opacity: 0.7;
}

.br-hero .br-label {
  color: var(--decorative-gold, #c9a96a);
  opacity: 0.8;
}

/* ── S02: THESIS ── */

.br-thesis {
  background: var(--color-cream-100, #f5ecd9);
  text-align: center;
}

.br-thesis :is(h2, p) { color: inherit; }

.br-thesis h2 {
  font-family: var(--br-serif-display);
  font-weight: 300;
  font-size: clamp(1.6rem, 4vw, 3rem);
  line-height: 1.2;
  color: var(--color-brown-900, #1a120b);
  max-width: 22ch;
  margin-inline: auto;
}

.br-thesis .br-thesis__footnote {
  font-family: var(--br-mono);
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  color: var(--color-brown-400, #8a6d4f);
  margin-top: 2rem;
}

/* ── S03: PLANT ── */

.br-plant {
  background: var(--color-brown-900, #1a120b);
  color: var(--color-cream-200, #ede2c8);
}

.br-plant :is(h2, h3, p) { color: inherit; }

.br-plant h2 {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  line-height: 1.05;
  text-transform: uppercase;
  letter-spacing: -0.02em;
  color: var(--color-cream-100, #f5ecd9);
  margin-bottom: 2rem;
}

.br-plant .wp-block-columns {
  gap: clamp(2rem, 5vw, 4rem);
}

.br-plant p {
  font-family: var(--br-serif);
  font-size: 0.95rem;
  line-height: 1.8;
}

.br-plant .br-plant__pull {
  font-family: var(--br-italic);
  font-style: italic;
  font-size: clamp(1.2rem, 2.5vw, 1.6rem);
  line-height: 1.4;
  color: var(--decorative-gold, #c9a96a);
  border-left: 2px solid var(--decorative-gold, #c9a96a);
  padding-left: 1.5rem;
  margin: 2rem 0;
}

/* ── S04: PRODUCT ── */

.br-product {
  background: var(--color-cream-100, #f5ecd9);
}

.br-product :is(h2, h3, p) { color: inherit; }

.br-product h2 {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  line-height: 1.05;
  text-transform: uppercase;
  color: var(--color-brown-900, #1a120b);
  margin-bottom: 0.5rem;
}

.br-product .br-product__lead {
  font-family: var(--br-serif);
  font-size: 1.05rem;
  line-height: 1.7;
  color: var(--color-brown-700, #3d2a18);
  max-width: 55ch;
  margin-bottom: 3rem;
}

/* Spec grid — a wp:group with layout:grid. Cells get hard dividers via outline. */
.br-spec-grid {
  background: var(--border-color-light, #d6c7ae);
  border: 1px solid var(--border-color-light, #d6c7ae);
  gap: 1px !important;
  max-width: var(--wide-width, 1100px);
  margin-inline: auto;
}

.br-spec {
  background: var(--color-cream-50, #fbf7ec);
  padding: 1.5rem;
  margin: 0 !important;
}

.br-spec .br-spec__key {
  font-family: var(--br-mono);
  font-size: 0.62rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--color-brown-400, #8a6d4f);
  margin-bottom: 0.5rem;
}

.br-spec .br-spec__val {
  font-family: var(--br-serif-display);
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--color-brown-900, #1a120b);
  line-height: 1.4;
  margin: 0;
}

/* ── S05: CHAIN — ordered list with counters ── */

.br-chain {
  background: var(--color-cream-200, #ede2c8);
}

.br-chain :is(h2, h3, p, li) { color: inherit; }

.br-chain h2 {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  text-transform: uppercase;
  color: var(--color-brown-900, #1a120b);
  margin-bottom: 0.5rem;
}

.br-chain .br-chain__sub {
  font-family: var(--br-serif);
  font-size: 1rem;
  color: var(--color-brown-600, #5a3d22);
  margin-bottom: 3rem;
}

.br-chain-steps {
  counter-reset: chain;
  list-style: none;
  padding-left: 0;
  max-width: var(--wide-width, 1100px);
  margin-inline: auto;
}

.br-chain-steps > li {
  counter-increment: chain;
  display: grid;
  grid-template-columns: 3rem 1fr;
  gap: 0.25rem 1.5rem;
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--border-color-light, #d6c7ae);
  font-family: var(--br-serif);
  font-size: 0.9rem;
  line-height: 1.7;
  color: var(--color-brown-600, #5a3d22);
}

.br-chain-steps > li::before {
  content: counter(chain, decimal-leading-zero);
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: 2.5rem;
  color: var(--color-brown-400, #8a6d4f);
  line-height: 1;
  grid-row: 1 / -1;
  grid-column: 1;
  padding-top: 0.15rem;
}

.br-chain-steps > li > strong {
  display: block;
  grid-column: 2;
  font-family: var(--br-sans);
  font-weight: 700;
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--color-brown-800, #2c1d10);
  margin-bottom: 0.25rem;
}

.br-chain-steps > li > br {
  display: none;
}

/* Everything after the strong is the body text — place it in column 2, row 2 */
.br-chain-steps > li {
  grid-template-rows: auto 1fr;
}

/* ── S06: MARKET — big numbers ── */

.br-market {
  background: var(--color-brown-900, #1a120b);
  color: var(--color-cream-200, #ede2c8);
}

.br-market :is(h2, h3, p) { color: inherit; }

.br-market h2 {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  text-transform: uppercase;
  color: var(--color-cream-100, #f5ecd9);
  margin-bottom: 0.5rem;
}

.br-market .br-market__lead {
  font-family: var(--br-serif);
  font-size: 1rem;
  color: var(--color-cream-400, #c8b486);
  margin-bottom: 3rem;
  max-width: 55ch;
}

.br-big-numbers {
  max-width: var(--wide-width, 1100px);
  margin-inline: auto;
  gap: 2rem !important;
}

.br-big-num {
  border-top: 1px solid hsla(0, 0%, 100%, 0.1);
  padding-top: 1.5rem;
  margin: 0 !important;
}

.br-big-num .br-big-num__figure {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(2.5rem, 6vw, 4rem);
  color: var(--color-cream-100, #f5ecd9);
  line-height: 1;
  margin: 0 0 0.25rem;
}

.br-big-num .br-big-num__caption {
  font-family: var(--br-mono);
  font-size: 0.65rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  opacity: 0.5;
  margin-bottom: 0.5rem;
}

.br-big-num .br-big-num__detail {
  font-family: var(--br-serif);
  font-size: 0.9rem;
  line-height: 1.7;
  color: var(--color-cream-300, #dbc9a0);
  margin: 0;
}

/* ── S07: PROOF ── */

.br-proof {
  background: var(--color-cream-100, #f5ecd9);
}

.br-proof :is(h2, p, blockquote, cite) { color: inherit; }

.br-proof h2 {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  text-transform: uppercase;
  color: var(--color-brown-900, #1a120b);
  margin-bottom: 0.5rem;
}

.br-proof .br-proof__score {
  font-family: var(--br-mono);
  font-size: 0.75rem;
  letter-spacing: 0.1em;
  color: var(--color-brown-400, #8a6d4f);
  margin-bottom: 3rem;
}

.br-proof .wp-block-columns {
  gap: 1.5rem;
}

.br-testimonial-raw {
  border-top: 2px solid var(--color-brown-900, #1a120b);
  padding-top: 1.25rem;
  margin-bottom: 0;
}

.br-testimonial-raw .wp-block-quote {
  border: none;
  padding: 0;
  margin: 0;
}

.br-testimonial-raw .wp-block-quote p {
  font-family: var(--br-serif);
  font-size: 0.92rem;
  line-height: 1.7;
  color: var(--color-brown-800, #2c1d10);
}

.br-testimonial-raw .wp-block-quote cite {
  display: block;
  margin-top: 1rem;
  font-family: var(--br-mono);
  font-size: 0.65rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-style: normal;
  color: var(--color-brown-400, #8a6d4f);
}

/* ── S08: NUMBERS — investment table ── */

.br-numbers {
  background: var(--color-cream-200, #ede2c8);
}

.br-numbers :is(h2, p, td) { color: inherit; }

.br-numbers h2 {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  text-transform: uppercase;
  color: var(--color-brown-900, #1a120b);
  margin-bottom: 0.5rem;
}

.br-numbers .br-numbers__lead {
  font-family: var(--br-serif);
  font-size: 1rem;
  color: var(--color-brown-600, #5a3d22);
  margin-bottom: 3rem;
  max-width: 55ch;
}

.wp-block-table.br-invest-grid {
  max-width: var(--wide-width, 1100px);
  margin-inline: auto;
}

.wp-block-table.br-invest-grid table {
  border: 2px solid var(--color-brown-900, #1a120b);
  border-collapse: collapse;
  width: 100%;
}

.wp-block-table.br-invest-grid td {
  padding: 1rem 1.5rem;
  border-bottom: 1px solid var(--border-color-light, #d6c7ae);
  vertical-align: middle;
}

.wp-block-table.br-invest-grid tr:last-child td {
  border-bottom: none;
}

.wp-block-table.br-invest-grid td:first-child {
  font-family: var(--br-mono);
  font-size: 0.65rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--color-brown-500, #735235);
  width: 50%;
  border-right: 1px solid var(--border-color-light, #d6c7ae);
}

.wp-block-table.br-invest-grid td:last-child {
  font-family: var(--br-serif-display);
  font-weight: 600;
  font-size: 1.1rem;
  color: var(--color-brown-900, #1a120b);
}

/* ── S09: HISTORY — timeline list ── */

.br-history {
  background: var(--color-cream-200, #ede2c8);
}

.br-history :is(h2, p, li) { color: inherit; }

.br-history h2 {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  text-transform: uppercase;
  color: var(--color-brown-900, #1a120b);
  margin-bottom: 3rem;
}

.br-timeline {
  list-style: none;
  padding-left: 0;
  max-width: var(--wide-width, 1100px);
  margin-inline: auto;
}

.br-timeline > li {
  display: grid;
  grid-template-columns: 6rem 1fr;
  gap: 1.5rem;
  padding: 1rem 0;
  border-bottom: 1px solid var(--border-color-light, #d6c7ae);
  align-items: baseline;
}

.br-timeline .br-year__date {
  font-family: var(--br-mono);
  font-size: 0.7rem;
  letter-spacing: 0.1em;
  color: var(--color-brown-400, #8a6d4f);
  white-space: nowrap;
  font-weight: 400;
}

.br-timeline .br-year__event {
  font-family: var(--br-serif);
  font-size: 0.92rem;
  line-height: 1.6;
  color: var(--color-brown-800, #2c1d10);
}

/* ── S10: TEAM ── */

.br-team {
  background: var(--color-brown-900, #1a120b);
  color: var(--color-cream-200, #ede2c8);
}

.br-team :is(h2, h3, p) { color: inherit; }

.br-team h2 {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  text-transform: uppercase;
  color: var(--color-cream-100, #f5ecd9);
  margin-bottom: 3rem;
}

.br-team .wp-block-columns {
  gap: 2rem;
}

.br-person {
  border-top: 1px solid hsla(0, 0%, 100%, 0.1);
  padding-top: 1.25rem;
  margin-bottom: 0;
}

.br-person h3 {
  font-family: var(--br-sans);
  font-weight: 700;
  font-size: 0.9rem;
  color: var(--color-cream-100, #f5ecd9);
  margin-bottom: 0.25rem;
}

.br-person .br-person__role {
  font-family: var(--br-mono);
  font-size: 0.6rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--decorative-gold, #c9a96a);
  margin-bottom: 0.75rem;
}

.br-person p:not(.br-person__role) {
  font-family: var(--br-serif);
  font-size: 0.85rem;
  line-height: 1.7;
  color: var(--color-cream-300, #dbc9a0);
}

/* ── S11: RISK ── */

.br-risk {
  background: var(--color-cream-100, #f5ecd9);
}

.br-risk :is(h2, h3, p) { color: inherit; }

.br-risk h2 {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  text-transform: uppercase;
  color: var(--color-brown-900, #1a120b);
  margin-bottom: 0.5rem;
}

.br-risk .br-risk__lead {
  font-family: var(--br-serif);
  font-size: 1rem;
  color: var(--color-brown-600, #5a3d22);
  margin-bottom: 2rem;
}

.br-risk .wp-block-columns {
  gap: 2rem;
}

.br-risk-item h3 {
  font-family: var(--br-mono);
  font-size: 0.65rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--color-brown-500, #735235);
  margin-bottom: 0.5rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid var(--border-color-light, #d6c7ae);
}

.br-risk-item p {
  font-family: var(--br-serif);
  font-size: 0.88rem;
  line-height: 1.7;
  color: var(--color-brown-700, #3d2a18);
}

/* ── S12: INVITE ── */

.br-invite {
  background: var(--color-cream-100, #f5ecd9);
  text-align: center;
}

.br-invite :is(h2, p, a) { color: inherit; }

.br-invite .br-invite__title {
  font-family: var(--br-serif-display);
  font-weight: 700;
  font-size: clamp(2rem, 5vw, 3.5rem);
  line-height: 1;
  text-transform: uppercase;
  color: var(--color-brown-900, #1a120b);
  margin: 0;
}

.br-invite .br-invite__title + .br-invite__title {
  margin-bottom: 2rem;
}

.br-invite .br-invite__body {
  font-family: var(--br-serif);
  font-size: clamp(1rem, 1.6vw, 1.1rem);
  line-height: 1.8;
  color: var(--color-brown-700, #3d2a18);
  max-width: 45ch;
  margin-inline: auto;
  margin-top: 2rem;
  margin-bottom: 3rem;
}

.br-invite .wp-block-buttons {
  margin-bottom: 2rem;
  justify-content: center;
}

.br-invite .wp-block-button__link {
  font-family: var(--br-mono);
  font-weight: 700;
  font-size: 0.75rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  padding: 1.2rem 3rem;
  transition: all 0.3s ease;
}

.br-invite .wp-block-button:first-child .wp-block-button__link {
  background: var(--color-brown-900, #1a120b);
  color: var(--color-cream-100, #f5ecd9);
  border: 2px solid var(--color-brown-900, #1a120b);
}

.br-invite .wp-block-button:first-child .wp-block-button__link:hover {
  background: transparent;
  color: var(--color-brown-900, #1a120b);
}

.br-invite .is-style-outline .wp-block-button__link {
  background: transparent;
  color: var(--color-brown-900, #1a120b);
  border: 2px solid var(--color-brown-900, #1a120b);
}

.br-invite .is-style-outline .wp-block-button__link:hover {
  background: var(--color-brown-900, #1a120b);
  color: var(--color-cream-100, #f5ecd9);
}

.br-invite .br-invite__sig {
  font-family: var(--br-mono);
  font-size: 0.7rem;
  letter-spacing: 0.1em;
  color: var(--color-brown-400, #8a6d4f);
}

.br-invite .br-invite__close {
  font-family: var(--br-italic);
  font-style: italic;
  font-size: clamp(1.1rem, 2vw, 1.4rem);
  color: var(--color-brown-500, #735235);
  margin-top: 3rem;
}

/* ── IMAGE BREAKS ── */

.br-image-break img {
  width: 100%;
  height: clamp(14rem, 35vw, 24rem);
  object-fit: cover;
  display: block;
}
