/* Picasify public identity, v5. Brand kept: Picasify blue, ink, Avenir 600,
   light engineering paper. Reworked for a modern, slick finish: glass header,
   blueprint-grid hero, elevated rounded cards, dark glowing data bands, mono
   data chips and scroll-reveal motion. Scoped away from workspace and admin. */
.marketing {
  --marketing-section: 104px;
  --paper: #f5f3ea;
  --line: #d6dcd2;
  --line-strong: #b9cfc2;
  --canvas: #f0eee3;
  --soft-blue: #e4f1eb;
  --ink-deep: #10201a;
  --ink-grad: linear-gradient(160deg, #1d4939 0%, #10201a 68%);
  --blue-grad: linear-gradient(135deg, #2f8a67 0%, #1e6f54 45%, #173f32 100%);
  --r-sm: 10px;
  --r-md: 16px;
  --r-lg: 24px;
  --shadow-sm: 0 1px 2px #13231e0a, 0 4px 14px #13231e0f;
  --shadow-md: 0 2px 6px #13231e0d, 0 18px 44px #13231e18;
  --shadow-lg: 0 6px 16px #13231e12, 0 32px 80px #13231e24;
  --mono: ui-monospace, 'SF Mono', Menlo, 'Cascadia Code', monospace;
  background: var(--paper);
  -webkit-font-smoothing: antialiased;
}
.marketing h1, .marketing h2, .marketing h3 { font-weight: 650; text-wrap: balance; }
.marketing ::selection { background: #1e6f54; color: #fff; }
.marketing-icon { width: 24px; height: 24px; flex-shrink: 0; color: var(--blue); }

/* ---- Motion ---- */
html.jsr .marketing .rv { opacity: 0; transform: translateY(26px); }
html.jsr .marketing .rv.in, html.jsr .marketing .in { opacity: 1; transform: none; transition: opacity .7s cubic-bezier(.22,.6,.2,1), transform .7s cubic-bezier(.22,.6,.2,1); }
html.jsr .marketing .steps > .in:nth-child(2), html.jsr .marketing .tier-card.in:nth-child(2), html.jsr .marketing .price-card.in:nth-child(2), html.jsr .marketing .usecase-card.in:nth-child(2) { transition-delay: .09s; }
html.jsr .marketing .steps > .in:nth-child(3), html.jsr .marketing .tier-card.in:nth-child(3), html.jsr .marketing .price-card.in:nth-child(3), html.jsr .marketing .usecase-card.in:nth-child(3) { transition-delay: .18s; }
html.jsr .marketing .steps > .in:nth-child(4), html.jsr .marketing .usecase-card.in:nth-child(4) { transition-delay: .27s; }
@media (prefers-reduced-motion: no-preference) {
  .marketing { scroll-behavior: smooth; }
  .marketing .home-hero .hero-copy > *, .marketing .home-hero .pipeline-demo { animation: mkt-rise .8s cubic-bezier(.22,.6,.2,1) both; }
  .marketing .home-hero .hero-copy > :nth-child(2) { animation-delay: .08s; }
  .marketing .home-hero .hero-copy > :nth-child(3) { animation-delay: .16s; }
  .marketing .home-hero .hero-copy > :nth-child(4) { animation-delay: .24s; }
  .marketing .home-hero .hero-copy > :nth-child(5) { animation-delay: .32s; }
  .marketing .home-hero .hero-copy > :nth-child(6) { animation-delay: .4s; }
  .marketing .home-hero .pipeline-demo { animation-delay: .2s; animation-duration: 1s; }
  .marketing .release-note .dot { animation: mkt-pulse 2.6s ease-in-out infinite; }
  .pipe-photo-frame .scan-line { animation: mkt-scan 3.2s cubic-bezier(.45,0,.4,1) infinite; }
}
@keyframes mkt-rise { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
@keyframes mkt-pulse { 0%, 100% { box-shadow: 0 0 0 0 #1e6f5466; } 50% { box-shadow: 0 0 0 5px #1e6f5400; } }
@keyframes mkt-scan { 0% { top: 4%; opacity: 0; } 12% { opacity: 1; } 88% { opacity: 1; } 100% { top: 92%; opacity: 0; } }

/* ---- Header ---- */
.marketing .site-header { position: sticky; top: 0; z-index: 40; max-width: none; padding: 14px max(40px, calc((100% - 1240px) / 2 + 40px)); gap: 28px; background: #ffffffc9; backdrop-filter: blur(16px) saturate(1.6); -webkit-backdrop-filter: blur(16px) saturate(1.6); border-bottom: 1px solid #d6dcd2cc; }
.marketing .site-header .desktop-navigation { margin-left: 30px; gap: 6px; }
.marketing .site-header nav a { font-size: 14px; padding: 8px 14px; border-radius: 999px; transition: background .18s, color .18s; }
.marketing .site-header nav a:hover { background: var(--soft-blue); color: var(--blue); }
.marketing .site-header nav a[aria-current=page] { background: var(--soft-blue); color: var(--blue); }
.marketing .header-actions { gap: 18px; }
.marketing .login-link { padding: 8px 4px; }
.marketing .login-link:hover { color: var(--blue); }

/* ---- Buttons & links ---- */
.marketing .button { border: 0; border-radius: 999px; font-weight: 650; background: var(--blue-grad); box-shadow: 0 1px 2px #173f3240, 0 8px 22px #1e6f543d; transition: transform .18s, box-shadow .18s, filter .18s; }
.marketing .button:hover { transform: translateY(-1px); filter: brightness(1.06); box-shadow: 0 2px 4px #173f3240, 0 12px 30px #1e6f5452; }
.marketing .button:active { transform: translateY(0); }
.marketing .button.secondary { background: #fff; color: var(--ink); border: 1px solid var(--line-strong); box-shadow: var(--shadow-sm); }
.marketing .button.secondary:hover { filter: none; border-color: #9fb4af; box-shadow: var(--shadow-md); }
.marketing .text-link { text-underline-offset: 5px; position: relative; }
.marketing .text-link:after { content: '→'; display: inline-block; margin-left: 6px; transition: transform .2s; }
.marketing .text-link:hover { text-decoration: underline; }
.marketing .text-link:hover:after { transform: translateX(4px); }

/* ---- Eyebrows ---- */
.marketing .release-note { display: inline-flex; align-items: center; gap: 9px; color: var(--blue); font-family: var(--mono); font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; line-height: 1.5; margin-bottom: 26px; padding: 7px 14px; border: 1px solid #b3d2c0; border-radius: 999px; background: #ffffffb3; }
.marketing .release-note .dot, .marketing .home-hero .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--blue); }

/* ---- Hero band: blueprint paper ---- */
.brand-hero-band { position: relative; background:
  radial-gradient(640px 420px at 82% -8%, #1e6f541f, transparent 68%),
  radial-gradient(520px 360px at -6% 30%, #1e6f5414, transparent 65%),
  linear-gradient(#1e6f540a 1px, transparent 1px),
  linear-gradient(90deg, #1e6f540a 1px, transparent 1px),
  linear-gradient(#faf8ef, #efece0);
  background-size: auto, auto, 44px 44px, 44px 44px, auto; border-bottom: 1px solid var(--line); overflow: hidden; }
.marketing .hero { padding-top: 72px; padding-bottom: 84px; gap: 56px; grid-template-columns: 1.05fr 1fr; }
.marketing .hero h1 { font-size: clamp(45px, 4.5vw, 64px); line-height: 1.06; letter-spacing: -.045em; }
.marketing .hero-copy { text-align: left; }
.marketing .hero-copy .release-note, .marketing .hero-actions { justify-content: flex-start; }
.marketing .hero-description { max-width: 480px; font-size: 16.5px; line-height: 1.75; margin-top: 26px; }
.marketing .hero-actions { gap: 24px; margin-top: 32px; }
.marketing .hero .fineprint { color: var(--muted); border-top: 1px solid var(--line); padding-top: 17px; margin-top: 30px; max-width: 460px; }
.marketing .hero h1 em, .marketing .grad-text { font-style: normal; background: var(--blue-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.marketing .home-hero { padding-top: 64px; padding-bottom: 76px; grid-template-columns: 1fr 1.02fr; gap: 64px; }
.marketing .home-hero h1 { color: var(--ink); font-size: clamp(46px, 4.6vw, 66px); line-height: 1.04; letter-spacing: -.05em; }
.marketing .hero-lead { font-size: 20px; font-weight: 600; line-height: 1.45; letter-spacing: -.02em; color: var(--ink); margin-top: 26px; max-width: 480px; }
.marketing .home-hero .hero-description { color: #3f574c; margin-top: 16px; }

/* Minimal hero: one centered column, no visual. */
.marketing .hero-minimal { grid-template-columns: 1fr; justify-items: center; padding-top: 108px; padding-bottom: 116px; }
.marketing .hero-minimal .hero-copy { text-align: center; display: grid; justify-items: center; }
.marketing .hero-minimal h1 { font-size: clamp(52px, 6vw, 86px); }
.marketing .hero-minimal .hero-lead { font-size: clamp(18px, 1.8vw, 22px); font-weight: 500; color: #3f574c; max-width: 640px; }
.marketing .hero-minimal .hero-description { margin: 16px auto 0; max-width: 620px; color: var(--muted); }
.marketing .hero-minimal .hero-actions { justify-content: center; }
.marketing .hero-minimal .fineprint { border-top: 0; padding-top: 0; margin-top: 22px; }

/* How-it-works: steps beside the pipeline sample. */
.how-grid { display: grid; grid-template-columns: 1fr 1.02fr; gap: 64px; align-items: start; }
.how-steps { display: grid; gap: 30px; justify-items: start; }
.how-steps article { display: flex; gap: 18px; }
.how-steps .step-number { margin-bottom: 0; flex-shrink: 0; }
.how-steps h3 { font-size: 20px; margin-bottom: 8px; letter-spacing: -.02em; }
.how-steps p { font-size: 14px; color: var(--muted); line-height: 1.7; }
.how-steps > .text-link { margin-left: 54px; font-size: 14px; }
.how-grid .pipeline-demo { max-width: 540px; width: 100%; justify-self: end; }
.marketing .home-hero .text-link { color: var(--ink); font-weight: 650; }

/* ---- Pipeline demo (hero visual) ---- */
.pipeline-demo { position: relative; background: #fff; border: 1px solid #cfdfd6; border-radius: var(--r-lg); box-shadow: var(--shadow-lg); overflow: hidden; }
.pipeline-demo:before { content: ''; position: absolute; inset: 0 0 auto; height: 4px; background: var(--blue-grad); }
.pipe-stage { padding: 18px 24px 20px; }
.pipe-stage + .pipe-stage { border-top: 1px dashed var(--line-strong); }
.pipe-stage-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 13px; }
.pipe-stage-head .status, .pipe-project .status { position: static; margin-left: auto; }
.pipe-tag { font-family: var(--mono); font-size: 10px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--blue); }
.pipe-src { font-size: 11px; color: var(--muted); }
.pipe-photo-frame { position: relative; border-radius: var(--r-md); overflow: hidden; border: 1px solid var(--line); }
.pipe-photo-frame img { display: block; width: 100%; height: 182px; object-fit: cover; }
.pipe-photo-frame .scan-line { position: absolute; left: 0; right: 0; top: 30%; height: 2px; background: linear-gradient(90deg, #1e6f5400, #1e6f54, #1e6f5400); box-shadow: 0 0 14px 2px #1e6f5466; }
.pipe-project { display: flex; align-items: center; gap: 13px; padding: 12px 14px; border: 1px solid #c2ddce; border-radius: var(--r-md); background: var(--soft-blue); }
.pipe-project .marketing-icon { width: 20px; height: 20px; }
.pipe-project strong { display: block; font-size: 13px; font-weight: 650; }
.pipe-project small { display: block; font-size: 11px; color: var(--muted); margin-top: 1px; }
.pipe-project .status { margin-left: auto; position: static; }
.data-chips { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.chip { display: grid; gap: 2px; padding: 9px 13px; background: var(--soft-blue); border: 1px solid #c2ddce; border-radius: var(--r-sm); min-width: 0; }
.chip small { font-size: 9px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.chip code { font-family: var(--mono); font-size: 12.5px; font-weight: 600; color: #1a5f46; overflow-wrap: anywhere; }
.pipe-outputs { display: grid; gap: 8px; }
.pipe-output { display: flex; align-items: center; gap: 13px; padding: 11px 14px; border: 1px solid var(--line); border-radius: var(--r-md); background: linear-gradient(180deg, #fff, #faf8ef); transition: border-color .2s, transform .2s, box-shadow .2s; }
.pipe-output:hover { border-color: #9cc3ac; transform: translateX(3px); box-shadow: var(--shadow-sm); }
.pipe-output .marketing-icon { width: 21px; height: 21px; }
.pipe-output strong { display: block; font-size: 13px; font-weight: 650; }
.pipe-output small { display: block; font-size: 11px; color: var(--muted); margin-top: 1px; }
.pipe-output .status { margin-left: auto; }
.marketing .status { border-radius: 999px; }

/* ---- Audience strip ---- */
.marketing .audience-strip { background: #fff; border-top: 0; border-bottom: 1px solid var(--line); }
.marketing .audience-strip .page-width { padding-top: 22px; padding-bottom: 22px; }
.marketing .audience-strip p { font-family: var(--mono); font-size: 10px; letter-spacing: .14em; text-transform: uppercase; }
.marketing .audience-strip .page-width > div { gap: 14px; }
.marketing .audience-strip a { color: var(--ink); font-size: 13px; font-weight: 600; padding: 8px 16px; border: 1px solid var(--line); border-radius: 999px; background: var(--paper); transition: border-color .18s, color .18s, background .18s, transform .18s; }
.marketing .audience-strip a:hover { color: var(--blue); border-color: #9cc3ac; background: var(--soft-blue); text-decoration: none; transform: translateY(-1px); }

/* ---- Shared sections ---- */
.marketing .section-intro { align-items: end; gap: 32px; margin-bottom: 44px; }
.marketing .section-intro h2 { font-size: clamp(32px, 3.2vw, 42px); line-height: 1.12; letter-spacing: -.04em; max-width: 620px; }
.marketing .section-intro > p { font-size: 14.5px; line-height: 1.7; max-width: 320px; }
.marketing .steps { gap: 28px; }
.marketing .steps h3 { font-size: 21px; line-height: 1.3; margin-bottom: 12px; letter-spacing: -.02em; }
.marketing .steps p { line-height: 1.75; }
.marketing .story-section { padding-top: var(--marketing-section); padding-bottom: var(--marketing-section); }
.marketing .value-section { padding-top: var(--marketing-section); padding-bottom: var(--marketing-section); }
.marketing .value-problems { gap: 24px; }
.marketing .value-problems article { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 30px 28px; display: flex; flex-direction: column; align-items: flex-start; box-shadow: var(--shadow-sm); transition: transform .25s, box-shadow .25s, border-color .25s; }
.marketing .value-problems article:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); border-color: #b3d2c0; }
.problem-icon { color: var(--blue); width: 44px; height: 44px; padding: 10px; background: var(--soft-blue); border-radius: 13px; margin-bottom: 22px; }
.marketing .value-problems .problem-quote { font-size: 14px !important; color: var(--muted) !important; font-weight: 400; font-style: italic; margin-bottom: 12px !important; }
.marketing .value-problems .pipe-tag { margin-bottom: 11px; }
.marketing .value-problems h3 { max-width: 24ch; }
.marketing .value-problems article > h2 { font-size: 21px; line-height: 1.3; letter-spacing: -.02em; margin-bottom: 12px; max-width: 24ch; }
.marketing .value-problems .text-link { font-size: 13px; margin-top: auto; padding-top: 24px; }
.marketing .step-number { width: 36px; height: 36px; border-radius: 12px; margin-bottom: 22px; font-size: 13px; background: var(--blue-grad); color: #fff; box-shadow: 0 6px 16px #1e6f544d; }
.marketing .step-example { border-radius: var(--r-md); background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow-sm); }
.marketing .step-example strong { font-size: 12px; }
.marketing .step-example small { font-size: 11px; }
.process-band { background: linear-gradient(180deg, #eef4fd, #e6effc); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.marketing .contributor-steps { gap: 30px; }
.marketing .contributor-steps article { position: relative; padding: 0; }
.process-band .step-number:after { content: ''; height: 2px; background: linear-gradient(90deg, #aac8f0, #aac8f000); position: absolute; left: 52px; right: 0; top: 17px; }
.marketing .contributor-steps h3 { font-size: 19px; }

/* ---- Dark panels (company + data) ---- */
.marketing .home-company { padding-top: var(--marketing-section); padding-bottom: var(--marketing-section); }
.home-company-panel { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: center; border-radius: 28px; background:
  radial-gradient(560px 380px at 88% -12%, #1e6f5459, transparent 66%),
  radial-gradient(420px 320px at -8% 112%, #1e6f5438, transparent 62%),
  var(--ink-grad);
  padding: 52px; color: #fff; overflow: hidden; box-shadow: var(--shadow-lg); }
.home-company-panel:before { content: ''; position: absolute; inset: 0; background: linear-gradient(#ffffff0a 1px, transparent 1px), linear-gradient(90deg, #ffffff0a 1px, transparent 1px); background-size: 40px 40px; pointer-events: none; }
.marketing .home-company .release-note { color: #bfe8cf; border-color: #3b5c4d; background: #ffffff0f; }
.home-company-copy h2 { font-size: clamp(32px, 3.4vw, 44px); line-height: 1.1; margin-bottom: 24px; letter-spacing: -.04em; }
.home-company-copy > p:not(.release-note) { color: #cfe3d6; font-size: 15px; line-height: 1.8; }
.home-company-copy > .button { margin-top: 28px; }
.home-company-copy .company-positioning { font-size: 12px !important; margin-top: 22px; color: #9db4a6 !important; }
.job-loop { position: relative; background: #ffffff; color: var(--ink); border-radius: var(--r-lg); padding: 26px; box-shadow: 0 24px 60px #00000040; }
.job-loop-heading { display: flex; align-items: center; gap: 14px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.job-loop-heading span { font-size: 10px; color: var(--muted); font-family: var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.job-loop-heading h3 { font-size: 19px; line-height: 1.3; margin-top: 4px; }
.job-loop ol { list-style: none; padding: 0; margin: 22px 0 0; }
.job-loop li { position: relative; display: flex; gap: 15px; padding-bottom: 22px; }
.job-loop li:not(:last-child):before { content: ''; position: absolute; width: 2px; top: 16px; bottom: 0; left: 4px; background: linear-gradient(var(--line), var(--soft-blue)); }
.loop-dot { width: 10px; height: 10px; border: 2.5px solid var(--blue); background: #fff; border-radius: 50%; flex-shrink: 0; margin-top: 7px; box-shadow: 0 0 0 4px #1e6f541a; }
.job-loop li strong { font-size: 13px; font-weight: 650; }
.job-loop li p { font-size: 12px; line-height: 1.7; color: var(--muted); margin-top: 5px; }
.job-loop-footer { border-top: 1px solid var(--line); padding-top: 16px; display: flex; align-items: center; gap: 8px; font-size: 10px; color: var(--muted); }
.job-loop-footer .marketing-icon { width: 17px; height: 17px; color: var(--green); }

/* ---- Pain / promise band (home) ---- */
.pain-band { padding-top: var(--marketing-section); padding-bottom: var(--marketing-section); }
.pain-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; max-width: 1100px; margin: 0 auto; }
.pain-col { border-radius: var(--r-lg); padding: 34px 32px 36px; }
.pain-col.without { background: #eef1f6; border: 1px dashed #c3cedd; }
.pain-col.without .pipe-tag { color: #76889c; }
.pain-col.without h2 { color: #5d7186; }
.pain-col.with { position: relative; overflow: hidden; background: #fff; border: 1px solid #b3d2c0; box-shadow: var(--shadow-md); }
.pain-col.with:before { content: ''; position: absolute; inset: 0 0 auto; height: 4px; background: var(--blue-grad); }
.pain-col h2 { font-size: clamp(24px, 2.4vw, 30px); line-height: 1.16; letter-spacing: -.03em; margin: 12px 0 20px; }
.pain-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 13px; font-size: 14.5px; line-height: 1.65; }
.pain-list li { display: flex; gap: 12px; align-items: baseline; }
.pain-list li:before { font-size: 13px; font-weight: 700; flex-shrink: 0; }
.pain-col.without .pain-list li { color: #5d7186; }
.pain-col.without .pain-list li:before { content: '✕'; color: #bb343e; }
.pain-col.with .pain-list li:before { content: '✓'; color: var(--green); }
.home-flow + .flow-more { margin-top: 36px; }
.flow-more .text-link { font-size: 14px; }
@media (max-width: 900px) { .pain-cols { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .pain-col { padding: 26px 22px 28px; } }

/* ---- Statement band (home) ---- */
.statement-band { padding: calc(var(--marketing-section) + 8px) 0; text-align: center; background:
  linear-gradient(#1e6f5408 1px, transparent 1px), linear-gradient(90deg, #1e6f5408 1px, transparent 1px), #fff;
  background-size: 44px 44px; border-top: 1px solid var(--line); }
.statement-band h2 { font-size: clamp(34px, 4vw, 56px); line-height: 1.08; letter-spacing: -.045em; max-width: 820px; margin: 0 auto; }
.statement-chips { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 34px auto 26px; max-width: 760px; }
.statement-chips .chip { padding: 9px 16px; }
.statement-band .text-link { font-size: 14px; }
@media (max-width: 760px) {
  .statement-band h2 { font-size: 32px; }
  .statement-chips { gap: 8px; margin: 26px auto 20px; }
}

/* ---- Data teaser band (home) ---- */
.data-teaser { position: relative; padding: 92px 0 84px; background:
  radial-gradient(720px 440px at 18% -10%, #1e6f544d, transparent 64%),
  radial-gradient(560px 400px at 96% 108%, #1e6f5433, transparent 62%),
  var(--ink-grad);
  color: #fff; overflow: hidden; }
.data-teaser:before { content: ''; position: absolute; inset: 0; background: linear-gradient(#ffffff08 1px, transparent 1px), linear-gradient(90deg, #ffffff08 1px, transparent 1px); background-size: 44px 44px; pointer-events: none; }
.data-teaser > .page-width { position: relative; }
.data-teaser-head { max-width: 720px; margin-bottom: 52px; }
.data-teaser-head .release-note { color: #bfe8cf; border-color: #3b5c4d; background: #ffffff0f; }
.data-teaser-head h2 { font-size: clamp(34px, 3.6vw, 48px); line-height: 1.08; letter-spacing: -.04em; }
.data-teaser-head > p { color: #cfe3d6; font-size: 16px; line-height: 1.8; margin-top: 22px; max-width: 640px; }
.tier-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.tier-card { position: relative; display: flex; flex-direction: column; background: #ffffff0d; border: 1px solid #ffffff24; border-radius: var(--r-lg); padding: 28px 26px; backdrop-filter: blur(6px); transition: transform .25s, border-color .25s, background .25s; }
.tier-card:hover { transform: translateY(-5px); border-color: #6fae9280; background: #ffffff14; }
.tier-kicker { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 20px; }
.tier-kicker code { font-family: var(--mono); font-size: 11px; letter-spacing: .14em; color: #a9dec0; }
.tier-kicker .marketing-icon { color: #a9dec0; width: 26px; height: 26px; }
.tier-card h3 { font-size: 21px; letter-spacing: -.02em; margin-bottom: 12px; color: #fff; }
.tier-card > p { font-size: 13.5px; line-height: 1.75; color: #c2d8c9; }
.tier-card .chip { background: #1e6f5426; border-color: #4e8a6d66; margin-top: 4px; }
.tier-card .chip code { color: #bfe8cf; }
.tier-card .tier-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.tier-card .tier-chips .chip { padding: 6px 11px; }
.data-teaser-cta { display: flex; align-items: center; gap: 26px; margin-top: 44px; }
.note-rows { max-width: 820px; padding-top: 72px; padding-bottom: 0; display: grid; gap: 16px; text-align: center; }
.note-rows p { font-size: 14px; color: var(--muted); line-height: 1.8; }
.note-rows strong { color: var(--ink); font-weight: 650; }
.note-rows a { font-weight: 650; white-space: nowrap; }
.data-teaser-cta .text-link { color: #bfe8cf; }
.data-teaser-cta > span { font-size: 12px; color: #9db4a6; }

/* ---- Detail sections & OCR note ---- */
.marketing .detail-section { gap: 80px; padding-bottom: var(--marketing-section); }
.marketing .detail-section.home-search { padding-top: var(--marketing-section); }
.marketing .detail-copy h2 { font-size: clamp(32px, 3.2vw, 42px); line-height: 1.12; margin-bottom: 22px; letter-spacing: -.04em; }
.marketing .detail-copy p { line-height: 1.8; }
.marketing .detail-copy .text-link { display: inline-block; margin: 0 0 18px; }
.marketing .detail-art { background: linear-gradient(145deg, #e9f1fd, #dce9fa); border: 1px solid #cfdfd6; padding: 28px 50px 70px 28px; border-radius: var(--r-lg); }
.marketing .detail-art > img { height: 300px; border-radius: var(--r-md); box-shadow: var(--shadow-md); }
.marketing .ocr-note { right: 18px; bottom: 24px; min-width: 240px; border: 1px solid #c2ddce; border-radius: var(--r-md); background: #ffffffe8; backdrop-filter: blur(10px); box-shadow: var(--shadow-md); padding: 18px 22px; }
.marketing .ocr-note p { font-family: var(--mono); font-size: 12px; }
.marketing .ocr-note mark { border-radius: 5px; }

/* ---- Export section ---- */
.home-export { display: grid; grid-template-columns: 1.05fr 1fr; gap: 80px; align-items: center; padding-top: var(--marketing-section); padding-bottom: var(--marketing-section); }
.home-export .muted { margin-top: 14px; }
.export-package { position: relative; background: #fff; border: 1px solid #cfdfd6; padding: 32px; border-radius: var(--r-lg); box-shadow: var(--shadow-md); overflow: hidden; }
.export-package:before { content: ''; position: absolute; inset: 0 0 auto; height: 4px; background: var(--blue-grad); }
.export-package-top { display: flex; align-items: center; gap: 12px; font-family: var(--mono); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--blue); margin-bottom: 20px; }
.export-package h3 { font-size: 21px; line-height: 1.4; overflow-wrap: anywhere; font-family: var(--mono); font-weight: 600; letter-spacing: -.01em; }
.export-package ul { list-style: none; padding: 0; margin: 24px 0 0; }
.export-package li { display: flex; gap: 16px; align-items: center; padding: 17px 0; border-top: 1px solid var(--line); }
.export-package li strong { display: block; font-size: 14px; }
.export-package li small { display: block; color: var(--muted); font-size: 12px; margin-top: 4px; }
.export-package > p { font-size: 11px; color: var(--muted); padding-top: 12px; }

/* ---- Privacy + closing ---- */
.marketing .privacy-band { max-width: 1160px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); box-shadow: var(--shadow-sm); padding: 34px 38px; gap: 24px; }
.marketing .privacy-mark { width: 46px; height: 46px; padding: 11px; flex-shrink: 0; background: var(--soft-blue); border-radius: 14px; }
.marketing .privacy-band h2 { font-size: 22px; line-height: 1.3; }
.marketing .privacy-band p { max-width: 760px; }
.marketing .closing-cta { max-width: none; margin-top: 88px; padding: 96px 30px; position: relative; overflow: hidden; background:
  radial-gradient(640px 400px at 50% -20%, #1e6f542e, transparent 65%),
  linear-gradient(#1e6f540a 1px, transparent 1px),
  linear-gradient(90deg, #1e6f540a 1px, transparent 1px),
  linear-gradient(180deg, #eef4fd, #e2edfb);
  background-size: auto, 44px 44px, 44px 44px, auto; color: var(--ink); border-top: 1px solid var(--line); }
.marketing .closing-cta h2 { font-size: clamp(36px, 4vw, 54px); line-height: 1.08; letter-spacing: -.045em; }
.marketing .closing-cta p { color: #3f574c; max-width: 580px; margin: 22px auto 30px; }
.marketing .closing-cta > span { color: var(--muted); font-size: 12px; margin-top: 17px; }

/* ---- Secondary pages ---- */
.marketing .audience-project { background: #fff; border: 1px solid #cfdfd6; border-radius: var(--r-lg); box-shadow: var(--shadow-md); overflow: hidden; }
.marketing .audience-project > img { max-height: 310px; object-fit: cover; }
.marketing .audience-project figcaption { padding: 22px 24px; border-top: 4px solid var(--blue); }
.marketing .audience-pains { padding-top: 48px; padding-bottom: 0; border-top: 1px solid var(--line); }
.marketing .audience-pains blockquote { border-left: 3px solid var(--blue); border-radius: 0 var(--r-md) var(--r-md) 0; background: #fff; padding: 20px 22px; font-size: 17px; box-shadow: var(--shadow-sm); }
.marketing .audience-story { padding-top: 72px; }
.marketing .audience-timeline h3 { font-size: 20px; }
.marketing .audience-more { padding-top: 60px; }
.marketing .audience-more .step-example { background: #fff; border-color: var(--line); transition: transform .2s, border-color .2s, box-shadow .2s; }
.marketing .audience-more .step-example:hover { transform: translateY(-3px); border-color: #9cc3ac; box-shadow: var(--shadow-md); }
.marketing .field-record { background: #fff; border: 1px solid #cfdfd6; border-radius: var(--r-lg); box-shadow: var(--shadow-md); padding: 32px; }
.marketing .field-record h2 { font-size: 29px; }
.marketing .field-record ol { background: var(--paper); border: 1px solid var(--line); border-radius: var(--r-md); padding: 0 20px; }
.marketing .field-record li:first-child { border-top: 0; }
.marketing .field-record li strong { font-size: 14px; }
.marketing .business-plan { font-weight: 600; }
.marketing .stopwatch-sequence { margin: 0; max-width: 850px; }
.marketing .stopwatch-time { font-family: var(--mono); font-weight: 600; letter-spacing: -.02em; }
.marketing .stopwatch-sequence > li:not(:last-child):before { background: linear-gradient(#b3d2c0, var(--line)); width: 2px; }
.marketing .business-proof .steps { border-top: 1px solid var(--line); padding-top: 34px; }
.marketing .feature-index { background: #fff; border: 1px solid #cfdfd6; border-radius: var(--r-lg); box-shadow: var(--shadow-md); padding: 8px 30px; }
.marketing .feature-index a { position: relative; padding: 22px 26px 22px 0; transition: padding .2s; grid-template-columns: 30px minmax(0, 1fr); column-gap: 14px; }
.marketing .feature-index a > code { grid-row: 1 / 3; font-family: var(--mono); font-size: 11px; font-weight: 600; color: var(--blue); padding-top: 5px; }
.marketing .feature-index a > strong, .marketing .feature-index a > span { grid-column: 2; }
.marketing .feature-index a:after { content: '→'; color: var(--blue); position: absolute; right: 2px; top: 26px; font-size: 19px; transition: transform .2s; }
.marketing .feature-index a:hover:after { transform: translateX(4px); }
.marketing .feature-index strong { font-size: 18px; }
.marketing .feature-index span { font-size: 12px; }
.marketing .feature-sharing { padding-top: 0; }
.marketing .export-contents { background: #fff; border: 1px solid #cfdfd6; border-radius: var(--r-lg); box-shadow: var(--shadow-sm); }
.marketing .export-contents h3 { padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.marketing .export-contents dt { color: var(--ink); font-family: var(--mono); font-size: 13.5px; }
.marketing .document-page { max-width: 900px; padding-top: 64px; }
.marketing .document-page h1 { font-size: clamp(38px, 4vw, 52px); line-height: 1.08; letter-spacing: -.045em; }
.marketing .document-page .lead { max-width: 55ch; line-height: 1.7; }
.marketing .document-page .notice { border-radius: var(--r-md); border-color: #c2ddce; }
.marketing .pricing-section { padding-top: 56px; }
.marketing .pricing-intro h1 { font-size: clamp(40px, 4.4vw, 56px); letter-spacing: -.045em; }
.marketing .price-card { border-radius: var(--r-lg); background: #fff; border-color: var(--line); box-shadow: var(--shadow-sm); transition: transform .25s, box-shadow .25s, border-color .25s; }
.marketing .price-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-md); border-color: #b3d2c0; }
.marketing .corporate-price-card { position: relative; background: linear-gradient(180deg, #f3f8ff, #e9f2fe); border-color: #9cc3ac; overflow: hidden; }
.marketing .corporate-price-card:before { content: ''; position: absolute; inset: 0 0 auto; height: 4px; background: var(--blue-grad); }
.marketing .plan-matrix-scroll { overflow-x: auto; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; box-shadow: var(--shadow-sm); }
.marketing .plan-matrix table { width: 100%; border-collapse: collapse; min-width: 680px; font-size: 14px; }
.marketing .plan-matrix th, .marketing .plan-matrix td { padding: 13px 18px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
.marketing .plan-matrix thead th { font-size: 15px; background: var(--paper); }
.marketing .plan-matrix tbody th { font-weight: 500; color: var(--muted); }
.marketing .plan-matrix tbody tr:last-child :is(th, td) { border-bottom: 0; }
.marketing .plan-matrix .matrix-corporate { background: var(--soft-blue); }
.marketing .price { font-weight: 650; }
.marketing .trial-intro { background: #fff; border: 1px solid #cfdfd6; border-radius: var(--r-lg); box-shadow: var(--shadow-md); }
.marketing .faq summary { line-height: 1.6; transition: color .15s; }
.marketing .faq summary:hover { color: var(--blue); }

/* ---- Use cases page ---- */
.marketing .usecase-hero { padding-top: 56px; padding-bottom: 68px; }
.usecase-demo .pipe-photo-frame img { height: 164px; }
.usecase-tier { padding-top: 84px; padding-bottom: 8px; }
.usecase-tier-head { display: grid; gap: 16px; max-width: 760px; margin-bottom: 40px; }
.tier-badge { display: inline-flex; align-items: center; gap: 10px; width: max-content; font-family: var(--mono); font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--blue); padding: 7px 14px; border: 1px solid #b3d2c0; border-radius: 999px; background: #fff; }
.tier-badge .status { position: static; margin: 0; }
.usecase-tier-head h2 { font-size: clamp(30px, 3.4vw, 44px); line-height: 1.1; letter-spacing: -.04em; }
.usecase-tier-head > p { color: var(--muted); font-size: 16px; line-height: 1.8; max-width: 640px; }
.usecase-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.usecase-card { background: #fff; border: 1px solid var(--line); border-radius: var(--r-lg); padding: 26px 26px 28px; box-shadow: var(--shadow-sm); transition: transform .25s, box-shadow .25s, border-color .25s; }
.usecase-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: #b3d2c0; }
.usecase-card .marketing-icon { width: 42px; height: 42px; padding: 10px; background: var(--soft-blue); border-radius: 12px; margin-bottom: 18px; }
.usecase-card h3 { font-size: 18px; letter-spacing: -.02em; margin-bottom: 10px; }
.usecase-card p { font-size: 14px; color: var(--muted); line-height: 1.75; }
.usecase-card .uc-examples { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 16px; }
.usecase-card .uc-examples .chip { padding: 5px 10px; }
.usecase-card .uc-examples .chip code { font-size: 11px; }
.usecase-fineprint { margin-top: 26px; max-width: 660px; }
.trade-card { display: flex; flex-direction: column; color: var(--ink); }
.trade-card:hover h3 { color: var(--blue); }
.trade-card .trade-quote { font-style: italic; color: var(--muted); font-size: 13px; margin-bottom: 10px; }
.trade-card .trade-link { margin-top: 14px; font-size: 13px; font-weight: 650; color: var(--blue); }
.type-card .type-matters-list { list-style: none; margin: 4px 0 0; padding: 0; display: grid; gap: 6px; font-size: 13px; color: var(--muted); }
.type-card .type-matters-list li { padding-left: 18px; position: relative; line-height: 1.55; }
.type-card .type-matters-list li:before { content: '✓'; position: absolute; left: 0; color: var(--green); font-weight: 700; font-size: 12px; }
.type-card .uc-examples { margin-top: 16px; }
.usecase-tier.usecase-dark { margin-top: 84px; padding: 84px 0; background:
  radial-gradient(640px 420px at 85% -10%, #1e6f544d, transparent 64%),
  var(--ink-grad); color: #fff; overflow: hidden; position: relative; }
.usecase-dark:before { content: ''; position: absolute; inset: 0; background: linear-gradient(#ffffff08 1px, transparent 1px), linear-gradient(90deg, #ffffff08 1px, transparent 1px); background-size: 44px 44px; pointer-events: none; }
.usecase-dark > .page-width { position: relative; }
.usecase-dark .tier-badge { background: #ffffff0f; border-color: #3b5c4d; color: #bfe8cf; }
.usecase-dark .usecase-tier-head > p { color: #cfe3d6; }
.usecase-dark .usecase-card { background: #ffffff0d; border-color: #ffffff24; backdrop-filter: blur(6px); box-shadow: none; }
.usecase-dark .usecase-card:hover { border-color: #6fae9280; box-shadow: none; }
.usecase-dark .usecase-card h3 { color: #fff; }
.usecase-dark .usecase-card p { color: #c2d8c9; }
.usecase-dark .usecase-card .marketing-icon { background: #1e6f5433; color: #a9dec0; }
.usecase-dark .usecase-fineprint { color: #9db4a6; }

/* ---- Footer ---- */
.marketing .site-footer { display: grid; grid-template-columns: 1.6fr 1fr 1fr; gap: 45px 70px; padding-top: 64px; padding-bottom: 28px; border-top: 1px solid var(--line); background: #fff; max-width: none; }
.marketing .site-footer > * { min-width: 0; }
.marketing .footer-brand p { color: var(--muted); font-size: 15px; line-height: 1.7; margin-top: 19px; }
.marketing .site-footer nav { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding: 0; }
.marketing .site-footer nav h2 { font-family: var(--mono); font-size: 10px; line-height: 1.5; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin-bottom: 6px; }
.marketing .site-footer a:not(.brand) { font-size: 13px; color: #3f574c; transition: color .15s; }
.marketing .site-footer a:hover { color: var(--blue); }
.marketing .footer-bottom { grid-column: 1 / -1; border-top: 1px solid var(--line); padding-top: 22px; display: flex; align-items: center; gap: 35px; color: var(--muted); font-size: 11px; }
.marketing .footer-bottom > div { display: flex; gap: 20px; }
.marketing .footer-bottom > span:last-child { margin-left: auto; }

/* ---- Brand lockup ---- */
.marketing .brand > img.brand-wordmark { display: block; width: 150px; height: auto; }
.marketing .brand-lockup { display: inline-flex; flex-direction: column; align-items: flex-start; gap: 2px; }
/* The wordmark SVG has ~7/138 of internal left padding before the P; offset the
   motto to start exactly under it (150px render → 8px). */
.marketing .brand-moto { font-family: var(--mono); font-size: 9px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--muted); padding-left: 8px; white-space: nowrap; }
@media (max-width: 760px) { .marketing .brand-moto { padding-left: 6px; } }
.marketing .footer-brand .brand > img.brand-wordmark { width: 168px; }

/* ---- Responsive ---- */
@media (max-width: 1100px) {
  .marketing .hero { gap: 35px; }
  .marketing .site-header { padding-left: 24px; padding-right: 24px; }
  .marketing .site-header .desktop-navigation { margin-left: 0; gap: 2px; }
  .marketing .site-header nav a { padding: 8px 10px; }
  .marketing .home-hero { gap: 36px; }
  .marketing .hero-actions { gap: 18px; flex-wrap: wrap; }
  .marketing .audience-strip .page-width { flex-wrap: wrap; gap: 12px; }
  .home-company-panel { gap: 35px; padding: 36px; }
  .marketing .detail-section, .home-export { gap: 45px; }
  .marketing .privacy-band { margin-left: 40px; margin-right: 40px; }
  .marketing .privacy-band .button { margin-left: 0; }
  .marketing .site-footer { gap: 35px 40px; }
  .tier-row { gap: 14px; }
  .tier-card { padding: 24px 20px; }
}
@media (max-width: 900px) {
  .marketing { --marketing-section: 72px; }
  .marketing .hero h1 { font-size: 46px; }
  .marketing .home-hero h1 { font-size: 48px; }
  .pipe-stage { padding: 15px 18px 17px; }
  .pipe-photo-frame img { height: 150px; }
  .marketing .section-intro h2 { font-size: 32px; }
  .marketing .detail-copy h2 { font-size: 34px; }
  .marketing .steps { gap: 20px; }
  .marketing .value-problems article { padding: 24px 22px; }
  .marketing .privacy-band { flex-wrap: wrap; }
  .marketing .privacy-band > div { flex: 1; min-width: 70%; }
  .marketing .privacy-band > .button { margin-left: 70px; }
  .marketing .home-company-panel { grid-template-columns: 1fr; }
  .home-company-copy { max-width: 560px; }
  .job-loop ol { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
  .job-loop li { gap: 10px; }
  .job-loop li:before { display: none; }
  .tier-row { grid-template-columns: 1fr; }
  .usecase-grid { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .marketing { --marketing-section: 56px; }
  /* Decorative line breaks in display copy cause cramped, overlapping lines on
     narrow screens; let text wrap naturally instead. */
  .marketing :is(h1, h2, .hero-description, .section-intro > p) br { display: none; }
  .marketing h1, .marketing h2 { overflow-wrap: break-word; }
  .marketing .site-header { padding: 12px 20px; gap: 10px; }
  .marketing .site-header .brand { margin-right: auto; }
  .marketing .site-header .desktop-navigation, .marketing .header-actions .login-link { display: none; }
  .marketing .header-actions { gap: 0; }
  .marketing .header-actions .button { font-size: 11px; min-height: 38px; padding: 8px 14px; }
  .mobile-menu { display: block; }
  .marketing .hero, .marketing .home-hero { grid-template-columns: 1fr; gap: 36px; padding-top: 40px; padding-bottom: 46px; }
  .marketing .hero-minimal { padding-top: 58px; padding-bottom: 62px; }
  .how-grid { grid-template-columns: 1fr; gap: 36px; }
  .how-grid .pipeline-demo { justify-self: center; }
  .how-steps > .text-link { margin-left: 0; }
  .marketing .hero h1 { font-size: 42px; }
  .marketing .home-hero h1 { font-size: clamp(38px, 11vw, 48px); }
  .marketing .release-note { font-size: 10px; margin-bottom: 20px; padding: 6px 12px; }
  .marketing .hero-description { font-size: 15px; line-height: 1.75; margin-top: 22px; }
  .marketing .hero-actions { gap: 16px; margin: 24px 0 13px; flex-wrap: wrap; }
  .marketing .hero-actions .text-link { font-size: 13px; }
  .marketing .hero .fineprint { font-size: 11px; }
  .pipeline-demo { width: 100%; max-width: 500px; justify-self: center; }
  .data-chips { grid-template-columns: 1fr 1fr; gap: 7px; }
  .chip code { font-size: 11.5px; }
  .marketing .audience-strip .page-width { display: block; padding-top: 22px; padding-bottom: 22px; }
  .marketing .audience-strip .page-width > div { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 15px; }
  .marketing .audience-strip a { font-size: 12px; padding: 7px 13px; }
  .marketing .section-intro { display: block; margin-bottom: 30px; }
  .marketing .section-intro h2 { font-size: 30px; }
  .marketing .section-intro > p { margin-top: 16px; font-size: 13px; max-width: none; }
  .marketing .section-intro > p br { display: none; }
  .marketing .steps { gap: 16px; }
  .marketing .steps h3 { font-size: 20px; }
  .problem-icon { width: 40px; height: 40px; margin-bottom: 16px; }
  .marketing .value-problems h3 { max-width: none; }
  .marketing .value-problems .text-link { padding-top: 18px; }
  .marketing .contributor-steps { gap: 26px; }
  .marketing .contributor-steps article { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 0 17px; }
  .marketing .contributor-steps article h3 { margin-top: 6px; font-size: 19px; }
  .marketing .contributor-steps article p { grid-column: 2; }
  .marketing .step-number { margin-bottom: 0; grid-row: 1 / 3; }
  .process-band .step-number:after { display: none; }
  .how-steps .step-number { position: static; }
  .home-company-panel { padding: 28px 22px; gap: 27px; border-radius: 22px; }
  .home-company-copy h2 { font-size: 32px; }
  .home-company-copy > p:not(.release-note) { font-size: 13.5px; }
  .job-loop { padding: 20px; }
  .job-loop-heading { gap: 10px; }
  .job-loop-heading h3 { font-size: 16px; }
  .job-loop ol { display: block; }
  .job-loop li { gap: 12px; }
  .job-loop li:not(:last-child):before { display: block; }
  .job-loop-footer { line-height: 1.6; }
  .data-teaser { padding: 60px 0 64px; }
  .data-teaser-head { margin-bottom: 34px; }
  .data-teaser-head h2 { font-size: 32px; }
  .data-teaser-head > p { font-size: 14px; }
  .data-teaser-cta { flex-wrap: wrap; gap: 18px; margin-top: 34px; }
  .marketing .detail-section, .home-export { grid-template-columns: 1fr; gap: 30px; }
  .marketing .detail-copy h2 { font-size: 32px; }
  .marketing .detail-copy p { font-size: 14px; }
  .marketing .detail-copy .muted { font-size: 12px; }
  .marketing .detail-art { padding: 20px 35px 70px 20px; }
  .marketing .detail-art > img { height: 240px; }
  .marketing .ocr-note { right: 12px; bottom: 18px; min-width: 210px; font-size: 12px; padding: 15px 18px; }
  .export-package { padding: 24px; }
  .export-package h3 { font-size: 18px; }
  .marketing .privacy-band { margin-left: 20px; margin-right: 20px; padding: 24px; gap: 16px; }
  .marketing .privacy-band > div { flex-basis: 100%; min-width: 0; }
  .marketing .privacy-band h2 { font-size: 21px; }
  .marketing .privacy-band p { font-size: 13px; }
  .marketing .privacy-band > .button { margin-left: 0; }
  .marketing .closing-cta { padding: 58px 23px; margin-top: 56px; }
  .marketing .closing-cta h2 { font-size: 34px; }
  .marketing .closing-cta p { font-size: 14px; }
  .marketing .audience-project { margin-right: 0; }
  .marketing .audience-project figcaption { padding: 20px; }
  .marketing .audience-project figcaption > strong { font-size: 17px; }
  .marketing .audience-pains { padding-top: 30px; }
  .marketing .audience-pains blockquote { font-size: 15px; padding: 16px 18px; }
  .marketing .audience-timeline article, .marketing .business-proof .steps article { padding: 0; }
  .marketing .audience-timeline .step-number { position: static; margin-bottom: 18px; }
  .marketing .field-record { padding: 24px; }
  .marketing .field-record h2 { font-size: 25px; }
  .marketing .field-record ol { padding: 0 16px; }
  .marketing .feature-index { padding: 4px 24px; }
  .marketing .feature-index strong { font-size: 17px; }
  .marketing .document-page { padding-top: 35px; }
  .marketing .document-page h1 { font-size: 38px; }
  .marketing .pricing-section { padding-top: 32px; }
  .marketing .pricing-intro h1 { font-size: 38px; }
  .marketing .usecase-hero { padding-top: 38px; padding-bottom: 42px; }
  .usecase-tier { padding-top: 54px; }
  .usecase-tier.usecase-dark { margin-top: 54px; padding: 54px 0; }
  .usecase-tier-head h2 { font-size: 29px; }
  .usecase-tier-head > p { font-size: 14px; }
  .usecase-card { padding: 22px 20px 24px; }
  .marketing .site-footer { grid-template-columns: 1fr 1fr; gap: 32px 20px; padding: 38px 23px 24px; }
  .marketing .footer-brand { grid-column: 1 / -1; }
  .marketing .footer-brand p { font-size: 14px; margin-top: 14px; }
  .marketing .site-footer nav { gap: 12px; }
  .marketing .site-footer a:not(.brand) { font-size: 12px; }
  .marketing .footer-bottom { flex-wrap: wrap; gap: 16px; padding-top: 20px; font-size: 10px; }
  .marketing .footer-bottom > span:first-child { flex-basis: 100%; }
  .marketing .footer-bottom > span:last-child { margin-left: 0; flex-basis: 100%; }
  .marketing .site-header .brand > img.brand-wordmark { width: 112px; height: auto; }
}
@media (max-width: 360px) {
  .marketing .home-hero h1 { font-size: 36px; }
  .marketing .hero h1:not(.home-hero h1) { font-size: 36px; }
  .data-chips { grid-template-columns: 1fr; }
  .home-company-panel { padding: 24px 18px; }
  .job-loop { padding: 17px; }
  .marketing .site-header .brand > img.brand-wordmark { width: 102px; }
}

/* ---- Mobile menu ---- */
.mobile-menu { display: none; }
@media (max-width: 760px) {
  .mobile-menu { display: block; }
  .mobile-menu summary { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 999px; cursor: pointer; list-style: none; }
  .mobile-menu summary::-webkit-details-marker { display: none; }
  .mobile-menu summary svg { width: 23px; height: 23px; fill: none; stroke: var(--ink); stroke-width: 1.8; stroke-linecap: round; }
  .mobile-menu[open] summary { background: var(--soft-blue); }
  .marketing .mobile-menu nav { display: flex; position: absolute; z-index: 30; right: 16px; top: 58px; width: min(280px, calc(100vw - 32px)); padding: 10px; flex-direction: column; gap: 0; margin: 0; border: 1px solid var(--line); border-radius: var(--r-md); background: #fff; box-shadow: var(--shadow-lg); }
  .marketing .mobile-menu nav a { padding: 12px 14px; border-radius: 10px; font-weight: 600; }
  .marketing .mobile-menu nav a:hover { background: var(--soft-blue); color: var(--blue); }
}

.focus-grid { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 900px) { .focus-grid { grid-template-columns: 1fr; } }

/* Greentree: serif display over Avenir body, per the Redwood pairing. */
.marketing h1, .marketing h2, .marketing .hero-lead {
  font-family: 'Iowan Old Style', 'Palatino Linotype', Palatino, Georgia, serif;
  letter-spacing: -.015em; font-weight: 600;
}
.marketing h1 { letter-spacing: -.02em; }
.marketing h1 em, .marketing .grad-text { font-style: italic; }
.marketing .hero-lead { font-weight: 500; }

.story-quote{margin:14px 0 0;font-family:var(--serif,"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif);font-style:italic;font-size:15.5px;color:inherit;opacity:.82;max-width:560px}

.fn-section{padding-top:70px;padding-bottom:40px}
.fn-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.fn-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px 30px}
.fn-card h3{font-size:21px;letter-spacing:-.02em;margin-bottom:8px}
.fn-lede{font-weight:700;font-size:14.5px;margin-bottom:9px}
.fn-card p:not(.fn-lede){font-size:13.5px;color:var(--muted);line-height:1.75}
.how-copy{max-width:520px}
.how-copy .how-intro{margin:16px 0 26px;font-size:14.5px;line-height:1.75}
.stream-section{padding-top:60px;padding-bottom:60px}
.stream-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.stream-grid a{display:grid;gap:5px;border:1px solid var(--line);border-radius:14px;padding:18px 20px;color:inherit;background:#fff;transition:border-color .15s}
.stream-grid a:hover{border-color:#1e6f54}
.stream-grid strong{font-size:15px}
.stream-grid span{font-size:12.5px;color:var(--muted);line-height:1.6}
.field-section{padding-bottom:70px}
.field-band{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--soft-blue);border-radius:22px;padding:34px 38px}
.field-band h2{font-size:26px;margin-bottom:10px}
.field-band p{font-size:14px;color:var(--muted);max-width:640px}
.export-chips{margin-top:18px}
.request-access{display:grid;place-items:start center;padding-top:70px;padding-bottom:90px}
.request-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:40px;max-width:560px;width:100%;display:grid;gap:14px;box-shadow:0 18px 50px #13231e0f}
.request-card h1{font-size:34px}
@media(max-width:900px){.fn-grid{grid-template-columns:1fr}.stream-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.stream-grid{grid-template-columns:1fr}.field-band{flex-direction:column;align-items:flex-start}}

.not-found{text-align:center;padding-top:110px;padding-bottom:140px;display:grid;justify-items:center;gap:18px}
.not-found h1{font-size:52px}
.not-found .muted{max-width:420px}

/* Company identity: footer line, About, support contact. */
.marketing .footer-company { font-style: normal; color: var(--muted); font-size: 13px; line-height: 1.6; margin-top: 14px; overflow-wrap: anywhere; }
.marketing .about-company { max-width: 760px; padding-top: 72px; padding-bottom: 24px; text-align: center; }
.marketing .about-company .release-note { justify-content: center; }
.marketing .about-company h2 { margin: 10px 0 16px; }
.marketing .about-company p { overflow-wrap: anywhere; }
.marketing .contact-block { border: 1px solid var(--line); background: var(--paper); padding: 20px 22px; margin: 28px 0; overflow-wrap: anywhere; }
.marketing .contact-block h2 { margin-top: 0; }
@media (max-width: 760px) { .marketing .about-company { padding-top: 48px; } }

/* Privacy and Terms: short sections, plain lists. */
.marketing .legal-meta { font-family: var(--mono); font-size: 11px; color: var(--muted); margin-bottom: 20px; overflow-wrap: anywhere; }
.marketing .legal-page ul { margin: 0 0 15px; padding-left: 20px; color: var(--muted); }
.marketing .legal-page li { line-height: 1.7; margin-bottom: 6px; overflow-wrap: anywhere; }
.marketing .legal-page li strong { color: var(--ink); }
.marketing .legal-page p { overflow-wrap: anywhere; }

/* Homepage: early-teams line, coming strip, example labels, works-with, Corporate block. */
.marketing .early-teams-line { font-size: 14px; font-weight: 600; color: var(--ink); max-width: 560px; margin-top: 8px; }
.coming-strip { margin-top: 22px; border: 1px dashed var(--line-strong); border-radius: 14px; padding: 16px 20px; background: transparent; }
.coming-strip h3 { font-family: var(--mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin-bottom: 8px; }
.coming-strip ul { margin: 0; padding-left: 18px; columns: 2; column-gap: 32px; font-size: 13px; color: var(--muted); line-height: 1.7; }
.coming-strip p { font-size: 12px; color: var(--muted); margin-top: 8px; }
.marketing .example-label { font-family: var(--mono); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin: 0 0 10px; }
.marketing .example-tag { display: inline-block; font-family: var(--mono); font-size: 9px; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); border: 1px solid var(--line); border-radius: 999px; padding: 1px 7px; margin-left: 6px; vertical-align: middle; }
.works-with { padding-top: 72px; }
.works-with .section-intro { margin-bottom: 26px; }
.works-with-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.works-with-grid p { background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 20px 22px; font-size: 14px; color: var(--muted); line-height: 1.7; }
.works-with-grid strong { display: block; color: var(--ink); font-size: 15px; margin-bottom: 6px; }
.works-with-note { margin-top: 14px; }
.corporate-block { padding-top: 56px; }
.corporate-band { display: flex; align-items: center; justify-content: space-between; gap: 30px; background: #fff; border: 1px solid var(--line); border-radius: 22px; padding: 34px 38px; }
.corporate-band h2 { font-size: 26px; margin: 14px 0 10px; }
.corporate-band p { font-size: 14px; color: var(--muted); max-width: 660px; }
@media (max-width: 760px) {
  .coming-strip ul { columns: 1; }
  .works-with-grid { grid-template-columns: 1fr; }
  .corporate-band { flex-direction: column; align-items: flex-start; padding: 26px 22px; }
}

/* Pricing: Corporate from-price, overage note, pilot block. */
.marketing .price-from { display: block; font-size: 30px; overflow-wrap: anywhere; }
.marketing .plan-action { align-self: end; }
.marketing .plan-action .button { width: 100%; min-height: 46px; }
.marketing .price-from span { display: block; }
.marketing .allowance-secondary { opacity: .8; font-size: 90%; }
.marketing .plan-overage { font-size: 12px; color: var(--muted); line-height: 1.6; margin: 12px 0 16px; }
.pilot-block { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin: 34px 0 10px; background: var(--soft-blue); border-radius: 22px; padding: 32px 38px; }
.pilot-block h2 { font-size: 26px; margin: 14px 0 12px; }
.pilot-block ul { margin: 0; padding-left: 18px; color: var(--muted); font-size: 14px; line-height: 1.8; overflow-wrap: anywhere; }
@media (max-width: 760px) { .pilot-block { flex-direction: column; align-items: flex-start; padding: 26px 22px; } .pilot-block h2 { font-size: 22px; } }

/* Navigation: Request access primary, Log in secondary. */
.marketing .header-actions .button-secondary-link { border: 1px solid var(--line-strong); border-radius: 999px; padding: 7px 16px; font-size: 13px; background: #fff; }
.marketing .header-actions .button-secondary-link:hover { border-color: var(--blue); }
.marketing .mobile-menu nav a.mobile-request { background: var(--blue-grad); color: #fff; text-align: center; margin-top: 8px; }
.marketing .mobile-menu nav a.mobile-request:hover { color: #fff; filter: brightness(1.06); }
.marketing .mobile-menu nav a.mobile-login { text-align: center; border: 1px solid var(--line-strong); margin-top: 8px; }
.marketing .request-done { line-height: 1.7; }
.marketing .request-done strong { display: block; }

/* Good to know before you start: shared on Features and Support. */
.good-to-know { border: 1px solid var(--line); background: #fff; border-radius: 18px; padding: 24px 28px; margin: 28px 0; scroll-margin-top: 24px; }
.marketing .good-to-know h2 { font-size: 21px; margin: 0 0 14px; }
.good-to-know dl { margin: 0; display: grid; gap: 12px; }
.good-to-know dl > div { display: grid; grid-template-columns: 130px 1fr; gap: 16px; border-top: 1px solid var(--line); padding-top: 12px; }
.good-to-know dt { font-weight: 650; font-size: 14px; color: var(--ink); }
.good-to-know dd { margin: 0; font-size: 14px; color: var(--muted); line-height: 1.7; }
@media (max-width: 760px) { .good-to-know { padding: 20px; } .good-to-know dl > div { grid-template-columns: 1fr; gap: 4px; } }

/* Persona pages: Running a team? block. */
.team-block { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 56px; background: #fff; border: 1px solid var(--line); border-radius: 22px; padding: 32px 38px; max-width: 1160px; }
.marketing .team-block h2 { font-size: 26px; margin: 14px 0 10px; }
.team-block p { font-size: 14px; color: var(--muted); max-width: 680px; line-height: 1.7; }
.team-block .team-example { margin-top: 12px; color: var(--ink); font-weight: 600; }
.team-block .example-tag { margin-left: 0; margin-right: 6px; }
@media (max-width: 760px) { .team-block { flex-direction: column; align-items: flex-start; padding: 26px 22px; } .marketing .team-block h2 { font-size: 22px; } }

/* Proof: product screenshots, sample report links, customer quote slot. */
.product-shot { margin: 0; }
.product-shot img { display: block; width: 100%; height: auto; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.product-shot figcaption { font-family: var(--mono); font-size: 10px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); margin-top: 8px; }
.screens-section { padding-top: 64px; }
.screens-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.marketing .sample-links { font-size: 14px; margin-top: 18px; }
.data-teaser .sample-links { color: #cfe3d6; }
.data-teaser .sample-links a { color: #fff; text-decoration: underline; }
.pilot-actions { display: grid; gap: 4px; justify-items: start; max-width: 260px; }
.pilot-actions .sample-links { font-size: 12px; color: var(--muted); }
.customer-quote { padding-top: 64px; }
.customer-quote blockquote { margin: 0 auto; max-width: 760px; text-align: center; }
.customer-quote p { font-size: 22px; line-height: 1.5; color: var(--ink); }
.customer-quote footer { margin-top: 12px; color: var(--muted); font-size: 14px; }
@media (max-width: 760px) { .screens-grid { grid-template-columns: 1fr; } .screens-grid .product-shot img { max-width: 380px; margin: 0 auto; } }
@media (max-width: 760px) { .tier-badge { width: auto; max-width: 100%; white-space: normal; line-height: 1.5; } }

/* Pricing v2: Corporate inclusions, contributors line, sales email. */
.marketing .corporate-included { font-size: 13px; color: var(--ink); font-weight: 600; line-height: 1.5; margin-top: 8px; }
.marketing .plan-email { font-size: 12px; color: var(--muted); text-align: center; margin-top: 8px; overflow-wrap: anywhere; }
.marketing .contributors-line { text-align: center; max-width: 760px; margin: 22px auto 0; font-size: 15px; color: var(--ink); }
.marketing .corporate-price { margin: 4px 0 10px; font-weight: 650; }

/* Problem pages & homepage problem tiles */
.home-problem-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.home-problem-grid{grid-template-columns:1fr}}
a.problem-card{display:block;color:inherit;text-decoration:none;transition:border-color .15s}
a.problem-card:hover{border-color:#1e6f54}
.problem-card h2{font-size:22px;letter-spacing:-.02em;margin:12px 0 8px;line-height:1.2}
.problem-card>p:last-child{font-size:13.5px;color:var(--muted);line-height:1.75}
.home-closing-lines{padding-bottom:72px}
.problem-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:15px;color:var(--muted);max-width:760px}
.problem-list li{padding-left:20px;position:relative;line-height:1.7}
.problem-list li:before{content:'\2713';position:absolute;left:0;color:var(--green);font-weight:700;font-size:13px}
.problem-copy{max-width:760px;color:var(--muted);line-height:1.8;font-size:16px;margin-bottom:12px}
.home-closing-lines a{white-space:normal}
.problem-shot{max-width:760px}

/* Expense story: illustrative source-backed dashboard below the hero. */
.expense-story{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(28px,5vw,80px);align-items:center}.expense-story-heading h2{font-size:clamp(30px,4vw,48px);line-height:1.12;letter-spacing:-1.4px;margin:16px 0}.expense-story-heading p{max-width:38ch}.expense-preview{background:linear-gradient(145deg,#fff,#fcf5f7);border:1px solid #e6d8de;border-radius:24px;padding:clamp(22px,4vw,38px);box-shadow:0 22px 65px #422d380d}.expense-preview-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid #eadfe3;padding:12px 0 24px}.expense-preview-top small,.expense-preview-top span{display:block}.expense-preview-top strong{display:block;font-size:clamp(29px,4vw,42px);letter-spacing:-1px;color:#893e50;margin:8px 0}.preview-pill{padding:7px 11px;border-radius:20px;background:#f1e2e7;color:#78384a;font-size:12px;white-space:nowrap}.expense-preview-chart h3{font-size:16px;margin-top:24px}.expense-preview-chart>div{display:flex;justify-content:space-between;font-size:14px;margin:14px 0 7px}.expense-preview-chart progress{width:100%;height:8px;border:0;border-radius:8px;overflow:hidden;background:#f1e7eb;accent-color:#893e50}.expense-preview-chart progress::-webkit-progress-bar{background:#f1e7eb}.expense-preview-chart progress::-webkit-progress-value{background:#893e50;border-radius:8px}.expense-preview-chart progress:nth-of-type(2)::-webkit-progress-value{background:#b26a7e}.expense-preview-chart progress:nth-of-type(3)::-webkit-progress-value{background:#d29aaa}.expense-preview-chart progress::-moz-progress-bar{background:#893e50}@media(max-width:760px){.expense-story{grid-template-columns:1fr}.expense-preview-top{flex-direction:column}.expense-preview{padding:24px}}

/* Expense plans share the current burgundy and Manrope brand. */
.expense-plan-features{list-style:none;padding:0;margin:18px 0 28px;display:grid;gap:12px;text-align:left}.expense-plan-features li{padding-left:23px;position:relative;line-height:1.5}.expense-plan-features li:before{content:'✓';position:absolute;left:0;color:#893e50;font-weight:700}.expense-pricing .price-card{display:flex;flex-direction:column}.expense-pricing .price-card>.button,.expense-pricing .plan-action{margin-top:auto}.expense-pricing .plan-cost{min-height:112px}.expense-pricing .price-card .tier-badge{font-size:12px}.expense-pricing .usecase-grid{margin-top:28px}@media(max-width:700px){.expense-pricing .plan-cost{min-height:0}.expense-pricing .pricing-intro h1{font-size:clamp(36px,10vw,54px)}}
/* Expense launch: evidence-led, generous typography, compact product examples. */
.expense-landing{--expense-ink:#302b32;--expense-wine:#893e50;--expense-muted:#766c73;background:#faf8f7;color:var(--expense-ink)}.expense-hero{padding-top:78px;padding-bottom:64px;max-width:1180px}.expense-eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:750;letter-spacing:.09em;text-transform:uppercase;color:#893e50;margin:0 0 24px}.expense-eyebrow>span{width:7px;height:7px;background:#893e50;border-radius:50%}.marketing .expense-hero h1{font-size:clamp(64px,7.8vw,108px);line-height:1.01;letter-spacing:-.065em;max-width:1000px;margin:0 0 30px;font-weight:650}.expense-hero h1 em{font-style:normal;color:#893e50}.expense-hero-lead{font-size:26px;font-weight:650;letter-spacing:-.025em;margin:0 0 12px}.expense-hero-description{font-size:18px;line-height:1.75;max-width:650px;margin:0 0 28px;color:#625961}.expense-hero .hero-actions{justify-content:flex-start;margin:0 0 20px}.expense-store-row{display:flex;align-items:center;gap:12px;margin-top:36px;flex-wrap:wrap}.expense-store-row>span{font-size:12px;font-weight:700;line-height:1.6;margin-right:10px}.expense-store-row>span small{font-weight:400;color:#766c73}.expense-store-row .store-badge{min-height:48px;padding:8px 14px;opacity:.6}.expense-showcase{padding-top:56px;padding-bottom:20px;border-top:1px solid #e6dcdf;scroll-margin-top:90px}.expense-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:40px}.marketing .expense-section-heading h2,.marketing .expense-company-layout h2,.marketing .expense-final h2{font-size:clamp(30px,3.5vw,46px);line-height:1.15;letter-spacing:-.045em;margin:0}.expense-section-heading>p{max-width:290px;color:#766c73;font-size:16px;line-height:1.7;margin:0}.expense-product-scene{display:grid;grid-template-columns:1fr 1.04fr 1fr;background:white;border:1px solid #e4dadd;border-radius:20px;overflow:hidden;box-shadow:0 22px 60px #4824330a}.expense-evidence,.expense-extracted,.expense-results{padding:28px;min-width:0}.expense-evidence{background:#f0e2e4}.expense-extracted{border-right:1px solid #ece3e6}.expense-mini-heading{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.07em;font-weight:750;color:#8c6c76;gap:8px;margin-bottom:28px}.expense-checked{background:#f5e9ec;border-radius:20px;padding:5px 8px;letter-spacing:0;color:#893e50}.receipt-paper{background:#fffcf7;padding:27px 21px 36px;max-width:260px;margin:auto;transform:rotate(-3deg);box-shadow:0 8px 14px #50263413;position:relative;font:12px/1.65 ui-monospace,monospace;color:#665849}.receipt-paper p{text-align:center;font:inherit;margin:0 0 20px}.receipt-paper .receipt-vendor{font-weight:750;font-size:15px;letter-spacing:.04em}.receipt-paper hr{border:0;border-top:1px dashed #c6b9a9;margin:18px 0}.receipt-paper dl{margin:0}.receipt-paper dl>div{display:flex;justify-content:space-between;gap:8px}.receipt-paper dd{margin:0}.receipt-paper .receipt-total{font-weight:750;font-size:14px;border-top:1px dashed #c6b9a9;margin-top:16px;padding-top:14px}.receipt-scallop{position:absolute;bottom:-5px;left:0;right:0;height:10px;background:linear-gradient(135deg,#fffcf7 25%,transparent 25%) -5px 0/10px 10px,linear-gradient(225deg,#fffcf7 25%,transparent 25%) -5px 0/10px 10px}.expense-example-note{font-size:10px!important;line-height:1.5!important;color:#947b83!important;margin:26px 0 0!important}.marketing .expense-extracted h3{font-size:22px;letter-spacing:-.025em;margin:0 0 7px}.expense-subtle{font-size:12px!important;color:#82747b;margin:0 0 16px}.expense-facts{margin:24px 0;font-size:12px}.expense-facts>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #f0e8eb;padding:12px 0}.expense-facts dt{color:#887780}.expense-facts dd{margin:0;text-align:right;font-weight:650}.expense-source-note{display:flex;gap:10px;align-items:center;font-size:11px;color:#9a6b7a;line-height:1.6}.expense-demo-total{display:block;font-size:40px;letter-spacing:-.05em;line-height:1.15;margin:0 0 8px}.expense-demo-total span{font-size:28px;color:#b49ba4}.expense-demo-bars{display:grid;gap:18px;margin:30px 0}.expense-demo-bars>div{display:grid;grid-template-columns:1fr auto;gap:9px;font-size:12px}.expense-demo-bars i{grid-column:1/-1;height:7px;display:block;border-radius:7px;background:linear-gradient(to right,var(--bar-color) var(--bar),#f3eaed var(--bar))}.expense-format-row{display:flex;gap:6px;flex-wrap:wrap}.expense-format-row span{font-size:10px;background:#f6eff1;border:1px solid #ecdee3;padding:5px 9px;border-radius:5px;font-weight:700}.expense-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:54px;padding-top:58px;padding-bottom:90px}.expense-number{font-size:11px;color:#b68796;letter-spacing:.1em}.marketing .expense-benefits h3{font-size:25px;line-height:1.25;letter-spacing:-.035em;margin:16px 0}.expense-benefits p{font-size:15px;color:#766c73;line-height:1.75}.expense-audiences{padding-top:65px;padding-bottom:95px;border-top:1px solid #e6dcdf}.expense-audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.expense-audience-grid>a{display:flex;flex-direction:column;background:#f2e8ea;color:inherit;border:1px solid #eadde1;border-radius:14px;padding:28px;text-decoration:none;transition:background .15s}.expense-audience-grid>a:hover{background:#ecdbe0}.expense-audience-grid>a:nth-child(2){background:#eee9e5}.expense-audience-grid>a:nth-child(3){background:#ede8ed}.expense-audience-tag{font-size:9px;letter-spacing:.09em;font-weight:750;color:#956b79}.marketing .expense-audience-grid h3{font-size:24px;letter-spacing:-.035em;line-height:1.25;margin:30px 0 18px}.expense-audience-grid p{font-size:14px;line-height:1.8;color:#796771;margin:0 0 28px}.expense-card-footer{border-top:1px solid #ddcbd1;padding-top:18px;margin-top:auto;display:flex;justify-content:space-between;gap:12px;font-size:11px;font-weight:700}.expense-company-band{background:#3e2b35;color:#fcf4f6;padding:72px 0}.expense-company-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;align-items:center}.expense-company-layout .expense-eyebrow{color:#e7b6c5}.expense-company-layout p:not(.expense-eyebrow){font-size:16px;line-height:1.8;color:#d7c1ca;max-width:530px;margin:24px 0}.expense-company-layout .button{background:#f5d9e2;color:#4b2938;border-color:#f5d9e2}.expense-company-flow{list-style:none;display:grid;gap:30px;padding:0;margin:0}.expense-company-flow li{display:flex;align-items:flex-start;gap:20px}.expense-company-flow li>span{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border:1px solid #795665;border-radius:50%;font-size:12px;color:#e7b6c5}.expense-company-flow strong{font-size:17px;font-weight:650}.expense-company-flow p{margin:6px 0 0!important;font-size:14px!important}.expense-final{padding-top:100px;padding-bottom:100px;text-align:center}.expense-final .expense-eyebrow{justify-content:center}.expense-final .button,.expense-final .text-link{margin:30px 12px 12px}.expense-final .fineprint{margin-top:10px}@media(max-width:1000px){.expense-evidence,.expense-extracted,.expense-results{padding:20px}.expense-company-layout{gap:40px}.expense-audience-grid>a{padding:22px}.expense-benefits{gap:30px}.expense-section-heading{gap:25px}}@media(max-width:760px){.expense-hero{padding-top:46px;padding-bottom:44px}.marketing .expense-hero h1{font-size:clamp(54px,11.5vw,82px);letter-spacing:-.055em}.expense-hero-lead{font-size:23px}.expense-hero-description{font-size:16px}.expense-hero .hero-actions{gap:18px;flex-wrap:wrap}.expense-product-scene{grid-template-columns:1fr}.expense-evidence,.expense-extracted,.expense-results{padding:25px}.expense-extracted{border-right:0;border-bottom:1px solid #ece3e6}.expense-evidence{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:15px}.expense-evidence .expense-mini-heading{grid-column:1/-1;margin:0}.expense-evidence .receipt-paper{grid-column:2;grid-row:2/4;width:100%;max-width:250px;box-sizing:border-box;padding:20px 15px 28px}.expense-evidence .expense-example-note{grid-column:1;grid-row:2;font-size:12px!important;margin:0!important}.expense-extracted .expense-mini-heading,.expense-results .expense-mini-heading{margin-bottom:18px}.expense-facts{margin:16px 0}.expense-section-heading{display:block}.expense-section-heading>p{max-width:none;margin-top:20px}.expense-benefits{grid-template-columns:1fr;gap:20px;padding-top:45px;padding-bottom:50px}.expense-benefits>div{display:grid;grid-template-columns:32px 1fr;column-gap:14px}.expense-benefits h3{margin:0!important}.expense-benefits p{grid-column:2;margin:12px 0}.expense-number{padding-top:5px}.expense-audiences{padding-top:45px;padding-bottom:50px}.expense-audience-grid{grid-template-columns:1fr}.expense-audience-grid>a{padding:26px}.marketing .expense-audience-grid h3{margin:20px 0 12px}.expense-company-layout{grid-template-columns:1fr;gap:42px}.expense-company-band{padding:50px 0}.expense-final{padding:60px 24px}.expense-store-row>span{width:100%;margin-bottom:2px}.expense-store-row{gap:10px}.expense-showcase{padding-top:42px}.expense-section-heading h2 br{display:none}}@media(prefers-reduced-motion:reduce){.expense-audience-grid>a{transition:none}}
.expense-hero{text-align:center}.expense-hero>.expense-eyebrow,.expense-hero .hero-actions,.expense-hero .expense-store-row{justify-content:center}.marketing .expense-hero h1,.expense-hero-description{margin-left:auto;margin-right:auto}.expense-hero .hero-actions{justify-content:center}.expense-persona-hero{text-align:center;padding-top:70px;padding-bottom:60px}.expense-persona-hero .expense-eyebrow,.expense-persona-hero .hero-actions{justify-content:center}.marketing .expense-persona-hero h1{font-size:clamp(40px,5.5vw,70px);line-height:1.1;letter-spacing:-.05em;max-width:900px;margin:0 auto 26px}.expense-persona-hero .expense-hero-lead{max-width:680px;margin:0 auto 30px;font-size:22px;font-weight:450;color:#766c73}.expense-persona-example{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px;padding-top:25px;padding-bottom:45px}.expense-persona-example h2{font-size:36px;line-height:1.2;letter-spacing:-.04em}.expense-persona-example p{line-height:1.8;color:#766c73}.expense-pricing .plan-matrix table{min-width:660px}.expense-pricing .plan-matrix th,.expense-pricing .plan-matrix td{padding:16px;text-align:left}.expense-pricing .plan-matrix tbody tr:nth-child(even){background:#faf4f6}.expense-pricing .plan-matrix .included-heading{align-items:flex-start}.expense-pricing .plan-matrix .included-heading p{max-width:420px}@media(max-width:760px){.expense-hero .expense-store-row>span{text-align:center}.expense-persona-example{grid-template-columns:1fr;gap:25px}.expense-persona-hero{padding-top:45px;padding-bottom:35px}.expense-persona-hero .expense-hero-lead{font-size:18px}.expense-pricing .plan-matrix .included-heading{display:block}.expense-hero .button.large{max-width:100%;white-space:normal}}

/* Pricing cards carry the price; all allowances and features belong in the table. */
.marketing .expense-pricing .price-card{padding:30px;gap:0;text-align:left;min-height:0;align-items:stretch}
.marketing .expense-pricing .price-card h2{margin:0 0 22px;font-size:25px;line-height:1.2}
.marketing .expense-pricing .plan-cost{min-height:100px;margin:0 0 26px}
.marketing .expense-pricing .plan-cost .price{margin:0 0 10px;line-height:1.15}
.marketing .expense-pricing .price-card>.button{margin:0;align-self:stretch;text-align:center}
.marketing .expense-pricing .price-card:hover{transform:none;border-color:#bd929d}
.marketing .expense-pricing .plan-matrix{margin-top:44px}
@media(max-width:760px){.marketing .expense-pricing .price-card{padding:24px}.marketing .expense-pricing .plan-cost{min-height:0;margin-bottom:24px}.marketing .expense-pricing .plan-matrix th,.marketing .expense-pricing .plan-matrix td{padding:14px}}
