@import 'tailwindcss';

@source '../../vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php';
@source '../../storage/framework/views/*.php';
@source '../views/**/*.blade.php';

@theme {
    --font-sans: 'Plus Jakarta Sans', sans-serif;
    --color-brand-yellow: #ffd200;
    --color-brand-yellow-hover: #f0c400;
    --color-brand-blue: #2b57f6;
    --color-brand-royal: #1c3fd1;
    --color-brand-dark-blue: #0f267a;
    --color-brand-deep-navy: #0a1744;
    --color-brand-soft-bg: #f4f7fc;
    --shadow-glow: 0 10px 40px -10px rgb(43 87 246 / 25%);
    --shadow-card: 0 12px 35px -5px rgb(28 63 209 / 18%);
}

.medical-loader {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    transition:
        opacity 500ms ease,
        visibility 500ms ease;
}

.medical-loader.hide {
    visibility: hidden;
    pointer-events: none;
    opacity: 0;
}

.loader-scene {
    position: relative;
    isolation: isolate;
    display: flex;
    width: 330px;
    height: 330px;
    align-items: center;
    justify-content: center;
    contain: layout paint;
}

.loader-arrows {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    animation: rotateLoaderArrows 3.2s linear infinite;
    backface-visibility: hidden;
    transform-box: border-box;
    transform-origin: 50% 50%;
    will-change: transform;
}

.loader-arrow-shape {
    transform: scaleX(1.25);
    transform-box: view-box;
    transform-origin: center;
}

.syringe {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    width: 230px;
    height: 230px;
    overflow: visible;
    filter: drop-shadow(0 7px 9px rgb(22 39 88 / 12%));
    transform: translate(-50%, -50%) rotate(-12deg);
    transform-origin: center;
}

.loader-imaging-card {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    isolation: isolate;
    width: 132px;
    aspect-ratio: 1;
    overflow: hidden;
    border: 3px solid rgb(221 229 255 / 92%);
    border-radius: 1.55rem;
    background: #0f267a;
    box-shadow:
        0 0 0 6px rgb(255 255 255 / 8%),
        0 16px 32px -12px rgb(3 10 49 / 60%),
        0 0 28px rgb(122 198 255 / 22%);
    transform: translate(-50%, -50%) rotate(-5deg);
}

.loader-imaging-card::after {
    position: absolute;
    inset: 0.4rem;
    z-index: 3;
    border: 1px solid rgb(255 255 255 / 42%);
    border-radius: 1.05rem;
    content: '';
    pointer-events: none;
}

.loader-imaging-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.07);
}

.loader-imaging-grid {
    position: absolute;
    inset: 0;
    z-index: 1;
    background-image:
        linear-gradient(rgb(207 224 255 / 22%) 1px, transparent 1px),
        linear-gradient(90deg, rgb(207 224 255 / 22%) 1px, transparent 1px);
    background-size: 1.25rem 1.25rem;
    opacity: 0.42;
    pointer-events: none;
    -webkit-mask-image: radial-gradient(circle at center, black 15%, transparent 84%);
    mask-image: radial-gradient(circle at center, black 15%, transparent 84%);
}

.loader-imaging-scan {
    position: absolute;
    top: -32%;
    right: 5%;
    left: 5%;
    z-index: 2;
    height: 30%;
    background: linear-gradient(
        to bottom,
        transparent 0%,
        rgb(122 198 255 / 8%) 38%,
        rgb(122 198 255 / 30%) 47%,
        rgb(255 212 41 / 95%) 50%,
        rgb(255 255 255 / 76%) 51%,
        rgb(122 198 255 / 24%) 55%,
        transparent 100%
    );
    animation: loaderImageScan 2s linear infinite;
    backface-visibility: hidden;
    pointer-events: none;
    will-change: transform, opacity;
}

.scan-beam {
    animation: scanSweep 2.4s ease-in-out infinite;
    transform-box: fill-box;
    transform-origin: center;
}

.scan-grid {
    animation: gridFade 2.4s ease-in-out infinite;
}

.body-outline {
    animation: imagePulse 2.4s ease-in-out infinite;
    transform-box: fill-box;
    transform-origin: center;
}

.pulse-lines {
    animation: linePulse 2.4s ease-in-out infinite;
}

.ring-scan {
    animation: ringPulse 2.4s ease-in-out infinite;
    transform-origin: center;
    transform-box: fill-box;
}

.ring-scan-inner {
    animation-delay: 0.25s;
}

@keyframes rotateLoaderArrows {
    from {
        transform: translate3d(0, 0, 0) rotate(0deg);
    }

    to {
        transform: translate3d(0, 0, 0) rotate(360deg);
    }
}

@keyframes loaderImageScan {
    0% {
        opacity: 0;
        transform: translate3d(0, -20%, 0);
    }

    10%,
    90% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        transform: translate3d(0, 450%, 0);
    }
}

@keyframes scanSweep {
    0%,
    100% {
        transform: translateX(-18px);
        opacity: 0.5;
    }

    50% {
        transform: translateX(18px);
        opacity: 1;
    }
}

@keyframes gridFade {
    0%,
    100% {
        opacity: 0.4;
    }

    50% {
        opacity: 0.8;
    }
}

@keyframes imagePulse {
    0%,
    100% {
        transform: scale(1);
        opacity: 0.8;
    }

    50% {
        transform: scale(1.03);
        opacity: 1;
    }
}

@keyframes linePulse {
    0%,
    100% {
        opacity: 0.7;
    }

    50% {
        opacity: 1;
    }
}

@keyframes ringPulse {
    0%,
    100% {
        transform: scale(0.96);
        opacity: 0.45;
    }

    50% {
        transform: scale(1.02);
        opacity: 0.9;
    }
}

