/* Cybereum · editorial.css — restrained editorial mode for Technology, Research, Evidence, About and Assessment. */
:root{--bg:var(--cyb-bg);--panel:var(--cyb-bg-2);--panel2:var(--cyb-ink);--text:var(--cyb-fg);--muted:var(--cyb-fg-2);--line:var(--cyb-line);--accent:var(--cyb-accent);--warm:var(--cyb-amber);--max:var(--cyb-max)}
body{background:radial-gradient(circle at 70% -10%,rgba(80,147,190,.13),transparent 32%),radial-gradient(circle at 8% 44%,rgba(27,79,138,.07),transparent 28%),var(--bg);color:var(--text);font-family:var(--cyb-body);line-height:1.58}a{text-decoration:none}
.hero{position:relative;padding:calc(var(--cyb-nav-h) + clamp(64px,8vw,112px)) 0 clamp(72px,8vw,108px);overflow:hidden;isolation:isolate}.hero::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(52% 72% at 82% 20%,color-mix(in srgb,var(--cyb-accent-deep) 16%,transparent),transparent 72%);pointer-events:none}.hero::after{content:"";position:absolute;left:50%;bottom:0;width:min(var(--cyb-max),calc(100% - 2*var(--cyb-gutter)));height:1px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,var(--cyb-line-strong) 18%,var(--cyb-line-strong) 82%,transparent)}.hero h1{font-family:var(--cyb-editorial);font-weight:400;letter-spacing:var(--cyb-tracking-display);font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.14;max-width:16.16em;margin:18px 0 28px;text-wrap:balance}.lede{font-size:clamp(1.08rem,1.75vw,1.32rem);line-height:1.58;max-width:790px;color:color-mix(in srgb,var(--muted) 92%,transparent)}.actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:36px}
.section{position:relative;padding:clamp(68px,8vw,104px) 0;border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);content-visibility:auto;contain-intrinsic-size:auto 760px}.section:first-of-type{border-top:0}.section h2{font-family:var(--cyb-editorial);font-size:clamp(1.5rem,2.2vw,2rem);font-weight:400;line-height:1.26;letter-spacing:var(--cyb-tracking-display);margin:13px 0 21px;max-width:920px;text-wrap:balance}.section-intro{color:color-mix(in srgb,var(--muted) 91%,transparent);max-width:790px;font-size:1.07rem;line-height:1.68}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:38px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{position:relative;overflow:hidden;border:1px solid var(--line);background:linear-gradient(145deg,color-mix(in srgb,var(--cyb-surface-raised) 94%,transparent),color-mix(in srgb,var(--cyb-surface) 82%,transparent));border-radius:var(--cyb-radius-lg);padding:27px;box-shadow:var(--cyb-highlight),var(--cyb-shadow-1);transition:border-color var(--cyb-fast),transform var(--cyb-base) var(--cyb-ease),box-shadow var(--cyb-base)}.card::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--cyb-cyan) 46%,transparent),transparent);opacity:.55}.card h3{font-size:1.03rem;font-weight:600;letter-spacing:-.01em;margin:0 0 11px}.card p{color:color-mix(in srgb,var(--muted) 89%,transparent);margin:0;line-height:1.65}.metric{font-family:var(--cyb-editorial);font-size:2.5rem;letter-spacing:-.03em;font-variant-numeric:tabular-nums lining-nums}
@media(hover:hover) and (pointer:fine){.card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--cyb-cyan) 30%,transparent);box-shadow:var(--cyb-highlight),0 20px 56px rgba(0,0,0,.18)}}
.rail{display:grid;grid-template-columns:168px minmax(0,1fr);gap:34px;border-top:1px solid var(--line);padding:28px 0}.rail:first-of-type{margin-top:36px}.rail .label{font-family:var(--cyb-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:var(--accent);padding-top:4px}.rail h3{margin:0 0 8px;font-size:1.16rem;font-weight:600}.rail p{margin:0;color:color-mix(in srgb,var(--muted) 90%,transparent);max-width:780px;line-height:1.67}
.quote{font-family:var(--cyb-editorial);font-size:clamp(1.05rem,1.85vw,1.7rem);line-height:1.38;letter-spacing:var(--cyb-tracking-display);max-width:930px;color:var(--text);margin:28px 0}.kicker{color:var(--warm)}.source{font-size:.78rem;color:var(--muted);margin-top:17px}.source a{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--cyb-cyan) 45%,transparent);text-underline-offset:4px}.source a:hover{text-decoration-color:var(--cyb-cyan)}
.process{counter-reset:steps;margin-top:34px;border-bottom:1px solid var(--line)}.step{display:grid;grid-template-columns:72px minmax(0,1fr);gap:24px;padding:29px 0;border-top:1px solid var(--line)}.step:before{counter-increment:steps;content:"0" counter(steps);display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:var(--cyb-surface-subtle);box-shadow:var(--cyb-highlight);font-family:var(--cyb-mono);font-size:.72rem;letter-spacing:.08em;color:var(--accent);font-variant-numeric:tabular-nums}.step h3{margin:1px 0 8px;font-size:1.12rem;font-weight:600}.step p{margin:0;color:color-mix(in srgb,var(--muted) 90%,transparent);max-width:800px;line-height:1.66}
.people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:38px}.person{display:grid;gap:16px;align-content:start}.person header{display:flex;align-items:center;gap:14px}.person .avatar{position:relative;display:grid;place-items:center;flex:none;width:56px;height:56px;border-radius:50%;overflow:hidden;border:2px solid var(--cyb-line-strong);background:linear-gradient(135deg,var(--cyb-accent),var(--cyb-accent-2));color:var(--cyb-on-accent);font:600 .9rem var(--cyb-display)}.person .avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.person h3{margin:0}.person .role{margin-top:.25rem;font:500 .66rem/1.3 var(--cyb-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
@media(max-width:800px){.hero{padding:calc(var(--cyb-nav-h) + 44px) 0 62px}.hero::after{width:calc(100% - 2*var(--cyb-gutter))}.grid,.grid.two,.people{grid-template-columns:1fr}.rail{grid-template-columns:1fr;gap:8px}.section{padding:62px 0;contain-intrinsic-size:auto 620px}.card{padding:23px;border-radius:20px}.step{grid-template-columns:56px 1fr;gap:16px}.step:before{width:44px;height:44px}}
@media(max-width:520px){.hero h1{font-size:clamp(1.8rem,6.6vw,2.7rem)}.section h2{font-size:clamp(1.4rem,5vw,1.9rem)}.actions{display:grid;grid-template-columns:1fr}.actions .cyb-button{width:100%}.quote{font-size:1.1rem}}
@media(prefers-contrast:more){.card,.step,.rail{border-color:var(--cyb-line-strong)}.section-intro,.card p,.rail p,.step p{color:var(--cyb-fg-2)}}
