:root{--bg: #060b15;--bg-elevated: rgba(255, 255, 255, .055);--bg-card: rgba(12, 20, 38, .72);--bg-panel: rgba(22, 32, 54, .6);--border: rgba(255, 255, 255, .11);--border-strong: rgba(255, 255, 255, .22);--text: #edf3ff;--text-muted: #a8bcda;--text-dim: #6a80a0;--accent: #7c8cff;--accent-2: #6ee7ff;--accent-dim: rgba(124, 140, 255, .15);--pass: #4ade80;--pass-dim: rgba(74, 222, 128, .12);--pass-border: rgba(74, 222, 128, .35);--warn: #fbbf24;--warn-dim: rgba(251, 191, 36, .12);--info: #38bdf8;--info-dim: rgba(56, 189, 248, .12);--font-sans: "DM Sans", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--radius: 14px;--radius-sm: 6px;--max-width: 1120px;--shadow-panel: 0 1px 0 rgba(255,255,255,.05) inset, 0 20px 48px rgba(4, 8, 20, .6)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(70% 60% at 15% 8%,rgba(124,140,255,.18),transparent 65%),radial-gradient(50% 40% at 88% 5%,rgba(56,189,248,.16),transparent 60%),radial-gradient(35% 45% at 60% 90%,rgba(74,222,128,.07),transparent 55%),linear-gradient(170deg,#090f22,#0a1228,#0d1530);pointer-events:none;z-index:-1}a{color:var(--accent);text-decoration:none;transition:color .18s,opacity .18s}a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.container{width:min(100% - 2rem,var(--max-width));margin-inline:auto}.section{padding-block:5rem}.section-label{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--info);margin-bottom:.75rem}.section-label:before{content:"//";color:var(--text-dim)}.section-title{font-size:clamp(1.6rem,3.5vw,2.1rem);font-weight:700;margin:0 0 .6rem;letter-spacing:-.025em;line-height:1.2}.section-desc{margin:0 0 2.5rem;color:var(--text-muted);font-size:.9375rem;max-width:560px;line-height:1.7}.panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-panel);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.panel:hover{transform:translateY(-3px);border-color:var(--border-strong);box-shadow:0 28px 60px #040814a6}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 1rem;background:var(--bg-panel);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.05em;color:var(--text-dim)}.panel-body{padding:1.375rem}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.2rem .55rem;border-radius:4px;font-family:var(--font-mono);font-size:.6rem;font-weight:600;letter-spacing:.06em;border:1px solid transparent}.status-badge:before{content:"";width:5px;height:5px;border-radius:50%;flex-shrink:0}.status-pass{color:var(--pass);background:var(--pass-dim);border-color:var(--pass-border)}.status-pass:before{background:var(--pass);box-shadow:0 0 5px var(--pass)}.status-active{color:var(--warn);background:var(--warn-dim);border-color:#f59e0b52}.status-active:before{background:var(--warn);animation:blink 1.6s ease-in-out infinite}.status-verified{color:var(--info);background:var(--info-dim);border-color:#38bdf847}.status-verified:before{background:var(--info)}.status-info{color:var(--warn);background:var(--warn-dim);border-color:#f59e0b52}.status-info:before{background:var(--warn)}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.125rem;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.8125rem;font-weight:500;cursor:pointer;border:1px solid transparent;transition:transform .18s,background .18s,border-color .18s,box-shadow .18s;text-decoration:none}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);color:#05112a;font-weight:600;border-color:#7c8cff59}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px #7c8cff52;opacity:1;color:#05112a}.btn-lg{padding:.8125rem 1.5rem;font-size:.875rem}.btn-outline{background:#ffffff0d;color:var(--text-muted);border-color:var(--border-strong)}.btn-outline:hover{border-color:var(--accent);color:var(--text);background:var(--accent-dim);opacity:1}.mono-label{font-family:var(--font-mono);font-size:.5875rem;font-weight:600;letter-spacing:.09em;color:var(--text-dim);margin-right:.375rem}@media(max-width:640px){.section{padding-block:3.5rem}}.header{position:sticky;top:0;z-index:100;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#060b15c7;border-bottom:1px solid var(--border)}.header-inner{display:flex;align-items:center;gap:1.5rem;height:3.5rem}.logo{font-family:var(--font-mono);font-size:.8125rem;font-weight:600;color:var(--text);letter-spacing:.04em;flex-shrink:0;text-decoration:none}.logo:hover{color:var(--accent);opacity:1}.logo-bracket{color:var(--accent);opacity:.65}.header-status{display:none}.nav{display:flex;gap:.125rem;margin-left:auto}.nav-link{font-family:var(--font-mono);font-size:.75rem;font-weight:500;color:var(--text-muted);padding:.375rem .7rem;border-radius:var(--radius-sm);border:1px solid transparent;transition:color .18s,background .18s,border-color .18s}.nav-link:hover{color:var(--text);background:var(--bg-elevated);border-color:var(--border);opacity:1}.nav-link-active{color:var(--accent)!important;background:var(--accent-dim)!important;border-color:#7c8cff4d!important}.nav-desktop{display:none}.menu-toggle{display:flex;align-items:center;justify-content:center;margin-left:auto;width:2.25rem;height:2.25rem;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-muted);cursor:pointer;transition:border-color .18s,color .18s}.menu-toggle:hover{border-color:var(--border-strong);color:var(--text)}.nav-mobile{display:flex;flex-direction:column;gap:.25rem;padding:.75rem 1rem 1rem;border-top:1px solid var(--border);background:#080d1af7}.nav-mobile-link{font-family:var(--font-mono);font-size:.875rem;color:var(--text-muted);padding:.75rem 1rem;border-radius:var(--radius-sm);border:1px solid transparent;transition:color .18s,background .18s,border-color .18s}.nav-mobile-link:hover,.nav-mobile-link.nav-link-active{color:var(--accent);background:var(--accent-dim);border-color:#7c8cff47;opacity:1}.nav-mobile-resume{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem;padding:.75rem;font-family:var(--font-mono);font-size:.8125rem;font-weight:600;color:#04112b;background:var(--pass);border-radius:var(--radius-sm);transition:opacity .18s}.nav-mobile-resume:hover{opacity:.9;color:#04112b}.skip-link{position:absolute;top:-100px;left:1rem;z-index:200;padding:.5rem 1rem;background:var(--accent);color:#05112a;border-radius:var(--radius-sm);font-weight:600}.skip-link:focus{top:1rem}@media(min-width:769px){.nav-desktop{display:flex;margin-left:auto}.menu-toggle,.nav-mobile{display:none}}@media(min-width:900px){.header-status{display:block}}.hero{padding-block:4rem 5rem;position:relative}.hero:before{content:"";display:block;width:80px;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent-2));border-radius:2px;margin-bottom:2.5rem}.hero-grid{display:grid;grid-template-columns:1fr 420px;gap:2rem;align-items:start}.hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.75rem}.hero-identity{display:flex;gap:1.25rem;align-items:flex-start;margin-bottom:1.5rem}.avatar{flex-shrink:0;width:4.5rem;height:4.5rem;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:1.125rem;font-weight:700;color:var(--accent);background:var(--accent-dim);border:1.5px solid rgba(124,140,255,.4);border-radius:50%;box-shadow:0 0 28px #7c8cff38;transition:box-shadow .3s}.profile-photo{overflow:hidden;flex-shrink:0}.profile-photo img{width:100%;height:100%;object-fit:cover;display:block}.profile-photo-hero img,.profile-photo-contact img{object-position:center 18%}.profile-photo-about img{object-position:center top}.profile-photo-hero{width:4.5rem;height:4.5rem;border-radius:50%;border:1.5px solid rgba(124,140,255,.4);box-shadow:0 0 28px #7c8cff38;transition:box-shadow .3s}.profile-photo-hero:hover{box-shadow:0 0 40px #7c8cff66}.profile-photo-about{width:100%;aspect-ratio:4 / 5;border-radius:var(--radius-sm);border:1px solid var(--border)}.profile-photo-contact{width:5rem;height:5rem;border-radius:50%;border:2px solid rgba(124,140,255,.35);box-shadow:0 0 24px #7c8cff2e}.avatar-fallback{display:flex;align-items:center;justify-content:center}.hero-name{font-size:clamp(2.1rem,5vw,3.1rem);font-weight:700;line-height:1.08;letter-spacing:-.035em;margin:0 0 .6rem;background:linear-gradient(135deg,#edf3ff 30%,#9fb0ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-title{font-size:.9375rem;color:var(--text-muted);margin:0 0 1.25rem;line-height:1.5}.hero-role{color:var(--accent);font-weight:600}.hero-sep{margin-inline:.5rem;color:var(--text-dim)}.hero-value{margin:0 0 1.5rem;font-size:1.0625rem;font-weight:400;line-height:1.75;color:var(--text-muted);max-width:620px;text-wrap:balance}.hero-value-emph{color:var(--text);font-weight:600}.hero-value-break{display:inline}.hero-impact-list{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;flex-direction:column;gap:.5rem}.hero-impact-list li{display:flex;gap:.625rem;font-size:.875rem;color:var(--text-muted);line-height:1.5}.hero-creds{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.cred-chip{display:inline-flex;align-items:center;gap:.375rem;font-family:var(--font-mono);font-size:.6875rem;padding:.3rem .625rem;background:var(--pass-dim);border:1px solid var(--pass-border);border-radius:var(--radius-sm);color:var(--pass)}.hero-location{font-size:.8125rem;color:var(--text-dim);margin:0 0 1rem}.domain-row{display:flex;flex-wrap:wrap;gap:.375rem;margin-bottom:1.75rem}.domain-tag{font-family:var(--font-mono);font-size:.625rem;padding:.2rem .55rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:4px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.hero-actions{display:flex;flex-wrap:wrap;gap:.625rem}.hero-dashboard{position:sticky;top:5rem}.metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:.625rem;margin-bottom:1.375rem}.metric-card{display:grid;grid-template:auto auto auto / 1fr auto;gap:.125rem .5rem;padding:.875rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color .18s}.metric-card:hover{border-color:var(--border-strong)}.metric-id{grid-column:1 / -1;font-family:var(--font-mono);font-size:.5rem;color:var(--text-dim);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.25rem}.metric-value{font-size:1.5rem;font-weight:700;color:var(--pass);letter-spacing:-.025em;line-height:1}.metric-suffix{font-size:.875rem;font-weight:600;opacity:.8}.metric-label{font-size:.6875rem;color:var(--text-muted);align-self:end;padding-top:.25rem}.metric-trend{font-family:var(--font-mono);font-size:.5rem;color:var(--pass);align-self:end}.pipeline-label{font-family:var(--font-mono);font-size:.625rem;color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .875rem}.pipeline-steps{display:flex;align-items:flex-start;justify-content:space-between;gap:.25rem;position:relative;padding-top:.125rem}.pipeline-steps:before{content:"";position:absolute;top:.75rem;left:.75rem;right:.75rem;height:1.5px;background:linear-gradient(90deg,var(--accent),var(--accent-2));opacity:.3;pointer-events:none}.pipeline-step-wrap{flex:1 1 0;min-width:0}.pipeline-step{display:flex;flex-direction:column;align-items:center;gap:.35rem;position:relative;z-index:1}.pipeline-num{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.5rem;border-radius:50%;border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text-dim);transition:background .18s,border-color .18s}.pipeline-step.done .pipeline-num{background:var(--pass-dim);border-color:var(--pass-border);color:var(--pass)}.pipeline-step.active .pipeline-num{background:var(--warn-dim);border-color:#f59e0b61;color:var(--warn);box-shadow:0 0 10px #f59e0b40}.pipeline-name{font-size:.5rem;color:var(--text-dim);text-align:center;line-height:1.25}@media(max-width:1000px){.hero-grid{grid-template-columns:1fr}.hero-dashboard{order:-1;position:static}}@media(max-width:640px){.hero{padding-block:3rem 3.5rem}.hero:before{display:none}.hero-identity{flex-direction:column;align-items:center;text-align:center}.hero-value{text-align:center;margin-inline:auto}.hero-value-break{display:none}.hero-creds,.hero-actions,.domain-row{justify-content:center}}.about-layout{display:grid;grid-template-columns:minmax(240px,280px) 1.2fr 1fr;gap:1.25rem;align-items:start}.about-visual{display:flex;flex-direction:column;gap:1.25rem}.about-portrait-body,.about-work-body{display:flex;flex-direction:column;gap:.875rem}.about-portrait-caption,.about-work-caption{margin:0;font-family:var(--font-mono);font-size:.6875rem;color:var(--text-dim);letter-spacing:.04em;line-height:1.5}.about-work-photo{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border)}.about-body{display:flex;flex-direction:column;gap:1.1rem}.about-text{margin:0;color:var(--text-muted);font-size:.9375rem;line-height:1.75}.coverage-panel{display:flex;flex-direction:column;gap:1.25rem}.coverage-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.625rem}.coverage-list li{display:flex;align-items:flex-start;gap:.625rem;font-size:.875rem;color:var(--text-muted)}.coverage-check{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;flex-shrink:0;margin-top:.05rem;background:var(--pass-dim);border:1px solid var(--pass-border);border-radius:4px;color:var(--pass)}@media(max-width:1024px){.about-layout{grid-template-columns:1fr 1fr}.about-visual{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}}@media(max-width:768px){.about-layout,.about-visual{grid-template-columns:1fr}}.projects-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.125rem}.project-body{display:flex;flex-direction:column;gap:.875rem}.projects-grid>.panel{position:relative}.projects-grid>.panel:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:linear-gradient(90deg,var(--accent),var(--accent-2));opacity:0;transition:opacity .22s;border-radius:0 0 var(--radius) var(--radius)}.projects-grid>.panel:hover:after{opacity:1}.project-name{margin:0;font-size:1.0625rem;font-weight:600;line-height:1.3}.project-role{margin:0;font-size:.8125rem;color:var(--info);font-family:var(--font-mono)}.project-summary{margin:0;font-size:.875rem;color:var(--text-muted);line-height:1.65}.project-outcomes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.project-outcomes li{display:flex;gap:.625rem;font-size:.8125rem;color:var(--text-muted);line-height:1.5}.project-tags{display:flex;flex-wrap:wrap;gap:.375rem;padding-top:.25rem}.project-tag{font-family:var(--font-mono);font-size:.5875rem;padding:.2rem .5rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:4px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.result-icon{display:flex;align-items:center;justify-content:center;width:1.125rem;height:1.125rem;flex-shrink:0;margin-top:.15rem;border-radius:3px}.result-icon.pass{background:var(--pass-dim);color:var(--pass)}.timeline{position:relative;display:flex;flex-direction:column;gap:1.125rem;padding-left:1.375rem}.timeline:before{content:"";position:absolute;left:.5rem;top:.5rem;bottom:.5rem;width:1.5px;background:linear-gradient(180deg,rgba(124,140,255,.55),rgba(110,231,255,.2),transparent)}.timeline-item{display:grid;grid-template-columns:80px 1fr 130px;gap:1.125rem;align-items:start}.timeline-rail{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:.375rem;padding-top:.375rem}.timeline-dot{position:relative;left:-1.375rem;width:.8rem;height:.8rem;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-2));box-shadow:0 0 0 3px #7c8cff2e}.timeline-year{font-family:var(--font-mono);font-size:.5875rem;color:var(--text-dim);letter-spacing:.06em;padding-left:.25rem}.timeline-card{overflow:hidden}.test-role{font-size:1rem;font-weight:600;margin:0 0 .25rem}.test-company{margin:0 0 .625rem;font-size:.875rem;color:var(--text-muted)}.test-loc{opacity:.7}.test-clients{margin:0 0 .875rem;font-size:.8125rem;color:var(--accent)}.test-results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.test-results li{display:flex;gap:.625rem;font-size:.875rem;color:var(--text-muted);line-height:1.5}.test-period{font-family:var(--font-mono);font-size:.6875rem;color:var(--text-dim);line-height:1.4;padding-top:1rem}.test-status{display:flex;justify-content:flex-end}.earlier-wrap{margin-top:1.125rem}.earlier-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.875rem 1.25rem;font-family:var(--font-mono);font-size:.8125rem;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .18s,color .18s,background .18s}.earlier-toggle:hover{border-color:var(--accent);color:var(--text);background:var(--accent-dim)}.earlier-chevron{font-size:.75rem;color:var(--text-dim)}.earlier-table{margin-top:.75rem}.earlier-table .test-table-head{display:none}.test-table-head{display:grid;grid-template-columns:72px 1fr 120px 90px;gap:1rem;padding:.625rem 1rem;font-family:var(--font-mono);font-size:.625rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);background:var(--bg-panel);border-bottom:1px solid var(--border)}.test-table-row{display:grid;grid-template-columns:72px 1fr 120px 90px;gap:1rem;padding:1.25rem 1rem;border-bottom:1px solid var(--border);align-items:start}.test-table-row:last-child{border-bottom:none}.test-id{font-family:var(--font-mono);font-size:.6875rem;color:var(--info);padding-top:.125rem}@media(max-width:768px){.timeline{padding-left:0}.timeline:before{display:none}.timeline-item{grid-template-columns:1fr}.timeline-rail{flex-direction:row;align-items:center;gap:.5rem;padding-top:0}.timeline-dot{left:0}.test-period{padding-top:0}.test-table-head{display:none}.test-table-row{grid-template-columns:1fr;gap:.5rem;padding:1rem}.test-status{justify-content:flex-start}}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.125rem}.skill-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.skill-item{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.875rem;color:var(--text-muted);transition:border-color .18s,color .18s}.skill-item:hover{border-color:var(--border-strong);color:var(--text)}.skill-check{display:flex;color:var(--pass);flex-shrink:0}.credentials-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:1.125rem;margin-bottom:1.125rem}.edu-id{margin:0 0 .5rem}.edu-degree{font-size:1rem;font-weight:600;margin:0 0 .375rem}.edu-school{margin:0 0 .25rem;color:var(--text-muted);font-size:.9375rem}.edu-meta{margin:0;font-size:.8125rem;color:var(--text-dim)}.certs-body{display:flex;flex-direction:column;gap:.5rem;padding:.75rem!important}.cert-row{display:grid;grid-template-columns:56px 1fr auto auto;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color .18s}.cert-row:hover{border-color:var(--border-strong)}.cert-id{font-family:var(--font-mono);font-size:.5875rem;color:var(--info)}.cert-name{margin:0 0 .125rem;font-size:.875rem;font-weight:500}.cert-issuer{margin:0;font-size:.75rem;color:var(--text-dim)}.cert-link{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:var(--radius-sm);background:var(--accent-dim);color:var(--accent);border:1px solid rgba(124,140,255,.2);transition:background .18s,border-color .18s}.cert-link:hover{background:#7c8cff40;border-color:#7c8cff66;opacity:1}.sub-panel{margin-bottom:2.25rem}.awards-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.625rem}.awards-list li{display:flex;align-items:center;gap:.625rem;font-size:.875rem;color:var(--text-muted)}.awards-list svg{color:var(--pass);flex-shrink:0}.reviews-block{margin-top:2.5rem}.reviews-title{font-size:1.0625rem;font-weight:600;margin:0 0 1.25rem;color:var(--text)}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.125rem}.review-header-left{display:flex;align-items:center;gap:.5rem}.review-avatar{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;font-family:var(--font-mono);font-size:.5rem;font-weight:700;color:var(--accent);background:var(--accent-dim);border:1px solid rgba(124,140,255,.38);border-radius:50%;flex-shrink:0}.review-profile{margin:0 0 .875rem;font-size:.8125rem;font-weight:500;color:var(--text-muted)}.review-profile a{color:var(--text-muted);border-bottom:1px solid var(--border-strong);transition:color .18s,border-color .18s}.review-profile a:hover{color:var(--accent);border-color:var(--accent);opacity:1}.review-text{margin:0;font-size:.875rem;color:var(--text-muted);line-height:1.72;font-style:italic;border-left:2px solid var(--accent-dim);padding-left:.875rem}@media(max-width:768px){.credentials-layout{grid-template-columns:1fr}.cert-row{grid-template-columns:1fr;gap:.5rem}.cert-id{display:none}}.section-alt{background:#0e142480;border-block:1px solid var(--border)}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;align-items:start}.contact-intro{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.contact-title,.contact-desc{margin:0}.contact-availability{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:var(--font-mono);font-size:.6875rem;color:var(--pass);background:var(--pass-dim);border:1px solid var(--pass-border);border-radius:999px;letter-spacing:.04em}.contact-availability:before{content:"";width:6px;height:6px;background:var(--pass);border-radius:50%;animation:blink 1.6s ease-in-out infinite;flex-shrink:0}.contact-note{max-width:none;font-size:.875rem;color:var(--text-dim);margin:0;line-height:1.65}.contact-panel{max-width:none;margin-top:0}.contact-grid{display:flex;flex-direction:column;gap:.5rem;padding:.75rem!important}.contact-row{display:grid;grid-template-columns:80px 1fr auto;justify-items:start;align-items:center;gap:1rem;padding:1rem 1.125rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);text-align:left;transition:border-color .18s,background .18s}.contact-row:hover{border-color:var(--accent);background:var(--accent-dim);opacity:1}.contact-key{font-family:var(--font-mono);font-size:.5875rem;color:var(--text-dim);letter-spacing:.09em}.contact-val{font-size:.875rem;color:var(--text-muted)}.contact-action{font-family:var(--font-mono);font-size:.6875rem;color:var(--accent);justify-self:end}@media(max-width:900px){.contact-layout{grid-template-columns:1fr}}@media(max-width:640px){.contact-row{grid-template-columns:1fr;gap:.25rem}.contact-action{display:none}.contact-intro{align-items:center;text-align:center}}.footer{padding:2rem 0;border-top:1px solid var(--border)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:1.25rem}.footer-left{display:flex;flex-direction:column;gap:.25rem}.footer-left p{margin:0;font-size:.8125rem;color:var(--text-dim)}.footer-right{display:flex;align-items:center;gap:1.25rem}.footer-link,.footer-resume{font-family:var(--font-mono);font-size:.75rem;color:var(--text-dim);transition:color .18s}.footer-link:hover,.footer-resume:hover{color:var(--accent);opacity:1}.footer-backtop{font-family:var(--font-mono);font-size:.75rem;color:var(--text-dim);display:flex;align-items:center;gap:.375rem;transition:color .18s;border:none;background:none;cursor:pointer;padding:0}.footer-backtop:hover{color:var(--accent)}@media(max-width:640px){.footer-inner{flex-direction:column;text-align:center}.footer-right{flex-direction:column;gap:.75rem}main{padding-bottom:5rem}}.mobile-bar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:90;padding:.5rem .75rem calc(.5rem + env(safe-area-inset-bottom));background:#060b15e0;border-top:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);gap:.5rem}@media(max-width:768px){.mobile-bar{display:grid;grid-template-columns:1fr 1.2fr 1fr}}.mobile-bar-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.5rem;font-family:var(--font-mono);font-size:.625rem;font-weight:500;color:var(--text-muted);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);transition:color .18s,border-color .18s}.mobile-bar-btn:hover{color:var(--text);border-color:var(--border-strong);opacity:1}.mobile-bar-primary{color:#04112b;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);border-color:#7c8cff61;font-weight:600}.mobile-bar-primary:hover{color:#04112b}
