@font-face {
  font-family: "Suisse Intl";
  src: url("./suisse-intl-regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Apparel";
  src: url("./assets/apparel-regular.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; color: #000; background: #fff; font-family: "Suisse Intl", sans-serif; }
a { color: inherit; text-decoration: none; }
h1, h2, p { margin: 0; font-weight: 400; }

.case-page { position: relative; width: 1440px; height: 15414px; margin: 0 auto; overflow: hidden; background: #fff; }
.case-grid { position: absolute; z-index: 0; pointer-events: none; }
.case-grid-desktop { left: 41px; top: 0; }
.case-grid-mobile { display: none; }
.case-cover { position: absolute; z-index: 1; left: 0; top: 0; width: 1440px; height: 600px; overflow: hidden; background: #d9d9d9; }
.case-cover img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }

.case-header { position: absolute; z-index: 2; left: 0; top: 32px; width: 1440px; height: 40px; padding: 8px 40px; background: #fff; }
.case-header-inner, .case-header-main { width: 100%; height: 24px; }
.case-header-main { display: flex; align-items: center; justify-content: space-between; }
.case-time, .case-nav-desktop, .case-header-talk, .case-nav-mobile { font: 400 16px/1 "Apparel", serif; letter-spacing: -.48px; }
.case-time { display: flex; gap: 4px; white-space: nowrap; }
.case-highlight { background: #fff51d; }
.case-nav-desktop { position: absolute; left: 523.6667px; top: 12px; display: flex; gap: 332.6667px; white-space: pre; }
.case-header-talk { padding: 4px; white-space: nowrap; }
.case-header-rule, .case-nav-mobile { display: none; }

.case-intro { position: absolute; z-index: 1; left: 40px; top: 656px; width: 1360px; height: 164px; }
.case-breadcrumb { position: absolute; z-index: 3; left: 40px; top: 656px; display: flex; align-items: center; gap: 16px; height: 32px; }
.case-breadcrumb.is-stuck { position: fixed; left: max(40px, calc((100vw - 1440px) / 2 + 40px)); top: 16px; background: #fff; }
.case-back { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; background: #000; }
.case-back img { display: block; }
.case-breadcrumb > div { display: flex; align-items: center; gap: 8px; font-size: 16px; line-height: 1; letter-spacing: -.48px; }
.case-breadcrumb span { opacity: .5; }
.case-breadcrumb b { font-weight: 400; }
.case-intro h1 { position: absolute; left: 0; top: 56px; font-size: 72px; line-height: 1; letter-spacing: -1.44px; }
.case-subtitle { position: absolute; left: 0; top: 144px; font-size: 20px; line-height: 1; letter-spacing: -.6px; opacity: .5; white-space: nowrap; }
.case-tags { position: absolute; right: 0; bottom: 0; display: flex; gap: 8px; }
.case-tags span { display: flex; align-items: center; justify-content: center; height: 26px; padding: 4px; border: 1px solid #000; font: 400 16px/1 "Apparel", serif; letter-spacing: -.48px; white-space: pre; }

.case-divider { position: absolute; z-index: 1; left: 40px; width: 1360px; height: 1px; pointer-events: none; }
.case-divider-top { top: 900px; }
.case-divider-bottom { top: 14457.128px; }

.case-section { position: absolute; z-index: 1; left: 40px; width: 1360px; }
.case-section-about { top: 980px; height: 4835.128px; }
.case-section-task { top: 5939.128px; height: 961px; }
.case-section-orders { top: 7024.128px; height: 909px; }
.case-section-delivery { top: 8057.128px; height: 2041px; }
.case-section-mobile-version { top: 10222.128px; height: 4155px; }
.case-copy { position: absolute; left: 0; top: 0; width: 556px; padding-right: 24px; }
.case-copy h2, .case-summary h2 { font: 400 48px/1 "Apparel", serif; letter-spacing: -.96px; }
.case-copy h2 { width: 532px; }
.case-paragraphs { display: flex; flex-direction: column; gap: 16px; width: 532px; margin-top: 24px; font-size: 18px; line-height: 1.6; letter-spacing: -.54px; opacity: .5; }
.case-section-about .case-paragraphs p { height: 116px; }
.case-section-task .case-paragraphs p:first-child, .case-section-delivery .case-paragraphs p:first-child, .case-section-mobile-version .case-paragraphs p:first-child { height: 87px; }
.case-section-task .case-paragraphs p:last-child, .case-section-delivery .case-paragraphs p:nth-child(2) { height: 116px; }
.case-section-orders .case-paragraphs p:first-child { height: 174px; }
.case-section-orders .case-paragraphs p:last-child, .case-section-mobile-version .case-paragraphs p:last-child { height: 145px; }
.case-section-delivery .case-paragraphs p:last-child { height: 58px; }
.case-image { position: absolute; overflow: hidden; border: 1px solid rgba(0,0,0,.1); }
.case-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.case-image-landing { left: 575px; top: 0; width: 785px; height: 4835.128px; }
.case-image-dashboard { left: 574px; top: 0; width: 785px; height: 961px; }
.case-image-kanban { left: 575px; top: 0; width: 785px; height: 909px; }
.case-delivery-images { position: absolute; left: 575px; top: 0; width: 785px; height: 2041px; }
.case-image-order-table, .case-image-delivery-step, .case-image-order-details { left: 0; width: 785px; }
.case-image-order-table { top: 0; height: 469px; }
.case-image-delivery-step { top: 509px; height: 469px; }
.case-image-order-details { top: 1018px; height: 1023px; }
.case-mobile-images { position: absolute; left: 556px; top: 0; width: 804px; height: 4155px; }
.case-image-mobile-dashboard { left: 0; top: 0; width: 382px; height: 3939px; }
.case-mobile-images-right { position: absolute; left: 422px; top: 0; width: 382px; height: 4155px; }
.case-image-mobile-kanban, .case-image-mobile-balance, .case-image-mobile-new-order { left: 0; width: 382px; }
.case-image-mobile-kanban { top: 0; height: 1486px; }
.case-image-mobile-balance { top: 1526px; height: 925px; }
.case-image-mobile-new-order { top: 2491px; height: 1664px; }

.case-summary { position: absolute; z-index: 1; left: 442px; top: 14577.128px; display: flex; flex-direction: column; align-items: center; gap: 24px; width: 556px; height: 314px; text-align: center; }
.case-summary-copy { display: flex; flex-direction: column; gap: 16px; width: 100%; height: 190px; font-size: 18px; line-height: 1.6; letter-spacing: -.54px; opacity: .5; }
.case-summary-copy p:first-child { height: 116px; }
.case-summary-copy p:last-child { height: 58px; }
.case-summary a { display: flex; align-items: center; justify-content: center; width: 74px; height: 28px; padding: 4px; background: #fff51d; font: 400 20px/1 "Apparel", serif; letter-spacing: -.6px; white-space: nowrap; }
.case-projects { position: absolute; z-index: 1; left: 155px; top: 15011.128px; width: 1130px; height: 182px; }
.case-project-strip { position: absolute; left: -228.5px; top: 0; display: flex; gap: 16px; width: max-content; }
.case-project { display: flex; flex: none; flex-direction: column; gap: 16px; width: 213px; }
.case-project > span { position: relative; display: block; width: 213px; height: 150px; overflow: hidden; background: #d9d9d9; }
.case-project > span img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.case-project > span img.case-project-tall { top: -1.83%; height: 191.65%; }
.case-project b { height: 16px; font: 400 16px/1 "Suisse Intl", sans-serif; letter-spacing: -.48px; }

@media (max-width: 767px) {
  .case-page { width: 390px; height: 15451px; margin: 0; }
  .case-grid-desktop { display: none; }
  .case-grid-mobile { display: block; left: 16px; top: 0; }
  .case-cover { width: 390px; height: 600px; }
  .case-cover-desktop { display: none !important; }
  .case-header { width: 390px; height: 104px; padding: 16px; }
  .case-header-inner { position: relative; width: 358px; height: 72px; }
  .case-header-main { height: 24px; }
  .case-nav-desktop { display: none; }
  .case-header-rule { position: absolute; left: 0; top: 40px; display: block; }
  .case-nav-mobile { position: absolute; left: 0; top: 56px; display: flex; justify-content: space-between; width: 358px; white-space: pre; }

  .case-intro { left: 16px; top: 640px; width: 358px; height: 176px; }
  .case-breadcrumb { left: 16px; top: 640px; gap: 12px; }
  .case-breadcrumb.is-stuck { left: 16px; top: 16px; }
  .case-breadcrumb > div span { font-size: 14px; letter-spacing: -.42px; }
  .case-breadcrumb > div b { font-size: 16px; }
  .case-intro h1 { top: 56px; font-size: 48px; letter-spacing: -.96px; }
  .case-subtitle { top: 120px; font-size: 16px; letter-spacing: -.48px; }
  .case-tags { left: 0; right: auto; bottom: 0; }
  .case-tags span { height: 24px; font-size: 14px; letter-spacing: -.42px; }
  .case-divider-top { display: none; }
  .case-divider-bottom { left: 16px; top: 14723.226px; width: 358px; }

  .case-section { left: 16px; width: 358px; }
  .case-section-about { top: 872px; height: 2561px; }
  .case-section-task { top: 3489px; height: 768.265px; }
  .case-section-orders { top: 4313.265px; height: 906.683px; }
  .case-section-delivery { top: 5275.948px; height: 1424.006px; }
  .case-section-mobile-version { top: 6755.954px; height: 7911.272px; }
  .case-copy { width: 358px; padding-right: 0; }
  .case-copy h2, .case-summary h2 { font-size: 32px; letter-spacing: -.64px; }
  .case-copy h2 { width: 358px; }
  .case-paragraphs { width: 358px; font-size: 16px; letter-spacing: -.48px; }
  .case-section-about .case-paragraphs p { height: 130px; }
  .case-section-task .case-paragraphs p:first-child { height: 104px; }
  .case-section-task .case-paragraphs p:last-child { height: 130px; }
  .case-section-orders .case-paragraphs p:first-child { height: 208px; }
  .case-section-orders .case-paragraphs p:last-child { height: 156px; }
  .case-section-delivery .case-paragraphs p:first-child, .case-section-delivery .case-paragraphs p:nth-child(2) { height: 130px; }
  .case-section-delivery .case-paragraphs p:last-child { height: 78px; }
  .case-section-mobile-version .case-paragraphs p:first-child { height: 78px; }
  .case-section-mobile-version .case-paragraphs p:last-child { height: 156px; }
  .case-image { left: 0; width: 358px; }
  .case-image-landing { top: 356px; height: 2205px; }
  .case-image-dashboard { top: 330px; height: 438.265px; }
  .case-image-kanban { top: 492px; height: 414.683px; }
  .case-delivery-images { left: 0; top: 0; width: 358px; height: 1424.006px; }
  .case-image-order-table { top: 482px; height: 213.806px; }
  .case-image-delivery-step { top: 719.806px; height: 213.806px; }
  .case-image-order-details { top: 957.612px; height: 466.394px; }
  .case-mobile-images { left: 0; top: 0; width: 358px; height: 7911.272px; }
  .case-image-mobile-dashboard { top: 330px; height: 3691.072px; }
  .case-mobile-images-right { position: static; width: 358px; height: auto; }
  .case-image-mobile-kanban { top: 4045.072px; height: 1392.639px; }
  .case-image-mobile-balance { top: 5461.71px; height: 866.885px; }
  .case-image-mobile-new-order { top: 6352.595px; height: 1558.677px; }

  .case-summary { left: 16px; top: 14779.226px; width: 358px; height: 378px; }
  .case-summary-copy { height: 250px; font-size: 16px; letter-spacing: -.48px; }
  .case-summary-copy p:first-child { height: 156px; }
  .case-summary-copy p:last-child { height: 78px; }
  .case-summary a { width: 358px; height: 48px; }
  .case-projects { left: 16px; top: 15213.226px; width: 358px; }
  .case-project-strip { left: -614.5px; }
}
