:root {
    --rasa-font: var(--rasa-maintenance-font-family), IRANSansX, Vazirmatn, Tahoma, Arial, sans-serif;
    --rasa-bg: #061a24;
    --rasa-cyan: #22ddd8;
    --rasa-blue: #7890ff;
    --rasa-gold: #ffc56b;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body.rasa-activity-body {
    margin: 0;
    font-family: var(--rasa-font);
    color: #eefcff;
    background:
        radial-gradient(circle at 15% 20%, rgba(34, 221, 216, .22), transparent 30%),
        radial-gradient(circle at 82% 12%, rgba(120, 144, 255, .18), transparent 28%),
        linear-gradient(135deg, #04131d, #0a2532 48%, #07141e);
    overflow-x: hidden;
}

body.rasa-activity-body::before {
    content: "";
    position: fixed;
    inset: -12%;
    pointer-events: none;
    z-index: -2;
    background:
        radial-gradient(circle at 18% 24%, rgba(34, 221, 216, .18), transparent 27%),
        radial-gradient(circle at 80% 72%, rgba(255, 197, 107, .10), transparent 25%),
        radial-gradient(circle at 78% 20%, rgba(120, 144, 255, .16), transparent 28%);
    filter: blur(16px);
    animation: rasaAurora 22s ease-in-out infinite alternate;
}

@keyframes rasaAurora {
    from { transform: translate3d(-1%, -1%, 0) scale(1); }
    to { transform: translate3d(1.4%, 1.1%, 0) scale(1.03); }
}

.rasa-activity-loader {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: grid;
    place-items: center;
    background: radial-gradient(circle at 50% 45%, rgba(34,221,216,.24), transparent 34%), #051723;
    transition: opacity .55s ease, visibility .55s ease, transform .55s ease;
}

.rasa-activity-loader.is-hidden {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: scale(1.03);
}

.rasa-loader-card {
    position: relative;
    width: min(440px, calc(100vw - 32px));
    min-height: 330px;
    border-radius: 42px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 14px;
    text-align: center;
    background: linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.04));
    border: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 44px 130px rgba(0,0,0,.35);
    overflow: hidden;
}

.rasa-loader-orbit {
    position: absolute;
    width: 168px;
    height: 168px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.18);
    box-shadow: inset 0 0 30px rgba(34,221,216,.15);
    animation: rasaSpin 4s linear infinite;
}

.rasa-loader-logo {
    width: 92px;
    height: 92px;
    border-radius: 30px;
    display: grid;
    place-items: center;
    overflow: hidden;
    background: rgba(255,255,255,.16);
    box-shadow: 0 24px 80px rgba(34,221,216,.25);
    z-index: 2;
    font-size: 38px;
    font-weight: 900;
}

.rasa-loader-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.rasa-loader-card strong {
    z-index: 2;
    font-size: 30px;
    line-height: 1.5;
}

.rasa-loader-card span {
    z-index: 2;
    color: rgba(238,252,255,.72);
}

@keyframes rasaSpin {
    to { transform: rotate(360deg); }
}

.rasa-activity-hero {
    min-height: 100vh;
    padding: 28px clamp(18px, 4vw, 70px) 80px;
}

.rasa-activity-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 12px;
    border-radius: 28px;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.12);
    backdrop-filter: blur(18px);
}

.rasa-activity-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    text-decoration: none;
    font-weight: 900;
}

.rasa-activity-brand span {
    width: 44px;
    height: 44px;
    border-radius: 16px;
    display: grid;
    place-items: center;
    overflow: hidden;
    background: rgba(255,255,255,.12);
}

.rasa-activity-brand img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.rasa-activity-actions {
    display: flex;
    gap: 8px;
}

.rasa-activity-actions a {
    color: rgba(255,255,255,.78);
    text-decoration: none;
    padding: 10px 14px;
    border-radius: 999px;
}

.rasa-activity-actions a:hover {
    background: rgba(255,255,255,.11);
    color: #fff;
}

.rasa-activity-hero-grid {
    width: min(1180px, 100%);
    margin: clamp(72px, 12vh, 130px) auto 0;
    display: grid;
    grid-template-columns: 1.08fr .92fr;
    gap: clamp(30px, 5vw, 80px);
    align-items: center;
}

.rasa-activity-copy > span {
    display: inline-flex;
    padding: 10px 16px;
    border-radius: 999px;
    color: #bff8ef;
    background: rgba(34,221,216,.14);
    border: 1px solid rgba(34,221,216,.24);
    font-weight: 900;
}

.rasa-activity-copy h1 {
    margin: 22px 0 0;
    font-size: clamp(44px, 7vw, 92px);
    line-height: 1.05;
    letter-spacing: -.08em;
    background: linear-gradient(90deg, #fff, #bff8ef 55%, #ffc56b);
    -webkit-background-clip: text;
    color: transparent;
}

.rasa-activity-copy p {
    max-width: 680px;
    margin: 24px 0 0;
    color: rgba(238,252,255,.72);
    line-height: 2.1;
    font-size: 18px;
}

.rasa-activity-stats {
    margin-top: 28px;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.rasa-activity-stats div {
    min-width: 136px;
    padding: 14px 16px;
    border-radius: 20px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.11);
    display: grid;
    gap: 3px;
}

.rasa-activity-stats b {
    font-size: 21px;
}

.rasa-activity-stats small {
    color: rgba(238,252,255,.62);
}

.rasa-activity-stage-card {
    position: relative;
    min-height: 430px;
    border-radius: 42px;
    background: linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.035));
    border: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 40px 120px rgba(0,0,0,.28);
    overflow: visible;
}

.rasa-activity-holo {
    position: absolute;
    inset: 38px;
    border-radius: 32px;
    display: grid;
    place-items: center;
    align-content: center;
    gap: 12px;
    text-align: center;
    background: rgba(3,18,28,.32);
    border: 1px solid rgba(255,255,255,.12);
    backdrop-filter: blur(16px);
}

.rasa-activity-holo i {
    width: 190px;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--rasa-cyan), transparent);
    animation: rasaScan 2.8s ease-in-out infinite;
}

.rasa-activity-holo i:nth-child(2) {
    width: 140px;
    animation-delay: -.8s;
}

.rasa-activity-holo i:nth-child(3) {
    width: 100px;
    animation-delay: -1.5s;
}

.rasa-activity-holo strong {
    font-size: 30px;
}

.rasa-activity-holo small {
    color: rgba(238,252,255,.65);
}

@keyframes rasaScan {
    0%,100% { transform: translateY(-56px); opacity: .25; }
    50% { transform: translateY(56px); opacity: 1; }
}

.rasa-scroll-cue {
    position: absolute;
    right: 50%;
    bottom: -70px;
    transform: translateX(50%);
    display: grid;
    place-items: center;
    gap: 8px;
    color: rgba(238,252,255,.78);
    font-size: 13px;
    font-weight: 800;
}

.rasa-scroll-cue span {
    width: 24px;
    height: 38px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,.28);
    position: relative;
}

.rasa-scroll-cue span::after {
    content: "";
    position: absolute;
    top: 8px;
    right: 50%;
    width: 5px;
    height: 5px;
    border-radius: 999px;
    transform: translateX(50%);
    background: #bff8ef;
    animation: rasaScrollDot 1.6s ease-in-out infinite;
}

@keyframes rasaScrollDot {
    0% { transform: translateX(50%) translateY(0); opacity: 0; }
    30% { opacity: 1; }
    100% { transform: translateX(50%) translateY(16px); opacity: 0; }
}

.rasa-timeline-section {
    padding: 78px 0 105px;
}

.rasa-timeline-head {
    width: min(980px, calc(100% - 36px));
    margin: 0 auto 34px;
    text-align: center;
}

.rasa-timeline-head span {
    color: #9ff8f8;
    font-weight: 900;
}

.rasa-timeline-head h2 {
    margin: 10px 0 0;
    font-size: clamp(30px, 4.4vw, 58px);
    line-height: 1.25;
    letter-spacing: -.07em;
}

.rasa-timeline-head p {
    margin: 14px auto 0;
    color: rgba(238,252,255,.62);
    line-height: 2;
}

.rasa-timeline-frame {
    position: relative;
    width: min(1390px, calc(100vw - 92px));
    margin: auto;
}

.rasa-timeline-track {
    position: relative;
    height: 580px;
    border-radius: 38px;
    overflow-x: auto;
    overflow-y: hidden;
    background:
        linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.025)),
        radial-gradient(circle at 15% 20%, rgba(34,221,216,.08), transparent 28%),
        radial-gradient(circle at 80% 78%, rgba(255,197,107,.08), transparent 26%);
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 34px 110px rgba(0,0,0,.22);
    direction: ltr;
    cursor: grab;
}

.rasa-timeline-track.is-dragging {
    cursor: grabbing;
}

.rasa-timeline-track::-webkit-scrollbar {
    height: 10px;
}

.rasa-timeline-track::-webkit-scrollbar-track {
    background: rgba(255,255,255,.06);
    border-radius: 999px;
}

