@font-face{font-family:ResumeSans;src:local("Noto Sans"),local("DejaVu Sans");font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:#070809;color:#d7ddd4;font-family:ResumeSans,"Noto Sans",sans-serif;letter-spacing:-.012em}.scene{position:fixed;inset:0;z-index:0;overflow:hidden;background:radial-gradient(circle at top center,rgba(180,220,113,.08),transparent 28%),linear-gradient(180deg,#060708,#090a0b 48%,#0d0f10)}.scene canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.scene #sceneBG{z-index:0}.scene #sceneA{z-index:1}.scene #sceneB,.scene #loadCta,.scene #uiLoad,.scene #pct,.scene #status,.scene #statA{opacity:0;visibility:hidden;pointer-events:none}.frost{position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,rgba(5,6,7,.34),rgba(7,8,9,.48)),radial-gradient(circle at 50% 18%,rgba(255,255,255,.035),transparent 34%);backdrop-filter:blur(10px) saturate(118%) brightness(.88)}.grain{position:absolute;z-index:3;inset:0;opacity:.18;background-image:radial-gradient(rgba(255,255,255,.14) .6px,transparent .8px);background-size:7px 7px;mix-blend-mode:soft-light}.nav,.shell{width:min(1180px,calc(100% - 48px));margin:auto}.shell{position:relative;z-index:5}.nav{position:fixed;z-index:20;top:14px;left:50%;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;width:min(1180px,calc(100% - 48px));transform:translateX(-50%);color:rgba(215,221,212,.52);font-size:11px;text-transform:uppercase;letter-spacing:.18em}.nav-name{color:rgba(215,221,212,.78);font-size:10px;letter-spacing:.16em;transition:color .2s}.nav-name:hover{color:#b4dc71}.nav-links{display:flex;gap:30px}.nav{border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(8,10,10,.58);box-shadow:0 14px 42px rgba(0,0,0,.2);backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%)}.nav a{transition:color .2s}.nav-links a{color:rgba(215,221,212,.52)}.nav-links a:hover,.pdf-link{color:#b4dc71}.pdf-link span{font-size:15px;margin-left:5px}.hero{display:flex;justify-content:space-between;gap:40px;padding:150px 0 84px;border-bottom:1px solid rgba(255,255,255,.07)}.eyebrow{margin:0 0 22px;color:#b4dc71;font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.eyebrow b{color:rgba(215,221,212,.32);margin:0 7px}h1{max-width:720px;margin:0;color:rgba(229,233,226,.94);font-size:clamp(3.5rem,9vw,7.8rem);font-weight:700;letter-spacing:-.085em;line-height:.83;text-transform:uppercase}h1 em{color:#b4dc71;font-style:normal}.role{margin:28px 0 0;color:rgba(215,221,212,.6);font-size:15px}.role i{color:#b4dc71;margin:0 8px;font-style:normal}.intro{max-width:650px;margin:28px 0 0;color:rgba(215,221,212,.7);font-size:15px;line-height:1.65}.availability{align-self:flex-end;display:flex;gap:11px;max-width:175px;padding-bottom:4px;color:rgba(215,221,212,.48);font-size:11px;line-height:1.5;text-transform:uppercase;letter-spacing:.11em}.availability span{flex:0 0 auto;width:8px;height:8px;margin-top:3px;border-radius:50%;background:#b4dc71;box-shadow:0 0 18px rgba(180,220,113,.8)}.layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,.8fr)}.main-column{padding-right:70px}.side-column{padding-left:44px;border-left:1px solid rgba(255,255,255,.07)}.contacts a{display:block;width:max-content;max-width:100%;margin:0 0 12px;color:#b4dc71;font-size:13px;overflow-wrap:anywhere}.contacts a:hover{text-decoration:underline;text-underline-offset:4px}section{padding:38px 0 36px;border-bottom:1px solid rgba(255,255,255,.07)}h2{display:flex;align-items:center;gap:14px;margin:0 0 22px;color:rgba(225,230,223,.88);font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}h2 b{width:25px;height:2px;background:#b4dc71;box-shadow:0 0 13px rgba(180,220,113,.36)}.skill+.skill{margin-top:27px}.skill strong{display:block;margin-bottom:12px;color:rgba(215,221,212,.54);font-size:11px;text-transform:uppercase;letter-spacing:.13em}.tags,.strengths{display:flex;flex-wrap:wrap;gap:7px}.tags span{padding:8px 11px;border:1px solid rgba(180,220,113,.17);border-radius:2px;background:rgba(180,220,113,.055);color:#b4dc71;font-size:12px}ul{padding:0;margin:0;list-style:none}li{position:relative;padding-left:18px;margin:0 0 12px;color:rgba(215,221,212,.68);font-size:14px;line-height:1.6}li:before{content:"";position:absolute;top:.72em;left:0;width:5px;height:5px;border-radius:50%;background:#b4dc71}li b{color:rgba(229,233,226,.9)}.note+.note{margin-top:28px}.note strong{display:block;margin-bottom:8px;color:#b4dc71;font-size:13px;letter-spacing:.13em;text-transform:uppercase}.note p,.muted{margin:0;color:rgba(215,221,212,.59);font-size:13px;line-height:1.65}.level{color:#b4dc71;font-size:34px;font-weight:700;letter-spacing:-.06em}.proof{display:block;width:100%;max-width:170px;margin-top:17px;border:1px solid rgba(255,255,255,.12);opacity:.84}.strengths{gap:6px}.strengths span{padding:8px 11px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.025);color:rgba(215,221,212,.64);font-size:12px}.projects{display:grid;gap:12px}.projects article{padding:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.015));transition:.2s}.projects article:hover{transform:translateY(-3px);border-color:rgba(180,220,113,.34)}.projects article div{display:flex;justify-content:space-between;margin-bottom:17px;color:rgba(215,221,212,.35);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.projects article a{color:#b4dc71}.projects h3{margin:0 0 7px;color:rgba(229,233,226,.92);font-size:21px}.projects p{margin:0;color:rgba(215,221,212,.58);font-size:13px;line-height:1.55}footer{display:flex;justify-content:space-between;padding:24px 0 30px;color:rgba(215,221,212,.35);font-size:10px;letter-spacing:.18em}@media(max-width:720px){.nav{top:9px;width:calc(100% - 24px);padding:12px 13px}.nav-name{font-size:8px;letter-spacing:.1em}.nav-links{display:none}.shell{width:calc(100% - 32px)}.hero{display:block;padding:119px 0 54px}.availability{margin-top:34px}.layout{display:block}.main-column{padding-right:0}.side-column{padding-left:0;border-left:0}section{padding:31px 0}h1{font-size:clamp(3.2rem,18vw,6rem)}.role{line-height:1.7}.intro{font-size:14px}footer{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scene canvas{animation:none}.projects article{transition:none}}

.proof-button{display:block;padding:0;border:0;background:none;cursor:zoom-in;text-align:left}.proof-button:focus-visible{outline:2px solid #b4dc71;outline-offset:5px}.lightbox{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:24px;background:rgba(3,4,4,.78);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;backdrop-filter:blur(14px)}.lightbox.is-open{opacity:1;visibility:visible;pointer-events:auto}.lightbox-panel{display:flex;flex-direction:column;width:min(920px,100%);height:min(92vh,920px);overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(10,12,12,.88);box-shadow:0 24px 80px rgba(0,0,0,.5)}.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border-bottom:1px solid rgba(255,255,255,.08);color:rgba(215,221,212,.58);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.lightbox-toolbar>div{display:flex;gap:6px}.lightbox-toolbar button{min-width:34px;height:30px;padding:0 8px;border:1px solid rgba(255,255,255,.1);border-radius:7px;background:rgba(255,255,255,.04);color:#b4dc71;cursor:pointer}.lightbox-toolbar button:hover{border-color:rgba(180,220,113,.42);background:rgba(180,220,113,.09)}.lightbox-toolbar button:last-child{font-size:20px;line-height:1}.lightbox-stage{display:grid;place-items:center;min-height:0;flex:1;overflow:auto;padding:24px;cursor:zoom-out}.lightbox-stage img{max-width:100%;max-height:100%;transform-origin:center center;transition:transform .15s ease;box-shadow:0 10px 50px rgba(0,0,0,.35)}body.lightbox-open{overflow:hidden}@media(max-width:600px){.lightbox{padding:10px}.lightbox-panel{height:94vh;border-radius:12px}.lightbox-toolbar{align-items:flex-start;font-size:9px}.lightbox-toolbar>div{flex-shrink:0}.lightbox-stage{padding:12px}}

@media (max-width: 720px) {
  body { overflow-x: hidden; }
  .nav { gap: 10px; padding: 10px 12px; }
  .nav-name { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .nav-links { display: flex; flex: 0 0 auto; gap: 12px; }
  .nav-links a { font-size: 9px; letter-spacing: .08em; }
  .pdf-link { flex: 0 0 auto; font-size: 9px; letter-spacing: .08em; }
  .hero { padding-top: 112px; }
  h1 { max-width: 100%; font-size: clamp(2.45rem, 14vw, 5rem); line-height: .88; overflow-wrap: normal; word-break: keep-all; }
  .role { max-width: 32rem; font-size: 13px; line-height: 1.55; }
  .intro { max-width: none; font-size: 14px; line-height: 1.6; }
  .availability { max-width: none; font-size: 10px; }
  .layout { display: block; }
  .main-column, .side-column { padding: 0; }
  .side-column { border-left: 0; }
  section { padding: 28px 0; }
  h2 { font-size: 11px; line-height: 1.35; letter-spacing: .14em; }
  .tags { gap: 6px; }
  .tags span { max-width: 100%; font-size: 11px; }
  .projects article { padding: 18px; }
  .projects h3 { font-size: 18px; }
  .proof { width: min(100%, 260px); height: auto; }
  footer { flex-direction: column; gap: 10px; font-size: 8px; line-height: 1.4; }
}

@media (max-width: 420px) {
  .nav { width: calc(100% - 16px); }
  .nav-name { font-size: 7px; letter-spacing: .08em; }
  .nav-links { gap: 8px; }
  .nav-links a { font-size: 8px; }
  .pdf-link { font-size: 8px; }
  .hero { padding-top: 105px; }
  h1 { font-size: clamp(2.25rem, 13vw, 4rem); }
  .eyebrow { font-size: 9px; letter-spacing: .14em; line-height: 1.5; }
  .role, .intro { font-size: 13px; }
  .lightbox-toolbar { gap: 8px; padding: 10px; }
  .lightbox-toolbar > span { max-width: 42%; line-height: 1.35; }
  .lightbox-toolbar button { min-width: 29px; height: 29px; padding: 0 5px; }
}

@media (max-width: 720px) {
  html[lang="en"] h1 { font-size: clamp(2.2rem, 12.5vw, 4.5rem); letter-spacing: -.075em; }
}
