:root{--bg: #eef2f3;--surface: #ffffff;--ink: #0f2440;--muted: #4a5b6e;--line: #cfd8de;--teal: #0a7c8a;--teal-ink: #075f6a;--navy: #1e3a8a;--board: #13294b;--board-ink: #e6eef5;--board-muted: #93a6bd;--up: #3fbf7f;--down: #e0685a;--radius-s: 6px;--radius-l: 14px;--display: "Bricolage Grotesque", ui-sans-serif, system-ui, sans-serif;--body: "Public Sans", ui-sans-serif, system-ui, sans-serif;--gutter: clamp(16px, 4vw, 48px);color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg: #0b1a2c;--surface: #10233a;--ink: #e8eef4;--muted: #9fb0c3;--line: #23395a;--teal: #2bb3c2;--teal-ink: #6fd3de;--navy: #8aa6ff;--board: #0f2a4d;color-scheme:dark}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.6 var(--body);-webkit-font-smoothing:antialiased}a{color:inherit}:focus-visible{outline:3px solid var(--teal);outline-offset:3px;border-radius:4px}.skip{position:absolute;left:-999px;top:8px;background:var(--surface);padding:8px 12px;z-index:10}.skip:focus{left:8px}.bar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px var(--gutter);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid color-mix(in srgb,var(--line) 60%,transparent)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:700 19px/1 var(--display)}.brand em{font-style:normal;font-weight:500;color:var(--muted)}.bar nav{display:flex;gap:clamp(12px,2.5vw,28px);align-items:center;font-size:15px}.bar nav a{text-decoration:none;color:var(--muted)}.bar nav a:hover{color:var(--ink)}.bar .lang{border:1px solid var(--line);padding:5px 10px;border-radius:999px;color:var(--ink)}@media(max-width:720px){.bar nav a:not(.lang){display:none}.brand em{display:none}}.actions{display:flex;flex-wrap:wrap;gap:10px}.btn{display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;border-radius:var(--radius-s);font:600 15px/1.2 var(--body);text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:background-color .15s,border-color .15s,color .15s}.btn.primary{background:var(--teal);color:#fff}.btn.primary:hover{background:var(--teal-ink)}@media(prefers-color-scheme:dark){.btn.primary{color:#062a30}.btn.primary:hover{background:var(--teal-ink)}}.btn.ghost{border-color:var(--line);color:var(--ink)}.btn.ghost:hover{border-color:var(--ink)}.btn[disabled]{opacity:.6;cursor:progress}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,6vw,88px);align-items:center;padding:clamp(48px,9vw,120px) var(--gutter) clamp(56px,8vw,104px);max-width:1320px;margin:0 auto}.hero h1{font:800 clamp(40px,6.4vw,80px)/.98 var(--display);letter-spacing:-.035em;margin:0 0 24px;max-width:13ch;text-wrap:balance}.lead{font-size:clamp(17px,1.5vw,19px);color:var(--muted);max-width:54ch;margin:0 0 32px}.board{background:var(--board);color:var(--board-ink);border-radius:var(--radius-l);padding:22px 8px 10px;box-shadow:0 30px 60px -30px #0f24408c}.board-head{display:flex;align-items:center;gap:10px;margin:0 16px 12px;font-size:14px;color:var(--board-muted)}.pulse{width:8px;height:8px;border-radius:50%;background:var(--up);box-shadow:0 0 0 0 var(--up);animation:pulse 2.4s infinite}@keyframes pulse{70%{box-shadow:0 0 0 8px transparent}to{box-shadow:0 0 0 0 transparent}}.board ol{list-style:none;margin:0;padding:0}.board li a{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:12px;padding:10px 16px;border-radius:8px;text-decoration:none;border-top:1px solid rgba(255,255,255,.07)}.board li:first-child a{border-top-color:transparent}.board li a:hover{background:#ffffff0f}.b-name{font:700 17px/1.3 var(--display)}.b-domain{grid-row:2;font-size:13px;color:var(--board-muted)}.state{grid-row:1 / span 2;grid-column:2;align-self:center;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--board-muted)}.state i{width:9px;height:9px;border-radius:50%;background:#5b6f88;transition:background-color .3s,box-shadow .3s}.state[data-state=checking] i{animation:blink 1s infinite alternate}.state[data-state=up] i{background:var(--up);box-shadow:0 0 10px var(--up)}.state[data-state=up]{color:var(--board-ink)}.state[data-state=down] i{background:var(--down)}.state[data-state=repo] i{background:transparent;border:1.5px solid var(--board-muted)}.state[data-state=soon] i{background:transparent;border:1.5px dashed var(--board-muted)}@keyframes blink{to{opacity:.3}}@media(max-width:900px){.hero{grid-template-columns:1fr}.hero h1{max-width:16ch}}.group,.services{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);gap:clamp(24px,5vw,72px);max-width:1320px;margin:0 auto;padding:clamp(48px,7vw,88px) var(--gutter);border-top:1px solid var(--line)}.group-intro{position:sticky;top:96px;align-self:start}.group-intro h2,.contact-intro h2{font:700 clamp(26px,3vw,36px)/1.1 var(--display);letter-spacing:-.02em;margin:0 0 12px;text-wrap:balance}.group-intro p,.contact-intro p{color:var(--muted);margin:0;max-width:38ch}.group-list{display:grid;gap:clamp(20px,3vw,32px)}@media(max-width:900px){.group,.services{grid-template-columns:1fr}.group-intro{position:static}}.product{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-l);padding:clamp(22px,3vw,36px);scroll-margin-top:96px}.product:target{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 25%,transparent)}.p-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;font-size:14px;color:var(--muted);margin-bottom:6px}.p-host{color:var(--teal-ink)}.product h3{font:800 clamp(28px,3.2vw,40px)/1.05 var(--display);letter-spacing:-.025em;margin:0 0 10px}.p-tag{font:500 clamp(19px,1.8vw,22px)/1.35 var(--display);margin:0 0 12px;max-width:34ch}.p-body{color:var(--muted);margin:0 0 16px;max-width:62ch}.p-points{margin:0 0 16px;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}.p-points li{font-size:14px;padding:4px 10px;border-radius:var(--radius-s);background:color-mix(in srgb,var(--teal) 10%,transparent);color:var(--ink)}.p-for{font-size:15px;margin:0 0 22px}.p-for span{color:var(--muted)}.g-open .group-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.g-open .product h3{font-size:clamp(24px,2.4vw,30px)}.g-open .p-tag{font-size:18px}.g-soon .product{background:transparent;border-style:dashed}.services dl{margin:0;display:grid;gap:0}.services dl div{padding:22px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:16px}.services dl div:first-child{border-top:0;padding-top:0}.services dt{font:700 20px/1.3 var(--display)}.services dd{margin:0;color:var(--muted)}@media(max-width:640px){.services dl div{grid-template-columns:1fr;gap:4px}}.contact{background:var(--board);color:var(--board-ink);padding:clamp(56px,8vw,104px) var(--gutter);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(28px,5vw,72px)}.contact>*{max-width:760px}.contact-intro{justify-self:end;max-width:420px}.contact-intro p{color:var(--board-muted)}@media(max-width:900px){.contact{grid-template-columns:1fr}.contact-intro{justify-self:start}}form{display:grid;gap:16px}form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:640px){form .row{grid-template-columns:1fr}}label{display:grid;gap:6px;font-size:14px;color:var(--board-muted)}input,select,textarea{font:400 16px/1.4 var(--body);color:var(--board-ink);background:#ffffff0f;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-s);padding:11px 12px;width:100%}select option{color:#0f2440}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--teal);outline-offset:1px;border-color:transparent}textarea{resize:vertical}.hp{position:absolute;left:-5000px}.submit{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.contact .btn.primary{background:#2bb3c2;color:#062a30}.contact .btn.primary:hover{background:#6fd3de}.status{margin:0;font-size:15px}.status[data-kind=ok]{color:var(--up)}.status[data-kind=error]{color:#ff9c8f}.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:28px var(--gutter);font-size:14px;color:var(--muted)}.foot p{margin:0;display:flex;gap:20px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.prose{max-width:720px;margin:0 auto;padding:clamp(40px,7vw,88px) var(--gutter)}.prose h1{font:800 clamp(34px,5vw,52px)/1.05 var(--display);letter-spacing:-.03em;margin:0 0 24px}.prose h2{font:700 22px/1.3 var(--display);margin:36px 0 8px}.prose p,.prose li{color:var(--muted)}.prose ul{padding-left:20px}.hero{position:relative;isolation:isolate}.mesh{position:absolute;inset:0;width:100%;height:100%;z-index:-1;mask-image:radial-gradient(ellipse 75% 85% at 30% 45%,#000 30%,transparent 85%)}@media(prefers-reduced-motion:no-preference){.hero h1,.hero .lead,.hero-copy .actions{animation:rise .8s cubic-bezier(.2,.7,.2,1) both}.hero .lead{animation-delay:.12s}.hero-copy .actions{animation-delay:.22s}.board{animation:rise .9s .15s cubic-bezier(.2,.7,.2,1) both}.board li{animation:row .5s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(.35s + var(--i) * 60ms)}.board{position:relative;overflow:hidden}.board:after{content:"";position:absolute;left:0;right:0;top:-30%;height:30%;pointer-events:none;background:linear-gradient(to bottom,transparent,rgba(63,191,127,.07),transparent);animation:scan 6s 1.6s ease-in-out infinite}.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:var(--d, 0ms)}.reveal.in{opacity:1;transform:none}.product{transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1),border-color .2s,box-shadow .25s}.product.in:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--teal) 55%,var(--line));box-shadow:0 18px 40px -24px #0f244073}.btn{transition:background-color .15s,border-color .15s,color .15s,transform .15s}.btn:active{transform:translateY(1px) scale(.98)}.bar nav a:not(.lang){background:linear-gradient(currentColor,currentColor) 0 100% / 0 1.5px no-repeat;transition:background-size .25s,color .15s;padding-bottom:2px}.bar nav a:not(.lang):hover{background-size:100% 1.5px}.state[data-state=up] i{animation:pop .4s ease-out}}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes row{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}@keyframes scan{0%{top:-30%}55%,to{top:110%}}@keyframes pop{0%{transform:scale(.3)}70%{transform:scale(1.5)}to{transform:scale(1)}}.chip{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:3px 10px;border-radius:999px;border:1px solid currentColor}.chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.a-open{color:#1f8a55}.a-account{color:var(--teal-ink)}.a-demo{color:var(--navy)}.a-soon{color:var(--muted)}.legend{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-wrap:wrap;gap:8px}@media(prefers-color-scheme:dark){.a-open{color:#5fd396}}.ticker{overflow:hidden;border-block:1px solid var(--line);background:var(--surface);padding:14px 0;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}.track{display:flex;width:max-content}.track span{display:flex}.track b{font:600 clamp(15px,1.4vw,18px)/1 var(--display);white-space:nowrap;padding:0 22px;color:var(--ink)}.track b:after{content:"";display:inline-block;width:6px;height:6px;margin-left:44px;border-radius:50%;background:var(--teal);vertical-align:middle}.product{position:relative;overflow:hidden}.product:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%),color-mix(in srgb,var(--teal) 12%,transparent),transparent 60%)}.product:hover:before{opacity:1}.product>*{position:relative}@media(prefers-reduced-motion:no-preference){.hero h1{animation:none}.hero h1 .w{display:inline-block;white-space:pre;animation:word .7s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--w) * 70ms)}.track{animation:marquee 38s linear infinite}.ticker:hover .track{animation-play-state:paused}.hero-copy .btn.primary{animation:rise .8s .22s cubic-bezier(.2,.7,.2,1) both,glow 3.2s 1.6s ease-in-out infinite}.chip:before{animation:blink 1.6s ease-in-out infinite alternate}.a-open:before,.a-account:before{animation:none}}@keyframes word{0%{opacity:0;transform:translateY(.45em) rotate(2deg);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}@keyframes marquee{to{transform:translate(-50%)}}@keyframes glow{0%,to{box-shadow:0 0 color-mix(in srgb,var(--teal) 0%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--teal) 18%,transparent)}}