.rasa-timeline-track::-webkit-scrollbar-thumb {
    background: linear-gradient(90deg, var(--rasa-cyan), var(--rasa-blue));
    border-radius: 999px;
}

.rasa-timeline-inner {
    position: relative;
    height: 100%;
    min-width: 100%;
}

.rasa-timeline-line {
    position: absolute;
    top: 290px;
    left: 90px;
    height: 6px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--rasa-cyan), var(--rasa-blue), var(--rasa-gold));
    box-shadow: 0 0 32px rgba(34,221,216,.24);
}

.rasa-timeline-line::before {
    content: "";
    position: absolute;
    inset: -6px 0;
    border-radius: 999px;
    background: repeating-linear-gradient(90deg, transparent 0 30px, rgba(255,255,255,.25) 30px 31px, transparent 31px 60px);
    opacity: .35;
}

.rasa-timeline-item {
    position: absolute;
    width: 230px;
    height: 580px;
    top: 0;
    direction: rtl;
    overflow: visible;
}

.rasa-timeline-card {
    position: absolute;
    width: 230px;
    height: 220px;
    border: 0;
    cursor: pointer;
    padding: 0;
    text-align: right;
    color: #fff;
    border-radius: 24px;
    overflow: hidden;
    background:
        linear-gradient(135deg, rgba(255,255,255,.15), rgba(255,255,255,.045)),
        radial-gradient(circle at 0 0, color-mix(in srgb, var(--accent), transparent 46%), transparent 45%);
    border: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 18px 50px rgba(0,0,0,.25);
    transition: transform .25s ease, box-shadow .25s ease;
}

.rasa-timeline-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 28px 80px rgba(0,0,0,.34);
}

.rasa-timeline-item.is-top .rasa-timeline-card {
    top: 32px;
}

.rasa-timeline-item.is-bottom .rasa-timeline-card {
    bottom: 32px;
}

.rasa-card-date {
    display: block;
    padding: 8px 12px;
    color: color-mix(in srgb, var(--accent), white 25%);
    font-size: 11px;
    font-weight: 900;
    direction: ltr;
    unicode-bidi: plaintext;
}

.rasa-card-visual {
    height: 82px;
    display: grid;
    place-items: center;
    overflow: hidden;
    background: rgba(255,255,255,.06);
}

.rasa-card-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.rasa-card-visual b {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,.14);
    font-size: 24px;
}

.rasa-card-body {
    display: grid;
    gap: 4px;
    padding: 10px 13px 12px;
}

.rasa-card-body small {
    color: color-mix(in srgb, var(--accent), white 28%);
    font-size: 10.5px;
    font-weight: 900;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.rasa-card-body strong {
    font-size: 14.5px;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 45px;
}

.rasa-card-body em {
    font-style: normal;
    color: rgba(238,252,255,.68);
    font-size: 10.8px;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.rasa-timeline-dot {
    position: absolute;
    top: 283px;
    left: 50%;
    width: 16px;
    height: 16px;
    border-radius: 999px;
    transform: translateX(-50%);
    background: color-mix(in srgb, var(--accent), white 10%);
    border: 3px solid rgba(6,20,30,.96);
    box-shadow: 0 0 0 5px rgba(255,255,255,.07), 0 0 20px color-mix(in srgb, var(--accent), transparent 35%);
    z-index: 4;
}

.rasa-timeline-connector {
    position: absolute;
    left: 50%;
    width: 2px;
    transform: translateX(-50%);
    background: linear-gradient(180deg, color-mix(in srgb, var(--accent), white 15%), rgba(255,255,255,.42), transparent);
}

.rasa-timeline-item.is-top .rasa-timeline-connector {
    top: 252px;
    height: 36px;
}

.rasa-timeline-item.is-bottom .rasa-timeline-connector {
    top: 296px;
    height: 36px;
    background: linear-gradient(0deg, color-mix(in srgb, var(--accent), white 15%), rgba(255,255,255,.42), transparent);
}

.rasa-timeline-arrow {
    position: absolute;
    top: 50%;
    z-index: 6;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 16px;
    border: 0;
    cursor: pointer;
    color: #fff;
    background: rgba(255,255,255,.14);
    backdrop-filter: blur(14px);
    font-size: 32px;
}

.rasa-timeline-arrow.is-prev {
    right: 18px;
}

.rasa-timeline-arrow.is-next {
    left: 18px;
}

.rasa-activity-cursor-tip {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999999;
    pointer-events: none;
    min-width: 180px;
    max-width: 320px;
    padding: 10px 14px;
    border-radius: 16px;
    background: rgba(11, 22, 33, .72);
    backdrop-filter: blur(12px);
    color: #fff;
    box-shadow: 0 10px 34px rgba(0,0,0,.26), inset 0 0 0 1px rgba(255,255,255,.10);
    opacity: 0;
    transform: translate3d(14px, 14px, 0) scale(.96);
    transition: opacity .22s ease, transform .22s ease;
}

.rasa-activity-cursor-tip.is-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
}

.rasa-activity-cursor-tip strong {
    display: block;
    font-size: 13px;
    line-height: 1.8;
    margin-bottom: 4px;
}

.rasa-activity-cursor-tip span {
    display: block;
    font-size: 12px;
    color: rgba(255,255,255,.80);
}

.rasa-activity-modal {
    position: fixed;
    inset: 0;
    z-index: 9000;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: .25s ease;
}

.rasa-activity-modal.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.rasa-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.68);
    backdrop-filter: blur(14px);
}

.rasa-modal-box {
    position: absolute;
    inset: 5vh clamp(14px, 5vw, 70px);
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    overflow: hidden;
    border-radius: 38px;
    background: linear-gradient(135deg, rgba(10,42,52,.96), rgba(4,18,28,.96));
    border: 1px solid rgba(255,255,255,.14);
    box-shadow: 0 50px 160px rgba(0,0,0,.55);
}

.rasa-modal-close {
    position: absolute;
    top: 18px;
    left: 18px;
    z-index: 4;
    width: 44px;
    height: 44px;
    border: 0;
    border-radius: 16px;
    background: rgba(255,255,255,.14);
    color: #fff;
    cursor: pointer;
    font-size: 26px;
}

.rasa-modal-media {
    background: #020b10;
    display: grid;
    place-items: center;
    overflow: hidden;
}

.rasa-modal-media img,
.rasa-modal-media video,
.rasa-modal-media iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 0;
}

.rasa-modal-placeholder {
    width: 150px;
    height: 150px;
    border-radius: 42px;
    display: grid;
    place-items: center;
    font-size: 66px;
    background: rgba(255,255,255,.11);
}

.rasa-modal-content {
    padding: clamp(28px, 5vw, 58px);
    overflow-y: auto;
}

.rasa-modal-content > span {
    color: #9ff8f8;
    font-weight: 900;
}

.rasa-modal-content h2 {
    margin: 12px 0 0;
    font-size: clamp(28px, 4vw, 48px);
    line-height: 1.35;
}

.rasa-modal-content p,
.rasa-modal-description {
    color: rgba(238,252,255,.74);
    line-height: 2;
}

.rasa-modal-gallery {
    display: grid;
    gap: 12px;
    margin-top: 28px;
}

.rasa-modal-gallery button {
    text-align: right;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.07);
    color: #fff;
    border-radius: 18px;
    padding: 13px 15px;
    cursor: pointer;
}

.rasa-activity-empty {
    width: min(760px, calc(100% - 34px));
    margin: auto;
    text-align: center;
    padding: 54px;
    border-radius: 34px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.12);
}

.rasa-activity-empty a {
    color: #041c24;
    background: #bff8ef;
    text-decoration: none;
    padding: 12px 18px;
    border-radius: 999px;
    display: inline-flex;
    margin-top: 16px;
    font-weight: 900;
}

@media (max-width: 920px) {
    .rasa-activity-hero-grid,
    .rasa-modal-box {
        grid-template-columns: 1fr;
    }

    .rasa-activity-actions {
        display: none;
    }

    .rasa-timeline-frame {
        width: calc(100vw - 22px);
    }

    .rasa-timeline-track {
        height: 540px;
    }

    .rasa-modal-media {
        min-height: 320px;
    }
}

.rasa-timeline-section,
.rasa-timeline-section *,
.rasa-timeline-frame,
.rasa-timeline-frame *,
.rasa-timeline-track,
.rasa-timeline-track *,
.rasa-timeline-item,
.rasa-timeline-item *,
.rasa-timeline-card,
.rasa-timeline-card *,
.rasa-card-date,
.rasa-card-visual,
.rasa-card-body,
.rasa-card-body *,
.rasa-activity-cursor-tip,
.rasa-activity-cursor-tip * {
    font-family: var(--rasa-maintenance-font-family), IRANSansX, Vazirmatn, Tahoma, Arial, sans-serif !important;
}