@media (width < 37.5rem) {
    .loader-scene {
        width: 260px;
        height: 260px;
    }

    .syringe {
        width: 135px;
        height: 135px;
    }

    .loader-imaging-card {
        width: 112px;
        border-radius: 1.3rem;
    }

    .loader-imaging-card::after {
        border-radius: 0.85rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .loader-arrows,
    .loader-imaging-image,
    .loader-imaging-scan,
    .syringe,
    .plunger,
    .medicine-liquid,
    .medicine-highlight {
        animation: none;
    }

    .loader-imaging-scan {
        opacity: 0.45;
        transform: translateY(220%);
    }
}

/* Product catalogue pages. */
.product-gallery-arrow {
    position: absolute;
    top: 50%;
    z-index: 10;
    display: flex;
    width: 2.75rem;
    height: 2.75rem;
    align-items: center;
    justify-content: center;
    border: 1px solid #cbdaf8;
    border-radius: 9999px;
    background: rgb(255 255 255 / 92%);
    color: #0b1a4d;
    box-shadow: 0 8px 24px rgb(10 35 105 / 12%);
    transform: translateY(-50%);
    transition: border-color 180ms ease, transform 180ms ease;
}

.product-gallery-arrow:hover,
.product-gallery-arrow:focus-visible {
    border-color: #2563eb;
    transform: translateY(-50%) scale(1.04);
}

[data-product-select][data-current='true'] {
    border-color: #2563eb;
    box-shadow: 0 0 0 2px rgb(37 99 235 / 12%);
}

.product-lightbox[open] {
    display: block;
}

.product-lightbox-open {
    overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
    [data-product-page] *,
    [data-product-page] *::before,
    [data-product-page] *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}

.medical-logo-dot {
    position: relative;
}

.medical-dot {
    animation: medicalHeartbeat 7s ease-in-out infinite;
    transform-origin: center;
}

.medical-ring {
    opacity: 0;
    animation: medicalScanRing 7s ease-out infinite;
    transform: scale(1);
}

.medical-ecg {
    opacity: 0;
    animation: ecgVisible 7s ease-in-out infinite;
}

.ecg-path {
    stroke-dasharray: 40;
    stroke-dashoffset: 40;
    animation: ecgDraw 7s ease-in-out infinite;
}

.brand-logo-image-shell {
    position: relative;
    display: block;
    flex-shrink: 0;
}

.brand-logo-animation {
    position: absolute;
    top: 50%;
    left: 7.1%;
    width: 14.3%;
    aspect-ratio: 1;
    pointer-events: none;
    transform: translateY(-50%);
}

.brand-logo-pulse,
.brand-logo-animation .medical-ring {
    position: absolute;
    inset: 0;
    border-radius: 9999px;
}

.brand-logo-pulse {
    background-color: rgb(255 210 0 / 8%);
    animation: medicalHeartbeat 7s ease-in-out infinite;
    transform-origin: center;
}

.brand-logo-animation .medical-ring {
    border: 1px solid #ffd429;
}

.brand-logo-ecg {
    position: absolute;
    inset: 14%;
    width: 72%;
    height: 72%;
}

@keyframes medicalHeartbeat {
    0%,
    8%,
    100% {
        box-shadow: 0 0 0 rgb(255 212 41 / 0%);
        transform: scale(1);
    }

    2% {
        transform: scale(1.14);
    }

    4% {
        transform: scale(1);
    }

    6% {
        box-shadow: 0 0 16px rgb(255 212 41 / 45%);
        transform: scale(1.09);
    }
}

@keyframes medicalScanRing {
    0% {
        opacity: 0;
        transform: scale(1);
    }

    2% {
        opacity: 0.7;
    }

    8%,
    100% {
        opacity: 0;
        transform: scale(1.8);
    }
}

@keyframes ecgVisible {
    0%,
    1% {
        opacity: 0;
    }

    2%,
    7% {
        opacity: 1;
    }

    9%,
    100% {
        opacity: 0;
    }
}

@keyframes ecgDraw {
    0%,
    1% {
        stroke-dashoffset: 40;
    }

    5%,
    8%,
    100% {
        stroke-dashoffset: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .brand-logo-pulse,
    .medical-dot,
    .medical-ring,
    .medical-ecg,
    .ecg-path {
        animation: none;
    }

    .medical-ring,
    .medical-ecg {
        opacity: 0;
    }
}

body.mobile-navigation-open {
    overflow: hidden;
}

.mobile-navigation {
    position: absolute;
    top: calc(100% + 1px);
    right: 0;
    left: 0;
    height: calc(100dvh - 5rem);
    visibility: hidden;
    pointer-events: none;
    transition: visibility 0s linear 500ms;
}

.mobile-navigation-backdrop {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background: rgb(10 23 68 / 38%);
    opacity: 0;
    backdrop-filter: blur(3px);
    transition: opacity 350ms ease;
}

.mobile-navigation-panel {
    position: relative;
    z-index: 1;
    isolation: isolate;
    overflow: hidden;
    border-bottom: 1px solid rgb(191 205 236 / 70%);
    background:
        radial-gradient(circle at 92% 12%, rgb(43 87 246 / 13%), transparent 18rem),
        radial-gradient(circle at 10% 100%, rgb(255 210 0 / 13%), transparent 17rem),
        rgb(248 250 253 / 98%);
    box-shadow: 0 1.5rem 3.5rem -1.75rem rgb(10 23 68 / 45%);
    opacity: 0;
    clip-path: inset(0 0 100% 0 round 0 0 1.75rem 1.75rem);
    transform: translateY(-0.75rem);
    transition:
        opacity 280ms ease,
        clip-path 520ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 520ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-page-header].is-mobile-navigation-open .mobile-navigation {
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-backdrop {
    opacity: 1;
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-panel {
    opacity: 1;
    clip-path: inset(0 0 0 0 round 0 0 1.75rem 1.75rem);
    transform: translateY(0);
}

.mobile-navigation-toggle-icon {
    position: relative;
    display: block;
    width: 1.2rem;
    height: 0.9rem;
}

.mobile-navigation-toggle-icon span {
    position: absolute;
    left: 50%;
    display: block;
    width: 100%;
    height: 2px;
    border-radius: 9999px;
    background: currentColor;
    transform: translateX(-50%);
    transition:
        top 280ms ease,
        width 280ms ease,
        transform 280ms ease;
}

.mobile-navigation-toggle-icon span:first-child {
    top: 0.15rem;
}

.mobile-navigation-toggle-icon span:last-child {
    top: 0.65rem;
    width: 68%;
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-toggle {
    border-color: rgb(43 87 246 / 28%);
    background: rgb(239 244 255 / 96%);
    color: var(--color-brand-blue);
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-toggle-icon span:first-child,
[data-page-header].is-mobile-navigation-open .mobile-navigation-toggle-icon span:last-child {
    top: 0.43rem;
    width: 100%;
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-toggle-icon span:first-child {
    transform: translateX(-50%) rotate(45deg);
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-toggle-icon span:last-child {
    transform: translateX(-50%) rotate(-45deg);
}

.mobile-radiology-pattern {
    position: absolute;
    inset: 0;
    z-index: -1;
    overflow: hidden;
    pointer-events: none;
}

.mobile-radiology-pattern::before {
    position: absolute;
    inset: 0;
    content: '';
    background-image:
        linear-gradient(rgb(43 87 246 / 5%) 1px, transparent 1px),
        linear-gradient(90deg, rgb(43 87 246 / 5%) 1px, transparent 1px);
    background-size: 2rem 2rem;
    opacity: 0.65;
    mask-image: linear-gradient(135deg, black, transparent 68%);
}

.mobile-radiology-scan {
    position: absolute;
    top: -4.5rem;
    right: -3.5rem;
    width: 17rem;
    color: var(--color-brand-blue);
    stroke: currentColor;
    stroke-width: 1.25;
    opacity: 0.13;
    transform: rotate(-14deg) scale(0.92);
    transition: transform 850ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-radiology-scan-beam {
    fill: rgb(255 210 0 / 52%);
    stroke: none;
    transform-box: view-box;
    transform-origin: center;
}

[data-page-header].is-mobile-navigation-open .mobile-radiology-scan {
    transform: rotate(0deg) scale(1);
}

[data-page-header].is-mobile-navigation-open .mobile-radiology-scan-beam {
    animation: mobile-radiology-sweep 5.5s linear infinite;
}

.mobile-radiology-ecg {
    position: absolute;
    right: -5%;
    bottom: 1.25rem;
    width: 110%;
    opacity: 0.11;
}

.mobile-radiology-ecg path {
    stroke: var(--color-brand-blue);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 820;
    stroke-dashoffset: 820;
}

[data-page-header].is-mobile-navigation-open .mobile-radiology-ecg path {
    animation: mobile-radiology-ecg-draw 1.7s 250ms ease-out forwards;
}

.mobile-navigation-link {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 0.85rem;
    min-height: 3.5rem;
    padding: 0.75rem 1rem;
    border: 1px solid rgb(203 213 225 / 75%);
    border-radius: 1rem;
    background: rgb(255 255 255 / 78%);
    color: var(--color-brand-deep-navy);
    font-size: 0.9rem;
    font-weight: 700;
    opacity: 0;
    transform: translateY(0.75rem);
    transition:
        color 220ms ease,
        border-color 220ms ease,
        background-color 220ms ease,
        opacity 360ms ease,
        transform 460ms cubic-bezier(0.22, 1, 0.36, 1);
}

.mobile-navigation-link:is(:hover, :focus-visible) {
    border-color: rgb(43 87 246 / 28%);
    background: rgb(255 255 255 / 96%);
    color: var(--color-brand-blue);
    outline: none;
}

.mobile-navigation-number {
    color: rgb(100 116 139 / 75%);
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.mobile-navigation-arrow {
    display: inline-flex;
    width: 1.75rem;
    height: 1.75rem;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    background: rgb(255 210 0 / 22%);
    color: var(--color-brand-deep-navy);
    transition:
        color 220ms ease,
        transform 220ms ease;
}

.mobile-navigation-link:is(:hover, :focus-visible) .mobile-navigation-arrow {
    color: var(--color-brand-blue);
    transform: translateX(0.2rem);
}

.mobile-navigation-footer {
    opacity: 0;
    transform: translateY(0.75rem);
    transition:
        opacity 360ms ease,
        transform 460ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-link,
[data-page-header].is-mobile-navigation-open .mobile-navigation-footer {
    opacity: 1;
    transform: translateY(0);
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-link:nth-child(1) {
    transition-delay: 100ms;
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-link:nth-child(2) {
    transition-delay: 150ms;
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-link:nth-child(3) {
    transition-delay: 200ms;
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-link:nth-child(4) {
    transition-delay: 250ms;
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-link:nth-child(5) {
    transition-delay: 300ms;
}

[data-page-header].is-mobile-navigation-open .mobile-navigation-footer {
    transition-delay: 350ms;
}

@keyframes mobile-radiology-sweep {
    to {
        transform: rotate(360deg);
    }
}

@keyframes mobile-radiology-ecg-draw {
    to {
        stroke-dashoffset: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .mobile-navigation,
    .mobile-navigation-backdrop,
    .mobile-navigation-panel,
    .mobile-navigation-toggle-icon span,
    .mobile-radiology-scan,
    .mobile-radiology-scan-beam,
    .mobile-radiology-ecg path,
    .mobile-navigation-link,
    .mobile-navigation-footer {
        animation: none;
        transition: none;
    }

    [data-page-header].is-mobile-navigation-open .mobile-radiology-ecg path {
        stroke-dashoffset: 0;
    }
}

.site-footer {
    --footer-ecg-opacity: 0.13;
    --footer-grid-opacity: 0.085;
    --footer-rings-opacity: 0.16;
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background:
        radial-gradient(circle at 8% 0%, rgb(255 210 0 / 14%), transparent 20rem),
        radial-gradient(circle at 90% 95%, rgb(84 130 255 / 24%), transparent 27rem),
        linear-gradient(135deg, #2147df 0%, #1739c5 52%, #102b96 100%);
}

.site-footer::before {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 2;
    height: 1px;
    background: linear-gradient(90deg, transparent 4%, rgb(255 210 0 / 75%) 32%, rgb(255 255 255 / 35%) 68%, transparent 96%);
    content: '';
    pointer-events: none;
}

.footer-medical-pattern {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

.footer-pattern-grid {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    color: white;
    opacity: var(--footer-grid-opacity);
    -webkit-mask-image: linear-gradient(110deg, black, transparent 72%);
    mask-image: linear-gradient(110deg, black, transparent 72%);
}

.footer-ecg-watermark {
    position: absolute;
    top: 42%;
    left: -5%;
    width: 110%;
    height: 9rem;
    opacity: var(--footer-ecg-opacity);
    filter: drop-shadow(0 0 0.55rem rgb(255 210 0 / 18%));
}

.footer-ecg-watermark path {
    stroke: var(--color-brand-yellow);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
    vector-effect: non-scaling-stroke;
}

.footer-diagnostic-rings {
    position: absolute;
    right: -9rem;
    bottom: -12rem;
    width: 29rem;
    height: 29rem;
    opacity: var(--footer-rings-opacity);
    transform: rotate(-12deg);
}

.footer-diagnostic-rings span {
    position: absolute;
    border: 1px solid white;
    border-radius: 9999px;
}

.footer-diagnostic-rings span:nth-child(1) {
    inset: 0;
}

.footer-diagnostic-rings span:nth-child(2) {
    inset: 4.75rem;
    border-color: var(--color-brand-yellow);
}

.footer-diagnostic-rings span:nth-child(3) {
    inset: 9.5rem;
    border-width: 2px;
}

.site-footer.footer-pattern-ready::before {
    opacity: 0;
    transform: scaleX(0);
    transform-origin: center;
}

.site-footer.footer-pattern-ready .footer-pattern-grid {
    opacity: 0;
    transform: translate3d(0, 1rem, 0);
}

.site-footer.footer-pattern-ready .footer-ecg-watermark {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
}

.site-footer.footer-pattern-ready .footer-ecg-watermark path {
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
}

.site-footer.footer-pattern-ready .footer-diagnostic-rings {
    opacity: 0;
    transform: rotate(-24deg) scale(0.72);
}

.site-footer.footer-pattern-ready.is-in-view::before {
    opacity: 1;
    transform: scaleX(1);
    transition:
        opacity 480ms 80ms ease,
        transform 850ms 80ms cubic-bezier(0.22, 1, 0.36, 1);
}

.site-footer.footer-pattern-ready.is-in-view .footer-pattern-grid {
    opacity: var(--footer-grid-opacity);
    transform: translate3d(0, 0, 0);
    transition:
        opacity 850ms 120ms ease,
        transform 1s 120ms cubic-bezier(0.22, 1, 0.36, 1);
}

.site-footer.footer-pattern-ready.is-in-view .footer-ecg-watermark {
    opacity: var(--footer-ecg-opacity);
    clip-path: inset(0 0 0 0);
    transition:
        opacity 520ms 420ms ease,
        clip-path 1.35s 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

.site-footer.footer-pattern-ready.is-in-view .footer-ecg-watermark path {
    animation: footer-ecg-draw 1.35s 460ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.site-footer.footer-pattern-ready.is-in-view .footer-diagnostic-rings {
    animation: footer-diagnostic-reveal 1.15s 340ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

@keyframes footer-ecg-draw {
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes footer-diagnostic-reveal {
    0% {
        opacity: 0;
        transform: rotate(-24deg) scale(0.72);
    }

    62% {
        opacity: 0.21;
        transform: rotate(-9deg) scale(1.06);
    }

    100% {
        opacity: var(--footer-rings-opacity);
        transform: rotate(-12deg) scale(1);
    }
}

@media (width < 48rem) {
    .site-footer {
        --footer-ecg-opacity: 0.1;
        --footer-grid-opacity: 0.065;
    }

    .footer-ecg-watermark {
        top: 46%;
        left: -28%;
        width: 170%;
    }

    .footer-diagnostic-rings {
        right: -10rem;
        bottom: -9rem;
        width: 22rem;
        height: 22rem;
    }

    .footer-diagnostic-rings span:nth-child(2) {
        inset: 3.75rem;
    }

    .footer-diagnostic-rings span:nth-child(3) {
        inset: 7.5rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-footer.footer-pattern-ready.is-in-view::before,
    .site-footer.footer-pattern-ready.is-in-view .footer-pattern-grid,
    .site-footer.footer-pattern-ready.is-in-view .footer-ecg-watermark,
    .site-footer.footer-pattern-ready.is-in-view .footer-diagnostic-rings {
        animation: none;
        transition: none;
    }

    .site-footer.footer-pattern-ready.is-in-view::before {
        opacity: 1;
        transform: scaleX(1);
    }

    .site-footer.footer-pattern-ready.is-in-view .footer-pattern-grid {
        opacity: var(--footer-grid-opacity);
        transform: none;
    }

    .site-footer.footer-pattern-ready.is-in-view .footer-ecg-watermark {
        opacity: var(--footer-ecg-opacity);
        clip-path: none;
    }

    .site-footer.footer-pattern-ready.is-in-view .footer-ecg-watermark path {
        animation: none;
        stroke-dashoffset: 0;
    }

    .site-footer.footer-pattern-ready.is-in-view .footer-diagnostic-rings {
        opacity: var(--footer-rings-opacity);
        transform: rotate(-12deg);
    }
}

.medical-cta {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    transform: translateZ(0);
    transition:
        background-color 260ms ease,
        border-color 260ms ease,
        color 260ms ease,
        box-shadow 300ms ease,
        transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.medical-cta::before {
    position: absolute;
    top: -60%;
    left: -28%;
    z-index: 1;
    width: 22%;
    height: 220%;
    background: linear-gradient(90deg, transparent, rgb(255 255 255 / 70%), transparent);
    content: '';
    pointer-events: none;
    transform: translateX(-180%) rotate(18deg);
}

.medical-cta::after {
    position: absolute;
    top: 50%;
    right: 1.25rem;
    z-index: 1;
    width: 1.85rem;
    height: 1.85rem;
    border: 1px solid rgb(43 87 246 / 32%);
    border-radius: 9999px;
    content: '';
    opacity: 0;
    pointer-events: none;
    transform: translateY(-50%) scale(0.55);
}

.medical-cta-label,
.medical-cta-arrow {
    position: relative;
    z-index: 2;
}

.medical-cta-arrow {
    transition:
        opacity 180ms ease,
        transform 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

.medical-cta-stethoscope {
    position: absolute;
    top: 50%;
    right: 1.63rem;
    z-index: 3;
    width: 1.05rem;
    height: 1.05rem;
    color: var(--color-brand-dark-blue);
    pointer-events: none;
    opacity: 0;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
    transform: translate(0.45rem, -50%) rotate(-18deg) scale(0.7);
    transition:
        opacity 180ms ease,
        transform 420ms cubic-bezier(0.16, 1, 0.3, 1);
}

.medical-cta:is(:hover, :focus-visible) {
    background-color: var(--color-brand-yellow-hover);
    box-shadow:
        0 0.85rem 1.7rem -0.85rem rgb(15 38 122 / 42%),
        0 0 0 0.2rem rgb(43 87 246 / 9%);
    transform: translateY(-0.12rem);
}

.medical-cta-secondary:is(:hover, :focus-visible) {
    border-color: rgb(255 210 0 / 72%);
    color: var(--color-brand-deep-navy);
}

.medical-cta:is(:hover, :focus-visible)::before {
    animation: medical-cta-sheen 720ms ease-out both;
}

.medical-cta:is(:hover, :focus-visible)::after {
    animation: medical-cta-doctor-ring 650ms 140ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.medical-cta:is(:hover, :focus-visible) .medical-cta-arrow {
    opacity: 0;
    transform: translateX(0.4rem) scale(0.65);
}

.medical-cta:is(:hover, :focus-visible) .medical-cta-stethoscope {
    opacity: 1;
    transform: translate(0, -50%) rotate(0) scale(1);
}

.medical-cta:focus-visible {
    outline: 3px solid var(--color-brand-blue);
    outline-offset: 3px;
}

@keyframes medical-cta-sheen {
    0% {
        transform: translateX(-180%) rotate(18deg);
    }

    100% {
        transform: translateX(720%) rotate(18deg);
    }
}

@keyframes medical-cta-doctor-ring {
    0% {
        opacity: 0;
        transform: translateY(-50%) scale(0.55);
    }

    55% {
        opacity: 0.8;
        transform: translateY(-50%) scale(1.18);
    }

    100% {
        opacity: 0.5;
        transform: translateY(-50%) scale(1);
    }
}

.hero-gradient-overlay {
    background: linear-gradient(
        90deg,
        rgb(248 250 253 / 98%) 0%,
        rgb(248 250 253 / 92%) 42%,
        rgb(248 250 253 / 30%) 72%,
        rgb(248 250 253 / 5%) 100%
    );
}

.hero-slide {
    position: absolute;
    inset: 0;
    z-index: 0;
    visibility: hidden;
    opacity: 0;
    will-change: opacity;
    transition:
        opacity 1.1s ease-in-out,
        visibility 0s linear 1.1s;
}

.hero-slide.is-active {
    z-index: 1;
    visibility: visible;
    opacity: 1;
    transition-delay: 0s;
}

.hero-slide.is-active.is-leaving {
    z-index: 2;
    visibility: visible;
    opacity: 0;
}

.hero-slide-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.02);
}

.hero-slide.is-active .hero-slide-image {
    animation: hero-slide-zoom 7s ease-out forwards;
}

body.is-loading .hero-slide.is-active .hero-slide-image,
body.is-loading [data-page-header],
body.is-loading [data-hero-content] > *,
body.is-loading [data-purpose='hero-eyebrow'] > :first-child,
body.is-loading [data-hero-controls],
body.is-loading [data-purpose='feature-ribbon'] {
    animation-play-state: paused;
}

@keyframes hero-slide-zoom {
    from {
        transform: scale(1.02);
    }

    to {
        transform: scale(1.1);
    }
}

.hero-slide-dot {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 9999px;
    background-color: rgb(100 116 139 / 40%);
    transition:
        width 300ms ease,
        background-color 300ms ease;
}

.hero-slide-dot[aria-current='true'] {
    width: 1.5rem;
    background-color: var(--color-brand-blue);
}

.hero-slide-dot:focus-visible {
    outline: 2px solid var(--color-brand-blue);
    outline-offset: 2px;
}

[data-page-header] {
    animation: page-header-reveal 650ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

[data-hero-content] > * {
    animation: hero-content-reveal 750ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

[data-hero-content] > :nth-child(1) {
    animation-delay: 180ms;
}

[data-hero-content] > :nth-child(2) {
    animation-delay: 280ms;
}

[data-hero-content] > :nth-child(3) {
    animation-delay: 380ms;
}

[data-hero-content] > :nth-child(4) {
    animation-delay: 480ms;
}

[data-hero-content] > :nth-child(5) {
    animation-delay: 580ms;
}

[data-purpose='hero-eyebrow'] > :first-child {
    animation: hero-accent-reveal 650ms 650ms cubic-bezier(0.22, 1, 0.36, 1) both;
    transform-origin: left;
}

[data-hero-controls] {
    animation: hero-controls-reveal 650ms 720ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

[data-purpose='feature-ribbon'] {
    animation: hero-ribbon-reveal 650ms 620ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes page-header-reveal {
    from {
        opacity: 0;
        transform: translateY(-0.75rem);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes hero-content-reveal {
    from {
        opacity: 0;
        filter: blur(0.35rem);
        transform: translateY(1rem);
    }

    to {
        opacity: 1;
        filter: blur(0);
        transform: translateY(0);
    }
}

@keyframes hero-accent-reveal {
    from {
        opacity: 0;
        transform: scaleX(0);
    }

    to {
        opacity: 1;
        transform: scaleX(1);
    }
}

@keyframes hero-controls-reveal {
    from {
        opacity: 0;
        transform: translateY(0.5rem) scale(0.94);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes hero-ribbon-reveal {
    from {
        opacity: 0;
        transform: translateY(100%);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@media (width < 64rem) {
    .hero-gradient-overlay {
        background: linear-gradient(180deg, rgb(248 250 253 / 96%) 0%, rgb(248 250 253 / 85%) 100%);
    }
}

@media (width < 40rem) {
    .hero-gradient-overlay {
        background: linear-gradient(180deg, rgb(248 250 253 / 97%) 0%, rgb(248 250 253 / 90%) 68%, rgb(248 250 253 / 82%) 100%);
    }

    .hero-slide-image {
        object-position: 62% center;
    }
}

@media (prefers-reduced-motion: reduce) {
    .medical-cta,
    .medical-cta::before,
    .medical-cta::after,
    .medical-cta-arrow,
    .medical-cta-stethoscope {
        animation: none;
        transition: none;
    }

    .medical-cta::before {
        display: none;
    }

    .medical-cta:is(:hover, :focus-visible)::after {
        animation: none;
        opacity: 0.5;
        transform: translateY(-50%) scale(1);
    }

    .hero-slide,
    .hero-slide-image,
    .hero-slide-dot,
    [data-page-header],
    [data-hero-content] > *,
    [data-purpose='hero-eyebrow'] > :first-child,
    [data-hero-controls],
    [data-purpose='feature-ribbon'] {
        animation: none;
        transition: none;
    }

    .hero-slide.is-active .hero-slide-image {
        animation: none;
        transform: none;
    }
}

.watermark-cross {
    stroke: rgb(43 87 246 / 15%);
}

[data-about-section].about-reveal-ready [data-about-visual] {
    opacity: 0;
    clip-path: inset(0 10% 0 0 round 1.5rem);
    transform: translate3d(-1.75rem, 1rem, 0) rotate(-1deg) scale(0.97);
    transition:
        opacity 700ms ease,
        clip-path 950ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 950ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-about-section].about-reveal-ready.is-in-view [data-about-visual] {
    opacity: 1;
    clip-path: inset(0 0 0 0 round 1.5rem);
    transform: translate3d(0, 0, 0) rotate(0) scale(1);
}

[data-about-image] {
    transform: scale(1);
}

[data-about-section].about-reveal-ready [data-about-image] {
    filter: saturate(0.8) contrast(0.94);
    transform: scale(1.055);
    transition:
        filter 1.1s ease,
        transform 1.4s cubic-bezier(0.22, 1, 0.36, 1);
}

[data-about-section].about-reveal-ready.is-in-view [data-about-image] {
    filter: saturate(1) contrast(1);
    transform: scale(1);
}

.about-scan-beam {
    position: absolute;
    inset: 0;
    z-index: 10;
    pointer-events: none;
    opacity: 0;
    background: linear-gradient(
        to bottom,
        transparent 0%,
        transparent 42%,
        rgb(43 87 246 / 4%) 46%,
        rgb(255 210 0 / 24%) 49%,
        rgb(255 255 255 / 90%) 50%,
        rgb(255 210 0 / 58%) 50.5%,
        rgb(43 87 246 / 8%) 54%,
        transparent 59%,
        transparent 100%
    );
    mix-blend-mode: screen;
    transform: translateY(-100%);
}

[data-about-section].about-reveal-ready.is-in-view .about-scan-beam {
    animation: about-radiology-scan 1.45s 420ms cubic-bezier(0.45, 0, 0.2, 1) both;
}

[data-about-section].about-reveal-ready [data-about-cross] {
    opacity: 0;
    transform: rotate(-10deg) scale(0.78);
    transform-origin: center;
    transition:
        opacity 500ms ease,
        transform 1s cubic-bezier(0.22, 1, 0.36, 1);
}

[data-about-section].about-reveal-ready.is-in-view [data-about-cross] {
    opacity: 0.3;
    transform: rotate(0) scale(1);
}

[data-about-section].about-reveal-ready [data-about-cross] path {
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
}

[data-about-section].about-reveal-ready.is-in-view [data-about-cross] path {
    animation: about-medical-cross-draw 1.25s 180ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

[data-about-section].about-reveal-ready [data-about-content] > * {
    opacity: 0;
    transform: translate3d(1.35rem, 0, 0);
    transition:
        opacity 650ms ease,
        transform 800ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-about-section].about-reveal-ready.is-in-view [data-about-content] > * {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

[data-about-section].about-reveal-ready.is-in-view [data-about-content] > :nth-child(1) {
    transition-delay: 160ms;
}

[data-about-section].about-reveal-ready.is-in-view [data-about-content] > :nth-child(2) {
    transition-delay: 240ms;
}

[data-about-section].about-reveal-ready.is-in-view [data-about-content] > :nth-child(3) {
    transition-delay: 320ms;
}

[data-about-section].about-reveal-ready.is-in-view [data-about-content] > :nth-child(4) {
    transition-delay: 400ms;
}

[data-about-section].about-reveal-ready.is-in-view [data-about-content] > :nth-child(5) {
    transition-delay: 480ms;
}

[data-about-section].about-reveal-ready [data-about-feature] {
    opacity: 0;
    transform: translateY(0.65rem) scale(0.92);
    transition:
        opacity 450ms ease,
        transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-about-section].about-reveal-ready.is-in-view [data-about-feature] {
    opacity: 1;
    transform: translateY(0) scale(1);
}

[data-about-section].about-reveal-ready.is-in-view [data-about-feature]:nth-child(1) {
    transition-delay: 620ms;
}

[data-about-section].about-reveal-ready.is-in-view [data-about-feature]:nth-child(2) {
    transition-delay: 700ms;
}

[data-about-section].about-reveal-ready.is-in-view [data-about-feature]:nth-child(3) {
    transition-delay: 780ms;
}

[data-about-section].about-reveal-ready.is-in-view [data-about-status] {
    animation: about-review-pulse 650ms 1.05s ease-out 2;
}

@keyframes about-radiology-scan {
    0% {
        opacity: 0;
        transform: translateY(-100%);
    }

    12%,
    82% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        transform: translateY(100%);
    }
}

@keyframes about-medical-cross-draw {
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes about-review-pulse {
    50% {
        box-shadow: 0 0 0 0.55rem rgb(255 210 0 / 18%);
        transform: scale(1.12);
    }
}

@media (width < 40rem) {
    [data-about-section].about-reveal-ready [data-about-visual] {
        clip-path: inset(0 5% 0 0 round 1.5rem);
        transform: translate3d(-0.8rem, 0.65rem, 0) scale(0.98);
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-about-section].about-reveal-ready [data-about-visual],
    [data-about-section].about-reveal-ready [data-about-image],
    [data-about-section].about-reveal-ready [data-about-content] > *,
    [data-about-section].about-reveal-ready [data-about-feature] {
        opacity: 1;
        clip-path: none;
        filter: none;
        animation: none;
        transform: none;
        transition: none;
    }

    [data-about-section].about-reveal-ready [data-about-cross] {
        opacity: 0.3;
        animation: none;
        transform: none;
        transition: none;
    }

    [data-about-section].about-reveal-ready [data-about-cross] path {
        stroke-dashoffset: 0;
        animation: none;
    }

    [data-about-section].about-reveal-ready .about-scan-beam,
    [data-about-section].about-reveal-ready [data-about-status] {
        animation: none;
    }
}

.no-scrollbar::-webkit-scrollbar {
    display: none;
}

.no-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.services-ecg-pattern {
    position: relative;
    width: min(48rem, 100%);
    height: 4.5rem;
    overflow: hidden;
    margin: 1.25rem auto -0.5rem;
    pointer-events: none;
    -webkit-mask-image: linear-gradient(90deg, transparent, black 8%, black 92%, transparent);
    mask-image: linear-gradient(90deg, transparent, black 8%, black 92%, transparent);
}

.services-ecg-pattern img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    max-width: none;
    filter:
        drop-shadow(0 0 0 rgb(43 87 246 / 90%))
        drop-shadow(0 0 0 rgb(43 87 246 / 65%));
    transform: translate(-50%, -57%);
}

.services-diagnostic-rings {
    position: absolute;
    top: 21rem;
    left: -4.5rem;
    width: 11rem;
    height: 11rem;
    overflow: hidden;
    pointer-events: none;
}

.services-diagnostic-rings img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 61rem;
    max-width: none;
    filter: drop-shadow(0 0 0 rgb(43 87 246 / 75%));
    transform: translate(-50%, -50%);
}

[data-services-section].services-reveal-ready [data-services-heading],
[data-services-section].services-reveal-ready [data-services-copy] {
    opacity: 0;
    filter: blur(0.3rem);
    transition:
        opacity 650ms ease,
        filter 700ms ease,
        transform 850ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-services-section].services-reveal-ready [data-services-heading] {
    transform: translate3d(-1.5rem, 0.75rem, 0);
}

[data-services-section].services-reveal-ready [data-services-copy] {
    transform: translate3d(1.5rem, 0.75rem, 0);
}

[data-services-section].services-reveal-ready.is-in-view [data-services-heading],
[data-services-section].services-reveal-ready.is-in-view [data-services-copy] {
    opacity: 1;
    filter: blur(0);
    transform: translate3d(0, 0, 0);
}

[data-services-section].services-reveal-ready.is-in-view [data-services-copy] {
    transition-delay: 100ms;
}

[data-services-section].services-reveal-ready [data-services-ecg] {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
    transition:
        opacity 400ms 520ms ease,
        clip-path 1.2s 520ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-services-section].services-reveal-ready.is-in-view [data-services-ecg] {
    opacity: 1;
    clip-path: inset(0 0 0 0);
}

[data-services-section].services-reveal-ready [data-services-cross] {
    opacity: 0;
    transform: rotate(12deg) scale(0.75);
    transform-origin: center;
    transition:
        opacity 550ms ease,
        transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-services-section].services-reveal-ready.is-in-view [data-services-cross] {
    opacity: 0.4;
    transform: rotate(0) scale(1);
}

[data-services-section].services-reveal-ready [data-services-rings] {
    opacity: 0;
    transform: rotate(-12deg) scale(0.65);
    transform-origin: center;
}

[data-services-section].services-reveal-ready.is-in-view [data-services-rings] {
    animation: services-diagnostic-pulse 1.55s 260ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

[data-services-section].services-reveal-ready [data-service-reveal] {
    opacity: 0;
    clip-path: inset(0 0 16% 0 round 1.5rem);
    filter: blur(0.35rem) saturate(0.8);
    transition:
        opacity 650ms ease,
        clip-path 850ms cubic-bezier(0.22, 1, 0.36, 1),
        filter 700ms ease,
        transform 300ms ease;
}

[data-services-section].services-reveal-ready.is-in-view [data-service-reveal] {
    opacity: 1;
    clip-path: inset(0 0 0 0 round 1.5rem);
    filter: blur(0) saturate(1);
}

[data-services-section].services-reveal-ready [data-service-reveal] [data-service-image] {
    transform: scale(1.075);
    transition: transform 1.15s cubic-bezier(0.22, 1, 0.36, 1);
}

[data-services-section].services-reveal-ready.is-in-view [data-service-reveal] [data-service-image] {
    transform: scale(1);
}

[data-hero-counter] {
    display: inline-block;
    min-width: 2ch;
    font-variant-numeric: tabular-nums;
    text-align: center;
}

[data-hero-counter][data-counter-target='100'] {
    min-width: 3ch;
}

[data-services-section].services-reveal-ready.is-in-view [data-service-order='1'] {
    transition-delay: 420ms;
}

[data-services-section].services-reveal-ready.is-in-view [data-service-order='2'] {
    transition-delay: 540ms;
}

[data-services-section].services-reveal-ready.is-in-view [data-service-order='3'] {
    transition-delay: 660ms;
}

[data-services-section].services-reveal-ready.is-in-view [data-service-order='1'] [data-service-image] {
    transition-delay: 420ms;
}

[data-services-section].services-reveal-ready.is-in-view [data-service-order='2'] [data-service-image] {
    transition-delay: 540ms;
}

[data-services-section].services-reveal-ready.is-in-view [data-service-order='3'] [data-service-image] {
    transition-delay: 660ms;
}

@keyframes services-diagnostic-pulse {
    0% {
        opacity: 0;
        transform: rotate(-12deg) scale(0.65);
    }

    38% {
        opacity: 1;
        filter: drop-shadow(0 0 0.75rem rgb(43 87 246 / 24%));
        transform: rotate(0) scale(1.06);
    }

    58% {
        transform: rotate(0) scale(0.94);
    }

    76% {
        filter: drop-shadow(0 0 1rem rgb(255 210 0 / 26%));
        transform: rotate(0) scale(1.035);
    }

    100% {
        opacity: 1;
        filter: none;
        transform: rotate(0) scale(1);
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-services-section].services-reveal-ready [data-services-heading],
    [data-services-section].services-reveal-ready [data-services-copy],
    [data-services-section].services-reveal-ready [data-services-ecg],
    [data-services-section].services-reveal-ready [data-services-cross],
    [data-services-section].services-reveal-ready [data-services-rings],
    [data-services-section].services-reveal-ready [data-service-reveal],
    [data-services-section].services-reveal-ready [data-service-reveal] [data-service-image] {
        opacity: 1;
        clip-path: none;
        filter: none;
        animation: none;
        transform: none;
        transition: none;
    }
}

.services-controls {
    display: none;
}

.services-slider.is-enhanced .services-controls {
    display: flex;
}

.services-slider.is-enhanced .services-viewport {
    overflow: hidden;
    margin: -0.75rem -1rem -1.5rem;
    padding: 0.75rem 1rem 1.5rem;
    touch-action: pan-y;
}

.services-slider.is-enhanced .services-track {
    position: relative;
    display: flex;
    width: 100%;
    align-items: stretch;
    gap: 2rem;
    will-change: transform;
    transition: transform 800ms cubic-bezier(0.22, 1, 0.36, 1);
}

.services-slider.is-enhanced .services-track.is-jumping {
    transition: none;
}

.services-slider.is-enhanced .service-slide {
    flex: 0 0 100%;
    min-width: 0;
}

.service-slide-dot {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 9999px;
    background-color: rgb(100 116 139 / 35%);
    transition:
        width 300ms ease,
        background-color 300ms ease;
}

.service-slide-dot[aria-current='true'] {
    width: 1.5rem;
    background-color: var(--color-brand-blue);
}

.service-slide-dot:focus-visible {
    outline: 2px solid var(--color-brand-blue);
    outline-offset: 3px;
}

@media (width >= 48rem) {
    .services-slider.is-enhanced .service-slide {
        flex-basis: calc((100% - 2rem) / 2);
    }
}

@media (width >= 64rem) {
    .services-slider.is-enhanced .service-slide {
        flex-basis: calc((100% - 4rem) / 3);
    }
}

@media (prefers-reduced-motion: reduce) {
    .services-slider.is-enhanced .services-track,
    .services-slider.is-enhanced .service-slide,
    .service-slide-dot {
        transition: none;
    }

    .services-slider.is-enhanced .service-slide:hover {
        transform: none;
    }
}

.partners-section {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background:
        radial-gradient(circle at 12% 18%, rgb(43 87 246 / 11%), transparent 28rem),
        radial-gradient(circle at 88% 82%, rgb(255 210 0 / 13%), transparent 24rem),
        linear-gradient(135deg, #f8fafd 0%, #eef3ff 52%, #fffdf2 100%);
}

.partners-section::before {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    content: '';
    opacity: 0.28;
    background-image: radial-gradient(circle, rgb(43 87 246 / 18%) 1px, transparent 1.5px);
    background-size: 1.75rem 1.75rem;
    -webkit-mask-image: linear-gradient(to bottom, transparent, black 24%, black 76%, transparent);
    mask-image: linear-gradient(to bottom, transparent, black 24%, black 76%, transparent);
}

.partners-marquee {
    width: 100vw;
    overflow: hidden;
    margin-inline: calc(50% - 50vw);
    padding: 1rem max(1.5rem, calc((100vw - 80rem) / 2));
    -webkit-mask-image: linear-gradient(90deg, transparent, black 6%, black 94%, transparent);
    mask-image: linear-gradient(90deg, transparent, black 6%, black 94%, transparent);
}

.partners-marquee:focus-visible {
    outline: 2px solid var(--color-brand-blue);
    outline-offset: -0.25rem;
}

.partners-track {
    width: 100%;
}

.partner-card {
    display: flex;
    min-width: 0;
    min-height: 8.25rem;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
    border: 1px solid rgb(255 255 255 / 88%);
    border-radius: 1.25rem;
    background: rgb(255 255 255 / 82%);
    box-shadow:
        0 1px 2px rgb(15 23 42 / 4%),
        0 14px 32px -22px rgb(28 63 209 / 32%);
    backdrop-filter: blur(0.75rem);
    transition:
        border-color 300ms ease,
        background-color 300ms ease,
        box-shadow 300ms ease,
        transform 300ms ease;
}

.partner-logo-image {
    width: 100%;
    max-height: 4.75rem;
    object-fit: contain;
    filter: saturate(0.88);
    transition:
        filter 300ms ease,
        transform 300ms ease;
}

.partner-card:hover {
    border-color: rgb(43 87 246 / 24%);
    background: rgb(255 255 255 / 96%);
    box-shadow: 0 18px 40px -24px rgb(28 63 209 / 45%);
    transform: translateY(-0.3rem);
}

.partner-card:hover .partner-logo-image {
    filter: saturate(1);
    transform: scale(1.025);
}

.partners-marquee.is-enhanced .partners-track {
    display: flex;
    width: max-content;
    will-change: transform;
    animation: partners-marquee-scroll 32s 900ms linear infinite both;
    animation-play-state: paused;
}

.partners-marquee.is-enhanced .partners-group {
    display: flex;
    flex: none;
    gap: 1.5rem;
    padding-right: 1.5rem;
}

.partners-marquee.is-enhanced .partner-card {
    width: clamp(12rem, 19vw, 15.5rem);
    flex: 0 0 clamp(12rem, 19vw, 15.5rem);
}

[data-partners-section].is-marquee-visible .partners-marquee.is-enhanced .partners-track {
    animation-play-state: running;
}

.partners-marquee.is-enhanced:hover .partners-track,
.partners-marquee.is-enhanced:focus-within .partners-track {
    animation-play-state: paused;
}

[data-partners-section].partners-reveal-ready [data-partners-header] {
    opacity: 0;
    filter: blur(0.3rem);
    transform: translateY(1rem);
    transition:
        opacity 650ms ease,
        filter 700ms ease,
        transform 800ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-partners-section].partners-reveal-ready [data-partners-marquee] {
    opacity: 0;
    filter: blur(0.4rem);
    transform: translateY(1.25rem) scale(0.985);
    transition:
        opacity 700ms 180ms ease,
        filter 700ms 180ms ease,
        transform 900ms 180ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-partners-section].partners-reveal-ready.is-in-view [data-partners-header],
[data-partners-section].partners-reveal-ready.is-in-view [data-partners-marquee] {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0) scale(1);
}

@keyframes partners-marquee-scroll {
    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        transform: translate3d(-50%, 0, 0);
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-partners-section].partners-reveal-ready [data-partners-header],
    [data-partners-section].partners-reveal-ready [data-partners-marquee] {
        opacity: 1;
        filter: none;
        transform: none;
        transition: none;
    }

    .partners-marquee.is-enhanced {
        width: 100%;
        margin-inline: 0;
        padding-inline: 0;
        -webkit-mask-image: none;
        mask-image: none;
    }

    .partners-marquee.is-enhanced .partners-track {
        display: block;
        width: 100%;
        animation: none;
        transform: none;
    }

    .partners-marquee.is-enhanced .partners-group {
        display: grid;
        padding-right: 0;
    }

    .partners-marquee.is-enhanced .partner-card {
        width: auto;
        flex: auto;
    }

    .partners-marquee.is-enhanced [data-partners-clone] {
        display: none;
    }

    .partner-card,
    .partner-logo-image {
        transition: none;
    }

    .partner-card:hover,
    .partner-card:hover .partner-logo-image {
        transform: none;
    }
}

.patient-experiences-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    border-block: 1px solid rgb(226 232 240 / 72%);
    background:
        radial-gradient(circle at 5% 46%, rgb(255 210 0 / 11%), transparent 19rem),
        radial-gradient(circle at 94% 18%, rgb(43 87 246 / 10%), transparent 23rem),
        linear-gradient(145deg, #ffffff 0%, #f7f9ff 56%, #fffdf4 100%);
}

.patient-experiences-section::before {
    position: absolute;
    inset: 0;
    z-index: 0;
    background-image: radial-gradient(circle, rgb(43 87 246 / 13%) 1px, transparent 1.5px);
    background-size: 2rem 2rem;
    content: '';
    opacity: 0.24;
    pointer-events: none;
    -webkit-mask-image: linear-gradient(to bottom, transparent, black 20%, black 80%, transparent);
    mask-image: linear-gradient(to bottom, transparent, black 20%, black 80%, transparent);
}

.patient-medical-pattern {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

.patient-stethoscope-pattern {
    position: absolute;
    top: 7rem;
    left: -3.5rem;
    width: 17rem;
    height: 17rem;
    color: var(--color-brand-blue);
    opacity: 0.1;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 0.75;
    transform: rotate(-10deg);
}

.patient-diagnostic-pattern {
    position: absolute;
    top: 3.5rem;
    right: -5rem;
    width: 22rem;
    opacity: 0.12;
    mix-blend-mode: multiply;
    transform: rotate(7deg);
}

.patient-diagnostic-pattern img,
.patient-ecg-pattern img {
    width: 100%;
    max-width: none;
}

.patient-ecg-pattern {
    position: absolute;
    bottom: 1.75rem;
    left: 50%;
    width: min(58rem, 88vw);
    opacity: 0.15;
    transform: translateX(-50%);
    -webkit-mask-image: linear-gradient(90deg, transparent, black 9%, black 91%, transparent);
    mask-image: linear-gradient(90deg, transparent, black 9%, black 91%, transparent);
}

[data-testimonials-section].testimonials-pattern-ready .patient-stethoscope-pattern,
[data-testimonials-section].testimonials-pattern-ready .patient-diagnostic-pattern,
[data-testimonials-section].testimonials-pattern-ready .patient-ecg-pattern {
    opacity: 0;
}

[data-testimonials-section].testimonials-pattern-ready .patient-stethoscope-pattern {
    transform: translate3d(-1.5rem, 1rem, 0) rotate(-18deg) scale(0.9);
}

[data-testimonials-section].testimonials-pattern-ready .patient-stethoscope-pattern path {
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
}

[data-testimonials-section].testimonials-pattern-ready .patient-ecg-pattern {
    clip-path: inset(0 100% 0 0);
}

[data-testimonials-section].testimonials-pattern-ready.is-in-view .patient-stethoscope-pattern {
    animation: patient-stethoscope-reveal 1.1s 180ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

[data-testimonials-section].testimonials-pattern-ready.is-in-view .patient-stethoscope-pattern path {
    animation: patient-stethoscope-draw 1.2s 300ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

[data-testimonials-section].testimonials-pattern-ready.is-in-view .patient-stethoscope-pattern circle {
    animation: patient-stethoscope-listen 760ms 920ms ease-out both;
    transform-box: fill-box;
    transform-origin: center;
}

[data-testimonials-section].testimonials-pattern-ready.is-in-view .patient-diagnostic-pattern {
    animation: patient-diagnostic-reveal 1.25s 320ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

[data-testimonials-section].testimonials-pattern-ready.is-in-view .patient-ecg-pattern {
    opacity: 0.15;
    clip-path: inset(0 0 0 0);
    transition:
        opacity 500ms 560ms ease,
        clip-path 1.25s 560ms cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes patient-stethoscope-reveal {
    to {
        opacity: 0.1;
        transform: translate3d(0, 0, 0) rotate(-10deg) scale(1);
    }
}

@keyframes patient-stethoscope-draw {
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes patient-stethoscope-listen {
    0% {
        opacity: 0;
        transform: scale(0.45);
    }

    60% {
        opacity: 1;
        transform: scale(1.45);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes patient-diagnostic-reveal {
    0% {
        opacity: 0;
        transform: rotate(-5deg) scale(0.72);
    }

    58% {
        opacity: 0.16;
        transform: rotate(9deg) scale(1.06);
    }

    100% {
        opacity: 0.12;
        transform: rotate(7deg) scale(1);
    }
}

.testimonials-slider {
    overflow: hidden;
    margin-top: -1rem;
    padding-block: 2rem 0.75rem;
}

.testimonials-track {
    display: flex;
    align-items: stretch;
    gap: 2rem;
    will-change: transform;
    transition: transform 800ms cubic-bezier(0.22, 1, 0.36, 1);
}

.testimonials-track.is-jumping {
    transition: none;
}

.testimonial-card {
    position: relative;
    display: flex;
    flex: 0 0 100%;
    min-width: 0;
    flex-direction: column;
    justify-content: space-between;
    padding: 2rem;
    border: 1px solid rgb(226 232 240 / 80%);
    border-radius: 1.5rem;
    background-color: #f8fafd;
    transition:
        transform 500ms cubic-bezier(0.22, 1, 0.36, 1),
        border-color 500ms ease,
        background-color 500ms ease,
        box-shadow 500ms ease;
}

.testimonial-card:not(.is-active):hover {
    box-shadow: var(--shadow-md);
}

.testimonial-card.is-active {
    border: 2px solid var(--color-brand-blue);
    background-color: #fff;
    box-shadow: var(--shadow-glow);
}

.testimonial-featured-badge {
    position: absolute;
    top: -0.875rem;
    left: 50%;
    padding: 0.25rem 1rem;
    border-radius: 9999px;
    background-color: var(--color-brand-yellow);
    color: #020617;
    font-size: 0.6875rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    white-space: nowrap;
    opacity: 0;
    box-shadow: var(--shadow-sm);
    transform: translateX(-50%) translateY(0.25rem) scale(0.94);
    transition:
        opacity 350ms ease,
        transform 500ms cubic-bezier(0.22, 1, 0.36, 1);
}

.testimonial-card.is-active .testimonial-featured-badge {
    opacity: 1;
    transform: translateX(-50%) translateY(0) scale(1);
}

.testimonial-quote {
    margin-bottom: 2rem;
    color: #334155;
    font-size: 0.875rem;
    font-style: italic;
    line-height: 1.625;
}

.testimonial-avatar {
    display: flex;
    width: 2.5rem;
    height: 2.5rem;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    background-color: #dbeafe;
    color: var(--color-brand-blue);
    font-size: 0.875rem;
    font-weight: 700;
    transition:
        color 500ms ease,
        background-color 500ms ease,
        box-shadow 500ms ease;
}

.testimonial-role {
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 500;
    transition: color 500ms ease;
}

.testimonial-card.is-active .testimonial-quote {
    color: #1e293b;
    font-size: 1rem;
    font-weight: 500;
}

.testimonial-card.is-active .testimonial-avatar {
    background-color: var(--color-brand-yellow);
    color: #020617;
    font-weight: 800;
    box-shadow: var(--shadow-sm);
}

.testimonial-card.is-active .testimonial-role {
    color: var(--color-brand-blue);
    font-weight: 600;
}

@media (width >= 40rem) {
    .testimonial-quote {
        font-size: 1rem;
    }
}

@media (width < 48rem) {
    .patient-stethoscope-pattern {
        top: 10rem;
        left: -4.5rem;
        width: 13rem;
        height: 13rem;
    }

    .patient-diagnostic-pattern {
        top: 2rem;
        right: -5rem;
        width: 15rem;
    }

    .patient-ecg-pattern {
        bottom: 1.25rem;
        width: 94vw;
    }
}

@media (width >= 48rem) {
    .testimonial-card {
        flex-basis: calc((100% - 4rem) / 3);
    }

    .testimonial-card.is-active {
        transform: translateY(-0.5rem);
    }
}

@media (width >= 64rem) {
    .testimonial-card {
        padding: 2.25rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-testimonials-section].testimonials-pattern-ready.is-in-view .patient-stethoscope-pattern {
        opacity: 0.1;
        animation: none;
        transform: rotate(-10deg);
    }

    [data-testimonials-section].testimonials-pattern-ready.is-in-view .patient-stethoscope-pattern path {
        animation: none;
        stroke-dashoffset: 0;
    }

    [data-testimonials-section].testimonials-pattern-ready.is-in-view .patient-stethoscope-pattern circle {
        animation: none;
    }

    [data-testimonials-section].testimonials-pattern-ready.is-in-view .patient-diagnostic-pattern {
        opacity: 0.12;
        animation: none;
        transform: rotate(7deg);
    }

    [data-testimonials-section].testimonials-pattern-ready.is-in-view .patient-ecg-pattern {
        opacity: 0.15;
        clip-path: none;
        transition: none;
    }

    .testimonials-track,
    .testimonial-card,
    .testimonial-featured-badge,
    .testimonial-avatar,
    .testimonial-role {
        transition: none;
    }
}

/* Blue homepage variation. Every override is scoped so the original homepage remains unchanged. */
.blue-theme {
    --theme-dark: #182a92;
    --theme-primary: #1f30bc;
    --theme-bright: #335bd4;
    --theme-light: #5177d6;
    --theme-navy: #09164f;
    --theme-yellow: #f5ce18;
    --theme-text: #fff;
    --theme-muted: #dde5ff;
    --theme-subtle: #b8c5e8;
    background-color: var(--theme-dark);
    color: var(--theme-text);
}

.blue-theme .medical-loader {
    isolation: isolate;
    background:
        radial-gradient(circle at 50% 46%, rgb(81 119 214 / 46%), transparent 22rem),
        radial-gradient(circle at 14% 18%, rgb(245 206 24 / 12%), transparent 18rem),
        linear-gradient(145deg, var(--theme-navy), var(--theme-dark) 52%, var(--theme-bright));
}

.blue-theme .medical-loader::before {
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image: radial-gradient(circle, rgb(221 229 255 / 20%) 1px, transparent 1.5px);
    background-size: 2rem 2rem;
    content: '';
    opacity: 0.32;
    pointer-events: none;
    -webkit-mask-image: radial-gradient(circle at center, black, transparent 72%);
    mask-image: radial-gradient(circle at center, black, transparent 72%);
}

.blue-theme .loader-scene {
    z-index: 1;
}

.blue-theme .loader-arrows stop:first-child {
    stop-color: var(--theme-yellow);
}

.blue-theme .loader-arrows stop:nth-child(2) {
    stop-color: #9db5ff;
}

.blue-theme .loader-arrows stop:last-child {
    stop-color: #fff;
}

.blue-theme .syringe {
    filter:
        drop-shadow(0 8px 12px rgb(3 10 49 / 34%))
        drop-shadow(0 0 1rem rgb(221 229 255 / 16%));
}

.blue-theme [data-page-header] {
    border-color: rgb(255 255 255 / 14%);
    background: linear-gradient(90deg, rgb(9 22 79 / 96%), rgb(31 48 188 / 92%));
    box-shadow: 0 10px 30px rgb(5 14 64 / 18%);
}

.blue-theme [data-page-header] [data-purpose='brand-logo'] > span > span:first-child,
.blue-theme [data-page-header] nav,
.blue-theme [data-page-header] nav a {
    color: var(--theme-text);
}

.blue-theme [data-page-header] [data-purpose='brand-logo'] > span > span:last-child {
    color: var(--theme-subtle);
}

.blue-theme [data-page-header] nav a:hover {
    color: var(--theme-yellow);
}

.blue-theme [data-page-header] nav a[aria-current='page'] {
    color: var(--theme-yellow);
}

.blue-theme [data-page-header] [data-purpose='header-cta'] {
    border-color: var(--theme-yellow);
    background-color: var(--theme-yellow);
    color: var(--theme-navy);
    box-shadow: 0 8px 24px rgb(5 14 64 / 24%);
}

.blue-theme .mobile-navigation-toggle {
    border-color: rgb(255 255 255 / 24%);
    background-color: rgb(255 255 255 / 10%);
    color: var(--theme-text);
}

.blue-theme .mobile-navigation-panel {
    border-color: rgb(255 255 255 / 12%);
    background: linear-gradient(155deg, var(--theme-navy), var(--theme-primary));
}

.blue-theme .mobile-navigation-panel > div > div:first-of-type span:last-child,
.blue-theme .mobile-navigation-link,
.blue-theme .mobile-navigation-footer p {
    color: var(--theme-muted);
}

.blue-theme .mobile-navigation-link {
    border-color: rgb(255 255 255 / 12%);
    background-color: rgb(255 255 255 / 6%);
}

.blue-theme .mobile-navigation-link:is(:hover, :focus-visible) {
    border-color: rgb(245 206 24 / 55%);
    background-color: rgb(255 255 255 / 11%);
    color: var(--theme-text);
}

.blue-theme .mobile-navigation-link[aria-current='page'] {
    border-color: rgb(245 206 24 / 55%);
    color: var(--theme-yellow);
}

.blue-theme .mobile-navigation-footer {
    border-color: rgb(255 255 255 / 14%);
}

.blue-theme [data-purpose='hero-section'] {
    background-color: var(--theme-dark);
}

.blue-theme .hero-gradient-overlay {
    background:
        linear-gradient(90deg, rgb(10 24 103 / 97%) 0%, rgb(27 53 185 / 88%) 48%, rgb(27 65 182 / 58%) 100%),
        linear-gradient(0deg, rgb(8 20 78 / 38%), transparent 55%);
}

.blue-theme [data-purpose='hero-eyebrow'] span:last-child,
.blue-theme [data-purpose='hero-section'] h1 > span {
    color: var(--theme-yellow);
}

.blue-theme [data-purpose='hero-section'] h1,
.blue-theme [data-purpose='hero-section'] [data-hero-content] > p,
.blue-theme [data-purpose='hero-buttons'] > a:last-child,
.blue-theme [data-purpose='hero-metrics'] > div > span:first-child {
    color: var(--theme-text);
}

.blue-theme [data-purpose='hero-section'] [data-hero-content] > p,
.blue-theme [data-purpose='hero-metrics'] > div > span:last-child {
    color: var(--theme-muted);
}

.blue-theme [data-purpose='hero-buttons'] > a:last-child:hover {
    color: var(--theme-yellow);
}

.blue-theme [data-purpose='hero-metrics'] {
    border-color: rgb(255 255 255 / 22%);
}

.blue-theme [data-hero-controls] {
    border-color: rgb(255 255 255 / 22%);
    background-color: rgb(8 22 87 / 68%);
}

.blue-theme [data-hero-controls] > button {
    color: var(--theme-text);
}

.blue-theme [data-hero-controls] > button:hover {
    background-color: rgb(255 255 255 / 12%);
    color: var(--theme-yellow);
}

.blue-theme .hero-slide-dot {
    background-color: rgb(255 255 255 / 45%);
}

.blue-theme .hero-slide-dot[aria-current='true'] {
    background-color: var(--theme-yellow);
}

.blue-theme [data-purpose='feature-ribbon'] {
    border-color: rgb(255 255 255 / 14%);
    background-color: rgb(8 22 87 / 72%);
}

.blue-theme [data-purpose='feature-ribbon'] > div {
    color: var(--theme-muted);
}

.blue-theme [data-purpose='about-section'] {
    background:
        radial-gradient(circle at 88% 22%, rgb(81 119 214 / 48%), transparent 31rem),
        linear-gradient(135deg, #172783 0%, var(--theme-primary) 52%, #294ec1 100%);
}

.blue-theme [data-purpose='about-section'] [data-about-visual] > div:first-child {
    border-color: rgb(255 255 255 / 16%);
    background-color: rgb(255 255 255 / 8%);
    box-shadow: 0 28px 65px rgb(4 13 60 / 32%);
}

.blue-theme [data-purpose='about-section'] [data-about-content] > div:first-child {
    border-color: rgb(255 255 255 / 16%);
    background-color: rgb(255 255 255 / 8%);
    color: var(--theme-yellow);
}

.blue-theme [data-purpose='about-section'] [data-about-content] > div:first-child > span:first-child {
    background-color: var(--theme-yellow);
}

.blue-theme [data-purpose='about-section'] h2,
.blue-theme [data-purpose='about-features'] [data-about-feature] > span {
    color: var(--theme-text);
}

.blue-theme [data-purpose='about-section'] [data-about-content] > div:nth-child(3) {
    color: var(--theme-muted);
}

.blue-theme [data-purpose='about-features'] {
    border-color: rgb(255 255 255 / 18%);
}

.blue-theme [data-purpose='about-features'] [data-about-feature] > div {
    background-color: rgb(255 255 255 / 12%);
}

.blue-theme [data-purpose='about-features'] svg,
.blue-theme [data-about-cross] {
    color: var(--theme-yellow);
}

.blue-theme [data-purpose='services-section'] {
    background:
        radial-gradient(circle at 12% 70%, rgb(81 119 214 / 34%), transparent 28rem),
        linear-gradient(145deg, #10206f, var(--theme-dark) 48%, #233eb1);
}

.blue-theme [data-services-heading] > span,
.blue-theme [data-purpose='partners-section'] [data-partners-header] > span,
.blue-theme [data-purpose='news-section'] > div > div:first-child > div:first-child > span,
.blue-theme [data-purpose='testimonials-section'] > div:last-child > div:first-child > span {
    color: var(--theme-yellow);
}

.blue-theme [data-purpose='services-section'] h2,
.blue-theme [data-purpose='partners-section'] h2,
.blue-theme [data-purpose='news-section'] > div > div:first-child h2,
.blue-theme [data-purpose='testimonials-section'] > div:last-child > div:first-child h2 {
    color: var(--theme-text);
}

.blue-theme [data-services-copy],
.blue-theme [data-purpose='partners-section'] [data-partners-header] p,
.blue-theme [data-purpose='testimonials-section'] > div:last-child > div:first-child p {
    color: var(--theme-muted);
}

.blue-theme [data-services-copy] p {
    color: var(--theme-text);
}

.blue-theme [data-purpose='service-card'] {
    border: 1px solid rgb(255 255 255 / 13%);
    background: linear-gradient(180deg, rgb(51 91 212 / 98%), rgb(20 39 137 / 98%));
    box-shadow: 0 22px 48px rgb(4 13 60 / 28%);
}

.blue-theme [data-purpose='service-card'] img {
    filter: saturate(0.92) contrast(1.04);
}

.blue-theme [data-purpose='service-card'] p {
    color: var(--theme-muted);
}

.blue-theme [data-purpose='service-card'] .medical-cta-secondary {
    border-color: rgb(245 206 24 / 55%);
    background-color: rgb(245 206 24 / 10%);
    color: var(--theme-text);
}

.blue-theme .services-controls > button {
    border-color: rgb(255 255 255 / 18%);
    background-color: rgb(255 255 255 / 9%);
    color: var(--theme-text);
}

.blue-theme .services-controls > button:hover {
    border-color: var(--theme-yellow);
    background-color: rgb(255 255 255 / 14%);
    color: var(--theme-yellow);
}

.blue-theme .service-slide-dot {
    background-color: rgb(255 255 255 / 42%);
}

.blue-theme .service-slide-dot[aria-current='true'] {
    background-color: var(--theme-yellow);
}

.blue-theme [data-purpose='partners-section'] {
    border-color: rgb(255 255 255 / 12%);
    background:
        radial-gradient(circle at 50% 0%, rgb(81 119 214 / 32%), transparent 34rem),
        linear-gradient(180deg, #213db0 0%, var(--theme-primary) 100%);
}

.blue-theme [data-purpose='partners-section']::before {
    opacity: 0.22;
}

.blue-theme .partner-card {
    border-color: rgb(221 229 255 / 80%);
    background-color: rgb(255 255 255 / 96%);
    box-shadow: 0 14px 34px rgb(4 13 60 / 20%);
}

.blue-theme [data-purpose='news-section'] {
    background:
        radial-gradient(circle at 90% 85%, rgb(51 91 212 / 34%), transparent 30rem),
        linear-gradient(140deg, var(--theme-navy), var(--theme-dark) 58%, #203baa);
}

.blue-theme [data-purpose='news-section'] > div > div:first-child a {
    color: var(--theme-yellow);
}

.blue-theme [data-purpose='news-section'] > div > div:first-child button {
    border-color: rgb(255 255 255 / 18%);
    background-color: rgb(255 255 255 / 9%);
    color: var(--theme-text);
}

.blue-theme [data-purpose='news-section'] > div > div:first-child button:hover {
    border-color: var(--theme-yellow);
    background-color: rgb(255 255 255 / 14%);
    color: var(--theme-yellow);
}

.blue-theme [data-purpose='news-section'] article {
    border-color: rgb(255 255 255 / 14%);
    box-shadow: 0 20px 45px rgb(4 13 60 / 28%);
}

.blue-theme [data-purpose='testimonials-section'] {
    background:
        radial-gradient(circle at 15% 22%, rgb(81 119 214 / 36%), transparent 30rem),
        linear-gradient(135deg, #223eb0, var(--theme-primary) 55%, #2f54cc);
}

.blue-theme [data-purpose='testimonials-section']::before {
    opacity: 0.18;
}

.blue-theme .testimonial-card {
    border-color: rgb(255 255 255 / 28%);
    background-color: rgb(255 255 255 / 94%);
    box-shadow: 0 18px 42px rgb(4 13 60 / 18%);
}

.blue-theme .testimonial-card.is-active {
    border-color: var(--theme-yellow);
    background-color: #fff;
    box-shadow: 0 24px 55px rgb(4 13 60 / 28%);
}

.blue-theme [data-purpose='contact-section'] {
    background:
        radial-gradient(circle at 8% 86%, rgb(81 119 214 / 34%), transparent 27rem),
        linear-gradient(150deg, var(--theme-dark), var(--theme-navy));
}

.blue-theme [data-purpose='contact-section'] > div > div {
    border: 1px solid rgb(255 255 255 / 12%);
    background: linear-gradient(135deg, #284bd0, var(--theme-primary) 55%, #182a92);
    box-shadow: 0 30px 70px rgb(2 9 45 / 38%);
}

.blue-theme [data-purpose='inquiry-form-card'] {
    border-color: rgb(255 255 255 / 14%);
    background-color: rgb(7 22 91 / 42%);
}

.blue-theme [data-purpose='inquiry-form-card'] input,
.blue-theme [data-purpose='inquiry-form-card'] textarea {
    border-color: rgb(255 255 255 / 16%);
    background-color: rgb(255 255 255 / 7%);
    color: var(--theme-text);
}

.blue-theme [data-purpose='inquiry-form-card'] input::placeholder,
.blue-theme [data-purpose='inquiry-form-card'] textarea::placeholder {
    color: rgb(221 229 255 / 58%);
}

.blue-theme [data-purpose='inquiry-form-card'] button {
    background-color: var(--theme-yellow);
    color: var(--theme-navy);
}

.blue-theme .site-footer {
    background: linear-gradient(145deg, #050e39, var(--theme-navy) 58%, #112578);
}

.blue-theme .site-footer a:hover {
    color: var(--theme-yellow);
}

.blue-theme .medical-cta:not(.medical-cta-secondary) {
    background-color: var(--theme-yellow);
    color: var(--theme-navy);
}

.blue-theme .watermark-cross {
    color: #c9d6ff;
    stroke: rgb(201 214 255 / 72%);
}

.blue-theme .mobile-radiology-pattern::before {
    background-image:
        linear-gradient(rgb(221 229 255 / 8%) 1px, transparent 1px),
        linear-gradient(90deg, rgb(221 229 255 / 8%) 1px, transparent 1px);
}

.blue-theme .mobile-radiology-scan,
.blue-theme .patient-stethoscope-pattern {
    color: #c9d6ff;
}

.blue-theme .mobile-radiology-ecg path {
    stroke: #c9d6ff;
}

.blue-theme .services-ecg-pattern img,
.blue-theme .services-diagnostic-rings img,
.blue-theme .patient-diagnostic-pattern img,
.blue-theme .patient-ecg-pattern img {
    filter: brightness(0) invert(1);
}

.blue-theme .services-ecg-pattern img {
    opacity: 0.78;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.55rem rgb(221 229 255 / 36%));
    mix-blend-mode: screen;
}

.blue-theme .services-diagnostic-rings img {
    opacity: 0.82;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.7rem rgb(221 229 255 / 36%));
    mix-blend-mode: screen;
}

.blue-theme [data-purpose='services-section'] [data-services-cross] {
    color: #e1e8ff;
}

.blue-theme .patient-diagnostic-pattern {
    mix-blend-mode: screen;
}

.blue-theme [data-purpose='partners-section']::before,
.blue-theme [data-purpose='testimonials-section']::before {
    background-image: radial-gradient(circle, rgb(221 229 255 / 34%) 1px, transparent 1.5px);
}

.blue-theme .site-footer {
    --footer-ecg-opacity: 0.18;
    --footer-grid-opacity: 0.12;
    --footer-rings-opacity: 0.21;
}

/* Contact page reveal motion and medical patterns. */
[data-contact-banner].contact-banner-ready [data-contact-banner-content] {
    opacity: 0;
    clip-path: inset(0 0 18% 0);
    transform: translate3d(0, 1.5rem, 0);
    transition:
        opacity 720ms ease,
        clip-path 950ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 950ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-contact-banner].contact-banner-ready.is-in-view [data-contact-banner-content] {
    opacity: 1;
    clip-path: inset(0 0 0 0);
    transform: translate3d(0, 0, 0);
}

[data-contact-banner].contact-banner-ready [data-contact-banner-visual] {
    opacity: 0;
    transform: rotate(-14deg) scale(0.72);
    transform-origin: center;
}

[data-contact-banner].contact-banner-ready.is-in-view [data-contact-banner-visual] {
    animation: contact-banner-diagnostic-reveal 1.15s 180ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

.contact-banner-scan-beam {
    position: absolute;
    inset: -35%;
    z-index: 1;
    background: linear-gradient(
        180deg,
        transparent 42%,
        rgb(255 255 255 / 8%) 47%,
        rgb(245 206 24 / 58%) 50%,
        rgb(255 255 255 / 10%) 53%,
        transparent 58%
    );
    opacity: 0;
    pointer-events: none;
    transform: translateY(-55%) rotate(-12deg);
}

[data-contact-banner].contact-banner-ready.is-in-view .contact-banner-scan-beam {
    animation: contact-banner-scan 5.5s 1.15s cubic-bezier(0.45, 0, 0.2, 1) infinite;
}

[data-contact-banner].contact-banner-ready.is-in-view [data-contact-banner-visual] > div:nth-child(1) {
    animation: contact-ring-breathe 4.6s 1.2s ease-in-out infinite;
}

[data-contact-banner].contact-banner-ready.is-in-view [data-contact-banner-visual] > div:nth-child(2) {
    animation: contact-ring-breathe 4.6s 1.55s ease-in-out infinite;
}

[data-contact-banner].contact-banner-ready.is-in-view [data-contact-banner-visual] > div:nth-child(3) {
    animation: contact-ring-breathe 4.6s 1.9s ease-in-out infinite;
}

[data-contact-banner].contact-banner-ready.is-in-view [data-contact-banner-visual] > div:last-child {
    animation: contact-clinical-pulse 3.8s 1.1s ease-in-out infinite;
}

[data-contact-details-section].contact-reveal-ready [data-contact-detail] {
    opacity: 0;
    transform: translate3d(0, 1.75rem, 0) scale(0.96);
    transition:
        opacity 620ms ease,
        border-color 240ms ease,
        box-shadow 240ms ease,
        transform 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-contact-details-section].contact-reveal-ready.is-in-view [data-contact-detail] {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}

[data-contact-details-section].contact-reveal-ready.is-in-view [data-contact-detail]:nth-child(2) {
    transition-delay: 120ms;
}

[data-contact-details-section].contact-reveal-ready.is-in-view [data-contact-detail]:nth-child(3) {
    transition-delay: 240ms;
}

[data-contact-details-section].contact-reveal-ready.is-in-view [data-contact-detail]:is(:hover, :focus-visible) {
    transform: translate3d(0, -0.3rem, 0) scale(1);
    transition-delay: 0ms;
}

[data-contact-form-section].contact-reveal-ready [data-contact-form-copy],
[data-contact-location-section].contact-reveal-ready [data-contact-location-copy] {
    opacity: 0;
    transform: translate3d(-1.75rem, 0.75rem, 0);
    transition:
        opacity 680ms ease,
        transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-contact-form-section].contact-reveal-ready [data-contact-form-card],
[data-contact-location-section].contact-reveal-ready [data-contact-location-map] {
    opacity: 0;
    clip-path: inset(0 9% 0 0 round 1.5rem);
    transform: translate3d(1.75rem, 0.75rem, 0) scale(0.975);
    transition:
        opacity 720ms 100ms ease,
        clip-path 980ms 100ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 980ms 100ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-contact-form-section].contact-reveal-ready.is-in-view [data-contact-form-copy],
[data-contact-form-section].contact-reveal-ready.is-in-view [data-contact-form-card],
[data-contact-location-section].contact-reveal-ready.is-in-view [data-contact-location-copy],
[data-contact-location-section].contact-reveal-ready.is-in-view [data-contact-location-map] {
    opacity: 1;
    clip-path: inset(0 0 0 0 round 1.5rem);
    transform: translate3d(0, 0, 0) scale(1);
}

.contact-diagnostic-pattern,
.contact-ecg-pattern,
.contact-location-grid {
    position: absolute;
    z-index: 0;
    pointer-events: none;
}

.contact-diagnostic-pattern {
    top: 3rem;
    right: -6rem;
    width: 16rem;
    height: 16rem;
    overflow: hidden;
    opacity: 0.16;
    transform: rotate(7deg);
}

.contact-ecg-pattern {
    bottom: 2.75rem;
    left: 2%;
    width: min(46rem, 72vw);
    opacity: 0.15;
    -webkit-mask-image: linear-gradient(90deg, transparent, black 10%, black 90%, transparent);
    mask-image: linear-gradient(90deg, transparent, black 10%, black 90%, transparent);
}

.contact-diagnostic-pattern img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 89rem;
    max-width: none;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.7rem rgb(221 229 255 / 28%));
    transform: translate(-50%, -50%);
}

.contact-ecg-pattern img {
    width: 100%;
    max-width: none;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.7rem rgb(221 229 255 / 28%));
}

[data-contact-form-section].contact-reveal-ready .contact-diagnostic-pattern {
    opacity: 0;
    transform: rotate(-7deg) scale(0.74);
}

[data-contact-form-section].contact-reveal-ready .contact-ecg-pattern {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
}

[data-contact-form-section].contact-reveal-ready.is-in-view .contact-diagnostic-pattern {
    animation: contact-pattern-reveal 1.2s 360ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

[data-contact-form-section].contact-reveal-ready.is-in-view .contact-ecg-pattern {
    opacity: 0.15;
    clip-path: inset(0 0 0 0);
    transition:
        opacity 520ms 520ms ease,
        clip-path 1.35s 520ms cubic-bezier(0.22, 1, 0.36, 1);
}

.contact-location-grid {
    inset: 0;
    background-image: radial-gradient(circle, rgb(221 229 255 / 30%) 1px, transparent 1.5px);
    background-size: 2rem 2rem;
    opacity: 0.14;
    -webkit-mask-image: linear-gradient(105deg, transparent, black 45%, transparent 92%);
    mask-image: linear-gradient(105deg, transparent, black 45%, transparent 92%);
}

[data-contact-location-section].contact-reveal-ready .contact-location-grid {
    opacity: 0;
    transform: translate3d(0, 1rem, 0);
}

[data-contact-location-section].contact-reveal-ready.is-in-view .contact-location-grid {
    opacity: 0.14;
    transform: translate3d(0, 0, 0);
    transition:
        opacity 900ms 220ms ease,
        transform 1.1s 220ms cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes contact-banner-diagnostic-reveal {
    to {
        opacity: 1;
        transform: rotate(0) scale(1);
    }
}

@keyframes contact-banner-scan {
    0%,
    15% {
        opacity: 0;
        transform: translateY(-55%) rotate(-12deg);
    }

    22% {
        opacity: 0.86;
    }

    48% {
        opacity: 0.5;
    }

    60%,
    100% {
        opacity: 0;
        transform: translateY(55%) rotate(-12deg);
    }
}

@keyframes contact-ring-breathe {
    0%,
    100% {
        opacity: 0.65;
        transform: scale(0.96);
    }

    50% {
        opacity: 1;
        transform: scale(1.035);
    }
}

@keyframes contact-clinical-pulse {
    0%,
    100% {
        box-shadow: 0 1.5rem 3rem rgb(3 10 49 / 28%);
        transform: translateY(0) scale(1);
    }

    50% {
        box-shadow: 0 1.75rem 3.5rem rgb(245 206 24 / 18%);
        transform: translateY(-0.35rem) scale(1.035);
    }
}

@keyframes contact-pattern-reveal {
    to {
        opacity: 0.16;
        transform: rotate(7deg) scale(1);
    }
}

@media (width < 48rem) {
    .contact-diagnostic-pattern {
        top: 2rem;
        right: -5rem;
        width: 12rem;
        height: 12rem;
    }

    .contact-diagnostic-pattern img {
        width: 67rem;
    }

    .contact-ecg-pattern {
        bottom: 1.25rem;
        left: -8%;
        width: 108vw;
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-contact-banner].contact-banner-ready [data-contact-banner-content],
    [data-contact-banner].contact-banner-ready [data-contact-banner-visual],
    [data-contact-details-section].contact-reveal-ready [data-contact-detail],
    [data-contact-form-section].contact-reveal-ready [data-contact-form-copy],
    [data-contact-form-section].contact-reveal-ready [data-contact-form-card],
    [data-contact-location-section].contact-reveal-ready [data-contact-location-copy],
    [data-contact-location-section].contact-reveal-ready [data-contact-location-map],
    [data-contact-location-section].contact-reveal-ready .contact-location-grid {
        opacity: 1;
        clip-path: none;
        animation: none;
        transform: none;
        transition: none;
    }

    [data-contact-form-section].contact-reveal-ready .contact-diagnostic-pattern {
        opacity: 0.16;
        animation: none;
        transform: rotate(7deg) scale(1);
    }

    [data-contact-form-section].contact-reveal-ready .contact-ecg-pattern {
        opacity: 0.15;
        clip-path: none;
        transition: none;
    }

    [data-contact-location-section].contact-reveal-ready .contact-location-grid {
        opacity: 0.14;
    }

    [data-contact-banner].contact-banner-ready.is-in-view .contact-banner-scan-beam,
    [data-contact-banner].contact-banner-ready.is-in-view [data-contact-banner-visual] > div {
        animation: none;
    }
}

/* About page motion and diagnostic motifs. */
[data-about-banner].about-page-banner-ready [data-about-banner-content] {
    opacity: 0;
    transform: translate3d(-1.75rem, 0.75rem, 0);
    transition:
        opacity 700ms ease,
        transform 950ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-about-banner].about-page-banner-ready.is-in-view [data-about-banner-content] {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

[data-about-banner].about-page-banner-ready [data-about-banner-visual] {
    opacity: 0;
    clip-path: circle(32% at 50% 50%);
    transform: translate3d(1.5rem, 0, 0) scale(0.92);
    transition:
        opacity 750ms 120ms ease,
        clip-path 1.1s 120ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 1.1s 120ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-about-banner].about-page-banner-ready.is-in-view [data-about-banner-visual] {
    opacity: 1;
    clip-path: circle(72% at 50% 50%);
    transform: translate3d(0, 0, 0) scale(1);
}

.about-banner-rings {
    position: absolute;
    width: 17rem;
    height: 17rem;
    overflow: hidden;
    opacity: 0.24;
    transform: rotate(-8deg);
}

.about-banner-rings img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 86rem;
    max-width: none;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.7rem rgb(221 229 255 / 34%));
    transform: translate(-50%, -50%);
}

.about-banner-scan-beam {
    position: absolute;
    z-index: 1;
    width: 12.5rem;
    height: 4rem;
    border-top: 1px solid rgb(255 210 0 / 72%);
    background: linear-gradient(to bottom, rgb(255 210 0 / 14%), transparent);
    opacity: 0;
    transform: translateY(-5rem) rotate(-10deg);
}

[data-about-banner].about-page-banner-ready.is-in-view .about-banner-scan-beam {
    animation: about-page-scan 4.8s 1.1s ease-in-out infinite;
}

[data-about-banner].about-page-banner-ready.is-in-view .about-banner-rings {
    animation: about-page-rings 5.5s 1s ease-in-out infinite;
}

[data-about-page-reveal].about-page-reveal-ready [data-about-reveal-copy] {
    opacity: 0;
    transform: translate3d(-1.5rem, 0.75rem, 0);
    transition:
        opacity 680ms ease,
        transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-about-page-reveal].about-page-reveal-ready [data-about-reveal-visual] {
    opacity: 0;
    clip-path: inset(0 8% 0 0 round 1.5rem);
    transform: translate3d(-1.25rem, 0.75rem, 0) scale(0.975);
    transition:
        opacity 720ms ease,
        clip-path 1s cubic-bezier(0.22, 1, 0.36, 1),
        transform 1s cubic-bezier(0.22, 1, 0.36, 1);
}

[data-about-page-reveal].about-page-reveal-ready [data-about-card],
[data-about-page-reveal].about-page-reveal-ready [data-about-item],
[data-about-page-reveal].about-page-reveal-ready [data-about-cta] {
    opacity: 0;
    transform: translate3d(0, 1.4rem, 0) scale(0.975);
    transition:
        opacity 580ms ease,
        border-color 240ms ease,
        box-shadow 240ms ease,
        transform 760ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-about-page-reveal].about-page-reveal-ready.is-in-view [data-about-reveal-copy],
[data-about-page-reveal].about-page-reveal-ready.is-in-view [data-about-reveal-visual],
[data-about-page-reveal].about-page-reveal-ready.is-in-view [data-about-card],
[data-about-page-reveal].about-page-reveal-ready.is-in-view [data-about-item],
[data-about-page-reveal].about-page-reveal-ready.is-in-view [data-about-cta] {
    opacity: 1;
    clip-path: inset(0 0 0 0 round 1.5rem);
    transform: translate3d(0, 0, 0) scale(1);
}

[data-about-page-reveal].about-page-reveal-ready.is-in-view [data-about-card]:nth-child(2),
[data-about-page-reveal].about-page-reveal-ready.is-in-view [data-about-item]:nth-child(2) {
    transition-delay: 100ms;
}

[data-about-page-reveal].about-page-reveal-ready.is-in-view [data-about-item]:nth-child(3) {
    transition-delay: 180ms;
}

[data-about-page-reveal].about-page-reveal-ready.is-in-view [data-about-item]:nth-child(4) {
    transition-delay: 260ms;
}

[data-about-page-reveal].about-page-reveal-ready.is-in-view [data-about-cta] {
    transition-delay: 180ms;
}

[data-about-page-reveal].about-page-reveal-ready.is-in-view [data-about-item]:is(:hover, :focus-within) {
    transform: translate3d(0, -0.25rem, 0) scale(1);
    transition-delay: 0ms;
}

[data-team-section].about-page-reveal-ready [data-team-card] {
    opacity: 0;
    transform: translate3d(0, 1.75rem, 0) scale(0.97);
    transition:
        opacity 620ms ease,
        border-color 260ms ease,
        box-shadow 260ms ease,
        transform 820ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-team-section].about-page-reveal-ready.is-in-view [data-team-card] {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}

[data-team-section].about-page-reveal-ready.is-in-view [data-team-card]:nth-child(2) {
    transition-delay: 90ms;
}

[data-team-section].about-page-reveal-ready.is-in-view [data-team-card]:nth-child(3) {
    transition-delay: 180ms;
}

[data-team-section].about-page-reveal-ready.is-in-view [data-team-card]:nth-child(4) {
    transition-delay: 270ms;
}

[data-team-section] [data-team-ambient]::after {
    position: absolute;
    z-index: 2;
    inset: 0;
    border: 1px solid rgb(114 146 255 / 10%);
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px rgb(114 146 255 / 5%);
    content: '';
    opacity: 0.3;
    pointer-events: none;
}

@media (prefers-reduced-motion: no-preference) {
    [data-team-section].about-page-reveal-ready.is-in-view [data-team-ambient]::after {
        animation: team-card-ambient-glow 6s ease-in-out infinite;
    }

    [data-team-section].about-page-reveal-ready.is-in-view [data-team-card]:is(:hover, :focus-within) {
        border-color: rgb(147 197 253 / 70%);
        box-shadow: 0 22px 52px rgb(28 63 209 / 28%);
        transform: translate3d(0, -0.25rem, 0) scale(1);
        transition-delay: 0ms;
    }
}

.about-image-scan {
    position: absolute;
    top: -22%;
    right: 0;
    left: 0;
    height: 18%;
    border-bottom: 1px solid rgb(255 210 0 / 76%);
    background: linear-gradient(to bottom, transparent, rgb(255 210 0 / 14%));
    opacity: 0;
}

[data-about-page-reveal].about-page-reveal-ready.is-in-view .about-image-scan {
    animation: about-page-image-scan 5.6s 1s ease-in-out infinite;
}

.about-page-diagnostic-pattern,
.about-page-ecg-pattern {
    position: absolute;
    z-index: 0;
    pointer-events: none;
}

.about-page-diagnostic-pattern {
    top: 2rem;
    right: -5rem;
    width: 15rem;
    height: 15rem;
    overflow: hidden;
    opacity: 0.13;
    transform: rotate(7deg);
}

.about-page-diagnostic-pattern img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 76rem;
    max-width: none;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.7rem rgb(221 229 255 / 28%));
    transform: translate(-50%, -50%);
}

.about-page-ecg-pattern {
    bottom: 1.75rem;
    left: 50%;
    width: min(54rem, 92vw);
    opacity: 0.13;
    transform: translateX(-50%);
    -webkit-mask-image: linear-gradient(90deg, transparent, black 10%, black 90%, transparent);
    mask-image: linear-gradient(90deg, transparent, black 10%, black 90%, transparent);
}

.about-page-ecg-pattern img {
    width: 100%;
    max-width: none;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.7rem rgb(221 229 255 / 28%));
}

[data-about-page-reveal].about-page-reveal-ready .about-page-diagnostic-pattern {
    opacity: 0;
    transform: rotate(-7deg) scale(0.76);
}

[data-about-page-reveal].about-page-reveal-ready .about-page-ecg-pattern {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
}

[data-about-page-reveal].about-page-reveal-ready.is-in-view .about-page-diagnostic-pattern {
    opacity: 0.13;
    transform: rotate(7deg) scale(1);
    transition:
        opacity 800ms 280ms ease,
        transform 1.15s 280ms cubic-bezier(0.16, 1, 0.3, 1);
}

[data-about-page-reveal].about-page-reveal-ready.is-in-view .about-page-ecg-pattern {
    opacity: 0.13;
    clip-path: inset(0 0 0 0);
    transition:
        opacity 520ms 420ms ease,
        clip-path 1.25s 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes about-page-scan {
    0%,
    18% {
        opacity: 0;
        transform: translateY(-5rem) rotate(-10deg);
    }

    28% {
        opacity: 0.78;
    }

    62%,
    100% {
        opacity: 0;
        transform: translateY(5rem) rotate(-10deg);
    }
}

@keyframes about-page-rings {
    0%,
    100% {
        opacity: 0.2;
        transform: rotate(-8deg) scale(0.96);
    }

    50% {
        opacity: 0.3;
        transform: rotate(0) scale(1.035);
    }
}

@keyframes about-page-image-scan {
    0%,
    18% {
        opacity: 0;
        transform: translateY(0);
    }

    26% {
        opacity: 0.7;
    }

    65%,
    100% {
        opacity: 0;
        transform: translateY(34rem);
    }
}

@keyframes team-card-ambient-glow {
    0%,
    100% {
        border-color: rgb(114 146 255 / 10%);
        box-shadow:
            inset 0 0 0 1px rgb(114 146 255 / 5%),
            inset 0 0 1.5rem rgb(43 87 246 / 0%);
        opacity: 0.3;
    }

    50% {
        border-color: rgb(147 197 253 / 34%);
        box-shadow:
            inset 0 0 0 1px rgb(147 197 253 / 16%),
            inset 0 0 1.8rem rgb(43 87 246 / 9%);
        opacity: 0.78;
    }
}

@media (width < 48rem) {
    .about-page-diagnostic-pattern {
        right: -5rem;
        width: 12rem;
        height: 12rem;
    }

    .about-page-diagnostic-pattern img {
        width: 61rem;
    }

    .about-page-ecg-pattern {
        bottom: 0.75rem;
        width: 110vw;
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-about-banner].about-page-banner-ready [data-about-banner-content],
    [data-about-banner].about-page-banner-ready [data-about-banner-visual],
    [data-about-page-reveal].about-page-reveal-ready [data-about-reveal-copy],
    [data-about-page-reveal].about-page-reveal-ready [data-about-reveal-visual],
    [data-about-page-reveal].about-page-reveal-ready [data-about-card],
    [data-about-page-reveal].about-page-reveal-ready [data-about-item],
    [data-team-section].about-page-reveal-ready [data-team-card],
    [data-about-page-reveal].about-page-reveal-ready [data-about-cta] {
        opacity: 1;
        clip-path: none;
        animation: none;
        transform: none;
        transition: none;
    }

    [data-about-page-reveal].about-page-reveal-ready .about-page-diagnostic-pattern {
        opacity: 0.13;
        clip-path: none;
        animation: none;
        transform: rotate(7deg) scale(1);
        transition: none;
    }

    [data-about-page-reveal].about-page-reveal-ready .about-page-ecg-pattern {
        opacity: 0.13;
        clip-path: none;
        animation: none;
        transform: translateX(-50%);
        transition: none;
    }

    [data-about-banner].about-page-banner-ready.is-in-view .about-banner-scan-beam,
    [data-about-banner].about-page-banner-ready.is-in-view .about-banner-rings,
    [data-team-section].about-page-reveal-ready.is-in-view [data-team-ambient]::after,
    [data-about-page-reveal].about-page-reveal-ready.is-in-view .about-image-scan {
        animation: none;
    }
}

/* Services page motion and connected diagnostic visuals. */
[data-services-banner].services-page-banner-ready [data-services-banner-content] {
    opacity: 0;
    clip-path: inset(0 0 16% 0);
    transform: translate3d(-1.75rem, 0.75rem, 0);
    background: linear-gradient(135deg, rgb(8 20 74 / 76%), rgb(23 58 182 / 36%));
    border: 1px solid rgb(255 255 255 / 16%);
    box-shadow: 0 28px 80px rgb(6 17 60 / 56%);
    backdrop-filter: blur(6px);
    transition:
        opacity 720ms ease,
        clip-path 980ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 980ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-services-banner].services-page-banner-ready.is-in-view [data-services-banner-content] {
    opacity: 1;
    clip-path: inset(0 0 0 0);
    transform: translate3d(0, 0, 0);
}

[data-services-banner-content] h1,
[data-services-banner-content] p,
[data-services-banner-content] nav,
[data-services-banner-content] .text-brand-yellow {
    text-shadow: 0 6px 24px rgb(4 12 42 / 72%);
}

[data-services-banner-content] h1 {
    letter-spacing: -0.04em;
}

[data-services-banner-content] p {
    color: rgb(216 229 255 / 96%);
}

[data-services-banner].services-page-banner-ready [data-services-banner-visual] {
    opacity: 0;
    clip-path: circle(30% at 50% 50%);
    transform: translate3d(1.5rem, 0.75rem, 0) scale(0.92);
    transition:
        opacity 760ms 120ms ease,
        clip-path 1.1s 120ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 1.1s 120ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-services-banner-visual] > div:last-child {
    background: linear-gradient(180deg, rgb(9 24 90 / 38%), rgb(11 30 100 / 24%));
    border: 1px solid rgb(255 255 255 / 12%);
    box-shadow: 0 28px 80px rgb(8 21 75 / 40%);
    backdrop-filter: blur(10px);
}

[data-services-banner].services-page-banner-ready.is-in-view [data-services-banner-visual] {
    opacity: 1;
    clip-path: circle(76% at 50% 50%);
    transform: translate3d(0, 0, 0) scale(1);
}

.services-hero-rings {
    position: absolute;
    width: 31rem;
    height: 31rem;
    overflow: hidden;
    opacity: 0.2;
    pointer-events: none;
    transform: rotate(-9deg);
}

.services-hero-rings img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 112rem;
    max-width: none;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.8rem rgb(221 229 255 / 28%));
    transform: translate(-50%, -50%);
}

[data-services-banner].services-page-banner-ready.is-in-view .services-hero-rings {
    animation: services-page-rings 7s 1s ease-in-out infinite;
}

.services-page-scan-line,
.services-page-image-scan {
    position: absolute;
    top: -22%;
    right: 0;
    left: 0;
    z-index: 3;
    height: 18%;
    border-bottom: 1px solid rgb(255 210 0 / 78%);
    background: linear-gradient(to bottom, transparent, rgb(255 210 0 / 13%));
    opacity: 0;
    pointer-events: none;
}

[data-services-banner].services-page-banner-ready.is-in-view .services-page-scan-line {
    animation: services-page-hero-scan 5.8s 1.25s ease-in-out infinite;
}

[data-services-banner].services-page-banner-ready.is-in-view [data-services-banner-visual] > div:last-child {
    animation: services-page-status-float 4.2s 1.25s ease-in-out infinite;
}

[data-services-page-reveal].services-page-reveal-ready [data-services-reveal-copy] {
    opacity: 0;
    transform: translate3d(-1.5rem, 0.75rem, 0);
    transition:
        opacity 680ms ease,
        transform 920ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-services-page-reveal].services-page-reveal-ready [data-services-reveal-visual] {
    opacity: 0;
    clip-path: inset(0 7% 0 0 round 1.5rem);
    transform: translate3d(1.5rem, 0.75rem, 0) scale(0.975);
    transition:
        opacity 720ms 80ms ease,
        clip-path 1s 80ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 1s 80ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-services-page-reveal].services-page-reveal-ready [data-services-page-item],
[data-services-page-reveal].services-page-reveal-ready [data-services-page-step],
[data-services-page-reveal].services-page-reveal-ready [data-services-page-cta] {
    opacity: 0;
    transform: translate3d(0, 1.4rem, 0) scale(0.98);
    transition:
        opacity 600ms ease,
        border-color 240ms ease,
        box-shadow 240ms ease,
        transform 780ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-reveal-copy],
[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-reveal-visual],
[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-page-item],
[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-page-step],
[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-page-cta] {
    opacity: 1;
    clip-path: inset(0 0 0 0 round 1.5rem);
    transform: translate3d(0, 0, 0) scale(1);
}

[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-page-grid] > :nth-child(2),
[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-flow] > :nth-child(2) {
    transition-delay: 100ms;
}

[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-page-grid] > :nth-child(3),
[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-flow] > :nth-child(3) {
    transition-delay: 180ms;
}

[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-page-grid] > :nth-child(4),
[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-flow] > :nth-child(4) {
    transition-delay: 260ms;
}

[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-page-cta] {
    transition-delay: 160ms;
}

[data-services-page-reveal].services-page-reveal-ready.is-in-view [data-services-page-item]:is(:hover, :focus-visible, :focus-within) {
    transform: translate3d(0, -0.25rem, 0) scale(1);
    transition-delay: 0ms;
}

[data-services-page-reveal].services-page-reveal-ready.is-in-view .services-page-image-scan {
    animation: services-page-image-scan 6s 1s ease-in-out infinite;
}

.services-page-diagnostic-pattern,
.services-page-ecg-pattern {
    position: absolute;
    z-index: 0;
    pointer-events: none;
}

.services-page-diagnostic-pattern {
    top: 2rem;
    right: -5rem;
    width: 16rem;
    height: 16rem;
    overflow: hidden;
    opacity: 0.13;
    transform: rotate(7deg);
}

.services-page-diagnostic-pattern-left {
    top: auto;
    right: auto;
    bottom: 2rem;
    left: -5rem;
    transform: rotate(-7deg);
}

.services-page-diagnostic-pattern img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 82rem;
    max-width: none;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.7rem rgb(221 229 255 / 28%));
    transform: translate(-50%, -50%);
}

.services-page-ecg-pattern {
    right: 0;
    bottom: 1.5rem;
    left: 0;
    width: min(58rem, 92vw);
    margin-inline: auto;
    opacity: 0.12;
    -webkit-mask-image: linear-gradient(90deg, transparent, black 10%, black 90%, transparent);
    mask-image: linear-gradient(90deg, transparent, black 10%, black 90%, transparent);
}

.services-page-ecg-pattern img {
    width: 100%;
    max-width: none;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.7rem rgb(221 229 255 / 28%));
}

[data-services-page-reveal].services-page-reveal-ready .services-page-diagnostic-pattern {
    opacity: 0;
    transform: rotate(-8deg) scale(0.76);
}

[data-services-page-reveal].services-page-reveal-ready .services-page-diagnostic-pattern-left {
    transform: rotate(8deg) scale(0.76);
}

[data-services-page-reveal].services-page-reveal-ready .services-page-ecg-pattern {
    opacity: 0;
    clip-path: inset(0 100% 0 0);
}

[data-services-page-reveal].services-page-reveal-ready.is-in-view .services-page-diagnostic-pattern {
    opacity: 0.13;
    transform: rotate(7deg) scale(1);
    transition:
        opacity 800ms 280ms ease,
        transform 1.15s 280ms cubic-bezier(0.16, 1, 0.3, 1);
}

[data-services-page-reveal].services-page-reveal-ready.is-in-view .services-page-diagnostic-pattern-left {
    transform: rotate(-7deg) scale(1);
}

[data-services-page-reveal].services-page-reveal-ready.is-in-view .services-page-ecg-pattern {
    opacity: 0.12;
    clip-path: inset(0 0 0 0);
    transition:
        opacity 520ms 420ms ease,
        clip-path 1.35s 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-services-flow]::before {
    content: '';
    position: absolute;
    top: 2.45rem;
    right: 8%;
    left: 8%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgb(43 87 246 / 30%) 12%, rgb(43 87 246 / 30%) 88%, transparent);
}

@media (width < 64rem) {
    [data-services-flow]::before {
        display: none;
    }
}

@keyframes services-page-rings {
    0%,
    100% {
        opacity: 0.16;
        transform: rotate(-9deg) scale(0.96);
    }

    50% {
        opacity: 0.25;
        transform: rotate(1deg) scale(1.04);
    }
}

@keyframes services-page-hero-scan {
    0%,
    18% {
        opacity: 0;
        transform: translateY(0);
    }

    27% {
        opacity: 0.75;
    }

    68%,
    100% {
        opacity: 0;
        transform: translateY(22rem);
    }
}

@keyframes services-page-image-scan {
    0%,
    18% {
        opacity: 0;
        transform: translateY(0);
    }

    27% {
        opacity: 0.66;
    }

    68%,
    100% {
        opacity: 0;
        transform: translateY(30rem);
    }
}

@keyframes services-page-status-float {
    0%,
    100% {
        transform: translate3d(0, 0, 0);
    }

    50% {
        transform: translate3d(0, -0.4rem, 0);
    }
}

@media (width < 48rem) {
    .services-page-diagnostic-pattern {
        right: -5rem;
        width: 12rem;
        height: 12rem;
    }

    .services-page-diagnostic-pattern-left {
        right: auto;
        left: -5rem;
    }

    .services-page-diagnostic-pattern img {
        width: 62rem;
    }

    .services-page-ecg-pattern {
        bottom: 0.75rem;
        width: 112vw;
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-services-banner].services-page-banner-ready [data-services-banner-content],
    [data-services-banner].services-page-banner-ready [data-services-banner-visual],
    [data-services-page-reveal].services-page-reveal-ready [data-services-reveal-copy],
    [data-services-page-reveal].services-page-reveal-ready [data-services-reveal-visual],
    [data-services-page-reveal].services-page-reveal-ready [data-services-page-item],
    [data-services-page-reveal].services-page-reveal-ready [data-services-page-step],
    [data-services-page-reveal].services-page-reveal-ready [data-services-page-cta] {
        opacity: 1;
        clip-path: none;
        animation: none;
        transform: none;
        transition: none;
    }

    [data-services-page-reveal].services-page-reveal-ready .services-page-diagnostic-pattern {
        opacity: 0.13;
        clip-path: none;
        animation: none;
        transform: rotate(7deg) scale(1);
        transition: none;
    }

    [data-services-page-reveal].services-page-reveal-ready .services-page-diagnostic-pattern-left {
        transform: rotate(-7deg) scale(1);
    }

    [data-services-page-reveal].services-page-reveal-ready .services-page-ecg-pattern {
        opacity: 0.12;
        clip-path: none;
        transition: none;
    }

    [data-services-banner].services-page-banner-ready.is-in-view .services-hero-rings,
    [data-services-banner].services-page-banner-ready.is-in-view .services-page-scan-line,
    [data-services-banner].services-page-banner-ready.is-in-view [data-services-banner-visual] > div:last-child,
    [data-services-page-reveal].services-page-reveal-ready.is-in-view .services-page-image-scan {
        animation: none;
    }
}

/* News index and article pages. */
.news-reading-progress {
    position: fixed;
    top: 5rem;
    right: 0;
    left: 0;
    z-index: 45;
    height: 0.2rem;
    overflow: hidden;
    background: rgb(255 255 255 / 12%);
    pointer-events: none;
}

.news-reading-progress span {
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, #ffd200, #fff1a8);
    box-shadow: 0 0 1rem rgb(255 210 0 / 62%);
    transform: scaleX(0);
    transform-origin: left center;
    will-change: transform;
}

[data-news-banner].news-page-banner-ready [data-news-banner-content],
[data-news-article-banner].news-article-banner-ready [data-news-article-banner-content] {
    opacity: 0;
    clip-path: inset(0 0 16% 0);
    transform: translate3d(-1.75rem, 0.75rem, 0);
    transition:
        opacity 720ms ease,
        clip-path 980ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 980ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-news-banner].news-page-banner-ready.is-in-view [data-news-banner-content],
[data-news-article-banner].news-article-banner-ready.is-in-view [data-news-article-banner-content] {
    opacity: 1;
    clip-path: inset(0 0 0 0);
    transform: translate3d(0, 0, 0);
}

[data-news-banner].news-page-banner-ready [data-news-banner-visual] {
    opacity: 0;
    clip-path: circle(28% at 50% 50%);
    transform: translate3d(1.5rem, 0.75rem, 0) rotate(2deg) scale(0.92);
    transition:
        opacity 760ms 120ms ease,
        clip-path 1.1s 120ms cubic-bezier(0.22, 1, 0.36, 1),
        transform 1.1s 120ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-news-banner].news-page-banner-ready.is-in-view [data-news-banner-visual] {
    opacity: 1;
    clip-path: circle(76% at 50% 50%);
    transform: translate3d(0, 0, 0) rotate(0) scale(1);
}

.news-hero-rings,
.news-article-hero-rings {
    position: absolute;
    overflow: hidden;
    opacity: 0.19;
    pointer-events: none;
}

.news-hero-rings {
    width: 30rem;
    height: 30rem;
    transform: rotate(-8deg);
}

.news-article-hero-rings {
    top: 50%;
    right: -6rem;
    width: 32rem;
    height: 32rem;
    transform: translateY(-50%) rotate(8deg);
}

.news-hero-rings img,
.news-article-hero-rings img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 110rem;
    max-width: none;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.8rem rgb(221 229 255 / 28%));
    transform: translate(-50%, -50%);
}

[data-news-banner].news-page-banner-ready.is-in-view .news-hero-rings {
    animation: news-page-rings 7s 1s ease-in-out infinite;
}

.news-page-scan-line,
.news-article-image-scan {
    position: absolute;
    top: -22%;
    right: 0;
    left: 0;
    z-index: 3;
    height: 18%;
    border-bottom: 1px solid rgb(255 210 0 / 78%);
    background: linear-gradient(to bottom, transparent, rgb(255 210 0 / 13%));
    opacity: 0;
    pointer-events: none;
}

[data-news-banner].news-page-banner-ready.is-in-view .news-page-scan-line {
    animation: news-page-card-scan 5.8s 1.25s ease-in-out infinite;
}

[data-news-banner].news-page-banner-ready.is-in-view [data-news-banner-visual] > div:last-child {
    animation: news-page-status-float 4.2s 1.25s ease-in-out infinite;
}

[data-news-page-reveal].news-page-reveal-ready [data-news-reveal-copy],
[data-news-article-reveal].news-article-reveal-ready [data-news-reveal-copy],
[data-news-article-reveal].news-article-reveal-ready [data-news-article-copy] {
    opacity: 0;
    transform: translate3d(-1.5rem, 0.75rem, 0);
    transition:
        opacity 680ms ease,
        transform 920ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-news-page-reveal].news-page-reveal-ready [data-news-featured-card],
[data-news-page-reveal].news-page-reveal-ready [data-news-page-item],
[data-news-page-reveal].news-page-reveal-ready [data-news-page-cta],
[data-news-article-reveal].news-article-reveal-ready [data-news-article-image],
[data-news-article-reveal].news-article-reveal-ready [data-news-article-aside],
[data-news-article-reveal].news-article-reveal-ready [data-news-page-item],
[data-news-article-reveal].news-article-reveal-ready [data-news-page-cta] {
    opacity: 0;
    transform: translate3d(0, 1.4rem, 0) scale(0.98);
    transition:
        opacity 620ms ease,
        border-color 240ms ease,
        box-shadow 240ms ease,
        transform 820ms cubic-bezier(0.22, 1, 0.36, 1);
}

[data-news-article-reveal].news-article-reveal-ready [data-news-article-image] {
    clip-path: inset(0 7% 0 0 round 2rem);
    transform: translate3d(0, 1.5rem, 0) scale(0.97);
}

[data-news-page-reveal].news-page-reveal-ready.is-in-view [data-news-reveal-copy],
[data-news-page-reveal].news-page-reveal-ready.is-in-view [data-news-featured-card],
[data-news-page-reveal].news-page-reveal-ready.is-in-view [data-news-page-item],
[data-news-page-reveal].news-page-reveal-ready.is-in-view [data-news-page-cta],
[data-news-article-reveal].news-article-reveal-ready.is-in-view [data-news-reveal-copy],
[data-news-article-reveal].news-article-reveal-ready.is-in-view [data-news-article-image],
[data-news-article-reveal].news-article-reveal-ready.is-in-view [data-news-article-aside],
[data-news-article-reveal].news-article-reveal-ready.is-in-view [data-news-article-copy],
[data-news-article-reveal].news-article-reveal-ready.is-in-view [data-news-page-item],
[data-news-article-reveal].news-article-reveal-ready.is-in-view [data-news-page-cta] {
    opacity: 1;
    clip-path: inset(0 0 0 0 round 2rem);
    transform: translate3d(0, 0, 0) scale(1);
}

[data-news-page-reveal].news-page-reveal-ready.is-in-view [data-news-grid] > :nth-child(2),
[data-news-article-reveal].news-article-reveal-ready.is-in-view [data-news-grid] > :nth-child(2) {
    transition-delay: 110ms;
}

[data-news-page-reveal].news-page-reveal-ready.is-in-view [data-news-grid] > :nth-child(3),
[data-news-article-reveal].news-article-reveal-ready.is-in-view [data-news-grid] > :nth-child(3) {
    transition-delay: 200ms;
}

[data-news-page-reveal].news-page-reveal-ready.is-in-view [data-news-page-cta],
[data-news-article-reveal].news-article-reveal-ready.is-in-view [data-news-page-cta] {
    transition-delay: 150ms;
}

[data-news-page-reveal].news-page-reveal-ready.is-in-view [data-news-page-item]:is(:hover, :focus-within),
[data-news-article-reveal].news-article-reveal-ready.is-in-view [data-news-page-item]:is(:hover, :focus-within) {
    transform: translate3d(0, -0.25rem, 0) scale(1);
    transition-delay: 0ms;
}

[data-news-article-reveal].news-article-reveal-ready.is-in-view .news-article-image-scan {
    animation: news-page-image-scan 6.2s 1s ease-in-out infinite;
}

.news-page-diagnostic-pattern,
.news-page-ecg-pattern {
    position: absolute;
    z-index: 0;
    pointer-events: none;
}

.news-page-diagnostic-pattern {
    top: 2rem;
    right: -5rem;
    width: 16rem;
    height: 16rem;
    overflow: hidden;
    opacity: 0.08;
    transform: rotate(7deg);
}

.news-page-diagnostic-pattern img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 82rem;
    max-width: none;
    filter: sepia(1) saturate(4) hue-rotate(185deg) opacity(0.45);
    transform: translate(-50%, -50%);
}

.news-page-ecg-pattern {
    right: 0;
    bottom: 1rem;
    left: 0;
    width: min(58rem, 92vw);
    margin-inline: auto;
    opacity: 0.12;
    -webkit-mask-image: linear-gradient(90deg, transparent, black 10%, black 90%, transparent);
    mask-image: linear-gradient(90deg, transparent, black 10%, black 90%, transparent);
}

.news-page-ecg-pattern img {
    width: 100%;
    max-width: none;
    filter: brightness(0) invert(1) drop-shadow(0 0 0.7rem rgb(221 229 255 / 28%));
}

.news-article-prose {
    color: #475569;
    font-size: 1rem;
    line-height: 1.85;
}

.news-article-prose .news-article-lead {
    color: #172554;
    font-size: clamp(1.2rem, 2vw, 1.5rem);
    font-weight: 500;
    letter-spacing: -0.02em;
    line-height: 1.65;
}

.news-article-prose > section {
    padding-top: 2.6rem;
}

.news-article-prose > section + section {
    margin-top: 0.75rem;
    border-top: 1px solid #dbe5ff;
}

.news-article-prose h2 {
    color: #0d1c4c;
    font-size: clamp(1.55rem, 2.5vw, 2rem);
    font-weight: 750;
    letter-spacing: -0.03em;
    line-height: 1.25;
}

.news-article-prose section p {
    margin-top: 1.15rem;
}

.news-article-takeaways {
    margin-top: 2.25rem;
    border: 1px solid #bfdbfe;
    border-radius: 1.5rem;
    background: linear-gradient(145deg, #eff6ff, #fffef5);
    padding: clamp(1.25rem, 3vw, 2rem);
}

.news-article-takeaways h2 {
    font-size: 1.15rem;
    letter-spacing: -0.015em;
}

.news-article-takeaways ul {
    display: grid;
    gap: 0.8rem;
    margin-top: 1.25rem;
}

.news-article-takeaways li {
    position: relative;
    padding-left: 1.5rem;
    color: #475569;
    font-size: 0.9rem;
    line-height: 1.7;
}

.news-article-takeaways li::before {
    position: absolute;
    top: 0.64rem;
    left: 0;
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 9999px;
    background: #ffd200;
    box-shadow: 0 0 0 4px rgb(255 210 0 / 15%);
    content: '';
}

.news-article-note {
    display: flex;
    gap: 0.9rem;
    margin-top: 2.75rem;
    border-top: 1px solid #dbe5ff;
    padding-top: 1.5rem;
    color: #64748b;
    font-size: 0.8rem;
    line-height: 1.65;
}

@keyframes news-page-rings {
    0%,
    100% {
        opacity: 0.15;
        transform: rotate(-8deg) scale(0.96);
    }

    50% {
        opacity: 0.24;
        transform: rotate(1deg) scale(1.04);
    }
}

@keyframes news-page-card-scan {
    0%,
    18% {
        opacity: 0;
        transform: translateY(0);
    }

    27% {
        opacity: 0.75;
    }

    68%,
    100% {
        opacity: 0;
        transform: translateY(22rem);
    }
}

@keyframes news-page-image-scan {
    0%,
    18% {
        opacity: 0;
        transform: translateY(0);
    }

    27% {
        opacity: 0.66;
    }

    68%,
    100% {
        opacity: 0;
        transform: translateY(35rem);
    }
}

@keyframes news-page-status-float {
    0%,
    100% {
        transform: translate3d(0, 0, 0);
    }

    50% {
        transform: translate3d(0, -0.4rem, 0);
    }
}

@media (width < 48rem) {
    .news-article-hero-rings {
        right: -8rem;
        width: 20rem;
        height: 20rem;
    }

    .news-page-diagnostic-pattern {
        right: -5rem;
        width: 12rem;
        height: 12rem;
    }

    .news-page-diagnostic-pattern img {
        width: 62rem;
    }

    .news-page-ecg-pattern {
        bottom: 0.5rem;
        width: 112vw;
    }
}

@media (prefers-reduced-motion: reduce) {
    [data-news-banner].news-page-banner-ready [data-news-banner-content],
    [data-news-banner].news-page-banner-ready [data-news-banner-visual],
    [data-news-article-banner].news-article-banner-ready [data-news-article-banner-content],
    [data-news-page-reveal].news-page-reveal-ready [data-news-reveal-copy],
    [data-news-page-reveal].news-page-reveal-ready [data-news-featured-card],
    [data-news-page-reveal].news-page-reveal-ready [data-news-page-item],
    [data-news-page-reveal].news-page-reveal-ready [data-news-page-cta],
    [data-news-article-reveal].news-article-reveal-ready [data-news-reveal-copy],
    [data-news-article-reveal].news-article-reveal-ready [data-news-article-image],
    [data-news-article-reveal].news-article-reveal-ready [data-news-article-aside],
    [data-news-article-reveal].news-article-reveal-ready [data-news-article-copy],
    [data-news-article-reveal].news-article-reveal-ready [data-news-page-item],
    [data-news-article-reveal].news-article-reveal-ready [data-news-page-cta] {
        opacity: 1;
        clip-path: none;
        animation: none;
        transform: none;
        transition: none;
    }

    [data-news-banner].news-page-banner-ready.is-in-view .news-hero-rings,
    [data-news-banner].news-page-banner-ready.is-in-view .news-page-scan-line,
    [data-news-banner].news-page-banner-ready.is-in-view [data-news-banner-visual] > div:last-child,
    [data-news-article-reveal].news-article-reveal-ready.is-in-view .news-article-image-scan {
        animation: none;
    }
}
