

@font-face{font-family:Manrope;src:url('/welcome/fonts/Manrope-400.woff2');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('/welcome/fonts/Manrope-600.woff2');font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url('/welcome/fonts/Manrope-700.woff2');font-weight:700 900;font-display:swap}@font-face{font-family:Instrument;src:url('/welcome/fonts/InstrumentSerif-Italic.ttf');font-style:italic;font-display:swap}@font-face{font-family:Mono;src:url('/welcome/fonts/GeistMono-400.woff2');font-display:swap}
:root{--ink:#0e0f12;--paper:#f0eada;--blue:#5f82ff;--cobalt:#1e47d1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--ink);color:var(--paper);font-family:Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}p,h1,h2,h3,h4{margin:0}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #799aff;outline-offset:5px}::selection{background:var(--cobalt);color:white}em{font-family:Instrument,Georgia,serif;font-weight:400}h1{font-size:clamp(70px,8.2vw,132px);line-height:.97;letter-spacing:-.065em;font-weight:600}h1 em{letter-spacing:-.025em}h2{font-size:clamp(42px,4.5vw,72px);line-height:1.04;font-weight:600;letter-spacing:-.055em}h2 em{color:var(--blue)}h3{font-weight:600;letter-spacing:-.035em}.wrap{max-width:1440px;padding:0 64px;margin:auto}.overline{font:11px/1.5 Mono,monospace;letter-spacing:.15em;text-transform:uppercase;color:var(--blue)}.overline::before{content:'+';margin-right:10px}.nav{height:100px;display:flex;align-items:center;justify-content:space-between;gap:35px;position:relative;z-index:3;border-bottom:1px solid #ffffff25}.brand{display:inline-flex;align-items:baseline;gap:3px;font-weight:700;font-size:34px;letter-spacing:-1.6px}.brand i{height:7px;width:7px;background:var(--blue);align-self:center;border-radius:50%}.brand em{font-size:41px;color:var(--blue)}.navlinks{display:flex;gap:30px;font-size:12px;color:#c6c7ce}.navright{display:flex;gap:24px;align-items:center;font-size:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:15px 23px;background:var(--cobalt);border:1px solid transparent;border-radius:3px;color:white;font-size:12px;font-weight:600;transition:transform .2s}.button:hover{transform:translateY(-2px)}.button.ghost{background:transparent;border-color:#ffffff45;color:var(--paper)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.nav .button{padding:12px 18px;font-size:11px}.cinema{min-height:820px;height:min(900px,calc(100vh - 33px));position:relative;isolation:isolate;background:#0b1526}.cinema:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#050c18de 0%,#08132370 46%,#0b152605 75%),linear-gradient(0deg,#0e0f12 0%,transparent 48%),url('/welcome/assets/infrastructure.jpg') center 55%/cover;z-index:-1}.cinema .overline{color:#b1c4ff}.cinema-copy{padding-top:100px;max-width:730px}.cinema h1 em{color:#b8c8ff}.cinema-copy p{font-size:15px;line-height:1.9;max-width:490px;color:#d2d6df;margin-top:26px}.chapter{padding:110px 0;border-bottom:1px solid #ffffff18}.chapter-head{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;margin-bottom:50px}.chapter-head .overline{margin-bottom:22px}.chapter-head p{max-width:470px;font-size:15px;line-height:1.9;color:#aaaeb9;margin-left:auto}.chapter-head.single{grid-template-columns:1fr}.chapter-head.single p{margin:24px 0 0;max-width:600px}.endcap{position:relative;padding:110px 0 80px;background:linear-gradient(90deg,#0b1526ee,#0b152680),url('/welcome/assets/infrastructure.jpg') center 68%/cover}.endcap h2{font-size:80px;max-width:850px}.endcap p{font-size:14px;color:#bcc7dc;margin-top:23px;line-height:1.8}.skip{position:absolute;top:-100px;z-index:9;left:20px;background:var(--paper);color:var(--ink);padding:12px}.skip:focus{top:10px}dialog{background:#161c2a;color:var(--paper);border:1px solid #5f82ff88;border-radius:5px;width:min(500px,calc(100vw - 32px));padding:35px}dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}dialog h2{font-size:40px;margin:20px 0}dialog p{font-size:13px;line-height:1.9;color:#b1bbcf}dialog .close{float:right;background:none;border:0;font-size:24px;padding:0 6px}dialog .button{margin-top:25px}
@media(max-width:1100px){.wrap{padding:0 38px}.navlinks{gap:20px;font-size:11px}.navright{gap:18px}.navright .signin{display:none}.nav{gap:25px}.cinema{min-height:820px}.cinema-copy{padding-top:110px}.chapter-head{gap:35px}}
@media(max-width:850px){.navlinks{display:none}.nav{height:85px}.cinema-copy{padding-top:100px}.cinema{min-height:850px}.cinema h1{font-size:100px}.chapter{padding:80px 0}.chapter-head{grid-template-columns:1fr;gap:25px}.chapter-head p{margin:0;max-width:600px;font-size:14px}.endcap h2{font-size:65px}}
@media(max-width:560px){.wrap{padding:0 22px}.nav{height:78px}.brand{font-size:29px}.brand em{font-size:35px}.navright .button{padding:11px 13px;font-size:11px}.cinema{height:auto;min-height:940px}.cinema:before{background:linear-gradient(90deg,#041020c9,#04102010),linear-gradient(0deg,#0e0f12,transparent 70%),url('/welcome/assets/infrastructure.jpg') 61% center/cover}.cinema-copy{padding-top:70px}.cinema h1{font-size:77px;letter-spacing:-.055em}.cinema .overline{font-size:11px}.cinema-copy p{font-size:13px;line-height:1.9;max-width:315px;margin-top:25px}.actions{gap:10px;margin-top:25px}.button{padding:14px 17px;font-size:11px;gap:20px}.chapter{padding:65px 0}.chapter-head{margin-bottom:30px}.overline{font-size:11px;letter-spacing:.1em}h2{font-size:43px}.chapter-head p{font-size:12px;line-height:1.9}.endcap{padding:65px 0}.endcap h2{font-size:51px}.endcap p{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}html:not(.motion-ok) *,html:not(.motion-ok) *::before,html:not(.motion-ok) *::after{animation:none!important;transition:none!important}.button:hover{transform:none}}
@font-face{font-family:'Instrument Serif';src:url('/welcome/fonts/InstrumentSerif-Italic.ttf');font-style:italic;font-display:swap}@font-face{font-family:'Geist Mono';src:url('/welcome/fonts/GeistMono-400.woff2');font-display:swap}
@media(min-width:851px){.cinema-copy{max-width:1050px}.cinema-copy h1{font-size:clamp(96px,8.2vw,130px)}}

.wrap.chapter{padding-left:64px;padding-right:64px}
@media(max-width:1100px){.wrap.chapter{padding-left:38px;padding-right:38px}}
@media(max-width:560px){.wrap.chapter{padding-left:22px;padding-right:22px}.cinema{min-height:0;padding-bottom:25px}.cinema-copy{padding-top:45px}.cinema h1{font-size:68px}.cinema-copy p{font-size:14px}.chapter-head p{font-size:14px}.endcap p{font-size:14px}}.direction-one .cinema{overflow:hidden}.direction-one .cinema::before{animation:project-arrive 1.6s cubic-bezier(.18,.65,.3,1) both}.direction-one .cinema-copy{max-width:1100px}.direction-one .chapter{scroll-margin-top:60px}.direction-one .cinema-copy .overline{color:#c3d1ff}.direction-one .chapter-head p{max-width:510px}
@keyframes project-arrive{from{transform:scale(1.025);opacity:.5}to{transform:scale(1);opacity:1}}
@media(max-width:560px){.direction-one .cinema-copy p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.direction-one .cinema::before{animation:none}}

.direction-one .cinema{height:auto;min-height:760px;padding-bottom:100px}.direction-one .cinema-copy{padding-top:85px;padding-bottom:0}.direction-one .endcap h2{max-width:1050px}
@media(max-width:850px){.direction-one .cinema{min-height:740px}}
@media(max-width:560px){.direction-one .cinema{min-height:0;padding-bottom:65px}.direction-one .cinema-copy{padding-top:50px}.direction-one .endcap h2{font-size:47px}}
@media(prefers-reduced-motion:reduce){.direction-one .cinema::before{animation:none}}

.direction-one {
  --motion-ease: cubic-bezier(.22, 1, .36, 1);
  --motion-fast: 220ms;
  --motion-state: 420ms;
  background: #0c0f15;
}
.direction-one .cinema {
  min-height: 800px;
  padding-top: 1px;
  padding-bottom: 110px;
  background: #0a1321;
}
.direction-one .cinema::before {
  animation: none;
  background-image: linear-gradient(90deg,#050c18ec 0%,#08132380 48%,#0b152608 82%),linear-gradient(0deg,#0c0f15 0%,transparent 48%),url('/welcome/assets/infrastructure.jpg');
}
.hero-light { position:absolute; inset:0; z-index:-1; overflow:hidden; pointer-events:none; }
.hero-light span { position:absolute; display:block; animation-play-state:paused!important; }
.hero-light span:first-child {
  width:1100px; height:900px; max-width:100vw; right:-16%; top:-18%;
  background:radial-gradient(ellipse at 50% 50%,#5f82ff2d 0%,#1e47d119 28%,transparent 64%);
  transform-origin:70% 55%; animation:project-light-drift 16s ease-in-out infinite alternate;
}
.hero-light span:last-child {
  width:85%; height:65%; right:-25%; bottom:-22%;
  background:radial-gradient(ellipse at center,#99c7ff24,transparent 60%);
  animation:project-light-reflect 12s ease-in-out infinite alternate;
}
.cinema[data-ambient-playing=true] .hero-light span { animation-play-state:running!important; }
.direction-one .nav {
  height:76px; margin-top:24px; padding:0 24px;
  border:1px solid #c4d4ff26; border-radius:6px;
  background:linear-gradient(120deg,#172333a8,#0c1522a8);
  backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
  box-shadow:inset 0 1px #ffffff0d,0 14px 45px #02091522;
}
.direction-one .nav .brand { font-size:29px; }
.direction-one .nav .brand em { font-size:35px; }
.direction-one .navlinks { gap:26px; color:#bac8de; }
.direction-one .navlinks a { transition:color var(--motion-fast); }
.direction-one .navlinks a:hover { color:#fff; }
.direction-one .cinema-copy { padding-top:82px; }
.direction-one .cinema-copy .overline {
  display:inline-flex; align-items:center; padding:8px 12px;
  border:1px solid #b4ccff2b; border-radius:6px; background:#0b172c66;
  color:#c2d2f2; font-size:11px; letter-spacing:.1em;
}
.direction-one .cinema-copy .overline::before {
  content:''; display:block; width:5px; height:5px; border-radius:50%;
  margin-right:9px; background:#a4baff; box-shadow:0 0 12px #5f82ff88;
}
.direction-one .cinema h1 { font-size:clamp(76px,8.4vw,132px); line-height:.98; letter-spacing:-.065em; }
.hero-line { display:block; }
.direction-one .cinema h1 em { color:#b9ceff; }
.direction-one .cinema-copy p { font-size:16px; line-height:1.85; max-width:530px; color:#c8d1df; }
.direction-one .cinema-copy .actions { margin-top:32px; }
.direction-one .button {
  border-radius:5px; min-height:49px;
  background:linear-gradient(160deg,#365ce2,#1e47d1 75%);
  border-color:#89a5ff40; box-shadow:inset 0 1px #ffffff1a,0 4px 18px #07217720;
  transition:transform var(--motion-fast) var(--motion-ease),box-shadow var(--motion-fast),border-color var(--motion-fast),background var(--motion-fast);
}
.direction-one .button:hover { transform:translateY(-2px); box-shadow:inset 0 1px #ffffff30,0 8px 28px #183c9c40; border-color:#9bb6ff80; }
.direction-one .button:active { transform:translateY(0) scale(.985); }
.direction-one .button.ghost { background:#0c17244d; border-color:#c4d4ff3d; box-shadow:inset 0 1px #ffffff08; }
.direction-one .button span { transition:transform var(--motion-fast) var(--motion-ease); }
.direction-one .button:hover span { transform:translate(2px,-2px); }
.direction-one .nav .button { min-height:40px; padding:10px 16px; }
.direction-one .chapter { scroll-margin-top:68px; }
.direction-one .chapter-head p { font-size:16px; line-height:1.85; color:#a9b6cb; }
.direction-one .chapter-head .overline { margin-bottom:25px; }
.direction-one .chapter-head { margin-bottom:54px; }
.direction-one .endcap { isolation:isolate; overflow:hidden; background:linear-gradient(90deg,#0b1526f0,#0b152689),url('/welcome/assets/infrastructure.jpg') center 68%/cover; }
.direction-one .endcap::before { content:''; z-index:-1; position:absolute; inset:-20%; background:radial-gradient(ellipse at 80% 50%,#5f82ff24,transparent 50%); }
.direction-one .endcap h2 em { color:#b4caff; }
.direction-one dialog { padding:38px; border-radius:6px; box-shadow:0 35px 120px #0008; border-color:#8daaff55; }
.direction-one .skip { z-index:30; }
@keyframes project-light-drift { from{transform:translate(-3%,2%) scale(.95);opacity:.65} to{transform:translate(4%,7%) scale(1.08);opacity:1} }
@keyframes project-light-reflect { from{transform:translate(-3%,1%) scale(.93);opacity:.5} to{transform:translate(-13%,-8%) scale(1.08);opacity:.85} }
@media(max-width:1100px) {
  .direction-one .nav { padding-inline:20px; gap:20px; }
  .direction-one .navlinks { gap:18px; font-size:11px; }
}
@media(max-width:850px) {
  .direction-one .cinema { min-height:780px; }
  .direction-one .cinema h1 { font-size:100px; }
  .direction-one .nav { height:72px; border-radius:6px; }
  .direction-one .chapter-head p { font-size:15px; }
}
@media(max-width:560px) {
  .direction-one .cinema { min-height:0; padding-bottom:75px; }
  .direction-one .nav { height:66px; padding:0 15px; margin-top:16px; border-radius:6px; }
  .direction-one .nav .brand { font-size:27px; }
  .direction-one .nav .brand em { font-size:32px; }
  .direction-one .nav .button { padding:10px 12px; font-size:11px; min-height:38px; }
  .direction-one .cinema-copy { padding-top:56px; }
  .direction-one .cinema-copy .overline { font-size:11px; letter-spacing:.04em; padding:7px 12px; border-radius:6px; line-height:1.45; }
  .direction-one .cinema h1 { font-size:clamp(64px,17.7vw,88px); line-height:1; }
  .direction-one .cinema-copy p { font-size:14px; line-height:1.9; max-width:360px; }
  .direction-one .button { min-height:47px; padding:14px 18px; gap:18px; font-size:11px; border-radius:5px; }
  .hero-light span:first-child { width:700px; max-width:none; right:-110%; opacity:.65; animation:none; }
  .hero-light span:last-child { display:none; }
  .direction-one .chapter-head { margin-bottom:34px; }
  .direction-one .chapter-head p { font-size:14px; }
  .direction-one dialog { padding:26px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .direction-one *, .direction-one *::before,.direction-one *::after { animation:none!important; transition:none!important; }
  .direction-one .nav { backdrop-filter:none; -webkit-backdrop-filter:none; }
}.direction-one .endcap{padding-bottom:110px;border-bottom:0}.direction-one .endcap h2{max-width:1100px}
@media(max-width:560px){.direction-one .endcap{padding-bottom:80px}.direction-one .endcap h2{font-size:47px}}
.direction-one .chapter-head h2{letter-spacing:-.045em}
.direction-one .chapter-head .overline{letter-spacing:.1em;font-size:11px;color:#7d9aea}
.direction-one .chapter-head .overline:before{display:none}
.direction-one .chapter-head p{max-width:460px;line-height:1.85}
@media(max-width:850px){
  .direction-one .chapter-head p{max-width:600px}
}
@media(max-width:600px){
  .direction-one .chapter-head .overline{font-size:11px}
}

/* ── Built for your side of the deal (#teams) ──────────────────────────────────
   Four calm panels: the copy and jobs on the left, one small paper snapshot of a real surface on the
   right, all on Sunfield 150 so they read as one workspace. Static; the tab swap is the only motion. */
.audience-tabs{display:flex;gap:40px;margin:0 0 56px;box-shadow:inset 0 -1px 0 #ffffff17}
.audience-tab{position:relative;flex:none;margin:0;padding:0 0 18px;border:0;background:none;cursor:pointer;
  font:600 15px/22px Manrope,Arial,sans-serif;letter-spacing:-.01em;color:#8a90a0;text-align:left;transition:color 220ms}
.audience-tab:hover{color:#b4b9c5}
.audience-tab[aria-selected=true]{color:#eeeae0}
.audience-tab::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:transparent;transition:background-color 220ms}
.audience-tab[aria-selected=true]::after{background:#eeeae0}
.audience-tab:focus-visible{outline:2px solid #799aff;outline-offset:4px;border-radius:3px}
/* Every panel shares one cell, so the section keeps the tallest panel's height and never jumps. */
.audience-stage{display:grid}
.audience-panel{grid-area:1/1;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:start;outline:0}
.audience-panel[hidden]{display:grid;visibility:hidden}
.audience-panel:focus-visible{outline:2px solid #799aff;outline-offset:8px;border-radius:4px}
.audience-copy{padding-top:8px}
.audience-copy h3{font-size:32px;line-height:1.2;letter-spacing:-.04em;color:#eeeae0;max-width:440px;text-wrap:balance}
.audience-copy p{margin-top:20px;max-width:440px;font-size:15px;line-height:1.8;color:#a9b6cb;text-wrap:pretty}
.audience-jobs{margin:32px 0 0;padding:0;list-style:none;max-width:440px}
.audience-jobs li{display:flex;gap:16px;align-items:baseline;padding:14px 0;box-shadow:inset 0 1px 0 #ffffff17;font-size:14px;line-height:1.55;color:#c7ccd8}
.audience-jobs span{flex:none;font:11px/1 Mono,'Geist Mono',monospace;letter-spacing:.04em;color:#8fa8f0}

/* The snapshot: kit paper, one window, a breadcrumb bar and the case footer. */
.tm-snap{display:flex;flex-direction:column;min-height:352px;overflow:hidden;border-radius:6px;background:var(--fp-paper);color:var(--fp-text);
  box-shadow:var(--fp-sh-float);font-size:13px;line-height:1.45}
.tm-snap p{margin:0}
.tm-snap .tm-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:0 18px;box-shadow:inset 0 -1px 0 var(--fp-line)}
.tm-snap .tm-crumb{font-size:12px;color:var(--fp-text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tm-snap .tm-crumb i{font-style:normal;margin:0 7px;color:var(--fp-text-3)}
.tm-snap .tm-crumb b{font-weight:600;color:var(--fp-text)}
.tm-snap .tm-foot{margin-top:auto!important;padding:10px 18px;font-size:11px;line-height:16px;color:var(--fp-text-3);background:var(--fp-paper-2);box-shadow:inset 0 1px 0 var(--fp-line)}
.tm-snap .tm-pill{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:5px;font:11px/1 var(--fp-mono);letter-spacing:.06em;color:var(--fp-cobalt);background:var(--fp-blue-wash);box-shadow:inset 0 0 0 1px rgba(30,71,209,.18)}

/* All inputs */
.tm-snap .tm-inputs{width:100%;border-collapse:collapse;table-layout:fixed}
.tm-snap .tm-inputs th,.tm-snap .tm-inputs td{padding:12px 0;text-align:left;vertical-align:middle;box-shadow:inset 0 -1px 0 var(--fp-line)}
.tm-snap .tm-inputs th:first-child,.tm-snap .tm-inputs td:first-child{padding-left:18px}
.tm-snap .tm-inputs th:last-child,.tm-snap .tm-inputs td:last-child{padding-right:18px}
.tm-snap .tm-inputs thead th{padding-top:12px;padding-bottom:8px;font-size:11px;font-weight:600;color:var(--fp-text-3)}
.tm-snap .tm-inputs thead th:nth-child(1){width:31%}.tm-snap .tm-inputs thead th:nth-child(2){width:23%}
.tm-snap .tm-inputs tbody th{font-size:13px;font-weight:600;line-height:1.35;padding-right:12px}
.tm-snap .tm-inputs .fp-num{font-size:13px}
.tm-snap .fp-num small{font-size:11px}
.tm-snap .tm-inputs .fp-chip{max-width:100%}
.tm-snap .tm-fichip{background:var(--fp-blue-wash);box-shadow:inset 0 0 0 1px rgba(30,71,209,.22);color:var(--fp-cobalt);padding-left:4px}

/* Curve Studio · SHAPE */
.tm-snap .tm-shape{padding:20px 18px 0}
.tm-snap .tm-bars{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;height:168px;box-shadow:inset 0 -1px 0 var(--fp-line-2)}
.tm-snap .tm-mo{position:relative}
.tm-snap .tm-mo i{position:absolute;bottom:0;border-radius:2px 2px 0 0}
.tm-snap .tm-ghost{left:4%;width:56%;background:var(--fp-paper-3);box-shadow:inset 0 0 0 1px var(--fp-line-2)}
.tm-snap .tm-solid{right:4%;width:56%;background:linear-gradient(180deg,#3d66f2,var(--fp-cobalt))}
.tm-snap .tm-months{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;margin-top:6px;font:11px/14px var(--fp-mono);text-align:center;color:var(--fp-text-3)}
.tm-snap .tm-months b{font-weight:400}
.tm-snap .tm-legend{display:flex;gap:16px;margin-top:14px!important;font-size:12px;color:var(--fp-text-2)}
.tm-snap .tm-legend span{display:inline-flex;align-items:center;gap:6px}
.tm-snap .tm-key{width:10px;height:10px;border-radius:2px}
.tm-snap .tm-key-s{background:var(--fp-cobalt)}
.tm-snap .tm-key-g{background:var(--fp-paper-3);box-shadow:inset 0 0 0 1px var(--fp-line-2)}
.tm-snap .tm-src{display:flex;align-items:center;gap:6px;margin:16px 18px 18px!important;font-size:12px;color:var(--fp-text-2)}
.tm-snap .tm-src-i{width:14px;height:14px;flex:none;color:var(--fp-gain)}

/* Studies · Debt sizing tests, and QuickStructure */
.tm-snap .tm-sub{font-size:12px;line-height:1.45;color:var(--fp-text-3)}
.tm-snap .tm-pad{padding:16px 18px 4px}
.tm-snap .tm-seg{display:inline-flex;flex:none;padding:2px;border-radius:4px;background:var(--fp-paper-2);box-shadow:inset 0 0 0 1px var(--fp-line)}
.tm-snap .tm-seg span{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:4px;font-size:12px;font-weight:600;color:var(--fp-text-3);white-space:nowrap}
.tm-snap .tm-seg span[aria-current]{color:var(--fp-text);background:#fff;box-shadow:0 0 0 1px var(--fp-line-2),0 1px 2px rgba(14,15,18,.08)}
.tm-snap .tm-ok{width:16px;height:16px;flex:none;color:var(--fp-gain)}
.tm-snap .tm-tests{margin:0;padding:8px 18px 0;list-style:none}
.tm-snap .tm-tests li{display:flex;align-items:center;gap:10px;min-height:46px;font-size:13px;font-weight:600;line-height:1.35;box-shadow:inset 0 -1px 0 var(--fp-line)}
.tm-snap .tm-tests .tm-adding{margin:6px -10px 0;padding:0 10px;min-height:44px;border-radius:5px;color:var(--fp-cobalt);background:var(--fp-blue-wash);box-shadow:inset 0 0 0 1px rgba(30,71,209,.22)}
.tm-snap .tm-add{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;margin:12px 18px 18px;height:30px;padding:0 12px;border-radius:4px;font-size:12px;font-weight:600;color:var(--fp-cobalt);box-shadow:inset 0 0 0 1px rgba(30,71,209,.45);background-image:none}
.tm-snap .tm-add{border:1px dashed rgba(30,71,209,.5);box-shadow:none}
/* The one arrival: the new test slides in when its panel shows. */
.audience-panel:not([hidden]) .tm-adding{animation:tm-arrive 560ms 380ms cubic-bezier(.16,1,.3,1) both}
@keyframes tm-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.tm-snap .tm-cmp{padding:6px 18px 18px}
.tm-snap .tm-cmp table{width:100%;border-collapse:collapse}
.tm-snap .tm-cmp th,.tm-snap .tm-cmp td{height:38px;padding:0;text-align:left;vertical-align:middle;font-size:13px;line-height:1.3;box-shadow:inset 0 -1px 0 var(--fp-line)}
.tm-snap .tm-cmp thead th{height:30px;font-size:11px;font-weight:600;color:var(--fp-text-3);box-shadow:inset 0 -1px 0 var(--fp-line-2)}
.tm-snap .tm-cmp th:last-child,.tm-snap .tm-cmp td{width:34%;text-align:center}
.tm-snap .tm-cmp tbody th{font-weight:600}
.tm-snap .tm-cmp td .tm-ok{display:inline-block;vertical-align:middle}
.tm-snap .tm-cmp tr[aria-current] th,.tm-snap .tm-cmp tr[aria-current] td{background:var(--fp-blue-wash)}
.tm-snap .tm-cmp tr[aria-current] th{padding-left:10px;border-radius:4px 0 0 4px}

@media(max-width:1100px){.audience-panel{gap:48px}.audience-copy h3{font-size:28px}}
@media(max-width:850px){
  .audience-tabs{gap:28px;margin-bottom:40px;overflow-x:auto;scrollbar-width:none}
  .audience-tabs::-webkit-scrollbar{display:none}
  .audience-tab{font-size:14px}
  .audience-panel{grid-template-columns:minmax(0,1fr);gap:36px}
  .audience-copy{padding-top:0}
  .audience-copy h3,.audience-copy p,.audience-jobs{max-width:600px}
}
@media(max-width:560px){
  .audience-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;margin-bottom:32px;box-shadow:none}
  .audience-tab{padding:12px 0;font-size:13px;line-height:18px;box-shadow:inset 0 -1px 0 #ffffff17}
  .audience-copy h3{font-size:26px}
  .audience-copy p{font-size:14px}
  .audience-jobs li{font-size:13px}
  .tm-snap{min-height:0;margin-inline:-6px}
  .tm-snap .tm-bar{padding:0 14px}
  .tm-snap .tm-inputs thead{display:none}
  .tm-snap .tm-inputs tr{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:10px 14px;box-shadow:inset 0 -1px 0 var(--fp-line)}
  .tm-snap .tm-inputs th,.tm-snap .tm-inputs td{padding:0!important;box-shadow:none}
  .tm-snap .tm-inputs td:last-child{grid-column:1/-1}
  .tm-snap .tm-shape{padding:16px 14px 0}.tm-snap .tm-bars,.tm-snap .tm-months{gap:4px}.tm-snap .tm-bars{height:136px}
  .tm-snap .tm-months b:nth-child(even){visibility:hidden}
  .tm-snap .tm-src{margin-inline:14px!important}
  .tm-snap .tm-foot{padding:10px 14px}
  .tm-snap .tm-bar{flex-wrap:wrap;padding:8px 14px;row-gap:6px}
  .tm-snap .tm-tests{padding:4px 14px 0}
  .tm-snap .tm-add{margin:12px 14px 16px}
  .tm-snap .tm-pad{padding:14px 14px 2px}
  .tm-snap .tm-cmp{padding:4px 14px 16px}
}
/* Stacked (one column), panels differ a lot in height: a hidden one takes no room. */
@media(max-width:850px){.audience-panel[hidden]{display:none}}
/* Without JS the tabs can't switch, so all four teams read in order and the tab row steps aside. */
html:not(.js) .audience-tabs{display:none}
html:not(.js) .audience-stage{display:grid;gap:72px}
html:not(.js) .audience-panel,html:not(.js) .audience-panel[hidden]{grid-area:auto;display:grid;visibility:visible}
/* Narrow phones: the nav keeps the Request access button on one line; Sign in stays in the hero. */
@media(max-width:380px){.direction-one .navright .signin{display:none}.direction-one .nav .button{white-space:nowrap}}

/* Nav: one type scale and section links (26 Oct). Wordmark leads; links, Sign in and the button share 14px. */
.direction-one .nav .brand{font-size:24px;letter-spacing:-1px}
.direction-one .nav .brand em{font-size:28px}
.direction-one .nav .brand i{height:5px;width:5px}
.direction-one .navlinks{gap:32px;font-size:14px;font-weight:500;color:#c3cbdc}
.direction-one .navlinks a{position:relative;padding:10px 0}
.direction-one .navlinks a::after{content:'';position:absolute;left:0;right:0;bottom:4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:0 50%;transition:transform 240ms cubic-bezier(.22,1,.36,1)}
.direction-one .navlinks a:hover::after,.direction-one .navlinks a:focus-visible::after{transform:scaleX(1)}
.direction-one .navlinks a:hover{color:#fff}
.direction-one .navright{gap:24px;font-size:14px}
.direction-one .navright .signin{font-size:14px;font-weight:500}
.direction-one .nav .button{font-size:14px;font-weight:600;min-height:40px;padding:0 16px;gap:10px}
@media(max-width:1100px){.direction-one .navlinks{gap:22px;font-size:13px}.direction-one .navright .signin,.direction-one .nav .button{font-size:13px}}
@media(max-width:560px){.direction-one .nav .brand{font-size:22px}.direction-one .nav .brand em{font-size:26px}.direction-one .nav .button{font-size:13px;padding:0 12px;min-height:38px}}
@media(prefers-reduced-motion:reduce){.direction-one .navlinks a::after{transition:none}}

/* Seams (26 Oct): the endcap photo rises out of the ink the way the hero dissolves into it. */
.direction-one .endcap::after{content:'';position:absolute;inset:0 0 auto;height:180px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,var(--ink) 0%,#0e0f12b3 38%,transparent 100%)}
@media(max-width:560px){.direction-one .endcap::after{height:110px}}

/* Page moves: a soft cross-fade between the landing and the sign-in page (same-origin, where supported). */
@view-transition{navigation:auto}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}

/* Seams (26 Oct): one continuous ink from the pane through #teams to the endcap; no full-width rules. */
.direction-one #teams.chapter{border-bottom:0}

/* Seams: How it works flows straight into For your team. */
.direction-one .fp-section{border-bottom:0}

/* Bankers snapshot: the added test is its own, named test. */
.tm-snap .tm-test b{font-weight:600;color:var(--fp-text)}
.tm-snap .tm-new{margin-left:auto;flex:none;padding:2px 6px;border-radius:3px;font:600 11px/16px var(--fp-sans);color:var(--fp-cobalt);background:#fff;box-shadow:inset 0 0 0 1px rgba(30,71,209,.25)}
.tm-snap .tm-adding .tm-test{font-weight:400;color:var(--fp-text-2)}

/* Rhythm (26 Oct): frame → caption 16 · caption → strip 72 · section break ≈128 before #teams. Phone: 12 · 48 · 80. */
.direction-one .fp-section .fp-foot{margin-top:16px}
.direction-one .fp-section .fp-strip{margin-top:0}
.direction-one .fp-section{padding-bottom:24px}
.direction-one #teams.chapter{padding-top:104px}
@media(max-width:850px){.direction-one .fp-section .fp-strip{margin-top:0}.direction-one #teams.chapter{padding-top:88px}}
@media(max-width:560px){.direction-one .fp-section .fp-foot{margin-top:12px}.direction-one .fp-section .fp-strip{margin-top:0}.direction-one .fp-section{padding-bottom:16px}.direction-one #teams.chapter{padding-top:64px}}

/* Order (27 Oct): hero → the four workspace points → "See ProjFi in action." → the frame.
   The frame no longer climbs into the hero; the section starts under it. */
.direction-one .fp-section{--fps-rise:0px}
.direction-one .fp-section .fp-title{margin:104px 0 40px}
@media(max-width:850px){.direction-one .fp-section .fp-title{margin:88px 0 32px}}
@media(max-width:560px){.direction-one .fp-section .fp-title{margin:64px 0 24px}}

/* Investors snapshot: tax equity across the portfolio; the terms that differ are marked. */
.tm-snap[data-snap=portfolio] .tm-cmp{padding-top:10px}
.tm-snap[data-snap=portfolio] .tm-cmp th,.tm-snap[data-snap=portfolio] .tm-cmp td{width:auto;text-align:left;padding-right:12px}
.tm-snap[data-snap=portfolio] .tm-cmp th:last-child,.tm-snap[data-snap=portfolio] .tm-cmp td:last-child{text-align:right;padding-right:0}
.tm-snap[data-snap=portfolio] .tm-cmp td:nth-child(3),.tm-snap[data-snap=portfolio] .tm-cmp th:nth-child(3){text-align:right}
.tm-snap[data-snap=portfolio] .tm-cmp td.fp-num{font-size:13px}
.tm-snap[data-snap=portfolio] .tm-cmp .tm-diff{color:var(--fp-cobalt);font-weight:600}
.tm-snap[data-snap=portfolio] .tm-cmp .tm-diff::before{content:'';display:inline-block;width:5px;height:5px;margin:0 6px 1px 0;border-radius:50%;background:var(--fp-cobalt);vertical-align:middle}
