/* ============================================================
   X Tech · dark instrument system
   Monochrome by rule. The only colour on this page belongs to
   a real app icon, never to the site chrome.
   ============================================================ */

:root{
  --bg:        #050506;
  --bg-2:      #0a0a0c;
  --surface:   #0e0e11;
  --surface-2: #131317;
  --ink:       #f2f2f4;
  --ink-2:     #d2d2d8;
  --muted:     #8b8b95;
  --muted-2:   #63636d;
  --line:      rgba(255,255,255,.10);
  --line-soft: rgba(255,255,255,.055);
  --glow:      rgba(255,255,255,.05);

  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 18px;

  --sans: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text",
          "Helvetica Neue", "Inter", system-ui, sans-serif;
  --mono: ui-monospace, "SF Mono", "SFMono-Regular", "JetBrains Mono", Menlo, monospace;

  --ease: cubic-bezier(.22,.61,.36,1);
  --ease-out: cubic-bezier(.16,1,.3,1);

  --gut: clamp(20px, 4.5vw, 44px);
  --maxw: 1280px;
  --rail: 168px;
}

*,*::before,*::after{ box-sizing:border-box; }

html{
  -webkit-text-size-adjust:100%;
  scroll-behavior:smooth;
  scroll-padding-top:86px;
  background:var(--bg);
}

body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.5;
  letter-spacing:-.011em;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

img,svg{ display:block; max-width:100%; }
a{ color:inherit; text-decoration:none; }
h1,h2,h3,h4,h5{ margin:0; font-weight:550; letter-spacing:-.032em; line-height:1.05; }
p{ margin:0; }
ul,ol,dl,dd{ margin:0; padding:0; list-style:none; }
table{ border-collapse:collapse; }

::selection{ background:var(--ink); color:var(--bg); }

.wrap{
  width:100%; max-width:var(--maxw);
  margin-inline:auto; padding-inline:var(--gut);
}

