/* X & Company — single-theme dark studio screen. Every color painted explicitly. */
:root{
  --bg:#0B0C11; --bg-2:#12141B; --bg-3:#181B24; --line:#23262F; --text:#EEF0F5; --muted:#8C90A3; --dim:#5C6072;
  --tk:#2FC8B3; --tl:#F26A93; --gold:#E4B85A;
  --display:"Syne", "Arial Black", Impact, sans-serif;
  --body:"IBM Plex Sans", "Helvetica Neue", Arial, sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;
}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.mono{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
h1,h2,h3{font-family:var(--display);margin:0;letter-spacing:-.02em;text-wrap:balance}
.wrap{max-width:1240px;margin:0 auto;padding-inline:clamp(16px,4vw,40px)}

.top{position:sticky;top:0;z-index:10;backdrop-filter:blur(14px);background:color-mix(in srgb,var(--bg) 72%,transparent);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:60px;gap:16px}
.mark{font-family:var(--display);font-weight:800;font-size:20px;letter-spacing:.02em}
.mark b{background:linear-gradient(90deg,var(--tk),var(--tl));-webkit-background-clip:text;background-clip:text;color:transparent}
.top nav{display:flex;gap:26px;font-size:14px;color:var(--muted)}
.top nav a:hover{color:var(--text)}

/* Hero: particle field */
.hero{position:relative;border-bottom:1px solid var(--line);overflow:hidden;isolation:isolate}
.hero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1}
.hero .wrap{padding-block:clamp(72px,12vw,150px) clamp(48px,7vw,90px);display:grid;grid-template-columns:minmax(0,1fr);gap:24px;justify-items:center;text-align:center}
.hero h1{font-size:clamp(52px,18vw,280px);line-height:.85;font-weight:800;letter-spacing:-.05em;text-shadow:0 0 60px color-mix(in srgb,var(--bg) 80%,transparent);max-width:100%}
.hero h1 .amp{background:linear-gradient(120deg,var(--tk) 20%,var(--tl) 80%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .tag{font-size:clamp(18px,2.2vw,26px);color:var(--text);max-width:34ch;font-weight:500;line-height:1.3}
.hero .tag span.a{color:var(--tk)} .hero .tag span.b{color:var(--tl)}
.hero .ctas{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.btn{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:6px;font-weight:600;font-size:14px;border:1px solid var(--line);background:color-mix(in srgb,var(--bg) 70%,transparent);transition:border-color .2s,transform .2s}
.btn:hover{transform:translateY(-1px)}
.btn.a:hover{border-color:var(--tk)} .btn.b:hover{border-color:var(--tl)}
.btn i{width:8px;height:8px;border-radius:2px}
.btn.a i{background:var(--tk)} .btn.b i{background:var(--tl)}
.hero .hint{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}

/* Bento */
.bento{padding-block:clamp(48px,6vw,80px);display:grid;grid-template-columns:repeat(12,1fr);gap:14px}
.card{background:var(--bg-2);border:1px solid var(--line);border-radius:14px;padding:clamp(20px,2.6vw,34px);position:relative;overflow:hidden;transition:border-color .25s,transform .25s}
.card:hover{transform:translateY(-2px)}
.card.tk:hover{border-color:color-mix(in srgb,var(--tk) 60%,var(--line))}
.card.tl:hover{border-color:color-mix(in srgb,var(--tl) 60%,var(--line))}
.card.tk::before,.card.tl::before{content:"";position:absolute;inset:-40% -20% auto;height:70%;border-radius:50%;filter:blur(60px);opacity:.22;pointer-events:none}
.card.tk::before{background:var(--tk)} .card.tl::before{background:var(--tl)}
.c5{grid-column:span 5} .c7{grid-column:span 7} .c4{grid-column:span 4} .c12{grid-column:span 12}
.card .lbl{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.card .lbl i{width:10px;height:10px;border-radius:2px}
.card.tk .lbl i{background:var(--tk)} .card.tl .lbl i{background:var(--tl)}
.card h2{font-size:clamp(30px,3.4vw,46px);line-height:1.02;font-weight:800;margin-bottom:14px}
.card p{color:var(--muted);margin:0 0 18px;max-width:44ch}
.feat{list-style:none;padding:0;margin:0 0 22px;border-top:1px solid var(--line)}
.feat li{padding:10px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;font-size:14px}
.feat li span:last-child{font-family:var(--mono);font-size:11px;color:var(--dim);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.go{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:14px;padding:11px 16px;border-radius:6px;color:var(--bg)}
.card.tk .go{background:var(--tk)} .card.tl .go{background:var(--tl)}
.go:hover{filter:brightness(1.08)}
.card.shot{padding:0;display:flex;flex-direction:column}
.card.shot .inner{margin:auto;width:100%;padding:clamp(18px,2.6vw,34px)}

/* Mocks */
.ui{border:1px solid var(--line);border-radius:10px;background:var(--bg-3);overflow:hidden;font-size:12.5px;box-shadow:0 40px 80px -40px #000}
.ui .bar{display:flex;gap:6px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--dim)}
.ui .bar i{width:8px;height:8px;border-radius:50%;background:var(--line)}
.ui .bar span{margin-left:auto}
.runs{padding:14px 16px}
.runs .row{display:grid;grid-template-columns:1fr auto auto;gap:14px;padding:9px 0;border-bottom:1px solid var(--line);align-items:center}
.runs .row:last-child{border-bottom:0}
.runs .id{font-family:var(--mono);color:var(--dim);font-size:11px;margin-right:8px}
.st{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:4px}
.st.ok{color:var(--tk);background:color-mix(in srgb,var(--tk) 14%,transparent)}
.st.bad{color:var(--tl);background:color-mix(in srgb,var(--tl) 14%,transparent)}
.st.q{color:var(--gold);background:color-mix(in srgb,var(--gold) 14%,transparent)}
.spark{display:flex;gap:2px;align-items:flex-end;height:18px}
.spark i{width:4px;background:var(--tk);opacity:.7;border-radius:1px}
.spark i.f{background:var(--tl)}
.gate{margin:12px 16px 16px;padding:12px 14px;border-radius:6px;background:color-mix(in srgb,var(--tk) 10%,transparent);border:1px solid color-mix(in srgb,var(--tk) 35%,transparent);display:flex;justify-content:space-between;align-items:center;font-weight:600}
.gate small{font-weight:400;color:var(--muted);display:block;font-size:11.5px}
.story{padding:24px 28px;font-size:15px;line-height:1.7}
.story .t{font-family:var(--display);font-weight:700;font-size:20px;margin-bottom:4px}
.story .by{font-family:var(--mono);font-size:11px;color:var(--dim);letter-spacing:.06em;margin-bottom:16px;display:flex;gap:10px;align-items:center}
.story .by .av{display:inline-flex}
.story .by .av i{width:16px;height:16px;border-radius:50%;border:2px solid var(--bg-3);margin-left:-5px}
.story p{margin:0 0 10px}
.story .m{border-bottom:2px solid color-mix(in srgb,var(--tl) 70%,transparent)}
.story .n{border-bottom:2px solid color-mix(in srgb,var(--tk) 70%,transparent)}
.story .cur{display:inline-block;width:2px;height:1.1em;background:var(--tl);vertical-align:-3px;animation:blink 1s steps(2) infinite}
.story .typing{font-family:var(--mono);font-size:11px;color:var(--tl);letter-spacing:.06em}
@keyframes blink{50%{opacity:0}}

/* Principle cards */
.card.p h3{font-size:20px;font-weight:700;margin:12px 0 8px}
.card.p p{font-size:14.5px;margin:0}
.card.p .mono{display:block}

/* Founder quote */
.card.quote{background:var(--bg-3)}
.card.quote::before{content:"";position:absolute;inset:-30% 40% auto -10%;height:80%;border-radius:50%;background:linear-gradient(120deg,var(--tk),var(--tl));filter:blur(80px);opacity:.14;pointer-events:none}
.card.quote blockquote{margin:14px 0 0;font-family:var(--display);font-weight:700;font-size:clamp(22px,2.8vw,36px);line-height:1.3;max-width:54ch;letter-spacing:-.01em}
.card.quote blockquote::before{content:"\201C";color:var(--tk)}
.card.quote blockquote::after{content:"\201D";color:var(--tl)}

footer{border-top:1px solid var(--line);padding-block:48px 56px;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:flex-end}
footer > div{min-width:0;max-width:100%}
footer .mail{display:inline-block;max-width:100%;font-family:var(--display);font-weight:700;font-size:clamp(18px,3.4vw,40px);letter-spacing:-.02em;overflow-wrap:anywhere}
footer .mail:hover{color:var(--tk)}
footer .links{display:flex;gap:26px;font-size:14px;color:var(--muted)}
footer .links a:hover{color:var(--text)}
footer .copy{font-size:12.5px;color:var(--dim);width:100%}

@media (max-width:900px){
  .c5,.c7,.c4{grid-column:span 12}
  .top nav{display:none}
}
@media (prefers-reduced-motion:reduce){.story .cur{animation:none}}
