@font-face{font-family:"Lora";src:url("/assets/Lora-Variable.ttf") format("truetype");font-weight:400 700;font-display:swap}
:root{
  --ink:#111418;--body:#343a43;--muted:#69717d;--line:#dce1e7;--tint:#f6f8fb;--paper:#fff;
  --accent:#ff4d2e;--accent-dark:#d9361d;--green:#176b50;--amber:#9b6a13;--red:#a5362c;
  --font-sans:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Helvetica,Arial,sans-serif;
  --font-display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Helvetica,Arial,sans-serif;
  --fast:140ms;--state:200ms;--highlight:250ms;--enter:300ms;
  --ease:cubic-bezier(.4,0,.2,1);--enter-ease:cubic-bezier(.16,1,.3,1)
}
*{box-sizing:border-box}
html{background:var(--paper);color-scheme:light;scroll-behavior:smooth;scroll-padding-top:88px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--body);font:400 16px/1.55 var(--font-sans);letter-spacing:-.008em}
body,button,input,select,textarea{font-family:var(--font-sans)}
h1,h2,h3,h4{margin:0;color:var(--ink);font-family:var(--font-display);font-weight:750;line-height:1.02;text-wrap:balance}
h1{font-size:64px;letter-spacing:-.045em}
h2{font-size:40px;letter-spacing:-.035em}
h3{font-size:28px;letter-spacing:-.025em}
h4{font-size:20px}
p{margin:0}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px;transition:color var(--fast) var(--ease),background var(--fast) var(--ease),border-color var(--fast) var(--ease),transform var(--fast) var(--ease)}
button,input,select,textarea{font-size:16px}
button,a,input,select,textarea{transition:color var(--state) var(--ease),background var(--state) var(--ease),border-color var(--state) var(--ease),transform var(--state) var(--enter-ease),box-shadow var(--state) var(--ease)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(255,77,46,.22);outline-offset:2px}
.container{width:min(1184px,calc(100% - 48px));margin-inline:auto}
.narrow{width:min(800px,calc(100% - 48px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}
.nav{height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;color:var(--ink);font-size:20px;font-weight:700;letter-spacing:.15em;text-decoration:none}
.brand-logo{display:block;width:auto;height:24px}
.nav-links{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:600;letter-spacing:-.01em}
.nav-links a{text-decoration:none}
.nav-partners{position:relative}
.nav-partners summary{display:inline-flex;align-items:center;gap:8px;cursor:pointer;list-style:none}
.nav-partners summary::-webkit-details-marker{display:none}
.nav-partners summary::after{content:"";width:7px;height:7px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg) translateY(-2px)}
.nav-partners[open] summary::after{transform:rotate(225deg) translate(-2px,-1px)}
.nav-mobile-menu{display:none}
.nav-partner-menu{position:absolute;top:calc(100% + 16px);right:0;z-index:50;display:grid;min-width:224px;padding:8px;background:var(--paper);border:1px solid var(--line);border-radius:12px}
.nav-partners:not([open]) .nav-partner-menu{display:none}
.nav-partner-menu a{padding:8px 12px;border-radius:6px;white-space:nowrap}
.nav-partner-menu a:hover{background:var(--tint);color:var(--ink)}
.nav-services-menu{left:50%;right:auto;min-width:248px;transform:translateX(-50%)}
.build-badge{position:fixed;top:80px;right:24px;z-index:100;display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:10px 14px;border:1px solid var(--ink);border-radius:999px;background:var(--paper);color:var(--ink);font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}
.build-badge[hidden]{display:none}
.build-badge strong{color:var(--accent);font-variant-numeric:tabular-nums}
.nav-cta,.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;border:1px solid var(--ink);border-radius:6px;padding:8px 16px;background:var(--paper);color:var(--ink);font-weight:700;text-decoration:none;cursor:pointer}
.nav-cta{font-size:20px;font-weight:750;letter-spacing:-.01em}
.nav-signin{min-height:44px;padding:8px 14px;border:1px solid var(--ink);border-radius:6px;color:var(--ink);font-size:16px;font-weight:750}
.nav-signin:hover{border-color:var(--accent);color:var(--accent)}
.button.primary,.nav-cta{background:var(--accent);border-color:var(--accent);color:#fff}
.button.primary:hover,.nav-cta:hover{background:var(--accent-dark);border-color:var(--accent-dark);transform:translateY(-1px)}
.button:active,.nav-cta:active{transform:translateY(0) scale(.98)}
.button:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}
.compare-outcome article:last-child{background:#eff8f4}.compare-outcome article:last-child h3{color:var(--green)}.compare-outcome li::marker{color:var(--green)}
.other-ways{background:var(--tint)}
.other-ways-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);grid-template-rows:auto auto;column-gap:48px;row-gap:8px;align-items:start;margin-bottom:32px}
.other-ways-head>.eyebrow{grid-column:1;grid-row:1}
.other-ways-head>h2{grid-column:1;grid-row:2}
.other-ways-head>.other-ways-intro{grid-column:2;grid-row:2;align-self:start;color:var(--body);font-size:16px;line-height:1.5}
.other-ways-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper)}
.other-way-card{display:grid;align-content:start;gap:12px;min-height:250px;padding:24px;color:inherit;text-decoration:none}
.other-way-card+.other-way-card{border-left:1px solid var(--line)}
.other-way-card:hover{background:#fff;border-color:var(--accent)}
.other-way-kicker{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.other-way-card h3{font-size:28px}
.other-way-card p{color:var(--body);font-size:14px}
.other-way-link{align-self:end;color:var(--ink);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.other-ways-more{margin-top:20px;color:var(--muted);font-size:14px}.other-ways-more a{color:var(--ink);font-weight:700}
.button:disabled{cursor:wait;opacity:.62;transform:none}
.eyebrow{color:var(--muted);font-size:12px;font-weight:750;letter-spacing:.14em;text-transform:uppercase}
.fine,.micro{color:var(--muted);font-size:12px;line-height:1.5}
.muted{color:var(--muted)}
.section{padding:80px 0;border-top:1px solid var(--line)}
.panel,.card{background:var(--paper);border:1px solid var(--line);border-radius:12px}
.artifact-frame{overflow:hidden;border:1px solid var(--line);border-radius:4px;background:var(--paper)}
.pill{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:12px;font-weight:700}
.field{display:grid;gap:8px}
.field>span,.field-label{color:var(--ink);font-size:14px;font-weight:700}
input,select,textarea{width:100%;min-height:48px;border:1px solid #bfc6cf;border-radius:6px;background:#fff;color:var(--ink);padding:16px}
textarea{min-height:96px;resize:vertical}
input:hover,select:hover,textarea:hover{border-color:#838d99}
/* A native select renders with OS chrome and ignores the token system entirely, which is the
   single largest "not premium" tell on the page: the control looks like it belongs to a
   different website. Strip the native appearance and draw our own chevron. */
select{
  appearance:none;-webkit-appearance:none;-moz-appearance:none;
  padding-right:44px;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%2369717d' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px
}
select::-ms-expand{display:none}
/* The dropdown LIST inherits the select's own font. Without this the market-title select,
   which is deliberately set in Lora at display size, renders its option list in 28px serif
   and looks like a separate application. Pin the list to body type. */
select option{font:400 16px/1.5 Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper)}
.notice{border-left:3px solid var(--accent);padding:16px 24px;background:var(--tint)}
.site-footer{border-top:1px solid var(--line);padding:40px 0;color:var(--muted);font-size:14px}
.footer-grid{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}
.footer-links{display:flex;flex-wrap:wrap;gap:16px}
.status-text{min-height:24px;color:var(--muted);font-size:14px}
.page-shell{min-height:100vh;display:grid;grid-template-rows:auto 1fr auto}
.page-main{padding:64px 0 80px}
.legal{width:min(800px,calc(100% - 48px));margin-inline:auto}
.legal-head{display:grid;gap:16px;padding-bottom:32px;border-bottom:1px solid var(--line)}
.legal-body{display:grid;gap:32px;padding-top:32px}
.legal-body section{display:grid;gap:16px}
.legal-body h2{font-size:28px}
.legal-body a{color:var(--ink)}
.account-wrap{width:min(520px,calc(100% - 32px));margin:auto;padding:48px 0}
.account-card{display:grid;gap:24px;padding:32px}
.account-card form{display:grid;gap:16px}
.account-card .button{width:100%}
.account-card .button.link-button{background:transparent;border-color:transparent;text-decoration:underline}
.account-card .button.link-button:hover{background:var(--tint);color:var(--ink);transform:none}
.code-input{font-family:"Lora",Georgia,serif;font-size:28px;letter-spacing:.2em;text-align:center}
.stack{display:grid;gap:16px}
.hidden{display:none!important}
.confirmation{display:grid;gap:24px;text-align:center;padding:48px 32px}
.confirmation .button{justify-self:center}
@media(max-width:760px){
  h1{font-size:40px}h2{font-size:28px}h3{font-size:20px}
  .container,.narrow{width:calc(100% - 32px);max-width:1184px}
  .nav{height:68px;gap:10px}.brand-logo{height:22px}.nav-links{margin-left:auto;gap:10px}.nav-links>.nav-desktop-only{display:none}.nav-mobile-menu{display:block}.nav-partners summary{min-height:44px;font-size:14px;font-weight:650;padding:0 6px}.nav-partner-menu{top:calc(100% + 8px);right:0;min-width:216px;padding:8px}.nav-cta{min-height:44px;padding:8px 14px;font-size:16px}.nav-signin{min-height:42px;padding:8px 10px;font-size:14px}.build-badge{top:80px;right:12px;padding:9px 12px}.build-badge-copy{display:none}
  .section{padding:48px 0}.footer-grid{grid-template-columns:1fr}.other-ways-head{grid-template-columns:1fr;grid-template-rows:auto;gap:8px;margin-bottom:24px}.other-ways-head>.eyebrow,.other-ways-head>h2,.other-ways-head>.other-ways-intro{grid-column:1;grid-row:auto}.other-ways-head>.other-ways-intro{margin-top:8px}.other-ways-grid{grid-template-columns:1fr}.other-way-card{min-height:0;padding:24px}.other-way-card+.other-way-card{border-left:0;border-top:1px solid var(--line)}
  .page-main{padding:40px 0 56px}.legal{width:min(100% - 32px,800px)}.account-wrap{padding:32px 0}.account-card{padding:24px}.confirmation{padding:32px 24px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
  .button:hover,.nav-cta:hover{transform:none}
}

/* Company and opportunity pages share the same deliberately spare sales layout. */
.solution-hero{padding:80px 0 64px;border-bottom:1px solid var(--line)}
.solution-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:64px;align-items:start}
.solution-copy{display:grid;gap:24px}.solution-copy h1{max-width:760px}.solution-copy .lead{max-width:700px;color:var(--ink);font:400 20px/1.5 "Lora",Georgia,serif}
.solution-proof{display:grid;gap:20px;padding:32px;border:1px solid var(--line);border-radius:12px;background:var(--tint)}
.solution-proof strong{display:block;color:var(--ink);font:700 28px/1.15 "Lora",Georgia,serif}.solution-proof p{font-size:14px}
.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:12px;overflow:hidden}.solution-grid article{display:grid;gap:16px;padding:32px}.solution-grid article+article{border-left:1px solid var(--line)}.solution-grid h2{font-size:28px}
.solution-list{margin:0;padding-left:20px}.solution-list li+li{margin-top:8px}
.solution-callout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:56px;align-items:start}.solution-callout-copy{display:grid;gap:20px}.interest-form{display:grid;gap:16px;padding:32px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.interest-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.interest-form label{display:grid;gap:8px;color:var(--ink);font-size:14px;font-weight:700}.interest-form .consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;font-weight:400}.interest-form .consent input{width:18px;min-width:18px;min-height:18px;margin-top:2px;padding:0}.interest-form .status-text{min-height:20px}
.solution-note{padding:20px 24px;border-left:3px solid var(--accent);background:var(--tint);font-size:14px}.solution-footnote{color:var(--muted);font-size:12px;line-height:1.5}
@media(max-width:760px){
  .container,.narrow{width:min(100% - 40px,1184px)}
  .nav{height:72px;gap:12px}
  .nav-links{gap:12px}
  .nav-links>.nav-desktop-only{display:none}
  .nav-mobile-menu{display:block}
  .nav-mobile-menu summary{min-height:44px;padding:8px 4px;font-size:16px}
  .nav-mobile-menu .nav-partner-menu{position:fixed;top:64px;right:20px;left:20px;min-width:0;transform:none}
  .nav-mobile-menu .nav-partner-menu a{min-height:44px;display:flex;align-items:center}
  .solution-hero{padding:40px 0}
  .solution-hero-grid,.solution-grid,.solution-callout{grid-template-columns:1fr;gap:24px}
  .solution-copy{gap:20px;min-width:0}
  .solution-copy h1{max-width:100%;font-size:40px;line-height:1.06;overflow-wrap:anywhere}
  .solution-copy .lead{font-size:20px;line-height:1.45}
  .solution-grid article+article{border-left:0;border-top:1px solid var(--line)}
  .solution-callout{gap:24px}
  .solution-proof,.interest-form{padding:20px}
  .interest-form .form-row{grid-template-columns:1fr}
  .solution-proof strong{font-size:28px}
}

/* Custom select. The native option list is an OS-drawn widget that ignores all CSS, so the
   only way to make a dropdown match the design system is to draw the list ourselves. The
   original <select> stays in the DOM as the source of truth and is visually hidden. */
.xsel{position:relative;display:inline-block;max-width:100%}.field>.xsel{display:block;width:100%}
/* !important is load-bearing here: the original controls carry their own width rules, one of
   which is `width:100%!important`. Without matching it the hidden native select keeps its full
   width, sits outside the viewport, and creates horizontal scroll on mobile. */
.xsel-native{position:absolute!important;width:1px!important;min-width:0!important;max-width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:-1px!important;border:0!important;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.xsel-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:48px;border:1px solid #bfc6cf;border-radius:10px;background-color:var(--paper);color:var(--ink);padding:0 44px 0 16px;font-size:16px;font-weight:600;line-height:1.25;text-align:left;cursor:pointer;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%2369717d' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center;background-size:12px 8px}
.xsel-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.xsel-trigger:hover{border-color:#838d99}.xsel-trigger[aria-expanded="true"]{border-color:var(--ink)}
.xsel-menu{position:absolute;z-index:40;top:calc(100% + 8px);left:0;min-width:100%;max-height:320px;overflow-y:auto;
  width:max-content;max-width:min(320px,calc(100vw - 32px));padding:6px;background:var(--paper);border:1px solid var(--line);border-radius:12px}
.xsel-option{padding:11px 14px;border-radius:6px;font:500 14px/1.35 var(--font-sans);color:var(--ink);white-space:nowrap;cursor:pointer}
.xsel-option.is-active{background:var(--tint)}
.xsel-option[aria-selected="true"]{font-weight:700}
.xsel-option[aria-selected="true"]::after{content:"";float:right;width:12px;height:12px;margin-left:16px;
  background:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 6.5 4.8 9.2 10 3.5' fill='none' stroke='%23ff4d2e' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center/12px 12px}
.xsel-has-custom .xsel-menu{left:auto;right:0;min-width:280px}
.xsel-has-custom .xsel-trigger{width:100%}
.market-salary-line .xsel-has-custom{width:min(280px,100%)}
.xsel-custom-editor{box-sizing:border-box;width:100%;min-height:48px;margin-top:8px;padding:4px 6px;border:1px solid var(--ink);border-radius:10px;background:var(--paper)}
.xsel-custom-entry{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}
.xsel-custom-entry>span{color:var(--muted);font-size:16px;font-weight:700}
.xsel-custom-entry input{min-width:0;min-height:40px;padding:8px 10px;border-radius:6px;font-size:14px}
.xsel-custom-entry button{min-height:40px;border:1px solid var(--ink);border-radius:6px;background:var(--ink);color:#fff;padding:8px 12px;font-size:14px;font-weight:700;cursor:pointer}
.xsel-custom-entry button:hover{background:var(--accent);border-color:var(--accent)}
/* Calm, honest conversion feedback. Motion is decorative and never hides billing terms. */
.salvo-celebration{position:relative;overflow:hidden;isolation:isolate}.salvo-celebration::before{content:"";position:absolute;z-index:-1;width:220px;height:220px;right:-90px;top:-110px;border-radius:50%;background:radial-gradient(circle,rgba(255,75,51,.18),rgba(255,75,51,0) 68%);transform:scale(.65);opacity:0;transition:transform .8s cubic-bezier(.2,.8,.2,1),opacity .5s}.salvo-celebration.is-arrived::before{transform:scale(1);opacity:1}.salvo-celebration .success-mark{display:grid;place-items:center;width:46px;height:46px;margin-bottom:18px;border-radius:50%;background:var(--green);color:#fff;font-size:20px;transform:scale(.75);opacity:0;transition:transform .55s cubic-bezier(.2,1.35,.4,1),opacity .3s}.salvo-celebration.is-arrived .success-mark{transform:scale(1);opacity:1}.salvo-sound{width:auto;border:0;background:transparent;color:var(--muted);padding:8px 0;font:700 12px/1.2 inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.salvo-sound:disabled{cursor:default;text-decoration:none;opacity:.7}@media(prefers-reduced-motion:reduce){.salvo-celebration::before,.salvo-celebration .success-mark{transition:none;transform:none;opacity:1}}
