/* intro v19 — photo-free index list: soft blurred blobs, fixed icon tiles, scroll reveal */

/* Soft background blobs (fixed size + blur have no BS utility; colour stays a Tailwind/BS class) */
.intro-index__blob {
    width: 24rem;
    height: 24rem;
    filter: blur(64px);
    opacity: 0.5;
}

/* Icon tile fixed size (BS has no w-N/h-N utility) */
.intro-index__icon-tile {
    width: 3rem;
    height: 3rem;
}

/* Scroll reveal — cards hide only once JS arms the section (no-JS content stays visible) */
.intro-index.is-armed .intro-index__card {
    opacity: 0;
    transform: translateY(1.5rem);
    transition: opacity 560ms ease, transform 560ms ease;
}
.intro-index.is-armed .intro-index__card.is-in {
    opacity: 1;
    transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
    .intro-index.is-armed .intro-index__card {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

.services__tile--lift {
  transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.services__tile--lift:hover {
  box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
}

@media (min-width: 640px) {
  .services__tile--lift:hover {
    transform: scale(1.05);
  }
}

.services__cta--lift {
  transition: filter 0.3s ease, transform 0.3s ease;
}

@media (min-width: 640px) {
  .services__cta--lift:hover {
    transform: scale(1.05);
  }
}

.services__cta--lift:hover {
  filter: brightness(0.92);
}

/* process polaroid — card rotation, frame aspect ratio, image fit */
.process-pol__card {
    transition: transform 200ms ease;
}
.process-pol__card--0 { transform: rotate(-2deg); }
.process-pol__card--1 { transform: rotate(1.5deg); }
.process-pol__card--2 { transform: rotate(-1deg); }
.process-pol__card--3 { transform: rotate(2.5deg); }
.process-pol__card--4 { transform: rotate(-1.5deg); }
.process-pol__card--5 { transform: rotate(2deg); }
.process-pol__card:hover {
    transform: rotate(0deg) scale(1.03);
    z-index: 1;
}
.process-pol__frame {
    aspect-ratio: 1;
    overflow: hidden;
}
.process-pol__img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/* v23 polaroid — fixed image height (object-fit: no BS util) */
.perks-polaroid__img {
    object-fit: cover;
    height: 9rem;
    display: block;
}

/* slight rotation for polaroid feel */
.perks-polaroid__card:nth-child(odd) {
    transform: rotate(-0.8deg);
}

.perks-polaroid__card:nth-child(even) {
    transform: rotate(0.6deg);
}

.perks-polaroid__card:hover {
    transform: rotate(0deg) scale(1.02);
    transition: transform 0.25s ease;
}

.perks-polaroid__card {
    transition: transform 0.25s ease;
}

/* blob animation */
.perks-polaroid__blob--a {
    animation: perks-polaroid-bob 8s ease-in-out infinite;
}

.perks-polaroid__blob--b {
    animation: perks-polaroid-bob 10s ease-in-out infinite reverse;
}

@keyframes perks-polaroid-bob {
    0%, 100% { transform: translate(0, 0); }
    50% { transform: translate(1rem, -1.5rem); }
}

