/* Futurione Emotions — смотровая площадка. Общие стили /view и дочерних страниц. */
.fv-page {
    --fv-bg: #07070a;
    --fv-glass: rgba(12, 12, 18, 0.72);
    --fv-glass-strong: rgba(14, 14, 21, 0.9);
    --fv-text: #fff;
    --fv-muted: rgba(255, 255, 255, 0.68);
    --fv-line: rgba(255, 255, 255, 0.16);
    --fv-cyan: #25c6e1;
    --fv-purple: #842cad;
    position: relative;
    left: 50%;
    width: 100vw;
    margin-left: -50vw;
    overflow: hidden;
    background: transparent !important;
    color: var(--fv-text);
    font-family: inherit;
}

.fv-page *,
.fv-page *::before,
.fv-page *::after {
    box-sizing: border-box;
}

.fv-page h1,
.fv-page h2,
.fv-page h3,
.fv-page p,
.fv-page figure,
.fv-page ul,
.fv-page ol {
    margin-top: 0;
}

.fv-page a { color: inherit; }

#fv-contacts,
#view-request {
    scroll-margin-top: 90px;
}

.fv-container {
    width: min(1280px, calc(100% - 48px)) !important;
    max-width: 1280px !important;
    margin-right: auto !important;
    margin-left: auto !important;
}

.fv-section {
    position: relative;
    padding: 96px 0 !important;
}

.fv-section--line { border-top: 1px solid var(--fv-line); }
.fv-section--veil { background: rgba(5, 5, 9, 0.42); }
.fv-page .fv-section:not(.fv-section--veil) { background-color: transparent !important; }

.fv-eyebrow {
    margin: 0 0 18px;
    color: var(--fv-cyan);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: 1.4;
    text-transform: uppercase;
}

.fv-heading {
    max-width: 980px;
    margin: 0;
    font-size: clamp(42px, 5.2vw, 78px);
    font-weight: 500;
    line-height: 1.05;
    letter-spacing: -0.035em;
}

.fv-lead {
    max-width: 790px;
    margin: 26px 0 0;
    color: var(--fv-muted);
    font-size: clamp(18px, 1.7vw, 23px);
    line-height: 1.55;
}

.fv-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 46px;
    padding: 13px 21px;
    border: 0;
    border-radius: 8px;
    background: var(--fv-cyan);
    color: #061116;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.045em;
    line-height: 1.25;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    transition: background .2s ease, color .2s ease, transform .2s ease;
}

.fv-button::after { content: '\2192'; font-size: 18px; font-weight: 400; line-height: 1; }
.fv-button:hover { background: #73e5f5; color: #061116; transform: translateY(-2px); }
.fv-button--small { font-size: 12px; }
.fv-button--back::after { content: none; }
.fv-button--back::before { content: '\2190'; font-size: 18px; font-weight: 400; line-height: 1; }
.fv-button--disabled { background: rgba(37,198,225,.28); color: rgba(255,255,255,.62); cursor: default; }
.fv-button--disabled:hover { background: rgba(37,198,225,.28); color: rgba(255,255,255,.62); transform: none; }

/* Перебивает старые встроенные стили, если они сохранились в ресурсе MODX. */
.fv-page .fv-button,
.fv-page .fv-button--ghost,
.fv-page .fv-button--small {
    min-height: 46px !important;
    padding: 13px 21px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: var(--fv-cyan) !important;
    color: #061116 !important;
    text-decoration: none !important;
}

.fv-page .fv-button:hover,
.fv-page .fv-button--ghost:hover,
.fv-page .fv-button--small:hover {
    background: #73e5f5 !important;
    color: #061116 !important;
    transform: translateY(-2px) !important;
}

.fv-hero {
    position: relative;
    display: flex;
    min-height: min(760px, calc(100svh - 64px));
    align-items: flex-end;
    background: #0b0b0e url('/assets/images/view/view-family-panorama.webp') center / cover no-repeat;
}

.fv-hero::before {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(3,3,7,.12) 0%, rgba(3,3,7,.2) 42%, rgba(3,3,7,.92) 100%),
        linear-gradient(90deg, rgba(3,3,7,.72) 0%, rgba(3,3,7,.13) 65%, rgba(3,3,7,.2) 100%);
    content: '';
}

.fv-hero__inner { position: relative; z-index: 1; width: 100%; padding: 84px 0 66px; }

.fv-hero h1 {
    max-width: 1040px !important;
    margin: 0;
    color: #fff;
    font-size: clamp(50px, 5.4vw, 86px) !important;
    font-weight: 500;
    line-height: 1.04 !important;
    letter-spacing: -.045em;
}

.fv-hero__subtitle {
    max-width: 820px;
    margin: 34px 0 0 !important;
    color: rgba(255,255,255,.88);
    font-size: clamp(20px, 1.9vw, 29px);
    line-height: 1.4;
}

.fv-hero__actions { display: flex; flex-wrap: wrap; gap: 26px; margin-top: 34px; }

.fv-free-note {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 24px;
    color: #8be8f7;
    font-size: clamp(18px, 1.7vw, 24px);
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 1.25;
    text-transform: uppercase;
}

.fv-free-note::before {
    width: 34px;
    height: 2px;
    background: var(--fv-cyan);
    content: '';
}

.fv-facts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-bottom: 1px solid var(--fv-line);
    background: rgba(5,5,9,.35);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
}

.fv-fact { display: flex; min-height: 170px; flex-direction: column; align-items: flex-start; padding: 42px 36px; border-right: 1px solid var(--fv-line); }
.fv-fact:last-child { border-right: 0; }
.fv-fact__value { margin: 0 0 14px; font-size: clamp(28px, 2.25vw, 38px); font-weight: 500; line-height: 1.08; white-space: nowrap; }
.fv-fact__caption { margin: 0; color: var(--fv-muted); font-size: 15px; line-height: 1.45; }