/* engineering field: hairline grid + vignette, barely there */
.field{
  position:fixed; inset:0; z-index:0; pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(120% 85% at 50% 0%, #000 0%, transparent 72%);
  mask-image:radial-gradient(120% 85% at 50% 0%, #000 0%, transparent 72%);
}


/* ═══════════════ NAV ═══════════════ */
.nav{
  position:fixed; top:0; left:0; right:0; z-index:150;
  border-bottom:1px solid transparent;
  transition:background .45s var(--ease), border-color .45s var(--ease);
}
.nav.is-stuck{
  background:rgba(5,5,6,.72);
  backdrop-filter:saturate(150%) blur(18px);
  -webkit-backdrop-filter:saturate(150%) blur(18px);
  border-bottom-color:var(--line-soft);
}
.nav-inner{
  max-width:var(--maxw); margin-inline:auto;
  padding:0 var(--gut); height:70px;
  display:flex; align-items:center; gap:32px;
}

.brand{ display:flex; align-items:center; gap:10px; flex:none; }
.brand-text{ font-size:15.5px; font-weight:600; letter-spacing:-.025em; }

.nav-links{ display:flex; gap:26px; margin-left:auto; align-items:center; }
.nav-links a{
  display:inline-flex; align-items:baseline; gap:7px;
  font-size:14px; color:var(--muted);
  transition:color .25s var(--ease);
}
.nav-links a em{
  font-style:normal; font-family:var(--mono); font-size:10px;
  letter-spacing:.06em; color:var(--muted-2);
  transition:color .25s var(--ease);
}
.nav-links a:hover,
.nav-links a.is-active{ color:var(--ink); }
.nav-links a:hover em,
.nav-links a.is-active em{ color:var(--ink); }

.nav-toggle{
  display:none; margin-left:auto;
  width:38px; height:38px; border:1px solid var(--line); border-radius:9px;
  background:transparent; cursor:pointer;
  flex-direction:column; justify-content:center; align-items:center; gap:5px;
}
.nav-toggle span{ width:15px; height:1.5px; background:var(--ink); transition:transform .3s var(--ease); }
.nav-toggle[aria-expanded="true"] span:first-child{ transform:translateY(3.25px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] span:last-child{ transform:translateY(-3.25px) rotate(-45deg); }

.nav-sheet{
  display:none; flex-direction:column;
  background:rgba(5,5,6,.96);
  backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid var(--line-soft);
  overflow:hidden; max-height:0; transition:max-height .45s var(--ease-out);
}
.nav-sheet a{
  display:flex; align-items:baseline; gap:12px;
  padding:15px var(--gut); font-size:19px; font-weight:500; letter-spacing:-.025em;
  border-top:1px solid var(--line-soft);
}
.nav-sheet a em{ font-style:normal; font-family:var(--mono); font-size:11px; color:var(--muted-2); }
.nav-sheet.is-open{ max-height:360px; }

/* ═══════════════ BUTTONS ═══════════════ */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  height:46px; padding:0 22px; border-radius:100px;
  font-size:15px; font-weight:500; letter-spacing:-.012em;
  border:1px solid transparent; cursor:pointer; white-space:nowrap;
  transition:transform .3s var(--ease-out), background .25s, border-color .25s,
             box-shadow .35s, color .25s;
}
.btn-sm{ height:34px; padding:0 16px; font-size:13.5px; flex:none;
  background:var(--ink); color:var(--bg); font-weight:550; }
.btn-lg{ height:54px; padding:0 30px; font-size:16px; }

.btn-primary{ background:var(--ink); color:var(--bg); font-weight:550; }
.btn-primary:hover{ background:#e4e4e8; }

.btn-sm:hover{ background:#e4e4e8; }

.btn-ghost{ background:transparent; color:var(--ink); border-color:var(--line); }
.btn-ghost:hover{ background:var(--surface); border-color:rgba(255,255,255,.28); }
.btn-arrow{ width:16px; height:16px; transition:transform .3s var(--ease-out); }
.btn-ghost:hover .btn-arrow{ transform:translateX(3px); }

/* ═══════════════ SHARED BITS ═══════════════ */
.eyebrow{
  display:inline-flex; align-items:center; gap:9px;
  font-family:var(--mono); font-size:10.5px; letter-spacing:.15em;
  text-transform:uppercase; color:var(--muted);
}
.eyebrow b{ color:var(--muted-2); font-weight:400; }
.dot{
  width:6px; height:6px; border-radius:50%; background:var(--muted);
  box-shadow:0 0 0 3px rgba(255,255,255,.07);
}

.live{
  display:inline-flex; align-items:center; gap:6px; flex:none;
  height:24px; padding:0 10px; border-radius:100px;
  border:1px solid var(--line); background:var(--surface);
  font-family:var(--mono); font-size:9.5px; letter-spacing:.12em;
  text-transform:uppercase; color:var(--ink-2);
}
.live::before{
  content:""; width:5px; height:5px; border-radius:50%; background:var(--ink);
}
.live-off{ color:var(--muted-2); }
.live-off::before{ background:var(--muted-2); box-shadow:none; }

/* app icon plinth: keeps a black icon readable on a black page */
.tile{
  flex:none; display:grid; place-items:center;
  width:54px; height:54px; border-radius:23.5%;
  background:#000; border:1px solid var(--line);
  overflow:hidden;
  box-shadow:0 10px 26px -12px rgba(0,0,0,.9);
  transition:transform .5s var(--ease-out), border-color .4s, box-shadow .5s var(--ease-out);
}
.tile img{ width:100%; height:100%; border-radius:inherit; }
.tile-lg{ width:76px; height:76px; }
.tile-empty{
  background:transparent; border-style:dashed; border-color:rgba(255,255,255,.16);
  font-family:var(--mono); font-size:14px; color:var(--muted-2); box-shadow:none;
}

/* ═══════════════ HERO ═══════════════ */
.hero{
  position:relative; z-index:1;
  padding:clamp(126px, 16vh, 178px) 0 clamp(56px, 7vw, 88px);
}
.hero-grid{
  display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:clamp(36px, 5vw, 72px); align-items:center;
}

h1{
  margin-top:26px; max-width:16ch;
  font-size:clamp(38px, 4.7vw, 62px);
  letter-spacing:-.04em; line-height:1.06; font-weight:550;
}

.lede{
  margin-top:26px; max-width:52ch;
  font-size:clamp(16px, 1.3vw, 18.5px);
  line-height:1.6; color:var(--muted);
}
.cta-row{ display:flex; flex-wrap:wrap; gap:11px; margin-top:34px; }

/* ── ledger ── */
.ledger{
  border:1px solid var(--line); border-radius:var(--r-lg);
  background:linear-gradient(180deg, var(--surface) 0%, var(--bg-2) 100%);
  overflow:hidden;
  box-shadow:0 40px 80px -50px rgba(0,0,0,1);
}
.ledger-head{
  display:flex; align-items:center; justify-content:space-between;
  padding:15px 20px; border-bottom:1px solid var(--line-soft);
  font-family:var(--mono); font-size:10px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--muted-2);
}
.ledger-count i{ font-style:normal; opacity:.5; }

.row{
  display:grid; grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center; gap:16px;
  padding:16px 20px; border-bottom:1px solid var(--line-soft);
  transition:background .3s var(--ease);
}
.row:last-child{ border-bottom:0; }
a.row:hover{ background:rgba(255,255,255,.035); }
a.row:hover .tile{ border-color:rgba(255,255,255,.24); }

.row-id{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.row-id b{ font-size:16px; font-weight:550; letter-spacing:-.025em; }
.row-id i{ font-style:normal; font-size:13px; color:var(--muted); }

.row-meta{ display:flex; flex-direction:column; align-items:flex-end; gap:7px; flex:none; }
.row-meta em{
  font-style:normal; font-family:var(--mono); font-size:9.5px;
  letter-spacing:.1em; text-transform:uppercase; color:var(--muted-2);
}
.row-empty .row-id b{ color:var(--muted); }

/* ═══════════════ BANDS ═══════════════ */
.band{ position:relative; z-index:1; padding:clamp(80px, 10vw, 136px) 0; }
.band-alt{ background:var(--bg-2); border-block:1px solid var(--line-soft); }

.band-grid{ display:grid; grid-template-columns:var(--rail) minmax(0,1fr); gap:0; }
.band-index{
  position:sticky; top:104px; align-self:start;
  display:flex; flex-direction:column; gap:8px;
  padding-right:28px;
}
.band-index span{
  font-family:var(--mono); font-size:11px; letter-spacing:.1em; color:var(--muted-2);
  padding-bottom:8px; border-bottom:1px solid var(--line);
}
.band-index i{
  font-style:normal; font-family:var(--mono); font-size:11px;
  letter-spacing:.16em; text-transform:uppercase; color:var(--ink-2);
}

.band-body h2{ font-size:clamp(30px, 3.7vw, 50px); letter-spacing:-.04em; font-weight:550; }
.band-sub{
  margin-top:22px; max-width:60ch;
  font-size:clamp(15.5px, 1.25vw, 17.5px); color:var(--muted); line-height:1.62;
}

/* ═══════════════ UNITS (portfolio) ═══════════════ */
.unit{
  margin-top:44px;
  border:1px solid var(--line); border-radius:var(--r-lg);
  background:var(--surface);
  overflow:hidden; position:relative;
  transition:border-color .4s var(--ease), box-shadow .5s var(--ease-out), transform .5s var(--ease-out);
}
.unit:hover{ border-color:rgba(255,255,255,.22); }

.unit-head{
  display:flex; align-items:center; gap:16px;
  padding:24px 26px; border-bottom:1px solid var(--line-soft);
}
.unit-head h3{ font-size:clamp(21px, 2vw, 27px); letter-spacing:-.035em; }
.unit-head .live{ margin-left:auto; align-self:flex-start; }
.unit-meta{
  display:inline-flex; align-items:center; gap:9px; margin-top:7px;
  font-family:var(--mono); font-size:10px; letter-spacing:.13em;
  text-transform:uppercase; color:var(--muted-2);
}
.unit-meta i{ width:3px; height:3px; border-radius:50%; background:var(--muted-2); }

.unit-body{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  gap:clamp(24px, 3vw, 44px); padding:26px; }
.unit-copy{ font-size:16px; line-height:1.62; color:var(--muted); }
.unit-sm .unit-copy{ padding:24px 26px 0; font-size:15px; }

.points{ display:grid; gap:1px; background:var(--line-soft);
  border:1px solid var(--line-soft); border-radius:var(--r-md); overflow:hidden; }
.points > div{ background:var(--surface); padding:14px 16px; transition:background .3s; }
.unit:hover .points > div{ background:var(--surface-2); }
.points dt{ font-size:13.5px; font-weight:600; letter-spacing:-.015em; color:var(--ink); }
.points dd{ margin-top:4px; font-size:13px; color:var(--muted); line-height:1.5; }
.points-tight{ margin:22px 26px 26px; }

/* envelope spec block */
.envelope{ margin:0 26px 26px; border:1px solid var(--line-soft);
  border-radius:var(--r-md); background:var(--bg); overflow:hidden; }
.envelope figcaption{
  display:flex; flex-wrap:wrap; align-items:baseline; gap:10px;
  padding:13px 18px; border-bottom:1px solid var(--line-soft);
}
.env-title{ font-size:13.5px; font-weight:600; letter-spacing:-.02em; }
.env-note{ font-family:var(--mono); font-size:9.5px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--muted-2); }
.env-scroll{ overflow-x:auto; }
.env-table{ width:100%; font-family:var(--mono); font-size:11.5px; white-space:nowrap; }
.env-table th{
  text-align:left; font-weight:400; padding:8px 18px;
  font-size:9px; letter-spacing:.16em; text-transform:uppercase; color:var(--muted-2);
  border-bottom:1px solid var(--line-soft);
}
.env-table td{ padding:6px 18px; color:var(--ink-2); border-bottom:1px solid rgba(255,255,255,.03); }
.env-table tbody tr:last-child td{ border-bottom:0; }
.env-table td:first-child, .env-table td:nth-child(2){ color:var(--muted-2); }
.env-table td:last-child{ color:var(--muted); }
.env-table tbody tr{ transition:background .2s; }
.env-table tbody tr:hover{ background:rgba(255,255,255,.035); }
.env-foot{ padding:13px 18px 15px; border-top:1px solid var(--line-soft);
  font-size:12.5px; line-height:1.55; color:var(--muted-2); }

.unit-pair{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.unit-pair .unit{ margin-top:16px; display:flex; flex-direction:column; }
.unit-pair .points-tight{ margin-top:auto; }

/* ═══════════════ PRINCIPLES ═══════════════ */
.principles{
  margin-top:44px;
  display:grid; grid-template-columns:1fr 1fr; gap:1px;
  background:var(--line-soft); border:1px solid var(--line-soft);
  border-radius:var(--r-lg); overflow:hidden;
}
.principle{ background:var(--bg-2); padding:28px 26px 30px; transition:background .4s var(--ease); }
.principle:hover{ background:var(--surface); }
.p-n{
  display:inline-block; margin-bottom:18px;
  font-family:var(--mono); font-size:10px; letter-spacing:.16em; color:var(--muted-2);
  padding:3px 8px; border:1px solid var(--line); border-radius:100px;
}
.principle h3{ font-size:17.5px; letter-spacing:-.028em; }
.principle p{ margin-top:11px; font-size:14.5px; color:var(--muted); line-height:1.58; }

/* ═══════════════ MATRIX ═══════════════ */
.matrix{ margin-top:16px; border:1px solid var(--line-soft);
  border-radius:var(--r-lg); overflow:hidden; background:var(--surface); }
.matrix-head{
  display:flex; flex-wrap:wrap; align-items:baseline; gap:12px;
  padding:20px 24px; border-bottom:1px solid var(--line-soft);
}
.m-title{ font-size:16px; font-weight:600; letter-spacing:-.025em; }
.m-note{ font-family:var(--mono); font-size:9.5px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--muted-2); }
.matrix-rows{ display:grid; grid-template-columns:repeat(3,1fr); }
.matrix-rows li{
  display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:15px 24px; font-size:14px; color:var(--ink-2);
  border-bottom:1px solid var(--line-soft); border-right:1px solid var(--line-soft);
  transition:background .25s;
}
.matrix-rows li:hover{ background:var(--surface-2); }
.matrix-rows li:nth-child(3n){ border-right:0; }
.matrix-rows li:nth-last-child(-n+3){ border-bottom:0; }
.matrix-rows b{
  font-family:var(--mono); font-size:9.5px; letter-spacing:.12em; text-transform:uppercase;
  padding:4px 9px; border-radius:100px; flex:none;
}
.matrix-rows .no{ background:transparent; color:var(--muted-2); border:1px solid var(--line); }
.matrix-rows .yes{ background:var(--ink); color:var(--bg); }

/* ═══════════════ FACTS + NUMBERS ═══════════════ */
.facts{
  margin-top:44px; display:grid; grid-template-columns:repeat(3,1fr); gap:1px;
  background:var(--line-soft); border:1px solid var(--line-soft);
  border-radius:var(--r-lg); overflow:hidden;
}
.facts > div{ background:var(--bg); padding:24px; transition:background .35s; }
.facts > div:hover{ background:var(--surface); }
.facts dt{
  font-family:var(--mono); font-size:10px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--muted-2);
}
.facts dd{ margin-top:11px; font-size:15px; color:var(--ink-2); line-height:1.58; }


/* ═══════════════ STEPS ═══════════════ */
.steps{ margin-top:44px; border-top:1px solid var(--line-soft); }
.steps li{
  display:grid; grid-template-columns:74px minmax(0,1fr);
  gap:20px; padding:26px 0;
  border-bottom:1px solid var(--line-soft);
  transition:padding-left .4s var(--ease), background .4s var(--ease);
}
.steps li:hover{ padding-left:14px; background:linear-gradient(90deg, rgba(255,255,255,.03), transparent 60%); }
.s-n{ font-family:var(--mono); font-size:11px; letter-spacing:.14em; color:var(--muted-2); padding-top:4px; }
.steps h3{ font-size:19px; letter-spacing:-.03em; }
.steps p{ margin-top:10px; max-width:70ch; font-size:14.5px; color:var(--muted); line-height:1.6; }

/* ═══════════════ CLOSER ═══════════════ */
.closer{
  position:relative; z-index:1;
  padding:clamp(96px, 12vw, 160px) 0;
  border-top:1px solid var(--line-soft);
  background:radial-gradient(64% 90% at 50% 100%, rgba(255,255,255,.045) 0%, transparent 70%);
}
.closer-inner{ max-width:760px; }
.closer h2{ margin-top:22px; font-size:clamp(30px, 4.2vw, 54px); letter-spacing:-.042em; font-weight:550; }
.closer p{ margin-top:22px; max-width:56ch; font-size:16.5px; color:var(--muted); line-height:1.6; }
.closer .cta-row{ margin-top:36px; }

/* ═══════════════ FOOTER ═══════════════ */
.foot{ position:relative; z-index:1; border-top:1px solid var(--line-soft);
  padding:64px 0 36px; background:var(--bg-2); }
.foot-top{ display:flex; flex-wrap:wrap; gap:48px; justify-content:space-between; }
.foot-brand{ max-width:34ch; }
.foot-brand p{ margin-top:16px; font-size:14px; color:var(--muted); line-height:1.6; }
.foot-nav{ display:flex; gap:clamp(32px, 6vw, 84px); }
.foot-nav div{ display:flex; flex-direction:column; gap:11px; }
.foot-nav h5{
  font-family:var(--mono); font-size:10px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--muted-2); font-weight:400; margin-bottom:3px;
}
.foot-nav a{ font-size:14px; color:var(--muted); transition:color .25s; }
.foot-nav a:hover{ color:var(--ink); }
.foot-bottom{
  margin-top:56px; padding-top:22px; border-top:1px solid var(--line-soft);
  display:flex; flex-wrap:wrap; gap:14px; justify-content:space-between;
  font-size:12.5px; color:var(--muted-2);
}
.foot-mono{ font-family:var(--mono); font-size:10px; letter-spacing:.14em; text-transform:uppercase; }

/* ═══════════════ REVEAL ═══════════════ */
.reveal{ opacity:0; transform:translateY(16px);
  transition:opacity .9s var(--ease-out), transform .9s var(--ease-out); }
.reveal.is-in{ opacity:1; transform:none; }
.reveal[data-d="1"]{ transition-delay:.07s; }
.reveal[data-d="2"]{ transition-delay:.14s; }
.reveal[data-d="3"]{ transition-delay:.21s; }
.reveal[data-d="4"]{ transition-delay:.28s; }

/* ═══════════════ RESPONSIVE ═══════════════ */
@media (max-width:1120px){
  :root{ --rail:120px; }
  .hero-grid{ grid-template-columns:1fr; gap:48px; }
  .lede{ max-width:64ch; }
  .unit-body{ grid-template-columns:1fr; }
}

@media (max-width:900px){
  .nav-links{ display:none; }
  .nav .btn-sm{ display:none; }
  .nav-toggle{ display:flex; }
  .nav-sheet{ display:flex; }
  .nav{ background:rgba(5,5,6,.85); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); }

  .band-grid{ grid-template-columns:minmax(0,1fr); }
  .band-index{
    position:static; flex-direction:row; align-items:center; gap:12px;
    padding:0 0 20px; margin-bottom:8px; border-bottom:1px solid var(--line);
  }
  .band-index span{ border-bottom:0; padding-bottom:0; }

  .unit-pair{ grid-template-columns:1fr; }
  .matrix-rows{ grid-template-columns:repeat(2,1fr); }
  .matrix-rows li:nth-child(3n){ border-right:1px solid var(--line-soft); }
  .matrix-rows li:nth-child(2n){ border-right:0; }
  .matrix-rows li:nth-last-child(-n+3){ border-bottom:1px solid var(--line-soft); }
  .matrix-rows li:last-child{ border-bottom:0; }

  .facts{ grid-template-columns:1fr; }
}

