@import url('/landing/assets/fonts.css');

:root {
  --paper: #f2efe7;
  --white: #fffdf7;
  --ink: #11110f;
  --muted: #5b5952;
  --line: #11110f;
  --line-soft: #c6c1b5;
  --yellow: #f2bd16;
  --blue: #1745b8;
  --red: #e53a2f;
  --green: #176447;
  --accent: var(--yellow);
  --display: 'Unbounded', 'Arial Narrow', sans-serif;
  --body: 'Onest', 'Segoe UI', sans-serif;
  --ease: cubic-bezier(.16, 1, .3, 1);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: var(--body);
  font-size: 16px;
  line-height: 1.62;
  accent-color: var(--blue);
}
body[data-accent='blue'] { --accent: var(--blue); }
body[data-accent='red'] { --accent: var(--red); }
body[data-accent='yellow'] { --accent: var(--yellow); }
body[data-accent='green'] { --accent: var(--green); }

::selection { color: var(--ink); background: var(--yellow); }
::-webkit-scrollbar { width: 12px; height: 12px; }
::-webkit-scrollbar-track { background: var(--yellow); }
::-webkit-scrollbar-thumb { background: var(--ink); border: 2px solid var(--yellow); }
* { scrollbar-color: var(--ink) var(--yellow); scrollbar-width: thin; }

a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: .22em; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--blue); outline-offset: 4px; }
[hidden] { display: none !important; }

.skip-link {
  position: fixed;
  left: 1rem;
  top: 1rem;
  z-index: 1000;
  padding: .75rem 1rem;
  color: var(--white);
  background: var(--ink);
  transform: translateY(-180%);
}
.skip-link:focus { transform: translateY(0); }

.trust-header {
  min-height: 5rem;
  padding: .75rem clamp(1rem, 3vw, 3.5rem);
  position: sticky;
  top: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  background: rgba(242, 239, 231, .97);
  border-bottom: 1px solid var(--line);
}
.trust-brand {
  display: inline-flex;
  align-items: center;
  gap: .75rem;
  font-family: var(--display);
  font-size: .82rem;
  font-weight: 800;
  text-decoration: none;
}
.trust-brand svg { width: 2.75rem; height: 2.75rem; flex: none; }
.trust-nav { display: flex; align-items: center; gap: clamp(.7rem, 2vw, 2rem); }
.trust-nav > a {
  position: relative;
  font-family: var(--display);
  font-size: .65rem;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
}
.trust-nav > a::after {
  content: '';
  height: 2px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -.4rem;
  background: var(--accent);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 220ms var(--ease);
}
.trust-nav > a:hover::after, .trust-nav > a[aria-current='page']::after { transform: scaleX(1); }
.language-switcher { display: inline-flex; border: 1px solid var(--line); }
.language-switcher button {
  min-width: 2.7rem;
  min-height: 2.35rem;
  padding: 0 .65rem;
  border: 0;
  border-right: 1px solid var(--line);
  color: var(--ink);
  background: transparent;
  font-family: var(--display);
  font-size: .58rem;
  font-weight: 800;
  cursor: pointer;
}
.language-switcher button:last-child { border-right: 0; }
.language-switcher button[aria-pressed='true'] { background: var(--accent); color: var(--ink); }
.trust-access {
  min-height: 2.4rem;
  padding: 0 .9rem;
  display: inline-flex;
  align-items: center;
  color: var(--white);
  background: var(--ink);
  border: 1px solid var(--ink);
  font-family: var(--display);
  font-size: .6rem;
  font-weight: 800;
  text-decoration: none;
  text-transform: uppercase;
  transition: transform 220ms var(--ease), background 220ms var(--ease), color 220ms var(--ease);
}
.trust-access:hover { color: var(--ink); background: var(--yellow); transform: translateY(-2px); }

