:root{--bg: #07111f;--bg-soft: #0b1728;--surface: #0f1f33;--surface-strong: #14263d;--border: rgba(148, 163, 184, .18);--text: #e5edf7;--muted: #9fb0c6;--muted-strong: #c3d1e4;--accent: #38bdf8;--accent-strong: #22d3ee;--success: #2dd4bf;--shadow: 0 24px 80px rgba(0, 0, 0, .32)}*{box-sizing:border-box}html{scroll-behavior:smooth}@font-face{font-family:Atkinson;src:url(/fonts/atkinson-regular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Atkinson;src:url(/fonts/atkinson-bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}body{font-family:Atkinson,sans-serif;margin:0;padding:0;text-align:left;background:radial-gradient(circle at top left,rgba(56,189,248,.12),transparent 34rem),linear-gradient(180deg,#07111f,#081523 45%,#07111f);word-wrap:break-word;overflow-wrap:break-word;color:var(--text);font-size:18px;line-height:1.65}body::selection{background:#38bdf847;color:var(--text)}h1,h2,h3,h4,h5,h6{margin:0 0 .5rem;color:var(--text);line-height:1.2}h1{font-size:clamp(2.6rem,7vw,5.2rem);letter-spacing:0}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:1.25rem}h4{font-size:1.563em}h5{font-size:1.25em}strong,b{font-weight:700}a{color:var(--accent);text-decoration-color:#38bdf859}a:hover{color:var(--accent-strong)}p{margin:0 0 1em}.prose p{margin-bottom:2em}textarea{width:100%;font-size:16px}input{font-size:16px}table{width:100%}img{max-width:100%;height:auto;border-radius:8px}code{padding:2px 5px;background-color:#94a3b826;border-radius:2px}pre{padding:1.5em;border-radius:8px}pre>code{all:unset}blockquote{border-left:4px solid var(--accent);padding:0 0 0 20px;margin:0;font-size:1.333em}hr{border:none;border-top:1px solid var(--border)}.site-header{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--border);background:#07111fd1;backdrop-filter:blur(18px)}.site-nav{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:1rem 0}.brand,.nav-links,.footer-links,.hero-actions,.contact-actions{display:flex;align-items:center}.brand{gap:.7rem;color:var(--text);font-size:.95rem;font-weight:700;text-decoration:none;white-space:nowrap}.brand-mark{display:grid;width:2.4rem;height:2.4rem;place-items:center;border:1px solid rgba(56,189,248,.45);border-radius:8px;background:#38bdf81f;color:var(--accent-strong);font-size:.8rem;letter-spacing:0}.nav-links{gap:1.3rem;font-size:.9rem}.nav-links a,.footer-links a{color:var(--muted);text-decoration:none}.nav-links a:hover,.footer-links a:hover{color:var(--text)}.nav-action,.button{border:1px solid var(--border);border-radius:8px;color:var(--text);font-weight:700;text-decoration:none;transition:border-color .16s ease,background .16s ease,transform .16s ease}.nav-action{padding:.65rem .95rem;font-size:.9rem}.nav-action:hover,.button:hover{transform:translateY(-1px)}.portfolio-page{width:100%}.section-shell{width:min(1120px,calc(100% - 2rem));margin:0 auto}.hero-section{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:clamp(2rem,5vw,4rem);align-items:center;min-height:calc(100vh - 4.6rem);padding:5rem 0 4rem}.hero-copy{max-width:760px}.eyebrow{margin-bottom:1rem;color:var(--success);font-size:.78rem;font-weight:700;letter-spacing:0;text-transform:uppercase}.hero-lead{max-width:680px;margin:1.4rem 0 2rem;color:var(--muted-strong);font-size:clamp(1.1rem,2.2vw,1.35rem)}.hero-actions,.contact-actions{flex-wrap:wrap;gap:.8rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.9rem;padding:.75rem 1.1rem}.button.primary{border-color:#38bdf8b3;background:#38bdf8;color:#06111f}.button.secondary{background:#0f1f33b8;color:var(--text)}.system-panel,.project-card,.focus-list>div,.contact-section{border:1px solid var(--border);border-radius:8px;background:#0f1f33b8;box-shadow:var(--shadow)}.system-panel{overflow:hidden}.panel-header{display:flex;gap:.45rem;padding:.95rem 1rem;border-bottom:1px solid var(--border);background:#14263de6}.panel-header span{width:.72rem;height:.72rem;border-radius:999px;background:var(--muted)}.panel-header span:nth-child(1){background:#38bdf8}.panel-header span:nth-child(2){background:#2dd4bf}.panel-header span:nth-child(3){background:#94a3b8}.panel-body{padding:1.35rem;color:var(--muted-strong);font-family:Consolas,Liberation Mono,monospace;font-size:.96rem}.panel-body p{margin-bottom:.7rem}.panel-body span,.panel-status{color:var(--success)}.content-section,.contact-section{padding:5rem 0}.section-heading{max-width:720px;margin-bottom:1.8rem}.section-text{max-width:820px;color:var(--muted-strong);font-size:1.08rem}.tech-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.9rem}.tech-pill{display:flex;align-items:center;justify-content:center;min-height:3.2rem;padding:.8rem .95rem;border:1px solid var(--border);border-radius:8px;background:#14263d9e;color:var(--muted-strong);font-weight:700;text-align:center}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.project-card{min-height:17rem;padding:1.4rem}.project-card p{color:var(--muted)}.project-stack,.project-link{color:var(--success);font-size:.82rem;font-weight:700;text-transform:uppercase}.project-card h3{margin-top:1.1rem}.project-link{display:inline-block;margin-top:1.1rem}.split-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:2rem;align-items:start}.focus-list{display:grid;gap:1rem}.focus-list>div{padding:1.25rem;box-shadow:none}.focus-list p{color:var(--muted)}.contact-section{margin-bottom:4rem;padding:clamp(2rem,5vw,3rem)}.contact-section h2{max-width:780px;margin-bottom:1.5rem}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:2rem 0 3rem;border-top:1px solid var(--border);color:var(--muted);font-size:.95rem}.site-footer p{margin:0}.footer-links{flex-wrap:wrap;gap:1rem}@media(max-width:720px){body{font-size:17px}.site-nav{align-items:flex-start;flex-direction:column}.nav-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:.6rem 1rem}.nav-action{display:none}.hero-section,.split-section{grid-template-columns:1fr}.hero-section{min-height:auto;padding-top:3.5rem}.tech-grid,.project-grid{grid-template-columns:1fr}.site-footer{align-items:flex-start;flex-direction:column}}.sr-only{border:0;padding:0;margin:0;position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap}
