:root{--bg:#0a0e17;--surface:#111a29;--line:#27354a;--text:#eaf0f9;--muted:#aab8ca;--accent:#6de0cf;--gold:#eac78b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at top right,#14253a 0,#0a0e17 55%);color:var(--text);font:16px/1.65 system-ui,-apple-system,Segoe UI,sans-serif;min-height:100vh}a{color:var(--accent)}.wrap{width:min(1120px,calc(100% - 40px));margin:auto}.nav{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:22px 0;border-bottom:1px solid var(--line)}.brand{color:white;text-decoration:none;font-weight:800;letter-spacing:.08em}.brand span{color:var(--accent)}nav{display:flex;flex-wrap:wrap;gap:17px}nav a{text-decoration:none;color:var(--muted);font-size:.91rem}nav a:hover,nav a[aria-current=page]{color:var(--accent)}main{padding:72px 0 100px}.eyebrow{font-size:.78rem;letter-spacing:.19em;text-transform:uppercase;color:var(--accent);font-weight:700}h1{font-size:clamp(2.6rem,6vw,5.3rem);line-height:1.08;letter-spacing:-.045em;margin:18px 0 22px}h2{font-size:2rem;line-height:1.2;margin:0 0 22px}h3{margin:0 0 10px;font-size:1.2rem}p{color:var(--muted);max-width:74ch}.lead{font-size:1.2rem;max-width:67ch}.hero{padding:20px 0 85px}.hero strong{color:white}.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.btn{display:inline-block;padding:12px 20px;border:1px solid var(--accent);background:var(--accent);color:#07111a;text-decoration:none;border-radius:8px;font-weight:750}.btn.secondary{background:transparent;color:var(--accent)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.grid.two{grid-template-columns:repeat(2,1fr)}.card{background:linear-gradient(140deg,#142034,#101722);border:1px solid var(--line);padding:26px;border-radius:14px}.card p{margin-bottom:0}.tag{font-size:.75rem;color:var(--gold);text-transform:uppercase;letter-spacing:.12em;font-weight:750}.section{margin-top:72px}.list{padding-left:22px;color:var(--muted)}.list li{margin:10px 0}.note{padding:16px 20px;border-left:3px solid var(--accent);background:#111e2c;color:var(--muted);border-radius:0 8px 8px 0}.project{margin-bottom:18px}.project a{font-weight:700}.page-title{font-size:clamp(2.4rem,5vw,4rem)}footer{border-top:1px solid var(--line);padding:25px 0;color:var(--muted);font-size:.87rem}footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}@media(max-width:800px){.grid,.grid.two{grid-template-columns:1fr}main{padding-top:44px}.hero{padding-bottom:30px}}

/* Portfolio case-study presentation */
.case-nav{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 40px}.case-nav a{padding:9px 14px;border:1px solid var(--line);border-radius:8px;text-decoration:none}.case-nav a:hover{border-color:var(--accent)}.case-article{max-width:920px}.case-article h2{font-size:1.55rem;margin:45px 0 15px;border-bottom:1px solid var(--line);padding-bottom:10px}.case-article h3{font-size:1.18rem;margin:32px 0 12px}.case-article p{max-width:100%;white-space:pre-wrap}.case-article pre{overflow-x:auto;white-space:pre;font-size:.86rem;line-height:1.5;background:#070d16;border:1px solid var(--line);border-radius:10px;padding:20px;color:#d9f6ed}.case-article table{border-collapse:collapse;width:100%;font-size:.9rem;margin:20px 0}.case-article th,.case-article td{border:1px solid var(--line);padding:10px;vertical-align:top;overflow-wrap:anywhere}.case-article tr:nth-child(odd){background:#111d2d}.table-scroll{overflow-x:auto}.case-article figure{margin:24px 0;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.case-article figure img{max-width:100%;height:auto;display:block;margin:auto}.case-article figcaption{font-size:.84rem;color:var(--muted);padding-top:10px}.case-article .source-note{font-size:.85rem;color:var(--muted)}.case-article .content-card{padding:26px;border:1px solid var(--line);background:rgba(17,26,41,.5);border-radius:14px;margin:24px 0}.project-link{display:block;text-decoration:none;color:inherit}.project-link:hover{border-color:var(--accent);transform:translateY(-2px);transition:.2s}.project-link .more{color:var(--accent);font-weight:700}.case-article a{overflow-wrap:anywhere}@media(max-width:700px){.case-article .content-card{padding:16px}.case-article pre{font-size:.73rem;padding:12px}}
/* Project Eli technical showcase */
.flow{max-width:800px;margin:30px auto;padding:28px;background:linear-gradient(145deg,#101c2c,#0c1420);border:1px solid var(--line);border-radius:16px}.flow-node{padding:20px 24px;background:#17263a;border:1px solid #35516a;border-radius:12px;text-align:center}.flow-node strong{display:block;color:#f4f8fc;font-size:1.1rem;margin:5px 0}.flow-node small{display:block;color:var(--muted);line-height:1.5}.flow-arrow{text-align:center;color:var(--accent);font-size:1.6rem;line-height:1.5}.flow-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.milestones{list-style:none;counter-reset:milestone;padding:0;margin:30px 0;max-width:860px}.milestones li{position:relative;padding:0 0 30px 35px;border-left:2px solid var(--line);margin-left:12px}.milestones li:last-child{border-left-color:transparent}.milestones li:before{content:"";position:absolute;left:-8px;top:2px;width:13px;height:13px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px #0e1b29}.milestones h3{margin:8px 0}.milestones p{margin:0}@media(max-width:650px){.flow{padding:14px}.flow-pair{grid-template-columns:1fr}.flow-node{padding:15px}}