.trust-hero {
  min-height: min(34rem, calc(100svh - 5rem));
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(22rem, .75fr);
  border-bottom: 1px solid var(--line);
}
.trust-hero__statement {
  min-width: 0;
  padding: clamp(3rem, 7vw, 7.5rem) clamp(1.25rem, 6vw, 7rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: var(--ink);
  color: var(--white);
}
.trust-breadcrumb {
  margin: 0 0 2.2rem;
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
  color: color-mix(in srgb, var(--white) 65%, transparent);
  font-family: var(--display);
  font-size: .58rem;
  font-weight: 700;
  text-transform: uppercase;
}
.trust-breadcrumb span:last-child { color: var(--accent); }
.trust-hero h1 {
  max-width: 12ch;
  margin: 0;
  font-family: var(--display);
  font-size: clamp(2.65rem, 6.3vw, 6.1rem);
  font-weight: 800;
  line-height: .94;
  letter-spacing: -.04em;
  text-transform: uppercase;
  text-wrap: balance;
  overflow-wrap: anywhere;
}
.trust-hero__summary {
  min-width: 0;
  padding: clamp(2.5rem, 5vw, 5rem);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 3rem;
  background: var(--accent);
  color: var(--ink);
}
body[data-accent='blue'] .trust-hero__summary,
body[data-accent='red'] .trust-hero__summary,
body[data-accent='green'] .trust-hero__summary { color: var(--white); }
.trust-hero__summary > p {
  max-width: 38ch;
  margin: 0;
  font-size: clamp(1.05rem, 1.8vw, 1.42rem);
  line-height: 1.45;
  font-weight: 520;
}
.trust-meta { margin: 0; padding: 0; list-style: none; border-top: 1px solid currentColor; }
.trust-meta li {
  padding: .85rem 0;
  display: grid;
  grid-template-columns: 7rem 1fr;
  gap: 1rem;
  border-bottom: 1px solid currentColor;
}
.trust-meta span { font-family: var(--display); font-size: .58rem; font-weight: 800; text-transform: uppercase; }
.trust-meta strong { font-size: .86rem; font-weight: 600; }
.trust-meta strong, .trust-hero__summary > p { overflow-wrap: anywhere; }

.trust-layout {
  max-width: 92rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 16rem minmax(0, 1fr);
  gap: clamp(2.5rem, 7vw, 8rem);
  padding: clamp(3rem, 7vw, 7rem) clamp(1.25rem, 5vw, 5rem) clamp(5rem, 10vw, 10rem);
}
.trust-index { align-self: start; position: sticky; top: 7.5rem; }
.trust-index > strong {
  margin-bottom: 1rem;
  display: block;
  font-family: var(--display);
  font-size: .62rem;
  text-transform: uppercase;
}
.trust-index nav { border-top: 1px solid var(--line); }
.trust-index a {
  padding: .8rem 0;
  display: block;
  border-bottom: 1px solid var(--line-soft);
  color: var(--muted);
  font-size: .82rem;
  font-weight: 520;
  text-decoration: none;
}
.trust-index a:hover { color: var(--blue); transform: translateX(.3rem); }
.trust-index .index-note { margin-top: 1.5rem; padding: 1rem; background: var(--yellow); font-size: .76rem; line-height: 1.5; }

.trust-document { min-width: 0; max-width: 78ch; }
.trust-document > section {
  padding: 0 0 clamp(3.5rem, 7vw, 6rem);
  margin-bottom: clamp(3.5rem, 7vw, 6rem);
  border-bottom: 1px solid var(--line);
  scroll-margin-top: 7rem;
}
.trust-document > section:last-child { margin-bottom: 0; border-bottom: 0; }
.trust-document h2 {
  max-width: 16ch;
  margin: 0 0 1.6rem;
  font-family: var(--display);
  font-size: clamp(1.65rem, 3.6vw, 3.35rem);
  font-weight: 750;
  line-height: 1.02;
  letter-spacing: -.035em;
  text-transform: uppercase;
  text-wrap: balance;
}
.trust-document h3 { margin: 2rem 0 .7rem; font-family: var(--display); font-size: .82rem; line-height: 1.4; text-transform: uppercase; }
.trust-document p { max-width: 72ch; margin: 0 0 1rem; color: #36342f; }
.trust-document p:last-child { margin-bottom: 0; }
.trust-document ul, .trust-document ol { margin: 1.2rem 0; padding-left: 1.35rem; }
.trust-document li { margin-bottom: .7rem; padding-left: .25rem; }
.trust-document a { color: var(--blue); font-weight: 600; }
.trust-document strong { color: var(--ink); }

.fact-ledger { margin: 2rem 0 0; border-top: 1px solid var(--line); }
.fact-ledger > div {
  min-height: 4.5rem;
  display: grid;
  grid-template-columns: minmax(9rem, .65fr) minmax(0, 1.35fr);
  align-items: center;
  gap: 2rem;
  border-bottom: 1px solid var(--line-soft);
}
.fact-ledger dt { font-family: var(--display); font-size: .62rem; font-weight: 700; text-transform: uppercase; }
.fact-ledger dd { margin: 0; font-weight: 520; }

.search-facts { margin: 2rem 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--line); }
.search-facts > div { min-width: 0; min-height: 8.5rem; padding: 1rem; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--line); }
.search-facts > div:last-child { border-right: 0; color: var(--white); background: var(--red); }
.search-facts > div:first-child { background: var(--yellow); }
.search-facts > div:nth-child(3) { color: var(--white); background: var(--blue); }
.search-facts dt { font-family: var(--display); font-size: .56rem; font-weight: 700; line-height: 1.4; text-transform: uppercase; }
.search-facts dd { margin: 0; display: grid; gap: .25rem; font-size: .7rem; line-height: 1.3; }
.search-facts dd strong { color: inherit; font-family: var(--display); font-size: clamp(1.6rem, 3vw, 2.7rem); line-height: .95; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }

