/* sections of the page: nav button, hero messages, live products, partner; plus the form bits
   (selects, honeypot, Turnstile) that base.css's .wl doesn't cover */

/* ---- nav: the links, then the one button ---- */
.btn.sm{padding:9px 14px;font-size:14px;border-radius:9px}
.nav-links+.nav-cta{margin-left:0}
.nav-cta{margin-left:auto}
@media (max-width:780px){.nav-cta{margin-left:auto}}
@media (max-width:380px){.nav-cta{padding:8px 11px;font-size:13px}}

/* ---- hero: message 4 is the long one, so it sets smaller ---- */
:root[data-m="4"] .hero h1{font-size:clamp(34px,4.6vw,58px);line-height:1.06}
.hero .ctas .btn .arr{margin-left:2px}
@media (max-width:560px){.hero .ctas{display:grid;grid-template-columns:1fr;width:100%;max-width:340px}}

/* ---- live products: head on one side, the two cards on the other, one screen tall ---- */
.so{position:relative;min-height:100svh;display:grid;align-content:center;padding-block:clamp(28px,5vh,64px)}
.so-h{display:grid;gap:12px;max-width:760px}
.so-h h2{font-size:clamp(34px,4.2vw,58px)}
.so-h .lead{font-size:clamp(15px,1.25vw,17px)}
.card{display:grid;gap:8px;align-content:start;padding:clamp(16px,2.2vh,22px);border:1px solid var(--line-2);border-radius:16px;background:linear-gradient(180deg,rgba(18,43,94,.28),rgba(6,12,28,.6))}
.g{display:grid;gap:12px}
.g2{grid-template-columns:1fr 1fr;position:relative}
.g2::before{content:"";position:absolute;inset:-10%;z-index:-1;background:radial-gradient(closest-side,rgba(59,108,255,.25),transparent)}
#products .sp{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
#products .so-h{order:2}
#products .g{order:1}
#products .pc{gap:14px;padding:clamp(22px,3.2vh,32px);min-height:clamp(240px,34vh,320px);grid-template-rows:auto auto 1fr auto;justify-items:start}
#products .pc h3{font-size:clamp(22px,2vw,28px);letter-spacing:-.02em}
#products .pc p{font-size:clamp(15px,1.1vw,16px);line-height:1.5}
#products .go{display:inline-flex;align-items:center;gap:8px;color:var(--sky);font-weight:500;font-size:15px;padding-block:6px}
#products .go:hover{color:var(--text)}
#products .go .arr{transition:transform .2s var(--ease)}
#products .go:hover .arr{transform:translateX(3px)}
@media (max-width:900px){.so{min-height:0}#products .sp{grid-template-columns:1fr;gap:28px}#products .so-h{order:0}#products .g{order:1}}
@media (max-width:560px){.g2{grid-template-columns:1fr}#products .pc{min-height:0}}

/* ---- partner: the products in development, and their form ---- */
#partner{padding-top:24px}
#partner .ea-body{align-items:start}
#partner .eyebrow::before{background:var(--amber)}
.pt-list{display:grid;gap:10px;width:100%;margin-top:4px}
.pt-item{display:grid;gap:2px;padding:14px 16px;border:1px solid var(--line-2);border-radius:12px;background:rgba(6,12,28,.5)}
.pt-item b{color:var(--text);font-weight:600;font-size:16px}
.pt-item span{font-size:14.5px;line-height:1.45}

/* ---- forms: selects styled like the inputs ---- */
.wl select.sel{grid-column:1/-1;width:100%;min-width:0;appearance:none;-webkit-appearance:none;background:rgba(3,5,11,.6) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%23A3BCFF' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'><path d='M3 4.5 6 7.5 9 4.5'/></svg>") no-repeat right 14px center;border:1px solid var(--line-2);border-radius:10px;padding:12px 40px 12px 14px;color:var(--text);font:inherit;font-size:15px;line-height:1.5;transition:border-color .2s,box-shadow .2s}
.ea-form .wl select.sel{padding:14px 40px 14px 16px;font-size:16px}
.wl select.sel:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 4px rgba(59,108,255,.18)}
.wl select.sel:invalid{color:var(--muted)}
.wl select.sel option{color:var(--text);background:#0A1328}
.wl select.sel.bad{border-color:var(--amber)}
/* the dropdown itself, styled like the phone picker's popover where the engine allows it (Chromium base-select); elsewhere it stays native */
@supports selector(::picker(select)){
.wl select.sel{appearance:base-select}
.wl select.sel::picker-icon{display:none}
.wl select.sel:open{border-color:var(--blue)}
.wl select.sel::picker(select){appearance:base-select;background:var(--night);border:1px solid var(--line-2);border-radius:14px;box-shadow:0 24px 60px -12px rgba(0,0,0,.7),0 0 0 1px rgba(59,108,255,.06);padding:8px;margin-block:8px}
.wl select.sel option{display:flex;align-items:center;gap:10px;min-height:40px;padding:8px 10px;border-radius:8px;font-size:15px;color:var(--text);background:none;cursor:pointer}
.wl select.sel option:hover,.wl select.sel option:focus{background:rgba(59,108,255,.14);outline:none}
.wl select.sel option:checked{background:rgba(59,108,255,.22)}
.wl select.sel option::checkmark{color:var(--sky)}
.wl select.sel option[value=""]{display:none}
}
/* honeypot: out of sight and out of the tab order, but still in the form for bots to fill */
.wl .hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
/* Turnstile renders only when it needs the visitor (interaction-only); empty, it takes no room */
.wl .ts:empty{display:none}
.wl .btn[disabled]{opacity:.7;cursor:progress;transform:none}
