/* Small feedback on real controls. This sheet belongs to Nagu's pages only;
   the original project archives retain their own interactions. */
.case-studies-holder .case-study-list { margin-bottom: 3rem; }
.case-study-action { display: flex; justify-content: center; padding-bottom: 1rem; }
@media (min-width: 1023px) and (max-height: 800px) {
  .case-studies-holder { padding-top: 4rem; }
  .case-studies-holder .case-study-list { margin-top: 3rem; margin-bottom: 2rem; }
  .case-studies-holder .case-study-list .description { margin-top: 2rem; }
}
.work-discovery-link {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 10px 4px;
  color: #3c3c3c;
  font: 500 2.2rem/1.3 futura, sans-serif;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}
.work-discovery-label { padding-bottom: 3px; border-bottom: 1px dotted currentColor; }
.work-discovery-icon {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  overflow: hidden;
  border-radius: 50%;
  background: #64cec025;
  color: #24584f;
  transition: background-color 220ms ease, scale 380ms cubic-bezier(.22,1.5,.45,1);
}
.work-discovery-icon svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.work-discovery-link:focus-visible { outline: 2px solid #00b7a2; outline-offset: 6px; border-radius: 3px; }
.work-discovery-link:focus-visible .work-discovery-icon { background: #64cec0; scale: 1.06; }
.work-discovery-link:focus-visible svg { animation: nagu-arrow-roll 440ms cubic-bezier(.22,1,.36,1); }

/* Use scale independently of the existing scroll/parallax transforms. A single
   short pulse returns to rest, without changing layout or the pointer target. */
body :is(button:not(.sheet-close), .hero-actions a, .website-link, .app-store-links a, .case-back,
  .email-actions a, .contact-us a, .brand-merge-banner a, .nav-header .nav-links > a, .sticky-menu a):focus-visible {
  animation: nagu-control-pop 420ms ease-out;
}
.website-link span, .app-store-links span, .case-next a > span, .contact-us a { display: inline-block; }
.about-us svg [role="button"] { transition: filter 200ms ease; }
.sheet-close { transition: color 180ms ease, background-color 180ms ease; }
.sheet-close-mark { display: block; pointer-events: none; }
.sheet-close:focus-visible { color: #f09a8d; background-color: #ef8b8020; }
.sheet-close:focus-visible .sheet-close-mark { animation: nagu-sheet-dismiss 480ms cubic-bezier(.22,1,.36,1); }

@media (hover: hover) and (pointer: fine) {
  body :is(button:not(:disabled):not(.sheet-close), .hero-actions a, .website-link, .app-store-links a,
    .email-actions a, .contact-us a, .case-back, .brand-merge-banner a, .nav-header .nav-links > a, .sticky-menu a):hover {
    animation: nagu-control-pop 420ms ease-out;
  }
  .work-discovery-link:hover .work-discovery-icon { background: #64cec0; scale: 1.06; }
  .work-discovery-link:hover svg { animation: nagu-arrow-roll 440ms cubic-bezier(.22,1,.36,1); }
  .company-profile-download:hover svg { animation: nagu-download-nod 420ms ease-out; }
  .website-link:hover span, .app-store-links a:hover span, .case-next a:hover > span {
    animation: nagu-arrow-nod 420ms ease-out;
  }
  .quote-previous:hover svg { animation: nagu-previous-nod 420ms ease-out; }
  .quote-next:hover svg { animation: nagu-next-nod 420ms ease-out; }
  .nav-header .logo-holder:hover img, .footer-brand:hover img,
  .social-media-links a:hover img { animation: nagu-mark-wink 440ms ease-out; }
  .about-us svg [role="button"]:hover { filter: brightness(1.14); }
  .project-link:hover .project-open { animation: nagu-control-pop 420ms ease-out; }
  .email-close:hover { animation: nagu-close-wiggle 440ms ease-out; }
  .sheet-close:hover { color: #f09a8d; background-color: #ef8b8020; }
  .sheet-close:hover .sheet-close-mark { animation: nagu-sheet-dismiss 480ms cubic-bezier(.22,1,.36,1); }
}
body :is(button:not(:disabled), .hero-actions a, .work-discovery-link, .website-link,
  .email-actions a, .contact-us a, .app-store-links a, .case-back, .sticky-menu a):active { animation: none; scale: .97; }

@keyframes nagu-control-pop { 0%,100% { scale: 1; } 45% { scale: 1.045; } 75% { scale: .995; } }
@keyframes nagu-arrow-roll {
  0%,100% { transform: translate(0,0); opacity: 1; }
  40% { transform: translate(18px,-18px); opacity: 0; }
  41% { transform: translate(-18px,18px); opacity: 0; }
}
@keyframes nagu-download-nod { 0%,100% { transform: translateY(0); } 45% { transform: translateY(3px); } }
@keyframes nagu-arrow-nod { 0%,100% { transform: translate(0,0); } 45% { transform: translate(2px,-2px); } }
@keyframes nagu-previous-nod { 0%,100% { transform: translateX(0); } 45% { transform: translateX(-3px); } }
@keyframes nagu-next-nod { 0%,100% { transform: translateX(0); } 45% { transform: translateX(3px); } }
@keyframes nagu-mark-wink { 0%,100% { rotate: 0deg; } 45% { rotate: -8deg; } }
@keyframes nagu-close-wiggle { 0%,100% { rotate: 0deg; scale: 1; } 45% { rotate: 12deg; scale: 1.06; } }
@keyframes nagu-sheet-dismiss {
  0%,100% { transform: translateY(0); opacity: 1; }
  40% { transform: translateY(7px) scale(.85); opacity: 0; }
  41% { transform: translateY(-5px) scale(.85); opacity: 0; }
  75% { transform: translateY(1px); opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
  body :is(button, a, a svg, a img, .project-open) { animation: none !important; }
  .sheet-close-mark { animation: none !important; }
  .sheet-close { transition: none; }
  .work-discovery-icon, .about-us svg [role="button"] { transition: none; }
  .work-discovery-link:is(:hover,:focus-visible) .work-discovery-icon { scale: none; }
  body :is(button, .hero-actions a, .work-discovery-link, .website-link,
    .email-actions a, .contact-us a, .app-store-links a, .case-back, .sticky-menu a):active { scale: none; }
  .category-pill:hover { translate: none; }
}
