/* layout: asymmetric left-aligned editorial grid, numbered process strip, tag-labeled capability cards */
:root{
  --bg:#F4F6F7;
  --surface:#FFFFFF;
  --ink:#14182B;
  --ink-soft:#4B5166;
  --brand:#3B3FA1;
  --brand-soft:#ECEBFB;
  --accent:#FF6B4A;
  --line:#DCE0E6;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0E1020;
    --surface:#171A2E;
    --ink:#ECEEF5;
    --ink-soft:#AEB3CC;
    --brand:#9A9DFF;
    --brand-soft:#23254A;
    --accent:#FF8A68;
    --line:#2A2E46;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#0E1020;
  --surface:#171A2E;
  --ink:#ECEEF5;
  --ink-soft:#AEB3CC;
  --brand:#9A9DFF;
  --brand-soft:#23254A;
  --accent:#FF8A68;
  --line:#2A2E46;
  color-scheme:dark;
}

*{box-sizing:border-box;}
html,body{margin:0;}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:'Hanken Grotesk',system-ui,sans-serif;
  font-size:16px;
  line-height:1.55;
}
h1,h2,h3,.disp{
  font-family:'Bricolage Grotesque',system-ui,sans-serif;
  text-wrap:balance;
  letter-spacing:-0.01em;
}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace;}
a{color:inherit;}
img{max-width:100%;}
[hidden]{display:none!important;}

html{scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important;}
}

.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease, transform .6s ease;}
.reveal.is-visible{opacity:1;transform:translateY(0);}
.reveal:nth-child(1){transition-delay:0ms;}
.reveal:nth-child(2){transition-delay:70ms;}
.reveal:nth-child(3){transition-delay:140ms;}
.reveal:nth-child(4){transition-delay:210ms;}
.reveal:nth-child(5){transition-delay:280ms;}
.reveal:nth-child(6){transition-delay:350ms;}

.marquee-band{border-block:1px solid var(--line);background:var(--surface);overflow:hidden;padding-block:14px;}
.marquee-track{display:flex;width:max-content;gap:0;animation:marquee 28s linear infinite;white-space:nowrap;}
.marquee-track span{font-family:'Bricolage Grotesque';font-weight:600;font-size:0.95rem;letter-spacing:0.02em;color:var(--ink-soft);padding-inline-end:48px;}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}

.wrap{max-width:1180px;margin:0 auto;padding-inline:20px;}
section{padding-block:clamp(48px,8vw,96px);}

/* nav */
header{
  position:sticky;top:0;z-index:10;
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
nav.wrap{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding-block:16px;
}
.logo{font-family:'Bricolage Grotesque';font-weight:700;font-size:1.25rem;letter-spacing:-0.02em;display:flex;align-items:center;gap:8px;text-decoration:none;}
.logo-mark{color:var(--accent);flex:none;}
.nav-links{display:flex;gap:28px;align-items:center;}
.nav-links a{font-size:0.92rem;font-weight:500;color:var(--ink-soft);text-decoration:none;}
.nav-links a:hover{color:var(--ink);}
.nav-links a.active{color:var(--ink);font-weight:600;}
.nav-right{display:flex;align-items:center;gap:14px;}
.lang-btn{
  font:inherit;font-family:'JetBrains Mono';font-size:0.78rem;font-weight:500;
  background:none;border:1px solid var(--line);color:var(--ink-soft);
  padding:6px 10px;border-radius:999px;cursor:pointer;
}
.lang-btn:hover{border-color:var(--brand);color:var(--ink);}
.btn{
  display:inline-flex;align-items:center;gap:8px;
  font-family:'Bricolage Grotesque';font-weight:600;font-size:0.92rem;
  padding:10px 18px;border-radius:8px;text-decoration:none;
  border:1px solid transparent;cursor:pointer;white-space:nowrap;
  transition:transform .25s ease, background-color .25s ease, color .25s ease;
}
.btn-primary{background:var(--ink);color:var(--bg);}
.btn-primary:hover{background:var(--accent);color:#1a1200;}
.btn-ghost{border-color:var(--line);color:var(--ink);background:transparent;}
.btn-ghost:hover{border-color:var(--ink);}
.btn:hover{transform:translateY(-2px);}
.btn:active{transform:translateY(0);}

@media (max-width:760px){
  .nav-links{display:none;}
}

/* hero */
.hero{padding-block:clamp(56px,10vw,120px) clamp(40px,6vw,72px);}
.eyebrow{
  font-family:'JetBrains Mono';font-size:0.78rem;font-weight:500;
  color:var(--brand);text-transform:uppercase;letter-spacing:0.08em;
  display:inline-flex;align-items:center;gap:8px;margin-bottom:18px;
}
.eyebrow::before{content:"";width:16px;height:1px;background:var(--brand);display:block;}
.hero h1{font-size:clamp(2.1rem,5vw,3.6rem);font-weight:700;max-width:16ch;margin:0 0 20px;}
.hero p.lead{font-size:clamp(1.05rem,2vw,1.2rem);color:var(--ink-soft);max-width:52ch;margin:0 0 32px;}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:48px;}
.trust-strip{
  display:flex;flex-wrap:wrap;gap:12px 28px;
  border-top:1px solid var(--line);padding-top:24px;
}
.trust-item{
  font-size:0.85rem;color:var(--ink-soft);display:flex;align-items:center;gap:8px;
}
.trust-item .dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none;}

