.memo-number-hover,
.memo-box-hover,
.memo-cta-shadow,
.memo-cta-hover {
    transition: color 0.2s ease, border-color 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.memo-title-rule {
    border-bottom: 4px solid var(--bs-primary);
}

.memo-principle-rule {
    border-top: 2px solid rgba(var(--bs-emphasis-color-rgb), 0.2);
}

.memo-principle-group:hover .memo-number-hover {
    color: var(--bs-primary) !important;
}

.memo-principle-group:hover .memo-box-hover {
    border-top-color: rgba(var(--bs-primary-rgb), 0.4) !important;
}

.memo-cta-shadow {
    transform: translate(0.375rem, 0.375rem);
}

.memo-cta-group:hover .memo-cta-shadow {
    transform: translate(0, 0);
}

.memo-cta-hover:hover {
    background-color: var(--bs-accent, rgb(var(--tw-accent-600, 37 99 235) / 1)) !important;
    color: #fff !important;
    border-color: var(--bs-accent, rgb(var(--tw-accent-700, 29 78 216) / 1)) !important;
}

.values-timeline-row__thumb {
    width: 5rem;
    height: 5rem;
}

.values-timeline-row__badge {
    top: -0.5rem;
    right: -0.5rem;
    width: 2rem;
    height: 2rem;
}

.values-timeline-row__line {
    left: 2.5rem;
    top: 0;
    width: 2px;
    height: 2rem;
}

/* team v21 — horizontal carousel (layout + motion; colors in Blade) */
.team-carousel__carousel-wrap {
  max-width: 100%;
}

.team-carousel__carousel {
  gap: 1.5rem;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.team-carousel__carousel::-webkit-scrollbar {
  display: none;
}

.team-carousel__slide {
  flex: 0 0 17.5rem;
  width: 17.5rem;
  scroll-snap-align: start;
}

.team-carousel__card-media {
  height: 12rem;
}

.team-carousel__card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.team-carousel__nav {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 200ms ease, background-color 200ms ease;
}

.team-carousel__nav:hover {
  transform: translateY(-50%) scale(1.08);
}

.team-carousel__nav--prev,
.team-carousel__nav--next {
  transform: translateY(-50%);
}

.team-carousel__nav--prev:hover,
.team-carousel__nav--next:hover {
  transform: translateY(-50%) scale(1.08);
}

.accordion-playstation-timeline__chevron--open {
    transform: rotate(180deg);
}

.accordion-playstation-timeline__panel {
    max-height: 400px;
    transition: max-height 0.35s ease;
}

.accordion-playstation-timeline__panel[aria-hidden="true"],
.accordion-playstation-timeline__panel.is-closed {
    max-height: 0 !important;
}

.accordion-playstation-timeline__decor-tr {
    clip-path: polygon(100% 0, 100% 60%, 40% 0);
    top: 0;
    right: 0;
    width: 16rem;
    height: 16rem;
}

.accordion-playstation-timeline__decor-bl {
    clip-path: polygon(0 40%, 60% 100%, 0 100%);
    bottom: 0;
    left: 0;
    width: 12rem;
    height: 12rem;
}

.accordion-playstation-timeline__badge-size {
    width: 3.5rem;
    height: 2.5rem;
}

.accordion-playstation-timeline__panel--closed {
    max-height: 0;
}

.accordion-playstation-timeline__min-shrink {
  min-width: 0;
}

