/* MosaicoTools — Editorial Quiet Brutalism */
:root {
  --mt-ink: #1A1A1A;
  --mt-paper: #F4EFE6;
  --mt-sunken: #EBE4D5;
  --mt-oxide: #C8512E;
  --mt-forest: #1F3B2D;
  --mt-warm: #8B7E6E;
  --mt-rule: 1px solid var(--mt-ink);
  --mt-rule-thick: 2.5px solid var(--mt-ink);
  --mt-ease: cubic-bezier(.2,.7,.2,1);
  --mt-dur: 240ms;
}
html { -webkit-text-size-adjust: 100%; text-rendering: geometricPrecision; scroll-behavior: smooth; }
body { background: var(--mt-paper); color: var(--mt-ink); font-feature-settings: "ss01","onum","liga","calt"; }
::selection { background: var(--mt-ink); color: var(--mt-paper); }
:focus-visible { outline: 2px solid var(--mt-oxide); outline-offset: 4px; }

/* Paper grain — sutil, only visible on solid surfaces */
body::before {
  content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 1;
  opacity: .035; mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.05  0 0 0 0 0.05  0 0 0 0 0.05  0 0 0 0.9 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
}

/* Mono utility — JetBrains, treated as small caps marginalia */
.mt-mono, .mt-mono * {
  font-family: var(--wp--preset--font-family--mono);
  font-size: .6875rem; line-height: 1.4; letter-spacing: .12em;
  text-transform: uppercase; font-weight: 400;
  color: var(--mt-warm);
}
.mt-mono a, .mt-link-mono a { color: var(--mt-ink); text-decoration: none; border-bottom: 1px solid currentColor; padding-bottom: 1px; }
.mt-mono a:hover, .mt-link-mono a:hover { color: var(--mt-oxide); }

/* Italic in headings = oxide accent */
h1 em, h2 em, h3 em { font-style: italic; color: var(--mt-oxide); font-weight: 500; }

/* Masthead — top of page like newspaper plate */
.mt-masthead { padding-top: 1.25rem; padding-bottom: 1.5rem; position: relative; z-index: 10; }
.mt-masthead__rule { padding-bottom: 1rem; border-bottom: var(--mt-rule); margin-bottom: 1.25rem; align-items: baseline; }
.mt-masthead__rule .mt-mono { margin: 0; }
.mt-masthead__brand { align-items: flex-end; }
.mt-wordmark a {
  font-family: var(--wp--preset--font-family--serif);
  font-size: clamp(1.5rem, 2.5vw, 2.125rem); font-weight: 600;
  line-height: .9; letter-spacing: -.035em;
  color: var(--mt-ink) !important; text-decoration: none !important;
  font-variation-settings: "opsz" 96;
}
.mt-wordmark a:hover { color: var(--mt-oxide) !important; }

/* Nav — quiet uppercase mono */
.mt-nav .wp-block-navigation-item__content {
  font-family: var(--wp--preset--font-family--mono);
  font-size: .6875rem; letter-spacing: .14em; text-transform: uppercase;
  color: var(--mt-ink); padding: .25rem 0; border-bottom: 1px solid transparent;
  transition: border-color var(--mt-dur) var(--mt-ease), color var(--mt-dur) var(--mt-ease);
}
.mt-nav .wp-block-navigation-item__content:hover {
  border-bottom-color: var(--mt-ink);
  color: var(--mt-ink);
}
.mt-nav.wp-block-navigation { gap: 1.5rem !important; }

/* Cover (hero) — magazine front page */
.mt-cover { padding-top: clamp(2rem, 6vw, 4.5rem); padding-bottom: clamp(3rem, 8vw, 6rem); position: relative; }
.mt-cover__rule {
  padding-bottom: .75rem; border-bottom: var(--mt-rule);
  margin-bottom: clamp(2.5rem, 6vw, 4.5rem); align-items: baseline;
}
.mt-cover__rule .mt-mono { margin: 0; }
.mt-cover__headline {
  font-family: var(--wp--preset--font-family--serif) !important;
  font-size: clamp(3rem, 11vw, 9.5rem) !important;
  font-weight: 600 !important;
  line-height: .92 !important;
  letter-spacing: -.045em !important;
  font-variation-settings: "opsz" 144;
  margin: 0 0 clamp(2rem, 4vw, 3rem) !important;
  text-wrap: balance;
}

.mt-cover__deck { display: grid; grid-template-columns: 1fr 2fr; gap: clamp(1.5rem, 4vw, 3.5rem); margin-bottom: clamp(2.5rem, 5vw, 4rem); padding-top: 1.25rem; border-top: var(--mt-rule); }
.mt-cover__byline { margin: 0 !important; max-width: 18ch; }
.mt-cover__standfirst {
  margin: 0;
  font-family: var(--wp--preset--font-family--serif);
  font-size: clamp(1.0625rem, 1.4vw, 1.25rem);
  line-height: 1.55; letter-spacing: -.005em;
  font-variation-settings: "opsz" 18;
  max-width: 56ch;
}
@media (max-width: 720px) {
  .mt-cover__deck { grid-template-columns: 1fr; }
  .mt-cover__byline { max-width: none; }
}

