.work-page{
  background: linear-gradient(180deg, var(--bg) 0%, #fff 56%);
}

.work-page .nav-link.active{
  background:#F1F6FF;
  color:var(--text);
  font-weight:700;
}

.work-hero{
  padding:54px 0 48px;
}

.work-hero-grid{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(390px, .72fr);
  gap:42px;
  align-items:center;
}

.work-hero-copy h1{
  max-width:880px;
  font-size:clamp(40px, 3.8vw, 48px);
  line-height:1.08;
  letter-spacing:-.04em;
}

.work-hero-note{
  color:#334155;
  max-width:68ch;
  margin:0 0 22px;
  line-height:1.6;
}

.work-snapshot-panel{
  background:#fff;
  border:1px solid #DCE6F8;
  border-radius:24px;
  padding:24px;
  box-shadow:var(--shadow);
  display:grid;
  gap:18px;
}

.snapshot-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding-bottom:16px;
  border-bottom:1px solid #E4ECFA;
}

.snapshot-head span{
  color:var(--primary2);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.snapshot-head strong{
  color:var(--text);
  font-size:14px;
}

.snapshot-list{
  display:grid;
  gap:12px;
}

.snapshot-item{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:13px;
  border-radius:16px;
  background:#F7FAFF;
  border:1px solid #DCE6F8;
}

.snapshot-item > span{
  width:34px;
  height:34px;
  flex:0 0 34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:#0B5ED7;
  color:#fff;
  font-weight:900;
  font-size:12px;
}

.snapshot-item strong{
  display:block;
  color:var(--text);
  font-size:15px;
}

.snapshot-item small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  line-height:1.35;
}

.snapshot-metrics{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
}

.snapshot-metrics div{
  padding:12px;
  border-radius:14px;
  background:#EEF5FF;
  border:1px solid #D7E6FF;
}

.snapshot-metrics strong{
  display:block;
  color:var(--primary2);
  font-size:15px;
}

.snapshot-metrics span{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:11px;
  line-height:1.25;
}

.profile-tags,
.tag-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.profile-tags span,
.tag-row span{
  font-size:12px;
  color:#0B3A7A;
  background:#EEF5FF;
  border:1px solid #D7E6FF;
  border-radius:999px;
  padding:7px 9px;
  font-weight:700;
}

.cred-grid{
  margin-top:34px;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:16px;
}

.cred-card{
  background:#fff;
  border:1px solid #DCE6F8;
  border-radius:18px;
  padding:20px;
  box-shadow:var(--shadow2);
  min-height:150px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}

.cred-value{
  color:var(--primary2);
  font-size:26px;
  font-weight:800;
  letter-spacing:-0.03em;
}

.cred-label{
  color:var(--muted);
  line-height:1.45;
  font-size:14px;
}

.selected-work-section{
  overflow:hidden;
}

.project-grid{
  margin-top:34px;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:22px;
  align-items:start;
  min-width:0;
}

.project-masonry{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:22px;
  align-items:start;
  min-width:0;
  overflow:visible;
}

.project-column{
  display:flex;
  flex-direction:column;
  gap:22px;
  min-width:0;
  transform:translateY(0);
  /*transition:transform .16s linear;*/
  will-change:transform;
}

.project-column.is-scroll-balanced{
  transform:translateY(var(--projectColumnOffset, 0px));
}

.project-card{
  background:#fff;
  border:1px solid #DCE6F8;
  border-radius:22px;
  box-shadow:var(--shadow2);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-width:0;
}

.project-card-pennywell{
  order:-2;
}

.project-card-yoza{
  order:-1;
}

.project-card-featured{
  position:relative;
  display:grid;
  grid-template-columns:minmax(280px, .62fr) minmax(0, 1fr);
  grid-column:1 / -1;
  align-items:start;
  max-width:100%;
  overflow:hidden;
  transform-style:preserve-3d;
}

.project-card-featured.is-visible{
  transform:perspective(1100px) rotateX(var(--tiltX, 0deg)) rotateY(var(--tiltY, 0deg)) translateY(0);
}

.project-card-featured .project-shot{
  height:clamp(250px, 24vw, 300px);
  min-height:0;
  aspect-ratio:auto;
  height:-webkit-fill-available;
}

