:root {
  color-scheme: light;
  --bg: #ffffff;
  --bg-soft: #f7f8fa;
  --surface: #ffffff;
  --surface-2: #f4f6f8;
  --surface-3: #eef2f6;
  --text: #111418;
  --muted: #5f6873;
  --muted-2: #87909a;
  --line: #dfe4e9;
  --line-strong: #c9d1d9;
  --accent: #1f3a5f;
  --accent-strong: #122844;
  --accent-soft: #e9eef5;
  --accent-ink: #ffffff;
  --warn: #8b6f3d;
  --max: 1180px;
  --reading: 760px;
  --radius-sm: 10px;
  --radius: 18px;
  --radius-lg: 28px;
  --shadow: 0 22px 70px rgba(17, 20, 24, .08);
  --ease: cubic-bezier(.2,.8,.2,1);
  --display: "Sora", "Avenir Next", "Century Gothic", "Trebuchet MS", sans-serif;
  --sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}

* { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  background: var(--bg);
}

body {
  margin: 0;
  min-height: 100vh;
  background:
    radial-gradient(circle at 84% -14%, rgba(31,58,95,.065), transparent 34rem),
    linear-gradient(180deg, #ffffff 0%, #fbfcfd 100%);
  color: var(--text);
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.62;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

::selection {
  background: #dfe7f0;
  color: #0c1520;
}

a { color: inherit; }
img, svg { max-width: 100%; }

.shell {
  width: min(calc(100% - 48px), var(--max));
  margin-inline: auto;
}

.reading { width: min(100%, var(--reading)); }

.skip-link {
  position: absolute;
  left: 14px;
  top: 10px;
  z-index: 100;
  transform: translateY(-180%);
  padding: 10px 14px;
  border-radius: 8px;
  background: #111418;
  color: #fff;
  font-weight: 800;
  text-decoration: none;
}

.skip-link:focus { transform: translateY(0); }

header {
  position: sticky;
  top: 0;
  z-index: 40;
  border-bottom: 1px solid rgba(17,20,24,.07);
  background: rgba(255,255,255,.90);
  backdrop-filter: blur(18px) saturate(130%);
}

.nav {
  min-height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  text-decoration: none;
  flex: 0 0 auto;
}

.mark {
  position: relative;
  display: block;
  width: 44px;
  height: 38px;
  color: var(--text);
  flex: 0 0 auto;
}

.mark .m,
.mark .a {
  position: absolute;
  font-family: var(--display);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.12em;
}

.mark .m {
  left: 0;
  top: 1px;
  font-size: 31px;
  color: #101318;
}

.mark .a {
  left: 21px;
  top: 8px;
  font-size: 27px;
  color: var(--accent);
}

.brand-copy strong {
  display: block;
  font-family: var(--display);
  font-size: 18px;
  line-height: 1;
  letter-spacing: -.02em;
  font-weight: 700;
}

.brand-copy span { display: none; }

nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 24px;
  flex-wrap: wrap;
}

nav a {
  position: relative;
  color: var(--muted);
  text-decoration: none;
  font-size: 13px;
  font-weight: 650;
  letter-spacing: .01em;
  transition: color .2s var(--ease);
}

nav a:not(.button)::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -7px;
  height: 1px;
  background: var(--accent);
  transition: right .25s var(--ease);
}

nav a:hover,
nav a[aria-current="page"] { color: var(--text); }

nav a:hover::after,
nav a[aria-current="page"]::after { right: 0; }

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border: 1px solid var(--accent);
  border-radius: 11px;
  background: var(--accent);
  color: var(--accent-ink);
  text-decoration: none;
  font-size: 14px;
  font-weight: 760;
  letter-spacing: -.01em;
  box-shadow: 0 8px 24px rgba(31,58,95,.10);
  transition: transform .22s var(--ease), background .22s var(--ease), border-color .22s var(--ease), box-shadow .22s var(--ease);
}

.button:hover {
  transform: translateY(-2px);
  background: var(--accent-strong);
  border-color: var(--accent-strong);
  box-shadow: 0 12px 30px rgba(31,58,95,.15);
}

.button.secondary {
  color: var(--accent);
  background: transparent;
  border-color: var(--line-strong);
  box-shadow: none;
}

.button.secondary:hover {
  border-color: var(--accent);
  background: var(--accent-soft);
}

.button.ghost {
  min-height: auto;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--accent);
  box-shadow: none;
}

.button.ghost:hover {
  transform: none;
  color: var(--accent-strong);
  background: transparent;
  box-shadow: none;
}

.actions {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 34px;
}

.hero {
  position: relative;
  overflow: hidden;
  padding: 116px 0 92px;
}

.hero::before {
  content: "";
  position: absolute;
  width: 530px;
  height: 530px;
  top: -330px;
  right: 6%;
  border: 1px solid rgba(31,58,95,.08);
  border-radius: 50%;
  box-shadow:
    0 0 0 74px rgba(31,58,95,.022),
    0 0 0 150px rgba(31,58,95,.010);
  pointer-events: none;
}

.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr);
  align-items: center;
  gap: 72px;
}

.hero-copy { min-width: 0; }

.eyebrow,
.badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 18px;
  color: var(--accent);
  font-size: 11px;
  font-weight: 780;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.eyebrow::before {
  content: "";
  width: 22px;
  height: 1px;
  background: currentColor;
  opacity: .75;
}

.badge {
  padding: 7px 10px;
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  color: var(--accent);
  letter-spacing: .09em;
}

h1, h2, h3, p { overflow-wrap: anywhere; }

h1, h2, h3 {
  margin-top: 0;
  color: var(--text);
  line-height: 1.03;
  text-wrap: balance;
}

h1, h2 {
  font-family: var(--display);
  font-weight: 600;
}

h1 {
  max-width: 920px;
  margin-bottom: 0;
  font-size: clamp(52px, 7.7vw, 92px);
  letter-spacing: -.052em;
}

.hero .lede {
  max-width: 780px;
  margin: 28px 0 0;
  color: #434c56;
  font-size: clamp(18px, 2vw, 23px);
  line-height: 1.58;
  text-wrap: pretty;
}

.microcopy {
  margin-top: 16px;
  color: var(--muted);
  font-size: 13px;
}

.hero-panel {
  position: relative;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: rgba(255,255,255,.92);
  box-shadow: var(--shadow);
}

.hero-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(31,58,95,.03), transparent 34%);
  pointer-events: none;
}

.panel-kicker {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--line);
  color: var(--muted);
  font-size: 12px;
}

.live-dot {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #44515e;
}

.live-dot::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 0 4px rgba(31,58,95,.07);
}

.evidence-chain {
  position: relative;
  display: grid;
  gap: 9px;
  margin-top: 16px;
}

.evidence-row {
  display: grid;
  grid-template-columns: 112px 1fr auto;
  gap: 14px;
  align-items: center;
  min-height: 52px;
  padding: 12px 13px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--bg-soft);
  transition: transform .24s var(--ease), border-color .24s var(--ease), background .24s var(--ease);
}

.evidence-row:hover {
  transform: translateX(3px);
  border-color: #aebdcd;
  background: #f1f4f7;
}

.evidence-row span:first-child {
  color: #1f2730;
  font-size: 12px;
  font-weight: 720;
}

.evidence-row span:nth-child(2) {
  color: var(--muted);
  font-size: 12px;
}

.evidence-row strong {
  color: var(--accent);
  font-size: 11px;
  font-weight: 760;
  letter-spacing: .04em;
}

.evidence-row.late strong { color: var(--warn); }

.panel-result {
  margin-top: 14px;
  padding: 16px;
  border: 1px solid #cfd9e5;
  border-radius: 14px;
  background: #f4f7fb;
}

.panel-result small {
  display: block;
  margin-bottom: 6px;
  color: var(--muted-2);
  font-size: 10px;
  font-weight: 760;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.panel-result strong {
  display: block;
  color: #18283c;
  font-size: 15px;
  line-height: 1.4;
}

.panel-note {
  margin: 12px 2px 0;
  color: var(--muted-2);
  font-size: 11px;
}

.trust-strip {
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: #fafbfc;
}

.trust-strip .shell {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.trust-item {
  min-height: 84px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 18px 22px;
  border-right: 1px solid var(--line);
  color: #3f4953;
  font-size: 13px;
}

.trust-item:first-child { padding-left: 0; }
.trust-item:last-child { border-right: 0; }

.trust-item::before {
  content: "";
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border: 1px solid var(--accent);
  border-radius: 50%;
}

section { padding: 84px 0; }
section.compact { padding: 58px 0; }
.rule { border-top: 1px solid var(--line); }

.section-heading {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr);
  gap: 56px;
  align-items: start;
  margin-bottom: 42px;
}

.section-heading h2,
.prose h2 {
  margin-bottom: 0;
  font-size: clamp(36px, 4.8vw, 56px);
  letter-spacing: -.042em;
  font-weight: 600;
}

.section-heading p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 18px;
  line-height: 1.68;
}

.section-kicker {
  display: block;
  margin-bottom: 14px;
  color: var(--accent);
  font-size: 11px;
  font-weight: 780;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.grid.two { grid-template-columns: repeat(2, 1fr); }
.grid.four { grid-template-columns: repeat(4, 1fr); }

.card {
  position: relative;
  min-height: 100%;
  padding: 26px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--surface);
  box-shadow: 0 10px 35px rgba(17,20,24,.035);
  transition: transform .24s var(--ease), border-color .24s var(--ease), box-shadow .24s var(--ease);
}

.card:hover {
  transform: translateY(-3px);
  border-color: #bcc7d2;
  box-shadow: 0 16px 42px rgba(17,20,24,.065);
}

.card h3 {
  margin: 0 0 11px;
  font-size: 20px;
  letter-spacing: -.015em;
}

.card p {
  margin: 0;
  color: var(--muted);
}

.metric {
  display: block;
  margin-bottom: 14px;
  color: var(--accent);
  font-size: 10px;
  font-weight: 780;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.card-link {
  display: inline-flex;
  margin-top: 18px;
  color: var(--accent);
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
}

.card-link::after {
  content: "→";
  margin-left: 7px;
  transition: transform .2s var(--ease);
}

.card-link:hover::after { transform: translateX(3px); }

.feature-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-top: 1px solid var(--line);
}

