:root{--bg:#07110f;--surface:#0b1714;--surface-2:#10201c;--text:#eef7f1;--muted:#94a9a0;--lime:#b9f227;--mint:#70e1b1;--line:rgba(181,220,200,.14);--mono:"Space Mono",monospace;--sans:"DM Sans",sans-serif}
.hero>*,.pipeline-visual,.hero-copy{min-width:0}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.65;-webkit-font-smoothing:antialiased}body::before{content:"";position:fixed;inset:0;background:radial-gradient(50rem 40rem at 80% 5%,rgba(112,225,177,.08),transparent 65%),radial-gradient(45rem 35rem at 5% 35%,rgba(185,242,39,.035),transparent 60%);pointer-events:none;z-index:-2}.page-grid{position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 70%);pointer-events:none;z-index:-1}.skip-link{position:fixed;top:.7rem;left:1rem;transform:translateY(-160%);background:var(--lime);color:#07110f;padding:.5rem .9rem;border-radius:4px;z-index:20;font-weight:700}.skip-link:focus{transform:none}.site-header{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;padding:1rem max(4vw,1.25rem);border-bottom:1px solid var(--line);background:rgba(7,17,15,.82);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:.75rem;color:var(--text);text-decoration:none;font:700 .78rem var(--mono);letter-spacing:.06em;text-transform:uppercase}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--lime);color:var(--lime);border-radius:50%;font-size:.7rem}.site-header nav{display:flex;gap:2rem}.site-header nav a,.header-cta,footer>a{color:var(--muted);text-decoration:none;font:700 .67rem var(--mono);letter-spacing:.08em;text-transform:uppercase;transition:color .2s}.site-header nav a:hover,.header-cta:hover,footer>a:hover{color:var(--lime)}.header-cta{justify-self:end;color:var(--lime)}a:focus-visible{outline:2px solid var(--lime);outline-offset:4px;border-radius:3px}main{width:min(1180px,91vw);margin:auto}.hero{min-height:calc(100vh - 68px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(3rem,7vw,7rem);padding:6rem 0}.eyebrow,.section-label,.project-index,.project-kicker,.company,.credentials small{font:700 .68rem var(--mono);letter-spacing:.11em;text-transform:uppercase}.eyebrow{color:var(--mint);display:flex;align-items:center;gap:.55rem}.status-dot{width:7px;height:7px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 5px rgba(185,242,39,.08);animation:pulse 2.3s ease-in-out infinite}.hero h1{font-size:clamp(3.1rem,6.8vw,6.1rem);line-height:.97;letter-spacing:-.06em;margin:1.4rem 0 1.7rem;max-width:11ch}.hero h1 span,h2 span{color:var(--lime)}.hero-intro{color:var(--muted);font-size:clamp(1rem,1.5vw,1.16rem);max-width:60ch}.hero-actions,.contact-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:48px;padding:.7rem 1.15rem;text-decoration:none;border:1px solid var(--line);font:700 .72rem var(--mono);letter-spacing:.04em;text-transform:uppercase;transition:transform .2s,border-color .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--lime);border-color:var(--lime);color:#08100d}.btn-primary:hover{background:#caff42}.btn-secondary{color:var(--text);background:rgba(255,255,255,.025)}.btn-secondary:hover{border-color:var(--mint)}.hero-stats{display:flex;margin:3.2rem 0 0;padding-top:1.5rem;border-top:1px solid var(--line)}.hero-stats div{flex:1;padding-right:1rem}.hero-stats dt{font:700 1.4rem var(--mono);color:var(--text)}.hero-stats dd{margin:.3rem 0 0;color:var(--muted);font-size:.72rem;line-height:1.35}.pipeline-visual{position:relative;padding:1.25rem;border:1px solid rgba(112,225,177,.24);background:linear-gradient(145deg,rgba(16,32,28,.92),rgba(7,17,15,.96));box-shadow:0 35px 80px rgba(0,0,0,.32)}.pipeline-visual::before{content:"";position:absolute;inset:-9px 22px 9px -9px;border:1px solid rgba(185,242,39,.1);z-index:-1}.visual-topline{display:flex;justify-content:space-between;padding-bottom:1rem;border-bottom:1px solid var(--line);color:#6f887e;font:700 .58rem var(--mono);letter-spacing:.1em}.live-label{color:var(--lime)}.live-label i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--lime);margin-right:.4rem}.source-stack{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-top:1rem}.source-node,.orchestrator-node,.warehouse-node{border:1px solid var(--line);background:rgba(255,255,255,.025)}.source-node{display:grid;grid-template-columns:auto 1fr;column-gap:.7rem;padding:.8rem}.source-node>span{grid-row:1/3;color:var(--mint);font:700 .6rem var(--mono)}.source-node strong,.source-node small{display:block}.source-node strong{font-size:.78rem}.source-node small{color:var(--muted);font-size:.6rem}.flow-line{height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#668078;font:400 .55rem var(--mono);letter-spacing:.08em;text-transform:uppercase}.flow-line i{display:block;width:1px;height:20px;background:var(--line);position:relative}.flow-line i::after{content:"";position:absolute;width:5px;height:5px;background:var(--mint);border-radius:50%;left:-2px;animation:flow 2s linear infinite}.orchestrator-node,.warehouse-node{display:flex;align-items:center;gap:.8rem;padding:1rem}.node-icon{width:43px;height:43px;display:grid;place-items:center;border:1px solid rgba(185,242,39,.35);color:var(--lime);font:700 .72rem var(--mono)}.orchestrator-node>div:nth-child(2),.warehouse-node>div:nth-child(2){flex:1}.orchestrator-node small,.warehouse-node small{display:block;color:#6f887e;font:700 .54rem var(--mono);letter-spacing:.1em}.orchestrator-node strong,.warehouse-node strong{display:block;font-size:.87rem}.orchestrator-node span,.warehouse-node span{display:block;color:var(--muted);font-size:.62rem}.orchestrator-node b{color:var(--lime);font:700 .52rem var(--mono);padding:.25rem .4rem;background:rgba(185,242,39,.08)}.bq-mark{width:43px;height:43px;border:1px solid rgba(112,225,177,.3);display:flex!important;align-items:end;justify-content:center;gap:3px;padding:10px}.bq-mark span{width:4px!important;background:var(--mint)}.bq-mark span:nth-child(1){height:45%}.bq-mark span:nth-child(2){height:80%}.bq-mark span:nth-child(3){height:60%}.output-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;margin-top:1rem}.output-row div{padding:.65rem .35rem;border-top:1px solid var(--line);color:var(--muted);font-size:.65rem;text-align:center}.output-row span{color:var(--lime);font:700 .55rem var(--mono);margin-right:.25rem}.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:78px;display:flex;align-items:center;justify-content:space-between;color:#668078;font:700 .65rem var(--mono);letter-spacing:.11em}.trust-strip i{width:3px;height:3px;background:var(--lime);border-radius:50%}.section{padding:8rem 0;border-bottom:1px solid var(--line)}.section-label{color:var(--muted);display:flex;align-items:center;gap:.7rem;margin-bottom:2.4rem}.section-label span{color:var(--lime)}.about-content{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(3rem,8vw,8rem)}h2{font-size:clamp(2.3rem,4.5vw,4rem);line-height:1.08;letter-spacing:-.045em;margin:0}.about-copy,.section-heading>p{color:var(--muted);font-size:1.02rem}.about-copy p:first-child{color:var(--text);font-size:1.2rem}.location-line{display:flex;gap:.8rem;align-items:center;margin-top:2rem;padding-top:1.2rem;border-top:1px solid var(--line)}.location-line>span{font-size:1.8rem;color:var(--lime)}.location-line small,.location-line strong{display:block}.location-line small{color:#667f75;font:700 .58rem var(--mono)}.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:4rem;align-items:end;margin-bottom:3.2rem}.section-heading>p{margin:0}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.skill-card{position:relative;min-height:225px;padding:1.5rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.012);transition:background .25s}.skill-card:hover{background:rgba(112,225,177,.045)}.skill-number{color:var(--lime);font:700 .6rem var(--mono)}.skill-card h3{font-size:1.1rem;margin:3rem 0 .8rem}.skill-card p{color:var(--muted);font-size:.86rem;margin:0}.work-list{border-top:1px solid var(--line)}.project-card{display:grid;grid-template-columns:.25fr 1fr .35fr;gap:2.5rem;padding:2.5rem 0;border-bottom:1px solid var(--line);align-items:start}.project-index{color:#667f75}.project-kicker{color:var(--mint);margin:0 0 .6rem}.project-body h3{font-size:clamp(1.6rem,3vw,2.25rem);letter-spacing:-.03em;margin:0}.project-body>p:not(.project-kicker){color:var(--muted);max-width:65ch}.tech-list{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.2rem}.tech-list span{border:1px solid var(--line);padding:.25rem .55rem;color:#a7bbb2;font:400 .62rem var(--mono)}.project-outcome{border-left:1px solid var(--line);padding-left:1.5rem}.project-outcome small{color:#667f75;font:700 .55rem var(--mono);letter-spacing:.08em}.project-outcome strong{display:block;color:var(--lime);font:700 2rem var(--mono);margin:.5rem 0}.project-outcome p{color:var(--muted);font-size:.77rem;margin:0}.timeline{border-top:1px solid var(--line)}.experience-item{display:grid;grid-template-columns:.32fr 1fr;gap:3rem;padding:3rem 0;border-bottom:1px solid var(--line)}.experience-date{display:flex;align-items:center;color:var(--muted);font:700 .6rem var(--mono);letter-spacing:.07em}.experience-date i{width:30px;height:1px;background:var(--lime);margin:0 .6rem}.company{color:var(--mint);margin:0 0 .5rem}.experience-main h3{font-size:2rem;margin:0}.experience-main>p:not(.company){color:var(--muted);max-width:75ch}.experience-main ul{display:grid;grid-template-columns:1fr 1fr;gap:.65rem 2rem;padding:0;list-style:none;margin-top:1.5rem}.experience-main li{position:relative;padding-left:1rem;color:#b4c4bd;font-size:.87rem}.experience-main li::before{content:"";position:absolute;left:0;top:.7em;width:4px;height:4px;background:var(--lime)}.credentials-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:4rem}.credentials small{color:var(--mint)}.credentials h2{font-size:clamp(1.7rem,3vw,2.6rem);margin:.8rem 0}.credentials h3{font-size:1.5rem;margin:.8rem 0}.credentials h3 span{color:var(--lime)}.credentials p{color:var(--muted)}.contact-section{text-align:center;padding:9rem 1rem}.contact-section .eyebrow{justify-content:center}.contact-section h2{font-size:clamp(3rem,7vw,6rem)}.contact-section>p:not(.eyebrow){color:var(--muted);max-width:55ch;margin:1.5rem auto}.contact-actions{justify-content:center}footer{width:min(1180px,91vw);margin:auto;display:flex;align-items:center;justify-content:space-between;padding:2rem 0;border-top:1px solid var(--line);color:#668078;font:400 .62rem var(--mono);text-transform:uppercase;letter-spacing:.06em}footer .brand{color:var(--text)}@keyframes pulse{50%{box-shadow:0 0 0 9px rgba(185,242,39,0)}}@keyframes flow{from{top:0}to{top:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.status-dot,.flow-line i::after{animation:none}}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero{grid-template-columns:1fr;padding:5rem 0}.hero-copy{max-width:700px}.pipeline-visual{max-width:600px;width:100%;margin:auto}.section{padding:6rem 0}.skills-grid{grid-template-columns:repeat(2,1fr)}.section-heading,.about-content{grid-template-columns:1fr;gap:1.5rem}.project-card{grid-template-columns:.22fr 1fr}.project-outcome{grid-column:2;border-left:0;border-top:1px solid var(--line);padding:1rem 0 0}.experience-item{grid-template-columns:1fr;gap:1.5rem}.experience-date{justify-content:flex-start}.credentials-grid{grid-template-columns:1fr;gap:2.5rem}}
@media(max-width:600px){.site-header{padding:.8rem 1rem}.header-cta{font-size:0}.header-cta span{font-size:1rem}.hero{padding:3.5rem 0}.hero h1{font-size:clamp(2.8rem,14vw,4.2rem)}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr)}.hero-stats dd{font-size:.62rem}.pipeline-visual{padding:.8rem}.source-stack{grid-template-columns:1fr}.trust-strip{overflow:hidden;gap:1.5rem;justify-content:flex-start}.trust-strip span:nth-of-type(n+5),.trust-strip i:nth-of-type(n+5){display:none}.section{padding:4.5rem 0}.skills-grid{grid-template-columns:1fr}.skill-card{min-height:auto}.skill-card h3{margin:1.8rem 0 .6rem}.project-card{grid-template-columns:1fr;gap:.9rem}.project-outcome{grid-column:auto}.experience-main ul{grid-template-columns:1fr}.credentials-grid{gap:2rem}.contact-actions{flex-direction:column}.contact-actions .btn{width:100%}footer{flex-wrap:wrap;gap:1rem}footer p{order:3;width:100%}}
@media(max-width:600px){main{width:calc(100% - 44px)}.hero{grid-template-columns:minmax(0,1fr);width:100%}.hero-copy,.pipeline-visual{width:100%;max-width:100%}.hero h1,.hero-intro{max-width:100%;overflow-wrap:break-word}}

