/* Book a demo, v3 look. Pairs with /assets/site-20261007/demo.js (unchanged form logic). */
@font-face{font-family:Archivo;src:url('/fonts/archivo-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Archivo;src:url('/fonts/archivo-latin-500-normal.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Archivo;src:url('/fonts/archivo-latin-600-normal.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Plex;src:url('/fonts/ibm-plex-sans-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Plex;src:url('/fonts/ibm-plex-sans-latin-500-normal.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Plex;src:url('/fonts/ibm-plex-sans-latin-600-normal.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Mono;src:url('/fonts/ibm-plex-mono-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Mono;src:url('/fonts/ibm-plex-mono-latin-500-normal.woff2') format('woff2');font-weight:500;font-display:swap}

:root{
  --paper:#f2f4f1;--paper2:#e8ece8;--ink:#0c1f1c;--ink2:#41584f;--muted:#6a7f77;--line:rgba(12,31,28,.12);--line2:rgba(12,31,28,.07);
  --green:#087765;--mint:#2dbd8e;--amber:#d98a1f;--amber-s:#fbf0dc;--red:#b04a2c;--red-s:#fbe9e5;--pine:#06130f;
  --disp:Archivo,system-ui,sans-serif;--ui:Plex,system-ui,sans-serif;--mono:Mono,ui-monospace,monospace;
  --out:cubic-bezier(.16,1,.3,1);--nav:68px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{background:var(--paper);scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font:16px/1.55 var(--ui);-webkit-font-smoothing:antialiased;overflow-x:clip}
h1,h2,h3{font-family:var(--disp);font-weight:500}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
img{display:block;max-width:100%}
ul{list-style:none}
.shell{width:min(1280px,100% - 64px);margin-inline:auto}
.mono{font:500 11.5px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase}
:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:4px}
.skip{position:fixed;left:16px;top:-60px;z-index:400;background:var(--ink);color:#fff;padding:10px 14px;border-radius:8px;font-weight:600}
.skip:focus{top:12px}
.grain{position:fixed;inset:0;z-index:250;pointer-events:none;opacity:.045;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 .9 0'/></filter><rect width='220' height='220' filter='url(%23n)'/></svg>")}

/* nav */
.nav{position:fixed;z-index:100;left:0;right:0;top:0;height:var(--nav);padding:0 clamp(16px,3vw,40px);display:flex;align-items:center;gap:28px;background:rgba(242,244,241,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line2)}
.brand{display:flex;align-items:center;gap:11px;font:500 20px var(--disp);letter-spacing:-.025em}
.brand img{width:32px;height:32px}
.lg-w{display:none}

/* buttons */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:99px;padding:13px 22px;font:600 15px/1 var(--ui);white-space:nowrap;overflow:hidden;isolation:isolate;transition:box-shadow .4s var(--out),background .3s,color .3s,border-color .3s}
.btn i,.btn span[aria-hidden]{font-style:normal;transition:transform .45s var(--out)}
.btn:hover span[aria-hidden]{transform:translate(2px,-2px)}
.btn::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%);transform:translateX(-120%);transition:transform .8s var(--out)}
.btn:hover::after{transform:translateX(120%)}
.btn-ink{background:var(--ink);color:#fff}.btn-ink:hover{box-shadow:0 14px 34px -10px rgba(12,31,28,.6)}
.btn-green{background:var(--green);color:#fff}.btn-green:hover{box-shadow:0 14px 34px -10px rgba(8,119,101,.7)}
.btn-line{border:1px solid rgba(12,31,28,.22);color:var(--ink);background:rgba(255,255,255,.5)}.btn-line:hover{border-color:var(--ink);background:#fff}
.eyebrow{display:flex;align-items:center;gap:12px;color:var(--green);font:500 12px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase}
.rule{width:34px;height:1px;background:currentColor;position:relative;flex:none}
.rule::after{content:"";position:absolute;right:-3px;top:-2.5px;width:6px;height:6px;border-radius:50%;background:currentColor}

/* page */
.dm{position:relative;padding:calc(var(--nav) + clamp(28px,6vh,72px)) 0 clamp(64px,10vh,120px);overflow:hidden;min-height:calc(100svh - 0px)}
.dm-bg{position:absolute;inset:0;pointer-events:none;z-index:0;
  background:
    linear-gradient(rgba(12,31,28,.07) 1px,transparent 1px) 0 0/90px 90px,
    linear-gradient(90deg,rgba(12,31,28,.07) 1px,transparent 1px) 0 0/90px 90px,
    linear-gradient(rgba(12,31,28,.035) 1px,transparent 1px) 0 0/18px 18px,
    linear-gradient(90deg,rgba(12,31,28,.035) 1px,transparent 1px) 0 0/18px 18px;
  -webkit-mask-image:radial-gradient(ellipse 70% 75% at 78% 38%,#000 10%,transparent 72%);mask-image:radial-gradient(ellipse 70% 75% at 78% 38%,#000 10%,transparent 72%)}
.dgrid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,580px);gap:clamp(32px,6vw,96px);align-items:start}
.dcopy{padding-top:clamp(4px,3vh,36px)}
.dcopy h1{font-size:clamp(42px,min(5vw,8.4vh),84px);line-height:1;letter-spacing:-.05em;margin:24px 0 24px;text-wrap:balance}
.dcopy h1 .mask{display:block;overflow:hidden;padding:.06em 0 .1em;margin:-.06em 0 -.1em}
.dcopy h1 .ln{display:block;animation:lnin 1.3s var(--out) both;animation-delay:var(--d,.1s)}
.dcopy h1 .mask:last-child .ln{color:var(--green)}
@keyframes lnin{from{transform:translateY(112%)}}
.rise{animation:rise 1.1s var(--out) both;animation-delay:var(--h,0s)}
@keyframes rise{from{opacity:0;transform:translateY(26px);filter:blur(8px)}}
.dlede{font-size:clamp(16px,1.35vw,19.5px);color:var(--ink2);max-width:30em}
.dsub{margin:clamp(28px,5vh,48px) 0 12px;font:500 11.5px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.dlist{display:grid;border-top:1px solid var(--line);max-width:38em}
.dlist li{display:grid;grid-template-columns:104px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.dlist em{font:500 12px/1.9 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--green);font-style:normal}
.dlist b{display:block;font:500 19px/1.25 var(--disp);letter-spacing:-.025em}
.dlist small{display:block;font-size:15px;color:var(--ink2);margin-top:2px}
.dprod{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-width:38em}
.dprod li{display:flex;align-items:center;gap:12px;padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.55);font-size:14.5px;font-weight:500;transition:border-color .3s,background .3s,transform .4s var(--out)}
.dprod li:hover{border-color:var(--ink);background:#fff;transform:translateY(-2px)}
.dprod li b{font:500 11px var(--mono);letter-spacing:.1em;color:var(--green)}
.dprod li:last-child:nth-child(odd){grid-column:1 / -1}

/* the form: a sheet on a stack of paper */
.dform{position:relative;perspective:1600px}
.dform::before,.dform::after{content:"";position:absolute;inset:6px 10px -8px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:0 30px 60px -30px rgba(12,31,28,.35);z-index:0}
.dform::before{rotate:-2.4deg;translate:-8px 4px;opacity:.7}
.dform::after{rotate:1.8deg;translate:10px 8px;opacity:.5}
.dcard{position:relative;z-index:1;background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(22px,3vw,38px);box-shadow:0 0 0 1px rgba(255,255,255,.7) inset,0 2px 4px rgba(12,31,28,.06),0 24px 48px -16px rgba(12,31,28,.28),0 80px 100px -50px rgba(12,31,28,.35);transform-origin:50% 100%;animation:cardin 1.5s var(--out) .25s both}
@keyframes cardin{from{opacity:0;transform:translateY(60px) rotateX(14deg) scale(.96);filter:blur(6px)}}
.fhead{margin-bottom:22px}
.ftag{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;color:var(--muted)}
.ftag .tag{font:500 10.5px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;padding:5px 9px;border-radius:99px;border:1px solid currentColor;opacity:.7}
.fhead h2{font-size:clamp(28px,2.6vw,38px);letter-spacing:-.04em;line-height:1.05}
.steps3{position:relative;display:flex;justify-content:space-between;align-items:center;margin:22px 0 10px;--p:0%}
.steps3::before,.steps3::after{content:"";position:absolute;left:7px;right:7px;top:50%;height:1px;background:var(--line)}
.steps3::after{background:var(--ink);right:auto;width:calc(var(--p) * (100% - 14px) / 100%)}
.steps3 i{position:relative;z-index:1;width:15px;height:15px;border-radius:50%;background:#fff;border:1px solid rgba(12,31,28,.3);transition:all .5s var(--out)}
.steps3 i.on{background:var(--ink);border-color:var(--ink);box-shadow:0 0 0 5px rgba(12,31,28,.1)}
#demoForm[data-active="1"] .steps3{--p:0%}#demoForm[data-active="2"] .steps3{--p:50%}#demoForm[data-active="3"] .steps3{--p:100%}
#demoForm[data-active="1"] .steps3::after{width:0}
.steplabel{font:500 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.fstep{display:none;gap:16px}
#demoForm[data-active="1"] .fstep[data-step="1"],#demoForm[data-active="2"] .fstep[data-step="2"],#demoForm[data-active="3"] .fstep[data-step="3"]{display:grid;animation:stepin .6s var(--out) both}
@keyframes stepin{from{opacity:0;translate:16px 0}}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fld{display:grid;gap:7px;position:relative}
.fld label,.needs legend{font:600 14px/1.3 var(--ui);color:var(--ink)}
.fld label em{font-weight:400;font-style:normal;color:var(--muted)}
.fld input,.fld select{width:100%;min-height:52px;border:1px solid rgba(12,31,28,.2);border-radius:14px;background:#fbfcfa;padding:0 16px;font:400 16px var(--ui);color:var(--ink);transition:border-color .25s,box-shadow .25s,background .25s;appearance:none;-webkit-appearance:none}
.fld select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'><path d='M1 1.5l6 6 6-6' fill='none' stroke='%23586E6B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 16px center;padding-right:42px}
.fld input::placeholder{color:#9aaba5}
.fld input:hover,.fld select:hover{border-color:rgba(12,31,28,.4)}
.fld input:focus,.fld select:focus{outline:none;border-color:var(--green);background:#fff;box-shadow:0 0 0 4px rgba(8,119,101,.16)}
.fld select:invalid{color:var(--muted)}
.err{display:none;font-size:13px;color:var(--red);font-weight:500}
.fld.invalid input,.fld.invalid select{border-color:var(--red);background:#fff8f6}
.fld.invalid .err,.needs-err.show{display:block}
.needs{border:0;min-inline-size:0;display:grid;gap:12px}
.needs legend{padding-bottom:12px;font:500 19px/1.25 var(--disp);letter-spacing:-.02em}
.ngrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tile{position:relative;display:flex;gap:12px;align-items:center;padding:13px 14px;border:1px solid rgba(12,31,28,.2);border-radius:14px;background:#fbfcfa;font-size:14.5px;line-height:1.3;cursor:pointer;transition:border-color .3s,background .3s,transform .4s var(--out)}
.tile:hover{border-color:rgba(12,31,28,.45);transform:translateY(-1px)}
.tile input{position:absolute;opacity:0;inset:0;cursor:pointer}
.tile b{width:22px;height:22px;border-radius:7px;border:1.5px solid #aebcb6;background:#fff;flex:none;position:relative;transition:background .3s,border-color .3s}
.tile b::after{content:"";position:absolute;left:6.5px;top:3px;width:6px;height:11px;border:solid #fff;border-width:0 2.4px 2.4px 0;rotate:45deg;opacity:0;transition:opacity .25s}
.tile:has(input:checked){border-color:var(--ink);background:#eef3f0}
.tile:has(input:checked) b{background:var(--ink);border-color:var(--ink)}
.tile:has(input:checked) b::after{opacity:1}
.tile:has(input:focus-visible){outline:2px solid var(--green);outline-offset:2px}
.consent{font-size:13px;color:var(--muted)}
.factions{display:flex;gap:12px;margin-top:26px}
.factions .btn{flex:1;padding:17px 22px}
.factions .back{flex:0 0 auto;padding-inline:22px}
#demoForm[data-active="1"] .back{display:none}
#demoForm:not([data-active="3"]) .submit{display:none}
#demoForm[data-active="3"] .next{display:none}
.dsuccess{display:grid;gap:14px;justify-items:start;padding:8px 0}
.dsuccess[hidden]{display:none}
.dsuccess h2{font-size:clamp(28px,2.8vw,38px);letter-spacing:-.04em;line-height:1.05}
.dsuccess p{color:var(--ink2);max-width:28em}
.ok{width:60px;height:60px;border-radius:50%;background:#e1f3eb;display:grid;place-items:center;box-shadow:0 0 0 1.5px rgba(8,119,101,.35) inset}
.ok svg{width:28px;height:26px;overflow:visible}
.ok path{fill:none;stroke:var(--green);stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:okdraw .7s cubic-bezier(.65,0,.35,1) .15s forwards}
@keyframes okdraw{to{stroke-dashoffset:0}}
.hasacct{position:relative;z-index:1;margin-top:52px;text-align:center;color:var(--muted);font-size:14.5px}
.hasacct a{color:var(--green);font-weight:600}

/* footer */
.foot{background:var(--pine);color:#8fa59d;font-size:14px}
.foot-in{padding:clamp(48px,8vh,84px) 0 34px}
.foot-top{display:grid;grid-template-columns:1.4fr repeat(3,minmax(0,.7fr));gap:40px;padding-bottom:clamp(40px,6vh,64px)}
.foot-brand{display:grid;gap:16px;align-content:start;justify-items:start}
.foot .brand{font-size:20px;color:#fff}
.foot-brand p{max-width:24em;font-size:15px;line-height:1.5}
.foot-login{display:inline-flex;gap:8px;color:var(--mint);font-weight:600;border-bottom:1px solid rgba(45,189,142,.35);padding-bottom:3px}
.foot-login:hover{border-color:var(--mint)}
.foot-col{display:grid;gap:10px;align-content:start}
.foot-col h3{font:500 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:6px}
.foot-col a{transition:color .3s,transform .4s var(--out);width:fit-content}
.foot-col a:hover{color:#fff;transform:translateX(4px)}
.foot-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:13px}

/* responsive */
@media(max-width:980px){
  .shell{width:calc(100% - 40px)}
  .dgrid{display:flex;flex-direction:column;gap:14px}
  .dcopy{display:contents}
  .dcopy .eyebrow,.dcopy h1,.dcopy .dlede{order:1;width:100%}
  .dcopy h1{margin:12px 0 0}
  .dcopy .dlede{margin-top:-4px}
  .dform{order:2;width:100%;max-width:640px;margin-top:14px}
  .dsub,.dlist,.dprod{order:3}
  .dsub{margin-top:30px}
  .foot-top{grid-template-columns:1fr 1fr}.foot-brand{grid-column:1/-1}
}
@media(max-width:560px){
  .frow:not(.keep),.ngrid{grid-template-columns:1fr}
  .dcard{border-radius:20px}
  .dform::before,.dform::after{border-radius:20px}
  .factions{flex-direction:column-reverse}.factions .back{flex:1}
  .dprod{grid-template-columns:1fr}
  .dlist li{grid-template-columns:78px 1fr}
}
@media(prefers-reduced-motion:reduce){
  .rise,.dcopy h1 .ln,.dcard{animation:none!important}
  #demoForm .fstep{animation:none!important}
  .ok path{animation:none;stroke-dashoffset:0}
  html{scroll-behavior:auto}
}

.foot .brand svg.lg-f{width:26px;height:28px;flex:none}