/* sub-page intro header */
.page-intro{padding-block:clamp(40px,7vw,80px) clamp(16px,3vw,32px);}
.page-intro h1{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;max-width:22ch;margin:10px 0 0;}

/* about */
.about-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:56px;align-items:start;}
@media (max-width:800px){.about-grid{grid-template-columns:1fr;}}
.about-grid h2{font-size:clamp(1.6rem,3vw,2.1rem);max-width:18ch;margin:10px 0 18px;}
.about-grid p{color:var(--ink-soft);max-width:56ch;}
.fact-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface);}
.fact-list.narrow{max-width:420px;}
.fact-list li{
  display:flex;justify-content:space-between;gap:16px;
  padding:16px 20px;border-bottom:1px solid var(--line);
  font-size:0.92rem;
}
.fact-list li:last-child{border-bottom:none;}
.fact-list .k{color:var(--ink-soft);}
.fact-list .v{font-family:'JetBrains Mono';font-weight:500;text-align:right;}

/* platform cards */
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:40px;flex-wrap:wrap;}
.section-head h2{font-size:clamp(1.6rem,3vw,2.2rem);max-width:20ch;margin:10px 0 0;}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;}
@media (max-width:860px){.card-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.card-grid{grid-template-columns:1fr;}}
.card{background:var(--surface);padding:28px 24px;min-width:0;transition:transform .3s ease, box-shadow .3s ease;}
.card:hover{transform:translateY(-4px);box-shadow:0 14px 28px -18px color-mix(in srgb, var(--ink) 35%, transparent);}
.card .tag{
  font-family:'JetBrains Mono';font-size:0.72rem;font-weight:500;
  color:var(--brand);background:var(--brand-soft);
  display:inline-block;padding:3px 9px;border-radius:999px;margin-bottom:16px;
  text-transform:uppercase;letter-spacing:0.04em;
}
.card h3{font-size:1.05rem;margin:0 0 8px;}
.card p{font-size:0.9rem;color:var(--ink-soft);margin:0;}

/* how it works */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;}
@media (max-width:860px){.steps{grid-template-columns:repeat(2,1fr);}}
@media (max-width:520px){.steps{grid-template-columns:1fr;}}
.step{min-width:0;padding-top:20px;border-top:2px solid var(--line);}
.step .num{font-family:'JetBrains Mono';font-weight:500;color:var(--accent);font-size:0.95rem;display:block;margin-bottom:10px;}
.step h3{font-size:1.05rem;margin:0 0 8px;}
.step p{font-size:0.9rem;color:var(--ink-soft);margin:0;}

/* why */
.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px 40px;}
@media (max-width:700px){.why-grid{grid-template-columns:1fr;}}
.why-item{display:flex;gap:16px;align-items:flex-start;}
.why-item .mark{width:28px;height:28px;border-radius:7px;background:var(--brand-soft);color:var(--brand);flex:none;display:flex;align-items:center;justify-content:center;font-family:'JetBrains Mono';font-weight:600;font-size:0.85rem;}
.why-item h3{font-size:1rem;margin:0 0 6px;}
.why-item p{font-size:0.9rem;color:var(--ink-soft);margin:0;max-width:40ch;}

/* cta band */
.cta-band{
  background:var(--ink);color:var(--bg);border-radius:20px;
  padding:clamp(36px,6vw,64px);display:flex;justify-content:space-between;
  align-items:center;gap:32px;flex-wrap:wrap;
}
.cta-band h2{color:var(--bg);font-size:clamp(1.5rem,3vw,2rem);max-width:20ch;margin:0 0 10px;}
.cta-band p{color:color-mix(in srgb, var(--bg) 70%, var(--ink-soft));max-width:40ch;margin:0;font-size:0.95rem;}
.cta-band .btn-primary{background:var(--accent);color:#1a1200;}
.cta-band .btn-primary:hover{background:var(--bg);color:var(--ink);}

/* footer */
footer{border-top:1px solid var(--line);padding-block:48px 28px;}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;margin-bottom:36px;}
@media (max-width:760px){.footer-grid{grid-template-columns:1fr;}}
.footer-grid h4{font-family:'JetBrains Mono';font-size:0.74rem;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-soft);margin:0 0 14px;font-weight:500;}
address{font-style:normal;font-size:0.9rem;color:var(--ink-soft);line-height:1.7;}
.footer-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.footer-links a{font-size:0.9rem;text-decoration:none;color:var(--ink-soft);}
.footer-links a:hover{color:var(--ink);}
.copy-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.copy-btn{
  font-family:'JetBrains Mono';font-size:0.8rem;background:var(--surface);
  border:1px solid var(--line);border-radius:6px;padding:4px 9px;cursor:pointer;color:var(--ink-soft);
}
.copy-btn:hover{color:var(--ink);border-color:var(--brand);}
.bottom-bar{
  display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  border-top:1px solid var(--line);padding-top:20px;
  font-size:0.8rem;color:var(--ink-soft);
}
