@font-face {
  font-family:Archivo;
  src:url('/fonts/archivo.woff2') format('woff2');
  font-weight:100 900;
  font-stretch:62% 125%;
  font-display:swap
}
:root {
  --paper:#f6f6f2;
  --ink:#1c1c1a;
  --muted:#62625e;
  --line:#d4d4ce;
  --accent:#f04424;
  --white:#fff;
  --sans:Archivo,'Helvetica Neue',Arial,sans-serif;
  --mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
  scroll-padding-top:24px
}
body {
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:16px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased
}
::selection {
  background:var(--accent);
  color:#fff
}
a {
  color:inherit;
  text-decoration:none
}
button {
  font:inherit;
  cursor:pointer
}
a,button {
  -webkit-tap-highlight-color:transparent
}
button:disabled {
  cursor:default
}
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible {
  outline:3px solid var(--accent);
  outline-offset:5px
}
h1,h2,h3,p {
  margin:0
}
h1,h2,h3 {
  font-weight:650;
  line-height:1.02;
  letter-spacing:-.025em
}
h2 {
  font-size:clamp(38px,4.5vw,64px)
}
h3 {
  font-size:30px
}
button,a {
  touch-action:manipulation
}
.wrap {
  width:calc(100% - 112px);
  max-width:1328px;
  margin-inline:auto
}
.eyebrow,.edition,.status,.detail,.number,.hero-note,.brief-stage-label,.brief-kicker,.brief-heading,.brief-bottom,.brief-caption,.brief-controls,.demo-stamp,.demo-badge,.entry-time,.source,.comparison-note,.closing-top>span,.footer-bottom {
  font-family:var(--mono);
  font-size:10px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:.025em
}
.header {
  min-height:104px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-bottom:1px solid var(--ink);
  gap:30px
}
.brand {
  display:inline-flex;
  gap:12px;
  align-items:center;
  font-size:24px;
  font-weight:720;
  letter-spacing:-1px;
  line-height:.9
}
.brand-symbol {
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:37px;
  font-weight:600;
  letter-spacing:-3px;
  width:53px;
  height:51px;
  border:1.5px solid var(--ink);
  padding-right:8px
}
.brand-symbol span {
  color:var(--accent)
}
nav {
  display:flex;
  gap:38px;
  font-size:12px
}
nav a {
  padding:14px 0
}
nav a:hover,.text-link:hover {
  color:var(--accent)
}
nav span {
  margin-left:8px
}
.status {
  display:flex;
  gap:9px;
  align-items:center;
  text-transform:uppercase;
  white-space:nowrap
}
.status>span {
  width:6px;
  height:6px;
  background:var(--accent)
}
.hero {
  padding-top:28px
}
.hero-label {
  display:flex;
  justify-content:space-between;
  margin-bottom:24px
}
.edition {
  color:var(--muted)
}
h1 {
  font-size:clamp(76px,9.25vw,137px);
  font-weight:540;
  font-stretch:95%;
  line-height:.94;
  letter-spacing:-.035em;
  position:relative;
  max-width:1200px
}
.title-period {
  display:inline-block;
  width:.38em;
  height:.38em;
  border:2px solid var(--accent);
  transform:rotate(-12deg);
  margin-left:.16em;
  vertical-align:baseline;
  position:relative
}
.title-period:after {
  content:'';
  position:absolute;
  width:100%;
  height:100%;
  top:-.065em;
  left:.045em;
  background:var(--paper);
  border:2px solid var(--accent)
}
.hero-stage {
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:70px;
  margin-top:48px;
  padding-bottom:64px;
  align-items:stretch
}
.hero-copy {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding-top:20px
}
.intro {
  font-size:23px;
  line-height:1.35;
  letter-spacing:-.035em;
  max-width:390px
}
.hero-description {
  font-size:15px;
  line-height:1.65;
  max-width:340px;
  color:var(--muted);
  margin-top:20px
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:38px;
  border:1px solid var(--ink);
  background:var(--ink);
  color:white;
  padding:15px 20px;
  font-size:13px;
  font-weight:500;
  border-radius:0;
  transition:background .18s,color .18s
}
.button>span {
  font-size:19px;
  line-height:1
}
.button:hover {
  background:var(--accent);
  border-color:var(--accent);
  color:white
}
.hero-copy>.button {
  margin-top:28px
}
.hero-note {
  font-size:9px;
  margin-top:13px;
  color:var(--muted);
  max-width:290px
}
.hero-footnote {
  display:flex;
  gap:16px;
  align-items:center;
  margin-top:auto;
  padding-top:38px;
  font-family:var(--mono);
  font-size:9px;
  line-height:1.5
}
.cross {
  font-size:40px;
  font-weight:300;
  line-height:1
}
.brief-stage {
  position:relative;
  background:var(--accent);
  padding:20px 35px 16px;
  min-width:0
}
.brief-stage-label {
  display:flex;
  justify-content:space-between;
  color:#211915;
  font-size:9px;
  margin-bottom:20px
}
.brief-stage-label>span:last-child {
  font:28px/1 var(--sans)
}
.brief {
  background:var(--white);
  padding:20px 24px;
  transform:rotate(-2deg);
  box-shadow:5px 8px 0 #b1291a66;
  position:relative;
  margin:0 10px
}
.brief-heading {
  display:flex;
  align-items:center;
  gap:10px;
  border-bottom:1px solid #ddd;
  padding-bottom:13px;
  font-size:9px
}
.brand-mini {
  font-family:var(--sans);
  font-weight:600;
  letter-spacing:-3px;
  font-size:25px;
  line-height:1;
  padding-right:3px
}
.brief-edition {
  margin-left:auto;
  color:var(--muted)
}
.brief-content {
  min-height:229px;
  padding-top:18px
}
.brief-kicker {
  font-size:8px;
  color:var(--muted);
  margin-bottom:10px
}
.brief h2 {
  font-size:35px;
  font-weight:600;
  letter-spacing:-.025em;
  line-height:.99;
  margin-bottom:14px
}
.brief-content>p:not(.brief-kicker) {
  font-size:11px;
  line-height:1.8;
  margin-bottom:12px
}
.redacted {
  background:var(--ink);
  color:transparent;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
  transition:background .25s,color .25s;
  padding-inline:2px;
  user-select:none
}
.brief[data-revealed=true] .redacted {
  background:#f4f0ec;
  color:var(--ink);
  user-select:text
}
.brief-line {
  border-top:1px solid #e4e4e0;
  display:flex;
  gap:16px;
  padding-block:7px;
  font-size:10px;
  align-items:baseline
}
.brief-line>span:first-child {
  font:8px var(--mono);
  min-width:38px;
  color:var(--muted)
}
.brief-bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid #ddd;
  margin-top:10px;
  padding-top:12px;
  font-size:7px
}
.brief-bottom button {
  border:0;
  border-bottom:1px solid var(--ink);
  padding:5px 0;
  background:transparent;
  font-family:var(--sans);
  font-size:10px;
  white-space:nowrap;
  color:var(--ink)
}
.brief-bottom button:hover {
  color:#b32610
}
.brief-controls {
  display:flex;
  justify-content:center;
  gap:16px;
  margin-top:20px
}
.brief-controls button {
  font:inherit;
  background:transparent;
  color:#291710;
  border:0;
  border-bottom:1px solid transparent;
  padding:8px 2px
}
.brief-controls button[aria-pressed=true] {
  border-bottom-color:var(--ink);
  font-weight:bold
}
.brief-controls button:focus-visible {
  outline-color:white
}
.brief-caption {
  font-size:8px;
  text-align:center;
  margin-top:7px;
  color:#351b15
}
.text-link {
  font-size:12px;
  border-bottom:1px solid currentColor;
  padding-bottom:5px
}
.text-link span {
  margin-left:14px
}
.section {
  padding-block:80px
}
.work {
  border-top:1px solid var(--ink);
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:70px
}
.work-heading h2 {
  margin:30px 0 24px
}
.work-heading>p:not(.eyebrow) {
  max-width:295px;
  font-size:14px;
  line-height:1.65;
  color:var(--muted);
  margin-bottom:24px
}
.work-list article {
  display:flex;
  gap:25px;
  padding:25px 0;
  border-bottom:1px solid var(--line)
}
.work-list article:first-child {
  padding-top:0
}
.work-list .number {
  padding-top:6px;
  color:var(--accent)
}
.work-list h3 {
  font-size:29px;
  margin-bottom:14px;
  font-weight:580
}
.work-list p {
  font-size:14px;
  color:var(--muted);
  line-height:1.6;
  max-width:370px;
  margin-bottom:16px
}
.detail {
  font-size:8px;
  color:var(--muted)
}
.work-arrow {
  margin-left:auto;
  font-size:24px
}
.demo-section {
  background:var(--ink);
  color:var(--paper);
  padding-block:46px 70px
}
.demo-heading {
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:10px 70px;
  align-items:start;
  position:relative
}
.demo-heading>.eyebrow {
  color:#b4b4ac;
  padding-top:5px
}
.demo-heading>p:not(.eyebrow) {
  font-size:24px;
  line-height:1.25;
  letter-spacing:-.035em
}
.demo-heading>p>span {
  color:#aaa9a2
}
.demo-stamp {
  grid-column:2;
  margin-top:20px;
  color:#ff8067;
  font-size:9px
}
.demo-tabs {
  display:flex;
  border-bottom:1px solid #4e4e49;
  margin-top:32px;
  margin-bottom:45px;
  gap:0
}
.demo-tabs button {
  flex:1;
  text-align:left;
  padding:16px 0 18px;
  display:flex;
  gap:12px;
  align-items:center;
  border:0;
  border-bottom:3px solid transparent;
  background:transparent;
  color:#aaa9a2;
  font-family:var(--mono);
  font-size:9px
}
.demo-tabs button span {
  font:14px var(--sans)
}
.demo-tabs button[aria-selected=true] {
  border-bottom-color:var(--accent);
  color:white
}
.demo-tabs button:hover {
  color:white
}
.demo-tabs button:focus-visible {
  outline-color:#ff8067
}
.demo-grid {
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:70px;
  align-items:center
}
.demo-panel {
  min-height:450px
}
.demo-panel+.demo-panel:not([role=tabpanel]) {
  border-top:1px solid #555;
  margin-top:50px;
  padding-top:50px
}
.demo-panel>div:first-child>.eyebrow {
  color:#aaa9a2;
  font-size:9px;
  margin-bottom:28px
}
.demo-panel h2 {
  font-size:clamp(40px,4.5vw,65px);
  font-weight:580;
  margin-bottom:25px
}
.demo-panel>div:first-child>p:not(.eyebrow) {
  font-size:14px;
  color:#bbbcb5;
  max-width:330px;
  line-height:1.7
}
.demo-panel>div:first-child>p.demo-disclaimer {
  font:9px/1.6 var(--mono);
  color:#aaa9a2;
  margin-top:28px;
  max-width:340px
}
.demo-card {
  background:var(--white);
  color:var(--ink);
  padding:27px 30px;
  align-self:center
}
.demo-top {
  display:flex;
  align-items:center;
  gap:12px;
  font-size:13px;
  padding-bottom:16px;
  border-bottom:1px solid var(--line)
}
.demo-badge {
  margin-left:auto;
  font-size:8px;
  color:#62625e;
  background:#eeeee8;
  padding:5px 7px
}
.chat-request {
  font-size:17px;
  font-weight:500;
  line-height:1.4;
  margin-top:25px;
  padding-left:14px;
  border-left:3px solid var(--accent)
}
.agent-response {
  font-size:12px;
  color:var(--muted);
  margin:20px 0 14px
}
.email-preview {
  border:1px solid var(--line);
  padding:15px 18px;
  font-size:12px;
  line-height:1.6
}
.email-preview>div {
  padding-block:5px;
  border-bottom:1px solid #e7e7e2;
  font-size:11px
}
.email-preview>div>span {
  font:9px var(--mono);
  display:inline-block;
  width:50px;
  color:var(--muted)
}
.email-preview p {
  margin-top:14px
}
.demo-buttons {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:17px
}
.demo-buttons .button {
  font-size:11px;
  padding:11px 15px;
  gap:24px
}
.secondary {
  background:transparent;
  color:var(--ink);
  border-color:var(--line)
}
.secondary:hover {
  background:#eeeee8;
  border-color:var(--ink);
  color:var(--ink)
}
.demo-result {
  font-size:10px;
  line-height:1.65;
  color:var(--muted);
  margin-top:14px;
  min-height:17px
}
.reset {
  font-size:11px;
  border:0;
  border-bottom:1px solid var(--ink);
  background:transparent;
  color:var(--ink);
  padding:5px 0;
  margin-top:10px
}
.activity-filters {
  display:flex;
  gap:7px;
  margin-block:18px 8px;
  flex-wrap:wrap
}
.activity-filters button {
  border:1px solid var(--line);
  padding:8px 11px;
  font-size:10px;
  background:transparent;
  color:var(--ink)
}
.activity-filters button[aria-pressed=true] {
  background:var(--ink);
  border-color:var(--ink);
  color:#fff
}
.activity-entries {
  min-height:264px
}
.activity-entry {
  border-bottom:1px solid var(--line)
}
.activity-entry summary {
  display:flex;
  align-items:center;
  gap:15px;
  list-style:none;
  cursor:pointer;
  padding-block:16px;
  font-size:12px;
  line-height:1.5
}
.activity-entry summary::-webkit-details-marker {
  display:none
}
.entry-time {
  font-size:9px;
  color:var(--muted);
  font-variant-numeric:tabular-nums
}
.activity-entry small {
  display:block;
  font-size:10px;
  color:var(--muted);
  margin-top:2px
}
.entry-toggle {
  margin-left:auto;
  font-size:20px
}
.activity-entry[open] .entry-toggle {
  transform:rotate(45deg)
}
.entry-detail {
  padding:0 0 10px 46px;
  font-size:11px;
  color:var(--muted)
}
.entry-detail p {
  margin-bottom:10px
}
.connection-row {
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  padding-block:22px;
  border-bottom:1px solid var(--line);
  font-size:12px
}
.connection-row strong {
  font-size:10px;
  background:#eeeee8;
  padding:4px 8px;
  font-weight:500
}
.storage-label {
  font-size:11px;
  color:var(--muted);
  margin:20px 0 12px
}
.storage-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--line);
  margin:0;
  border:1px solid var(--line)
}
.storage-grid>div {
  display:flex;
  flex-direction:column-reverse;
  background:white;
  padding:12px 8px;
  text-align:center
}
.storage-grid dt {
  font:9px var(--mono);
  color:var(--muted);
  margin-top:5px
}
.storage-grid dd {
  font-size:39px;
  line-height:1;
  margin:0;
  letter-spacing:-.05em
}
.data-actions .button {
  flex:1;
  justify-content:center;
  white-space:nowrap
}
.data-actions .button:disabled {
  background:#eee;
  border-color:var(--line);
  color:var(--muted)
}
.purge-confirmation {
  background:#f6f6f2;
  border-left:3px solid var(--accent);
  padding:16px;
  margin-top:18px
}
.purge-confirmation h3 {
  font-size:16px;
  letter-spacing:-.02em;
  margin-bottom:8px
}
.purge-confirmation p {
  font-size:11px;
  color:var(--muted);
  margin-bottom:8px
}
.data-limits {
  font-size:10px;
  line-height:1.6;
  color:var(--muted);
  border-top:1px solid var(--line);
  padding-top:15px;
  margin-top:18px
}
.section-heading {
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:25px 70px;
  align-items:end
}
.section-heading>.eyebrow {
  grid-column:1/-1
}
.section-heading>p:last-child {
  font-size:14px;
  color:var(--muted);
  max-width:370px;
  line-height:1.7
}
.comparison-grid {
  margin-top:45px;
  border-top:1px solid var(--ink)
}
.comparison-card {
  display:grid;
  grid-template-columns:.8fr 1.15fr 1fr;
  gap:15px 35px;
  align-items:start;
  padding:32px 0;
  border-bottom:1px solid var(--line)
}
.comparison-card>.eyebrow {
  grid-column:1;
  font-size:11px;
  font-weight:bold
}
.comparison-card>.eyebrow>span {
  display:block;
  font-weight:400;
  font-size:8px;
  color:var(--muted);
  margin-top:6px
}
.comparison-card h3 {
  grid-column:1;
  grid-row:2 / span 3;
  font-size:23px;
  line-height:1.1;
  max-width:220px;
  font-weight:550;
  letter-spacing:-.035em
}
.comparison-card>p:nth-of-type(2) {
  grid-column:2;
  grid-row:1 / span 3
}
.comparison-card>p:nth-of-type(3) {
  grid-column:3;
  grid-row:1 / span 3
}
.comparison-card>p:not(.eyebrow) {
  font-size:12px;
  color:var(--muted);
  line-height:1.75
}
.comparison-card .source {
  grid-column:2;
  font-size:9px;
  text-decoration:underline;
  text-underline-offset:4px
}
.comparison-card .source+.source {
  grid-column:3
}
.comparison-card.featured {
  border-bottom:2px solid var(--accent);
  position:relative
}
.featured>.eyebrow {
  color:#ba2e15
}
.featured:before {
  content:'';
  height:7px;
  width:7px;
  background:var(--accent);
  position:absolute;
  left:-20px;
  top:36px
}
.comparison-note {
  color:var(--muted);
  font-size:9px;
  margin-top:20px;
  max-width:820px
}
.news-context {
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:70px;
  padding-top:32px;
  margin-top:40px;
  border-top:1px solid var(--line)
}
.news-context h3 {
  font-size:26px;
  margin-top:18px;
  font-weight:500
}
.news-context p:not(.eyebrow) {
  font-size:12px;
  color:var(--muted);
  line-height:1.75;
  margin-bottom:12px
}
.news-context .source {
  display:block;
  font-size:9px;
  text-decoration:underline;
  text-underline-offset:4px;
  margin-top:10px
}
.details {
  border-top:1px solid var(--ink);
  display:grid;
  grid-template-columns:1fr 1.35fr;
  gap:70px;
  padding-block:54px 80px
}
.details h2 {
  font-size:clamp(33px,3.3vw,46px);
  margin-top:25px
}
.faq details {
  border-bottom:1px solid var(--line);
  padding-block:19px
}
.faq details:first-child {
  padding-top:0
}
.faq summary {
  font-size:14px;
  cursor:pointer;
  list-style:none;
  position:relative;
  padding-right:30px
}
.faq summary::-webkit-details-marker {
  display:none
}
.faq summary:after {
  content:'+';
  position:absolute;
  right:0;
  top:-5px;
  font-size:23px;
  font-weight:300
}
.faq details[open] summary:after {
  content:'−'
}
.faq p {
  font-size:12px;
  line-height:1.8;
  color:var(--muted);
  margin-top:18px
}
.closing {
  background:var(--accent);
  color:var(--ink);
  padding-block:30px 40px
}
.closing-top {
  display:flex;
  justify-content:space-between;
  gap:20px;
  border-bottom:1px solid #a42c16;
  padding-bottom:20px
}
.closing h2 {
  font-size:clamp(64px,8.5vw,123px);
  line-height:.94;
  font-weight:680;
  margin-block:40px;
  letter-spacing:-.035em
}
.closing-bottom {
  display:flex;
  justify-content:space-between;
  gap:30px;
  align-items:start
}
.closing-bottom>p {
  font-size:16px;
  line-height:1.5
}
.closing .button:hover {
  background:white;
  color:var(--ink);
  border-color:white
}
.closing #share-status {
  font:10px/1.5 var(--mono);
  min-height:15px;
  margin-top:10px;
  max-width:290px
}
.footer-wordmark {
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:clamp(47px,11.4vw,163px);
  font-weight:730;
  line-height:1;
  letter-spacing:-.035em;
  padding-block:44px 36px;
  white-space:nowrap
}
.footer-wordmark>span {
  font-weight:300;
  letter-spacing:0;
  color:var(--accent);
  font-size:.85em
}
.footer-bottom {
  display:flex;
  justify-content:space-between;
  gap:20px;
  border-top:1px solid var(--ink);
  padding-block:22px 28px;
  font-size:9px
}
.footer-bottom p {
  color:var(--muted)
}
.privacy {
  max-width:750px;
  padding-block:60px 90px;
  min-height:65vh
}
.privacy h1 {
  font-size:clamp(46px,6vw,74px);
  margin-block:25px 35px
}
.privacy h2 {
  font-size:28px;
  letter-spacing:-.035em;
  margin-block:32px 14px
}
.privacy p {
  font-size:15px;
  line-height:1.8;
  color:var(--muted)
}
.privacy .text-link {
  display:inline-block;
  margin-top:25px
}
.skip {
  position:absolute;
  top:-100px;
  left:12px;
  padding:12px;
  background:var(--ink);
  color:white;
  z-index:10
}
.skip:focus {
  top:12px
}
.sr-only {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0
}
[hidden] {
  display:none!important
}
@media(min-width:1600px) {
  .hero-stage {
    margin-top:60px
  }
  .brief {
    margin-inline:30px
  }
  .hero-copy {
    padding-top:35px
  }
}
@media(max-width:1100px) {
  .wrap {
    width:calc(100% - 64px)
  }
  .hero-stage,.work,.demo-grid,.demo-heading,.section-heading,.news-context,.details {
    gap:35px;
    grid-template-columns:1fr 1.2fr
  }
  h1 {
    font-size:10.1vw
  }
  .hero-stage {
    margin-top:36px
  }
  .intro {
    font-size:21px
  }
  .brief-stage {
    padding-inline:20px
  }
  .brief {
    margin-inline:0;
    padding:18px
  }
  .brief h2 {
    font-size:32px
  }
  .brief-bottom {
    gap:6px
  }
  .brief-bottom>span {
    font-size:6px
  }
  .brief-controls {
    gap:12px
  }
  .demo-card {
    padding:24px
  }
  .demo-badge {
    font-size:7px
  }
  .comparison-card {
    gap:14px 25px
  }
  .hero-description {
    font-size:14px
  }
  .title-period {
    width:.3em;
    height:.3em
  }
  .desktop-break {
    display:none
  }
}
@media(max-width:760px) {
  .wrap {
    width:calc(100% - 40px)
  }
  .header {
    min-height:84px;
    gap:15px
  }
  .brand {
    font-size:20px;
    gap:8px
  }
  .brand-symbol {
    font-size:29px;
    width:43px;
    height:42px;
    letter-spacing:-2px;
    padding-right:6px
  }
  nav {
    gap:15px
  }
  nav a {
    font-size:11px
  }
  nav a:first-child,nav a:last-child {
    display:none
  }
  .status {
    font-size:8px;
    gap:6px
  }
  .hero {
    padding-top:24px
  }
  .hero-label {
    margin-bottom:24px
  }
  .hero-label .eyebrow {
    font-size:8px
  }
  .edition {
    display:none
  }
  h1 {
    font-size:11.6vw;
    line-height:1;
    font-weight:600;
    letter-spacing:-.03em
  }
  .title-period {
    width:.28em;
    height:.28em;
    margin-left:.12em;
    border-width:1px
  }
  .title-period:after {
    border-width:1px
  }
  .hero-stage {
    grid-template-columns:1fr;
    gap:30px;
    margin-top:30px;
    padding-bottom:40px
  }
  .hero-copy {
    padding-top:0;
    display:grid;
    grid-template-columns:1fr auto;
    column-gap:20px
  }
  .intro {
    font-size:20px;
    max-width:400px;
    grid-column:1/-1
  }
  .hero-description {
    max-width:430px;
    font-size:14px;
    margin-top:14px;
    grid-column:1/-1
  }
  .hero-copy>.button {
    margin-top:22px;
    justify-self:start
  }
  .hero-note {
    grid-column:1;
    margin-top:12px;
    font-size:8px
  }
  .hero-footnote {
    grid-column:2;
    grid-row:3 / 5;
    margin:0;
    padding:20px 0 0;
    font-size:8px;
    gap:10px;
    align-self:center
  }
  .cross {
    font-size:30px
  }
  .brief-stage {
    padding:18px 24px 14px
  }
  .brief-stage-label {
    margin-bottom:17px;
    font-size:8px
  }
  .brief {
    padding:20px;
    margin:0 6px
  }
  .brief-content {
    min-height:234px
  }
  .brief h2 {
    font-size:36px
  }
  .brief-bottom>span {
    font-size:7px
  }
  .brief-bottom button {
    font-size:10px
  }
  .brief-controls {
    margin-top:18px;
    gap:23px
  }
  .brief-caption {
    font-size:7px
  }
  .section {
    padding-block:46px
  }
  .work,.demo-grid,.demo-heading,.section-heading,.news-context,.details {
    grid-template-columns:1fr;
    gap:30px
  }
  .work-heading h2 {
    font-size:45px;
    margin-top:23px;
    margin-bottom:20px
  }
  .work-heading>p:not(.eyebrow) {
    max-width:390px
  }
  .work-list article {
    gap:20px;
    padding-block:24px
  }
  .work-list article:first-child {
    padding-top:12px
  }
  .work-list h3 {
    font-size:27px
  }
  .work-list p {
    font-size:13px
  }
  .work-list .number {
    font-size:9px
  }
  .demo-section {
    padding-block:35px 45px
  }
  .demo-heading {
    gap:20px
  }
  .demo-heading>p:not(.eyebrow) {
    font-size:23px
  }
  .demo-stamp {
    grid-column:1;
    margin-top:0;
    font-size:8px
  }
  .demo-tabs {
    margin-top:26px;
    margin-bottom:32px
  }
  .demo-tabs button {
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
    padding:12px 8px 15px 0;
    font-size:8px
  }
  .demo-tabs button span {
    font-size:11px;
    line-height:1.4;
    max-width:95px
  }
  .demo-panel {
    min-height:0
  }
  .demo-panel>div:first-child>.eyebrow {
    font-size:8px;
    margin-bottom:20px
  }
  .demo-panel h2 {
    font-size:44px;
    margin-bottom:18px
  }
  .demo-panel>div:first-child>p:not(.eyebrow) {
    max-width:420px;
    font-size:13px
  }
  .demo-panel>div:first-child>p.demo-disclaimer {
    margin-top:16px;
    font-size:8px
  }
  .demo-card {
    padding:20px
  }
  .demo-top {
    gap:9px;
    font-size:12px
  }
  .demo-badge {
    font-size:6px;
    padding:5px
  }
  .chat-request {
    font-size:16px
  }
  .demo-buttons .button {
    padding:11px 12px;
    gap:16px
  }
  .section-heading {
    gap:23px
  }
  .section-heading h2 {
    font-size:43px
  }
  .section-heading>.eyebrow {
    grid-column:1
  }
  .comparison-grid {
    margin-top:30px
  }
  .comparison-card {
    grid-template-columns:1fr;
    gap:15px;
    padding-block:27px
  }
  .comparison-card>.eyebrow {
    display:flex;
    gap:15px;
    align-items:center;
    font-size:10px
  }
  .comparison-card>.eyebrow>span {
    margin:0
  }
  .comparison-card h3 {
    max-width:330px;
    font-size:25px
  }
  .comparison-card>h3,.comparison-card>p:nth-of-type(2),.comparison-card>p:nth-of-type(3),.comparison-card>.source,.comparison-card>.source+.source {
    grid-column:1;
    grid-row:auto
  }
  .comparison-card>p:not(.eyebrow) {
    font-size:13px;
    max-width:500px
  }
  .featured:before {
    left:-13px;
    top:32px;
    width:5px;
    height:5px
  }
  .comparison-note {
    font-size:8px
  }
  .news-context {
    margin-top:28px;
    gap:20px
  }
  .news-context h3 {
    font-size:27px
  }
  .news-context p:not(.eyebrow) {
    font-size:12px
  }
  .details {
    padding-block:40px 50px
  }
  .details h2 {
    font-size:37px;
    margin-top:24px
  }
  .faq summary {
    font-size:13px
  }
  .closing {
    padding-block:24px 28px
  }
  .closing-top .eyebrow,.closing-top>span {
    font-size:7px
  }
  .closing h2 {
    font-size:15vw;
    line-height:.97;
    margin-block:32px
  }
  .closing-bottom {
    flex-direction:column;
    gap:24px
  }
  .closing-bottom>p {
    font-size:15px
  }
  .closing .button {
    font-size:12px
  }
  .closing #share-status {
    font-size:9px
  }
  .footer-wordmark {
    font-size:11.5vw;
    padding-block:30px 26px
  }
  .footer-bottom {
    font-size:8px;
    flex-wrap:wrap;
    gap:14px
  }
  .footer-bottom p {
    display:none
  }
  .privacy {
    padding-block:45px 60px
  }
  .privacy h1 {
    font-size:48px
  }
  .privacy p {
    font-size:14px
  }
  .privacy h2 {
    font-size:26px
  }
}
@media(max-width:370px) {
  .wrap {
    width:calc(100% - 32px)
  }
  .header {
    gap:10px
  }
  .brand {
    font-size:18px
  }
  .brand-symbol {
    width:36px;
    height:36px;
    font-size:26px
  }
  .status {
    font-size:7px
  }
  nav a {
    font-size:10px
  }
  nav a span {
    display:none
  }
  .intro {
    font-size:19px
  }
  .hero-footnote {
    display:none
  }
  .hero-copy {
    display:block
  }
  .hero-note {
    max-width:260px
  }
  .brief-stage {
    padding-inline:14px
  }
  .brief {
    padding:16px;
    margin:0 3px
  }
  .brief h2 {
    font-size:32px
  }
  .brief-line {
    gap:8px;
    font-size:9px
  }
  .brief-bottom>span {
    font-size:6px
  }
  .brief-bottom button {
    font-size:9px
  }
  .brief-controls {
    gap:15px
  }
  .demo-card {
    padding:16px
  }
  .demo-top {
    gap:7px;
    font-size:11px
  }
  .demo-top .brand-mini {
    font-size:22px
  }
  .demo-badge {
    font-size:5px
  }
  .chat-request {
    font-size:14px
  }
  .storage-grid dt {
    font-size:8px
  }
  .data-actions .button {
    font-size:10px;
    padding-inline:9px
  }
  .demo-panel h2 {
    font-size:39px
  }
  .closing-top {
    gap:8px
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  *,*:before,*:after {
    transition:none!important;
    animation:none!important
  }
}
@media(forced-colors:active) {
  .redacted {
    background:CanvasText;
    color:CanvasText
  }
  .brief[data-revealed=true] .redacted {
    background:Canvas;
    color:CanvasText
  }
  .demo-tabs button[aria-selected=true],.brief-controls button[aria-pressed=true] {
    border-bottom-color:Highlight
  }
  .status>span {
    background:CanvasText
  }
}

/* A quieter scale: the product example and the message share the first screen. */
:root { --paper:#fbfaf8; --ink:#282a28; --muted:#666963; --line:#e4e4dd; --accent:#a74d35; }
h1,h2,h3 { font-weight:500; letter-spacing:-.03em; line-height:1.08; }
.wrap { max-width:1184px; width:calc(100% - 112px); }
.header { min-height:100px; border-bottom-color:var(--line); }
.brand { font-weight:520; font-size:24px; line-height:1; letter-spacing:-.9px; gap:13px; }
.quiet-mark { position:relative; display:inline-block; width:22px; height:29px; flex-shrink:0; }
.quiet-mark:before,.quiet-mark:after { content:''; position:absolute; inset:2px 3px 3px 0; border:1px solid #aaa89e; border-radius:2px; transform:rotate(-14deg); }
.quiet-mark:after { inset:0 0 3px 3px; transform:none; border-color:var(--ink); background:var(--paper); }
nav { font-size:13px; gap:30px; }
.eyebrow,.status,.detail,.hero-note,.brief-stage-label,.brief-kicker,.brief-heading,.brief-bottom,.brief-caption,.brief-controls,.demo-stamp,.demo-badge,.source,.comparison-note,.closing-top>span,.footer-bottom { font-family:var(--sans); letter-spacing:0; }
.status { font-size:11px; text-transform:none; color:var(--muted); }
.status>span { width:5px; height:5px; border-radius:50%; background:#8b927d; }
.hero { padding-top:0; }
.hero-stage { grid-template-columns:1.02fr 1fr; gap:65px; margin-top:0; padding-block:90px 82px; align-items:center; }
.hero-copy { padding:0; }
.hero-kicker { display:flex; align-items:center; gap:10px; font-size:12px; color:var(--muted); margin-bottom:25px; }
.hero-kicker>span { width:6px; height:6px; border-radius:50%; background:var(--accent); }
h1 { font-size:clamp(46px,4.8vw,66px); font-weight:500; font-stretch:100%; letter-spacing:-.04em; line-height:1.05; margin-bottom:26px; }
h1>span { color:#777b71; }
.intro { font-size:17px; letter-spacing:0; line-height:1.65; color:var(--muted); max-width:420px; }
.button { border-radius:6px; padding:14px 19px; font-size:13px; font-weight:450; gap:27px; }
.hero-copy>.button { margin-top:27px; }
.hero-note { font-size:11px; margin-top:13px; max-width:none; }
.hero-footnote { display:flex; gap:15px; font:11px/1.5 var(--sans); margin-top:37px; padding-top:0; color:#76796f; }
.hero-footnote>span+span:before { content:'·'; margin-right:15px; color:#b1b2a9; }
.brief-stage { background:#efefea; border:1px solid #e6e6df; border-radius:15px; padding:24px; }
.brief-stage-label { align-items:center; margin-bottom:22px; gap:14px; font-size:12px; color:var(--muted); }
.brief-stage-label>span:last-child { font:10px/1.4 var(--sans); color:#70766a; }
.brief { margin:0; padding:24px; border-radius:9px; transform:none; border:1px solid #e1e2d9; box-shadow:0 3px 5px #27281f04,0 13px 24px #27281f07; }
.brief-heading { gap:10px; font-size:12px; border-bottom-color:var(--line); padding-bottom:18px; }
.brief-heading .quiet-mark { width:17px; height:23px; }
.brief-edition { font-size:10px; }
.brief-content { padding-top:23px; min-height:248px; }
.brief-kicker { font-size:11px; margin-bottom:11px; }
.brief h2 { font-size:32px; font-weight:500; line-height:1.1; letter-spacing:-.025em; margin-bottom:18px; }
.brief-content>p:not(.brief-kicker) { font-size:12px; line-height:1.9; margin-bottom:18px; }
.redacted { background:#777d70; border-radius:2px; }
.brief-line { font-size:11px; padding-block:9px; gap:13px; }
.brief-line>span:first-child { font:10px var(--sans); min-width:35px; }
.brief-bottom { font-size:10px; margin-top:11px; padding-top:14px; }
.brief-bottom>span { font-size:10px; color:var(--muted); }
.brief-bottom button { font-size:11px; color:var(--ink); border-bottom-color:#b4b5ac; }
.brief-controls { gap:22px; margin-top:16px; font-size:11px; }
.brief-controls button { color:var(--muted); padding-block:8px; }
.brief-controls button[aria-pressed=true] { color:var(--ink); font-weight:500; }
.brief-controls button:focus-visible { outline-color:var(--accent); }
.brief-caption { font-size:10px; color:#71766b; margin-top:12px; }
.eyebrow { font-size:12px; color:var(--muted); }
.section { padding-block:65px; }
.work { grid-template-columns:1.02fr 1fr; gap:65px; border-top-color:var(--line); }
h2,.work-heading h2,.section-heading h2 { font-size:44px; font-weight:500; letter-spacing:-.035em; line-height:1.1; }
.work-heading h2 { margin-top:22px; }
.work-list h3 { font-size:24px; font-weight:450; }
.work-list article { gap:22px; }
.work-list .number { color:#8d9284; }
.work-list p { font-size:14px; margin-bottom:12px; }
.detail { font-size:10px; }
.work-arrow { color:#8c9283; font-size:20px; }
.demo-section { background:#f0f1ec; color:var(--ink); padding-block:52px 60px; border-block:1px solid var(--line); }
.demo-heading { grid-template-columns:1.02fr 1fr; gap:65px; }
.demo-heading>.eyebrow { color:var(--muted); font-size:12px; }
.demo-heading>p:not(.eyebrow) { font-size:27px; line-height:1.25; letter-spacing:-.025em; }
.demo-heading>p>span { color:#747a6c; }
.demo-tabs { border-bottom-color:#d5d8cc; margin-top:30px; margin-bottom:35px; }
.demo-tabs button { color:var(--muted); font:10px var(--sans); gap:10px; }
.demo-tabs button span { font-size:13px; }
.demo-tabs button[aria-selected=true] { color:var(--ink); border-bottom:2px solid #7c8670; }
.demo-tabs button:hover { color:var(--ink); }
.demo-tabs button:focus-visible { outline-color:var(--accent); }
.demo-panel { min-height:430px; }
.demo-grid { grid-template-columns:1.02fr 1fr; gap:65px; }
.demo-panel h2 { font-size:46px; font-weight:500; line-height:1.08; }
.demo-panel>div:first-child>.eyebrow { font-size:11px; color:#767d6c; margin-bottom:23px; }
.demo-panel>div:first-child>p:not(.eyebrow) { font-size:15px; color:var(--muted); max-width:350px; }
.demo-panel>div:first-child>p.demo-disclaimer { font:11px/1.6 var(--sans); color:#757a6d; }
.demo-card { border:1px solid #dfe2d5; border-radius:10px; padding:26px; box-shadow:0 3px 10px #2d312004; }
.demo-badge { font-size:9px; padding:5px 7px; border-radius:4px; }
.demo-top .brand-mini { font-size:23px; font-weight:500; letter-spacing:-1.5px; }
.chat-request { font-size:16px; font-weight:450; border-left-color:#b2b9a7; }
.email-preview { border-radius:5px; }
.demo-result,.data-limits { font-size:11px; }
.activity-filters button { font-size:11px; border-radius:4px; }
.activity-entry summary { font-size:13px; }
.activity-entry small,.entry-detail,.storage-label { font-size:11px; }
.storage-grid dt { font:10px var(--sans); }
.section-heading,.news-context,.details { grid-template-columns:1.02fr 1fr; gap:30px 65px; }
.comparison-grid { border-top-color:#c8cbbf; }
.comparison-card { grid-template-columns:.85fr 1fr 1fr; }
.comparison-card>p:not(.eyebrow) { font-size:13px; }
.comparison-card>.eyebrow { font-size:11px; }
.comparison-card>.eyebrow>span { font-size:10px; }
.comparison-card h3 { font-size:22px; font-weight:450; }
.comparison-card .source,.news-context .source { font-size:11px; }
.comparison-note { font-size:11px; line-height:1.7; }
.comparison-card.featured { border-bottom-color:#b4bdaa; }
.featured>.eyebrow { color:#626f51; }
.featured:before { background:#8a9878; }
.news-context h3 { font-size:26px; font-weight:450; }
.news-context p:not(.eyebrow),.faq p { font-size:13px; }
.details { border-top-color:var(--line); }
.details h2 { font-size:36px; }
.closing { background:#e9ece3; color:var(--ink); padding-block:42px; }
.closing-top { border-bottom-color:#cdd3c3; padding-bottom:24px; }
.closing-top .eyebrow,.closing-top>span { font-size:11px; }
.closing h2 { font-size:64px; line-height:1.05; font-weight:450; letter-spacing:-.035em; margin-block:34px; }
.closing-bottom>p { font-size:16px; }
.closing .button:hover { color:white; background:var(--accent); border-color:var(--accent); }
.footer-wordmark { justify-content:flex-start; gap:13px; padding-block:34px; font-size:28px; font-weight:500; letter-spacing:-1px; }
.footer-bottom { border-top-color:var(--line); font-size:10px; padding-block:23px; }
.footer-wordmark>.quiet-mark { font-size:inherit; }
@media(max-width:1100px) {
  .wrap { width:calc(100% - 64px); }
  .hero-stage,.work,.demo-grid,.demo-heading,.section-heading,.news-context,.details { gap:35px; }
  .hero-stage { padding-block:65px; }
  h1 { font-size:5.1vw; }
  .intro { font-size:16px; }
  .brief-stage { padding:20px; }
  .brief { padding:20px; }
  .brief-stage-label { font-size:11px; gap:8px; }
  .brief-stage-label>span:last-child { font-size:9px; }
  .brief-bottom { flex-wrap:wrap; gap:6px 14px; }
  .hero-footnote { flex-wrap:wrap; gap:8px; font-size:10px; }
  .hero-footnote>span+span:before { margin-right:8px; }
  .demo-top { flex-wrap:wrap; }
  .demo-badge { font-size:8px; }
}
@media(max-width:760px) {
  .wrap { width:calc(100% - 40px); }
  .header { min-height:80px; gap:16px; }
  .brand { font-size:21px; gap:9px; }
  .brand .quiet-mark { width:18px; height:24px; }
  nav { display:none; }
  .status { font-size:10px; }
  .hero-stage { grid-template-columns:1fr; padding-block:44px 42px; gap:35px; }
  .hero-copy { display:flex; padding:0; }
  .hero-kicker { font-size:11px; margin-bottom:23px; }
  h1 { font-size:clamp(43px,8.3vw,60px); line-height:1.07; margin-bottom:22px; }
  .intro { font-size:16px; max-width:440px; }
  .hero-copy>.button { margin-top:24px; }
  .hero-note { font-size:11px; margin-top:12px; }
  .hero-footnote { display:none; }
  .brief-stage { padding:20px; border-radius:12px; }
  .brief { padding:20px; }
  .brief-stage-label { font-size:11px; }
  .brief-stage-label>span:last-child { font-size:9px; }
  .brief h2 { font-size:31px; }
  .brief-content { min-height:244px; }
  .brief-heading { font-size:12px; gap:9px; }
  .brief-edition { font-size:9px; }
  .brief-content>p:not(.brief-kicker) { font-size:12px; }
  .brief-line { gap:10px; font-size:11px; }
  .brief-bottom>span { font-size:10px; }
  .brief-bottom button { font-size:11px; }
  .brief-controls { font-size:11px; gap:22px; }
  .brief-caption { font-size:10px; line-height:1.5; }
  .work,.demo-grid,.demo-heading,.section-heading,.news-context,.details { grid-template-columns:1fr; gap:30px; }
  .section { padding-block:44px; }
  h2,.work-heading h2,.section-heading h2 { font-size:38px; }
  .work-list h3 { font-size:25px; }
  .detail { font-size:10px; }
  .demo-section { padding-block:38px 42px; }
  .demo-heading { gap:20px; }
  .demo-heading>p:not(.eyebrow) { font-size:27px; }
  .demo-tabs { margin-top:24px; margin-bottom:32px; }
  .demo-tabs button span { font-size:12px; }
  .demo-panel { min-height:0; }
  .demo-panel h2 { font-size:39px; }
  .demo-panel>div:first-child>.eyebrow { font-size:11px; }
  .demo-panel>div:first-child>p:not(.eyebrow) { font-size:14px; }
  .demo-panel>div:first-child>p.demo-disclaimer { font-size:11px; }
  .demo-card { padding:20px; }
  .demo-top { gap:8px; }
  .demo-badge { font-size:8px; }
  .demo-result { font-size:11px; }
  .comparison-card { grid-template-columns:1fr; }
  .comparison-card h3 { font-size:24px; }
  .comparison-note { font-size:11px; }
  .news-context p:not(.eyebrow) { font-size:13px; }
  .details h2 { font-size:35px; }
  .closing { padding-block:30px; }
  .closing-top { gap:15px; }
  .closing-top .eyebrow,.closing-top>span { font-size:10px; }
  .closing h2 { font-size:48px; margin-block:30px; }
  .footer-wordmark { font-size:27px; padding-block:30px; }
  .footer-bottom { font-size:10px; gap:15px; }
  .privacy h1 { font-size:44px; }
}
@media(max-width:370px) {
  .wrap { width:calc(100% - 32px); }
  .brand { font-size:19px; }
  .status { font-size:9px; }
  h1 { font-size:42px; }
  .brief-stage { padding:14px; }
  .brief-stage-label { font-size:10px; }
  .brief-stage-label>span:last-child { font-size:8px; }
  .brief { padding:16px; }
  .brief h2 { font-size:29px; }
  .brief-line { gap:7px; font-size:10px; }
  .brief-bottom { gap:8px; }
  .brief-bottom>span { font-size:9px; }
  .brief-bottom button { font-size:10px; }
  .brief-controls { gap:15px; }
  .brief-caption { font-size:9px; }
  .demo-card { padding:16px; }
  .demo-badge { font-size:7px; }
  .closing h2 { font-size:43px; }
}