@media (max-width:680px){
  body{ font-size:16px; }
  .principles{ grid-template-columns:1fr; }
  .matrix-rows{ grid-template-columns:1fr; }
  .matrix-rows li{ border-right:0 !important; border-bottom:1px solid var(--line-soft) !important; }
  .matrix-rows li:last-child{ border-bottom:0 !important; }

  .row{ grid-template-columns:auto minmax(0,1fr); gap:13px; padding:14px 16px; }
  .row-meta{ grid-column:2; flex-direction:row; align-items:center; justify-content:flex-start; gap:10px; }
  .ledger-head{ padding:13px 16px; }

  .unit-head{ flex-wrap:wrap; padding:20px; }
  .unit-body, .envelope{ padding:20px; margin:0; }
  .envelope{ margin:0 20px 20px; padding:0; }
  .points-tight{ margin:20px; }
  .unit-sm .unit-copy{ padding:20px 20px 0; }

  .steps li{ grid-template-columns:1fr; gap:10px; }
  .cta-row .btn{ flex:1 1 100%; }
  .foot-top{ flex-direction:column; gap:36px; }
  .foot-nav{ flex-wrap:wrap; gap:30px 44px; }
}

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

/* admissao de limite embaixo da matriz */
.matrix-foot{
  padding:18px 24px 20px; border-top:1px solid var(--line-soft);
  font-size:13.5px; line-height:1.55; color:var(--muted-2); max-width:78ch;
}

/* ═══════════════ REVENUE ═══════════════ */
.revenue{
  margin-top:16px; padding:26px 24px;
  border:1px solid var(--line-soft); border-radius:var(--r-lg); background:var(--surface);
}
.revenue h3{ font-size:16px; letter-spacing:-.028em; }
.revenue p{ margin-top:12px; max-width:68ch; font-size:15px; line-height:1.62; color:var(--muted); }

/* ═══════════════ REASONS ═══════════════ */
.reasons{
  margin-top:26px; display:grid; gap:1px;
  background:var(--line-soft); border:1px solid var(--line-soft);
  border-radius:var(--r-lg); overflow:hidden; text-align:left;
}
.reasons > div{ background:var(--bg); padding:20px 22px; }
.reasons dt{
  font-family:var(--mono); font-size:10px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--muted-2);
}
.reasons dd{ margin-top:9px; font-size:15px; line-height:1.55; color:var(--ink-2); }
