/* intro v27 — Evangelion cascade: organic blob, wide banner, diagonal steps, slide-in L/R, word reveal */

/* Organic blob */
.intro-eva__blob {
    width: 24rem;
    height: 24rem;
    filter: blur(60px);
    opacity: 0.4;
    border-radius: 38% 62% 55% 45% / 55% 42% 58% 45%;
    animation: intro-eva-morph 12s ease-in-out infinite;
}
@keyframes intro-eva-morph {
    50% { border-radius: 55% 45% 42% 58% / 42% 58% 45% 55%; }
}

/* Single wide banner */
.intro-eva__banner-img {
    display: block;
    width: 100%;
    height: 12rem;
    object-fit: cover;
}
@media (min-width: 768px) {
    .intro-eva__banner-img { height: 16rem; }
}

/* Stepped diagonal cascade + asymmetric mixed sizes */
.intro-eva__row { margin-left: 0; }
.intro-eva__cell { max-width: 46rem; }
@media (min-width: 768px) {
    .intro-eva__row:nth-child(1) .intro-eva__cell { margin-left: 0;    max-width: 40rem; }
    .intro-eva__row:nth-child(2) .intro-eva__cell { margin-left: 3rem; max-width: 34rem; }
    .intro-eva__row:nth-child(3) .intro-eva__cell { margin-left: 6rem; max-width: 44rem; }
    .intro-eva__row:nth-child(4) .intro-eva__cell { margin-left: 9rem; max-width: 30rem; }
}

/* Slide-in from L / R on scroll — hidden only once JS arms it (no-JS content stays visible) */
.intro-eva.is-armed .intro-eva__row {
    opacity: 0;
    transition: opacity 560ms ease, transform 560ms ease;
}
.intro-eva.is-armed .intro-eva__row:nth-child(odd)  { transform: translateX(-2.5rem); }
.intro-eva.is-armed .intro-eva__row:nth-child(even) { transform: translateX(2.5rem); }
.intro-eva.is-armed .intro-eva__row.is-in { opacity: 1; transform: translateX(0); }

/* Letterpress-ish press using the element's own colour */
.intro-eva__press { text-shadow: 0 1px 0 currentColor; }

/* Word-by-word reveal */
.intro-eva__word { display: inline-block; }
.intro-eva.is-armed .intro-eva__word {
    opacity: 0;
    transform: translateY(0.6em);
    transition: opacity 420ms ease, transform 420ms ease;
}
.intro-eva.is-armed .intro-eva__reveal.is-in .intro-eva__word { opacity: 1; transform: translateY(0); }

@media (prefers-reduced-motion: reduce) {
    .intro-eva__blob { animation: none; }
    .intro-eva__row { opacity: 1; transform: none; }
    .intro-eva__word { opacity: 1; transform: none; }
}

.values-hub-glow {
    width: min(100%, 42rem);
    height: 16rem;
    filter: blur(3rem);
}

.values-hub-sq-10 {
    width: 2.5rem;
    height: 2.5rem;
}

.values-hub-sq-11 {
    width: 2.75rem;
    height: 2.75rem;
}

.values-hub-spotlight {
    min-height: 12rem;
}

.values-hub-spotlight__rings {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 22rem;
    height: 22rem;
    max-width: 90vw;
    max-height: 90vw;
    pointer-events: none;
}

.values-hub-ring {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    border: 1px solid color-mix(in srgb, var(--bs-primary, #0d6efd) 22%, transparent);
    pointer-events: none;
}

.values-hub-ring--a {
    width: 100%;
    height: 100%;
    opacity: 0.45;
}

.values-hub-ring--b {
    width: 72%;
    height: 72%;
    border-style: dashed;
    opacity: 0.35;
}

.values-hub-core-logo :is(img, svg) {
    max-height: 2.75rem;
    width: auto;
}

.values-hub-core-bs {
    min-height: 11rem;
    max-width: 13rem;
    background: linear-gradient(
        180deg,
        color-mix(in srgb, var(--bs-body-bg, #fff) 92%, var(--bs-primary, #0d6efd) 8%),
        var(--bs-body-bg, #fff)
    );
}

.values-hub-card-bs {
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}

.values-hub-card-bs:hover {
    transform: translateY(-0.25rem);
    box-shadow: var(--bs-box-shadow);
    border-color: rgba(var(--bs-primary-rgb, 13, 110, 253), 0.35) !important;
}

#scroll-container {
  -ms-overflow-style: none;
  scrollbar-width: none;
  touch-action: pan-x;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
}

/* #scroll-container::-webkit-scrollbar {
  display: none;
} */
/* 
#scroll-container {
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
} */

/* @media (pointer: fine) {
  #scroll-container {
    scroll-snap-type: x proximity;
  }
} */

.values-scroll-deck__hint-right {
    cursor: pointer;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    right: 1rem;
}

.values-scroll-deck__hint-left {
    cursor: pointer;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    left: 1rem;
}

.values-scroll-deck__item {
    scroll-snap-align: center;
    width: 90%;
    min-width: 280px;
}

@media (min-width: 768px) {
    .values-scroll-deck__item {
        width: 70%;
    }
}

@media (min-width: 992px) {
    .values-scroll-deck__item {
        width: 55%;
    }
}

.values-scroll-deck__card {
    min-height: 380px;
}

.values-scroll-deck__thumb {
    width: 6rem;
    height: 6rem;
}

.values-scroll-deck__overlay {
    height: 6rem;
}

.precept-dashboard__topo {
    background-image: repeating-radial-gradient(circle at 20% 30%, currentColor 0, transparent 2px, transparent 40px);
}

.precept-dashboard__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
}

@media (min-width: 640px) {
    .precept-dashboard__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .precept-dashboard__grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

.sidebar-dot-card-timeline__line {
    width: 2px;
    left: 1rem;
}

@media (min-width: 768px) {
    .sidebar-dot-card-timeline__line {
        left: 2rem;
    }
}

.sidebar-dot-card-timeline__dot {
    width: 1rem;
    height: 1rem;
    left: 0.5rem;
    margin-top: 0.5rem;
}

@media (min-width: 768px) {
    .sidebar-dot-card-timeline__dot {
        left: 1.5rem;
        transform: translateX(-0.5rem);
    }
}

.sidebar-dot-card-timeline__card {
    margin-left: 0;
}

@media (min-width: 768px) {
    .sidebar-dot-card-timeline__card {
        margin-left: 4rem;
    }
}