.project-card-featured::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(420px circle at var(--glintX, 50%) var(--glintY, 50%), rgba(255,255,255,.34), transparent 42%);
  opacity:0;
  pointer-events:none;
  transition:opacity .24s ease;
}

.project-shot{
  position:relative;
  overflow:hidden;
  min-height:0;
  min-width:0;
  height:220px;
  aspect-ratio:auto;
  padding:16px;
  background:
    linear-gradient(135deg, rgba(11,94,215,.12), rgba(34,197,94,.10)),
    #F8FBFF;
  border-right:1px solid #DCE6F8;
}

.project-shot::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(11,27,58,0.02), rgba(11,27,58,0.18)),
    linear-gradient(90deg, rgba(255,255,255,0.18), rgba(255,255,255,0));
  z-index:1;
  pointer-events:none;
}

.device-preview{
  position:relative;
  z-index:1;
  width:calc(100% - 32px);
  height:calc(100% - 32px);
  max-width:100%;
  border-radius:16px;
  padding:18px;
  background:rgba(255,255,255,.84);
  border:1px solid rgba(255,255,255,.74);
  box-shadow:0 16px 30px rgba(11,27,58,.10);
  display:flex;
  justify-content:flex-start;
  box-sizing:border-box;
}

.desktop-shot{
  width:100%;
  height:auto;
  max-height:calc(100% - 34px);
  object-fit:cover;
  object-position:top center;
  border:1px solid rgba(203,213,225,.92);
  border-radius:14px;
  background:#fff;
  box-shadow:0 18px 34px rgba(11,27,58,.16);
}

.mobile-shot{
  position:absolute;
  right:16px;
  bottom:34px;
  width:21%;
  max-width:188px;
  min-width:158px;
  height:auto;
  max-height:calc(100% - 44px);
  aspect-ratio:9 / 16;
  object-fit:cover;
  object-position:top center;
  border:5px solid #fff;
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 36px rgba(11,27,58,.22);
}

.project-logo{
  position:absolute;
  top:10px;
  right:10px;
  transform:rotate(2deg);
  z-index:9;
  display:block;
  width:min(142px, calc(100% - 20px));
  height:auto;
  object-fit:contain;
  border:1px solid rgba(220,230,248,.86);
  border-radius:10px;
  background:#fff;
  box-shadow:0 12px 24px rgba(11,27,58,.14);
}

.project-card-featured .project-logo{
  transform:
    rotateX(calc(var(--tiltX, 0deg) * -3.6))
    rotateY(calc(var(--tiltY, 0deg) * -3.6))
    rotate(2deg);
  transform-style:preserve-3d;
  transition:transform .18s ease;
  will-change:transform;
}

.project-shot-yoza{
  background:
    linear-gradient(135deg, rgba(11,94,215,.18), rgba(245,158,11,.16)),
    repeating-linear-gradient(90deg, rgba(11,94,215,.10) 0 1px, transparent 1px 36px),
    #F8FBFF;
}

.project-shot-pennywell{
  background:
    linear-gradient(135deg, rgba(34,197,94,.16), rgba(14,165,233,.14)),
    repeating-linear-gradient(0deg, rgba(22,163,74,.10) 0 1px, transparent 1px 34px),
    #F8FBFF;
}

.project-shot-compact{
  height:clamp(280px, 18vw, 340px);
  aspect-ratio:auto;
  border-right:0;
  border-bottom:1px solid #DCE6F8;
}

.project-shot-compact .desktop-shot{
  width:86%;
  max-height:calc(100% - 28px);
}

.project-shot-compact .mobile-shot{
  right:14px;
  bottom:26px;
  max-width:92px;
  min-width:68px;
  border-width:4px;
  border-radius:14px;
}

.project-shot-compact .device-preview{
  width:calc(100% - 28px);
  height:calc(100% - 28px);
  padding:14px;
}

.project-content{
  padding:20px;
  display:flex;
  flex-direction:column;
  gap:12px;
  flex:0 1 auto;
  min-width:0;
}

