/* Zethro website. CSS only. Palette from the design sheet (04-desktop 2.1). */
:root{
  --bg:#0A0810;--bg2:#120E1C;--panel:#16121F;--line:#2A2440;--line2:#3A3050;
  --fg:#ECE8F4;--muted:#A79FB8;--dim:#605873;
  --accent:#7B5CD6;--corn:#6D8FE8;--teal:#6FC3D6;--amber:#E8B86D;--rose:#E27C86;
  --max:1120px;--r:10px;
  --font:Inter,"Segoe UI",system-ui,-apple-system,sans-serif;
  --mono:"JetBrains Mono",Consolas,"SF Mono",Menlo,monospace;
}
@media (prefers-color-scheme:light){
  :root{--bg:#F5F3FA;--bg2:#ECE8F4;--panel:#FFFFFF;--line:#D9D3E6;--line2:#C9C2D8;
    --fg:#17122A;--muted:#605873;--dim:#8A8299}
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.55 var(--font);
  font-feature-settings:"ss01","cv11"}
a{color:var(--corn);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
code,pre,kbd{font-family:var(--mono);font-size:.92em}
code{background:var(--bg2);border:1px solid var(--line);border-radius:5px;padding:1px 6px}
pre{background:var(--bg2);border:1px solid var(--line);border-radius:var(--r);padding:14px 16px;
  overflow:auto;line-height:1.5;margin:0}
pre code{background:none;border:0;padding:0}
h1,h2,h3{line-height:1.15;letter-spacing:-.01em;margin:0 0 .4em}
h1{font-size:clamp(2rem,5.5vw,3.6rem);font-weight:600}
h2{font-size:clamp(1.5rem,3vw,2.1rem);font-weight:600}
h3{font-size:1.12rem;font-weight:600}
p{margin:0 0 1em}
.muted{color:var(--muted)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.sr{position:absolute;left:-9999px}

/* header */
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{display:flex;align-items:center;gap:22px;height:62px}
.brand{display:flex;align-items:center;gap:10px;color:var(--fg);font-weight:600;font-size:1.05rem}
.brand:hover{text-decoration:none}
.brand svg{width:30px;height:30px}
.brand .os{color:var(--muted);font-weight:500}
.links{margin-left:auto;display:flex;gap:22px;align-items:center}
.links a{color:var(--muted);font-weight:500;font-size:.95rem}
.links a:hover{color:var(--fg);text-decoration:none}
.links a.cta{color:var(--fg);border:1px solid var(--line2);padding:7px 14px;border-radius:7px}
.links a.cta:hover{border-color:var(--accent)}
#m{display:none}
.burger{display:none;margin-left:auto;width:40px;height:40px;cursor:pointer;align-items:center;justify-content:center}
.burger span{display:block;width:20px;height:2px;background:var(--fg);box-shadow:0 -6px 0 var(--fg),0 6px 0 var(--fg)}
@media (max-width:760px){
  .links{display:none;position:absolute;left:0;right:0;top:62px;background:var(--bg);
    border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:8px 20px 16px}
  .links a{padding:12px 0;border-bottom:1px solid var(--line)}
  .links a.cta{margin-top:12px;text-align:center}
  .burger{display:flex}
  #m:checked ~ .links{display:flex}
}

/* hero */
.hero{padding:88px 0 56px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:-40% -20% auto auto;width:70vw;height:70vw;max-width:900px;max-height:900px;
  background:radial-gradient(closest-side,rgba(123,92,214,.22),transparent 70%);pointer-events:none}
.hero .wrap{position:relative}
.kicker{font-family:var(--mono);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin-bottom:18px}
.lead{font-size:clamp(1.08rem,1.6vw,1.3rem);color:var(--muted);max-width:720px}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0 0}
.btn{display:inline-block;padding:11px 20px;border-radius:8px;font-weight:600;border:1px solid var(--line2);color:var(--fg)}
.btn:hover{text-decoration:none;border-color:var(--accent)}
.btn.p{background:var(--accent);border-color:var(--accent);color:#fff}
.btn.p:hover{background:#6a4cc4}
.term{margin-top:40px;max-width:760px}
.term .bar{display:flex;gap:6px;padding:10px 14px;background:var(--panel);border:1px solid var(--line);border-bottom:0;border-radius:var(--r) var(--r) 0 0}
.term .bar i{width:10px;height:10px;border-radius:50%;background:var(--line2)}
.term pre{border-radius:0 0 var(--r) var(--r);font-size:.86rem}
.c-p{color:var(--accent)}.c-t{color:var(--teal)}.c-a{color:var(--amber)}.c-r{color:var(--rose)}.c-b{color:var(--corn)}.c-d{color:var(--dim)}

/* sections */
section{padding:64px 0;border-top:1px solid var(--line)}
section.alt{background:var(--bg2)}
.grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:22px}
.card h3{margin-bottom:.5em}
.card p{margin:0;color:var(--muted);font-size:.97rem}
.card .n{font-family:var(--mono);color:var(--teal);font-size:.8rem;letter-spacing:.06em;margin-bottom:10px}
.two{display:grid;gap:40px;grid-template-columns:1fr 1fr;align-items:start}
@media (max-width:860px){.two{grid-template-columns:1fr}}
.prod{display:flex;gap:16px;align-items:flex-start}
.prod svg{flex:0 0 56px;width:56px;height:56px}
table{width:100%;border-collapse:collapse;font-size:.95rem}
th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
th{color:var(--muted);font-weight:500;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}
td.y{color:var(--teal)} td.n{color:var(--dim)}
.tbl{overflow:auto}
.claims{counter-reset:c;list-style:none;padding:0;margin:0;display:grid;gap:14px}
.claims li{display:grid;grid-template-columns:44px 1fr;gap:4px 14px;align-items:start}
.claims li::before{counter-increment:c;content:"0" counter(c);font-family:var(--mono);color:var(--accent);font-size:.95rem;padding-top:3px;grid-row:1/3}
.claims li>*{grid-column:2}
.claims b{display:block;font-weight:600;margin-bottom:2px}
.claims span{color:var(--muted)}
.steps{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.steps .card{position:relative;padding-top:28px}
.steps .card::before{content:attr(data-n);position:absolute;top:12px;right:16px;font-family:var(--mono);color:var(--dim);font-size:.8rem}
dl.spec{display:grid;grid-template-columns:max-content 1fr;gap:8px 24px;margin:0}
dl.spec dt{color:var(--muted)} dl.spec dd{margin:0}
@media (max-width:560px){dl.spec{grid-template-columns:1fr}dl.spec dt{margin-top:6px}}
.dl{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.dl .card small{display:block;color:var(--dim);font-family:var(--mono);font-size:.78rem;margin-top:8px;word-break:break-all}
.note{border-left:3px solid var(--amber);padding:10px 16px;background:var(--bg2);border-radius:0 var(--r) var(--r) 0;color:var(--muted)}
footer{border-top:1px solid var(--line);padding:36px 0;color:var(--dim);font-size:.9rem}
footer .wrap{display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;align-items:center}
footer a{color:var(--muted)}
@media (max-width:560px){.hero{padding:56px 0 40px}section{padding:48px 0}}

/* launch banner */
.banner{background:linear-gradient(90deg,#2A2240,#120E1C);border-bottom:1px solid var(--line);color:var(--fg);font-size:.95rem;text-align:center;padding:9px 16px}
.banner b{color:var(--amber);font-weight:600}
@media (prefers-color-scheme:light){.banner{background:linear-gradient(90deg,#E6E0F2,#F5F3FA)}}
@media (max-width:620px){.grid .card[style*="span 2"]{grid-column:1/-1 !important}}

/* anatomy panel in the OS hero */
.anat{display:none}
@media (min-width:1000px){
  .hero.os .wrap{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:40px;align-items:center}
  .hero.os .wrap>*{grid-column:1}
  .hero.os .wrap>.anat{display:block;grid-column:2;grid-row:1/5;position:relative;height:380px;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#15121F}
  .anat iframe{width:100%;height:100%;border:0;pointer-events:none}
  .anat span{position:absolute;left:12px;bottom:10px;font-size:.8rem;color:var(--muted)}
  .anat:hover{border-color:var(--accent);text-decoration:none}
}
