:root{
  --bg:#161310;
  --surface:rgba(255,247,235,.035);
  --surface-strong:#1e1a15;
  --line:rgba(244,238,228,.09);
  --brass:#d9a441;
  --brass-bright:#eebb58;
  --brass-tint:rgba(217,164,65,.10);
  --brass-line:rgba(217,164,65,.35);
  --paper:#f4efe6;
  --muted:#a89f90;
  --display:"Archivo",sans-serif;
  --body:"IBM Plex Sans",sans-serif;
  --mono:"IBM Plex Mono",monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--paper);
  font-family:var(--body);
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(900px 500px at 80% -10%, rgba(217,164,65,.07), transparent 60%),
    radial-gradient(700px 600px at -10% 30%, rgba(217,164,65,.04), transparent 55%);
}
::selection{background:var(--brass);color:#161310}

.wrap{max-width:1240px;margin:0 auto;padding:0 24px;position:relative;z-index:1}

/* ---------- NAV ---------- */
nav{
  position:fixed;top:0;left:0;right:0;z-index:50;
  background:rgba(22,19,16,.82);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.nav-inner{max-width:1240px;margin:0 auto;padding:0 24px;height:66px;display:flex;align-items:center;justify-content:space-between}
.logo{font-family:var(--display);font-weight:800;font-size:1.35rem;letter-spacing:-.02em;color:var(--paper);text-decoration:none}
.logo span{color:var(--brass)}
.nav-links{display:flex;gap:32px;align-items:center}
.nav-links a{font-family:var(--mono);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-decoration:none;transition:color .2s}
.nav-links a:hover,.nav-links a:focus-visible{color:var(--brass)}
.menu-btn{display:none;background:none;border:0;color:var(--paper);cursor:pointer;padding:8px}
.mobile-menu{display:none}
@media(max-width:760px){
  .nav-links{display:none}
  .menu-btn{display:block}
  .mobile-menu{
    display:flex;flex-direction:column;gap:8px;
    position:fixed;top:66px;left:0;right:0;z-index:49;
    background:rgba(22,19,16,.97);backdrop-filter:blur(16px);
    border-bottom:1px solid var(--line);
    padding:20px 24px 28px;
  }
  .mobile-menu a{
    font-family:var(--body);font-size:1.35rem;font-weight:500;color:var(--paper);
    text-decoration:none;padding:10px 0;border-bottom:1px solid rgba(244,238,228,.06);
  }
  .mobile-menu a:last-child{border-bottom:0}
  .mobile-menu a:active{color:var(--brass)}
}

/* ---------- SHARED ---------- */
section{padding:96px 0;scroll-margin-top:66px}
.eyebrow{
  display:flex;align-items:center;gap:14px;
  font-family:var(--mono);font-size:.8rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--brass);margin-bottom:18px;
}
.eyebrow::before{content:"";width:44px;height:1px;background:var(--brass)}
h2{font-family:var(--display);font-weight:700;font-size:clamp(2rem,5.5vw,2.9rem);letter-spacing:-.02em;line-height:1.12;margin-bottom:14px}
.section-sub{color:var(--muted);max-width:620px;margin-bottom:48px}
.glass{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:14px;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  transition:border-color .3s, transform .3s;
}
.glass:hover{border-color:var(--brass-line)}

/* metric emphasis */
.metric{color:var(--brass-bright);font-weight:600}

/* ---------- STATS ---------- */
#stats{padding:0 0 64px}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:980px){.stat-grid{grid-template-columns:repeat(2,1fr)}}
.stat{padding:24px}

.stat .num{font-family:var(--display);font-weight:800;font-size:2.25rem;letter-spacing:-.02em;line-height:1;margin-bottom:10px}
.stat .lbl{font-family:var(--body);font-size:.93rem;letter-spacing:0;color:var(--paper);margin-bottom:8px}
.stat .desc{color:var(--muted);font-size:.85rem}

/* ---------- ABOUT ---------- */
#about{border-top:1px solid var(--line);background:rgba(255,247,235,.012)}
.about-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:48px;align-items:start}
@media(max-width:860px){.about-grid{grid-template-columns:1fr}}
.about-copy p{color:var(--muted);font-size:1.06rem;margin-bottom:20px}
.about-copy p strong{color:var(--paper);font-weight:600}
.snapshot{padding:30px 28px;position:sticky;top:90px}
.snapshot h3{font-family:var(--display);font-weight:700;font-size:1.05rem;letter-spacing:.01em;margin-bottom:20px;display:flex;align-items:center;gap:10px}
.snapshot h3 svg{color:var(--brass)}
.snap-row{padding:13px 0;border-bottom:1px solid rgba(244,238,228,.06)}
.snap-row:last-child{border-bottom:0;padding-bottom:0}
.snap-row .k{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);margin-bottom:4px}
.snap-row .v{font-size:.95rem;color:var(--paper)}

