/* VEOR Collection — Portfolio Ledger, design source: 01.08.2026 */
:root { --indigo:#6366f1; --cyan:#06b6d4; --ink:#0b0f19; --panel:#101827; --line:rgba(148,163,184,.18); }
html, body { background:var(--ink); }
body { font-family:var(--font-body); color:#f8fafc; letter-spacing:-.018em; }
.veor-system h1,.veor-system h2,.veor-system h3,.veor-system h4 { font-family:var(--font-display); font-weight:700; letter-spacing:-.055em; }
.telemetry-bar { background:#090d16; border-color:var(--line); }
.telemetry-latency,.footer-col h4,.studio-kicker,.eyebrow { color:var(--cyan)!important; }
.status-dot { background:var(--cyan); box-shadow:0 0 12px var(--cyan); }
.site-header { background:rgba(11,15,25,.92); border-color:var(--line); }
.site-header .container { min-height:78px; }
.brand-logo { filter:none; }
.nav-primary a { color:#aab6c9; font-family:var(--font-body)!important; font-size:13px; font-weight:500; letter-spacing:0!important; text-transform:none; }
.nav-primary a:hover,.nav-primary a.active { color:#fff; }
.header-cta { border:1px solid var(--indigo); background:transparent; color:#f8fafc; box-shadow:none; font-family:var(--font-body)!important; font-size:13px!important; font-weight:600!important; letter-spacing:0!important; text-transform:none; }
.header-cta:hover { background:var(--indigo); color:#fff; }
.site-footer { background:#080c15; border-color:var(--line); }
.site-footer .brand-logo,.footer-brand .brand-logo { filter:none; }
.footer-col a { font-family:var(--font-body); letter-spacing:0; text-transform:none; }

.portfolio-main { overflow:hidden; background:radial-gradient(700px 460px at 77% 11%,rgba(37,99,235,.13),transparent 70%),var(--ink); }
.portfolio-hero { border-bottom:1px solid var(--line); padding:90px 0 76px; }
.portfolio-hero-grid { display:grid; grid-template-columns:minmax(420px,.88fr) minmax(520px,1.12fr); gap:48px; align-items:center; }
.portfolio-eyebrow,.section-label-row,.ledger-index,.ledger-result,.hero-proof dt,.method-list span,.featured-meta { font:600 10px var(--font-mono); letter-spacing:.11em; text-transform:uppercase; }
.portfolio-eyebrow { color:var(--cyan); }
.portfolio-hero h1 { margin:27px 0 24px; max-width:12ch; font-size:clamp(48px,4.3vw,68px); line-height:1.05; }
.portfolio-hero h1 span { color:var(--indigo); }
.portfolio-hero-copy>p { max-width:48ch; color:#a9b5c8; font-size:17px; line-height:1.72; }
.portfolio-actions { display:flex; align-items:center; flex-wrap:wrap; gap:25px; margin-top:36px; }
.portfolio-primary { display:inline-flex; align-items:center; gap:22px; padding:15px 24px; min-height:54px; border:1px solid transparent; border-radius:3px; color:#fff; background:linear-gradient(115deg,#4f46e5,#6366f1); box-shadow:0 10px 28px rgba(79,70,229,.28); font-size:14px; font-weight:600; transition:transform .2s,box-shadow .2s; }
.portfolio-primary:hover { color:#fff; transform:translateY(-2px); box-shadow:0 15px 32px rgba(6,182,212,.22); }
.portfolio-primary b,.portfolio-quiet-link b { font-size:20px; font-weight:400; line-height:1; }
.portfolio-quiet-link { display:inline-flex; align-items:center; gap:11px; color:var(--cyan); font-size:14px; font-weight:600; }
.portfolio-quiet-link:hover { color:#67e8f9; }
.hero-proof { display:flex; gap:44px; margin:51px 0 0; }
.hero-proof div+div { padding-left:44px; border-left:1px solid var(--line); }
.hero-proof dt { color:#8090a8; }
.hero-proof dd { margin:9px 0 0; color:var(--cyan); font:500 38px/1 var(--font-display); letter-spacing:-.06em; }
.hero-proof dd span { font-size:22px; }
.portfolio-featured { position:relative; display:grid; min-height:504px; overflow:hidden; isolation:isolate; border:1px solid rgba(6,182,212,.65); border-radius:12px; background:#0b1221; box-shadow:0 0 42px rgba(6,182,212,.12); }
.portfolio-featured::after { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(8,14,26,.96) 0%,rgba(8,14,26,.78) 41%,rgba(8,14,26,.08) 82%); pointer-events:none; }
.portfolio-featured img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.featured-meta { position:absolute; z-index:2; top:24px; left:28px; right:28px; display:flex; justify-content:space-between; color:var(--cyan); }
.featured-copy { position:relative; z-index:2; align-self:center; max-width:53%; padding:50px 28px 15px; }
.featured-copy>span { color:var(--cyan); font:600 10px var(--font-mono); letter-spacing:.12em; }
.featured-copy h2 { margin:19px 0 17px; font-size:clamp(29px,2.55vw,38px); line-height:1.1; }
.featured-copy p { color:#b8c3d4; font-size:14px; line-height:1.62; }
.featured-copy a { display:inline-flex; gap:10px; margin-top:24px; color:#fff; font-size:14px; font-weight:600; }

.project-ledger,.method-section,.journal-section { border-bottom:1px solid var(--line); padding:112px 0; }
.section-label-row { display:flex; justify-content:space-between; color:var(--cyan); }
.section-label-row a { color:var(--cyan); font-family:var(--font-body); font-size:14px; letter-spacing:0; text-transform:none; }
.project-ledger h2,.journal-section h2,.method-section h2,.portfolio-contact h2 { margin:21px 0 52px; font-size:clamp(42px,5vw,72px); line-height:1.05; }
.ledger-list { border-top:1px solid var(--line); }
.ledger-item { display:grid; grid-template-columns:56px minmax(180px,.78fr) minmax(240px,1.35fr) 90px 30px; gap:18px; align-items:center; min-height:72px; border-bottom:1px solid var(--line); color:#e8edf5; transition:background .2s,padding .2s; }
.ledger-item:hover { padding-left:12px; background:rgba(99,102,241,.07); color:#fff; }
.ledger-index { color:#728198; }
.ledger-item strong { font:600 18px var(--font-display); letter-spacing:-.035em; }
.ledger-kind { color:#98a6ba; font-size:14px; }
.ledger-result { color:var(--cyan); text-align:right; }
.ledger-arrow { color:#d8e3f2; text-align:right; font-size:22px; }

.method-section { background:linear-gradient(135deg,#0d1525,#0b0f19); }
.method-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:80px; }
.method-section h2 { margin-bottom:0; }
.method-copy { padding-top:38px; }
.method-copy p { max-width:48ch; color:#a9b6c9; font-size:17px; line-height:1.75; }
.method-copy .portfolio-quiet-link { margin-top:27px; }
.method-list { grid-column:1 / -1; display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin:6px 0 0; padding:0; list-style:none; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.method-list li { min-height:191px; padding:27px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.method-list span { color:var(--cyan); }
.method-list strong { display:block; margin-top:26px; font:600 20px var(--font-display); letter-spacing:-.035em; }
.method-list p { margin:12px 0 0; color:#97a6bb; font-size:14px; line-height:1.55; }

.journal-section { background:#0b0f19; }
.journal-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.journal-item,.journal-empty { min-height:280px; padding:27px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); color:#f8fafc; transition:background .2s; }
.journal-item:hover { background:#111a2b; color:#fff; }
.journal-item>span { color:var(--cyan); font:600 10px var(--font-mono); letter-spacing:.1em; }
.journal-item h3 { margin:22px 0 10px; font-size:25px; line-height:1.18; }
.journal-item p { color:#94a3b8; font-size:14px; line-height:1.6; }
.journal-item b { display:block; margin-top:27px; color:var(--cyan); font-size:13px; }
.portfolio-contact { padding:115px 0; background:linear-gradient(120deg,#111b46,#1a1671 48%,#0b728f); }
.portfolio-contact h2 { max-width:14ch; margin-bottom:35px; }
.portfolio-contact .portfolio-eyebrow { color:#a5f3fc; }
.portfolio-contact .portfolio-primary { background:#fff; color:#101827; box-shadow:none; }

@media (max-width:980px) { .portfolio-hero-grid,.method-grid { grid-template-columns:1fr; gap:48px; } .portfolio-featured { min-height:460px; } .featured-copy { max-width:56%; } .method-copy { padding-top:0; } }
@media (max-width:700px) { .portfolio-hero { padding:57px 0 64px; } .portfolio-hero h1 { font-size:clamp(45px,13vw,64px); } .portfolio-hero-copy>p { font-size:16px; } .hero-proof { gap:25px; } .hero-proof div+div { padding-left:25px; } .portfolio-featured { min-height:430px; } .featured-copy { align-self:end; max-width:100%; padding-bottom:28px; } .portfolio-featured::after { background:linear-gradient(0deg,rgba(8,14,26,.98),rgba(8,14,26,.15)); } .featured-meta { font-size:8px; } .project-ledger,.method-section,.journal-section { padding:76px 0; } .project-ledger h2,.journal-section h2,.method-section h2,.portfolio-contact h2 { margin-bottom:35px; } .ledger-item { grid-template-columns:35px 1fr 28px; gap:10px; min-height:88px; } .ledger-kind,.ledger-result { display:none; } .method-list,.journal-grid { grid-template-columns:1fr; } .method-list li { min-height:auto; } .portfolio-contact { padding:78px 0; } }

/* Internal portfolio, expertise and engineering pages */
.page-hero { background:radial-gradient(500px 280px at 72% 20%,rgba(99,102,241,.13),transparent 70%),var(--ink)!important; border-color:var(--line)!important; }
.page-hero h1 { font-family:var(--font-display)!important; font-weight:700!important; }
.crumbs,.crumbs a { color:var(--cyan)!important; }
.case-hero { padding-bottom:72px; }
.case-hero .lead { max-width:62ch; }
.case-list { padding-top:48px; padding-bottom:110px; }
.case-item { display:grid; grid-template-columns:80px minmax(0,1fr) 160px; gap:25px; padding:37px 0; border-top:1px solid var(--line); }
.case-item:last-child { border-bottom:1px solid var(--line); }
.case-number { color:var(--cyan); font:600 11px var(--font-mono); letter-spacing:.1em; }
.case-main>span { color:#8fa1b9; font:600 10px var(--font-mono); letter-spacing:.09em; text-transform:uppercase; }
.case-main>span i { color:var(--cyan); font-style:normal; }
.case-main h2 { margin:18px 0 5px; font-size:clamp(34px,4vw,52px); }
.case-main h3 { color:#d6dfeb; font-family:var(--font-body); font-size:16px; font-weight:500; letter-spacing:0; }
.case-main p { max-width:63ch; margin:17px 0 21px; color:#9eacc0; line-height:1.65; }
.case-main b { display:inline-block; margin:0 7px 7px 0; padding:6px 9px; border:1px solid var(--line); color:#b9c6d8; font:500 10px var(--font-mono); letter-spacing:.04em; }
.case-link { align-self:center; color:var(--cyan); font-size:13px; font-weight:600; line-height:1.5; }
.case-link strong { display:block; margin-top:12px; font-size:22px; font-weight:400; }
.engine-panel,.pipeline { background:var(--panel)!important; border-color:var(--line)!important; }
.shader-preview,.terminal,.pipeline-node { background:#0b1221!important; border-color:var(--line)!important; }
.pipeline-node h2 { font-family:var(--font-display)!important; }
@media (max-width:700px) { .case-list { padding-top:25px; padding-bottom:72px; } .case-item { grid-template-columns:35px 1fr; gap:13px; padding:28px 0; } .case-link { grid-column:2; } }