.technology-catalog { margin: 2rem 0 0; border-top: 1px solid var(--line); }
.technology-catalog > div { display: grid; grid-template-columns: minmax(12rem, .65fr) minmax(0, 1.35fr); border-bottom: 1px solid var(--line); }
.technology-catalog dt { padding: 1.2rem; display: flex; align-items: center; background: var(--yellow); border-right: 1px solid var(--line); font-family: var(--display); font-size: .62rem; font-weight: 750; line-height: 1.4; text-transform: uppercase; }
.technology-catalog > div:nth-child(2) dt, .technology-catalog > div:nth-child(6) dt { color: var(--white); background: var(--blue); }
.technology-catalog > div:nth-child(3) dt { color: var(--white); background: var(--red); }
.technology-catalog > div:nth-child(4) dt { color: var(--white); background: var(--ink); }
.technology-catalog dd { margin: 0; padding: 1.2rem; display: flex; flex-wrap: wrap; gap: .5rem; }
.technology-catalog dd span { max-width: 100%; padding: .4rem .55rem; background: var(--white); border: 1px solid var(--line); font-size: .68rem; font-weight: 600; line-height: 1.3; }
.technology-combinations { margin-top: 2rem; display: grid; grid-template-columns: minmax(12rem, .65fr) minmax(0, 1.35fr); color: var(--white); background: var(--ink); }
.technology-combinations h3 { margin: 0; padding: 1.4rem !important; color: var(--white); background: var(--red); border-right: 1px solid var(--white); }
.technology-combinations ul { margin: 0 !important; padding: 1.2rem 1.2rem 1.2rem 2.5rem !important; columns: 2; column-gap: 2rem; }
.technology-combinations li { break-inside: avoid; margin-bottom: .7rem; font-size: .72rem; }

.principle-list { margin: 2rem 0 0; padding: 0 !important; list-style: none; border-top: 1px solid var(--line); }
.principle-list li {
  min-height: 7rem;
  margin: 0;
  padding: 1.35rem 0;
  display: grid;
  grid-template-columns: 7rem minmax(0, 1fr);
  gap: 2rem;
  align-items: start;
  border-bottom: 1px solid var(--line);
}
.principle-list b { font-family: var(--display); font-size: 2.2rem; line-height: 1; color: var(--accent); }
.principle-list strong { display: block; margin-bottom: .3rem; font-family: var(--display); font-size: .78rem; text-transform: uppercase; }

.callout {
  margin: 2rem 0;
  padding: clamp(1.4rem, 3vw, 2.4rem);
  background: var(--ink);
  color: var(--white);
}
.callout p, .callout strong, .callout a { color: inherit; }
.callout--yellow { color: var(--ink); background: var(--yellow); }
.callout--blue { background: var(--blue); }
.callout--red { background: var(--red); }

.timeline { margin: 2rem 0 0; padding: 0 !important; list-style: none; border-top: 1px solid var(--line); }
.timeline li { margin: 0; padding: 1.35rem 0; display: grid; grid-template-columns: 10rem 1fr; gap: 2rem; border-bottom: 1px solid var(--line); }
.timeline time { font-family: var(--display); font-size: .68rem; font-weight: 800; }

.founder-strip { margin-top: 2rem; display: grid; grid-template-columns: 11rem 1fr; border: 1px solid var(--line); }
.founder-mark { min-height: 11rem; display: grid; place-items: center; color: var(--white); background: var(--blue); font-family: var(--display); font-size: 2.2rem; font-weight: 800; }
.founder-copy { padding: 1.5rem; align-self: center; }
.founder-copy strong { display: block; font-family: var(--display); font-size: 1rem; text-transform: uppercase; }
.founder-copy span { display: block; margin: .35rem 0 1rem; color: var(--muted); }

