.auto-1 { width: 100%; max-width: 1728px; margin: 0 auto; padding: min(3.47vw, 100px) min(6.02vw, 104px) 0; display: flex; flex-direction: column; align-items: center; text-align: center; gap: min(0.46vw, 8px); }
.auto-2 { font-size: min(2.78vw, 48px); letter-spacing: min(0.111vw, 1.92px); color: var(--main-text); line-height: 1.1; white-space: nowrap; }
.auto-3 { font-size: min(1.39vw, 24px); letter-spacing: min(0.056vw, 0.96px); color: var(--green-text); line-height: normal; white-space: nowrap; }
.auto-4 { width: 100%; max-width: 1728px; margin: 0 auto; padding: min(4.63vw, 80px) min(6.02vw, 104px) min(10.42vw, 180px); }
.auto-5 { display: grid; grid-template-columns: repeat(2, min(35.53vw, 614px)); gap: min(3.47vw, 60px) min(2.78vw, 48px); justify-content: center; }
.auto-6 { cursor: pointer; background-color: var(--background); border: min(0.23vw, 4px) solid var(--main-text); border-radius: min(1.57vw, 27.14px); box-shadow: min(0.46vw, 8px) min(0.46vw, 8px) 0 0 var(--main-text); padding: min(1.04vw, 18px) min(1.85vw, 32px) 0; display: flex; flex-direction: column; width: min(35.53vw, 614px); height: min(32.52vw, 562px); overflow: hidden; }
.auto-7 { display:flex; gap:min(1.16vw,20px); justify-content:flex-end; margin-bottom:min(1.16vw,20px); flex-shrink:0; }
.auto-8 { background:var(--pink-accent); padding:min(0.69vw,12px) min(0.93vw,16px); border-radius:min(0.93vw,16px); font-size:min(1.04vw,18px); letter-spacing:min(0.046vw,0.8px); color:var(--main-text); white-space:nowrap; line-height:1.1; }
.auto-9 { background:var(--green-accent); padding:min(0.69vw,12px) min(0.93vw,16px); border-radius:min(0.93vw,16px); font-size:min(1.04vw,18px); letter-spacing:min(0.046vw,0.8px); color:var(--main-text); white-space:nowrap; line-height:1.1; }
.auto-10 { flex:1; overflow:hidden; border-radius:min(0.46vw,8px); margin-bottom:min(1.16vw,20px); }
.auto-11 { width:100%; height:100%; object-fit:cover; }
.auto-12 { display:flex; flex-direction:column; gap:min(0.23vw,4px); padding-bottom:min(1.39vw,24px); flex-shrink:0; }
.auto-13 { font-size:min(1.45vw,25px); letter-spacing:min(0.058vw,1.00px); color:var(--main-text); line-height:1.1; }
.auto-14 { font-size:min(0.93vw,16px); letter-spacing:min(0.037vw,0.64px); color:var(--main-text); line-height:normal; }

@media (max-width: 980px) {
  .auto-1 {
    padding: min(12.31vw, 90px) min(6.15vw, 24px) 0;
    gap: min(1.03vw, 6px);
  }

  .auto-2 {
    font-size: clamp(34px, 7.18vw, 44px);
    letter-spacing: min(0.2vw, 0.8px);
    line-height: 1.06;
    white-space: normal;
  }

  .auto-3 {
    font-size: clamp(16px, 3.85vw, 22px);
    letter-spacing: min(0.1vw, 0.4px);
    white-space: normal;
  }

  .auto-4 {
    padding: min(10.26vw, 40px) min(6.15vw, 24px) min(12.31vw, 48px);
  }

  .auto-5 {
    grid-template-columns: 1fr;
    gap: min(6.15vw, 24px);
  }

  .auto-6 {
    width: 100%;
    height: auto;
    min-height: 0;
    border-radius: min(4.1vw, 16px);
    box-shadow: min(1.03vw, 4px) min(1.03vw, 4px) 0 0 var(--main-text);
    padding: min(3.59vw, 14px);
  }

  .auto-7 {
    gap: min(1.03vw, 4px);
    margin-bottom: min(2.05vw, 8px);
    flex-wrap: nowrap;
  }

  .auto-8,
  .auto-9 {
    font-size: clamp(11px, 2.82vw, 13px);
    letter-spacing: min(0.08vw, 0.32px);
    padding: min(1.03vw, 4px) min(2.05vw, 8px);
  }

  .auto-10 {
    height: min(53.85vw, 360px);
    margin-bottom: min(4.1vw, 16px);
  }

  .auto-12 {
    gap: min(0.51vw, 2px);
    padding-bottom: min(1.54vw, 6px);
  }

  .auto-13 {
    font-size: clamp(18px, 5.13vw, 22px);
    letter-spacing: min(0.15vw, 0.6px);
    line-height: 1.05;
  }

  .auto-14 {
    font-size: clamp(12px, 3.59vw, 15px);
    letter-spacing: min(0.1vw, 0.4px);
    line-height: 1.15;
  }
}

/* Scroll-driven opacity/transform (see scroll-card-fade.js). Desktop / tablet only. */
@media (min-width: 681px) and (prefers-reduced-motion: no-preference) {
  html.work-motion .auto-4 .auto-6 {
    opacity: 0;
    will-change: opacity, transform;
  }
}

/* Mobile: slow staggered fade-in on load / refresh (no scroll-driven fade; see work-animations.js). */
@media (max-width: 680px) and (prefers-reduced-motion: no-preference) {
  html.work-motion-mobile .auto-5 > .auto-6 {
    opacity: 0;
    animation: workMobileCardFadeIn 1.45s cubic-bezier(0.33, 0.72, 0.42, 1) both;
    will-change: opacity, transform;
  }

  html.work-motion-mobile .auto-5 > .auto-6:nth-child(1) {
    animation-delay: 0.06s;
  }
  html.work-motion-mobile .auto-5 > .auto-6:nth-child(2) {
    animation-delay: 0.18s;
  }
  html.work-motion-mobile .auto-5 > .auto-6:nth-child(3) {
    animation-delay: 0.3s;
  }
  html.work-motion-mobile .auto-5 > .auto-6:nth-child(4) {
    animation-delay: 0.42s;
  }
  html.work-motion-mobile .auto-5 > .auto-6:nth-child(5) {
    animation-delay: 0.54s;
  }
  html.work-motion-mobile .auto-5 > .auto-6:nth-child(6) {
    animation-delay: 0.66s;
  }
  html.work-motion-mobile .auto-5 > .auto-6:nth-child(7) {
    animation-delay: 0.78s;
  }
}

@keyframes workMobileCardFadeIn {
  from {
    opacity: 0;
    transform: translate3d(0, 14px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
