.arc.is-empty {
  width: min(540px, 88vw);
  height: auto;
  transform: translateX(-50%);
  direction: rtl;
}
.project-message { text-align: center; color: #f4f4f4; line-height: 2; padding: 30px 22px; }
.projects-retry { border: 1px solid #b496ed80; border-radius: 24px; padding: 9px 20px; background: #161616b0; font-size: 13px; }
.project .caption { display: block; }
.card-summary { display: -webkit-box; line-clamp: 2; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 10px; line-height: 1.8; color: #666; margin-top: 5px; }
.arc.project-strip {
  width: calc(100% - 100px);
  left: 50%;
  height: clamp(300px, 33vw, 430px);
  transform: translateX(-50%);
  display: flex;
  gap: 22px;
  padding: 25px 20px 40px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x proximity;
  scrollbar-width: thin;
  scrollbar-color: #9876d4 #ffffff12;
}
.project-strip .card { position: relative; flex: none; left: auto; top: auto; transform: none; scroll-snap-align: center; }
.project-strip .card:hover, .project-strip .card:focus-visible { transform: translateY(-10px); }
.project-description { white-space: pre-wrap; overflow-wrap: anywhere; }
.project-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.project-gallery img { height: 180px; object-fit: cover; }
.project-video-link { display: inline-block; margin-top: 22px; font-size: 13px; text-underline-offset: 4px; }
@media (max-width: 760px) {
  .arc.is-empty { left: 50%; padding: 0; }
  .arc.project-strip { width: 100%; left: 0; height: 340px; transform: none; padding: 22px max(28px, calc((100vw - 225px) / 2)); }
  .project-strip .card { width: 225px; height: 295px; }
  .project-gallery { grid-template-columns: 1fr; }
}
@media (max-width: 760px) and (max-height: 740px) {
  .arc.project-strip { height: 290px; }
  .project-strip .card { width: 190px; height: 245px; }
}
@media (max-height: 700px) and (min-width: 761px) { .arc.project-strip { height: 330px; } }