.fv-about { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); align-items: start; gap: 100px; }
.fv-about__text { padding-top: 0; }
.fv-about__text p { margin: 0 0 22px; color: var(--fv-muted); font-size: 19px; line-height: 1.62; }
.fv-about__text p:first-child { color: #fff; font-size: clamp(23px,2.4vw,34px); line-height: 1.32; }

.fv-gallery {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(2, 310px);
    gap: 18px;
    margin-top: 68px;
}

.fv-gallery__item { position: relative; overflow: hidden; margin: 0; border-radius: 20px; background: var(--fv-glass-strong); }
.fv-gallery__item:nth-child(1) { grid-column: 1 / span 6; grid-row: 1 / span 2; }
.fv-gallery__item:nth-child(2) { grid-column: 7 / span 3; grid-row: 1; }
.fv-gallery__item:nth-child(3) { grid-column: 10 / span 3; grid-row: 1; }
.fv-gallery__item:nth-child(4) { grid-column: 7 / span 3; grid-row: 2; }
.fv-gallery__item:nth-child(5) { grid-column: 10 / span 3; grid-row: 2; }
.fv-gallery__item img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .65s ease; }
.fv-gallery__item:hover img { transform: scale(1.035); }

.fv-steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; margin-top: 56px; }
.fv-step { min-height: 270px; padding: 32px; border: 1px solid var(--fv-line); border-radius: 22px; background: var(--fv-glass); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
.fv-step__number { display: flex; width: 50px; height: 50px; align-items: center; justify-content: center; margin-bottom: 48px; border: 1px solid rgba(37,198,225,.55); border-radius: 50%; color: var(--fv-cyan); font-size: 14px; font-weight: 700; }
.fv-step h3 { margin: 0 0 12px; color: #fff; font-size: 24px; font-weight: 500; line-height: 1.2; }
.fv-step p { margin: 0; color: var(--fv-muted); font-size: 16px; line-height: 1.55; }

.fv-audio,
.fv-event-card,
.fv-contact,
.fv-panel {
    overflow: hidden;
    border: 1px solid var(--fv-line);
    border-radius: 28px;
    background: var(--fv-glass);
    -webkit-backdrop-filter: blur(18px);
    backdrop-filter: blur(18px);
}

.fv-audio { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.68fr); }
.fv-audio__content { padding: 64px; }
.fv-audio__content h2 { margin: 0; font-size: clamp(40px,4.7vw,70px); font-weight: 500; line-height: 1.02; }
.fv-audio__content p { max-width: 680px; margin: 24px 0 30px; color: var(--fv-muted); font-size: 19px; line-height: 1.55; }
.fv-audio__visual { position: relative; display: flex; min-height: 470px; align-items: center; justify-content: center; overflow: hidden; border-left: 1px solid var(--fv-line); background: url('/assets/images/view/view-kazan.webp') center / cover no-repeat; }
.fv-audio__visual::before { position: absolute; inset: 0; background: linear-gradient(135deg,rgba(132,44,173,.24),rgba(4,7,11,.65)); content: ''; }
.fv-audio__play { position: relative; z-index: 1; display: flex; width: 108px; height: 108px; align-items: center; justify-content: center; border: 0; border-radius: 50%; background: var(--fv-cyan); color: #061116; font-size: 31px; text-decoration: none; box-shadow: 0 12px 42px rgba(37,198,225,.28); }
.fv-audio__play::before { margin-left: 7px; content: '\25B6'; }

.fv-events__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin-bottom: 48px; }
.fv-event-card { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); min-height: 510px; }
.fv-event-card__image { min-height: 430px; background: url('/assets/images/view/view-spas.webp') center / cover no-repeat; }