/* ---------- EXPERIENCE ---------- */
.xp-list{display:grid;gap:26px;position:relative}
.xp{padding:34px 32px;position:relative}
@media(max-width:560px){.xp{padding:28px 22px}}
.xp-head{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;justify-content:space-between;margin-bottom:14px}
.xp h3{font-family:var(--display);font-weight:700;font-size:clamp(1.25rem,3.4vw,1.5rem);letter-spacing:-.01em;line-height:1.25;max-width:560px}
.pill{
  display:inline-flex;align-items:center;gap:8px;white-space:nowrap;
  font-family:var(--mono);font-size:.78rem;letter-spacing:.06em;color:var(--muted);
  background:rgba(244,238,228,.05);border:1px solid rgba(244,238,228,.07);
  padding:8px 14px;border-radius:999px;
}
.pill svg{color:var(--brass)}
.xp-org{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;color:var(--muted);font-size:.95rem;margin-bottom:6px}
.xp-org svg{color:var(--brass);flex:none}
.xp-org .org-name{color:var(--paper);font-weight:600}
.xp-roles{font-family:var(--mono);font-size:.78rem;letter-spacing:.06em;color:var(--brass);margin-bottom:16px}
.xp-context{color:var(--muted);font-style:italic;font-size:.97rem;margin-bottom:18px;max-width:640px}
.xp ul{list-style:none;display:grid;gap:13px}
.xp li{position:relative;padding-left:24px;color:var(--muted);font-size:.98rem}
.xp li::before{
  content:"";position:absolute;left:2px;top:.55em;width:7px;height:7px;
  background:var(--brass);transform:rotate(45deg);opacity:.85;
}
.xp li strong{color:var(--paper);font-weight:600}

/* ---------- HIGHLIGHTS ---------- */
#highlights{border-top:1px solid var(--line);background:rgba(255,247,235,.012)}
.hl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:72px}
@media(max-width:980px){.hl-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.hl-grid{grid-template-columns:1fr}}
.hl{padding:28px 26px}
.hl h3{font-family:var(--display);font-weight:700;font-size:1.18rem;letter-spacing:-.01em;line-height:1.3;margin-bottom:14px}
.hl ul{list-style:none;display:grid;gap:11px}
.hl li{position:relative;padding-left:20px;color:var(--muted);font-size:.93rem}
.hl li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--brass);opacity:.85}

/* competencies */
.comp-head{font-family:var(--display);font-weight:700;font-size:1.5rem;letter-spacing:-.01em;margin-bottom:24px}
.comp-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:640px){.comp-grid{grid-template-columns:1fr}}
.comp{
  display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:10px;
  background:var(--surface);border:1px solid var(--line);
  font-size:.93rem;color:var(--paper);transition:border-color .3s;
}
.comp:hover{border-color:var(--brass-line)}
.comp svg{color:var(--brass);flex:none}

