@font-face{font-family:"Lexend";font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/lexend.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Findb — site styles. One system for every page. Sizes in rem so the whole site scales up on big screens and TVs. */
:root{
  --ink:#070A22; --ink2:#11163A; --ink3:#1A2050; --paper:#F6F6F2; --card:#FFFFFF; --line:#E4E6EF; --line2:#D5D9E6;
  --text:#0A0F2E; --muted:#5E6382; --faint:#666C88; --blue:#2F5BFF; --blue-d:#2449D8; --blue-l:#9DB1FF; --blue-wash:#EEF2FF; --tint:#E7EBF7;
  --mint:#8FE8C0; --ok:#0A8F53; --err:#C2264B;
  --font:'Lexend','Helvetica Neue',Arial,sans-serif;
  --ease:cubic-bezier(.22,.8,.24,1); --ease-io:cubic-bezier(.65,0,.35,1);
  --r-s:.75rem; --r-m:1.25rem; --r-l:1.75rem; --r-xl:2rem;
  --wrap:76rem; --gut:max(1.25rem, env(safe-area-inset-left, 0px));
  --nav-h:4rem;
  --shadow-1:0 1px 2px rgba(10,15,46,.06), 0 8px 24px -12px rgba(10,15,46,.18);
  --shadow-2:0 2px 6px rgba(10,15,46,.06), 0 30px 60px -30px rgba(10,15,46,.35);
  color-scheme:light;
}
html{font-size:16px;-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--nav-h) + 1rem)}
@media (min-width:1800px){ html{font-size:17px} }
@media (min-width:2200px){ html{font-size:19px} }
@media (min-width:2800px){ html{font-size:23px} }
@media (min-width:3400px){ html{font-size:28px} }
@media (max-width:340px){ html{font-size:15px} }
*,*::before,*::after{box-sizing:border-box}
body{margin:0;min-height:100vh;background:var(--paper);color:var(--text);font-family:var(--font);font-weight:300;font-size:1.0625rem;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;text-rendering:optimizeLegibility}
img,video,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:.4rem}
::selection{background:#D9E1FF}
[hidden]{display:none!important}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:1rem;top:-4rem;z-index:200;background:var(--ink);color:#fff;padding:.7rem 1rem;border-radius:.6rem;text-decoration:none;font-weight:500}
.skip:focus{top:1rem}

/* layout */
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding-left:var(--gut);padding-right:max(1.25rem, env(safe-area-inset-right, 0px))}
.wrap.narrow{max-width:52rem}
.wrap.mid{max-width:64rem}
section{padding-block:clamp(4.5rem,10vw,9rem)}
section.tight{padding-block:clamp(3.5rem,7vw,6rem)}
.pt0{padding-top:0!important}.pb0{padding-bottom:0!important}
.dark{background:var(--ink);color:#fff}
.tint{background:var(--tint)}
.white{background:#fff}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,6vw,5.5rem);align-items:center}
.grid2>*{min-width:0}
.grid2.top{align-items:start}
.grid2.wide-l{grid-template-columns:1.15fr .85fr}
.grid2.wide-r{grid-template-columns:.85fr 1.15fr}
@media (max-width:900px){ .grid2,.grid2.wide-l,.grid2.wide-r{grid-template-columns:1fr} .grid2 .m-first{order:-1} }
.stack>*+*{margin-top:1rem}
.center{text-align:center}
.center .lede{margin-left:auto;margin-right:auto}

/* type */
h1,h2,h3,h4{font-weight:600;letter-spacing:-.035em;line-height:1.03;margin:0;text-wrap:balance}
h1{font-size:clamp(2.75rem,7.4vw,6.25rem);letter-spacing:-.05em;line-height:.95}
h1.xl{font-size:clamp(3.4rem,8.6vw,7.75rem);letter-spacing:-.055em;line-height:.9}
h2{font-size:clamp(2.25rem,5.2vw,4.5rem)}
h2.m{font-size:clamp(1.9rem,3.8vw,3.25rem)}
h3{font-size:clamp(1.3rem,1.9vw,1.6rem);letter-spacing:-.02em;line-height:1.15}
h4{font-size:1.125rem;letter-spacing:-.01em;line-height:1.25}
h1 em,h2 em,h3 em{font-style:normal;color:var(--blue)}
.dark h1 em,.dark h2 em,.dark h3 em{color:var(--blue-l)}
p{margin:0}
.lede{font-size:clamp(1.125rem,1.55vw,1.35rem);color:var(--muted);max-width:40rem;margin-top:1.25rem;text-wrap:pretty}
.dark .lede{color:rgba(255,255,255,.68)}
.eyebrow{display:inline-block;font-size:.8125rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--blue)}
.dark .eyebrow{color:var(--blue-l)}
.eyebrow+h1,.eyebrow+h2{margin-top:.9rem}
.small{font-size:.875rem}
.muted{color:var(--muted)}
.dark .muted{color:rgba(255,255,255,.6)}
.fine{font-size:.8125rem;line-height:1.55;color:var(--faint)}
.dark .fine{color:rgba(255,255,255,.48)}
.tnum{font-variant-numeric:tabular-nums}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:0;font-weight:600;font-size:.9375rem;line-height:1;padding:.95rem 1.4rem;border-radius:999px;background:var(--blue);color:#fff;text-decoration:none;white-space:nowrap;transition:transform .25s var(--ease),background .2s,box-shadow .25s;-webkit-tap-highlight-color:transparent}
.btn:hover{background:var(--blue-d)}
.btn:active{transform:scale(.97)}
.btn.lg{font-size:1rem;padding:1.1rem 1.7rem}
.btn.sm{font-size:.875rem;padding:.7rem 1.05rem}
.btn.white{background:#fff;color:var(--ink)}
.btn.white:hover{background:#EEF0F7}
.btn.ghost{background:transparent;color:var(--text);box-shadow:inset 0 0 0 1.5px var(--line2)}
.btn.ghost:hover{box-shadow:inset 0 0 0 1.5px var(--text);background:transparent}
.dark .btn.ghost{color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.28)}
.dark .btn.ghost:hover{box-shadow:inset 0 0 0 1.5px #fff}
.btn.block{width:100%}
.btn[disabled]{opacity:.55;pointer-events:none}
.btn .arr{transition:transform .25s var(--ease)}
.btn:hover .arr{transform:translateX(3px)}
.btns{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}
.center .btns{justify-content:center}
.link{color:var(--blue);font-weight:500;text-decoration:none;display:inline-flex;align-items:center;gap:.35rem}
.link:hover{text-decoration:underline;text-underline-offset:.2em}
.dark .link{color:var(--blue-l)}

/* logo */
.logo{display:block;background:currentColor;-webkit-mask:url(logo.png) left center/contain no-repeat;mask:url(logo.png) left center/contain no-repeat;aspect-ratio:600/220}

/* header */
.nav{position:sticky;top:0;z-index:60;padding-top:env(safe-area-inset-top,0px);background:rgba(246,246,242,.82);backdrop-filter:blur(18px) saturate(1.6);-webkit-backdrop-filter:blur(18px) saturate(1.6);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}
.nav.scrolled{border-color:var(--line)}
.nav.on-dark{background:rgba(7,10,34,.72);color:#fff}
.nav.on-dark.scrolled{border-color:rgba(255,255,255,.08)}
.nav .bar{display:flex;align-items:center;gap:1.5rem;height:var(--nav-h)}
.nav .home{flex:none;color:inherit;display:block;padding:.4rem 0}
.nav .home .logo{width:5.1rem}
.nav .links{display:flex;gap:.25rem;margin-left:auto;margin-right:.5rem}
.nav .links a{position:relative;font-size:.875rem;font-weight:400;text-decoration:none;color:var(--muted);padding:.55rem .75rem;border-radius:999px;transition:color .2s,background .2s}
.nav.on-dark .links a{color:rgba(255,255,255,.7)}
.nav .links a:hover{color:var(--text);background:rgba(10,15,46,.05)}
.nav.on-dark .links a:hover{color:#fff;background:rgba(255,255,255,.08)}
.nav .links a[aria-current=page]{color:var(--text);font-weight:500}
.nav.on-dark .links a[aria-current=page]{color:#fff}
.nav .links a[aria-current=page]::after{content:"";position:absolute;left:50%;bottom:.25rem;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--blue)}
.nav .acts{display:flex;align-items:center;gap:.5rem;flex:none}
.nav .acts .btn{padding:.7rem 1.05rem;font-size:.875rem}
.nav .acts .ghost-link{font-size:.875rem;font-weight:500;text-decoration:none;padding:.6rem .8rem;border-radius:999px;color:inherit}
.nav .acts .ghost-link:hover{background:rgba(10,15,46,.05)}
.nav.on-dark .acts .ghost-link:hover{background:rgba(255,255,255,.08)}
.burger{display:none;width:2.75rem;height:2.75rem;border:0;border-radius:50%;background:rgba(10,15,46,.05);position:relative;color:inherit}
.nav.on-dark .burger{background:rgba(255,255,255,.1)}
.burger i{position:absolute;left:50%;width:1.1rem;height:2px;margin-left:-.55rem;border-radius:2px;background:currentColor;transition:transform .35s var(--ease),opacity .2s}
.burger i:nth-child(1){top:calc(50% - 4px)}
.burger i:nth-child(2){top:calc(50% + 3px)}
.menu-open .burger i:nth-child(1){transform:translateY(3.5px) rotate(45deg)}
.menu-open .burger i:nth-child(2){transform:translateY(-3.5px) rotate(-45deg)}
@media (max-width:1080px){
  .nav .links,.nav .acts .ghost-link{display:none}
  .nav .acts{margin-left:auto}
  .burger{display:block}
}
@media (max-width:360px){ .nav .acts .btn{display:none} }

/* mobile menu */
.sheet-menu{position:fixed;inset:0;z-index:55;background:var(--paper);padding:calc(var(--nav-h) + env(safe-area-inset-top,0px) + 1rem) 0 calc(2rem + env(safe-area-inset-bottom,0px));overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .3s var(--ease),transform .4s var(--ease),visibility 0s .4s}
.menu-open .sheet-menu{opacity:1;visibility:visible;transform:none;transition:opacity .3s var(--ease),transform .4s var(--ease),visibility 0s}
.menu-open{overflow:hidden}
.menu-open .nav{background:var(--paper);color:var(--text);border-color:var(--line)}
.sheet-menu nav{display:flex;flex-direction:column}
.sheet-menu .big a{display:flex;align-items:center;justify-content:space-between;padding:.85rem 0;border-bottom:1px solid var(--line);font-size:clamp(1.6rem,7vw,2.25rem);font-weight:600;letter-spacing:-.03em;text-decoration:none}
.sheet-menu .big a::after{content:"";width:.6rem;height:.6rem;border-right:2px solid var(--faint);border-top:2px solid var(--faint);transform:rotate(45deg)}
.sheet-menu .big a[aria-current=page]{color:var(--blue)}
.sheet-menu .minor{display:grid;grid-template-columns:1fr 1fr;gap:.25rem 1rem;margin-top:1.5rem}
.sheet-menu .minor a{padding:.55rem 0;color:var(--muted);text-decoration:none;font-size:1rem}
.sheet-menu .btns{margin-top:1.75rem}
.sheet-menu .btns .btn{flex:1}

/* footer */
.foot{background:var(--ink);color:rgba(255,255,255,.62);padding:clamp(3.5rem,7vw,5.5rem) 0 calc(2rem + env(safe-area-inset-bottom,0px));font-size:.9375rem}
.foot .top{display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:2.5rem}
.foot .brand .logo{width:5.5rem;color:#fff}
.foot .brand p{margin-top:1rem;max-width:18rem;line-height:1.55}
.foot .brand .btn{margin-top:1.5rem}
.foot h4,.foot h2.fh{font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.62);margin:0 0 1rem;line-height:1.3}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.foot a{color:rgba(255,255,255,.78);text-decoration:none;transition:color .2s}
.foot a:hover{color:#fff}
.foot .bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:clamp(3rem,6vw,4.5rem);padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1);font-size:.8125rem;color:rgba(255,255,255,.45)}
.foot .bottom nav{display:flex;flex-wrap:wrap;gap:1.25rem}
@media (max-width:980px){ .foot .top{grid-template-columns:1fr 1fr 1fr} .foot .brand{grid-column:1/-1} }
@media (max-width:560px){ .foot .top{grid-template-columns:1fr 1fr;gap:2rem 1.25rem} }

/* page hero (inner pages) */
.phero{padding-block:clamp(3.5rem,8vw,7rem) clamp(3rem,6vw,5rem)}
.phero .lede{max-width:44rem}
.phero.dark{padding-block:clamp(4rem,9vw,8rem)}
.crumb{display:flex;gap:.5rem;align-items:center;font-size:.8125rem;color:var(--faint);margin-bottom:1.5rem}
.crumb a{text-decoration:none;color:var(--muted)}
.crumb a:hover{color:var(--text)}

/* phone frame */
.phone{position:relative;width:min(18rem,74vw);aspect-ratio:390/844;border-radius:2.9rem;padding:.6rem;background:#05081C;box-shadow:0 0 0 2px #262B4A inset,0 50px 90px -30px rgba(7,10,34,.5),0 30px 50px -30px rgba(7,10,34,.35);flex:none}
.phone img,.phone video{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:2.35rem;background:#fff}
.phone.sm{width:min(15rem,62vw)}
.phone.lg{width:min(20rem,78vw)}
.pair{position:relative;display:flex;justify-content:center;align-items:flex-start}
.pair .phone.back{margin-left:-4.5rem;margin-top:4.5rem;width:min(15.5rem,60vw);z-index:0}
.pair .phone.front{z-index:1}
@media (max-width:900px){ .pair .phone.back{display:none} }

/* laptop frame (portal showcases) */
.laptop{position:relative;width:100%;max-width:62rem;margin:0 auto}
.laptop .screen{position:relative;border-radius:1.1rem 1.1rem .4rem .4rem;padding:.7rem;background:#0B0E26;box-shadow:0 0 0 1.5px #2A2F52 inset,0 40px 90px -40px rgba(7,10,34,.6)}
.laptop .screen>.ui{border-radius:.55rem;overflow:hidden;background:#fff;color:var(--text);aspect-ratio:16/10;position:relative}
.laptop .base{height:.95rem;margin:0 -4%;border-radius:0 0 1.2rem 1.2rem;background:linear-gradient(#D9DCE8,#B9BDCC);position:relative}
.laptop .base::before{content:"";position:absolute;left:50%;top:0;width:16%;height:.4rem;margin-left:-8%;border-radius:0 0 .6rem .6rem;background:#A9AEBF}
@media (max-width:700px){ .laptop .screen>.ui{aspect-ratio:auto} }

/* cards */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);padding:clamp(1.4rem,2.4vw,2rem)}
.dark .card{background:var(--ink2);border-color:rgba(255,255,255,.08)}
.cards{display:grid;gap:1rem}
.cards.c2{grid-template-columns:repeat(2,1fr)}
.cards.c3{grid-template-columns:repeat(3,1fr)}
.cards.c4{grid-template-columns:repeat(4,1fr)}
@media (max-width:1000px){ .cards.c4{grid-template-columns:repeat(2,1fr)} .cards.c3{grid-template-columns:repeat(2,1fr)} }
@media (max-width:620px){ .cards.c2,.cards.c3,.cards.c4{grid-template-columns:1fr} }
.card .k{display:block;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:.75rem}
.dark .card .k{color:var(--blue-l)}
.card h3+p,.card h4+p{margin-top:.6rem;color:var(--muted);font-size:.975rem}
.dark .card h3+p,.dark .card h4+p{color:rgba(255,255,255,.62)}
a.card{text-decoration:none;display:flex;flex-direction:column;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .2s}
a.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-1);border-color:var(--line2)}
a.card .go{margin-top:auto;padding-top:1.25rem;font-size:.9rem;font-weight:500;color:var(--blue);display:flex;align-items:center;gap:.4rem}
.ico{width:2.6rem;height:2.6rem;border-radius:.85rem;display:grid;place-items:center;background:var(--blue-wash);color:var(--blue);margin-bottom:1.1rem}
.ico svg{width:1.3rem;height:1.3rem}
.dark .ico{background:rgba(157,177,255,.12);color:var(--blue-l)}

/* photo tiles */
.ph{position:relative;border-radius:var(--r-l);overflow:hidden;background:#1a1f3a;isolation:isolate}
.ph img,.ph video{width:100%;height:100%;object-fit:cover}
.ph .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,10,34,.25) 0%,rgba(7,10,34,0) 28%,rgba(7,10,34,0) 50%,rgba(7,10,34,.82) 100%);z-index:1}
.ph .cap{position:absolute;left:1.25rem;right:1.25rem;bottom:1.15rem;z-index:2;color:#fff}
.ph .cap b{display:block;font-size:1.25rem;font-weight:600;letter-spacing:-.015em;line-height:1.2}
.ph .cap span{display:block;margin-top:.2rem;font-size:.875rem;color:rgba(255,255,255,.78)}
.ph .tag{position:absolute;left:1.1rem;top:1rem;z-index:2;font-size:.6875rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#fff}
.ph .pill{position:absolute;right:.9rem;top:.8rem;z-index:2;padding:.35rem .75rem;border-radius:999px;background:rgba(255,255,255,.95);color:var(--ink);font-size:.8125rem;font-weight:600}

/* plan ticket card (used in marquee + examples) */
.ticket{flex:none;width:17.5rem;border-radius:1.4rem;overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(10,15,46,.04);text-decoration:none;color:var(--text)}
.ticket .img{position:relative;aspect-ratio:4/3;background:#ccd}
.ticket .img img{width:100%;height:100%;object-fit:cover}
.ticket .img .when{position:absolute;left:.75rem;top:.75rem;padding:.3rem .6rem;border-radius:.6rem;background:rgba(255,255,255,.94);font-size:.75rem;font-weight:600;line-height:1.2;text-align:center}
.ticket .img .when small{display:block;font-size:.625rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.ticket .img .cost{position:absolute;right:.75rem;top:.75rem;padding:.3rem .6rem;border-radius:999px;background:rgba(7,10,34,.75);color:#fff;font-size:.75rem;font-weight:600;backdrop-filter:blur(6px)}
.ticket .body{padding:.95rem 1rem 1.05rem}
.ticket .cat{font-size:.6875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.ticket h4{margin-top:.3rem;font-size:1.05rem}
.ticket .meta{margin-top:.25rem;font-size:.8125rem;color:var(--muted)}
.ticket .foot2{display:flex;align-items:center;justify-content:space-between;margin-top:.8rem;padding-top:.75rem;border-top:1px dashed var(--line2);font-size:.8125rem;color:var(--muted)}
.faces{display:flex}
.faces img{width:1.55rem;height:1.55rem;border-radius:50%;border:2px solid #fff;object-fit:cover;margin-left:-.45rem;background:#dde}
.faces img:first-child{margin-left:0}
.vtick{display:inline-block;width:.95rem;height:.95rem;vertical-align:-.1rem;margin-left:.2rem}

/* marquee */
.marquee{position:relative;overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.marquee .track{display:flex;gap:1rem;width:max-content;animation:mq 60s linear infinite;padding:.5rem 0 1rem}
.marquee:hover .track{animation-play-state:paused}
.marquee.rev .track{animation-direction:reverse;animation-duration:70s}
@keyframes mq{to{transform:translateX(-50%)}}

/* chips */
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chip{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .9rem;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:.875rem;font-weight:500;white-space:nowrap}
.dark .chip{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}

/* lists */
.ticks{list-style:none;padding:0;margin:1.75rem 0 0;display:grid;gap:.9rem}
.ticks li{display:flex;gap:.75rem;align-items:flex-start}
.ticks li::before{content:"";flex:none;width:1.35rem;height:1.35rem;margin-top:.1rem;border-radius:50%;background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4L18 8.5'/%3E%3C/svg%3E") center/.8rem no-repeat}
.ticks b{font-weight:600}
.rows{border-top:1px solid var(--line)}
.dark .rows{border-color:rgba(255,255,255,.12)}
.row{display:grid;grid-template-columns:3rem 1fr;gap:.75rem;padding:1.4rem 0;border-bottom:1px solid var(--line)}
.dark .row{border-color:rgba(255,255,255,.12)}
.row .n{font-size:.8125rem;font-weight:600;letter-spacing:.1em;color:var(--blue);padding-top:.2rem}
.dark .row .n{color:var(--blue-l)}
.row b{display:block;font-size:1.15rem;font-weight:600;letter-spacing:-.01em}
.row span.d{display:block;margin-top:.3rem;color:var(--muted);font-size:.975rem}
.dark .row span.d{color:rgba(255,255,255,.64)}

/* reveal */
/* reveal: only things below the fold ever start hidden, so a new page paints complete with no flash */
.rv.pending{opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease),transform .6s var(--ease)}
.rv.pending.in{opacity:1;transform:none}
.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}
@media (prefers-reduced-motion:reduce){ .rv{opacity:1;transform:none;transition:none} .marquee .track{animation:none} html{scroll-behavior:auto} }

/* forms */
.form{display:grid;gap:1rem}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:620px){ .f2{grid-template-columns:1fr} }
.field label,.field .lbl{display:block;font-size:.875rem;font-weight:500;margin-bottom:.45rem;color:var(--text)}
.field label small,.field .lbl small{font-weight:300;color:var(--faint);margin-left:.3rem}
.dark .field label,.dark .field .lbl{color:#fff}
.inp{width:100%;min-height:3.25rem;border:1px solid var(--line2);background:#fff;border-radius:.9rem;padding:.85rem 1rem;font-size:1rem;outline:0;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.inp:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,91,255,.12)}
.inp::placeholder{color:#A2A7BF}
textarea.inp{min-height:8.5rem;resize:vertical;line-height:1.5}
select.inp{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235E6382' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right .9rem center/1.1rem no-repeat;padding-right:2.6rem}
.dark .inp{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#fff}
.dark .inp::placeholder{color:rgba(255,255,255,.45)}
.dark select.inp option{color:var(--text)}
.field.bad .inp{border-color:var(--err);box-shadow:0 0 0 4px rgba(194,38,75,.1)}
.field .err{display:none;margin-top:.4rem;font-size:.8125rem;color:var(--err)}
.field.bad .err{display:block}
.dark .field .err{color:#FFB4C2}
.hint{margin-top:.4rem;font-size:.8125rem;color:var(--faint)}
.opts{display:flex;flex-wrap:wrap;gap:.5rem}
.opt{position:relative}
.opt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.opt span{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1rem;border-radius:999px;border:1.5px solid var(--line2);background:#fff;font-size:.9375rem;font-weight:500;transition:border-color .2s,background .2s,color .2s;user-select:none}
.opt input:checked+span{border-color:var(--blue);background:var(--blue-wash);color:var(--blue)}
.opt input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}
.dark .opt span{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.18);color:#fff}
.dark .opt input:checked+span{background:rgba(157,177,255,.16);border-color:var(--blue-l);color:#fff}
.opts.cards-opt{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}
.opts.cards-opt.c3{grid-template-columns:repeat(3,1fr)}
@media (max-width:520px){ .opts.cards-opt,.opts.cards-opt.c3{grid-template-columns:1fr} }
.opts.cards-opt .opt span{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;border-radius:1rem;padding:.9rem 1rem;width:100%;white-space:normal;text-align:left}
.opts.cards-opt .opt span small{font-size:.8125rem;font-weight:300;color:var(--muted)}
.check{display:flex;gap:.7rem;align-items:flex-start;font-size:.875rem;color:var(--muted);line-height:1.5;cursor:pointer}
.check input{flex:none;width:1.2rem;height:1.2rem;margin:.1rem 0 0;accent-color:var(--blue)}
.dark .check{color:rgba(255,255,255,.68)}
.check a{color:inherit;text-decoration:underline;text-underline-offset:.15em}
.hp{position:absolute!important;left:-9999px!important}
.done{display:none;text-align:center;padding:2rem 0}
.done .big-tick{width:4.25rem;height:4.25rem;margin:0 auto 1.25rem;border-radius:50%;background:var(--blue);display:grid;place-items:center;animation:pop .6s var(--ease)}
.done .big-tick svg{width:2rem;height:2rem}
@keyframes pop{0%{transform:scale(.6);opacity:0}100%{transform:none;opacity:1}}
.sent .form-body{display:none}
.sent .done{display:block}
.formcard{background:#fff;border:1px solid var(--line);border-radius:var(--r-xl);padding:clamp(1.5rem,3.5vw,2.75rem);box-shadow:var(--shadow-1)}
.dark .formcard{background:var(--ink2);border-color:rgba(255,255,255,.08);box-shadow:none}
.status{font-size:.875rem;min-height:1.25rem;color:var(--err)}

/* steps (multi-step form) */
.progress{display:flex;gap:.35rem;margin-bottom:1.75rem}
.progress i{flex:1;height:.3rem;border-radius:99px;background:var(--line);overflow:hidden;position:relative}
.progress i::after{content:"";position:absolute;inset:0;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}
.progress i.on::after{transform:none}
.stepnum{font-size:.8125rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.step{display:none}
.step.on{display:block;animation:stepin .45s var(--ease)}
@keyframes stepin{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}
.step h3{margin:.5rem 0 .4rem}
.step>p.muted{margin-bottom:1.5rem}
.stepnav{display:flex;justify-content:space-between;gap:.75rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}

/* accordion */
.acc details{border-bottom:1px solid var(--line)}
.dark .acc details{border-color:rgba(255,255,255,.12)}
.acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1.25rem;padding:1.25rem 0;font-size:1.1rem;font-weight:500;letter-spacing:-.01em}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"";flex:none;width:.65rem;height:.65rem;border-right:2px solid var(--faint);border-bottom:2px solid var(--faint);transform:translateY(-.2rem) rotate(45deg);transition:transform .3s var(--ease)}
.acc details[open] summary::after{transform:translateY(.15rem) rotate(225deg)}
.acc details>div{padding:0 0 1.35rem;color:var(--muted);max-width:44rem}
.dark .acc details>div{color:rgba(255,255,255,.65)}
.acc details>div p+p{margin-top:.7rem}

/* tabs */
.tabs{display:inline-flex;gap:.25rem;padding:.3rem;border-radius:999px;background:rgba(10,15,46,.06);max-width:100%;overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.dark .tabs{background:rgba(255,255,255,.08)}
.tabs button{border:0;background:none;padding:.6rem 1.05rem;border-radius:999px;font-size:.875rem;font-weight:500;color:var(--muted);white-space:nowrap;transition:background .25s,color .25s}
.dark .tabs button{color:rgba(255,255,255,.62)}
.tabs button[aria-selected=true]{background:#fff;color:var(--text);box-shadow:0 1px 3px rgba(10,15,46,.12)}

/* CTA band */
.cta-band{position:relative;overflow:hidden;background:radial-gradient(ellipse 80% 70% at 50% 0%,#1E2C8A 0%,rgba(30,44,138,0) 70%),var(--ink);color:#fff;text-align:center}
.cta-band .lede{margin-left:auto;margin-right:auto}

/* misc */
.badge{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .8rem;border-radius:999px;background:var(--blue-wash);color:var(--blue);font-size:.8125rem;font-weight:600}
.dark .badge{background:rgba(157,177,255,.14);color:var(--blue-l)}
.hr{height:1px;background:var(--line);border:0;margin:0}
.kpi{font-size:clamp(2.6rem,5vw,4rem);font-weight:600;letter-spacing:-.045em;line-height:1}
.notice{display:flex;gap:.8rem;align-items:flex-start;padding:1rem 1.15rem;border-radius:1rem;background:var(--blue-wash);color:#22357F;font-size:.9rem}
.dark .notice{background:rgba(157,177,255,.1);color:rgba(255,255,255,.8)}
.toast{position:fixed;left:50%;bottom:calc(1.5rem + env(safe-area-inset-bottom,0px));z-index:90;transform:translate(-50%,1rem);opacity:0;pointer-events:none;background:var(--ink);color:#fff;padding:.8rem 1.2rem;border-radius:999px;font-size:.9rem;box-shadow:var(--shadow-2);transition:opacity .3s,transform .4s var(--ease)}
.toast.on{opacity:1;transform:translate(-50%,0)}
a.card .go svg,.link svg,.btn svg{width:1.05rem;height:1.05rem;flex:none}
.cta-band .btn.ghost{color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.3)}
.cta-band .btn.ghost:hover{box-shadow:inset 0 0 0 1.5px #fff}
.cta-band .lede{color:rgba(255,255,255,.7)}
.cta-band h2 em{color:var(--blue-l)}
.field label.check{display:flex;font-weight:300;color:var(--muted);font-size:.875rem;margin:0}
.dark .field label.check{color:rgba(255,255,255,.68)}
.cta-band .btns{justify-content:center}

.phone img{opacity:1}
.rv .phone,.phone{will-change:auto}
/* ---- fluidity pass ---- */
a,button,label,summary,.opt span{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.btn:active{transform:scale(.97);transition-duration:.08s}
a.card:active{transform:scale(.99);transition-duration:.1s}
.rv.pending{transform:translate3d(0,10px,0);transition:opacity .45s var(--ease),transform .55s var(--ease)}
.rv.d1{transition-delay:.05s}.rv.d2{transition-delay:.1s}.rv.d3{transition-delay:.15s}
.marquee .track{will-change:transform;transform:translate3d(0,0,0)}
.marquee.off .track{animation-play-state:paused}
@media (max-width:760px){ .nav{backdrop-filter:blur(10px) saturate(1.4);-webkit-backdrop-filter:blur(10px) saturate(1.4);background:rgba(246,246,242,.92)} }
/* investors: clear entry in the mobile menu */
.sheet-menu .inv-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding:1.05rem 1.25rem;border-radius:1.1rem;background:var(--ink);color:#fff;text-decoration:none}
.sheet-menu .inv-row small{display:block;font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#9DB1FF}
.sheet-menu .inv-row b{display:block;margin-top:.2rem;font-size:1.15rem;font-weight:600;letter-spacing:-.02em}
.sheet-menu .inv-row i{font-style:normal;font-size:1.2rem;transition:transform .25s var(--ease)}
.sheet-menu .inv-row:active i{transform:translateX(4px)}
/* mobile code check */
.vfy{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top,0px)) 1rem;background:rgba(7,10,34,.6);opacity:0;visibility:hidden;transition:opacity .25s,visibility 0s .25s}
.vfy.on{opacity:1;visibility:visible;transition:opacity .25s}
.vfy-card{width:min(24rem,100%);background:#fff;color:var(--text);border-radius:1.4rem;padding:1.8rem 1.6rem 1.4rem;box-shadow:0 30px 80px rgba(7,10,34,.35);transform:translateY(10px);transition:transform .35s var(--ease)}
.vfy.on .vfy-card{transform:none}
.vfy h2{font-size:1.6rem;letter-spacing:-.035em}
.vfy-p{margin-top:.5rem;color:var(--muted);font-size:.95rem}
.vfy-p b{color:var(--text);font-weight:600;white-space:nowrap}
.vfy-code{font-family:inherit;margin-top:1.2rem;text-align:center;font-size:1.6rem;letter-spacing:.5em;font-variant-numeric:tabular-nums;padding-left:1.2rem}
.vfy-err{min-height:1.3rem;margin-top:.5rem;font-size:.85rem;color:var(--err)}
.vfy-go{width:100%;margin-top:.3rem}
.vfy-links{display:flex;justify-content:space-between;margin-top:1rem}
.vfy-links button{border:0;background:none;padding:.3rem 0;font:inherit;font-size:.85rem;color:var(--blue);cursor:pointer}
.vfy-links button:disabled{color:var(--faint);cursor:default}
.vfy-lock,.vfy-lock body{overflow:hidden}
/* text face: Instrument Sans for reading, Lexend stays for headlines, buttons and the brand */
@font-face{font-family:"Instrument Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/instrument.woff2) format("woff2")}
:root{--font-text:'Instrument Sans','Helvetica Neue',Arial,sans-serif}
body{font-family:var(--font-text);font-weight:400;letter-spacing:-.003em}
h1,h2,h3,h4,.btn,.eyebrow,.nav,.sheet-menu .big,.kpi,.chip,.badge,.tabs,.pd,.mphone .scr,.lpass,.mk-ui,.ticket,.ph .cap b,.dr .dt b,.lword,.fh{font-family:var(--font)}
.lede{font-weight:400;color:#4A4F6C;letter-spacing:-.008em}
.dark .lede,.night .lede,.cta-band .lede{color:rgba(255,255,255,.74)}
.pro-nav{font-weight:600;letter-spacing:.14em;font-size:.95em}
.sheet-menu .big .pro-nav{letter-spacing:.06em}

/* Findb tiers (brand kit, Tiers). PRO is drawn from the wordmark and never typed. */
.lu{display:block;background:currentColor;-webkit-mask:var(--lu) left center/contain no-repeat;mask:var(--lu) left center/contain no-repeat}
.lu-pro{--lu:url(/assets/brand/findb-pro-black.svg?v=2);aspect-ratio:1513.2/345.3;width:7.86rem}
.lu-plus{--lu:url(/assets/brand/findb-plus-black.svg?v=2);aspect-ratio:1515.6/410;width:7.1rem}
.lu-venues{--lu:url(/assets/brand/findb-venues-black.svg?v=2);aspect-ratio:1933.8/345.3;width:8.95rem}
.pro-nav{display:inline-block;vertical-align:-.04em;height:.8em;aspect-ratio:732.8/345.3;width:auto;background:currentColor;-webkit-mask:url(/assets/brand/pro-letters-black.svg) center/contain no-repeat;mask:url(/assets/brand/pro-letters-black.svg) center/contain no-repeat;color:inherit;font-size:1em;letter-spacing:0;overflow:hidden;text-indent:100%;white-space:nowrap}
.sheet-menu .big .pro-nav{letter-spacing:0}
.pro-badge,.pro-tag,.a-pro,.pro-chip,.mini-pro .chip{display:inline-block!important;vertical-align:middle;height:1.65em!important;width:auto!important;aspect-ratio:1294/684;padding:0!important;margin-top:0;border:0!important;box-shadow:none!important;border-radius:0!important;background:url(/assets/brand/pro-badge.svg) center/contain no-repeat!important;color:transparent!important;overflow:hidden;text-indent:100%;white-space:nowrap;line-height:1!important;letter-spacing:0!important;flex:none}
.tw-l .pro-badge{font-size:inherit!important;height:.8em!important;aspect-ratio:732.8/345.3;background:var(--blue)!important;-webkit-mask:url(/assets/brand/pro-letters-black.svg) left center/contain no-repeat;mask:url(/assets/brand/pro-letters-black.svg) left center/contain no-repeat}
.tw-l button[aria-selected=true] .pro-badge{background:#fff!important}