#fv-afisha-page .fv-event-card__image {
    background-image: url('/assets/images/view/view-sennaya-panorama.webp');
}
.fv-event-card__content { display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; padding: 60px; }
.fv-event-card__meta { display: flex; flex-wrap: wrap; gap: 9px; margin-bottom: 30px; }
.fv-pill { display: inline-flex; min-height: 34px; align-items: center; padding: 7px 12px; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; color: rgba(255,255,255,.75); font-size: 12px; font-weight: 650; letter-spacing: .05em; text-transform: uppercase; }
.fv-pill--accent { border-color: rgba(37,198,225,.5); color: #8be8f7; }
.fv-event-card h3 { margin: 0; color: #fff; font-size: clamp(36px,4.2vw,62px); font-weight: 500; line-height: 1.08; }
.fv-event-card p { max-width: 680px; margin: 24px 0 32px; color: var(--fv-muted); font-size: 18px; line-height: 1.58; }

.fv-use-cases { display: grid; grid-template-columns: repeat(2,1fr); gap: 20px; }
.fv-case { position: relative; display: flex; min-height: 540px; flex-direction: column; align-items: flex-start; justify-content: flex-end; overflow: hidden; padding: 46px; border: 1px solid var(--fv-line); border-radius: 28px; background: var(--fv-glass-strong); }
.fv-case::before { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(4,4,8,.03) 18%,rgba(4,4,8,.94) 88%); content: ''; }
.fv-case--groups { background: url('/assets/images/view/view-nevsky.webp') center / cover no-repeat; }
.fv-case--events { background: url('/assets/images/view/view-terrace.webp') center / cover no-repeat; }
.fv-case__content { position: relative; z-index: 1; }
.fv-case h3 { margin: 0 0 16px; color: #fff; font-size: clamp(35px,3.7vw,54px); font-weight: 500; line-height: 1.08; }
.fv-case p { max-width: 560px; margin: 0 0 25px; color: rgba(255,255,255,.78); font-size: 17px; line-height: 1.55; }
.fv-case__links { display: flex; flex-wrap: wrap; gap: 24px; }

.fv-faq { display: grid; grid-template-columns: minmax(280px,.68fr) minmax(0,1.32fr); gap: 90px; }
.fv-faq__items { border-top: 1px solid var(--fv-line); }
.fv-faq details { border-bottom: 1px solid var(--fv-line); }
.fv-faq summary { position: relative; padding: 27px 52px 27px 0; color: #fff; font-size: 20px; line-height: 1.35; list-style: none; cursor: pointer; }
.fv-faq summary::-webkit-details-marker { display: none; }
.fv-faq summary::after { position: absolute; top: 50%; right: 4px; color: var(--fv-cyan); font-size: 27px; font-weight: 300; transform: translateY(-50%); content: '+'; }
.fv-faq details[open] summary::after { content: '\2212'; }
.fv-faq details p { max-width: 760px; margin: -5px 0 26px; color: var(--fv-muted); font-size: 16px; line-height: 1.6; }

.fv-contact { display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.72fr); }
.fv-contact__content { padding: 62px; }
.fv-contact__content h2 { margin: 0; font-size: clamp(42px,5vw,74px); font-weight: 500; line-height: 1.04; }
.fv-contact__list { display: grid; gap: 22px; margin: 36px 0 0; }
.fv-contact__item span { display: block; margin-bottom: 5px; color: var(--fv-muted); font-size: 13px; letter-spacing: .12em; text-transform: uppercase; }
.fv-contact__item strong,
.fv-contact__item a { color: #fff; font-size: 19px; font-weight: 500; line-height: 1.4; text-decoration: none; }
.fv-contact__image { min-height: 540px; background: url('/assets/images/view/view-isaac.webp') center / cover no-repeat; }

/* Внутренние страницы */
.fv-inner-hero { position: relative; padding: 116px 0 86px; border-bottom: 1px solid var(--fv-line); background: rgba(5,5,9,.26); }
.fv-inner-hero__grid { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(360px,.7fr); align-items: start; gap: 70px; }
.fv-inner-hero__grid > * { align-self: start; }
.fv-inner-hero h1 { max-width: 1060px; margin: 0; font-size: clamp(54px,6.2vw,96px); font-weight: 500; line-height: .98; letter-spacing: -.045em; }
.fv-inner-hero__text { max-width: 680px; margin: 24px 0 0; color: var(--fv-muted); font-size: 20px; line-height: 1.6; }
.fv-inner-hero__media { min-height: 420px; overflow: hidden; border: 1px solid var(--fv-line); border-radius: 24px; }
.fv-inner-hero__media img { display: block; width: 100%; height: 100%; min-height: 420px; object-fit: cover; }
.fv-inner-hero__meta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }

.fv-prose { max-width: 900px; }
.fv-prose h2 { margin: 56px 0 18px; color: #fff; font-size: clamp(32px,3.3vw,48px); font-weight: 500; line-height: 1.12; }
.fv-prose h2:first-child { margin-top: 0; }
.fv-prose h3 { margin: 36px 0 14px; color: #fff; font-size: 25px; font-weight: 500; line-height: 1.25; }
.fv-prose p { margin: 0 0 20px; color: var(--fv-muted); font-size: 18px; line-height: 1.68; }
.fv-prose p.fv-prose__lead { color: #fff; font-size: clamp(22px,2.2vw,31px); line-height: 1.4; }
.fv-prose a:not(.fv-button) { color: #fff; text-decoration: underline; text-decoration-color: var(--fv-cyan); text-underline-offset: 4px; }
.fv-prose ul,
.fv-prose ol { display: grid; gap: 12px; margin: 0 0 26px; padding-left: 24px; color: var(--fv-muted); font-size: 18px; line-height: 1.6; }

.fv-layout { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(300px,.55fr); align-items: start; gap: 70px; }
.fv-aside { position: sticky; top: 24px; padding: 30px; border: 1px solid var(--fv-line); border-radius: 22px; background: var(--fv-glass); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
.fv-aside h3 { margin: 0 0 20px; font-size: 24px; font-weight: 500; }
.fv-aside__list { display: grid; gap: 18px; }
.fv-aside__item { padding-bottom: 18px; border-bottom: 1px solid var(--fv-line); }
.fv-aside__item:last-child { padding-bottom: 0; border-bottom: 0; }
.fv-aside__item span { display: block; margin-bottom: 4px; color: var(--fv-muted); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; }
.fv-aside__item strong { color: #fff; font-size: 17px; line-height: 1.45; }

.fv-card-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 22px; margin-top: 50px; }
.fv-info-card { padding: 34px; border: 1px solid var(--fv-line); border-radius: 22px; background: var(--fv-glass); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
.fv-info-card h3 { margin: 0 0 12px; font-size: 27px; font-weight: 500; line-height: 1.2; }
.fv-info-card p { margin: 0; color: var(--fv-muted); font-size: 17px; line-height: 1.6; }

.fv-quote { margin: 56px 0; padding: 36px 38px; border-left: 2px solid var(--fv-cyan); background: var(--fv-glass); -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
.fv-quote blockquote { margin: 0; color: #fff; font-size: clamp(22px,2.3vw,32px); line-height: 1.48; }
.fv-quote figcaption { margin-top: 24px; color: var(--fv-muted); font-size: 15px; line-height: 1.5; }

.fv-people { display: grid; grid-template-columns: repeat(2,1fr); gap: 12px 38px; margin: 22px 0 34px; padding: 0; list-style: none; }
.fv-people li { padding: 14px 0; border-bottom: 1px solid var(--fv-line); color: #fff; font-size: 18px; }

.fv-rules { display: grid; gap: 14px; margin: 24px 0 0; padding: 0; list-style: none; counter-reset: rules; }
.fv-rules li { position: relative; padding: 22px 22px 22px 66px; border: 1px solid var(--fv-line); border-radius: 18px; background: var(--fv-glass); color: var(--fv-muted); font-size: 17px; line-height: 1.55; counter-increment: rules; }
.fv-rules li::before { position: absolute; top: 20px; left: 22px; color: var(--fv-cyan); font-weight: 700; content: counter(rules, decimal-leading-zero); }

.fv-cta { display: flex; align-items: center; justify-content: space-between; gap: 34px; padding: 44px; border: 1px solid var(--fv-line); border-radius: 24px; background: var(--fv-glass); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
.fv-cta h2 { margin: 0; font-size: clamp(30px,3.3vw,48px); font-weight: 500; line-height: 1.12; }
.fv-cta p { max-width: 690px; margin: 14px 0 0; color: var(--fv-muted); font-size: 17px; line-height: 1.55; }
.fv-cta__actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: 24px; }

.fv-audio-player { display: grid; gap: 26px; margin-top: 44px; padding: 38px; border: 1px solid var(--fv-line); border-radius: 24px; background: var(--fv-glass); -webkit-backdrop-filter: blur(18px); backdrop-filter: blur(18px); }
.fv-audio-player__line { height: 1px; background: linear-gradient(90deg,var(--fv-cyan),var(--fv-purple),transparent); }
.fv-audio-player__status { margin: 0; color: var(--fv-muted); font-size: 16px; line-height: 1.5; }

/* Страница выставки: компактная журнальная композиция без конфликтов с шаблоном сайта. */
#fv-exhibition-page .fv-inner-hero {
    padding: 76px 0 64px;
}

#fv-exhibition-page .fv-inner-hero__grid {
    grid-template-columns: minmax(0, 1fr) minmax(420px, .78fr);
    gap: 56px;
}

#fv-exhibition-page .fv-inner-hero h1 {
    max-width: 760px;
    font-size: clamp(54px, 5vw, 78px);
    line-height: 1;
}

#fv-exhibition-page .fv-inner-hero__text {
    max-width: 650px;
    margin-top: 22px;
    font-size: 19px;
}

#fv-exhibition-page .fv-inner-hero__media {
    width: 100%;
    height: 460px;
    min-height: 0;
    border-radius: 20px;
}

#fv-exhibition-page .fv-inner-hero__media img {
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    object-position: center;
}

#fv-exhibition-page .fv-layout {
    grid-template-columns: minmax(0, 780px) 340px;
    justify-content: space-between;
    gap: 64px;
}

#fv-exhibition-page .fv-prose {
    width: 100%;
    max-width: 780px;
}

#fv-exhibition-page .fv-prose p.fv-prose__lead {
    max-width: 760px;
    margin-bottom: 26px;
    font-size: clamp(22px, 1.8vw, 27px);
    line-height: 1.42;
}

#fv-exhibition-page .fv-prose p {
    max-width: 740px;
    font-size: 17px;
    line-height: 1.66;
}

#fv-exhibition-page .fv-prose h2 {
    margin: 48px 0 20px;
    font-size: clamp(32px, 3vw, 42px);
}

