/* Shared visual system for legacy Tilda content while it is progressively
   replaced by native Wagtail blocks. */
.imported-site-page {
    --page-accent: #7457ef;
    --page-accent-soft: #eee8ff;
    --page-ink: #101114;
    --page-surface: #ffffff;
    --page-bg: #eef1f6;
    background:
        linear-gradient(rgba(41, 66, 102, 0.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(41, 66, 102, 0.045) 1px, transparent 1px),
        var(--page-bg) !important;
    background-size: 52px 52px, 52px 52px, auto !important;
    color: var(--page-ink);
    font-family: "Jost", Arial, sans-serif;
    overflow-x: clip;
}

.imported-site-page .bento-hero__grid > * {
    min-width: 0;
}

.site-page--camp { --page-accent: #a955ef; --page-accent-soft: #dfff70; }
.site-page--partnership { --page-accent: #527fe2; --page-accent-soft: #b9ccff; }
.site-page--contacts { --page-accent: #a959f2; --page-accent-soft: #f1e4ff; }
.site-page--additive,
.site-page--reverse { --page-accent: #f15f46; --page-accent-soft: #fff0eb; }
.site-page--digitaldesign,
.site-page--edu { --page-accent: #276ce5; --page-accent-soft: #e7efff; }
.site-page--reality,
.site-page--vr-menu { --page-accent: #7132d4; --page-accent-soft: #eee4ff; }

.imported-site-page:not(.site-page--technopark) #allrecords > .r {
    width: min(1160px, calc(100% - 40px));
    margin: 22px auto !important;
    overflow: hidden;
    border: 1px solid rgba(31, 56, 91, 0.1);
    border-radius: 24px;
    background: var(--page-surface);
    box-shadow: 0 18px 48px rgba(26, 42, 68, 0.075);
}

.imported-site-page:not(.site-page--technopark) #allrecords > .r:first-of-type {
    margin-top: 0 !important;
}

.imported-site-page:not(.site-page--technopark) #allrecords > .r .t396__artboard {
    max-width: 100%;
    margin-inline: auto;
}

.imported-site-page:not(.site-page--technopark) .t-btn,
.imported-site-page:not(.site-page--technopark) a[class*="button"] {
    border-radius: 14px !important;
    transition: transform 180ms ease, box-shadow 180ms ease, opacity 180ms ease;
}

.imported-site-page:not(.site-page--technopark) .t-btn:hover,
.imported-site-page:not(.site-page--technopark) a[class*="button"]:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(26, 42, 68, 0.14);
}

.imported-site-page:not(.site-page--technopark) .t-title,
.imported-site-page:not(.site-page--technopark) .tn-atom {
    text-wrap: pretty;
}

.imported-site-page:not(.site-page--technopark) .editable-page-hero,
.imported-site-page:not(.site-page--technopark) .bento-hero,
.imported-site-page:not(.site-page--technopark) .contact-hero {
    background: transparent;
}

@media (max-width: 959px) {
    .imported-site-page:not(.site-page--technopark) #allrecords > .r {
        width: min(100% - 28px, 900px);
        margin-block: 14px !important;
        border-radius: 20px;
    }
}

@media (max-width: 639px) {
    .imported-site-page {
        background-size: 34px 34px, 34px 34px, auto !important;
    }

    .imported-site-page:not(.site-page--technopark) #allrecords > .r {
        width: calc(100% - 24px);
        margin-block: 12px !important;
        border-radius: 16px;
        box-shadow: 0 10px 28px rgba(26, 42, 68, 0.06);
    }

    .imported-site-page .bento-hero__title {
        font-size: clamp(32px, 10vw, 43px) !important;
    }

    /* The legacy VR price cards use fixed Tilda text boxes. Keep their type
       compact enough for long Russian headings on narrow phones. */
    .site-page--reality #rec1928502111 .tn-elem[data-elem-type="text"] .tn-atom {
        font-size: 16px !important;
        line-height: 1.16 !important;
        letter-spacing: 0.035em !important;
    }

    .site-page--reality #rec1928502111 .tn-elem[data-elem-type="text"] strong {
        font-size: 17px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .imported-site-page *,
    .imported-site-page *::before,
    .imported-site-page *::after {
        transition-duration: 0.01ms !important;
    }
}