/* Professional summary */
.about-content {
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  gap: clamp(3rem, 7vw, 6rem);
  align-items: start;
}

.about-intro {
  min-width: 0;
}

.about-intro .section-label {
  margin-bottom: 2.25rem;
}

.about-pipeline {
  max-width: 380px;
  margin-top: 3.25rem;
  padding: 1rem;
  border: 1px solid rgba(112, 225, 177, .18);
  background:
    linear-gradient(135deg, rgba(112, 225, 177, .035), transparent 65%),
    rgba(255, 255, 255, .012);
}

.about-pipeline-head {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: .8rem;
  border-bottom: 1px solid var(--line);
  color: #687f76;
  font: 700 .55rem var(--mono);
  letter-spacing: .1em;
}

.about-pipeline-head span:last-child {
  color: var(--lime);
}

.about-pipeline-flow {
  display: grid;
  grid-template-columns: auto 1fr auto 1fr auto;
  gap: .45rem;
  align-items: center;
  margin-top: 1rem;
}

.about-pipeline-flow span {
  padding: .42rem .5rem;
  border: 1px solid var(--line);
  color: #a9bbb3;
  background: rgba(7, 17, 15, .62);
  font: 700 .5rem var(--mono);
  letter-spacing: .04em;
  white-space: nowrap;
}