#fv-exhibition-page .fv-people {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 20px 0 36px;
}

#fv-exhibition-page .fv-people li {
    position: relative;
    margin: 0;
    padding: 16px 18px;
    border: 1px solid var(--fv-line);
    border-radius: 12px;
    background: rgba(12, 12, 18, .48);
    font-size: 16px;
    line-height: 1.35;
    list-style: none !important;
}

#fv-exhibition-page .fv-people li::before,
#fv-exhibition-page .fv-people li::after {
    display: none !important;
    content: none !important;
}

#fv-exhibition-page .fv-quote {
    max-width: 730px;
    margin: 42px 0 46px;
    padding: 4px 0 4px 28px;
    border: 0 !important;
    border-left: 2px solid var(--fv-cyan) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

#fv-exhibition-page .fv-quote blockquote {
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: rgba(255, 255, 255, .9) !important;
    font-size: clamp(20px, 1.55vw, 24px) !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
    text-indent: 0 !important;
}

#fv-exhibition-page .fv-quote blockquote::before,
#fv-exhibition-page .fv-quote blockquote::after {
    display: none !important;
    content: none !important;
}

#fv-exhibition-page .fv-quote figcaption {
    margin-top: 20px;
    font-size: 14px;
}

#fv-exhibition-page .fv-aside {
    top: 96px;
    padding: 28px;
}

#fv-exhibition-page .fv-aside__item .fv-button {
    margin-top: 12px;
}

#fv-exhibition-page .fv-button--back {
    margin-bottom: 120px;
}

.fv-reveal { opacity: 0; transform: translateY(22px); transition: opacity .7s ease, transform .7s ease; }
.fv-reveal.is-visible { opacity: 1; transform: translateY(0); }

/* Работающая FormIt-форма остаётся в ресурсе после главного блока. */
.view-request {
    background: rgba(5,5,9,.48) !important;
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
}

.view-form__button {
    border: 0 !important;
    border-radius: 8px !important;
    background: var(--fv-cyan) !important;
    color: #061116 !important;
}