.rasa-scroll-cue {
    position: absolute !important;
    right: 50% !important;
    left: auto !important;
    bottom: -112px !important;
    transform: translateX(50%) !important;
    z-index: 20 !important;

    width: max-content !important;
    min-width: max-content !important;
    max-width: none !important;

    display: grid !important;
    place-items: center !important;
    gap: 10px !important;

    padding: 0 !important;
    margin: 0 !important;

    background: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    border-radius: 0 !important;
}

.rasa-scroll-cue::before,
.rasa-scroll-cue::after {
    display: none !important;
    content: none !important;
}

.rasa-scroll-cue span {
    position: relative !important;
    display: block !important;

    width: 30px !important;
    height: 48px !important;
    border-radius: 999px !important;

    border: 2px solid rgba(191, 248, 239, .48) !important;
    background: rgba(255,255,255,.045) !important;

    box-shadow:
        0 0 0 7px rgba(34,221,216,.04),
        0 0 28px rgba(34,221,216,.18),
        inset 0 0 18px rgba(255,255,255,.055) !important;
}

.rasa-scroll-cue span::after {
    content: "" !important;
    position: absolute !important;

    top: 9px !important;
    right: 50% !important;
    left: auto !important;

    width: 6px !important;
    height: 6px !important;
    border-radius: 999px !important;

    transform: translateX(50%) !important;
    background: #d9fffb !important;

    box-shadow:
        0 0 12px rgba(191,248,239,.75),
        0 0 22px rgba(34,221,216,.36) !important;

    animation: rasaScrollCueDotCleanOnly 1.45s ease-in-out infinite !important;
}

.rasa-scroll-cue b {
    display: block !important;

    width: max-content !important;
    min-width: max-content !important;
    max-width: none !important;

    white-space: nowrap !important;
    text-align: center !important;

    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1.8 !important;
    letter-spacing: -.035em !important;

    color: rgba(238,252,255,.9) !important;
    text-shadow: 0 8px 24px rgba(0,0,0,.30) !important;

    animation: rasaScrollCueTextCleanOnly 1.9s ease-in-out infinite !important;
}

@keyframes rasaScrollCueDotCleanOnly {
    0% {
        transform: translateX(50%) translateY(0);
        opacity: 0;
    }

    28% {
        opacity: 1;
    }

    100% {
        transform: translateX(50%) translateY(22px);
        opacity: 0;
    }
}

@keyframes rasaScrollCueTextCleanOnly {
    0%, 100% {
        opacity: .76;
        transform: translateY(0);
    }

    50% {
        opacity: 1;
        transform: translateY(3px);
    }
}

@media (max-width: 991.98px) {
    .rasa-scroll-cue {
        bottom: -98px !important;
    }

    .rasa-scroll-cue b {
        font-size: 13.5px !important;
    }
}

body.rasa-activity-body,
body.rasa-activity-body * {
    font-family: var(--rasa-maintenance-font-family), IRANSansX, Vazirmatn, Tahoma, Arial, sans-serif !important;
}

.rasa-activity-topbar,
.rasa-activity-stage-card,
.rasa-activity-holo,
.rasa-activity-stats div,
.rasa-timeline-track,
.rasa-timeline-card,
.rasa-modal-box,
.rasa-loader-card {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.rasa-activity-hero {
    position: relative !important;
    isolation: isolate !important;
}

.rasa-activity-hero::before {
    content: "";
    position: absolute;
    inset: 70px -6% auto -6%;
    height: 72%;
    pointer-events: none;
    z-index: -1;
    background:
        radial-gradient(circle at 72% 35%, rgba(255,198,108,.15), transparent 25%),
        radial-gradient(circle at 27% 46%, rgba(36,221,215,.17), transparent 30%),
        radial-gradient(circle at 82% 78%, rgba(122,145,255,.11), transparent 28%);
    opacity: .86;
    animation: rasaPerfHeroGlow 18s ease-in-out infinite alternate;
}

.rasa-activity-hero::after {
    display: none !important;
}

@keyframes rasaPerfHeroGlow {
    from { opacity: .72; transform: translate3d(-.4%, -.4%, 0); }
    to { opacity: .9; transform: translate3d(.5%, .3%, 0); }
}

.rasa-activity-copy > span {
    border-radius: 999px 999px 999px 18px !important;
    background: linear-gradient(135deg, rgba(34,221,216,.22), rgba(255,255,255,.055)) !important;
    border: 1px solid rgba(166,255,248,.25) !important;
    box-shadow: 0 12px 32px rgba(34,221,216,.10) !important;
}

.rasa-activity-copy h1 {
    background:
        linear-gradient(120deg, #d8fff7 0%, #bff8ef 38%, #fff0ae 56%, #ffc56b 76%, #f7fff9 100%) !important;
    -webkit-background-clip: text !important;
    color: transparent !important;
    text-shadow: 0 18px 58px rgba(34,221,216,.08) !important;
}

.rasa-activity-copy h1::after {
    display: none !important;
}

.rasa-activity-stats div {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 24px 16px 24px 16px !important;
    background:
        linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.045)),
        radial-gradient(circle at 100% 0%, rgba(34,221,216,.12), transparent 42%) !important;
    border: 1px solid rgba(255,255,255,.15) !important;
    box-shadow: 0 16px 48px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.10) !important;
    transition: filter .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}

.rasa-activity-stats div:nth-child(1) {
    background:
        linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.045)),
        radial-gradient(circle at 100% 0%, rgba(120,144,255,.16), transparent 45%) !important;
}

.rasa-activity-stats div:nth-child(2) {
    background:
        linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.045)),
        radial-gradient(circle at 100% 0%, rgba(34,221,216,.16), transparent 45%) !important;
}

.rasa-activity-stats div:nth-child(3) {
    background:
        linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.045)),
        radial-gradient(circle at 100% 0%, rgba(255,197,107,.16), transparent 45%) !important;
}

.rasa-activity-stats div::after {
    content: "";
    position: absolute;
    inset-inline-start: 14px;
    inset-block-start: 12px;
    width: 34px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(191,248,239,.85), transparent);
    opacity: .65;
    pointer-events: none;
}

.rasa-activity-stats div:hover {
    filter: brightness(1.05) saturate(1.04) !important;
    border-color: rgba(191,248,239,.26) !important;
    box-shadow: 0 20px 62px rgba(0,0,0,.18), 0 0 24px rgba(34,221,216,.08) !important;
}

.rasa-activity-stage-card {
    border-radius: 46px 28px 46px 28px !important;
    background:
        linear-gradient(145deg, rgba(255,255,255,.145), rgba(255,255,255,.045)),
        radial-gradient(circle at 16% 18%, rgba(34,221,216,.14), transparent 36%),
        radial-gradient(circle at 88% 86%, rgba(255,197,107,.07), transparent 34%) !important;
    border: 1px solid rgba(255,255,255,.17) !important;
    box-shadow: 0 34px 105px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.12) !important;
}

.rasa-activity-stage-card::before {
    content: "";
    position: absolute;
    inset: -10px;
    pointer-events: none;
    border-radius: 52px 32px 52px 32px;
    background: radial-gradient(circle at 48% 52%, rgba(34,221,216,.12), transparent 58%);
    opacity: .38;
}

.rasa-activity-stage-card::after {
    content: "";
    position: absolute;
    inset: 22px;
    pointer-events: none;
    border-radius: 34px 22px 34px 22px;
    border: 1px solid rgba(191,248,239,.08);
    background: linear-gradient(135deg, rgba(255,255,255,.03), transparent 40%);
    opacity: .88;
}

.rasa-activity-holo {
    z-index: 2 !important;
    border-radius: 36px 22px 36px 22px !important;
    background:
        linear-gradient(145deg, rgba(5,31,42,.60), rgba(4,17,29,.42)),
        radial-gradient(circle at 50% 0%, rgba(34,221,216,.10), transparent 45%) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.04), 0 18px 54px rgba(0,0,0,.14) !important;
}

.rasa-activity-holo::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(180deg, transparent 0%, rgba(34,221,216,.08) 48%, transparent 100%);
    opacity: .46;
    animation: rasaPerfPanelScan 5.6s ease-in-out infinite;
}

.rasa-activity-holo::after {
    display: none !important;
}

@keyframes rasaPerfPanelScan {
    0%, 100% { transform: translateY(-36%); opacity: .12; }
    50% { transform: translateY(36%); opacity: .46; }
}

.rasa-activity-loader {
    background:
        linear-gradient(135deg, rgba(2,23,34,.96), rgba(4,35,52,.94) 36%, rgba(5,18,34,.96) 100%) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.rasa-loader-card::before {
    opacity: .45 !important;
    filter: none !important;
    animation-duration: 10s !important;
}

.rasa-loader-card::after {
    opacity: .45 !important;
    filter: none !important;
}

.rasa-loader-logo {
    animation-duration: 3.6s !important;
}

.rasa-timeline-frame::after,
.rasa-timeline-track::before {
    display: none !important;
}

.rasa-timeline-line {
    background-size: 180% 100% !important;
    animation: rasaPerfTimelineLine 7.5s linear infinite !important;
}

.rasa-timeline-line::after {
    content: "";
    pointer-events: none;
    position: absolute;
    top: -4px;
    bottom: -4px;
    width: 90px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.24), transparent);
    opacity: .52;
    animation: rasaPerfTimelineShine 6.2s ease-in-out infinite;
}

