@charset "UTF-8";
/* Default Styles */
@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-ThinBETA.woff2") format("woff2");
  font-weight: 100;
  font-style: normal;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-ThinItalicBETA.woff2") format("woff2");
  font-weight: 100;
  font-style: italic;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-ExtraLightBETA.woff2") format("woff2");
  font-weight: 200;
  font-style: normal;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-ExtraLightItalicBETA.woff2") format("woff2");
  font-weight: 200;
  font-style: italic;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-LightBETA.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-LightItalicBETA.woff2") format("woff2");
  font-weight: 300;
  font-style: italic;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-Italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-MediumItalic.woff2") format("woff2");
  font-weight: 500;
  font-style: italic;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-SemiBoldItalic.woff2") format("woff2");
  font-weight: 600;
  font-style: italic;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-BoldItalic.woff2") format("woff2");
  font-weight: 700;
  font-style: italic;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-ExtraBold.woff2") format("woff2");
  font-weight: 800;
  font-style: normal;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-ExtraBoldItalic.woff2") format("woff2");
  font-weight: 800;
  font-style: italic;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-Black.woff2") format("woff2");
  font-weight: 900;
  font-style: normal;
}

@font-face {
    font-family: "Inter";
  font-display: swap;
  src: url("../fonts/Inter-BlackItalic.woff2") format("woff2");
  font-weight: 900;
  font-style: italic;
}

@font-face {
    font-family: "Ruberoid";
  font-display: swap;
  src: url("../fonts/Ruberoid-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
}

@font-face {
    font-family: "Ruberoid";
  font-display: swap;
  src: url("../fonts/Ruberoid-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
}

@font-face {
    font-family: "Ruberoid";
  font-display: swap;
  src: url("../fonts/Ruberoid-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
}

@font-face {
    font-family: "Ruberoid";
  font-display: swap;
  src: url("../fonts/Ruberoid-Bold.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
}

@font-face {
    font-family: "Ruberoid";
  font-display: swap;
  src: url("../fonts/Ruberoid-ExtraBold.woff2") format("woff2");
  font-weight: 800;
  font-style: normal;
}

:root {
    --font-family: "Inter", system-ui, sans-serif;
    --font-heading: Ruberoid, system-ui, sans-serif;
    --headerHeight: 6.25rem;
    --f-transition-duration: 0.22s;
    --f-transition-easing: cubic-bezier(0.22, 1, 0.36, 1);
}

* {
    padding: 0px;
    margin: 0px;
    border: 0px;
}

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

a {
    transition-duration: 0.15s;
}

a:hover {
    color: var(--akcentnyy);
}

html,
body {
    min-height: 100vh;
    min-width: 20rem;
    display: flex;
    flex-direction: column;
}

html {
    background-color: #032323;
    overscroll-behavior-y: none;
}

body {
    color: var(--osnovnoy);
    line-height: 1.4;
    font-family: var(--font-family);
    font-size: 1rem;
    background-color: #fff;
    overflow-x: hidden;
    overscroll-behavior-y: none;
    -ms-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: flex;
    flex-direction: column;
}

footer {
    margin-top: auto;
}

input,
button,
textarea {
    font-family: var(--font-family);
    font-size: inherit;
}

button {
    cursor: pointer;
    color: inherit;
    background-color: inherit;
}

footer {
    margin-top: auto;
}

a {
    color: inherit;
}

a:link,
a:visited {
    text-decoration: none;
}

a:hover {
    text-decoration: none;
}

ul li {
    list-style: none;
}

img {
    vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: inherit;
    font-size: inherit;
}

/**
 * Swiper 11.0.4
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: November 9, 2023
 */
@font-face {
    font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}

:root {
    --swiper-theme-color: #007aff;
}

:host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1;
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block;
}

.swiper-vertical > .swiper-wrapper {
    flex-direction: column;
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
    transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
    touch-action: pan-y;
}

.swiper-vertical {
    touch-action: pan-x;
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
    display: block;
}

.swiper-slide-invisible-blank {
    visibility: hidden;
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
    height: auto;
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    backface-visibility: hidden;
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 75rem;
}

.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d;
}

.swiper-3d {
    perspective: 75rem;
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide {
    transform-style: preserve-3d;
}

.swiper-css-mode > .swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
    scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
    scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
    scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
    content: "";
    flex-shrink: 0;
    order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
    height: 100%;
    min-height: 0.0625rem;
    width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
    width: 100%;
    min-width: 0.0625rem;
    height: var(--swiper-centered-offset-after);
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
    width: 2.625rem;
    height: 2.625rem;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -1.3125rem;
    margin-top: -1.3125rem;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 0.25rem solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent;
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
    height: 0.0625rem;
    width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
    width: 0.0625rem;
    height: var(--swiper-virtual-size);
}

:root {
    --swiper-navigation-size: 2.75rem;
}

.swiper-button-next,
.swiper-button-prev {
    position: absolute;
    top: var(--swiper-navigation-top-offset, 50%);
    width: calc(var(--swiper-navigation-size) / 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - var(--swiper-navigation-size) / 2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
}

.swiper-button-next.swiper-button-hidden,
.swiper-button-prev.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-next,
.swiper-navigation-disabled .swiper-button-prev {
    display: none !important;
}

.swiper-button-next svg,
.swiper-button-prev svg {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    transform-origin: center;
}

.swiper-rtl .swiper-button-next svg,
.swiper-rtl .swiper-button-prev svg {
    transform: rotate(180deg);
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
    left: var(--swiper-navigation-sides-offset, 10px);
    right: auto;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto;
}

.swiper-button-lock {
    display: none;
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
    content: "prev";
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
    right: var(--swiper-navigation-sides-offset, 10px);
    left: auto;
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
    content: "next";
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
}

.swiper-pagination-bullet:only-child {
    display: none !important;
}

.swiper-pagination-fraction {
    color: var(--swiper-pagination-fraction-color, inherit);
}

.swiper-pagination-progressbar {
    background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
    position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: var(--swiper-pagination-progressbar-size, 4px);
    left: 0;
    top: 0;
}

.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-vertical > .swiper-pagination-progressbar {
    width: var(--swiper-pagination-progressbar-size, 4px);
    height: 100%;
    left: 0;
    top: 0;
}

.swiper-pagination-lock {
    display: none;
}

.swiper-scrollbar {
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    position: relative;
    touch-action: none;
    background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}

.swiper-scrollbar-disabled > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important;
}

.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
    position: absolute;
    left: var(--swiper-scrollbar-sides-offset, 1%);
    bottom: var(--swiper-scrollbar-bottom, 4px);
    top: var(--swiper-scrollbar-top, auto);
    z-index: 50;
    height: var(--swiper-scrollbar-size, 4px);
    width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar.swiper-scrollbar-vertical,
.swiper-vertical > .swiper-scrollbar {
    position: absolute;
    left: var(--swiper-scrollbar-left, auto);
    right: var(--swiper-scrollbar-right, 4px);
    top: var(--swiper-scrollbar-sides-offset, 1%);
    z-index: 50;
    width: var(--swiper-scrollbar-size, 4px);
    height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
    border-radius: var(--swiper-scrollbar-border-radius, 10px);
    left: 0;
    top: 0;
}

.swiper-scrollbar-cursor-drag {
    cursor: move;
}

.swiper-scrollbar-lock {
    display: none;
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.swiper-zoom-container > canvas,
.swiper-zoom-container > img,
.swiper-zoom-container > svg {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.swiper-slide-zoomed {
    cursor: move;
    touch-action: none;
}

.swiper .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
    flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-fade .swiper-slide-active {
    pointer-events: auto;
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper-cube {
    overflow: visible;
}

.swiper-cube .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper-cube .swiper-slide-active,
.swiper-cube .swiper-slide-next,
.swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible;
}

.swiper-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    opacity: 0.6;
    z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
    content: "";
    background: #000;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    filter: blur(3.125rem);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
    pointer-events: auto;
    visibility: visible;
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right,
.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden;
}

.swiper-flip {
    overflow: visible;
}

.swiper-flip .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-flip .swiper-slide-active,
.swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right,
.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
    backface-visibility: hidden;
    overflow: hidden;
    transition-property: transform, opacity, height;
}

.swiper-cards {
    overflow: visible;
}

.swiper-cards .swiper-slide {
    transform-origin: center bottom;
    backface-visibility: hidden;
    overflow: hidden;
}

:root {
    --f-spinner-width: 2.25rem;
    --f-spinner-height: 2.25rem;
    --f-spinner-color-1: rgba(0, 0, 0, 0.1);
    --f-spinner-color-2: rgba(17, 24, 28, 0.8);
    --f-spinner-stroke: 2.75;
}

.f-spinner {
    margin: auto;
    padding: 0;
    width: var(--f-spinner-width);
    height: var(--f-spinner-height);
}

.f-spinner svg {
    width: 100%;
    height: 100%;
    vertical-align: top;
    animation: f-spinner-rotate 2s linear infinite;
}

.f-spinner svg * {
    stroke-width: var(--f-spinner-stroke);
    fill: none;
}

.f-spinner svg *:first-child {
    stroke: var(--f-spinner-color-1);
}

.f-spinner svg *:last-child {
    stroke: var(--f-spinner-color-2);
    animation: f-spinner-dash 2s ease-in-out infinite;
}

@keyframes f-spinner-rotate {
    100% {
        transform: rotate(360deg);
    }
}

@keyframes f-spinner-dash {
    0% {
        stroke-dasharray: 1, 150;
        stroke-dashoffset: 0;
    }

    50% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -35;
    }

    100% {
        stroke-dasharray: 90, 150;
        stroke-dashoffset: -124;
    }
}

.f-throwOutUp {
    animation: var(--f-throw-out-duration, 0.175s) ease-out both f-throwOutUp;
}

.f-throwOutDown {
    animation: var(--f-throw-out-duration, 0.175s) ease-out both f-throwOutDown;
}

@keyframes f-throwOutUp {
    to {
        transform: translate3d(0, calc(var(--f-throw-out-distance, 150px) * -1), 0);
        opacity: 0;
    }
}

@keyframes f-throwOutDown {
    to {
        transform: translate3d(0, var(--f-throw-out-distance, 150px), 0);
        opacity: 0;
    }
}

.f-zoomInUp {
    animation: var(--f-transition-duration, 0.2s) ease 0.1s both f-zoomInUp;
}

.f-zoomOutDown {
    animation: var(--f-transition-duration, 0.2s) ease both f-zoomOutDown;
}

@keyframes f-zoomInUp {
    from {
        transform: scale(0.975) translate3d(0, 1rem, 0);
        opacity: 0;
    }

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

@keyframes f-zoomOutDown {
    to {
        transform: scale(0.975) translate3d(0, 1rem, 0);
        opacity: 0;
    }
}

.f-fadeIn {
    animation: var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeIn;
    z-index: 2;
}

.f-fadeOut {
    animation: var(--f-transition-duration, 0.2s) var(--f-transition-easing, ease) var(--f-transition-delay, 0s) both f-fadeOut;
    z-index: 1;
}

@keyframes f-fadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes f-fadeOut {
    100% {
        opacity: 0;
    }
}

.f-fadeFastIn {
    animation: var(--f-transition-duration, 0.2s) ease-out both f-fadeFastIn;
    z-index: 2;
}

.f-fadeFastOut {
    animation: var(--f-transition-duration, 0.1s) ease-out both f-fadeFastOut;
    z-index: 2;
}

@keyframes f-fadeFastIn {
    0% {
        opacity: 0.75;
    }

    100% {
        opacity: 1;
    }
}

@keyframes f-fadeFastOut {
    100% {
        opacity: 0;
    }
}

.f-fadeSlowIn {
    animation: var(--f-transition-duration, 0.5s) ease both f-fadeSlowIn;
    z-index: 2;
}

.f-fadeSlowOut {
    animation: var(--f-transition-duration, 0.5s) ease both f-fadeSlowOut;
    z-index: 1;
}

@keyframes f-fadeSlowIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes f-fadeSlowOut {
    100% {
        opacity: 0;
    }
}

.f-crossfadeIn {
    animation: var(--f-transition-duration, 0.2s) ease-out both f-crossfadeIn;
    z-index: 2;
}

.f-crossfadeOut {
    animation: calc(var(--f-transition-duration, 0.2s) * 0.5) linear 0.1s both f-crossfadeOut;
    z-index: 1;
}

@keyframes f-crossfadeIn {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes f-crossfadeOut {
    100% {
        opacity: 0;
    }
}

.f-slideIn.from-next {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInNext;
}

.f-slideIn.from-prev {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideInPrev;
}

.f-slideOut.to-next {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutNext;
}

.f-slideOut.to-prev {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-slideOutPrev;
}

@keyframes f-slideInPrev {
    0% {
        transform: translateX(100%);
    }

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

@keyframes f-slideInNext {
    0% {
        transform: translateX(-100%);
    }

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

@keyframes f-slideOutNext {
    100% {
        transform: translateX(-100%);
    }
}

@keyframes f-slideOutPrev {
    100% {
        transform: translateX(100%);
    }
}

.f-classicIn.from-next {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInNext;
    z-index: 2;
}

.f-classicIn.from-prev {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicInPrev;
    z-index: 2;
}

.f-classicOut.to-next {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutNext;
    z-index: 1;
}

.f-classicOut.to-prev {
    animation: var(--f-transition-duration, 0.85s) cubic-bezier(0.16, 1, 0.3, 1) f-classicOutPrev;
    z-index: 1;
}

@keyframes f-classicInNext {
    0% {
        transform: translateX(-4.6875rem);
        opacity: 0;
    }

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

@keyframes f-classicInPrev {
    0% {
        transform: translateX(4.6875rem);
        opacity: 0;
    }

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

@keyframes f-classicOutNext {
    100% {
        transform: translateX(-4.6875rem);
        opacity: 0;
    }
}

@keyframes f-classicOutPrev {
    100% {
        transform: translateX(4.6875rem);
        opacity: 0;
    }
}

:root {
    --f-button-width: 2.5rem;
    --f-button-height: 2.5rem;
    --f-button-border: 0;
    --f-button-border-radius: 0;
    --f-button-color: #374151;
    --f-button-bg: #f8f8f8;
    --f-button-hover-bg: #e0e0e0;
    --f-button-active-bg: #d0d0d0;
    --f-button-shadow: none;
    --f-button-transition: all 0.15s ease;
    --f-button-transform: none;
    --f-button-svg-width: 1.25rem;
    --f-button-svg-height: 1.25rem;
    --f-button-svg-stroke-width: 1.5;
    --f-button-svg-fill: none;
    --f-button-svg-filter: none;
    --f-button-svg-disabled-opacity: 0.65;
}

.f-button {
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: content-box;
    position: relative;
    margin: 0;
    padding: 0;
    width: var(--f-button-width);
    height: var(--f-button-height);
    border: var(--f-button-border);
    border-radius: var(--f-button-border-radius);
    color: var(--f-button-color);
    background: var(--f-button-bg);
    box-shadow: var(--f-button-shadow);
    pointer-events: all;
    cursor: pointer;
    transition: var(--f-button-transition);
}

@media (hover: hover) {
    .f-button:hover:not([disabled]) {
        color: var(--f-button-hover-color);
        background-color: var(--f-button-hover-bg);
    }
}

.f-button:active:not([disabled]) {
    background-color: var(--f-button-active-bg);
}

.f-button:focus:not(:focus-visible) {
    outline: none;
}

.f-button:focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 var(--f-button-outline, 2px) var(--f-button-outline-color, var(--f-button-color));
}

.f-button svg {
    width: var(--f-button-svg-width);
    height: var(--f-button-svg-height);
    fill: var(--f-button-svg-fill);
    stroke: currentColor;
    stroke-width: var(--f-button-svg-stroke-width);
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: opacity 0.15s ease;
    transform: var(--f-button-transform);
    filter: var(--f-button-svg-filter);
    pointer-events: none;
}

.f-button[disabled] {
    cursor: default;
}

.f-button[disabled] svg {
    opacity: var(--f-button-svg-disabled-opacity);
}

.f-carousel__nav .f-button.is-prev,
.f-carousel__nav .f-button.is-next,
.fancybox__nav .f-button.is-prev,
.fancybox__nav .f-button.is-next {
    position: absolute;
    z-index: 1;
}

.is-horizontal .f-carousel__nav .f-button.is-prev,
.is-horizontal .f-carousel__nav .f-button.is-next,
.is-horizontal .fancybox__nav .f-button.is-prev,
.is-horizontal .fancybox__nav .f-button.is-next {
    top: 50%;
    transform: translateY(-50%);
}

.is-horizontal .f-carousel__nav .f-button.is-prev,
.is-horizontal .fancybox__nav .f-button.is-prev {
    left: var(--f-button-prev-pos);
}

.is-horizontal .f-carousel__nav .f-button.is-next,
.is-horizontal .fancybox__nav .f-button.is-next {
    right: var(--f-button-next-pos);
}

.is-horizontal.is-rtl .f-carousel__nav .f-button.is-prev,
.is-horizontal.is-rtl .fancybox__nav .f-button.is-prev {
    left: auto;
    right: var(--f-button-next-pos);
}

.is-horizontal.is-rtl .f-carousel__nav .f-button.is-next,
.is-horizontal.is-rtl .fancybox__nav .f-button.is-next {
    right: auto;
    left: var(--f-button-prev-pos);
}

.is-vertical .f-carousel__nav .f-button.is-prev,
.is-vertical .f-carousel__nav .f-button.is-next,
.is-vertical .fancybox__nav .f-button.is-prev,
.is-vertical .fancybox__nav .f-button.is-next {
    top: auto;
    left: 50%;
    transform: translateX(-50%);
}

.is-vertical .f-carousel__nav .f-button.is-prev,
.is-vertical .fancybox__nav .f-button.is-prev {
    top: var(--f-button-next-pos);
}

.is-vertical .f-carousel__nav .f-button.is-next,
.is-vertical .fancybox__nav .f-button.is-next {
    bottom: var(--f-button-next-pos);
}

.is-vertical .f-carousel__nav .f-button.is-prev svg,
.is-vertical .f-carousel__nav .f-button.is-next svg,
.is-vertical .fancybox__nav .f-button.is-prev svg,
.is-vertical .fancybox__nav .f-button.is-next svg {
    transform: rotate(90deg);
}

.f-carousel__nav .f-button:disabled,
.fancybox__nav .f-button:disabled {
    pointer-events: none;
}

html.with-fancybox {
    width: auto;
    overflow: visible;
    scroll-behavior: auto;
}

html.with-fancybox body {
    touch-action: none;
}

html.with-fancybox body.hide-scrollbar {
    width: auto;
    margin-right: calc(var(--fancybox-body-margin, 0px) + var(--fancybox-scrollbar-compensate, 0px));
    overflow: hidden !important;
    overscroll-behavior-y: none;
}

.fancybox__container {
    --fancybox-color: #dbdbdb;
    --fancybox-hover-color: #fff;
    --fancybox-bg: rgba(24, 24, 27, 0.98);
    --fancybox-slide-gap: 0.625rem;
    --f-spinner-width: 3.125rem;
    --f-spinner-height: 3.125rem;
    --f-spinner-color-1: rgba(255, 255, 255, 0.1);
    --f-spinner-color-2: #bbb;
    --f-spinner-stroke: 3.65;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    direction: ltr;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    color: #f8f8f8;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    overflow: visible;
    z-index: var(--fancybox-zIndex, 1050);
    outline: none;
    transform-origin: top left;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: none;
    text-size-adjust: 100%;
    overscroll-behavior-y: contain;
}

.fancybox__container *,
.fancybox__container *::before,
.fancybox__container *::after {
    box-sizing: inherit;
}

.fancybox__container::backdrop {
    background-color: rgba(0, 0, 0, 0);
}

.fancybox__backdrop {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: -1;
    background: var(--fancybox-bg);
    opacity: var(--fancybox-opacity, 1);
    will-change: opacity;
}

.fancybox__carousel {
    position: relative;
    box-sizing: border-box;
    flex: 1;
    min-height: 0;
    z-index: 10;
    overflow-y: visible;
    overflow-x: clip;
}

.fancybox__viewport {
    width: 100%;
    height: 100%;
}

.fancybox__viewport.is-draggable {
    cursor: move;
    cursor: grab;
}

.fancybox__viewport.is-dragging {
    cursor: move;
    cursor: grabbing;
}

.fancybox__track {
    display: flex;
    margin: 0 auto;
    height: 100%;
}

.fancybox__slide {
    flex: 0 0 auto;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 100%;
    margin: 0 var(--fancybox-slide-gap) 0 0;
    padding: 0.25rem;
    overflow: auto;
    overscroll-behavior: contain;
    transform: translate3d(0, 0, 0);
    backface-visibility: hidden;
}

.fancybox__container:not(.is-compact) .fancybox__slide.has-close-btn {
    padding-top: 2.5rem;
}

.fancybox__slide.has-iframe,
.fancybox__slide.has-video,
.fancybox__slide.has-html5video {
    overflow: hidden;
}

.fancybox__slide.has-image {
    overflow: hidden;
}

.fancybox__slide.has-image.is-animating,
.fancybox__slide.has-image.is-selected {
    overflow: visible;
}

.fancybox__slide::before,
.fancybox__slide::after {
    content: "";
    flex: 0 0 0;
    margin: auto;
}

.fancybox__backdrop:empty,
.fancybox__viewport:empty,
.fancybox__track:empty,
.fancybox__slide:empty {
    display: block;
}

.fancybox__content {
    align-self: center;
    display: flex;
    flex-direction: column;
    position: relative;
    margin: 0;
    padding: 2rem;
    max-width: 100%;
    color: var(--fancybox-content-color, #374151);
    background: var(--fancybox-content-bg, #fff);
    cursor: default;
    border-radius: 0;
    z-index: 20;
}

.is-loading .fancybox__content {
    opacity: 0;
}

.is-draggable .fancybox__content {
    cursor: move;
    cursor: grab;
}

.can-zoom_in .fancybox__content {
    cursor: zoom-in;
}

.can-zoom_out .fancybox__content {
    cursor: zoom-out;
}

.is-dragging .fancybox__content {
    cursor: move;
    cursor: grabbing;
}

.fancybox__content [data-selectable],
.fancybox__content [contenteditable] {
    cursor: auto;
}

.fancybox__slide.has-image > .fancybox__content {
    padding: 0;
    background: rgba(0, 0, 0, 0);
    min-height: 0.0625rem;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    transition: none;
    transform: translate3d(0, 0, 0);
    backface-visibility: hidden;
}

.fancybox__slide.has-image > .fancybox__content > picture > img {
    width: 100%;
    height: auto;
    max-height: 100%;
}

.is-animating .fancybox__content,
.is-dragging .fancybox__content {
    will-change: transform, width, height;
}

.fancybox-image {
    margin: auto;
    display: block;
    width: 100%;
    height: 100%;
    min-height: 0;
    -o-object-fit: contain;
    object-fit: contain;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    filter: blur(0px);
}

.fancybox__caption {
    align-self: center;
    max-width: 100%;
    flex-shrink: 0;
    margin: 0;
    padding: 0.875rem 0 0.25rem 0;
    overflow-wrap: anywhere;
    line-height: 1.375;
    color: var(--fancybox-color, currentColor);
    opacity: var(--fancybox-opacity, 1);
    cursor: auto;
    visibility: visible;
}

.is-loading .fancybox__caption,
.is-closing .fancybox__caption {
    opacity: 0;
    visibility: hidden;
}

.is-compact .fancybox__caption {
    padding-bottom: 0;
}

.f-button.is-close-btn {
    --f-button-svg-stroke-width: 2;
    position: absolute;
    top: 0;
    right: 0.5rem;
    z-index: 40;
}

.fancybox__content > .f-button.is-close-btn {
    --f-button-width: 2.125rem;
    --f-button-height: 2.125rem;
    --f-button-border-radius: 0.25rem;
    --f-button-color: var(--fancybox-color, #fff);
    --f-button-hover-color: var(--fancybox-color, #fff);
    --f-button-bg: transparent;
    --f-button-hover-bg: transparent;
    --f-button-active-bg: transparent;
    --f-button-svg-width: 1.375rem;
    --f-button-svg-height: 1.375rem;
    position: absolute;
    top: -2.375rem;
    right: 0;
    opacity: 0.75;
}

.is-loading .fancybox__content > .f-button.is-close-btn {
    visibility: hidden;
}

.is-zooming-out .fancybox__content > .f-button.is-close-btn {
    visibility: hidden;
}

.fancybox__content > .f-button.is-close-btn:hover {
    opacity: 1;
}

.fancybox__footer {
    padding: 0;
    margin: 0;
    position: relative;
}

.fancybox__footer .fancybox__caption {
    width: 100%;
    padding: 1.5rem;
    opacity: var(--fancybox-opacity, 1);
    transition: all 0.25s ease;
}

.is-compact .fancybox__footer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 20;
    background: rgba(24, 24, 27, 0.5);
}

.is-compact .fancybox__footer .fancybox__caption {
    padding: 0.75rem;
}

.fancybox__nav {
    --f-button-width: 3.125rem;
    --f-button-height: 3.125rem;
    --f-button-border: 0;
    --f-button-border-radius: 50%;
    --f-button-color: var(--fancybox-color);
    --f-button-hover-color: var(--fancybox-hover-color);
    --f-button-bg: transparent;
    --f-button-hover-bg: rgba(24, 24, 27, 0.3);
    --f-button-active-bg: rgba(24, 24, 27, 0.5);
    --f-button-shadow: none;
    --f-button-transition: all 0.15s ease;
    --f-button-transform: none;
    --f-button-svg-width: 1.625rem;
    --f-button-svg-height: 1.625rem;
    --f-button-svg-stroke-width: 2.5;
    --f-button-svg-fill: none;
    --f-button-svg-filter: drop-shadow(0.0625rem 0.0625rem 0.0625rem rgba(24, 24, 27, 0.5));
    --f-button-svg-disabled-opacity: 0.65;
    --f-button-next-pos: 1rem;
    --f-button-prev-pos: 1rem;
    opacity: var(--fancybox-opacity, 1);
}

.fancybox__nav .f-button:before {
    position: absolute;
    content: "";
    top: -1.875rem;
    right: -1.25rem;
    left: -1.25rem;
    bottom: -1.875rem;
    z-index: 1;
}

.is-idle .fancybox__nav {
    animation: 0.15s ease-out both f-fadeOut;
}

.is-idle.is-compact .fancybox__footer {
    pointer-events: none;
    animation: 0.15s ease-out both f-fadeOut;
}

.fancybox__slide > .f-spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: var(--f-spinner-top, calc(var(--f-spinner-width) * -0.5)) 0 0 var(--f-spinner-left, calc(var(--f-spinner-height) * -0.5));
    z-index: 30;
    cursor: pointer;
}

.fancybox-protected {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.fancybox-ghost {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    -o-object-fit: contain;
    object-fit: contain;
    z-index: 40;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    pointer-events: none;
}

.fancybox-focus-guard {
    outline: none;
    opacity: 0;
    position: fixed;
    pointer-events: none;
}

.fancybox__container:not([aria-hidden]) {
    opacity: 0;
}

.fancybox__container.is-animated[aria-hidden=false] > *:not(.fancybox__backdrop, .fancybox__carousel),
.fancybox__container.is-animated[aria-hidden=false] .fancybox__carousel > *:not(.fancybox__viewport),
.fancybox__container.is-animated[aria-hidden=false] .fancybox__slide > *:not(.fancybox__content) {
    animation: var(--f-interface-enter-duration, 0.25s) ease 0.1s backwards f-fadeIn;
}

.fancybox__container.is-animated[aria-hidden=false] .fancybox__backdrop {
    animation: var(--f-backdrop-enter-duration, 0.35s) ease backwards f-fadeIn;
}

.fancybox__container.is-animated[aria-hidden=true] > *:not(.fancybox__backdrop, .fancybox__carousel),
.fancybox__container.is-animated[aria-hidden=true] .fancybox__carousel > *:not(.fancybox__viewport),
.fancybox__container.is-animated[aria-hidden=true] .fancybox__slide > *:not(.fancybox__content) {
    animation: var(--f-interface-exit-duration, 0.15s) ease forwards f-fadeOut;
}

.fancybox__container.is-animated[aria-hidden=true] .fancybox__backdrop {
    animation: var(--f-backdrop-exit-duration, 0.35s) ease forwards f-fadeOut;
}

.has-iframe .fancybox__content,
.has-map .fancybox__content,
.has-pdf .fancybox__content,
.has-youtube .fancybox__content,
.has-vimeo .fancybox__content,
.has-html5video .fancybox__content {
    max-width: 100%;
    flex-shrink: 1;
    min-height: 0.0625rem;
    overflow: visible;
}

.has-iframe .fancybox__content,
.has-map .fancybox__content,
.has-pdf .fancybox__content {
    width: calc(100% - 7.5rem);
    height: 90%;
}

.fancybox__container.is-compact .has-iframe .fancybox__content,
.fancybox__container.is-compact .has-map .fancybox__content,
.fancybox__container.is-compact .has-pdf .fancybox__content {
    width: 100%;
    height: 100%;
}

.has-youtube .fancybox__content,
.has-vimeo .fancybox__content,
.has-html5video .fancybox__content {
    width: 60rem;
    height: 33.75rem;
    max-width: 100%;
    max-height: 100%;
}

.has-map .fancybox__content,
.has-pdf .fancybox__content {
    padding: 0;
    background: rgba(24, 24, 27, 0.9);
    color: #fff;
}

.has-youtube .fancybox__content,
.has-vimeo .fancybox__content,
.has-html5video .fancybox__content,
.has-video .fancybox__content,
.has-iframe .fancybox__content {
    padding: 0;
    background: transparent;
    color: #fff;
}

.has-map .fancybox__content {
    background: #e5e3df;
}

.fancybox__html5video,
.fancybox__iframe {
    border: 0;
    display: block;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0);
}

.fancybox-placeholder {
    border: 0 !important;
    clip: rect(0.0625rem, 0.0625rem, 0.0625rem, 0.0625rem) !important;
    -webkit-clip-path: inset(50%) !important;
    clip-path: inset(50%) !important;
    height: 0.0625rem !important;
    margin: -0.0625rem !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 0.0625rem !important;
    white-space: nowrap !important;
}

.f-carousel__thumbs {
    --f-thumb-width: 6rem;
    --f-thumb-height: 4.5rem;
    --f-thumb-outline: 0;
    --f-thumb-outline-color: #5eb0ef;
    --f-thumb-opacity: 1;
    --f-thumb-hover-opacity: 1;
    --f-thumb-selected-opacity: 1;
    --f-thumb-border-radius: 0.125rem;
    --f-thumb-offset: 0px;
    --f-button-next-pos: 0;
    --f-button-prev-pos: 0;
}

.f-carousel__thumbs.is-classic {
    --f-thumb-gap: 0.5rem;
    --f-thumb-opacity: 0.5;
    --f-thumb-hover-opacity: 1;
    --f-thumb-selected-opacity: 1;
}

.f-carousel__thumbs.is-modern {
    --f-thumb-gap: 0.25rem;
    --f-thumb-extra-gap: 1rem;
    --f-thumb-clip-width: 2.875rem;
}

.f-thumbs {
    position: relative;
    flex: 0 0 auto;
    margin: 0;
    overflow: hidden;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    perspective: 62.5rem;
    transform: translateZ(0);
}

.f-thumbs .f-spinner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 0.125rem;
    background-image: linear-gradient(#ebeff2, #e2e8f0);
    z-index: -1;
}

.f-thumbs .f-spinner svg {
    display: none;
}

.f-thumbs.is-vertical {
    height: 100%;
}

.f-thumbs__viewport {
    width: 100%;
    height: auto;
    overflow: hidden;
    transform: translate3d(0, 0, 0);
}

.f-thumbs__track {
    display: flex;
}

.f-thumbs__slide {
    position: relative;
    flex: 0 0 auto;
    box-sizing: content-box;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    width: var(--f-thumb-width);
    height: var(--f-thumb-height);
    overflow: visible;
    cursor: pointer;
}

.f-thumbs__slide.is-loading img {
    opacity: 0;
}

.is-classic .f-thumbs__viewport {
    height: 100%;
}

.is-modern .f-thumbs__track {
    width: -moz-max-content;
    width: max-content;
}

.is-modern .f-thumbs__track::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc((var(--f-thumb-clip-width, 0)) * -0.5);
    width: calc(var(--width, 0) * 0.0625rem + var(--f-thumb-clip-width, 0));
    cursor: pointer;
}

.is-modern .f-thumbs__slide {
    width: var(--f-thumb-clip-width);
    transform: translate3d(calc(var(--shift, 0) * -0.0625rem), 0, 0);
    transition: none;
    pointer-events: none;
}

.is-modern.is-resting .f-thumbs__slide {
    transition: transform 0.33s ease;
}

.is-modern.is-resting .f-thumbs__slide__button {
    transition: -webkit-clip-path 0.33s ease;
    transition: clip-path 0.33s ease;
    transition: clip-path 0.33s ease, -webkit-clip-path 0.33s ease;
}

.is-using-tab .is-modern .f-thumbs__slide:focus-within {
    filter: drop-shadow(-0.0625rem 0px 0px var(--f-thumb-outline-color)) drop-shadow(0.125rem 0px 0px var(--f-thumb-outline-color)) drop-shadow(0px -0.0625rem 0px var(--f-thumb-outline-color)) drop-shadow(0px 0.125rem 0px var(--f-thumb-outline-color));
}

.f-thumbs__slide__button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: var(--f-thumb-width);
    height: 100%;
    margin: 0 -100% 0 -100%;
    padding: 0;
    border: 0;
    position: relative;
    border-radius: var(--f-thumb-border-radius);
    overflow: hidden;
    background: rgba(0, 0, 0, 0);
    outline: none;
    cursor: pointer;
    pointer-events: auto;
    touch-action: manipulation;
    opacity: var(--f-thumb-opacity);
    transition: opacity 0.2s ease;
}

.f-thumbs__slide__button:hover {
    opacity: var(--f-thumb-hover-opacity);
}

.f-thumbs__slide__button:focus:not(:focus-visible) {
    outline: none;
}

.f-thumbs__slide__button:focus-visible {
    outline: none;
    opacity: var(--f-thumb-selected-opacity);
}

.is-modern .f-thumbs__slide__button {
    --clip-path: inset(0 calc(((var(--f-thumb-width, 0) - var(--f-thumb-clip-width, 0))) * (1 - var(--progress, 0)) * 0.5) round var(--f-thumb-border-radius, 0));
    -webkit-clip-path: var(--clip-path);
    clip-path: var(--clip-path);
}

.is-classic .is-nav-selected .f-thumbs__slide__button {
    opacity: var(--f-thumb-selected-opacity);
}

.is-classic .is-nav-selected .f-thumbs__slide__button::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: auto;
    bottom: 0;
    border: var(--f-thumb-outline, 0) solid var(--f-thumb-outline-color, transparent);
    border-radius: var(--f-thumb-border-radius);
    animation: f-fadeIn 0.2s ease-out;
    z-index: 10;
}

.f-thumbs__slide__img {
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: var(--f-thumb-offset);
    box-sizing: border-box;
    pointer-events: none;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: var(--f-thumb-border-radius);
}

.f-thumbs.is-horizontal .f-thumbs__track {
    padding: 0.5rem 0 0.75rem 0;
}

.f-thumbs.is-horizontal .f-thumbs__slide {
    margin: 0 var(--f-thumb-gap) 0 0;
}

.f-thumbs.is-vertical .f-thumbs__track {
    flex-wrap: wrap;
    padding: 0 0.5rem;
}

.f-thumbs.is-vertical .f-thumbs__slide {
    margin: 0 0 var(--f-thumb-gap) 0;
}

.fancybox__thumbs {
    --f-thumb-width: 6rem;
    --f-thumb-height: 4.5rem;
    --f-thumb-border-radius: 0.125rem;
    --f-thumb-outline: 0.125rem;
    --f-thumb-outline-color: #ededed;
    position: relative;
    opacity: var(--fancybox-opacity, 1);
    transition: max-height 0.35s cubic-bezier(0.23, 1, 0.32, 1);
}

.fancybox__thumbs.is-classic {
    --f-thumb-gap: 0.5rem;
    --f-thumb-opacity: 0.5;
    --f-thumb-hover-opacity: 1;
}

.fancybox__thumbs.is-classic .f-spinner {
    background-image: linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));
}

.fancybox__thumbs.is-modern {
    --f-thumb-gap: 0.25rem;
    --f-thumb-extra-gap: 1rem;
    --f-thumb-clip-width: 2.875rem;
    --f-thumb-opacity: 1;
    --f-thumb-hover-opacity: 1;
}

.fancybox__thumbs.is-modern .f-spinner {
    background-image: linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.05));
}

.fancybox__thumbs.is-horizontal {
    padding: 0 var(--f-thumb-gap);
}

.fancybox__thumbs.is-vertical {
    padding: var(--f-thumb-gap) 0;
}

.is-compact .fancybox__thumbs {
    --f-thumb-width: 4rem;
    --f-thumb-clip-width: 2rem;
    --f-thumb-height: 3rem;
    --f-thumb-extra-gap: 0.625rem;
}

.fancybox__thumbs.is-masked {
    max-height: 0px !important;
}

.is-closing .fancybox__thumbs {
    transition: none !important;
}

.fancybox__toolbar {
    --f-progress-color: var(--fancybox-color, rgba(255, 255, 255, 0.94));
    --f-button-width: 2.875rem;
    --f-button-height: 2.875rem;
    --f-button-color: var(--fancybox-color);
    --f-button-hover-color: var(--fancybox-hover-color);
    --f-button-bg: rgba(24, 24, 27, 0.65);
    --f-button-hover-bg: rgba(70, 70, 73, 0.65);
    --f-button-active-bg: rgba(90, 90, 93, 0.65);
    --f-button-border-radius: 0;
    --f-button-svg-width: 1.5rem;
    --f-button-svg-height: 1.5rem;
    --f-button-svg-stroke-width: 1.5;
    --f-button-svg-filter: drop-shadow(0.0625rem 0.0625rem 0.0625rem rgba(24, 24, 27, 0.15));
    --f-button-svg-fill: none;
    --f-button-svg-disabled-opacity: 0.65;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif;
    color: var(--fancybox-color, currentColor);
    opacity: var(--fancybox-opacity, 1);
    text-shadow: var(--fancybox-toolbar-text-shadow, 1px 1px 1px rgba(0, 0, 0, 0.5));
    pointer-events: none;
    z-index: 20;
}

.fancybox__toolbar :focus-visible {
    z-index: 1;
}

.fancybox__toolbar.is-absolute,
.is-compact .fancybox__toolbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.is-idle .fancybox__toolbar {
    pointer-events: none;
    animation: 0.15s ease-out both f-fadeOut;
}

.fancybox__toolbar__column {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
}

.fancybox__toolbar__column.is-left,
.fancybox__toolbar__column.is-right {
    flex-grow: 1;
    flex-basis: 0;
}

.fancybox__toolbar__column.is-right {
    display: flex;
    justify-content: flex-end;
    flex-wrap: nowrap;
}

.fancybox__infobar {
    padding: 0 0.3125rem;
    line-height: var(--f-button-height);
    text-align: center;
    font-size: 1.0625rem;
    font-variant-numeric: tabular-nums;
    -webkit-font-smoothing: subpixel-antialiased;
    cursor: default;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.fancybox__infobar span {
    padding: 0 0.3125rem;
}

.fancybox__infobar:not(:first-child):not(:last-child) {
    background: var(--f-button-bg);
}

[data-fancybox-toggle-slideshow] {
    position: relative;
}

[data-fancybox-toggle-slideshow] .f-progress {
    height: 100%;
    opacity: 0.3;
}

[data-fancybox-toggle-slideshow] svg g:first-child {
    display: flex;
}

[data-fancybox-toggle-slideshow] svg g:last-child {
    display: none;
}

.has-slideshow [data-fancybox-toggle-slideshow] svg g:first-child {
    display: none;
}

.has-slideshow [data-fancybox-toggle-slideshow] svg g:last-child {
    display: flex;
}

[data-fancybox-toggle-fullscreen] svg g:first-child {
    display: flex;
}

[data-fancybox-toggle-fullscreen] svg g:last-child {
    display: none;
}

:-webkit-full-screen [data-fancybox-toggle-fullscreen] svg g:first-child {
    display: none;
}

:fullscreen [data-fancybox-toggle-fullscreen] svg g:first-child {
    display: none;
}

:-webkit-full-screen [data-fancybox-toggle-fullscreen] svg g:last-child {
    display: flex;
}

:fullscreen [data-fancybox-toggle-fullscreen] svg g:last-child {
    display: flex;
}

.f-progress {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 0.1875rem;
    transform: scaleX(0);
    transform-origin: 0;
    transition-property: transform;
    transition-timing-function: linear;
    background: var(--f-progress-color, var(--f-carousel-theme-color, #0091ff));
    z-index: 30;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    pointer-events: none;
}

@media (max-width: 61.99875em) {
    :root {
        --headerHeight: 3.9375rem;
    }
}

::-moz-selection {
    background: var(--akcentnyy);
    color: #fff;
}

::selection {
    background: var(--akcentnyy);
    color: #fff;
}

::-webkit-selection {
    background: var(--akcentnyy);
    color: #fff;
}

input[type=search]::-webkit-search-cancel-button {
    -webkit-appearance: none;
}

input[type=search]::-moz-search-clear-button {
    display: none;
}

input[type=search]::search-cancel-button,
input[type=search]::search-clear-button {
    display: none;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0;
  /* <-- Apparently some margin are still there even though it's hidden */
}

input[type=number] {
  -moz-appearance: textfield;
  /* Firefox */
}

.container {
  width: 100%;
  max-width: 103.75rem;
  margin-left: auto;
  margin-right: auto;
  padding: 0 1.25rem;
}
@media (max-width: 61.99875em) {
  .container {
    padding: 0 1rem;
  }
}

.container-large {
  max-width: 92.125rem;
  margin-left: auto;
  margin-right: auto;
  padding: 0 1.25rem;
}
@media (max-width: 61.99875em) {
  .container-large {
    padding: 0 1rem;
  }
}

.swiper-pagination-lock,
.swiper-button-lock {
  display: none !important;
}

svg {
  flex-shrink: 0;
}

svg:not(.svg-full) *[fill] {
  fill: currentColor;
}

svg:not(.svg-full) *[stroke] {
  stroke: currentColor;
}

.slick-slide {
  outline: none;
}

.anim-link {
  position: relative;
  padding-bottom: 0.25rem;
  margin-bottom: -0.25rem;
}

.anim-link::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%) scaleX(0);
  transform-origin: center;
  width: 100%;
  height: 0.0625rem;
  background-color: var(--akcentnyy);
  transition: transform 0.4s ease;
}

.anim-link:hover::after {
  transform: translateX(-50%) scaleX(1);
}

@supports (margin-bottom: clamp( 3.75rem , 2.8544776119rem  +  4.4776119403vw , 7.5rem )) {
  .mb-120 {
    margin-bottom: clamp( 3.75rem , 2.8544776119rem  +  4.4776119403vw , 7.5rem );
  }
}
@supports not (margin-bottom: clamp( 3.75rem , 2.8544776119rem  +  4.4776119403vw , 7.5rem )) {
  .mb-120 {
    margin-bottom: calc(3.75rem + 3.75 * (100vw - 20rem) / 83.75);
  }
}

.admin-book-form-page {
  background: #f7fcfc;
}
.admin-book-form-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-book-form-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-book-form-page__head-main {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
}
.admin-book-form-page__back {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  color: #9399a7;
  text-decoration: none;
}
.admin-book-form-page__back-icon {
  display: block;
  width: 2rem;
  height: 2rem;
  fill: currentColor;
  stroke: currentColor;
}
.admin-book-form-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-book-form-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-book-form-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-book-form-page__save--card.btn {
  display: none;
}
.admin-book-form-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-book-form-page__card {
  background: #fff;
  border-radius: 1.25rem;
  padding: 1.25rem;
}
.admin-book-form-page__layout-row {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
}
.admin-book-form-page__cover-col {
  display: flex;
  flex-shrink: 0;
  flex-direction: column;
  gap: 0.5rem;
  width: 19.375rem;
}
.admin-book-form-page__cover-hint {
  margin: 0;
  font-size: 0.75rem;
  line-height: 1.45;
  color: #9399a7;
}
.admin-book-form-page__cover {
  position: relative;
  flex-shrink: 0;
  width: 19.375rem;
  min-height: 27.375rem;
  border-radius: 0.625rem;
  overflow: hidden;
}
.admin-book-form-page__cover--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0.125rem dashed #c5c6d6;
  background: #fff;
  box-shadow: none;
}
.admin-book-form-page__cover:not(.admin-book-form-page__cover--empty) {
  box-shadow: 0 0.07375rem 0.514375rem rgba(0, 0, 0, 0.15);
}
.admin-book-form-page__cover-img {
  display: block;
  width: 100%;
  height: auto;
}
.admin-book-form-page__cover-img[hidden] {
  display: none;
}
.admin-book-form-page__cover-pick.btn--soft {
  min-height: 2.5rem;
  padding: 0.5rem 0.75rem;
  border-radius: 1rem;
  background: rgba(71, 184, 178, 0.1);
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.5;
  color: #006d6d;
}
.admin-book-form-page__cover-pick.btn--soft[hidden] {
  display: none !important;
}
.admin-book-form-page__cover--filled .admin-book-form-page__cover-pick.btn--soft {
  display: none !important;
}
.admin-book-form-page__cover-edit {
  position: absolute;
  right: 0.75rem;
  bottom: 0.75rem;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  border: 0;
  border-radius: 0.75rem;
  background: #006d6d;
  color: #fff;
  cursor: pointer;
  line-height: 0;
}
.admin-book-form-page__cover-remove {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
}
.admin-book-form-page__cover-remove[hidden] {
  display: none !important;
}
.admin-book-form-page__cover--filled .admin-book-form-page__cover-edit:not([hidden]) {
  display: inline-flex;
}
.admin-book-form-page__cover-edit-icon {
  width: 1.5rem;
  height: 1.5rem;
}
.admin-book-form-page__form {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 0.75rem;
  min-width: 0;
}
.admin-book-form-page__form .lk-field {
  margin: 0;
}
.admin-book-form-page__form .lk-field__control:not(.admin-book-form-page__textarea) {
  min-height: 3.25rem;
}
.admin-book-form-page__textarea {
  min-height: 6.25rem;
  height: 6.25rem;
  resize: vertical;
}
.admin-book-form-page__textarea--purchase {
  min-height: 5.25rem;
  height: 5.25rem;
}
.admin-book-form-page .lk-field--select .lk-field__input-wrap {
  position: relative;
  display: block;
}
.admin-book-form-page .lk-field--select .lk-field__control {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}
.admin-book-form-page__select-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.5rem;
  height: 1.5rem;
  color: #767e8e;
  pointer-events: none;
  transform: translateY(-50%);
}
@media (max-width: 74.99875em) {
  .admin-book-form-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
    gap: 1rem;
  }
  .admin-book-form-page__head-main {
    flex: 1;
    min-width: 0;
  }
  .admin-book-form-page__back-icon {
    width: 1.5rem;
    height: 1.5rem;
  }
  .admin-book-form-page__title {
    line-height: 1.2;
  }
  .admin-book-form-page__save:not(.admin-book-form-page__save--card) {
    display: none;
  }
  .admin-book-form-page__save--card.btn {
    display: flex;
    align-self: stretch;
    width: 100%;
  }
  .admin-book-form-page__layout-row {
    gap: 1rem;
  }
  .admin-book-form-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-book-form-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-book-form-page__card {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin: 0.5rem;
    padding: 1rem;
    border-radius: 1rem;
  }
  .admin-book-form-page__layout-row {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-book-form-page__cover-col {
    width: 100%;
    max-width: 19.375rem;
    align-self: center;
  }
  .admin-book-form-page__cover {
    width: 100%;
    max-width: 19.375rem;
    align-self: center;
  }
}

.admin-books-page {
  background: #f7fcfc;
}
.admin-books-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.admin-books-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-books-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-books-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-books-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-books-page__head-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.admin-books-page__head-actions .profile-page__menu-btn {
  display: none;
}
.admin-books-page__filters {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.admin-books-page__chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.375rem 0.75rem;
  border-radius: 1.875rem;
  border: 0;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  cursor: pointer;
  background: rgba(97, 222, 218, 0.2);
  color: #157c7a;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
@media (any-hover: hover) {
  .admin-books-page__chip:hover {
    color: #157c7a;
  }
}
.admin-books-page__chip--active {
  background: #02918e;
  color: #fff;
}
@media (any-hover: hover) {
  .admin-books-page__chip--active:hover {
    color: #fff;
  }
}
.admin-books-page__list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-books-page__card {
  background: #fff;
  border-radius: 1.25rem;
  padding: 1.25rem;
  display: flex;
  align-items: center;
  gap: 2rem;
  justify-content: space-between;
}
.admin-books-page__card-main {
  flex: 1;
  min-width: 0;
}
.admin-books-page__card-media {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
}
.admin-books-page__book-cover {
  width: 6.875rem;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.3125rem;
  flex-shrink: 0;
  box-shadow: 0 0.63px 0.27438rem rgba(0, 0, 0, 0.15);
}
.admin-books-page__card-info {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  flex: 1;
  min-width: 0;
}
.admin-books-page__tag {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  padding: 0.25rem 0.75rem;
  border-radius: 1.875rem;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
}
.admin-books-page__tag--arabic {
  background: rgba(189, 94, 234, 0.2);
  color: #9038b8;
}
.admin-books-page__tag--kyrgyz {
  background: rgba(72, 173, 173, 0.2);
  color: #0d5757;
}
.admin-books-page__card-texts {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-books-page__book-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.2;
  color: #111a28;
}
.admin-books-page__card-link {
  color: inherit;
  text-decoration: none;
}
@media (any-hover: hover) {
  .admin-books-page__card-link:hover {
    color: #006d6d;
  }
}
.admin-books-page__book-desc {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #5a6477;
}
.admin-books-page__card-actions {
  flex-shrink: 0;
  position: relative;
}
.admin-books-page__inline-form {
  display: contents;
}
.admin-books-page__menu-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  padding: 0.5rem;
  border: 0;
  border-radius: 1rem;
  background: rgba(71, 184, 178, 0.1);
  color: #0c5955;
  cursor: pointer;
  transition: background 0.2s;
}
@media (any-hover: hover) {
  .admin-books-page__menu-btn:hover {
    background: rgba(71, 184, 178, 0.18);
  }
}
.admin-books-page__menu-icon {
  width: 2rem;
  height: 2rem;
  flex-shrink: 0;
}
.admin-books-page__dropdown {
  position: absolute;
  top: 50%;
  right: 100%;
  z-index: 20;
  width: 13.75rem;
  margin-right: 0.5rem;
  padding: 0.5rem;
  background: #fff;
  border-radius: 1.25rem;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 0;
}
.admin-books-page__dropdown[hidden] {
  display: none;
}
.admin-books-page__dropdown-item {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0 0.5rem;
  height: 2.5rem;
  border: 0;
  background: transparent;
  border-radius: 1rem;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #5d5d6d;
  cursor: pointer;
  text-align: left;
  text-decoration: none;
  transition: background 0.2s;
}
@media (any-hover: hover) {
  .admin-books-page__dropdown-item:hover {
    background: #f0f0f5;
  }
}
.admin-books-page__dropdown-item--delete {
  color: #ef4444;
}
.admin-books-page__dropdown-icon-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  color: #5d5d6d;
}
.admin-books-page__dropdown-icon-wrap--edit {
  color: #5d5d6d;
}
.admin-books-page__dropdown-icon {
  width: 1rem;
  height: 1rem;
}
.admin-books-page__dropdown-item--delete .admin-books-page__dropdown-icon-wrap {
  color: #ef4444;
}
.admin-books-page__pagination {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.375rem;
  padding-top: 0.25rem;
}
.admin-books-page__page-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 0;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  color: #313241;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.admin-books-page__page-btn svg {
  width: 1rem;
  height: 1rem;
  color: currentColor;
}
.admin-books-page__page-btn--active {
  background: #15b3ae;
  color: #fff;
  font-weight: 700;
}
.admin-books-page__page-btn--control {
  color: #313241;
}
@media (max-width: 74.99875em) {
  .admin-books-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-books-page__head-actions .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-books-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-books-page__filters, .admin-books-page__list, .admin-books-page__pagination {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .admin-books-page__filters {
    padding-top: 0.75rem;
  }
  .admin-books-page__list {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  .admin-books-page__pagination {
    padding-bottom: 1rem;
  }
  .admin-books-page__head-actions .btn--admin {
    display: none;
  }
  .admin-books-page__card {
    border-radius: 1rem;
    padding: 1rem;
    gap: 0.75rem;
    align-items: flex-start;
  }
  .admin-books-page__book-cover {
    width: 5rem;
    height: auto;
  }
  .admin-books-page__book-title {
    font-size: 1.125rem;
  }
  .admin-books-page__book-desc {
    font-size: 0.875rem;
  }
}

.admin-certificates-page {
  background: #f7fcfc;
}
.admin-certificates-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-certificates-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-certificates-page__head .profile-page__menu-btn {
  display: none;
}
.admin-certificates-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-certificates-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-certificates-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-certificates-page__head-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-left: auto;
}
.admin-certificates-page__head-actions .btn.btn--primary {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-certificates-page__status, .admin-certificates-page__errors {
  margin: 0;
  font-size: 1rem;
  line-height: 1.4;
  color: #128d50;
}
.admin-certificates-page__errors {
  color: #c0392b;
  list-style: none;
  padding: 0;
}
.admin-certificates-page__cards {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-certificates-page__actions {
  display: none;
}
.admin-certificates-page__grid {
  display: flex;
  align-items: stretch;
  gap: 1.5625rem;
}
.admin-certificates-page__card {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1.25rem;
  min-width: 0;
  padding: 1.25rem;
  border-radius: 1.25rem;
  background: #fff;
}
.admin-certificates-page__card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-certificates-page__card-head .btn--admin {
  min-height: 0;
  padding: 0.75rem 1.25rem 0.5rem;
}
.admin-certificates-page__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-certificates-page__toggles {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-certificates-page__toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 0.75rem;
  border-bottom: 0.0625rem solid #f0f0f5;
}
.admin-certificates-page__toggle-row--last {
  padding-bottom: 0;
  border-bottom: 0;
}
.admin-certificates-page__toggle-copy {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
.admin-certificates-page__toggle-title {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  color: #0d172a;
}
.admin-certificates-page__toggle-text {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  color: #7a8393;
}
.admin-certificates-page__template-drop {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  width: 100%;
  min-height: 7.125rem;
  padding: 1.625rem 1rem;
  border: 0.125rem dashed #c5c6d6;
  border-radius: 1.5rem;
  background: #fff;
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
@media (any-hover: hover) {
  .admin-certificates-page__template-drop:hover {
    border-color: #006d6d;
    background: rgba(71, 184, 178, 0.06);
  }
}
.admin-certificates-page__template-icon {
  width: 1.25rem;
  height: 1.25rem;
  color: #4d4d65;
}
.admin-certificates-page__template-name {
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  text-align: center;
  color: #4d4d65;
}
.admin-certificates-page__template-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  font-family: var(--font-family);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 0.875rem;
  color: #9696b2;
}
.admin-certificates-page__template-dot {
  width: 0.125rem;
  height: 0.125rem;
  border-radius: 50%;
  background: rgba(127, 136, 154, 0.6);
  flex-shrink: 0;
}
.admin-certificates-page__preview.profile-certificate__preview {
  flex: none;
  align-self: stretch;
  min-height: 50.375rem;
  padding: 1.5rem;
}

@media (max-width: 74.99875em) {
  .admin-certificates-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-certificates-page__head .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-certificates-page__head-actions {
    display: none;
  }
  .admin-certificates-page__actions {
    display: flex;
    padding: 0 0.5rem 0.5rem;
  }
  .admin-certificates-page__actions .btn {
    width: 100%;
  }
  .admin-certificates-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-certificates-page__cards {
    gap: 0.5rem;
    padding: 0.5rem;
  }
  .admin-certificates-page__grid {
    flex-direction: column;
  }
  .admin-certificates-page__card {
    padding: 1rem;
    border-radius: 1rem;
  }
  .admin-certificates-page__card-head {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-certificates-page__card-head .btn--admin {
    width: 100%;
  }
  .admin-certificates-page__card-title {
    font-size: 1.25rem;
  }
  .admin-certificates-page__toggle-row {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-certificates-page__preview.profile-certificate__preview {
    min-height: 30rem;
    padding: 1rem;
    border-radius: 1.5rem;
  }
  .admin-certificates-page .profile-certificate__preview-body h2 {
    font-size: 2.25rem;
  }
  .admin-certificates-page .profile-certificate__preview-body h3 {
    font-size: 1.5rem;
  }
  .admin-certificates-page .profile-certificate__preview-body div h4 + p {
    font-size: 1.125rem;
  }
  .admin-certificates-page .profile-certificate__logo {
    max-width: 12.5rem;
  }
}
.admin-contest-page {
  background: #f7fcfc;
}
.admin-contest-page__content {
  gap: 1.5625rem;
}
.admin-contest-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  min-height: 3.4375rem;
}
.admin-contest-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-contest-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-contest-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-contest-page__cards {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-contest-page__card {
  background: #fff;
  border-radius: 1.25rem;
  padding: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.admin-contest-page__card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-contest-page__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-contest-page__toggles {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-contest-page__toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 0.75rem;
  border-bottom: 0.0625rem solid #f0f0f5;
}
.admin-contest-page__toggle-row--last {
  padding-bottom: 0;
  border-bottom: 0;
}
.admin-contest-page__toggle-copy {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
.admin-contest-page__toggle-title {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  color: #0d172a;
}
.admin-contest-page__toggle-text {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  color: #7a8393;
}
.admin-contest-page__basic-fields {
  grid-template-rows: repeat(3, auto);
}
.admin-contest-page__stages {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-top: 1.25rem;
}
.admin-contest-page__stage {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.admin-contest-page__stage-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-contest-page__stage-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.admin-contest-page__stage-fields .lk-field {
  min-width: 0;
}
@media (max-width: 61.99875em) {
  .admin-contest-page__stage-fields {
    grid-template-columns: 1fr;
  }
}
.admin-contest-page__spare {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  max-width: 26.25rem;
}
.admin-contest-page__spare-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-contest-page__spare-hint {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.4;
  color: #808997;
}
.admin-contest-page__save--card.btn {
  display: none;
}
.admin-contest-page__status {
  margin: 0 0 0.75rem;
  font-size: 1rem;
  color: var(--color-brand);
}
.admin-contest-page__fields-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(17.5rem, 1fr));
  gap: 1.25rem 0.75rem;
}
.admin-contest-page__fields-grid .lk-field {
  min-width: 0;
}
@media (max-width: 61.99875em) {
  .admin-contest-page__fields-grid {
    grid-template-columns: 1fr;
    gap: 0.75rem;
  }
}
.admin-contest-page__section-hint {
  margin: 0 0 1rem;
  font-size: 1rem;
  line-height: 1.4;
  color: #7a8393;
}
.admin-contest-page__sections {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.admin-contest-page__section-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  border: 0.0625rem solid #f0f0f5;
  border-radius: 0.75rem;
  background: #fafafa;
}
.admin-contest-page__section-label {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-size: 1rem;
  color: #0d172a;
}
.admin-contest-page__section-actions {
  display: flex;
  gap: 0.375rem;
}
.admin-contest-page__section-btn {
  width: 2rem;
  height: 2rem;
  border: 0.0625rem solid #e6e6e6;
  border-radius: 0.5rem;
  background: #fff;
  color: #0d172a;
  cursor: pointer;
}
.admin-contest-page__section-meta {
  color: #7a8393;
  font-size: 0.875rem;
}
.admin-contest-page__content-blocks {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 1rem;
}
@media (max-width: 74.99875em) {
  .admin-contest-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-contest-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-contest-page__cards {
    padding: 0.5rem;
    gap: 0.5rem;
  }
  .admin-contest-page__card {
    border-radius: 1rem;
    padding: 1rem;
    gap: 1rem;
  }
  .admin-contest-page__card-head .admin-contest-page__save:not(.admin-contest-page__save--card) {
    display: none;
  }
  .admin-contest-page__save--card.btn {
    display: flex;
    align-self: stretch;
    width: 100%;
  }
  .admin-contest-page__card-title {
    font-size: 1.125rem;
  }
  .admin-contest-page__stage-title {
    font-size: 1.125rem;
  }
  .admin-contest-page__stages {
    margin-top: 1rem;
    gap: 1rem;
  }
  .admin-contest-page__stage {
    gap: 0.75rem;
  }
  .admin-contest-page__stage-fields {
    gap: 0.75rem;
  }
  .admin-contest-page__toggle-row {
    align-items: flex-start;
  }
  .admin-contest-page__toggle-title {
    font-size: 1.125rem;
  }
  .admin-contest-page__toggle-text {
    font-size: 0.875rem;
  }
}

.admin-mail-settings {
  gap: 1.375rem;
}
.admin-mail-settings__grid {
  gap: 1.125rem 0.75rem;
}
.admin-mail-settings__driver {
  grid-column: 1/-1;
  max-width: 26.25rem;
}
.admin-mail-settings__smtp[hidden] {
  display: none;
}
.admin-mail-settings__sendmail-hint {
  margin: 0 0 1.125rem;
}
.admin-mail-settings__sendmail-hint[hidden] {
  display: none;
}

.admin-settings-toggle + .admin-mail-settings__grid {
  margin-top: 1.125rem;
}

.admin-settings-toggle {
  display: flex;
  align-items: center;
  gap: 0.875rem;
  width: 100%;
  padding: 0.875rem 1rem;
  border: 0.0625rem solid #edf1f5;
  border-radius: 1rem;
  background: #f8fbfb;
  cursor: pointer;
}
.admin-settings-toggle__input {
  position: absolute;
  width: 0.0625rem;
  height: 0.0625rem;
  overflow: hidden;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  white-space: nowrap;
}
.admin-settings-toggle__control {
  position: relative;
  flex: 0 0 3.125rem;
  width: 3.125rem;
  height: 1.75rem;
  border-radius: 62.4375rem;
  background: #dce4ec;
  transition: background-color 0.2s ease, box-shadow 0.2s ease;
}
.admin-settings-toggle__control::before {
  content: "";
  position: absolute;
  top: 0.25rem;
  left: 0.25rem;
  width: 1.25rem;
  height: 1.25rem;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0.125rem 0.5rem rgba(13, 23, 42, 0.18);
  transition: transform 0.2s ease;
}
.admin-settings-toggle__copy {
  display: flex;
  flex-direction: column;
  gap: 0.1875rem;
  min-width: 0;
}
.admin-settings-toggle__title {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.25;
  color: #0d172a;
}
.admin-settings-toggle__text {
  font-size: 0.875rem;
  line-height: 1.35;
  color: #7a8393;
}
.admin-settings-toggle__input:checked + .admin-settings-toggle__control {
  background: var(--color-brand);
  box-shadow: 0 0.5rem 1.125rem rgba(50, 189, 174, 0.22);
}
.admin-settings-toggle__input:checked + .admin-settings-toggle__control::before {
  transform: translateX(1.375rem);
}
.admin-settings-toggle__input:focus-visible + .admin-settings-toggle__control {
  outline: 0.125rem solid rgba(50, 189, 174, 0.35);
  outline-offset: 0.1875rem;
}

@media (min-width: 75rem) {
  .lk-sidebar--admin {
    box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
  }
}
.lk-sidebar--admin .lk-sidebar__nav {
  gap: 0.5rem;
}
.lk-sidebar--admin .lk-sidebar__group {
  display: flex;
  flex-direction: column;
}
.lk-sidebar--admin .lk-sidebar__group-head {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0 0.5rem;
  border-radius: 0.25rem;
  color: #9399a7;
}
.lk-sidebar--admin .lk-sidebar__group-link {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  min-height: 2.75rem;
  color: inherit;
  text-decoration: none;
}
.lk-sidebar--admin .lk-sidebar__group-link .lk-sidebar__icon-wrap {
  width: 2.75rem;
  height: 2.75rem;
}
.lk-sidebar--admin .lk-sidebar__group-title {
  flex: 1;
  min-width: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5rem;
  letter-spacing: 0.01em;
}
.lk-sidebar--admin .lk-sidebar__group-toggle {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.lk-sidebar--admin .lk-sidebar__group-chevron {
  width: 1.5rem;
  height: 1.5rem;
  fill: transparent;
  stroke: #9399a7;
  transition: transform 0.28s ease;
  pointer-events: none;
}
.lk-sidebar--admin .lk-sidebar__group-chevron path {
  fill: transparent;
  stroke: #9399a7;
}
.lk-sidebar--admin .lk-sidebar__group.is-open .lk-sidebar__group-chevron {
  transform: rotate(180deg);
}
.lk-sidebar--admin .lk-sidebar__subnav {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.28s ease;
}
.lk-sidebar--admin .lk-sidebar__subnav-inner {
  min-height: 0;
  display: flex;
  flex-direction: column;
  padding-top: 0;
  transition: padding-top 0.28s ease;
}
.lk-sidebar--admin .lk-sidebar__group.is-open .lk-sidebar__subnav {
  grid-template-rows: 1fr;
}
.lk-sidebar--admin .lk-sidebar__group.is-open .lk-sidebar__subnav-inner {
  padding-top: 0.5rem;
}
@media (prefers-reduced-motion: reduce) {
  .lk-sidebar--admin .lk-sidebar__subnav,
  .lk-sidebar--admin .lk-sidebar__subnav-inner,
  .lk-sidebar--admin .lk-sidebar__group-chevron {
    transition: none;
  }
}
.lk-sidebar--admin .lk-sidebar__subitem {
  display: flex;
  align-items: center;
  min-height: 2.5rem;
  padding: 0.5rem 0.5rem 0.5rem 3.75rem;
  border-radius: 0.5rem;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5rem;
  letter-spacing: 0.01em;
  color: #9399a7;
  text-decoration: none;
}
.lk-sidebar--admin .lk-sidebar__subitem--active {
  background: #edfffe;
  font-weight: 600;
  color: #1d918b;
}
@media (max-width: 74.99875em) {
  .lk-sidebar--admin .lk-sidebar__subitem {
    padding-left: 3rem;
  }
}

.admin-homepage-tabs {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.admin-homepage-tab {
  border: 0.0625rem solid #f0f0f5;
  border-radius: 0.75rem;
  background: #fafafa;
  overflow: hidden;
}
.admin-homepage-tab--open {
  background: #fff;
  border-color: #d8f3f1;
}
.admin-homepage-tab--disabled {
  opacity: 0.55;
}
.admin-homepage-tab__head {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding: 0.625rem 0.75rem;
}
.admin-homepage-tab__enabled {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  cursor: pointer;
}
.admin-homepage-tab__toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  flex: 1;
  min-width: 0;
  padding: 0.25rem 0;
  border: 0;
  background: transparent;
  font: inherit;
  font-size: 1rem;
  color: #0d172a;
  text-align: left;
  cursor: pointer;
}
.admin-homepage-tab__title {
  font-weight: 500;
}
.admin-homepage-tab__chevron {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.admin-homepage-tab--open .admin-homepage-tab__chevron {
  transform: rotate(180deg);
}
.admin-homepage-tab__panel {
  padding: 0.75rem 1rem 1rem;
  border-top: 0.0625rem solid #f0f0f5;
}

.admin-homepage-hero-preview {
  display: block;
  width: 100%;
  max-width: 20rem;
  margin-bottom: 0.75rem;
  border-radius: 0.75rem;
  border: 0.0625rem solid #f0f0f5;
  -o-object-fit: cover;
     object-fit: cover;
}

.admin-homepage-books {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.admin-homepage-book {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.625rem 0.75rem;
  border: 0.0625rem solid #f0f0f5;
  border-radius: 0.75rem;
  background: #fafafa;
}
.admin-homepage-book__label {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin: 0;
  cursor: pointer;
}
.admin-homepage-book__actions {
  display: flex;
  gap: 0.375rem;
  flex-shrink: 0;
}

.admin-about-steps {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 1rem;
}
.admin-about-steps__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}
.admin-about-steps__label {
  font-size: 1rem;
  font-weight: 500;
  color: #4f5869;
}
.admin-about-steps__list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-about-steps__add {
  align-self: flex-start;
}

.admin-about-step {
  border: 0.0625rem solid #f0f0f5;
  border-radius: 0.75rem;
  padding: 0.75rem;
  background: #fafafa;
}
.admin-about-step__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 0.75rem;
}
.admin-about-step__title {
  font-size: 0.9375rem;
  font-weight: 500;
  color: #253349;
}
.admin-about-step__actions {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}
.admin-about-step__remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.75rem;
  height: 1.75rem;
  border: 0;
  border-radius: 0.375rem;
  background: transparent;
  color: #8b95a7;
  font-size: 1.375rem;
  line-height: 1;
  cursor: pointer;
}
.admin-about-step__remove:hover {
  background: #fee;
  color: #c33;
}
.admin-about-step__fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
}
@media (max-width: 47.9375rem) {
  .admin-about-step__fields {
    grid-template-columns: 1fr;
  }
}
.admin-about-step__fields .lk-field:nth-child(2) {
  grid-column: 1/-1;
}

.admin-homepage-partners {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.admin-homepage-partner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.625rem 0.75rem;
  border: 0.0625rem solid #f0f0f5;
  border-radius: 0.75rem;
  background: #fafafa;
}
.admin-homepage-partner__label {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin: 0;
  cursor: pointer;
  min-width: 0;
}
.admin-homepage-partner__logo {
  width: 3rem;
  height: 2rem;
  -o-object-fit: contain;
     object-fit: contain;
  flex-shrink: 0;
  border-radius: 0.375rem;
  background: #fff;
  border: 0.0625rem solid #f0f0f5;
}
.admin-homepage-partner__actions {
  display: flex;
  gap: 0.375rem;
  flex-shrink: 0;
}

.admin-homepage-galleries {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.admin-homepage-gallery-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.625rem 0.75rem;
  border: 0.0625rem solid #f0f0f5;
  border-radius: 0.75rem;
  background: #fafafa;
}
.admin-homepage-gallery-row__label {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin: 0;
  cursor: pointer;
  min-width: 0;
}
.admin-homepage-gallery-row__cover {
  width: 3rem;
  height: 2rem;
  -o-object-fit: cover;
     object-fit: cover;
  flex-shrink: 0;
  border-radius: 0.375rem;
  background: #fff;
  border: 0.0625rem solid #f0f0f5;
}
.admin-homepage-gallery-row__cover--empty {
  display: block;
  background: #eef2f2;
}
.admin-homepage-gallery-row__actions {
  display: flex;
  gap: 0.375rem;
  flex-shrink: 0;
}

.admin-seo-block {
  margin: 0;
  padding: 0.75rem;
  border: 0.0625rem solid #e8f6f5;
  border-radius: 0.75rem;
  background: #f7fcfc;
}
.admin-seo-block__title {
  margin: 0 0 0.5rem;
  font-size: 1rem;
  font-weight: 600;
  color: #013434;
}
.admin-seo-block__noindex {
  margin-bottom: 0.75rem;
}
.admin-seo-block__fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
}
@media (max-width: 47.9375rem) {
  .admin-seo-block__fields {
    grid-template-columns: 1fr;
  }
}
.admin-seo-block__fields .lk-field:nth-child(2),
.admin-seo-block__fields .lk-field:nth-child(3) {
  grid-column: 1/-1;
}

.admin-seo-page .admin-homepage-tab__panel > .registration__check--inline,
.admin-seo-page .admin-form-checkboxes .registration__check--inline {
  margin-bottom: 1.5rem;
}

.admin-countries-page {
  background: #f7fcfc;
}
.admin-countries-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-countries-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-countries-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-countries-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-countries-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-countries-page__hint {
  margin: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #4f5869;
}
.admin-countries-page__add.btn.btn--primary.btn--admin {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-countries-page__head-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-countries-page__head-actions .btn.btn--primary,
.admin-countries-page__head-actions .btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-countries-page__save--card.btn {
  display: none;
}
.admin-countries-page__status, .admin-countries-page__errors {
  margin: 0 0 0.75rem;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.4;
}
.admin-countries-page__status {
  background: #e8f8f7;
  color: #006d6d;
}
.admin-countries-page__errors {
  padding-left: 2rem;
  background: #fff0f0;
  color: #c0392b;
  list-style: disc;
}
.admin-countries-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-countries-page__list {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-countries-page__item {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1rem;
  border-radius: 1.25rem;
  background: #fff;
}
.admin-countries-page__item--collapsed {
  gap: 0.625rem;
}
.admin-countries-page__item--collapsed .admin-countries-page__item-body {
  grid-template-rows: 0fr;
}
.admin-countries-page__item-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-countries-page__item-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-countries-page__item-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-countries-page__item-btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-countries-page__item-btn--text.btn {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  border: 0;
  border-radius: 1rem;
  background: transparent;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  color: #006d6d;
  cursor: pointer;
}
.admin-countries-page__item-body {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.3s ease;
}
.admin-countries-page__item-body-inner {
  overflow: hidden;
  min-height: 0;
}
.admin-countries-page__form {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.admin-countries-page__active {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.admin-countries-page__active .lk-field__label {
  margin: 0;
}
@media (max-width: 74.99875em) {
  .admin-countries-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-countries-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-countries-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-countries-page__add.btn {
    display: none;
  }
  .admin-countries-page__head-actions {
    display: none;
  }
  .admin-countries-page__save--card.btn {
    display: flex;
    width: calc(100% - 1rem);
    margin: 0 0.5rem 1rem;
  }
  .admin-countries-page__list {
    padding: 0.5rem;
    gap: 0.5rem;
  }
  .admin-countries-page__item {
    border-radius: 1rem;
  }
  .admin-countries-page__item-title {
    font-size: 1.125rem;
  }
  .admin-countries-page__item-head {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-countries-page__item-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-countries-page__item-actions .btn {
    width: 100%;
  }
}

.admin-exports-page {
  background: #f7fcfc;
}
.admin-exports-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-exports-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-exports-page__content--loading {
  opacity: 0.65;
  pointer-events: none;
}
.admin-exports-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-exports-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-exports-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-exports-page__head-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-shrink: 0;
}
.admin-exports-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-exports-page__list {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-exports-page__card {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding: 1rem;
  border-radius: 1.5rem;
  background: #fff;
}
.admin-exports-page__card--muted {
  background: #fafafc;
}
.admin-exports-page__card-icon {
  flex-shrink: 0;
  width: 6.25rem;
  height: 6.25rem;
}
.admin-exports-page__card-icon img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.admin-exports-page__card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 0.375rem;
  min-width: 0;
}
.admin-exports-page__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.2;
  color: #242a37;
}
.admin-exports-page__card-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  color: #7f889a;
}
.admin-exports-page__card-dot {
  flex-shrink: 0;
  width: 0.125rem;
  height: 0.125rem;
  border-radius: 50%;
  background: #7f889a;
  opacity: 0.6;
}
.admin-exports-page__download.btn.btn--soft {
  flex-shrink: 0;
  min-height: unset;
  padding: 0.75rem 1.5rem 0.5rem;
  border-radius: 1rem;
  background: rgba(71, 184, 178, 0.1);
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  color: #006d6d;
}
.admin-exports-page__group {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
}
.admin-exports-page__group-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-exports-page__group-list {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media (max-width: 74.99875em) {
  .admin-exports-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-exports-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-exports-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-exports-page__list {
    padding: 0.5rem;
    gap: 0.5rem;
  }
  .admin-exports-page__card {
    flex-direction: column;
    align-items: stretch;
    border-radius: 1rem;
  }
  .admin-exports-page__card-icon {
    align-self: center;
  }
  .admin-exports-page__card-title {
    font-size: 1.375rem;
  }
  .admin-exports-page__download.btn {
    width: 100%;
  }
  .admin-exports-page__group {
    padding: 1rem;
    border-radius: 1rem;
    gap: 1rem;
  }
  .admin-exports-page__group-title {
    font-size: 1.125rem;
  }
  .admin-exports-page__group-list {
    gap: 0.5rem;
  }
}

.admin-faq-page {
  background: #f7fcfc;
}
.admin-faq-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-faq-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-faq-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-faq-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-faq-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-faq-page__add.btn.btn--primary.btn--admin {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-faq-page__head-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-faq-page__head-actions .btn.btn--primary,
.admin-faq-page__head-actions .btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-faq-page__save--card.btn {
  display: none;
}
.admin-faq-page__status {
  margin: 0 0 0.75rem;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  background: #e8f8f7;
  color: #006d6d;
  font-size: 0.875rem;
  line-height: 1.4;
}
.admin-faq-page__errors {
  margin: 0 0 0.75rem;
  padding: 0.75rem 1rem 0.75rem 2rem;
  border-radius: 0.75rem;
  background: #fff0f0;
  color: #c0392b;
  font-size: 0.875rem;
  line-height: 1.4;
  list-style: disc;
}
.admin-faq-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-faq-page__list {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-faq-page__item {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1rem;
  border-radius: 1.25rem;
  background: #fff;
}
.admin-faq-page__item--collapsed {
  gap: 0.625rem;
}
.admin-faq-page__item--collapsed .admin-faq-page__item-body {
  grid-template-rows: 0fr;
}
.admin-faq-page__item-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-faq-page__item-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-faq-page__item-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-faq-page__item-btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-faq-page__item-btn--text.btn {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  border: 0;
  border-radius: 1rem;
  background: transparent;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  color: #006d6d;
  cursor: pointer;
}
.admin-faq-page__item-body {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.3s ease;
}
.admin-faq-page__item-body-inner {
  overflow: hidden;
  min-height: 0;
}
.admin-faq-page__form {
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
}
.admin-faq-page__textarea {
  display: block;
  min-height: 3.25rem;
  height: auto;
  resize: none;
  overflow: hidden;
  field-sizing: content;
}
@media (prefers-reduced-motion: reduce) {
  .admin-faq-page__item-body {
    transition: none;
  }
}
@media (max-width: 74.99875em) {
  .admin-faq-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-faq-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-faq-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-faq-page__add.btn {
    display: none;
  }
  .admin-faq-page__head-actions {
    display: none;
  }
  .admin-faq-page__save--card.btn {
    display: flex;
    width: calc(100% - 1rem);
    margin: 0 0.5rem 1rem;
  }
  .admin-faq-page__list {
    padding: 0.5rem;
    gap: 0.5rem;
  }
  .admin-faq-page__item {
    border-radius: 1rem;
  }
  .admin-faq-page__item-title {
    font-size: 1.125rem;
  }
  .admin-faq-page__item-head {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-faq-page__item-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-faq-page__item-actions .btn {
    width: 100%;
  }
}

.admin-footer-requests__tools {
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
}
.admin-footer-requests__export {
  flex-shrink: 0;
}
@media (max-width: 74.99875em) {
  .admin-footer-requests__tools {
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
  }
}

.admin-footer-request__cards {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-footer-request__card {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
}
.admin-footer-request__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-footer-request__grid {
  display: grid;
  gap: 0.75rem;
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.admin-footer-request__grid--two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.admin-footer-request__grid--one {
  grid-template-columns: minmax(0, 1fr);
}
.admin-footer-request__field {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
.admin-footer-request__label {
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #8c8c93;
}
.admin-footer-request__value, .admin-footer-request__question {
  display: block;
  width: 100%;
  min-height: 3rem;
  padding: 0.875rem 1rem;
  border: 0.0625rem solid #e6e6e6;
  border-radius: 1rem;
  background: #f7fcfc;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #1b2638;
  word-break: break-word;
}
.admin-footer-request__question {
  min-height: 7.5rem;
  line-height: 1.5;
  white-space: pre-wrap;
}
.admin-footer-request__meta {
  margin: 0;
  font-family: var(--font-family);
  font-size: 0.875rem;
  line-height: 1.4;
  color: #8c8c93;
}
@media (max-width: 61.99875em) {
  .admin-footer-request__grid, .admin-footer-request__grid--two {
    grid-template-columns: minmax(0, 1fr);
  }
}

.admin-form-checkboxes {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 1rem;
}
.admin-form-checkboxes__row {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1rem;
  border: 0.0625rem solid #e8f6f5;
  border-radius: 1rem;
  background: #f7fcfc;
}
.admin-form-checkboxes__row-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}
.admin-form-checkboxes__row-title {
  font-size: 1rem;
  font-weight: 600;
  color: #013434;
}
.admin-form-checkboxes .registration__check--inline {
  margin-bottom: 0.75rem;
}

.admin-gallery-page {
  background: #f7fcfc;
}
.admin-gallery-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-gallery-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-gallery-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-gallery-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-gallery-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-gallery-page__add.btn.btn--primary.btn--admin {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-gallery-page__head-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-left: auto;
}
.admin-gallery-page__save.btn.btn--primary.btn--admin {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-gallery-page__status {
  margin: 0;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  background: rgba(71, 184, 178, 0.12);
  color: #006d6d;
  font-size: 1rem;
}
.admin-gallery-page__settings {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  max-width: 40rem;
}
.admin-gallery-page__errors {
  margin: 0;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  background: rgba(220, 53, 69, 0.08);
  color: #b42318;
  font-size: 1rem;
}
.admin-gallery-page__photo-add {
  align-self: flex-start;
}
.admin-gallery-page__photo-remove {
  position: absolute;
  top: 0.75rem;
  right: 0.75rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border: 0;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  font-size: 1.25rem;
  line-height: 1;
  cursor: pointer;
}
.admin-gallery-page__photo-remove[hidden] {
  display: none !important;
}
.admin-gallery-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-gallery-page__list {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-gallery-page__item {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1rem;
  border-radius: 1.25rem;
  background: #fff;
}
.admin-gallery-page__item--collapsed {
  gap: 0.625rem;
}
.admin-gallery-page__item--collapsed .admin-gallery-page__item-body {
  grid-template-rows: 0fr;
}
.admin-gallery-page__item-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-gallery-page__item-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-gallery-page__item-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-gallery-page__item-btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-gallery-page__item-btn--text.btn {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  border: 0;
  border-radius: 1rem;
  background: transparent;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  color: #006d6d;
  cursor: pointer;
}
.admin-gallery-page__item-body {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.3s ease;
}
.admin-gallery-page__item-body-inner {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  overflow: hidden;
  min-height: 0;
}
.admin-gallery-page__photos {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 2rem;
}
.admin-gallery-page__photo {
  position: relative;
  width: 100%;
  aspect-ratio: 440/292;
  border-radius: 1.5rem;
  overflow: hidden;
  touch-action: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.admin-gallery-page__photo--draggable {
  cursor: grab;
}
.admin-gallery-page__photo--draggable:active {
  cursor: grabbing;
}
.admin-gallery-page__photo--dragging {
  opacity: 0.45;
}
.admin-gallery-page__photo--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0.125rem dashed #c5c6d6;
  background: #fff;
}
.admin-gallery-page__photo--filled, .admin-gallery-page__photo:not(.admin-gallery-page__photo--empty) {
  box-shadow: 0 0.07375rem 0.514375rem rgba(0, 0, 0, 0.15);
}
.admin-gallery-page__photo-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.admin-gallery-page__photo-img[hidden] {
  display: none;
}
.admin-gallery-page__photo-pick.btn--soft {
  min-height: 2.5rem;
  padding: 0.5rem 0.75rem;
  border-radius: 1rem;
  background: rgba(71, 184, 178, 0.1);
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.5;
  color: #006d6d;
}
.admin-gallery-page__photo-pick.btn--soft[hidden] {
  display: none !important;
}
.admin-gallery-page__photo--filled .admin-gallery-page__photo-pick.btn--soft {
  display: none !important;
}
.admin-gallery-page__photo-edit {
  position: absolute;
  right: 0.75rem;
  bottom: 0.75rem;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  border: 0;
  border-radius: 0.75rem;
  background: #006d6d;
  color: #fff;
  cursor: pointer;
  line-height: 0;
}
.admin-gallery-page__photo--filled .admin-gallery-page__photo-edit:not([hidden]) {
  display: inline-flex;
}
.admin-gallery-page__photo-edit-icon {
  width: 1.5rem;
  height: 1.5rem;
}
.admin-gallery-page__form {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
@media (prefers-reduced-motion: reduce) {
  .admin-gallery-page__item-body {
    transition: none;
  }
}
@media (max-width: 74.99875em) {
  .admin-gallery-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-gallery-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-gallery-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-gallery-page__add.btn {
    display: none;
  }
  .admin-gallery-page__list {
    padding: 0.5rem;
    gap: 0.5rem;
  }
  .admin-gallery-page__item {
    border-radius: 1rem;
  }
  .admin-gallery-page__item-title {
    font-size: 1.125rem;
  }
  .admin-gallery-page__item-head {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-gallery-page__item-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-gallery-page__item-actions .btn {
    width: 100%;
  }
  .admin-gallery-page__photos {
    grid-template-columns: 1fr;
    gap: 0.625rem;
  }
  .admin-gallery-page__photo {
    aspect-ratio: 440/292;
  }
  .admin-gallery-page__item-body-inner {
    gap: 1rem;
  }
}

.admin-levels-page {
  background: #f7fcfc;
}
.admin-levels-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-levels-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-levels-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-levels-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-levels-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-levels-page__head-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-levels-page__head-actions .profile-page__menu-btn {
  display: none;
}
.admin-levels-page__head-actions .btn.btn--primary,
.admin-levels-page__head-actions .btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-levels-page__list {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-levels-page__level {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  padding: 1rem;
  background: #fff;
  border-radius: 1.5rem;
}
.admin-levels-page__level--collapsed .admin-levels-page__level-body {
  grid-template-rows: 0fr;
}
.admin-levels-page__level-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-levels-page__level-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-levels-page__level-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-levels-page__level-actions .btn.btn--soft,
.admin-levels-page__level-actions .btn.admin-levels-page__level-btn--text {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-levels-page__level-actions .btn.admin-levels-page__level-btn--text {
  border: 0;
  background: transparent;
  font-family: var(--font-heading);
  color: #006d6d;
  cursor: pointer;
}
.admin-levels-page__level-body {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.3s ease;
}
.admin-levels-page__level-body-inner {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
  overflow: hidden;
  min-height: 0;
}
@media (prefers-reduced-motion: reduce) {
  .admin-levels-page__level-body {
    transition: none;
  }
}
.admin-levels-page__media {
  position: relative;
  flex-shrink: 0;
  width: 18.25rem;
  height: 18.25rem;
  border-radius: 1.5rem;
  overflow: hidden;
}
.admin-levels-page__media--filled {
  border: 0.0625rem solid #e9e9f0;
  background: #fff;
}
.admin-levels-page__media--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0.125rem dashed #c5c6d6;
  background: #fff;
}
.admin-levels-page__media-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  padding: 1rem;
}
.admin-levels-page__media-img[hidden] {
  display: none;
}
.admin-levels-page__media--filled .admin-levels-page__media-pick.btn--soft {
  display: none !important;
}
.admin-levels-page__media-edit {
  position: absolute;
  right: 0.75rem;
  bottom: 0.75rem;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  border: 0;
  border-radius: 0.75rem;
  background: #006d6d;
  color: #fff;
  cursor: pointer;
  line-height: 0;
}
.admin-levels-page__media--filled .admin-levels-page__media-edit:not([hidden]) {
  display: inline-flex;
}
.admin-levels-page__media-edit-icon {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
}
.admin-levels-page__media-pick.btn--soft {
  min-height: 2.5rem;
  padding: 0.75rem;
  border-radius: 1rem;
  background: rgba(71, 184, 178, 0.1);
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.5;
  color: #006d6d;
}
.admin-levels-page__fields {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1.25rem;
  min-width: 0;
}
.admin-levels-page__fields .lk-field {
  margin: 0;
}
.admin-levels-page__fields .lk-field__control {
  min-height: 3.25rem;
}
.admin-levels-page .lk-field--select .lk-field__input-wrap {
  position: relative;
  display: block;
}
.admin-levels-page .lk-field--select .lk-field__control {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}
.admin-levels-page__select-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.5rem;
  height: 1.5rem;
  color: #767e8e;
  pointer-events: none;
  transform: translateY(-50%);
}
@media (max-width: 74.99875em) {
  .admin-levels-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-levels-page__head-actions .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-levels-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-levels-page__head-actions .btn--admin {
    display: none;
  }
  .admin-levels-page__list {
    gap: 0.5rem;
    padding: 0.5rem;
  }
  .admin-levels-page__level {
    padding: 1rem;
    border-radius: 1rem;
  }
  .admin-levels-page__level-title {
    font-size: 1.125rem;
  }
  .admin-levels-page__level-head {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-levels-page__level-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-levels-page__level-btn.btn--soft, .admin-levels-page__level-btn--text.btn {
    width: 100%;
  }
  .admin-levels-page__level-body-inner {
    flex-direction: column;
  }
  .admin-levels-page__media {
    width: 100%;
    height: 15rem;
  }
}

.admin-news-event-form-page {
  background: #f7fcfc;
}
.admin-news-event-form-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-news-event-form-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-news-event-form-page__head-main {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-width: 0;
}
.admin-news-event-form-page__back {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  color: #9399a7;
  text-decoration: none;
}
.admin-news-event-form-page__back-icon {
  display: block;
  width: 2rem;
  height: 2rem;
  fill: currentColor;
  stroke: currentColor;
}
.admin-news-event-form-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-news-event-form-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-news-event-form-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-news-event-form-page__submit.btn.btn--primary.btn--admin {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-news-event-form-page__head-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-news-event-form-page__head-actions .btn.btn--primary,
.admin-news-event-form-page__head-actions .btn.btn--soft, .admin-news-event-form-page__actions .btn.btn--primary,
.admin-news-event-form-page__actions .btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-news-event-form-page__actions {
  display: none;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-news-event-form-page__submit--card.btn {
  display: none;
}
.admin-news-event-form-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-news-event-form-page__card {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
}
.admin-news-event-form-page__seo {
  margin-top: 0.75rem;
}
.admin-news-event-form-page__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-news-event-form-page__layout-row {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
}
.admin-news-event-form-page__image {
  position: relative;
  flex-shrink: 0;
  width: 27.5rem;
  height: 18.25rem;
  border-radius: 1.5rem;
  overflow: hidden;
}
.admin-news-event-form-page__image--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0.125rem dashed #c5c6d6;
  background: #fff;
}
.admin-news-event-form-page__image:not(.admin-news-event-form-page__image--empty) {
  box-shadow: 0 0.07375rem 0.514375rem rgba(0, 0, 0, 0.15);
}
.admin-news-event-form-page__image-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.admin-news-event-form-page__image-img[hidden] {
  display: none;
}
.admin-news-event-form-page__image-pick.btn--soft {
  min-height: 2.5rem;
  padding: 0.5rem 0.75rem;
  border-radius: 1rem;
  background: rgba(71, 184, 178, 0.1);
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.5;
  color: #006d6d;
}
.admin-news-event-form-page__image-pick.btn--soft[hidden] {
  display: none !important;
}
.admin-news-event-form-page__image--filled .admin-news-event-form-page__image-pick.btn--soft {
  display: none !important;
}
.admin-news-event-form-page__image-edit {
  position: absolute;
  right: 0.75rem;
  bottom: 0.75rem;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  border: 0;
  border-radius: 0.75rem;
  background: #006d6d;
  color: #fff;
  cursor: pointer;
  line-height: 0;
}
.admin-news-event-form-page__image--filled .admin-news-event-form-page__image-edit:not([hidden]) {
  display: inline-flex;
}
.admin-news-event-form-page__image-edit-icon {
  width: 1.5rem;
  height: 1.5rem;
}
.admin-news-event-form-page__form {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 0.75rem;
  min-width: 0;
}
.admin-news-event-form-page__form .lk-field {
  margin: 0;
}
.admin-news-event-form-page__form .lk-field__control:not(.admin-news-event-form-page__textarea) {
  min-height: 3.25rem;
}
.admin-news-event-form-page__textarea {
  min-height: 8.75rem;
  height: 8.75rem;
  resize: vertical;
}
.admin-news-event-form-page .lk-field--select .lk-field__input-wrap {
  position: relative;
  display: block;
}
.admin-news-event-form-page .lk-field--select .lk-field__control {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}
.admin-news-event-form-page__select-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.5rem;
  height: 1.5rem;
  color: #767e8e;
  pointer-events: none;
  transform: translateY(-50%);
}
@media (max-width: 74.99875em) {
  .admin-news-event-form-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
    gap: 1rem;
  }
  .admin-news-event-form-page__head-main {
    flex: 1;
    min-width: 0;
  }
  .admin-news-event-form-page__back-icon {
    width: 1.5rem;
    height: 1.5rem;
  }
  .admin-news-event-form-page__title {
    line-height: 1.2;
  }
  .admin-news-event-form-page__submit:not(.admin-news-event-form-page__submit--card) {
    display: none;
  }
  .admin-news-event-form-page__submit--card.btn {
    display: flex;
    align-self: stretch;
    width: 100%;
  }
  .admin-news-event-form-page__head-actions {
    display: none;
  }
  .admin-news-event-form-page__actions {
    display: flex;
    padding: 0 0.5rem 1rem;
  }
  .admin-news-event-form-page__actions .btn {
    width: 100%;
  }
  .admin-news-event-form-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-news-event-form-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-news-event-form-page__card {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin: 0.5rem;
    padding: 1rem;
    border-radius: 1rem;
  }
  .admin-news-event-form-page__card-title {
    font-size: 1.125rem;
  }
  .admin-news-event-form-page__layout-row {
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
  }
  .admin-news-event-form-page__image {
    width: 100%;
    max-width: 27.5rem;
    align-self: center;
  }
}

.admin-news-events-page {
  background: #f7fcfc;
}
.admin-news-events-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-news-events-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-news-events-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-news-events-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-news-events-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-news-events-page__head-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.admin-news-events-page__head-actions .profile-page__menu-btn {
  display: none;
}
.admin-news-events-page__add.btn.btn--primary.btn--admin {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-news-events-page__tools {
  display: flex;
  align-items: center;
}
.admin-news-events-page__search {
  position: relative;
  display: block;
  width: 25rem;
  max-width: 100%;
}
.admin-news-events-page__search-input {
  display: block;
  width: 100%;
  padding: 0.625rem 2.75rem 0.625rem 1rem;
  border: none;
  border-radius: 0.75rem;
  background: #fff;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #111a28;
}
.admin-news-events-page__search-input::-moz-placeholder {
  color: #8c8c93;
}
.admin-news-events-page__search-input::placeholder {
  color: #8c8c93;
}
.admin-news-events-page__search-input:focus {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.admin-news-events-page__search-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.25rem;
  height: 1.25rem;
  color: #767e8e;
  transform: translateY(-50%);
  pointer-events: none;
}
.admin-news-events-page__table-card {
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  min-width: 0;
}
.admin-news-events-page__table-wrap {
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.admin-news-events-page__table {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 60rem;
}
.admin-news-events-page__row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: center;
  gap: 1.5rem;
  padding: 0.75rem;
  border-bottom: 0.0625rem solid #f2f2f7;
}
.admin-news-events-page__row--head {
  border-bottom: 0.0625rem solid #f2f2f7;
}
.admin-news-events-page__row:last-child {
  border-bottom: none;
}
.admin-news-events-page__cell {
  min-width: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3;
  color: #3f3f46;
  word-break: break-word;
}
.admin-news-events-page__cell--date, .admin-news-events-page__cell--title {
  text-align: left;
}
.admin-news-events-page__cell--type, .admin-news-events-page__cell--place {
  text-align: center;
}
.admin-news-events-page__pagination {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.375rem;
}
.admin-news-events-page__page-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 0;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  color: #313241;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.admin-news-events-page__page-btn svg {
  width: 1rem;
  height: 1rem;
  color: currentColor;
}
.admin-news-events-page__page-btn--active {
  background: #15b3ae;
  color: #fff;
  font-weight: 700;
}
@media (max-width: 74.99875em) {
  .admin-news-events-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-news-events-page__head-actions .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-news-events-page__head-actions .admin-news-events-page__add {
    display: none;
  }
  .admin-news-events-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-news-events-page__tools, .admin-news-events-page__table-card, .admin-news-events-page__pagination {
    margin-inline: 0.5rem;
  }
  .admin-news-events-page__tools {
    padding-top: 0.75rem;
  }
  .admin-news-events-page__search {
    width: 100%;
  }
  .admin-news-events-page__table-card {
    margin-top: 0.5rem;
    padding: 1rem;
    border-radius: 1rem;
  }
  .admin-news-events-page__pagination {
    padding-top: 0.5rem;
    padding-bottom: 1rem;
  }
  .admin-news-events-page__table-wrap {
    margin-inline: -1rem;
    padding-inline: 1rem;
  }
  .admin-news-events-page__row {
    gap: 1rem;
  }
  .admin-news-events-page__cell {
    font-size: 1rem;
  }
}

.admin-notifications-history-page {
  background: #f7fcfc;
}
.admin-notifications-history-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-notifications-history-page__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-notifications-history-page__head-copy {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  min-width: 0;
}
.admin-notifications-history-page__back {
  display: inline-flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.4;
  color: #006d6d;
  text-decoration: none;
}
.admin-notifications-history-page__back::before {
  content: "←";
  margin-right: 0.375rem;
}
@media (any-hover: hover) {
  .admin-notifications-history-page__back:hover {
    color: #0d5757;
  }
}
.admin-notifications-history-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-notifications-history-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-notifications-history-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-notifications-history-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-notifications-history-page__tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin: 0;
  padding: 0;
  border: 0;
}
.admin-notifications-history-page__search {
  position: relative;
  display: block;
  width: 25rem;
  max-width: 100%;
}
.admin-notifications-history-page__search-input {
  display: block;
  width: 100%;
  padding: 0.625rem 2.75rem 0.625rem 1rem;
  border: none;
  border-radius: 0.75rem;
  background: #fff;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #111a28;
}
.admin-notifications-history-page__search-input::-moz-placeholder {
  color: #8c8c93;
}
.admin-notifications-history-page__search-input::placeholder {
  color: #8c8c93;
}
.admin-notifications-history-page__search-input:focus {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.admin-notifications-history-page__search-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.25rem;
  height: 1.25rem;
  color: #767e8e;
  transform: translateY(-50%);
  pointer-events: none;
}
.admin-notifications-history-page__table-card {
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  min-width: 0;
}
.admin-notifications-history-page__table-wrap {
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.admin-notifications-history-page__table {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 47.5rem;
}
.admin-notifications-history-page__row {
  display: grid;
  grid-template-columns: 9.375rem 13.75rem minmax(0, 1fr) 7.5rem;
  align-items: center;
  gap: 1.5rem;
  padding: 0.875rem 0.75rem;
  border-bottom: 0.0625rem solid #f2f2f7;
}
.admin-notifications-history-page__row--head {
  padding-top: 0.5rem;
  padding-bottom: 0.75rem;
}
.admin-notifications-history-page__row--empty {
  grid-template-columns: 1fr;
  justify-items: center;
  padding: 2rem 0.75rem;
}
.admin-notifications-history-page__row:last-child {
  border-bottom: none;
}
.admin-notifications-history-page__cell {
  min-width: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.35;
  color: #3f3f46;
}
.admin-notifications-history-page__cell--date {
  font-variant-numeric: tabular-nums;
  color: #4f5869;
}
.admin-notifications-history-page__cell--subject {
  color: #253349;
}
.admin-notifications-history-page__cell--count {
  text-align: right;
  font-variant-numeric: tabular-nums;
  font-weight: 500;
  color: #253349;
}
.admin-notifications-history-page__cell--kind {
  display: flex;
  align-items: center;
}
.admin-notifications-history-page__row--head .admin-notifications-history-page__cell {
  font-family: var(--font-heading);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
  color: #767e8e;
}
.admin-notifications-history-page__row--head .admin-notifications-history-page__cell--count {
  text-align: right;
}
.admin-notifications-history-page__row--empty .admin-notifications-history-page__cell {
  text-align: center;
  color: #767e8e;
}
.admin-notifications-history-page__kind-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  padding: 0.375rem 0.75rem;
  border-radius: 1.875rem;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
}
.admin-notifications-history-page__kind-tag--reminder {
  background: rgba(72, 173, 173, 0.18);
  color: #0d5757;
}
.admin-notifications-history-page__kind-tag--event {
  background: rgba(106, 252, 179, 0.22);
  color: #128d50;
}
.admin-notifications-history-page__kind-tag--results {
  background: rgba(189, 94, 234, 0.18);
  color: #9038b8;
}
.admin-notifications-history-page__pagination {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.375rem;
}
.admin-notifications-history-page__page-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 0;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  color: #313241;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.admin-notifications-history-page__page-btn svg {
  width: 1rem;
  height: 1rem;
  color: currentColor;
}
.admin-notifications-history-page__page-btn--active {
  background: #15b3ae;
  color: #fff;
  font-weight: 700;
}
.admin-notifications-history-page__page-btn[aria-disabled=true] {
  opacity: 0.45;
  cursor: default;
  pointer-events: none;
}
@media (max-width: 74.99875em) {
  .admin-notifications-history-page__head {
    align-items: center;
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-notifications-history-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-notifications-history-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-notifications-history-page__tools, .admin-notifications-history-page__table-card, .admin-notifications-history-page__pagination {
    margin-inline: 0.5rem;
  }
  .admin-notifications-history-page__tools {
    flex-direction: column;
    align-items: stretch;
    padding-top: 0.75rem;
  }
  .admin-notifications-history-page__search {
    width: 100%;
  }
  .admin-notifications-history-page__table-card {
    padding: 1rem;
    border-radius: 1rem;
  }
  .admin-notifications-history-page__row {
    grid-template-columns: 1fr;
    gap: 0.5rem;
    padding: 1rem 0.5rem;
  }
  .admin-notifications-history-page__row--head {
    display: none;
  }
  .admin-notifications-history-page__cell--count {
    text-align: left;
  }
  .admin-notifications-history-page__cell--count::before {
    content: "Получателей: ";
    color: #767e8e;
    font-weight: 400;
  }
  .admin-notifications-history-page__cell--date::before {
    content: "Дата: ";
    color: #767e8e;
  }
  .admin-notifications-history-page__pagination {
    padding-bottom: 0.75rem;
  }
}

.admin-notifications-page {
  background: #f7fcfc;
}
.admin-notifications-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-notifications-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-notifications-page__head-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-left: auto;
}
.admin-notifications-page__head-actions .btn.btn--primary,
.admin-notifications-page__head-actions .btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-notifications-page__status, .admin-notifications-page__errors {
  margin: 0;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  font-size: 1rem;
  line-height: 1.4;
}
.admin-notifications-page__status {
  background: #e8f8ef;
  color: #1f6b45;
}
.admin-notifications-page__errors {
  background: #fdeeee;
  color: #9b1c1c;
  list-style: none;
}
.admin-notifications-page__errors li + li {
  margin-top: 0.25rem;
}
.admin-notifications-page__actions {
  display: none;
}
.admin-notifications-page__mailings-empty {
  margin: 0;
  padding: 1rem;
  border-radius: 1rem;
  background: #f7fcfc;
  font-size: 1rem;
  line-height: 1.5;
  color: #767e8e;
  text-align: center;
}
.admin-notifications-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-notifications-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-notifications-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-notifications-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-notifications-page__tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-notifications-page__search {
  position: relative;
  display: block;
  width: 25rem;
  max-width: 100%;
}
.admin-notifications-page__search-input {
  display: block;
  width: 100%;
  padding: 0.625rem 2.75rem 0.625rem 1rem;
  border: none;
  border-radius: 0.75rem;
  background: #fff;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #111a28;
}
.admin-notifications-page__search-input::-moz-placeholder {
  color: #8c8c93;
}
.admin-notifications-page__search-input::placeholder {
  color: #8c8c93;
}
.admin-notifications-page__search-input:focus {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.admin-notifications-page__search-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.25rem;
  height: 1.25rem;
  color: #767e8e;
  transform: translateY(-50%);
  pointer-events: none;
}
.admin-notifications-page__cards {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-notifications-page__card {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.25rem;
  border-radius: 1.25rem;
  background: #fff;
}
.admin-notifications-page__card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-notifications-page__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-notifications-page__add.btn.btn--primary.btn--admin {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-notifications-page__toggles {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-notifications-page__toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 0.75rem;
  border-bottom: 0.0625rem solid #f0f0f5;
}
.admin-notifications-page__toggle-row--last {
  padding-bottom: 0;
  border-bottom: 0;
}
.admin-notifications-page__toggle-copy {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
.admin-notifications-page__toggle-title {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  color: #0d172a;
}
.admin-notifications-page__toggle-text {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  color: #7a8393;
}
.admin-notifications-page__schedule {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}
.admin-notifications-page__mailings {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}
.admin-notifications-page__mailing {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  padding: 1rem;
  border-radius: 1.5rem;
  background: #fafafc;
}
.admin-notifications-page__mailing--collapsed .admin-notifications-page__mailing-body {
  grid-template-rows: 0fr;
}
.admin-notifications-page__mailing[hidden], .admin-notifications-page__mailing--template {
  display: none !important;
}
.admin-notifications-page__mailing-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-notifications-page__mailing-head-copy {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
.admin-notifications-page__mailing-status {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.4;
  color: #006d6d;
}
.admin-notifications-page__mailing-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-notifications-page__mailing-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-notifications-page__mailing-btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-notifications-page__mailing-btn--text.btn {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  border: 0;
  border-radius: 1rem;
  background: transparent;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  color: #006d6d;
  cursor: pointer;
}
.admin-notifications-page__mailing-body {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.3s ease;
}
.admin-notifications-page__mailing-body-inner {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  overflow: hidden;
  min-height: 0;
}
.admin-notifications-page__mailing-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem;
}
.admin-notifications-page__mailing-col {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
.admin-notifications-page__textarea {
  min-height: 6.25rem;
  height: 6.25rem;
  resize: vertical;
}
.admin-notifications-page .lk-field--select .lk-field__input-wrap {
  position: relative;
  display: block;
}
.admin-notifications-page .lk-field--select .lk-field__control {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}
.admin-notifications-page__select-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.5rem;
  height: 1.5rem;
  color: #767e8e;
  pointer-events: none;
  transform: translateY(-50%);
}
@media (prefers-reduced-motion: reduce) {
  .admin-notifications-page__mailing-body {
    transition: none;
  }
}
@media (max-width: 74.99875em) {
  .admin-notifications-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-notifications-page__head-actions {
    display: none;
  }
  .admin-notifications-page__actions {
    display: flex;
    padding: 0 0.5rem 0.5rem;
  }
  .admin-notifications-page__actions .btn {
    width: 100%;
  }
  .admin-notifications-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-notifications-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-notifications-page__tools {
    flex-direction: column;
    align-items: stretch;
    padding: 0.5rem 0.5rem 0;
  }
  .admin-notifications-page__search {
    width: 100%;
  }
  .admin-notifications-page__cards {
    padding: 0.5rem;
    gap: 0.5rem;
  }
  .admin-notifications-page__card {
    border-radius: 1rem;
    padding: 1rem;
    gap: 1rem;
  }
  .admin-notifications-page__card-head {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-notifications-page__add.btn {
    width: 100%;
  }
  .admin-notifications-page__card-title, .admin-notifications-page__mailing-title {
    font-size: 1.125rem;
  }
  .admin-notifications-page__schedule {
    grid-template-columns: 1fr;
  }
  .admin-notifications-page__mailing-grid {
    grid-template-columns: 1fr;
    gap: 0.625rem;
  }
  .admin-notifications-page__mailing-head {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-notifications-page__mailing-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-notifications-page__mailing-actions .btn {
    width: 100%;
  }
  .admin-notifications-page__toggle-row {
    align-items: flex-start;
  }
  .admin-notifications-page__toggle-title {
    font-size: 1.125rem;
  }
  .admin-notifications-page__toggle-text {
    font-size: 0.875rem;
  }
}

.admin-pages-page .admin-partners-page__row.admin-pages-page__row {
  grid-template-columns: 4.5rem minmax(0, 1.4fr) minmax(0, 1fr) auto;
}
.admin-pages-page__cell--actions {
  text-align: right;
}
.admin-pages-page__status {
  color: #8c8c93;
  font-size: 0.875rem;
}
.admin-pages-page__actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.375rem;
}
.admin-pages-page__action-form {
  margin: 0;
  display: inline-flex;
}
.admin-pages-page__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border: 0;
  border-radius: 0.75rem;
  background: #f2f7f7;
  color: #3f3f46;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
@media (any-hover: hover) {
  .admin-pages-page__action:hover {
    background: #e4f3f2;
    color: #006d6d;
  }
}
.admin-pages-page__action--published {
  color: #006d6d;
  background: #e4f3f2;
}
.admin-pages-page__action--draft {
  color: #8c8c93;
}
@media (any-hover: hover) {
  .admin-pages-page__action--delete:hover {
    background: #fdecec;
    color: #e52e2e;
  }
}
.admin-pages-page__action-icon {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
}
@media (max-width: 74.99875em) {
  .admin-pages-page .admin-partners-page__row.admin-pages-page__row {
    grid-template-columns: 3rem minmax(0, 1fr) auto;
    gap: 0.75rem;
  }
  .admin-pages-page .admin-partners-page__row.admin-pages-page__row .admin-partners-page__cell--url {
    display: none;
  }
  .admin-pages-page__action {
    width: 2.25rem;
    height: 2.25rem;
  }
}

.admin-partner-form-page {
  background: #f7fcfc;
}
.admin-partner-form-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-partner-form-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-partner-form-page__head-main {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-width: 0;
}
.admin-partner-form-page__back {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  color: #9399a7;
  text-decoration: none;
}
.admin-partner-form-page__back-icon {
  display: block;
  width: 2rem;
  height: 2rem;
  fill: currentColor;
  stroke: currentColor;
}
.admin-partner-form-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-partner-form-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-partner-form-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-partner-form-page__submit.btn.btn--primary.btn--admin {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-partner-form-page__head-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-partner-form-page__head-actions .btn.btn--primary,
.admin-partner-form-page__head-actions .btn.btn--soft, .admin-partner-form-page__actions .btn.btn--primary,
.admin-partner-form-page__actions .btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-partner-form-page__actions {
  display: none;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-partner-form-page__submit--card.btn {
  display: none;
}
.admin-partner-form-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-partner-form-page__errors {
  margin: 0 0 0.75rem;
  padding: 0.75rem 1rem 0.75rem 2rem;
  border-radius: 0.75rem;
  background: #fff0f0;
  color: #c0392b;
  font-size: 0.875rem;
  line-height: 1.4;
  list-style: disc;
}
.admin-partner-form-page__card {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
}
.admin-partner-form-page__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-partner-form-page__layout-row {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
}
.admin-partner-form-page__logo {
  position: relative;
  flex-shrink: 0;
  width: 18.25rem;
  height: 18.25rem;
  border-radius: 1.5rem;
  overflow: hidden;
}
.admin-partner-form-page__logo--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0.125rem dashed #c5c6d6;
  background: #fff;
}
.admin-partner-form-page__logo:not(.admin-partner-form-page__logo--empty) {
  box-shadow: 0 0.07375rem 0.514375rem rgba(0, 0, 0, 0.15);
}
.admin-partner-form-page__logo-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.admin-partner-form-page__logo-img[hidden] {
  display: none;
}
.admin-partner-form-page__logo-pick.btn--soft {
  min-height: 2.5rem;
  padding: 0.5rem 0.75rem;
  border-radius: 1rem;
  background: rgba(71, 184, 178, 0.1);
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.5;
  color: #006d6d;
}
.admin-partner-form-page__logo-pick.btn--soft[hidden] {
  display: none !important;
}
.admin-partner-form-page__logo--filled .admin-partner-form-page__logo-pick.btn--soft {
  display: none !important;
}
.admin-partner-form-page__logo-edit {
  position: absolute;
  right: 0.75rem;
  bottom: 0.75rem;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  border: 0;
  border-radius: 0.75rem;
  background: #006d6d;
  color: #fff;
  cursor: pointer;
  line-height: 0;
}
.admin-partner-form-page__logo--filled .admin-partner-form-page__logo-edit:not([hidden]) {
  display: inline-flex;
}
.admin-partner-form-page__logo-edit-icon {
  width: 1.5rem;
  height: 1.5rem;
}
.admin-partner-form-page__form {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 0.75rem;
  min-width: 0;
}
.admin-partner-form-page__form .lk-field {
  margin: 0;
}
.admin-partner-form-page__form .lk-field__control {
  min-height: 3.25rem;
}
@media (max-width: 74.99875em) {
  .admin-partner-form-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
    gap: 1rem;
  }
  .admin-partner-form-page__head-main {
    flex: 1;
    min-width: 0;
  }
  .admin-partner-form-page__back-icon {
    width: 1.5rem;
    height: 1.5rem;
  }
  .admin-partner-form-page__title {
    line-height: 1.2;
  }
  .admin-partner-form-page__submit:not(.admin-partner-form-page__submit--card) {
    display: none;
  }
  .admin-partner-form-page__submit--card.btn {
    display: flex;
    align-self: stretch;
    width: 100%;
  }
  .admin-partner-form-page__head-actions {
    display: none;
  }
  .admin-partner-form-page__actions {
    display: flex;
    padding: 0 0.5rem 1rem;
  }
  .admin-partner-form-page__actions .btn {
    width: 100%;
  }
  .admin-partner-form-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-partner-form-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-partner-form-page__card {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin: 0.5rem;
    padding: 1rem;
    border-radius: 1rem;
  }
  .admin-partner-form-page__card-title {
    font-size: 1.125rem;
  }
  .admin-partner-form-page__layout-row {
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
  }
  .admin-partner-form-page__logo {
    width: 100%;
    max-width: 18.25rem;
    align-self: center;
  }
}

.admin-partners-page {
  background: #f7fcfc;
}
.admin-partners-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-partners-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-partners-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-partners-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-partners-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-partners-page__head-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.admin-partners-page__head-actions .profile-page__menu-btn {
  display: none;
}
.admin-partners-page__add.btn.btn--primary.btn--admin {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-partners-page__tools {
  display: flex;
  align-items: center;
}
.admin-partners-page__search {
  position: relative;
  display: block;
  width: 25rem;
  max-width: 100%;
}
.admin-partners-page__search-input {
  display: block;
  width: 100%;
  padding: 0.625rem 2.75rem 0.625rem 1rem;
  border: none;
  border-radius: 0.75rem;
  background: #fff;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #111a28;
}
.admin-partners-page__search-input::-moz-placeholder {
  color: #8c8c93;
}
.admin-partners-page__search-input::placeholder {
  color: #8c8c93;
}
.admin-partners-page__search-input:focus {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.admin-partners-page__search-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.25rem;
  height: 1.25rem;
  color: #767e8e;
  transform: translateY(-50%);
  pointer-events: none;
}
.admin-partners-page__table-card {
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  min-width: 0;
}
.admin-partners-page__table-wrap {
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.admin-partners-page__table {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 45rem;
}
.admin-partners-page__row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: center;
  gap: 1.5rem;
  padding: 0.75rem;
  border-bottom: 0.0625rem solid #f2f2f7;
}
.admin-partners-page__row--head {
  border-bottom: 0.0625rem solid #f2f2f7;
}
.admin-partners-page__row:last-child {
  border-bottom: none;
}
.admin-partners-page__cell {
  min-width: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3;
  color: #3f3f46;
}
.admin-partners-page__cell--id, .admin-partners-page__cell--name {
  text-align: left;
}
.admin-partners-page__cell--url {
  text-align: center;
}
.admin-partners-page__url {
  color: inherit;
  text-decoration: none;
  word-break: break-word;
}
@media (any-hover: hover) {
  .admin-partners-page__url:hover {
    color: var(--color-cta-registration, #006d6d);
  }
}
.admin-partners-page__row-link {
  color: inherit;
  text-decoration: none;
  word-break: break-word;
}
@media (any-hover: hover) {
  .admin-partners-page__row-link:hover {
    color: var(--color-cta-registration, #006d6d);
  }
}
.admin-partners-page__pagination {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.375rem;
}
.admin-partners-page__page-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 0;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  color: #313241;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.admin-partners-page__page-btn svg {
  width: 1rem;
  height: 1rem;
  color: currentColor;
}
.admin-partners-page__page-btn--active {
  background: #15b3ae;
  color: #fff;
  font-weight: 700;
}
@media (max-width: 74.99875em) {
  .admin-partners-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-partners-page__head-actions .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-partners-page__head-actions .admin-partners-page__add {
    display: none;
  }
  .admin-partners-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-partners-page__tools, .admin-partners-page__table-card, .admin-partners-page__pagination {
    margin-inline: 0.5rem;
  }
  .admin-partners-page__tools {
    padding-top: 0.75rem;
  }
  .admin-partners-page__search {
    width: 100%;
  }
  .admin-partners-page__table-card {
    margin-top: 0.5rem;
    padding: 1rem;
    border-radius: 1rem;
  }
  .admin-partners-page__pagination {
    padding-top: 0.5rem;
    padding-bottom: 1rem;
  }
  .admin-partners-page__table-wrap {
    margin-inline: -1rem;
    padding-inline: 1rem;
  }
  .admin-partners-page__row {
    gap: 1rem;
  }
  .admin-partners-page__cell {
    font-size: 1rem;
  }
}

.admin-registrations-page {
  background: #f7fcfc;
}
.admin-registrations-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-registrations-page__content--loading {
  position: relative;
  pointer-events: none;
}
.admin-registrations-page__content--loading::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(247, 252, 252, 0.62);
  -webkit-backdrop-filter: blur(0.0625rem);
          backdrop-filter: blur(0.0625rem);
  z-index: 10;
}
.admin-registrations-page__content--loading::after {
  content: "";
  position: absolute;
  top: 11.25rem;
  left: 50%;
  width: 2.5rem;
  height: 2.5rem;
  margin-left: -1.25rem;
  border: 0.1875rem solid #cfe7e7;
  border-top-color: #0f7f7c;
  border-radius: 50%;
  animation: admin-registrations-spin 0.7s linear infinite;
  z-index: 11;
}
.admin-registrations-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-registrations-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-registrations-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-registrations-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-registrations-page__head-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.admin-registrations-page__head-actions .profile-page__menu-btn {
  display: none;
}
.admin-registrations-page__head-actions .admin-registrations-page__export.btn {
  flex-shrink: 0;
  font-weight: 400;
}
.admin-registrations-page__head-actions .filter-dropdown {
  flex-shrink: 0;
}
.admin-registrations-page__head-actions .filter-dropdown--registrations .filter-dropdown__trigger-box {
  min-height: 3.4375rem;
  padding: 0.75rem 1.125rem;
  border-radius: 1rem;
}
.admin-registrations-page__head-actions .filter-dropdown--registrations .filter-dropdown__trigger {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  color: #253349;
}
.admin-registrations-page__head-actions .filter-dropdown--registrations .filter-dropdown__icon {
  width: 1rem;
  height: 1rem;
  color: #253349;
}
.admin-registrations-page__head-actions .filter-dropdown--registrations.filter-dropdown--active .filter-dropdown__trigger,
.admin-registrations-page__head-actions .filter-dropdown--registrations.filter-dropdown--active .filter-dropdown__icon {
  color: #37a1a1;
}
.admin-registrations-page__head-actions .filter-dropdown--registrations .filter-dropdown__group-title {
  font-weight: 400;
  line-height: 1.5;
}
.admin-registrations-page__head-actions .filter-dropdown--registrations .filter-dropdown__check-text {
  line-height: 1.5;
  color: #767e8e;
}
.admin-registrations-page__head-actions .filter-dropdown--registrations .filter-dropdown__check-box:not(.filter-dropdown__check-box--round) {
  border: 0.125rem solid #02918e;
  background-color: #fff;
  background-image: none;
}
.admin-registrations-page__head-actions .filter-dropdown--registrations .filter-dropdown__checkbox:checked + .filter-dropdown__check-box:not(.filter-dropdown__check-box--round) {
  border-color: #02918e;
  background-color: #02918e;
  background-image: url("../img/registration-checkbox-mark.svg");
  background-size: 100%;
}
.admin-registrations-page__tools {
  display: flex;
  align-items: center;
}
.admin-registrations-page__search {
  position: relative;
  display: block;
  width: 25rem;
  max-width: 100%;
}
.admin-registrations-page__search-input {
  display: block;
  width: 100%;
  padding: 0.625rem 2.75rem 0.625rem 1rem;
  border: none;
  border-radius: 0.75rem;
  background: #fff;
  font-family: var(--font-family);
  font-size: 1rem;
  line-height: 1.25rem;
  color: #253349;
}
.admin-registrations-page__search-input::-moz-placeholder {
  color: #8c8c93;
}
.admin-registrations-page__search-input::placeholder {
  color: #8c8c93;
}
.admin-registrations-page__search-input:focus {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.admin-registrations-page__search-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.25rem;
  height: 1.25rem;
  color: #767e8e;
  transform: translateY(-50%);
  pointer-events: none;
}
.admin-registrations-page__table-card {
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  min-width: 0;
}
.admin-registrations-page__table-wrap {
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.admin-registrations-page__table {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.admin-registrations-page__row {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  align-items: center;
  gap: 1.5rem;
  padding: 0.75rem;
  border-bottom: 0.0625rem solid #f2f2f7;
}
.admin-registrations-page__row--head {
  border-bottom: 0.0625rem solid #f2f2f7;
}
.admin-registrations-page__row:last-child {
  border-bottom: none;
}
.admin-registrations-page__cell {
  min-width: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3;
  color: #3f3f46;
}
.admin-registrations-page__cell--id, .admin-registrations-page__cell--name {
  text-align: left;
}
.admin-registrations-page__cell--book, .admin-registrations-page__cell--contest, .admin-registrations-page__cell--city, .admin-registrations-page__cell--status, .admin-registrations-page__cell--prize {
  text-align: center;
}
.admin-registrations-page__cell--id {
  white-space: nowrap;
}
.admin-registrations-page__cell--name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-registrations-page__cell--book, .admin-registrations-page__cell--contest, .admin-registrations-page__cell--city {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.admin-registrations-page__cell--status, .admin-registrations-page__cell--prize {
  display: flex;
  justify-content: center;
}
.admin-registrations-page__status-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem 0.5rem;
  border-radius: 1.875rem;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.2;
  white-space: nowrap;
}
.admin-registrations-page__status-tag--tested {
  background: rgba(106, 252, 179, 0.1);
  color: #128d50;
}
.admin-registrations-page__status-tag--not-tested {
  background: rgba(178, 178, 178, 0.1);
  color: #767e8e;
}
.admin-registrations-page__status-tag--finalist {
  background: rgba(252, 179, 106, 0.1);
  color: #c46a12;
}
.admin-registrations-page__assign-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  min-height: 2rem;
  padding: 0.375rem 0.75rem;
  border: 0.0625rem solid rgba(0, 109, 109, 0.2);
  border-radius: 0.75rem;
  background: transparent;
  font-family: var(--font-heading);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1;
  color: #006d6d;
  cursor: pointer;
  white-space: nowrap;
}
@media (any-hover: hover) {
  .admin-registrations-page__assign-btn:hover:not(.admin-registrations-page__assign-btn--active) {
    background: rgba(0, 109, 109, 0.05);
  }
}
.admin-registrations-page__assign-btn--active {
  border-color: #006d6d;
  background: #006d6d;
  color: #fff;
}
@media (any-hover: hover) {
  .admin-registrations-page__assign-btn--active:hover {
    background: #005a5a;
    border-color: #005a5a;
    color: #fff;
  }
}
.admin-registrations-page__assign-icon {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}
.admin-registrations-page__prize-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem 0.5rem;
  border: none;
  border-radius: 1.875rem;
  background: rgba(71, 184, 178, 0.1);
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.2;
  color: #02918e;
  cursor: pointer;
  white-space: nowrap;
}
@media (any-hover: hover) {
  .admin-registrations-page__prize-tag:hover {
    background: rgba(71, 184, 178, 0.18);
  }
}
.admin-registrations-page__prize-popover {
  position: fixed;
  z-index: 120;
  width: 27.5rem;
  max-width: calc(100vw - 2rem);
}
.admin-registrations-page__prize-popover[hidden] {
  display: none;
}
.admin-registrations-page__prize-popover-inner {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 1rem 1.25rem;
  border-radius: 1rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(0, 0, 0, 0.15);
}
.admin-registrations-page__prize-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-registrations-page__prize-popover-title {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.5;
  color: #3f4b5f;
}
.admin-registrations-page__prize-options {
  display: flex;
  flex-direction: column;
}
.admin-registrations-page__prize-option {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
  padding: 0.5rem 0.25rem;
  border: none;
  border-radius: 0.75rem;
  background: transparent;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  color: #3f4b5f;
  text-align: left;
  cursor: pointer;
}
@media (any-hover: hover) {
  .admin-registrations-page__prize-option:hover {
    background: rgba(71, 184, 178, 0.1);
  }
}
.admin-registrations-page__prize-option--active {
  background: rgba(71, 184, 178, 0.1);
}
.admin-registrations-page__prize-option-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
}
.admin-registrations-page__prize-dot {
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
}
.admin-registrations-page__prize-option-text {
  min-width: 0;
}
.admin-registrations-page__prize-add {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding-top: 1rem;
  border-top: 0.0625rem solid #d0d2d9;
}
.admin-registrations-page__prize-input {
  display: block;
}
.admin-registrations-page__prize-input input {
  display: block;
  width: 100%;
  padding: 0.875rem 1rem;
  border: 0.0625rem solid #d0d2d9;
  border-radius: 1rem;
  background: #fff;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #253349;
}
.admin-registrations-page__prize-input input::-moz-placeholder {
  color: #767e8e;
}
.admin-registrations-page__prize-input input::placeholder {
  color: #767e8e;
}
.admin-registrations-page__prize-input input:focus {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.admin-registrations-page__prize-add-btn {
  min-height: 3.4375rem;
  padding: 0.875rem 1.5rem;
  border-radius: 1rem;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
}
.admin-registrations-page__prize-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 0.875rem 1.5rem;
  border: none;
  border-radius: 1rem;
  background: transparent;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  color: #006d6d;
  cursor: pointer;
}
@media (any-hover: hover) {
  .admin-registrations-page__prize-remove:hover {
    background: rgba(0, 109, 109, 0.05);
  }
}
.admin-registrations-page__load-more {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  padding: 0.5rem 0;
}
.admin-registrations-page__load-more[hidden] {
  display: none;
}
.admin-registrations-page__load-more--loading .admin-registrations-page__load-more-spinner {
  opacity: 1;
}
.admin-registrations-page__load-more-spinner {
  display: block;
  width: 1.75rem;
  height: 1.75rem;
  border: 0.1875rem solid #cfe7e7;
  border-top-color: #0f7f7c;
  border-radius: 50%;
  opacity: 0;
  animation: admin-registrations-spin 0.7s linear infinite;
  transition: opacity 0.15s ease;
}
@media (max-width: 61.99875em) {
  .admin-registrations-page__head {
    flex-wrap: wrap;
  }
  .admin-registrations-page__head-actions {
    width: 100%;
    justify-content: flex-end;
  }
  .admin-registrations-page__head-actions .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-registrations-page__export {
    order: -1;
    margin-right: auto;
  }
}

@keyframes admin-registrations-spin {
  to {
    transform: rotate(360deg);
  }
}
.admin-results-page {
  background: #f7fcfc;
}
.admin-results-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-results-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-results-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-results-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-results-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-results-page__head-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.admin-results-page__head-actions .profile-page__menu-btn {
  display: none;
}
.admin-results-page__stats-card, .admin-results-page__rating {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  background: #fff;
}
.admin-results-page__stats-card {
  padding: 1.25rem;
  border-radius: 1.25rem;
}
.admin-results-page__rating {
  min-width: 0;
  padding: 1.5rem;
  border-radius: 1.5rem;
}
.admin-results-page__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-results-page__stats {
  display: flex;
  align-items: stretch;
  gap: 1.25rem;
}
.admin-results-page__stat {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  padding: 1rem 2.25rem;
  border-radius: 1.5rem;
  background: #fafafc;
  min-width: 0;
}
.admin-results-page__stat-value {
  margin: 0;
  width: 100%;
  font-family: var(--font-heading);
  font-size: 2.625rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  color: #111a28;
}
.admin-results-page__stat-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
  color: #767e8e;
}
.admin-results-page__stat-meta--stacked {
  flex-direction: column;
  align-items: stretch;
  align-self: stretch;
}
.admin-results-page__stat-accent {
  color: #02918e;
}
.admin-results-page__rating-tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
}
.admin-results-page__chips {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
  flex: 1;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}
.admin-results-page__chip {
  flex-shrink: 0;
  padding: 0.5rem 1rem;
  border: none;
  border-radius: 1.875rem;
  background: rgba(97, 222, 218, 0.2);
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.2;
  color: #157c7a;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.admin-results-page__chip--active {
  background: #02918e;
  color: #fff;
}
.admin-results-page__search {
  position: relative;
  display: block;
  width: 25rem;
  max-width: 100%;
  flex-shrink: 0;
}
.admin-results-page__search-input {
  display: block;
  width: 100%;
  padding: 0.625rem 2.75rem 0.625rem 1rem;
  border: none;
  border-radius: 0.75rem;
  background: #fff;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #111a28;
}
.admin-results-page__search-input::-moz-placeholder {
  color: #8c8c93;
}
.admin-results-page__search-input::placeholder {
  color: #8c8c93;
}
.admin-results-page__search-input:focus {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.admin-results-page__search-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.25rem;
  height: 1.25rem;
  color: #767e8e;
  transform: translateY(-50%);
  pointer-events: none;
}
.admin-results-page__table-wrap {
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.admin-results-page__table {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 61.25rem;
}
.admin-results-page__row {
  display: grid;
  grid-template-columns: 3.125rem minmax(11.25rem, 15rem) minmax(10rem, 1.4fr) minmax(4.5rem, 5.5rem) minmax(5rem, 6rem) minmax(6.875rem, 9.375rem) minmax(9.375rem, 11.875rem) 7.5rem;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem;
  border-bottom: 0.0625rem solid #f2f2f7;
}
.admin-results-page__row--head {
  border-bottom: 0.0625rem solid #f2f2f7;
}
.admin-results-page__row:last-child {
  border-bottom: none;
}
.admin-results-page__cell {
  min-width: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3;
  color: #3f3f46;
}
.admin-results-page__cell--rank, .admin-results-page__cell--score, .admin-results-page__cell--time, .admin-results-page__cell--city {
  text-align: center;
  white-space: nowrap;
}
.admin-results-page__cell--book {
  text-align: center;
  word-break: break-word;
}
.admin-results-page__cell--name {
  text-align: left;
}
.admin-results-page__cell--level {
  display: flex;
  justify-content: center;
}
.admin-results-page__cell--actions {
  display: flex;
  justify-content: flex-end;
}
.admin-results-page__name-link {
  color: inherit;
  text-decoration: none;
}
.admin-results-page__name-link:hover {
  color: #02918e;
  text-decoration: underline;
}
.admin-results-page__exclude-btn {
  padding: 0.375rem 0.625rem;
  border: none;
  border-radius: 0.5rem;
  background: rgba(229, 46, 46, 0.1);
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  color: #b42318;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.admin-results-page__exclude-btn:hover {
  background: rgba(229, 46, 46, 0.18);
}
.admin-results-page__exclude-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.admin-results-page__level-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem 0.5rem;
  border-radius: 1.875rem;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
}
.admin-results-page__level-tag--master {
  background: rgba(106, 252, 179, 0.2);
  color: #128d50;
}
.admin-results-page__level-tag--expert {
  background: rgba(72, 173, 173, 0.2);
  color: #0d5757;
}
.admin-results-page__level-tag--novice {
  background: rgba(189, 94, 234, 0.2);
  color: #9038b8;
}
.admin-results-page__more-btn.btn--primary {
  align-self: center;
  width: 21.875rem;
  max-width: 100%;
  min-height: 3.4375rem;
  padding: 1rem 1.5rem;
  font-size: 1.125rem;
  line-height: 1.5;
}
.admin-results-page__more-btn.btn--primary[hidden] {
  display: none !important;
}
.admin-results-page__rating--loading {
  opacity: 0.65;
  pointer-events: none;
}
.admin-results-page__row--empty {
  display: block;
}
.admin-results-page__cell--empty {
  grid-column: 1/-1;
  padding: 1.5rem 1rem;
  text-align: center;
  color: #767e8e;
  font-size: 1rem;
  line-height: 1.4;
}
@media (max-width: 74.99875em) {
  .admin-results-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-results-page__head-actions .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-results-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-results-page__head-actions .btn--admin {
    display: none;
  }
  .admin-results-page__stats-card, .admin-results-page__rating {
    margin: 0.5rem;
    padding: 1.25rem 1rem;
    border-radius: 1rem;
  }
  .admin-results-page__card-title {
    font-size: 1.25rem;
  }
  .admin-results-page__stats {
    flex-direction: column;
  }
  .admin-results-page__stat-value {
    font-size: 2.25rem;
  }
  .admin-results-page__stat-meta {
    font-size: 1rem;
  }
  .admin-results-page__rating-tools {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    gap: 1rem;
  }
  .admin-results-page__chips {
    flex-wrap: nowrap;
    gap: 0.5rem;
    margin-inline: -1rem;
    padding-inline: 1rem;
  }
  .admin-results-page__chip {
    flex-shrink: 0;
    padding: 0.375rem 0.75rem;
    font-size: 0.75rem;
    line-height: 1.2;
    text-align: center;
  }
  .admin-results-page__search {
    width: 100%;
  }
  .admin-results-page__table-wrap {
    margin-inline: -1rem;
    padding-inline: 1rem;
  }
  .admin-results-page__table {
    min-width: 45rem;
  }
  .admin-results-page__row {
    grid-template-columns: 1.5rem minmax(7.5rem, 10rem) minmax(6.25rem, 1fr) minmax(3.25rem, 3.75rem) minmax(3.25rem, 3.75rem) minmax(8.125rem, 10.625rem);
    gap: 0.75rem;
    padding: 0.75rem;
  }
  .admin-results-page__cell--city {
    display: none;
  }
  .admin-results-page__cell {
    font-size: 0.875rem;
  }
  .admin-results-page__cell--name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .admin-results-page__level-tag {
    font-size: 0.75rem;
  }
  .admin-results-page__more-btn.btn--primary {
    align-self: stretch;
    width: 100%;
  }
}

.admin-test-edit-page {
  background: #f7fcfc;
}
.admin-test-edit-page__errors, .admin-test-edit-page__status {
  margin: 0 0 0.75rem;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  background: #fff;
}
.admin-test-edit-page__errors {
  color: #e52e2e;
  list-style: none;
  margin: 0;
  padding: 0.75rem 1rem;
}
.admin-test-edit-page__errors li + li {
  margin-top: 0.25rem;
}
.admin-test-edit-page__status {
  color: #0f7f7c;
}
.admin-test-edit-page .lk-field__control--invalid {
  border-color: #e52e2e;
  box-shadow: 0 0 0 0.0625rem #e52e2e;
}
.admin-test-edit-page__content {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.admin-test-edit-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-test-edit-page__head-main {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  min-width: 0;
}
.admin-test-edit-page__back {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  color: #9399a7;
  text-decoration: none;
}
.admin-test-edit-page__back-icon {
  display: block;
  width: 2rem;
  height: 2rem;
  fill: currentColor;
  stroke: currentColor;
}
.admin-test-edit-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-test-edit-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-test-edit-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-test-edit-page__save--card.btn {
  display: none;
}
.admin-test-edit-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-test-edit-page__cards {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.admin-test-edit-page__card {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.25rem;
  background: #fff;
  border-radius: 1.25rem;
}
.admin-test-edit-page__card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-test-edit-page__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-test-edit-page__settings-cols {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
}
.admin-test-edit-page__settings-col {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1.25rem;
  min-width: 0;
}
.admin-test-edit-page__settings-col .lk-field {
  margin: 0;
}
.admin-test-edit-page__settings-col .lk-field__control:not(.admin-test-edit-page__textarea) {
  min-height: 3.25rem;
}
.admin-test-edit-page__settings-col .lk-field__control:disabled {
  color: #1b2638;
  opacity: 1;
  cursor: not-allowed;
}
.admin-test-edit-page__toggle-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 2rem 0;
}
.admin-test-edit-page__toggle-label {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  color: #0d172a;
}
.admin-test-edit-page .lk-field--select .lk-field__input-wrap {
  position: relative;
  display: block;
}
.admin-test-edit-page .lk-field--select .lk-field__control {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}
.admin-test-edit-page .lk-field--select .lk-field__control:disabled {
  cursor: not-allowed;
}
.admin-test-edit-page__select-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.5rem;
  height: 1.5rem;
  color: #767e8e;
  pointer-events: none;
  transform: translateY(-50%);
}
.admin-test-edit-page__questions {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-test-edit-page__question {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  padding: 1rem;
  background: #fafafc;
  border-radius: 1.5rem;
}
.admin-test-edit-page__question--collapsed .admin-test-edit-page__question-body {
  grid-template-rows: 0fr;
}
.admin-test-edit-page__question-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-test-edit-page__question-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-test-edit-page__question-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-test-edit-page__question-btn.btn--soft {
  padding: 0.75rem 1.25rem;
  min-height: 2.9375rem;
  border-radius: 1rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
}
.admin-test-edit-page__question-btn--text.btn {
  padding: 0.75rem 1.25rem;
  min-height: 2.9375rem;
  border: 0;
  border-radius: 1rem;
  background: transparent;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  color: #006d6d;
  cursor: pointer;
}
.admin-test-edit-page__question-body {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.3s ease;
}
.admin-test-edit-page__question-body-inner {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
  overflow: hidden;
  min-height: 0;
}
@media (prefers-reduced-motion: reduce) {
  .admin-test-edit-page__question-body {
    transition: none;
  }
}
.admin-test-edit-page__question-main, .admin-test-edit-page__question-answers {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1.875rem;
  min-width: 0;
}
.admin-test-edit-page__textarea {
  display: block;
  min-height: 3.25rem;
  height: auto;
  resize: none;
  overflow: hidden;
  field-sizing: content;
}
.admin-test-edit-page__question-main .lk-field__control:not(.admin-test-edit-page__textarea), .admin-test-edit-page__question-answers .lk-field__control:not(.admin-test-edit-page__textarea) {
  min-height: 3.25rem;
}
@media (max-width: 74.99875em) {
  .admin-test-edit-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
    gap: 1rem;
  }
  .admin-test-edit-page__head-main {
    flex: 1;
    min-width: 0;
  }
  .admin-test-edit-page__back-icon {
    width: 1.5rem;
    height: 1.5rem;
  }
  .admin-test-edit-page__title {
    line-height: 1.2;
  }
  .admin-test-edit-page__save:not(.admin-test-edit-page__save--card) {
    display: none;
  }
  .admin-test-edit-page__save--card.btn {
    display: flex;
    align-self: stretch;
    width: 100%;
  }
  .admin-test-edit-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-test-edit-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-test-edit-page__cards {
    gap: 0.5rem;
    padding: 0.5rem;
  }
  .admin-test-edit-page__card {
    padding: 1rem;
    border-radius: 1rem;
    gap: 1rem;
  }
  .admin-test-edit-page__card-head {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-test-edit-page__card-head .btn--admin {
    width: 100%;
  }
  .admin-test-edit-page__card-title, .admin-test-edit-page__question-title {
    font-size: 1.125rem;
  }
  .admin-test-edit-page__settings-cols {
    flex-direction: column;
    gap: 1.25rem;
  }
  .admin-test-edit-page__toggle-row {
    padding: 1rem 0;
  }
  .admin-test-edit-page__toggle-label {
    font-size: 1.125rem;
  }
  .admin-test-edit-page__question-head {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-test-edit-page__question-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-test-edit-page__question-btn.btn--soft, .admin-test-edit-page__question-btn--text {
    width: 100%;
  }
  .admin-test-edit-page__question-body-inner {
    flex-direction: column;
    gap: 1rem;
  }
}

.admin-tests-page {
  background: #f7fcfc;
}
.admin-tests-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-tests-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-tests-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-tests-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-tests-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-tests-page__head-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.admin-tests-page__head-actions .profile-page__menu-btn {
  display: none;
}
.admin-tests-page__search {
  position: relative;
  display: block;
  width: 25rem;
  max-width: 100%;
}
.admin-tests-page__search-input {
  display: block;
  width: 100%;
  padding: 0.625rem 2.75rem 0.625rem 1rem;
  border: none;
  border-radius: 0.75rem;
  background: #fff;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #111a28;
}
.admin-tests-page__search-input::-moz-placeholder {
  color: #8c8c93;
}
.admin-tests-page__search-input::placeholder {
  color: #8c8c93;
}
.admin-tests-page__search-input:focus {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.admin-tests-page__search-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.25rem;
  height: 1.25rem;
  color: #767e8e;
  transform: translateY(-50%);
  pointer-events: none;
}
.admin-tests-page__list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-tests-page__card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem;
  background: #fff;
  border-radius: 1.25rem;
}
.admin-tests-page__card-title {
  margin: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-tests-page__card-status {
  display: inline-flex;
  align-items: center;
  padding: 0.25rem 0.625rem;
  border-radius: 1.25rem;
  background: rgba(178, 178, 178, 0.2);
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  color: #7d7d7d;
}
.admin-tests-page__card--draft {
  border: 0.0625rem solid rgba(178, 178, 178, 0.25);
}
.admin-tests-page__card-link {
  color: inherit;
  text-decoration: none;
}
@media (any-hover: hover) {
  .admin-tests-page__card-link:hover {
    color: #006d6d;
  }
}
.admin-tests-page__card-actions {
  flex-shrink: 0;
  position: relative;
}
.admin-tests-page__menu-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  padding: 0.5rem;
  border: 0;
  border-radius: 1rem;
  background: rgba(71, 184, 178, 0.1);
  color: #0c5955;
  cursor: pointer;
  transition: background 0.2s;
}
@media (any-hover: hover) {
  .admin-tests-page__menu-btn:hover {
    background: rgba(71, 184, 178, 0.18);
  }
}
.admin-tests-page__menu-icon {
  width: 2rem;
  height: 2rem;
  flex-shrink: 0;
}
.admin-tests-page__dropdown {
  position: absolute;
  top: 50%;
  right: 100%;
  z-index: 20;
  width: 13.75rem;
  margin-right: 0.5rem;
  padding: 0.5rem;
  background: #fff;
  border-radius: 1.25rem;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 0;
}
.admin-tests-page__dropdown[hidden] {
  display: none;
}
.admin-tests-page__dropdown-item {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  height: 2.5rem;
  padding: 0 0.5rem;
  border: 0;
  background: transparent;
  border-radius: 1rem;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #5d5d6d;
  cursor: pointer;
  text-align: left;
  text-decoration: none;
  transition: background 0.2s;
}
@media (any-hover: hover) {
  .admin-tests-page__dropdown-item:hover {
    background: #f0f0f5;
  }
}
.admin-tests-page__dropdown-item--delete {
  color: #ef4444;
}
.admin-tests-page__dropdown-icon-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  color: #5d5d6d;
}
.admin-tests-page__dropdown-icon {
  width: 1rem;
  height: 1rem;
}
.admin-tests-page__dropdown-item--delete .admin-tests-page__dropdown-icon-wrap {
  color: #ef4444;
}
.admin-tests-page__pagination {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}
.admin-tests-page__page-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
  color: #313241;
  text-decoration: none;
  font-size: 0.875rem;
}
.admin-tests-page__page-btn--active {
  background: #15b3ae;
  color: #fff;
  font-weight: 700;
}
@media (max-width: 74.99875em) {
  .admin-tests-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-tests-page__head-actions .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-tests-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-tests-page__search, .admin-tests-page__list {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .admin-tests-page__search {
    padding-top: 0.75rem;
  }
  .admin-tests-page__list {
    padding-top: 0.5rem;
    padding-bottom: 1rem;
  }
  .admin-tests-page__head-actions .btn--admin {
    display: none;
  }
  .admin-tests-page__card {
    padding: 1rem;
    border-radius: 1rem;
  }
  .admin-tests-page__card-title {
    font-size: 1.125rem;
  }
}

.admin-user-page {
  background: #f7fcfc;
}
.admin-user-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-user-page__status, .admin-user-page__errors {
  margin: 0;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  font-size: 1rem;
  line-height: 1.4;
}
.admin-user-page__status {
  background: rgba(71, 184, 178, 0.12);
  color: #006d6d;
}
.admin-user-page__errors {
  background: rgba(220, 53, 69, 0.08);
  color: #b42318;
  list-style: none;
}
.admin-user-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-user-page__head-main {
  display: flex;
  align-items: center;
  gap: 1rem;
  min-width: 0;
}
.admin-user-page__back {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  color: #9399a7;
  text-decoration: none;
}
.admin-user-page__back-icon {
  display: block;
  width: 2rem;
  height: 2rem;
  fill: currentColor;
  stroke: currentColor;
}
.admin-user-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-user-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-user-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-user-page__head-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-user-page__head-actions .btn.btn--primary,
.admin-user-page__head-actions .btn.btn--soft, .admin-user-page__actions .btn.btn--primary,
.admin-user-page__actions .btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-user-page__actions {
  display: none;
  flex-direction: column;
  gap: 0.75rem;
}
.admin-user-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-user-page__cards {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-user-page__card {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
}
.admin-user-page__card--contest {
  gap: 2rem;
}
.admin-user-page__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-user-page__password-hint {
  margin: 0;
  font-family: var(--font-family);
  font-size: 0.875rem;
  line-height: 1.4;
  color: #8c8c93;
}
.admin-user-page .lk-field--password .registration__suffix-btn {
  position: absolute;
  right: 0.5rem;
  top: 50%;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0.75rem;
  background: transparent;
  color: #767e8e;
  cursor: pointer;
  transform: translateY(-50%);
}
.admin-user-page .lk-field--password .registration__suffix-btn[aria-pressed=true] .registration__eye-icon--masked {
  visibility: hidden;
}
.admin-user-page .lk-field--password .registration__suffix-btn[aria-pressed=true] .registration__eye-icon--shown {
  visibility: visible;
}
.admin-user-page .lk-field--password .registration__eye-icon--shown {
  visibility: hidden;
}
.admin-user-page .lk-field--password .registration__eye-svg {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
}
.admin-user-page__fields-grid {
  display: grid;
  gap: 0.75rem;
  min-width: 0;
}
.admin-user-page__fields-grid--personal, .admin-user-page__fields-grid--system {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.admin-user-page__fields-grid--password {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.admin-user-page__fields-grid--stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.admin-user-page__contest-body {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  min-width: 0;
}
.admin-user-page__section {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  min-width: 0;
}
.admin-user-page__section-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-user-page__moderation-meta, .admin-user-page__moderation-status {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  line-height: 1.4;
  color: #5a6477;
}
.admin-user-page__moderation-status {
  color: #b42318;
  font-weight: 500;
}
.admin-user-page__moderation-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.admin-user-page__prizes {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.admin-user-page__prize-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem 0.5rem;
  border-radius: 1.875rem;
  background: rgba(106, 252, 179, 0.1);
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #128d50;
  text-align: center;
  word-break: break-word;
}
.admin-user-page__empty-note {
  font-family: var(--font-family);
  font-size: 1.125rem;
  line-height: 1.3;
  color: #3f3f46;
}
.admin-user-page__books {
  display: flex;
  align-items: flex-start;
  gap: 3rem;
  overflow-x: auto;
  padding-bottom: 0.25rem;
  -webkit-overflow-scrolling: touch;
}
.admin-user-page__book-card {
  display: flex;
  flex-direction: column;
  flex: 0 0 auto;
  gap: 0.75rem;
  width: 13.75rem;
  padding: 0.75rem;
  border-radius: 1.5rem;
  background: #f9f9fa;
}
.admin-user-page__book-card-cover {
  overflow: hidden;
  border-radius: 1rem;
  box-shadow: 0 0.07875rem 0.55rem rgba(0, 0, 0, 0.15);
}
.admin-user-page__book-card-cover img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
.admin-user-page__book-card-body {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  min-width: 0;
}
.admin-user-page__book-card-body .book-card__tag {
  align-self: flex-start;
}
.admin-user-page__book-card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.5;
  color: #1b2638;
  word-break: break-word;
}
.admin-user-page .lk-field--select .lk-field__input-wrap {
  position: relative;
  display: block;
}
.admin-user-page .lk-field--select .lk-field__control {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
}
.admin-user-page .lk-field__input-wrap {
  position: relative;
  display: block;
}
.admin-user-page__select-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.5rem;
  height: 1.5rem;
  color: #767e8e;
  pointer-events: none;
  transform: translateY(-50%);
}
@media (max-width: 75rem) {
  .admin-user-page__fields-grid--stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 74.99875em) {
  .admin-user-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
    gap: 1rem;
  }
  .admin-user-page__head-main {
    flex: 1;
    min-width: 0;
  }
  .admin-user-page__back-icon {
    width: 1.5rem;
    height: 1.5rem;
  }
  .admin-user-page__title {
    line-height: 1.2;
  }
  .admin-user-page__head-actions {
    display: none;
  }
  .admin-user-page__actions {
    display: flex;
    padding: 0 0.5rem 0.5rem;
  }
  .admin-user-page__actions .btn {
    width: 100%;
  }
  .admin-user-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-user-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-user-page__cards {
    padding: 0.5rem;
    gap: 0.5rem;
  }
  .admin-user-page__card {
    border-radius: 1rem;
    padding: 1rem;
    gap: 1rem;
  }
  .admin-user-page__card--contest {
    gap: 1.5rem;
  }
  .admin-user-page__card-title, .admin-user-page__section-title {
    font-size: 1.125rem;
  }
  .admin-user-page__fields-grid--personal, .admin-user-page__fields-grid--system, .admin-user-page__fields-grid--password, .admin-user-page__fields-grid--stats {
    grid-template-columns: 1fr;
  }
  .admin-user-page__contest-body {
    gap: 1.5rem;
  }
  .admin-user-page__books {
    gap: 1rem;
  }
  .admin-user-page__book-card {
    width: 11.25rem;
  }
}

.admin-users-page {
  background: #f7fcfc;
}
.admin-users-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-users-page__content--loading {
  position: relative;
  pointer-events: none;
}
.admin-users-page__content--loading::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(247, 252, 252, 0.62);
  -webkit-backdrop-filter: blur(0.0625rem);
          backdrop-filter: blur(0.0625rem);
  z-index: 10;
}
.admin-users-page__content--loading::after {
  content: "";
  position: absolute;
  top: 11.25rem;
  left: 50%;
  width: 2.5rem;
  height: 2.5rem;
  margin-left: -1.25rem;
  border: 0.1875rem solid #cfe7e7;
  border-top-color: #0f7f7c;
  border-radius: 50%;
  animation: admin-users-spin 0.7s linear infinite;
  z-index: 11;
}
.admin-users-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-users-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-users-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-users-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-users-page__head-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.admin-users-page__head-actions .profile-page__menu-btn {
  display: none;
}
.admin-users-page__head-actions .filter-dropdown {
  flex-shrink: 0;
}
.admin-users-page__tools {
  display: flex;
  align-items: center;
}
.admin-users-page__search {
  position: relative;
  display: block;
  width: 25rem;
  max-width: 100%;
}
.admin-users-page__search-input {
  display: block;
  width: 100%;
  padding: 0.625rem 4.5rem 0.625rem 1rem;
  border: none;
  border-radius: 0.75rem;
  background: #fff;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #111a28;
}
.admin-users-page__search-input::-moz-placeholder {
  color: #8c8c93;
}
.admin-users-page__search-input::placeholder {
  color: #8c8c93;
}
.admin-users-page__search-input:focus {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.admin-users-page__search-clear {
  position: absolute;
  top: 50%;
  right: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
  border: none;
  border-radius: 0.375rem;
  background: transparent;
  color: #767e8e;
  cursor: pointer;
  transform: translateY(-50%);
}
.admin-users-page__search-clear[hidden] {
  display: none;
}
.admin-users-page__search-clear:hover {
  color: #111a28;
  background: rgba(17, 26, 40, 0.06);
}
.admin-users-page__search-clear:focus-visible {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.admin-users-page__search-clear-icon {
  display: block;
  width: 1rem;
  height: 1rem;
}
.admin-users-page__search-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.25rem;
  height: 1.25rem;
  color: #767e8e;
  transform: translateY(-50%);
  pointer-events: none;
}
.admin-users-page__table-card {
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  min-width: 0;
}
.admin-users-page__table-wrap {
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.admin-users-page__table {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-width: 70rem;
}
.admin-users-page__row {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  align-items: start;
  gap: 1.5rem;
  padding: 0.75rem;
  border-bottom: 0.0625rem solid #f2f2f7;
}
.admin-users-page__row--head {
  border-bottom: 0.0625rem solid #f2f2f7;
}
.admin-users-page__row:last-child {
  border-bottom: none;
}
.admin-users-page__cell {
  min-width: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3;
  color: #3f3f46;
  word-break: break-word;
  overflow-wrap: anywhere;
  white-space: normal;
}
.admin-users-page__cell--id, .admin-users-page__cell--name {
  text-align: left;
}
.admin-users-page__cell--book, .admin-users-page__cell--city, .admin-users-page__cell--contacts, .admin-users-page__cell--level, .admin-users-page__cell--prizes {
  text-align: center;
}
.admin-users-page__cell--level, .admin-users-page__cell--prizes {
  display: flex;
  justify-content: center;
}
.admin-users-page__row-link {
  color: inherit;
  text-decoration: none;
}
@media (any-hover: hover) {
  .admin-users-page__row-link:hover {
    color: var(--color-cta-registration, #006d6d);
  }
}
.admin-users-page__cell--contacts {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.125rem;
}
.admin-users-page__level-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem 0.5rem;
  border-radius: 1.875rem;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.2;
  white-space: normal;
  text-align: center;
}
.admin-users-page__level-tag--master {
  background: rgba(106, 252, 179, 0.2);
  color: #128d50;
}
.admin-users-page__level-tag--expert {
  background: rgba(72, 173, 173, 0.2);
  color: #0d5757;
}
.admin-users-page__level-tag--novice {
  background: rgba(189, 94, 234, 0.2);
  color: #9038b8;
}
.admin-users-page__prize-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem 0.5rem;
  border-radius: 1.875rem;
  background: rgba(106, 252, 179, 0.1);
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.2;
  color: #128d50;
  white-space: normal;
  text-align: center;
  word-break: break-word;
}
.admin-users-page__pagination {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0.375rem;
}
.admin-users-page__page-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border: 0;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  color: #313241;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
.admin-users-page__page-btn svg {
  width: 1rem;
  height: 1rem;
  color: currentColor;
}
.admin-users-page__page-btn--active {
  background: #15b3ae;
  color: #fff;
  font-weight: 700;
}
@media (max-width: 74.99875em) {
  .admin-users-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-users-page__head-actions .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-users-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-users-page__tools, .admin-users-page__table-card, .admin-users-page__pagination {
    margin-inline: 0.5rem;
  }
  .admin-users-page__tools {
    padding-top: 0.75rem;
  }
  .admin-users-page__search {
    width: 100%;
  }
  .admin-users-page__table-card {
    margin-top: 0.5rem;
    padding: 1rem;
    border-radius: 1rem;
  }
  .admin-users-page__pagination {
    padding-top: 0.5rem;
    padding-bottom: 1rem;
  }
  .admin-users-page__table-wrap {
    margin-inline: -1rem;
    padding-inline: 1rem;
  }
  .admin-users-page__table {
    min-width: 53.75rem;
  }
  .admin-users-page__row {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.75rem;
  }
  .admin-users-page__cell--city {
    display: none;
  }
  .admin-users-page__cell {
    font-size: 0.875rem;
  }
  .admin-users-page__cell--contacts span {
    display: block;
    max-width: 100%;
    white-space: normal;
  }
  .admin-users-page__cell--name {
    white-space: normal;
  }
  .admin-users-page__level-tag, .admin-users-page__prize-tag {
    font-size: 0.75rem;
  }
}

@keyframes admin-users-spin {
  to {
    transform: rotate(360deg);
  }
}
.admin-videos-page {
  background: #f7fcfc;
}
.admin-videos-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
}
.admin-videos-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 3.4375rem;
}
.admin-videos-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-videos-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .admin-videos-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.admin-videos-page__add.btn.btn--primary.btn--admin {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-videos-page__head-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-videos-page__head-actions .btn.btn--primary,
.admin-videos-page__head-actions .btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-videos-page__save--card.btn {
  display: none;
}
.admin-videos-page__status {
  margin: 0 0 0.75rem;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  background: #e8f8f7;
  color: #006d6d;
  font-size: 0.875rem;
  line-height: 1.4;
}
.admin-videos-page__errors {
  margin: 0 0 0.75rem;
  padding: 0.75rem 1rem 0.75rem 2rem;
  border-radius: 0.75rem;
  background: #fff0f0;
  color: #c0392b;
  font-size: 0.875rem;
  line-height: 1.4;
  list-style: disc;
}
.admin-videos-page .profile-page__menu-btn {
  display: none;
  flex-shrink: 0;
}
.admin-videos-page__list {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-videos-page__form {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.admin-videos-page__item {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  padding: 1rem;
  border-radius: 1.25rem;
  background: #fff;
}
.admin-videos-page__item--collapsed .admin-videos-page__item-body {
  grid-template-rows: 0fr;
}
.admin-videos-page__item-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.admin-videos-page__item-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.admin-videos-page__item-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-shrink: 0;
}
.admin-videos-page__item-btn.btn--soft {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.admin-videos-page__item-btn--text.btn {
  min-height: unset;
  padding: 0.625rem 1.25rem;
  border: 0;
  border-radius: 1rem;
  background: transparent;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  color: #006d6d;
  cursor: pointer;
}
.admin-videos-page__item-body {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.3s ease;
}
.admin-videos-page__item-body-inner {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  overflow: hidden;
  min-height: 0;
}
.admin-videos-page__item-row {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
}
.admin-videos-page__preview {
  position: relative;
  flex-shrink: 0;
  width: 27.5rem;
  height: 18.25rem;
  border-radius: 1.5rem;
  overflow: hidden;
}
.admin-videos-page__preview--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 0.125rem dashed #c5c6d6;
  background: #fff;
}
.admin-videos-page__preview--filled, .admin-videos-page__preview:not(.admin-videos-page__preview--empty) {
  box-shadow: 0 0.07375rem 0.514375rem rgba(0, 0, 0, 0.15);
}
.admin-videos-page__preview-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.admin-videos-page__preview-img[hidden] {
  display: none;
}
.admin-videos-page__preview-pick.btn--soft {
  min-height: 2.5rem;
  padding: 0.5rem 0.75rem;
  border-radius: 1rem;
  background: rgba(71, 184, 178, 0.1);
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.5;
  color: #006d6d;
}
.admin-videos-page__preview-pick.btn--soft[hidden] {
  display: none !important;
}
.admin-videos-page__preview--filled .admin-videos-page__preview-pick.btn--soft {
  display: none !important;
}
.admin-videos-page__preview-edit {
  position: absolute;
  right: 0.75rem;
  bottom: 0.75rem;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 0.5rem;
  border: 0;
  border-radius: 0.75rem;
  background: #006d6d;
  color: #fff;
  cursor: pointer;
  line-height: 0;
}
.admin-videos-page__preview--filled .admin-videos-page__preview-edit:not([hidden]) {
  display: inline-flex;
}
.admin-videos-page__preview-edit-icon {
  width: 1.5rem;
  height: 1.5rem;
}
.admin-videos-page__field {
  flex: 1;
  min-width: 0;
}
.admin-videos-page__fields {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1rem;
  min-width: 0;
}
@media (prefers-reduced-motion: reduce) {
  .admin-videos-page__item-body {
    transition: none;
  }
}
@media (max-width: 74.99875em) {
  .admin-videos-page__head {
    padding: 0.5rem 1rem;
    min-height: auto;
    background: #fff;
  }
  .admin-videos-page__head-actions {
    display: none;
  }
  .admin-videos-page__save--card.btn {
    display: flex;
    margin: 0.5rem;
    width: calc(100% - 1rem);
  }
  .admin-videos-page__content {
    padding: 0;
    gap: 0;
  }
  .admin-videos-page .profile-page__menu-btn {
    display: inline-flex;
  }
  .admin-videos-page__add.btn {
    display: none;
  }
  .admin-videos-page__list {
    padding: 0.5rem;
    gap: 0.5rem;
  }
  .admin-videos-page__item {
    border-radius: 1rem;
  }
  .admin-videos-page__item-title {
    font-size: 1.125rem;
  }
  .admin-videos-page__item-head {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-videos-page__item-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .admin-videos-page__item-actions .btn {
    width: 100%;
  }
  .admin-videos-page__item-row {
    flex-direction: column;
    gap: 0.625rem;
  }
  .admin-videos-page__preview {
    width: 100%;
    height: auto;
    aspect-ratio: 440/292;
  }
}

.books-page {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}
.books-page__hero {
  padding-bottom: 3.75rem;
  position: relative;
}
@media (max-width: 61.99875em) {
  .books-page__hero {
    padding-bottom: 2rem;
  }
}
.books-page__hero-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media (max-width: 61.99875em) {
  .books-page__hero-inner {
    gap: 0.75rem;
  }
}
.books-page__filters {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media (max-width: 47.99875em) {
  .books-page__filters {
    gap: 0.5rem;
  }
}
.books-page__catalog {
  padding-bottom: 5rem;
}
@media (max-width: 61.99875em) {
  .books-page__catalog {
    padding-bottom: 3rem;
  }
}
.books-page__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.25rem;
}
@media (max-width: 47.99875em) {
  .books-page__list {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
}
.books-page__empty {
  grid-column: 1/-1;
  margin: 0;
  padding: 1.5rem;
  border-radius: 1rem;
  background: #fff;
  box-shadow: var(--shadow);
  font-size: 1.125rem;
  line-height: 1.5;
  color: #4f5869;
  text-align: center;
}

.book-card__tag--green {
  background: var(--color-accent-teal-20);
  color: var(--color-accent-teal);
}

.error-page {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}
.error-page__content {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 5rem;
}
@media (max-width: 61.99875em) {
  .error-page__content {
    align-items: flex-start;
    padding-bottom: 3rem;
  }
}
.error-page__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 53.9375rem;
  gap: 2.5rem;
}
@media (max-width: 61.99875em) {
  .error-page__inner {
    gap: 1.5rem;
    padding-top: 2rem;
  }
}
.error-page__illustration {
  position: relative;
  width: 100%;
  max-width: 50rem;
  aspect-ratio: 800/302;
}
@media (max-width: 61.99875em) {
  .error-page__illustration {
    max-width: 20rem;
    aspect-ratio: 320/121.56;
  }
}
.error-page__digits {
  position: absolute;
  top: 4.97%;
  right: 0;
  left: 0;
  display: block;
  width: 100%;
  height: auto;
}
.error-page__object {
  position: absolute;
  top: 0;
  left: 36.31%;
  width: 29%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center bottom;
     object-position: center bottom;
}
.error-page__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 2.6875rem;
}
@media (max-width: 61.99875em) {
  .error-page__body {
    gap: 1.5rem;
  }
}
.error-page__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 45.9375rem;
  gap: 1rem;
  text-align: center;
}
.error-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.1;
  color: #1b2638;
}
@supports (font-size: clamp( 1.5rem , 1.2313432836rem  +  1.3432835821vw , 2.625rem )) {
  .error-page__title {
    font-size: clamp( 1.5rem , 1.2313432836rem  +  1.3432835821vw , 2.625rem );
  }
}
@supports not (font-size: clamp( 1.5rem , 1.2313432836rem  +  1.3432835821vw , 2.625rem )) {
  .error-page__title {
    font-size: calc(1.5rem + 1.125 * (100vw - 20rem) / 83.75);
  }
}
.error-page__lead {
  margin: 0;
  font-family: var(--font-family);
  line-height: 1.4;
  color: #5a6477;
}
@supports (font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem )) {
  .error-page__lead {
    font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem );
  }
}
@supports not (font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem )) {
  .error-page__lead {
    font-size: calc(1rem + 0.125 * (100vw - 20rem) / 83.75);
  }
}

.faq-page {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}
.faq-page__content {
  flex: 1;
  position: relative;
  padding-bottom: 3.75rem;
}
@media (max-width: 61.99875em) {
  .faq-page__content {
    padding-bottom: 1.5rem;
  }
}
.faq-page__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
  padding: 0 9.375rem;
}
@media (max-width: 61.99875em) {
  .faq-page__inner {
    max-width: none;
    padding: 0 1rem;
  }
}
.faq-page__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.75rem;
}
@media (max-width: 61.99875em) {
  .faq-page__body {
    align-items: stretch;
    gap: 1.5rem;
  }
}
.faq-page__title-row {
  display: flex;
  align-self: stretch;
  gap: 3.75rem;
}
@media (max-width: 61.99875em) {
  .faq-page__title-row {
    gap: 0;
  }
}
.faq-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 3.75rem;
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
  color: #111a28;
}
@media (max-width: 61.99875em) {
  .faq-page__title {
    font-size: 1.5rem;
    line-height: 1.2;
  }
}
.faq-page__list {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  gap: 1.5rem;
}
@media (max-width: 61.99875em) {
  .faq-page__list {
    gap: 0.75rem;
  }
}
.faq-page__empty {
  margin: 0;
  padding: 1.5rem;
  border-radius: 1rem;
  background: var(--color-surface);
  box-shadow: var(--shadow);
  font-size: 1.125rem;
  line-height: 1.5;
  color: #4f5869;
  text-align: center;
}
@media (max-width: 61.99875em) {
  .faq-page .btn--accent-wide {
    align-self: stretch;
    width: 100%;
  }
}

.faq-item {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 1.25rem 1.375rem;
  border: 0.125rem solid transparent;
  border-radius: 1rem;
  background: var(--color-surface);
  transition: border-color 0.3s ease;
}
@media (max-width: 61.99875em) {
  .faq-item {
    padding: 1rem 0.75rem;
    border-radius: 0.75rem;
  }
}
.faq-item--open {
  border-color: #08b6b0;
}
.faq-item--open .faq-item__question {
  font-weight: 600;
  color: #1b2638;
}
.faq-item--open .faq-item__icon-plus {
  opacity: 0;
  transform: rotate(-90deg) scale(0.85);
}
.faq-item--open .faq-item__icon-minus {
  opacity: 1;
  transform: rotate(0deg) scale(1);
}
.faq-item--open .faq-item__content {
  grid-template-rows: 1fr;
  margin-top: 1rem;
}
@media (max-width: 61.99875em) {
  .faq-item--open .faq-item__content {
    margin-top: 0.75rem;
  }
}
.faq-item__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  width: 100%;
  padding: 0;
  border: none;
  background: transparent;
  text-align: left;
  cursor: pointer;
}
@media (max-width: 61.99875em) {
  .faq-item__trigger {
    gap: 0.75rem;
  }
}
.faq-item__trigger:focus-visible {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: -0.125rem;
  border-radius: 0.875rem;
}
@media (max-width: 61.99875em) {
  .faq-item__trigger:focus-visible {
    border-radius: 0.625rem;
  }
}
.faq-item--open .faq-item__trigger {
  align-items: flex-start;
}
.faq-item__question {
  flex: 1;
  min-width: 0;
  padding-right: 0.5rem;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.5;
  color: #5a6477;
  transition: color 0.3s ease;
}
@media (max-width: 61.99875em) {
  .faq-item__question {
    padding-right: 0.25rem;
    font-size: 1.25rem;
    line-height: 1.1;
  }
}
.faq-item__icon {
  position: relative;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  color: #3f4b5f;
}
@media (max-width: 61.99875em) {
  .faq-item__icon {
    width: 1.5rem;
    height: 1.5rem;
  }
}
.faq-item__icon-plus, .faq-item__icon-minus {
  position: absolute;
  inset: 0;
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.faq-item__icon-minus {
  opacity: 0;
  transform: rotate(90deg) scale(0.85);
}
.faq-item__content {
  display: grid;
  grid-template-rows: 0fr;
  margin-top: 0;
  transition: grid-template-rows 0.35s ease, margin-top 0.35s ease;
}
.faq-item__content-inner {
  overflow: hidden;
  min-height: 0;
}
.faq-item__answer {
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  color: #5a6477;
}
@media (max-width: 61.99875em) {
  .faq-item__answer {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media (prefers-reduced-motion: reduce) {
  .faq-item__content {
    transition: none;
    margin-top: 0;
  }
  .faq-item--open .faq-item__content {
    margin-top: 1rem;
  }
}
@media (prefers-reduced-motion: reduce) and (max-width: 61.99875em) {
  .faq-item--open .faq-item__content {
    margin-top: 0.75rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .faq-item__icon-plus, .faq-item__icon-minus {
    transition: none;
  }
}

.gallery-page {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}
.gallery-page__content {
  flex: 1;
  padding-bottom: 3.75rem;
}
@media (max-width: 61.99875em) {
  .gallery-page__content {
    padding-bottom: 1.5rem;
  }
}
.gallery-page__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
  padding: 0 9.375rem;
}
@media (max-width: 61.99875em) {
  .gallery-page__inner {
    max-width: none;
    padding: 0 1rem;
  }
}
.gallery-page__head {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  gap: 1rem;
  margin-bottom: 3.75rem;
}
@media (max-width: 61.99875em) {
  .gallery-page__head {
    gap: 1.5rem;
    margin-bottom: 1.5rem;
  }
}
.gallery-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 3.75rem;
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
  color: #111a28;
}
@media (max-width: 61.99875em) {
  .gallery-page__title {
    font-size: 1.5rem;
  }
}
.gallery-page__filters {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.gallery-page__grid {
  position: relative;
}
.gallery-page__footer {
  display: flex;
  justify-content: center;
  margin-top: 3.75rem;
}
@media (max-width: 61.99875em) {
  .gallery-page__footer {
    margin-top: 1.5rem;
  }
}
.gallery-page__empty {
  margin: 0;
  padding: 2.5rem 0;
  font-size: 1.25rem;
  line-height: 1.5;
  color: #4f5869;
  text-align: center;
}
.gallery-page__mosaic {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 100%;
  max-width: 101.25rem;
}
.gallery-page__panel:not(.is-active) {
  display: none;
}
@media (max-width: 61.99875em) {
  .gallery-page__panel--desktop {
    display: none !important;
  }
}
.gallery-page__panel--mobile {
  display: none;
}
@media (max-width: 61.99875em) {
  .gallery-page__panel--mobile.is-active {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }
}
.gallery-page__row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
  width: 100%;
  max-width: 101.25rem;
}
.gallery-page__row--full {
  height: 37.5rem;
  grid-template-rows: repeat(2, 1fr);
}
.gallery-page__row--partial {
  height: auto;
  grid-template-rows: repeat(2, auto);
}
.gallery-page__row--partial .gallery-page__photo {
  aspect-ratio: 387/288;
}
.gallery-page__row--a.gallery-page__row--partial .gallery-page__photo:nth-child(3) {
  aspect-ratio: 387/600;
}
.gallery-page__row--a.gallery-page__row--partial .gallery-page__photo:nth-child(4) {
  aspect-ratio: 798/288;
}
.gallery-page__row--a .gallery-page__photo:nth-child(1) {
  grid-column: 1;
  grid-row: 1;
}
.gallery-page__row--a .gallery-page__photo:nth-child(2) {
  grid-column: 1;
  grid-row: 2;
}
.gallery-page__row--a .gallery-page__photo:nth-child(3) {
  grid-column: 2;
  grid-row: 1/span 2;
}
.gallery-page__row--a .gallery-page__photo:nth-child(4) {
  grid-column: 3/span 2;
  grid-row: 1;
}
.gallery-page__row--a .gallery-page__photo:nth-child(5) {
  grid-column: 3;
  grid-row: 2;
}
.gallery-page__row--a .gallery-page__photo:nth-child(6) {
  grid-column: 4;
  grid-row: 2;
}
.gallery-page__row--b.gallery-page__row--partial {
  grid-template-rows: auto;
}
.gallery-page__row--b.gallery-page__row--partial .gallery-page__photo:nth-child(3) {
  aspect-ratio: 798/288;
}
.gallery-page__row--b.gallery-page__row--partial .gallery-page__photo:nth-child(4) {
  aspect-ratio: 387/600;
}
.gallery-page__row--b .gallery-page__photo:nth-child(1) {
  grid-column: 1;
  grid-row: 1;
}
.gallery-page__row--b .gallery-page__photo:nth-child(2) {
  grid-column: 2;
  grid-row: 1;
}
.gallery-page__row--b .gallery-page__photo:nth-child(3) {
  grid-column: 1/span 2;
  grid-row: 2;
}
.gallery-page__row--b .gallery-page__photo:nth-child(4) {
  grid-column: 3;
  grid-row: 1/span 2;
}
.gallery-page__row--b .gallery-page__photo:nth-child(5) {
  grid-column: 4;
  grid-row: 1;
}
.gallery-page__row--b .gallery-page__photo:nth-child(6) {
  grid-column: 4;
  grid-row: 2;
}
.gallery-page__photo {
  display: block;
  overflow: hidden;
  min-width: 0;
  min-height: 0;
  border-radius: 1.5rem;
  background: var(--color-surface-muted);
}
.gallery-page__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.gallery-page__mosaic--mobile {
  display: grid;
  grid-template-columns: 1fr;
  grid-auto-rows: 18rem;
  gap: 1.5rem;
  width: 100%;
}

.news-event-page {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}
.news-event-page__article {
  padding-bottom: 5rem;
}
@media (max-width: 61.99875em) {
  .news-event-page__article {
    padding-bottom: 3rem;
  }
}
.news-event-page__inner {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media (max-width: 61.99875em) {
  .news-event-page__inner {
    gap: 1.5rem;
  }
}
.news-event-page__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 0.875rem;
  color: #3d455a;
  font-size: 1.125rem;
  line-height: 1.5;
}
@media (max-width: 61.99875em) {
  .news-event-page__meta {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
    font-size: 0.75rem;
  }
}
.news-event-page__meta-primary {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
}
@media (min-width: 62rem) {
  .news-event-page__meta-primary {
    gap: 0.875rem;
  }
}
.news-event-page__meta-dot {
  width: 0.125rem;
  height: 0.125rem;
  border-radius: 50%;
  background: #7f889a;
  opacity: 0.6;
  flex-shrink: 0;
}
.news-event-page__meta-location {
  margin: 0;
}
@media (min-width: 62rem) {
  .news-event-page__meta-location {
    display: flex;
    align-items: center;
    gap: 0.875rem;
  }
  .news-event-page__meta-location::before {
    content: "";
    width: 0.125rem;
    height: 0.125rem;
    border-radius: 50%;
    background: #7f889a;
    opacity: 0.6;
    flex-shrink: 0;
  }
}
.news-event-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  font-style: normal;
  font-synthesis: none;
  font-size: 3.75rem;
  line-height: 1.2;
  text-transform: uppercase;
  color: var(--color-text-dark);
}
@media (max-width: 61.99875em) {
  .news-event-page__title {
    font-size: 1.5rem;
  }
}
.news-event-page__cover {
  display: flex;
  justify-content: center;
  width: 100%;
  border-radius: 2.5rem;
  overflow: hidden;
}
@media (max-width: 61.99875em) {
  .news-event-page__cover {
    border-radius: 1.5rem;
  }
}
.news-event-page__cover img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 26.25rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.news-event-page__body {
  font-size: 1.5rem;
  line-height: 1.5;
  color: var(--color-text-dark);
}
@media (max-width: 61.99875em) {
  .news-event-page__body {
    font-size: 1rem;
  }
}
.news-event-page__body > *:first-child {
  margin-top: 0;
}
.news-event-page__body p {
  margin: 0;
}
.news-event-page__body p + p {
  margin-top: 0.625rem;
}
.news-event-page__body h1,
.news-event-page__body h2,
.news-event-page__body h3,
.news-event-page__body h4,
.news-event-page__body h5,
.news-event-page__body h6 {
  margin: 0;
  font-size: inherit;
  font-weight: 400;
  line-height: inherit;
  text-transform: none;
}
.news-event-page__body img {
  display: block;
  max-width: 100%;
  height: auto;
  margin-top: 0.625rem;
  border-radius: 1.5rem;
}
@media (min-width: 62rem) {
  .news-event-page__body img {
    border-radius: 2.5rem;
  }
}
.news-event-page__body a {
  color: inherit;
  text-decoration: underline;
}
.news-event-page__body ul,
.news-event-page__body ol {
  margin: 0.625rem 0 0;
  padding-left: 1.25em;
}

.news-events-page {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}
.news-events-page__hero {
  padding-bottom: 3.75rem;
  position: relative;
  z-index: 2;
  overflow: visible;
}
@media (max-width: 61.99875em) {
  .news-events-page__hero {
    padding-bottom: 0;
  }
}
.news-events-page__hero-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}
@media (max-width: 61.99875em) {
  .news-events-page__hero-inner {
    flex-wrap: nowrap;
    align-items: flex-start;
  }
}
@media (max-width: 61.99875em) {
  .news-events-page .page-heading {
    flex: 1;
    min-width: 0;
    font-size: 1.5rem;
  }
}
@media (min-width: 62rem) {
  .news-events-page .page-heading__br {
    display: none;
  }
}
.news-events-page__catalog {
  position: relative;
  z-index: 1;
  padding-bottom: 5rem;
}
@media (max-width: 61.99875em) {
  .news-events-page__catalog {
    padding-top: 1.5rem;
    padding-bottom: 3rem;
  }
}
.news-events-page__list {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
@media (max-width: 61.99875em) {
  .news-events-page__list {
    gap: 0.75rem;
  }
}
.news-events-page__empty {
  margin: 0;
  padding: 3rem 1.5rem;
  border-radius: 1.5rem;
  background: var(--color-surface);
  text-align: center;
  font-size: 1.125rem;
  line-height: 1.5;
  color: var(--color-text-body);
}
.news-events-page__pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 2.5rem;
}
.news-events-page__page-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.5rem;
  height: 2.5rem;
  padding: 0 0.75rem;
  border-radius: 0.75rem;
  border: 0.0625rem solid #e6e6e6;
  background: #fff;
  color: var(--color-text-dark);
  text-decoration: none;
  font-size: 1rem;
  line-height: 1;
  cursor: pointer;
}
.news-events-page__page-btn--active {
  border-color: var(--color-brand);
  background: var(--color-brand);
  color: #fff;
}
.news-events-page__page-btn--control svg {
  width: 1rem;
  height: 1rem;
}
.news-events-page__page-btn[aria-disabled=true] {
  opacity: 0.4;
  cursor: default;
}
@media (max-width: 61.99875em) {
  .news-events-page .news-card {
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.5rem;
  }
  .news-events-page .news-card__cover {
    width: 100%;
    aspect-ratio: auto;
    height: 14.375rem;
  }
  .news-events-page .news-card__body {
    gap: 1rem;
    padding: 0.5rem;
  }
  .news-events-page .news-card__main {
    gap: 0.5rem;
  }
  .news-events-page .news-card__meta {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.125rem;
  }
  .news-events-page .news-card__link {
    align-self: stretch;
    padding: 0.75rem 1.25rem 0.5rem 1.5rem;
  }
}

.profile-certificate-empty-page .profile-testing-outcome__panel {
  gap: 2rem;
  padding: 2.25rem 2.5rem;
}
.profile-certificate-empty-page .profile-testing-outcome__visual {
  width: 10rem;
  max-width: 10rem;
}
.profile-certificate-empty-page .profile-testing-outcome__copy {
  max-width: 44.9375rem;
  gap: 1rem;
}
.profile-certificate-empty-page .profile-testing-outcome__title {
  font-size: 2.25rem;
  line-height: 1.2;
  color: #1c2231;
}
.profile-certificate-empty-page .profile-testing-outcome__text {
  font-size: 1.125rem;
  line-height: 1.5;
  color: #767e8e;
}
@media (max-width: 74.99875em) {
  .profile-certificate-empty-page .profile-testing-outcome__panel {
    gap: 1.5rem;
    padding: 1.25rem 1rem;
  }
  .profile-certificate-empty-page .profile-testing-outcome__visual {
    width: 8.75rem;
    max-width: 8.75rem;
  }
  .profile-certificate-empty-page .profile-testing-outcome__title {
    font-size: 1.625rem;
  }
  .profile-certificate-empty-page .profile-testing-outcome__text {
    font-size: 1rem;
  }
}

.profile-certificate-page {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}
.profile-certificate-page .profile-page__section {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}
.profile-certificate-page .profile-page__layout {
  flex: 1;
  min-height: 0;
}
.profile-certificate-page .profile-page__content {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1.5625rem;
  min-height: 0;
}
.profile-certificate-page .profile-page__header {
  flex-shrink: 0;
}
@media (max-width: 74.99875em) {
  .profile-certificate-page .profile-page__content {
    gap: 0;
    padding: 0;
    flex: 1;
    min-height: 0;
  }
  .profile-certificate-page .profile-certificate__preview:not(.is-revealed) {
    display: none;
  }
}

.profile-certificate__panel {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 2rem;
  min-height: 0;
  padding: 2rem;
  border-radius: 2.5rem;
  background: #fff;
}
.profile-certificate__panel > h2,
.profile-certificate__panel .profile-certificate__status,
.profile-certificate__panel .profile-certificate__note {
  flex-shrink: 0;
}
.profile-certificate__panel > h2 {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
.profile-certificate__note {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  gap: 0.75rem;
}
.profile-certificate__note-link {
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
  color: #93949f;
  text-decoration: none;
}
.profile-certificate__note-link--disabled {
  opacity: 0.55;
  cursor: default;
  pointer-events: none;
}
@media (any-hover: hover) {
  .profile-certificate__note-link:hover {
    color: #006d6d;
  }
}
.profile-certificate__note-dot {
  width: 0.125rem;
  height: 0.125rem;
  border-radius: 50%;
  background: rgba(147, 148, 159, 0.6);
  flex-shrink: 0;
}
.profile-certificate__status {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  gap: 1.25rem;
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
}
.profile-certificate__status h3 {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.profile-certificate__status p {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.2;
  color: #808997;
}
.profile-certificate__status-row {
  display: flex;
  align-self: stretch;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
}
.profile-certificate__status-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.25rem;
}
.profile-certificate__tag {
  display: inline-flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  border-radius: 1.875rem;
  background: rgba(106, 252, 179, 0.2);
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.2;
  color: #128d50;
}
.profile-certificate__download-btn.btn--primary {
  flex-shrink: 0;
  width: 21.875rem;
  max-width: 100%;
  min-height: 3.4375rem;
  padding: 0.875rem 1.5rem;
  font-size: 1.125rem;
  line-height: 1.5;
}
.profile-certificate__preview {
  position: relative;
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  align-self: stretch;
  justify-content: center;
  gap: 1.25rem;
  min-height: 0;
  overflow: hidden;
  padding: 4.0625rem;
  border-radius: 2.5rem;
  background: #032323;
  transition: outline-color 0.2s ease;
}
.profile-certificate__preview--focused {
  outline: 0.1875rem solid rgba(126, 231, 226, 0.7);
  outline-offset: -0.1875rem;
}
.profile-certificate__preview-bg {
  position: absolute;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  right: 0;
  bottom: -22.5rem;
  left: 0;
  pointer-events: none;
}
.profile-certificate__preview-bg img {
  display: block;
  width: 264.4375rem;
  height: 71rem;
  max-width: none;
}
.profile-certificate__preview-inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
  width: 100%;
}
.profile-certificate__glow {
  position: absolute;
  border-radius: 50%;
  background: #7ee7e2;
  filter: blur(11.25rem);
  pointer-events: none;
}
.profile-certificate__glow--left {
  bottom: -2.5rem;
  left: 18%;
  width: 26.25rem;
  height: 8.375rem;
}
.profile-certificate__glow--right {
  top: -3.125rem;
  right: 8%;
  width: 9.375rem;
  height: 8.375rem;
}
.profile-certificate__glow--top {
  top: -4.375rem;
  left: -3.75rem;
  width: 9.375rem;
  height: 8.375rem;
}
.profile-certificate__logo {
  display: block;
  max-width: 18.75rem;
  height: auto;
}
.profile-certificate__preview-body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.9375rem;
  width: 100%;
  max-width: -moz-max-content;
  max-width: max-content;
  text-align: center;
  color: #fff;
}
.profile-certificate__preview-body > div {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.5rem;
}
.profile-certificate__preview-body p {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
}
.profile-certificate__preview-body h2 {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 3.75rem;
  font-weight: 600;
  line-height: 1.5;
}
.profile-certificate__preview-body h3 {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.5;
}
.profile-certificate__preview-body h4 {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  text-transform: lowercase;
}
.profile-certificate__preview-body div h4 + p {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
}
.profile-certificate__preview-body > p + h3,
.profile-certificate__preview-body > h3 + p,
.profile-certificate__preview-body > h4 + p {
  margin-top: -0.4375rem;
}
.profile-certificate__preview-body > h4 + p {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
}
@media (max-width: 74.99875em) {
  .profile-certificate__panel {
    flex: 1;
    gap: 1rem;
    margin: 0.5rem;
    padding: 1.25rem 1rem;
    border-radius: 1.5rem;
  }
  .profile-certificate__panel > h2 {
    font-size: 1.5rem;
    line-height: 1.2;
    color: #253349;
  }
  .profile-certificate__status {
    padding: 1rem 0.75rem;
    border-radius: 1.25rem;
  }
  .profile-certificate__status h3 {
    font-size: 1.25rem;
  }
  .profile-certificate__status p {
    font-size: 1rem;
  }
  .profile-certificate__status-row {
    flex-direction: column;
    align-items: stretch;
    gap: 1.25rem;
  }
  .profile-certificate__status-meta {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
  }
  .profile-certificate__download-btn.btn--primary {
    width: 100%;
    max-width: none;
  }
}

.profile-data-page__panel {
  background: #fff;
  border-radius: 2.5rem;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.profile-data-page__status, .profile-data-page__errors {
  margin: 0 0 1rem;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  font-size: 1rem;
  line-height: 1.4;
}
.profile-data-page__status {
  background: #e8f8ef;
  color: #1f6b45;
}
.profile-data-page__errors {
  background: #fdeeee;
  color: #9b1c1c;
  list-style: none;
}
.profile-data-page__errors li + li {
  margin-top: 0.25rem;
}
.profile-data-page__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}
.profile-data-page__toolbar--edit {
  align-items: center;
}
.profile-data-page__heading {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: inherit;
  text-decoration: none;
  min-width: 0;
}
.profile-data-page__heading-icon {
  width: 2rem;
  height: 2rem;
  color: #979da8;
  fill: transparent;
  stroke: currentColor;
  flex-shrink: 0;
}
.profile-data-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
.profile-data-page__title--edit {
  flex: 1;
  min-width: 0;
}
.profile-data-page .btn.profile-data-page__toolbar-btn {
  min-height: 3.4375rem;
  font-size: 1.125rem;
  font-weight: 500;
}
.profile-data-page__edit-icon {
  width: 1.5rem;
  height: 1.5rem;
  flex-shrink: 0;
  fill: currentColor;
}
.profile-data-page__edit-icon--mobile {
  display: none;
}
.profile-data-page__form {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  max-width: 43.75rem;
  width: 100%;
}
.profile-data-page__save--footer {
  display: none;
}
.profile-data-page__cards {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.profile-data-page__card {
  background: #fff;
  border-radius: 1.5rem;
  padding: 1.5rem;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.profile-data-page__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
@media (max-width: 74.99875em) {
  .profile-data-page__panel {
    margin: 0.5rem;
    padding: 1.25rem 1rem;
    border-radius: 1.5rem;
    gap: 1.25rem;
  }
  .profile-data-page__form {
    max-width: 100%;
  }
  .profile-data-page__toolbar {
    align-items: center;
    gap: 0.75rem;
    flex-wrap: nowrap;
  }
  .profile-data-page__toolbar--edit {
    flex-wrap: nowrap;
    align-items: center;
  }
  .profile-data-page__heading {
    gap: 0.25rem;
  }
  .profile-data-page__title {
    font-size: 1.5rem;
  }
  .profile-data-page__title--edit {
    flex: 1;
    min-width: 0;
  }
  .profile-data-page__heading-icon {
    width: 1.5rem;
    height: 1.5rem;
  }
  .profile-data-page .btn.profile-data-page__toolbar-btn--icon {
    box-sizing: border-box;
    width: 3rem;
    min-width: 3rem;
    height: 3rem;
    min-height: 3rem;
    padding: 0.75rem;
    border-radius: 1rem;
    line-height: 0;
    color: #fff;
  }
  .profile-data-page__edit-label--sr-mobile {
    position: absolute;
    width: 0.0625rem;
    height: 0.0625rem;
    padding: 0;
    margin: -0.0625rem;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
  .profile-data-page__edit-icon--mobile {
    display: block;
    color: #fff;
  }
  .profile-data-page .btn.profile-data-page__save--header {
    display: none;
  }
  .profile-data-page .btn.profile-data-page__save--footer {
    display: inline-flex;
    align-self: stretch;
    width: 100%;
    justify-content: center;
  }
  .profile-data-page__cards {
    display: contents;
  }
  .profile-data-page__card {
    padding: 1rem;
    border-radius: 1rem;
  }
  .profile-data-page__card-title {
    font-size: 1.125rem;
  }
}

.profile-data-page__card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(17.5rem, 1fr));
  grid-template-rows: repeat(3, auto);
  grid-auto-flow: column;
  gap: 1.25rem 0.75rem;
}
@media (max-width: 74.99875em) {
  .profile-data-page__card-grid {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    grid-auto-flow: row;
    gap: 0.75rem;
  }
}

.profile-levels-page .profile-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
@media (max-width: 74.99875em) {
  .profile-levels-page .profile-page__content {
    gap: 0;
  }
}

.profile-levels__panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  padding: 2rem;
  border-radius: 2.5rem;
  background: #fff;
}
.profile-levels__head {
  display: flex;
  align-self: stretch;
  align-items: center;
  gap: 0.5rem;
}
.profile-levels__back {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
}
.profile-levels__back-icon {
  display: block;
  width: 2rem;
  height: 2rem;
  color: #979da8;
  fill: currentColor;
  stroke: currentColor;
}
.profile-levels__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
.profile-levels__hint {
  align-self: center;
  order: 2;
  margin: 0;
  padding: 0.5rem 1rem;
  border-radius: 0.75rem;
  background: rgba(252, 179, 106, 0.2);
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  color: #e37e19;
}
.profile-levels__grid {
  display: grid;
  align-self: stretch;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 1.25rem;
  order: 1;
}
.profile-levels__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  padding: 1.25rem;
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
}
.profile-levels__badge {
  display: block;
  width: 100%;
  max-width: 11.25rem;
  height: auto;
}
.profile-levels__badge--master {
  max-width: 11.25rem;
}
.profile-levels__name {
  margin: 0;
  width: 100%;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  color: #242a37;
}
.profile-levels__card--locked .profile-levels__name {
  opacity: 0.5;
}
@media (max-width: 74.99875em) {
  .profile-levels__panel {
    align-items: stretch;
    gap: 1rem;
    margin: 0.5rem;
    padding: 1.25rem 1rem;
    border-radius: 1.5rem;
  }
  .profile-levels__head {
    gap: 0.25rem;
  }
  .profile-levels__back-icon {
    width: 1.5rem;
  }
  .profile-levels__title {
    font-size: 1.5rem;
    line-height: 1;
  }
  .profile-levels__hint {
    align-self: stretch;
    order: 1;
  }
  .profile-levels__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
    order: 2;
  }
  .profile-levels__card {
    gap: 1.5rem;
    padding: 1rem 0.75rem;
  }
  .profile-levels__badge, .profile-levels__badge--master {
    max-width: 7.5rem;
  }
  .profile-levels__name {
    font-size: 1rem;
  }
}

.lk-sidebar__item--logout {
  width: 100%;
  border: 0;
  background: transparent;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.profile-page--notifications {
  display: flex;
  flex-direction: column;
  min-height: 100svh;
}
.profile-page--notifications .profile-page__section {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
}
.profile-page--notifications .profile-page__layout {
  flex: 1;
  min-height: 0;
}
.profile-page--notifications .profile-page__content {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1.5625rem;
  min-width: 0;
  min-height: 0;
}
.profile-page--notifications .profile-page__top {
  position: relative;
  flex-shrink: 0;
  z-index: 2;
}
.profile-page--notifications .profile-page__header {
  position: relative;
  z-index: 1;
}
.profile-page--notifications .profile-page__header-actions {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: 0.5rem;
}
.profile-page--notifications .profile-page__notifications {
  position: relative;
  flex-shrink: 0;
}
@media (min-width: 75rem) {
  .profile-page--notifications .lk-notifications {
    position: absolute;
    top: calc(100% - 0.625rem);
    right: 1.75rem;
    z-index: 20;
    width: 30.75rem;
    padding: 1rem;
    border-radius: 1.25rem;
  }
}
.profile-page--notifications .profile-page__notifications-btn {
  border: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
@media (any-hover: hover) {
  .profile-page--notifications .profile-page__notifications-btn:hover {
    background: rgba(116, 238, 232, 0.35);
  }
}
.profile-page--notifications .profile-page__notifications-btn[aria-expanded=true] {
  background: rgba(116, 238, 232, 0.35);
}
@media (max-width: 74.99875em) {
  .profile-page--notifications .profile-page__content {
    gap: 0;
    padding: 0;
    flex: 1;
  }
  .profile-page--notifications .profile-page__top {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
  }
  .profile-page--notifications .profile-page__header-actions {
    gap: 0.5rem;
  }
  .profile-page--notifications .profile-page__notifications-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.5rem;
    border-radius: 1rem;
    background: rgba(71, 184, 178, 0.1);
    color: #0c5955;
  }
  .profile-page--notifications .profile-page__user-meta-icon {
    width: 1.5rem;
    height: 1.5rem;
  }
  .profile-page--notifications.is-notifications-open .profile-page__content > :not(.profile-page__top) {
    display: none;
  }
  .profile-page--notifications.is-notifications-open .profile-page__top {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 0.5rem;
    min-height: 0;
  }
  .profile-page--notifications.is-notifications-open .profile-page__header {
    flex-shrink: 0;
    align-self: stretch;
  }
  .profile-page--notifications.is-notifications-open .lk-notifications {
    display: flex;
    flex: 1;
    min-height: 0;
    margin: 0 0.5rem 0.5rem;
  }
}

.lk-notifications {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
  opacity: 0;
  transform: translateY(-0.5rem) scale(0.98);
  transition: opacity 0.22s ease, transform 0.22s cubic-bezier(0.22, 1, 0.36, 1);
}
.lk-notifications[hidden]:not(.is-open):not(.is-closing) {
  display: none;
}
.lk-notifications.is-open {
  opacity: 1;
  transform: translateY(0) scale(1);
}
.lk-notifications.is-closing {
  opacity: 0;
  transform: translateY(-0.5rem) scale(0.98);
}
.lk-notifications__head {
  display: flex;
  align-items: center;
  align-self: stretch;
}
.lk-notifications__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.2;
  color: #363646;
}
.lk-notifications__filters {
  display: flex;
  flex-wrap: nowrap;
  align-self: stretch;
  gap: 0.5rem;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.lk-notifications__filters::-webkit-scrollbar {
  display: none;
}
.lk-notifications__chip {
  flex-shrink: 0;
  padding: 0.375rem 0.75rem;
  border: none;
  border-radius: 1.875rem;
  background: rgba(97, 222, 218, 0.2);
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
  color: #157c7a;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.lk-notifications__chip--active {
  background: #02918e;
  color: #fff;
}
.lk-notifications__list {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  gap: 0.5rem;
  max-height: 22.5rem;
  margin: 0;
  padding: 0;
  overflow-y: auto;
  list-style: none;
  -webkit-overflow-scrolling: touch;
}
.lk-notifications__item {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.75rem;
  border-radius: 0.75rem;
  background: #fafafc;
}
.lk-notifications__item[hidden] {
  display: none;
}
.lk-notifications__item--unread {
  background: #f2fbfb;
}
.lk-notifications__item--empty {
  align-items: center;
  justify-content: center;
  text-align: center;
}
.lk-notifications__icon {
  flex: 0 0 1.5rem;
  max-width: 1.5rem;
  max-height: 1.5rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.lk-notifications__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 0.375rem;
  min-width: 0;
}
.lk-notifications__item-title {
  margin: 0;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1rem;
  color: #07071d;
}
.lk-notifications__item-text {
  margin: 0;
  font-family: var(--font-family);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 0.875rem;
  color: #7c7c8e;
}
.lk-notifications__date {
  flex-shrink: 0;
  font-family: var(--font-family);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 0.875rem;
  color: #7c7c8e;
  white-space: nowrap;
}
.lk-notifications__more {
  display: flex;
  justify-content: center;
  padding-top: 0.25rem;
}
.lk-notifications__more[hidden] {
  display: none;
}
.lk-notifications__more-btn {
  border: 0;
  background: transparent;
  padding: 0.5rem 0.75rem;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  color: #006d6d;
  cursor: pointer;
}
.lk-notifications__more-btn:disabled {
  opacity: 0.6;
  cursor: default;
}
.lk-notifications__cap-note {
  margin: 0;
  padding-top: 0.25rem;
  font-family: var(--font-family);
  font-size: 0.75rem;
  line-height: 1.3;
  text-align: center;
  color: #7c7c8e;
}
@media (max-width: 74.99875em) {
  .profile-page--notifications .lk-notifications {
    position: static;
    top: auto;
    right: auto;
    width: auto;
    margin: 0;
    padding: 1.25rem 1rem;
    border-radius: 1.5rem;
    box-shadow: none;
    overflow-y: auto;
  }
  .profile-page--notifications .lk-notifications__title {
    font-size: 1.5rem;
    font-weight: 600;
    color: #253349;
  }
}

.profile-participation-page__panel {
  background: #fff;
  border-radius: 2.5rem;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  flex: 1;
}
.profile-participation-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.5rem , 1.3805970149rem  +  0.5970149254vw , 2rem )) {
  .profile-participation-page__title {
    font-size: clamp( 1.5rem , 1.3805970149rem  +  0.5970149254vw , 2rem );
  }
}
@supports not (font-size: clamp( 1.5rem , 1.3805970149rem  +  0.5970149254vw , 2rem )) {
  .profile-participation-page__title {
    font-size: calc(1.5rem + 0.5 * (100vw - 20rem) / 83.75);
  }
}
.profile-participation-page__status {
  margin: 0;
  padding: 0.75rem 1rem;
  border-radius: 0.75rem;
  font-size: 1rem;
  line-height: 1.4;
  background: #e8f8ef;
  color: #1f6b45;
}
@media (max-width: 74.99875em) {
  .profile-participation-page__panel {
    margin: 0.5rem;
    border-radius: 1.5rem;
    padding: 1.25rem 1rem;
    gap: 1.25rem;
  }
}

.participation-card {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.25rem;
  border-radius: 1.25rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
}
.participation-card__heading {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 1.625rem;
  line-height: 1.2;
  color: #4f5869;
}
.participation-card--book {
  padding: 1.5rem;
}
@media (max-width: 74.99875em) {
  .participation-card {
    padding: 1.25rem 1rem;
    border-radius: 1rem;
  }
  .participation-card__heading {
    font-size: 1.25rem;
  }
  .participation-card--book {
    padding: 1.25rem 1rem;
  }
}

.participation-timeline {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}
@media (max-width: 74.99875em) {
  .participation-timeline {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
}

.participation-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 1rem 2.25rem;
  background: #fafafc;
  border-radius: 1.5rem;
  text-align: center;
}
.participation-step__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  border-radius: 50%;
  background: #08b6b0;
  color: #fff;
  flex-shrink: 0;
}
.participation-step__icon--waiting {
  background: #08b6b0;
}
.participation-step__label {
  margin: 0;
  max-width: 7.5rem;
  font-family: var(--font-heading);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.2;
  color: #767e8e;
}
.participation-step__label-link {
  color: inherit;
  text-decoration: none;
}
@media (any-hover: hover) {
  .participation-step__label-link:hover {
    color: #006d6d;
  }
}
.participation-step__date {
  margin: 0;
  width: 100%;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.2;
  color: #111a28;
}
@media (max-width: 74.99875em) {
  .participation-step {
    padding: 0.75rem 2.25rem;
  }
  .participation-step .participation-tag {
    align-self: center;
  }
}

.participation-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  padding: 0.25rem 0.75rem;
  border-radius: 1.875rem;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
}
.participation-tag--gray {
  background: rgba(178, 178, 178, 0.2);
  color: #7d7d7d;
}
.participation-tag--soon {
  background: var(--color-accent-blue-20);
  color: var(--color-accent-blue);
}
.participation-tag--green {
  background: rgba(106, 252, 179, 0.2);
  color: #1cb468;
}
.participation-tag--orange {
  padding: 0.5rem 1rem;
  border-radius: 0.75rem;
  background: rgba(252, 179, 106, 0.2);
  color: #e37e19;
  white-space: normal;
  text-align: center;
}

.participation-book__inner {
  display: flex;
  align-items: stretch;
  gap: 0.75rem;
  padding: 1.5rem;
  background: #fafafc;
  border-radius: 1.5rem;
}
.participation-book__cover {
  flex: 0 0 17.1875rem;
  max-width: 42%;
  align-self: flex-start;
}
.participation-book__cover img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 0.78125rem;
  box-shadow: 0 0.098125rem 0.68625rem rgba(0, 0, 0, 0.15);
  -o-object-fit: cover;
     object-fit: cover;
}
.participation-book__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 0.75rem;
}
.participation-book__main {
  display: flex;
  align-items: flex-start;
  gap: 1.25rem;
}
.participation-book__info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.participation-book__status {
  flex-shrink: 0;
}
.participation-book__name {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 700;
  line-height: 1.2;
  text-transform: uppercase;
  color: var(--color-text-dark);
}
@supports (font-size: clamp( 1.5rem , 1.4402985075rem  +  0.2985074627vw , 1.75rem )) {
  .participation-book__name {
    font-size: clamp( 1.5rem , 1.4402985075rem  +  0.2985074627vw , 1.75rem );
  }
}
@supports not (font-size: clamp( 1.5rem , 1.4402985075rem  +  0.2985074627vw , 1.75rem )) {
  .participation-book__name {
    font-size: calc(1.5rem + 0.25 * (100vw - 20rem) / 83.75);
  }
}
.participation-book__desc {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-text-body);
}
.participation-book__empty {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  line-height: 1.5;
  color: var(--color-text-body);
}
.participation-book__shops {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.participation-book__shops-label {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  color: #31425c;
}
.participation-book__shops-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
.participation-book__shop-link,
.participation-book a.participation-book__shop-link:link,
.participation-book a.participation-book__shop-link:visited,
.participation-book a.participation-book__shop-link:hover {
  font-family: var(--font-family);
  font-size: 1rem;
  line-height: 1.5;
  color: var(--color-text-body);
  text-decoration: underline;
  text-underline-offset: 0.12em;
}
@media (any-hover: hover) {
  .participation-book a.participation-book__shop-link:hover {
    color: var(--color-brand);
  }
}
.participation-book__footer {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.875rem;
}
.participation-book__change-btn {
  width: 18.75rem;
  max-width: 100%;
  min-height: 3.4375rem;
  padding: 1rem 2.5rem 1.25rem;
  border-radius: 1rem;
  font-size: 1.125rem;
  font-weight: 600;
  text-align: center;
}
@media (max-width: 74.99875em) {
  .participation-book__inner {
    flex-direction: column;
    padding: 0.5rem;
  }
  .participation-book__cover {
    flex: none;
    max-width: none;
    width: 100%;
  }
  .participation-book__body {
    padding: 0.5rem;
    gap: 2rem;
  }
  .participation-book__main {
    flex-direction: column;
    gap: 1.25rem;
  }
  .participation-book__status {
    order: -1;
    align-self: flex-start;
  }
  .participation-book__footer {
    flex-direction: column;
    align-items: stretch;
    gap: 0.75rem;
  }
  .participation-book__footer .participation-tag--orange {
    align-self: center;
  }
  .participation-book__change-btn {
    align-self: stretch;
    width: 100%;
  }
}

.profile-results-pending-page .profile-testing-outcome__visual {
  max-width: 11.5rem;
}
@media (max-width: 74.99875em) {
  .profile-results-pending-page .profile-testing-outcome__visual {
    max-width: 9.1875rem;
  }
}

.profile-results-page .profile-page__content {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1.5625rem;
  min-height: 0;
}

.profile-results__panel {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 2rem;
  border-radius: 2.5rem;
  background: #fff;
}
.profile-results__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
.profile-results__finalist {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1.25rem;
  padding: 1.5625rem 1.5rem;
  border-radius: 1.5rem;
  background: #02918e;
}
.profile-results__finalist-icon {
  display: block;
  flex: 0 0 3.125rem;
  max-width: 3.125rem;
  height: auto;
}
.profile-results__finalist-main {
  display: flex;
  flex: 1;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-width: 0;
  padding-top: 0.3125rem;
}
.profile-results__finalist-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
  color: #fff;
}
.profile-results__finalist-meta {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 1rem;
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1;
  color: rgba(255, 255, 255, 0.6);
}
.profile-results__finalist-dot {
  flex-shrink: 0;
  width: 0.1875rem;
  height: 0.1875rem;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.6);
}
.profile-results__stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.25rem;
}
.profile-results__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  padding: 1rem 2.25rem;
  border-radius: 1.5rem;
  background: #fafafc;
}
.profile-results__stat-value {
  margin: 0;
  width: 100%;
  font-family: var(--font-heading);
  font-size: 2.625rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  color: #111a28;
}
.profile-results__stat-label {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.2;
  text-align: center;
  color: #767e8e;
}
.profile-results__start {
  display: none;
}
.profile-results__level {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
}
.profile-results__level-heading, .profile-results__rating-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.profile-results__level-card {
  display: grid;
  grid-template-columns: 7.5rem 1fr auto;
  align-items: center;
  gap: 1.5rem;
}
.profile-results__level-badge {
  display: block;
  max-width: 7.5rem;
  height: auto;
}
.profile-results__level-copy {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  min-width: 0;
}
.profile-results__level-label, .profile-results__level-meta {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  color: #7f889a;
}
.profile-results__level-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}
.profile-results__level-dot {
  width: 0.125rem;
  height: 0.125rem;
  border-radius: 50%;
  background: rgba(127, 136, 154, 0.6);
}
.profile-results__level-name {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.2;
  color: #242a37;
}
.profile-results__level-btn.btn--soft {
  flex-shrink: 0;
  min-height: 3.4375rem;
  padding: 1rem 1.5rem 0.75rem;
  font-size: 1.125rem;
  line-height: 1.5;
  background: rgba(71, 184, 178, 0.1);
}
.profile-results__rating {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
}
.profile-results__rating-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.5rem;
}
.profile-results__rating-tools {
  display: flex;
  align-items: center;
  gap: 2rem;
}
.profile-results__search {
  position: relative;
  display: block;
  width: 20.625rem;
  max-width: 100%;
}
.profile-results__search-input {
  display: block;
  width: 100%;
  padding: 0.625rem 2.75rem 0.625rem 1rem;
  border: none;
  border-radius: 0.75rem;
  background: #fafafc;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #111a28;
}
.profile-results__search-input::-moz-placeholder {
  color: #8c8c93;
}
.profile-results__search-input::placeholder {
  color: #8c8c93;
}
.profile-results__search-input:focus {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.profile-results__search-icon {
  position: absolute;
  top: 50%;
  right: 1rem;
  width: 1.25rem;
  height: 1.25rem;
  color: #8c8c93;
  transform: translateY(-50%);
  pointer-events: none;
}
.profile-results__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}
.profile-results__chip {
  padding: 0.5rem 1rem;
  border: none;
  border-radius: 1.875rem;
  background: rgba(97, 222, 218, 0.2);
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.2;
  color: #157c7a;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.profile-results__chip--active {
  background: #02918e;
  color: #fff;
}
.profile-results__table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.profile-results__table {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  width: 100%;
  min-width: 45rem;
}
.profile-results__table-main {
  display: flex;
  flex-direction: column;
}
.profile-results__row {
  display: grid;
  grid-template-columns: 3.125rem 18.125rem repeat(5, minmax(0, 1fr));
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem;
  border-bottom: 0.0625rem solid #f2f2f7;
}
.profile-results__row--head {
  border-bottom: 0.0625rem solid #f2f2f7;
}
.profile-results__row--self {
  border-bottom: none;
  border-radius: 0.75rem;
  background: rgba(125, 221, 216, 0.12);
}
.profile-results__cell {
  min-width: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3;
  color: #3f3f46;
}
.profile-results__cell--rank, .profile-results__cell--book, .profile-results__cell--score, .profile-results__cell--time, .profile-results__cell--city {
  text-align: center;
}
.profile-results__cell--name {
  text-align: left;
}
.profile-results__cell--level {
  display: flex;
  justify-content: center;
}
.profile-results__row--self .profile-results__cell--rank,
.profile-results__row--self .profile-results__cell--book,
.profile-results__row--self .profile-results__cell--score,
.profile-results__row--self .profile-results__cell--time,
.profile-results__row--self .profile-results__cell--city {
  font-weight: 600;
  color: #006d6d;
}
.profile-results__row--self .profile-results__cell--name {
  font-weight: 600;
  color: #006d6d;
  text-align: left;
}
.profile-results__level-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem 0.5rem;
  border-radius: 1.875rem;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
}
.profile-results__level-tag--master {
  background: rgba(106, 252, 179, 0.2);
  color: #128d50;
}
.profile-results__level-tag--expert {
  background: rgba(72, 173, 173, 0.2);
  color: #0d5757;
}
.profile-results__level-tag--novice {
  background: rgba(189, 94, 234, 0.2);
  color: #9038b8;
}
.profile-results__more-btn.btn--primary {
  align-self: center;
  width: 21.875rem;
  max-width: 100%;
  min-height: 3.4375rem;
  font-size: 1.125rem;
  line-height: 1.5;
}
.profile-results__more-btn.btn--primary[hidden] {
  display: none !important;
}
.profile-results__rating--loading {
  opacity: 0.65;
  pointer-events: none;
}
@media (max-width: 74.99875em) {
  .profile-results__panel {
    gap: 1rem;
    margin: 0.5rem;
    padding: 1.25rem 1rem;
    border-radius: 1.5rem;
  }
  .profile-results__title {
    font-size: 1.5rem;
    line-height: 1.2;
    color: #253349;
  }
  .profile-results__start {
    display: block;
  }
  .profile-results__start-btn.btn--primary {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 3.4375rem;
    font-size: 1.125rem;
    line-height: 1.5;
  }
  .profile-results__finalist {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-areas: "icon title" "meta meta";
    align-items: center;
    gap: 1.25rem;
    padding: 1rem 0.75rem;
    border-radius: 1rem;
  }
  .profile-results__finalist-main {
    display: contents;
  }
  .profile-results__finalist-icon {
    grid-area: icon;
    flex: 0 0 auto;
    max-width: 2.25rem;
  }
  .profile-results__finalist-title {
    grid-area: title;
    font-size: 1rem;
  }
  .profile-results__finalist-meta {
    grid-area: meta;
    flex-direction: column;
    align-items: stretch;
    gap: 0.5rem;
    font-size: 0.75rem;
  }
  .profile-results__finalist-meta-note {
    text-align: center;
  }
  .profile-results__finalist-dot {
    display: none;
  }
  .profile-results__stats {
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }
  .profile-results__stat {
    padding: 1rem 2.25rem;
  }
  .profile-results__stat-value {
    font-size: 2.25rem;
  }
  .profile-results__stat-label {
    font-size: 1rem;
  }
  .profile-results__level {
    gap: 1.25rem;
    padding: 1rem 0.75rem;
    border-radius: 1rem;
  }
  .profile-results__rating {
    padding: 1.5rem;
    border-radius: 1.5rem;
  }
  .profile-results__level-heading {
    font-size: 1.25rem;
  }
  .profile-results__rating-title {
    font-size: 1.625rem;
  }
  .profile-results__level-card {
    grid-template-columns: 5.625rem 1fr;
    grid-template-areas: "badge copy" "btn btn";
    align-items: center;
    gap: 1.25rem 1.5rem;
    text-align: left;
  }
  .profile-results__level-badge {
    grid-area: badge;
    max-width: 5.625rem;
  }
  .profile-results__level-copy {
    grid-area: copy;
    align-items: flex-start;
  }
  .profile-results__level-label, .profile-results__level-meta {
    font-size: 0.75rem;
  }
  .profile-results__level-name {
    font-size: 1.125rem;
  }
  .profile-results__level-btn.btn--soft {
    grid-area: btn;
    width: 100%;
    min-height: 3.4375rem;
    font-size: 1.125rem;
    line-height: 1.5;
  }
  .profile-results__rating-head {
    flex-direction: column;
    gap: 1rem;
  }
  .profile-results__rating-tools {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    gap: 1rem;
  }
  .profile-results__search {
    width: 100%;
  }
  .profile-results__chips {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.5rem;
  }
  .profile-results__chip {
    padding: 0.375rem 0.75rem;
    font-size: 0.75rem;
    line-height: 1.2;
    text-align: center;
  }
  .profile-results__chip--active {
    flex: 0 0 auto;
  }
  .profile-results__chip:not(.profile-results__chip--active) {
    flex: 1 1 0;
    min-width: 0;
  }
  .profile-results__table {
    min-width: 37.5rem;
  }
  .profile-results__row {
    grid-template-columns: 1.5rem 8.75rem minmax(4rem, 1fr) 3.25rem 3.25rem minmax(5rem, 1fr);
    gap: 0.75rem;
    padding: 0.75rem;
  }
  .profile-results__cell--city {
    display: none;
  }
  .profile-results__cell {
    font-size: 1.125rem;
  }
  .profile-results__level-tag {
    font-size: 1rem;
  }
  .profile-results__more-btn.btn--primary {
    align-self: stretch;
    width: 100%;
    min-height: 3.4375rem;
    font-size: 1.125rem;
    line-height: 1.5;
  }
}

.profile-support-page .profile-page__content {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
@media (max-width: 74.99875em) {
  .profile-support-page .profile-page__content {
    gap: 0;
    padding: 0;
  }
}

.profile-support__panel {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 2rem;
  border-radius: 2.5rem;
  background: #fff;
}
.profile-support__panel > h2 {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
.profile-support__block {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  gap: 1.25rem;
  padding: 1.5rem;
  border-radius: 1.5rem;
  background: #fff;
  box-shadow: 0 0.125rem 0.875rem rgba(137, 137, 137, 0.15);
}
.profile-support__block > h3 {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #4f5869;
}
.profile-support__card {
  display: flex;
  align-items: center;
  align-self: stretch;
  gap: 1.5rem;
  padding: 1rem;
  border-radius: 1.5rem;
  background: #fafafc;
}
.profile-support__card--faq .profile-support__card-thumb {
  flex: 0 0 5.875rem;
  max-width: 5.875rem;
}
.profile-support__card-main {
  display: flex;
  flex: 1;
  align-items: center;
  gap: 1.5rem;
  min-width: 0;
}
.profile-support__card-thumb {
  flex: 0 0 4.8125rem;
  max-width: 4.8125rem;
  max-height: 6.25rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.profile-support__card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 0.375rem;
}
.profile-support__card-body h4 {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.2;
  color: #242a37;
}
.profile-support__card-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  color: #7f889a;
}
.profile-support__card-meta-dot {
  width: 0.125rem;
  height: 0.125rem;
  border-radius: 50%;
  background: #7f889a;
  opacity: 0.6;
  flex-shrink: 0;
}
.profile-support__card-desc {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  color: #7f889a;
}
.profile-support__card-btn {
  flex-shrink: 0;
  font-size: 1.125rem;
}
.profile-support__contact-row {
  display: flex;
  align-items: center;
  align-self: stretch;
  gap: 0.75rem;
  padding: 0.75rem;
  border-bottom: 0.0625rem solid #f2f2f7;
}
.profile-support__contact-label {
  flex: 0 0 7.5rem;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3;
  color: #878796;
}
.profile-support__contact-value {
  flex: 1;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3;
  color: #3f3f46;
  text-decoration: none;
}
@media (any-hover: hover) {
  .profile-support__contact-value:hover {
    color: #006d6d;
  }
}
.profile-support__contact-hours {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3;
  color: #878796;
}
@media (max-width: 74.99875em) {
  .profile-support__panel {
    gap: 1rem;
    margin: 0.5rem;
    padding: 1.25rem 1rem;
    border-radius: 1.5rem;
  }
  .profile-support__panel > h2 {
    font-size: 1.5rem;
    color: #253349;
  }
  .profile-support__block {
    gap: 1rem;
    padding: 1rem 0.75rem;
    border-radius: 1.25rem;
  }
  .profile-support__block > h3 {
    font-size: 1.25rem;
  }
  .profile-support__card {
    flex-direction: column;
    align-items: stretch;
    gap: 1.25rem;
    padding: 0.75rem;
  }
  .profile-support__card-main {
    align-items: flex-start;
  }
  .profile-support__card-thumb {
    flex: 0 0 3.875rem;
    max-width: 3.875rem;
    max-height: 5rem;
  }
  .profile-support__card--faq .profile-support__card-thumb {
    flex: 0 0 4.6875rem;
    max-width: 4.6875rem;
  }
  .profile-support__card-body {
    gap: 0.25rem;
  }
  .profile-support__card-body h4 {
    font-size: 1.25rem;
  }
  .profile-support__card-meta {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
    font-size: 0.875rem;
  }
  .profile-support__card-meta-dot {
    display: none;
  }
  .profile-support__card-desc {
    font-size: 0.875rem;
  }
  .profile-support__card-btn {
    align-self: stretch;
    width: 100%;
  }
  .profile-support__contact-row {
    padding: 0.75rem 0;
  }
  .profile-support__contact-label {
    flex: 0 0 6.25rem;
    font-size: 1rem;
  }
  .profile-support__contact-value {
    font-size: 1rem;
  }
  .profile-support__contact-hours {
    font-size: 1rem;
  }
}

.profile-testing-outcome-page .profile-page__content {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}
@media (max-width: 74.99875em) {
  .profile-testing-outcome-page .profile-page__content {
    padding: 0.5rem;
  }
  .profile-testing-outcome-page .profile-page__header {
    flex-shrink: 0;
  }
}

.profile-testing-outcome__panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
  padding: 2.25rem 2.5rem 2.5rem;
  border-radius: 2.5rem;
  background: #fff;
}
.profile-testing-outcome__visual {
  display: block;
  width: 12.5rem;
  max-width: 100%;
  height: auto;
}
.profile-testing-outcome__copy {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.75rem;
  width: 100%;
  max-width: 40.1875rem;
  text-align: center;
}
.profile-testing-outcome__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 2.25rem;
  font-weight: 600;
  line-height: 1.1;
  color: #111a28;
}
.profile-testing-outcome__text {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.4;
  color: #767e8e;
}
.profile-testing-outcome__text strong {
  font-weight: 600;
}
.profile-testing-outcome__actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
}
.profile-testing-outcome__btn.btn--primary, .profile-testing-outcome__btn.btn--soft {
  width: 100%;
  max-width: 21.875rem;
  min-height: 3.4375rem;
  padding: 1rem 1.5rem 0.75rem;
  font-size: 1.125rem;
  line-height: 1.5;
}
@media (max-width: 74.99875em) {
  .profile-testing-outcome__panel {
    flex: none;
    align-self: stretch;
    width: 100%;
    margin: auto 0;
    gap: 1.5rem;
    padding: 1.25rem 1rem;
    border-radius: 1.5rem;
  }
  .profile-testing-outcome__visual {
    width: 10rem;
  }
  .profile-testing-outcome__title {
    font-size: 1.625rem;
  }
  .profile-testing-outcome__text {
    font-size: 1rem;
  }
  .profile-testing-outcome__btn.btn--primary {
    max-width: none;
  }
}

.profile-testing-quiz-page__content {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  padding: 2.5rem;
}
@media (max-width: 74.99875em) {
  .profile-testing-quiz-page__content {
    padding: 0.5rem;
  }
}

.profile-testing-quiz {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
  overflow: hidden;
  border-radius: 2.5rem;
}
.profile-testing-quiz__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 2.0625rem 2.5rem;
  background: #02918e;
  border-radius: 2.5rem 2.5rem 0 0;
}
.profile-testing-quiz__counter {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 2rem;
  color: #fff;
}
.profile-testing-quiz__timer {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.profile-testing-quiz__timer-label {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.2;
  color: rgba(255, 255, 255, 0.7);
}
.profile-testing-quiz__timer-value {
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.2;
  color: #fff;
}
.profile-testing-quiz__body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1;
  min-height: 0;
  padding: 2.25rem 2.5rem 2.5rem;
  background: #fff;
  border-radius: 0 0 2.5rem 2.5rem;
}
.profile-testing-quiz__main {
  display: flex;
  flex-direction: column;
  gap: 3.25rem;
}
.profile-testing-quiz__qa {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
.profile-testing-quiz__progress-wrap {
  display: flex;
  align-items: center;
  gap: 3.75rem;
  width: 100%;
}
.profile-testing-quiz__progress {
  flex: 1;
  height: 0.875rem;
  border-radius: 1rem;
  background: #edeef2;
  overflow: hidden;
}
.profile-testing-quiz__progress-fill {
  display: block;
  height: 100%;
  border-radius: 2.5rem;
  background: #006d6d;
  transition: width 0.55s cubic-bezier(0.4, 0, 0.2, 1);
}
@media (prefers-reduced-motion: reduce) {
  .profile-testing-quiz__progress-fill {
    transition: none;
  }
}
.profile-testing-quiz__progress-value {
  flex: 0 0 3.25rem;
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  color: #111a28;
}
.profile-testing-quiz__question {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #111a28;
}
@supports (font-size: clamp( 1.5rem , 1.3805970149rem  +  0.5970149254vw , 2rem )) {
  .profile-testing-quiz__question {
    font-size: clamp( 1.5rem , 1.3805970149rem  +  0.5970149254vw , 2rem );
  }
}
@supports not (font-size: clamp( 1.5rem , 1.3805970149rem  +  0.5970149254vw , 2rem )) {
  .profile-testing-quiz__question {
    font-size: calc(1.5rem + 0.5 * (100vw - 20rem) / 83.75);
  }
}
.profile-testing-quiz__answers {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.profile-testing-quiz__option {
  display: block;
  padding: 1.5rem;
  border-radius: 1rem;
  background: #e6f2f2;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.profile-testing-quiz__option:has(.profile-testing-quiz__option-input:checked) {
  background: #8cecec;
}
@media (any-hover: hover) {
  .profile-testing-quiz__option:not(:has(.profile-testing-quiz__option-input:checked)):hover {
    background: #d9ecec;
  }
}
.profile-testing-quiz__option-input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.profile-testing-quiz__option-input:focus-visible + .profile-testing-quiz__option-text {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.profile-testing-quiz__option-text {
  display: block;
  font-family: var(--font-family);
  font-size: 1.375rem;
  font-weight: 400;
  line-height: 1.2;
  color: #111a28;
}
.profile-testing-quiz--compact-answers .profile-testing-quiz__option-text {
  line-height: 1.375rem;
}
.profile-testing-quiz__footer {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.profile-testing-quiz__divider {
  width: 100%;
  height: 0;
  margin: 0;
  border: 0;
  border-top: 0.0625rem solid #e9edf5;
}
.profile-testing-quiz__autosave {
  display: flex;
  align-items: flex-end;
  gap: 0.75rem;
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1;
  color: #b9c2d0;
}
.profile-testing-quiz__autosave-icon {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  color: #b9c2d0;
}
@media (max-width: 74.99875em) {
  .profile-testing-quiz {
    border-radius: 1.5rem;
  }
  .profile-testing-quiz__head {
    padding: 1.25rem 1rem 1rem;
    border-radius: 1.5rem 1.5rem 0 0;
  }
  .profile-testing-quiz__counter {
    font-size: 1rem;
    line-height: 1;
  }
  .profile-testing-quiz__timer-label {
    display: none;
  }
  .profile-testing-quiz__timer-value {
    font-size: 1.25rem;
    line-height: 1;
  }
  .profile-testing-quiz__body {
    padding: 1.25rem 1rem;
    border-radius: 0 0 1.5rem 1.5rem;
  }
  .profile-testing-quiz__main {
    gap: 1.5rem;
  }
  .profile-testing-quiz__qa {
    gap: 2.5rem;
  }
  .profile-testing-quiz__progress-wrap {
    gap: 3.75rem;
  }
  .profile-testing-quiz__option {
    padding: 1rem 1.25rem;
  }
  .profile-testing-quiz__option-text {
    font-size: 1rem;
  }
  .profile-testing-quiz--compact-answers .profile-testing-quiz__option-text {
    line-height: 1;
  }
  .profile-testing-quiz__autosave {
    align-items: center;
    font-size: 1rem;
  }
  .profile-testing-quiz__autosave-icon {
    width: 1rem;
    height: 1rem;
  }
}

body.is-trial-complete-modal-open {
  overflow: hidden;
}

.profile-trial-complete-modal {
  padding: 1rem;
}
.profile-trial-complete-modal__overlay {
  cursor: pointer;
}
.profile-trial-complete-modal__dialog {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
  width: 100%;
  max-width: 42.5rem;
  padding: 5rem;
  border-radius: 2.5rem;
  background: #fff;
}
.profile-trial-complete-modal__image {
  display: block;
  width: 12.5rem;
  height: 11.875rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.profile-trial-complete-modal__copy {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  gap: 0.75rem;
  text-align: center;
}
.profile-trial-complete-modal__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 2.25rem;
  font-weight: 600;
  line-height: 1.1;
  color: #111a28;
}
.profile-trial-complete-modal__text {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.4;
  color: #767e8e;
}
.profile-trial-complete-modal__stats {
  display: flex;
  align-self: stretch;
  align-items: stretch;
  gap: 1.25rem;
}
.profile-trial-complete-modal__stat {
  display: flex;
  flex: 1 1 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  padding: 1rem 2.25rem;
  border-radius: 1.5rem;
  background: #fafafc;
}
.profile-trial-complete-modal__stat-value {
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.2;
  color: #111a28;
}
.profile-trial-complete-modal__stat-label {
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #767e8e;
  text-align: center;
}
.profile-trial-complete-modal__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 21.875rem;
  min-height: 3.4375rem;
  padding: 0.875rem 1.5rem;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
@media (max-width: 74.99875em) {
  .profile-trial-complete-modal {
    align-items: flex-end;
    padding: 0;
  }
  .profile-trial-complete-modal__dialog {
    gap: 1.5rem;
    max-width: none;
    padding: 2rem 1.25rem;
    border-radius: 2.5rem 2.5rem 0 0;
  }
  .profile-trial-complete-modal__title {
    font-size: 1.75rem;
    line-height: 1.2;
  }
  .profile-trial-complete-modal__text {
    font-size: 1rem;
    line-height: 1.5;
  }
  .profile-trial-complete-modal__stats {
    gap: 0.75rem;
  }
  .profile-trial-complete-modal__stat {
    padding: 1rem;
  }
  .profile-trial-complete-modal__stat-value {
    font-size: 1.5rem;
  }
  .profile-trial-complete-modal__stat-label {
    font-size: 0.75rem;
  }
  .profile-trial-complete-modal__btn {
    max-width: none;
  }
}

.profile-testing-page__panel {
  display: flex;
  flex-direction: column;
  gap: 2.25rem;
  flex: 1;
  padding: 2rem;
  border-radius: 2.5rem;
  background: #fff;
}
.profile-testing-page__heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.25rem;
  width: 100%;
}
.profile-testing-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.25rem , 1.0708955224rem  +  0.8955223881vw , 2rem )) {
  .profile-testing-page__title {
    font-size: clamp( 1.25rem , 1.0708955224rem  +  0.8955223881vw , 2rem );
  }
}
@supports not (font-size: clamp( 1.25rem , 1.0708955224rem  +  0.8955223881vw , 2rem )) {
  .profile-testing-page__title {
    font-size: calc(1.25rem + 0.75 * (100vw - 20rem) / 83.75);
  }
}
.profile-testing-page__meta {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}
.profile-testing-page__timer {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  max-width: none;
}
.profile-testing-page__timer-label {
  margin: 0;
  flex-shrink: 0;
  white-space: nowrap;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.3;
  color: #767e8e;
}
@supports (font-size: clamp( 0.875rem , 0.8451492537rem  +  0.1492537313vw , 1rem )) {
  .profile-testing-page__timer-label {
    font-size: clamp( 0.875rem , 0.8451492537rem  +  0.1492537313vw , 1rem );
  }
}
@supports not (font-size: clamp( 0.875rem , 0.8451492537rem  +  0.1492537313vw , 1rem )) {
  .profile-testing-page__timer-label {
    font-size: calc(0.875rem + 0.125 * (100vw - 20rem) / 83.75);
  }
}
.profile-testing-page__timer-label[hidden] {
  display: none !important;
}
.profile-testing-page__timer-countdown {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.profile-testing-page__timer-countdown[hidden] {
  display: none !important;
}
.profile-testing-page__timer-part {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}
.profile-testing-page__timer-part[hidden] {
  display: none !important;
}
.profile-testing-page__timer-unit {
  white-space: pre;
}
.profile-testing-page__timer-sep {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 0.5rem;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #d0d2d9;
}
@supports (font-size: clamp( 1.5rem , 1.4402985075rem  +  0.2985074627vw , 1.75rem )) {
  .profile-testing-page__timer-sep {
    font-size: clamp( 1.5rem , 1.4402985075rem  +  0.2985074627vw , 1.75rem );
  }
}
@supports not (font-size: clamp( 1.5rem , 1.4402985075rem  +  0.2985074627vw , 1.75rem )) {
  .profile-testing-page__timer-sep {
    font-size: calc(1.5rem + 0.25 * (100vw - 20rem) / 83.75);
  }
}
.profile-testing-page__timer-sep[hidden] {
  display: none !important;
}
.profile-testing-page__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 0.75rem 0.25rem;
  border-radius: 1.25rem;
  background: rgba(106, 227, 252, 0.1);
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.3;
  color: #1c99b4;
}
@supports (font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem )) {
  .profile-testing-page__tag {
    font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem );
  }
}
@supports not (font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem )) {
  .profile-testing-page__tag {
    font-size: calc(1rem + 0.5 * (100vw - 20rem) / 83.75);
  }
}
.profile-testing-page__timer-status {
  margin: 0;
  padding: 0.5rem 0.75rem 0.25rem;
  border-radius: 1.25rem;
  background: rgba(106, 227, 252, 0.1);
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.3;
  color: #1c99b4;
  text-align: right;
  white-space: nowrap;
}
@supports (font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem )) {
  .profile-testing-page__timer-status {
    font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem );
  }
}
@supports not (font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem )) {
  .profile-testing-page__timer-status {
    font-size: calc(1rem + 0.5 * (100vw - 20rem) / 83.75);
  }
}
.profile-testing-page__timer-status[hidden] {
  display: none !important;
}
.profile-testing-page__timer-status--muted {
  background: rgba(178, 178, 178, 0.2);
  color: #7d7d7d;
}
.profile-testing-page__panel--closed {
  align-items: center;
}
.profile-testing-page__closed {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  width: 100%;
  padding: 2.25rem 2.5rem;
  border-radius: 2rem;
  background: #fff;
}
.profile-testing-page__closed-visual {
  display: block;
  width: 10rem;
  height: auto;
}
.profile-testing-page__closed-copy {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1rem;
  width: 100%;
  max-width: 44.9375rem;
  text-align: center;
}
.profile-testing-page__closed-title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #1c2231;
}
@supports (font-size: clamp( 1.75rem , 1.6305970149rem  +  0.5970149254vw , 2.25rem )) {
  .profile-testing-page__closed-title {
    font-size: clamp( 1.75rem , 1.6305970149rem  +  0.5970149254vw , 2.25rem );
  }
}
@supports not (font-size: clamp( 1.75rem , 1.6305970149rem  +  0.5970149254vw , 2.25rem )) {
  .profile-testing-page__closed-title {
    font-size: calc(1.75rem + 0.5 * (100vw - 20rem) / 83.75);
  }
}
.profile-testing-page__closed-title-text--mobile {
  display: none;
}
.profile-testing-page__closed-text {
  margin: 0;
  font-family: var(--font-family);
  font-weight: 400;
  line-height: 1.5;
  color: #767e8e;
  text-align: center;
}
@supports (font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem )) {
  .profile-testing-page__closed-text {
    font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem );
  }
}
@supports not (font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem )) {
  .profile-testing-page__closed-text {
    font-size: calc(1rem + 0.125 * (100vw - 20rem) / 83.75);
  }
}
.profile-testing-page__closed-actions {
  display: flex;
  justify-content: center;
  width: 100%;
}
.profile-testing-page__closed-btn.btn--primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 21.875rem;
  min-height: 3.25rem;
  padding: 1rem 1.5rem 0.75rem;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.profile-testing-page__status {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.375rem 0.75rem;
  border-radius: 1.875rem;
  background: rgba(106, 252, 179, 0.2);
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.2;
  color: #128d50;
}
.profile-testing-page__status--soon {
  background: rgba(106, 227, 252, 0.2);
  color: #1c99b4;
}
.profile-testing-page__status--muted {
  background: rgba(178, 178, 178, 0.2);
  color: #7d7d7d;
}
.profile-testing-page__status--progress {
  background: rgba(252, 179, 106, 0.2);
  color: #e37e19;
}
.profile-testing-page__notice {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  line-height: 1.5;
  color: #5a6477;
}
.profile-testing-page__date {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.2;
  color: #808997;
}
.profile-testing-page__start {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  width: 100%;
}
.profile-testing-page__start-wrap {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 21.875rem;
}
.profile-testing-page__start-wrap--expired {
  cursor: not-allowed;
}
.profile-testing-page__start-wrap--expired .profile-testing-page__start-btn {
  pointer-events: none;
}
.profile-testing-page__start-wrap--expired::after {
  content: attr(data-tooltip);
  position: absolute;
  left: 50%;
  bottom: calc(100% + 0.5rem);
  z-index: 5;
  width: -moz-max-content;
  width: max-content;
  max-width: 17.5rem;
  padding: 0.5rem 0.75rem;
  border-radius: 0.625rem;
  background: #3f4b5f;
  font-family: var(--font-family);
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: 1.35;
  color: #fff;
  text-align: center;
  white-space: normal;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-50%) translateY(0.25rem);
  transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s ease;
  pointer-events: none;
}
@media (any-hover: hover) {
  .profile-testing-page__start-wrap--expired:hover::after, .profile-testing-page__start-wrap--expired:focus-within::after {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
  }
}
.profile-testing-page__start-wrap--expired:focus-within::after {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}
.profile-testing-page__start-btn.btn--primary, .profile-testing-page__trial-btn.btn--soft, .profile-testing-page__resume-btn.btn--soft {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 21.875rem;
  min-height: 3.4375rem;
  padding: 0.875rem 1.5rem;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}
.profile-testing-page__start-wrap .profile-testing-page__start-btn {
  max-width: none;
}
@media (max-width: 74.99875em) {
  .profile-testing-page__panel {
    gap: 1.25rem;
    margin: 0.5rem;
    padding: 1.25rem 1rem;
    border-radius: 1.5rem;
  }
  .profile-testing-page__panel--closed {
    padding: 0.5rem;
  }
  .profile-testing-page__closed {
    gap: 1.5rem;
    padding: 1.25rem 1rem;
    border-radius: 1.5rem;
  }
  .profile-testing-page__closed-title-text--desktop {
    display: none;
  }
  .profile-testing-page__closed-title-text--mobile {
    display: inline;
  }
  .profile-testing-page__closed-btn.btn--primary {
    max-width: none;
  }
  .profile-testing-page__heading {
    flex-direction: column;
    gap: 0.5rem;
  }
  .profile-testing-page__meta {
    align-items: flex-start;
  }
  .profile-testing-page__timer {
    align-items: center;
    justify-content: flex-start;
  }
  .profile-testing-page__timer-status {
    text-align: left;
  }
  .profile-testing-page__status {
    font-size: 0.875rem;
    padding: 0.25rem 0.5rem;
  }
  .profile-testing-page__date {
    font-size: 0.875rem;
  }
}

.profile-testing-rules {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 0.25rem 1rem;
  border-radius: 1.25rem;
  background: #fff;
}
.profile-testing-rules__group {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.profile-testing-rules__intro {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
  color: #111a28;
}
.profile-testing-rules__subtitle {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.4;
  color: #111a28;
}
.profile-testing-rules__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
.profile-testing-rules__item {
  position: relative;
  margin: 0;
  padding-left: 2rem;
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
  color: #111a28;
}
.profile-testing-rules__item::before {
  content: "";
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  width: 0.25rem;
  height: 0.25rem;
  border-radius: 50%;
  background: #2b9f9f;
}
.profile-testing-rules__accept {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  cursor: pointer;
}
.profile-testing-rules__checkbox {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.profile-testing-rules__checkbox-ui {
  position: relative;
  flex: 0 0 1.5rem;
  width: 1.5rem;
  height: 1.5rem;
  border: 0.125rem solid #02918e;
  border-radius: 0.5rem;
}
.profile-testing-rules__checkbox-ui::after {
  content: "";
  position: absolute;
  top: 0.1875rem;
  left: 0.375rem;
  width: 0.375rem;
  height: 0.6875rem;
  border-right: 0.125rem solid transparent;
  border-bottom: 0.125rem solid transparent;
  transform: rotate(45deg);
  transition: border-color 0.2s ease;
}
.profile-testing-rules__checkbox:checked + .profile-testing-rules__checkbox-ui::after {
  border-color: #02918e;
}
.profile-testing-rules__accept-text {
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.4;
  color: #767e8e;
}
@media (max-width: 74.99875em) {
  .profile-testing-rules {
    gap: 1.25rem;
    padding: 0.5rem;
  }
  .profile-testing-rules__intro, .profile-testing-rules__item, .profile-testing-rules__accept-text {
    font-size: 1.125rem;
  }
  .profile-testing-rules__subtitle {
    font-size: 1.375rem;
  }
}

.profile-page {
  min-height: 100svh;
}
.profile-page__section {
  position: relative;
  z-index: 1;
}
.profile-page__layout {
  display: grid;
  grid-template-columns: 20.3125rem 1fr;
  min-height: 100svh;
}
.profile-page__content {
  min-width: 0;
  padding: 2.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
}
.profile-page__header {
  background: #fff;
  border-radius: 2rem;
  padding: 1.25rem 1.75rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.profile-page__menu-btn {
  display: none;
}
.profile-page__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #111a28;
}
@supports (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .profile-page__title {
    font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem );
  }
}
@supports not (font-size: clamp( 1.625rem , 1.4160447761rem  +  1.0447761194vw , 2.5rem )) {
  .profile-page__title {
    font-size: calc(1.625rem + 0.875 * (100vw - 20rem) / 83.75);
  }
}
.profile-page__user-meta {
  width: 4rem;
  height: 4rem;
  flex-shrink: 0;
  border-radius: 50%;
  background: rgba(116, 238, 232, 0.2);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #1d918b;
}
.profile-page__user-meta-icon {
  width: 2rem;
  height: 2rem;
  fill: currentColor;
  stroke: currentColor;
}
.profile-page__panel {
  background: #fff;
  border-radius: 2.5rem;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  flex: 1;
}
.profile-page__panel-title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: #253349;
}
@supports (font-size: clamp( 1.5rem , 1.3805970149rem  +  0.5970149254vw , 2rem )) {
  .profile-page__panel-title {
    font-size: clamp( 1.5rem , 1.3805970149rem  +  0.5970149254vw , 2rem );
  }
}
@supports not (font-size: clamp( 1.5rem , 1.3805970149rem  +  0.5970149254vw , 2rem )) {
  .profile-page__panel-title {
    font-size: calc(1.5rem + 0.5 * (100vw - 20rem) / 83.75);
  }
}
.profile-page__cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(17.5rem, 1fr));
  gap: 2rem 3rem;
  align-content: start;
}
.profile-page__card {
  position: relative;
  display: block;
  background: #f9f9fa;
  border-radius: 1.25rem;
  padding: 1rem;
  min-height: 12.5rem;
  overflow: hidden;
  color: inherit;
  text-decoration: none;
  transition: background-color 0.2s ease;
}
@media (any-hover: hover) {
  .profile-page__card:hover {
    background: #f3f4f7;
  }
}
.profile-page__card-title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.625rem;
  font-weight: 500;
  line-height: 1.2;
  color: #767e8e;
  max-width: calc(100% - 11.25rem);
}
.profile-page__card-image {
  position: absolute;
  right: 0.75rem;
  bottom: 0.75rem;
  width: 10.5625rem;
  max-width: 42%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: right bottom;
     object-position: right bottom;
}
.profile-page__backdrop {
  display: none;
}
@media (max-width: 74.99875em) {
  .profile-page__layout {
    grid-template-columns: 1fr;
  }
  .profile-page__content {
    padding: 0;
    gap: 0;
  }
  .profile-page__header {
    padding: 0.5rem 1rem;
    border-radius: 0;
  }
  .profile-page__title {
    font-size: 1.5rem;
  }
  .profile-page__menu-btn {
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.5rem;
    border: none;
    border-radius: 1rem;
    background: rgba(71, 184, 178, 0.1);
    color: #0c5955;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }
  .profile-page__menu-btn svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: currentColor;
    stroke: currentColor;
  }
  .profile-page__user-meta {
    display: none;
  }
  .profile-page__panel {
    margin: 0.5rem;
    border-radius: 1.5rem;
    padding: 1.25rem 1rem;
    gap: 1.25rem;
  }
  .profile-page__cards {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .profile-page__card-title {
    max-width: calc(100% - 8.25rem);
    font-size: 1.25rem;
  }
  .profile-page__card-image {
    width: 6.875rem;
    max-width: 44%;
  }
  .profile-page__card {
    min-height: 10rem;
  }
  .profile-page__backdrop {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    -webkit-backdrop-filter: blur(0.4375rem);
            backdrop-filter: blur(0.4375rem);
    border: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
    display: block;
    z-index: 25;
  }
}
.profile-page.is-sidebar-open .profile-page__backdrop {
  opacity: 1;
  pointer-events: auto;
}

.lk-sidebar {
  background: #fff;
  padding: 2rem 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1.5rem;
}
@media (min-width: 75rem) {
  .lk-sidebar {
    position: sticky;
    top: 0;
    min-height: 100svh;
    max-height: 100svh;
    overflow: hidden;
  }
}
.lk-sidebar__top {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media (min-width: 75rem) {
  .lk-sidebar__top {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
}
.lk-sidebar__logo {
  display: block;
}
.lk-sidebar__logo img {
  display: block;
  width: 15rem;
  max-width: 100%;
}
.lk-sidebar__nav {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.lk-sidebar__icon {
  display: block;
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  fill: currentColor;
  stroke: currentColor;
}
.lk-sidebar__icon-support-path {
  fill: transparent;
}
.lk-sidebar__icon-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  overflow: hidden;
}
.lk-sidebar__item {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0 0.5rem;
  min-height: 2.75rem;
  border-radius: 0.5rem;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5rem;
  letter-spacing: 0.01em;
  color: #9399a7;
}
.lk-sidebar__item--active {
  background: #edfffe;
  font-weight: 600;
  color: #1d918b;
}
.lk-sidebar__item--logout {
  font-weight: 600;
}
@media (min-width: 75rem) {
  .lk-sidebar__item--logout {
    flex-shrink: 0;
  }
}
.lk-sidebar__mobile-head {
  display: block;
}
.lk-sidebar__close {
  display: none;
}
@media (max-width: 74.99875em) {
  .lk-sidebar {
    position: fixed;
    top: 0;
    right: 0;
    width: 21.25rem;
    max-width: calc(100vw - 3.125rem);
    height: 100svh;
    padding: 0;
    gap: 1rem;
    z-index: 30;
    transform: translateX(100%);
    transition: transform 0.24s ease;
  }
  .profile-page.is-sidebar-open .lk-sidebar {
    transform: translateX(0);
  }
  .lk-sidebar__top {
    gap: 0;
  }
  .lk-sidebar__mobile-head {
    height: 4.25rem;
    padding: 0 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 0.0625rem solid rgba(255, 255, 255, 0.3);
  }
  .lk-sidebar__logo img {
    width: 11.875rem;
  }
  .lk-sidebar__close {
    border: 0;
    padding: 1.125rem;
    background: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 0;
  }
  .lk-sidebar__close-icon {
    width: 1.5rem;
    height: 1.5rem;
    /* icon-close in sprite is white; tint it to #111A28 */
    filter: brightness(0) saturate(100%) invert(10%) sepia(17%) saturate(1118%) hue-rotate(183deg) brightness(92%) contrast(90%);
  }
  .lk-sidebar__nav {
    padding-left: 1.5rem;
    margin-top: 2rem;
    gap: 0.625rem;
  }
  .lk-sidebar__item {
    min-height: 2.5rem;
  }
  .lk-sidebar__icon-wrap {
    width: 2.25rem;
    height: 2.25rem;
  }
  .lk-sidebar__item--logout {
    margin: auto 0 2rem 1.5rem;
  }
}

.static-page__content {
  padding-bottom: 5rem;
}
@supports (padding-top: clamp( 1.5rem , 1.2611940299rem  +  1.1940298507vw , 2.5rem )) {
  .static-page__content {
    padding-top: clamp( 1.5rem , 1.2611940299rem  +  1.1940298507vw , 2.5rem );
  }
}
@supports not (padding-top: clamp( 1.5rem , 1.2611940299rem  +  1.1940298507vw , 2.5rem )) {
  .static-page__content {
    padding-top: calc(1.5rem + 1 * (100vw - 20rem) / 83.75);
  }
}
@supports (padding-bottom: clamp( 4rem , 3.4626865672rem  +  2.6865671642vw , 6.25rem )) {
  .static-page__content {
    padding-bottom: clamp( 4rem , 3.4626865672rem  +  2.6865671642vw , 6.25rem );
  }
}
@supports not (padding-bottom: clamp( 4rem , 3.4626865672rem  +  2.6865671642vw , 6.25rem )) {
  .static-page__content {
    padding-bottom: calc(4rem + 2.25 * (100vw - 20rem) / 83.75);
  }
}
.static-page__title {
  font-family: var(--font-heading);
  font-weight: 700;
  line-height: 1.2;
  color: #1d1d1b;
}
@supports (font-size: clamp( 1.75rem , 1.4514925373rem  +  1.4925373134vw , 3rem )) {
  .static-page__title {
    font-size: clamp( 1.75rem , 1.4514925373rem  +  1.4925373134vw , 3rem );
  }
}
@supports not (font-size: clamp( 1.75rem , 1.4514925373rem  +  1.4925373134vw , 3rem )) {
  .static-page__title {
    font-size: calc(1.75rem + 1.25 * (100vw - 20rem) / 83.75);
  }
}
@supports (margin-bottom: clamp( 1.25rem , 1.0708955224rem  +  0.8955223881vw , 2rem )) {
  .static-page__title {
    margin-bottom: clamp( 1.25rem , 1.0708955224rem  +  0.8955223881vw , 2rem );
  }
}
@supports not (margin-bottom: clamp( 1.25rem , 1.0708955224rem  +  0.8955223881vw , 2rem )) {
  .static-page__title {
    margin-bottom: calc(1.25rem + 0.75 * (100vw - 20rem) / 83.75);
  }
}
.static-page__body {
  font-size: 1rem;
  line-height: 1.6;
  color: #1d1d1b;
}
.static-page__body > * + * {
  margin-top: 1rem;
}
.static-page__body h2,
.static-page__body h3,
.static-page__body h4 {
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.3;
  margin-top: 1.75rem;
}
.static-page__body ul,
.static-page__body ol {
  padding-left: 1.5rem;
}
.static-page__body a {
  color: inherit;
  text-decoration: underline;
}
.static-page__body img {
  max-width: 100%;
  height: auto;
}

body.is-book-picker-open {
  overflow: hidden;
}

.book-picker-modal__dialog {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
  width: 100%;
  max-width: 42.5rem;
  max-height: calc(100svh - 2rem);
  overflow: hidden;
  padding: 5rem;
  border-radius: 2.5rem;
  background: #fff;
  outline: none;
}
.book-picker-modal__logo {
  display: block;
  width: 15rem;
  height: 2.625rem;
  flex-shrink: 0;
  -o-object-fit: contain;
     object-fit: contain;
}
.book-picker-modal__head {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.75rem;
  width: 100%;
  max-width: 32.5rem;
  flex-shrink: 0;
  text-align: center;
}
.book-picker-modal__close {
  position: absolute;
  top: 2rem;
  left: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  line-height: 0;
}
.book-picker-modal__close-icon {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
}
.book-picker-modal__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 2.25rem;
  font-weight: 600;
  line-height: 1.1;
  color: #1b2638;
}
.book-picker-modal__lead {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.4;
  color: #5a6477;
}
.book-picker-modal__form {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  width: 100%;
  max-width: 32.5rem;
  min-height: 0;
  padding-top: 1.5rem;
  overflow: hidden;
}
.book-picker-modal__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  width: 100%;
  min-height: 2.9375rem;
  margin: 0;
  padding: 0.75rem 1.5rem 1rem;
  border: 0;
  border-radius: 1rem;
  background: #006d6d;
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  color: #fff;
  cursor: pointer;
  flex-shrink: 0;
  transition: background-color 0.2s ease, opacity 0.2s ease;
}
@media (any-hover: hover) {
  .book-picker-modal__submit:hover:not(:disabled) {
    background: #005a5a;
  }
}
.book-picker-modal__submit:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.book-picker-modal__books {
  position: relative;
  width: 100%;
  max-width: 32.5rem;
  margin: 0 auto;
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.book-picker-modal__books-viewport {
  width: 100%;
  overflow: hidden;
}
.book-picker-modal__books-track {
  display: flex;
}
.book-picker-modal__books-nav {
  position: absolute;
  top: 50%;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.875rem;
  height: 3.875rem;
  padding: 1rem;
  border: 0;
  border-radius: 2rem;
  background: #fff;
  color: #767e8e;
  box-shadow: 0 0.125rem 0.875rem rgba(0, 0, 0, 0.08);
  cursor: pointer;
  transform: translateY(-50%);
}
.book-picker-modal__books-nav--prev {
  left: -4.375rem;
}
.book-picker-modal__books-nav--next {
  right: -4.375rem;
  background: #0a6f6f;
  color: #fff;
  box-shadow: none;
}
.book-picker-modal__books-nav-icon {
  display: block;
  width: 2rem;
  height: 2rem;
}
.book-picker-modal__book {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 1rem;
  border: 0.125rem solid #d0d2d9;
  border-radius: 1rem;
  background: #fff;
  cursor: pointer;
  text-align: center;
}
.book-picker-modal__book--active {
  border-width: 0.25rem;
  border-color: #02918e;
  box-shadow: none;
}
.book-picker-modal__book--active .book-picker-modal__book-title {
  color: #02918e;
  font-weight: 600;
}
.book-picker-modal__book:focus {
  outline: none;
}
.book-picker-modal__book:focus-visible {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.book-picker-modal__book-cover {
  display: block;
  flex-shrink: 0;
  width: 13.5rem;
  height: 17rem;
  max-width: 100%;
  border-radius: 0;
  box-shadow: 0 0.125rem 0.875rem rgba(0, 0, 0, 0.15);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.book-picker-modal__book-cover--placeholder {
  background-image: linear-gradient(135deg, #efe4ce, #9a6142);
}
.book-picker-modal__book-title {
  display: block;
  margin: 0;
  max-width: 13.5rem;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  color: #767e8e;
  text-align: center;
  text-wrap: balance;
}
@media (max-height: 47.5rem) {
  .book-picker-modal__dialog {
    gap: 1.5rem;
    padding: 2rem 2.5rem 1.5rem;
  }
  .book-picker-modal__form {
    padding-top: 1rem;
    gap: 1rem;
  }
  .book-picker-modal__book {
    height: auto;
  }
  .book-picker-modal__book-cover {
    width: 10.5rem;
    height: 13.125rem;
  }
  .book-picker-modal__book-title {
    font-size: 1rem;
    max-width: 10.5rem;
  }
}
@media (max-height: 40rem) {
  .book-picker-modal__dialog {
    gap: 1rem;
    padding: 1.5rem 2rem 1rem;
  }
  .book-picker-modal__title {
    font-size: 1.75rem;
  }
  .book-picker-modal__lead {
    font-size: 1rem;
  }
  .book-picker-modal__book {
    height: auto;
  }
  .book-picker-modal__book-cover {
    width: 8.75rem;
    height: 11rem;
  }
  .book-picker-modal__book-title {
    font-size: 0.875rem;
    max-width: 8.75rem;
  }
}
.book-picker-modal {
  /* Figma: Выбор книги (mobile 390) — node 389:10492 */
}
@media (max-width: 47.99875em) {
  .book-picker-modal {
    align-items: stretch;
    padding: 0;
  }
  .book-picker-modal__dialog {
    gap: 2.5rem;
    width: 100%;
    max-width: none;
    min-height: 100svh;
    max-height: 100svh;
    overflow: hidden;
    padding: 7.75rem 1rem 1.5rem;
    border-radius: 0;
  }
  .book-picker-modal__close {
    top: 2rem;
    left: 1rem;
  }
  .book-picker-modal__logo {
    width: 12.5rem;
    height: 2.1875rem;
  }
  .book-picker-modal__head {
    max-width: 22.375rem;
  }
  .book-picker-modal__title {
    font-size: 1.75rem;
  }
  .book-picker-modal__lead {
    font-size: 1rem;
  }
  .book-picker-modal__form {
    max-width: 22.375rem;
    padding-top: 1rem;
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
  }
  .book-picker-modal__books {
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 1.5rem;
    max-width: 22.375rem;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
  }
  .book-picker-modal__books-viewport {
    grid-row: 1;
    grid-column: 1/-1;
    width: 100%;
  }
  .book-picker-modal__books-nav {
    position: static;
    grid-row: 2;
    transform: none;
    width: 3.875rem;
    height: 3.875rem;
    padding: 1rem;
    border-radius: 2rem;
  }
  .book-picker-modal__books-nav--prev {
    left: auto;
    grid-column: 1;
    justify-self: start;
  }
  .book-picker-modal__books-nav--next {
    right: auto;
    grid-column: 2;
    justify-self: end;
  }
  .book-picker-modal__books-nav-icon {
    width: 2rem;
    height: 2rem;
  }
  .book-picker-modal__book {
    box-sizing: border-box;
    width: 10.75rem;
    max-width: 10.75rem;
    height: auto;
    padding: 1rem;
    gap: 0.5rem;
  }
  .book-picker-modal__book-cover {
    width: 8.75rem;
    height: 11.375rem;
  }
  .book-picker-modal__book-cover--placeholder {
    width: 8.75rem;
    height: 11.375rem;
  }
  .book-picker-modal__book-title {
    font-size: 0.75rem;
    max-width: 8.75rem;
  }
}

.btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  text-decoration: none;
  text-align: center;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease, opacity 0.2s ease, color 0.2s ease;
}
.btn:focus-visible {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.1875rem;
}
.btn:disabled, .btn[aria-disabled=true] {
  cursor: not-allowed;
}

.btn--accent {
  padding-inline: 2.5rem;
  min-height: 3.75rem;
  border-radius: 1.25rem;
  background: var(--gradient-brand);
  font-size: 1.25rem;
  color: var(--color-white);
}
@media (any-hover: hover) {
  .btn--accent:hover {
    transform: translateY(-0.0625rem);
    box-shadow: 0 0.5rem 1.25rem var(--color-brand-shadow);
    background: var(--gradient-brand-hover);
    color: var(--color-white);
  }
}
.btn--accent:active {
  opacity: 0.92;
}

.btn--accent-solid {
  background: var(--color-cta-registration, #006d6d);
}
@media (any-hover: hover) {
  .btn--accent-solid:hover {
    background: #005a5a;
  }
}

.btn--accent-wide {
  width: 23.875rem;
  max-width: 100%;
}
@media (max-width: 61.99875em) {
  .btn--accent-wide {
    align-self: stretch;
    width: 100%;
  }
}

.btn--accent-block {
  align-self: stretch;
  width: 100%;
}

.btn--accent-card {
  width: 23.875rem;
  max-width: 100%;
  align-self: flex-start;
  padding: 1.125rem 2.5rem;
  min-height: 3.875rem;
  border-radius: 1rem;
  font-size: 1.375rem;
}
@media (max-width: 75rem) {
  .btn--accent-card {
    align-self: stretch;
    width: 100%;
  }
}

.btn--accent-sm {
  font-size: 1rem;
}

.btn--primary {
  padding: 0.875rem 1.5rem;
  min-height: 2.9375rem;
  border-radius: 1rem;
  background: var(--color-cta-registration, #006d6d);
  font-size: 1rem;
  color: var(--color-white);
}
@media (any-hover: hover) {
  .btn--primary:hover {
    background: #005a5a;
    color: var(--color-white);
  }
}
.btn--primary:focus-visible, .btn--primary:active {
  color: var(--color-white);
}
.btn--primary:active {
  opacity: 0.92;
}
.btn--primary.btn--admin {
  min-height: 3.4375rem;
  padding: 0.75rem 1.5rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  border-radius: 1rem;
}

.btn--soft {
  padding: 0.875rem 1.5rem;
  min-height: 2.9375rem;
  border-radius: 1rem;
  background: var(--color-link-chip);
  font-size: 1rem;
  color: var(--color-cta-registration, #006d6d);
}
@media (any-hover: hover) {
  .btn--soft:hover {
    background: var(--color-link-chip-hover);
  }
}
.btn--soft:active {
  opacity: 0.92;
}

.btn--chip {
  padding: 0.5rem 1rem;
  min-height: 2.5rem;
  border-radius: 1.875rem;
  background: var(--color-surface);
  font-family: var(--font-family);
  font-size: 1.25rem;
  font-weight: 500;
  color: #3f4b5f;
}
@media (max-width: 47.99875em) {
  .btn--chip {
    font-size: 1rem;
    padding: 0.5rem 0.875rem;
    min-height: 2.25rem;
  }
}
@media (any-hover: hover) {
  .btn--chip:hover:not(.btn--chip-active) {
    background: var(--color-surface-muted);
  }
}
.btn--chip--active, .btn--chip.btn--chip-active {
  background: var(--color-outline);
  color: var(--color-white);
}

/* Figma Filter Open — node 206:300 */
.filter-dropdown {
  position: relative;
  z-index: 5;
}
.filter-dropdown--open {
  z-index: 30;
}
.filter-dropdown__trigger-box {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.125rem;
  border-radius: 1rem;
  background: var(--color-surface);
  transition: background 0.2s ease;
}
@media (max-width: 61.99875em) {
  .filter-dropdown__trigger-box {
    padding: 0.75rem;
  }
}
@media (any-hover: hover) {
  .filter-dropdown__trigger-box:hover {
    background: var(--color-surface-muted);
  }
}
.filter-dropdown__trigger {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0;
  border: none;
  background: transparent;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.2;
  color: #3f4b5f;
  cursor: pointer;
}
@media (max-width: 61.99875em) {
  .filter-dropdown__trigger {
    gap: 0.25rem;
  }
}
.filter-dropdown__trigger:focus-visible {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.1875rem;
}
.filter-dropdown__icon {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  color: #3f4b5f;
}
.filter-dropdown__label {
  white-space: nowrap;
}
.filter-dropdown--active .filter-dropdown__trigger {
  color: #37a1a1;
}
.filter-dropdown--active .filter-dropdown__icon {
  color: #37a1a1;
}
.filter-dropdown__clear {
  display: none;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: #abb4c2;
  cursor: pointer;
}
.filter-dropdown__clear:focus-visible {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
  border-radius: 0.25rem;
}
.filter-dropdown__clear-icon {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
}
.filter-dropdown--active .filter-dropdown__clear:not([hidden]) {
  display: inline-flex;
}
.filter-dropdown__layer[hidden]:not(.is-open):not(.is-closing) {
  display: none;
}
.filter-dropdown__backdrop {
  display: none;
}
.filter-dropdown__sr-only {
  position: absolute;
  width: 0.0625rem;
  height: 0.0625rem;
  padding: 0;
  margin: -0.0625rem;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.filter-dropdown__panel {
  position: absolute;
  top: calc(100% + 0.5625rem);
  right: 0;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1rem;
  width: 18.3125rem;
  max-width: min(18.3125rem, 100vw - 2rem);
  padding: 1rem 1.25rem;
  border-radius: 1rem;
  background: var(--color-surface);
  box-shadow: 0 0.125rem 0.875rem rgba(0, 0, 0, 0.15);
  opacity: 0;
  transform: translateY(-0.5rem) scale(0.98);
  transition: opacity 0.22s ease, transform 0.22s cubic-bezier(0.22, 1, 0.36, 1);
}
.filter-dropdown__layer.is-open .filter-dropdown__panel {
  opacity: 1;
  transform: translateY(0) scale(1);
}
.filter-dropdown__layer.is-closing .filter-dropdown__panel {
  opacity: 0;
  transform: translateY(-0.5rem) scale(0.98);
}
.filter-dropdown__panel--wide {
  width: 27.5rem;
  max-width: min(27.5rem, 100vw - 2rem);
}
.filter-dropdown__actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.5rem;
}
.filter-dropdown__apply.btn.btn--primary {
  min-height: 3.4375rem;
  font-size: 1.125rem;
}
@media (max-width: 61.99875em) {
  .filter-dropdown {
    flex-shrink: 0;
  }
  .filter-dropdown__trigger-box {
    padding: 0.75rem;
  }
  .filter-dropdown__label {
    display: none;
  }
  .filter-dropdown--active .filter-dropdown__label {
    display: inline;
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.2;
    color: #37a1a1;
  }
  .filter-dropdown--open .filter-dropdown__layer {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 1;
  }
  .filter-dropdown__backdrop {
    display: block;
    position: absolute;
    inset: 0;
    padding: 0;
    border: none;
    background: rgba(0, 0, 0, 0.5);
    -webkit-backdrop-filter: blur(3.125rem);
            backdrop-filter: blur(3.125rem);
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.22s ease;
  }
  .filter-dropdown__layer.is-open .filter-dropdown__backdrop {
    opacity: 1;
  }
  .filter-dropdown__layer.is-closing .filter-dropdown__backdrop {
    opacity: 0;
  }
  .filter-dropdown__panel {
    position: absolute;
    top: 50%;
    right: 1rem;
    left: 1rem;
    width: auto;
    max-width: none;
    margin: 0;
    gap: 1.5rem;
    opacity: 0;
    transform: translateY(calc(-50% + 0.75rem)) scale(0.98);
    transition: opacity 0.22s ease, transform 0.22s cubic-bezier(0.22, 1, 0.36, 1);
  }
  .filter-dropdown__layer.is-open .filter-dropdown__panel {
    opacity: 1;
    transform: translateY(-50%) scale(1);
  }
  .filter-dropdown__layer.is-closing .filter-dropdown__panel {
    opacity: 0;
    transform: translateY(calc(-50% + 0.75rem)) scale(0.98);
  }
  .filter-dropdown__options {
    gap: 1rem;
  }
}
.filter-dropdown__group {
  margin: 0;
  padding: 0;
  border: 0;
  min-width: 0;
}
.filter-dropdown__group-title {
  display: block;
  width: 100%;
  margin: 0 0 0.75rem;
  padding: 0;
  font-family: var(--font-family);
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: #3f4b5f;
}
.filter-dropdown__options {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.filter-dropdown__options--category {
  gap: 1rem;
}
.filter-dropdown__options--grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  -moz-column-gap: 1rem;
       column-gap: 1rem;
  row-gap: 0.75rem;
}
.filter-dropdown__check-box--round {
  position: relative;
  border-radius: 50%;
  border: 0.125rem solid #02918e;
  background-color: #fff;
  background-image: none;
}
.filter-dropdown__checkbox:checked + .filter-dropdown__check-box--round {
  background-color: #fff;
  background-image: none;
}
.filter-dropdown__checkbox:checked + .filter-dropdown__check-box--round::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #02918e;
  transform: translate(-50%, -50%);
}
.filter-dropdown__option {
  margin: 0;
}
.filter-dropdown__check {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  cursor: pointer;
}
.filter-dropdown__checkbox {
  position: absolute;
  width: 0.0625rem;
  height: 0.0625rem;
  padding: 0;
  margin: -0.0625rem;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  opacity: 0;
}
.filter-dropdown__check-box {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  box-sizing: border-box;
  border: none;
  border-radius: 0.5rem;
  background-color: var(--color-surface);
  background-image: url("../img/registration-checkbox-outline.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  transition: background-color 0.15s ease;
  pointer-events: none;
}
.filter-dropdown__checkbox:checked + .filter-dropdown__check-box {
  background-color: var(--color-outline);
  background-image: url("../img/registration-checkbox-mark.svg");
  background-size: 100%;
}
.filter-dropdown__checkbox:focus-visible + .filter-dropdown__check-box {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.filter-dropdown__check-text {
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.2;
  color: #3f4b5f;
}
.filter-dropdown__radio {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  cursor: pointer;
}
.filter-dropdown__radio-input {
  position: absolute;
  width: 0.0625rem;
  height: 0.0625rem;
  padding: 0;
  margin: -0.0625rem;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  opacity: 0;
  pointer-events: none;
}
.filter-dropdown__radio-mark {
  position: relative;
  display: block;
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  box-sizing: border-box;
  border: 0.125rem solid #02918e;
  border-radius: 50%;
  background: #fff;
  pointer-events: none;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}
.filter-dropdown__radio-input:checked + .filter-dropdown__radio-mark {
  border-color: #02918e;
  background: #fff;
}
.filter-dropdown__radio-input:checked + .filter-dropdown__radio-mark::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #02918e;
  transform: translate(-50%, -50%);
}
.filter-dropdown__radio-input:focus-visible + .filter-dropdown__radio-mark {
  outline: 0.125rem solid #02918e;
  outline-offset: 0.125rem;
}
.filter-dropdown__radio-text {
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.2;
  color: #3f4b5f;
}
@media (min-width: 62rem) {
  .filter-dropdown__close {
    display: none;
  }
}

body.is-filter-open {
  overflow: hidden;
}
@media (max-width: 61.99875em) {
  body.is-filter-open main:has(.filter-dropdown--open) {
    position: relative;
    z-index: 70;
  }
}

.is-menu-open {
  overflow: hidden;
}

.header {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 40;
  height: var(--headerHeight);
  display: flex;
  align-items: center;
  background: transparent;
  transition: background-color 0.25s ease, border-color 0.25s ease;
  border-bottom: 0.0625rem solid transparent;
}
.header.is-sticky {
  background: var(--color-brand-overlay-82);
  backdrop-filter: blur(0.625rem);
  -webkit-backdrop-filter: blur(0.625rem);
  border-bottom-color: var(--color-accent-mint-20);
}
@media (max-width: 61.99875em) {
  .header.is-sticky {
    background: rgba(3, 35, 35, 0.94);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}
.header.is-open, .header.is-closing {
  background: transparent;
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
  border-bottom-color: transparent;
}
.header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding-inline: clamp(1rem, 1.5rem, 9.375rem);
  margin-inline: auto;
  width: 100%;
}
@media (max-width: 75rem) {
  .header__inner {
    gap: 1rem;
  }
}
@media (max-width: 61.99875em) {
  .header__inner {
    padding: 0.9375rem 1rem;
    gap: 0.625rem;
  }
}
.header__logo {
  flex-shrink: 0;
  line-height: 0;
  display: block;
}
.header__logo-img {
  display: block;
  width: 18.375rem;
  height: 3.125rem;
  max-width: min(18.375rem, 46vw);
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: left center;
     object-position: left center;
}
@media (max-width: 75rem) {
  .header__logo-img {
    max-width: 13.75rem;
  }
}
@media (max-width: 61.99875em) {
  .header__logo-img {
    width: 11.875rem;
    height: 2.0625rem;
    max-width: 11.875rem;
  }
}
.header__cta {
  flex-shrink: 0;
  min-height: 4.5625rem;
  align-items: center;
  display: inline-flex;
  justify-content: center;
  padding: 1.25rem 2rem 1.25rem;
  border-radius: 1.25rem;
  background-color: var(--color-white-10);
  color: var(--color-white);
  font-family: var(--font-heading);
  font-weight: 600;
  font-style: normal;
  font-synthesis: none;
  font-size: 1.5rem;
  line-height: 1.2;
  text-decoration: none;
  transition: background-color 0.2s ease;
}
.header__cta:hover {
  background-color: var(--color-white-18);
  color: var(--color-white);
}
@media (max-width: 87.5rem) {
  .header__cta {
    padding: 0.875rem 1.375rem;
    min-height: 3.5rem;
    font-size: 1.25rem;
  }
}
@media (max-width: 75rem) {
  .header__cta {
    display: none;
  }
}
@media (max-width: 61.99875em) {
  .header__cta {
    display: none;
  }
}
.header__burger {
  display: none;
  position: relative;
  z-index: 50;
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
  padding: 0;
  border: 0;
  cursor: pointer;
  background: var(--color-white-10);
  border-radius: 1rem;
}
@media (max-width: 75rem) {
  .header__burger {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.4375rem;
  }
}
@media (max-width: 61.99875em) {
  .header__burger {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.5rem;
    gap: 0.375rem;
    border-radius: 0.75rem;
  }
}
.header__burger:hover {
  background: var(--color-white-16);
}
.header__burger-icon {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  color: var(--color-white);
}
.header__burger-icon path {
  stroke: currentColor;
}
@media (max-width: 61.99875em) {
  .header__burger-icon {
    width: 1.5rem;
    height: 1.5rem;
  }
}
@media (min-width: 75.0625rem) {
  .header--inner .header-nav__link {
    color: var(--color-text-dark);
  }
  .header--inner .header-nav__link:hover {
    color: var(--color-brand);
  }
  .header--inner .header-nav__link:hover::after {
    background: var(--color-brand);
    opacity: 1;
  }
  .header--inner .header-nav__link:focus-visible {
    color: var(--color-brand-dark);
    box-shadow: 0 0 0 0.0625rem var(--color-outline);
  }
}
.header--inner .header__cta {
  background: rgba(71, 184, 178, 0.1);
  color: var(--color-cta-registration);
}
.header--inner .header__cta:hover {
  background: rgba(71, 184, 178, 0.18);
  color: var(--color-brand-dark);
}
.header--inner .header__burger {
  background: rgba(71, 184, 178, 0.1);
}
@media (max-width: 75rem) {
  .header--inner .header__burger {
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.5rem;
    border-radius: 1rem;
  }
}
.header--inner .header__burger:hover {
  background: rgba(71, 184, 178, 0.18);
}
.header--inner .header__burger-icon {
  color: #0c5955;
}
.header--inner.is-sticky {
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(0.625rem);
  -webkit-backdrop-filter: blur(0.625rem);
  border-bottom-color: var(--color-border-light);
}
@media (max-width: 61.99875em) {
  .header--inner.is-sticky {
    background: #fff;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}
.header--inner.is-open, .header--inner.is-closing {
  background: transparent;
  border-bottom-color: transparent;
}

.header-nav {
  flex: 1;
  display: flex;
  justify-content: center;
  min-width: 0;
}
@media (max-width: 75rem) {
  .header-nav {
    flex: none;
    --sidebar-width: min(21.25rem, calc(100% - 3.125rem));
    --sidebar-left: calc(100% - var(--sidebar-width));
    position: fixed;
    inset: 0;
    z-index: 60;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    width: 100%;
    min-height: 100vh;
    min-height: 100dvh;
    padding: 0 0 2rem;
    padding-bottom: max(2rem, env(safe-area-inset-bottom, 0px));
    background: var(--color-black-60);
    -webkit-backdrop-filter: blur(0.4375rem);
            backdrop-filter: blur(0.4375rem);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    overflow: hidden;
    transition: opacity 0.2s ease, visibility 0s linear 0.2s;
  }
  .header-nav::before {
    content: "";
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: var(--sidebar-width);
    background: var(--color-brand-secondary);
    z-index: 0;
    transform: translateX(100%);
    transition: transform 0.24s cubic-bezier(0.22, 1, 0.36, 1);
  }
  .header.is-open .header-nav {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity 0.2s ease, visibility 0s;
  }
  .header.is-open .header-nav::before {
    transform: translateX(0);
  }
  .header.is-closing .header-nav {
    opacity: 0;
    visibility: visible;
    pointer-events: auto;
    transition: opacity 0.2s ease, visibility 0s;
  }
  .header.is-closing .header-nav::before {
    transform: translateX(100%);
  }
}
.header-nav__mobile-head {
  display: none;
}
@media (max-width: 75rem) {
  .header-nav__mobile-head {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: var(--sidebar-width);
    min-height: var(--headerHeight);
    margin-left: var(--sidebar-left);
    padding: 0 1rem;
    border-bottom: 0.0625rem solid var(--color-white-30);
  }
}
.header-nav__mobile-logo {
  display: block;
  line-height: 0;
}
.header-nav__mobile-logo img {
  display: block;
  width: 11.875rem;
  height: 2.0625rem;
}
.header-nav__close {
  display: none;
}
@media (max-width: 75rem) {
  .header-nav__close {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.5rem;
    border: 0;
    border-radius: 0.75rem;
    cursor: pointer;
  }
}
.header-nav__close-icon {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  color: var(--color-white);
}
.header-nav__close-icon use {
  fill: currentColor;
}
.header-nav__list {
  display: flex;
  align-items: center;
}
@supports (gap: clamp( 1.75rem , -8.3586956522rem  +  13.4782608696vw , 5.625rem )) {
  .header-nav__list {
    gap: clamp( 1.75rem , -8.3586956522rem  +  13.4782608696vw , 5.625rem );
  }
}
@supports not (gap: clamp( 1.75rem , -8.3586956522rem  +  13.4782608696vw , 5.625rem )) {
  .header-nav__list {
    gap: calc(1.75rem + 3.875 * (100vw - 75rem) / 28.75);
  }
}
@media (max-width: 75em) {
  .header-nav__list {
    gap: inherit;
  }
}
.header-nav__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 61.99875em) {
  .header-nav__list {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (max-width: 75rem) {
  .header-nav__list {
    align-self: flex-start;
    flex-direction: column;
    align-items: flex-start;
    flex: 1 1 auto;
    min-height: 0;
    width: var(--sidebar-width);
    margin-left: var(--sidebar-left);
    padding: 2rem 0 1.5rem 1.5rem;
    gap: 2rem;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    position: relative;
    z-index: 1;
  }
}
@media (max-width: 75rem) {
  .header-nav__item {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    width: 100%;
  }
}
.header-nav__link {
  position: relative;
  display: inline-block;
  padding-block: 0.25rem;
  text-decoration: none;
  color: var(--color-white-82);
}
@supports (font-size: clamp( 1.125rem , 1.0354477612rem  +  0.447761194vw , 1.5rem )) {
  .header-nav__link {
    font-size: clamp( 1.125rem , 1.0354477612rem  +  0.447761194vw , 1.5rem );
  }
}
@supports not (font-size: clamp( 1.125rem , 1.0354477612rem  +  0.447761194vw , 1.5rem )) {
  .header-nav__link {
    font-size: calc(1.125rem + 0.375 * (100vw - 20rem) / 83.75);
  }
}
.header-nav__link {
  line-height: 1.5;
  transition: color 0.2s ease;
}
@media (min-width: calc(61.99875em + 0.01em)) {
  .header-nav__link::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 0.0625rem;
    background: var(--color-accent-mint);
    opacity: 0;
    transform: scaleX(0.92);
    transform-origin: center;
    transition: opacity 0.2s ease, transform 0.2s ease;
    pointer-events: none;
  }
}
.header-nav__link:hover {
  color: var(--color-white-98);
}
@media (min-width: calc(61.99875em + 0.01em)) {
  .header-nav__link:hover::after {
    opacity: 0.45;
    transform: scaleX(1);
  }
}
.header-nav__link:focus-visible {
  color: var(--color-white);
  outline: none;
  border-radius: 0.25rem;
  box-shadow: 0 0 0 0.0625rem var(--color-focus-shadow);
}
@media (max-width: 75rem) {
  .header-nav__link {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    padding: 0 0 0.8125rem;
    border-radius: 0;
    border-left: 0;
    letter-spacing: 0.02em;
    text-align: left;
    transition: color 0.2s ease;
  }
  .header-nav__link::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 0.0625rem;
    background: var(--color-white-10);
    opacity: 1;
    transform: none;
  }
  .header-nav__link:hover {
    color: var(--color-white);
  }
  .header-nav__link:focus-visible {
    box-shadow: 0 0 0 0.0625rem var(--color-focus-shadow-soft);
  }
}
.header-nav__mobile-bottom {
  display: none;
}
@media (max-width: 75rem) {
  .header-nav__mobile-bottom {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    gap: 2rem;
    width: var(--sidebar-width);
    margin-left: var(--sidebar-left);
    padding-left: 1.5rem;
    position: relative;
    z-index: 1;
  }
}
.header-nav__mobile-register {
  display: none;
}
@media (max-width: 75rem) {
  .header-nav__mobile-register {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-self: flex-start;
    padding: 1rem 1.5rem 0.75rem;
    border-radius: 1rem;
    background: var(--color-white-10);
    font-family: var(--font-heading);
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.5;
    color: var(--color-white);
    text-decoration: none;
  }
}
.header-nav__contacts {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.header-nav__contact {
  font-size: 1.125rem;
  line-height: 1.5;
  color: var(--color-white);
  text-decoration: none;
}
@media (max-width: 61.99875em) {
  .header-nav__contact {
    font-size: 1rem;
  }
}
.header-nav__socials {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.header-nav__social {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background: var(--color-white-10);
  color: var(--color-white);
  text-decoration: none;
}
.header-nav__social-icon {
  width: 1.5rem;
  height: 1.5rem;
  display: block;
}
.header-nav__social-icon use {
  fill: currentColor;
}

.about {
  position: relative;
  margin-top: 2.5rem;
  z-index: 2;
}
.about__panel {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  overflow: clip;
  border-radius: 2rem;
  background-color: var(--color-panel);
  padding: clamp(1.5rem, 5vw, 3.75rem);
}
@media (min-width: calc(61.99875em + 0.01em)) {
  .about__panel {
    padding: 3.75rem;
  }
}
@media (max-width: 47.99875em) {
  .about__panel {
    border-radius: 1.5rem;
    padding: 1.5rem 1rem;
  }
}
.about__blobs {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}
@media (max-width: 61.99875em) {
  .about__blobs {
    display: none;
  }
}
.about__blob {
  position: absolute;
  border-radius: 50%;
  opacity: 0.25;
  filter: blur(7.5rem);
}
.about__blob--a {
  border-radius: 37.25rem;
  background: var(--color-accent-mint-80);
  filter: blur(11.25rem);
  width: 37.25rem;
  height: 25.9375rem;
  left: -2.5rem;
  bottom: -3.75rem;
}
@media (max-width: 47.99875em) {
  .about__blob--a {
    left: -8.125rem;
    bottom: -6.25rem;
  }
}
.about__blob--b {
  left: clamp(12.5rem, 66%, 66.875rem);
  top: 2.8125rem;
  width: 37.25rem;
  height: 25.9375rem;
  border-radius: 37.25rem;
  background: var(--color-accent-pink-80);
  filter: blur(11.25rem);
}
@media (max-width: 47.99875em) {
  .about__blob--b {
    top: -1.5625rem;
    right: -26.25rem;
  }
}
.about__head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1.5rem 2rem;
  position: relative;
  z-index: 1;
}
@media (max-width: 47.99875em) {
  .about__head {
    row-gap: 1rem;
  }
}
.about__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  max-width: 48.75rem;
  text-transform: uppercase;
  color: var(--color-text-dark);
}
@supports (font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem )) {
  .about__title {
    font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem );
  }
}
@supports not (font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem )) {
  .about__title {
    font-size: calc(1.5rem + 2.25 * (100vw - 20rem) / 83.75);
  }
}
@media (max-width: 47.99875em) {
  .about__title {
    font-size: 1.5rem;
  }
}
.about__intro {
  margin: 0;
  flex: 0 1 52.625rem;
  max-width: 52.625rem;
  font-size: 1.125rem;
  line-height: 1.5;
  text-align: right;
  color: var(--color-text-body);
  margin-left: auto;
}
@media (max-width: 61.99875em) {
  .about__intro {
    flex: 1 1 100%;
    max-width: 100%;
  }
}
@media (max-width: 47.99875em) {
  .about__intro {
    margin-left: 0;
    text-align: left;
  }
}
.about__steps {
  position: relative;
  z-index: 1;
  display: grid;
  width: 100%;
  grid-template-columns: repeat(3, minmax(0, 27.125rem));
  justify-content: space-between;
  align-items: stretch;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  row-gap: 2rem;
}
@media (max-width: 61.99875em) {
  .about__steps {
    grid-template-columns: 1fr;
    justify-content: stretch;
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 1rem;
  }
}
@media (min-width: calc(61.99875em + 0.01em)) and (max-width: 87.5rem) {
  .about__steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    -moz-column-gap: 1.5rem;
         column-gap: 1.5rem;
  }
}

.step-card {
  container-type: inline-size;
  container-name: step-card;
  display: flex;
  flex-direction: column;
  gap: 0;
  width: 100%;
  height: 100%;
  margin-inline: auto;
  padding: 3.25rem 2rem 2rem;
  border-radius: 1.5rem;
  background-color: var(--color-surface);
}
@media (max-width: 47.99875em) {
  .step-card {
    padding: 1.5rem 1rem 1rem;
  }
}
@media (min-width: calc(61.99875em + 0.01em)) and (max-width: 87.5rem) {
  .step-card {
    max-width: none;
    margin-inline: 0;
    padding: 2.5rem 1.25rem 1.5rem;
  }
}
@media (max-width: 61.99875em) {
  .step-card {
    max-width: none;
  }
}
.step-card__visual {
  position: relative;
}
@supports (margin-bottom: clamp( 1rem , 0.6417910448rem  +  1.7910447761vw , 2.5rem )) {
  .step-card__visual {
    margin-bottom: clamp( 1rem , 0.6417910448rem  +  1.7910447761vw , 2.5rem );
  }
}
@supports not (margin-bottom: clamp( 1rem , 0.6417910448rem  +  1.7910447761vw , 2.5rem )) {
  .step-card__visual {
    margin-bottom: calc(1rem + 1.5 * (100vw - 20rem) / 83.75);
  }
}
.step-card__visual {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.step-card__num {
  inset-inline-start: 0;
  display: block;
}
@supports (height: clamp( 9.6875rem , 9.3889925373rem  +  1.4925373134vw , 10.9375rem )) {
  .step-card__num {
    height: clamp( 9.6875rem , 9.3889925373rem  +  1.4925373134vw , 10.9375rem );
  }
}
@supports not (height: clamp( 9.6875rem , 9.3889925373rem  +  1.4925373134vw , 10.9375rem )) {
  .step-card__num {
    height: calc(9.6875rem + 1.25 * (100vw - 20rem) / 83.75);
  }
}
.step-card__num {
  max-height: none;
  max-width: 100%;
  pointer-events: none;
  flex-shrink: 0;
}
@media (max-width: 47.99875em) {
  .step-card__num {
    margin-left: -0.625rem;
    height: 10.125rem;
  }
}
.step-card__name {
  line-height: 1.2;
  font-family: var(--font-heading);
  text-transform: uppercase;
  font-weight: 700;
  color: var(--color-text-dark);
}
@supports (font-size: clamp( 1rem , 0.7014925373rem  +  1.4925373134vw , 2.25rem )) {
  .step-card__name {
    font-size: clamp( 1rem , 0.7014925373rem  +  1.4925373134vw , 2.25rem );
  }
}
@supports not (font-size: clamp( 1rem , 0.7014925373rem  +  1.4925373134vw , 2.25rem )) {
  .step-card__name {
    font-size: calc(1rem + 1.25 * (100vw - 20rem) / 83.75);
  }
}
.step-card__name {
  padding-bottom: 0.3125rem;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media (max-width: 47.99875em) {
  .step-card__name {
    font-size: 1.5rem;
  }
}
.step-card__text {
  margin: 0 0 1rem;
  flex: 1 1 auto;
  font-size: 1.125rem;
  line-height: 1.5;
  color: var(--color-text-body);
}
@media (max-width: 47.99875em) {
  .step-card__text {
    font-size: 1rem;
  }
}
.step-card__timer {
  margin-top: auto;
  align-self: stretch;
  max-width: 100%;
  min-width: 0;
}
.step-card__timer-countdown {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 0.25rem;
  max-width: 100%;
  min-width: 0;
}
.step-card__timer-countdown[hidden] {
  display: none !important;
}
.step-card__timer-part[hidden], .step-card__timer-sep[hidden] {
  display: none !important;
}
.step-card__timer-part {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  flex: 0 1 auto;
  min-width: 0;
  white-space: nowrap;
}
.step-card__timer-unit {
  white-space: pre;
}
.step-card__timer-status {
  max-width: 100%;
}
.step-card__timer-status[hidden] {
  display: none !important;
}
.step-card__timer-sep {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 0.5rem;
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.2;
  color: #d0d2d9;
}
@media (max-width: 47.99875em) {
  .step-card__timer-sep {
    font-size: 1.5rem;
  }
}
.step-card__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 0.75rem;
  line-height: 1.1;
  border-radius: 1.25rem;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.5rem;
  background-color: rgba(106, 227, 252, 0.1);
  color: #1c99b4;
  white-space: nowrap;
}
@media (max-width: 47.99875em) {
  .step-card__tag {
    font-size: 1rem;
    padding: 0.375rem 0.625rem;
  }
}
.step-card__tag--teal {
  background-color: rgba(71, 184, 178, 0.1);
  color: #02918e;
}
.step-card__tag--violet {
  background-color: rgba(189, 94, 234, 0.1);
  color: #a54ecd;
}

@container step-card (max-width: 380px) {
  .step-card__timer-countdown {
    gap: 0.125rem;
  }
  .step-card__timer-part {
    gap: 0.125rem;
  }
  .step-card__timer-sep {
    width: 0.375rem;
    font-size: 1.25rem;
  }
  .step-card__tag {
    padding: 0.375rem 0.5rem;
    font-size: 1.125rem;
    border-radius: 1rem;
  }
}
@container step-card (max-width: 320px) {
  .step-card__timer-sep {
    width: 0.25rem;
    font-size: 1rem;
  }
  .step-card__tag {
    padding: 0.25rem 0.375rem;
    font-size: 0.875rem;
    border-radius: 0.875rem;
  }
}
.books {
  background: var(--gradient-books);
  padding-top: 3.75rem;
  position: relative;
  padding-bottom: 3.75rem;
  overflow: hidden;
}
@media (max-width: 61.99875em) {
  .books {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
.books::before {
  content: none;
  pointer-events: none;
}
@media (max-width: 61.99875em) {
  .books::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url("../img/books-bg-mobile.webp") center top/cover no-repeat;
  }
}
.books__bg-image {
  min-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.books__inner {
  display: flex;
  flex-direction: column;
  gap: 3.75rem;
  position: relative;
  z-index: 2;
}
@media (max-width: 61.99875em) {
  .books__inner {
    gap: 1.5rem;
  }
}
@media (max-width: 47.99875em) {
  .books__inner {
    gap: 1.5rem;
  }
}
.books__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
}
@media (max-width: 75rem) {
  .books__head {
    align-items: flex-start;
    flex-direction: column;
    gap: 0;
  }
}
.books__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
  color: var(--color-white);
}
@supports (font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem )) {
  .books__title {
    font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem );
  }
}
@supports not (font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem )) {
  .books__title {
    font-size: calc(1.5rem + 2.25 * (100vw - 20rem) / 83.75);
  }
}
@media (max-width: 47.99875em) {
  .books__title {
    font-size: 1.5rem;
  }
}
.books__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
@media (max-width: 47.99875em) {
  .books__list {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}

.book-card {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  gap: 1rem;
  padding: 1rem;
  background: var(--color-surface);
  border-radius: 1.5rem;
}
@media (max-width: 75rem) {
  .book-card {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    border-radius: 1.5rem;
  }
}
.book-card__cover {
  flex-shrink: 0;
  overflow: hidden;
  max-width: 100%;
  aspect-ratio: 350/510;
}
@supports (flex-basis: clamp( 15rem , 5.3672316384rem  +  15.5367231638vw , 21.875rem )) {
  .book-card__cover {
    flex-basis: clamp( 15rem , 5.3672316384rem  +  15.5367231638vw , 21.875rem );
  }
}
@supports not (flex-basis: clamp( 15rem , 5.3672316384rem  +  15.5367231638vw , 21.875rem )) {
  .book-card__cover {
    flex-basis: calc(15rem + 6.875 * (100vw - 62rem) / 44.25);
  }
}
.book-card__cover img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1rem;
}
@media (max-width: 61.99875em) {
  .book-card__cover {
    width: 100%;
    max-width: 15rem;
    height: auto;
    aspect-ratio: auto;
    flex-basis: initial;
  }
  .book-card__cover img {
    width: 100%;
    border-radius: 0.75rem;
    box-shadow: 0 0.08563rem 0.6rem var(--color-black-15);
  }
}
.book-card__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  min-width: 0;
  text-align: left;
}
@media (max-width: 75rem) {
  .book-card__content {
    align-items: center;
    width: 100%;
    text-align: center;
  }
}
.book-card__top {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
  width: 100%;
}
@media (max-width: 75rem) {
  .book-card__top {
    align-items: center;
  }
}
.book-card__tag {
  display: inline-flex;
  align-self: flex-start;
  padding: 0.25rem 0.75rem;
  border-radius: 1.875rem;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
  transition: transform 0.2s ease, filter 0.2s ease;
}
@media (max-width: 75rem) {
  .book-card__tag {
    align-self: center;
  }
}
.book-card__tag--violet {
  background: var(--color-accent-violet-20);
  color: var(--color-accent-violet);
}
.book-card__tag {
  /* «Русская литература» в мобильной карточке (Figma) */
}
.book-card__tag--teal {
  background: var(--color-accent-blue-20);
  color: var(--color-accent-blue);
}
.book-card__text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.75rem;
  width: 100%;
}
@media (max-width: 75rem) {
  .book-card__text {
    align-items: center;
  }
}
.book-card__name {
  margin: 0;
  font-family: var(--font-heading);
}
@supports (font-size: clamp( 1rem , 0.8208955224rem  +  0.8955223881vw , 1.75rem )) {
  .book-card__name {
    font-size: clamp( 1rem , 0.8208955224rem  +  0.8955223881vw , 1.75rem );
  }
}
@supports not (font-size: clamp( 1rem , 0.8208955224rem  +  0.8955223881vw , 1.75rem )) {
  .book-card__name {
    font-size: calc(1rem + 0.75 * (100vw - 20rem) / 83.75);
  }
}
.book-card__name {
  font-weight: bold;
  line-height: 1.2;
  text-transform: uppercase;
  color: var(--color-text-dark);
}
@media (max-width: 47.99875em) {
  .book-card__name {
    font-size: 1.5rem;
  }
}
.book-card__desc {
  margin: 0;
  font-family: var(--font-family);
}
@supports (font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem )) {
  .book-card__desc {
    font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem );
  }
}
@supports not (font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem )) {
  .book-card__desc {
    font-size: calc(1rem + 0.125 * (100vw - 20rem) / 83.75);
  }
}
.book-card__desc {
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-text-body);
}
@media (max-width: 47.99875em) {
  .book-card__desc {
    font-size: 1rem;
  }
}
.book-card {
  /* Figma 896:24975 — блок «Где приобрести» + ссылки с точками */
}
.book-card__shops {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.25rem;
  width: 100%;
}
@media (max-width: 75rem) {
  .book-card__shops {
    align-items: center;
  }
}
.book-card__shops-label {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  color: #767E8E;
}
@media (max-width: 47.99875em) {
  .book-card__shops-label {
    font-size: 1rem;
  }
}
.book-card__shops-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 0;
       column-gap: 0;
  row-gap: 0.5rem;
}
@media (max-width: 75rem) {
  .book-card__shops-list {
    justify-content: center;
  }
}
.book-card__shops-list li {
  display: inline-flex;
  align-items: center;
}
.book-card__shops-list li:not(:first-child)::before {
  content: "";
  width: 0.125rem;
  height: 0.125rem;
  margin: 0 0.75rem;
  border-radius: 50%;
  background: #767E8E;
  flex-shrink: 0;
}
.book-card__shop-link,
.book-card a.book-card__shop-link:link,
.book-card a.book-card__shop-link:visited,
.book-card a.book-card__shop-link:hover {
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  color: #02918E;
  text-decoration: underline;
  text-underline-offset: 0.12em;
}
@media (max-width: 47.99875em) {
  .book-card__shop-link,
  .book-card a.book-card__shop-link:link,
  .book-card a.book-card__shop-link:visited,
  .book-card a.book-card__shop-link:hover {
    font-size: 1rem;
  }
}
@media (any-hover: hover) {
  .book-card a.book-card__shop-link:hover {
    color: var(--color-brand);
  }
}
@media (any-hover: hover) {
  .book-card:hover .book-card__tag {
    transform: translateY(-0.0625rem);
    filter: saturate(1.05);
  }
}

.footer {
  position: relative;
  margin-top: auto;
  background: var(--color-brand-deep);
  color: var(--color-white);
  padding-block: 2.5rem;
  overflow: hidden;
}
.footer::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../img/footer-bg-mobile.webp") center top/cover no-repeat;
  pointer-events: none;
}
@media (min-width: calc(61.99875em + 0.01em)) {
  .footer::before {
    inset: auto;
    width: 166.1875rem;
    height: 94.625rem;
    right: -0.625rem;
    bottom: -4.0625rem;
    background: url("../img/footer-bg.svg") center center/contain no-repeat;
  }
}
@media (max-width: 61.99875em) {
  .footer {
    padding-block: 2rem;
  }
}
.footer__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 3.125rem;
}
@media (max-width: 61.99875em) {
  .footer__inner {
    gap: 2rem;
  }
}
.footer__sr-only {
  position: absolute;
  width: 0.0625rem;
  height: 0.0625rem;
  padding: 0;
  margin: -0.0625rem;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.footer__hp {
  position: absolute;
  left: -625rem;
  top: auto;
  width: 0.0625rem;
  height: 0.0625rem;
  overflow: hidden;
}
.footer__hp-input {
  width: 0.0625rem;
  height: 0.0625rem;
  padding: 0;
  margin: 0;
  border: 0;
}
.footer__cta {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  gap: 2rem;
}
@media (max-width: 68.75rem) {
  .footer__cta {
    flex-direction: column;
    align-items: stretch;
  }
}
@media (max-width: 61.99875em) {
  .footer__cta {
    gap: 1.5rem;
  }
}
.footer__intro {
  flex: 1 1 0;
  min-width: 0;
  max-width: 52.375rem;
  display: flex;
  flex-direction: column;
  gap: 3.125rem;
}
@media (max-width: 61.99875em) {
  .footer__intro {
    gap: 1.5rem;
  }
}
.footer__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  color: var(--color-white);
}
@supports (font-size: clamp( 1.75rem , 1.2126865672rem  +  2.6865671642vw , 4rem )) {
  .footer__title {
    font-size: clamp( 1.75rem , 1.2126865672rem  +  2.6865671642vw , 4rem );
  }
}
@supports not (font-size: clamp( 1.75rem , 1.2126865672rem  +  2.6865671642vw , 4rem )) {
  .footer__title {
    font-size: calc(1.75rem + 2.25 * (100vw - 20rem) / 83.75);
  }
}
@media (max-width: 61.99875em) {
  .footer__title {
    font-size: 2rem;
    line-height: 1.2;
  }
}
.footer__lead {
  margin: 0;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.5;
  color: var(--color-white);
}
@media (max-width: 61.99875em) {
  .footer__lead {
    font-size: 1rem;
  }
}
.footer__form {
  position: relative;
  flex: 0 0 auto;
  width: 100%;
  max-width: 28.125rem;
  align-self: flex-start;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 2.25rem 2rem;
  border-radius: 2rem;
  background: var(--color-surface);
  scroll-margin-top: 6.25rem;
}
@media (max-width: 61.99875em) {
  .footer__form {
    max-width: none;
    align-self: stretch;
    padding: 1.25rem 1rem;
    border-radius: 1.5rem;
  }
}
.footer__form .registration__errors {
  margin: 0;
  padding: 0.5rem 0.75rem;
  list-style: none;
  border: 0.0625rem solid rgba(229, 46, 46, 0.35);
  border-radius: 0.75rem;
  background: rgba(229, 46, 46, 0.08);
  color: #b42318;
  font-family: var(--font-family);
  font-size: 0.75rem;
  line-height: 1.3;
}
.footer__form .registration__errors li + li {
  margin-top: 0.25rem;
}
.footer__form .footer__input[aria-invalid=true] {
  border-color: #e52e2e;
}
.footer__form .footer__field:has(.footer__checkbox[aria-invalid=true]) .footer__check-box {
  outline: 0.125rem solid #e52e2e;
  outline-offset: 0.125rem;
}
.footer__form-head {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.footer__form-title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.75rem;
  line-height: 1.2;
  letter-spacing: -0.03em;
  color: var(--color-text-input);
}
.footer__form-sub {
  margin: 0;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--color-text-muted);
}
.footer__form-body {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.footer__fields {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.footer__field {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.footer__error {
  margin: 0;
  font-family: var(--font-family);
  font-size: 0.75rem;
  line-height: 1.3;
  color: #e52e2e;
}
.footer__error[hidden] {
  display: none;
}
.footer__input {
  display: block;
  width: 100%;
  padding: 0.875rem 1.25rem;
  min-height: 3rem;
  border: 0.0625rem solid var(--color-border-light);
  border-radius: 1rem;
  background: var(--color-surface);
  font-family: var(--font-family);
  font-size: 1rem;
  line-height: 1.25rem;
  color: var(--color-text-input);
  outline: none;
  transition: border-color 0.2s ease;
}
.footer__input::-moz-placeholder {
  color: var(--color-text-placeholder);
}
.footer__input::placeholder {
  color: var(--color-text-placeholder);
}
.footer__input:focus-visible {
  border-color: var(--color-outline);
}
.footer__input--textarea {
  min-height: 6rem;
  resize: vertical;
  line-height: 1.5;
}
.footer__check {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  font-family: var(--font-family);
  font-size: 0.875rem;
  line-height: 1.4;
  color: var(--color-text-soft);
}
.footer {
  /* Нативный input скрыт; видимый бокс — .footer__check-box (макет checkbox: 24x24, radius 8, stroke 2px). */
}
.footer__checkbox {
  position: absolute;
  width: 0.0625rem;
  height: 0.0625rem;
  padding: 0;
  margin: -0.0625rem;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  opacity: 0;
}
.footer__check-box {
  flex-shrink: 0;
  position: relative;
  width: 1.5rem;
  height: 1.5rem;
  border: 0.125rem solid var(--color-outline);
  border-radius: 0.5rem;
  background: var(--color-surface);
  transition: background 0.15s ease, border-color 0.15s ease;
  pointer-events: none;
}
.footer__checkbox:checked + .footer__check-box {
  background: var(--color-outline);
  border-color: var(--color-outline);
}
.footer__checkbox:checked + .footer__check-box::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 45%;
  width: 0.3125rem;
  height: 0.5625rem;
  margin-top: -0.0625rem;
  border: solid var(--color-white);
  border-width: 0 0.125rem 0.125rem 0;
  transform: translate(-50%, -50%) rotate(45deg);
}
.footer__checkbox:focus-visible + .footer__check-box {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.1875rem;
}
.footer__checkbox:focus-visible:checked + .footer__check-box {
  outline-color: var(--color-brand);
}
.footer__check-text {
  flex: 1;
  min-width: 0;
}
.footer__check-link:link, .footer__check-link:visited, .footer__check-link:hover, .footer__check-link:active {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 0.125rem;
}
.footer__check-link:hover, .footer__check-link:active {
  color: var(--color-outline);
}
.footer__mid {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  gap: 2.5rem;
}
@media (max-width: 61.99875em) {
  .footer__mid {
    flex-direction: column;
    align-items: stretch;
  }
}
.footer__logo {
  display: block;
  flex-shrink: 0;
}
.footer__logo:focus-visible {
  outline: 0.125rem solid var(--color-accent-mint);
  outline-offset: 0.25rem;
  border-radius: 0.25rem;
}
.footer__logo-img {
  display: block;
  width: 18.375rem;
  max-width: 100%;
  height: auto;
}
@media (max-width: 61.99875em) {
  .footer__logo-img {
    width: 14.375rem;
    max-width: 14.375rem;
  }
}
.footer__contacts-col {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 3.75rem 6.25rem;
}
@media (max-width: 61.99875em) {
  .footer__contacts-col {
    flex: 0 0 auto;
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 1.5rem;
    min-width: 0;
    align-items: flex-start;
  }
}
.footer__cols {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 3.75rem 6.25rem;
}
@media (max-width: 61.99875em) {
  .footer__cols {
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0;
    width: 100%;
  }
}
@media (max-width: 61.99875em) {
  .footer__nav {
    flex: 0 0 auto;
  }
}
.footer__nav-list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.5rem 3.75rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 61.99875em) {
  .footer__nav-list {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
}
.footer__nav-link {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.5;
  color: var(--color-white);
  transition: opacity 0.2s ease;
}
@media (max-width: 61.99875em) {
  .footer__nav-link {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media (any-hover: hover) {
  .footer__nav-link:hover {
    opacity: 0.85;
    color: var(--color-white);
  }
}
.footer__nav-link:focus-visible {
  outline: 0.125rem solid var(--color-accent-mint);
  outline-offset: 0.1875rem;
  border-radius: 0.125rem;
}
.footer__block {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  min-width: 0;
}
@media (max-width: 61.99875em) {
  .footer__block {
    gap: 0.5rem;
  }
}
.footer__block-title {
  margin: 0;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.5;
  color: var(--color-white-60);
}
@media (max-width: 61.99875em) {
  .footer__block-title {
    font-size: 0.75rem;
    line-height: 1.5;
  }
}
.footer__link {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.5;
  color: var(--color-white);
  transition: opacity 0.2s ease;
}
@media (max-width: 61.99875em) {
  .footer__link {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media (any-hover: hover) {
  .footer__link:hover {
    opacity: 0.85;
    color: var(--color-white);
  }
}
.footer__link:focus-visible {
  outline: 0.125rem solid var(--color-accent-mint);
  outline-offset: 0.1875rem;
  border-radius: 0.125rem;
}
.footer__link--mail {
  text-decoration: underline;
  text-underline-offset: 0.1875rem;
}
.footer__rule {
  display: block;
  width: 100%;
  height: 0.0625rem;
  margin: 0;
  border: none;
  background: var(--color-white-20);
}
.footer__bottom {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
}
@media (max-width: 61.99875em) {
  .footer__bottom {
    align-items: center;
  }
}
.footer__copy {
  margin: 0;
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.5;
  color: var(--color-white);
}
@media (max-width: 61.99875em) {
  .footer__copy {
    font-size: 1rem;
  }
}
.footer__socials {
  display: flex;
  flex-direction: row;
  align-items: center;
  min-height: 3.375rem;
  gap: 0.75rem;
}
.footer__social {
  display: block;
  flex-shrink: 0;
  line-height: 0;
  color: var(--color-white);
  transition: opacity 0.2s ease;
}
@media (any-hover: hover) {
  .footer__social:hover {
    opacity: 0.85;
    color: var(--color-white);
  }
}
.footer__social:focus-visible {
  outline: 0.125rem solid var(--color-accent-mint);
  outline-offset: 0.1875rem;
  border-radius: 50%;
}
.footer__social-icon {
  display: block;
  flex-shrink: 0;
  width: 3rem;
  height: 3rem;
}

.gallery {
  position: relative;
  overflow: hidden;
  background: var(--color-bg-gallery);
  padding-block: 3.75rem;
}
.gallery::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  background: url("../img/gallery-bg-mobile.webp") center center/cover no-repeat;
  pointer-events: none;
}
@media (min-width: calc(61.99875em + 0.01em)) {
  .gallery::before {
    width: 147.75rem;
    height: 123.125rem;
    background: url("../img/gallery-bg.svg") center center/contain no-repeat;
  }
}
@media (max-width: 61.99875em) {
  .gallery {
    padding-block: 2rem;
  }
}
.gallery__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 3rem;
  min-width: 0;
}
@media (max-width: 61.99875em) {
  .gallery__inner {
    gap: 1.5rem;
  }
}
.gallery__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
  min-width: 0;
}
@media (max-width: 61.99875em) {
  .gallery__head {
    display: contents;
  }
}
@media (max-width: 61.99875em) {
  .gallery__title {
    order: 1;
  }
  .gallery__swiper {
    order: 2;
  }
  .gallery__nav {
    order: 3;
    width: 100%;
    justify-content: space-between;
    gap: 0;
  }
}
@media (min-width: calc(61.99875em + 0.01em)) {
  .gallery__head {
    display: flex;
  }
}
.gallery__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--color-text-dark);
  text-align: left;
}
@supports (font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem )) {
  .gallery__title {
    font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem );
  }
}
@supports not (font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem )) {
  .gallery__title {
    font-size: calc(1.5rem + 2.25 * (100vw - 20rem) / 83.75);
  }
}
@media (max-width: 61.99875em) {
  .gallery__title {
    font-size: 1.5rem;
    line-height: 1.2;
  }
}
.gallery__nav {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-shrink: 0;
}
.gallery__nav-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  aspect-ratio: 1;
  padding: 0;
  margin: 0;
  border: none;
  border-radius: 1.9375rem;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.2s ease, color 0.2s ease;
}
@media (max-width: 61.99875em) {
  .gallery__nav-btn {
    width: auto;
    min-width: 0;
    aspect-ratio: auto;
    height: 3.875rem;
    padding: 1rem;
    border-radius: 1.9375rem;
  }
}
.gallery__nav-btn--prev {
  background: var(--color-surface);
  color: var(--color-brand);
}
.gallery__nav-btn--next {
  background: var(--color-brand);
  color: var(--color-white);
}
@media (any-hover: hover) {
  .gallery__nav-btn--prev:hover {
    background: var(--color-surface-muted);
  }
  .gallery__nav-btn--next:hover {
    background: var(--color-brand-alt);
    color: var(--color-white);
  }
}
.gallery__nav-btn:focus-visible {
  outline: 0.125rem solid var(--color-brand);
  outline-offset: 0.1875rem;
}
.gallery__nav-btn--next:focus-visible {
  outline-color: var(--color-white);
  box-shadow: 0 0 0 0.125rem var(--color-brand);
}
.gallery__nav-svg {
  display: block;
  width: 50%;
  aspect-ratio: 1;
}
@media (max-width: 61.99875em) {
  .gallery__nav-svg {
    width: 2rem;
    height: 2rem;
  }
}
.gallery__swiper {
  overflow: hidden;
  width: 100%;
  margin-inline: 0;
  --swiper-wrapper-transition-timing-function: cubic-bezier(0.32, 0.72, 0.25, 1);
}
.gallery__swiper .swiper-slide {
  height: auto;
}

.gallery-card {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 0.5rem;
  border-radius: 1rem;
  background: var(--color-surface);
  height: 100%;
}
@media (max-width: 61.99875em) {
  .gallery-card {
    gap: 0.625rem;
    padding: 0.25rem;
  }
}
.gallery-card__mosaic {
  /* Макет: колонка 500px, gap 12; верхнее фото — большая доля, ряд превью — фикс. высота (316+12+172=500) */
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto minmax(0, 172fr);
  gap: 0.75rem;
  width: 100%;
  height: 31.25rem;
  min-height: 0;
}
@media (max-width: 61.99875em) {
  .gallery-card__mosaic {
    grid-template-columns: 1fr;
    grid-template-rows: 12.1875rem 5.375rem;
    gap: 0.25rem;
    height: auto;
    max-height: none;
  }
}
.gallery-card__link {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 1rem;
  background: var(--color-black-20);
  min-height: 0;
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
@media (max-width: 61.99875em) {
  .gallery-card__link {
    border-radius: 0.75rem;
  }
}
.gallery-card__link:focus-visible {
  outline: 0.125rem solid var(--color-brand);
  outline-offset: 0.125rem;
}
.gallery-card__link--hero {
  grid-column: 1/-1;
  grid-row: 1;
  aspect-ratio: 764/308;
}
@media (max-width: 61.99875em) {
  .gallery-card__link--hero {
    grid-column: 1;
    grid-row: 1;
    aspect-ratio: unset;
    height: 12.1875rem;
  }
}
.gallery-card__link img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.gallery-card__row {
  grid-column: 1/-1;
  grid-row: 2;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
  min-height: 0;
}
@media (max-width: 61.99875em) {
  .gallery-card__row {
    grid-column: 1;
    grid-row: 2;
    gap: 0.25rem;
    height: 5.375rem;
  }
}
.gallery-card__row .gallery-card__link {
  height: 100%;
  min-height: 0;
}
@media (max-width: 61.99875em) {
  .gallery-card__row .gallery-card__link {
    height: 5.375rem;
  }
}
.gallery-card__footer {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1rem;
  padding: 0 0.75rem 0.75rem;
}
@media (max-width: 61.99875em) {
  .gallery-card__footer {
    gap: 0.5rem;
    padding: 0 0.5rem 0.5rem;
  }
}
.gallery-card__name {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.375rem;
  line-height: 1.5;
  color: var(--color-text-dark);
}
@media (max-width: 61.99875em) {
  .gallery-card__name {
    font-size: 1.375rem;
    color: var(--color-text-headline);
  }
}

.hero-wrapper {
  position: relative;
  z-index: 1;
}
.hero-wrapper__pattern {
  pointer-events: none;
  z-index: 1;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 100%;
  background-image: url("../img/hero-bg-mobile.webp");
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: 100% auto;
}
@media (min-width: calc(61.99875em + 0.01em)) {
  .hero-wrapper__pattern {
    background-image: url("../img/hero-bg.svg");
    background-size: cover;
  }
}

.hero-home {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-top: calc(var(--headerHeight) + 4.0625rem);
  position: relative;
  background: var(--gradient-hero);
  padding-bottom: 3.75rem;
  overflow: hidden;
}
@media (max-width: 61.99875em) {
  .hero-home {
    padding-top: calc(var(--headerHeight) + 1rem);
    padding-bottom: 1.25rem;
  }
}
.hero-home > section {
  position: relative;
  z-index: 1;
}
.hero-home__main {
  flex: 1 0 auto;
  width: 100%;
}

.hero {
  position: relative;
  overflow: hidden;
}
.hero__blobs {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}
@media (max-width: 61.99875em) {
  .hero__blobs {
    display: none;
  }
}
.hero__blob {
  position: absolute;
  display: block;
  border-radius: 50%;
}
.hero__blob--sm {
  left: clamp(2.5rem, 12.6vw, 15.1875rem);
  top: clamp(13.75rem, 34vh, 37.1875rem);
  width: 14.75rem;
  height: 13.8125rem;
  background: var(--color-accent-mint);
  opacity: 0.35;
  filter: blur(8.75rem);
  transform: translateZ(0);
}
.hero__blob--lg {
  left: clamp(12.5rem, 62.3vw, 74.75rem);
  top: clamp(11.25rem, 24vh, 26.875rem);
  width: clamp(17.5rem, 31vw, 37.25rem);
  height: clamp(12.5rem, 21.6vh, 25.9375rem);
  background: var(--color-accent-mint);
  opacity: 0.35;
  filter: blur(8.75rem);
  transform: translateZ(0);
}
.hero__inner {
  position: relative;
  z-index: 1;
}
.hero__grid {
  display: grid;
  grid-template-columns: 1fr 38.4375rem;
  align-items: center;
  -moz-column-gap: 3.4375rem;
       column-gap: 3.4375rem;
}
@media (max-width: 61.99875em) {
  .hero__grid {
    max-width: none;
    grid-template-columns: 1fr;
    -moz-column-gap: 0;
         column-gap: 0;
  }
  .hero__grid .hero__collage {
    order: -1;
    margin-bottom: 0.75rem;
  }
}
.hero__content {
  display: flex;
  flex-direction: column;
}
.hero__title {
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0.01em;
  color: var(--color-white);
}
@supports (font-size: clamp( 2rem , 1.475rem  +  2.625vw , 4.625rem )) {
  .hero__title {
    font-size: clamp( 2rem , 1.475rem  +  2.625vw , 4.625rem );
  }
}
@supports not (font-size: clamp( 2rem , 1.475rem  +  2.625vw , 4.625rem )) {
  .hero__title {
    font-size: calc(2rem + 2.625 * (100vw - 20rem) / 100);
  }
}
@media (max-width: 47.99875em) {
  .hero__title {
    font-size: 2rem;
  }
}
.hero__lead {
  margin-top: 1rem;
  max-width: 55.125rem;
  line-height: 1.5;
  color: var(--color-white);
}
@supports (font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem )) {
  .hero__lead {
    font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem );
  }
}
@supports not (font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem )) {
  .hero__lead {
    font-size: calc(1rem + 0.5 * (100vw - 20rem) / 83.75);
  }
}
@media (max-width: 47.99875em) {
  .hero__lead {
    font-size: 1rem;
  }
}
.hero__btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  align-self: flex-start;
}
@supports (margin-top: clamp( 1.5625rem , 1.338619403rem  +  1.1194029851vw , 2.5rem )) {
  .hero__btn {
    margin-top: clamp( 1.5625rem , 1.338619403rem  +  1.1194029851vw , 2.5rem );
  }
}
@supports not (margin-top: clamp( 1.5625rem , 1.338619403rem  +  1.1194029851vw , 2.5rem )) {
  .hero__btn {
    margin-top: calc(1.5625rem + 0.9375 * (100vw - 20rem) / 83.75);
  }
}
.hero__btn {
  padding: 1.25rem 2.5rem 1.25rem;
  min-height: 4.5625rem;
  font-family: var(--font-heading);
  font-weight: 600;
  font-style: normal;
  font-synthesis: none;
  line-height: 1.2;
  font-size: 1.5rem;
  color: var(--color-brand-dark);
  background-color: var(--color-surface);
  border-radius: 1.25rem;
  text-decoration: none;
  transition: opacity 0.2s ease, transform 0.2s ease;
}
@media (max-width: 47.99875em) {
  .hero__btn {
    display: flex;
    width: 100%;
  }
}
.hero__btn:hover {
  opacity: 0.93;
}
.hero__btn:active {
  transform: translateY(0.125rem);
}
.hero__collage {
  position: relative;
  justify-self: start;
  margin-right: -2.1875rem;
  width: 100%;
  aspect-ratio: 1300/1445;
}
@media (max-width: 61.99875em) {
  .hero__collage {
    max-width: min(18.75rem, 78vw);
    max-height: min(18.75rem, 38svh);
    width: auto;
    margin-inline: auto;
  }
}
.hero__collage-image {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center bottom;
     object-position: center bottom;
}

.news-events {
  background: var(--color-surface);
  padding: 3.75rem 0;
}
@media (max-width: 61.99875em) {
  .news-events {
    padding: 2rem 0;
  }
}
.news-events__inner {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}
@media (max-width: 61.99875em) {
  .news-events__inner {
    gap: 1.25rem;
  }
}
.news-events__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
}
@media (max-width: 75rem) {
  .news-events__head {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.75rem;
  }
}
.news-events__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--color-text-dark);
}
@supports (font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem )) {
  .news-events__title {
    font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem );
  }
}
@supports not (font-size: clamp( 1.5rem , 0.9626865672rem  +  2.6865671642vw , 3.75rem )) {
  .news-events__title {
    font-size: calc(1.5rem + 2.25 * (100vw - 20rem) / 83.75);
  }
}
@media (max-width: 47.99875em) {
  .news-events__title {
    font-size: 1.5rem;
  }
  .news-events__title br {
    display: none;
  }
}
.news-events__list {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  max-width: 100%;
}
@media (max-width: 61.99875em) {
  .news-events__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
}
@media (max-width: 47.99875em) {
  .news-events__list {
    grid-template-columns: 1fr;
  }
}

.news-card {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 1.5rem;
  padding: 2rem;
  max-width: 100%;
  overflow: hidden;
  border-radius: 2rem;
  background: var(--color-surface);
}
@media (max-width: 61.99875em) {
  .news-card {
    flex-direction: column;
    padding: 0.5rem;
  }
}
@media (max-width: 47.99875em) {
  .news-card {
    gap: 1rem;
  }
}
.news-card__cover {
  position: relative;
  flex-shrink: 0;
  width: clamp(16.25rem, 34vw, 34.0625rem);
  aspect-ratio: 545/352;
  overflow: hidden;
  border-radius: 1.5rem;
}
@media (max-width: 61.99875em) {
  .news-card__cover {
    width: 100%;
    aspect-ratio: 16/9;
  }
}
.news-card__cover img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1.5rem;
}
.news-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  gap: 1.5rem;
  min-width: 0;
}
@media (max-width: 61.99875em) {
  .news-card__body {
    gap: 1.25rem;
  }
}
@media (max-width: 47.99875em) {
  .news-card__body {
    gap: 1rem;
  }
}
.news-card__main {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  gap: 1rem;
}
@supports (gap: clamp( 0.5rem , 0.3805970149rem  +  0.5970149254vw , 1rem )) {
  .news-card__main {
    gap: clamp( 0.5rem , 0.3805970149rem  +  0.5970149254vw , 1rem );
  }
}
@supports not (gap: clamp( 0.5rem , 0.3805970149rem  +  0.5970149254vw , 1rem )) {
  .news-card__main {
    gap: calc(0.5rem + 0.5 * (100vw - 20rem) / 83.75);
  }
}
@media (max-width: 47.99875em) {
  .news-card__main {
    gap: 0.5rem;
  }
}
.news-card__tag {
  align-self: flex-start;
  padding: 0.25rem 0.75rem;
  border-radius: 1.875rem;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.2;
}
@media (max-width: 47.99875em) {
  .news-card__tag {
    padding: 0.125rem 0.5rem;
    font-size: 0.75rem;
  }
}
.news-card__tag--violet {
  background: var(--color-accent-violet-20);
  color: var(--color-accent-violet);
}
.news-card__tag--teal {
  background: var(--color-accent-blue-20);
  color: var(--color-accent-blue);
}
.news-card__tag--kg {
  border-radius: 2.5rem;
  background: var(--color-accent-teal-20);
  color: var(--color-accent-teal);
}
.news-card__title {
  margin: 0;
  font-family: var(--font-heading);
}
@supports (font-size: clamp( 1.25rem , 1.0111940299rem  +  1.1940298507vw , 2.25rem )) {
  .news-card__title {
    font-size: clamp( 1.25rem , 1.0111940299rem  +  1.1940298507vw , 2.25rem );
  }
}
@supports not (font-size: clamp( 1.25rem , 1.0111940299rem  +  1.1940298507vw , 2.25rem )) {
  .news-card__title {
    font-size: calc(1.25rem + 1 * (100vw - 20rem) / 83.75);
  }
}
.news-card__title {
  font-weight: 600;
  line-height: 1.2;
  text-transform: none;
  color: var(--color-text-dark);
}
@media (max-width: 47.99875em) {
  .news-card__title {
    font-size: 1.25rem;
  }
}
@media (max-width: 47.99875em) {
  .news-card__title br {
    display: none;
  }
}
.news-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.875rem;
}
@media (max-width: 47.99875em) {
  .news-card__meta {
    gap: 0.125rem 0.875rem;
  }
}
.news-card__meta span {
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-text-muted);
}
@media (max-width: 47.99875em) {
  .news-card__meta span {
    font-size: 0.875rem;
  }
}
.news-card__text {
  margin: 0;
  font-family: var(--font-family);
}
@supports (font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem )) {
  .news-card__text {
    font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem );
  }
}
@supports not (font-size: clamp( 1rem , 0.9701492537rem  +  0.1492537313vw , 1.125rem )) {
  .news-card__text {
    font-size: calc(1rem + 0.125 * (100vw - 20rem) / 83.75);
  }
}
.news-card__text {
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-text-body);
}
@media (max-width: 47.99875em) {
  .news-card__text {
    font-size: 1rem;
  }
}
.news-card__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  padding: 0.5rem 1.25rem 0.5rem 1.5rem;
  min-height: 2.625rem;
  border-radius: 0.75rem;
  background: var(--color-link-chip);
  font-family: var(--font-heading);
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  color: var(--color-brand);
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
@media (max-width: 47.99875em) {
  .news-card__link {
    align-self: stretch;
    justify-content: center;
  }
}
.news-card__link svg {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
@media (any-hover: hover) {
  .news-card__link:hover {
    background: var(--color-link-chip-hover);
  }
  .news-card__link:hover .news-card__link-icon {
    transform: translateX(0.125rem);
  }
  .news-card__link:hover path {
    stroke: var(--color-brand-hover);
  }
}
.news-card__link:focus-visible {
  outline: 0.125rem solid var(--color-brand);
  outline-offset: 0.1875rem;
}

.partners {
  position: relative;
  z-index: 1;
  padding: 5rem 0;
  background: var(--gradient-partners);
  overflow: hidden;
}
@media (max-width: 61.99875em) {
  .partners {
    padding: 2rem 0;
    overflow: hidden;
  }
}
@media (max-width: 47.99875em) {
  .partners {
    background: linear-gradient(90deg, #C8FBFB 0%, #FFF 48.08%, #C8FBFB 100%);
    padding: 1.5rem 0;
  }
}
.partners::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 11.875rem;
  transform: translateX(calc(-50% - 1.3125rem));
  width: 159.4375rem;
  height: 85rem;
  background: url("../img/partners-bg.svg") center bottom/contain no-repeat;
  pointer-events: none;
}
@media (max-width: 61.99875em) {
  .partners::before {
    display: none;
  }
}
.partners__sr-only {
  position: absolute;
  width: 0.0625rem;
  height: 0.0625rem;
  padding: 0;
  margin: -0.0625rem;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.partners__inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
}
@media (max-width: 61.99875em) {
  .partners__inner {
    gap: 1.5rem;
  }
}
.partners__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.25rem;
  width: 100%;
  max-width: 100%;
  text-align: center;
  align-self: center;
}
.partners__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--color-text-dark);
}
@supports (font-size: clamp( 1.75rem , 1.2723880597rem  +  2.3880597015vw , 3.75rem )) {
  .partners__title {
    font-size: clamp( 1.75rem , 1.2723880597rem  +  2.3880597015vw , 3.75rem );
  }
}
@supports not (font-size: clamp( 1.75rem , 1.2723880597rem  +  2.3880597015vw , 3.75rem )) {
  .partners__title {
    font-size: calc(1.75rem + 2 * (100vw - 20rem) / 83.75);
  }
}
@media (max-width: 47.99875em) {
  .partners__title {
    font-size: 1.5rem;
  }
}
.partners__lead {
  margin: 0;
  font-family: var(--font-family);
}
@supports (font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem )) {
  .partners__lead {
    font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem );
  }
}
@supports not (font-size: clamp( 1rem , 0.8805970149rem  +  0.5970149254vw , 1.5rem )) {
  .partners__lead {
    font-size: calc(1rem + 0.5 * (100vw - 20rem) / 83.75);
  }
}
.partners__lead {
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-text-body);
  max-width: 45rem;
}
@media (max-width: 47.99875em) {
  .partners__lead {
    font-size: 1rem;
  }
}
.partners {
  /* полосы на всю ширину вьюпорта */
}
.partners__marquee-shell {
  align-self: stretch;
  width: 100vw;
  max-width: 100vw;
  margin-inline: calc(50% - 50vw);
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  overflow: visible;
}
@media (max-width: 61.99875em) {
  .partners__marquee-shell {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    gap: 0;
  }
}
.partners__rail {
  position: relative;
  width: 100%;
  height: 8.125rem;
  flex-shrink: 0;
  overflow: hidden;
}
@media (max-width: 61.99875em) {
  .partners__rail {
    height: auto;
    min-height: 0;
    overflow: visible;
  }
}
@media (any-hover: hover) {
  .partners__rail:hover .partners__rail-track {
    animation-play-state: paused;
  }
}
.partners__rail--rtl {
  padding-left: 8.75rem;
}
@media (max-width: 61.99875em) {
  .partners__rail--rtl {
    display: none;
    padding-left: 0;
  }
}
.partners {
  /* Равномерный шаг между всеми карточками, включая стык двух групп. */
}
.partners__rail-track {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  gap: 0;
  will-change: transform;
}
.partners__rail-group {
  display: flex;
  gap: 1.5rem;
  flex-shrink: 0;
  padding-right: 1.5rem;
}
@media (max-width: 61.99875em) {
  .partners__rail-group {
    padding-right: 0;
  }
}
.partners__rail--ltr .partners__rail-track {
  animation: partners-rail-left 52s linear infinite;
}
.partners__rail--rtl .partners__rail-track {
  animation: partners-rail-right 56s linear infinite;
}
.partners {
  /* Figma 207:4139 — wrap-grid 2×170×100, gap 12px */
}
@media (max-width: 61.99875em) {
  .partners .partners__rail--ltr .partners__rail-track {
    animation: none;
    transform: none;
    display: block;
    width: 100%;
    max-width: 100%;
    will-change: auto;
  }
  .partners .partners__rail--ltr .partners__rail-group:not(.partners__rail-group--dup) {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
    width: 100%;
  }
  .partners .partners__rail-group--dup,
  .partners .partners__slide--clone {
    display: none !important;
  }
}
.partners__slide {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 16.25rem;
  height: 8.125rem;
  padding: 0.75rem 1rem;
  border-radius: 1.5rem;
  background: var(--color-surface);
  color: inherit;
  text-decoration: none;
  isolation: isolate;
  overflow: hidden;
}
@media (max-width: 61.99875em) {
  .partners__slide {
    width: 100%;
    min-width: 0;
    height: 6.25rem;
    padding: 0.9375rem;
    align-items: center;
    justify-content: center;
  }
}
.partners__slide img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 0;
}
@media (max-width: 61.99875em) {
  .partners__slide img {
    max-width: 4.375rem;
    max-height: 4.375rem;
  }
}
.partners__slide::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 1.5rem;
  border: 0.375rem solid transparent;
  pointer-events: none;
  z-index: 1;
  transition: border-color 0.2s ease;
}
@media (any-hover: hover) {
  .partners__slide:hover::after {
    border-color: var(--color-accent-cyan);
  }
}
.partners__slide:focus-visible {
  outline: 0.125rem solid var(--color-brand);
  outline-offset: 0.1875rem;
}
.partners__slide:focus-visible::after {
  border-color: var(--color-accent-cyan);
}
.partners a.partners__slide {
  cursor: pointer;
}
.partners {
  /* дубликаты ряда — те же ссылки и поведение, что и в первом проходе */
}
.partners__slide--mirror {
  cursor: pointer;
}
.partners {
  /* МРОМ «Надежда» / ДУМ Москвы: в PNG только знак без белой таблетки из макета */
}
.partners__slide--logo-box {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-surface);
  overflow: hidden;
}
.partners__footer {
  display: flex;
  justify-content: center;
  width: 100%;
}
.partners__cta {
  flex-shrink: 0;
}
@media (max-width: 61.99875em) {
  .partners__cta {
    align-self: stretch;
    width: 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .partners .partners__rail-group--dup {
    display: none;
  }
  .partners .partners__marquee-shell {
    align-items: center;
    padding-inline: 1rem;
  }
  .partners {
    /* На планшетах/мобиле сетка задаётся отдельно — не перетирать flex-direction: column у трека */
  }
}
@media (prefers-reduced-motion: reduce) and (min-width: calc(61.99875em + 0.02em)) {
  .partners .partners__rail-track {
    animation: none;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    row-gap: 1rem;
  }
  .partners .partners__rail-group {
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    padding-inline-end: 0;
  }
}

@keyframes partners-rail-left {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(-50%, 0, 0);
  }
}
@keyframes partners-rail-right {
  0% {
    transform: translate3d(-50%, 0, 0);
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}
.video-podcasts {
  background: var(--color-bg-video);
  position: relative;
  overflow: hidden;
}
.video-podcasts::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  background: url("../img/video-bg-mobile.webp") center top/cover no-repeat;
  pointer-events: none;
}
@media (min-width: calc(61.99875em + 0.01em)) {
  .video-podcasts::before {
    top: auto;
    bottom: 3.5625rem;
    transform: translateX(calc(-50% + 2.5rem));
    width: 166.1875rem;
    height: 94.625rem;
    background: url("../img/video-bg.svg") center center/contain no-repeat;
  }
}
.video-podcasts {
  padding-block: 3.75rem;
}
@media (max-width: 61.99875em) {
  .video-podcasts {
    padding-block: 2rem;
  }
}
.video-podcasts__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-areas: "title" "swiper" "nav";
  gap: 1.5rem;
  align-items: stretch;
}
@media (min-width: calc(61.99875em + 0.02em)) and (max-width: 75rem) {
  .video-podcasts__inner {
    grid-template-areas: "title" "nav" "swiper";
    gap: 1.5rem;
  }
}
@media (min-width: 61.99875em) {
  .video-podcasts__inner {
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    grid-template-areas: "title nav" "swiper swiper";
    gap: 3rem;
    align-items: center;
  }
}
.video-podcasts__head {
  grid-area: title;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
  min-width: 0;
}
.video-podcasts__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  color: var(--color-text-dark);
  text-align: left;
}
@supports (font-size: clamp( 1.75rem , 1.2723880597rem  +  2.3880597015vw , 3.75rem )) {
  .video-podcasts__title {
    font-size: clamp( 1.75rem , 1.2723880597rem  +  2.3880597015vw , 3.75rem );
  }
}
@supports not (font-size: clamp( 1.75rem , 1.2723880597rem  +  2.3880597015vw , 3.75rem )) {
  .video-podcasts__title {
    font-size: calc(1.75rem + 2 * (100vw - 20rem) / 83.75);
  }
}
@media (max-width: 61.99875em) {
  .video-podcasts__title {
    font-size: 1.5rem;
    line-height: 1.2;
  }
}
@media (min-width: calc(61.99875em + 0.02em)) and (max-width: 75rem) {
  .video-podcasts__title {
    font-size: 1.5rem;
  }
}
.video-podcasts__nav {
  grid-area: nav;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
@media (min-width: 75.0625rem) {
  .video-podcasts__nav {
    justify-content: flex-end;
    gap: 1rem;
  }
}
.video-podcasts__nav-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  aspect-ratio: 1;
  padding: 0;
  margin: 0;
  border: none;
  border-radius: 1.9375rem;
  cursor: pointer;
  flex-shrink: 0;
  transition: background 0.2s ease, color 0.2s ease;
}
@media (max-width: 61.99875em) {
  .video-podcasts__nav-btn {
    width: 3.875rem;
  }
}
.video-podcasts__nav-btn--prev {
  background: var(--color-surface);
  color: var(--color-brand);
}
.video-podcasts__nav-btn--next {
  background: var(--color-brand);
  color: var(--color-white);
}
@media (any-hover: hover) {
  .video-podcasts__nav-btn--prev:hover {
    background: var(--color-surface-muted);
  }
  .video-podcasts__nav-btn--next:hover {
    background: var(--color-brand-alt);
    color: var(--color-white);
  }
}
.video-podcasts__nav-btn:focus-visible {
  outline: 0.125rem solid var(--color-brand);
  outline-offset: 0.1875rem;
}
.video-podcasts__nav-btn--next:focus-visible {
  outline-color: var(--color-white);
  box-shadow: 0 0 0 0.125rem var(--color-brand);
}
.video-podcasts__nav-svg {
  display: block;
  width: 50%;
  aspect-ratio: 1;
}
.video-podcasts__swiper {
  grid-area: swiper;
  overflow: hidden;
  width: 100%;
  --swiper-wrapper-transition-timing-function: cubic-bezier(0.32, 0.72, 0.25, 1);
}
.video-podcasts__swiper .swiper-slide {
  height: auto;
  outline: none;
}
.video-podcasts__swiper .swiper-slide:focus-visible {
  outline: none;
}

.video-card {
  height: 100%;
}
.video-card__link {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 0.5rem;
  border-radius: 1rem;
  background: var(--color-surface);
  text-decoration: none;
  color: inherit;
  transition: box-shadow 0.25s ease;
  outline: none;
  -webkit-tap-highlight-color: transparent;
}
.video-card__link:focus, .video-card__link:focus-visible {
  outline: none;
}
@media (any-hover: hover) {
  .video-card__link:hover {
    box-shadow: 0 0.75rem 2.5rem var(--color-card-shadow-soft);
  }
  .video-card__link:hover .video-card__play {
    transform: scale(1.05);
    background: var(--color-white-28);
    border-color: var(--color-white-32);
  }
  .video-card__link:hover .video-card__media img {
    transform: scale(1.03);
  }
}
.video-card__media {
  position: relative;
  height: 13.75rem;
  border-radius: 0.5rem;
  overflow: hidden;
  background: var(--color-black-20);
}
.video-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.35s ease;
}
.video-card__play {
  position: absolute;
  left: 50%;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.4375rem;
  height: 3.4375rem;
  margin: -1.71875rem 0 0 -1.71875rem;
  border-radius: 50%;
  border: 0.0625rem solid var(--color-white-20);
  background: var(--color-white-20);
  backdrop-filter: blur(0.4375rem);
  -webkit-backdrop-filter: blur(0.4375rem);
  transition: transform 0.25s ease, background 0.25s ease, border-color 0.25s ease;
  isolation: isolate;
  pointer-events: none;
}
@media (max-width: 61.99875em) {
  .video-card__play {
    background: rgba(255, 255, 255, 0.35);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}
.video-card__play-icon {
  display: block;
  width: 3.4375rem;
  height: 3.4375rem;
  flex-shrink: 0;
}
.video-card__body {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 0.75rem 0.5rem;
}
.video-card__body:empty {
  display: none;
  padding: 0;
}
.video-card__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.35;
  color: var(--color-text-dark);
}
@media (max-width: 61.99875em) {
  .video-card__title {
    font-size: 1.5rem;
    line-height: 1.5;
  }
}
@media (max-width: 47.99875em) {
  .video-card__title {
    font-size: 1.25rem;
  }
}
.video-card__duration {
  align-self: flex-start;
  padding: 0.25rem 0.75rem;
  border-radius: 1.875rem;
  font-family: var(--font-family);
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.2;
}
@media (max-width: 61.99875em) {
  .video-card__duration {
    font-size: 0.875rem;
    line-height: 1.2;
  }
}
.video-card__duration--cyan {
  background: var(--color-accent-blue-20);
  color: var(--color-accent-blue);
}
.video-card__duration--teal {
  background: var(--color-accent-teal-20);
  color: var(--color-accent-blue);
}
@media (max-width: 61.99875em) {
  .video-card__duration--teal {
    color: var(--color-accent-teal);
  }
}
.video-card__duration--violet {
  background: var(--color-accent-violet-20);
  color: var(--color-accent-violet);
}

body.is-confirm-modal-open {
  overflow: hidden;
}

.lk-confirm-modal__dialog {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  width: 100%;
  max-width: 30rem;
  padding: 2.25rem 2.5rem;
  border-radius: 2rem;
  background: #fff;
}
.lk-confirm-modal__overlay {
  cursor: pointer;
}
.lk-confirm-modal__close {
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.375rem;
  border: 0;
  border-radius: 1.5rem;
  background: transparent;
  color: #a1a1aa;
  cursor: pointer;
  line-height: 0;
}
.lk-confirm-modal__close-icon {
  width: 1.25rem;
  height: 1.25rem;
  filter: brightness(0) saturate(100%) invert(72%) sepia(5%) saturate(347%) hue-rotate(202deg) brightness(91%) contrast(88%);
}
.lk-confirm-modal__image {
  display: block;
  max-width: 6.625rem;
  max-height: 8.75rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.lk-confirm-modal__image--delete {
  max-width: 7.3125rem;
}
.lk-confirm-modal__image--square {
  max-width: 9.375rem;
  max-height: 9.375rem;
}
.lk-confirm-modal__content {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  gap: 1rem;
  text-align: center;
}
.lk-confirm-modal__title {
  margin: 0;
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 2rem;
  color: #253349;
}
.lk-confirm-modal__text {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #848497;
}
.lk-confirm-modal__actions {
  display: flex;
  flex-direction: column;
  align-self: stretch;
  gap: 0.5rem;
}
.lk-confirm-modal__actions .btn.btn--primary,
.lk-confirm-modal__actions .btn.btn--soft {
  align-self: stretch;
  width: 100%;
  padding: 1rem 1.5rem;
  min-height: 3.4375rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
}

@media (max-width: 74.99875em) {
  body.is-confirm-modal-open .lk-confirm-modal:not([hidden]) {
    position: fixed;
    inset: 0;
    z-index: 60;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: #fff;
  }
  body.is-confirm-modal-open .lk-confirm-modal__overlay {
    display: none;
  }
  body.is-confirm-modal-open .lk-confirm-modal__dialog {
    justify-content: center;
    width: 100%;
    max-width: 22.375rem;
    padding: 0;
    border-radius: 0;
    background: transparent;
  }
  body.is-confirm-modal-open .lk-confirm-modal__close {
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 61;
  }
}
.lk-fields {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.lk-field {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.lk-field__label {
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #8c8c93;
}

.lk-field__control {
  width: 100%;
  min-height: 3rem;
  padding: 0.875rem 1rem;
  border: 0.0625rem solid #e6e6e6;
  border-radius: 1rem;
  background: #fff;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #1b2638;
  outline: none;
}
.lk-field__control:focus-visible {
  border-color: var(--color-outline);
}
.lk-field__control[readonly]:focus-visible {
  border-color: #e6e6e6;
  outline: none;
}

.lk-field--disabled .lk-field__control {
  opacity: 0.6;
}

.lk-field--date .lk-field__input-wrap {
  position: relative;
  display: block;
}

.lk-field__control--suffix {
  padding-right: 3rem;
}

.lk-field__date-icon {
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1.5rem;
  height: 1.5rem;
  color: var(--color-text-soft, #767e8e);
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  z-index: 2;
}

.lk-toggle {
  display: inline-flex;
  flex-shrink: 0;
  cursor: pointer;
}

.lk-toggle__input {
  position: absolute;
  width: 0.0625rem;
  height: 0.0625rem;
  padding: 0;
  margin: -0.0625rem;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.lk-toggle__input:focus-visible + .lk-toggle__track {
  outline: 0.125rem solid var(--color-outline, #30b1ab);
  outline-offset: 0.125rem;
}
.lk-toggle__input:checked + .lk-toggle__track {
  background: #30b1ab;
}
.lk-toggle__input:checked + .lk-toggle__track .lk-toggle__thumb {
  transform: translateX(1.75rem);
}

.lk-toggle__track {
  position: relative;
  display: block;
  width: 3.75rem;
  height: 2rem;
  padding: 0.1875rem;
  border-radius: 1.875rem;
  background: #c4c4c4;
  transition: background-color 0.2s ease;
}

.lk-toggle__thumb {
  display: block;
  width: 1.625rem;
  height: 1.625rem;
  border-radius: 50%;
  background: #fff;
  transform: translateX(0);
  transition: transform 0.2s ease;
}

body.is-upload-modal-open {
  overflow: hidden;
}

.lk-upload-modal__dialog {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  max-width: 30.0625rem;
  padding: 0 0 2rem;
  border-radius: 1.5rem;
  background: #fff;
  overflow: hidden;
}
.lk-upload-modal__overlay {
  cursor: pointer;
}
.lk-upload-modal__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  border-bottom: 0.0625rem solid #e6e6fc;
}
.lk-upload-modal__head-main {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  min-width: 0;
}
.lk-upload-modal__head-icon-wrap {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  padding: 0.75rem;
  border: 0.0625rem solid #e6e6fc;
  border-radius: 4.375rem;
  color: #4d4d65;
}
.lk-upload-modal__head-icon {
  width: 1rem;
  height: 1rem;
}
.lk-upload-modal__head-texts {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  min-width: 0;
}
.lk-upload-modal__title {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #4d4d65;
}
.lk-upload-modal__subtitle {
  margin: 0;
  font-family: var(--font-family);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 0.875rem;
  color: #9696b2;
}
.lk-upload-modal__close {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  padding: 0.75rem;
  border: 0;
  border-radius: 4.375rem;
  background: transparent;
  color: #a1a1aa;
  cursor: pointer;
  line-height: 0;
}
.lk-upload-modal__close-icon {
  width: 1rem;
  height: 1rem;
  filter: brightness(0) saturate(100%) invert(72%) sepia(5%) saturate(347%) hue-rotate(202deg) brightness(91%) contrast(88%);
}
.lk-upload-modal__dropzone {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  align-self: center;
  width: calc(100% - 4rem);
  margin-top: 2rem;
  padding: 1.5rem 1.625rem;
  border: 0.0625rem dashed #e4e4e7;
  border-radius: 1.25rem;
  text-align: center;
  transition: border-color 0.2s, background 0.2s;
}
.lk-upload-modal__dropzone.is-dragover {
  border-color: #47b8b2;
  background: rgba(71, 184, 178, 0.05);
}
.lk-upload-modal__drop-icon {
  width: 2rem;
  height: 2rem;
  color: #4d4d65;
}
.lk-upload-modal__drop-texts {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  width: 100%;
}
.lk-upload-modal__drop-text {
  margin: 0;
  font-family: var(--font-family);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25rem;
  color: #4d4d65;
  white-space: pre-line;
}
.lk-upload-modal__drop-hint {
  margin: 0;
  font-family: var(--font-family);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 0.875rem;
  color: #9696b2;
}
.lk-upload-modal__pick-btn.btn--soft {
  min-height: 2.5rem;
  padding: 0.5rem 0.75rem;
  border-radius: 1rem;
  background: rgba(71, 184, 178, 0.1);
  font-family: var(--font-heading);
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.5;
  color: #006d6d;
}
.lk-upload-modal__input {
  display: none;
}

@media (max-width: 74.99875em) {
  body.is-upload-modal-open .lk-upload-modal:not([hidden]) {
    padding: 1rem;
  }
}
.modal {
  position: fixed;
  inset: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}
.modal[hidden]:not(.is-open):not(.is-closing) {
  display: none;
}
.modal__overlay {
  opacity: 0;
  transition: opacity 0.22s ease;
}
.modal__dialog {
  opacity: 0;
  transform: translateY(0.75rem) scale(0.98);
  transition: opacity 0.22s ease, transform 0.22s cubic-bezier(0.22, 1, 0.36, 1);
}
.modal.is-open .modal__overlay {
  opacity: 1;
}
.modal.is-open .modal__dialog {
  opacity: 1;
  transform: translateY(0) scale(1);
}
.modal.is-closing .modal__overlay {
  opacity: 0;
  transition: opacity 0.22s ease;
}
.modal.is-closing .modal__dialog {
  opacity: 0;
  transform: translateY(0.75rem) scale(0.98);
  transition: opacity 0.22s ease, transform 0.22s cubic-bezier(0.22, 1, 0.36, 1);
}
.modal__overlay {
  position: absolute;
  inset: 0;
  border: 0;
  padding: 0;
  background: rgba(0, 0, 0, 0.6);
  -webkit-backdrop-filter: blur(0.4375rem);
          backdrop-filter: blur(0.4375rem);
  cursor: default;
}
.modal__dialog {
  position: relative;
  z-index: 1;
  outline: none;
}

@media (prefers-reduced-motion: reduce) {
  .modal__overlay,
  .modal__dialog,
  .filter-dropdown__backdrop,
  .filter-dropdown__panel,
  .lk-notifications {
    transition: none !important;
  }
}
.page-heading {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
  color: var(--color-text-dark);
}
@supports (font-size: clamp( 2rem , 1.5820895522rem  +  2.0895522388vw , 3.75rem )) {
  .page-heading {
    font-size: clamp( 2rem , 1.5820895522rem  +  2.0895522388vw , 3.75rem );
  }
}
@supports not (font-size: clamp( 2rem , 1.5820895522rem  +  2.0895522388vw , 3.75rem )) {
  .page-heading {
    font-size: calc(2rem + 1.75 * (100vw - 20rem) / 83.75);
  }
}

.page-header-offset {
  padding-top: calc(var(--headerHeight) + 3.75rem);
}
@media (max-width: 61.99875em) {
  .page-header-offset {
    padding-top: calc(var(--headerHeight) + 1.5rem);
  }
}

body.page-inner {
  position: relative;
  background: var(--color-bg-gallery);
}
body.page-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("../img/gallery-bg-mobile.webp");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 0;
  pointer-events: none;
  opacity: 0.35;
}
@media (min-width: calc(61.99875em + 0.01em)) {
  body.page-inner::before {
    background-image: url("../img/gallery-bg.svg");
    background-size: 147.75rem 148.0625rem;
    background-repeat: repeat;
    background-position: 50%;
    opacity: 0.25;
  }
}

.phone-field {
  position: relative;
  width: 100%;
}
.phone-field__control {
  position: relative;
  display: flex;
  align-items: stretch;
  width: 100%;
}
.phone-field__country {
  position: absolute;
  left: 0.25rem;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  min-height: 2.5rem;
  padding: 0 0.5rem;
  border: 0;
  border-radius: 0.75rem;
  background: transparent;
  color: #1b2638;
  cursor: pointer;
}
.phone-field__flag {
  display: inline-flex;
  align-items: center;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.02em;
  color: #1b2638;
}
.phone-field__chevron {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
  color: #8c8c93;
  transition: transform 0.2s ease;
}
.phone-field__chevron svg {
  display: block;
  width: 1rem;
  height: 1rem;
}
.phone-field__input.registration__input, .phone-field__input.footer__input, .phone-field__input.lk-field__control {
  padding-left: 4rem;
}
.phone-field__list {
  position: absolute;
  left: 0;
  top: calc(100% + 0.375rem);
  z-index: 20;
  display: none;
  flex-direction: column;
  gap: 0.125rem;
  width: min(100%, 20rem);
  max-height: 16.25rem;
  margin: 0;
  padding: 0.5rem;
  overflow: auto;
  list-style: none;
  border: 0.0625rem solid #e6e6e6;
  border-radius: 1rem;
  background: #fff;
  box-shadow: 0 0.5rem 1.5rem rgba(27, 38, 56, 0.12);
}
.phone-field__option {
  display: grid;
  grid-template-columns: 1.5rem minmax(0, 1fr) auto;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 0.75rem;
  border-radius: 0.75rem;
  cursor: pointer;
  font-family: var(--font-family);
  font-size: 0.875rem;
  line-height: 1.3;
  color: #1b2638;
}
.phone-field__option:hover, .phone-field__option:focus-visible {
  background: #f7fcfc;
  outline: none;
}
.phone-field__option--active {
  background: #e8f6f5;
}
.phone-field__option-flag {
  display: inline-flex;
  align-items: center;
  font-family: var(--font-family);
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.02em;
  color: #1b2638;
}
.phone-field__option-name {
  min-width: 0;
  line-height: 1.3;
}
.phone-field__option-dial {
  display: inline-flex;
  align-items: center;
  font-size: 0.875rem;
  font-weight: 400;
  color: #8c8c93;
  line-height: 1;
  white-space: nowrap;
}
.phone-field--open .phone-field__list {
  display: flex;
}
.phone-field--open .phone-field__chevron {
  transform: rotate(180deg);
}

/* Flatpickr — акценты через --flatpickr-* в :root (head.html) */
.flatpickr-calendar {
  z-index: 1200;
  background: var(--flatpickr-surface);
  border-radius: 1rem;
  box-shadow: var(--flatpickr-popup-shadow);
  font-family: var(--font-family);
  color: var(--flatpickr-text);
}
.flatpickr-calendar:focus-visible {
  outline: 0.125rem solid var(--flatpickr-accent-strong);
  outline-offset: 0.125rem;
}
.flatpickr-calendar.arrowTop::before {
  border-bottom-color: var(--flatpickr-border);
}
.flatpickr-calendar.arrowTop::after {
  border-bottom-color: var(--flatpickr-surface);
}
.flatpickr-calendar.arrowBottom::before {
  border-top-color: var(--flatpickr-border);
}
.flatpickr-calendar.arrowBottom::after {
  border-top-color: var(--flatpickr-surface);
}

.flatpickr-months .flatpickr-month {
  background: var(--flatpickr-surface);
  color: var(--flatpickr-text);
  fill: var(--flatpickr-text);
  border-radius: 1rem 1rem 0 0;
}

.flatpickr-months .flatpickr-prev-month,
.flatpickr-months .flatpickr-next-month {
  color: var(--flatpickr-accent);
  fill: var(--flatpickr-accent);
}
.flatpickr-months .flatpickr-prev-month:hover,
.flatpickr-months .flatpickr-next-month:hover {
  color: var(--flatpickr-accent-hover);
}
.flatpickr-months .flatpickr-prev-month:hover svg, .flatpickr-months .flatpickr-prev-month:hover svg path,
.flatpickr-months .flatpickr-next-month:hover svg,
.flatpickr-months .flatpickr-next-month:hover svg path {
  fill: var(--flatpickr-accent-hover);
}
.flatpickr-months .flatpickr-prev-month:focus-visible,
.flatpickr-months .flatpickr-next-month:focus-visible {
  outline: 0.125rem solid var(--flatpickr-accent-strong);
  outline-offset: 0.125rem;
  border-radius: 0.5rem;
}

.flatpickr-current-month {
  font-family: var(--font-heading);
  font-weight: 600;
  color: var(--flatpickr-text);
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
  background: transparent;
  border: 0.0625rem solid transparent;
  border-radius: 0.5rem;
  color: var(--flatpickr-text);
  font-family: inherit;
}
.flatpickr-current-month .flatpickr-monthDropdown-months:hover {
  background: var(--flatpickr-hover-surface);
}
.flatpickr-current-month .flatpickr-monthDropdown-months:focus {
  border-color: var(--flatpickr-accent-strong);
  box-shadow: 0 0 0 0.125rem var(--flatpickr-mint-soft);
}

.flatpickr-current-month input.cur-year {
  color: var(--flatpickr-text);
  font-family: inherit;
}
.flatpickr-current-month input.cur-year:focus {
  border-color: var(--flatpickr-accent-strong);
}

span.flatpickr-weekday {
  color: var(--flatpickr-text-soft);
  font-weight: 500;
}

.flatpickr-days {
  border-top: 0.0625rem solid var(--flatpickr-border);
}

.flatpickr-day {
  display: inline-flex;
  align-items: center;
  color: var(--flatpickr-text);
  border-radius: 0.75rem;
}
.flatpickr-day:hover, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day:focus {
  background: var(--flatpickr-hover-surface);
  border-color: var(--flatpickr-mint-soft);
  color: var(--flatpickr-text);
}
.flatpickr-day.today {
  border-color: var(--flatpickr-today-ring);
  color: var(--flatpickr-text);
}
.flatpickr-day.today:hover, .flatpickr-day.today:focus {
  background: var(--flatpickr-mint-soft);
  border-color: var(--flatpickr-accent-strong);
  color: var(--flatpickr-text);
}
.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {
  background: var(--flatpickr-selection-bg);
  border-color: transparent;
  color: var(--color-white);
  box-shadow: none;
}
.flatpickr-day.inRange {
  box-shadow: -0.3125rem 0 0 var(--flatpickr-hover-surface), 0.3125rem 0 0 var(--flatpickr-hover-surface);
  background: var(--flatpickr-mint-soft);
  border-color: transparent;
  color: var(--flatpickr-text);
}
.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {
  box-shadow: -0.625rem 0 0 var(--flatpickr-selection-solid);
}
.flatpickr-day.week.selected {
  box-shadow: -0.3125rem 0 0 var(--flatpickr-selection-solid), 0.3125rem 0 0 var(--flatpickr-selection-solid);
}
.flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover, .flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay, .flatpickr-day.notAllowed {
  color: var(--flatpickr-text-soft);
  opacity: 0.45;
}
.flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover {
  opacity: 0.35;
}

.flatpickr-weekwrapper .flatpickr-weeks {
  box-shadow: 0.0625rem 0 0 var(--flatpickr-border);
}

.flatpickr-calendar .numInputWrapper span {
  border-color: var(--flatpickr-border);
}

.flatpickr-calendar .numInputWrapper span.arrowUp:after {
  border-bottom-color: var(--flatpickr-accent);
}

.flatpickr-calendar .numInputWrapper span.arrowDown:after {
  border-top-color: var(--flatpickr-accent);
}

.flatpickr-calendar .numInputWrapper:hover {
  background: var(--flatpickr-hover-surface);
}

.registration {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem 1rem;
  position: relative;
  overflow: hidden;
}
@media (max-width: 47.99875em) {
  .registration {
    padding: 0;
    align-items: flex-start;
  }
}
.registration__inner {
  display: flex;
  justify-content: center;
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 42.5rem;
}
@media (max-width: 61.99875em) {
  .registration__inner {
    max-width: 100%;
  }
}
.registration__form {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.5rem;
  width: 100%;
  max-width: 42.5rem;
  padding: 5rem;
  border-radius: 2.5rem;
  background: var(--color-surface);
}
@media (max-width: 61.99875em) {
  .registration__form {
    padding: 3rem 2.5rem;
    border-radius: 2rem;
    gap: 2rem;
  }
}
@media (max-width: 47.99875em) {
  .registration__form {
    padding: 1.5rem 1rem;
    border-radius: 0;
    gap: 1.5rem;
    height: 100%;
  }
}
.registration__back {
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
}
@media (min-width: 47.99875em) {
  .registration__back {
    position: absolute;
    top: 2rem;
    left: 2rem;
  }
}
@media (max-width: 61.99875em) and (min-width: 47.99875em) {
  .registration__back {
    top: 1.5rem;
    left: 1.5rem;
  }
}
@media (max-width: 47.99875em) {
  .registration__back {
    position: relative;
    margin-right: auto;
  }
}
.registration__step {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 2.5rem;
  width: 100%;
}
@media (max-width: 47.99875em) {
  .registration__step {
    gap: 2rem;
  }
}
.registration__step[hidden] {
  display: none !important;
}
.registration__view {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 2.5rem;
  width: 100%;
}
@media (max-width: 47.99875em) {
  .registration__view {
    gap: 2rem;
  }
}
.registration__view[hidden] {
  display: none !important;
}
.registration__view--recovery-new-password {
  gap: 2rem;
}
@media (max-width: 47.99875em) {
  .registration__view--recovery-new-password {
    gap: 1.5rem;
  }
}
.registration__step-fields {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 1.5rem;
  width: 100%;
}
@media (max-width: 47.99875em) {
  .registration__step-fields {
    gap: 1rem;
  }
}
.registration__step-fields--recovery-code {
  align-items: center;
  gap: 2.25rem;
  padding-top: 1.5rem;
}
@media (max-width: 47.99875em) {
  .registration__step-fields--recovery-code {
    gap: 1.75rem;
    padding-top: 1rem;
  }
}
.registration__step-fields--recovery-password {
  padding-top: 1.5rem;
}
@media (max-width: 47.99875em) {
  .registration__step-fields--recovery-password {
    padding-top: 1rem;
  }
}
.registration__step-fields--recovery-done {
  gap: 0.75rem;
  padding-top: 1.5rem;
}
@media (max-width: 47.99875em) {
  .registration__step-fields--recovery-done {
    padding-top: 1rem;
  }
}
.registration__pin-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 1.5rem;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  margin-inline: auto;
  box-sizing: border-box;
}
@media (max-width: 47.99875em) {
  .registration__pin-row {
    gap: 0.75rem;
  }
}
.registration__pin-slot {
  position: relative;
  box-sizing: border-box;
  flex: 0 0 3.375rem;
  width: 3.375rem;
  height: 3.375rem;
  min-width: 3.375rem;
  min-height: 3.375rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1.25rem;
}
@media (max-width: 29.99875em) {
  .registration__pin-slot {
    flex: 0 0 3rem;
    width: 3rem;
    height: 3rem;
    min-width: 3rem;
    min-height: 3rem;
    border-radius: 1rem;
  }
}
.registration__pin-slot::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0.5rem;
  width: 0.5rem;
  height: 0.5rem;
  transform: translateX(-50%);
  border-radius: 50%;
  background: var(--color-text-muted);
  pointer-events: none;
  z-index: 0;
  transition: opacity 0.12s ease;
}
.registration__pin-slot.is-filled::after {
  opacity: 0;
}
.registration__pin-cell {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: inherit;
  background: transparent;
  font-family: var(--font-heading);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 3.375rem;
  text-align: center;
  color: var(--color-text-headline);
  outline: none;
  -webkit-appearance: textfield;
     -moz-appearance: textfield;
          appearance: textfield;
}
@media (max-width: 29.99875em) {
  .registration__pin-cell {
    font-size: 1.5rem;
    line-height: 3rem;
  }
}
.registration__pin-cell::-webkit-outer-spin-button, .registration__pin-cell::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.registration__pin-slot:not(.is-filled) .registration__pin-cell {
  color: transparent;
  caret-color: var(--color-text-headline);
}
.registration__pin-cell:focus {
  color: var(--color-text-headline);
}
.registration__back-icon {
  display: block;
  width: 1.5rem;
  height: 1.5rem;
}
.registration__logo {
  display: inline-flex;
  height: 2.5rem;
}
@media (max-width: 47.99875em) {
  .registration__logo {
    height: 2.25rem;
  }
}
.registration__logo-img {
  max-width: 15rem;
  width: auto;
  max-height: 100%;
}
.registration__intro {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  text-align: center;
}
.registration__intro--recovery-done {
  gap: 0;
}
.registration__title {
  margin: 0;
  font-family: var(--font-heading);
  font-weight: 600;
}
@supports (font-size: clamp( 1.75rem , 1.6305970149rem  +  0.5970149254vw , 2.25rem )) {
  .registration__title {
    font-size: clamp( 1.75rem , 1.6305970149rem  +  0.5970149254vw , 2.25rem );
  }
}
@supports not (font-size: clamp( 1.75rem , 1.6305970149rem  +  0.5970149254vw , 2.25rem )) {
  .registration__title {
    font-size: calc(1.75rem + 0.5 * (100vw - 20rem) / 83.75);
  }
}
.registration__title {
  line-height: 1.1;
  color: var(--color-text-headline);
}
@media (max-width: 47.99875em) {
  .registration__title {
    font-size: 1.75rem;
  }
}
.registration__lead {
  margin: 0;
  font-size: 1.125rem;
  line-height: 1.4;
  color: var(--color-text-body);
}
@media (max-width: 47.99875em) {
  .registration__lead {
    font-size: 1rem;
    line-height: 1.45;
  }
}
.registration__row {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
  --registration-control-height: 3.25rem;
}
.registration__row--date, .registration__row--suffix {
  position: relative;
}
.registration__date-icon {
  position: absolute;
  right: 1.25rem;
  top: calc((var(--registration-control-height) - 1.5rem) / 2);
  width: 1.5rem;
  height: 1.5rem;
  color: var(--color-text-soft);
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  z-index: 2;
}
.registration__input--suffix {
  padding-right: 3.25rem;
}
.registration__suffix-btn {
  position: absolute;
  right: 0.875rem;
  top: calc((var(--registration-control-height) - 2.25rem) / 2);
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0.75rem;
  background: transparent;
  color: var(--color-text-soft);
  cursor: pointer;
}
.registration__suffix-btn[aria-pressed=true] .registration__eye-icon--masked {
  visibility: hidden;
}
.registration__suffix-btn[aria-pressed=true] .registration__eye-icon--shown {
  visibility: visible;
}
.registration__eye-svg {
  display: block;
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
}
.registration__eye-icon--shown {
  visibility: hidden;
}
.registration__input {
  display: block;
  width: 100%;
  height: 3.25rem;
  padding: 0.875rem 1rem;
  border: 0.0625rem solid #E6E6E6;
  border-radius: 1rem;
  background: var(--color-surface);
  font-family: var(--font-family);
  font-size: 1rem;
  line-height: 1.25rem;
  color: #1B2638;
  outline: none;
  transition: border-color 0.2s ease, opacity 0.2s ease;
}
.registration__input::-moz-placeholder {
  color: #8C8C93;
}
.registration__input::placeholder {
  color: #8C8C93;
}
.registration__input:focus, .registration__input:focus-visible {
  border-color: #02918E;
}
.registration__input[aria-invalid=true] {
  border-color: #E52E2E;
}
.registration__input:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.registration__row--invalid .registration__input:focus,
.registration__row--invalid .registration__input:focus-visible {
  border-color: #E52E2E;
}
.registration__error {
  margin: 0;
  font-family: var(--font-family);
  font-size: 0.875rem;
  line-height: 1.4;
  color: #E52E2E;
}
.registration__error[hidden] {
  display: none;
}
.registration__error--check {
  padding-left: 2.25rem;
}
.registration__form-alert {
  margin: 0 0 1rem;
  padding: 0.75rem 0.875rem;
  border: 0.0625rem solid rgba(229, 46, 46, 0.35);
  border-radius: 0.75rem;
  background: rgba(229, 46, 46, 0.08);
  color: #B42318;
  font-family: var(--font-family);
  font-size: 0.875rem;
  line-height: 1.4;
  text-align: center;
}
.registration__form-alert[hidden] {
  display: none;
}
.registration__errors {
  margin: 0;
  padding: 0.625rem 0.875rem;
  list-style: none;
  border: 0.0625rem solid rgba(229, 46, 46, 0.35);
  border-radius: 0.75rem;
  background: rgba(229, 46, 46, 0.08);
  color: #B42318;
  font-family: var(--font-family);
  font-size: 0.875rem;
  line-height: 1.4;
}
.registration__errors li + li {
  margin-top: 0.375rem;
}
.registration__errors[hidden] {
  display: none;
}
.registration__checks--invalid .registration__check-box {
  outline: 0.125rem solid #E52E2E;
  outline-offset: 0.125rem;
}
.registration__row--books {
  gap: 0.75rem;
}
.registration {
  /* Choices.js skin for registration region select */
}
.registration__select--enhanced {
  display: none !important;
}
.registration .choices {
  margin: 0;
  width: 100%;
  position: relative;
  z-index: 15;
}
.registration .choices[data-type*=select-one] .choices__inner {
  border: 0.0625rem solid #E6E6E6;
  border-radius: 1rem;
  background: var(--color-surface);
  font-family: var(--font-family);
  font-size: 1rem;
  line-height: 1.25rem;
  color: #1B2638;
  display: flex;
  align-items: center;
  padding: 0.875rem 1rem;
  min-height: 3.25rem;
  transition: border-color 0.2s ease;
}
.registration .choices.is-focused .choices__inner,
.registration .choices.is-open .choices__inner {
  border-color: #02918E;
}
.registration .choices.choices--invalid .choices__inner {
  border-color: #E52E2E;
}
.registration .choices.choices--invalid.is-focused .choices__inner,
.registration .choices.choices--invalid.is-open .choices__inner {
  border-color: #E52E2E;
}
.registration .choices__list--single {
  padding: 0 1.75rem 0 0;
  display: flex;
  align-items: center;
  height: 100%;
}
.registration .choices__list--single .choices__item {
  line-height: 1.25rem;
}
.registration .choices__placeholder {
  opacity: 1;
  color: var(--color-text-placeholder);
}
.registration .choices[data-type*=select-one]::after {
  content: "";
  right: 1.25rem;
  top: 50%;
  width: 1.5rem;
  height: 1.5rem;
  margin-top: 0;
  transform: translateY(-50%);
  border: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6.00049 8.99805L12.0005 14.998L18.0005 8.99805' stroke='%23767E8E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.5rem 1.5rem;
}
.registration .choices[data-type*=select-one].is-open::after {
  top: 50%;
  margin-top: 0;
  transform: translateY(-50%) rotate(180deg);
  border: 0;
}
.registration .choices.is-open {
  z-index: 40;
}
.registration .choices__list--dropdown {
  border: 0.0625rem solid var(--color-border-light);
  border-radius: 1rem;
  overflow: hidden;
  box-shadow: 0 0.5rem 1.5rem rgba(17, 26, 40, 0.1);
  z-index: 50;
}
.registration .choices__list--dropdown .choices__item {
  padding: 0.625rem 1.25rem;
  font-size: 1rem;
}
.registration .choices__list--dropdown .choices__item--selectable.is-highlighted {
  background: var(--color-surface-muted);
}
.registration__select {
  padding-right: 1.25rem;
  -moz-appearance: auto;
       appearance: auto;
  -webkit-appearance: menulist;
  background-image: none;
  color: var(--color-text-placeholder);
  cursor: pointer;
}
.registration__select:valid {
  color: var(--color-text-input);
}
.registration__checks {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  width: 100%;
}
.registration__check {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  font-family: var(--font-family);
  font-size: 1rem;
  line-height: 1.4;
  color: var(--color-text-soft);
}
.registration__check--inline {
  width: auto;
}
.registration__checkbox {
  position: absolute;
  width: 0.0625rem;
  height: 0.0625rem;
  padding: 0;
  margin: -0.0625rem;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
  opacity: 0;
}
.registration {
  /* Чекбокс: компонент Figma checkbox https://www.figma.com/...node-id=218-7558 (default 131:868, selected галочка) */
}
.registration__check-box {
  flex-shrink: 0;
  position: relative;
  width: 1.5rem;
  height: 1.5rem;
  box-sizing: border-box;
  border: none;
  border-radius: 0.5rem;
  background-color: var(--color-surface);
  background-image: url("../img/registration-checkbox-outline.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  transition: background-color 0.15s ease;
  pointer-events: none;
}
.registration__checkbox:checked + .registration__check-box {
  background-color: var(--color-outline);
  background-image: url("../img/registration-checkbox-mark.svg");
  background-size: 100%;
}
.registration__checkbox:focus-visible + .registration__check-box {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.registration__checkbox:focus-visible:checked + .registration__check-box {
  outline-color: var(--color-brand);
}
.registration__check-text {
  flex: 1;
  min-width: 0;
  text-align: left;
}
.registration__check-link:link, .registration__check-link:visited, .registration__check-link:hover, .registration__check-link:active {
  color: var(--color-outline);
  text-decoration: underline;
  text-underline-offset: 0.125rem;
}
.registration__check-link:hover, .registration__check-link:active {
  color: var(--color-brand);
}
.registration__auth-options {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  width: 100%;
}
@media (max-width: 29.99875em) {
  .registration__auth-options {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
  }
}
.registration__auth-option-link:link, .registration__auth-option-link:visited, .registration__auth-option-link:hover, .registration__auth-option-link:active {
  font-size: 1rem;
  line-height: 1.4;
  color: var(--color-outline);
  text-decoration: none;
}
.registration__auth-option-link:hover, .registration__auth-option-link:active {
  color: var(--color-brand);
}
.registration__books {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  width: 32.5rem;
  max-width: 100%;
  position: relative;
}
@media (max-width: 61.99875em) {
  .registration__books {
    width: 100%;
    gap: 0.5rem;
  }
}
.registration__books {
  /* Figma mobile books + nav row: node 137:4118 */
}
@media (max-width: 47.99875em) {
  .registration__books {
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    row-gap: 1.5rem;
    -moz-column-gap: 0;
         column-gap: 0;
    max-width: 22.375rem;
    margin-left: auto;
    margin-right: auto;
  }
}
.registration__books-viewport {
  width: 100%;
  overflow: hidden;
}
@media (max-width: 61.99875em) {
  .registration__books-viewport {
    flex: 1 1 0;
    min-width: 0;
    width: auto;
  }
}
@media (max-width: 47.99875em) {
  .registration__books-viewport {
    flex: 1 1 100%;
    order: 1;
    width: 100%;
    min-width: 100%;
  }
}
.registration__books-track {
  display: flex;
}
.registration__books-nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  aspect-ratio: 1;
  border: none;
  border-radius: 2rem;
  background: var(--color-surface);
  color: var(--color-text-soft);
  cursor: pointer;
  flex-shrink: 0;
}
@media (min-width: 62em) {
  .registration__books-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
}
@media (max-width: 47.99875em) {
  .registration__books-nav {
    order: 2;
  }
}
.registration__books-nav-icon {
  display: block;
  width: 50%;
  aspect-ratio: 1;
}
@media (min-width: 62em) {
  .registration__books-nav--prev {
    left: -4.375rem;
  }
}
.registration__books-nav--next {
  background: var(--color-brand);
  color: var(--color-white);
}
@media (min-width: 62em) {
  .registration__books-nav--next {
    right: -4.375rem;
  }
}
@media (max-width: 47.99875em) {
  .registration__books-nav--next {
    margin-left: auto;
  }
}
.registration__book-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.625rem;
  margin: 0;
  box-sizing: border-box;
  height: auto;
  border: 0.125rem solid #d0d2d9;
  border-radius: 1rem;
  padding: 1rem;
  background: var(--color-surface);
  cursor: pointer;
  text-align: center;
}
.registration__book-card--hidden {
  display: none !important;
}
@media (max-width: 61.99875em) {
  .registration__book-card {
    padding: 0.75rem;
    gap: 0.5rem;
  }
}
@media (max-width: 47.99875em) {
  .registration__book-card {
    padding: 1rem;
    border-radius: 1rem;
  }
}
.registration__book-card:focus {
  outline: none;
}
.registration__book-card:focus-visible {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.125rem;
}
.registration__book-card.is-active {
  border-width: 0.25rem;
  border-color: #02918e;
  box-shadow: none;
}
.registration__book-card.is-active .registration__book-title {
  color: #02918e;
  font-weight: 600;
}
@media (max-width: 47.99875em) {
  .registration__book-card.is-active {
    border-width: 0.1875rem;
    border-color: #02918e;
  }
}
.registration__book-cover {
  display: block;
  flex-shrink: 0;
  width: 13.5rem;
  height: 17rem;
  max-width: 100%;
  border-radius: 0;
  box-shadow: 0 0.125rem 0.875rem 0 rgba(0, 0, 0, 0.15);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
@media (max-width: 61.99875em) {
  .registration__book-cover {
    width: 100%;
    height: auto;
    aspect-ratio: 216/272;
  }
}
@media (max-width: 47.99875em) {
  .registration__book-cover {
    width: 100%;
    height: 11.375rem;
    aspect-ratio: auto;
  }
}
.registration__book-cover--third {
  background-image: linear-gradient(135deg, #efe4ce, #9a6142);
}
.registration {
  /* Figma Book 137:4194 — название под обложкой */
}
.registration__book-title {
  display: block;
  margin: 0;
  max-width: 13.5rem;
  font-family: var(--font-family);
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  color: #767e8e;
  text-align: center;
  text-wrap: balance;
}
@media (max-width: 47.99875em) {
  .registration__book-title {
    max-width: 100%;
    font-size: 0.75rem;
  }
}
.registration__submit {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  align-self: stretch;
  padding: 1rem 2.5rem;
  border: none;
  min-height: 0;
  border-radius: 1.25rem;
  background: var(--color-cta-registration);
  opacity: 0.3;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.2;
  color: var(--color-white);
  cursor: pointer;
  min-height: 3.75rem;
  transition: opacity 0.2s ease, background-color 0.2s ease;
}
.registration__submit--ready {
  opacity: 1;
}
.registration__submit--ready:hover {
  background: var(--color-brand-hover);
  color: var(--color-white);
}
.registration__submit--ready:focus-visible {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.1875rem;
}
.registration__submit:not(:disabled) {
  opacity: 1;
  cursor: pointer;
}
.registration__submit:not(:disabled):hover {
  background: var(--color-brand-hover);
  color: var(--color-white);
}
.registration__submit:not(:disabled):focus-visible {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.1875rem;
}
.registration__submit--secondary {
  background: rgba(71, 184, 178, 0.1);
  color: #0c5955;
  opacity: 1;
  cursor: pointer;
  text-decoration: none;
}
.registration__submit--secondary:hover, .registration__submit--secondary:focus-visible, .registration__submit--secondary:active {
  background: rgba(71, 184, 178, 0.2);
  color: #0c5955;
}
.registration__submit--secondary:focus-visible {
  outline: 0.125rem solid var(--color-outline);
  outline-offset: 0.1875rem;
}
.registration__rule {
  display: block;
  width: 100%;
  height: 0.0625rem;
  margin: 0;
  border: none;
  background: var(--color-separator-soft);
}
.registration__auth {
  margin: 0;
  font-size: 1rem;
  line-height: 1.4;
  color: var(--color-outline);
  text-align: center;
}
@media (max-width: 29.99875em) {
  .registration__auth {
    font-size: 0.9375rem;
  }
}
.registration__auth-link:link, .registration__auth-link:visited, .registration__auth-link:hover, .registration__auth-link:active {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 0.125rem;
}
@media (max-width: 47.99875em) {
  .registration--profile-password, .registration--profile-email {
    align-items: center;
    justify-content: center;
    padding: 0;
    background: var(--color-surface);
  }
}
@media (max-width: 47.99875em) {
  .registration--profile-password .registration__inner, .registration--profile-email .registration__inner {
    min-height: 100svh;
    align-items: center;
  }
}
@media (max-width: 47.99875em) {
  .registration--profile-password .registration__form, .registration--profile-email .registration__form {
    position: relative;
    justify-content: center;
    gap: 2.5rem;
    padding: 1.5rem 1rem;
    height: 100%;
    min-height: 100svh;
    width: 100%;
    max-width: 100%;
  }
}
.registration--profile-password .registration__back, .registration--profile-email .registration__back {
  text-decoration: none;
  color: inherit;
}
@media (max-width: 47.99875em) {
  .registration--profile-password .registration__back, .registration--profile-email .registration__back {
    position: absolute;
    top: 0.75rem;
    left: 1rem;
    margin: 0;
  }
}
@media (max-width: 47.99875em) {
  .registration--profile-password .registration__logo, .registration--profile-email .registration__logo {
    height: 2.1875rem;
  }
}
@media (max-width: 47.99875em) {
  .registration--profile-password .registration__logo-img, .registration--profile-email .registration__logo-img {
    max-width: 12.5rem;
  }
}
.registration--profile-password .registration__field, .registration--profile-email .registration__field {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0.25rem;
  width: 100%;
}
.registration--profile-password .registration__label, .registration--profile-email .registration__label {
  font-family: var(--font-family);
  font-size: 0.875rem;
  line-height: 1.25rem;
  color: var(--color-text-placeholder);
}
.registration--profile-password .registration__row, .registration--profile-email .registration__row {
  gap: 0;
}
.registration--profile-password .registration__input, .registration--profile-email .registration__input {
  padding: 0.875rem 1rem;
}
.registration--profile-password .registration__submit--save, .registration--profile-email .registration__submit--save {
  border-radius: 1rem;
  padding: 1rem 1.5rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
}
.registration--profile-password .registration__submit--save:not(:disabled), .registration--profile-email .registration__submit--save:not(:disabled) {
  opacity: 1;
  cursor: pointer;
}
.registration--profile-password .registration__submit--save:not(:disabled):hover, .registration--profile-email .registration__submit--save:not(:disabled):hover {
  color: var(--color-white);
}
.registration--profile-password .registration__view--profile-success, .registration--profile-email .registration__view--profile-success {
  align-items: center;
}
.registration--profile-password .registration__success-image, .registration--profile-email .registration__success-image {
  display: block;
  width: 10.5rem;
  height: 10.625rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.registration--profile-password .registration__intro--success, .registration--profile-email .registration__intro--success {
  gap: 0;
  width: 100%;
}
.registration--profile-password .registration__step-fields--success, .registration--profile-email .registration__step-fields--success {
  align-self: stretch;
  gap: 0.75rem;
  padding-top: 1.5rem;
  width: 100%;
}
@media (max-width: 47.99875em) {
  .registration--profile-password .registration__step-fields--success, .registration--profile-email .registration__step-fields--success {
    padding-top: 1rem;
  }
}
.registration--profile-password .registration__submit--success-action, .registration--profile-email .registration__submit--success-action {
  border-radius: 1rem;
  padding: 1rem 1.5rem;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  opacity: 1;
  cursor: pointer;
  text-decoration: none;
  color: var(--color-white);
}
.registration--profile-password .registration__submit--success-action:hover, .registration--profile-password .registration__submit--success-action:focus-visible, .registration--profile-password .registration__submit--success-action:active, .registration--profile-email .registration__submit--success-action:hover, .registration--profile-email .registration__submit--success-action:focus-visible, .registration--profile-email .registration__submit--success-action:active {
  color: var(--color-white);
  background: var(--color-brand-hover);
}
.registration--profile-password.is-success .registration__back,
.registration--profile-password.is-success .registration__logo, .registration--profile-email.is-success .registration__back,
.registration--profile-email.is-success .registration__logo {
  display: none;
}
@media (max-width: 47.99875em) {
  .registration--profile-password.is-success .registration__form, .registration--profile-email.is-success .registration__form {
    justify-content: center;
    padding: 1.5rem 1rem;
    gap: 2.5rem;
  }
}
.registration--profile-password.is-success .registration__view--profile-success, .registration--profile-email.is-success .registration__view--profile-success {
  align-items: center;
}
.registration--profile-password .registration__input--suffix {
  padding-right: 3.25rem;
}

/* Общая ссылка «все …» для секций (книги, новости). Цвет — модификаторы --on-dark / --on-light. */
.section-see-all {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-family);
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  transition: color 0.2s ease;
}
@supports (font-size: clamp( 1.125rem , 1.0354477612rem  +  0.447761194vw , 1.5rem )) {
  .section-see-all {
    font-size: clamp( 1.125rem , 1.0354477612rem  +  0.447761194vw , 1.5rem );
  }
}
@supports not (font-size: clamp( 1.125rem , 1.0354477612rem  +  0.447761194vw , 1.5rem )) {
  .section-see-all {
    font-size: calc(1.125rem + 0.375 * (100vw - 20rem) / 83.75);
  }
}
.section-see-all {
  padding: 0.5rem 0.75rem;
}
@media (any-hover: hover) {
  .section-see-all:hover .section-see-all__icon {
    transform: translateX(0.1875rem);
  }
}
@media (max-width: 75rem) {
  .section-see-all:not(.section-see-all--mobile) {
    display: none;
  }
}
.section-see-all {
  /* Мобильная «все» — макет Frame 207:3893: row, центр по оси X, stretch по ширине, padding 8×12, 24 Medium / 1.2 */
}
.section-see-all.section-see-all--mobile {
  display: none;
}
.section-see-all.section-see-all--mobile:hover {
  color: var(--color-white);
}
@media (max-width: 75rem) {
  .section-see-all.section-see-all--mobile {
    display: flex;
    align-self: stretch;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 100%;
    gap: 0.5rem;
    font-size: 1.375rem;
    line-height: 1.2;
    font-weight: 500;
  }
}
.section-see-all__icon {
  display: inline-flex;
  flex: 0 0 2rem;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  transition: transform 0.2s ease;
}
.section-see-all__icon svg {
  display: block;
  width: 2rem;
  height: 2rem;
}
.section-see-all--on-dark {
  color: var(--color-white);
}
@media (any-hover: hover) {
  .section-see-all--on-dark:hover {
    color: var(--color-accent-mint);
  }
}
.section-see-all--on-dark:focus-visible {
  outline: 0.125rem solid var(--color-accent-mint);
  outline-offset: 0.1875rem;
  border-radius: 0.5rem;
}
.section-see-all--on-light {
  color: var(--color-text-dark);
}
@media (any-hover: hover) {
  .section-see-all--on-light:hover {
    color: var(--color-accent-mint);
  }
}
.section-see-all--on-light:focus-visible {
  outline: 0.125rem solid var(--color-brand);
  outline-offset: 0.1875rem;
  border-radius: 0.5rem;
}