.view-form__button:hover { background: #73e5f5 !important; color: #061116 !important; }

@media (prefers-reduced-motion: reduce) {
    .fv-page *, .fv-page *::before, .fv-page *::after { scroll-behavior: auto !important; transition: none !important; }
    .fv-reveal { opacity: 1; transform: none; }
}

@media (max-width: 1100px) {
    .fv-section { padding: 82px 0 !important; }
    .fv-about, .fv-audio, .fv-event-card, .fv-faq, .fv-contact, .fv-inner-hero__grid, .fv-layout { grid-template-columns: 1fr; }
    .fv-about, .fv-faq, .fv-inner-hero__grid, .fv-layout { gap: 46px; }
    .fv-steps { grid-template-columns: 1fr; }
    .fv-step { min-height: 0; }
    .fv-step__number { margin-bottom: 30px; }
    .fv-audio__visual { min-height: 420px; border-top: 1px solid var(--fv-line); border-left: 0; }
    .fv-contact__image { min-height: 430px; }
    .fv-aside { position: static; }
    #fv-exhibition-page .fv-inner-hero__grid,
    #fv-exhibition-page .fv-layout { grid-template-columns: 1fr; }
    #fv-exhibition-page .fv-prose { max-width: 820px; }
    #fv-exhibition-page .fv-inner-hero__media { height: 420px; }
    #fv-exhibition-page .fv-aside { position: static; width: 100%; max-width: 820px; }
}

@media (max-width: 760px) {
    .fv-container { width: min(100% - 32px, 1280px); }
    .fv-section { padding: 64px 0 !important; }
    .fv-hero { min-height: 650px; background-position: 58% center; }
    .fv-hero__inner { padding: 76px 0 46px; }
    .fv-hero h1 { max-width: 620px; font-size: clamp(46px,13vw,70px) !important; line-height: 1 !important; }
    .fv-hero__subtitle { font-size: 19px; }
    .fv-hero__actions { gap: 22px; }
    .fv-facts { grid-template-columns: 1fr; }
    .fv-fact { min-height: 0; padding: 29px 16px; border-right: 0; border-bottom: 1px solid var(--fv-line); }
    .fv-fact__value { white-space: normal; }
    .fv-fact:last-child { border-bottom: 0; }
    .fv-gallery { grid-template-columns: repeat(2,1fr); grid-template-rows: none; grid-auto-rows: 205px; gap: 10px; margin-top: 44px; }
    .fv-gallery__item:nth-child(n) { grid-column: auto; grid-row: auto; }
    .fv-gallery__item:first-child { grid-column: 1 / -1; grid-row: span 2; }
    .fv-gallery__item { border-radius: 14px; }
    .fv-audio__content, .fv-event-card__content, .fv-contact__content { padding: 34px 22px; }
    .fv-audio__visual, .fv-event-card__image, .fv-contact__image { min-height: 360px; }
    .fv-events__head { align-items: flex-start; flex-direction: column; }
    .fv-use-cases, .fv-card-grid, .fv-people { grid-template-columns: 1fr; }
    .fv-case { min-height: 480px; padding: 30px 22px; border-radius: 20px; }
    .fv-faq summary { font-size: 17px; }
    .fv-inner-hero { padding: 76px 0 58px; }
    .fv-inner-hero h1 { font-size: clamp(48px,14vw,76px); }
    .fv-inner-hero__media, .fv-inner-hero__media img { min-height: 320px; }
    .fv-prose p, .fv-prose ul, .fv-prose ol { font-size: 17px; }
    .fv-quote { padding: 28px 24px; }
    .fv-cta { align-items: flex-start; flex-direction: column; padding: 30px 24px; }
    .fv-cta__actions { width: 100%; }
    #fv-exhibition-page .fv-inner-hero { padding: 58px 0 48px; }
    #fv-exhibition-page .fv-inner-hero h1 { font-size: clamp(46px, 13vw, 66px); }
    #fv-exhibition-page .fv-inner-hero__media { height: 320px; }
    #fv-exhibition-page .fv-people { grid-template-columns: 1fr; }
    #fv-exhibition-page .fv-quote { padding: 2px 0 2px 20px; }
    #fv-exhibition-page .fv-quote blockquote { font-size: 19px !important; }
    #fv-exhibition-page .fv-button--back { margin-bottom: 110px; }
}

@media (max-width: 480px) {
    .fv-gallery { grid-template-columns: 1fr; grid-auto-rows: 250px; }
    .fv-gallery__item:first-child { grid-column: auto; grid-row: auto; }
}

/* Финальная версия афиши: компактная страница без повторяющегося изображения. */
#fv-afisha-page .fv-afisha-intro {
    padding: 74px 0 46px;
    border-bottom: 1px solid var(--fv-line);
}

#fv-afisha-page .fv-afisha-intro h1 {
    max-width: 1050px;
    margin: 0;
    font-size: clamp(52px, 6.5vw, 94px);
    font-weight: 500;
    line-height: 0.98;
    letter-spacing: -0.045em;
}

#fv-afisha-page .fv-afisha-intro__text {
    max-width: 720px;
    margin: 22px 0 0;
    color: var(--fv-muted);
    font-size: 19px;
    line-height: 1.55;
}

#fv-afisha-page .fv-afisha-content {
    padding: 48px 0 54px;
}

#fv-afisha-page .fv-afisha-card {
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    min-height: 430px;
}

#fv-afisha-page .fv-afisha-card .fv-event-card__image {
    min-height: 430px;
}

#fv-afisha-page .fv-afisha-card .fv-event-card__content {
    padding: 46px 50px;
}

#fv-afisha-page .fv-afisha-card .fv-eyebrow {
    margin-bottom: 18px;
}

#fv-afisha-page .fv-afisha-card .fv-event-card__meta {
    margin-bottom: 22px;
}

#fv-afisha-page .fv-afisha-card h2 {
    max-width: 650px;
    margin: 0;
    color: #fff;
    font-size: clamp(38px, 4vw, 60px);
    font-weight: 500;
    line-height: 1.04;
    letter-spacing: -0.035em;
}