.about-pipeline-flow span:last-child {
  color: var(--lime);
  border-color: rgba(185, 242, 39, .2);
}

.about-pipeline-flow i {
  position: relative;
  height: 1px;
  overflow: visible;
  background: linear-gradient(90deg, var(--line), var(--mint));
}

.about-pipeline-flow i::after {
  content: "";
  position: absolute;
  top: -2px;
  right: -1px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--mint);
}

.about-pipeline > p {
  margin: .8rem 0 0;
  color: #61776e;
  font: 400 .55rem var(--mono);
  letter-spacing: .08em;
  text-align: right;
  text-transform: uppercase;
}

.about-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .65rem;
  margin: 2rem 0 0;
}

.about-stats div {
  min-width: 0;
  padding: .8rem;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, .018);
}

.about-stats dt {
  color: var(--lime);
  font: 700 1.1rem var(--mono);
}

.about-stats dd {
  margin: .25rem 0 0;
  color: var(--muted);
  font-size: .68rem;
  line-height: 1.35;
}

.about-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 1.25rem;
}

/* Featured projects */
.projects-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}

.project-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: 100%;
  padding: 1.35rem;
  border: 1px solid var(--line);
  border-radius: 3px;
  background-color: rgba(11, 23, 20, .86);
  transition: transform 240ms ease, border-color 240ms ease, box-shadow 240ms ease;
}