/* Cover entries — two square CTAs side by side */
.mt-cover__entries { display: grid !important; grid-template-columns: 1fr 1fr; gap: 0 !important; border-top: var(--mt-rule); }
.mt-entry {
  display: grid; grid-template-columns: auto 1fr auto; align-items: end; gap: 1rem 1.5rem;
  padding: 1.75rem 1.25rem; text-decoration: none !important; color: var(--mt-ink) !important;
  border-bottom: var(--mt-rule); border-right: var(--mt-rule);
  transition: background var(--mt-dur) var(--mt-ease), color var(--mt-dur) var(--mt-ease);
}
.mt-entry:last-child { border-right: 0; }
.mt-entry:hover { background: var(--mt-ink); color: var(--mt-paper) !important; }
.mt-entry:hover .mt-entry__num, .mt-entry:hover .mt-entry__arrow { color: var(--mt-paper); }

.mt-entry__num {
  font-family: var(--wp--preset--font-family--serif);
  font-size: clamp(2.5rem, 5vw, 4rem); font-weight: 500; line-height: .85;
  letter-spacing: -.02em; color: var(--mt-oxide); font-style: italic;
  font-variation-settings: "opsz" 96;
}
.mt-entry__label { font-family: var(--wp--preset--font-family--serif); font-size: 1.125rem; line-height: 1.3; font-weight: 400; color: inherit; }
.mt-entry__label strong { font-weight: 600; letter-spacing: -.01em; display: block; font-size: 1.375rem; font-variation-settings: "opsz" 32; }

.mt-entry__arrow {
  font-family: var(--wp--preset--font-family--serif);
  font-size: 2rem; line-height: 1;
  transition: transform var(--mt-dur) var(--mt-ease);
}
.mt-entry:hover .mt-entry__arrow { transform: translateX(.4rem); }
@media (max-width: 720px) {
  .mt-cover__entries { grid-template-columns: 1fr; }
  .mt-entry { border-right: 0; }
}

/* Editorial Standards (dark band) */
.mt-standards { padding: clamp(3rem, 6vw, 5rem) 0; }
.mt-standards__kicker { color: var(--mt-paper) !important; opacity: .55; margin: 0 0 2rem !important; padding-bottom: 1rem; border-bottom: 1px solid rgba(244,239,230,.2); }
.mt-standards__kicker, .mt-standards__kicker * { color: var(--mt-paper) !important; }
.mt-standards__list { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem 2rem; margin: 0; }
.mt-stat { display: grid; grid-template-rows: auto auto 1fr; gap: .5rem; padding-top: .25rem; border-top: 1px solid rgba(244,239,230,.18); }
.mt-stat dt.mt-mono { color: rgba(244,239,230,.5) !important; margin: 0; }

.mt-stat__value {
  font-family: var(--wp--preset--font-family--serif);
  font-size: clamp(3rem, 6vw, 4.75rem); font-weight: 500; line-height: .85;
  letter-spacing: -.04em; color: var(--mt-paper); margin: .25rem 0 .5rem;
  font-variation-settings: "opsz" 144;
}
.mt-stat__plus { color: var(--mt-oxide); font-style: italic; font-weight: 500; }
.mt-stat__label { font-family: var(--wp--preset--font-family--serif); font-size: .9375rem; line-height: 1.4; color: rgba(244,239,230,.78); margin: 0; max-width: 22ch; }
@media (max-width: 880px) { .mt-standards__list { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .mt-standards__list { grid-template-columns: 1fr; } }

/* Departments — two square rooms with hover invert */
.mt-departments { padding: clamp(3rem, 6vw, 5rem) 0; }
.mt-departments__head { padding-bottom: 1rem; border-bottom: var(--mt-rule); margin-bottom: 2.5rem; align-items: baseline; }
.mt-departments__head .mt-mono { margin: 0; }
.mt-departments__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0; border-top: var(--mt-rule); border-left: var(--mt-rule); border-right: var(--mt-rule); border-bottom: var(--mt-rule); }
.mt-dept {
  display: grid; gap: 1.25rem; align-content: start;
  padding: clamp(2rem, 4vw, 3.5rem); text-decoration: none !important; color: var(--mt-ink) !important;
  background: var(--mt-paper); transition: background var(--mt-dur) var(--mt-ease), color var(--mt-dur) var(--mt-ease);
  border-right: var(--mt-rule); position: relative;
}
.mt-dept:last-child { border-right: 0; }