#fv-afisha-page .fv-afisha-card p:not(.fv-eyebrow) {
    max-width: 650px;
    margin: 22px 0 28px;
    color: var(--fv-muted);
    font-size: 17px;
    line-height: 1.55;
}

#fv-afisha-page .fv-afisha-event-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    margin-top: 24px;
    padding: 25px 28px;
    border-top: 1px solid var(--fv-line);
    border-bottom: 1px solid var(--fv-line);
}

#fv-afisha-page .fv-afisha-event-link h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(24px, 2.4vw, 34px);
    font-weight: 500;
    line-height: 1.15;
}

#fv-afisha-page .fv-afisha-event-link p {
    margin: 7px 0 0;
    color: var(--fv-muted);
    font-size: 15px;
    line-height: 1.45;
}

/* Первая кнопка в карточках прозрачная, целевая остаётся голубой. */
.fv-page .fv-button.fv-button--outline {
    border: 1px solid rgba(37, 198, 225, 0.78) !important;
    background: rgba(7, 7, 10, 0.28) !important;
    color: #fff !important;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}

.fv-page .fv-button.fv-button--outline:hover {
    border-color: var(--fv-cyan) !important;
    background: rgba(37, 198, 225, 0.16) !important;
    color: #fff !important;
}

/* Надёжное обрезание фоновых изображений по скруглению карточек. */
.fv-page .fv-case {
    overflow: hidden !important;
    isolation: isolate;
    contain: paint;
    clip-path: inset(0 round 28px);
    transform: translateZ(0);
    background-clip: padding-box !important;
}

.fv-page .fv-case::before {
    inset: 0 !important;
    border-radius: inherit;
    pointer-events: none;
}

@media (max-width: 1100px) {
    #fv-afisha-page .fv-afisha-card {
        grid-template-columns: 1fr;
    }

    #fv-afisha-page .fv-afisha-card .fv-event-card__image {
        min-height: 390px;
    }
}

/* Кликабельная кнопка аудиогида на главной — изолирована от стилей шаблона. */
#fv-page .fv-audio__visual {
    position: relative !important;
    display: flex !important;
    min-height: 470px !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

#fv-page .fv-audio__visual::before {
    position: absolute !important;
    z-index: 0 !important;
    inset: 0 !important;
    pointer-events: none !important;
}

#fv-page a.fv-audio__play {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    width: 108px !important;
    height: 108px !important;
    min-width: 108px !important;
    min-height: 108px !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: var(--fv-cyan) !important;
    color: #061116 !important;
    text-decoration: none !important;
    box-shadow: 0 12px 42px rgba(37, 198, 225, 0.28) !important;
    transform: none;
    transition: transform 0.2s ease;
}

#fv-page a.fv-audio__play::before {
    display: block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 0 7px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #061116 !important;
    font-size: 31px !important;
    line-height: 1 !important;
    content: '\25B6' !important;
}

#fv-page a.fv-audio__play::after {
    display: none !important;
    content: none !important;
}

#fv-page a.fv-audio__play:hover {
    transform: scale(1.08) !important;
}

@media (max-width: 760px) {
    #fv-page .fv-audio__visual {
        min-height: 360px !important;
    }

    #fv-page a.fv-audio__play {
        width: 88px !important;
        height: 88px !important;
        min-width: 88px !important;
        min-height: 88px !important;
    }
}

/* Универсальное выравнивание кнопок в боковых карточках. */
.fv-page .fv-aside__item .fv-button {
    display: inline-flex !important;
    position: static !important;
    float: none !important;
    clear: both !important;
    width: auto !important;
    margin: 16px 0 0 !important;
    transform: none !important;
}

.fv-page .fv-aside__item > span {
    display: block !important;
    margin-bottom: 0 !important;
}

/* Плейлист аудиогида. */
#fv-audiogid-page .fv-guide-player {
    padding: 30px !important;
}

#fv-audiogid-page .fv-guide-player__current {
    margin: 0 0 20px;
}

#fv-audiogid-page .fv-guide-player__current > span {
    display: block;
    margin-bottom: 7px;
    color: var(--fv-muted);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

#fv-audiogid-page .fv-guide-player__current h2 {
    margin: 0 !important;
    color: #fff !important;
    font-size: clamp(25px, 2.6vw, 36px) !important;
    font-weight: 500;
    line-height: 1.18 !important;
}

#fv-audiogid-page .fv-guide-player__audio {
    display: block;
    width: 100%;
    height: 46px;
    margin: 0 0 24px;
    accent-color: var(--fv-cyan);
}

#fv-audiogid-page .fv-guide-tracks {
    display: grid !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-top: 1px solid var(--fv-line);
    list-style: none !important;
    counter-reset: none !important;
}

#fv-audiogid-page .fv-guide-tracks li {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--fv-line) !important;
    border-radius: 0 !important;
    background: transparent !important;
    list-style: none !important;
    counter-increment: none !important;
}

#fv-audiogid-page .fv-guide-tracks li::before,
#fv-audiogid-page .fv-guide-tracks li::after {
    display: none !important;
    content: none !important;
}

#fv-audiogid-page .fv-guide-tracks button {
    display: grid !important;
    grid-template-columns: 40px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 16px 4px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #fff !important;
    font: inherit !important;
    text-align: left !important;
    text-decoration: none !important;
    text-transform: none !important;
    cursor: pointer;
    transform: none !important;
    transition: color 0.2s ease, background 0.2s ease;
    appearance: none;
}

