.outline-orb-top {
    top: 0;
    right: 0;
    width: 18rem;
    height: 18rem;
    filter: blur(3rem);
}

.outline-orb-bottom {
    bottom: 0;
    left: 0;
    width: 18rem;
    height: 18rem;
    filter: blur(3rem);
}

.outline-media-group:hover .outline-image-hover {
    transform: scale(1.1);
}

.outline-image-hover {
    transition: transform 0.7s ease;
}

.outline-overlay-hover {
    transition: opacity 0.5s ease;
}

.outline-media-group:hover .outline-overlay-hover {
    opacity: 1;
}

.outline-float-star {
    top: -1rem;
    right: -1rem;
}

.outline-float-check {
    bottom: -1rem;
    left: -1rem;
}

@keyframes bounce-kf {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-25%); }
}

@keyframes pulse-kf {
    0%, 100% { opacity: 0.2; }
    50% { opacity: 0.35; }
}

.outline-bounce {
    animation: bounce-kf 1s infinite;
}

.outline-pulse {
    animation: pulse-kf 3s ease-in-out infinite;
}

.outline-card-hover {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.outline-card-group:hover .outline-card-hover {
    transform: scale(1.05);
    box-shadow: var(--bs-box-shadow-lg);
}

.outline-icon-rotate-hover {
    transition: transform 0.3s ease;
}

.outline-card-group:hover .outline-icon-rotate-hover {
    transform: rotate(12deg);
}

.outline-title-hover {
    transition: color 0.3s ease;
}

.outline-card-group:hover .outline-title-hover {
    color: var(--bs-primary);
}

.outline-sq-6  { width: 1.5rem;  height: 1.5rem;  flex-shrink: 0; }
.outline-sq-8  { width: 2rem;    height: 2rem;    flex-shrink: 0; }
.outline-sq-14 { width: 3.5rem;  height: 3.5rem;  flex-shrink: 0; }

.orbit-avatar-ring__portrait {
    width: 8rem;
    height: 8rem;
}

.orbit-avatar-ring__beacon {
    width: 1.5rem;
    height: 1.5rem;
}

/* values v13 — accordion chevron rotation, CSS-only via details[open] */
.values-notion-stack__chevron {
    transition: transform 200ms ease;
}

details.values-notion-stack__summary,
details > .values-notion-stack__summary {
    /* no-op selector kept for clarity; actual toggle target is the chevron below */
}

details[open] > .values-notion-stack__summary .values-notion-stack__chevron,
details[open] .values-notion-stack__chevron {
    transform: rotate(180deg);
}

.values-notion-stack__summary {
    -webkit-tap-highlight-color: transparent;
}

.values-notion-stack__summary::-webkit-details-marker {
    display: none;
}

.values-notion-stack__idx {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    letter-spacing: 0.05em;
}

.values-notion-stack__index-num {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

/* trust-split — left caption column + two stacked opposite marquees */
.trust-split__eyebrow {
    letter-spacing: 0.18em;
}

.trust-split__count {
    letter-spacing: -0.035em;
}

.trust-split__rule {
    width: 0;
    min-height: 8rem;
}

.trust-split__viewport {
    mask-image: linear-gradient(to right, transparent, black 6%, black 94%, transparent);
    -webkit-mask-image: linear-gradient(to right, transparent, black 6%, black 94%, transparent);
}

.trust-split__track {
    width: max-content;
    animation: trust-split-slide 52s linear infinite;
}

.trust-split__track--rev {
    animation-direction: reverse;
    animation-duration: 60s;
    animation-delay: -18s;
}

.trust-split__viewport:hover .trust-split__track {
    animation-play-state: paused;
}

.trust-split__group {
    gap: 0.85rem;
    padding-right: 0.85rem;
}

.trust-split__tile {
    width: 11.5rem;
    height: 4.75rem;
}

.trust-split__name {
    letter-spacing: -0.01em;
}

@keyframes trust-split-slide {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}

@media (min-width: 1024px) {
    .trust-split .trust-split__aside {
        position: sticky;
        top: 7rem;
    }

    .trust-split__rule {
        min-height: 14rem;
    }
}

@media (max-width: 767.98px) {
    .trust-split__tile {
        width: 9rem;
        height: 4rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .trust-split__track {
        animation: none;
    }

    .trust-split__viewport {
        overflow-x: auto;
        mask-image: none;
        -webkit-mask-image: none;
    }
}