.process-flow { margin: 2rem 0; display: grid; grid-template-columns: repeat(5, minmax(8rem, 1fr)); overflow-x: auto; border: 1px solid var(--line); }
.process-flow > div { min-height: 10rem; padding: 1rem; position: relative; border-right: 1px solid var(--line); }
.process-flow > div:last-child { border-right: 0; }
.process-flow > div:nth-child(2) { background: var(--yellow); }
.process-flow > div:nth-child(3) { color: var(--white); background: var(--blue); }
.process-flow > div:nth-child(4) { color: var(--white); background: var(--ink); }
.process-flow strong { display: block; margin-bottom: 2.5rem; font-family: var(--display); font-size: .67rem; text-transform: uppercase; }
.process-flow p { margin: 0; color: inherit; font-size: .78rem; line-height: 1.45; }

.interface-preview { margin: 2rem 0 0; border: 1px solid var(--line); background: var(--white); }
.preview-bar { min-height: 3rem; padding: .65rem 1rem; display: flex; align-items: center; justify-content: space-between; color: var(--white); background: var(--ink); font-family: var(--display); font-size: .6rem; text-transform: uppercase; }
.preview-body { display: grid; grid-template-columns: 9rem 1fr; min-height: 19rem; }
.preview-nav { padding: 1rem; color: var(--white); background: #252522; }
.preview-nav span { margin-bottom: .5rem; padding: .55rem; display: block; border: 1px solid rgba(255,255,255,.3); font-size: .62rem; }
.preview-nav span:nth-child(2) { color: var(--ink); background: var(--yellow); }
.preview-feed { padding: 1rem; display: grid; align-content: start; gap: .7rem; }
.preview-ticket { min-height: 4.5rem; padding: .8rem; display: grid; grid-template-columns: 6rem 1fr 4rem; gap: 1rem; align-items: center; border: 1px solid var(--line); }
.preview-ticket b { font-family: var(--display); font-size: .58rem; }
.preview-ticket i { height: .6rem; background: var(--blue); }
.preview-ticket:nth-child(2) i { background: var(--red); }
.interface-preview figcaption { padding: .8rem 1rem; border-top: 1px solid var(--line); color: var(--muted); font-size: .72rem; }

.public-form { margin-top: 2rem; padding-top: 1.5rem; border-top: 2px solid var(--line); }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.public-form label { display: grid; gap: .45rem; margin-bottom: 1rem; color: var(--ink); font-family: var(--display); font-size: .62rem; font-weight: 700; text-transform: uppercase; }
.public-form input, .public-form textarea, .public-form select {
  width: 100%;
  min-height: 3.2rem;
  padding: .8rem .9rem;
  color: var(--ink);
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 0;
  font-family: var(--body);
  font-size: .92rem;
  text-transform: none;
}
.public-form textarea { min-height: 9.5rem; resize: vertical; }
.public-form button {
  min-height: 3.6rem;
  padding: 0 1.2rem;
  color: var(--white);
  background: var(--blue);
  border: 1px solid var(--line);
  font-family: var(--display);
  font-size: .66rem;
  font-weight: 800;
  text-transform: uppercase;
  cursor: pointer;
  transition: transform 220ms var(--ease), background 220ms var(--ease), color 220ms var(--ease);
}
.public-form button:hover { color: var(--ink); background: var(--yellow); transform: translateY(-2px); }
.public-form button:disabled { opacity: .5; cursor: wait; transform: none; }
.form-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.form-status { min-height: 1.8rem; margin-top: .8rem; color: var(--muted); font-size: .82rem; }
.form-status--success { color: var(--green); font-weight: 650; }
.form-status--error { color: #a21f18; font-weight: 650; }

.policy-table { width: 100%; margin: 2rem 0; border-collapse: collapse; font-size: .84rem; }
.policy-table th, .policy-table td { padding: .9rem; border: 1px solid var(--line); text-align: left; vertical-align: top; }
.policy-table th { color: var(--white); background: var(--ink); font-family: var(--display); font-size: .58rem; text-transform: uppercase; }

.story-wait { margin: 2rem 0; padding: clamp(2rem, 5vw, 4rem); color: var(--white); background: var(--blue); }
.story-wait strong { max-width: 11ch; display: block; font-family: var(--display); font-size: clamp(2rem, 5vw, 4.7rem); line-height: .95; text-transform: uppercase; }
.story-wait p { max-width: 44ch; margin-top: 1.5rem; color: inherit; }

.trust-footer { color: var(--white); background: var(--ink); border-top: 1px solid var(--line); }
.trust-footer__top {
  padding: clamp(3rem, 7vw, 7rem) clamp(1.25rem, 5vw, 5rem);
  display: grid;
  grid-template-columns: minmax(15rem, 1.3fr) repeat(3, minmax(9rem, .7fr));
  gap: 3rem;
}
.trust-footer .trust-brand { align-self: start; font-size: 1rem; }
.trust-footer__intro p { max-width: 28ch; margin: 1rem 0 0; color: rgba(255,255,255,.68); }
.trust-footer nav { display: grid; align-content: start; gap: .55rem; }
.trust-footer nav strong { margin-bottom: .55rem; color: var(--yellow); font-family: var(--display); font-size: .58rem; text-transform: uppercase; }
.trust-footer nav a, .trust-footer nav button { width: fit-content; padding: 0; color: rgba(255,255,255,.76); background: none; border: 0; font-size: .8rem; text-decoration: none; cursor: pointer; }
.trust-footer nav a:hover, .trust-footer nav button:hover { color: var(--yellow); text-decoration: underline; text-underline-offset: .25em; }
.trust-footer__bottom { padding: 1rem clamp(1.25rem, 5vw, 5rem); display: flex; justify-content: space-between; gap: 1rem; border-top: 1px solid rgba(255,255,255,.3); color: rgba(255,255,255,.6); font-size: .72rem; }

@media (max-width: 980px) {
  .trust-nav > a:nth-child(2), .trust-nav > a:nth-child(3) { display: none; }
  .trust-hero { min-height: 0; grid-template-columns: 1fr; }
  .trust-hero__summary { min-height: 20rem; }
  .trust-layout { grid-template-columns: 1fr; }
  .trust-index { position: static; }
  .trust-index nav { display: grid; grid-template-columns: repeat(2, 1fr); }
  .trust-index a:nth-child(odd) { border-right: 1px solid var(--line-soft); padding-right: .75rem; }
  .trust-index a:nth-child(even) { padding-left: .75rem; }
  .trust-footer__top { grid-template-columns: repeat(3, 1fr); }
  .trust-footer__intro { grid-column: 1 / -1; }
}

@media (max-width: 680px) {
  .trust-header { min-height: 4.4rem; padding: .55rem .75rem; gap: .6rem; }
  .trust-brand span { display: none; }
  .trust-brand svg { width: 2.45rem; height: 2.45rem; }
  .trust-nav { gap: .45rem; }
  .trust-nav > a { display: none !important; }
  .trust-nav > a.trust-access { display: inline-flex !important; }
  .trust-access { padding-inline: .65rem; }
  .language-switcher button { min-width: 2.25rem; min-height: 2.25rem; padding: 0 .45rem; }
  .trust-hero__statement, .trust-hero__summary { padding: 2.6rem 1rem; }
  .trust-hero h1 { font-size: clamp(2.35rem, 12vw, 4.2rem); }
  .trust-hero__summary { min-height: 17rem; }
  .trust-meta li { grid-template-columns: 5.5rem 1fr; }
  .trust-layout { padding: 2.5rem 1rem 5rem; gap: 3rem; }
  .trust-index nav { grid-template-columns: 1fr; }
  .trust-index a:nth-child(odd) { border-right: 0; padding-right: 0; }
  .trust-index a:nth-child(even) { padding-left: 0; }
  .trust-document > section { padding-bottom: 3rem; margin-bottom: 3rem; }
  .fact-ledger > div, .principle-list li, .timeline li { grid-template-columns: 1fr; gap: .5rem; padding: 1rem 0; }
  .search-facts { grid-template-columns: 1fr 1fr; }
  .search-facts > div:nth-child(2) { border-right: 0; }
  .search-facts > div:nth-child(-n + 2) { border-bottom: 1px solid var(--line); }
  .technology-catalog > div, .technology-combinations { grid-template-columns: 1fr; }
  .technology-catalog dt, .technology-combinations h3 { border-right: 0; border-bottom: 1px solid var(--line); }
  .technology-combinations ul { columns: 1; }
  .founder-strip { grid-template-columns: 1fr; }
  .founder-mark { min-height: 8rem; }
  .form-grid { grid-template-columns: 1fr; gap: 0; }
  .preview-body { grid-template-columns: 4.6rem 1fr; }
  .preview-nav { padding: .5rem; }
  .preview-ticket { grid-template-columns: 1fr; gap: .4rem; }
  .policy-table, .policy-table tbody, .policy-table tr, .policy-table td { display: block; width: 100%; }
  .policy-table thead { display: none; }
  .policy-table tr { margin-bottom: 1rem; border: 1px solid var(--line); }
  .policy-table td { border: 0; border-bottom: 1px solid var(--line-soft); }
  .trust-footer__top { grid-template-columns: 1fr 1fr; gap: 2rem 1.25rem; }
  .trust-footer__intro { grid-column: 1 / -1; }
  .trust-footer nav:last-child { grid-column: 1 / -1; }
  .trust-footer__bottom { flex-direction: column; }
}

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