.feature {
  padding: 26px 28px 26px 0;
  border-bottom: 1px solid var(--line);
}

.feature:nth-child(odd) {
  padding-right: 34px;
  border-right: 1px solid var(--line);
}

.feature:nth-child(even) { padding-left: 34px; }

.feature h3 {
  margin: 0 0 8px;
  font-size: 18px;
}

.feature p {
  margin: 0;
  color: var(--muted);
}

.steps {
  display: grid;
  counter-reset: step;
  border-top: 1px solid var(--line);
}

.step {
  counter-increment: step;
  display: grid;
  grid-template-columns: 64px minmax(0, .72fr) minmax(0, 1.28fr);
  gap: 30px;
  align-items: start;
  padding: 28px 0;
  border-bottom: 1px solid var(--line);
}

.step::before {
  content: counter(step, decimal-leading-zero);
  color: var(--accent);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
}

.step h3 {
  margin: 0;
  font-size: 18px;
}

.step p {
  margin: 0;
  color: var(--muted);
}

.split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 54px;
  align-items: start;
}

.callout {
  padding: 32px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-lg);
  background: #f7f9fb;
}

.callout strong {
  display: block;
  margin-bottom: 10px;
  font-family: var(--display);
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -.02em;
}

.callout p {
  margin: 0;
  color: var(--muted);
}

.callout .actions { margin-top: 24px; }

.compare {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  overflow: hidden;
  background: #fff;
}

.compare > div {
  padding: 30px;
  background: #fff;
}

.compare > div + div {
  border-left: 1px solid var(--line);
  background: #f6f8fb;
}

.compare h3 {
  margin: 0 0 18px;
  font-size: 18px;
}

.check-list,
.plain-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.check-list li,
.plain-list li {
  position: relative;
  padding: 10px 0 10px 24px;
  color: var(--muted);
  border-top: 1px solid #edf0f3;
}

.check-list li:first-child,
.plain-list li:first-child { border-top: 0; }

.check-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--accent);
  font-weight: 800;
}

.plain-list li::before {
  content: "—";
  position: absolute;
  left: 0;
  color: var(--muted-2);
}

.prose { max-width: var(--reading); }
.prose-wide { max-width: 940px; }

.prose h1 {
  max-width: 900px;
  font-size: clamp(46px, 6.7vw, 76px);
}

.prose h2 {
  margin-top: 52px;
  font-size: 32px;
  letter-spacing: -.035em;
}

.prose h3 {
  margin-top: 34px;
  font-size: 20px;
}