@keyframes rasaPerfTimelineLine {
    from { background-position: 0% 50%; }
    to { background-position: 180% 50%; }
}

@keyframes rasaPerfTimelineShine {
    0% { left: -110px; opacity: 0; }
    22% { opacity: .52; }
    100% { left: calc(100% + 110px); opacity: 0; }
}

.rasa-timeline-dot {
    animation: rasaPerfDotPulse 3.4s ease-in-out infinite !important;
}

@keyframes rasaPerfDotPulse {
    0%, 100% { filter: brightness(1); }
    50% { filter: brightness(1.10); }
}

.rasa-timeline-card::after {
    content: "";
    pointer-events: none;
    position: absolute;
    inset: 0;
    z-index: 6;
    background: linear-gradient(115deg, transparent 0%, transparent 42%, rgba(255,255,255,.18) 52%, transparent 64%, transparent 100%);
    opacity: 0;
    transform: translateX(38%);
}

.rasa-timeline-card:hover::after {
    opacity: .6;
    animation: rasaPerfCardShine .65s ease both;
}

@keyframes rasaPerfCardShine {
    from { transform: translateX(38%); }
    to { transform: translateX(-38%); }
}

.rasa-timeline-card:hover {
    filter: brightness(1.04) saturate(1.04) !important;
    box-shadow: 0 20px 58px rgba(0,0,0,.25), 0 0 24px color-mix(in srgb, var(--accent), transparent 76%) !important;
}

.rasa-activity-loader + .rasa-activity-page {
    opacity: 0;
    transform: translateY(16px);
    filter: none !important;
}

.rasa-activity-loader.is-hidden + .rasa-activity-page {
    animation: rasaPerfPageIn .75s ease both !important;
}

@keyframes rasaPerfPageIn {
    from { opacity: 0; transform: translateY(16px); }
    to { opacity: 1; transform: translateY(0); }
}

.rasa-activity-loader.is-hidden + .rasa-activity-page .rasa-activity-topbar,
.rasa-activity-loader.is-hidden + .rasa-activity-page .rasa-activity-copy,
.rasa-activity-loader.is-hidden + .rasa-activity-page .rasa-activity-stage-card,
.rasa-activity-loader.is-hidden + .rasa-activity-page .rasa-timeline-section,
.rasa-timeline-effects-ready .rasa-timeline-item,
.rasa-activity-page.rasa-hero-effects-ready .rasa-activity-copy,
.rasa-activity-page.rasa-hero-effects-ready .rasa-activity-stage-card,
.rasa-activity-page.rasa-hero-effects-ready .rasa-activity-stats div {
    animation: none !important;
}

.rasa-activity-modal.is-open .rasa-modal-box {
    animation: rasaPerfModalIn .25s ease both;
}

@keyframes rasaPerfModalIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
    .rasa-activity-hero::before,
    .rasa-activity-holo::before,
    .rasa-timeline-line,
    .rasa-timeline-line::after,
    .rasa-timeline-dot,
    .rasa-loader-card::before,
    .rasa-loader-card::after,
    .rasa-loader-logo,
    .rasa-activity-loader.is-hidden + .rasa-activity-page {
        animation: none !important;
    }
}

.rasa-activity-loader {
    background:
        radial-gradient(circle at 50% 42%, rgba(34,221,216,.20), transparent 30%),
        radial-gradient(circle at 72% 30%, rgba(120,144,255,.15), transparent 30%),
        radial-gradient(circle at 38% 66%, rgba(255,197,107,.10), transparent 28%),
        linear-gradient(135deg, rgba(2, 20, 31, .98), rgba(5, 39, 53, .97) 46%, rgba(3, 17, 30, .98)) !important;
    backdrop-filter: blur(10px) saturate(112%) !important;
    -webkit-backdrop-filter: blur(10px) saturate(112%) !important;
    overflow: hidden !important;
    isolation: isolate !important;
}

.rasa-loader-card {
    width: min(560px, calc(100vw - 34px)) !important;
    min-height: 360px !important;
    border-radius: 34px !important;
    background:
        linear-gradient(145deg, rgba(255,255,255,.075), rgba(255,255,255,.022)),
        radial-gradient(circle at 50% 0%, rgba(34,221,216,.13), transparent 46%) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    box-shadow:
        0 34px 120px rgba(0,0,0,.34),
        inset 0 1px 0 rgba(255,255,255,.10) !important;
    overflow: hidden !important;
    animation: rasaRestoredLoaderCardIn .9s cubic-bezier(.2,.8,.2,1) both !important;
}

.rasa-loader-card::before {
    content: "" !important;
    position: absolute !important;
    inset: -22% !important;
    z-index: 0 !important;
    background:
        radial-gradient(circle at 50% 38%, rgba(34,221,216,.30), transparent 28%),
        radial-gradient(circle at 62% 62%, rgba(120,144,255,.18), transparent 34%),
        radial-gradient(circle at 38% 66%, rgba(255,197,107,.15), transparent 28%) !important;
    filter: blur(4px) !important;
    opacity: .95 !important;
    animation: rasaRestoredLoaderGlowShift 4.8s ease-in-out infinite alternate !important;
}

.rasa-loader-card::after {
    content: "" !important;
    position: absolute !important;
    left: 10% !important;
    right: 10% !important;
    top: 29% !important;
    height: 2px !important;
    z-index: 1 !important;
    border-radius: 999px !important;
    background:
        linear-gradient(
            90deg,
            transparent 0%,
            rgba(61,234,225,.16) 18%,
            rgba(61,234,225,.92) 50%,
            rgba(61,234,225,.16) 82%,
            transparent 100%
        ) !important;
    box-shadow:
        0 0 16px rgba(61,234,225,.24),
        0 0 30px rgba(61,234,225,.12) !important;
    opacity: 1 !important;
    animation: rasaRestoredLoaderScanLine 2.65s cubic-bezier(.4,0,.2,1) infinite !important;
}

.rasa-loader-card > * {
    position: relative !important;
    z-index: 3 !important;
}

.rasa-loader-orbit {
    opacity: 0 !important;
    visibility: hidden !important;
    animation: none !important;
}

.rasa-loader-logo {
    animation:
        rasaRestoredLoaderLogoReveal .95s cubic-bezier(.2,.8,.2,1) both,
        rasaRestoredLoaderLogoFloat 2.8s ease-in-out .95s infinite !important;
    box-shadow:
        0 26px 92px rgba(34,221,216,.28),
        0 0 0 10px rgba(255,255,255,.045) !important;
}

.rasa-loader-logo img {
    animation: rasaRestoredLoaderLogoImageGlow 2.7s ease-in-out infinite !important;
}

.rasa-loader-card strong {
    animation: rasaRestoredLoaderTextReveal .78s ease .24s both !important;
}

.rasa-loader-card span {
    animation: rasaRestoredLoaderTextReveal .78s ease .42s both !important;
}

.rasa-activity-loader + .rasa-activity-page {
    opacity: 0;
    transform: translateY(18px) scale(.99);
}

.rasa-activity-loader.is-hidden + .rasa-activity-page {
    animation: rasaRestoredPageFadeIn .85s cubic-bezier(.2,.8,.2,1) .08s both !important;
}

@keyframes rasaRestoredLoaderCardIn {
    0% {
        opacity: 0;
        transform: translateY(24px) scale(.95);
        filter: blur(12px);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0);
    }
}

@keyframes rasaRestoredLoaderGlowShift {
    0% {
        transform: translate3d(-1.2%, -1%, 0) scale(.985);
        opacity: .76;
    }
    50% {
        transform: translate3d(1%, 1.2%, 0) scale(1.02);
        opacity: 1;
    }
    100% {
        transform: translate3d(1.4%, -.8%, 0) scale(1);
        opacity: .86;
    }
}

@keyframes rasaRestoredLoaderScanLine {
    0% {
        transform: translateY(-28px) scaleX(.74);
        opacity: 0;
    }
    16% {
        opacity: .95;
    }
    50% {
        transform: translateY(3px) scaleX(1);
        opacity: 1;
    }
    84% {
        opacity: .72;
    }
    100% {
        transform: translateY(36px) scaleX(.82);
        opacity: 0;
    }
}

@keyframes rasaRestoredLoaderLogoReveal {
    0% {
        opacity: 0;
        transform: translateY(18px) scale(.86);
        filter: blur(8px);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0);
    }
}

@keyframes rasaRestoredLoaderLogoFloat {
    0%, 100% {
        transform: translateY(0) scale(1);
    }
    50% {
        transform: translateY(-7px) scale(1.018);
    }
}

@keyframes rasaRestoredLoaderLogoImageGlow {
    0%, 100% {
        filter: saturate(1) brightness(1);
    }
    50% {
        filter: saturate(1.12) brightness(1.08);
    }
}