/* ---------- CREDENTIALS ---------- */
.cred-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:860px){.cred-grid{grid-template-columns:1fr}}
.cred{padding:32px 30px}
.cred h3{font-family:var(--display);font-weight:700;font-size:1.3rem;display:flex;align-items:center;gap:12px;margin-bottom:26px}
.cred h3 svg{color:var(--brass)}
.edu-item{position:relative;padding:0 0 26px 26px;border-left:2px solid rgba(217,164,65,.22);margin-left:5px}
.edu-item:last-child{padding-bottom:0}
.edu-item::before{
  content:"";position:absolute;left:-7px;top:4px;width:12px;height:12px;border-radius:50%;
  background:var(--brass);border:3px solid var(--bg);
}
.edu-item .school{font-weight:600;font-size:1.02rem;margin-bottom:4px}
.edu-item .degree{color:var(--brass);font-size:.95rem;margin-bottom:3px}
.edu-item .meta{font-family:var(--mono);font-size:.78rem;color:var(--muted)}
.cert-row{display:flex;align-items:baseline;gap:16px;padding:13px 0;border-bottom:1px solid rgba(244,238,228,.06)}
.cert-row:last-child{border-bottom:0}
.cert-row .n{font-family:var(--mono);font-size:.8rem;color:var(--brass);flex:none}
.cert-row .name{color:var(--paper);font-size:.95rem;flex:1}
.cert-row .org{font-family:var(--mono);font-size:.74rem;letter-spacing:.05em;color:var(--brass);text-align:right;flex:none}

/* ---------- CONTACT ---------- */
#contact{border-top:1px solid var(--line);text-align:left;padding:110px 0}
#contact .eyebrow{justify-content:flex-start}
#contact h2{margin-bottom:16px}
#contact p{color:var(--muted);max-width:520px;margin:0 0 26px}