.prose p,
.prose li { color: #4c5660; }

.prose p { margin: 14px 0; }
.prose ul { padding-left: 20px; }
.prose li { margin-bottom: 9px; }

.prose a:not(.button) {
  color: var(--accent);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.notice {
  padding: 14px 16px;
  border-left: 2px solid var(--accent);
  background: #f7f9fb;
  color: #5f6973 !important;
  font-size: 13px;
}

.status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 6px 9px;
  border: 1px solid var(--line-strong);
  border-radius: 999px;
  color: #53606c;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.status.supported { border-color: #aebed0; color: var(--accent); }
.status.contradiction { border-color: #d2c09d; color: #7e6335; }
.status.insufficient { color: #717c86; }

.finding {
  padding: 30px 0;
  border-top: 1px solid var(--line);
}

.finding:first-child { border-top: 0; }

.finding-head {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 13px;
}

.finding h3 {
  margin: 0;
  font-size: 23px;
}

.finding p { color: var(--muted); }

.faq-list {
  display: grid;
  border-top: 1px solid var(--line);
}

details { border-bottom: 1px solid var(--line); }

summary {
  position: relative;
  cursor: pointer;
  list-style: none;
  padding: 22px 48px 22px 0;
  color: var(--text);
  font-size: 18px;
  font-weight: 680;
}

summary::-webkit-details-marker { display: none; }

summary::after {
  content: "+";
  position: absolute;
  right: 4px;
  top: 18px;
  color: var(--accent);
  font-size: 24px;
  font-weight: 300;
  transition: transform .22s var(--ease);
}

details[open] summary::after { transform: rotate(45deg); }

details p {
  max-width: 760px;
  margin: -3px 0 24px;
  color: var(--muted);
}

.contact-grid {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  gap: 54px;
  align-items: start;
}

.contact-card {
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: #f8fafc;
}

.contact-card h3 { margin: 0 0 12px; }

.contact-email {
  display: inline-block;
  margin-top: 10px;
  color: var(--accent);
  font-family: var(--display);
  font-size: clamp(21px, 3vw, 29px);
  font-weight: 600;
  letter-spacing: -.025em;
  text-decoration: none;
}

.cta-band {
  position: relative;
  overflow: hidden;
  padding: 48px;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background:
    radial-gradient(circle at 94% 0%, rgba(31,58,95,.07), transparent 17rem),
    linear-gradient(135deg, #f8fafc, #f2f5f8);
}

.cta-band h2 {
  max-width: 720px;
  margin: 0;
  font-size: clamp(38px, 5vw, 58px);
  letter-spacing: -.045em;
}

.cta-band p {
  max-width: 680px;
  margin: 16px 0 0;
  color: var(--muted);
  font-size: 17px;
}

.privacy-band {
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  background: var(--accent);
  color: #fff;
}

.privacy-band .shell {
  display: grid;
  grid-template-columns: minmax(0,.95fr) minmax(0,1.05fr);
  gap: 56px;
  align-items: center;
  padding-block: 62px;
}

.privacy-band .section-kicker,
.privacy-band h2,
.privacy-band p { color: #fff; }

.privacy-band h2 {
  margin: 0;
  font-family: var(--display);
  font-size: clamp(36px, 5vw, 56px);
  font-weight: 600;
  letter-spacing: -.04em;
}

.privacy-band p {
  margin: 0;
  color: rgba(255,255,255,.82);
  font-size: 17px;
}

.privacy-points {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 10px 24px;
  margin-top: 22px;
}

.privacy-points span {
  display: flex;
  align-items: center;
  gap: 9px;
  color: rgba(255,255,255,.9);
  font-size: 13px;
}

.privacy-points span::before {
  content: "";
  width: 7px;
  height: 7px;
  border: 1px solid rgba(255,255,255,.8);
  border-radius: 50%;
  flex: 0 0 auto;
}

.privacy-band .button.secondary {
  color: #fff;
  border-color: rgba(255,255,255,.45);
  background: transparent;
}

.privacy-band .button.secondary:hover {
  border-color: #fff;
  background: rgba(255,255,255,.08);
}

footer {
  margin-top: 72px;
  padding: 36px 0 44px;
  border-top: 1px solid var(--line);
  color: var(--muted-2);
  font-size: 12px;
}

.footer-grid {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 24px;
  align-items: start;
}

.footer-brand { color: #46515b; }

.footer-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px 18px;
}

.footer-links a {
  color: #66717c;
  text-decoration: none;
  transition: color .2s var(--ease);
}

.footer-links a:hover { color: var(--accent); }

.legal-note {
  margin-top: 12px;
  color: #929aa3;
  font-size: 11px;
}

@keyframes hero-in {
  from { opacity: 0; transform: translateY(9px); }
  to { opacity: 1; transform: translateY(0); }
}

.hero-copy,
.hero-panel {
  animation: hero-in .58s var(--ease) both;
}

.hero-panel { animation-delay: .08s; }

a:focus-visible,
button:focus-visible,
summary:focus-visible {
  outline: 3px solid #2a4a70;
  outline-offset: 4px;
  border-radius: 7px;
}

@media (max-width: 980px) {
  .hero-grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .hero-panel { max-width: 720px; }

  .trust-strip .shell { grid-template-columns: repeat(2, 1fr); }
  .trust-item:nth-child(2) { border-right: 0; }
  .trust-item:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .grid.four { grid-template-columns: repeat(2, 1fr); }

  .privacy-band .shell {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}

@media (max-width: 800px) {
  .nav {
    min-height: auto;
    padding: 16px 0;
    align-items: flex-start;
  }

  nav { gap: 11px 16px; }
  .hero { padding: 84px 0 70px; }

  .section-heading,
  .split,
  .contact-grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .grid,
  .grid.two { grid-template-columns: 1fr; }

  .step {
    grid-template-columns: 48px 1fr;
    gap: 16px 18px;
  }

  .step p { grid-column: 2; }

  .feature-list { grid-template-columns: 1fr; }

  .feature,
  .feature:nth-child(odd),
  .feature:nth-child(even) {
    padding: 22px 0;
    border-right: 0;
  }

  .compare { grid-template-columns: 1fr; }
  .compare > div + div {
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .footer-grid { grid-template-columns: 1fr; }
  .footer-links { justify-content: flex-start; }
}

@media (max-width: 620px) {
  .shell { width: min(calc(100% - 30px), var(--max)); }

  .nav { flex-wrap: wrap; gap: 13px; }

  nav {
    width: 100%;
    justify-content: flex-start;
  }

  nav a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }

  nav .button {
    min-height: 44px;
    padding-inline: 14px;
  }

  h1 { font-size: clamp(44px, 14vw, 66px); }

  .hero-grid { gap: 36px; }
  .hero-panel { padding: 16px; }

  .evidence-row { grid-template-columns: 1fr auto; }
  .evidence-row span:nth-child(2) {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .trust-strip .shell { grid-template-columns: 1fr; }

  .trust-item,
  .trust-item:first-child {
    padding: 15px 0;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .trust-item:last-child { border-bottom: 0; }
  .grid.four { grid-template-columns: 1fr; }
  section { padding: 68px 0; }
  .cta-band { padding: 30px 24px; }
  .privacy-points { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}


/* Founding diagnostic scope: intentionally readable without JavaScript. */
.offer-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
  gap: clamp(28px, 5vw, 76px);
  align-items: center;
}
.offer-layout > * { min-width: 0; }
.offer-layout h2 {
  max-width: 780px;
  font-size: clamp(37px, 5vw, 63px);
  letter-spacing: -.047em;
}
.offer-intro {
  max-width: 700px;
  color: var(--muted);
  font-size: 18px;
}
.offer-card {
  padding: clamp(24px, 4vw, 42px);
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-lg);
  background: var(--surface);
  box-shadow: var(--shadow);
}
.offer-eyebrow, .offer-unit { display: block; color: var(--muted); font-size: 12px; }
.offer-eyebrow { text-transform: uppercase; font-weight: 780; letter-spacing: .1em; }
.offer-price { display: block; margin: 14px 0 0; font: 600 clamp(52px, 7vw, 80px)/1.05 var(--display); color: var(--accent-strong); letter-spacing: -.05em; }
.offer-unit { margin-top: 5px; }
.offer-points { padding: 0; margin: 22px 0; list-style: none; display: grid; gap: 10px; }
.offer-points li { position: relative; padding-left: 23px; line-height: 1.5; }
.offer-points li::before { content: "✓"; position: absolute; left: 0; color: var(--accent); font-weight: 750; }
.offer-note { font-size: 13px; color: var(--muted); border-top: 1px solid var(--line); padding-top: 18px; }
.offer-details-section .offer-points { font-size: 15px; }
.offer-details-section .card { height: 100%; }
.contact-email { overflow-wrap: anywhere; }

@media (max-width: 850px) {
  .offer-layout { grid-template-columns: 1fr; }
  .offer-card { max-width: 640px; }
}

@media (max-width: 620px) {
  .offer-layout h2 { font-size: clamp(36px, 10vw, 50px); }
  .offer-intro { font-size: 16px; }
  .offer-card { padding: 22px; }
  .offer-price { font-size: 56px; }
  .hero .actions, .offer-layout .actions { align-items: stretch; }
  .hero .actions .button, .offer-layout .actions .button { width: 100%; justify-content: center; }
}

/* V3 executive experience: quiet editorial spacing and one meaningful
   native HTML interaction, no JavaScript or third-party assets. */
html { scroll-padding-top: 110px; }
#evidence-preview { scroll-margin-top: 110px; }

.hero h1 { max-width: 770px; font-size: clamp(50px, 6.5vw, 85px); letter-spacing: -.058em; }
.hero .lede { max-width: 680px; font-size: clamp(17px, 1.7vw, 20px); line-height: 1.62; }
.hero .lede strong { color: var(--text); font-weight: 680; }
.hero .actions { margin-top: 28px; }
.hero .actions .button { gap: 9px; }
.hero-panel { box-shadow: 0 24px 70px rgba(17, 37, 57, .075); }

.signal-head {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 18px;
  padding: 20px 3px 16px;
  border-bottom: 1px solid var(--line);
  align-items: center;
}
.signal-number {
  font-family: var(--display);
  font-size: clamp(47px, 4.5vw, 64px);
  font-weight: 600;
  letter-spacing: -.055em;
  line-height: 1;
  color: var(--accent-strong);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.signal-number span { color: #66788c; font-size: .45em; letter-spacing: -.025em; }
.signal-head strong { font-size: 15px; font-weight: 760; line-height: 1.3; display: block; }
.signal-head p { margin: 6px 0 0; color: var(--muted); line-height: 1.5; font-size: 12px; }
.hero-panel .evidence-row {
  grid-template-columns: minmax(0,100px) minmax(0,1fr) auto;
  gap: 8px;
  background: #fff;
}
.hero-panel .evidence-row strong {
  font-size: 10px;
  background: var(--accent-soft);
  border-radius: 100px;
  padding: 4px 7px;
  letter-spacing: 0;
}
.hero-panel .evidence-row:nth-child(2) strong { color: #78572b; background: #fbf2e4; }
.hero-panel .evidence-row:nth-child(3) strong { color: #596573; background: #edf1f5; }
.hero-panel .panel-note { color: var(--muted); line-height: 1.55; font-size: 11px; }

.investigation-section {
  padding: clamp(76px, 10vw, 138px) 0;
  background: linear-gradient(180deg, #f6f8fa 0%, #fff 100%);
}
.investigation-heading {
  display: grid;
  grid-template-columns: minmax(0,1.25fr) minmax(0,.75fr);
  gap: 64px;
  align-items: end;
  margin-bottom: 44px;
}
.investigation-heading h2 {
  max-width: 810px;
  margin: 0;
  font-size: clamp(40px, 5vw, 64px);
  letter-spacing: -.045em;
  line-height: 1.09;
}
.investigation-heading > p {
  margin: 0 0 3px;
  color: var(--muted);
  font-size: 17px;
  line-height: 1.65;
  text-wrap: pretty;
}
.investigation-layout {
  display: grid;
  grid-template-columns: minmax(0,.76fr) minmax(0,1.24fr);
  gap: 22px;
  align-items: stretch;
}
.investigation-layout > * { min-width: 0; }
.investigation-overview {
  border-radius: var(--radius-lg);
  background: #182e48;
  color: #fff;
  padding: clamp(28px, 3.6vw, 48px);
  align-self: start;
}
.overview-label {
  display: block;
  color: #b4c8df;
  letter-spacing: .14em;
  font-weight: 750;
  text-transform: uppercase;
  font-size: 11px;
}
.overview-question {
  font: 600 clamp(26px, 3vw, 39px)/1.16 var(--display);
  letter-spacing: -.03em;
  margin: 16px 0 29px;
  text-wrap: balance;
}
.overview-divider { border-top: 1px solid rgba(255,255,255,.22); margin-bottom: 12px; }
.overview-stat {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 15px;
  padding: 13px 0;
  border-bottom: 1px solid rgba(255,255,255,.14);
}
.overview-stat span { color: #dde6f0; font-size: 13px; }
.overview-stat strong {
  font: 600 clamp(22px, 2.7vw, 32px)/1.2 var(--display);
  letter-spacing: -.03em;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.overview-note { color: #d3dfec; font-size: 12px; line-height: 1.65; margin: 22px 0 0; }
.overview-note a { color: #fff; text-underline-offset: 3px; }
.investigation-explore { display: grid; gap: 12px; align-content: start; }
.insight {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 18px;
  padding: 0;
  box-shadow: 0 4px 20px rgba(17,20,24,.025);
  transition: border-color .2s var(--ease), box-shadow .2s var(--ease);
}
.insight[open] { border-color: #aabbd0; box-shadow: 0 14px 38px rgba(24,46,72,.07); }
.insight summary {
  min-height: 114px;
  display: grid;
  grid-template-columns: 44px minmax(0,1fr);
  align-items: start;
  gap: 17px;
  padding: 27px 60px 27px 27px;
  border-radius: inherit;
}
.insight summary:hover { background: #f8fafc; }
.insight summary::after { top: 34px; right: 26px; color: var(--accent); }
.insight-index {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 11px;
  width: 41px;
  height: 41px;
  border: 1px solid #d6e1ec;
  background: #f5f8fb;
  color: var(--accent);
  font: 700 12px/1 var(--sans);
  letter-spacing: .04em;
}
.insight-summary { display: grid; gap: 3px; }
.insight-type {
  color: var(--accent);
  font-size: 10px;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-weight: 820;
}
.insight-summary strong {
  color: var(--text);
  font: 600 clamp(23px, 2.6vw, 33px)/1.12 var(--display);
  letter-spacing: -.03em;
  text-wrap: balance;
}
.insight-summary small { color: var(--muted); font-size: 13px; font-weight: 480; line-height: 1.5; }
.insight-body { padding: 0 32px 25px 88px; }
.insight-body p { margin: 0 0 14px; color: #495563; font-size: 15px; line-height: 1.65; }
.insight-body .insight-limit {
  border-top: 1px solid var(--line);
  margin: 0;
  padding-top: 12px;
  font-size: 13px;
}
.insight-limit strong { color: var(--text); }
.investigation-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 14px 26px; padding: 17px 0 0; }
.investigation-actions .button { gap: 9px; }
.text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--accent); text-underline-offset: 4px; font-weight: 710; font-size: 14px; min-height: 44px; }
.text-link:hover { color: var(--accent-strong); }

@media (max-width: 1000px) {
  .investigation-heading { grid-template-columns: 1fr; gap: 18px; }
  .investigation-layout { grid-template-columns: 1fr; }
  .investigation-overview { align-self: auto; }
  .investigation-overview .overview-stat { max-width: 710px; }
}
@media (max-width: 620px) {
  .investigation-section { padding: 62px 0; }
  .investigation-heading h2 { font-size: clamp(34px, 9vw, 48px); }
  .investigation-heading > p { font-size: 15px; }
  .investigation-overview { padding: 25px 22px; }
  .insight summary { padding: 22px 42px 22px 17px; min-height: 100px; grid-template-columns: 36px minmax(0,1fr); gap: 12px; }
  .insight-index { width: 35px; height: 35px; }
  .insight summary::after { right: 15px; top: 28px; }
  .insight-body { padding: 0 22px 22px 65px; }
  .investigation-actions { align-items: stretch; }
  .investigation-actions .button { width: 100%; }
  .hero-panel .evidence-row { grid-template-columns: 1fr auto; gap: 7px; }
  .hero-panel .evidence-row span:nth-child(2) { grid-column: 1 / -1; grid-row: 2; }
  .hero-panel .evidence-row strong { grid-column: 2; grid-row: 1; }
}
@media (prefers-reduced-transparency: reduce) {
  header { backdrop-filter: none; background: #fff; }
}

/* V3 responsive navigation: a visible Sample destination + clearly labeled
   native Menu disclosure. Same actual link destinations as desktop. */
.mobile-tools { display: none; }

@media (max-width: 800px) {
  .nav {
    flex-wrap: nowrap;
    align-items: center;
    min-height: 72px;
    padding: 10px 0;
    gap: 12px;
  }
  .nav > .desktop-nav { display: none; }
  .mobile-tools {
    display: flex;
    gap: 9px;
    align-items: center;
    justify-content: flex-end;
    margin-left: auto;
  }
  .mobile-sample {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 10px;
    border-radius: 9px;
    color: var(--accent);
    font-size: 13px;
    text-decoration: none;
    font-weight: 750;
    white-space: nowrap;
  }
  .mobile-sample:hover,
  .mobile-sample[aria-current="page"] { background: var(--accent-soft); }
  .mobile-menu {
    position: relative;
    border: 0;
  }
  .mobile-menu > summary {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 14px;
    border: 1px solid var(--line-strong);
    border-radius: 11px;
    background: #fff;
    font: 750 13px/1 var(--sans);
    color: var(--accent);
    box-shadow: 0 3px 10px rgba(17,20,24,.03);
    white-space: nowrap;
  }
  .mobile-menu > summary::after { content: none; }
  .mobile-menu > summary > span { font-size: 16px; font-weight: 600; line-height: 1; }
  .mobile-menu > summary:hover,
  .mobile-menu[open] > summary { background: var(--accent-soft); border-color: #9aaec5; }
  .mobile-menu > nav {
    position: absolute;
    z-index: 70;
    top: calc(100% + 12px);
    right: 0;
    width: min(300px, calc(100vw - 30px));
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 12px;
    border: 1px solid var(--line-strong);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 23px 60px rgba(17,31,48,.19);
    max-height: min(70vh, 460px);
    overflow-y: auto;
  }
  .mobile-menu > nav a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    min-height: 46px;
    width: 100%;
    margin: 0;
    padding: 10px 14px;
    border-radius: 9px;
    color: var(--text);
    font-size: 14px;
    text-decoration: none;
    letter-spacing: 0;
  }
  .mobile-menu > nav a:not(.button)::after { content: none; }
  .mobile-menu > nav a:hover,
  .mobile-menu > nav a[aria-current="page"] { background: var(--accent-soft); color: var(--accent); }
  .mobile-menu > nav .button {
    background: var(--accent);
    border-color: var(--accent);
    color: #fff;
    justify-content: center;
    box-shadow: none;
    margin-top: 6px;
  }
  .mobile-menu > nav .button:hover { background: var(--accent-strong); color: #fff; }
}
@media (max-width: 360px) {
  .nav { gap: 6px; }
  .brand { gap: 7px; }
  .brand-copy strong { font-size: 16px; }
  .mark { width: 36px; }
  .mark .m { font-size: 26px; }
  .mark .a { left: 17px; font-size: 24px; }
  .mobile-tools { gap: 2px; }
  .mobile-menu > summary { padding: 0 9px; }
  .mobile-sample { padding: 0 7px; }
}

/* ================================================================
   MAKOTO ARC · MONOCHROME INDUSTRIAL DESIGN
   Reference: founder-approved Oct 8 white / black sharp A-arc mockup.
   Typography: Sora display with local-only geometric fallbacks;
   Inter/system for body. No external font calls, tracking or JS.
   Native details, :hover, :focus-visible, view timelines and
   cross-document view transitions are progressive enhancements.
   ================================================================ */
:root {
  --bg: #f8f8f6;
  --bg-soft: #f2f2f0;
  --surface: #fff;
  --surface-2: #f5f5f3;
  --surface-3: #ededec;
  --text: #0b0e12;
  --muted: #555b62;
  --muted-2: #757b81;
  --line: #d9dada;
  --line-strong: #aeb2b5;
  --accent: #111316;
  --accent-strong: #000;
  --accent-soft: #ededeb;
  --accent-ink: #fff;
  --warn: #68625c;
  --display: "Sora", "Avenir Next", "Century Gothic", "Trebuchet MS", sans-serif;
  --sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}
body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--sans);
}
h1,h2 { font-family: var(--display); }
header { background: rgba(250,250,249,.92); border-color: rgba(0,0,0,.12); }
.brand-copy strong {
  font-family: var(--display); letter-spacing: .16em; font-size: 15px; font-weight: 650;
}
.brand-copy span { display:block; margin-top:4px; font-size:8px; font-weight:700; color:#5a5e62; letter-spacing:.1em; line-height:1.5; }
.brand-symbol { width: 42px; height: 49px; display:inline-grid; place-items:center; flex:0 0 auto; color:#090b0c; }
.brand-symbol svg { width:100%; height:100%; display:block; }
.brand { gap:13px; }
.brand .brand-symbol + .brand-copy { border-left:1px solid #bec2c2; padding-left:12px; }
.button,.button.secondary { border-radius: 2px; box-shadow:none; }
.button:hover { box-shadow:0 9px 22px rgba(0,0,0,.1); }
.button.secondary:hover { background:#0f1113; color:#fff; }
a:focus-visible,summary:focus-visible,button:focus-visible { outline:3px solid #30353a; outline-offset:4px; }

/* Make original informational pages share the same technical wordmark. */
@media (max-width:360px) {
  .brand-symbol { width:32px; height:40px; }
  .brand { gap:5px; }
  .brand-copy strong { font-size:12px; letter-spacing:.11em; }
  .brand-copy span { font-size:6.4px; max-width:150px; letter-spacing:.055em; }
  .brand .brand-symbol + .brand-copy { padding-left:8px; }
}

.cinematic-home { background:#f8f8f6; color:#0c1013; overflow-x:clip; }
.cinematic-home h1,.cinematic-home h2,.cinematic-home h3 { color:inherit; }
.cinematic-home p { overflow-wrap:normal; }
.cinematic-home header .nav { max-width:1520px; width:min(calc(100% - 80px), 1520px); min-height:76px; }
.cinematic-home header nav a:not(.button) { font-size:11px; letter-spacing:.14em; text-transform:uppercase; font-weight:690; }
.cinematic-home header .button.secondary { padding:0 19px; min-height:43px; background:#101113; color:#fff; border-color:#101113; font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.cinematic-home header .button.secondary:hover { background:#40464b; color:#fff; }
.cinematic-home header .brand-copy strong { font-weight:600; letter-spacing:.16em; font-size:18px; }
.cinematic-home header .brand-copy span { letter-spacing:.19em; font-size:7px; }
.cinematic-home header .brand-symbol { width:42px; height:54px; }
.cinematic-home header nav a:not(.button)::after { background:#0b1014; height:1px; }

.ma-overline { font-size:10px; color:#353b3e; font-weight:760; letter-spacing:.21em; text-transform:uppercase; line-height:1.6; }
.ma-tick { display:inline-block; width:24px; height:1px; background:currentColor; vertical-align:middle; margin-right:10px; }
.ma-scroll-progress { display:none; }

.ma-hero { display:grid; grid-template-columns: minmax(0,51.5fr) minmax(0,48.5fr); min-height:694px; border-bottom:1px solid #d3d5d5; }
.ma-hero-copy {
  padding:clamp(40px,5.2vw,80px) clamp(28px,5vw,92px) 0 max(36px,calc((100vw - 1510px)/2 + 38px));
  display:flex; flex-direction:column; min-width:0;
}
.ma-hero-masthead { display:flex; align-items:center; gap:25px; padding-bottom:30px; border-bottom:1px solid #d8d9d9; }
.ma-hero-masthead .brand-symbol { width:81px; height:99px; }
.ma-hero-masthead-text { border-left:1px solid #8e9295; padding-left:24px; min-width:0; display:grid; gap:9px; }
.ma-huge-name { font-family:var(--display); font-size:clamp(27px,3.25vw,55px); font-weight:490; letter-spacing:.17em; line-height:1.05; white-space:nowrap; }
.ma-hero-tagline { font-size:clamp(8px,.78vw,11px); letter-spacing:.28em; font-weight:650; color:#343a40; line-height:1.6; white-space:nowrap; }
.ma-hero-content { display:grid; grid-template-columns:133px minmax(0,1fr); gap:31px; padding:57px 0 45px; flex:1; align-items:start; }
.ma-side-manifesto { display:grid; gap:13px; border-right:1px solid #b4b7b9; padding:10px 15px 15px 0; align-self:start; }
.ma-side-manifesto span { font-size:10px; color:#343b41; letter-spacing:.22em; font-weight:700; }
.ma-hero-intro { min-width:0; }
.ma-hero-intro h1 { margin:21px 0 23px; font-family:var(--display); font-size:clamp(37px,3.55vw,62px); font-weight:580; line-height:1.13; letter-spacing:-.062em; text-wrap:balance; }
.ma-hero-intro h1 span { color:#757a7d; }
.ma-hero-intro p:not(.ma-prelaunch-note) { max-width:550px; font-size:clamp(14px,1.1vw,16px); color:#485057; line-height:1.88; margin:0; }
.ma-action-group { display:flex; gap:12px; flex-wrap:wrap; margin-top:29px; }
.ma-cta { text-decoration:none; display:inline-flex; align-items:center; justify-content:space-between; gap:19px; min-height:51px; padding:14px 20px; font-weight:710; text-transform:uppercase; letter-spacing:.115em; font-size:10px; line-height:1.5; transition:transform .35s var(--ease),background .35s var(--ease),box-shadow .35s var(--ease),color .35s var(--ease); }
.ma-cta span { font-size:15px; line-height:1; font-weight:500; transition:transform .3s var(--ease); }
.ma-cta:hover { transform:translateY(-3px); }
.ma-cta:hover span { transform:translate(3px,-2px); }
.ma-cta-dark { background:#0f1113; color:white; border:1px solid #0f1113; }
.ma-cta-dark:hover { color:#fff; background:#303438; box-shadow:0 12px 30px rgba(0,0,0,.15); }
.ma-cta-outline { background:transparent; color:#171c20; border:1px solid #a7abac; }
.ma-cta-outline:hover { background:#fff; border-color:#15191c; }
.ma-prelaunch-note { font:700 9px/1.8 var(--sans); letter-spacing:.10em; color:#83898d; text-transform:uppercase; margin:18px 0 0; }
.ma-hero-bottom { display:flex; flex-wrap:wrap; gap:10px; justify-content:space-between; padding:19px 0; border-top:1px solid #d6d8d9; font-size:9px; color:#596268; font-weight:750; letter-spacing:.16em; }

.ma-hero-image { position:relative; min-width:0; overflow:hidden; background:#293139; isolation:isolate; }
.ma-hero-image>img { display:block; width:100%; height:100%; min-height:694px; object-fit:cover; object-position:center; filter:grayscale(1) contrast(1.03); transform:scale(1.015); transition:transform 1.7s cubic-bezier(.13,.68,.16,1),filter 1s ease; }
.ma-hero-image:hover>img { transform:scale(1.06); filter:grayscale(1) contrast(1.12); }
.ma-hero-image:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,transparent 55%,rgba(8,15,19,.14)),linear-gradient(0deg,rgba(0,0,0,.32),transparent 25%); pointer-events:none; }
.ma-wall-copy { position:absolute; z-index:2; right:7.5%; top:29%; display:grid; gap:13px; font-family:var(--display); font-weight:600; letter-spacing:.20em; font-size:clamp(11px,1.3vw,18px); line-height:1.3; color:#232a30; text-shadow:0 1px 1px #d3d9d9; transform:rotate(-1deg); }
.ma-wall-copy i { width:34px; height:1px; background:#5a6065; margin-top:14px; }
.ma-scene-stamp { position:absolute; z-index:3; bottom:22px; right:25px; left:25px; color:#fff; font:700 9px var(--sans); letter-spacing:.16em; display:flex; justify-content:space-between; }

.ma-principle-line { display:grid; grid-template-columns:repeat(4,1fr); max-width:100%; background:#fff; border-bottom:1px solid #d2d4d5; }
.ma-principle-line span { padding:24px 17px; border-right:1px solid #e1e2e2; display:grid; place-items:center; text-align:center; font-size:10px; letter-spacing:.17em; font-weight:800; line-height:1.7; }
.ma-principle-line span:last-child { border:0; }

.ma-approach-section { padding:112px min(5vw,80px) 98px; background:#f7f8f7; }
.ma-section-intro { max-width:1440px; margin:0 auto 55px; display:grid; grid-template-columns:1.05fr 1fr; align-items:end; gap:25px 65px; }
.ma-section-intro .ma-overline { grid-column:1/-1; }
.ma-section-intro h2 { font-family:var(--display); font-size:clamp(39px,5vw,76px); letter-spacing:-.075em; line-height:1.14; font-weight:580; margin:0; }
.ma-section-intro h2 span { color:#8c9194; }
.ma-section-intro>p { margin:0; max-width:580px; justify-self:end; color:#60656a; font-size:17px; line-height:1.9; }
.ma-pillar-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0 auto; max-width:1440px; border-top:1px solid #b9bdbe; border-left:1px solid #d4d6d7; border-bottom:1px solid #d4d6d7; }
.ma-pillar { display:flex; flex-direction:column; min-height:457px; padding:30px clamp(17px,2.5vw,37px) 25px; border-right:1px solid #d4d6d7; position:relative; overflow:hidden; transition:background .5s var(--ease); }
.ma-pillar:hover { background:#eceeee; }
.ma-pillar:before { content:""; width:0; height:3px; background:#111; position:absolute; top:0; left:0; transition:width .65s var(--ease); }
.ma-pillar:hover:before { width:100%; }
.ma-pillar-heading { display:grid; gap:12px; }
.ma-index { font-size:11px; font-weight:750; letter-spacing:.18em; display:flex; align-items:center; gap:15px; }
.ma-index i { width:27px; height:1px; background:#555; }
.ma-pillar-label { font-family:var(--display); font-size:19px; font-weight:630; letter-spacing:.14em; }
.ma-pillar-heading small { color:#777e82; font-size:9px; font-weight:740; letter-spacing:.21em; }
.ma-pillar-art { flex:1; display:grid; place-items:center; padding:25px 0; color:#21272b; }
.ma-pillar-art svg { width:160px; max-width:100%; height:150px; transition:transform .65s var(--ease); }
.ma-pillar:hover .ma-pillar-art svg { transform:translateY(-11px) scale(1.07); }
.ma-pillar>p { color:#50575b; font-size:13px; line-height:1.78; margin:0 0 22px; max-width:300px; }
.ma-pillar-meta { border-top:1px solid #d4d7d8; padding-top:15px; margin-top:auto; font-size:9px; color:#717779; font-weight:740; letter-spacing:.1em; }

.ma-cinematic-break { min-height:480px; background:#121618; color:#f5f7f6; position:relative; overflow:hidden; display:flex; align-items:center; }
.ma-break-grid { max-width:1440px; width:100%; padding:100px min(6vw,95px); margin:0 auto; z-index:2; position:relative; }
.ma-cinematic-break .ma-overline { color:#b8bdc0; }
.ma-break-grid p { font-family:var(--display); font-size:clamp(30px,4.4vw,67px); letter-spacing:-.065em; line-height:1.3; font-weight:460; margin:26px 0 27px; max-width:1130px; }
.ma-break-grid p strong { font-weight:610; color:#fff; }
.ma-break-grid>a { text-decoration:none; color:#f2f3f3; font-size:11px; font-weight:750; letter-spacing:.16em; padding-bottom:10px; border-bottom:1px solid #7b858b; display:inline-flex; gap:18px; }
.ma-break-grid>a:hover { border-color:white; }
.ma-flow-art { position:absolute; inset:0; display:flex; align-items:stretch; justify-content:flex-end; transform:rotate(-14deg) translate(6%,15%); gap:43px; opacity:.14; pointer-events:none; }
.ma-flow-art span { width:1px; background:linear-gradient(transparent 0%,white 40%,transparent 100%); transform:skewX(-23deg); }
.ma-flow-art span:nth-child(odd) { width:2px; }

.ma-evidence-section { background:#f9f9f8; padding:112px min(5vw,80px) 120px; }
.ma-evidence-heading { max-width:1440px; margin:0 auto 53px; display:grid; grid-template-columns:1.1fr .9fr; gap:80px; align-items:end; }
.ma-evidence-heading h2 { font-family:var(--display); font-size:clamp(44px,5.6vw,84px); font-weight:570; letter-spacing:-.076em; line-height:1.12; margin:18px 0 0; }
.ma-evidence-heading h2 span { color:#8c9296; }
.ma-evidence-heading>p { max-width:550px; margin:0 0 7px; color:#555e64; line-height:1.88; font-size:16px; }
.ma-evidence-grid { max-width:1440px; margin:0 auto; display:grid; grid-template-columns:minmax(290px,.75fr) minmax(0,1.25fr); gap:18px; align-items:start; }
.ma-case { position:sticky; top:105px; border:1px solid #1e2326; color:#fff; background:#101315; padding:clamp(27px,3.5vw,49px); min-height:620px; }
.ma-case-head { display:flex; justify-content:space-between; gap:10px; border-bottom:1px solid #484d50; padding-bottom:17px; color:#d5d9d9; font-size:10px; letter-spacing:.13em; font-weight:750; }
.ma-case-big { display:flex; align-items:baseline; gap:12px; font-family:var(--display); margin:32px 0 11px; line-height:1; }
.ma-case-big span { font-size:clamp(94px,10vw,165px); font-weight:440; letter-spacing:-.11em; }
.ma-case-big small { font-size:29px; font-weight:500; color:#9ca5ac; letter-spacing:-.04em; }
.ma-case h3 { font-family:var(--display); color:#f1f3f2; font-size:clamp(18px,2vw,27px); font-weight:500; line-height:1.45; max-width:390px; margin:0 0 34px; }
.ma-case-line { border-top:1px solid #464b4e; padding:16px 0; display:flex; gap:12px; align-items:baseline; justify-content:space-between; font-size:12px; color:#b3babd; }
.ma-case-line strong { color:white; font-weight:650; font-size:20px; font-variant-numeric:tabular-nums; font-family:var(--display); }
.ma-case-foot { font-weight:740; letter-spacing:.15em; font-size:10px; color:#8f9aa1; margin-top:25px; }
.ma-case-foot a { color:white; text-underline-offset:5px; }
.ma-case-foot p { font-weight:400; letter-spacing:normal; font-size:12px; line-height:1.6; color:#9ca6ac; margin:15px 0 0; }
.ma-evidence-results { border-top:1px solid #1e2326; min-width:0; }
.ma-evidence-side-title { display:flex; justify-content:space-between; gap:12px; padding:18px 0; border-bottom:1px solid #d1d4d5; font-size:10px; letter-spacing:.15em; font-weight:740; color:#667076; }
.ma-result { border:0; border-bottom:1px solid #b5b9bb; border-radius:0; box-shadow:none; margin:0; padding:0; background:transparent; }
.ma-result[open] { border-color:#1b2024; box-shadow:none; }
.ma-result summary { list-style:none; min-height:144px; display:grid; grid-template-columns:55px minmax(0,1fr) 36px; gap:23px; align-items:center; cursor:pointer; padding:29px 8px 29px 0; border-radius:0; position:relative; }
.ma-result summary:hover { background:transparent; }
.ma-result summary:after { display:none; }
.ma-result-index { font:750 13px var(--sans); color:#656b70; letter-spacing:.13em; align-self:start; margin-top:7px; }
.ma-result-copy { display:grid; gap:8px; min-width:0; }
.ma-result-copy small { color:#757b7e; font-size:10px; letter-spacing:.15em; font-weight:750; line-height:1.6; }
.ma-result-copy strong { font-family:var(--display); font-weight:570; font-size:clamp(22px,3vw,38px); line-height:1.22; letter-spacing:-.055em; }
.ma-result-copy em { font-style:normal; font-size:13px; color:#687074; font-weight:430; line-height:1.5; }
.ma-result-toggle { justify-self:end; font-family:var(--sans); font-size:28px; font-weight:300; width:34px; height:34px; border:1px solid #b3b9b9; display:grid; place-items:center; border-radius:50%; line-height:1; transition:transform .32s var(--ease),background .32s var(--ease),color .32s var(--ease); }
.ma-result[open] .ma-result-toggle { transform:rotate(45deg); background:#111516; color:#fff; }
.ma-result .insight-body { padding:0 52px 30px 77px; }
.ma-result .insight-body p { color:#525a60; font-size:15px; max-width:720px; line-height:1.8; }
.ma-result .insight-body .insight-limit { border-top:1px solid #d6d9da; padding-top:18px; color:#666e71; font-size:13px; }
.ma-result summary:focus-visible { outline:3px solid #171d21; outline-offset:-4px; }
.ma-evidence-actions { display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:18px; padding-top:38px; }
.ma-evidence-actions>a:not(.ma-cta) { color:#353b40; font-size:10px; font-weight:750; letter-spacing:.12em; text-underline-offset:7px; }

.ma-offer-section { padding:0; display:grid; grid-template-columns:1fr 1fr; border-top:1px solid #d5d7d8; border-bottom:1px solid #d5d7d8; }
.ma-offer-left { padding:110px max(40px,calc((100vw - 1450px)/2 + 40px)) 110px 6vw; }
.ma-offer-left h2 { font-family:var(--display); font-size:clamp(38px,5vw,73px); line-height:1.16; letter-spacing:-.076em; font-weight:560; margin:26px 0 28px; }
.ma-offer-left h2 span { color:#858b8f; }
.ma-offer-left p { max-width:570px; line-height:1.9; font-size:16px; color:#555d63; }
.ma-offer-left p strong { color:#161b1f; }
.ma-text-arrow { display:inline-flex; gap:22px; font-size:11px; font-weight:770; letter-spacing:.15em; color:#111517; text-decoration:none; border-bottom:1px solid #161c20; padding-bottom:11px; margin-top:27px; }
.ma-text-arrow span { transition:transform .3s ease; }
.ma-text-arrow:hover span { transform:translate(3px,-3px); }
.ma-offer-right { background:#e6e8e7; padding:clamp(47px,7vw,110px); border-left:1px solid #d2d5d5; }
.ma-offer-topline { display:flex; justify-content:space-between; gap:14px; font-size:10px; letter-spacing:.15em; font-weight:760; border-bottom:1px solid #bcc1c2; padding-bottom:20px; }
.ma-offer-price { display:block; font-family:var(--display); font-size:clamp(63px,9.3vw,149px); font-weight:500; letter-spacing:-.105em; margin:24px 0 14px; line-height:1.09; color:#111316; }
.ma-offer-right>p { color:#434b50; line-height:1.8; max-width:540px; font-size:16px; }
.ma-offer-details { display:grid; gap:0; margin-top:45px; border-top:1px solid #aab0b2; }
.ma-offer-details div { display:grid; grid-template-columns:38px 125px minmax(0,1fr); gap:10px; align-items:baseline; padding:17px 0; border-bottom:1px solid #c4c8c9; font-size:12px; }
.ma-offer-details div>span { color:#6a7075; font-size:10px; }
.ma-offer-details strong { font-weight:790; font-size:11px; letter-spacing:.12em; }
.ma-offer-details small { color:#545d60; line-height:1.5; }
.ma-offer-right>small { display:block; margin-top:27px; font-size:11px; line-height:1.75; color:#71787a; }

.ma-final-section { display:grid; grid-template-columns:1.35fr .65fr; min-height:550px; padding:105px 6vw 100px; background:#0e1214; color:#fff; overflow:hidden; }
.ma-final-main { position:relative; z-index:2; }
.ma-final-main .ma-overline { color:#bbc3c5; }
.ma-final-main h2 { font-family:var(--display); font-size:clamp(48px,7vw,104px); font-weight:500; letter-spacing:-.085em; line-height:1.13; margin:31px 0 20px; }
.ma-final-main p { color:#bfc6c8; font-size:19px; line-height:1.75; max-width:650px; }
.ma-cta-light { background:#fff; color:#0e1416; border:1px solid #fff; }
.ma-cta-light:hover { background:#dadede; color:#111; }
.ma-cta-transparent { background:transparent; color:#fff; border:1px solid #798487; }
.ma-cta-transparent:hover { background:#272e31; color:#fff; }
.ma-final-symbol { width:100%; display:grid; place-items:center; opacity:.10; color:#fff; transform:scale(1.4) rotate(-9deg); }
.ma-final-symbol svg { width:min(90%,470px); }

.ma-footer { background:#f6f7f6; padding:64px 6vw 32px; color:#151a1d; display:grid; grid-template-columns:1fr 1fr; gap:42px 70px; }
.ma-footer-brand { display:grid; gap:14px; align-content:start; }
.ma-footer-brand>span { font-family:var(--display); font-size:clamp(22px,2.7vw,35px); letter-spacing:.2em; font-weight:530; }
.ma-footer-brand small { color:#747b7e; font-size:12px; line-height:1.7; }
.ma-footer-links { display:flex; flex-wrap:wrap; gap:18px 25px; justify-content:flex-end; align-items:start; }
.ma-footer-links a { font-size:12px; text-decoration:none; border-bottom:1px solid transparent; padding-bottom:6px; color:#454d51; }
.ma-footer-links a:hover { border-color:#171c20; }
.ma-footer-bottom { grid-column:1/-1; border-top:1px solid #d4d8d9; padding-top:23px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; color:#7c8284; font-weight:720; letter-spacing:.13em; font-size:9px; }

@supports (animation-timeline: scroll()) {
  .ma-scroll-progress { display:block; position:fixed; top:0; left:0; width:100%; height:2px; background:#101214; transform-origin:left; z-index:100; animation:ma-progress linear both; animation-timeline:scroll(root); }
  @keyframes ma-progress { from { transform:scaleX(0); } to { transform:scaleX(1); } }
}
@supports (animation-timeline: view()) {
  .ma-section-intro h2,.ma-pillar,.ma-break-grid p,.ma-evidence-heading h2,.ma-offer-left h2 {
    animation:ma-rise linear both;
    animation-timeline:view();
    animation-range:entry 0% cover 28%;
  }
  @keyframes ma-rise { from { opacity:.42; transform:translateY(30px); } to { opacity:1; transform:translateY(0); } }
}
@supports (view-transition-name: none) {
  @view-transition { navigation: auto; }
  .ma-site-header { view-transition-name:ma-header; }
}
@media (max-width: 1180px) {
  .ma-hero-copy { padding-left:34px; padding-right:30px; }
  .ma-hero-masthead { gap:14px; }
  .ma-hero-masthead .brand-symbol { width:62px; height:80px; }
  .ma-hero-masthead-text { padding-left:16px; }
  .ma-huge-name { font-size:clamp(23px,3.1vw,36px); letter-spacing:.14em; }
  .ma-hero-content { grid-template-columns:92px minmax(0,1fr); gap:23px; }
  .ma-side-manifesto span { font-size:9px; }
  .ma-hero-intro h1 { font-size:clamp(32px,3.7vw,46px); }
  .ma-evidence-heading { gap:38px; }
  .ma-pillar { min-height:470px; }
  .ma-pillar-label { font-size:15px; }
}
@media (max-width: 930px) {
  .cinematic-home header .nav { width:min(calc(100% - 32px),1520px); min-height:69px; }
  .cinematic-home header .brand-copy strong { font-size:14px; letter-spacing:.12em; }
  .cinematic-home header .brand-copy span { font-size:6.5px; }
  .ma-hero { grid-template-columns:1fr; }
  .ma-hero-copy { padding:48px 6vw 0; min-height:610px; }
  .ma-hero-masthead { justify-content:flex-start; }
  .ma-hero-content { grid-template-columns:125px minmax(0,1fr); padding-top:45px; }
  .ma-hero-intro h1 { font-size:clamp(39px,6vw,66px); }
  .ma-huge-name { font-size:clamp(27px,6vw,50px); }
  .ma-hero-image { height:430px; }
  .ma-hero-image>img { min-height:430px; }
  .ma-wall-copy { top:26%; right:10%; font-size:clamp(14px,2.7vw,23px); }
  .ma-section-intro,.ma-evidence-heading { grid-template-columns:1fr; gap:15px; }
  .ma-section-intro>p { justify-self:start; max-width:760px; }
  .ma-pillar-grid { grid-template-columns:repeat(2,1fr); }
  .ma-pillar { min-height:360px; }
  .ma-evidence-grid { grid-template-columns:1fr; }
  .ma-case { position:static; min-height:0; }
  .ma-case-big span { font-size:120px; }
  .ma-offer-section { grid-template-columns:1fr; }
  .ma-offer-left { padding:85px 7vw; }
  .ma-offer-right { border-left:0; border-top:1px solid #d2d5d5; }
}
@media (max-width:620px) {
  .cinematic-home .brand-copy strong { font-size:13px; }
  .cinematic-home header .brand-symbol { width:32px; height:41px; }
  .cinematic-home header .brand-copy span { display:none; }
  .cinematic-home header .brand .brand-symbol + .brand-copy { padding-left:9px; }
  .ma-hero-copy { padding:32px 21px 0; min-height:auto; }
  .ma-hero-masthead { gap:12px; padding-bottom:23px; }
  .ma-hero-masthead .brand-symbol { width:47px; height:62px; }
  .ma-huge-name { font-size:clamp(21px,6.25vw,34px); letter-spacing:.12em; }
  .ma-hero-tagline { font-size:6.3px; letter-spacing:.16em; white-space:normal; }
  .ma-hero-masthead-text { padding-left:12px; }
  .ma-hero-content { display:block; padding:32px 0 30px; }
  .ma-side-manifesto { display:none; }
  .ma-hero-intro h1 { font-size:clamp(36px,9.5vw,53px); margin:15px 0 17px; }
  .ma-hero-intro p:not(.ma-prelaunch-note) { font-size:14px; line-height:1.82; }
  .ma-overline { font-size:9px; }
  .ma-action-group { align-items:stretch; }
  .ma-action-group .ma-cta { width:100%; }
  .ma-hero-bottom { font-size:7.6px; padding:14px 0; }
  .ma-hero-image { height:315px; }
  .ma-hero-image>img { min-height:315px; }
  .ma-wall-copy { font-size:12px; top:24%; right:6%; gap:8px; }
  .ma-scene-stamp { font-size:7px; }
  .ma-principle-line { grid-template-columns:1fr 1fr; }
  .ma-principle-line span { font-size:9px; padding:18px 11px; border-bottom:1px solid #e1e2e2; }
  .ma-approach-section,.ma-evidence-section { padding:74px 20px; }
  .ma-section-intro,.ma-evidence-heading { margin-bottom:34px; }
  .ma-section-intro h2,.ma-evidence-heading h2 { font-size:clamp(36px,9vw,52px); }
  .ma-section-intro>p,.ma-evidence-heading>p { font-size:14px; }
  .ma-pillar-grid { grid-template-columns:1fr; }
  .ma-pillar { min-height:320px; padding:22px; }
  .ma-pillar-art svg { height:110px; }
  .ma-pillar-art { padding:8px 0; }
  .ma-pillar>p { max-width:none; }
  .ma-cinematic-break { min-height:390px; }
  .ma-break-grid { padding:78px 25px; }
  .ma-break-grid p { font-size:clamp(33px,8.5vw,52px); }
  .ma-case { padding:26px 24px; }
  .ma-case-big span { font-size:98px; }
  .ma-evidence-grid { gap:15px; }
  .ma-result summary { grid-template-columns:26px minmax(0,1fr) 30px; gap:9px; min-height:126px; padding:19px 0; }
  .ma-result-index { font-size:10px; }
  .ma-result-copy strong { font-size:clamp(21px,5.4vw,29px); }
  .ma-result-copy small { font-size:8.6px; }
  .ma-result-copy em { font-size:12px; }
  .ma-result-toggle { width:28px; height:28px; font-size:24px; }
  .ma-result .insight-body { padding:0 15px 25px 35px; }
  .ma-evidence-actions .ma-cta { width:100%; }
  .ma-offer-left { padding:75px 24px; }
  .ma-offer-left h2 { font-size:clamp(37px,9vw,52px); }
  .ma-offer-right { padding:55px 24px; }
  .ma-offer-price { font-size:clamp(70px,17vw,100px); }
  .ma-offer-details div { grid-template-columns:25px 93px 1fr; }
  .ma-final-section { grid-template-columns:1fr; padding:80px 25px; }
  .ma-final-main h2 { font-size:clamp(43px,11vw,68px); }
  .ma-final-main p { font-size:16px; }
  .ma-final-symbol { display:none; }
  .ma-footer { grid-template-columns:1fr; padding:50px 25px 25px; gap:27px; }
  .ma-footer-links { justify-content:flex-start; }
}
@media (max-width:360px) {
  .ma-huge-name { font-size:20px; }
  .cinematic-home .mobile-sample { padding:0 5px; font-size:12px; }
  .cinematic-home .mobile-menu>summary { padding:0 9px; }
  .cinematic-home header .brand-copy strong { font-size:11px; }
}
@media (prefers-reduced-motion:reduce) {
 .ma-hero-image>img,.ma-cta,.ma-cta span,.ma-pillar:before,.ma-pillar-art svg,.ma-result-toggle,.ma-text-arrow span { transition:none!important; transform:none!important; }
 .ma-scroll-progress { display:none!important; }
 .ma-section-intro h2,.ma-pillar,.ma-break-grid p,.ma-evidence-heading h2,.ma-offer-left h2 { animation:none!important; opacity:1!important; transform:none!important; }
}

/* Independent browser review repair 01:
   narrow navigation must size to available width and dark labels
   must meet WCAG text contrast on near-white surfaces. */
.legal-note { color:#50585d; }
.status.insufficient { color:#445057; }
.ma-prelaunch-note { color:#50595f; }
.ma-section-intro h2 span,.ma-evidence-heading h2 span,.ma-offer-left h2 span { color:#636a6e; }
.ma-pillar-heading small { color:#52595e; }
.ma-pillar-meta { color:#4a5257; }
@media (max-width:800px) {
  header .nav > .brand { flex:0 1 auto; min-width:0; overflow:hidden; }
  header .nav .brand-copy { min-width:0; }
  header .nav .brand-copy strong { font-size:13px; letter-spacing:.09em; white-space:nowrap; }
  header .nav .brand-copy span { display:none; }
  header .nav .brand-symbol { flex:0 0 auto; width:32px; height:42px; }
  header .nav .brand .brand-symbol + .brand-copy { padding-left:8px; }
  header .nav .mobile-tools { flex:0 0 auto; }
}
@media (max-width:375px) {
  header .nav .brand-copy strong { font-size:11px; letter-spacing:.06em; }
  header .nav .brand-symbol { width:26px; height:37px; }
  header .nav .brand { gap:3px; }
  header .nav .mobile-tools { gap:1px; }
  header .nav .mobile-sample { font-size:11px; padding:0 6px; }
  header .nav .mobile-menu > summary { padding:0 10px; }
}

/* Browser accessibility review repair 02: fine-print contrast.
   Maintain the deliberately restrained grayscale rather than fading content. */
.ma-result-copy small { color:#545d61; }
.ma-offer-details div>span { color:#495257; }
.ma-offer-right>small { color:#505a5e; }
.ma-footer-brand small { color:#525b60; }

/* Progressive native disclosure easing, no JavaScript. Falls back to
   standard accessible <details> behavior on browsers without support. */
@supports selector(details::details-content) {
  .ma-result { interpolate-size: allow-keywords; }
  .ma-result::details-content {
    block-size:0;
    opacity:0;
    overflow:clip;
    transition:block-size .45s cubic-bezier(.2,.8,.2,1),
               opacity .32s ease,
               content-visibility .45s allow-discrete;
  }
  .ma-result[open]::details-content {
    block-size:auto;
    opacity:1;
  }
}
@media (prefers-reduced-motion:reduce) {
  .ma-result::details-content { transition:none!important; }
}

/* Final footer microcopy contrast correction (both viewport categories). */
.ma-footer-bottom { color:#505a5f; }

/* QUOTE-FIRST / THE EVIDENCE FIELD
   Founder's Oct 10 art direction: slogan in wordmark, mission statement
   down in the industrial hero. Purposeful native interaction, no scripts. */
.ma-scene-layer {
  position:absolute;
  z-index:3;
  inset:0;
  color:#fff;
  pointer-events:none;
  isolation:isolate;
}
.ma-scene-layer:before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(7,11,14,.04) 0%,transparent 42%,rgba(3,6,9,.14) 58%,rgba(3,6,9,.6) 100%);
  pointer-events:none;
}
.ma-scene-layer:after {
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:rgba(250,250,250,.75);
  opacity:.7;
  box-shadow:0 2px 24px rgba(255,255,255,.5);
  animation:ma-field-scan 11s cubic-bezier(.36,.1,.3,1) infinite alternate;
  pointer-events:none;
}
@keyframes ma-field-scan {
  0%,15% { top:11%; opacity:0; }
  22% { opacity:.45; }
  67% { top:67%; opacity:.18; }
  82%,100% { top:67%; opacity:0; }
}
.ma-scene-index {
  position:absolute;
  left:4.2%;
  top:7%;
  display:flex;
  flex-direction:column;
  gap:7px;
  border-left:1px solid rgba(255,255,255,.75);
  padding:2px 0 2px 13px;
  font:740 9px/1.5 var(--sans);
  letter-spacing:.18em;
  text-shadow:0 1px 9px #080e11;
}
.ma-scene-index span:last-child { opacity:.8; font-weight:490; }
.ma-scene-insights {
  position:absolute;
  right:5.5%;
  top:13%;
  width:min(365px,69%);
  border-top:1px solid rgba(255,255,255,.87);
  color:#10171b;
  background:rgba(246,248,247,.91);
  backdrop-filter:blur(16px) saturate(75%);
  -webkit-backdrop-filter:blur(16px) saturate(75%);
  box-shadow:0 21px 55px rgba(2,7,10,.12);
  pointer-events:auto;
}
.ma-scene-step { padding:0; border:0; border-bottom:1px solid rgba(23,34,40,.19); }
.ma-scene-step:last-child { border:0; }
.ma-scene-step summary {
  min-height:53px;
  display:grid;
  grid-template-columns:29px minmax(0,1fr) 18px;
  align-items:center;
  gap:11px;
  padding:11px 16px;
  background:transparent;
  cursor:pointer;
  list-style:none;
  transition:background .3s ease,color .3s ease;
}
.ma-scene-step summary::-webkit-details-marker { display:none; }
.ma-scene-step summary::marker { content:""; }
.ma-scene-step summary:hover,.ma-scene-step[open] summary {
  background:rgba(218,223,223,.45);
}
.ma-step-seq {
  font:760 11px/1 var(--display);
  color:#4c545a;
}
.ma-scene-step summary strong {
  font:700 10px/1.5 var(--sans);
  letter-spacing:.13em;
}
.ma-step-cross {
  font:430 20px/1 var(--sans);
  justify-self:end;
  transition:transform .25s ease;
}
.ma-scene-step[open] .ma-step-cross { transform:rotate(45deg); }
.ma-scene-step p {
  max-width:none;
  margin:0;
  padding:0 16px 19px 55px;
  font:480 12px/1.65 var(--sans);
  color:#354147;
}
.ma-scene-step summary:focus-visible {
  outline:3px solid #090f13;
  outline-offset:-5px;
}
.ma-scene-manifesto {
  position:absolute;
  left:5.5%;
  right:5.5%;
  bottom:69px;
  padding:22px 26px 25px;
  background:rgba(9,14,18,.84);
  backdrop-filter:blur(15px);
  -webkit-backdrop-filter:blur(15px);
  box-shadow:0 16px 45px rgba(0,0,0,.13);
  border:1px solid rgba(255,255,255,.24);
  transition:background .42s ease,transform .42s cubic-bezier(.2,.8,.2,1);
}
.ma-scene-manifesto:hover { background:rgba(6,11,14,.94); transform:translateY(-3px); }
.ma-manifesto-kicker {
  display:block;
  color:#d5dfe2;
  font:740 9px/1.5 var(--sans);
  letter-spacing:.19em;
}
.ma-scene-manifesto p {
  display:flex;
  flex-wrap:wrap;
  gap:0 .36em;
  max-width:100%;
  margin:12px 0 16px;
  color:#fff;
  font:530 clamp(23px,2.45vw,42px)/1.19 var(--display);
  letter-spacing:-.055em;
  text-wrap:balance;
}
.ma-scene-manifesto p strong { font-weight:740; }
.ma-manifesto-line {
  display:block;
  width:37%;
  height:2px;
  background:#fff;
  transition:width .8s cubic-bezier(.2,.8,.2,1);
}
.ma-scene-manifesto:hover .ma-manifesto-line { width:100%; }
.ma-hero-image .ma-scene-stamp {
  z-index:4;
  bottom:23px;
  left:6%;
  right:6%;
  text-shadow:0 1px 5px rgba(0,0,0,.85);
}
.ma-offer-callout {
  font:570 clamp(37px,4.2vw,66px)/1.16 var(--display);
  letter-spacing:-.066em;
  margin:34px 0 20px;
}
.ma-offer-quote-action { margin-top:31px; display:grid; justify-items:start; gap:17px; }
.ma-offer-quote-action small { font:480 12px/1.75 var(--sans); color:#4b5458; max-width:540px; }
.ma-offer-quote-action .ma-cta { border-radius:0; }

@media (max-width:1150px) and (min-width:931px) {
  .ma-scene-insights { width:74%; top:10%; }
  .ma-scene-manifesto { padding:19px 22px; bottom:64px; }
  .ma-scene-manifesto p { font-size:clamp(20px,2.3vw,28px); }
}
@media (max-width:930px) {
  .ma-scene-insights { top:8%; right:5%; width:min(380px,65%); }
  .ma-scene-index { top:7%; left:5%; }
  .ma-scene-manifesto { left:5%; right:5%; bottom:52px; padding:17px 23px; }
  .ma-scene-manifesto p { margin:7px 0 11px; font-size:clamp(24px,3.9vw,38px); }
  .ma-manifesto-kicker { font-size:8px; }
  .ma-hero-image .ma-scene-stamp { bottom:17px; }
}
@media (max-width:620px) {
  .ma-hero-image { height:480px; }
  .ma-hero-image>img { min-height:480px; }
  .ma-scene-index { display:none; }
  .ma-scene-insights { top:7%; right:5%; left:5%; width:auto; }
  .ma-scene-step summary { min-height:43px; padding:9px 12px; grid-template-columns:24px 1fr 15px; }
  .ma-scene-step summary strong { font-size:10px; }
  .ma-scene-step p { padding:0 12px 10px 46px; font-size:11px; }
  .ma-scene-manifesto { bottom:57px; left:5%; right:5%; padding:18px; }
  .ma-scene-manifesto p { font-size:clamp(23px,6.6vw,36px); line-height:1.16; }
  .ma-manifesto-kicker { font-size:8px; }
  .ma-hero-image .ma-scene-stamp { font-size:7px; bottom:18px; }
  .ma-hero-image .ma-scene-stamp span { max-width:75%; }
  .ma-offer-callout { font-size:clamp(36px,10vw,52px); }
}
@media (prefers-reduced-transparency:reduce) {
  .ma-scene-insights { background:#f4f5f3; backdrop-filter:none; }
  .ma-scene-manifesto { background:#0c1114; backdrop-filter:none; }
}
@media (prefers-reduced-motion:reduce) {
  .ma-scene-layer:after { animation:none!important; display:none; }
  .ma-scene-manifesto,.ma-manifesto-line,.ma-step-cross { transition:none!important; }
  .ma-scene-manifesto:hover { transform:none!important; }
}
@supports selector(details::details-content) {
  .ma-scene-step { interpolate-size: allow-keywords; }
  .ma-scene-step::details-content {
    block-size:0;
    overflow:clip;
    opacity:0;
    transition:block-size .32s cubic-bezier(.2,.8,.2,1),opacity .26s ease,content-visibility .32s allow-discrete;
  }
  .ma-scene-step[open]::details-content { block-size:auto; opacity:1; }
  @media (prefers-reduced-motion:reduce) {
    .ma-scene-step::details-content { transition:none!important; }
  }
}

/* Final hero visual polish: suppress legacy global summary glyph.
   Native probe owns its one deliberate +/- indicator. */
.ma-scene-step summary::after,
.ma-scene-step summary::before {
  content:none!important;
  display:none!important;
}
.ma-scene-step summary .ma-step-cross { flex:none; }

/* Makoto Arc public communications: separate business inquiries from
   executive correspondence, with no unverified phone number displayed. */
.contact-inbox-stack { min-width:0; display:grid; gap:16px; }
.contact-inbox-stack .contact-card {
  min-width:0; position:relative; border-radius:3px;
  background:#fff; padding:clamp(23px,3.4vw,37px);
  box-shadow:none;
}
.contact-primary { border-top:3px solid #171b1d!important; }
.contact-executive { background:#f0f1ef!important; }
.contact-inbox-stack .contact-card h3 {
  font:600 clamp(22px,2.3vw,30px)/1.25 var(--display);
  letter-spacing:-.035em; margin:13px 0 4px;
}
.contact-inbox-stack .contact-email {
  display:inline-flex; align-items:baseline; gap:12px;
  max-width:100%; font:600 clamp(18px,2vw,26px)/1.4 var(--display);
  letter-spacing:-.038em; color:#12181c; overflow-wrap:anywhere;
  padding-bottom:4px; border-bottom:1px solid #82888a;
  transition:border-color .3s ease,transform .3s ease;
}
.contact-inbox-stack .contact-email:hover {
  border-color:#12181c; transform:translateX(3px);
}
.contact-inbox-stack .contact-email>span { font-size:16px; }
.contact-inbox-stack .microcopy { color:#535d62; line-height:1.8; }
.contact-inbox-stack .notice { color:#30393e; }
.contact-inbox-stack .executive-title { margin:8px 0 4px; font-size:12px; letter-spacing:.09em; text-transform:uppercase; color:#535d62; font-weight:700; }
.contact-inbox-stack .executive-email { font-size:clamp(16px,1.7vw,22px); }
.contact-region {
  margin:0; padding:16px 4px 0; display:flex; justify-content:space-between;
  flex-wrap:wrap; gap:9px 15px; border-top:1px solid #c5cbcc;
  color:#495358; font-size:12px;
}
.contact-region strong { color:#1e2529; font-size:10px; letter-spacing:.14em; text-transform:uppercase; }
@media (max-width:620px) {
  .contact-inbox-stack .contact-card { padding:23px 18px; }
  .contact-inbox-stack .contact-email { font-size:clamp(16px,5vw,22px); }
  .contact-inbox-stack .executive-email { font-size:clamp(15px,4.7vw,20px); }
}

/* Founder-provided business phone: staged on unpublished contact page.
   Tap-to-call is platform native, with an explicit verification notice. */
.contact-telephone {
  border-top:2px solid #9fa6a8!important;
  background:linear-gradient(145deg,#f6f7f6,#eef0ef)!important;
}
.contact-inbox-stack .business-phone {
  font-variant-numeric:tabular-nums;
  font-size:clamp(23px,2.6vw,34px);
  letter-spacing:-.04em;
  min-height:44px;
  align-items:center;
}
.contact-telephone .microcopy { max-width:640px; }
@media (max-width:620px) {
  .contact-inbox-stack .business-phone { font-size:clamp(23px,6vw,30px); }
}

/* Public informational prelaunch, distinct from the full commercial site. */
.ma-public-prelaunch-banner {
  min-height:46px; background:#111517; color:#f9faf9; display:flex; align-items:center;
  justify-content:space-between; flex-wrap:wrap; gap:10px 22px; padding:11px clamp(20px,5vw,80px);
  font:550 11px/1.6 var(--sans); letter-spacing:.04em;
}
.ma-public-prelaunch-banner strong { letter-spacing:.16em; font-size:10px; }
.ma-public-prelaunch-banner span { color:#d8dcdc; }
.ma-public-prelaunch-banner a { color:white; text-decoration:none; border-bottom:1px solid #adb4b5; white-space:nowrap; }
.ma-public-contact .ma-offer-left p strong { color:#101518; }
.ma-public-contact-panel .ma-offer-callout { font-size:clamp(39px,4.4vw,67px); }
.ma-public-contacts { display:grid; gap:20px; margin-top:38px; border-top:1px solid #bac0c2; padding-top:22px; }
.ma-public-contacts>div { display:grid; align-content:start; justify-items:start; gap:7px; border-bottom:1px solid #c4c9ca; padding-bottom:15px; min-width:0; }
.ma-public-contacts span { font-size:10px; font-weight:750; letter-spacing:.16em; color:#424a4e; }
.ma-public-contacts strong { font:580 20px/1.5 var(--display); }
.ma-public-contacts a { color:#101719; font:600 clamp(16px,1.8vw,24px)/1.5 var(--display); letter-spacing:-.035em; text-decoration:none; text-underline-offset:6px; overflow-wrap:anywhere; }
.ma-public-contacts a:hover { text-decoration:underline; }
.ma-public-contacts small { color:#4f575a; font-size:11px; }
.ma-public-contact-limit { color:#454f53; font-size:13px!important; border-left:2px solid #161b1e; padding-left:16px; margin-top:24px; }
.ma-public-disclosure { background:#fff; padding:clamp(65px,8vw,120px) 6vw; border-top:1px solid #d3d7d8; }
.ma-public-disclosure-inner { max-width:1400px; margin:auto; }
.ma-public-disclosure h2 { font:570 clamp(40px,5vw,80px)/1.15 var(--display); letter-spacing:-.07em; margin:22px 0 34px; }
.ma-public-disclosure h2 span { color:#60696d; }
.ma-public-disclosure-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px 70px; border-top:1px solid #bdc3c4; padding-top:20px; }
.ma-public-disclosure-grid p { margin:0; color:#455055; line-height:1.9; font-size:15px; }
.ma-public-disclosure-grid strong { color:#161c1f; }
.ma-public-disclosure-foot { color:#465054; font-size:12px; line-height:1.75; margin-top:34px; border-top:1px solid #d1d6d7; padding-top:15px; }
.ma-public-disclosure-foot a { color:#182024; }
@media (max-width:700px) {
 .ma-public-prelaunch-banner { justify-content:flex-start; gap:3px 12px; padding:12px 20px; font-size:10px; }
 .ma-public-prelaunch-banner span { flex:1 1 100%; }
 .ma-public-prelaunch-banner a { margin-top:2px; }
 .ma-public-disclosure-grid { grid-template-columns:1fr; gap:18px; }
 .ma-public-disclosure { padding:70px 22px; }
}
