html:has(.work-page) { scroll-padding-top:0; }
.work-page { background:#fff; }
.work-page button, .work-page a { -webkit-tap-highlight-color:transparent; }
.work-page :focus-visible { outline:2px solid currentColor; outline-offset:4px; }
.work-sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.work-hero { height:150svh;position:relative;z-index:0;isolation:isolate;background:#fff; }
.work-hero-inner { position:absolute;inset:0;height:300svh; }
.work-page .work-hero-sticky { position:sticky;top:0;width:100%;height:100svh;min-height:0;margin:0;background:#fff;contain:paint;isolation:isolate; }
.work-hero-sticky .portfolio-stage { perspective:none;transform-style:flat; }
.work-hero-sticky .case-particle { transform-style:flat;backface-visibility:visible;will-change:auto; }
.work-hero-sticky:after { display:none; }
.work-hero-copy { padding:0 24px; }
.work-hero-copy h1 { display:flex;flex-direction:column;width:max-content;max-width:100%;margin:0;font-size:clamp(68px,10vw,192px);font-weight:700;line-height:.79;letter-spacing:-.05em;text-align:left; }
.work-hero-copy h1 > span { display:block; }
.work-hero-copy h1 > span:nth-child(2) { padding-left:.35em; }
.work-hero-copy h1 > span:nth-child(3) { padding-left:.5em; }
.work-hero-note { position:absolute;z-index:6;left:50%;bottom:20px;width:clamp(220px,18vw,330px);margin:0;font-size:14px;line-height:1.2;letter-spacing:-.02em; }
.work-showcase { position:relative;z-index:1;isolation:isolate;background:#010101;overflow:clip; }
.work-project { position:relative;width:100%;height:100svh;overflow:clip; }
.work-project-image { position:absolute;inset:0;transform:translate3d(0,calc(-30% + var(--project-progress,.5)*60%),0) scale(calc(1 + var(--project-progress,.5)*.1)); }
.work-project-image img { display:block;width:100%;height:100%;object-fit:cover; }
.work-project-shade { position:absolute;inset:0;background:rgb(0 0 0 / .2); }
.work-project-open { position:absolute;inset:0;z-index:2;cursor:pointer; }
.work-project-open:focus-visible { outline:3px solid #fff;outline-offset:-12px; }
.work-dock-outer { position:absolute;z-index:5;inset:0;pointer-events:none; }
.work-dock-sticky { position:sticky;top:0;display:flex;align-items:flex-end;justify-content:center;height:100dvh;padding-bottom:max(4px,env(safe-area-inset-bottom)); }
.work-dock { width:600px;display:flex;flex-direction:column;gap:4px;pointer-events:auto; }
.work-details { position:relative;height:0; }
.work-detail { position:absolute;bottom:0;left:0;display:grid;grid-template-columns:162px 1px minmax(0,1fr);grid-template-rows:auto auto auto;column-gap:16px;width:600px;padding:8px;border:0;border-radius:20px;background:rgb(1 1 1 / .2);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:#fff;opacity:0;visibility:hidden;pointer-events:none; }
.work-detail.is-current { opacity:1;visibility:visible;pointer-events:auto; }
.work-logo { grid-area:1/1/4/3;display:flex;align-items:center;justify-content:center;align-self:start;height:100%;min-height:150px; }
.work-logo img { width:90px;height:auto;max-height:90px;object-fit:contain; }
.work-separator { grid-area:1/2/4;background:rgb(255 255 255 / .1); }
.work-info { grid-area:1/3; }
.work-meta { display:grid;grid-template-columns:1fr 1fr;gap:8px;font:11px/1.4 'ABCDiatype Mono',monospace;text-transform:uppercase; }
.work-summary { min-height:calc(3 * 1.2em);padding-top:16px;margin:0 0 16px;font-size:19px;line-height:1.2;letter-spacing:-.02em; }
.work-description { grid-area:2/3;font-size:14px;line-height:1.3;overflow:hidden; }
.work-description[hidden] { display:none; }
.work-description p { margin:0; }
.work-description a { text-decoration:underline;text-underline-offset:3px; }
.work-actions { grid-area:3/3;display:flex;flex-wrap:wrap;align-self:start;gap:8px;margin-top:32px; }
.work-links { display:flex;flex-wrap:wrap;gap:8px; }
.work-action { display:inline-flex;align-items:center;justify-content:space-between;gap:18px;min-height:34px;padding:7px 12px;border:0;border-radius:20px;color:inherit;background:rgb(255 255 255 / .06);font:inherit;font-size:14px;line-height:1.2;letter-spacing:-.02em;text-decoration:none;cursor:pointer;transition:background .2s,color .2s; }
.work-action[data-learn-more] { min-width:132px; }
.work-action:hover { background:#fff;color:#080808; }
.work-navigation { display:flex;gap:4px;font:11px/1.4 'ABCDiatype Mono',monospace;text-transform:uppercase; }
.work-view-all,.work-counter,.work-arrow { display:flex;align-items:center;justify-content:space-between;height:32px;padding:8px 16px;border:0;border-radius:20px;background:rgb(1 1 1 / .2);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:#fff;font:inherit; }
.work-view-all { width:128px;flex-shrink:0;cursor:pointer;white-space:nowrap; }
.work-view-all > span:first-child { font:18px/1 Arial,sans-serif; }
.work-counter { flex:1;min-width:0;gap:8px; }
.work-counter [data-current-name] { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.work-counter > span:last-child { flex-shrink:0; }
.work-arrow { width:56px;flex-shrink:0;justify-content:center;padding:8px;font:20px/1 Arial,sans-serif;cursor:pointer; }
.work-arrow:disabled { opacity:.35;cursor:default; }
.work-arrow:not(:disabled):hover,.work-view-all:hover,.work-view-all[aria-expanded=true] { background:#fff;color:#080808; }
.work-overview { max-height:calc(100svh - 124px);padding:2px;border-radius:12px;background:rgb(1 1 1 / .2);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);overflow-y:auto;overscroll-behavior:contain; }
/* Keep native scrolling/dragging, with a quiet glass-compatible inner rail. */
.work-overview { scrollbar-width:thin;scrollbar-color:rgb(255 255 255 / .38) transparent; }
@supports selector(::-webkit-scrollbar) {
  .work-overview { scrollbar-width:auto;scrollbar-color:auto; }
  .work-overview::-webkit-scrollbar { width:8px;height:8px;background:transparent; }
  .work-overview::-webkit-scrollbar-track { background:transparent;margin-block:8px; }
  .work-overview::-webkit-scrollbar-thumb { min-height:40px;border:2px solid transparent;border-radius:999px;background:rgb(255 255 255 / .38);background-clip:padding-box; }
  .work-overview::-webkit-scrollbar-thumb:hover { background-color:rgb(255 255 255 / .62); }
  .work-overview::-webkit-scrollbar-thumb:active { background-color:rgb(255 255 255 / .8); }
  .work-overview::-webkit-scrollbar-button { display:none;width:0;height:0; }
  .work-overview::-webkit-scrollbar-corner { background:transparent; }
}
@media (forced-colors:active) {
  .work-overview { scrollbar-color:auto; }
  .work-overview::-webkit-scrollbar-thumb { background-color:CanvasText; }
}
.work-overview[hidden] { display:none; }
.work-overview ul { display:flex;flex-direction:column;list-style:none;margin:0;padding:0; }
.work-tab { display:flex;align-items:center;gap:12px;width:100%;padding:2px;border:0;border-radius:6px;background:transparent;color:#fff;text-align:left;cursor:pointer;font:700 21px/1 ABCDiatype,Onest,sans-serif;letter-spacing:-.03em; }
.work-tab img { width:112px;height:70px;flex-shrink:0;border-radius:6px;object-fit:cover; }
.work-tab:hover,.work-tab[aria-current=true] { color:#080808;background:#fff; }
.work-tab-number { margin-left:auto;padding-right:12px;font:11px 'ABCDiatype Mono',monospace; }
.work-demo-note { margin:0;padding:24px var(--gutter);border-bottom:1px solid var(--line);font-size:12px;line-height:1.4;color:#686862; }
.work-demo-note a { text-decoration:underline;text-underline-offset:3px; }
@media(max-width:700px) {
  .work-hero-copy h1 { font-size:clamp(44px,10.2vw,70px);line-height:.85; }
  .work-hero-note { left:50%;width:calc(50% - 24px);font-size:12px;bottom:24px; }
  .work-dock { width:100%;padding-inline:12px; }
  .work-detail { width:100%;grid-template-columns:112px minmax(0,1fr);gap:0 12px;max-height:calc(100svh - 132px);overflow-y:auto; }
  .work-logo { grid-area:1/1;min-height:120px; }
  .work-logo img { max-width:82px;max-height:78px; }
  .work-separator { display:none; }
  .work-info { grid-area:1/2;border-left:1px solid rgb(255 255 255 / .1);padding-left:12px; }
  .work-meta { font-size:9px;grid-template-columns:1fr;gap:3px; }
  .work-summary { font-size:16px;min-height:0; }
  .work-description { grid-area:2/1/auto/-1;padding:0 4px;font-size:13px; }
  .work-actions { grid-area:3/1/auto/-1;margin-top:16px;gap:6px; }
  .work-links { gap:6px; }
  .work-action { font-size:12px;padding:7px 10px;gap:8px; }
  .work-action[data-learn-more] { min-width:106px; }
  .work-view-all { width:112px;padding-inline:10px;font-size:9px; }
  .work-counter { padding-inline:10px;font-size:9px; }
  .work-arrow { width:40px; }
  .work-tab { font-size:19px; }
  .work-tab img { width:66px;height:42px; }
}
@media(prefers-reduced-motion:reduce) {
  .work-hero { height:100svh; }
  .work-hero-inner { height:100%; }
  .work-hero-copy h1 { opacity:1; }
  .work-project-image { transform:none; }
  .work-page .case-particle { min-width:0; }
}
@media(prefers-reduced-transparency:reduce) {
  .work-detail,.work-overview,.work-counter,.work-view-all,.work-arrow { background:#242424;backdrop-filter:none; }
}