.mt-dept:hover { background: var(--mt-forest); color: var(--mt-paper) !important; }
.mt-dept--alt:hover { background: var(--mt-oxide); }
.mt-dept__roman {
  font-family: var(--wp--preset--font-family--serif);
  font-size: clamp(3rem, 6vw, 5rem); font-weight: 500; line-height: .85; letter-spacing: -.04em;
  color: var(--mt-oxide); font-style: italic; font-variation-settings: "opsz" 144;
  margin: 0; transition: color var(--mt-dur) var(--mt-ease);
}
.mt-dept:hover .mt-dept__roman, .mt-dept:hover .mt-dept__cta { color: var(--mt-paper) !important; }
.mt-dept--alt:hover .mt-dept__roman { color: rgba(244,239,230,.85) !important; }
.mt-dept__title {
  font-family: var(--wp--preset--font-family--serif);
  font-size: clamp(1.75rem, 3vw, 2.5rem); font-weight: 600; line-height: 1; letter-spacing: -.025em;
  margin: 0; font-variation-settings: "opsz" 72;
}

.mt-dept__lede { font-family: var(--wp--preset--font-family--serif); font-size: 1.0625rem; line-height: 1.5; margin: 0; max-width: 32ch; color: inherit; opacity: .85; }
.mt-dept__cta { font-family: var(--wp--preset--font-family--mono); font-size: .6875rem; letter-spacing: .14em; text-transform: uppercase; margin-top: 1rem; color: var(--mt-ink); border-bottom: 1px solid currentColor; padding-bottom: 2px; align-self: start; }
@media (max-width: 720px) {
  .mt-departments__grid { grid-template-columns: 1fr; }
  .mt-dept { border-right: 0; border-bottom: var(--mt-rule); }
  .mt-dept:last-child { border-bottom: 0; }
}

/* Field notes — magazine-style row list */
.mt-fieldnotes { padding: clamp(3rem, 6vw, 5rem) 0; }
.mt-fieldnotes__head { padding-bottom: 1rem; border-bottom: var(--mt-rule); margin-bottom: 2rem; align-items: baseline; }
.mt-fieldnotes__head .mt-mono { margin: 0; }
.mt-fieldnotes__title {
  font-family: var(--wp--preset--font-family--serif) !important;
  font-size: clamp(1.75rem, 3.5vw, 2.75rem) !important; font-weight: 500 !important;
  letter-spacing: -.03em !important; line-height: 1 !important; margin: 0 0 2.5rem !important;
  font-variation-settings: "opsz" 96;
  max-width: 28ch;
}
.mt-entries .wp-block-post-template { list-style: none; padding: 0; margin: 0; border-top: var(--mt-rule); }

.mt-entry-row {
  display: grid !important;
  grid-template-columns: 7rem 1fr 5rem;
  gap: 1.5rem 2rem; align-items: baseline;
  padding: 1.5rem 0; border-bottom: var(--mt-rule);
  transition: background var(--mt-dur) var(--mt-ease), padding var(--mt-dur) var(--mt-ease);
}
.mt-entry-row:hover { background: rgba(26,26,26,.04); padding-left: 1rem; padding-right: 1rem; }
.mt-entry-row__cat a { color: var(--mt-oxide) !important; font-family: var(--wp--preset--font-family--mono); font-size: .6875rem; letter-spacing: .14em; text-transform: uppercase; text-decoration: none; }
.mt-entry-row__cat .wp-block-post-terms__separator { display: none; }

.mt-entry-row__title { margin: 0 !important; }
.mt-entry-row__title a {
  font-family: var(--wp--preset--font-family--serif); font-weight: 500;
  font-size: clamp(1.25rem, 2vw, 1.625rem); line-height: 1.15; letter-spacing: -.02em;
  color: var(--mt-ink) !important; text-decoration: none !important;
  font-variation-settings: "opsz" 36;
  background-image: linear-gradient(var(--mt-oxide), var(--mt-oxide));
  background-repeat: no-repeat; background-size: 0% 1px; background-position: 0 100%;
  transition: background-size var(--mt-dur) var(--mt-ease), color var(--mt-dur) var(--mt-ease);
}
.mt-entry-row:hover .mt-entry-row__title a { background-size: 100% 1px; color: var(--mt-oxide) !important; }

.mt-entry-row__excerpt { font-size: .9375rem !important; line-height: 1.55 !important; color: var(--mt-warm) !important; margin: .375rem 0 0 !important; max-width: 60ch; }
.mt-entry-row__date { color: var(--mt-warm) !important; margin: 0 !important; text-align: right; font-family: var(--wp--preset--font-family--mono); font-size: .6875rem; letter-spacing: .12em; text-transform: uppercase; }
.mt-noresults { padding: 2rem 0; margin: 0; color: var(--mt-warm); font-family: var(--wp--preset--font-family--serif); font-size: 1.125rem; line-height: 1.55; }
.mt-noresults .mt-mono { display: block; margin-bottom: .5rem; color: var(--mt-oxide); }
@media (max-width: 720px) {
  .mt-entry-row { grid-template-columns: 1fr; gap: .5rem !important; }
  .mt-entry-row__date { text-align: left; }
}