#fv-audiogid-page .fv-guide-tracks button:hover,
#fv-audiogid-page .fv-guide-tracks button.is-active {
    background: rgba(37, 198, 225, 0.08) !important;
    color: var(--fv-cyan) !important;
}

#fv-audiogid-page .fv-guide-tracks__number {
    color: var(--fv-cyan);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
}

#fv-audiogid-page .fv-guide-tracks__title {
    min-width: 0;
    color: inherit;
    font-size: 15px;
    font-weight: 650;
    line-height: 1.35;
}

#fv-audiogid-page .fv-guide-tracks time {
    color: var(--fv-muted);
    font-size: 12px;
    font-variant-numeric: tabular-nums;
}

@media (max-width: 560px) {
    #fv-audiogid-page .fv-guide-player {
        padding: 24px 18px !important;
    }

    #fv-audiogid-page .fv-guide-tracks button {
        grid-template-columns: 32px minmax(0, 1fr) auto;
        gap: 9px;
        padding: 14px 2px !important;
    }

    #fv-audiogid-page .fv-guide-tracks__title {
        font-size: 14px;
    }
}

/* Единый компактный шаблон внутренних страниц. */
.fv-page .fv-subnav {
    display: none !important;
}

.fv-page .fv-location-line {
    max-width: 720px;
    margin: 24px 0 0 !important;
    padding-left: 16px;
    border-left: 2px solid var(--fv-cyan);
    color: rgba(255, 255, 255, 0.76) !important;
    font-size: 14px !important;
    font-weight: 600;
    line-height: 1.5 !important;
}

.fv-page .fv-location-line--hero {
    margin-top: 26px !important;
}

.fv-detail-page .fv-detail-hero {
    padding: 62px 0 54px !important;
    background: rgba(5, 5, 9, 0.18) !important;
}

.fv-detail-page .fv-detail-hero .fv-inner-hero__grid {
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.72fr);
    align-items: start !important;
    gap: 56px;
}

.fv-detail-page .fv-detail-hero h1 {
    max-width: 820px;
    font-size: clamp(50px, 5.2vw, 78px) !important;
    line-height: 1 !important;
}

.fv-detail-page .fv-detail-hero .fv-inner-hero__text {
    margin-top: 20px;
    font-size: 18px;
    line-height: 1.55;
}

.fv-detail-page .fv-detail-hero .fv-inner-hero__media,
.fv-detail-page .fv-detail-hero .fv-inner-hero__media img {
    width: 100%;
    height: 380px;
    min-height: 0 !important;
}

.fv-detail-page .fv-detail-body {
    padding: 54px 0 62px;
}

.fv-detail-page .fv-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    align-items: start;
    gap: 54px;
}

.fv-detail-page .fv-detail-copy {
    min-width: 0;
    max-width: 880px;
}

.fv-detail-page .fv-detail-copy > p {
    margin: 0 0 18px !important;
    color: var(--fv-muted) !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
}

.fv-detail-page .fv-detail-copy > .fv-detail-lead {
    margin-bottom: 22px !important;
    color: #fff !important;
    font-size: clamp(23px, 2.2vw, 31px) !important;
    line-height: 1.35 !important;
}

.fv-detail-page .fv-detail-copy > h2,
.fv-detail-page .fv-about-note h2 {
    margin: 40px 0 16px !important;
    color: #fff !important;
    font-size: clamp(30px, 3vw, 42px) !important;
    font-weight: 500;
    line-height: 1.12 !important;
}

.fv-detail-page .fv-detail-aside {
    position: sticky;
    top: 92px;
    padding: 26px;
}

#fv-audiogid-page .fv-audio-player {
    margin: 34px 0 32px !important;
    padding: 28px !important;
    border: 1px solid var(--fv-line) !important;
    border-radius: 20px !important;
    background: rgba(12, 12, 18, 0.72) !important;
}

#fv-audiogid-page .fv-audio-player__line {
    height: 2px;
    margin: 20px 0;
}

#fv-audiogid-page .fv-audio-player__status {
    margin: 0 0 20px !important;
    color: var(--fv-muted) !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
}

#fv-audiogid-page .fv-editorial-quote {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 210px;
    gap: 32px;
    align-items: start;
    margin: 32px 0 !important;
    padding: 28px 0 !important;
    border: 0 !important;
    border-top: 1px solid var(--fv-line) !important;
    border-bottom: 1px solid var(--fv-line) !important;
    background: transparent !important;
    box-shadow: none !important;
}

#fv-audiogid-page .fv-editorial-quote p {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #fff !important;
    font-size: clamp(20px, 2vw, 27px) !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
}

#fv-audiogid-page .fv-editorial-quote figcaption {
    margin: 4px 0 0 !important;
    color: var(--fv-muted) !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
}

#fv-audiogid-page .fv-about-note {
    margin: 0;
}

#fv-audiogid-page .fv-about-note p {
    margin: 0 !important;
    color: var(--fv-muted) !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
}

.fv-detail-page .fv-detail-intro {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 60px;
    align-items: start;
}

.fv-detail-page .fv-detail-intro h2 {
    max-width: 640px;
    margin: 0;
    color: #fff;
    font-size: clamp(38px, 4.3vw, 62px);
    font-weight: 500;
    line-height: 1.05;
    letter-spacing: -0.035em;
}

.fv-detail-page .fv-detail-intro > div:last-child p {
    margin: 3px 0 0;
    color: var(--fv-muted);
    font-size: 18px;
    line-height: 1.65;
}

.fv-detail-page .fv-detail-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-top: 42px;
}

.fv-detail-page .fv-detail-cards--four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.fv-detail-page .fv-detail-cards article {
    min-height: 190px;
    padding: 27px;
    border: 1px solid var(--fv-line);
    border-radius: 18px;
    background: rgba(12, 12, 18, 0.62);
}