.project-kicker{
  color:var(--primary2);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.project-content h3{
  margin:0;
  font-size:23px;
  letter-spacing:-0.03em;
  overflow-wrap:anywhere;
}

.project-content p{
  color:var(--muted);
  line-height:1.55;
  margin:0;
  overflow-wrap:break-word;
}

.responsibility-list{
  margin:0;
  padding-left:18px;
  color:#2A3B57;
  line-height:1.5;
  overflow-wrap:break-word;
}

.responsibility-list li + li{
  margin-top:5px;
}

.commerce-impact{
  border:1px solid #DCE6F8;
  border-radius:14px;
  padding:11px 13px;
  background:
    linear-gradient(135deg, rgba(34,197,94,.08), rgba(11,94,215,.06)),
    #FBFDFF;
  box-shadow:0 10px 22px rgba(11,27,58,.04);
}

.commerce-impact span{
  display:block;
  color:#0B5ED7;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:5px;
}

.commerce-impact p{
  color:#243756;
  font-size:14px;
  line-height:1.5;
}

.evidence-slider{
  position:relative;
  display:block;
}

.evidence-slider::before,
.evidence-slider::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  z-index:2;
  width:52px;
  pointer-events:none;
  opacity:0;
  transition:opacity .18s ease;
}

.evidence-slider::before{
  left:0;
  background:linear-gradient(90deg, #fff 0%, rgba(255,255,255,0) 100%);
}

.evidence-slider::after{
  right:0;
  background:linear-gradient(270deg, #fff 0%, rgba(255,255,255,0) 100%);
}

.evidence-slider.is-scrollable:not(.is-at-start)::before,
.evidence-slider.is-scrollable:not(.is-at-end)::after{
  opacity:1;
}

.evidence-strip{
  display:flex;
  align-items:center;
  gap:16px;
  justify-content:flex-start;
  min-width:0;
  max-width:100%;
  overflow-x:auto;
  padding:2px;
  margin:-2px;
  scroll-behavior:smooth;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-inline:contain;
  cursor:grab;
  user-select:none;
}

.evidence-strip::-webkit-scrollbar{
  display:none;
}

.evidence-strip.is-dragging{
  cursor:grabbing;
  scroll-snap-type:none;
  scroll-behavior:auto;
}

.evidence-strip img{
  width:auto;
  height:160px;
  flex:0 0 auto;
  scroll-snap-align:start;
  object-fit:cover;
  object-position:top center;
  border:1px solid #DCE6F8;
  border-radius:10px;
  background:#fff;
  box-shadow:0 8px 16px rgba(11,27,58,.06);
  -webkit-user-drag:none;
  user-select:none;
}

.evidence-strip img.is-lightbox-trigger{
  cursor:zoom-in;
}

.evidence-strip img.is-lightbox-trigger:focus-visible{
  outline:3px solid rgba(11,94,215,.42);
  outline-offset:3px;
}

.evidence-strip img:last-child{
  object-position:top center;
}

.evidence-strip-single{
  overflow-x:hidden;
}

.evidence-strip-single img{
  height:160px;
  max-width:100%;
}

.evidence-slider-controls{
  display:none;
  position:absolute;
  inset:0;
  z-index:4;
  pointer-events:none;
}

.evidence-slider.is-scrollable .evidence-slider-controls{
  display:block;
}

.evidence-slider-track{
  position:relative;
  display:block;
  width:min(132px, 42%);
  height:3px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(207,224,251,.78);
  box-shadow:0 1px 6px rgba(11,27,58,.08);
  margin:10px auto 0;
  opacity:0;
  transition:opacity .16s ease;
}

.evidence-slider.is-scrollable .evidence-slider-track{
  opacity:1;
}

.evidence-slider-thumb{
  position:absolute;
  inset:0;
  width:100%;
  border-radius:inherit;
  background:linear-gradient(90deg, var(--primary2), #20BF6B);
  transform:scaleX(var(--evidenceProgress, .08));
  transform-origin:left center;
  transition:transform .16s ease;
}

.evidence-slider-button{
  position:absolute;
  top:50%;
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #CFE0FB;
  border-radius:999px;
  background:#fff;
  color:var(--primary2);
  font-size:18px;
  font-weight:900;
  line-height:1;
  cursor:pointer;
  pointer-events:auto;
  box-shadow:0 10px 24px rgba(11,27,58,.14);
  transform:translateY(-50%);
  transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease, opacity .16s ease;
}

.evidence-slider-button:first-child{
  left:8px;
}

.evidence-slider-button:last-child{
  right:8px;
}

.evidence-slider-button:hover:not(:disabled){
  transform:translateY(calc(-50% - 1px));
  border-color:#9EC5FE;
  box-shadow:0 12px 24px rgba(11,27,58,.12);
}

.evidence-slider-button:disabled{
  cursor:default;
  opacity:0;
  box-shadow:none;
}

/* .evidence-lightbox* rules moved to /styles.css - the lightbox is now shared
   with the blog's .post-gallery, which doesn't load work.css */

.project-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:6px;
  padding-top:4px;
}

.project-note{
  color:var(--muted2);
  font-size:12px;
  line-height:1.4;
}

.project-link{
  color:var(--primary2);
  font-weight:800;
  font-size:14px;
  white-space:nowrap;
}

.project-link:hover{
  text-decoration:underline;
}

.work-logo-block{
  margin-top:28px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(220,230,248,.86);
  border-radius:22px;
  padding:24px;
  box-shadow:var(--shadow2);
}

.work-logo-copy{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:20px;
}

.work-logo-copy h3{
  margin:0;
  font-size:22px;
  letter-spacing:-0.03em;
}

.work-logo-copy p{
  color:var(--muted2);
  margin:0;
  max-width:58ch;
  line-height:1.55;
}

.additional-store-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
  align-items:start;
}

.additional-store-card{
  min-height:168px;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:16px;
  background:#fff;
  border:1px solid #DCE6F8;
  border-radius:16px;
  box-shadow:0 12px 26px rgba(11,27,58,.07);
}

.additional-store-card[hidden]{
  display:none;
}

.additional-store-card img{
  width:100%;
  height:190px;
  object-fit:contain;
  border:1px solid #DCE6F8;
  border-radius:10px;
  padding:10px;
  background:#fff;
}

.additional-store-card h4{
  margin:0 0 7px;
  color:var(--ink);
  font-size:17px;
  letter-spacing:-0.02em;
}

.additional-store-card p{
  margin:0;
  color:var(--muted);
  font-size:14px;
  line-height:1.45;
}

.mini-tag-row{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:12px;
}

.mini-tag-row span{
  color:#0B3A7A;
  background:#EEF5FF;
  border:1px solid #D7E6FF;
  border-radius:999px;
  padding:5px 7px;
  font-size:11px;
  font-weight:700;
}

.additional-store-actions{
  display:flex;
  justify-content:center;
  margin-top:22px;
}

.additional-store-actions .btn{
  min-width:132px;
  border-color:#BFD6FA;
  background:#F8FBFF;
  box-shadow:0 10px 22px rgba(11,27,58,.08);
}

.additional-store-actions[hidden]{
  display:none;
}

.logo-grid-work{
  grid-template-columns:repeat(5, minmax(0, 1fr));
}

.logo-grid-work > img,
.logo-grid-compact > img,
.logo-grid-education > img{
  background:#fff;
  min-height:96px;
}

.logo-grid-work > img{
  height:104px;
  padding:8px;
}

.logo-category-section{
  padding:48px 0;
}

.logo-category-grid,
.education-panel{
  display:grid;
  grid-template-columns:minmax(0, .85fr) minmax(360px, 1fr);
  gap:28px;
  align-items:center;
}

.logo-category-title,
.logo-category-sub{
  text-align:left;
}

.logo-category-title{
  font-size:30px;
}

.logo-category-sub{
  margin-left:0;
  margin-right:0;
}

.logo-grid-compact{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.logo-grid-compact > img{
  height:106px;
  padding:8px;
}

.education-panel{
  background:#fff;
  border:1px solid #DCE6F8;
  border-radius:22px;
  padding:24px;
  box-shadow:var(--shadow2);
}

.logo-grid-education{
  grid-template-columns:1.35fr .75fr;
}

.logo-grid-education > img{
  height:110px;
  padding:8px;
}

.education-section{
  padding:50px 0;
}

.technologies-section{
  padding:62px 0;
}

.technologies-section .section-sub{
  max-width:720px;
}

.tech-category-list{
  margin-top:34px;
  display:grid;
  gap:30px;
}

.tech-category{
  display:grid;
  grid-template-columns:minmax(220px, .36fr) minmax(0, 1fr);
  gap:28px;
  align-items:start;
  padding-top:28px;
  border-top:1px solid rgba(189, 211, 242, .74);
}

.tech-category:first-child{
  padding-top:0;
  border-top:0;
}

.tech-category-copy h3{
  margin:0 0 8px;
  font-size:20px;
  line-height:1.2;
}

.tech-category-copy p{
  margin:0;
  color:var(--muted);
  line-height:1.55;
}

.tech-logo-grid{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:12px;
}

.tech-logo-card{
  min-height:106px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 12px;
  background:#fff;
  border:1px solid #DCE6F8;
  border-radius:16px;
  box-shadow:0 10px 24px rgba(11, 27, 58, .055);
}

.tech-logo-card img{
  width:100%;
  height:44px;
  object-fit:contain;
}

.tech-badge-card{
  background:
    radial-gradient(90px circle at 50% 20%, rgba(34,197,94,.10), transparent 72%),
    #fff;
}

.tech-logo-card span{
  color:#334155;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
  text-align:center;
}

.tech-logo-card .tech-badge-icon{
  width:44px;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:14px;
  background:#EAF4FF;
  border:1px solid #CCE0FF;
  color:var(--primary2);
  font-size:13px;
  font-weight:900;
  letter-spacing:.04em;
}

.expertise-grid,
.work-mode-grid{
  margin-top:30px;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
}

.expertise-card,
.work-mode{
  background:#fff;
  border:1px solid #DCE6F8;
  border-radius:18px;
  padding:22px;
  box-shadow:var(--shadow2);
}

.expertise-card h3,
.work-mode h3{
  margin:0 0 12px;
  font-size:18px;
}

.expertise-card ul{
  margin:0;
  padding-left:18px;
  color:var(--muted);
  line-height:1.7;
}

.work-mode-grid{
  grid-template-columns:repeat(4, minmax(0, 1fr));
}

.work-mode p{
  margin:0;
  color:var(--muted);
  line-height:1.6;
}

.expertise-section{
  padding:58px 0;
}

.work-positioning{
  padding:58px 0;
}

.work-cta{
  padding:50px 0 48px;
}

.work-cta h2{
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
  font-size:clamp(32px, 3vw, 40px);
  line-height:1.12;
}

.work-cta p{
  max-width:620px;
}

.work-cta .btn.cta-white{
  background:#fff;
  color:var(--primary2);
  box-shadow:0 12px 24px rgba(0,0,0,.16);
}

.work-cta .btn.cta-white:hover{
  background:#EFF6FF;
}

.cred-card,
.project-card,
.additional-store-card,
.expertise-card,
.work-mode,
.work-snapshot-panel{
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.cred-card.reveal,
.project-card.reveal,
.additional-store-card.reveal,
.expertise-card.reveal,
.work-mode.reveal,
.work-snapshot-panel.reveal{
  transition:
    opacity 980ms ease,
    transform 1280ms cubic-bezier(.16,.62,.18,1),
    filter 1040ms ease,
    box-shadow .22s ease,
    border-color .22s ease;
}

@media (hover: hover) and (pointer: fine){
  .cred-card:hover,
  .project-card:hover,
  .additional-store-card:hover,
  .expertise-card:hover,
  .work-mode:hover,
  .work-snapshot-panel:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 34px rgba(11,27,58,.12);
  }

  .project-card-featured:hover{
    transform:perspective(1100px) rotateX(var(--tiltX, 0deg)) rotateY(var(--tiltY, 0deg)) translateY(-4px);
  }

  .project-card-featured:hover::after{
    opacity:1;
  }
}

@media (prefers-reduced-motion: reduce){
  .project-card-featured{
    transform:none !important;
  }

  .project-card-featured::after{
    display:none;
  }
}

@media (max-width: 980px){
  .work-hero-grid,
  .project-card-featured{
    grid-template-columns:1fr;
  }

  .work-snapshot-panel{
    max-width:620px;
    width:100%;
    justify-self:center;
  }

  .project-shot{
    border-right:0;
    border-bottom:1px solid #DCE6F8;
  }

  .project-card-featured .project-shot{
    height:260px;
    aspect-ratio:auto;
  }

  .cred-grid,
  .project-grid,
  .project-masonry,
  .additional-store-grid,
  .expertise-grid,
  .work-mode-grid,
  .logo-grid-work,
  .logo-category-grid,
  .education-panel,
  .tech-category{
    grid-template-columns:1fr 1fr;
  }

  .tech-logo-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  .work-logo-copy{
    align-items:flex-start;
    flex-direction:column;
  }
}

@media (max-width: 560px){
  .work-hero{
    padding:38px 0 34px;
  }

  .work-hero-copy h1{
    font-size:34px;
  }

  .work-hero-grid,
  .cred-grid,
  .project-grid,
  .project-masonry,
  .additional-store-grid,
  .expertise-grid,
  .work-mode-grid,
  .logo-grid-work,
  .logo-grid-compact,
  .logo-grid-education,
  .logo-category-grid,
  .education-panel,
  .tech-category{
    grid-template-columns:1fr;
  }

  .technologies-section{
    padding:58px 0;
  }

  .tech-category-list{
    margin-top:30px;
    gap:28px;
  }

  .tech-logo-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .tech-logo-card{
    min-height:96px;
    padding:12px 10px;
  }

  .work-snapshot-panel,
  .project-content,
  .expertise-card,
  .work-mode,
  .work-logo-block,
  .education-panel{
    padding:18px;
  }

  .snapshot-head{
    flex-direction:column;
    gap:6px;
  }

  .snapshot-metrics{
    grid-template-columns:1fr;
  }

  .project-footer{
    align-items:flex-start;
    flex-direction:column;
  }

  .project-shot,
  .project-card-featured .project-shot,
  .project-shot-compact{
    aspect-ratio:auto;
  }

  .project-shot{
    height:230px;
    padding:12px;
  }

  .project-card-featured .project-shot{
    height:260px;
  }

  .project-shot-compact{
    height:300px;
    padding: 10px;
  }

  .project-card-featured{
    border-radius:18px;
  }

  .project-card-featured .project-shot{
    height:412px;
    padding:10px;
  }

  .project-card-featured .project-content{
    gap:12px;
  }

  .project-card-featured .responsibility-list li:nth-child(n+4){
    display:none;
  }

  .project-card-featured .evidence-strip{
    gap:10px;
    margin-right:-18px;
    padding-right:18px;
  }

  .project-card-featured .evidence-strip img{
    height:104px;
    max-width:78%;
  }

  .project-card-featured .project-note{
    font-size:12px;
  }

  .device-preview,
  .project-shot-compact .device-preview{
    width:calc(100% - 0px);
    height:calc(100% - 14px);
    padding:8px !important;
    border-radius:14px;
  }

  .desktop-shot,
  .project-shot-compact .desktop-shot{
    width:100%;
    max-height:calc(100% - 22px);
    border-radius:11px;
    padding: 8px 8px 0 8px
  }

  .mobile-shot,
  .project-shot-compact .mobile-shot{
    right:8px;
    bottom:18px;
    width:24%;
    min-width:72px;
    max-width:92px;
    max-height:calc(100% - 30px);
    border-width:3px;
    border-radius:13px;
  }

  .project-logo{
    top:8px;
    right:8px;
    width:min(88px, calc(100% - 16px));
    border-radius:9px;
  }

  .project-card-featured .project-logo{
    width:min(84px, calc(100% - 16px));
  }

  .project-content h3{
    font-size:21px;
    letter-spacing:-0.02em;
  }

  .project-content p,
  .responsibility-list{
    font-size:15px;
    line-height:1.55;
  }

  .tag-row{
    min-width:0;
    max-width:100%;
    gap:7px;
  }

  .tag-row span{
    max-width:100%;
    padding:6px 9px;
    font-size:12px;
    white-space:normal;
    overflow-wrap:break-word;
  }

  .evidence-strip img{
    height:112px;
  }

  .evidence-strip-single img{
    height:112px;
  }

  /* .evidence-lightbox* mobile overrides moved to /styles.css */

  .evidence-slider-track{
    width:min(150px, 56%);
    margin-top:8px;
  }
}