/* Dispatch (lead magnet) — sidenote + form */
.mt-dispatch { padding: clamp(3rem, 7vw, 6rem) 0; border-top: var(--mt-rule); border-bottom: var(--mt-rule); }
.mt-dispatch__inner { display: grid; grid-template-columns: 14rem 1fr; gap: clamp(1.5rem, 4vw, 4rem); align-items: start; }
.mt-dispatch__sidenote {
  font-family: var(--wp--preset--font-family--mono); font-size: .6875rem; line-height: 1.7; letter-spacing: .12em;
  text-transform: uppercase; color: var(--mt-warm); padding-top: .25rem; border-top: var(--mt-rule-thick); border-top-color: var(--mt-oxide);
  margin: 0;
}

.mt-dispatch__title {
  font-family: var(--wp--preset--font-family--serif);
  font-size: clamp(2rem, 4.5vw, 3.5rem); font-weight: 500; line-height: 1; letter-spacing: -.035em;
  margin: 0 0 1.25rem; text-wrap: balance;
  font-variation-settings: "opsz" 96;
}
.mt-dispatch__lede { font-family: var(--wp--preset--font-family--serif); font-size: 1.0625rem; line-height: 1.55; color: var(--mt-warm); margin: 0 0 2rem; max-width: 50ch; }

.mt-dispatch__form { max-width: 38rem; }
.mt-dispatch__label { display: block; margin: 0 0 .5rem; color: var(--mt-warm); font-family: var(--wp--preset--font-family--mono); font-size: .6875rem; letter-spacing: .14em; text-transform: uppercase; }
.mt-dispatch__field { display: grid; grid-template-columns: 1fr auto; align-items: stretch; border-bottom: var(--mt-rule-thick); }
.mt-dispatch__input {
  border: 0; outline: 0; background: transparent; padding: .85rem 0;
  font-family: var(--wp--preset--font-family--serif); font-size: 1.25rem; color: var(--mt-ink);
}
.mt-dispatch__input::placeholder { color: var(--mt-warm); font-style: italic; }

.mt-dispatch__submit {
  display: inline-flex; align-items: center; gap: .75rem;
  background: transparent; border: 0; padding: .85rem 0 .85rem 1.25rem; cursor: pointer;
  font-family: var(--wp--preset--font-family--mono); font-size: .75rem; letter-spacing: .14em;
  color: var(--mt-ink); transition: color var(--mt-dur) var(--mt-ease);
}
.mt-dispatch__submit:hover { color: var(--mt-oxide); }
.mt-dispatch__arrow {
  font-family: var(--wp--preset--font-family--serif); font-size: 1.5rem;
  transition: transform var(--mt-dur) var(--mt-ease);
}
.mt-dispatch__submit:hover .mt-dispatch__arrow { transform: translateX(.4rem); }
.mt-dispatch__hint { margin-top: 1rem; color: var(--mt-warm); font-size: .6875rem; letter-spacing: .12em; }
.mt-dispatch__hint a { color: var(--mt-ink); }
@media (max-width: 720px) { .mt-dispatch__inner { grid-template-columns: 1fr; } }

/* Colophon (footer) — dark, set-in-type credit */
.mt-colophon { padding: clamp(3rem, 6vw, 5rem) 0; position: relative; }
.mt-colophon .mt-mono { color: rgba(244,239,230,.55) !important; }
.mt-colophon__kicker { margin: 0 0 1.5rem !important; padding-bottom: 1rem; border-bottom: 1px solid rgba(244,239,230,.18); }
.mt-colophon__statement {
  font-family: var(--wp--preset--font-family--serif) !important;
  font-size: clamp(2rem, 5vw, 3.5rem) !important; font-weight: 500 !important;
  line-height: 1 !important; letter-spacing: -.035em !important;
  margin: 0 0 3rem !important; max-width: 22ch; color: var(--mt-paper);
  font-variation-settings: "opsz" 96;
}
.mt-colophon__grid { gap: 3rem !important; padding-top: 2rem; border-top: 1px solid rgba(244,239,230,.18); margin-bottom: 2.5rem; }

.mt-colophon .mt-nav .wp-block-navigation-item__content {
  color: rgba(244,239,230,.78); font-family: var(--wp--preset--font-family--serif);
  font-size: 1rem; letter-spacing: -.005em; text-transform: none; border-bottom-color: transparent;
}
.mt-colophon .mt-nav .wp-block-navigation-item__content:hover {
  color: var(--mt-oxide); border-bottom-color: var(--mt-oxide);
}
.mt-colophon__bottom { padding-top: 1.5rem; border-top: 1px solid rgba(244,239,230,.18); gap: 1rem; }

/* Legal pages — generous reading, drop cap */
.mt-legal { padding-top: clamp(3rem, 6vw, 5rem) !important; padding-bottom: clamp(3rem, 6vw, 5rem) !important; }
.mt-legal .mt-eyebrow { padding-bottom: 1rem; border-bottom: var(--mt-rule); margin: 0 0 1rem; }
.mt-legal .wp-block-post-title {
  font-family: var(--wp--preset--font-family--serif) !important;
  font-size: clamp(2.25rem, 5vw, 4rem) !important; font-weight: 500 !important;
  line-height: 1 !important; letter-spacing: -.04em !important;
  font-variation-settings: "opsz" 144; margin: .5rem 0 2.5rem !important;
}
.mt-legal .wp-block-post-content { font-family: var(--wp--preset--font-family--serif); font-size: 1.0625rem; line-height: 1.7; color: var(--mt-ink); }
.mt-legal .wp-block-post-content h2 { font-size: 1.5rem !important; font-weight: 600; margin: 2.5rem 0 .75rem !important; letter-spacing: -.015em; }