footer{border-top:1px solid var(--line);padding:30px 0}
.foot{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.foot .who{font-family:var(--mono);font-size:.74rem;letter-spacing:.1em;color:var(--muted)}
.foot .who span{color:var(--brass)}
/* Portfolio layout and accessible interaction */
[hidden]{display:none!important}
a{color:var(--paper);text-underline-offset:4px}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--brass-bright);outline-offset:5px}
.skip-link{position:fixed;top:8px;left:8px;z-index:200;background:var(--paper);color:var(--bg);padding:12px;transform:translateY(-200%)}
.skip-link:focus{transform:none}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#home{padding:140px 0 64px}
.hero-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:70px;align-items:center}
h1{font-family:var(--display);font-size:clamp(3rem,6vw,5.1rem);line-height:1.03;letter-spacing:-.045em;margin-bottom:22px;max-width:600px}
.hero-creds{font-family:var(--mono);color:var(--brass);font-size:.8rem;letter-spacing:.18em;margin-bottom:28px}
.hero-role{font-size:clamp(1.25rem,2.4vw,1.6rem);color:var(--brass);font-weight:600;margin-bottom:18px}
.hero-tag{font-size:1.08rem;color:var(--muted);max-width:530px;margin-bottom:32px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.btn{font-family:var(--body);font-size:.95rem;font-weight:600;letter-spacing:0;padding:14px 20px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;gap:16px;text-decoration:none;border:1px solid transparent;transition:background .2s}
.btn-solid{background:var(--brass);color:#161310}.btn-solid:hover{background:var(--brass-bright)}
.btn-ghost{border-color:var(--brass-line);color:var(--paper)}.btn-ghost:hover{background:var(--brass-tint)}
.bio-link{font-size:.92rem;width:100%;margin-top:12px;color:var(--muted)}
.hero-portrait{width:100%;aspect-ratio:1;overflow:hidden;border-radius:50% 50% 8px 8px;border:1px solid var(--brass-line);background:var(--surface-strong)}
.hero-portrait img{width:100%;height:100%;object-fit:cover;display:block}
.portrait-caption{font-family:var(--mono);font-size:.67rem;letter-spacing:.12em;text-align:center;color:var(--brass);margin-top:18px}
#stories{border-top:1px solid var(--line);background:#1b1712}
.section-heading{display:flex;gap:45px;justify-content:space-between;align-items:end;margin-bottom:40px}.section-heading p{max-width:290px;color:var(--muted)}
.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.story{border:1px solid var(--brass-line);padding:30px 26px;border-radius:10px;display:flex;flex-direction:column;background:var(--surface)}
.story-index{font-family:var(--mono);color:var(--brass);font-size:.72rem;letter-spacing:.06em;margin-bottom:24px}.story h3{font-family:var(--display);font-size:1.45rem;line-height:1.25;margin-bottom:18px}.story p{color:var(--muted);font-size:.95rem}.story-result{margin-top:auto;padding-top:32px;display:flex;flex-direction:column}.story-result strong{font:700 2.9rem var(--display);color:var(--brass-bright)}.story-result span{font-size:.95rem}.story .story-detail{font-size:.83rem;margin:10px 0 24px}.story a{font-size:.9rem;border-top:1px solid var(--line);padding-top:20px;text-decoration:none}
details{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}summary{cursor:pointer;color:var(--brass);font-weight:500}details[open] summary{margin-bottom:20px}
#contact .contact-note{margin-top:32px;font-size:.95rem}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:80px}.contact-email{font-size:1.15rem;color:var(--brass)}
form label{display:block;font-weight:500;font-size:.92rem;margin-bottom:18px}input,select,textarea{display:block;width:100%;margin-top:8px;background:#211c16;color:var(--paper);border:1px solid #62533c;border-radius:6px;padding:12px;min-height:46px}textarea{resize:vertical}select{color-scheme:dark}.optional{font-weight:400;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}#contact .form-note{font-size:.8rem;line-height:1.6;margin-bottom:22px}.foot a{font-size:.85rem}.foot{padding-bottom:64px}
button:disabled{opacity:.55;cursor:wait}
.document{max-width:800px;margin:0 auto;padding:125px 24px 80px}.document h1{font-size:3rem}.document h2{font-size:1.6rem;margin:30px 0 14px}.document p{margin-bottom:20px;color:var(--muted)}.document .actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.document li{margin:10px 0 10px 22px}.document .bio-role{color:var(--brass)}
@media(max-width:1000px){.hero-grid{gap:35px}.nav-links{gap:18px}.nav-links a{font-size:.7rem}.contact-grid{gap:40px}.story{padding:24px 20px}}
@media(max-width:760px){#home{padding:108px 0 40px}.hero-grid{grid-template-columns:1fr;gap:36px}.hero-visual{max-width:280px;justify-self:center}.hero-copy h1{max-width:550px;font-size:3.55rem}.hero-tag{font-size:1rem}.hero-creds{font-size:.72rem}.portrait-caption{font-size:.58rem}.hero-cta .btn{flex:1;white-space:nowrap}.bio-link{text-align:center}.section-heading{display:block}.section-heading p{max-width:none;margin-top:20px}.story-grid{grid-template-columns:1fr}.story-result{padding-top:24px}.contact-grid{grid-template-columns:1fr;gap:40px}section{padding:64px 0}.stat-grid{grid-template-columns:1fr 1fr;gap:12px}.stat{padding:20px 16px}.stat .num{font-size:1.9rem}.stat .desc{font-size:.8rem}.stat .lbl{font-size:.85rem}.form-row{grid-template-columns:1fr;gap:0}.cert-row{flex-wrap:wrap}.cert-row .org{margin-left:28px}.document h1{font-size:2.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{body{background:white;color:black}nav,.actions,.concierge-launch,dialog,.skip-link{display:none!important}.document{padding:0;max-width:none}.document p,.document .bio-role{color:black}a{color:black}body::before{display:none}}