@keyframes rasaRestoredLoaderTextReveal {
    0% {
        opacity: 0;
        transform: translateY(12px);
        filter: blur(7px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }
}

@keyframes rasaRestoredPageFadeIn {
    0% {
        opacity: 0;
        transform: translateY(18px) scale(.99);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@media (prefers-reduced-motion: reduce) {
    .rasa-loader-card,
    .rasa-loader-card::before,
    .rasa-loader-card::after,
    .rasa-loader-logo,
    .rasa-loader-logo img,
    .rasa-loader-card strong,
    .rasa-loader-card span,
    .rasa-activity-loader.is-hidden + .rasa-activity-page {
        animation: none !important;
    }

    .rasa-activity-loader + .rasa-activity-page {
        opacity: 1 !important;
        transform: none !important;
    }
}

.rasa-activity-loader {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 32px !important;
    overflow: hidden !important;
}

.rasa-loader-card {
    width: min(540px, calc(100vw - 40px)) !important;
    min-height: 330px !important;
    padding: 40px 36px 34px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 14px !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

.rasa-loader-card > * {
    position: relative !important;
    z-index: 3 !important;
}

.rasa-loader-logo {
    margin: 0 auto 6px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 84px !important;
}

.rasa-loader-logo img {
    display: block !important;
    max-width: 88px !important;
    max-height: 88px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
}

.rasa-loader-card strong,
.rasa-loader-card .rasa-loader-title,
.rasa-loader-card h2,
.rasa-loader-card h3 {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

.rasa-loader-card span,
.rasa-loader-card .rasa-loader-subtitle,
.rasa-loader-card p,
.rasa-loader-card small {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.9 !important;
    text-align: center !important;
}

.rasa-loader-card .rasa-loader-subtitle,
.rasa-loader-card p,
.rasa-loader-card small,
.rasa-loader-card span {
    opacity: .92 !important;
}

.rasa-loader-card.is-no-logo {
    gap: 10px !important;
    min-height: 290px !important;
    padding-top: 34px !important;
    padding-bottom: 30px !important;
}

.rasa-loader-card.is-no-logo .rasa-loader-logo {
    display: none !important;
    min-height: 0 !important;
    margin: 0 !important;
}

@media (max-width: 768px) {
    .rasa-loader-card {
        width: min(92vw, 460px) !important;
        min-height: 280px !important;
        padding: 30px 22px 26px !important;
        gap: 12px !important;
    }

    .rasa-loader-logo img {
        max-width: 76px !important;
        max-height: 76px !important;
    }

    .rasa-loader-card.is-no-logo {
        min-height: 250px !important;
    }
}

.rasa-activity-loader {
    background:
        radial-gradient(circle at 22% 34%, rgba(30, 214, 202, .18), transparent 30%),
        radial-gradient(circle at 76% 28%, rgba(105, 130, 255, .16), transparent 32%),
        radial-gradient(circle at 58% 78%, rgba(255, 198, 112, .10), transparent 30%),
        linear-gradient(135deg, rgba(2, 18, 29, .985), rgba(4, 37, 51, .972) 48%, rgba(3, 18, 31, .985)) !important;
    overflow: hidden !important;
}

.rasa-loader-card {
    width: min(590px, calc(100vw - 42px)) !important;
    min-height: 385px !important;
    padding: 48px 42px 78px !important;
    border-radius: 38px 24px 38px 24px !important;
    border: 1px solid rgba(205, 250, 247, .16) !important;
    background:
        linear-gradient(145deg, rgba(255,255,255,.085), rgba(255,255,255,.026)),
        radial-gradient(circle at 50% 8%, rgba(34,221,216,.16), transparent 45%),
        radial-gradient(circle at 18% 82%, rgba(255,197,107,.10), transparent 36%) !important;
    box-shadow:
        0 38px 130px rgba(0,0,0,.36),
        inset 0 1px 0 rgba(255,255,255,.12),
        0 0 70px rgba(34,221,216,.075) !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 14px !important;
}

.rasa-loader-card::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    opacity: .86 !important;
    filter: none !important;
    background:
        linear-gradient(115deg, transparent 0%, transparent 42%, rgba(191,248,239,.13) 50%, transparent 58%, transparent 100%),
        radial-gradient(circle at 22% 68%, rgba(34,221,216,.28) 0 3px, transparent 4px),
        radial-gradient(circle at 42% 42%, rgba(255,197,107,.24) 0 3px, transparent 4px),
        radial-gradient(circle at 68% 58%, rgba(120,144,255,.24) 0 3px, transparent 4px),
        radial-gradient(circle at 82% 28%, rgba(34,221,216,.22) 0 3px, transparent 4px),
        linear-gradient(90deg, transparent 0 12%, rgba(34,221,216,.20) 12% 12.4%, transparent 12.4% 100%),
        linear-gradient(135deg, transparent 0 48%, rgba(255,255,255,.055) 48% 48.3%, transparent 48.3% 100%);
    animation: rasaTourismLoaderMapGlow 4.8s ease-in-out infinite alternate !important;
}

.rasa-loader-card::after {
    content: "سفر  •  تور  •  جشنواره  •  روایت مقصد" !important;
    position: absolute !important;
    right: 50% !important;
    bottom: 26px !important;
    transform: translateX(50%) !important;
    z-index: 4 !important;
    padding: 9px 18px !important;
    border-radius: 999px !important;
    white-space: nowrap !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    color: rgba(238,252,255,.86) !important;
    background:
        linear-gradient(135deg, rgba(34,221,216,.18), rgba(255,255,255,.045)) !important;
    border: 1px solid rgba(191,248,239,.18) !important;
    box-shadow:
        0 14px 38px rgba(0,0,0,.22),
        inset 0 1px 0 rgba(255,255,255,.10) !important;
    animation: rasaTourismLoaderChipFloat 2.8s ease-in-out infinite !important;
}

.rasa-loader-card > * {
    position: relative !important;
    z-index: 3 !important;
}

.rasa-loader-orbit {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    animation: none !important;
}

.rasa-loader-logo {
    width: 106px !important;
    height: 106px !important;
    min-height: 106px !important;
    margin: 0 auto 8px !important;
    border-radius: 32px !important;
    background:
        linear-gradient(135deg, rgba(255,255,255,.28), rgba(255,255,255,.09)) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    box-shadow:
        0 28px 95px rgba(34,221,216,.24),
        0 0 0 10px rgba(255,255,255,.045),
        inset 0 1px 0 rgba(255,255,255,.18) !important;
    animation:
        rasaTourismLoaderLogoIn .85s cubic-bezier(.2,.8,.2,1) both,
        rasaTourismLoaderLogoFloat 3s ease-in-out .85s infinite !important;
}

.rasa-loader-logo img {
    max-width: 92px !important;
    max-height: 92px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    animation: rasaTourismLoaderLogoImage .3s ease both !important;
}

.rasa-loader-card.is-no-logo {
    min-height: 335px !important;
    padding-top: 46px !important;
    padding-bottom: 76px !important;
}

.rasa-loader-card.is-no-logo .rasa-loader-logo {
    display: none !important;
    min-height: 0 !important;
    margin: 0 !important;
}

.rasa-loader-card strong {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.35 !important;
    text-align: center !important;
    text-shadow:
        0 16px 46px rgba(0,0,0,.26),
        0 0 26px rgba(34,221,216,.10) !important;
    animation: rasaTourismLoaderTitleIn .75s ease .18s both !important;
}

.rasa-loader-card span {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.9 !important;
    text-align: center !important;
    color: rgba(238,252,255,.78) !important;
    text-shadow: 0 10px 30px rgba(0,0,0,.22) !important;
    animation: rasaTourismLoaderTextIn .75s ease .34s both !important;
}

.rasa-loader-logo::before {
    content: "" !important;
    position: absolute !important;
    right: 50% !important;
    top: -34px !important;
    width: 190px !important;
    height: 2px !important;
    transform: translateX(50%) !important;
    border-radius: 999px !important;
    background:
        linear-gradient(90deg, transparent, rgba(34,221,216,.78), rgba(255,197,107,.42), transparent) !important;
    box-shadow: 0 0 18px rgba(34,221,216,.28) !important;
    animation: rasaTourismLoaderRouteLine 2.7s ease-in-out infinite !important;
}

@keyframes rasaTourismLoaderMapGlow {
    0% {
        opacity: .62;
        background-position: 0 0, 0 0, 0 0, 0 0, 0 0, 0 0, 0 0;
    }
    100% {
        opacity: .9;
        background-position: 34px 0, 0 0, 0 0, 0 0, 0 0, 14px 0, 20px 0;
    }
}

@keyframes rasaTourismLoaderChipFloat {
    0%, 100% {
        transform: translateX(50%) translateY(0);
        opacity: .78;
    }
    50% {
        transform: translateX(50%) translateY(-4px);
        opacity: 1;
    }
}

@keyframes rasaTourismLoaderLogoIn {
    0% {
        opacity: 0;
        transform: translateY(16px) scale(.88);
        filter: blur(8px);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
        filter: blur(0);
    }
}

@keyframes rasaTourismLoaderLogoFloat {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-7px);
    }
}

@keyframes rasaTourismLoaderLogoImage {
    from {
        opacity: 0;
        transform: scale(.92);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes rasaTourismLoaderTitleIn {
    from {
        opacity: 0;
        transform: translateY(12px);
        filter: blur(6px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }
}

@keyframes rasaTourismLoaderTextIn {
    from {
        opacity: 0;
        transform: translateY(10px);
        filter: blur(5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
    }
}

@keyframes rasaTourismLoaderRouteLine {
    0%, 100% {
        opacity: .35;
        width: 150px;
    }
    50% {
        opacity: 1;
        width: 210px;
    }
}

@media (max-width: 768px) {
    .rasa-loader-card {
        width: min(92vw, 460px) !important;
        min-height: 330px !important;
        padding: 38px 24px 72px !important;
    }

    .rasa-loader-card::after {
        font-size: 11.5px !important;
        padding: 8px 13px !important;
        bottom: 22px !important;
    }

    .rasa-loader-logo {
        width: 88px !important;
        height: 88px !important;
        min-height: 88px !important;
    }

    .rasa-loader-logo img {
        max-width: 76px !important;
        max-height: 76px !important;
    }

    .rasa-loader-logo::before {
        width: 140px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rasa-loader-card::before,
    .rasa-loader-card::after,
    .rasa-loader-logo,
    .rasa-loader-logo::before,
    .rasa-loader-card strong,
    .rasa-loader-card span {
        animation: none !important;
    }
}

.rasa-loader-logo::before,
.rasa-loader-logo::after {
    content: none !important;
    display: none !important;
}

.rasa-loader-card::after {
    content: none !important;
    display: none !important;
}

.rasa-loader-logo {
    position: relative !important;
    margin: 0 auto 10px !important;
    overflow: hidden !important;
    z-index: 5 !important;
}

.rasa-loader-logo img {
    display: block !important;
    position: relative !important;
    z-index: 6 !important;
    object-fit: contain !important;
}

.rasa-loader-card.is-no-logo .rasa-loader-logo {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.rasa-loader-card.is-no-logo {
    justify-content: center !important;
    gap: 12px !important;
}

.rasa-activity-loader[data-rasa-activity-loader] {
    position: fixed !important;
    overflow: hidden !important;
    isolation: isolate !important;
    background:
        radial-gradient(circle at 18% 20%, rgba(20, 184, 166, .32), transparent 28%),
        radial-gradient(circle at 82% 18%, rgba(59, 130, 246, .34), transparent 30%),
        radial-gradient(circle at 72% 82%, rgba(255, 197, 107, .22), transparent 27%),
        linear-gradient(135deg, #03131d 0%, #062b38 45%, #071b31 100%) !important;
    animation: rasaLivelyBaseShift 7s ease-in-out infinite alternate !important;
}

.rasa-loader-live-bg {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
}

.rasa-activity-loader[data-rasa-activity-loader] > *:not(.rasa-loader-live-bg) {
    position: relative !important;
    z-index: 5 !important;
}

.rasa-loader-live-blob {
    position: absolute !important;
    border-radius: 999px !important;
    filter: blur(28px) saturate(1.25) !important;
    mix-blend-mode: screen !important;
    opacity: .9 !important;
    will-change: transform !important;
}

.rasa-loader-live-blob.b1 {
    width: 34vw;
    height: 34vw;
    min-width: 360px;
    min-height: 360px;
    left: -8%;
    top: 8%;
    background: radial-gradient(circle, rgba(20,184,166,.72), rgba(20,184,166,.22) 42%, transparent 70%);
    animation: rasaBlobOne 8s ease-in-out infinite alternate;
}

.rasa-loader-live-blob.b2 {
    width: 36vw;
    height: 36vw;
    min-width: 390px;
    min-height: 390px;
    right: -9%;
    top: 4%;
    background: radial-gradient(circle, rgba(59,130,246,.70), rgba(59,130,246,.22) 44%, transparent 72%);
    animation: rasaBlobTwo 9s ease-in-out infinite alternate;
}

.rasa-loader-live-blob.b3 {
    width: 30vw;
    height: 30vw;
    min-width: 310px;
    min-height: 310px;
    left: 42%;
    bottom: -10%;
    background: radial-gradient(circle, rgba(255,197,107,.50), rgba(255,197,107,.16) 42%, transparent 72%);
    animation: rasaBlobThree 7.5s ease-in-out infinite alternate;
}

.rasa-loader-live-blob.b4 {
    width: 26vw;
    height: 26vw;
    min-width: 270px;
    min-height: 270px;
    left: 24%;
    top: 48%;
    background: radial-gradient(circle, rgba(34,211,238,.52), rgba(34,211,238,.15) 45%, transparent 72%);
    animation: rasaBlobFour 8.5s ease-in-out infinite alternate;
}

.rasa-loader-live-sweep {
    position: absolute !important;
    inset: -22% !important;
    z-index: 1 !important;
    background:
        linear-gradient(
            115deg,
            transparent 0%,
            transparent 24%,
            rgba(45,212,191,.18) 39%,
            rgba(96,165,250,.24) 51%,
            rgba(255,197,107,.15) 63%,
            transparent 78%,
            transparent 100%
        ) !important;
    filter: blur(16px) !important;
    mix-blend-mode: screen !important;
    animation: rasaLivelySweep 5.2s ease-in-out infinite !important;
}

.rasa-loader-live-route {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    opacity: .36 !important;
    background-image:
        radial-gradient(circle, rgba(255,255,255,.52) 0 1.4px, transparent 2px),
        radial-gradient(circle, rgba(255,197,107,.55) 0 1.6px, transparent 2.2px);
    background-size: 92px 92px, 156px 156px;
    background-position: 0 0, 48px 36px;
    mask-image:
        linear-gradient(115deg, transparent 0%, black 26%, black 70%, transparent 100%);
    animation: rasaLivelyRoute 12s linear infinite !important;
}

.rasa-loader-live-lines {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    opacity: .18 !important;
    background:
        linear-gradient(90deg, rgba(255,255,255,.13) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255,255,255,.09) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: radial-gradient(circle at 50% 50%, black 0%, transparent 76%);
    animation: rasaLivelyLines 18s linear infinite !important;
}

.rasa-loader-live-spark {
    position: absolute !important;
    z-index: 3 !important;
    width: 6px !important;
    height: 6px !important;
    border-radius: 999px !important;
    background: rgba(218,255,251,.95) !important;
    box-shadow:
        0 0 12px rgba(45,212,191,.95),
        0 0 26px rgba(96,165,250,.45) !important;
    opacity: .75 !important;
    animation: rasaSparkFloat 5.5s ease-in-out infinite !important;
}

.rasa-loader-live-spark.s1 { left: 18%; top: 30%; animation-delay: 0s !important; }
.rasa-loader-live-spark.s2 { left: 30%; top: 72%; animation-delay: .7s !important; }
.rasa-loader-live-spark.s3 { left: 68%; top: 28%; animation-delay: 1.2s !important; }
.rasa-loader-live-spark.s4 { left: 80%; top: 66%; animation-delay: 1.8s !important; }
.rasa-loader-live-spark.s5 { left: 50%; top: 18%; animation-delay: 2.2s !important; }
.rasa-loader-live-spark.s6 { left: 58%; top: 82%; animation-delay: 2.8s !important; }

.rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-card {
    position: relative !important;
    z-index: 5 !important;
    box-shadow:
        0 34px 120px rgba(0,0,0,.34),
        0 0 95px rgba(45,212,191,.11),
        inset 0 1px 0 rgba(255,255,255,.11) !important;
}

@keyframes rasaLivelyBaseShift {
    0% {
        background-position: 0% 30%, 100% 20%, 70% 100%, 0% 0%;
    }
    100% {
        background-position: 22% 48%, 78% 38%, 48% 72%, 0% 0%;
    }
}

@keyframes rasaBlobOne {
    0% { transform: translate3d(0,0,0) scale(1); }
    100% { transform: translate3d(90px,54px,0) scale(1.14); }
}

@keyframes rasaBlobTwo {
    0% { transform: translate3d(0,0,0) scale(1); }
    100% { transform: translate3d(-92px,70px,0) scale(1.12); }
}

@keyframes rasaBlobThree {
    0% { transform: translate3d(0,0,0) scale(1); }
    100% { transform: translate3d(-40px,-82px,0) scale(1.18); }
}

@keyframes rasaBlobFour {
    0% { transform: translate3d(0,0,0) scale(1); }
    100% { transform: translate3d(70px,-42px,0) scale(1.10); }
}

@keyframes rasaLivelySweep {
    0% {
        transform: translateX(-42%) translateY(-5%) rotate(0deg);
        opacity: .22;
    }
    35% {
        opacity: .95;
    }
    65% {
        opacity: .78;
    }
    100% {
        transform: translateX(42%) translateY(4%) rotate(-1deg);
        opacity: .28;
    }
}

@keyframes rasaLivelyRoute {
    0% { background-position: 0 0, 48px 36px; }
    100% { background-position: 184px 92px, 360px 192px; }
}

@keyframes rasaLivelyLines {
    0% { background-position: 0 0, 0 0; }
    100% { background-position: 72px 72px, 72px 72px; }
}

@keyframes rasaSparkFloat {
    0%, 100% {
        transform: translateY(0) scale(.82);
        opacity: .35;
    }
    45% {
        transform: translateY(-22px) scale(1.25);
        opacity: 1;
    }
    70% {
        transform: translateY(8px) scale(1);
        opacity: .70;
    }
}

@media (max-width: 768px) {
    .rasa-loader-live-blob {
        filter: blur(24px) saturate(1.18) !important;
    }

    .rasa-loader-live-spark {
        width: 5px !important;
        height: 5px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rasa-activity-loader[data-rasa-activity-loader],
    .rasa-loader-live-blob,
    .rasa-loader-live-sweep,
    .rasa-loader-live-route,
    .rasa-loader-live-lines,
    .rasa-loader-live-spark {
        animation: none !important;
    }
}

.rasa-activity-page {
    position: relative !important;
    isolation: isolate !important;
    background:
        radial-gradient(circle at 18% 20%, rgba(20, 184, 166, .26), transparent 28%),
        radial-gradient(circle at 82% 18%, rgba(59, 130, 246, .28), transparent 30%),
        radial-gradient(circle at 72% 82%, rgba(255, 197, 107, .16), transparent 27%),
        linear-gradient(135deg, #03131d 0%, #062b38 45%, #071b31 100%) !important;
    background-size:
        130% 130%,
        140% 140%,
        135% 135%,
        100% 100% !important;
    animation: rasaMainBgBaseShift 9s ease-in-out infinite alternate !important;
}

.rasa-main-page-live-bg {
    position: fixed !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
}

.rasa-activity-page > *:not(.rasa-main-page-live-bg) {
    position: relative !important;
    z-index: 2 !important;
}

.rasa-main-page-live-blob {
    position: absolute !important;
    border-radius: 999px !important;
    filter: blur(32px) saturate(1.22) !important;
    mix-blend-mode: screen !important;
    opacity: .72 !important;
    will-change: transform !important;
}

.rasa-main-page-live-blob.b1 {
    width: 36vw;
    height: 36vw;
    min-width: 360px;
    min-height: 360px;
    left: -9%;
    top: 6%;
    background: radial-gradient(circle, rgba(20,184,166,.62), rgba(20,184,166,.18) 42%, transparent 70%);
    animation: rasaMainBlobOne 10s ease-in-out infinite alternate;
}

.rasa-main-page-live-blob.b2 {
    width: 38vw;
    height: 38vw;
    min-width: 390px;
    min-height: 390px;
    right: -10%;
    top: 8%;
    background: radial-gradient(circle, rgba(59,130,246,.60), rgba(59,130,246,.18) 44%, transparent 72%);
    animation: rasaMainBlobTwo 11s ease-in-out infinite alternate;
}

.rasa-main-page-live-blob.b3 {
    width: 31vw;
    height: 31vw;
    min-width: 310px;
    min-height: 310px;
    left: 42%;
    bottom: -10%;
    background: radial-gradient(circle, rgba(255,197,107,.38), rgba(255,197,107,.12) 42%, transparent 72%);
    animation: rasaMainBlobThree 9.5s ease-in-out infinite alternate;
}

.rasa-main-page-live-blob.b4 {
    width: 28vw;
    height: 28vw;
    min-width: 270px;
    min-height: 270px;
    left: 18%;
    top: 54%;
    background: radial-gradient(circle, rgba(34,211,238,.42), rgba(34,211,238,.12) 45%, transparent 72%);
    animation: rasaMainBlobFour 10.5s ease-in-out infinite alternate;
}

.rasa-main-page-live-sweep {
    position: absolute !important;
    inset: -24% !important;
    z-index: 1 !important;
    background:
        linear-gradient(
            115deg,
            transparent 0%,
            transparent 24%,
            rgba(45,212,191,.12) 39%,
            rgba(96,165,250,.16) 51%,
            rgba(255,197,107,.10) 63%,
            transparent 78%,
            transparent 100%
        ) !important;
    filter: blur(18px) !important;
    mix-blend-mode: screen !important;
    animation: rasaMainSweep 7s ease-in-out infinite !important;
}

.rasa-main-page-live-route {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    opacity: .22 !important;
    background-image:
        radial-gradient(circle, rgba(255,255,255,.50) 0 1.4px, transparent 2px),
        radial-gradient(circle, rgba(255,197,107,.48) 0 1.6px, transparent 2.2px);
    background-size: 96px 96px, 164px 164px;
    background-position: 0 0, 48px 36px;
    mask-image:
        linear-gradient(115deg, transparent 0%, black 24%, black 72%, transparent 100%);
    animation: rasaMainRoute 16s linear infinite !important;
}

.rasa-main-page-live-lines {
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    opacity: .12 !important;
    background:
        linear-gradient(90deg, rgba(255,255,255,.13) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255,255,255,.09) 1px, transparent 1px);
    background-size: 76px 76px;
    mask-image: radial-gradient(circle at 50% 50%, black 0%, transparent 78%);
    animation: rasaMainLines 22s linear infinite !important;
}

.rasa-main-page-live-spark {
    position: absolute !important;
    z-index: 2 !important;
    width: 5px !important;
    height: 5px !important;
    border-radius: 999px !important;
    background: rgba(218,255,251,.90) !important;
    box-shadow:
        0 0 12px rgba(45,212,191,.82),
        0 0 24px rgba(96,165,250,.38) !important;
    opacity: .58 !important;
    animation: rasaMainSparkFloat 6.5s ease-in-out infinite !important;
}

.rasa-main-page-live-spark.s1 { left: 14%; top: 24%; animation-delay: 0s !important; }
.rasa-main-page-live-spark.s2 { left: 28%; top: 76%; animation-delay: .7s !important; }
.rasa-main-page-live-spark.s3 { left: 66%; top: 22%; animation-delay: 1.2s !important; }
.rasa-main-page-live-spark.s4 { left: 84%; top: 62%; animation-delay: 1.8s !important; }
.rasa-main-page-live-spark.s5 { left: 48%; top: 14%; animation-delay: 2.2s !important; }
.rasa-main-page-live-spark.s6 { left: 58%; top: 86%; animation-delay: 2.8s !important; }

@keyframes rasaMainBgBaseShift {
    0% {
        background-position: 0% 30%, 100% 20%, 70% 100%, 0% 0%;
    }
    100% {
        background-position: 22% 48%, 78% 38%, 48% 72%, 0% 0%;
    }
}

@keyframes rasaMainBlobOne {
    0% { transform: translate3d(0,0,0) scale(1); }
    100% { transform: translate3d(86px,50px,0) scale(1.12); }
}

@keyframes rasaMainBlobTwo {
    0% { transform: translate3d(0,0,0) scale(1); }
    100% { transform: translate3d(-86px,66px,0) scale(1.10); }
}

@keyframes rasaMainBlobThree {
    0% { transform: translate3d(0,0,0) scale(1); }
    100% { transform: translate3d(-38px,-78px,0) scale(1.15); }
}

@keyframes rasaMainBlobFour {
    0% { transform: translate3d(0,0,0) scale(1); }
    100% { transform: translate3d(66px,-38px,0) scale(1.08); }
}

@keyframes rasaMainSweep {
    0% {
        transform: translateX(-42%) translateY(-5%) rotate(0deg);
        opacity: .16;
    }
    38% {
        opacity: .78;
    }
    66% {
        opacity: .58;
    }
    100% {
        transform: translateX(42%) translateY(4%) rotate(-1deg);
        opacity: .20;
    }
}

@keyframes rasaMainRoute {
    0% { background-position: 0 0, 48px 36px; }
    100% { background-position: 192px 96px, 376px 200px; }
}

@keyframes rasaMainLines {
    0% { background-position: 0 0, 0 0; }
    100% { background-position: 76px 76px, 76px 76px; }
}

@keyframes rasaMainSparkFloat {
    0%, 100% {
        transform: translateY(0) scale(.82);
        opacity: .30;
    }
    45% {
        transform: translateY(-24px) scale(1.22);
        opacity: .92;
    }
    70% {
        transform: translateY(8px) scale(1);
        opacity: .56;
    }
}

@media (max-width: 768px) {
    .rasa-main-page-live-blob {
        filter: blur(26px) saturate(1.14) !important;
    }

    .rasa-main-page-live-spark {
        width: 4px !important;
        height: 4px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .rasa-activity-page,
    .rasa-main-page-live-blob,
    .rasa-main-page-live-sweep,
    .rasa-main-page-live-route,
    .rasa-main-page-live-lines,
    .rasa-main-page-live-spark {
        animation: none !important;
    }
}

html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

.rasa-activity-page,
.rasa-activity-loader[data-rasa-activity-loader] {
    max-width: 100%;
    overflow-x: clip;
}

@media (max-width: 1024px) {
    .rasa-activity-loader[data-rasa-activity-loader] {
        min-height: 100vh !important;
        min-height: 100svh !important;
        min-height: 100dvh !important;
        padding:
            max(18px, env(safe-area-inset-top))
            18px
            max(18px, env(safe-area-inset-bottom)) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    .rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-card {
        width: min(92vw, 420px) !important;
        max-width: 92vw !important;
        min-height: auto !important;
        padding: clamp(22px, 6vw, 34px) clamp(18px, 5vw, 28px) !important;
        border-radius: clamp(22px, 6vw, 34px) !important;
        margin: 0 auto !important;
        transform: none;
    }

    .rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-card strong {
        font-size: clamp(22px, 6vw, 34px) !important;
        line-height: 1.45 !important;
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
        text-align: center !important;
    }

    .rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-card span {
        font-size: clamp(13px, 3.6vw, 16px) !important;
        line-height: 2 !important;
        max-width: 100% !important;
        overflow-wrap: anywhere !important;
        text-align: center !important;
    }

    .rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-logo img {
        max-width: min(34vw, 120px) !important;
        height: auto !important;
    }

    .rasa-loader-live-blob,
    .rasa-main-page-live-blob {
        filter: blur(24px) saturate(1.14) !important;
        opacity: .62 !important;
    }

    .rasa-loader-live-route,
    .rasa-loader-live-lines,
    .rasa-main-page-live-route,
    .rasa-main-page-live-lines {
        opacity: .14 !important;
    }

    .rasa-loader-live-spark,
    .rasa-main-page-live-spark {
        width: 4px !important;
        height: 4px !important;
    }

    .rasa-activity-page {
        min-height: 100svh !important;
        padding-inline: 0 !important;
    }

    .rasa-activity-topbar {
        width: min(100% - 24px, 1120px) !important;
        margin-inline: auto !important;
        gap: 12px !important;
        flex-wrap: wrap !important;
    }

    .rasa-activity-brand {
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .rasa-activity-hero {
        width: min(100% - 24px, 1120px) !important;
        margin-inline: auto !important;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 22px !important;
        padding-top: clamp(24px, 7vw, 54px) !important;
        padding-bottom: clamp(20px, 6vw, 44px) !important;
    }

    .rasa-activity-copy {
        max-width: 100% !important;
        text-align: center !important;
        margin-inline: auto !important;
    }

    .rasa-activity-copy h1,
    .rasa-activity-copy h2 {
        font-size: clamp(28px, 8vw, 48px) !important;
        line-height: 1.45 !important;
        letter-spacing: -0.02em !important;
        overflow-wrap: anywhere !important;
    }

    .rasa-activity-copy p {
        font-size: clamp(14px, 3.8vw, 17px) !important;
        line-height: 2.05 !important;
        max-width: 100% !important;
        margin-inline: auto !important;
    }

    .rasa-activity-stats {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 520px !important;
        margin-inline: auto !important;
    }

    .rasa-activity-stats > * {
        min-width: 0 !important;
    }

    .rasa-activity-stage-card,
    .rasa-activity-holo {
        width: 100% !important;
        max-width: 560px !important;
        margin-inline: auto !important;
        min-width: 0 !important;
    }

    .rasa-timeline-section,
    .rasa-activity-timeline-section {
        width: min(100% - 24px, 1120px) !important;
        margin-inline: auto !important;
        padding-inline: 0 !important;
        overflow: visible !important;
    }

    .rasa-timeline-frame,
    .rasa-activity-track-wrap {
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
        border-radius: clamp(20px, 5vw, 34px) !important;
    }

    .rasa-timeline-track,
    .rasa-activity-track {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        scroll-snap-type: x proximity !important;
        overscroll-behavior-x: contain !important;
        touch-action: pan-x pan-y !important;
    }

    .rasa-timeline-track::-webkit-scrollbar,
    .rasa-activity-track::-webkit-scrollbar {
        height: 6px !important;
    }

    .rasa-timeline-track::-webkit-scrollbar-thumb,
    .rasa-activity-track::-webkit-scrollbar-thumb {
        border-radius: 999px !important;
    }

    .rasa-timeline-card,
    .rasa-activity-card {
        scroll-snap-align: center !important;
    }

    .rasa-card-hit,
    .rasa-timeline-card {
        max-width: min(78vw, 340px) !important;
    }
}

@media (max-width: 768px) {
    .rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-card {
        width: min(90vw, 360px) !important;
        max-width: 90vw !important;
    }

    .rasa-activity-topbar {
        justify-content: center !important;
        text-align: center !important;
    }

    .rasa-activity-brand {
        justify-content: center !important;
        text-align: center !important;
    }

    .rasa-activity-hero {
        width: min(100% - 20px, 720px) !important;
        gap: 18px !important;
    }

    .rasa-activity-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .rasa-timeline-section,
    .rasa-activity-timeline-section {
        width: min(100% - 16px, 720px) !important;
    }

    .rasa-timeline-frame,
    .rasa-activity-track-wrap {
        border-radius: 22px !important;
    }

    .rasa-activity-track,
    .rasa-timeline-track {
        min-height: clamp(420px, 92vw, 620px) !important;
        padding-inline: 10px !important;
    }

    .rasa-activity-cards,
    .rasa-timeline-cards {
        gap: clamp(14px, 4vw, 24px) !important;
    }

    .rasa-activity-card,
    .rasa-timeline-item {
        width: clamp(220px, 72vw, 310px) !important;
        min-width: clamp(220px, 72vw, 310px) !important;
    }

    .rasa-card-hit {
        width: 100% !important;
        max-width: 100% !important;
    }

    .rasa-card-media,
    .rasa-timeline-card-visual {
        max-height: 190px !important;
        overflow: hidden !important;
    }

    .rasa-card-copy strong,
    .rasa-timeline-card strong {
        font-size: clamp(15px, 4.2vw, 18px) !important;
        line-height: 1.75 !important;
    }

    .rasa-card-copy em,
    .rasa-timeline-card em,
    .rasa-card-copy p,
    .rasa-timeline-card p {
        font-size: clamp(12px, 3.4vw, 14px) !important;
        line-height: 1.9 !important;
    }
}

@media (max-width: 480px) {
    .rasa-activity-loader[data-rasa-activity-loader] {
        padding-inline: 12px !important;
    }

    .rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-card {
        width: min(92vw, 330px) !important;
        max-width: 92vw !important;
        padding: 24px 18px !important;
    }

    .rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-card strong {
        font-size: clamp(22px, 7vw, 28px) !important;
    }

    .rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-card span {
        font-size: 13px !important;
        line-height: 2 !important;
    }

    .rasa-activity-hero {
        width: min(100% - 14px, 440px) !important;
        padding-top: 22px !important;
    }

    .rasa-activity-copy h1,
    .rasa-activity-copy h2 {
        font-size: clamp(25px, 9vw, 34px) !important;
    }

    .rasa-activity-copy p {
        font-size: 13.5px !important;
    }

    .rasa-activity-stats {
        grid-template-columns: 1fr !important;
        max-width: 320px !important;
    }

    .rasa-activity-stage-card,
    .rasa-activity-holo {
        max-width: 100% !important;
    }

    .rasa-timeline-section,
    .rasa-activity-timeline-section {
        width: min(100% - 10px, 430px) !important;
    }

    .rasa-activity-track,
    .rasa-timeline-track {
        min-height: 500px !important;
        padding-inline: 8px !important;
    }

    .rasa-activity-card,
    .rasa-timeline-item {
        width: clamp(210px, 78vw, 290px) !important;
        min-width: clamp(210px, 78vw, 290px) !important;
    }

    .rasa-card-media,
    .rasa-timeline-card-visual {
        max-height: 170px !important;
    }

    .rasa-loader-live-blob,
    .rasa-main-page-live-blob {
        min-width: 250px !important;
        min-height: 250px !important;
    }
}

@media (max-height: 620px) and (max-width: 900px) {
    .rasa-activity-loader[data-rasa-activity-loader] {
        align-items: center !important;
        padding-block: 10px !important;
    }

    .rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-card {
        padding-block: 18px !important;
        max-height: calc(100svh - 24px) !important;
        overflow: hidden !important;
    }

    .rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-card strong {
        font-size: clamp(20px, 5vw, 28px) !important;
    }

    .rasa-activity-loader[data-rasa-activity-loader] .rasa-loader-card span {
        font-size: 12.5px !important;
        line-height: 1.8 !important;
    }
}

.rasa-timeline-cover-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    margin: 0 0 16px;
    border-radius: 22px;
    overflow: hidden;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.12);
}

.rasa-timeline-cover-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.rasa-timeline-cover-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    margin: 0 0 16px;
    border-radius: 22px;
    overflow: hidden;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.12);
}
.rasa-timeline-cover-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}