/* Single post prose — magazine first paragraph drop cap */
.wp-block-post-content { font-family: var(--wp--preset--font-family--serif); font-size: 1.0625rem; line-height: 1.75; }
.wp-block-post-content > p:first-of-type::first-letter {
  font-family: var(--wp--preset--font-family--serif);
  font-size: 4.5rem; font-weight: 600; line-height: 0.85;
  float: left; margin: .15em .25em 0 -.05em; color: var(--mt-oxide);
  font-variation-settings: "opsz" 144;
}
.wp-block-post-content blockquote {
  border-left: 2px solid var(--mt-oxide); padding: 0 0 0 1.25rem; margin: 2rem 0;
  font-style: italic; font-size: 1.25rem; line-height: 1.5; color: var(--mt-ink);
}
.wp-block-post-content code { background: var(--mt-sunken); padding: .15em .4em; font-family: var(--wp--preset--font-family--mono); font-size: .9em; }

/* Entrance choreography — staggered reveal on load */
@keyframes mt-rise { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
.mt-cover__rule, .mt-cover__headline, .mt-cover__deck, .mt-cover__entries { animation: mt-rise .8s var(--mt-ease) both; }
.mt-cover__headline { animation-delay: .08s; }
.mt-cover__deck { animation-delay: .18s; }
.mt-cover__entries { animation-delay: .28s; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

/* WP block alignments + spacing baseline */
.alignfull { margin-inline: calc(-1 * var(--wp--style--root--padding-right)) calc(-1 * var(--wp--style--root--padding-left)) !important; }
.wp-block-button { margin: 0; }
button { font: inherit; cursor: pointer; }

/* Optical sizing — keep everything sharp */
h1, h2, h3, h4 { text-wrap: balance; }
p { text-wrap: pretty; }

/* HTML nav (direct, not wp:navigation block) */
.mt-masthead__brand { display: flex; justify-content: space-between; align-items: flex-end; gap: 2rem; flex-wrap: wrap; }
.mt-masthead .mt-nav { display: flex; gap: 1.75rem; flex-wrap: wrap; align-items: baseline; }
.mt-masthead .mt-nav a {
  font-family: var(--wp--preset--font-family--mono);
  font-size: .6875rem; letter-spacing: .14em; text-transform: uppercase;
  color: var(--mt-ink); text-decoration: none; border-bottom: 1px solid transparent;
  padding-bottom: 2px; transition: border-color var(--mt-dur) var(--mt-ease), color var(--mt-dur) var(--mt-ease);
}
.mt-masthead .mt-nav a:hover { border-bottom-color: var(--mt-ink); color: var(--mt-ink); }

/* Colophon grid (footer) */
.mt-colophon__grid { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 3rem !important; padding-top: 2rem; border-top: 1px solid rgba(244,239,230,.18); margin-bottom: 2.5rem; }
.mt-colophon__head { display: block; margin-bottom: .85rem; color: rgba(244,239,230,.4) !important; font-family: var(--wp--preset--font-family--mono); font-size: .6875rem; letter-spacing: .14em; text-transform: uppercase; }
.mt-colophon .mt-nav--footer, .mt-colophon .mt-nav--legal { display: flex; flex-direction: column; align-items: flex-start; gap: .65rem; }

.mt-colophon__grid nav a {
  font-family: var(--wp--preset--font-family--serif); font-size: 1rem; line-height: 1.3;
  color: rgba(244,239,230,.78); text-decoration: none; border-bottom: 1px solid transparent;
  padding-bottom: 1px; transition: color var(--mt-dur) var(--mt-ease), border-color var(--mt-dur) var(--mt-ease);
}
.mt-colophon__grid nav a:hover { color: var(--mt-oxide); border-bottom-color: var(--mt-oxide); }
.mt-colophon__bottom { display: flex !important; justify-content: space-between; flex-wrap: wrap; gap: 1rem; padding-top: 1.5rem; border-top: 1px solid rgba(244,239,230,.18); }
.mt-colophon__bottom p { margin: 0; }
@media (max-width: 720px) { .mt-colophon__grid { grid-template-columns: 1fr; gap: 2rem !important; } }

/* ====== ALIGNMENT FIXES — orphan headings/paragraphs in alignfull groups ====== */
.mt-cover > .mt-cover__headline,
.mt-fieldnotes > .mt-fieldnotes__title,
.mt-colophon > .mt-colophon__kicker,
.mt-colophon > .mt-colophon__statement {
  max-width: 1120px;
  margin-inline: auto;
  padding-inline: var(--wp--style--root--padding-left, clamp(1.5rem, 5vw, 3rem));
  width: 100%;
  box-sizing: border-box;
}

/* ====== PREMIUM POLISH — restraint over scale ====== */
/* Tame the colossal — 9.5rem reads as shouting; 7rem reads as confident. */
.mt-cover__headline { font-size: clamp(2.75rem, 8.5vw, 7.5rem) !important; line-height: 0.95 !important; letter-spacing: -.04em !important; margin-bottom: clamp(2.5rem, 5vw, 4rem) !important; }
.mt-cover { padding-top: clamp(1.75rem, 4vw, 3rem); padding-bottom: clamp(4rem, 8vw, 7rem); }
.mt-cover__rule { margin-bottom: clamp(2rem, 4vw, 3rem); }

/* Deck — give marginalia room, lift standfirst, premium proportions */
.mt-cover__deck { padding-top: 1.5rem; gap: clamp(2rem, 6vw, 5rem); grid-template-columns: 14rem 1fr; align-items: start; }
.mt-cover__byline { padding-top: .2rem; max-width: 14rem; line-height: 1.65 !important; }
.mt-cover__standfirst { max-width: 52ch; }

/* Entries — refine the magazine menu feel */
.mt-cover__entries { margin-top: clamp(1.5rem, 4vw, 3rem); }
.mt-entry { padding: 2rem 1.5rem 1.75rem; grid-template-columns: auto 1fr auto; gap: 1rem 2rem; }
.mt-entry__num { font-size: clamp(2.75rem, 5vw, 3.75rem); }
.mt-entry__label { font-size: 1rem; }
.mt-entry__label strong { font-size: 1.25rem; line-height: 1.1; margin-top: .2rem; }
.mt-entry__arrow { font-size: 1.625rem; align-self: end; padding-bottom: .15rem; }

/* Standards — give numbers room to breathe and align cleanly to baseline */
.mt-standards { padding-block: clamp(4rem, 7vw, 6rem); }
.mt-standards__kicker { margin-bottom: 2.5rem !important; }
.mt-standards__list { gap: 2rem; }
.mt-stat { padding-top: 1rem; }
.mt-stat__value { font-size: clamp(2.75rem, 5vw, 4rem); line-height: 0.9; margin: .35rem 0 .75rem; }
.mt-stat__plus { font-size: .8em; vertical-align: 0; margin-left: .05em; }
.mt-stat__label { font-size: .9375rem; max-width: 24ch; line-height: 1.45; }

/* Departments — bigger gesture, more breathe */
.mt-departments { padding-block: clamp(4rem, 7vw, 6.5rem); }
.mt-departments__head { margin-bottom: 3rem; }
.mt-dept { padding: clamp(2.25rem, 4vw, 3.5rem); gap: 1.5rem; }
.mt-dept__roman { font-size: clamp(2.75rem, 5vw, 4.25rem) !important; line-height: 0.85; }
.mt-dept__title { font-size: clamp(1.625rem, 2.8vw, 2.125rem) !important; }
.mt-dept__lede { font-size: 1rem; line-height: 1.55; max-width: 36ch; }
.mt-dept__cta { margin-top: 1.25rem; }

/* Fieldnotes + Dispatch + Colophon — premium spacing pass */
.mt-fieldnotes { padding-block: clamp(4rem, 7vw, 6rem); }
.mt-fieldnotes__head { margin-bottom: 2.5rem; }
.mt-fieldnotes__title { font-size: clamp(1.625rem, 3vw, 2.5rem) !important; margin-bottom: 3rem !important; }
.mt-entry-row { padding: 1.75rem 0; grid-template-columns: 6.5rem 1fr 4.5rem; gap: 1.5rem 2.5rem; }
.mt-entry-row__title a { font-size: clamp(1.125rem, 1.8vw, 1.5rem); }

.mt-dispatch { padding-block: clamp(4rem, 8vw, 6.5rem); }
.mt-dispatch__inner { grid-template-columns: 12rem 1fr; gap: clamp(2rem, 5vw, 5rem); }
.mt-dispatch__title { font-size: clamp(1.75rem, 4vw, 3rem) !important; margin-bottom: 1.5rem !important; }
.mt-dispatch__lede { font-size: 1.0625rem; margin-bottom: 2.5rem !important; }

.mt-colophon { padding-block: clamp(4rem, 7vw, 6rem); }
.mt-colophon__statement { font-size: clamp(1.625rem, 3.5vw, 2.75rem) !important; max-width: 24ch; margin-bottom: 3.5rem !important; line-height: 1.05 !important; }
.mt-colophon__grid { gap: clamp(2rem, 5vw, 4rem) !important; padding-top: 2.5rem; margin-bottom: 3rem; }

/* Masthead — tighter spacing */
.mt-masthead { padding-top: 1.5rem; padding-bottom: 1.75rem; }
.mt-masthead__rule { padding-bottom: 1rem; margin-bottom: 1.5rem; }
.mt-wordmark a { font-size: clamp(1.375rem, 2vw, 1.75rem); }

/* Stronger override for orphan blocks — WP layout flow overrides margin */
.mt-cover .mt-cover__headline,
.mt-fieldnotes .mt-fieldnotes__title,
.mt-colophon .mt-colophon__kicker,
.mt-colophon .mt-colophon__statement {
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-inline: var(--wp--style--root--padding-left, clamp(1.5rem, 5vw, 3rem)) !important;
  box-sizing: border-box !important;
}

/* Generic orphan-block fix: any direct child paragraph/heading in any .mt-* section */
.mt-cover > p, .mt-cover > h1, .mt-cover > h2, .mt-cover > h3,
.mt-standards > p, .mt-standards > h1, .mt-standards > h2,
.mt-departments > p, .mt-departments > h1, .mt-departments > h2,
.mt-fieldnotes > p, .mt-fieldnotes > h1, .mt-fieldnotes > h2,
.mt-dispatch > p, .mt-dispatch > h1, .mt-dispatch > h2,
.mt-colophon > p, .mt-colophon > h1, .mt-colophon > h2,
.mt-masthead > p, .mt-masthead > h1, .mt-masthead > h2 {
  max-width: 1120px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-inline: var(--wp--style--root--padding-left, clamp(1.5rem, 5vw, 3rem)) !important;
  box-sizing: border-box !important;
  width: 100%;
}

/* Legal pages — post-title is a top-level block, fix its alignment too */
.mt-legal .wp-block-post-title,
.mt-legal > p, .mt-legal > h1, .mt-legal > h2, .mt-legal > h3 {
  max-width: 680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-inline: var(--wp--style--root--padding-left, clamp(1.5rem, 5vw, 3rem)) !important;
  box-sizing: border-box !important;
  width: 100%;
}

/* ====== REVIEW (LP) — section, hero, disclosure ====== */
.mt-review { padding-block: clamp(2.5rem, 5vw, 4rem); }
.mt-review__rule { padding-bottom: .75rem; border-bottom: var(--mt-rule); margin-bottom: 2.5rem; align-items: baseline; }
.mt-review__rule .mt-mono { margin: 0; }
.mt-review__title { font-family: var(--wp--preset--font-family--serif) !important; font-size: clamp(2.5rem, 6vw, 4.5rem) !important; font-weight: 600 !important; line-height: .98 !important; letter-spacing: -.04em !important; font-variation-settings: "opsz" 144; margin: 0 0 1.5rem !important; text-wrap: balance; }
.mt-review__title em { color: var(--mt-oxide); font-style: italic; font-weight: 500; }

.mt-review__byline { margin: 0 0 2rem !important; padding-bottom: 1.5rem; border-bottom: 1px solid var(--mt-warm); }
.mt-review__disclosure { font-size: .875rem; color: var(--mt-warm); padding: .85rem 1rem; background: var(--mt-sunken); border-left: 3px solid var(--mt-oxide); margin: 0 0 2.5rem; line-height: 1.5; }
.mt-review__disclosure a { color: var(--mt-ink); text-decoration: underline; text-underline-offset: 2px; }

/* Review body — prose tuning */
.mt-review p { font-size: 1.0625rem; line-height: 1.7; max-width: 65ch; }
.mt-review h2 { margin: 2.75rem 0 1rem !important; font-size: 1.5rem !important; font-weight: 600 !important; letter-spacing: -.02em; font-variation-settings: "opsz" 36; }
.mt-review ul { padding-left: 1.25rem; margin: 1rem 0 1.5rem; max-width: 65ch; }
.mt-review li { margin-bottom: .65rem; line-height: 1.55; font-size: 1.0625rem; }

/* Verdict boxes — early + final */
.mt-verdict { background: var(--mt-ink); color: var(--mt-paper); padding: 2rem 2rem 1.75rem; border-radius: 0; margin: 2rem 0 2.5rem; max-width: none; }
.mt-verdict__kicker { font-family: var(--wp--preset--font-family--mono); font-size: .6875rem; letter-spacing: .14em; text-transform: uppercase; color: var(--mt-oxide) !important; margin: 0 0 .75rem; }
.mt-verdict__body { font-family: var(--wp--preset--font-family--serif); font-size: 1.125rem; line-height: 1.5; margin: 0 0 1.5rem; color: var(--mt-paper); max-width: none; }
.mt-verdict--final { background: var(--mt-oxide); }
.mt-verdict--final .mt-verdict__kicker { color: var(--mt-paper) !important; opacity: .9; }

.mt-verdict__cta {
  display: inline-flex; align-items: center; gap: .75rem;
  background: var(--mt-paper); color: var(--mt-ink) !important; text-decoration: none !important;
  padding: 1rem 1.75rem; font-family: var(--wp--preset--font-family--serif); font-size: 1.0625rem; font-weight: 600;
  letter-spacing: -.005em; transition: transform var(--mt-dur) var(--mt-ease), background var(--mt-dur) var(--mt-ease);
}
.mt-verdict__cta:hover { transform: translateY(-2px); background: #fff; }
.mt-verdict__cta span { font-size: 1.25rem; transition: transform var(--mt-dur) var(--mt-ease); }
.mt-verdict__cta:hover span { transform: translateX(.35rem); }
.mt-verdict__hint { margin: 1.25rem 0 0 !important; color: rgba(244,239,230,.55) !important; }

/* Inline CTA — softer, lives mid-flow */
.mt-cta { background: var(--mt-sunken); padding: 1.75rem 1.75rem 1.5rem; margin: 2rem 0; border-left: 3px solid var(--mt-oxide); }
.mt-cta__kicker { font-family: var(--wp--preset--font-family--mono); font-size: .6875rem; letter-spacing: .14em; text-transform: uppercase; color: var(--mt-oxide); margin: 0 0 .5rem; }
.mt-cta__body { font-family: var(--wp--preset--font-family--serif); font-size: 1rem; line-height: 1.5; margin: 0 0 1.25rem; color: var(--mt-ink); }

.mt-cta__link { display: inline-flex; align-items: center; gap: .65rem; color: var(--mt-ink) !important; text-decoration: none !important; font-weight: 600; border-bottom: 2px solid var(--mt-ink); padding-bottom: 2px; font-family: var(--wp--preset--font-family--serif); transition: color var(--mt-dur) var(--mt-ease), border-color var(--mt-dur) var(--mt-ease); }
.mt-cta__link:hover { color: var(--mt-oxide) !important; border-bottom-color: var(--mt-oxide); }
.mt-cta__link span { transition: transform var(--mt-dur) var(--mt-ease); font-size: 1.125rem; }
.mt-cta__link:hover span { transform: translateX(.3rem); }

/* Comparison table — editorial, no skeuomorphism */
.mt-compare { margin: 1.5rem 0 2rem; overflow-x: auto; }
.mt-compare__table { width: 100%; border-collapse: collapse; font-family: var(--wp--preset--font-family--serif); font-size: .9375rem; }
.mt-compare__table thead th { padding: .85rem .75rem; border-bottom: var(--mt-rule-thick); text-align: left; font-weight: 600; font-size: .8125rem; }
.mt-compare__table thead th:first-child { color: var(--mt-warm); font-weight: 400; }
.mt-compare__table thead th:nth-child(2) { color: var(--mt-oxide); }
.mt-compare__table tbody td { padding: .75rem .75rem; border-bottom: 1px solid var(--mt-warm); line-height: 1.4; }
.mt-compare__table tbody td:first-child { color: var(--mt-warm); font-size: .875rem; }
.mt-compare__note { margin: .75rem 0 0 !important; color: var(--mt-warm) !important; font-size: .625rem !important; }

/* Page-no-title template: tame the wrap on review pages */
body.page-template-page-no-title .mt-review { max-width: none; }
body.page-template-page-no-title main { padding: 0; }

/* Review orphan alignment fix (top-level p/h2 inside .mt-review) */
.mt-review > p, .mt-review > h2, .mt-review > h3, .mt-review > ul, .mt-review > aside, .mt-review > div {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  padding-inline: var(--wp--style--root--padding-left, clamp(1.5rem, 5vw, 3rem));
  box-sizing: border-box;
}

/* Review orphan fix — include h1 + force margin-auto */
.mt-review > h1, .mt-review > p, .mt-review > h2, .mt-review > h3, .mt-review > ul, .mt-review > aside, .mt-review > div {
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-inline: var(--wp--style--root--padding-left, clamp(1.5rem, 5vw, 3rem)) !important;
  box-sizing: border-box !important;
  width: 100%;
}

/* Review figures — editorial, full-bleed feel inside narrow column */
.mt-figure { margin: 2.25rem auto !important; }
.mt-figure img { width: 100%; height: auto; display: block; border-radius: 0; }
.mt-figure figcaption { margin-top: .75rem; color: var(--mt-warm) !important; font-family: var(--wp--preset--font-family--mono); font-size: .6875rem; letter-spacing: .12em; text-transform: uppercase; line-height: 1.5; text-align: left; }
.mt-figure--hero { margin: 1.5rem auto 2.75rem !important; }
.mt-figure--hero img { aspect-ratio: 16/9; object-fit: cover; }

/* Include figure in orphan-fix for review */
.mt-review > figure {
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-inline: var(--wp--style--root--padding-left, clamp(1.5rem, 5vw, 3rem)) !important;
  box-sizing: border-box !important;
  width: 100%;
}

/* Inline product shot (smaller, centered, breathable) */
.mt-figure--inline { max-width: 420px !important; margin: 1.75rem auto !important; padding-inline: 0 !important; }
.mt-figure--inline img { background: var(--mt-sunken); padding: 1.5rem; }

/* Hero image style — give PNG product some background for context */
.mt-figure--hero img { background: var(--mt-sunken); padding: 2rem; aspect-ratio: auto; object-fit: contain; max-height: 480px; }

/* Hero — wide product banner needs less inner padding, more presence */
.mt-figure--hero img { max-height: 540px; padding: 1rem 1.5rem; background: var(--mt-sunken); }