.fv-detail-page .fv-detail-cards h3 {
    margin: 0 0 12px;
    color: #fff;
    font-size: 23px;
    font-weight: 500;
    line-height: 1.18;
}

.fv-detail-page .fv-detail-cards p {
    margin: 0;
    color: var(--fv-muted);
    font-size: 15px;
    line-height: 1.55;
}

.fv-detail-page .fv-detail-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    margin-top: 24px;
    padding: 28px 30px;
    border-top: 1px solid var(--fv-line);
    border-bottom: 1px solid var(--fv-line);
}

.fv-detail-page .fv-detail-cta h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(27px, 3vw, 40px);
    font-weight: 500;
    line-height: 1.15;
}

.fv-detail-page .fv-detail-cta p {
    margin: 7px 0 0;
    color: var(--fv-muted);
    font-size: 14px;
}

#fv-rules-page .fv-rules-clean {
    margin-top: 22px;
}

@media (max-width: 1100px) {
    .fv-detail-page .fv-detail-hero .fv-inner-hero__grid,
    .fv-detail-page .fv-detail-layout {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .fv-detail-page .fv-detail-hero .fv-inner-hero__media,
    .fv-detail-page .fv-detail-hero .fv-inner-hero__media img {
        height: 390px;
    }

    .fv-detail-page .fv-detail-aside {
        position: static;
        max-width: 720px;
    }

    .fv-detail-page .fv-detail-cards--four {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .fv-detail-page .fv-detail-hero {
        padding: 48px 0 38px !important;
    }

    .fv-detail-page .fv-detail-hero h1 {
        font-size: clamp(43px, 13vw, 62px) !important;
    }

    .fv-detail-page .fv-detail-hero .fv-inner-hero__media,
    .fv-detail-page .fv-detail-hero .fv-inner-hero__media img {
        height: 290px;
    }

    .fv-detail-page .fv-detail-body {
        padding: 38px 0 44px;
    }

    .fv-detail-page .fv-detail-intro,
    .fv-detail-page .fv-detail-cards,
    .fv-detail-page .fv-detail-cards--four {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .fv-detail-page .fv-detail-cards {
        margin-top: 30px;
    }

    .fv-detail-page .fv-detail-cards article {
        min-height: 0;
        padding: 24px 22px;
    }

    .fv-detail-page .fv-detail-cta {
        align-items: flex-start;
        flex-direction: column;
        padding: 24px 0;
    }

    #fv-audiogid-page .fv-editorial-quote {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

@media (max-width: 760px) {
    #fv-afisha-page .fv-afisha-intro {
        padding: 56px 0 36px;
    }

    #fv-afisha-page .fv-afisha-intro h1 {
        font-size: clamp(44px, 13vw, 66px);
    }

    #fv-afisha-page .fv-afisha-content {
        padding: 32px 0 40px;
    }

    #fv-afisha-page .fv-afisha-card .fv-event-card__image {
        min-height: 310px;
    }

    #fv-afisha-page .fv-afisha-card .fv-event-card__content {
        padding: 30px 22px 34px;
    }

    #fv-afisha-page .fv-afisha-event-link {
        align-items: flex-start;
        flex-direction: column;
        padding: 24px 0;
    }

    .fv-page .fv-case {
        clip-path: inset(0 round 20px);
    }
}

/* Страница выставки: цитата в две колонки. */
#fv-exhibition-page .fv-quote {
    display: grid !important;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 40px;
    align-items: start;
    max-width: none !important;
    margin: 48px 0 52px !important;
    padding: 32px 0 !important;
    border: 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.18) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18) !important;
    background: transparent !important;
}

#fv-exhibition-page .fv-quote blockquote {
    grid-column: 2;
    margin: 0 !important;
    font-size: clamp(19px, 1.45vw, 23px) !important;
    line-height: 1.5 !important;
}

#fv-exhibition-page .fv-quote figcaption {
    grid-column: 1;
    grid-row: 1;
    margin: 3px 0 0 !important;
    color: rgba(255, 255, 255, 0.62) !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

#fv-exhibition-page .fv-aside__item .fv-button {
    position: static !important;
    margin: 18px 0 0 !important;
    transform: none !important;
}

@media (max-width: 700px) {
    #fv-exhibition-page .fv-quote {
        grid-template-columns: 1fr;
        gap: 18px;
        padding: 26px 0 !important;
    }

    #fv-exhibition-page .fv-quote blockquote,
    #fv-exhibition-page .fv-quote figcaption {
        grid-column: 1;
    }

    #fv-exhibition-page .fv-quote figcaption {
        grid-row: auto;
    }
}

/* Навигация назад на внутренних страницах. */
.fv-page .fv-back-link {
    display: inline-flex;
    align-items: center;
    margin: 0 0 28px;
    color: rgba(255, 255, 255, 0.72) !important;
    font-size: 13px;
    font-weight: 650;
    letter-spacing: 0.08em;
    line-height: 1.3;
    text-decoration: none !important;
    text-transform: uppercase;
    transition: color 0.2s ease;
}

.fv-page .fv-back-link::before,
.fv-page .fv-back-link::after {
    display: none !important;
    content: none !important;
}

.fv-page .fv-back-link:hover {
    color: var(--fv-cyan) !important;
}

#fv-afisha-page .fv-afisha-event-link__actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    gap: 12px;
}

@media (max-width: 760px) {
    .fv-page .fv-back-link {
        margin-bottom: 22px;
        font-size: 12px;
    }

    #fv-afisha-page .fv-afisha-event-link__actions {
        width: 100%;
    }

    #fv-afisha-page .fv-afisha-event-link__actions .fv-button {
        width: 100%;
    }
}
