/* Carrossel de lembranças — estilos restritos a esta seção */
/* Carrossel de lembranças — estilos restritos a esta seção */
    .keepsake-carousel {
      width: 100%;
      overflow: hidden;
      margin: 34px 0 30px;
      padding: 8px 0 16px;
      position: relative;
      -webkit-mask-image: linear-gradient(to right, transparent, #000 3%, #000 97%, transparent);
      mask-image: linear-gradient(to right, transparent, #000 3%, #000 97%, transparent);
    }
    .keepsake-track {
      display: flex;
      width: max-content;
      animation: keepsake-scroll 78s linear infinite;
      will-change: transform;
    }
    .keepsake-carousel:hover .keepsake-track,
    .keepsake-carousel:focus-within .keepsake-track {
      animation-play-state: paused;
    }
    .keepsake-group {
      display: flex;
      flex: 0 0 auto;
      align-items: stretch;
      gap: 20px;
      padding-right: 20px;
    }
    .keepsake-slide {
      flex: 0 0 280px;
      width: 280px;
      height: 300px;
      margin: 0;
      padding: 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: var(--cream, #f7f4ee);
      border: 1px solid var(--line, #e8e1d6);
      box-shadow: 0 5px 18px rgba(37,34,29,.07);
    }
    .keepsake-slide img {
      display: block;
      width: 100%;
      height: 100%;
      max-height: 276px;
      object-fit: contain;
      object-position: center;
    }
    @keyframes keepsake-scroll {
      from { transform: translateX(0); }
      to { transform: translateX(-50%); }
    }
    @media (max-width: 700px) {
      .keepsake-carousel { margin: 26px 0 22px; }
      .keepsake-group { gap: 14px; padding-right: 14px; }
      .keepsake-slide { flex-basis: 230px; width: 230px; height: 260px; padding: 9px; }
      .keepsake-slide img { max-height: 242px; }
      .keepsake-track { animation-duration: 66s; }
    }
    @media (prefers-reduced-motion: reduce) {
      .keepsake-carousel { overflow-x: auto; -webkit-mask-image: none; mask-image: none; }
      .keepsake-track { animation: none; }
      .keepsake-group[aria-hidden="true"] { display: none; }
    }