.projects-grid:has(.project-details[open]) {
  align-items: start;
}

.projects-grid:has(.project-details[open]) .project-card {
  height: auto;
}

.project-card:hover {
  transform: translateY(-4px);
  border-color: rgba(112, 225, 177, .34);
}

.project-topline {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid var(--line);
}

.project-index,
.project-kicker {
  margin: 0;
  font: 700 .58rem var(--mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}

.project-index { color: #70877e; }
.project-kicker { color: var(--mint); text-align: right; }

.project-card > h3 {
  margin: 1.2rem 0 .75rem;
  font-size: clamp(1.25rem, 2vw, 1.65rem);
  line-height: 1.2;
  letter-spacing: -.025em;
}

.project-summary {
  margin: 0 0 1rem;
  color: var(--muted);
  font-size: .88rem;
}

.project-card .tech-list {
  margin: auto 0 1rem;
  padding-top: .5rem;
}

.project-details {
  width: 100%;
  margin-top: 0;
  border-top: 1px solid var(--line);
}

.project-details summary {
  display: flex;
  min-height: 44px;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .8rem 0 0;
  color: var(--text);
  cursor: pointer;
  font: 700 .68rem var(--mono);
  letter-spacing: .06em;
  list-style: none;
  text-transform: uppercase;
}

.project-details summary::-webkit-details-marker { display: none; }

.project-details summary span {
  color: var(--lime);
  font-size: 1rem;
  transition: transform 220ms ease;
}

.project-details[open] summary span { transform: rotate(45deg); }

.project-details summary:focus-visible {
  outline: 2px solid var(--lime);
  outline-offset: 4px;
  border-radius: 2px;
}

.project-detail-content {
  display: grid;
  gap: 1rem;
  padding-top: 1.15rem;
}

.project-detail-content section {
  padding-top: .9rem;
  border-top: 1px solid var(--line);
}

.project-detail-content h4 {
  margin: 0 0 .45rem;
  color: var(--mint);
  font: 700 .62rem var(--mono);
  letter-spacing: .08em;
  text-transform: uppercase;
}

.project-detail-content p,
.project-detail-content li {
  color: var(--muted);
  font-size: .78rem;
}

.project-detail-content p { margin: 0; }
.project-detail-content ul { margin: .35rem 0 0; padding-left: 1.05rem; }
.project-detail-content li + li { margin-top: .4rem; }

.flow-steps {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  margin: .6rem 0 0;
  padding: 0;
  list-style: none;
}

.flow-steps li {
  display: flex;
  align-items: center;
  gap: .4rem;
  margin: 0;
  color: #b8c9c1;
  font: 400 .64rem var(--mono);
}

.flow-steps li:not(:last-child)::after {
  content: "→";
  color: var(--lime);
}

.check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .35rem .8rem;
}

.project-result {
  padding: .9rem;
  border: 1px solid rgba(185, 242, 39, .16) !important;
  background: rgba(185, 242, 39, .035);
}

/* Professional experience */
.timeline {
  --timeline-date: 190px;
  --timeline-gap: 4rem;
  position: relative;
  border-top: 0;
}

.timeline::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(var(--timeline-date) + 2rem);
  width: 1px;
  background: linear-gradient(var(--mint), var(--line) 18%, var(--line) 82%, transparent);
}

.experience-item {
  position: relative;
  display: grid;
  grid-template-columns: var(--timeline-date) minmax(0, 1fr);
  gap: var(--timeline-gap);
  padding: 0 0 2rem;
  border-bottom: 0;
}

.experience-item + .experience-item { padding-top: 1rem; }

.experience-item::before {
  content: "";
  position: absolute;
  top: 1.55rem;
  left: calc(var(--timeline-date) + 2rem - 5px);
  z-index: 1;
  width: 9px;
  height: 9px;
  border: 2px solid var(--bg);
  border-radius: 50%;
  background: var(--mint);
  box-shadow: 0 0 0 4px rgba(112, 225, 177, .08);
}

.experience-date {
  align-self: start;
  justify-content: flex-end;
  padding-top: 1.25rem;
}

.experience-main {
  padding: 1.5rem;
  border: 1px solid var(--line);
  background-color: rgba(11, 23, 20, .68);
}

.current-role .experience-main {
  border-color: rgba(185, 242, 39, .28);
  background-color: rgba(185, 242, 39, .025);
}

.current-role::before { background: var(--lime); }

.experience-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.experience-heading .company { margin: 0 0 .35rem; }
.experience-heading h3 { line-height: 1.15; }

.current-badge {
  flex: 0 0 auto;
  padding: .28rem .48rem;
  color: var(--lime);
  border: 1px solid rgba(185, 242, 39, .28);
  background: rgba(185, 242, 39, .055);
  font: 700 .54rem var(--mono);
  letter-spacing: .07em;
  text-transform: uppercase;
}

.experience-location {
  margin: .55rem 0 1.1rem !important;
  color: #71887f !important;
  font: 400 .7rem var(--mono);
}

.experience-main ul {
  margin: 0;
}

.experience-tech {
  margin: 1.25rem 0 0;
  padding-top: 1rem;
  border-top: 1px solid var(--line);
}

@media (max-width: 1050px) {
  .projects-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  html { scroll-padding-top: 8.5rem; }

  .site-header {
    grid-template-columns: 1fr auto;
    gap: .55rem 1rem;
    padding: .75rem 1rem;
  }

  .site-header nav {
    display: flex;
    grid-column: 1 / -1;
    gap: 1.2rem;
    overflow-x: auto;
    padding: .2rem 0 .1rem;
    scrollbar-width: none;
  }

  .site-header nav::-webkit-scrollbar { display: none; }
  .site-header nav a { flex: 0 0 auto; white-space: nowrap; }
  .site-header .header-cta { grid-column: 2; grid-row: 1; }

  .about-content {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }

  .about-pipeline {
    max-width: 100%;
    margin-top: 2rem;
  }

  .timeline::before,
  .experience-item::before { display: none; }

  .experience-item,
  .experience-item + .experience-item {
    display: block;
    padding: 0 0 1rem;
  }

  .experience-date {
    justify-content: flex-start;
    padding: 0 0 .75rem;
  }
}

@media (max-width: 720px) {
  .projects-grid { grid-template-columns: 1fr; }
  .about-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .experience-main { padding: 1.15rem; }
  .experience-main ul { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
  .about-actions { flex-direction: column; }
  .about-actions .btn { width: 100%; }
  .about-pipeline-flow { grid-template-columns: 1fr; justify-items: stretch; }
  .about-pipeline-flow span { text-align: center; }
  .about-pipeline-flow i {
    width: 1px;
    height: 14px;
    justify-self: center;
    background: linear-gradient(var(--line), var(--mint));
  }
  .about-pipeline-flow i::after { top: auto; right: -2px; bottom: -1px; }
  .project-card { padding: 1.1rem; }
  .project-topline { align-items: flex-start; flex-direction: column; gap: .35rem; }
  .project-kicker { text-align: left; }
  .flow-steps { flex-direction: column; align-items: flex-start; }
  .flow-steps li:not(:last-child)::after { content: "↓"; }
  .check-grid { grid-template-columns: 1fr; }
  .experience-heading { align-items: flex-start; flex-direction: column; }
}
