/* /assets/template/css/main.min.css */
@charset "UTF-8";
:root {
  --font-primary:         'Roboto Flex', Arial, sans-serif;
  --font-secondary:       'Beatrix Antiqua', Arial, sans-serif;
  --black:                #000000;
  --white:                #ffffff;
  --blue:                 #011A2E;
  --blue-hover:           #012e52;
  --beige:                #F2F1EC;
  --yellow:               #FFB800;
  --gray:                 #454B5D;
  --font-size-base:       1rem;
  --line-height-base:     1.5;
  --transition-time:      .25s;
  --shadow:               0 0 0 #fff;
}


@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") format("woff");
  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: 1200px;
}

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

.swiper-3d {
  perspective: 1200px;
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  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: 1px;
  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: 1px;
  height: var(--swiper-centered-offset-after);
}



.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  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: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .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);
  }
}



@font-face {
  font-family: 'Roboto Flex';
  font-style: normal;
  font-weight: 100 1000;
  font-stretch: 100%;
  font-display: swap;
  src: url("https://static.tildacdn.com/tila6263-6137-4666-a337-316438393862/RobotoFlexCyrExt.woff2") format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}


@font-face {
  font-family: 'Roboto Flex';
  font-style: normal;
  font-weight: 100 1000;
  font-stretch: 100%;
  font-display: swap;
  src: url("https://static.tildacdn.com/tila3662-6466-4163-b966-663831636165/RobotoFlexCyr.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}


@font-face {
  font-family: 'Roboto Flex';
  font-style: normal;
  font-weight: 100 1000;
  font-stretch: 100%;
  font-display: swap;
  src: url("https://static.tildacdn.com/tila3830-6633-4133-a665-343533643964/RobotoFlexLatinExt.woff2") format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}


@font-face {
  font-family: 'Roboto Flex';
  font-style: normal;
  font-weight: 100 1000;
  font-stretch: 100%;
  font-display: swap;
  src: url("https://static.tildacdn.com/tila3738-3662-4630-b437-393736376164/RobotoFlexLatin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
  font-family: 'Beatrix Antiqua';
  font-weight: 300;
  font-style: normal;
  src: local("Beatrix Antiqua Light"), url("/assets/template/fonts/beatrix-antiqua/Beatrix-Antiqua-Light-trial.woff") format("woff");
}

@font-face {
  font-family: 'Beatrix Antiqua';
  font-weight: 300;
  font-style: italic;
  src: local("Beatrix Antiqua Light Italic"), url("/assets/template/fonts/beatrix-antiqua/Beatrix-Antiqua-Light-Italic-trial.woff") format("woff");
}

@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: normal;
  src: local("Beatrix Antiqua Regular"), url("/assets/template/fonts/beatrix-antiqua/Beatrix-Antiqua-trial.woff") format("woff");
}

@font-face {
  font-family: 'Beatrix Antiqua';
  font-weight: normal;
  font-style: italic;
  src: local("Beatrix Antiqua Italic"), url("/assets/template/fonts/beatrix-antiqua/Beatrix-Antiqua-Italic-trial.woff") format("woff");
}

@font-face {
  font-family: 'Beatrix Antiqua';
  font-weight: 500;
  font-style: normal;
  src: local("Beatrix Antiqua Medium"), url("/assets/template/fonts/beatrix-antiqua/Beatrix-Antiqua-Medium-trial.woff") format("woff");
}

@font-face {
  font-family: 'Beatrix Antiqua';
  font-weight: 500;
  font-style: italic;
  src: local("Beatrix Antiqua Medium Italic"), url("/assets/template/fonts/beatrix-antiqua/Beatrix-Antiqua-Medium-Italic-trial.woff") format("woff");
}

@font-face {
  font-family: 'Beatrix Antiqua';
  font-weight: 600;
  font-style: normal;
  src: local("Beatrix Antiqua SemiBold"), url("/assets/template/fonts/beatrix-antiqua/Beatrix-Antiqua-SemiBold-trial.woff") format("woff");
}

@font-face {
  font-family: 'Beatrix Antiqua';
  font-weight: 600;
  font-style: italic;
  src: local("Beatrix Antiqua SemiBold Italic"), url("/assets/template/fonts/beatrix-antiqua/Beatrix-Antiqua-SemiBold-Italic-trial.woff") format("woff");
}

@font-face {
  font-family: 'Beatrix Antiqua';
  font-weight: 700;
  font-style: normal;
  src: local("Beatrix Antiqua Bold"), url("/assets/template/fonts/beatrix-antiqua/Beatrix-Antiqua-Bold-trial.woff") format("woff");
}

@font-face {
  font-family: 'Beatrix Antiqua';
  font-weight: 700;
  font-style: italic;
  src: local("Beatrix Antiqua Bold Italic"), url("/assets/template/fonts/beatrix-antiqua/Beatrix-Antiqua-Bold-Italic-trial.woff") format("woff");
}




html {
  line-height: 1.15;
  
  -webkit-text-size-adjust: 100%;
  
}



body {
  margin: 0;
}


main {
  display: block;
}


h1 {
  font-size: 2em;
  margin: 0.67em 0;
}



hr {
  box-sizing: content-box;
  
  height: 0;
  
  overflow: visible;
  
}


pre {
  font-family: monospace, monospace;
  
  font-size: 1em;
  
}



a {
  background-color: transparent;
}


abbr[title] {
  border-bottom: none;
  
  text-decoration: underline;
  
  text-decoration: underline dotted;
  
}


b,
strong {
  font-weight: bolder;
}


code,
kbd,
samp {
  font-family: monospace, monospace;
  
  font-size: 1em;
  
}


small {
  font-size: 80%;
}


sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}



img {
  border-style: none;
}



button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  
  font-size: 100%;
  
  line-height: 1.15;
  
  margin: 0;
  
}


button,
input {
  
  overflow: visible;
}


button,
select {
  
  text-transform: none;
}


button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}


button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}


button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}


fieldset {
  padding: 0.35em 0.75em 0.625em;
}


legend {
  box-sizing: border-box;
  
  color: inherit;
  
  display: table;
  
  max-width: 100%;
  
  padding: 0;
  
  white-space: normal;
  
}


progress {
  vertical-align: baseline;
}


textarea {
  overflow: auto;
}


[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  
  padding: 0;
  
}


[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}


[type="search"] {
  -webkit-appearance: textfield;
  
  outline-offset: -2px;
  
}


[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}


::-webkit-file-upload-button {
  -webkit-appearance: button;
  
  font: inherit;
  
}



details {
  display: block;
}


summary {
  display: list-item;
}



template {
  display: none;
}


[hidden] {
  display: none;
}

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

html {
  height: 100%;
  font-size: 16px;
  line-height: 1.5;
}

body {
  min-height: 100%;
  color: var(--blue);
  background-color: var(--white);
  font-family: var(--font-primary);
  font-size: 1rem;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin: 0;
  padding: 0;
  font-weight: 300;
  line-height: 1.2;
  font-family: var(--font-secondary);
}

h1, .h1 {
  font-size: 1.375rem;
  line-height: 1.625rem;
  margin-bottom: 1.5rem;
  text-transform: uppercase;
}

@media (min-width: 768px) {
  h1, .h1 {
    font-size: 2rem;
  }
}

h2, .h2 {
  font-size: 1.375rem;
  line-height: 1.625rem;
  margin-bottom: 1.5rem;
  text-transform: uppercase;
}

@media (min-width: 768px) {
  h2, .h2 {
    font-size: 2rem;
    line-height: 120%;
  }
}

@media (min-width: 1240px) {
  h2, .h2 {
    font-size: 2.5rem;
    line-height: 120%;
  }
}

h3, .h3 {
  font-size: 1.5rem;
  margin-bottom: 1.25rem;
}

h4, .h4 {
  font-size: 1.25rem;
  margin-bottom: 1.25rem;
}

h5, .h5 {
  font-size: 1rem;
  margin-bottom: 1.25rem;
}

h6, .h6 {
  font-size: 0.875rem;
  margin-bottom: 1.25rem;
}

a {
  text-decoration: underline;
}

a:hover {
  text-decoration: none;
}

p {
  margin-top: 0;
  margin-bottom: 1.25rem;
}

ol,
ul {
  padding-left: 2rem;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1.25rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive::before {
  display: block;
  content: "";
}

.embed-responsive .embed_responsive_item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive_21by9::before {
  padding-top: 42.85714%;
}

.embed-responsive_16by9::before {
  padding-top: 56.25%;
}

.embed-responsive_4by3::before {
  padding-top: 75%;
}

.embed-responsive_1by1::before {
  padding-top: 100%;
}

.img-fluid {
  height: auto;
  display: block;
  max-width: 100%;
}

.img-cover {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center center;
}

.img-contain {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: center center;
}

.ico-svg {
  position: relative;
  display: inline-block;
  width: auto;
  height: 100%;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.hide {
  opacity: 0 !important;
  display: none !important;
  visibility: hidden !important;
}

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.text-left {
  text-align: left !important;
}

.text-center {
  text-align: center !important;
}

.text-right {
  text-align: right !important;
}

.text-justify {
  text-align: justify !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.mb-0 {
  margin-bottom: 0px !important;
}

.mb-10 {
  margin-bottom: 0.625rem !important;
}

.mb-20 {
  margin-bottom: 1.25rem !important;
}

.mb-30 {
  margin-bottom: 1.875rem !important;
}

.mb-40 {
  margin-bottom: 2.5rem !important;
}

.mb-50 {
  margin-bottom: 3.125rem !important;
}

.mb-60 {
  margin-bottom: 3.75rem !important;
}

.mb-1 {
  margin-bottom: 1rem !important;
}

.mb-15 {
  margin-bottom: 1.5rem !important;
}

.mb-2 {
  margin-bottom: 2rem !important;
}

.mb-25 {
  margin-bottom: 2.5rem !important;
}

.mb-3 {
  margin-bottom: 3rem !important;
}

.mb-35 {
  margin-bottom: 3.5rem !important;
}

.mb-4 {
  margin-bottom: 4rem !important;
}

.d-flex {
  display: flex;
}

.align-center {
  align-items: center;
}

.align-start {
  align-items: flex-start;
}

.align-end {
  align-items: flex-end;
}

.justify-content-between {
  justify-content: space-between;
}

.justify-content-start {
  justify-content: flex-start;
}

.justify-content-end {
  justify-content: flex-end;
}

.justify-content-center {
  justify-content: center;
}

[data-fullscreen] {
  min-height: 100vh;
  min-height: calc(var(--vh, 1vh) * 100);
}

.container {
  margin: 0 auto;
  max-width: 33.75rem;
  padding: 0 1.25rem;
}

@media (min-width: 768px) {
  .container {
    max-width: 48rem;
  }
}

@media (min-width: 1024px) {
  .container {
    max-width: 64rem;
  }
}

@media (min-width: 1240px) {
  .container {
    max-width: 77.5rem;
  }
}

@media (min-width: 1380px) {
  .container {
    max-width: 101.75rem;
  }
}

.container-fluid {
  margin: 0 auto;
  max-width: 33.75rem;
  padding: 0 1.25rem;
}

.row {
  --bs-gutter-x: 2rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(var(--bs-gutter-y) * -1);
  margin-right: calc(var(--bs-gutter-x) / -2);
  margin-left: calc(var(--bs-gutter-x) / -2);
}

.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) / 2);
  padding-left: calc(var(--bs-gutter-x) / 2);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0%;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.row-cols-1 > * {
  flex: 0 0 auto;
  width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 auto;
  width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.33333%;
}

.row-cols-4 > * {
  flex: 0 0 auto;
  width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 auto;
  width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.66667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 8.33333%;
}

.col-2 {
  flex: 0 0 auto;
  width: 16.66667%;
}

.col-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-4 {
  flex: 0 0 auto;
  width: 33.33333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.66667%;
}

.col-6 {
  flex: 0 0 auto;
  width: 50%;
}

.col-7 {
  flex: 0 0 auto;
  width: 58.33333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.66667%;
}

.col-9 {
  flex: 0 0 auto;
  width: 75%;
}

.col-10 {
  flex: 0 0 auto;
  width: 83.33333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.66667%;
}

.col-12 {
  flex: 0 0 auto;
  width: 100%;
}

.offset-1 {
  margin-left: 8.33333%;
}

.offset-2 {
  margin-left: 16.66667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.33333%;
}

.offset-5 {
  margin-left: 41.66667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.33333%;
}

.offset-8 {
  margin-left: 66.66667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.33333%;
}

.offset-11 {
  margin-left: 91.66667%;
}

.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
  --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0%;
  }
  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333%;
  }
  .offset-sm-2 {
    margin-left: 16.66667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333%;
  }
  .offset-sm-5 {
    margin-left: 41.66667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333%;
  }
  .offset-sm-8 {
    margin-left: 66.66667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333%;
  }
  .offset-sm-11 {
    margin-left: 91.66667%;
  }
  .g-sm-0,
  .gx-sm-0 {
    --bs-gutter-x: 0;
  }
  .g-sm-0,
  .gy-sm-0 {
    --bs-gutter-y: 0;
  }
  .g-sm-1,
  .gx-sm-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-sm-1,
  .gy-sm-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-sm-2,
  .gx-sm-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-sm-2,
  .gy-sm-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-sm-3,
  .gx-sm-3 {
    --bs-gutter-x: 1rem;
  }
  .g-sm-3,
  .gy-sm-3 {
    --bs-gutter-y: 1rem;
  }
  .g-sm-4,
  .gx-sm-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-sm-4,
  .gy-sm-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-sm-5,
  .gx-sm-5 {
    --bs-gutter-x: 3rem;
  }
  .g-sm-5,
  .gy-sm-5 {
    --bs-gutter-y: 3rem;
  }
}

@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0%;
  }
  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333%;
  }
  .offset-md-2 {
    margin-left: 16.66667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333%;
  }
  .offset-md-5 {
    margin-left: 41.66667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333%;
  }
  .offset-md-8 {
    margin-left: 66.66667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333%;
  }
  .offset-md-11 {
    margin-left: 91.66667%;
  }
  .g-md-0,
  .gx-md-0 {
    --bs-gutter-x: 0;
  }
  .g-md-0,
  .gy-md-0 {
    --bs-gutter-y: 0;
  }
  .g-md-1,
  .gx-md-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-md-1,
  .gy-md-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-md-2,
  .gx-md-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-md-2,
  .gy-md-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-md-3,
  .gx-md-3 {
    --bs-gutter-x: 1rem;
  }
  .g-md-3,
  .gy-md-3 {
    --bs-gutter-y: 1rem;
  }
  .g-md-4,
  .gx-md-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-md-4,
  .gy-md-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-md-5,
  .gx-md-5 {
    --bs-gutter-x: 3rem;
  }
  .g-md-5,
  .gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}

@media (min-width: 1024px) {
  .col-lg {
    flex: 1 0 0%;
  }
  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333%;
  }
  .offset-lg-2 {
    margin-left: 16.66667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333%;
  }
  .offset-lg-5 {
    margin-left: 41.66667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333%;
  }
  .offset-lg-8 {
    margin-left: 66.66667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333%;
  }
  .offset-lg-11 {
    margin-left: 91.66667%;
  }
  .g-lg-0,
  .gx-lg-0 {
    --bs-gutter-x: 0;
  }
  .g-lg-0,
  .gy-lg-0 {
    --bs-gutter-y: 0;
  }
  .g-lg-1,
  .gx-lg-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-lg-1,
  .gy-lg-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-lg-2,
  .gx-lg-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-lg-2,
  .gy-lg-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-lg-3,
  .gx-lg-3 {
    --bs-gutter-x: 1rem;
  }
  .g-lg-3,
  .gy-lg-3 {
    --bs-gutter-y: 1rem;
  }
  .g-lg-4,
  .gx-lg-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-lg-4,
  .gy-lg-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-lg-5,
  .gx-lg-5 {
    --bs-gutter-x: 3rem;
  }
  .g-lg-5,
  .gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}

@media (min-width: 1240px) {
  .col-xl {
    flex: 1 0 0%;
  }
  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333%;
  }
  .offset-xl-2 {
    margin-left: 16.66667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333%;
  }
  .offset-xl-5 {
    margin-left: 41.66667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333%;
  }
  .offset-xl-8 {
    margin-left: 66.66667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333%;
  }
  .offset-xl-11 {
    margin-left: 91.66667%;
  }
  .g-xl-0,
  .gx-xl-0 {
    --bs-gutter-x: 0;
  }
  .g-xl-0,
  .gy-xl-0 {
    --bs-gutter-y: 0;
  }
  .g-xl-1,
  .gx-xl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xl-1,
  .gy-xl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xl-2,
  .gx-xl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xl-2,
  .gy-xl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xl-3,
  .gx-xl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xl-3,
  .gy-xl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xl-4,
  .gx-xl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xl-4,
  .gy-xl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xl-5,
  .gx-xl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xl-5,
  .gy-xl-5 {
    --bs-gutter-y: 3rem;
  }
}

@media (min-width: 1380px) {
  .col-xxl {
    flex: 1 0 0%;
  }
  .row-cols-xxl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xxl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xxl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xxl-3 > * {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .row-cols-xxl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xxl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xxl-6 > * {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xxl-1 {
    flex: 0 0 auto;
    width: 8.33333%;
  }
  .col-xxl-2 {
    flex: 0 0 auto;
    width: 16.66667%;
  }
  .col-xxl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xxl-4 {
    flex: 0 0 auto;
    width: 33.33333%;
  }
  .col-xxl-5 {
    flex: 0 0 auto;
    width: 41.66667%;
  }
  .col-xxl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xxl-7 {
    flex: 0 0 auto;
    width: 58.33333%;
  }
  .col-xxl-8 {
    flex: 0 0 auto;
    width: 66.66667%;
  }
  .col-xxl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xxl-10 {
    flex: 0 0 auto;
    width: 83.33333%;
  }
  .col-xxl-11 {
    flex: 0 0 auto;
    width: 91.66667%;
  }
  .col-xxl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xxl-0 {
    margin-left: 0;
  }
  .offset-xxl-1 {
    margin-left: 8.33333%;
  }
  .offset-xxl-2 {
    margin-left: 16.66667%;
  }
  .offset-xxl-3 {
    margin-left: 25%;
  }
  .offset-xxl-4 {
    margin-left: 33.33333%;
  }
  .offset-xxl-5 {
    margin-left: 41.66667%;
  }
  .offset-xxl-6 {
    margin-left: 50%;
  }
  .offset-xxl-7 {
    margin-left: 58.33333%;
  }
  .offset-xxl-8 {
    margin-left: 66.66667%;
  }
  .offset-xxl-9 {
    margin-left: 75%;
  }
  .offset-xxl-10 {
    margin-left: 83.33333%;
  }
  .offset-xxl-11 {
    margin-left: 91.66667%;
  }
  .g-xxl-0,
  .gx-xxl-0 {
    --bs-gutter-x: 0;
  }
  .g-xxl-0,
  .gy-xxl-0 {
    --bs-gutter-y: 0;
  }
  .g-xxl-1,
  .gx-xxl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xxl-1,
  .gy-xxl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xxl-2,
  .gx-xxl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xxl-2,
  .gy-xxl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xxl-3,
  .gx-xxl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xxl-3,
  .gy-xxl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xxl-4,
  .gx-xxl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xxl-4,
  .gy-xxl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xxl-5,
  .gx-xxl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xxl-5,
  .gy-xxl-5 {
    --bs-gutter-y: 3rem;
  }
}

.btn {
  outline: none;
  cursor: pointer;
  min-height: 3.5rem;
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.5rem;
  padding: 0.5rem 1.5rem;
  user-select: none;
  text-align: center;
  white-space: nowrap;
  position: relative;
  text-decoration: none;
  display: inline-flex;
  column-gap: 0.75rem;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  text-transform: uppercase;
}

.btn:hover {
  text-decoration: none;
}

.btn:focus, .btn.focus {
  outline: 0;
}

.btn span {
  display: inline-block;
}

.btn i {
  font-size: 0;
  line-height: 0;
  display: inline-block;
  height: 1.5rem;
}

.btn-primary {
  fill: white;
  color: white;
  border: 1px solid var(--blue);
  background-color: var(--blue);
}

.btn-primary:hover {
  fill: white;
  color: white;
  border-color: var(--blue-hover);
  background-color: var(--blue-hover);
}

.btn-nav {
  width: 2.75rem;
  height: 2.75rem;
  fill: var(--blue);
  padding: 0;
  border: none;
  outline: none;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
}

.btn-nav i {
  display: block;
  width: 2.75rem;
}

.btn-link {
  margin: 0;
  padding: 0;
  color: black;
  border: none;
  outline: none;
  cursor: pointer;
  display: inline-flex;
  background: transparent;
  text-decoration: underline;
}

.btn-link:hover {
  color: black;
  text-decoration: none;
}

input:not([type=checkbox]):not([type=radio]),
textarea,
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input, textarea {
  outline: none;
}

input:focus:required:invalid, textarea:focus:required:invalid {
  border-color: red;
}

input:required:valid, textarea:required:valid {
  border-color: green;
}

:active, :hover, :focus {
  outline: 0 !important;
  outline-offset: 0 !important;
}

option::selection {
  background: #ccc;
}

option::-moz-selection {
  background: #ccc;
}

option::-webkit-selection {
  background: #ccc;
  color: #fff;
}

.field {
  width: 100%;
  display: block;
  font-weight: 400;
  position: relative;
  background: transparent;
}

.field input[type=text], .field input[type=email], .field input[type=password], .field textarea {
  margin: 0;
  width: 100%;
  height: 1.875rem;
  border: none;
  outline: none;
  color: var(--blue);
  box-shadow: none;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.0625rem;
  padding: 0 0 0.75rem 0;
  background: transparent;
  display: block;
  vertical-align: middle;
  font-family: var(--font-primary);
  border-bottom: 0.0625rem solid var(--blue);
}

.field input[type=text]::placeholder, .field input[type=email]::placeholder, .field input[type=password]::placeholder, .field textarea::placeholder {
  color: var(--blue);
}

.field input[type=text]::-ms-clear, .field input[type=email]::-ms-clear, .field input[type=password]::-ms-clear, .field textarea::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

.field input[type=text]:focus, .field input[type=text]:active, .field input[type=email]:focus, .field input[type=email]:active, .field input[type=password]:focus, .field input[type=password]:active, .field textarea:focus, .field textarea:active {
  outline: none;
}

.field input[type=text]:focus::placeholder, .field input[type=text]:active::placeholder, .field input[type=email]:focus::placeholder, .field input[type=email]:active::placeholder, .field input[type=password]:focus::placeholder, .field input[type=password]:active::placeholder, .field textarea:focus::placeholder, .field textarea:active::placeholder {
  color: transparent;
}

.field input[type=text].error, .field input[type=email].error, .field input[type=password].error, .field textarea.error {
  border-color: red !important;
}

.field textarea {
  height: auto;
  resize: none;
}

@media (min-width: 768px) {
  .field input[type=text], .field input[type=email], .field input[type=password], .field textarea {
    height: 2.25rem;
    font-size: 0.875rem;
    line-height: 1.4375rem;
  }
}

.checkbox {
  font-size: 0;
  line-height: 0;
  font-weight: 500;
  position: relative;
  display: inline-block;
}

.checkbox__input {
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  opacity: 0;
  overflow: hidden;
  visibility: hidden;
  position: absolute;
}

.checkbox__input:checked + .checkbox__label:before {
  border-color: var(--blue);
  background: var(--blue);
}

.checkbox__input:checked + .checkbox__label:after {
  opacity: 1;
  visibility: visible;
}

.checkbox__input:indeterminate + .checkbox__label:before {
  border-color: var(--blue);
  background: var(--blue);
}

.checkbox__input:indeterminate + .checkbox__label:after {
  top: 7px;
  width: 10px;
  height: 2px;
  background: white;
  opacity: 1;
  visibility: visible;
}

.checkbox__input:disabled + .checkbox__label {
  opacity: 0.6;
  cursor: default;
}

.checkbox__label {
  cursor: pointer;
  color: var(--gray);
  min-height: 16px;
  font-size: 14px;
  line-height: 20px;
  position: relative;
  display: inline-block;
  padding: 0 0 0 30px;
}

.checkbox__label:before {
  top: 0;
  left: 0;
  z-index: 1;
  content: '';
  width: 20px;
  height: 20px;
  position: absolute;
  border-radius: 2px;
  background: white;
  border: 1px solid var(--gray);
}

.checkbox__label:after {
  top: 7px;
  left: 5px;
  z-index: 5;
  content: '';
  width: 10px;
  height: 6px;
  position: absolute;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iOCIgdmlld0JveD0iMCAwIDEyIDgiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xMSAxTDQuMTI1IDdMMSA0LjI3MjczIiBzdHJva2U9IndoaXRlIiBzdHJva2Utd2lkdGg9IjEuOTk4MzIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8L3N2Zz4K");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  opacity: 0;
  visibility: hidden;
}

.radio {
  font-size: 0;
  line-height: 0;
  font-weight: 400;
  position: relative;
  display: inline-block;
}

.radio__input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.radio__label {
  color: black;
  cursor: pointer;
  font-size: 0.875rem;
  line-height: 1.25rem;
  position: relative;
  padding-left: 1.875rem;
  display: block;
}

.radio__label::before {
  top: 0;
  left: 0;
  z-index: 1;
  content: '';
  width: 20px;
  height: 20px;
  display: block;
  position: absolute;
  border-radius: 50%;
  border: 1px solid var(--gray);
}

.radio__label:after {
  top: 5px;
  left: 5px;
  z-index: 2;
  content: '';
  width: 10px;
  height: 10px;
  display: block;
  opacity: 0;
  visibility: hidden;
  position: absolute;
  background: var(--blue);
  border-radius: 50%;
}

.radio__input:checked + .radio__label::before {
  border-color: var(--blue);
}

.radio__input:checked + .radio__label::after {
  opacity: 1;
  visibility: visible;
}

.radio__input:disabled + .radio__label {
  opacity: 0.5;
}


.choices {
  position: relative;
  margin-bottom: 1.5rem;
  font-size: 1rem;
}

.choices:focus {
  z-index: 20;
  outline: none;
}

.choices:last-child {
  margin-bottom: 0;
}

.choices.is-disabled .choices__inner,
.choices.is-disabled .choices__input {
  background-color: #eaeaea;
  cursor: not-allowed;
  user-select: none;
}

.choices.is-disabled .choices__item {
  cursor: not-allowed;
}

.choices.is-focused {
  z-index: 20;
}

.choices [hidden] {
  display: none !important;
}

.choices[data-type*='select-one'] {
  cursor: pointer;
}

.choices[data-type*='select-one'] .choices__inner {
  padding-bottom: 0.5rem;
}

.choices[data-type*='select-one'] .choices__input {
  display: block;
  width: 100%;
  padding: 0.625rem;
  border-bottom: 1px solid #5b3d38;
  background-color: #ffffff;
  margin: 0;
}

.choices[data-type*='select-one'] .choices__button {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);
  padding: 0;
  background-size: 8px;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -0.625rem;
  margin-right: 1.5625rem;
  height: 1.25rem;
  width: 1.25rem;
  border-radius: 0.625rem;
  opacity: 0.5;
}

.choices[data-type*='select-one'] .choices__button:hover, .choices[data-type*='select-one'] .choices__button:focus {
  opacity: 1;
}

.choices[data-type*='select-one'] .choices__button:focus {
  box-shadow: 0 0 0 2px #00bcd4;
}

.choices[data-type*='select-one'] .choices__item[data-value=''] .choices__button {
  display: none;
}

.choices[data-type*='select-one']:after {
  content: '';
  height: 0;
  width: 0;
  border-style: solid;
  border-color: #333333 transparent transparent transparent;
  border-width: 0.3125rem;
  position: absolute;
  right: 0.71875rem;
  top: 50%;
  margin-top: -0.1875rem;
  pointer-events: none;
}

.choices[data-type*='select-one'].is-open:after {
  border-color: transparent transparent #333333 transparent;
  margin-top: -0.5rem;
}

.choices[data-type*='select-one'][dir='rtl']:after {
  left: 0.75rem;
  right: auto;
}

.choices[data-type*='select-one'][dir='rtl'] .choices__button {
  right: auto;
  left: 0;
  margin-left: 1.5625rem;
  margin-right: 0;
}

.choices[data-type*='select-multiple'] .choices__inner,
.choices[data-type*='text'] .choices__inner {
  cursor: text;
}

.choices[data-type*='select-multiple'] .choices__button,
.choices[data-type*='text'] .choices__button {
  position: relative;
  display: inline-block;
  margin-top: 0;
  margin-right: -0.25rem;
  margin-bottom: 0;
  margin-left: 0.5rem;
  padding-left: 1rem;
  border-left: 1px solid #008fa1;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);
  background-size: 0.5rem;
  width: 0.5rem;
  line-height: 1;
  opacity: 0.75;
  border-radius: 0;
}

.choices[data-type*='select-multiple'] .choices__button:hover, .choices[data-type*='select-multiple'] .choices__button:focus,
.choices[data-type*='text'] .choices__button:hover,
.choices[data-type*='text'] .choices__button:focus {
  opacity: 1;
}

.choices__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  vertical-align: top;
  width: 100%;
  background-color: #ffffff;
  padding: 0.6875rem 0.75rem 0.6875rem 1.25rem;
  border: 0.0625rem solid #5b3d38;
  border-radius: 0.25rem;
  font-size: 1rem;
  line-height: 1.5rem;
  min-height: 3rem;
  overflow: hidden;
}

.is-focused .choices__inner,
.is-open .choices__inner {
  border-color: #2c1d1b;
}

.is-open .choices__inner {
  border-radius: 3px 3px 0 0;
}

.is-flipped.is-open .choices__inner {
  border-radius: 0 0 3px 3px;
}

.choices__list {
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.choices__list--single {
  display: inline-block;
  width: 100%;
}

[dir='rtl'] .choices__list--single {
  padding-right: 0.25rem;
  padding-left: 1rem;
}

.choices__list--single .choices__item {
  width: 100%;
}

.choices__list--multiple {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.choices__list--multiple .choices__item {
  display: inline-block;
  vertical-align: middle;
  border-radius: 0.25rem;
  padding: 0.25rem 0.375rem;
  font-size: 0.75rem;
  line-height: 0.875rem;
  font-weight: 500;
  margin: 0.125rem 0.25rem 0.125rem 0;
  background-color: #00bcd4;
  border: 0.0625rem solid #00a5bb;
  color: #ffffff;
  word-break: break-all;
  box-sizing: border-box;
}

.choices__list--multiple .choices__item[data-deletable] {
  padding-right: 5px;
}

[dir='rtl'] .choices__list--multiple .choices__item {
  margin-right: 0;
  margin-left: 0.25rem;
}

.choices__list--multiple .choices__item.is-highlighted {
  background-color: #00a5bb;
  border: 1px solid #008fa1;
}

.is-disabled .choices__list--multiple .choices__item {
  background-color: #aaaaaa;
  border: 1px solid #919191;
}

.choices__list--dropdown {
  visibility: hidden;
  z-index: 1;
  position: absolute;
  width: 100%;
  background-color: #ffffff;
  border: 1px solid #5b3d38;
  top: 100%;
  margin-top: -0.0625rem;
  border-bottom-left-radius: 0.3125rem;
  border-bottom-right-radius: 0.3125rem;
  overflow: hidden;
  word-break: break-all;
  will-change: visibility;
}

.choices__list--dropdown.is-active {
  visibility: visible;
}

.is-open .choices__list--dropdown {
  border-color: #2c1d1b;
}

.is-flipped .choices__list--dropdown {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: -0.0625rem;
  border-radius: 0.25rem 0.25rem 0 0;
}

.choices__list--dropdown .choices__list {
  position: relative;
  max-height: 18.75rem;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  will-change: scroll-position;
}

.choices__list--dropdown .choices__item {
  position: relative;
  padding: 0.625rem;
  font-size: 0.875rem;
}

[dir='rtl'] .choices__list--dropdown .choices__item {
  text-align: right;
}

@media (min-width: 640px) {
  .choices__list--dropdown .choices__item--selectable {
    padding-right: 6.25rem;
  }
  .choices__list--dropdown .choices__item--selectable:after {
    font-size: 0.75rem;
    opacity: 0;
    position: absolute;
    right: 0.625rem;
    top: 50%;
    transform: translateY(-50%);
  }
  [dir='rtl'] .choices__list--dropdown .choices__item--selectable {
    text-align: right;
    padding-left: 6.25rem;
    padding-right: 0.625rem;
  }
  [dir='rtl'] .choices__list--dropdown .choices__item--selectable:after {
    right: auto;
    left: 0.625rem;
  }
}

.choices__list--dropdown .choices__item--selectable.is-highlighted {
  background-color: #f2f2f2;
}

.choices__list--dropdown .choices__item--selectable.is-highlighted:after {
  opacity: 0.5;
}

.choices__item {
  cursor: default;
}

.choices__item--selectable {
  cursor: pointer;
}

.choices__item--disabled {
  cursor: not-allowed;
  user-select: none;
  opacity: 0.5;
}

.choices__heading {
  font-weight: 600;
  font-size: 0.75rem;
  padding: 0.625rem;
  border-bottom: 0.0625rem solid #7b524b;
  color: gray;
}

.choices__button {
  text-indent: -9999px;
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
}

.choices__button:focus {
  outline: none;
}

.choices__input {
  display: inline-block;
  vertical-align: baseline;
  background-color: #ffffff;
  font-size: 0.875rem;
  border: 0;
  margin: 0;
  padding: 0;
  border-radius: 0;
  max-width: 100%;
}

.choices__input:focus {
  outline: 0;
}

[dir='rtl'] .choices__input {
  padding-right: 0.125rem;
  padding-left: 0;
}

.choices__placeholder {
  opacity: 0.5;
}



.noUi-target,
.noUi-target * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -ms-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.noUi-target {
  position: relative;
}

.noUi-base,
.noUi-connects {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}


.noUi-connects {
  overflow: hidden;
  z-index: 0;
}

.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  -ms-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -webkit-transform-style: preserve-3d;
  transform-origin: 0 0;
  transform-style: flat;
}


.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
  left: 0;
  right: auto;
}


.noUi-vertical .noUi-origin {
  top: -100%;
  width: 0;
}

.noUi-horizontal .noUi-origin {
  height: 0;
}

.noUi-handle {
  backface-visibility: hidden;
  position: absolute;
}

.noUi-touch-area {
  height: 100%;
  width: 100%;
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  transition: transform 0.3s;
}

.noUi-state-drag * {
  cursor: inherit !important;
}


.noUi-horizontal {
  height: 18px;
}

.noUi-horizontal .noUi-handle {
  width: 34px;
  height: 28px;
  right: -17px;
  top: -6px;
}

.noUi-vertical {
  width: 18px;
}

.noUi-vertical .noUi-handle {
  width: 28px;
  height: 34px;
  right: -6px;
  bottom: -17px;
}

.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {
  left: -17px;
  right: auto;
}


.noUi-target {
  background: #fafafa;
  border-radius: 4px;
  border: 1px solid #d3d3d3;
  box-shadow: inset 0 1px 1px #f0f0f0, 0 3px 6px -5px #bbb;
}

.noUi-connects {
  border-radius: 3px;
}

.noUi-connect {
  background: #3fb8af;
}


.noUi-draggable {
  cursor: ew-resize;
}

.noUi-vertical .noUi-draggable {
  cursor: ns-resize;
}

.noUi-handle {
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  cursor: default;
  box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ebebeb, 0 3px 6px -3px #bbb;
}

.noUi-active {
  box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ddd, 0 3px 6px -3px #bbb;
}


.noUi-handle:before,
.noUi-handle:after {
  content: "";
  display: block;
  position: absolute;
  height: 14px;
  width: 1px;
  background: #e8e7e6;
  left: 14px;
  top: 6px;
}

.noUi-handle:after {
  left: 17px;
}

.noUi-vertical .noUi-handle:before,
.noUi-vertical .noUi-handle:after {
  width: 14px;
  height: 1px;
  left: 6px;
  top: 14px;
}

.noUi-vertical .noUi-handle:after {
  top: 17px;
}


[disabled] .noUi-connect {
  background: #b8b8b8;
}

[disabled].noUi-target,
[disabled].noUi-handle,
[disabled] .noUi-handle {
  cursor: not-allowed;
}


.noUi-pips,
.noUi-pips * {
  box-sizing: border-box;
}

.noUi-pips {
  position: absolute;
  color: #999;
}


.noUi-value {
  position: absolute;
  white-space: nowrap;
  text-align: center;
}

.noUi-value-sub {
  color: #ccc;
  font-size: 10px;
}


.noUi-marker {
  position: absolute;
  background: #ccc;
}

.noUi-marker-sub {
  background: #aaa;
}

.noUi-marker-large {
  background: #aaa;
}


.noUi-pips-horizontal {
  padding: 10px 0;
  height: 80px;
  top: 100%;
  left: 0;
  width: 100%;
}

.noUi-value-horizontal {
  transform: translate(-50%, 50%);
}

.noUi-rtl .noUi-value-horizontal {
  transform: translate(50%, 50%);
}

.noUi-marker-horizontal.noUi-marker {
  margin-left: -1px;
  width: 2px;
  height: 5px;
}

.noUi-marker-horizontal.noUi-marker-sub {
  height: 10px;
}

.noUi-marker-horizontal.noUi-marker-large {
  height: 15px;
}


.noUi-pips-vertical {
  padding: 0 10px;
  height: 100%;
  top: 0;
  left: 100%;
}

.noUi-value-vertical {
  transform: translate(0, -50%);
  padding-left: 25px;
}

.noUi-rtl .noUi-value-vertical {
  transform: translate(0, 50%);
}

.noUi-marker-vertical.noUi-marker {
  width: 5px;
  height: 2px;
  margin-top: -1px;
}

.noUi-marker-vertical.noUi-marker-sub {
  width: 10px;
}

.noUi-marker-vertical.noUi-marker-large {
  width: 15px;
}

.noUi-tooltip {
  display: block;
  position: absolute;
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  color: #000;
  padding: 5px;
  text-align: center;
  white-space: nowrap;
}

.noUi-horizontal .noUi-tooltip {
  transform: translate(-50%, 0);
  left: 50%;
  bottom: 120%;
}

.noUi-vertical .noUi-tooltip {
  transform: translate(0, -50%);
  top: 50%;
  right: 120%;
}

.noUi-horizontal .noUi-origin > .noUi-tooltip {
  transform: translate(50%, 0);
  left: auto;
  bottom: 10px;
}

.noUi-vertical .noUi-origin > .noUi-tooltip {
  transform: translate(0, -18px);
  top: auto;
  right: 28px;
}

.quantity {
  display: block;
  position: relative;
  background: white;
  height: 3rem;
  padding: 0 2.875rem;
  border: 1px solid black;
}

.quantity input[type=text], .quantity input[type=number] {
  margin: 0;
  width: 100%;
  z-index: 10;
  height: 2.875rem;
  outline: none;
  color: black;
  text-align: center;
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 1.25rem;
  padding: 0.6875rem 0;
  border-radius: 0;
  position: relative;
  background: transparent;
  display: block;
  vertical-align: middle;
  border: 0.0625rem solid transparent;
}

.quantity input[type=text]::-moz-placeholder, .quantity input[type=number]::-moz-placeholder {
  color: transparent;
  opacity: 1;
}

.quantity input[type=text]:-ms-input-placeholder, .quantity input[type=number]:-ms-input-placeholder {
  color: transparent;
}

.quantity input[type=text]::-webkit-input-placeholder, .quantity input[type=number]::-webkit-input-placeholder {
  color: transparent;
}

.quantity input[type=text]::placeholder, .quantity input[type=number]::placeholder {
  color: transparent;
}

.quantity input[type=text]::-ms-clear, .quantity input[type=number]::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

.quantity input[type=text]:focus, .quantity input[type=text]:active, .quantity input[type=number]:focus, .quantity input[type=number]:active {
  opacity: 1;
  outline: none;
}

.quantity input[type=text]:focus::-moz-placeholder, .quantity input[type=text]:active::-moz-placeholder, .quantity input[type=number]:focus::-moz-placeholder, .quantity input[type=number]:active::-moz-placeholder {
  color: transparent;
  opacity: 1;
}

.quantity input[type=text]:focus:-ms-input-placeholder, .quantity input[type=text]:active:-ms-input-placeholder, .quantity input[type=number]:focus:-ms-input-placeholder, .quantity input[type=number]:active:-ms-input-placeholder {
  color: transparent;
}

.quantity input[type=text]:focus::-webkit-input-placeholder, .quantity input[type=text]:active::-webkit-input-placeholder, .quantity input[type=number]:focus::-webkit-input-placeholder, .quantity input[type=number]:active::-webkit-input-placeholder {
  color: transparent;
}

.quantity input[type=text]:focus::placeholder, .quantity input[type=text]:active::placeholder, .quantity input[type=number]:focus::placeholder, .quantity input[type=number]:active::placeholder {
  color: transparent;
}

.quantity input[type=text].error, .quantity input[type=number].error {
  border-color: red !important;
}

.quantity input[type="number"]::-webkit-outer-spin-button,
.quantity input[type="number"]::-webkit-inner-spin-button {
  display: none;
}

.quantity__button {
  top: 0;
  font-size: 0;
  line-height: 0;
  border: none;
  outline: none;
  width: 2.875rem;
  height: 2.875rem;
  background: #f5f5f5;
  cursor: pointer;
  position: absolute;
}

.quantity__button:after, .quantity__button:before {
  top: calc(50% - 1px);
  left: calc(50% - 4px);
  z-index: 10;
  content: '';
  width: 8px;
  height: 1px;
  background: black;
  position: absolute;
}

.quantity__button--minus {
  left: 0;
}

.quantity__button--plus {
  right: 0;
}

.quantity__button--plus:after {
  transform: rotate(90deg);
}

.file-field {
  cursor: pointer;
  border-radius: 5px;
  white-space: nowrap;
  font-size: 1rem;
  line-height: 1.0625rem;
  max-width: 100%;
  font-weight: 400;
  padding: 0.25rem 0.75rem;
  overflow: hidden;
  position: relative;
  display: flex;
  height: 3.5rem;
  align-items: center;
  fill: var(--green);
  color: var(--green);
  text-decoration: none;
  background: #F3F4F8;
  column-gap: 0.625rem;
}

.file-field:hover {
  fill: var(--green);
  color: var(--green);
  text-decoration: none;
}

.file-field input {
  top: 0;
  left: 0;
  width: 1px;
  height: 1px;
  opacity: 0;
  display: block;
  overflow: hidden;
  position: absolute;
}

.file-field__icon {
  font-size: 0;
  line-height: 0;
  height: 1.5rem;
  flex-shrink: 0;
}

.file-field__name {
  border-bottom: 1px dashed var(--green-1);
}

.form-group {
  margin-bottom: 1.5rem;
}

.form-label {
  display: block;
  font-weight: 400;
  margin-bottom: 0.5rem;
}

.breadcrumb {
  padding: 0;
  list-style: none;
  margin: 0 0 1.25rem 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.breadcrumb__item {
  display: block;
}

.breadcrumb__item:not(:last-child)::after {
  content: '›';
  padding: 0 0.375rem;
  display: inline-block;
}

.breadcrumb__link {
  text-decoration: underline;
}

.breadcrumb__link:hover {
  text-decoration: none;
}

[data-tabs-target] {
  display: none;
}

[data-tabs-target].active {
  display: block;
}

.tabs {
  position: relative;
}

.tabs__header {
  margin-bottom: 2rem;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 2px solid #f1f1f1;
}

.tabs__nav {
  display: flex;
  align-items: center;
}

.tabs__nav {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  align-items: center;
}

.tabs__btn {
  padding: 0.75rem;
  border: none;
  color: black;
  cursor: pointer;
  font-weight: 600;
  font-size: 0.75rem;
  line-height: 1.25rem;
  text-align: center;
  letter-spacing: 0.06em;
  background-color: #f0f0f0;
  border-radius: 6px 6px 0 0;
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
}

.tabs__btn:not(:last-child) {
  margin-right: 2px;
}

.tabs__btn:hover {
  color: white;
  background-color: black;
}

.tabs__btn.active {
  color: white;
  background-color: black;
  transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out;
  pointer-events: none;
}

.tabs__content {
  background-color: #fff;
}

[data-collapse].open [data-collapse-control]:before {
  content: attr(data-collapse-close);
}

[data-collapse-content] {
  display: none;
}

[data-collapse-control]:before {
  content: attr(data-collapse-open);
}

[data-spoiler].open .spoiler__arrow {
  transform: rotate(0deg);
  transition: .3s;
}

[data-spoiler-control] {
  cursor: pointer;
}

[data-spoiler-content] {
  display: none;
}

.spoiler {
  border-bottom: 1px solid #ccc;
}

.spoiler:not(:last-child) {
  margin-bottom: 1.25rem;
}

.spoiler__header {
  margin: 0;
  padding: 0.625rem 0;
  width: 100%;
  border: none;
  outline: none;
  stroke: black;
  cursor: pointer;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.spoiler__arrow {
  font-size: 0;
  line-height: 0;
  height: 0.5rem;
  display: inline-block;
  flex-shrink: 0;
  transform: rotate(180deg);
  transition: .3s;
}

.spoiler__title {
  font-size: 1.125rem;
  line-height: 1.5rem;
  display: block;
}

.spoiler__content {
  padding: 0.625rem;
  font-size: 1rem;
  line-height: 1.75rem;
  border-top: 1px solid #ccc;
}

.spoiler__content p:last-child {
  margin-bottom: 0;
}

[data-dropdown] {
  position: relative;
}

[data-dropdown].open {
  z-index: 50;
}

[data-dropdown].open [data-dropdown-content] {
  opacity: 1;
  visibility: visible;
}

[data-dropdown-toggle] {
  cursor: pointer;
}

[data-dropdown-content] {
  top: 100%;
  left: 0;
  margin-top: 0.25rem;
  min-width: 100%;
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  position: absolute;
}

.dropdown {
  display: inline-flex;
  flex-direction: column;
}

.dropdown__content {
  padding: 4px 0;
  overflow: hidden;
  background: white;
  border-radius: 8px;
  box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.15);
}

.dropdown__group {
  border: none;
  box-shadow: none;
}

.dropdown__item {
  cursor: pointer;
  min-width: 100%;
  display: inline-flex;
  padding: 6px 20px;
}

.dropdown__item:hover {
  background-color: #eee;
}

.rating {
  font-size: 0;
  line-height: 0;
  display: inline-flex;
  align-items: center;
}

.rating__body {
  position: relative;
}

.rating__active {
  top: 0;
  left: 0;
  width: 0;
  z-index: 5;
  overflow: hidden;
  position: absolute;
  display: flex;
  fill: gold;
}

.rating__stars {
  display: flex;
  fill: lightgrey;
}

.rating__star {
  flex-shrink: 0;
  height: 1.5rem;
  display: inline-block;
}

.rating__items {
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  position: absolute;
  display: flex;
  flex-direction: row-reverse;
}

.rating__item {
  color: gold;
  cursor: pointer;
  flex: 0 0 20%;
}

.rating__value {
  top: 2px;
  position: relative;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5rem;
  padding-left: 0.625rem;
}

[data-rating-readonly='true'] .rating__item {
  cursor: default;
}

.simple-rating {
  overflow: hidden;
  position: relative;
  display: inline-flex;
  font-size: 0;
  line-height: 0;
  flex-direction: row-reverse;
}

.simple-rating__item {
  top: 0;
  left: 0;
  width: 0%;
  height: 0%;
  opacity: 0;
  visibility: hidden;
  position: absolute;
}

.simple-rating__label {
  color: gold;
  font-size: 2.5rem;
  line-height: 2.5rem;
  cursor: pointer;
  display: block;
  transition: .3s;
}

.simple-rating__label:before {
  content: '☆';
}

.simple-rating__item:checked:before,
.simple-rating__item:checked ~ .simple-rating__label:before {
  content: '★';
}

.simple-rating__label:hover:before,
.simple-rating__label:hover ~ .simple-rating__label:before,
.simple-rating__label:checked ~ .simple-rating__label:hover:before {
  content: '★';
}

.header {
  z-index: 800;
  padding-top: 0.9375rem;
  padding-bottom: 2.5rem;
  background-color: white;
}

.header__contact {
  display: none;
}

.header__main {
  margin-bottom: 2.75rem;
  display: flex;
  column-gap: 1.875rem;
  align-items: center;
  justify-content: space-between;
}

.header__address {
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 0.875rem;
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
}

.header__address i {
  width: 11px;
  display: block;
  flex-shrink: 0;
}

.header__row {
  display: flex;
  row-gap: 2.5rem;
  flex-direction: column;
}

.header__lead {
  font-weight: 300;
  font-size: 1.4375rem;
  line-height: 120%;
  text-align: center;
  text-transform: uppercase;
  font-family: var(--font-secondary);
}

.header__logo {
  display: block;
  width: 14.5625rem;
  margin: 0 auto 1.125rem auto;
}

.header__logo--xl {
  display: none;
}

.header__button {
  text-align: center;
}

.header__cart {
  left: -5px;
  position: relative;
}

@media (min-width: 768px) {
  .header {
    padding-top: 1.75rem;
  }
  .header__logo {
    width: auto;
    max-width: inherit;
    margin-bottom: 1.875rem;
  }
  .header__logo--sm {
    display: none;
  }
  .header__logo--xl {
    display: block;
  }
  .header__row {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
  .header__lead {
    text-align: left;
    letter-spacing: calc(1em / 10);
  }
  .header__lead br {
    display: none;
  }
}

@media (min-width: 1024px) {
  .header__contact {
    display: block;
  }
  .header__phone {
    color: var(--blue);
    font-weight: 600;
    font-size: 1.75rem;
    line-height: 1.625rem;
    white-space: nowrap;
    text-decoration: none;
  }
  .header__phone:hover {
    color: var(--blue);
    text-decoration: none;
  }
  .header__address {
    flex-grow: 1;
    font-size: 1rem;
    line-height: 1.1875rem;
    justify-content: center;
  }
  .header__address br {
    display: none;
    white-space: nowrap;
  }
  .header__lead {
    letter-spacing: calc(1em / 5);
  }
}

@media (min-width: 1240px) {
  .header {
    padding-bottom: 3.125rem;
  }
  .header__main {
    margin-bottom: 1.75rem;
  }
  .header__phone {
    font-size: 2.1875rem;
    line-height: 2.5625rem;
  }
  .header__lead {
    padding-top: 0.25rem;
    font-size: 2.5rem;
    line-height: 3rem;
  }
}

.header-cart {
  font-size: 1rem;
  line-height: 1.1875rem;
  color: var(--blue);
  white-space: nowrap;
  text-decoration: none;
  display: flex;
  column-gap: 0.3125rem;
  align-items: center;
}

.header-cart__icon {
  width: 2.1875rem;
  display: block;
  flex-shrink: 0;
}

@media (min-width: 1240px) {
  .header-cart {
    font-size: 1.25rem;
    line-height: 1.5rem;
  }
  .header-cart__icon {
    width: 2.5rem;
  }
}

.header-burger {
  width: 94px;
  height: 27px;
  padding: 0;
  border: none;
  outline: none;
  cursor: pointer;
  font-size: 0.5625rem;
  line-height: 0.6875rem;
  color: var(--blue);
  position: relative;
  text-transform: uppercase;
  font-family: var(--font-secondary);
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
}

.header-burger i, .header-burger:after, .header-burger:before {
  z-index: 1;
  left: calc(50% - 47px);
  width: 94px;
  height: 1px;
  content: '';
  position: absolute;
  background-color: var(--blue);
}

.header-burger:before {
  top: 0;
}

.header-burger:after {
  bottom: 0;
}

.header-burger span {
  z-index: 10;
  display: block;
  padding: 0.125rem 0.375rem 0 0.375rem;
  position: relative;
  background-color: white;
}

@media (min-width: 1240px) {
  .header-burger {
    width: 108px;
    height: 30px;
    font-size: 0.6875rem;
    line-height: 0.8125rem;
  }
  .header-burger span {
    padding-top: 0.1875rem;
  }
}

.footer {
  padding-top: 3.125rem;
  padding-bottom: 3.125rem;
  color: white;
  background: var(--blue);
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.footer__primary {
  margin-bottom: 3.125rem;
  display: flex;
  row-gap: 2.1875rem;
  flex-direction: column;
}

.footer__logo {
  display: block;
  width: 19.75rem;
  margin: 0 auto 1.875rem auto;
}

.footer__logo--xl {
  display: none;
}

.footer__contacts {
  color: white;
  font-weight: 600;
  font-size: 1.375rem;
  line-height: 140%;
  text-decoration: none;
  display: flex;
  align-items: center;
  flex-direction: column;
}

.footer__contacts a {
  color: white;
  text-decoration: none;
}

.footer__contacts a:hover {
  color: white;
  text-decoration: none;
}

.footer__social {
  display: flex;
  row-gap: 1rem;
  align-items: center;
  flex-direction: column;
}

.footer__secondary {
  color: white;
  display: flex;
  row-gap: 1.0625rem;
  align-items: center;
  flex-direction: column;
}

.footer__secondary a {
  color: white;
  text-decoration: underline;
}

.footer__secondary a:hover {
  color: white;
  text-decoration: none;
}

.footer__nav {
  display: none;
}

.footer__ratings {
  display: none;
}

@media (min-width: 768px) {
  .footer {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
  .footer__logo {
    width: 13.75rem;
    margin: 0 0 3.125rem 0;
  }
  .footer__logo--sm {
    display: none;
  }
  .footer__logo--xl {
    display: block;
  }
  .footer__contacts {
    font-size: 2rem;
    line-height: 140%;
    text-align: left;
    align-items: flex-start;
  }
  .footer__primary {
    flex-direction: row;
    justify-content: space-between;
  }
  .footer__secondary {
    font-size: 1.25rem;
    line-height: 1.5rem;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
  .footer__secondary a {
    text-decoration: none;
  }
  .footer__secondary a:hover {
    text-decoration: underline;
  }
  .footer__social {
    min-width: 11.125rem;
    align-items: flex-start;
  }
  .footer__nav {
    display: block;
    font-size: 1.25rem;
    line-height: 1.7428;
  }
  .footer__nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .footer__nav ul a {
    opacity: 1;
    color: white;
    text-decoration: none;
    transition: var(--transition-time);
  }
  .footer__nav ul a:hover {
    opacity: .5;
    color: white;
    text-decoration: none;
    transition: var(--transition-time);
  }
}

@media (min-width: 1240px) {
  .footer {
    padding-top: 7.5rem;
    padding-bottom: 7.125rem;
  }
  .footer__ratings {
    display: flex;
    row-gap: 3rem;
    flex-direction: column;
  }
  .footer__rating {
    display: block;
  }
}

@media (min-width: 1380px) {
  .footer .container {
    max-width: 84.375rem;
  }
  .footer__logo {
    width: 17.3125rem;
    margin-bottom: 3.125rem;
  }
  .footer__contacts {
    font-size: 2.4375rem;
    line-height: 140%;
  }
  .footer__nav {
    font-size: 1.5625rem;
    line-height: 1.7428;
  }
}

.social-link {
  color: white;
  font-size: 0.9375rem;
  line-height: 1.125rem;
  text-decoration: none;
  display: flex;
  column-gap: 0.5rem;
  align-items: center;
}

.social-link i {
  display: block;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 50%;
  overflow: hidden;
  background-color: white;
  flex-shrink: 0;
}

.nav {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 900;
  position: fixed;
  background-color: var(--blue);
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s ease;
}

.nav__header {
  padding: 1.5rem 0;
}

.nav__wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.nav__logo {
  display: block;
  width: 10rem;
}

.nav__close {
  width: 94px;
  height: 27px;
  padding: 0;
  border: none;
  outline: none;
  cursor: pointer;
  font-size: 0;
  line-height: 0;
  position: relative;
  text-transform: uppercase;
  background-color: transparent;
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
}

.nav__close:after, .nav__close:before {
  z-index: 1;
  top: 50%;
  left: calc(50% - 47px);
  width: 94px;
  height: 1px;
  content: '';
  position: absolute;
  background-color: white;
}

.nav__close:before {
  transform: rotate(15deg);
}

.nav__close:after {
  transform: rotate(-15deg);
}

.nav__footer {
  padding: 1.875rem 0;
}

.nav__social {
  display: flex;
  column-gap: 2.5rem;
  align-items: center;
}

.nav__primary {
  font-weight: 500;
  font-size: 2rem;
  line-height: 2.75rem;
  margin-bottom: 2.5rem;
}

.nav__primary ul {
  margin: 0;
  padding: 0;
  display: flex;
  row-gap: 0.5rem;
  flex-direction: column;
}

.nav__primary a {
  color: white;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.nav__primary a:hover {
  color: white;
  text-decoration: none;
  border-bottom-color: white;
}

.nav__secondary {
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 2rem;
}

.nav__secondary ul {
  margin: 0;
  padding: 0;
  display: flex;
  row-gap: 0.5rem;
  flex-direction: column;
}

.nav__secondary a {
  color: white;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.nav__secondary a:hover {
  color: white;
  text-decoration: none;
  border-bottom-color: white;
}

@media (min-width: 768px) {
  .nav__logo {
    width: 16.6875rem;
  }
  .nav__primary ul {
    row-gap: 1rem;
  }
  .nav__secondary ul {
    row-gap: 1rem;
  }
}

@media (min-width: 1380px) {
  .nav__primary {
    font-size: 2.5rem;
    line-height: 3rem;
    margin-bottom: 5rem;
  }
  .nav__primary ul {
    row-gap: 1.5rem;
  }
  .nav__secondary {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
  .nav__secondary ul {
    row-gap: 1.5rem;
  }
}

.nav-open {
  overflow: hidden;
}

.nav-open .nav {
  opacity: 1;
  visibility: visible;
  transition: .3s ease;
}

.quick-order {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 950;
  position: fixed;
  display: flex;
  flex-direction: column;
  background-color: white;
  overflow-y: auto;
  opacity: 0;
  visibility: hidden;
  transition: var(--transition-time);
}

.quick-order:after, .quick-order:before {
  height: 10px;
  content: '';
}

.quick-order__inner {
  padding: 5rem 1.25rem 2.5rem 1.25rem;
  display: flex;
  flex-grow: 1;
  justify-content: center;
  flex-direction: column;
}

.quick-order__close {
  top: 20px;
  right: 20px;
  width: 94px;
  height: 27px;
  padding: 0;
  border: none;
  outline: none;
  cursor: pointer;
  font-size: 0;
  line-height: 0;
  position: absolute;
  text-transform: uppercase;
  background-color: transparent;
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
}

.quick-order__close:after, .quick-order__close:before {
  z-index: 1;
  top: 50%;
  left: calc(50% - 47px);
  width: 94px;
  height: 1px;
  content: '';
  position: absolute;
  background-color: var(--blue);
}

.quick-order__close:before {
  transform: rotate(15deg);
}

.quick-order__close:after {
  transform: rotate(-15deg);
}

.quick-order__header {
  text-align: center;
  font-size: 0.875rem;
  line-height: 1.0625rem;
  margin-bottom: 2.5rem;
}

.quick-order__title {
  margin-bottom: 0.625rem;
}

.quick-order__container {
  margin: 0 auto;
  width: 100%;
  max-width: 101.75rem;
}

.quick-order__modal {
  width: 100%;
}

.quick-order__main {
  display: grid;
  grid-row-gap: 2rem;
}

.quick-order__footer {
  margin-top: 2.1875rem;
  text-align: center;
  display: flex;
  flex-direction: column-reverse;
  row-gap: 1.875rem;
  grid-template-columns: 1fr;
}

.quick-order__text {
  font-size: 0.875rem;
  line-height: 1.125rem;
}

.quick-order__text a {
  color: var(--blue);
  text-decoration: underline;
}

.quick-order__text a:hover {
  text-decoration: none;
}

@media (min-width: 768px) {
  .quick-order__inner {
    padding: 5rem 2.5rem 2.5rem 2.5rem;
  }
}

@media (min-width: 1024px) {
  .quick-order {
    background-color: var(--beige);
  }
  .quick-order__inner {
    padding: 2.5rem 2.5rem 2.5rem 2.5rem;
  }
  .quick-order__main {
    margin: 0 auto;
    max-width: 67.25rem;
    grid-column-gap: 1.875rem;
    grid-template-columns: 1fr 1fr;
  }
  .quick-order__footer {
    max-width: 67.25rem;
    margin: 3.75rem auto 0 auto;
    text-align: left;
    display: grid;
    grid-column-gap: 1.875rem;
    grid-template-columns: 1fr 1fr;
  }
  .quick-order__form {
    padding: 3.75rem;
    background-color: white;
  }
}

@media (min-width: 1240px) {
  .quick-order__header {
    margin-bottom: 3.125rem;
  }
  .quick-order__title {
    margin-bottom: 1.25rem;
  }
  .quick-order__form {
    padding: 7.75rem 3.75rem;
    background-color: white;
  }
  .quick-order__text {
    max-width: 27.5rem;
    font-size: 1rem;
    line-height: 1.1875rem;
  }
}

@media (min-width: 1380px) {
  .quick-order__main {
    grid-row-gap: 3rem;
  }
  .quick-order__footer {
    margin-top: 5.625rem;
  }
}

.modal-open {
  overflow: hidden;
}

.modal-open .quick-order {
  opacity: 1;
  visibility: visible;
  transition: var(--transition-time);
}

.offer__header {
  text-align: center;
  background-color: var(--beige);
  padding: 3.75rem 1.25rem 3.5rem 1.25rem;
}

.offer__title {
  margin-bottom: 1.25rem;
}

.offer__subtitle {
  font-size: 0.875rem;
  line-height: 1.125rem;
}

.offer__form {
  margin: 0 auto;
  width: 20rem;
}

.offer__field {
  margin-bottom: 2rem;
}

.offer__footer {
  margin-top: 1.875rem;
  display: flex;
  row-gap: 1.875rem;
  flex-direction: column;
}

.offer__content {
  padding-top: 2.75rem;
  padding-bottom: 3.125rem;
}

.offer__text {
  font-size: 0.875rem;
  line-height: 1.125rem;
}

.offer__text a {
  color: var(--blue);
  text-decoration: underline;
}

.offer__text a:hover {
  text-decoration: none;
}

.offer__button {
  text-align: center;
}

.offer__button .btn {
  width: 18.75rem;
  padding-left: 4.375rem;
  padding-right: 1.5rem;
  justify-content: space-between;
}

@media (min-width: 768px) {
  .offer__header {
    padding: 4.375rem 1.25rem 3.125rem 1.25rem;
  }
  .offer__subtitle {
    font-size: 1rem;
    line-height: 1.1875rem;
  }
  .offer__form {
    width: auto;
    max-width: 32.625rem;
  }
  .offer__footer {
    column-gap: 3.125rem;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
  .offer__text {
    font-size: 1rem;
    line-height: 1.1875rem;
  }
  .offer__button .btn {
    width: auto;
    padding-left: 1.875rem;
    padding-right: 1.5rem;
  }
  .offer__content {
    padding-top: 4.6875rem;
    padding-bottom: 4.6875rem;
  }
  .offer__footer {
    margin-top: 2.8125rem;
  }
}

@media (min-width: 1024px) {
  .offer {
    display: flex;
    flex-direction: row-reverse;
    background-color: var(--beige);
  }
  .offer__main {
    width: 50%;
    flex-shrink: 0;
  }
  .offer__media {
    width: 50%;
    flex-shrink: 0;
  }
  .offer__header {
    text-align: left;
    padding-left: 0;
    padding-right: 0;
  }
  .offer__content {
    background-color: white;
  }
  .offer__container {
    padding: 0 1.25rem;
  }
}

@media (min-width: 1240px) {
  .offer__header {
    width: 100%;
    padding-left: 2.5rem;
  }
  .offer__container {
    padding: 0;
  }
  .offer__main {
    padding-bottom: 6.25rem;
    display: flex;
    align-items: flex-end;
    flex-direction: column;
  }
  .offer__content {
    flex-grow: 1;
    width: 100%;
    max-width: 50.875rem;
    padding-left: 2.5rem;
  }
}

@media (min-width: 1380px) {
  .offer__header {
    display: flex;
    justify-content: flex-end;
  }
  .offer__content {
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
  .offer__container {
    width: 100%;
    max-width: 42.125rem;
  }
  .offer__form {
    margin: 0;
  }
}

.preview__media {
  padding-top: 5rem;
  background-color: var(--blue);
}

.preview__container {
  padding: 2.5rem 3.125rem;
  background-color: var(--yellow);
}

.preview__slider {
  max-width: 18.75rem;
  position: relative;
  margin: 0 auto;
}

.preview__nav {
  z-index: 50;
  top: calc(50% - 22px);
  position: absolute;
}

.preview__nav--prev {
  right: calc(100% - 10px);
}

.preview__nav--next {
  left: calc(100% - 10px);
}

.preview__pagination {
  display: none;
}

.preview__main {
  font-size: 0.875rem;
  line-height: 1.0625rem;
  text-align: center;
  background-color: white;
  padding: 2.5rem 1.25rem 3.75rem 1.25rem;
  display: flex;
  flex-direction: column;
}

.preview__wrapper {
  display: flex;
  flex-grow: 1;
  flex-direction: column;
}

.preview__lead {
  font-size: 0.875rem;
  line-height: 120%;
  margin-bottom: 9.0625rem;
  font-family: var(--font-secondary);
}

.preview__header {
  margin-bottom: 9.0625rem;
}

.preview__footer {
  margin-top: 4.0625rem;
}

.preview__text {
  margin: 0 auto;
  max-width: 20rem;
}

.preview__link {
  color: var(--blue);
  font-weight: 500;
  font-size: 1rem;
  line-height: 1.0625rem;
  text-decoration: none;
  text-transform: uppercase;
  border-bottom: 2px solid var(--yellow);
}

@media (min-width: 768px) {
  .preview__container {
    padding-top: 4.375rem;
    padding-bottom: 7rem;
  }
  .preview__slider {
    max-width: 24.0625rem;
  }
  .preview__nav--prev {
    right: calc(100% + 24px);
  }
  .preview__nav--next {
    left: calc(100% + 24px);
  }
  .preview__nav .btn-nav {
    fill: white;
  }
  .preview__main {
    padding: 3.75rem 1.25rem 5rem 1.25rem;
  }
  .preview__pagination {
    left: 0;
    right: 0;
    top: calc(100% + 50px);
    display: block;
    position: absolute;
  }
  .preview__lead {
    margin-bottom: 4.375rem;
  }
  .preview__header {
    margin-bottom: 4.375rem;
  }
  .preview__main {
    font-size: 1rem;
    line-height: 130%;
  }
  .preview__text {
    max-width: 33.125rem;
  }
  .preview__link {
    font-size: 1.1875rem;
    line-height: 1.375rem;
  }
}

@media (min-width: 1240px) {
  .preview {
    display: flex;
  }
  .preview__media {
    width: 50%;
    flex-shrink: 0;
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
    display: flex;
    justify-content: flex-end;
  }
  .preview__main {
    width: 50%;
    flex-shrink: 0;
    align-items: flex-start;
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
  }
  .preview__wrapper {
    width: 100%;
    max-width: 54rem;
    justify-content: space-between;
  }
  .preview__header {
    margin-bottom: 2.875rem;
  }
  .preview__text {
    font-size: 1.125rem;
    line-height: 130%;
  }
  .preview__link {
    font-size: 1.3125rem;
    line-height: 1.5625rem;
  }
  .preview__container {
    width: 100%;
    max-width: 41.125rem;
  }
}

.portfolio {
  padding-top: 3.125rem;
  padding-bottom: 1.25rem;
  background-color: white;
}

.portfolio__header {
  text-align: center;
  margin-bottom: 1.875rem;
}

.portfolio__nav {
  padding: 1.25rem 0;
  position: relative;
  margin-bottom: 1.875rem;
  background-color: var(--beige);
  display: flex;
  column-gap: 1.875rem;
  align-items: center;
}

.portfolio__nav:after, .portfolio__nav:before {
  top: 0;
  bottom: 0;
  content: '';
  width: 12.5rem;
  position: absolute;
  background-color: var(--beige);
}

.portfolio__nav:before {
  right: 100%;
}

.portfolio__nav:after {
  left: 100%;
}

.portfolio__title {
  white-space: nowrap;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1rem;
}

.portfolio__control {
  flex-grow: 1;
}

.portfolio__media {
  display: grid;
  grid-row-gap: 1.25rem;
  grid-column-gap: 1.25rem;
  grid-template-columns: 1fr 1fr;
}

.portfolio__item {
  display: none;
  height: 11.25rem;
}

.portfolio__item.active {
  display: block;
}

@media (min-width: 768px) {
  .portfolio {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem;
  }
  .portfolio__header {
    text-align: left;
    margin-bottom: 2.375rem;
  }
  .portfolio__item {
    height: auto;
  }
  .portfolio__media {
    grid-row-gap: 1.875rem;
    grid-column-gap: 1.875rem;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .portfolio__nav {
    padding: 1.9375rem 0;
    margin-bottom: 2.375rem;
  }
}

@media (min-width: 1240px) {
  .portfolio {
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
  }
}

.sorter-control {
  z-index: 100;
  position: relative;
}

.sorter-control__header {
  height: 2.125rem;
  padding-top: 0.125rem;
  padding-right: 1.5rem;
  font-size: 0.8125rem;
  line-height: 1rem;
  white-space: nowrap;
  position: relative;
  text-transform: uppercase;
  font-family: var(--font-secondary);
  border: 1px solid var(--blue);
  display: flex;
  align-items: center;
  justify-content: center;
}

.sorter-control__header:before {
  top: calc(50% - 3px);
  right: 10px;
  width: 8px;
  height: 5px;
  content: '';
  position: absolute;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nOCcgaGVpZ2h0PSc1JyB2aWV3Qm94PScwIDAgOCA1JyBmaWxsPSdub25lJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J00zLjY0NjQ1IDQuMzUzNTVDMy44NDE3MSA0LjU0ODgyIDQuMTU4MjkgNC41NDg4MiA0LjM1MzU1IDQuMzUzNTVMNy41MzU1MyAxLjE3MTU3QzcuNzMwOCAwLjk3NjMxMSA3LjczMDggMC42NTk3MjggNy41MzU1MyAwLjQ2NDQ2NkM3LjM0MDI3IDAuMjY5MjA0IDcuMDIzNjkgMC4yNjkyMDQgNi44Mjg0MyAwLjQ2NDQ2Nkw0IDMuMjkyODlMMS4xNzE1NyAwLjQ2NDQ2NkMwLjk3NjMxMSAwLjI2OTIwNCAwLjY1OTcyOCAwLjI2OTIwNCAwLjQ2NDQ2NiAwLjQ2NDQ2NkMwLjI2OTIwNCAwLjY1OTcyOCAwLjI2OTIwNCAwLjk3NjMxMSAwLjQ2NDQ2NiAxLjE3MTU3TDMuNjQ2NDUgNC4zNTM1NVpNMy41IDNMMy41IDRMNC41IDRMNC41IDNMMy41IDNaJyBmaWxsPScjMDExQTJFJy8+PC9zdmc+");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
}

.sorter-control__content {
  top: 100%;
  left: 0;
  min-width: 100%;
  display: block;
  font-size: 0.8125rem;
  line-height: 1rem;
  text-transform: uppercase;
  font-family: var(--font-secondary);
  position: absolute;
  cursor: pointer;
  background-color: var(--beige);
  border: 1px solid var(--blue);
  border-top: none;
  opacity: 0;
  visibility: hidden;
}

.sorter-control__item {
  color: --blue;
  text-align: center;
  padding: 0.625rem 0.75rem;
}

.sorter-control.open .sorter-control__header:before {
  transform: rotate(180deg);
}

.sorter-control.open .sorter-control__content {
  opacity: 1;
  visibility: visible;
}

@media (min-width: 768px) {
  .sorter-control__header {
    height: 3rem;
    font-size: 1rem;
    line-height: 1.1875rem;
  }
  .sorter-control__header:before {
    top: calc(50% - 4px);
    right: 16px;
    width: 12px;
    height: 8px;
  }
  .sorter-control__content {
    font-size: 1rem;
    line-height: 1.1875rem;
  }
  .sorter-control__item {
    padding: 0.75rem 0.75rem;
  }
}

@media (min-width: 1240px) {
  .sorter-control__header {
    display: none;
  }
  .sorter-control__content {
    opacity: 1;
    visibility: visible;
    border: none;
    top: auto;
    left: auto;
    right: auto;
    position: relative;
    display: flex;
    row-gap: 1.25rem;
    align-items: center;
  }
  .sorter-control__item {
    height: 2.125rem;
    font-size: 0.9375rem;
    padding: 0.3125rem 0.5rem 0.0625rem 0.5rem;
    border: 1px solid transparent;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .sorter-control__item.active {
    border-color: var(--blue);
  }
}

.reviews {
  padding-top: 3.125rem;
  padding-bottom: 8.125rem;
  background-color: var(--beige);
}

.reviews__header {
  text-align: center;
  margin-bottom: 3.125rem;
}

.reviews__main {
  margin: 0 auto;
  max-width: 20rem;
  position: relative;
}

.reviews__item {
  height: 100%;
  padding: 2.5rem;
  background-color: white;
}

.reviews__info {
  min-height: 2.5rem;
  position: relative;
  padding-left: 3.25rem;
  margin-bottom: 1.875rem;
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.reviews__info:before {
  top: 0;
  left: 0;
  content: '';
  width: 39px;
  height: 43px;
  position: absolute;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMzknIGhlaWdodD0nNDMnIHZpZXdCb3g9JzAgMCAzOSA0MycgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNMTAuNzg0NiAzMi4yNTE0TDguMzcxMjUgNDIuNTgzNUwwLjk4MDQxNyA0MC4zMjFDMC4zMDE2NjcgMzguNzM3MyAwIDM2Ljc3NjQgMCAzNC40Mzg1QzAgMzMuMDgxIDAuMTUwODM0IDMxLjQ5NzMgMC4zNzcwODQgMjkuNjExOUMwLjkwNSAyNS42MTQ4IDIuMDM2MjUgMjEuMjQwNiAzLjYyIDE2LjQ4OTRDNS4yMDM3NSAxMS40MzY0IDcuMjQgNi4xNTcyOCA5LjcyODc1IDAuNjUxODU1TDE0LjAyNzUgMi4wMDkzNkMxMi42NyA3LjI4ODUzIDExLjMxMjUgMTIuMTkwNiAxMC4wMzA0IDE2LjY0MDJDOS4wNSAyMC4xODQ4IDguMjk1ODMgMjMuMjAxNCA3LjkxODc1IDI1LjUzOTRDNy42OTI1IDI2LjgyMTQgNy42MTcwOCAyNy43MjY0IDcuNjE3MDggMjguMTAzNUM3LjYxNzA4IDMwLjQ0MTQgOC41OTc1IDMxLjY0ODEgMTAuNzg0NiAzMi4yNTE0Wk0zNS4yMTk2IDMyLjI1MTRMMzIuODA2MyA0Mi41ODM1TDI1LjQxNTQgNDAuMzIxQzI0LjgxMjEgMzguODg4MSAyNC41MTA0IDM3LjAwMjcgMjQuNTEwNCAzNC42NjQ4QzI0LjUxMDQgMzMuMzA3MyAyNC42NjEzIDMxLjY0ODEgMjQuODg3NSAyOS42MTE5QzI1LjQxNTQgMjUuNjE0OCAyNi41NDY3IDIxLjI0MDYgMjguMTMwNCAxNi40ODk0QzI5Ljc4OTYgMTEuNDM2NCAzMS44MjU4IDYuMTU3MjggMzQuMjM5MiAwLjY1MTg1NUwzOC40NjI1IDIuMDA5MzZDMzcuMTA1IDcuMjg4NTMgMzUuNzQ3NSAxMi4xOTA2IDM0LjQ2NTQgMTYuNjQwMkMzMy40ODUgMjAuMTg0OCAzMi43MzA4IDIzLjIwMTQgMzIuMzUzOCAyNS41Mzk0QzMyLjEyNzUgMjYuODIxNCAzMi4wNTIxIDI3LjcyNjQgMzIuMDUyMSAyOC4xMDM1QzMyLjA1MjEgMzAuNDQxNCAzMy4wMzI1IDMxLjY0ODEgMzUuMjE5NiAzMi4yNTE0WicgZmlsbD0nI0YyRjFFQycvPjwvc3ZnPgo=");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}

.reviews__person {
  font-weight: 500;
  font-size: 1.375rem;
  line-height: 1.6875rem;
  font-family: var(--font-secondary);
}

.reviews__date {
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 0.875rem;
}

.reviews__nav {
  z-index: 50;
  top: calc(50% - 22px);
  position: absolute;
}

.reviews__nav--prev {
  right: calc(100% - 24px);
}

.reviews__nav--next {
  left: calc(100% - 24px);
}

.reviews__pagination {
  left: 0;
  right: 0;
  top: calc(100% + 30px);
  display: block;
  position: absolute;
}

.reviews .swiper {
  overflow: visible;
}

.reviews .swiper-slide {
  height: auto;
  opacity: 0.5;
  transition: opacity .3s;
}

.reviews .swiper-slide-active {
  opacity: 1;
  transition: opacity .3s;
}

@media (min-width: 576px) {
  .reviews__main {
    max-width: 31.25rem;
  }
}

@media (min-width: 768px) {
  .reviews {
    padding-top: 5rem;
    padding-bottom: 9.375rem;
  }
  .reviews__main {
    max-width: 37.5rem;
  }
  .reviews__nav--prev {
    right: calc(100% + 20px);
  }
  .reviews__nav--next {
    left: calc(100% + 20px);
  }
  .reviews__pagination {
    top: calc(100% + 65px);
  }
}

@media (min-width: 1240px) {
  .reviews {
    padding-top: 6.25rem;
    padding-bottom: 13.875rem;
  }
  .reviews__main {
    max-width: 53.75rem;
  }
  .reviews__header {
    margin-bottom: 4.375rem;
  }
  .reviews__pagination {
    top: calc(100% + 100px);
  }
  .reviews__item {
    font-size: 1.375rem;
    line-height: 1.625rem;
    padding: 5.625rem 5rem;
  }
  .reviews__info {
    min-height: 3.125rem;
    padding-left: 4.625rem;
    margin-bottom: 2.625rem;
    row-gap: 0.25rem;
  }
  .reviews__info:before {
    top: 0.5rem;
  }
  .reviews__person {
    font-size: 1.6875rem;
    line-height: 2.0625rem;
  }
  .reviews__date {
    font-size: 0.875rem;
    line-height: 1rem;
  }
  .reviews__nav--prev {
    right: calc(100% + 88px);
  }
  .reviews__nav--next {
    left: calc(100% + 88px);
  }
}

.advantages__header {
  display: none;
}

.advantages__main {
  background-color: var(--beige);
  display: grid;
  grid-template-columns: 1fr;
}

.advantages__item {
  display: flex;
}

.advantages__media {
  width: 50%;
  flex-shrink: 0;
}

.advantages__content {
  font-size: 0.6875rem;
  line-height: 0.8125rem;
  width: 50%;
  flex-shrink: 0;
  text-align: center;
  display: flex;
  row-gap: 0.625rem;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.advantages__divider {
  width: 16px;
  height: 1px;
  display: block;
  margin: 0 auto 2px auto;
  background-color: var(--blue);
}

.advantages__title {
  font-weight: 300;
  font-size: 1rem;
  line-height: 120%;
  text-transform: uppercase;
  font-family: var(--font-secondary);
}

@media (min-width: 768px) {
  .advantages {
    padding-top: 6.25rem;
  }
  .advantages__header {
    display: block;
    text-align: center;
    margin-bottom: 2.875rem;
  }
  .advantages__title {
    font-weight: 400;
    font-size: 1.6875rem;
  }
  .advantages__content {
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.1875rem;
    row-gap: 1.25rem;
  }
  .advantages__text {
    font-weight: 500;
  }
}

@media (min-width: 1240px) {
  .advantages__header {
    margin-bottom: 3.5rem;
  }
  .advantages__main {
    grid-template-columns: 1fr 1fr;
  }
  .advantages__item:nth-child(2), .advantages__item:nth-child(3) {
    flex-direction: row-reverse;
  }
}

.partners {
  max-width: 100%;
  overflow: hidden;
  padding-top: 3.5rem;
  padding-bottom: 3.5rem;
  background-color: white;
}

.partners__header {
  display: none;
}

.partners__main {
  font-size: 0;
  line-height: 0;
}

.partners__logo {
  font-size: 0;
  line-height: 0;
  height: 80px;
  display: inline-block;
}

.partners .swiper {
  overflow: visible;
}

.partners .swiper-slide {
  width: auto;
}

@media (min-width: 768px) {
  .partners {
    padding-top: 3.75rem;
    padding-bottom: 2.8125rem;
  }
  .partners__logo {
    height: 126px;
  }
  .partners__header {
    display: block;
    text-align: center;
    margin-bottom: 2.875rem;
  }
}

[data-partners] {
  overflow: visible;
}

[data-partners] .swiper-wrapper {
  transition-timing-function: linear;
}

[data-partners] .swiper-slide {
  animation-timing-function: linear !important;
}

.services {
  max-width: 100%;
  overflow: hidden;
  padding-top: 2.5rem;
  padding-bottom: 1.875rem;
  background-color: var(--beige);
}

.services__main {
  width: 20rem;
  margin: 0 auto;
}

.services__pagination {
  margin-top: 1.875rem;
}

.services .swiper {
  overflow: visible;
}

@media (min-width: 576px) {
  .services {
    padding-top: 3.125rem;
    padding-bottom: 3.125rem;
  }
  .services__main {
    width: auto;
    margin: 0;
  }
  .services__pagination {
    margin-top: 3.125rem;
  }
}

@media (min-width: 1380px) {
  .services__pagination {
    display: none;
  }
}

.service-item {
  display: block;
  color: var(--black);
  text-decoration: none;
  position: relative;
  text-align: center;
  background-color: white;
}

.service-item:hover {
  color: var(--black);
  text-decoration: none;
}

.service-item__media {
  display: block;
}

.service-item__content {
  z-index: 10;
  position: relative;
  padding: 0 1.5625rem 1.875rem 1.5625rem;
}

.service-item__header {
  padding: 0.25rem 0.5rem;
  margin-top: -2.5rem;
  min-height: 5rem;
  font-weight: 400;
  font-size: 1.375rem;
  line-height: 1.625rem;
  background-color: white;
  text-transform: uppercase;
  font-family: var(--font-secondary);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.service-item__price {
  font-weight: 600;
  font-size: 1.3125rem;
  line-height: 1.5625rem;
  white-space: nowrap;
}

.service-item__price br {
  display: none;
}

.service-item__label {
  font-weight: 400;
  font-size: 0.6875rem;
  line-height: 0.8125rem;
  font-family: var(--font-secondary);
}

.service-item__link {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 50;
  display: block;
  position: absolute;
}

@media (min-width: 768px) {
  .service-item__label {
    font-size: 0.8125rem;
    line-height: 0.875rem;
  }
}

@media (min-width: 1600px) {
  .service-item__header {
    font-size: 1.6875rem;
    line-height: 2rem;
  }
  .service-item__price {
    font-size: 1.5625rem;
    line-height: 1.8125rem;
  }
  .service-item__label {
    font-size: 0.875rem;
    line-height: 1rem;
  }
}

#cart button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  cursor: pointer;
}

#cart * {
  box-sizing: border-box;
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.form-counter input, .form-counter select {
  width: 100%;
  background: 0;
  padding: 0;
  border: 0;
}

.dscart-item__form .form-weight {
  align-self: flex-start;
  max-width: 164px;
  width: 100%;
  font-size: 20px;
  line-height: 30px;
  text-align: center;
  background: #FDF1F5;
  border-radius: 30px;
  
}

.dscart-item__form .form-counter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 110px;
}

.dscart-item__form .form-counter input,
.dscart-item__form .form-counter button {
  font-size: 25px;
  font-weight: 600;
  text-align: center;
}

.dscart-item__form .form-counter input::-webkit-outer-spin-button,
.dscart-item__form .form-counter input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.button {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 66px;
  color: #000;
  font-size: 25px;
  font-weight: 600;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .04em;
  background: #fff;
  border: 2px solid #000;
  border-radius: 50px;
  transition: .3s ease-in-out;
}

.button:hover {
  color: #fff;
  background: #000;
}

.popup-item .form-counter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 111px;
}

.popup-item .form-counter button {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  color: #fff;
  font-size: 25px;
  font-weight: 600;
  white-space: nowrap;
  background: #000;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
}

.popup-item .form-counter input {
  font-size: 20px;
  font-weight: 600;
  text-align: center;
}

.popup-item .form-counter input::-webkit-outer-spin-button,
.popup-item .form-counter input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.dscart-item__form .form-counter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 110px;
}

.dscart-item__form .form-counter input,
.dscart-item__form .form-counter button {
  font-size: 25px;
  font-weight: 600;
  text-align: center;
}

.dscart-item__form .form-counter input::-webkit-outer-spin-button,
.dscart-item__form .form-counter input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.dscart-item__form .form-counter button {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  color: #fff;
  background: #000;
  border-radius: 50%;
}

.header-cart {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 20px;
  margin-left: auto;
  cursor: pointer;
}

.home-page .header-cart {
  margin-right: 30px;
}

.header-cart img {
  min-width: 29px;
}

.header-cart span,
.cart-title,
.cart-count,
.cart-delivery,
.dscart-item__form .form-title,
.dscart-item__form .form-weight,
.cart-form .form-content input,
.cart-message .msg-title {
  font-family: 'PP Right Gothic', sans-serif;
}

.header-cart span,
.cart-title,
.cart-count,
.cart-delivery,
.cart-form .form-content input,
.fast-order__title,
#fast-order input,
.cart-message .msg-title {
  font-weight: 200;
}

.navbar-layer .fancybox__slide,
.cart-layer .fancybox__slide {
  padding: 0;
}

#cart {
  max-width: 864px;
  align-self: flex-end;
  color: #000;
  padding: 0;
}

#cart.fancybox__content > .carousel__button.is-close {
  color: #000;
  top: 53px;
  right: auto;
  left: 43px;
}

#cart.fancybox__content > .carousel__button.is-close,
#cart.fancybox__content > .carousel__button.is-close svg {
  width: 40px;
  height: 40px;
}

#cart.fancybox__content > .carousel__button.is-close svg {
  stroke-width: 1;
  filter: none;
}

#cart > [class^="cart-"] {
  padding-inline: 50px;
}

.cart-title {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  height: 159px;
  font-size: 60px;
  line-height: 1;
  text-align: center;
  padding-top: 43px;
}

.cart-count {
  font-size: 20px;
  padding: 0 !important;
  position: absolute;
  top: 64px;
  right: 50px;
  z-index: 1;
}

.cart-delivery {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  color: #fff;
  font-size: 22px;
  text-align: center;
  background: #000;
}

.cart-items {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  text-align: center;
  padding-block: 32px;
}

.dscart-item {
  
  display: flex;
  align-items: center;
  gap: 50px;
  text-align: left;
  padding-block: 18px;
  position: relative;
}

.dscart-item:not(:first-of-type) {
  border-top: 1px solid #000;
}

.dscart-item__img {
  
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 241px;
  
  text-align: center;
  background: #FDF1F5;
  border-radius: 20px;
  aspect-ratio: 241 / 197;
  overflow: hidden;
}


.dscart-item__form {
  
  width: 100%;
}

.dscart-item__form form {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
}

.dscart-item__form .form-title {
  flex-basis: calc(100% - 180px);
  max-width: 268px;
  min-height: 54px;
  font-size: 24px;
  text-transform: uppercase;
}

.dscart-item__form .form-weight {
  align-self: flex-start;
  max-width: 164px;
  width: 100%;
  font-size: 20px;
  line-height: 30px;
  text-align: center;
  background: #FDF1F5;
  border-radius: 30px;
  
}

.dscart-item__form .form-counter {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 110px;
}

.dscart-item__form .form-counter input,
.dscart-item__form .form-counter button {
  font-size: 25px;
  font-weight: 600;
  text-align: center;
}

.dscart-item__form .form-counter input::-webkit-outer-spin-button,
.dscart-item__form .form-counter input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.dscart-item__form .form-counter button {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  color: #fff;
  background: #000;
  border-radius: 50%;
}

.dscart-item__form .form-price {
  font-size: 25px;
  font-weight: 600;
  letter-spacing: .04em;
  white-space: nowrap;
  margin-left: auto;
}

.dscart-item__form button[name="remove"] {
  order: 1;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  background-color: #FFCAE1;
  background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.72036 1.0127L13.4204 12.7127M1.01318 12.7137L12.7132 1.01374' stroke='%23000'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  border-radius: 50%;
}

.cart-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100px;
  border-top: 1px solid #FFCAE1;
}

.cart-total__count {
  font-size: 22px;
}

.cart-total__price {
  font-size: 25px;
  font-weight: 600;
  letter-spacing: .04em;
  white-space: nowrap;
}

.cart-form {
  background: #FDF1F5;
  padding-top: 40px;
  padding-bottom: 50px;
}

.cart-form__title {
  font-size: 27px;
  margin-bottom: 35px;
}

.cart-form form {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 25px 15px;
}

.cart-form .form-content {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 20px 15px;
}

.cart-form .form-content input {
  width: calc((100% - 30px) / 3);
  height: 66px;
  font-size: 20px;
  background: #fff;
  border: 1px solid #000;
  border-radius: 50px;
  padding: 20px 27px;
  box-sizing: border-box;
  flex-shrink: 0;
}


.cart-form .form-content input[name="time"],
.cart-form .form-content input[name="date"] {
  
  
}

.cart-form .form-content input[name="time"] {
  max-width: 151px;
}

.cart-form .form-content input[name="addr"] {
  flex-grow: 1;
}

.cart-form .form-policy {
  max-width: 352px;
  line-height: 1;
}

.cart-form .form-policy span {
  font-size: 15px;
}

.cart-form .form-policy a {
  text-decoration: underline;
}

.cart-form .form-button {
  flex-basis: calc(100% - 367px);
  max-width: 330px;
  margin-left: auto;
}

.cart-form .form-button .button {
  width: 100%;
  background: #FFCAE1;
  border-color: #FFCAE1;
}

.cart-form ::-webkit-input-placeholder {
  color: #B5BBC2;
}

.cart-form ::-moz-placeholder {
  color: #B5BBC2;
}

.cart-form ::-ms-input-placeholder {
  color: #B5BBC2;
}

.cart-form ::placeholder {
  color: #B5BBC2;
}

.hidden {
  display: none !important;
}

.jGrowl-notification {
  padding: 20px 10px;
}

.jGrowl-message {
  font-size: 16px;
}

@media screen and (max-width: 980px) {
  .home-page .header-cart {
    order: -2;
    max-width: 50px;
  }
  .popup-item.fancybox__content {
    
    flex-wrap: wrap;
    max-width: calc(100% - 16px);
    padding: 20px 20px 25px;
  }
  .popup-item__img,
  .popup-item__meta {
    width: 100%;
  }
  .popup-item fieldset label::after {
    top: 8px;
  }
  #cart.fancybox__content > .carousel__button.is-close {
    top: 25px;
    left: 10px;
  }
  #cart > [class^="cart-"] {
    padding-inline: 14px;
  }
  .cart-title {
    height: 91px;
    font-size: 40px;
    padding-top: 22px;
  }
  .cart-count {
    font-size: 16px;
    top: 42px;
    right: 14px;
  }
  .cart-delivery {
    font-size: 15px;
  }
  .cart-items {
    padding-block: 15px;
  }
  .dscart-item {
    align-items: flex-start;
    gap: 20px;
    padding-block: 15px;
  }
  .dscart-item__img {
    max-width: 137px;
    aspect-ratio: 137 / 129;
  }
  .dscart-item__form form {
    display: grid;
    grid-template-areas: "title title" "weight weight" "counter price";
    gap: 12px;
  }
  .dscart-item__form .form-title {
    grid-area: title;
    max-width: 100%;
    min-height: 0;
    font-size: 18px;
    padding-right: 35px;
  }
  .dscart-item__form .form-weight {
    grid-area: weight;
    max-width: 110px;
    font-size: 13px;
    line-height: 22px;
    margin-bottom: 4px;
  }
  .dscart-item__form .form-counter {
    grid-area: counter;
    width: 96px;
  }
  .dscart-item__form .form-counter input {
    font-size: 20px;
  }
  .dscart-item__form .form-price {
    grid-area: price;
  }
  .dscart-item__form button[name="remove"] {
    width: 20px;
    height: 20px;
    background-size: 55%;
    position: absolute;
    top: 15px;
    right: 0;
    z-index: 1;
  }
  .cart-total {
    height: 64px;
  }
  .cart-total__count {
    font-size: 18px;
  }
  .cart-form {
    padding-inline: 34px !important;
    padding-top: 30px;
    padding-bottom: 35px;
  }
  .cart-form__title {
    font-size: 18px;
    margin-bottom: 20px;
  }
  .cart-form form {
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
  }
  .cart-form .form-content {
    gap: 20px 15px;
    margin-bottom: 10px;
  }
  .cart-form .form-content input {
    flex-basis: 100%;
    height: 55px;
    font-size: 18px;
    padding: 16px 27px;
  }
  .cart-form .form-content input[name="date"],
  .cart-form .form-content input[name="time"] {
    width: 100%;
    max-width: 100%;
  }
  input[type="date"]:not(.filled)::before,
  input[type="time"]:not(.filled)::before {
    padding: 16px 27px;
  }
  .cart-form .form-policy,
  .cart-form .form-button {
    flex-basis: 100%;
    max-width: 100%;
    margin: 0;
  }
}

@media screen and (max-width: 640px) {
  #fast-order .form-input {
    flex-basis: 100%;
    max-width: unset;
  }
}

@media screen and (min-width: 981px) {
  :root {
    --padding: 50px;
  }
  .lg-hidden {
    display: none !important;
  }
  .popup-item.fancybox__content {
    gap: 60px;
  }
  .popup-item__meta-title {
    font-size: 35px;
    margin-bottom: 20px;
  }
  .popup-item__meta-desc {
    font-size: 20px;
    margin-bottom: 25px;
  }
  .popup-item fieldset {
    gap: 14px;
  }
  .popup-item fieldset label {
    gap: 15px;
  }
  .popup-item fieldset label::before {
    width: 31px;
    height: 31px;
  }
  .popup-item fieldset label::after {
    width: 19px;
    height: 19px;
    top: 6px;
    left: 6px;
  }
  .popup-item .form-counter input {
    font-size: 25px;
  }
  .popup-item.fancybox__content > .carousel__button.is-close {
    color: #000;
    top: 27px;
    right: 27px;
  }
  .popup-item.fancybox__content > .carousel__button.is-close,
  .popup-item.fancybox__content > .carousel__button.is-close svg {
    width: 27px;
    height: 27px;
  }
}

@-webkit-keyframes fast {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-20px);
  }
  50% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes fast {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateX(-20px);
  }
  50% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}

.cart-message {
  width: 100%;
  height: 100%;
  margin: 0;
  background-color: var(--fancybox-bg, rgba(24, 24, 27, 0.92));
  border-radius: 0;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 1;
}

.cart-message .jGrowl-message {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  max-width: 480px;
  min-height: 200px;
  font-size: 16px;
  text-align: center;
  color: #000;
  background-color: #FDF1F5;
  border-radius: 30px;
  padding: 32px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.cart-message .msg-title {
  font-size: 35px;
  line-height: 1;
  margin-bottom: 35px;
}

.dscart-item__img img {
  max-width: 100%;
  vertical-align: middle;
}

.fancybox__content *:hover {
  outline: none !important;
}

@media screen and (max-width: 769px) {
  .dscart-item__form .form-counter {
    grid-area: counter;
    width: 96px;
  }
  .dscart-item__form .form-counter input {
    font-size: 20px;
  }
}

body {
  opacity: 1 !important;
}

.root {
  width: 100%;
  min-height: 100vh;
  max-width: 100%;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  opacity: 0;
}

.loaded .root {
  opacity: 1;
}

.main {
  flex-grow: 1;
  padding: 2.5rem 0;
}

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

.swiper-pagination {
  font-size: 0;
  line-height: 0;
  display: flex;
  column-gap: 0.625rem;
  align-items: center;
  justify-content: center;
}

.swiper-pagination-bullet {
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  cursor: pointer;
  background-color: transparent;
  border: 1px solid var(--blue);
  transform: rotate(45deg);
  flex-shrink: 0;
}

.swiper-pagination-bullet-active {
  background-color: var(--blue);
}

.line {
  padding-top: 0.375rem;
  height: 6.25rem;
  background-color: var(--blue);
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-weight: 300;
  font-size: 2.5rem;
  line-height: 3.75rem;
  font-family: var(--font-secondary);
  color: white;
  white-space: nowrap;
}

.line__main {
  animation: run 20s linear infinite;
}

@media (min-width: 1240px) {
  .line {
    font-size: 4.1875rem;
    line-height: 5rem;
  }
}

@keyframes run {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-1683.35px);
  }
}


/* /assets/v2/fonts/fonts.css */

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila6136-3865-4662-b739-393639356131/CormorantGaramond-it.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3362-3039-4338-a433-346466643132/CormorantGaramond-it.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3536-6630-4139-a430-396661653430/CormorantGaramond-it.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3165-6166-4334-a366-396330636466/CormorantGaramond-it.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3031-6238-4066-b864-313134656664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3262-3936-4533-b163-666239343664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3463-3533-4837-b633-383830346661/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3063-6466-4966-b238-363862663838/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3031-6238-4066-b864-313134656664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3262-3936-4533-b163-666239343664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3463-3533-4837-b633-383830346661/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3063-6466-4966-b238-363862663838/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3031-6238-4066-b864-313134656664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3262-3936-4533-b163-666239343664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3463-3533-4837-b633-383830346661/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3063-6466-4966-b238-363862663838/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* /assets/v2/fonts/beatrix-alias.css */

@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: italic;
  font-weight: 300 800;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila6136-3865-4662-b739-393639356131/CormorantGaramond-it.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: italic;
  font-weight: 300 800;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3362-3039-4338-a433-346466643132/CormorantGaramond-it.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: italic;
  font-weight: 300 800;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3536-6630-4139-a430-396661653430/CormorantGaramond-it.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: italic;
  font-weight: 300 800;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3165-6166-4334-a366-396330636466/CormorantGaramond-it.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3031-6238-4066-b864-313134656664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3262-3936-4533-b163-666239343664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3463-3533-4837-b633-383830346661/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3063-6466-4966-b238-363862663838/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3031-6238-4066-b864-313134656664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3262-3936-4533-b163-666239343664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3463-3533-4837-b633-383830346661/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3063-6466-4966-b238-363862663838/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3031-6238-4066-b864-313134656664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3262-3936-4533-b163-666239343664/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3463-3533-4837-b633-383830346661/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Beatrix Antiqua';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://static.tildacdn.com/tila3063-6466-4966-b238-363862663838/CormorantGaramond-no.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* /assets/v2/v2.css */


:root {
  --v2-ink: var(--blue, #011A2E);
  --v2-ink-hover: var(--blue-hover, #012e52);
  --v2-paper: var(--beige, #F2F1EC);
  --v2-accent: var(--yellow, #FFB800);
  --v2-muted: #5d6270;
  --v2-line: rgba(1, 26, 46, .12);
  --v2-radius: 2px;
  --v2-ease: cubic-bezier(.2, .7, .2, 1);
  --v2-section-y: clamp(3rem, 7vw, 6.5rem);
  --v2-bar-h: 0px;
}



:root {
  --font-secondary: 'Cormorant Garamond', 'Beatrix Antiqua', Georgia, 'Times New Roman', serif;
  --font-primary: 'Roboto Flex', Arial, sans-serif;
}
h1, h2, h3, h4, .h1, .h2, .h3, .h4 { font-weight: 500; letter-spacing: .03em; }
.header__lead { font-size: clamp(1.5rem, 1.25rem + 1vw, 2rem); font-weight: 500; letter-spacing: .05em; }
.reviews__person { font-size: 1.5rem; font-weight: 600; }
.advantages__title { font-size: 1.2rem; font-weight: 600; letter-spacing: .03em; }
.service-item__header, .service-item__title { font-size: 1.5rem; font-weight: 600; line-height: 1.15; }
.line { font-weight: 500; font-style: italic; }

.header-burger, .preview__lead, .sorter-control__header, .sorter-control__content, .service-item__label {
  font-family: var(--font-primary);
  letter-spacing: .06em;
}



html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  padding-bottom: var(--v2-bar-h);
}
::selection { background: var(--v2-ink); color: #fff; }

h2, .h2 {
  letter-spacing: .06em;
  font-size: clamp(1.375rem, 1.1rem + 1.2vw, 2.125rem);
  line-height: 1.15;
}

p, .reviews__text, .advantages__text {
  line-height: 1.6;
}


a:focus-visible, button:focus-visible, [tabindex]:focus-visible {
  outline: 2px solid var(--v2-accent);
  outline-offset: 3px;
}



.service-item {
  transition: transform .5s var(--v2-ease), box-shadow .5s var(--v2-ease);
  will-change: transform;
}
.service-item__media {
  overflow: hidden;
  aspect-ratio: 1 / 1;
  background: #e9e7e0;
}
.service-item__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 1.2s var(--v2-ease);
}
.service-item__title { letter-spacing: .02em; }
.service-item__price {
  display: inline-block;
  font-variant-numeric: tabular-nums;
}
@media (hover: hover) {
  .service-item:hover { transform: translateY(-4px); box-shadow: 0 18px 40px -24px rgba(1, 26, 46, .45); }
  .service-item:hover .service-item__media img { transform: scale(1.05); }
}


.swiper-pagination-bullet {
  width: 10px; height: 10px;
  margin: 0 7px !important;
  position: relative;
}
.swiper-pagination-bullet::after {
  content: ""; position: absolute; inset: -12px;
}



.partners img {
  filter: grayscale(1) contrast(.9);
  opacity: .75;
  transition: filter .4s, opacity .4s;
}
@media (hover: hover) {
  .partners img:hover { filter: none; opacity: 1; }
}



.advantages__media { overflow: hidden; }
.advantages__media img { transition: transform 1.4s var(--v2-ease); }
@media (hover: hover) {
  .advantages__item:hover .advantages__media img { transform: scale(1.04); }
}



.line__text { letter-spacing: .02em; }



.reviews__item {
  border: 1px solid var(--v2-line);
  transition: border-color .3s;
}
.reviews__person { letter-spacing: .02em; }



.btn, .button {
  transition: background-color .25s, color .25s, transform .25s var(--v2-ease);
}
.btn:active, .button:active { transform: scale(.98); }



.v2-reveal {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .8s var(--v2-ease), transform .8s var(--v2-ease);
  transition-delay: var(--v2-delay, 0s);
}
.v2-reveal.v2-in { opacity: 1; transform: none; }



.eva-messenger-widget { display: none !important; }

.v2-contact {
  position: fixed;
  z-index: 900;
  font-family: var(--font-primary, Arial, sans-serif);
}
.v2-contact a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  text-decoration: none;
  color: #fff;
  -webkit-tap-highlight-color: transparent;
}
.v2-contact svg { width: 22px; height: 22px; flex: none; fill: currentColor; }
.v2-contact .v2-max {
  font-weight: 800;
  font-size: .75rem;
  letter-spacing: .02em;
  width: 22px; height: 22px;
  border: 2px solid currentColor;
  border-radius: 6px;
  display: grid; place-items: center;
  line-height: 1;
}


@media (max-width: 767.98px) {
  :root { --v2-bar-h: calc(60px + env(safe-area-inset-bottom, 0px)); }
  .v2-contact {
    left: 0; right: 0; bottom: 0;
    height: var(--v2-bar-h);
    padding-bottom: env(safe-area-inset-bottom, 0px);
    display: grid;
    grid-template-columns: 1.3fr 1fr 1fr;
    background: var(--v2-ink);
    box-shadow: 0 -8px 24px -12px rgba(1, 26, 46, .5);
    transform: translateY(0);
    transition: transform .35s var(--v2-ease);
  }
  .v2-contact.v2-hidden { transform: translateY(100%); }
  .v2-contact a {
    font-size: .9375rem;
    font-weight: 600;
    letter-spacing: .01em;
    border-left: 1px solid rgba(255, 255, 255, .14);
  }
  .v2-contact a:first-child { border-left: 0; background: var(--v2-accent); color: var(--v2-ink); }
  .v2-contact a:active { filter: brightness(.92); }
  .v2-contact .v2-label-long { display: none; }
}


@media (min-width: 768px) {
  .v2-contact {
    right: 24px; bottom: 24px;
    display: flex; flex-direction: column; gap: 10px;
  }
  .v2-contact a {
    width: 54px; height: 54px;
    border-radius: 50%;
    background: var(--v2-ink);
    box-shadow: 0 10px 24px -10px rgba(1, 26, 46, .6);
    transition: transform .3s var(--v2-ease), background-color .3s;
  }
  .v2-contact a span:not(.v2-max) { display: none; }
  .v2-contact a:first-child { background: var(--v2-accent); color: var(--v2-ink); }
  .v2-contact a:hover { transform: translateY(-3px); background: var(--v2-ink-hover); }
  .v2-contact a:first-child:hover { background: #ffc633; }
}



.header__logotype {
  display: block;
  flex: 0 0 auto;
  width: clamp(112px, 30vw, 190px);
  line-height: 0;
}
.header__logotype img { width: 100%; height: auto; display: block; }



img.v2-missing-icon { display: none !important; }
img.v2-missing { visibility: hidden; }
.v2-missing-slot { background: var(--v2-paper); min-height: 120px; }



.footer a { transition: opacity .25s; }
@media (hover: hover) { .footer a:hover { opacity: .7; } }



@media (max-width: 767.98px) {
  .container { padding-left: 16px; padding-right: 16px; }

  .header { padding-bottom: 1.75rem; }
  .header__main { margin-bottom: 1.5rem; }
  .header__phone { font-weight: 600; }
  .header__lead { letter-spacing: .04em; }
  .header__button .btn { width: 100%; min-height: 52px; }

  .services, .partners, .advantages, .reviews, .portfolio, .offer {
    scroll-margin-top: 12px;
  }
  .service-item__title { font-size: 1.125rem; line-height: 1.25; }

  .line__text { font-size: clamp(1.75rem, 9vw, 2.5rem); }

  .advantages__title { font-size: 1.0625rem; line-height: 1.25; }
  .advantages__content { padding: 1.25rem .75rem; }

  .reviews__item { padding: 1.5rem 1.25rem; }
  .reviews__text { font-size: .9375rem; }

  
  .header-burger { min-height: 44px; min-width: 44px; }
  .footer a, .form-policy a, .footer__item a {
    display: inline-flex; align-items: center; min-height: 44px;
  }
  .header__logotype { width: clamp(104px, 30vw, 140px); }

  
  input, select, textarea { font-size: 16px !important; }

  
  html, body { overflow-x: clip; }
}



@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .v2-reveal { opacity: 1; transform: none; transition: none; }
  .service-item, .service-item__media img, .advantages__media img, .v2-contact, .v2-contact a { transition: none; }
}





.header--base { padding: 12px 0; border-bottom: 1px solid var(--v2-line); position: sticky; top: 0; z-index: 850; background: #fff; }
.header--base .header__main { display: flex; align-items: center; gap: 16px; margin: 0; }
.header--base .header__media { flex: 1 1 auto; display: flex; justify-content: center; }
.header--base .header__phone { white-space: nowrap; color: var(--v2-ink); text-decoration: none; font-weight: 600; }
.header--base .header__address { display: flex; align-items: center; gap: 8px; font-size: .8125rem; line-height: 1.25; color: var(--v2-muted); }
@media (max-width: 1023.98px) {
  .header--base .header__address { display: none; }
}
@media (max-width: 767.98px) {
  .header--base .header__contact { display: none; }   
  .header--base .header__media { justify-content: flex-start; }
}


.header-cart { position: relative; display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; cursor: pointer; font-size: 0; color: var(--v2-ink); }
.header-cart__icon { display: inline-flex; width: 26px; height: 26px; }
.header-cart__icon svg { width: 100%; height: 100%; }
.header-cart > span { font-size: 0; }
.header-cart__count {
  position: absolute; top: 4px; right: 2px;
  min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px;
  background: var(--v2-accent); color: var(--v2-ink);
  font: 700 11px/18px var(--font-primary); text-align: center;
}
.header-cart__count:empty, .header-cart[data-v2-empty] .header-cart__count { background: var(--v2-paper); color: var(--v2-muted); }



.primary { padding: 20px 0 var(--v2-section-y); }
.primary__row { display: grid; gap: 28px; }
.primary__media { position: relative; overflow: hidden; background: var(--v2-paper); aspect-ratio: 4 / 3; }
.primary__media .swiper, .primary__media .swiper-wrapper, .primary__media .swiper-slide, .primary__image, .primary__image picture { height: 100%; }
.primary__image img { width: 100%; height: 100%; object-fit: cover; }
.primary__header {
  font-family: var(--font-secondary); font-weight: 500; text-transform: uppercase;
  font-size: clamp(1.75rem, 1.2rem + 2.6vw, 3.25rem); line-height: 1.06; letter-spacing: .03em;
  margin: 0 0 18px;
}
.primary__header span { display: block; font-style: italic; text-transform: none; letter-spacing: .01em; color: #33506a; }
.primary__text { font-size: 1rem; line-height: 1.65; color: #233041; white-space: pre-line; }
.primary__footer { margin-top: 28px; padding-top: 24px; border-top: 1px solid var(--v2-line); }
.primary__title { font: 600 .8125rem/1.3 var(--font-primary); letter-spacing: .12em; text-transform: uppercase; color: var(--v2-muted); margin-bottom: 14px; }
.primary__services { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.primary-item { display: flex; align-items: center; gap: 10px; padding: 12px 14px; background: var(--v2-paper); min-height: 56px; }
.primary-item__media { flex: none; width: 28px; height: 28px; display: grid; place-items: center; }
.primary-item__icon img { max-width: 28px; max-height: 28px; width: auto; height: auto; }
.primary-item__text, .primary-item__text strong { font: 500 .875rem/1.3 var(--font-primary); }
.primary-item:has(.v2-missing-icon) .primary-item__media { display: none; }
@media (min-width: 1024px) {
  .primary__row { grid-template-columns: 1.05fr 1fr; gap: 56px; align-items: center; }
  .primary__media { aspect-ratio: 5 / 6; }
  .primary__services { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}



.section-beige { background: var(--v2-paper); padding: var(--v2-section-y) 0; }
.section-white { background: #fff; padding: var(--v2-section-y) 0; }
.heading { margin-bottom: 28px; text-align: center; }
.heading__title, .heading-line__title, .heading-line > *:first-child {
  font-family: var(--font-secondary); font-weight: 500; text-transform: uppercase;
  font-size: clamp(1.625rem, 1.2rem + 1.6vw, 2.5rem); line-height: 1.1; letter-spacing: .05em;
}
.heading__text { margin-top: 10px; color: var(--v2-muted); line-height: 1.55; }
.heading-line { display: flex; align-items: center; gap: 16px; margin-bottom: 28px; }
.heading-line::after { content: ""; flex: 1; height: 1px; background: var(--v2-line); }



.menus { display: grid; gap: 12px; max-width: 860px; margin: 0 auto; }
.menu-item { background: #fff; border: 1px solid var(--v2-line); transition: box-shadow .3s, border-color .3s; }
.menu-item.open { border-color: rgba(1, 26, 46, .28); box-shadow: 0 18px 40px -28px rgba(1, 26, 46, .5); }
.menu-item__header {
  display: grid; grid-template-columns: 1fr auto; grid-template-areas: "title price" "wrap arrow";
  gap: 6px 12px; align-items: center; padding: 18px 18px 16px; cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.menu-item__title { grid-area: title; font: 600 1.375rem/1.15 var(--font-secondary); letter-spacing: .02em; }
.menu-item__wrap { grid-area: wrap; }
.menu-item__weight { display: flex; gap: 6px; font-size: .8125rem; color: var(--v2-muted); }
.menu-item__weight strong { color: var(--v2-ink); font-weight: 600; }
.menu-item__price { grid-area: price; display: flex; align-items: center; gap: 8px; justify-self: end; }
.menu-item__value { font: 700 1.125rem/1 var(--font-primary); white-space: nowrap; font-variant-numeric: tabular-nums; }
.menu-item__icon { display: none; }
.menu-item__arrow { grid-area: arrow; justify-self: end; width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: var(--v2-paper); transition: transform .3s var(--v2-ease), background-color .3s; }
.menu-item__arrow svg { width: 12px; height: 12px; }
.menu-item.open .menu-item__arrow { transform: rotate(180deg); background: var(--v2-ink); color: #fff; }
.menu-item.open .menu-item__arrow svg path { stroke: #fff; }
.menus-item__sections { padding: 0 18px 18px; }
.menu-section { padding-top: 16px; }
.menu-section + .menu-section { border-top: 1px dashed var(--v2-line); margin-top: 14px; }
.menu-section__title { font: 600 .75rem/1.3 var(--font-primary); letter-spacing: .14em; text-transform: uppercase; color: var(--v2-muted); margin-bottom: 8px; }
.menu-section__item { display: flex; align-items: baseline; gap: 10px; padding: 7px 0; font-size: .9375rem; line-height: 1.4; }
.menu-section__item span:first-child { flex: 1; }
.menu-section__item span:last-child { flex: none; color: var(--v2-muted); font-variant-numeric: tabular-nums; white-space: nowrap; }
.menu-section__item span:first-child::after { content: ""; } 
.menu-section__buttons { display: flex; gap: 10px; align-items: center; margin-top: 18px; }
.menu-section__buttons .btn { flex: 1; min-height: 48px; }
.btn-download { display: grid; place-items: center; width: 48px; height: 48px; border: 1px solid var(--v2-line); color: var(--v2-ink); }
.btn-download svg { width: 18px; height: 18px; }
.btn-outline { background: transparent; border: 1px solid var(--v2-ink); color: var(--v2-ink); }
@media (hover: hover) { .btn-outline:hover { background: var(--v2-ink); color: #fff; } }
@media (min-width: 768px) {
  .menu-item__header { grid-template-columns: 1fr auto auto auto; grid-template-areas: "title wrap price arrow"; padding: 22px 26px; gap: 20px; }
  .menus-item__sections { padding: 0 26px 26px; columns: 2; column-gap: 40px; }
  .menu-section { break-inside: avoid; }
  .menu-section + .menu-section { border-top: 0; margin-top: 0; }
  .menu-section__buttons { column-span: all; }
}



.service-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.custom-service { position: relative; background: var(--v2-paper); display: flex; flex-direction: column; }
.custom-service__media { aspect-ratio: 5 / 4; overflow: hidden; background: #e9e7e0; }
.custom-service__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--v2-ease); }
.custom-service__title { padding: 12px 12px 2px; font: 600 1.125rem/1.2 var(--font-secondary); }
.custom-service__price { padding: 0 12px 14px; font-size: .875rem; color: var(--v2-muted); }
@media (min-width: 768px) { .service-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; } }
@media (min-width: 1240px) { .service-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (hover: hover) { .custom-service:hover .custom-service__media img { transform: scale(1.05); } }

.hide { display: none !important; }


.primary__media:has(img.v2-missing) { display: none; }
.primary__row:has(.primary__media img.v2-missing) { grid-template-columns: 1fr; }


.menu-item__arrow svg { display: none; }
.menu-item__arrow::before {
  content: ""; width: 8px; height: 8px; margin-top: -4px;
  border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
}
.menu-item.open .menu-item__arrow { color: #fff; }
.header-cart[data-v2-empty] .header-cart__count { display: none; }



.contacts { display: grid; gap: 32px; padding: 28px 0 var(--v2-section-y); }
.contacts__header { font-family: var(--font-secondary); font-weight: 500; text-transform: uppercase; font-size: clamp(1.875rem, 1.3rem + 2.4vw, 3rem); line-height: 1.05; letter-spacing: .03em; margin: 0 0 22px; }
.contacts__header span { display: block; font-style: italic; text-transform: none; color: #33506a; }
.contacts__primary { list-style: none; padding: 0; margin: 0 0 24px; display: grid; gap: 6px; }
.contacts__primary a { font: 600 1.375rem/1.3 var(--font-primary); color: var(--v2-ink); text-decoration: none; display: inline-flex; min-height: 44px; align-items: center; }
.contacts__primary li + li a { font-size: 1.0625rem; font-weight: 500; }
.contacts__group { padding: 18px 0; border-top: 1px solid var(--v2-line); }
.contacts__title { font: 600 .75rem/1.3 var(--font-primary); letter-spacing: .14em; text-transform: uppercase; color: var(--v2-muted); margin-bottom: 10px; }
.contacts__address { display: grid; gap: 6px; line-height: 1.5; }
.contacts__social { display: flex; gap: 10px; padding-top: 6px; }
.contact-item { width: 44px; height: 44px; display: grid; place-items: center; background: var(--v2-paper); color: var(--v2-ink); }
.contact-item svg { width: 20px; height: 20px; fill: currentColor; }
.contacts__form { background: var(--v2-paper); padding: 24px 18px; }
.contacts__form-header { font: 500 1.75rem/1.1 var(--font-secondary); text-transform: uppercase; letter-spacing: .04em; margin-bottom: 18px; }
.contacts__field { margin-bottom: 12px; }
.contacts__button .btn { width: 100%; min-height: 52px; }
.contacts__notice { margin-top: 12px; font-size: .8125rem; color: var(--v2-muted); line-height: 1.45; }
.contacts__notice a { color: inherit; }
@media (min-width: 1024px) {
  .contacts { grid-template-columns: 1fr 1fr; gap: 56px; align-items: start; padding-top: 48px; }
  .contacts__form { padding: 36px; }
}


.field--border input, .field--border textarea, .contacts__field input, .contacts__field textarea {
  width: 100%; box-sizing: border-box; border: 0; border-bottom: 1px solid rgba(1, 26, 46, .3);
  background: transparent; padding: 12px 2px; font: 400 1rem/1.4 var(--font-primary); color: var(--v2-ink);
  border-radius: 0; transition: border-color .25s;
}
.field--border input:focus, .field--border textarea:focus { outline: none; border-bottom-color: var(--v2-ink); }
.field--border textarea { resize: vertical; min-height: 96px; }



.ai-search-block { background: var(--v2-paper); padding: var(--v2-section-y) 0; }
.ai-search-block__grid { display: grid; gap: 28px; }
.ai-search-block h2 { font-family: var(--font-secondary); margin: 0 0 14px; }
.ai-search-block p { color: #233041; line-height: 1.65; margin: 0 0 14px; }
.ai-search-block__facts { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.ai-search-block__facts li { position: relative; padding-left: 18px; line-height: 1.5; }
.ai-search-block__facts li::before { content: ""; position: absolute; left: 0; top: .6em; width: 7px; height: 7px; background: var(--v2-accent); }
.ai-search-block__faq { display: grid; gap: 10px; }
.ai-search-block details { background: #fff; border: 1px solid var(--v2-line); }
.ai-search-block summary { list-style: none; cursor: pointer; padding: 16px 48px 16px 18px; position: relative; font: 600 1rem/1.35 var(--font-primary); }
.ai-search-block summary::-webkit-details-marker { display: none; }
.ai-search-block summary::after { content: ""; position: absolute; right: 20px; top: 50%; width: 8px; height: 8px; margin-top: -6px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .3s var(--v2-ease); }
.ai-search-block details[open] summary::after { transform: rotate(-135deg); margin-top: -2px; }
.ai-search-block details > div { padding: 0 18px 16px; }
.ai-search-block details p { margin: 0; color: var(--v2-muted); }
@media (min-width: 1024px) { .ai-search-block__grid { grid-template-columns: 1fr 1fr; gap: 56px; } }
.contact-item svg { display: none; }
.contact-item::after { content: "VK"; font: 700 .875rem/1 var(--font-primary); letter-spacing: .04em; }


dg-social-widget { display: none !important; }



.catalog-grid { display: grid; grid-template-columns: 1fr; gap: 16px; }
@media (min-width: 640px) { .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } }
@media (min-width: 1240px) { .catalog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; } }
.box-item { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--v2-line); transition: box-shadow .4s var(--v2-ease), transform .4s var(--v2-ease); }
.box-item__media { aspect-ratio: 4 / 3; overflow: hidden; background: var(--v2-paper); }
.box-item__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s var(--v2-ease); }
.box-item__content { display: flex; flex-direction: column; gap: 12px; padding: 16px 16px 18px; flex: 1; }
.box-item__title { font: 600 1.375rem/1.15 var(--font-secondary) !important; letter-spacing: .02em; text-transform: none; margin: 0; }
.box-item__vars { display: grid; gap: 6px; margin-top: auto; }
.box-item__var { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 8px 0; border-top: 1px dashed var(--v2-line); }
.box-item__size { font-size: .9375rem; color: var(--v2-muted); }
.box-item__price { font: 700 1.125rem/1 var(--font-primary); font-variant-numeric: tabular-nums; white-space: nowrap; }
.box-item .btn { width: 100%; min-height: 48px; margin-top: 4px; }
@media (hover: hover) {
  .box-item:hover { box-shadow: 0 18px 40px -26px rgba(1, 26, 46, .45); transform: translateY(-3px); }
  .box-item:hover .box-item__media img { transform: scale(1.04); }
}




.services__nav {
  width: 48px; height: 48px; border-radius: 50%;
  display: inline-grid; place-items: center; padding: 0;
  background: #fff; border: 1px solid var(--v2-line); color: var(--v2-ink);
  cursor: pointer; transition: background-color .25s, color .25s, border-color .25s;
}
.services__nav svg { display: none; }
.services__nav::before { content: ""; width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; }
.services__nav--prev::before { transform: rotate(135deg); margin-left: 4px; }
.services__nav--next::before { transform: rotate(-45deg); margin-right: 4px; }
.services__nav:hover { background: var(--v2-ink); color: #fff; border-color: var(--v2-ink); }
.services__nav + .services__nav { margin-left: 8px; }
.services__nav.swiper-button-disabled { opacity: .35; pointer-events: none; }


.service-item__header { min-height: 3.5em; display: flex; align-items: center; justify-content: center; }
@media (min-width: 1024px) {
  .service-item__header, .service-item__title { font-size: 1.3rem; line-height: 1.15; }
}


.v2-popup-seen #delayed-popup, .v2-popup-seen #popup-overlay { display: none !important; }
#delayed-popup { max-width: calc(100vw - 32px); }
#delayed-popup img { max-width: 100%; height: auto; }


.v2-nw { white-space: nowrap; }

html { -webkit-hyphens: manual; hyphens: manual; }


@media (max-width: 767.98px) {
  .header:not(.header--base) .header__main { gap: 12px; }
  .header:not(.header--base) .header__address { font-size: .8125rem; line-height: 1.3; max-width: 9.5rem; }
  .header:not(.header--base) .header__address i { display: none; }
  .header:not(.header--base) .header__cart { margin-left: auto; }
}
.header__cart { display: flex; align-items: center; }



.btn, .button {
  position: relative;
  display: inline-flex; align-items: center; justify-content: center;
  text-align: center;
  padding-left: 2.75rem; padding-right: 2.75rem;
}
.btn > span, .button > span { display: block; text-align: center; }
.btn > svg, .btn > i, .button > svg, .button > i {
  position: absolute; right: 1.1rem; top: 50%; transform: translateY(-50%);
  margin: 0 !important; pointer-events: none;
}
.btn > svg { width: 22px; height: auto; }
.btn-primary > svg path, .btn-primary > i svg path { stroke: currentColor; }
@media (max-width: 767.98px) {
  .btn, .button { padding-left: 2.25rem; padding-right: 2.25rem; }
}


.header__cart { min-width: 0 !important; width: auto !important; }
@media (max-width: 767.98px) {
  .header:not(.header--base) .header__main { column-gap: 6px !important; }
}


@media (max-width: 1000px) {
  #delayed-popup {
    width: calc(100vw - 32px) !important; max-width: 520px !important; box-sizing: border-box;
    padding: 44px 20px 24px !important;
    max-height: calc(100dvh - var(--v2-bar-h) - 32px); overflow-y: auto;
    top: calc(50% - var(--v2-bar-h) / 2) !important;
  }
  #delayed-popup .popup-container { align-items: stretch; gap: 0; }
  #delayed-popup .right { width: 100%; align-items: center; text-align: center; background-size: 100% !important; }
  #delayed-popup .popup-header {
    font-size: clamp(1.75rem, 8.6vw, 2.75rem) !important; line-height: 1.04 !important;
    margin: 0 0 14px; text-align: center; overflow-wrap: normal; word-break: keep-all;
  }
  #delayed-popup .popup-desc { margin: 0 0 18px; text-align: center; }
  #delayed-popup .right .primary__button { width: 100% !important; margin: 0 0 24px !important; display: flex !important; justify-content: center; }
  #delayed-popup .right .primary__button .btn { width: 100%; }
  #delayed-popup .left { width: 100%; padding: 0 12px 12px 0; box-sizing: border-box; }
  #delayed-popup .left img { display: block; width: 100%; box-shadow: 12px 12px 0 #8C967E !important; }
  #close-popup { top: 4px !important; right: 14px !important; font-size: 40px !important; line-height: 1; padding: 4px 8px; }
}



@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .header--base {
    background: rgba(255, 255, 255, .72);
    -webkit-backdrop-filter: saturate(160%) blur(14px); backdrop-filter: saturate(160%) blur(14px);
    border-bottom-color: rgba(1, 26, 46, .08);
  }
  
  #popup-overlay, .fancybox__backdrop {
    background: rgba(1, 26, 46, .35) !important;
    -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
  }
}


.services__main { position: relative; }
@media (max-width: 1023.98px) {
  .services__nav { display: none !important; }          
  .services__pagination { margin-top: 18px; }
}
@media (min-width: 1024px) {
  
  .services__nav {
    position: absolute; z-index: 5; top: calc(var(--v2-card-media, 300px) / 2); transform: translateY(-50%);
    width: 52px; height: 52px; margin: 0 !important;
    background: rgba(255, 255, 255, .62); border: 1px solid rgba(255, 255, 255, .7);
    -webkit-backdrop-filter: blur(10px) saturate(150%); backdrop-filter: blur(10px) saturate(150%);
    box-shadow: 0 8px 24px -12px rgba(1, 26, 46, .45);
  }
  .services__nav--prev { left: -18px; }
  .services__nav--next { right: -18px; }
  .services__nav:hover { background: rgba(1, 26, 46, .82); border-color: transparent; color: #fff; }
}


.service-item { background: transparent !important; overflow: hidden; }
.service-item__media { aspect-ratio: 4 / 5; }
.service-item__content {
  position: absolute !important; z-index: 10;
  left: 12px; right: 12px; bottom: 12px;
  padding: 14px 12px 16px !important;
  background: rgba(255, 255, 255, .8);
  -webkit-backdrop-filter: blur(12px) saturate(150%); backdrop-filter: blur(12px) saturate(150%);
  border: 1px solid rgba(255, 255, 255, .6);
  box-shadow: 0 10px 28px -18px rgba(1, 26, 46, .55);
  display: flex; flex-direction: column; align-items: center; gap: 8px;
}
.service-item__header {
  margin: 0 !important; padding: 0 !important; min-height: 0 !important;
  background: transparent !important;
}
.service-item__header, .service-item__title { font-size: 1.25rem !important; line-height: 1.15 !important; }
.service-item__price { font-size: 1.125rem !important; line-height: 1 !important; }
@media (min-width: 1024px) {
  .service-item__content { left: 14px; right: 14px; bottom: 14px; }
  .service-item__header, .service-item__title { font-size: 1.3rem !important; }
}

.service-item .v2-missing-slot { background: #e9e6dd; }


.swiper-pagination { display: flex; justify-content: center; align-items: center; gap: 8px; }
.swiper-pagination-bullet {
  width: 8px !important; height: 8px !important; margin: 0 !important;
  border: 0 !important; border-radius: 4px !important; transform: none !important;
  background: rgba(1, 26, 46, .22) !important; opacity: 1 !important;
  transition: width .35s var(--v2-ease), background-color .35s;
}
.swiper-pagination-bullet::before { display: none !important; }
.swiper-pagination-bullet-active { width: 26px !important; background: var(--v2-ink) !important; }


.v2-contact a { gap: 8px; }
.v2-contact .v2-msg img { display: block; width: 44px; height: 44px; }
@media (max-width: 767.98px) {
  :root { --v2-bar-h: calc(84px + env(safe-area-inset-bottom, 0px)); }
  .v2-contact {
    left: 12px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    height: 60px; padding: 6px 8px 6px 6px !important; box-sizing: border-box;
    display: flex !important; align-items: center; gap: 6px;
    border-radius: 30px;
    background: rgba(255, 255, 255, .72);
    -webkit-backdrop-filter: blur(16px) saturate(170%); backdrop-filter: blur(16px) saturate(170%);
    border: 1px solid rgba(255, 255, 255, .7);
    box-shadow: 0 14px 34px -16px rgba(1, 26, 46, .45), 0 1px 0 rgba(255, 255, 255, .6) inset;
  }
  .v2-contact a { border-left: 0 !important; height: 100%; }
  .v2-contact a.v2-call {
    flex: 1; border-radius: 24px; background: var(--v2-ink) !important; color: #fff !important;
    font: 600 1rem/1 var(--font-primary); letter-spacing: .02em;
  }
  .v2-contact a.v2-call svg { width: 18px; height: 18px; }
  .v2-contact a.v2-msg { flex: none; width: 48px; border-radius: 50%; background: transparent !important; }
  .v2-contact a.v2-msg span { display: none; }
  .v2-contact a.v2-msg:active { transform: scale(.94); }
}
@media (min-width: 768px) {
  .v2-contact a.v2-msg { background: transparent !important; box-shadow: 0 10px 24px -12px rgba(1, 26, 46, .55); padding: 0; overflow: hidden; }
  .v2-contact a.v2-msg img { width: 54px; height: 54px; }
  .v2-contact a.v2-call { background: var(--v2-ink) !important; color: #fff !important; }
  .v2-contact a.v2-call:hover { background: var(--v2-ink-hover) !important; }
}


.v2-contact a.v2-call {
  background: linear-gradient(135deg, #23c26b 0%, #13a356 100%) !important;
  color: #fff !important;
  position: relative; overflow: visible;
  box-shadow: 0 8px 20px -8px rgba(19, 163, 86, .6);
}
.v2-contact a.v2-call:hover { background: linear-gradient(135deg, #2bd477 0%, #16b25e 100%) !important; }
.v2-contact a.v2-call svg { transform-origin: 50% 50%; animation: v2-ring 3.2s ease-in-out infinite; }
.v2-contact a.v2-call::after {
  content: ""; position: absolute; inset: 0; border-radius: inherit;
  box-shadow: 0 0 0 0 rgba(35, 194, 107, .55);
  animation: v2-pulse 3.2s ease-out infinite; pointer-events: none;
}
@keyframes v2-ring {
  0%, 62%, 100% { transform: rotate(0); }
  66% { transform: rotate(-16deg); } 70% { transform: rotate(14deg); }
  74% { transform: rotate(-12deg); } 78% { transform: rotate(10deg); }
  82% { transform: rotate(-6deg); } 86% { transform: rotate(0); }
}
@keyframes v2-pulse {
  0%, 60% { box-shadow: 0 0 0 0 rgba(35, 194, 107, .55); }
  100% { box-shadow: 0 0 0 14px rgba(35, 194, 107, 0); }
}
@media (prefers-reduced-motion: reduce) {
  .v2-contact a.v2-call svg, .v2-contact a.v2-call::after { animation: none; }
}


input::placeholder, textarea::placeholder { color: rgba(1, 26, 46, .45) !important; opacity: 1; }
input:focus::placeholder, textarea:focus::placeholder { color: rgba(1, 26, 46, .3) !important; }


svg.ico-svg { width: 1em; height: 1em; fill: currentColor; }
img.ico-svg { width: auto; height: 100%; }

.social-link { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; }
.social-link i {
  width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center;
  background: #0077FF !important; color: #fff; flex: none;
  transition: transform .25s var(--v2-ease), background-color .25s;
}
.social-link i svg { width: 26px; height: 26px; }
.social-link:hover i { transform: translateY(-2px); background: #1a85ff !important; }

.contact-item { background: #0077FF; color: #fff; border-radius: 50%; }
.contact-item::after { content: none; }
.contact-item svg { display: block !important; width: 24px; height: 24px; }

.header__address i { display: inline-flex; width: 16px; height: 16px; color: var(--v2-muted); }
.header__address i svg { width: 100%; height: 100%; }


#cart {
  width: min(560px, 100vw) !important; max-width: 100vw; box-sizing: border-box;
  padding: 0 !important; background: #fff !important; color: var(--v2-ink) !important;
  font-family: var(--font-primary) !important;
  display: grid; grid-template-columns: 1fr auto; align-content: start;
}
#cart * { font-family: inherit; }
#cart > [class^="cart-"] { padding-left: 24px !important; padding-right: 24px !important; margin: 0 !important; }
#cart .cart-title {
  grid-column: 1; padding-top: 28px !important; padding-right: 64px !important;
  font: 500 2rem/1.05 var(--font-secondary) !important; text-transform: uppercase; letter-spacing: .04em;
}
#cart .cart-count {
  grid-column: 2; align-self: end; padding: 0 64px 4px 0 !important;
  font-size: .8125rem !important; color: var(--v2-muted); white-space: nowrap;
}
#cart .cart-delivery {
  grid-column: 1 / -1; margin: 18px 24px 0 !important; padding: 12px 14px !important;
  background: var(--v2-paper) !important; color: var(--v2-ink) !important;
  font-size: .875rem !important; line-height: 1.45; text-align: left;
}
#cart .cart-items { grid-column: 1 / -1; padding-top: 18px !important; padding-bottom: 18px !important; border-bottom: 1px solid var(--v2-line) !important; text-align: center; color: var(--v2-muted); font-size: .9375rem; }
#cart .cart-item { display: grid; grid-template-columns: 64px 1fr auto; gap: 12px; align-items: center; padding: 12px 0; border-bottom: 1px dashed var(--v2-line); text-align: left; color: var(--v2-ink); }
#cart .cart-item:last-child { border-bottom: 0; }
#cart .cart-item__img img, #cart .cart-item__img { width: 64px; height: 64px; object-fit: cover; background: var(--v2-paper); }
#cart .cart-total { grid-column: 1 / -1; display: flex !important; justify-content: space-between; align-items: baseline; gap: 12px; padding-top: 16px !important; padding-bottom: 20px !important; border: 0 !important; }
#cart .cart-total__count { font-size: .9375rem !important; color: var(--v2-muted); }
#cart .cart-total__price { font: 700 1.5rem/1 var(--font-primary) !important; white-space: nowrap; }
#cart .cart-form { grid-column: 1 / -1; background: #fff !important; padding-top: 22px !important; padding-bottom: 28px !important; border-top: 1px solid var(--v2-line); }
#cart .cart-form__title { font: 500 1.5rem/1.15 var(--font-secondary) !important; text-transform: uppercase; letter-spacing: .03em; margin-bottom: 10px; }
#cart .form-content { display: grid; gap: 4px; }
#cart .form-content input {
  width: 100%; box-sizing: border-box; height: auto !important;
  border: 0 !important; border-bottom: 1px solid rgba(1, 26, 46, .3) !important; border-radius: 0 !important;
  background: transparent !important; padding: 14px 2px !important; margin: 0 !important;
  font: 400 1rem/1.4 var(--font-primary) !important; color: var(--v2-ink) !important; box-shadow: none !important;
}
#cart .form-content input:focus { outline: none; border-bottom-color: var(--v2-ink) !important; }
#cart .form-policy { margin: 16px 0 !important; font-size: .8125rem !important; color: var(--v2-muted) !important; line-height: 1.45; text-align: left; }
#cart .form-policy a { color: inherit; }
#cart .form-button .button, #cart button[type=submit] {
  width: 100%; height: auto !important; min-height: 54px; border: 0 !important; border-radius: 0 !important;
  background: var(--v2-ink) !important; color: #fff !important; cursor: pointer;
  font: 600 1rem/1 var(--font-primary) !important; letter-spacing: .08em; text-transform: uppercase;
}
#cart .form-button .button:hover { background: var(--v2-ink-hover) !important; }

#cart.fancybox__content > .carousel__button.is-close, .fancybox__content > .f-button.is-close-btn {
  top: 22px !important; right: 18px !important; left: auto !important; width: 40px !important; height: 40px !important;
  background: var(--v2-paper) !important; border-radius: 50% !important; color: var(--v2-ink) !important;
}
#cart.fancybox__content > .carousel__button.is-close svg { width: 16px !important; height: 16px !important; stroke: currentColor !important; filter: none !important; }


.btn, .button, .btn.btn-send, .btn-primary, .btn-outline, .btn-md, .btn-xl {
  justify-content: center !important; text-align: center !important;
  padding-left: 2.75rem !important; padding-right: 2.75rem !important;
}
@media (max-width: 767.98px) {
  .btn, .button, .btn.btn-send, .btn-primary, .btn-outline, .btn-md, .btn-xl { padding-left: 2.25rem !important; padding-right: 2.25rem !important; }
}


.portfolio__nav { display: flex; flex-direction: column; align-items: center; gap: 14px; background: transparent !important; padding: 8px 0 28px !important; }
.portfolio__title { font: 600 .6875rem/1 var(--font-primary) !important; letter-spacing: .22em; text-transform: uppercase; color: var(--v2-muted); }
.portfolio__control, .sorter-control { width: 100%; }
.sorter-control__header { display: none !important; }            
.sorter-control__content {
  position: static !important; display: flex !important; flex-wrap: wrap; justify-content: center; gap: 8px;
  background: transparent !important; box-shadow: none !important; border: 0 !important; padding: 0 !important;
  opacity: 1 !important; visibility: visible !important; transform: none !important; max-height: none !important;
}
.sorter-control__item {
  margin: 0 !important; padding: 11px 18px !important; min-height: 40px; box-sizing: border-box;
  display: inline-flex; align-items: center; cursor: pointer; white-space: nowrap;
  border: 1px solid rgba(1, 26, 46, .18) !important; border-radius: 999px;
  font: 500 .75rem/1 var(--font-primary) !important; letter-spacing: .14em; text-transform: uppercase;
  color: var(--v2-ink) !important; background: rgba(255, 255, 255, .6) !important;
  transition: background-color .25s, color .25s, border-color .25s;
}
.sorter-control__item:hover { border-color: var(--v2-ink) !important; }
.sorter-control__item.active { background: var(--v2-ink) !important; color: #fff !important; border-color: var(--v2-ink) !important; }
@media (max-width: 767.98px) {
  
  .sorter-control__content {
    flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; scroll-snap-type: x proximity;
    margin: 0 -16px !important; padding: 2px 16px 6px !important; scrollbar-width: none;
    -webkit-mask-image: linear-gradient(to right, #000 85%, transparent); mask-image: linear-gradient(to right, #000 85%, transparent);
  }
  .sorter-control__content::-webkit-scrollbar { display: none; }
  .sorter-control__item { scroll-snap-align: start; padding: 10px 16px !important; }
}


h1 .v2-hy, h2 .v2-hy, h3 .v2-hy, .h2 .v2-hy, .h1 .v2-hy,
[class*="__header"] .v2-hy, [class*="__title"] .v2-hy, .line .v2-hy, .popup-header .v2-hy {
  position: relative; top: -.14em;
}
.menu-item__title .v2-hy, .box-item__title .v2-hy, .reviews__person .v2-hy, .contacts__header span .v2-hy { top: 0; }


.ai-search-block { padding: clamp(3.5rem, 8vw, 6.5rem) 0 !important; }
.ai-search-block__grid { align-items: start; }
.ai-search-block h2 {
  font-size: clamp(1.625rem, 1.25rem + 1.5vw, 2.375rem) !important; line-height: 1.12; letter-spacing: .05em;
  margin-bottom: 20px !important; max-width: 16ch;
}
.ai-search-block > .container > div:first-child > p { font-size: 1.0625rem; line-height: 1.7; color: #33414f; max-width: 52ch; }
.ai-search-block__facts { gap: 0 !important; margin-top: 24px !important; border-top: 1px solid var(--v2-line); max-width: 52ch; }
.ai-search-block__facts li { padding: 14px 0 14px 34px !important; border-bottom: 1px solid var(--v2-line); font-size: .9375rem; color: #33414f; }
.ai-search-block__facts li::before { width: 18px !important; height: 1px !important; top: 1.45em !important; background: var(--v2-ink) !important; }
.ai-search-block__faq { gap: 0 !important; align-content: start; border-top: 1px solid rgba(1, 26, 46, .22); }
.ai-search-block details { background: transparent !important; border: 0 !important; border-bottom: 1px solid rgba(1, 26, 46, .22) !important; }
.ai-search-block summary {
  padding: 22px 56px 22px 0 !important; min-height: 0 !important;
  font: 500 1.0625rem/1.4 var(--font-primary) !important; letter-spacing: .005em; color: var(--v2-ink);
  transition: color .25s;
}
.ai-search-block summary:hover { color: #33506a; }
.ai-search-block summary::after { content: none !important; }
.ai-search-block summary::before {
  content: ""; position: absolute; right: 4px; top: 50%; width: 32px; height: 32px; margin-top: -16px;
  border: 1px solid rgba(1, 26, 46, .25); border-radius: 50%;
  background:
    linear-gradient(var(--v2-ink), var(--v2-ink)) center / 12px 1.5px no-repeat,
    linear-gradient(var(--v2-ink), var(--v2-ink)) center / 1.5px 12px no-repeat;
  transition: transform .35s var(--v2-ease), background-color .25s, border-color .25s;
}
.ai-search-block details[open] summary::before { transform: rotate(45deg); border-color: var(--v2-ink); }
.ai-search-block details > div { padding: 0 56px 24px 0 !important; }
.ai-search-block details p { font-size: .9688rem; line-height: 1.65; color: var(--v2-muted) !important; }
@media (min-width: 1024px) { .ai-search-block__grid { grid-template-columns: 1fr 1.05fr !important; gap: 80px !important; } }


.services__nav { z-index: 60 !important; }


.nav {
  background:
    radial-gradient(120% 80% at 100% 0%, rgba(51, 80, 106, .55) 0%, rgba(1, 26, 46, 0) 60%),
    var(--v2-ink) !important;
  color: #fff;
  display: flex; flex-direction: column;
}
.nav__header { padding: 14px 0 !important; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.nav__wrap { display: flex; align-items: center; justify-content: space-between; min-height: 48px; }
.nav__logo img { height: 26px; width: auto; display: block; }
.nav__close {
  position: relative; width: 44px !important; height: 44px !important; border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, .28) !important; background: transparent !important; cursor: pointer;
}
.nav__close::before, .nav__close::after {
  content: "" !important; position: absolute; left: 50% !important; top: 50% !important;
  width: 16px !important; height: 1.5px !important; background: #fff !important; margin: 0 !important;
  border: 0 !important; transform-origin: center;
}
.nav__close::before { transform: translate(-50%, -50%) rotate(45deg) !important; }
.nav__close::after { transform: translate(-50%, -50%) rotate(-45deg) !important; }
.nav__close > * { display: none; }

.nav__body { flex: 1; overflow-y: auto; padding: 18px 0 8px !important; }
.nav__primary ul, .nav__secondary ul { list-style: none; margin: 0; padding: 0; }
.nav__primary ul { counter-reset: v2nav; }
.nav__primary li { counter-increment: v2nav; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.nav__primary a {
  display: flex; align-items: baseline; gap: 14px; padding: 14px 0 !important; color: #fff !important; text-decoration: none;
  font: 500 clamp(1.5rem, 1.1rem + 2.2vw, 2.25rem)/1.12 var(--font-secondary) !important; letter-spacing: .01em;
  transition: color .25s, transform .35s var(--v2-ease);
}
.nav__primary a::before {
  content: counter(v2nav, decimal-leading-zero);
  flex: none; width: 1.75rem; font: 500 .6875rem/1 var(--font-primary); letter-spacing: .14em; color: var(--v2-accent);
  transform: translateY(-.35em);
}
.nav__primary a:hover { color: #e8dcc0 !important; transform: translateX(4px); }
.nav__secondary { margin-top: 26px; }
.nav__secondary ul { display: flex; flex-wrap: wrap; gap: 8px 22px; }
.nav__secondary a {
  color: rgba(255, 255, 255, .78) !important; text-decoration: none;
  font: 500 .75rem/1 var(--font-primary) !important; letter-spacing: .18em; text-transform: uppercase;
  display: inline-flex; align-items: center; min-height: 44px;
}
.nav__secondary a:hover { color: #fff !important; }

.nav__footer { padding: 18px 0 calc(22px + env(safe-area-inset-bottom, 0px)) !important; border-top: 1px solid rgba(255, 255, 255, .1); }
.nav__footer .container { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.v2-nav-contacts { display: flex; align-items: center; gap: 16px; }
.v2-nav-phone { color: #fff !important; text-decoration: none; font: 600 1.125rem/1 var(--font-primary); letter-spacing: .01em; }
.v2-nav-msgs { display: flex; gap: 10px; }
.v2-nav-msgs img { width: 40px; height: 40px; display: block; }
.nav__social .social-link span { display: none; }


.nav__primary li, .nav__secondary, .nav__footer { opacity: 0; transform: translateY(10px); transition: opacity .45s var(--v2-ease), transform .45s var(--v2-ease); }
.nav-open .nav__primary li, .nav-open .nav__secondary, .nav-open .nav__footer { opacity: 1; transform: none; }
.nav-open .nav__primary li:nth-child(1) { transition-delay: .06s; } .nav-open .nav__primary li:nth-child(2) { transition-delay: .1s; }
.nav-open .nav__primary li:nth-child(3) { transition-delay: .14s; } .nav-open .nav__primary li:nth-child(4) { transition-delay: .18s; }
.nav-open .nav__primary li:nth-child(5) { transition-delay: .22s; } .nav-open .nav__primary li:nth-child(6) { transition-delay: .26s; }
.nav-open .nav__primary li:nth-child(7) { transition-delay: .3s; } .nav-open .nav__secondary { transition-delay: .34s; }
.nav-open .nav__footer { transition-delay: .38s; }
@media (prefers-reduced-motion: reduce) {
  .nav__primary li, .nav__secondary, .nav__footer { opacity: 1; transform: none; transition: none; }
}

.nav-open .v2-contact { opacity: 0; pointer-events: none; }


@media (max-width: 767.98px) {
  form .btn, form button[type=submit], .offer .btn-send, .quick-order .btn-send, .contacts__button .btn { width: 100% !important; margin-left: 0 !important; margin-right: 0 !important; }
  .offer [class*="__button"], .quick-order [class*="__button"] { padding-left: 0 !important; padding-right: 0 !important; width: 100%; }
}


.nav__primary a { padding: 11px 0 !important; font-size: clamp(1.375rem, 1.1rem + 1.4vw, 1.75rem) !important; }
.nav__secondary { margin-top: 18px; }
@media (min-width: 1024px) {
  .nav__body { display: flex; align-items: center; padding: 24px 0 !important; }
  .nav__body > .container {
    width: 100%; max-width: 1180px; margin: 0 auto;
    display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 96px; align-items: start;
  }
  .nav__primary a { font-size: clamp(1.5rem, 1rem + 1vw, 2rem) !important; padding: 12px 0 !important; }
  .nav__secondary { margin-top: 0; padding-top: 10px; border-left: 1px solid rgba(255, 255, 255, .1); padding-left: 40px; }
  .nav__secondary ul { flex-direction: column; gap: 0; }
  .nav__secondary li { border-bottom: 1px solid rgba(255, 255, 255, .08); }
  .nav__secondary a { min-height: 56px; font-size: .8125rem !important; letter-spacing: .2em; }
  .nav__secondary::after {
    content: "Санкт-Петербург и Ленинградская область\A catering-eva@yandex.com"; white-space: pre-line; display: block;
    margin-top: 28px; color: rgba(255, 255, 255, .55); font: 400 .875rem/1.7 var(--font-primary);
  }
  .nav__header .container, .nav__footer .container { max-width: 1180px; margin: 0 auto; }
}


.v2-contact a.v2-call {
  background: linear-gradient(135deg, #efe1c3 0%, #d6bd8a 100%) !important; color: var(--v2-ink) !important;
  box-shadow: 0 8px 20px -10px rgba(150, 120, 60, .55);
}
.v2-contact a.v2-call:hover { background: linear-gradient(135deg, #f4e8cf 0%, #dcc596 100%) !important; }
.v2-contact a.v2-call::after { animation-name: v2-pulse-champ; }
@keyframes v2-pulse-champ {
  0%, 60% { box-shadow: 0 0 0 0 rgba(214, 189, 138, .65); }
  100% { box-shadow: 0 0 0 14px rgba(214, 189, 138, 0); }
}


@media (min-width: 1024px) { .nav__primary a { padding: 10px 0 !important; } }


.quick-order {
  background: rgba(1, 26, 46, .4) !important;
  -webkit-backdrop-filter: blur(10px) saturate(140%); backdrop-filter: blur(10px) saturate(140%);
}
.quick-order__inner { min-height: 100%; display: flex; align-items: center; justify-content: center; padding: 24px 16px !important; box-sizing: border-box; }
.quick-order__container { width: 100%; max-width: 760px !important; margin: 0 auto; padding: 0 !important; }
.quick-order__modal {
  position: relative; background: #fff !important; padding: clamp(28px, 5vw, 56px) clamp(20px, 5vw, 64px) !important;
  box-shadow: 0 40px 80px -40px rgba(1, 26, 46, .55);
}
.quick-order__header { text-align: center; margin-bottom: 28px !important; }
.quick-order__title {
  font-family: var(--font-secondary) !important; font-weight: 500 !important; text-transform: uppercase;
  font-size: clamp(1.75rem, 1.3rem + 1.6vw, 2.5rem) !important; letter-spacing: .05em; line-height: 1.08; margin: 0 0 10px !important;
}
.quick-order__subtitle { color: var(--v2-muted); font-size: .9375rem; }
.quick-order__form { background: transparent !important; padding: 0 !important; box-shadow: none !important; }
.quick-order__main { display: grid !important; grid-template-columns: 1fr; gap: 6px 32px; }
@media (min-width: 640px) { .quick-order__main { grid-template-columns: 1fr 1fr; } }
.quick-order__field { margin: 0 !important; }
.quick-order .field input, .quick-order .field textarea {
  width: 100%; border: 0 !important; border-bottom: 1px solid rgba(1, 26, 46, .3) !important; border-radius: 0 !important;
  background: transparent !important; padding: 14px 2px !important; font: 400 1rem/1.4 var(--font-primary) !important; color: var(--v2-ink);
}
.quick-order .field input:focus { outline: none; border-bottom-color: var(--v2-ink) !important; }
.quick-order__footer { display: flex !important; flex-direction: column; gap: 16px; margin-top: 28px !important; padding: 0 !important; }
.quick-order__text { font-size: .8125rem !important; line-height: 1.5; color: var(--v2-muted) !important; text-align: center; max-width: none !important; }
.quick-order__text a { color: inherit; }
.quick-order__button, .quick-order__button .btn { width: 100% !important; }
.quick-order__button .btn { min-height: 56px; }
.quick-order__close {
  position: fixed !important; top: 18px !important; right: 18px !important; left: auto !important; z-index: 5;
  width: 48px !important; height: 48px !important; border-radius: 50%; background: rgba(255, 255, 255, .92) !important;
  border: 0 !important; box-shadow: 0 8px 24px -12px rgba(1, 26, 46, .5); cursor: pointer;
}
.quick-order__close::before, .quick-order__close::after {
  content: "" !important; position: absolute !important; left: 50% !important; top: 50% !important; width: 16px !important; height: 1.5px !important;
  background: var(--v2-ink) !important; margin: 0 !important; border: 0 !important;
}
.quick-order__close::before { transform: translate(-50%, -50%) rotate(45deg) !important; }
.quick-order__close::after { transform: translate(-50%, -50%) rotate(-45deg) !important; }
.quick-order__close > * { display: none; }


.reviews { padding: var(--v2-section-y) 0 !important; overflow: hidden; }
.reviews__header { text-align: center; margin-bottom: clamp(28px, 4vw, 48px) !important; }
.reviews .swiper-slide { height: auto !important; opacity: .18; transition: opacity .5s var(--v2-ease), transform .5s var(--v2-ease); transform: scale(.94); }
.reviews .swiper-slide-active { opacity: 1; transform: none; }
.reviews__item {
  height: 100%; box-sizing: border-box; display: flex !important; flex-direction: column-reverse; justify-content: flex-end; gap: 26px;
  background: #fff !important; border: 0 !important; padding: clamp(36px, 5vw, 64px) clamp(24px, 5vw, 72px) clamp(32px, 4vw, 48px) !important;
  box-shadow: 0 30px 60px -44px rgba(1, 26, 46, .45);
  position: relative;
}
.reviews__item::before {
  content: "“"; position: absolute; left: clamp(18px, 3vw, 40px); top: clamp(4px, 1vw, 14px);
  font: 500 clamp(5rem, 4rem + 4vw, 8rem)/1 var(--font-secondary); color: #d6bd8a; pointer-events: none;
}
.reviews__info::before { display: none !important; }
.reviews__info { display: flex; align-items: center; gap: 14px; padding-top: 22px; border-top: 1px solid var(--v2-line); margin: 0 !important; }
.reviews__person {
  font: 600 .8125rem/1 var(--font-primary) !important; letter-spacing: .18em !important; text-transform: uppercase; color: var(--v2-ink) !important;
}
.reviews__text {
  position: relative; z-index: 1; margin: 0 !important;
  font: 500 clamp(1.1875rem, 1rem + .7vw, 1.5rem)/1.55 var(--font-secondary) !important; color: #1b2a38 !important; letter-spacing: .005em;
}
.reviews__nav, .reviews .btn-nav {
  width: 52px !important; height: 52px !important; border-radius: 50% !important; display: grid !important; place-items: center;
  background: rgba(255, 255, 255, .7) !important; border: 1px solid rgba(1, 26, 46, .1) !important;
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  box-shadow: 0 10px 24px -14px rgba(1, 26, 46, .5); color: var(--v2-ink); cursor: pointer; z-index: 5;
  transition: background-color .25s, color .25s;
}
.reviews .btn-nav svg, .reviews__nav svg { width: 14px !important; height: 14px !important; }
.reviews .btn-nav:hover, .reviews__nav:hover { background: var(--v2-ink) !important; color: #fff; }
@media (max-width: 767.98px) {
  .reviews__nav, .reviews .btn-nav { display: none !important; }
  .reviews .swiper-slide { opacity: .35; }
}


.portfolio__header { text-align: center; margin-bottom: 18px !important; }
.portfolio__nav, .portfolio__nav::before, .portfolio__nav::after, .portfolio__control::before, .portfolio__control::after { background: transparent !important; }
.portfolio__nav::before, .portfolio__nav::after { display: none !important; }
.portfolio__nav { margin-left: auto !important; margin-right: auto !important; max-width: 100% !important; }


.ai-search-block h2 { max-width: none !important; text-wrap: balance; }


.footer { padding: clamp(48px, 7vw, 88px) 0 calc(28px + var(--v2-bar-h)) !important; }
.footer__primary { display: grid !important; grid-template-columns: 1fr; gap: 36px; align-items: start; text-align: left !important; }
.footer__info { display: flex; flex-direction: column; gap: 16px; align-items: flex-start !important; }
.footer__logo { display: block; width: clamp(150px, 16vw, 210px); }
.footer__logo i { display: block; } .footer__logo img { width: 100%; height: auto; display: block; }
.footer__logo--sm { display: none !important; } .footer__logo--xl { display: block !important; }
.v2-fcol__title { font: 600 .6875rem/1 var(--font-primary); letter-spacing: .22em; text-transform: uppercase; color: #d6bd8a; margin-bottom: 18px; }
.v2-fcol ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.v2-fcol li a {
  display: inline-flex; align-items: center; min-height: 34px; color: rgba(255, 255, 255, .82) !important; text-decoration: none;
  font: 400 .9688rem/1.35 var(--font-primary) !important; transition: color .2s;
}
.v2-fcol li a:hover { color: #fff !important; }
.v2-fcol--contacts .footer__contacts { display: grid; gap: 6px; margin: 0 0 18px !important; }
.v2-fcol--contacts .footer__item a { color: #fff !important; text-decoration: none; font: 600 1.25rem/1.3 var(--font-primary) !important; min-height: 0 !important; }
.v2-fcol--contacts .footer__item + .footer__item a { font: 400 .9688rem/1.4 var(--font-primary) !important; color: rgba(255,255,255,.82) !important; }
.v2-fmsgs { display: flex; align-items: center; gap: 10px; margin-bottom: 18px; }
.v2-fmsgs img { width: 40px; height: 40px; display: block; }
.v2-fmsgs .social-link span { display: none; }
.v2-fmsgs .social-link i { width: 40px; height: 40px; }
.v2-fmsgs .social-link i svg { width: 22px; height: 22px; }
.footer__ratings { margin: 0 !important; } .footer__ratings iframe { display: block; border-radius: 6px; }
.footer__secondary {
  display: flex !important; flex-wrap: wrap; justify-content: space-between; gap: 10px 24px;
  margin-top: clamp(36px, 5vw, 64px) !important; padding-top: 22px !important; border-top: 1px solid rgba(255, 255, 255, .12);
  font-size: .8125rem !important; color: rgba(255, 255, 255, .55);
}
.footer__secondary a { color: rgba(255, 255, 255, .7) !important; text-decoration: none; font-size: .8125rem !important; }
.footer__secondary a:hover { color: #fff !important; }
@media (min-width: 640px) { .footer__primary { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1024px) { .footer__primary { grid-template-columns: 1.1fr 1.1fr .8fr 1fr; gap: 48px; } }


.services__pagination { display: block !important; height: auto !important; min-height: 8px; margin-top: 28px !important; position: static !important; }
.services__pagination .swiper-pagination { position: static !important; }

.swiper .v2-reveal, .partners .v2-reveal { opacity: 1 !important; transform: none !important; }


.footer__ratings iframe {
  filter: invert(1) hue-rotate(180deg) brightness(1.05) contrast(.92);
  border-radius: 8px; opacity: .92;
}


.footer__ratings iframe { filter: invert(1) hue-rotate(186deg) saturate(2) brightness(1.95) contrast(.85) !important; opacity: 1; }


.reviews { overflow: visible !important; padding-bottom: calc(var(--v2-section-y) + 12px) !important; }
.reviews__main { position: relative; overflow: hidden; padding: 10px 0 56px; }
.reviews__item {
  max-width: 680px; margin: 0 auto !important; min-height: 0 !important;
  padding: 40px 44px 30px !important; gap: 20px;
}
.reviews__item::before { font-size: 4.5rem !important; left: 24px !important; top: 6px !important; }
.reviews__text { font-size: clamp(1.0625rem, .95rem + .45vw, 1.25rem) !important; line-height: 1.6 !important; }
.reviews__info { padding-top: 16px; justify-content: center; }
.reviews [data-reviews-pagination], .reviews__pagination { position: absolute !important; left: 0; right: 0; bottom: 14px !important; display: flex !important; justify-content: center; }
.reviews .btn-nav svg, .reviews__nav svg { display: none !important; }
.reviews .btn-nav::before, .reviews__nav::before { content: ""; width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; }
.reviews [data-reviews-prev]::before { transform: rotate(135deg); margin-left: 4px; }
.reviews [data-reviews-next]::before { transform: rotate(-45deg); margin-right: 4px; }
.reviews .btn-nav, .reviews__nav { color: var(--v2-ink) !important; }
@media (min-width: 1024px) {
  .reviews [data-reviews-prev] { left: calc(50% - 400px) !important; right: auto !important; }
  .reviews [data-reviews-next] { right: calc(50% - 400px) !important; left: auto !important; }
  .reviews .btn-nav, .reviews__nav { position: absolute !important; top: calc(50% - 28px) !important; transform: translateY(-50%); }
}
@media (max-width: 767.98px) { .reviews__item { padding: 32px 22px 24px !important; } }


.reviews__nav {
  position: absolute !important; top: calc(50% - 28px) !important; transform: translateY(-50%) !important; z-index: 6;
  width: auto !important; height: auto !important; background: none !important; border: 0 !important;
  box-shadow: none !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; display: block !important;
}
.reviews__nav::before { content: none !important; }
.reviews__nav--prev { left: 8px !important; right: auto !important; }
.reviews__nav--next { right: 8px !important; left: auto !important; }
.reviews__nav .btn-nav { position: static !important; transform: none !important; }

.reviews .swiper-wrapper { align-items: center; }
.reviews .swiper-slide { height: auto !important; }
.reviews__item { height: auto !important; }
@media (max-width: 767.98px) { .reviews__nav { display: none !important; } }


.reviews__main { padding-bottom: 8px !important; }
.reviews__pagination { position: relative !important; height: auto !important; margin-top: 22px !important; display: flex !important; justify-content: center; }
.reviews__pagination [data-reviews-pagination], .reviews [data-reviews-pagination] { position: static !important; bottom: auto !important; }
.reviews { padding-bottom: var(--v2-section-y) !important; }


.offer__title { font-family: var(--font-secondary) !important; font-weight: 500 !important; text-transform: uppercase; letter-spacing: .05em; font-size: clamp(1.75rem, 1.3rem + 1.6vw, 2.5rem) !important; line-height: 1.08; }
.offer__subtitle { color: var(--v2-muted); }
.offer__form form { display: grid; grid-template-columns: 1fr; gap: 0 32px; }
@media (min-width: 768px) { .offer__form form { grid-template-columns: 1fr 1fr; } .offer__form { max-width: 42rem !important; } }
.offer__field { margin-bottom: 10px !important; }
.offer__field input, .offer__field textarea {
  width: 100%; border: 0 !important; border-bottom: 1px solid rgba(1, 26, 46, .3) !important; border-radius: 0 !important;
  background: transparent !important; padding: 14px 2px !important; font: 400 1rem/1.4 var(--font-primary) !important; color: var(--v2-ink);
}
.offer__field input:focus { outline: none; border-bottom-color: var(--v2-ink) !important; }
.offer__footer { grid-column: 1 / -1; display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 16px !important; margin-top: 22px !important; }
.offer__text { font-size: .8125rem !important; line-height: 1.5 !important; color: var(--v2-muted) !important; }
.offer__text a { color: inherit !important; }
.offer__button, .offer__button .btn { width: 100% !important; }
.offer__button .btn { min-height: 56px; }
.offer__media img { box-shadow: 0 34px 60px -36px rgba(1, 26, 46, .55); }


.preview .btn-nav {
  width: 48px !important; height: 48px !important; border-radius: 50% !important; display: grid !important; place-items: center;
  background: rgba(255, 255, 255, .75) !important; border: 1px solid rgba(255, 255, 255, .8) !important;
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); box-shadow: 0 10px 24px -14px rgba(1, 26, 46, .5);
  color: var(--v2-ink) !important; cursor: pointer; z-index: 6;
}
.preview .btn-nav svg { display: none !important; }
.preview .btn-nav::before { content: ""; width: 9px; height: 9px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; }
.preview [data-preview-prev]::before { transform: rotate(135deg); margin-left: 4px; }
.preview [data-preview-next]::before { transform: rotate(-45deg); margin-right: 4px; }
.preview .btn-nav:hover { background: var(--v2-ink) !important; color: #fff !important; }


.btn > svg, .btn > i, .button > svg, .button > i {
  position: static !important; transform: none !important; right: auto !important; top: auto !important;
  margin: 0 0 0 .6em !important; flex: none;
}
.btn, .button { gap: 0; }


.reviews .swiper-slide, .reviews .swiper-slide-active { opacity: 1 !important; transform: none !important; height: auto !important; }
.reviews .swiper-wrapper { align-items: stretch !important; }
.reviews__main { overflow: hidden; padding: 6px 4px 10px !important; }
.reviews__item { max-width: none !important; height: 100% !important; padding: 34px 28px 24px !important; gap: 18px; justify-content: space-between !important; box-shadow: 0 22px 44px -34px rgba(1, 26, 46, .45); }
.reviews__item::before { font-size: 3.75rem !important; left: 18px !important; top: 2px !important; }
.reviews__text { font-size: 1.0625rem !important; line-height: 1.6 !important; }
.reviews__info { justify-content: flex-start; }

.reviews__pagination { min-height: 48px; align-items: center; }
.reviews__nav { top: calc(100% + 22px) !important; transform: none !important; }
.reviews__nav--prev { left: calc(50% - 130px) !important; }
.reviews__nav--next { right: calc(50% - 130px) !important; left: auto !important; }
.reviews__main { overflow: visible; }
.reviews .swiper { overflow: hidden; }
@media (max-width: 767.98px) { .reviews__nav { display: none !important; } .reviews__item { padding: 30px 20px 20px !important; } }

.reviews__main { max-width: 1240px !important; width: 100% !important; margin-left: auto !important; margin-right: auto !important; }
.reviews__text br { display: none; }


.services__nav, .reviews .btn-nav, .preview .btn-nav, .quick-order__close, #close-popup {
  --g: 52px;
  width: var(--g) !important; height: var(--g) !important; padding: 0 !important; margin: 0 !important;
  border-radius: 50% !important; display: grid !important; place-items: center !important; line-height: 0 !important;
  background:
    radial-gradient(120% 120% at 30% 15%, rgba(255, 255, 255, .55) 0%, rgba(255, 255, 255, 0) 55%),
    rgba(255, 255, 255, .38) !important;
  -webkit-backdrop-filter: blur(18px) saturate(180%) !important; backdrop-filter: blur(18px) saturate(180%) !important;
  border: 1px solid rgba(255, 255, 255, .65) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .7), inset 0 -1px 0 rgba(1, 26, 46, .06), 0 12px 28px -14px rgba(1, 26, 46, .45) !important;
  color: var(--v2-ink) !important; cursor: pointer; transition: transform .25s var(--v2-ease), background-color .25s, box-shadow .25s;
}
.services__nav:hover, .reviews .btn-nav:hover, .preview .btn-nav:hover {
  background: rgba(1, 26, 46, .78) !important; color: #fff !important; border-color: rgba(255, 255, 255, .25) !important; transform: translateY(-1px);
}
.services__nav:active, .reviews .btn-nav:active, .preview .btn-nav:active { transform: scale(.95); }

.services__nav::before, .reviews .btn-nav::before, .preview .btn-nav::before {
  content: "" !important; display: block; width: 10px !important; height: 10px !important; margin: 0 !important;
  border: 0 !important; border-right: 2px solid currentColor !important; border-bottom: 2px solid currentColor !important;
}
.services__nav--prev::before, .reviews [data-reviews-prev]::before, .preview [data-preview-prev]::before { transform: translateX(2px) rotate(135deg) !important; }
.services__nav--next::before, .reviews [data-reviews-next]::before, .preview [data-preview-next]::before { transform: translateX(-2px) rotate(-45deg) !important; }
.services__nav > *, .reviews .btn-nav > *, .preview .btn-nav > * { display: none !important; }


.reviews__pagination { min-height: 52px; }
.reviews__nav { top: calc(100% + 22px) !important; }
.reviews__nav--prev { left: calc(50% - 132px) !important; }
.reviews__nav--next { right: calc(50% - 132px) !important; }


@media (min-width: 1024px) {
  .ai-search-block__grid { grid-template-columns: 1fr 1fr !important; grid-template-rows: auto 1fr; column-gap: 80px !important; row-gap: 32px !important; }
  .ai-search-block__grid > div:first-child { display: contents; }
  .ai-search-block__grid > div:first-child > h2 { grid-column: 1 / -1; grid-row: 1; max-width: none !important; margin-bottom: 0 !important; }
  .ai-search-block__grid > div:first-child > p { grid-column: 1; grid-row: 2; margin: 0 !important; }
  .ai-search-block__grid > div:first-child > ul { grid-column: 1; grid-row: 3; }
  .ai-search-block__faq { grid-column: 2; grid-row: 2 / 4; }
}




#cart .cart-form__form, #cart .cart-form__form form, #cart .form-content { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
#cart .form-content { display: grid !important; grid-template-columns: 1fr !important; gap: 2px !important; }
@media (min-width: 560px) { #cart .form-content { grid-template-columns: 1fr 1fr !important; column-gap: 24px !important; } }
#cart .form-content input, #cart .form-content input.input-date, #cart .form-content input.input-time, #cart .form-content input.filled {
  width: 100% !important; max-width: none !important; min-width: 0 !important; display: block !important; flex: none !important;
}
#cart .form-content input[type=hidden] { display: none !important; }
#cart .form-button { width: 100% !important; margin: 0 !important; padding: 0 !important; text-align: center !important; display: block !important; }
#cart .form-button .button, #cart button[type=submit] { width: 100% !important; white-space: nowrap !important; padding-left: 1rem !important; padding-right: 1rem !important; }
#cart .cart-total { padding-bottom: 16px !important; min-height: 0 !important; height: auto !important; }
#cart .cart-form__title { margin-bottom: 14px !important; }
#cart .cart-form__title { font-size: clamp(1.25rem, 1.05rem + .7vw, 1.5rem) !important; }
#cart form.ajax_form { display: flex !important; flex-direction: column !important; align-items: stretch !important; }
#cart form.ajax_form > * { width: 100% !important; }
#cart .form-button, #cart .form-button .button, #cart button[type=submit] { max-width: none !important; min-width: 100% !important; width: 100% !important; box-sizing: border-box !important; margin-left: 0 !important; margin-right: 0 !important; }

.services__nav:active, .reviews .btn-nav:active, .preview .btn-nav:active { transform: none; scale: .95; }
@media (min-width: 768px) { .services__nav:active { transform: translateY(-50%) !important; scale: .95; } }

@media (max-width: 767px) { .services__nav, .services__nav.swiper-button-disabled { display: none !important; } }
.v2-hy { position: relative; top: var(--v2-hy-lift, 0) !important; padding: 0 .03em; }

.v2-hy.v2-hy--bar {
  top: 0 !important; color: transparent !important; -webkit-text-fill-color: transparent;
  background-image: linear-gradient(var(--v2-hy-c), var(--v2-hy-c)) !important; background-repeat: no-repeat !important;
  background-size: 100% var(--v2-hy-th) !important; background-position: 0 var(--v2-hy-y) !important;
  padding: 0 .06em; margin: 0 .02em; background-origin: content-box; background-clip: content-box;
}

.reviews__info { padding-left: 0 !important; padding-right: 0 !important; justify-content: center !important; text-align: center !important; }
.reviews__person { text-align: center !important; margin-left: auto !important; margin-right: auto !important; padding-left: .18em; } 

.reviews__text:not(:has(p))::after, .reviews__text > p:last-child::after {
  content: "”"; display: inline-block; height: 0; margin-left: .1em; vertical-align: -.5em;
  font: 500 2.6em/0 var(--font-secondary); color: #d6bd8a; pointer-events: none;
}

.line__text::after { content: "\00a0~"; }


.events { display: grid; gap: 22px; padding: clamp(8px, 2vw, 24px) 0 clamp(48px, 7vw, 96px); }
.events__aside { display: flex; flex-direction: column; gap: 12px; position: relative; z-index: 20; }
.events__title { font: 600 .6875rem/1 var(--font-primary) !important; letter-spacing: .22em; text-transform: uppercase; color: var(--v2-muted); }
.filter { position: relative; }
.filter__control {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 54px; padding: 0 22px; cursor: pointer;
  border: 1px solid var(--v2-line); border-radius: 999px; background: rgba(255, 255, 255, .7);
  -webkit-backdrop-filter: blur(14px) saturate(160%); backdrop-filter: blur(14px) saturate(160%);
  font: 500 1rem/1.2 var(--font-primary); color: var(--v2-ink); transition: border-color .2s, box-shadow .2s;
}
.filter__control::after { content: ""; flex: none; width: 8px; height: 8px; border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: translateY(-3px) rotate(45deg); transition: transform .25s var(--v2-ease); }
.filter.open .filter__control { border-color: var(--v2-ink); box-shadow: 0 14px 30px -20px rgba(1, 26, 46, .5); }
.filter.open .filter__control::after { transform: translateY(2px) rotate(-135deg); }
.filter__content {
  display: none; position: absolute; left: 0; right: 0; top: calc(100% + 8px); padding: 20px; border-radius: 22px;
  background: rgba(255, 255, 255, .92); -webkit-backdrop-filter: blur(20px) saturate(170%); backdrop-filter: blur(20px) saturate(170%);
  border: 1px solid rgba(255, 255, 255, .8); box-shadow: 0 30px 60px -30px rgba(1, 26, 46, .45); max-height: 70vh; overflow: auto;
}
.filter.open .filter__content { display: block; animation: v2-drop .22s var(--v2-ease); }
@keyframes v2-drop { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
.filter__group + .filter__group { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--v2-line); }
.filter__title { font: 600 .6875rem/1 var(--font-primary) !important; letter-spacing: .2em; text-transform: uppercase; color: var(--v2-muted); margin-bottom: 12px; }
.filter__list { display: flex; flex-wrap: wrap; gap: 8px; }
.filter__item {
  padding: 10px 16px; border: 1px solid var(--v2-line); border-radius: 999px; cursor: pointer; background: #fff;
  font: 400 .9375rem/1.1 var(--font-primary); color: var(--v2-ink); transition: background-color .2s, color .2s, border-color .2s;
}
.filter__item:hover { border-color: var(--v2-ink); }
.filter__item.active { background: var(--v2-ink); color: #fff; border-color: var(--v2-ink); }
.events__header { font: 500 clamp(1.75rem, 1.2rem + 2.4vw, 2.75rem)/1.1 var(--font-secondary) !important; letter-spacing: .06em; text-transform: uppercase; margin: 6px 0 0 !important; color: var(--v2-ink); }
.events__row { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0 !important; }
.events-item { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
.events-item.hide, .events-item:has(.v2-missing) { display: none !important; }
.events-item a { display: block; aspect-ratio: 1 / 1; overflow: hidden; background: #e7e4dc; }
.events-item picture, .events-item img { display: block; width: 100%; height: 100%; }
.events-item img { object-fit: cover; transition: transform .6s var(--v2-ease), filter .3s; }
.events-item a:hover img { transform: scale(1.04); }
@media (min-width: 768px) { .events__row { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; } }
@media (min-width: 1024px) {
  .events { grid-template-columns: 280px minmax(0, 1fr); column-gap: 40px; row-gap: 24px; align-items: start; }
  .events__aside { grid-row: 1 / span 2; position: sticky; top: 110px; }
  .events__header, .events__main { grid-column: 2; }
  .filter__content { position: static; display: block; margin-top: 12px; padding: 0; background: transparent; border: 0; box-shadow: none; max-height: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
  .filter__control { display: none; }
}
@media (min-width: 1280px) { .events__row { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

.reviews__text:not(:has(p))::after, .reviews__text > p:last-child::after {
  font-size: 3.75rem !important; vertical-align: -.5em !important; margin-left: .12em !important; line-height: 0 !important; white-space: nowrap; width: 0; overflow: visible;
}

.reviews .reviews__main { display: grid !important; grid-template-columns: minmax(0, 1fr) auto auto auto minmax(0, 1fr); column-gap: 22px; row-gap: 30px; align-items: center; }
.reviews .reviews__main > .swiper { grid-column: 1 / -1; grid-row: 1; min-width: 0; width: 100%; }
.reviews .reviews__main > .reviews__pagination { grid-column: 3; grid-row: 2; margin: 0 !important; padding: 0 !important; position: static !important; }
.reviews .reviews__pagination .swiper-pagination { position: static !important; margin: 0 !important; width: auto !important; transform: none !important; }
.reviews .reviews__main > .reviews__nav { position: static !important; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important; transform: none !important; margin: 0 !important; grid-row: 2; width: auto !important; height: auto !important; }
.reviews .reviews__main > .reviews__nav--prev { grid-column: 2; }
.reviews .reviews__main > .reviews__nav--next { grid-column: 4; }
.reviews .reviews__main > .reviews__nav .btn-nav { --g: 46px; }

.v2-navrow { display: flex; align-items: center; justify-content: center; gap: 22px; margin-top: clamp(20px, 3vw, 32px); }
.v2-navrow .services__pagination { margin: 0 !important; padding: 0 !important; width: auto !important; }
.v2-navrow .services__pagination .swiper-pagination { position: static !important; width: auto !important; margin: 0 !important; transform: none !important; }
.v2-navrow .services__nav { position: static !important; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important; margin: 0 !important; flex: none; --g: 46px; }

.services__nav, .services__nav:hover, .services__nav:active, .services__nav:focus,
.reviews .btn-nav, .reviews .btn-nav:hover, .reviews .btn-nav:active, .reviews .btn-nav:focus { transform: none !important; translate: none !important; }
.services__nav:active, .reviews .btn-nav:active, .preview .btn-nav:active { scale: .94; }
.services__nav:focus:not(:focus-visible), .reviews .btn-nav:focus:not(:focus-visible) { outline: none; }
@media (max-width: 767px) { .v2-navrow { gap: 0; } }

.v2-callpop { position: fixed; right: 92px; bottom: 28px; z-index: 1000; min-width: 260px; padding: 20px 22px; border-radius: 22px;
  background: rgba(255, 255, 255, .9); -webkit-backdrop-filter: blur(20px) saturate(170%); backdrop-filter: blur(20px) saturate(170%);
  border: 1px solid rgba(255, 255, 255, .8); box-shadow: 0 30px 60px -28px rgba(1, 26, 46, .5); display: grid; gap: 10px; animation: v2-drop .22s var(--v2-ease); }
.v2-callpop__label { font: 600 .6875rem/1 var(--font-primary); letter-spacing: .2em; text-transform: uppercase; color: var(--v2-muted); }
.v2-callpop__num { font: 500 1.75rem/1.1 var(--font-secondary); color: var(--v2-ink); text-decoration: none; letter-spacing: .02em; white-space: nowrap; }
.v2-callpop__copy { justify-self: start; padding: 10px 16px; border-radius: 999px; border: 1px solid var(--v2-line); background: #fff; color: var(--v2-ink); font: 500 .875rem/1 var(--font-primary); cursor: pointer; }
.v2-callpop__copy:hover { border-color: var(--v2-ink); }

.v2-invalid { border-color: #b3261e !important; box-shadow: 0 1px 0 #b3261e !important; }
.v2-form-note { grid-column: 1 / -1; margin-top: 14px; padding: 12px 16px; font: 400 .9375rem/1.45 var(--font-primary); border-radius: 12px; }
.v2-form-note.is-ok { background: #eef5ee; color: #1d4d2b; }
.v2-form-note.is-err { background: #fbeeee; color: #7a1f1a; }
.v2-form-note a { color: inherit; text-decoration: underline; }
.v2-toast { position: fixed; left: 50%; top: 18px; z-index: 2000; transform: translate(-50%, -12px); opacity: 0; padding: 12px 20px; border-radius: 999px;
  background: rgba(1, 26, 46, .9); color: #fff; font: 500 .9375rem/1.2 var(--font-primary); box-shadow: 0 18px 40px -20px rgba(1, 26, 46, .6); transition: opacity .3s, transform .3s var(--v2-ease); pointer-events: none; }
.v2-toast.is-in { opacity: 1; transform: translate(-50%, 0); }


.fancybox__slide:has(.popup-item__wrapper) { padding: 12px !important; }
.fancybox__content:has(.popup-item__wrapper) {
  width: min(980px, 100%) !important; max-width: 100% !important; padding: 0 !important; border-radius: 24px; overflow: hidden; background: #fff !important;
  box-shadow: 0 40px 80px -40px rgba(1, 26, 46, .6);
}
.fancybox__content:has(.popup-item__wrapper) > .is-close {
  top: 12px !important; right: 12px !important; width: 44px !important; height: 44px !important; border-radius: 50% !important; color: var(--v2-ink) !important;
  background: rgba(255, 255, 255, .7) !important; -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); box-shadow: 0 8px 22px -12px rgba(1, 26, 46, .5) !important; opacity: 1 !important;
}
.fancybox__content:has(.popup-item__wrapper) > .is-close svg { width: 18px !important; height: 18px !important; stroke: currentColor; stroke-width: 1.6; filter: none !important; }
.popup-item__wrapper { display: grid; grid-template-columns: 1fr; }
.popup-item__img { aspect-ratio: 4 / 3; overflow: hidden; background: #efece5; margin: 0 !important; padding: 0 !important; width: 100% !important; }
.popup-item__img img { width: 100% !important; height: 100% !important; object-fit: cover; display: block; }
.popup-item__meta { padding: 22px 22px 24px !important; display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.popup-item__meta-title { font: 500 clamp(1.5rem, 1.2rem + 1.2vw, 2rem)/1.15 var(--font-secondary) !important; color: var(--v2-ink); letter-spacing: .01em; margin: 0 !important; padding-right: 40px; }
.popup-item__meta-desc ul { margin: 0 !important; padding: 0 !important; list-style: none; display: grid; gap: 8px; }
.popup-item__meta-desc li { position: relative; padding-left: 18px; font: 400 .9375rem/1.45 var(--font-primary); color: #3c4250; }
.popup-item__meta-desc li::before { content: ""; position: absolute; left: 2px; top: .62em; width: 6px; height: 6px; border-radius: 50%; background: #d6bd8a; }
.popup-item__meta-form form { display: grid; gap: 14px; }
.form-radio fieldset { border: 0 !important; margin: 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 8px; }
.form-radio input[type=radio] { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.form-radio label { display: flex; flex-direction: column; gap: 4px; padding: 12px 16px; border: 1px solid var(--v2-line); border-radius: 16px; cursor: pointer; transition: border-color .2s, background-color .2s, color .2s; }
.form-radio label span { font: 400 .875rem/1.2 var(--font-primary); color: var(--v2-muted); }
.form-radio label strong { font: 600 1.0625rem/1.2 var(--font-primary); color: var(--v2-ink); font-variant-numeric: tabular-nums; }
.form-radio input:checked + label { border-color: var(--v2-ink); background: var(--v2-ink); }
.form-radio input:checked + label span { color: rgba(255, 255, 255, .7); }
.form-radio input:checked + label strong { color: #fff; }
.form-radio input:focus-visible + label { outline: 2px solid #d6bd8a; outline-offset: 2px; }
.popup-item__footer { display: flex; align-items: stretch; gap: 10px; }
.form-counter { display: flex; align-items: center; flex: none; border: 1px solid var(--v2-line); border-radius: 999px; padding: 4px; height: 56px; }
.form-counter button { width: 46px; height: 46px; border-radius: 50%; border: 0 !important; background: transparent !important; color: var(--v2-ink) !important; font: 400 1.375rem/1 var(--font-primary) !important; cursor: pointer; display: grid; place-items: center; padding: 0 !important; }
.form-counter button:hover { background: var(--v2-paper, #f2f1ec) !important; }
.form-counter input { width: 34px; text-align: center; border: 0 !important; background: transparent !important; font: 600 1.0625rem/1 var(--font-primary); color: var(--v2-ink); -moz-appearance: textfield; padding: 0 !important; box-shadow: none !important; }
.form-counter input::-webkit-inner-spin-button, .form-counter input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.popup-item__footer .form-button { flex: 1 1 auto; min-width: 0; }
.popup-item__footer .form-button .button {
  width: 100%; height: 56px; border-radius: 999px !important; border: 0 !important; background: var(--v2-ink) !important; color: #fff !important; cursor: pointer;
  display: flex !important; align-items: center; justify-content: center; gap: .35em; padding: 0 22px !important; white-space: nowrap;
  font: 600 .9375rem/1 var(--font-primary) !important; letter-spacing: .04em; text-transform: uppercase; transition: background-color .2s;
}
.popup-item__footer .form-button .button:hover { background: #0b2c47 !important; }
.popup-item__footer .form-button .button i { display: none !important; }
.popup-item__footer .form-button .button span { font-variant-numeric: tabular-nums; }
@media (min-width: 860px) {
  .popup-item__wrapper { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
  .popup-item__img { aspect-ratio: auto; height: 100%; min-height: 520px; }
  .popup-item__meta { padding: 40px 36px 36px !important; justify-content: center; }
}
.popup-item__meta > *, .popup-item__meta-form, .popup-item__meta-form form, .form-radio, .form-radio fieldset, .popup-item__footer { width: auto !important; max-width: 100% !important; min-width: 0 !important; margin-left: 0 !important; margin-right: 0 !important; box-sizing: border-box; }
.form-radio fieldset { min-width: 0 !important; }
@media (max-width: 520px) {
  .form-radio fieldset { grid-template-columns: 1fr 1fr; }
  .form-radio label { padding: 10px 12px; }
  .form-counter { height: 52px; } .form-counter button { width: 40px; height: 42px; } .form-counter input { width: 28px; }
  .popup-item__footer .form-button .button { height: 52px; padding: 0 14px !important; font-size: .8125rem !important; letter-spacing: .02em; }
}

.offer__media:has(img[src*="diploms"]) { display: flex !important; align-items: center; justify-content: center; background: #F2F1EC; padding: clamp(20px, 3vw, 40px) clamp(16px, 3vw, 40px) clamp(20px, 3vw, 40px) clamp(28px, 4.5vw, 72px); box-sizing: border-box; }
.offer__media img[src*="diploms"] { box-shadow: none !important; object-fit: contain !important; width: 100% !important; height: 100% !important; max-height: 720px; }
@media (max-width: 767px) { .offer__media:has(img[src*="diploms"]) { padding: 24px 16px 8px; } .offer__media img[src*="diploms"] { height: auto !important; } }


.venues { display: grid !important; grid-template-columns: 1fr; gap: 20px; margin-top: 8px; }
.venues-item { display: flex !important; flex-direction: column; background: #fff; box-shadow: 0 26px 50px -38px rgba(1, 26, 46, .5); overflow: hidden; width: auto !important; margin: 0 !important; }
.venues-item:not(.active) { display: none !important; }
.venues-item__media { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: #e7e4dc; }
.venues-item__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .6s var(--v2-ease); }
.venues-item__media:hover img { transform: scale(1.03); }
.venues-item__media.v2-missing-slot { display: none !important; }
.venues-item__content { display: flex; flex-direction: column; gap: 14px; padding: 22px 22px 24px; flex: 1 1 auto; }
.venues-item__header { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.venues-item__title { font: 500 clamp(1.375rem, 1.15rem + .8vw, 1.75rem)/1.15 var(--font-secondary) !important; color: var(--v2-ink); }
.venues-item__square { flex: none; font: 600 .75rem/1 var(--font-primary); letter-spacing: .08em; color: var(--v2-muted); white-space: nowrap; }
.venues-item__tags { display: flex; flex-wrap: wrap; gap: 6px; }
.venues-item__tag { padding: 7px 12px; border: 1px solid var(--v2-line); border-radius: 999px; font: 400 .8125rem/1.1 var(--font-primary); color: var(--v2-ink); }
.venues-item__text { font: 400 .9375rem/1.6 var(--font-primary); color: #3c4250; }
.venues-item__text p { margin: 0 0 .6em; }
.venues-item__footer { margin-top: auto; padding-top: 4px; }
.venues-item__link { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border: 1px solid var(--v2-ink); border-radius: 999px; color: var(--v2-ink) !important; text-decoration: none !important; font: 500 .875rem/1 var(--font-primary); transition: background-color .2s, color .2s; }
.venues-item__link::after { content: "↗"; font-size: .95em; }
.venues-item__link:hover { background: var(--v2-ink); color: #fff !important; }
@media (min-width: 768px) { .venues { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; } }
@media (min-width: 1200px) { .venues { grid-template-columns: repeat(3, minmax(0, 1fr)); } }


:root { --v2-r-card: 20px; --v2-r-tile: 14px; --v2-r-panel: 24px; }


.primary__header:not(.adam-page *) { font: 500 clamp(2.125rem, 1.4rem + 2.6vw, 3.25rem)/1.06 var(--font-secondary) !important; letter-spacing: .03em !important; text-transform: uppercase; }
main h2:not([class*="item"]), .root h2:not([class*="item"]), .h2, .advantages__header, .reviews__header, .portfolio__header, .heading__title,
.events__header, .contacts__header, .offer__title, .partners__header, .services__header {
  font-family: var(--font-secondary) !important; font-weight: 500 !important; font-size: clamp(1.875rem, 1.3rem + 1.8vw, 2.625rem) !important;
  line-height: 1.1 !important; letter-spacing: .05em !important; text-transform: uppercase;
}
.menu-item__title, .box-item__title, .custom-service__title, .venues-item__title, .popup-item__meta-title {
  font-family: var(--font-secondary) !important; font-weight: 600 !important; font-size: 1.375rem !important; line-height: 1.2 !important; letter-spacing: .01em !important; text-transform: none !important;
}
.popup-item__meta-title { font-size: clamp(1.5rem, 1.25rem + .9vw, 1.875rem) !important; font-weight: 500 !important; }


.btn, a.btn, button.btn, .offer__button .btn, .btn-send, .popup-item__footer .form-button .button, #cart .form-button .button, .contacts .btn, form [type=submit]:not(.v2-callpop__copy) {
  border-radius: 999px !important; font-family: var(--font-primary) !important; font-weight: 600 !important; font-size: .9375rem !important;
  letter-spacing: .12em !important; text-transform: uppercase !important; min-height: 54px; padding-left: 34px !important; padding-right: 34px !important;
  transition: background-color .25s, color .25s, border-color .25s, box-shadow .25s !important;
}
.btn-sm, .btn-md { min-height: 46px; padding-left: 24px !important; padding-right: 24px !important; font-size: .8125rem !important; }
.btn-primary:hover, .btn-send:hover { box-shadow: 0 14px 30px -18px rgba(1, 26, 46, .7); }
@media (max-width: 767px) { .btn, a.btn, button.btn, form [type=submit] { min-height: 52px; font-size: .875rem !important; letter-spacing: .1em !important; } }

.services__nav, .reviews .btn-nav, .preview .btn-nav, .quick-order__close, #close-popup, .form-counter button, .v2-call, .v2-msg { letter-spacing: 0 !important; min-height: 0; }


textarea, .contacts textarea, .offer__field textarea { border-radius: var(--v2-r-tile) !important; }
.v2-form-note { border-radius: var(--v2-r-tile); }


.service-item, .service-item__media, .menu-item, .box-item, .custom-service__item, .custom-service .service-item, .reviews__item, .venues-item,
.popup-item__wrapper, .quick-order, .quick-order__content, #cart, .fancybox__content, .v2-callpop { border-radius: var(--v2-r-card) !important; }
.service-item, .menu-item, .box-item, .reviews__item, .venues-item { overflow: hidden; }
.service-item__content { border-radius: var(--v2-r-tile) !important; }
.events-item a, .events-item img, .portfolio-item, .portfolio-item img, .box-item__media, .box-item img, .menu-item__media, .menu-item__media img { border-radius: var(--v2-r-tile); }
.box-item img, .menu-item__media img { border-radius: 0; }
.offer__content { border-radius: var(--v2-r-panel); overflow: hidden; }
.form-radio label { border-radius: 16px; }
.custom-service, .primary-item { border-radius: var(--v2-r-tile) !important; overflow: hidden; }
.custom-service__media.v2-missing-slot { background: #e9e5dc; }

@media (min-width: 768px) {
  .offer__content { border-radius: 0 var(--v2-r-panel) var(--v2-r-panel) 0 !important; padding: clamp(40px, 4vw, 56px) clamp(32px, 3.5vw, 48px) clamp(40px, 4vw, 56px) 40px !important; box-sizing: border-box; }
  .offer__content .offer__container, .offer__content .offer__form { max-width: none !important; width: 100% !important; }
}
@media (max-width: 767px) {
  .offer__content { border-radius: var(--v2-r-panel) !important; margin-left: 12px !important; margin-right: 12px !important; padding: 28px 20px 28px !important; }
  .offer__content .offer__container { padding-left: 0 !important; padding-right: 0 !important; }
}
.offer__content .offer__form { margin-left: 0 !important; margin-right: 0 !important; width: auto !important; }

.privacy-policy-page .main .container > *, .privacy .container, .policy__content, .text-page__content { max-width: 760px; margin-left: auto !important; margin-right: auto !important; }
.privacy-policy-page .main p, .privacy-policy-page .main li { font: 400 1rem/1.7 var(--font-primary); color: #2f3542; }
.privacy-policy-page .main h2, .privacy-policy-page .main h3, .privacy-policy-page .main strong:only-child { display: block; font: 500 1.375rem/1.25 var(--font-secondary) !important; text-transform: none !important; letter-spacing: .01em !important; margin: 1.6em 0 .5em; color: var(--v2-ink); }

.v2-fcol__title { font-size: .75rem !important; letter-spacing: .2em !important; color: #d6bd8a !important; opacity: 1 !important; }
.footer, .footer a, .footer__copy, .footer__bottom { color: rgba(255, 255, 255, .78); }

@media (min-width: 768px) {
  .offer__main { --v2-offer-in: clamp(16px, 2vw, 28px); --v2-offer-pad: clamp(32px, 3.2vw, 48px); }
  .offer__content { margin-left: var(--v2-offer-in) !important; margin-right: 0 !important; border-radius: var(--v2-r-panel) !important;
    padding: var(--v2-offer-pad) !important; box-shadow: 0 30px 60px -44px rgba(1, 26, 46, .45); }
  .offer__header .offer__container { padding-left: calc(var(--v2-offer-in) + var(--v2-offer-pad)) !important; box-sizing: border-box; }
  .offer__header { padding-left: 0 !important; }
}
@media (min-width: 768px) { .offer__content { align-self: stretch !important; width: auto !important; max-width: none !important; } }
@media (min-width: 768px) { .offer__header .offer__container { padding-left: 0 !important; margin-left: calc(var(--v2-offer-in) + var(--v2-offer-pad)) !important; } }
.v2-flextext { display: block; min-width: 0; }

.root .card { border: 0 !important; border-radius: var(--v2-r-card) !important; background: #fff !important; box-shadow: 0 24px 48px -36px rgba(1, 26, 46, .45);
  padding: 28px 24px !important; min-height: 0 !important; display: flex; align-items: center; justify-content: center; text-align: center;
  font: 600 .8125rem/1.5 var(--font-primary) !important; letter-spacing: .1em; text-transform: uppercase; color: var(--v2-ink); }

.swiper-slide:has(> .formats-title) { position: relative; border-radius: var(--v2-r-card); overflow: hidden; height: auto !important; aspect-ratio: 4 / 5; background: #e7e4dc; }
.swiper-slide:has(> .formats-title) > .swiper-image2 { position: absolute !important; inset: 0; width: 100% !important; height: 100% !important; margin: 0 !important; }
.swiper-slide:has(> .formats-title) > .swiper-image2 img { width: 100% !important; height: 100% !important; object-fit: cover; }
.swiper-slide > .formats-title { position: absolute !important; left: 14px; right: 14px; bottom: 14px; top: auto !important; margin: 0 !important; width: auto !important; height: auto !important; min-height: 0 !important;
  padding: 16px 14px !important; border-radius: var(--v2-r-tile); background: rgba(255, 255, 255, .8) !important; -webkit-backdrop-filter: blur(12px) saturate(160%); backdrop-filter: blur(12px) saturate(160%);
  text-align: center; font: 500 1.25rem/1.2 var(--font-secondary) !important; letter-spacing: .04em; text-transform: uppercase; color: var(--v2-ink) !important; }

.venues-item { box-shadow: 0 14px 30px -26px rgba(1, 26, 46, .35) !important; }

@media (max-width: 767px) {
  .custom-service__list, .custom-services__list, .custom-service__grid { grid-template-columns: 1fr !important; }
  .custom-service { display: grid !important; grid-template-columns: 42% 1fr; align-items: center; min-height: 120px; }
  .custom-service__media { height: 100% !important; aspect-ratio: auto !important; min-height: 120px; }
  .custom-service__media img { height: 100% !important; object-fit: cover; }
}

.contacts textarea, form textarea { resize: vertical; margin-bottom: 18px !important; min-height: 140px; display: block; }

.swiper-slide > .formats-title { transform: none !important; left: 14px !important; right: 14px !important; width: auto !important; min-height: 0 !important; display: flex !important; }
.swiper-slide:has(> .formats-title) > .swiper-image2 { padding-bottom: 0 !important; }
.swiper-slide:has(> .formats-title) > .swiper-image2 * { height: 100% !important; }

@media (max-width: 767px) {
  .service-grid:has(> .custom-service) { grid-template-columns: 1fr !important; }
  .custom-service { grid-template-columns: 38% 1fr !important; grid-template-rows: 1fr auto 1fr; min-height: 128px; }
  .custom-service > .custom-service__media { grid-column: 1; grid-row: 1 / -1; min-height: 128px; }
  .custom-service > .custom-service__title { grid-column: 2; grid-row: 2; padding: 0 18px !important; margin: 0 !important; align-self: end; }
  .custom-service > .custom-service__price { grid-column: 2; grid-row: 3; padding: 6px 18px 0 !important; margin: 0 !important; align-self: start; }
}
p.v2-subhead { font: 500 1.375rem/1.25 var(--font-secondary) !important; color: var(--v2-ink) !important; letter-spacing: .01em; margin: 1.8em 0 .5em !important; }

.eva-chunk { min-height: 0 !important; overflow: visible !important; opacity: 1 !important; display: block !important; }
.eva-tilda body { overflow-x: hidden; }
.t-rec:has(> .t123 .eva-chunk > header.header--base), .t-rec:has(.eva-chunk > header.header--base) { position: sticky; top: 0; z-index: 90; }

.t-rec:has(form.t-form) { position: absolute !important; left: 0 !important; top: 0 !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip-path: inset(50%) !important; opacity: 0 !important; pointer-events: none !important; }

.t-form-success-popup, .t-form-success-popup__wrapper { display: none !important; }

#delayed-popup { border-radius: var(--v2-r-panel) !important; }
#delayed-popup .left img { border-radius: var(--v2-r-tile); }



.hero-digits { gap: 20px 32px !important; align-items: flex-end !important; flex-wrap: wrap; }
.first-row { margin-top: clamp(24px, 6vw, 56px) !important; margin-bottom: 20px !important; }
.hero-digit-title { margin: 0 0 4px !important; color: var(--v2-muted); font: 600 .75rem/1 var(--font-primary) !important; letter-spacing: .14em; text-transform: uppercase; }
.hero-digit { margin: 0 !important; line-height: 1.1 !important; }
@media (max-width: 767px) { .hero-digits > * { flex: 1 1 40% !important; } .hero-digits > .primary__button { flex-basis: 100% !important; } }

.heading-line span { white-space: normal !important; text-align: center; font-size: clamp(1.5rem, 1rem + 2.4vw, 2.25rem) !important; line-height: 1.15; }
@media (max-width: 767px) { .advantages-grid { margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; gap: 16px !important; } }
.custom-advantage, .custom-advantage__media { border-radius: var(--v2-r-tile); overflow: hidden; }

div:has(> iframe[src*="yandex.ru/map-widget"]) { border-radius: var(--v2-r-card); }
@media (max-width: 767px) { iframe[src*="yandex.ru/map-widget"] { height: 420px !important; } }

.pink-shield { display: inline-flex !important; align-items: center; gap: 8px; margin-top: 18px !important; padding: 10px 18px !important; border-radius: 999px; background: #efe7da !important; color: var(--v2-ink); font: 600 1rem/1 var(--font-primary) !important; }
.pink-shield img.v2-missing-icon, .pink-shield img[src*="icon-person"] { display: none !important; }
.primary__text > br:has(+ .pink-shield) { display: none; }

@media (max-width: 480px) { .mobile-buffet-page .primary__services { grid-template-columns: 1fr !important; } .mobile-buffet-page .primary-item { min-height: 0 !important; } }

.adam-header { font-family: 'BrownSugar', 'Cormorant Garamond', Georgia, serif !important; font-weight: 500 !important; letter-spacing: .02em !important; }
@media (max-width: 1200px) { .adam-page .primary__wrap, body:has(.adam-header) .primary__wrap { margin-top: clamp(20px, 6vw, 48px) !important; } }
.hero-digits:not(.first-row) { margin-top: 24px !important; }
.hero-digits > * { min-height: 0 !important; margin-top: 0 !important; }
.hero-digits .primary__button { margin-top: 8px !important; }
.hero-digits > div:not(.primary__button) { display: flex !important; flex-direction: column; gap: 6px; }
.hero-digits p, .hero-digits p::before, .hero-digits p::after { margin: 0 !important; padding: 0 !important; }

.contacts__form-header { margin-bottom: 18px !important; font-family: var(--font-secondary) !important; font-weight: 500 !important; font-size: clamp(1.75rem, 1.3rem + 1.6vw, 2.25rem) !important; letter-spacing: .05em; text-transform: uppercase; }
.contacts__field { margin-bottom: 10px !important; }
.contacts__field input { width: 100%; border: 0 !important; border-bottom: 1px solid rgba(1, 26, 46, .3) !important; border-radius: 0 !important; background: transparent !important; padding: 14px 2px !important; font: 400 1rem/1.4 var(--font-primary) !important; }
.contacts__field textarea { width: 100%; border: 1px solid rgba(1, 26, 46, .2) !important; background: rgba(255, 255, 255, .6) !important; padding: 14px 16px !important; font: 400 1rem/1.5 var(--font-primary) !important; }
.contacts__field input:focus, .contacts__field textarea:focus { outline: none; border-color: var(--v2-ink) !important; }



h1, h2, h3, .primary__header, [class*="__header"], [class*="__title"], .heading-line span { text-wrap: balance; }
.primary__text, p, .venues-item__text, .reviews__text { text-wrap: pretty; }

@media (min-width: 1024px) { .header__phone { font-size: 1.125rem !important; font-weight: 500 !important; letter-spacing: .02em; } }

.primary__header { margin-bottom: 22px !important; }

@media (min-width: 768px) { .offer__content { padding: 40px 40px !important; } }
.offer__field input { font-size: 1.0625rem !important; }

.heading-line { justify-content: center !important; text-align: center; }
@media (min-width: 992px) { .service-grid:has(> .custom-service) { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)) !important; } }

.menu-item__header { align-items: center !important; }

.contacts__form { border-radius: var(--v2-r-panel) !important; overflow: hidden; }
.contacts .btn-outline, .contacts__form .btn { background: var(--v2-ink) !important; color: #fff !important; border-color: var(--v2-ink) !important; }

.venues { align-items: start !important; }
.venues-item__footer { margin-top: 4px !important; }
.venues + *, .main:has(.venues) { padding-bottom: 32px !important; }

@media (max-width: 1023px) { .events__header { margin-top: 18px !important; } }

@media (min-width: 768px) { .mobile-buffet-page .primary__services { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; } }

.eva-dostavka-page .offer__media { padding: clamp(20px, 3vw, 40px) !important; box-sizing: border-box; display: flex; align-items: center; justify-content: center; background: #F2F1EC; }
.eva-dostavka-page .offer__media img { border-radius: var(--v2-r-card); box-shadow: none !important; object-fit: cover; }

@media (max-width: 767px) { .plan-content .left { padding: 24px 20px !important; } }
div:has(> iframe[src*="yandex.ru/map-widget"]) > a { display: none !important; }


.cart-layer .fancybox__slide { padding: 0 !important; display: flex !important; justify-content: flex-end !important; align-items: stretch !important; }
.cart-layer .fancybox__content { width: min(480px, 100vw) !important; max-width: 100% !important; height: 100% !important; max-height: 100% !important; margin: 0 !important;
  border-radius: 24px 0 0 24px !important; padding: 28px 24px 32px !important; overflow-y: auto !important; box-sizing: border-box; }
@media (max-width: 600px) {
  .cart-layer .fancybox__slide { align-items: flex-end !important; }
  .cart-layer .fancybox__content { width: 100vw !important; height: auto !important; max-height: calc(100% - 36px) !important; border-radius: 24px 24px 0 0 !important; padding: 24px 18px 28px !important; }
}
.cart-layer .fancybox__content > .is-close { top: 18px !important; right: 16px !important; }
#cart .cart-title { font: 500 1.875rem/1.1 var(--font-secondary) !important; letter-spacing: .05em; text-transform: uppercase; text-align: left !important; margin: 0 56px 4px 0 !important; padding: 0 !important; }
#cart .cart-count { text-align: left !important; margin: 0 0 18px !important; padding: 0 !important; color: var(--v2-muted); font: 400 .875rem/1.3 var(--font-primary) !important; }
#cart .cart-delivery { border-radius: var(--v2-r-tile); padding: 12px 16px !important; margin: 0 0 8px !important; font: 400 .875rem/1.4 var(--font-primary) !important; text-align: left !important; }
#cart .cart-items { margin: 0 !important; }
#cart .dscart-item { display: grid !important; grid-template-columns: 84px minmax(0, 1fr); gap: 14px; align-items: start; padding: 16px 0 !important; margin: 0 !important; border: 0 !important; border-bottom: 1px solid var(--v2-line) !important; }
#cart .dscart-item__img { width: 84px !important; height: 84px !important; border-radius: var(--v2-r-tile); overflow: hidden; background: #efece5 !important; margin: 0 !important; }
#cart .dscart-item__img img { width: 100% !important; height: 100% !important; object-fit: cover; display: block !important; }
#cart .dscart-item__img img.v2-missing-icon, #cart .dscart-item__img img.v2-missing { opacity: 0; }
#cart .dscart-item__form, #cart .dscart-item__form form { width: auto !important; margin: 0 !important; padding: 0 !important; }
#cart .dscart-item__form form { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px 12px; position: relative; }
#cart .dscart-item .form-title { grid-column: 1 / -1; font: 600 1.125rem/1.25 var(--font-secondary) !important; text-transform: none !important; letter-spacing: .01em; color: var(--v2-ink) !important; margin: 0 30px 0 0 !important; }
#cart .dscart-item .form-title + button { position: absolute !important; top: -2px; right: -4px; width: 30px !important; height: 30px !important; border-radius: 50% !important; background: transparent !important; border: 0 !important; color: var(--v2-muted) !important; padding: 0 !important; display: grid; place-items: center; }
#cart .dscart-item .form-title + button:hover { background: #efece5 !important; color: var(--v2-ink) !important; }
#cart .dscart-item .form-weight { grid-column: 1 / -1; justify-self: start; padding: 4px 10px !important; border-radius: 999px; background: #f2efe9 !important; color: var(--v2-muted) !important; font: 400 .8125rem/1.2 var(--font-primary) !important; margin: 0 !important; width: auto !important; }
#cart .dscart-item .form-counter { height: 40px !important; padding: 3px !important; justify-self: start; }
#cart .dscart-item .form-counter button { width: 32px !important; height: 32px !important; font-size: 1.125rem !important; }
#cart .dscart-item .form-counter input { width: 26px !important; font-size: 1rem !important; }
#cart .dscart-item .form-price { justify-self: end; font: 600 1.0625rem/1 var(--font-primary) !important; color: var(--v2-ink) !important; margin: 0 !important; white-space: nowrap; }
#cart .cart-total { display: flex !important; justify-content: space-between; align-items: baseline; gap: 12px; padding: 18px 0 6px !important; margin: 0 !important; }
#cart .cart-total__price { font: 600 1.375rem/1 var(--font-primary) !important; color: var(--v2-ink) !important; }
#cart .cart-total__count { color: var(--v2-muted) !important; font: 400 .9375rem/1.3 var(--font-primary) !important; }
#cart .cart-form { margin-top: 18px !important; padding: 0 !important; }
#cart .cart-form__title { font: 400 .9375rem/1.5 var(--font-primary) !important; color: #3c4250; margin-bottom: 12px !important; text-align: left !important; }
@media (max-width: 600px) { #cart .form-content { grid-template-columns: 1fr !important; } }
#cart > *:not(.is-close) { position: static !important; left: auto !important; right: auto !important; top: auto !important; transform: none !important; margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; width: auto !important; max-width: none !important; }
#cart .cart-delivery { padding: 12px 16px !important; }
#cart .cart-total { padding-top: 18px !important; }
#cart .cart-form__title { text-transform: none !important; letter-spacing: 0 !important; }
#cart .dscart-item .form-counter { display: inline-flex !important; align-items: center; width: auto !important; border: 1px solid var(--v2-line) !important; border-radius: 999px !important; background: #fff !important; }
#cart .dscart-item .form-counter > * { position: static !important; margin: 0 !important; flex: none; }
.cart-layer .fancybox__content#cart, .cart-layer #cart.fancybox__content, .cart-layer .fancybox__content > #cart { padding: 26px 22px 30px !important; box-sizing: border-box !important; }
@media (max-width: 600px) { .cart-layer .fancybox__content#cart, .cart-layer #cart.fancybox__content, .cart-layer .fancybox__content > #cart { padding: 22px 18px 26px !important; } }
#cart .cart-title, #cart .cart-count { display: block !important; text-align: left !important; justify-content: flex-start !important; }

html body h1.primary__header.adam-header { font-family: 'BrownSugar', 'Cormorant Garamond', Georgia, serif !important; }


.v2-menus { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 460px), 1fr)); gap: 20px; }
.v2-menu { display: grid; grid-template-columns: 150px 1fr; gap: 24px; align-items: center; background: #fff; border-radius: var(--v2-r-card); padding: 18px; }
.v2-menu__cover { display: block; padding: 0; border: 0; background: var(--v2-ink); border-radius: var(--v2-r-tile); overflow: hidden; aspect-ratio: 9 / 16; cursor: zoom-in; }
.v2-menu__cover img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s var(--v2-ease); }
.v2-menu__cover:hover img { transform: scale(1.04); }
.v2-menu__season { font: 500 .75rem/1 var(--font-primary); letter-spacing: .14em; text-transform: uppercase; color: var(--v2-muted); margin-bottom: 10px; }
.v2-menu__title { font: 500 clamp(1.5rem, 1.2rem + 1vw, 2rem)/1.1 var(--font-secondary); letter-spacing: .03em; text-transform: uppercase; color: var(--v2-ink); text-wrap: balance; }
.v2-menu__price { font: 700 1.125rem/1.2 var(--font-primary); color: var(--v2-ink); margin-top: 14px; font-variant-numeric: tabular-nums; }
.v2-menu__price span { font-weight: 400; color: var(--v2-muted); font-size: .9375rem; }
.v2-menu__pages { font: 400 .875rem/1 var(--font-primary); color: var(--v2-muted); margin-top: 6px; }
.v2-menu__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.v2-menu__actions .btn { min-width: 0; }
@media (max-width: 575px) {
  .v2-menu { grid-template-columns: 104px 1fr; gap: 16px; padding: 14px; }
  .v2-menu__actions { flex-direction: column; align-items: stretch; margin-top: 14px; }
  .v2-menu__actions .btn { width: 100%; justify-content: center; }
}
.v2-hidden-menu { display: none !important; }

.fancybox__container.v2-menu-box { --fancybox-bg: rgba(1, 26, 46, .96); }
.v2-menu-box .fancybox__content img { border-radius: 10px; }
.v2-menu__body { min-width: 0; }
.v2-menu__actions .btn { box-sizing: border-box; max-width: 100%; }
@media (max-width: 575px) { .v2-menu__actions .btn { padding-left: 12px; padding-right: 12px; } }
.v2-menu-box .fancybox__backdrop { background: rgba(1, 26, 46, .96) !important; }


#cart .form-policy a, .form-policy a { display: inline !important; }          
#cart .cart-form { margin-top: 22px !important; padding-top: 18px !important; border-top: 1px solid var(--v2-line); }



html { background: var(--v2-ink); }
body { padding-bottom: 0 !important; background: #fff; }

@media (min-width: 992px) { .footer__secondary { padding-right: 120px !important; box-sizing: border-box; } }

.heading-line::before, .heading-line::after { display: none !important; }
.heading-line { margin-bottom: clamp(24px, 3vw, 40px) !important; }

.primary__image, .primary__image picture, .primary__image img { border-radius: var(--v2-r-card); overflow: hidden; }

.primary__text .pink-shield { display: inline-flex !important; margin: 14px 0 0 !important; vertical-align: top; }
.primary__text br:has(+ .pink-shield) { display: none; }

@media (max-width: 575px) {
  .popup-item__footer { flex-direction: column !important; align-items: stretch !important; gap: 12px !important; }
  .popup-item__footer .form-counter { align-self: center; }
  .popup-item__footer .form-button .button { width: 100% !important; font-size: .9375rem !important; }
}

.v2-toast { white-space: nowrap; max-width: calc(100vw - 32px); }

@media (min-width: 992px) {
  .venues { display: block !important; columns: 3; column-gap: 24px; }
  .venues-item { break-inside: avoid; margin-bottom: 24px !important; width: auto !important; }
}

@media (min-width: 992px) { .filter { position: sticky !important; top: 96px; } }

@media (min-width: 992px) { .privacy-page main .container > *, .policy main > .container > *, main .policy, main .privacy { max-width: 780px; margin-left: auto; margin-right: auto; } }
.v2-subhead { font-size: clamp(1.35rem, 1.1rem + .8vw, 1.75rem) !important; font-weight: 500 !important; margin-top: 2.2em !important; }
.v2-pubdate { font-size: .8125rem !important; color: var(--v2-muted) !important; margin-top: 40px !important; font-family: var(--font-primary) !important; text-transform: none !important; letter-spacing: 0 !important; }

@media (min-width: 768px) { .eva-dostavka-page .offer__field:nth-child(5):nth-last-child(2) { grid-column: 1 / -1; } }
.primary__services:has(> .primary-item:only-child) { display: inline-grid !important; grid-template-columns: auto !important; }
@media (max-width: 575px) { .eva-dostavka-page .primary__header { font-size: clamp(1.75rem, 8vw, 2.25rem) !important; } }

.ai-search-block__faq details { border-top: 1px solid var(--v2-line); padding: 14px 0; }
.ai-search-block__faq details:last-child { border-bottom: 1px solid var(--v2-line); }
.ai-search-block__faq summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; font: 500 1.0625rem/1.35 var(--font-primary); color: var(--v2-ink); }
.ai-search-block__faq summary::-webkit-details-marker { display: none; }
.ai-search-block__faq summary::after { content: "+"; flex: none; width: 32px; height: 32px; border: 1px solid var(--v2-line); border-radius: 50%; display: grid; place-items: center; font: 400 1.25rem/1 var(--font-primary); color: var(--v2-ink); transition: transform .3s var(--v2-ease); }
.ai-search-block__faq details[open] summary::after { transform: rotate(45deg); }
.ai-search-block__faq details p { margin: 10px 0 2px; color: #3c4250; font-size: .9375rem; line-height: 1.55; }
.commercial-intent-block { padding-top: var(--v2-section-y) !important; }
.commercial-intent-block__cta { display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.commercial-intent-block__cta .btn { min-width: 220px; }
@media (max-width: 575px) { .commercial-intent-block__cta .btn { width: 100%; } }

.v2-divider { grid-column: 1 / -1; display: flex; align-items: center; gap: 18px; margin: clamp(12px, 2vw, 24px) 0 4px; font: 500 .8125rem/1 var(--font-primary); letter-spacing: .14em; text-transform: uppercase; color: var(--v2-muted); }
.v2-divider::before, .v2-divider::after { content: ""; flex: 1; height: 1px; background: var(--v2-line); }

.adam-contact-content > div[style*="overflow:hidden"] { border-radius: var(--v2-r-card); height: clamp(320px, 50vw, 480px); }
.adam-contact-content > div[style*="overflow:hidden"] iframe { height: 100% !important; display: block; }
.adam-contact-content > div[style*="overflow:hidden"] > a { display: none !important; }
@media (max-width: 575px) { .adam-contact-content h2 { font-size: clamp(1.05rem, 5.4vw, 1.4rem) !important; letter-spacing: .01em !important; overflow-wrap: normal; word-break: normal; } }

::placeholder { color: #6b7280 !important; opacity: 1 !important; }
.offer__text, .form-policy, .cart-form .form-policy { color: #5d6270 !important; }
.events-item.v2-hide { display: none !important; }
.v2-more { display: flex !important; margin: 32px auto 0 !important; min-width: 240px; }
.box-item.v2-crop .box-item__media img { transform: scale(1.16); transform-origin: center; }
.box-item__media { overflow: hidden; }



@media (max-width: 991px) {
  .preview { background: #fff !important; }
  .preview__media { padding: 0 !important; }
  .preview__container { padding: 0 !important; }
  .preview__main, .preview__wrapper, .preview__body { min-height: 0 !important; height: auto !important; justify-content: flex-start !important; }
  .preview__wrapper { display: flex; flex-direction: column; gap: 0; padding: 32px 16px 40px !important; }
  .preview__lead { margin-bottom: 12px !important; }
  .preview__header { margin: 0 0 16px !important; }
  .preview__text { margin: 0 0 24px !important; }
  .preview__footer { margin: 0 !important; padding: 0 !important; }
}
.preview .btn-nav { background: #fff !important; color: var(--v2-ink) !important; }

.preview__link { display: inline-flex !important; align-items: center; justify-content: center; min-height: 52px; padding: 0 28px !important; border: 1px solid var(--v2-ink) !important; border-radius: 999px !important; text-decoration: none !important; background: transparent; font: 600 .8125rem/1 var(--font-primary) !important; letter-spacing: .12em; text-transform: uppercase; color: var(--v2-ink) !important; transition: background .25s var(--v2-ease), color .25s var(--v2-ease); }
.preview__link::after, .preview__link::before { display: none !important; }
.preview__link:hover { background: var(--v2-ink); color: #fff !important; }

.ai-search-block h2, .commercial-intent-block h2 { text-align: center; margin-bottom: clamp(24px, 3vw, 40px) !important; }
.ai-search-block .container, .commercial-intent-block .container { padding-left: 16px; padding-right: 16px; }
@media (min-width: 992px) { .ai-search-block .container, .commercial-intent-block .container { padding-left: 48px; padding-right: 48px; } }

@media (min-width: 992px) {
  .header--base .header__main { position: relative; }
  .header--base .header__media { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); width: auto !important; margin: 0 !important; }
  .header--base .header__address { margin-right: auto; }
}

@media (min-width: 992px) { .service-item__content { min-height: 108px; display: flex; flex-direction: column; justify-content: center; } }



.primary__text .pink-shield { display: flex !important; width: fit-content; margin-top: 16px !important; }

details { border-top: 1px solid var(--v2-line); padding: 14px 0; }
details:last-of-type { border-bottom: 1px solid var(--v2-line); }
details > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; font: 500 1.0625rem/1.35 var(--font-primary); color: var(--v2-ink); }
details > summary::-webkit-details-marker { display: none; }
details > summary::after { content: "+"; flex: none; width: 32px; height: 32px; border: 1px solid var(--v2-line); border-radius: 50%; display: grid; place-items: center; font: 400 1.25rem/1 var(--font-primary); color: var(--v2-ink); transition: transform .3s var(--v2-ease); }
details[open] > summary::after { transform: rotate(45deg); }
details > :not(summary) { margin-top: 10px; color: #3c4250; font-size: .9375rem; line-height: 1.55; }
.commercial-intent-block p, .commercial-intent-block details, .commercial-intent-block__grid { max-width: 820px; margin-left: auto !important; margin-right: auto !important; }
.commercial-intent-block { padding-bottom: var(--v2-section-y) !important; }

.v2-invalid { border-bottom: 2px solid #b3261e !important; background: #fdf3f2 !important; }
.v2-invalid::placeholder { color: #b3261e !important; }
.v2-form-note.is-err { border-left: 3px solid #b3261e; }

.quick-order { border-radius: 0 !important; }
.quick-order__modal { position: relative; border-radius: var(--v2-r-panel) !important; overflow: hidden; box-shadow: 0 40px 80px -40px rgba(1, 26, 46, .55); }
.quick-order__modal > .quick-order__close { position: absolute !important; top: 14px !important; right: 14px !important; left: auto !important; z-index: 5; }
@media (max-width: 575px) { .quick-order__modal { margin: 0 12px; } }

.v2-toast { top: auto !important; bottom: calc(var(--v2-bar-h, 0px) + 96px); }
@media (min-width: 992px) { .v2-toast { bottom: 32px; } }

@media (max-width: 575px) {
  .v2-menu { grid-template-columns: 96px 1fr !important; align-items: start !important; }
  .v2-menu__actions { grid-column: 1 / -1; flex-direction: row !important; margin-top: 4px !important; }
  .v2-menu__actions .btn { flex: 1 1 0; width: auto !important; }
  .v2-menu__body { display: contents; }
  .v2-menu__body > :not(.v2-menu__actions) { grid-column: 2; }
  .v2-menu__cover { grid-row: 1 / span 5; }
}

.custom-service__content, .custom-service__main { padding-bottom: 16px !important; }

.contacts textarea { border: 0 !important; border-bottom: 1px solid var(--v2-line) !important; border-radius: 0 !important; background: transparent !important; padding: 10px 2px !important; min-height: 110px; resize: none; }

.offer__form form > .v2-span { grid-column: 1 / -1; }

.plan-image { width: 100%; height: 100%; object-fit: contain; display: block; }


@media (min-width: 992px) {
  .header--base .header__address { flex: 0 1 auto !important; width: auto !important; justify-content: flex-start !important; text-align: left !important; margin-left: 32px !important; margin-right: auto !important; }
}


.line { overflow: hidden !important; max-width: 100%; }                 
.root, .eva-chunk, #allrecords, .t-records { overflow-x: clip; }        
@media (max-width: 991px) { .primary, .partners, .services, .reviews, .preview, .advantages { overflow-x: hidden; } }
@supports not (overflow: clip) { html, body { overflow-x: hidden; } }
html, body { max-width: 100%; }


@media (min-width: 992px) {
  .offer { display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; column-gap: clamp(32px, 4vw, 80px);
    padding: clamp(56px, 6vw, 96px) 20px !important; box-sizing: border-box; }
  .offer__main { grid-column: 1; grid-row: 1; }
  .offer__media { grid-column: 2; grid-row: 1; }
  .offer__main { background: #fff; border-radius: var(--v2-r-panel); box-shadow: 0 30px 60px -44px rgba(1, 26, 46, .45);
    padding: clamp(40px, 3.6vw, 56px) !important; margin: 0 !important; height: auto !important; width: auto !important; max-width: none !important; box-sizing: border-box; display: block !important; }
  .offer__header { padding: 0 !important; margin: 0 0 28px !important; background: transparent !important; display: block !important; }
  .offer__header .offer__container, .offer__content .offer__container { margin: 0 !important; padding: 0 !important; max-width: none !important; width: auto !important; }
  .offer__title { margin: 0 0 12px !important; }
  .offer__content { display: block !important; margin: 0 !important; padding: 0 !important; background: transparent !important; box-shadow: none !important; border-radius: 0 !important; width: auto !important; height: auto !important; }
  .offer__form, .offer__form form { max-width: none !important; width: 100% !important; margin: 0 !important; }
  .offer__media, .offer__media:has(img[src*="diploms"]) { padding: 0 !important; margin: 0 !important; background: transparent !important; width: auto !important; height: auto !important; align-self: center; display: flex !important; justify-content: center; }
  .offer__media img[src*="diploms"] { width: 100% !important; height: auto !important; max-height: 640px; object-fit: contain !important; }
  .eva-dostavka-page .offer__media { padding: 0 !important; background: transparent !important; align-self: stretch; }
  .eva-dostavka-page .offer__media img { width: 100%; height: 100% !important; object-fit: cover; border-radius: var(--v2-r-panel); }
}


#cart.fancybox__content { box-sizing: border-box !important; max-width: 100% !important; overflow-x: hidden; }
#cart > * { flex-shrink: 0 !important; }
#cart .cart-title { height: auto !important; padding: 0 56px 0 0 !important; margin: 0 0 6px !important; line-height: 1.1 !important; }
#cart.fancybox__content, .cart-layer #cart { grid-template-columns: minmax(0, 1fr) !important; }
#cart .cart-title, #cart .cart-count { grid-column: 1 / -1 !important; }
#cart .cart-count { align-self: start !important; justify-self: start !important; padding: 0 !important; position: static !important; display: block; text-align: left !important; margin: 0 0 22px !important; font-size: .875rem !important; color: var(--v2-muted) !important; top: auto !important; right: auto !important; }
#cart .cart-items { border-bottom: 0 !important; }
@media (min-width: 768px) {
  #cart.fancybox__content { padding: 32px 36px 36px !important; }
  #cart .carousel__button.is-close, #cart .f-button.is-close-btn { top: 28px !important; right: 28px !important; }
}


@media (max-width: 767.98px) {
  :root { --v2-bar-h: 0px; }
  .v2-contact {
    left: auto !important; right: 14px !important; bottom: calc(14px + env(safe-area-inset-bottom, 0px)) !important;
    width: auto !important; height: auto !important; padding: 0 !important;
    display: flex !important; flex-direction: column; align-items: center; gap: 8px;
    background: transparent !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important;
    -webkit-backdrop-filter: none !important; backdrop-filter: none !important;
    transition: opacity .25s, transform .25s; transform: none;
  }
  .v2-contact.v2-hidden { opacity: 0; pointer-events: none; transform: translateY(8px); }
  .v2-contact a, .v2-contact a.v2-call, .v2-contact a.v2-msg {
    flex: none !important; width: 46px !important; height: 46px !important; padding: 0 !important; gap: 0 !important;
    border-radius: 50% !important; border: 0 !important;
  }
  .v2-contact a.v2-call { box-shadow: 0 8px 20px -10px rgba(150, 120, 60, .6); }
  .v2-contact a.v2-call span, .v2-contact a.v2-call .v2-label-long { display: none !important; }
  .v2-contact a.v2-call svg { width: 18px; height: 18px; }
  .v2-contact a.v2-msg { overflow: hidden; box-shadow: 0 8px 20px -12px rgba(1, 26, 46, .55); }
  .v2-contact a.v2-msg img { width: 46px !important; height: 46px !important; }
}
#cart .cart-items:empty::before { content: "Корзина пуста"; display: block; text-align: center; color: var(--v2-muted); font-size: .9375rem; }


@media (hover: hover) and (pointer: fine) {
  .services__nav:hover, .reviews .btn-nav:hover, .preview .btn-nav:hover {
    background: var(--v2-ink) !important; border-color: var(--v2-ink) !important; color: #fff !important;
    box-shadow: 0 12px 28px -14px rgba(1, 26, 46, .55) !important;
  }
}
@media (hover: none), (pointer: coarse) {
  .services__nav:hover, .reviews .btn-nav:hover, .preview .btn-nav:hover,
  .services__nav:focus, .reviews .btn-nav:focus, .preview .btn-nav:focus {
    background: radial-gradient(120% 120% at 30% 15%, rgba(255, 255, 255, .55) 0%, rgba(255, 255, 255, 0) 55%), rgba(255, 255, 255, .38) !important;
    color: var(--v2-ink) !important; border-color: rgba(255, 255, 255, .65) !important; transform: none;
  }
}
.services__nav:focus:not(:focus-visible), .reviews .btn-nav:focus:not(:focus-visible), .preview .btn-nav:focus:not(:focus-visible),
.quick-order__close:focus:not(:focus-visible), #close-popup:focus:not(:focus-visible) { outline: none !important; }


.footer { position: relative; overflow: hidden; }
.footer::after { content: ""; display: block; width: calc(100% - 40px); max-width: 1880px; margin: clamp(32px, 4vw, 64px) auto 0;
  aspect-ratio: 1126 / 175; background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%22493 2 1126 175%22%3E%3Cpath fill=%22%23fff%22 d=%22M620.714 169.128C615.068 172.032 607.566 174.17 598.21 175.541C593.451 176.347 587.724 176.751 581.029 176.751C568.285 176.751 556.549 174.694 545.821 170.58C535.093 166.467 525.817 160.498 517.993 152.674C510.088 144.85 503.998 135.493 499.723 124.604C495.448 113.715 493.311 101.696 493.311 88.5486C493.311 74.433 495.65 61.9307 500.328 51.0415C505.007 40.1524 511.621 30.9974 520.171 23.5767C528.237 16.5592 537.674 11.276 548.483 7.72693C559.291 4.09721 570.785 2.28236 582.965 2.28236C593.128 2.28236 602.565 3.45193 611.277 5.79107C615.713 7.00098 619.262 8.17056 621.924 9.2998L619.02 21.6408C613.374 17.8498 606.558 14.9057 598.573 12.8085C594.459 11.7599 589.74 11.2357 584.417 11.2357C579.013 11.2357 573.487 11.8406 567.841 13.0505C562.276 14.1798 556.912 15.9543 551.749 18.3741C539.57 24.101 530.132 32.288 523.438 42.9352C515.372 55.5988 511.339 70.9243 511.339 88.9116C511.339 99.6394 512.952 109.762 516.178 119.28C519.405 128.798 524.043 137.146 530.092 144.325C536.384 151.746 543.925 157.513 552.717 161.627C561.509 165.741 571.189 167.797 581.755 167.797C591.354 167.797 600.146 166.104 608.131 162.716C612.325 160.941 615.632 159.167 618.052 157.392L620.714 169.128ZM734.823 5.30712L781.647 120.974C787.857 136.461 793.141 148.923 797.496 158.36C798.948 161.667 801.207 166.547 804.272 173H782.372L781.284 169.37L773.54 147.592C769.023 135.493 765.434 125.894 762.772 118.796L761.683 116.013C759.425 109.964 757.368 104.681 755.513 100.164L754.666 97.9859L747.043 97.6229L732.645 97.5019H714.134C707.116 97.5019 702.519 97.5422 700.341 97.6229L696.711 97.7439C694.937 97.7439 693.727 97.7842 693.081 97.8649C690.904 102.866 688.443 108.714 685.701 115.409L681.587 125.33L678.563 132.589C677.111 135.977 675.78 139.244 674.57 142.389C672.634 146.906 670.093 153.037 666.948 160.78C666.141 162.635 664.971 165.539 663.439 169.491L662.108 173H647.589C651.864 164.531 656.946 153.964 662.834 141.3C664.528 137.832 666.504 133.476 668.762 128.234L671.061 123.152L722.361 6.51702L734.823 5.30712ZM696.59 88.9116C698.687 89.0729 700.704 89.1536 702.64 89.1536H712.924H732.766C739.945 89.1536 746.116 89.0729 751.278 88.9116L725.023 22.9717L696.59 88.9116ZM849.893 173C849.973 170.177 850.175 164.813 850.498 156.908C850.982 144.003 851.224 132.025 851.224 120.974V14.8654C836.059 15.2687 823.88 15.7526 814.684 16.3173L798.956 17.4062V6.03305H919.462V17.4062C911.154 16.5996 900.87 15.9543 888.61 15.4703C880.382 15.1477 873.365 14.946 867.557 14.8654V120.974C867.557 134.202 867.759 146.18 868.162 156.908C868.243 161.022 868.445 166.386 868.767 173H849.893ZM955.657 173C955.738 170.177 955.94 164.813 956.262 156.908C956.746 144.003 956.988 132.025 956.988 120.974V58.301C956.988 49.509 956.706 37.4906 956.141 22.2458L955.415 6.03305H1027.89V17.4062C1020.06 16.5996 1009.62 15.9543 996.552 15.4703C987.922 15.1477 980.178 14.946 973.322 14.8654V79.1113C991.551 78.95 1003.49 78.7484 1009.14 78.5064L1017.12 78.1434L1020.02 78.0224V89.2745C1012.76 88.7906 1004.3 88.5083 994.616 88.4276L973.322 88.1856V120.974C973.322 127.508 973.403 135.775 973.564 145.777L973.927 160.054L974.048 164.289C989.857 163.966 1003.25 163.442 1014.22 162.716L1028.37 161.627V173H955.657ZM1193.94 172.758C1192.9 173.161 1191.81 173.524 1190.68 173.847L1188.14 174.21C1185.07 174.291 1181.32 173.403 1176.88 171.548C1170.43 168.241 1163.82 161.425 1157.04 151.101C1151.88 143.277 1146.4 132.952 1140.59 120.127C1136.55 111.98 1132.08 105.205 1127.16 99.8007C1122.8 95.1224 1118.61 91.6944 1114.57 89.5165C1110.14 87.0161 1105.78 85.6448 1101.51 85.4029L1098.36 77.4175H1103.69C1109.17 77.4175 1114.45 76.7319 1119.54 75.3606C1126.07 73.7474 1131.35 70.642 1135.39 66.0444C1140.22 60.6401 1142.64 53.4614 1142.64 44.5081C1142.64 33.5382 1139.42 25.4722 1132.97 20.3099C1127.64 16.1156 1120.02 13.9378 1110.1 13.7764C1107.92 13.7764 1106.35 13.8168 1105.38 13.8974C1104.33 13.9781 1102.76 14.0184 1100.66 14.0184L1095.34 14.2604C1094.13 14.3411 1092.03 14.3814 1089.05 14.3814V120.974C1089.05 132.025 1089.29 144.003 1089.77 156.908C1090.09 163.926 1090.38 169.29 1090.62 173H1071.5L1071.62 170.459C1071.7 169.814 1071.74 168.644 1071.74 166.95L1071.86 163.442L1072.23 152.916C1072.39 147.108 1072.55 137.993 1072.71 125.572V110.569V58.301C1072.71 47.3312 1072.47 35.3128 1071.99 22.2458L1071.26 6.03305H1084.57C1089.81 6.03305 1094.49 5.87173 1098.6 5.5491C1102.8 5.38778 1105.9 5.30712 1107.92 5.30712C1114.7 5.30712 1120.66 5.83141 1125.83 6.88C1130.1 7.6866 1134.66 9.2998 1139.5 11.7196C1145.95 14.5427 1150.87 18.9387 1154.26 24.9076C1157.16 30.1505 1158.62 36.1194 1158.62 42.8142C1158.62 54.7519 1155.07 64.1488 1147.97 71.005C1141.03 77.5385 1131.47 81.3698 1119.29 82.4991C1122.6 83.5477 1126.03 85.1205 1129.58 87.2177C1133.13 89.3149 1136.51 91.8154 1139.74 94.7191C1147.08 101.253 1152.81 108.875 1156.92 117.586C1164.75 133.557 1171.84 146.019 1178.22 154.972C1182.89 161.587 1187.01 166.104 1190.56 168.523C1191.85 169.411 1192.86 169.935 1193.58 170.096L1194.55 170.338L1193.94 172.758ZM1226.71 58.301C1226.71 45.1533 1226.51 33.1349 1226.11 22.2458C1225.78 14.4217 1225.58 9.01749 1225.5 6.03305H1244.38C1243.97 13.7765 1243.65 24.7463 1243.41 38.9425C1243.25 47.3312 1243.17 53.784 1243.17 58.301V120.974C1243.17 134.202 1243.37 146.18 1243.77 156.908C1243.85 161.022 1244.05 166.386 1244.38 173H1225.5C1225.58 170.177 1225.78 164.813 1226.11 156.908C1226.51 146.18 1226.71 134.202 1226.71 120.974V58.301ZM1426.65 173L1371.48 104.519C1364.54 96.05 1361.32 92.0977 1361.8 92.6623C1358.74 88.7906 1357.33 87.0161 1357.57 87.3387C1347.24 74.5137 1338.81 64.2295 1332.28 56.4861C1323.73 46.2422 1318 39.5474 1315.1 36.4017C1313.08 34.3045 1311.83 33.0946 1311.35 32.772L1312.2 106.697C1312.52 122.749 1313.04 137.953 1313.77 152.311L1314.49 167.313L1314.74 173H1301.43C1301.43 169.048 1301.51 161.264 1301.67 149.649V146.019C1301.75 139.244 1301.79 128.919 1301.79 115.046V58.059C1301.79 43.1368 1301.59 30.5538 1301.19 20.3099L1300.7 6.03305H1310.02L1362.53 71.7309C1365.51 75.522 1370.07 81.1279 1376.2 88.5486L1386.97 101.979C1388.1 103.269 1388.9 104.237 1389.39 104.882C1397.7 115.126 1405.28 124.362 1412.13 132.589L1414.07 134.888C1419.96 141.986 1423.79 146.422 1425.56 148.197L1424.84 72.0939C1424.52 53.9453 1423.99 37.9746 1423.26 24.1816L1422.18 6.03305H1435.49V18.6161C1435.32 30.8764 1435.24 40.717 1435.24 48.1378C1435.16 51.6062 1435.12 56.8088 1435.12 63.7455V120.732C1435.12 137.832 1435.28 150.455 1435.61 158.602C1435.69 162.796 1435.89 167.596 1436.21 173H1426.65ZM1606.24 22.7297C1600.68 18.6161 1593.3 15.3897 1584.1 13.0505C1579.26 11.8406 1573.7 11.2357 1567.4 11.2357C1562.32 11.2357 1557.12 11.8406 1551.8 13.0505C1546.55 14.1798 1541.39 15.9543 1536.31 18.3741C1524.45 24.0203 1515.1 32.2073 1508.24 42.9352C1500.17 55.5988 1496.14 70.9243 1496.14 88.9116C1496.14 99.5587 1497.75 109.641 1500.98 119.159C1504.29 128.677 1508.97 137.066 1515.02 144.325C1521.23 151.746 1528.61 157.513 1537.16 161.627C1545.71 165.741 1555.1 167.797 1565.35 167.797C1573.33 167.797 1581.04 166.87 1588.46 165.015C1592.97 163.885 1597.77 162.192 1602.85 159.933C1602.53 155.255 1602.17 146.14 1601.77 132.589C1601.36 122.829 1601.08 111.093 1600.92 97.3809C1593.58 97.5422 1588.78 97.7439 1586.52 97.9859C1586.52 97.9859 1585.07 98.1472 1582.17 98.4698V88.5486L1617.25 89.2745V121.458C1617.25 126.217 1617.29 129.685 1617.37 131.863V141.179C1617.45 147.713 1617.74 153.682 1618.22 159.086L1618.83 165.499C1614.39 167.596 1609.63 169.411 1604.55 170.943C1599.55 172.395 1593.82 173.726 1587.37 174.936C1581 176.146 1574.14 176.751 1566.8 176.751C1554.06 176.751 1542.28 174.694 1531.47 170.58C1520.66 166.467 1511.26 160.498 1503.28 152.674C1495.21 144.85 1489 135.493 1484.65 124.604C1480.29 113.715 1478.11 101.696 1478.11 88.5486C1478.11 74.433 1480.41 61.971 1485.01 51.1625C1489.69 40.2734 1496.26 31.1184 1504.73 23.6977C1512.8 16.6802 1522.23 11.3566 1533.04 7.72693C1543.85 4.09721 1555.39 2.28236 1567.65 2.28236C1578.29 2.28236 1588.54 3.61325 1598.38 6.27504C1602.57 7.48495 1606.16 8.81584 1609.15 10.2677L1606.24 22.7297Z%22/%3E%3C/svg%3E") no-repeat center / contain; opacity: .07; pointer-events: none; }


@media (min-width: 768px) {
  .cart-layer .fancybox__slide { justify-content: center !important; align-items: center !important; padding: 24px !important; }
  .cart-layer .fancybox__content, .cart-layer #cart.fancybox__content { align-self: center !important; margin: auto !important; width: min(640px, 100%) !important; height: auto !important; max-height: calc(100vh - 48px) !important; max-height: calc(100dvh - 48px) !important;
    overflow-y: auto !important; border-radius: var(--v2-r-panel) !important; box-shadow: 0 40px 80px -40px rgba(1, 26, 46, .55) !important; }
}


.ai-search-block .ai-search-block__grid { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; grid-template-rows: none !important; row-gap: clamp(28px, 3.5vw, 48px) !important; column-gap: 0 !important; max-width: 1240px; margin: 0 auto; }
.ai-search-block__grid > div:first-child { display: contents !important; }
.ai-search-block__grid > div:first-child > h2 { grid-column: 1 !important; grid-row: auto !important; text-align: center !important; margin: 0 !important; }
.ai-search-block__grid > div:first-child > p { grid-column: 1 !important; grid-row: auto !important; max-width: 46rem !important; margin: 0 auto !important; text-align: center; font-size: 1.0625rem; line-height: 1.7; }
.ai-search-block .ai-search-block__facts { grid-column: 1 !important; grid-row: auto !important; max-width: none !important; margin: 0 !important; border: 0 !important; display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 0 !important; }
.ai-search-block .ai-search-block__facts li { padding: 16px 0 !important; border: 0 !important; border-top: 1px solid var(--v2-line) !important; text-align: center; font-size: .9375rem; }
.ai-search-block .ai-search-block__facts li::before { display: none !important; }
.ai-search-block .ai-search-block__faq { grid-column: 1 !important; grid-row: auto !important; border: 0 !important; display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 16px !important; }
.ai-search-block .ai-search-block__faq details { background: #fff !important; border: 0 !important; border-radius: var(--v2-r-card); padding: clamp(24px, 2.4vw, 32px) !important; box-shadow: 0 20px 44px -36px rgba(1, 26, 46, .45); }
.ai-search-block .ai-search-block__faq summary { pointer-events: none; cursor: default; display: block !important; padding: 0 !important; font: 500 1.375rem/1.2 var(--font-secondary) !important; color: var(--v2-ink); }
.ai-search-block .ai-search-block__faq summary::after, .ai-search-block .ai-search-block__faq summary::before { content: none !important; display: none !important; }
.ai-search-block .ai-search-block__faq details > div { padding: 0 !important; }
.ai-search-block .ai-search-block__faq details p { margin: 12px 0 0 !important; font-size: .9375rem !important; line-height: 1.6 !important; color: #3c4250 !important; }
@media (min-width: 992px) {
  .ai-search-block .ai-search-block__facts { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 32px !important; }
  .ai-search-block .ai-search-block__faq { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px !important; }
}


.service-item .service-item__content {
  left: 50% !important; right: auto !important; bottom: 14px !important; transform: translateX(-50%);
  width: max-content !important; max-width: calc(100% - 28px) !important; min-height: 0 !important; box-sizing: border-box;
  padding: 10px 18px 11px !important; gap: 4px !important;
  background: rgba(255, 255, 255, .58) !important; border-color: rgba(255, 255, 255, .45) !important;
  -webkit-backdrop-filter: blur(10px) saturate(140%) !important; backdrop-filter: blur(10px) saturate(140%) !important;
}
.service-item .service-item__header, .service-item .service-item__title { font-size: 1.0625rem !important; line-height: 1.15 !important; text-align: center; }
.service-item .service-item__price { font-size: .9375rem !important; }
@media (min-width: 1024px) { .service-item .service-item__header, .service-item .service-item__title { font-size: 1.125rem !important; } }


@media (min-width: 992px) {
  .preview .preview__wrapper { display: flex !important; flex-direction: column !important; justify-content: center !important; align-items: center !important; gap: 0 !important; height: 100% !important; }
  .preview .preview__body { flex: 0 0 auto !important; min-height: 0 !important; height: auto !important; margin: 0 !important; padding: 0 !important; }
  .preview .preview__lead { margin: 0 0 20px !important; }
  .preview .preview__header { margin: 0 0 28px !important; }
  .preview .preview__text { margin: 0 !important; }
  .preview .preview__footer { margin: 36px 0 0 !important; padding: 0 !important; flex: 0 0 auto !important; }
}


[data-eva-cut] { padding-bottom: 0 !important; margin-bottom: 0 !important; border-bottom: 0 !important; }
[data-eva-cont] { padding-top: 0 !important; margin-top: 0 !important; border-top: 0 !important; }


.v2-menus { display: flex !important; flex-wrap: wrap; justify-content: center; gap: clamp(20px, 2.5vw, 32px) !important; }
.v2-menus .v2-menu { display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 0 !important;
  width: min(380px, 100%) !important; padding: 0 !important; overflow: hidden; box-shadow: 0 24px 50px -40px rgba(1, 26, 46, .5); }
.v2-menus .v2-menu__cover { grid-row: auto !important; width: 100%; aspect-ratio: 4 / 5 !important; border-radius: 0 !important; }
.v2-menus .v2-menu__cover img { object-position: 50% 0; }
.v2-menus .v2-menu__body { display: flex !important; flex-direction: column; align-items: center; text-align: center; padding: 24px 24px 28px; }
.v2-menus .v2-menu__body > * { grid-column: auto !important; }
.v2-menus .v2-menu__season { margin-bottom: 8px; }
.v2-menus .v2-menu__price { margin-top: 12px; }
.v2-menus .v2-menu__actions { display: flex !important; flex-direction: row !important; width: 100%; gap: 10px; margin-top: 20px !important; }
.v2-menus .v2-menu__actions .btn { flex: 1 1 0 !important; width: auto !important; min-width: 0; justify-content: center; padding-left: 12px !important; padding-right: 12px !important; }
.v2-menus .v2-menu__title { font-size: clamp(1.25rem, 1rem + .6vw, 1.5rem) !important; }


.header-burger i { display: none !important; }
.header-burger span { background: transparent !important; display: flex !important; align-items: center; gap: 7px; width: 100%; padding: 1px 0 0 !important; box-sizing: border-box; }
.header-burger span::before, .header-burger span::after { content: ""; flex: 1 1 0; height: 1px; background: currentColor; }

.footer > * { position: relative; z-index: 1; }
.footer::after { position: absolute !important; z-index: 0; left: 50% !important; top: 50% !important; transform: translate(-50%, -50%);
  margin: 0 !important; width: calc(100% - 40px) !important; opacity: .06 !important; }


.swiper-slide > .formats-title { left: 14px !important; right: 14px !important; bottom: 14px !important; padding: 10px 14px !important;
  min-height: calc(2 * 1.2em + 20px) !important; align-items: center; justify-content: center;
  background: rgba(255, 255, 255, .58) !important; border: 1px solid rgba(255, 255, 255, .45);
  -webkit-backdrop-filter: blur(10px) saturate(140%) !important; backdrop-filter: blur(10px) saturate(140%) !important;
  font-size: 1.0625rem !important; box-sizing: border-box; }
.swiper-slide > .formats-title h3 { font: inherit !important; letter-spacing: inherit; margin: 0 !important; }
@media (min-width: 1024px) { .swiper-slide > .formats-title { font-size: 1.125rem !important; } }
.v2-pag-hide { display: none !important; }

.footer { padding-top: clamp(40px, 4.5vw, 64px) !important; }
.footer__secondary { margin-top: clamp(28px, 3vw, 40px) !important; padding-top: 18px !important; }


@media (min-width: 992px) {
  .contacts { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; gap: 24px !important; align-items: stretch !important; padding-top: 40px !important; }
  .contacts__main, .contacts__form { background: var(--v2-paper) !important; border-radius: var(--v2-r-panel) !important; padding: clamp(40px, 3.6vw, 56px) !important; box-sizing: border-box; margin: 0 !important; height: auto !important; }
  .contacts__main { display: flex !important; }
  .contacts__content { display: flex; flex-direction: column; width: 100%; }
  .contacts__header { margin-bottom: 28px !important; }
  .contacts__primary { margin-bottom: 28px !important; }
  .contacts__social { margin-top: auto !important; padding-top: 24px !important; }
  .contacts__form-header { font-size: clamp(1.75rem, 1.3rem + 1.2vw, 2.25rem) !important; margin-bottom: 22px !important; }
}


.root { overflow: visible !important; overflow-x: clip !important; }
@supports not (overflow: clip) { .root { overflow-x: visible !important; } }


.primary.d5d .primary__media { background: transparent !important; padding: 0 !important; height: auto !important; }
.primary.d5d .primary__media .migx-slider, .primary.d5d .primary__media .migx-slider > .container { padding: 0 !important; margin: 0 !important; max-width: none !important; width: 100% !important; background: transparent !important; }
.primary.d5d .primary__media .swiper { aspect-ratio: 4 / 5; height: auto !important; border-radius: var(--v2-r-panel); overflow: hidden; }
.primary.d5d .primary__media .swiper-wrapper, .primary.d5d .primary__media .swiper-slide, .primary.d5d .primary__media .primary__image { height: 100% !important; }
.primary.d5d .primary__media .primary__image { aspect-ratio: auto !important; width: 100% !important; max-width: none !important; margin: 0 !important; border-radius: 0 !important; }
.primary.d5d .primary__media .primary__image img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block; }
.primary.d5d .primary__media .swiper-pagination { position: relative !important; margin-top: 14px; }

.primary.d5d .primary__media .migx-slider > .container { padding: 0 0 0 20px !important; }
.primary.d5d .primary__media .swiper { border-radius: 20px; }
@media (max-width: 991px) { .primary.d5d .primary__media .migx-slider > .container { padding: 0 16px !important; } }


#plan .plan-content { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: clamp(20px, 2.5vw, 32px) !important; align-items: start; }
#plan .plan-content > .right { order: -1; width: auto !important; height: auto !important; padding: 0 !important; margin: 0 !important; background: transparent !important; border-radius: var(--v2-r-panel); overflow: hidden; }
#plan .plan-image { width: 100% !important; height: auto !important; object-fit: cover !important; display: block; }
#plan .plan-content > .left { width: auto !important; margin: 0 !important; background: #fff !important; border-radius: var(--v2-r-panel); padding: clamp(28px, 3.6vw, 56px) !important; box-sizing: border-box; box-shadow: 0 24px 50px -44px rgba(1, 26, 46, .45); }
#plan .plan-content > .left p { margin: 0 0 18px !important; line-height: 1.6; }
#plan .plan-list { margin: 8px 0 0 !important; }
@media (min-width: 992px) {
  #plan .plan-content > .left { display: grid !important; grid-template-columns: minmax(0, .9fr) minmax(0, 1.4fr); column-gap: clamp(40px, 4vw, 72px); align-items: start; }
  #plan .plan-content > .left > p { grid-column: 1; }
  #plan .plan-list { grid-column: 2; grid-row: 1 / span 4; margin: 0 !important; display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; align-content: start; }
  #plan .plan-list li { border-top: 1px solid var(--v2-line); }
  #plan .plan-list li:nth-child(-n+2) { border-top: 0; }
}

#plan .plan-content > .right { background: #d2d5cc !important; display: flex !important; align-items: center; justify-content: center; }
#plan .plan-image { object-fit: contain !important; }
@media (min-width: 992px) {
  #plan .plan-content { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) !important; align-items: stretch !important; }
  #plan .plan-content > .right { order: 0; grid-column: 1; grid-row: 1; height: 100% !important; }
  #plan .plan-content > .left { grid-column: 2; grid-row: 1; display: block !important; }
  #plan .plan-list { display: block !important; margin-top: 8px !important; }
  #plan .plan-list li { border-top: 1px solid var(--v2-line); }
  #plan .plan-list li:first-child { border-top: 0; }
  #plan .plan-list li:nth-child(2) { border-top: 1px solid var(--v2-line); }
}


.advantages-grid { align-items: stretch !important; }
.advantages-grid .custom-advantage { display: flex !important; flex-direction: column; background: var(--v2-paper) !important; border-radius: var(--v2-r-card); overflow: hidden; height: 100%; }
.advantages-grid .custom-advantage__media { margin: 0 !important; border-radius: 0 !important; aspect-ratio: 5 / 4; overflow: hidden; }
.advantages-grid .custom-advantage__media img { width: 100%; height: 100%; object-fit: cover; border-radius: 0 !important; }
.advantages-grid .custom-advantage__title { margin: 0 !important; padding: 24px 22px 0 !important; min-height: 0 !important; height: auto !important; text-align: center; }
.advantages-grid .custom-advantage__title span { font: 500 clamp(1.125rem, .95rem + .5vw, 1.375rem)/1.15 var(--font-secondary) !important; letter-spacing: .04em; text-transform: uppercase; overflow-wrap: anywhere; hyphens: auto; text-wrap: balance; }
.advantages-grid .custom-advantage__desc { background: transparent !important; margin: 0 !important; padding: 10px 22px 26px !important; min-height: 0 !important; height: auto !important; flex: 1 1 auto; display: block !important; text-align: center; font: 400 .9375rem/1.55 var(--font-primary) !important; color: #3c4250 !important; }

.advantages-grid .custom-advantage__title span { hyphens: manual !important; overflow-wrap: normal !important; font-size: clamp(1rem, .85rem + .45vw, 1.25rem) !important; }


.primary__services, .mobile-buffet-page .primary__services { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; column-gap: clamp(20px, 2.4vw, 36px) !important; row-gap: 0 !important; }
@media (min-width: 768px) { .primary__services { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; } }
@media (max-width: 380px) { .primary__services { grid-template-columns: minmax(0, 1fr) !important; } }
.primary__services .primary-item { position: relative; display: flex !important; align-items: center; min-height: 0 !important; padding: 13px 0 13px 20px !important; background: transparent !important; border-radius: 0 !important; overflow: visible !important; border-bottom: 1px solid var(--v2-line); box-shadow: none !important; }
.primary__services .primary-item::before { content: ""; position: absolute; left: 2px; top: 50%; width: 7px; height: 7px; margin-top: -3.5px; border-radius: 50%; background: linear-gradient(135deg, #e6d3a8, #c9ab70); }
.primary__services .primary-item__media { display: none !important; }
.primary__services .primary-item__text, .primary__services .primary-item__text strong { font: 500 .9375rem/1.35 var(--font-primary) !important; color: var(--v2-ink); text-align: left; }
.primary__services:has(> .primary-item:only-child) { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; }

.footer { padding-top: clamp(36px, 3.6vw, 52px) !important; padding-bottom: calc(22px + var(--v2-bar-h)) !important; }
.footer__primary { margin-bottom: 0 !important; }
.footer__secondary { margin-top: clamp(24px, 2.4vw, 32px) !important; padding-top: 16px !important; }
.v2-fmsgs { margin-bottom: 14px !important; }


.header:not(.header--base) { padding-top: 12px !important; }
.header:not(.header--base) .header__main { column-gap: 16px !important; }
.header:not(.header--base) .header__cart { flex: 0 0 44px !important; width: 44px !important; }


.custom-service > .custom-service__title { text-align: center; padding: 22px 20px 0 !important; }
.custom-service > .custom-service__title, .custom-service > .custom-service__title span { font: 500 clamp(1rem, .9rem + .35vw, 1.1875rem)/1.2 var(--font-secondary) !important; letter-spacing: .05em; text-transform: uppercase; text-wrap: balance; }
.custom-service > .custom-service__price { text-align: center; padding: 0 20px 24px !important; font: 600 .875rem/1.2 var(--font-primary) !important; letter-spacing: .04em; color: var(--v2-ink) !important; font-variant-numeric: tabular-nums; }
.custom-service > .custom-service__price::before { content: ""; display: block; width: 28px; height: 1px; margin: 12px auto 12px; background: #c9ab70; }
@media (max-width: 767px) {
  .custom-service > .custom-service__title, .custom-service > .custom-service__price { text-align: left; }
  .custom-service > .custom-service__price::before { margin: 8px 0 8px; }
  .custom-service > .custom-service__price { padding-bottom: 0 !important; }
}

@media (min-width: 992px) and (max-width: 1199.98px) { .header--base .header__address { visibility: hidden !important; } }

@media (min-width: 992px) { .offer { padding-left: max(20px, calc((100% - 1360px) / 2)) !important; padding-right: max(20px, calc((100% - 1360px) / 2)) !important; } }


#cart, .fancybox__content, .quick-order__modal, .popup-item__wrapper, .popup-item__content, .nav { scrollbar-width: thin; scrollbar-color: rgba(1, 26, 46, .22) transparent; overscroll-behavior: contain; }
#cart::-webkit-scrollbar, .fancybox__content::-webkit-scrollbar, .quick-order__modal::-webkit-scrollbar, .popup-item__wrapper::-webkit-scrollbar, .popup-item__content::-webkit-scrollbar { width: 6px; background: transparent; }
#cart::-webkit-scrollbar-track, .fancybox__content::-webkit-scrollbar-track, .quick-order__modal::-webkit-scrollbar-track, .popup-item__wrapper::-webkit-scrollbar-track, .popup-item__content::-webkit-scrollbar-track { background: transparent; margin: 22px 0; }
#cart::-webkit-scrollbar-thumb, .fancybox__content::-webkit-scrollbar-thumb, .quick-order__modal::-webkit-scrollbar-thumb, .popup-item__wrapper::-webkit-scrollbar-thumb, .popup-item__content::-webkit-scrollbar-thumb { background: rgba(1, 26, 46, .2); border-radius: 6px; border: 0; }
#cart::-webkit-scrollbar-thumb:hover, .fancybox__content::-webkit-scrollbar-thumb:hover { background: rgba(1, 26, 46, .35); }


.box-item { border: 0 !important; border-radius: var(--v2-r-card) !important; overflow: hidden; box-shadow: 0 22px 46px -40px rgba(1, 26, 46, .5) !important; }
.box-item__content { padding: 22px 22px 24px !important; gap: 16px !important; text-align: center; }
.box-item__title { font: 500 clamp(1.0625rem, .95rem + .35vw, 1.25rem)/1.2 var(--font-secondary) !important; letter-spacing: .05em !important; text-transform: uppercase !important; text-wrap: balance; min-height: 2.4em; display: flex; align-items: center; justify-content: center; }
.box-item__vars { display: grid !important; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 0 !important; margin-top: auto !important; border-top: 1px solid var(--v2-line); border-bottom: 1px solid var(--v2-line); }
.box-item__var { display: flex !important; flex-direction: column; align-items: center; justify-content: center; gap: 6px !important; padding: 14px 8px !important; border: 0 !important; }
.box-item__var + .box-item__var { border-left: 1px solid var(--v2-line) !important; }
.box-item__size { font: 500 .75rem/1.2 var(--font-primary) !important; letter-spacing: .1em; text-transform: uppercase; color: var(--v2-muted) !important; }
.box-item__price { font: 600 1.25rem/1 var(--font-primary) !important; color: var(--v2-ink); }
.box-item .btn { min-height: 50px !important; margin-top: 2px !important; background: var(--v2-ink) !important; color: #fff !important; border-color: var(--v2-ink) !important; }
.box-item .btn:hover { background: var(--v2-ink-hover, #0b2a44) !important; }
.box-item .btn i, .box-item .btn svg { color: #fff; fill: currentColor; }


.commercial-intent-block .container { max-width: 1240px; margin: 0 auto; display: grid; row-gap: clamp(24px, 3vw, 40px); }
.commercial-intent-block__head { text-align: center; }
.commercial-intent-block__head h2 { margin: 0 0 16px !important; }
.commercial-intent-block__head p { max-width: 46rem !important; margin: 0 auto !important; font-size: 1.0625rem; line-height: 1.7; color: #33414f; }
.commercial-intent-block .commercial-intent-block__grid { max-width: none !important; margin: 0 !important; display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 16px !important; counter-reset: ciStep; }
.commercial-intent-block__card { counter-increment: ciStep; background: var(--v2-paper) !important; border: 0 !important; border-radius: var(--v2-r-card); padding: clamp(24px, 2.4vw, 32px) !important; text-align: center; }
.commercial-intent-block__card::before { content: counter(ciStep, decimal-leading-zero); display: block; font: 500 2rem/1 var(--font-secondary); color: #c9ab70; margin-bottom: 14px; }
.commercial-intent-block__card h3 { font: 500 1.25rem/1.2 var(--font-secondary) !important; letter-spacing: .05em; text-transform: uppercase; margin: 0 0 10px !important; }
.commercial-intent-block__card p { margin: 0 auto !important; max-width: none !important; font-size: .9375rem; line-height: 1.6; color: #3c4250; }
.commercial-intent-block__cta { align-items: center !important; text-align: center; gap: 16px !important; }
.commercial-intent-block__cta p { max-width: 40rem !important; margin: 0 !important; color: var(--v2-muted); font-size: .9375rem; }
.commercial-intent-block .commercial-intent-block__faq { display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 16px !important; border: 0 !important; }
.commercial-intent-block .commercial-intent-block__faq details { max-width: none !important; margin: 0 !important; background: #fff !important; border: 1px solid var(--v2-line) !important; border-radius: var(--v2-r-card); padding: clamp(24px, 2.4vw, 32px) !important; }
.commercial-intent-block .commercial-intent-block__faq summary { pointer-events: none; cursor: default; display: block !important; padding: 0 !important; font: 500 1.25rem/1.2 var(--font-secondary) !important; color: var(--v2-ink); }
.commercial-intent-block .commercial-intent-block__faq summary::after, .commercial-intent-block .commercial-intent-block__faq summary::before { content: none !important; display: none !important; }
.commercial-intent-block .commercial-intent-block__faq details > div { padding: 0 !important; }
.commercial-intent-block .commercial-intent-block__faq details p { margin: 10px 0 0 !important; max-width: none !important; font-size: .9375rem; line-height: 1.6; color: #3c4250; }
@media (min-width: 992px) {
  .commercial-intent-block .commercial-intent-block__grid, .commercial-intent-block .commercial-intent-block__faq { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px !important; }
}


.service-item { position: relative; }
.service-item__media { position: relative; }
.service-item__media::after { content: ""; position: absolute; inset: auto 0 0 0; height: 48%; background: linear-gradient(to top, rgba(1, 26, 46, .72), rgba(1, 26, 46, 0)); pointer-events: none; z-index: 1; }
.service-item::before { content: ""; position: absolute; inset: 12px; border: 1px solid rgba(255, 255, 255, .55); border-radius: 12px; z-index: 11; pointer-events: none; }
.service-item .service-item__content { left: 24px !important; right: 24px !important; bottom: 30px !important; transform: none !important; width: auto !important; max-width: none !important; min-height: 0 !important;
  padding: 0 !important; gap: 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; text-align: center; z-index: 10; }
.service-item .service-item__header, .service-item .service-item__title { color: #fff !important; font-size: clamp(1.0625rem, .95rem + .4vw, 1.3125rem) !important; text-shadow: 0 1px 12px rgba(1, 26, 46, .35); }
.service-item .service-item__price { color: #f1e3c4 !important; font: 600 .875rem/1 var(--font-primary) !important; letter-spacing: .04em; margin-top: 10px; }
.service-item .service-item__price br { display: none; }
.service-item .service-item__price::before { content: ""; display: block; width: 26px; height: 1px; background: #f1e3c4; margin: 0 auto 10px; }


.swiper-slide:has(> .formats-title)::before { content: ""; position: absolute; inset: 12px; border: 1px solid rgba(255, 255, 255, .55); border-radius: 12px; z-index: 3; pointer-events: none; }
.swiper-slide:has(> .formats-title)::after { content: ""; position: absolute; inset: auto 0 0 0; height: 45%; background: linear-gradient(to top, rgba(1, 26, 46, .72), rgba(1, 26, 46, 0)); z-index: 1; pointer-events: none; }
.swiper-slide > .formats-title { left: 24px !important; right: 24px !important; bottom: 30px !important; min-height: 0 !important; padding: 0 !important; background: transparent !important; border: 0 !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important;
  color: #fff !important; z-index: 2; text-shadow: 0 1px 12px rgba(1, 26, 46, .35); font-size: clamp(1.0625rem, .95rem + .4vw, 1.25rem) !important; }
.swiper-slide > .formats-title h3 { color: #fff !important; }
.service-item .service-item__price:empty { display: none !important; }
.service-item__media::after { height: 62% !important; background: linear-gradient(to top, rgba(1, 26, 46, .8) 0%, rgba(1, 26, 46, .45) 45%, rgba(1, 26, 46, 0) 100%) !important; }
.service-item .service-item__content { bottom: 28px !important; }


@media (min-width: 992px) {
  .nav__secondary { padding-top: 0 !important; }
  .nav__secondary li a { min-height: 56px; display: flex !important; align-items: center; }
}
.nav__footer .container { justify-content: flex-start !important; align-items: center; gap: 10px !important; }
.nav__footer .nav__social { margin: 0 !important; }
.nav__footer .nav__social a, .nav__footer .nav__social i { width: 40px !important; height: 40px !important; }


.menus:not(.v2-menus) { display: block !important; max-width: 980px !important; margin: 0 auto !important; background: #fff; border-radius: var(--v2-r-panel); padding: 6px clamp(18px, 3vw, 44px) !important; box-shadow: 0 24px 50px -44px rgba(1, 26, 46, .45); counter-reset: evaMenu; }
.menus:not(.v2-menus) > .menu-item { counter-increment: evaMenu; background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--v2-line) !important; border-radius: 0 !important; box-shadow: none !important; margin: 0 !important; overflow: visible !important; }
.menus:not(.v2-menus) > .menu-item:last-child { border-bottom: 0 !important; }
.menus:not(.v2-menus) .menu-item__header { display: grid !important; grid-template-columns: auto minmax(0, 1fr) auto auto auto !important; grid-template-areas: "num title wrap price arrow" !important; align-items: center; column-gap: clamp(12px, 2vw, 28px) !important; padding: 24px 0 !important; cursor: pointer; }
.menus:not(.v2-menus) .menu-item__header::before { content: counter(evaMenu, decimal-leading-zero); grid-area: num; font: 500 1.375rem/1 var(--font-secondary); color: #c9ab70; min-width: 1.6em; }
.menus:not(.v2-menus) .menu-item__title { font: 500 clamp(1.0625rem, .95rem + .4vw, 1.3125rem)/1.2 var(--font-secondary) !important; letter-spacing: .05em; text-transform: uppercase; }
.menus:not(.v2-menus) .menu-item__weight { font-size: .8125rem !important; }
.menus:not(.v2-menus) .menu-item__value { font: 600 1.125rem/1 var(--font-primary) !important; }
.menus:not(.v2-menus) .menu-item__arrow { width: 34px !important; height: 34px !important; background: transparent !important; border: 1px solid var(--v2-line); color: var(--v2-ink); }
.menus:not(.v2-menus) .menu-item.open .menu-item__arrow { background: var(--v2-ink) !important; border-color: var(--v2-ink); color: #fff; }
.menus:not(.v2-menus) .menus-item__sections { padding: 0 0 30px calc(1.6em + clamp(12px, 2vw, 28px)) !important; }
.menus:not(.v2-menus) .menu-section__title { color: #b39257 !important; font-size: .6875rem !important; letter-spacing: .18em !important; margin-bottom: 10px !important; }
.menus:not(.v2-menus) .menu-section__item { gap: 8px !important; padding: 6px 0 !important; font-size: .9375rem; }
.menus:not(.v2-menus) .menu-section__item span:first-child { flex: 0 1 auto !important; }
.menus:not(.v2-menus) .menu-section__item::after { content: none; }
.menus:not(.v2-menus) .menu-section__item span:first-child::after { content: none !important; }
.menus:not(.v2-menus) .menu-section__item span:last-child { order: 3; }
.menus:not(.v2-menus) .menu-section__item::before { content: ""; order: 2; flex: 1 1 24px; border-bottom: 1px dotted rgba(1, 26, 46, .28); transform: translateY(-4px); min-width: 16px; }
@media (max-width: 767px) {
  .menus:not(.v2-menus) .menu-item__header { grid-template-columns: auto minmax(0, 1fr) auto !important; grid-template-areas: "num title arrow" "num wrap price" !important; row-gap: 6px; padding: 18px 0 !important; }
  .menus:not(.v2-menus) .menus-item__sections { padding-left: 0 !important; }
}

.primary__services .primary-item { align-items: flex-start !important; padding: 14px 0 14px 20px !important; }
.primary__services .primary-item::before { top: calc(14px + .675em) !important; margin-top: -3.5px !important; }
.primary__services .primary-item__text { font-size: .9375rem; }


html { scrollbar-gutter: stable; }
html { overflow-y: scroll !important; }
html.with-fancybox, html.with-fancybox body { overflow-y: scroll !important; }
body.nav-open { overflow: visible !important; }
.compensate-for-scrollbar, body.compensate-for-scrollbar, html.with-fancybox body { padding-right: 0 !important; margin-right: 0 !important; }
.nav, .fancybox__container { overscroll-behavior: contain; }
html.with-fancybox body, html.with-fancybox body.hide-scrollbar { width: auto !important; overflow: visible !important; --fancybox-scrollbar-compensate: 0px !important; }
html { --fancybox-scrollbar-compensate: 0px !important; }

body, body.t-body { overflow: visible !important; }


#cart .cart-title { margin-bottom: 4px !important; }
#cart .cart-count { margin-bottom: 16px !important; }
#cart .cart-delivery { padding: 10px 14px !important; }
#cart .cart-items { padding-top: 12px !important; padding-bottom: 12px !important; }
#cart .cart-total { padding-top: 10px !important; padding-bottom: 14px !important; }
#cart .cart-form { margin-top: 10px !important; padding-top: 16px !important; padding-bottom: 0 !important; }
#cart .cart-form__title { margin-bottom: 4px !important; }
#cart .form-content input { padding: 11px 2px !important; }
#cart .form-policy { margin: 12px 0 14px !important; }
@media (min-width: 768px) { #cart.fancybox__content, .cart-layer #cart.fancybox__content { padding: 28px 36px 32px !important; } }

#cart { scrollbar-width: thin; scrollbar-color: transparent transparent; }
#cart:hover { scrollbar-color: rgba(1, 26, 46, .22) transparent; }
#cart::-webkit-scrollbar { width: 6px !important; }
#cart::-webkit-scrollbar-thumb { background: transparent !important; }
#cart:hover::-webkit-scrollbar-thumb { background: rgba(1, 26, 46, .22) !important; }

#cart.fancybox__content, .cart-layer #cart.fancybox__content {
  background:
    linear-gradient(#fff 30%, rgba(255, 255, 255, 0)) top / 100% 40px no-repeat local,
    linear-gradient(rgba(255, 255, 255, 0), #fff 70%) bottom / 100% 40px no-repeat local,
    radial-gradient(farthest-side at 50% 0, rgba(1, 26, 46, .14), rgba(1, 26, 46, 0)) top / 100% 14px no-repeat scroll,
    radial-gradient(farthest-side at 50% 100%, rgba(1, 26, 46, .14), rgba(1, 26, 46, 0)) bottom / 100% 14px no-repeat scroll,
    #fff !important;
}

.menus:not(.v2-menus) .menu-item__header[data-num]::before { content: attr(data-num); }

.menus:not(.v2-menus)[data-eva-cut] { border-bottom-left-radius: 0 !important; border-bottom-right-radius: 0 !important; padding-bottom: 0 !important; box-shadow: none !important; }
.menus:not(.v2-menus)[data-eva-cut] > .menu-item:last-child { border-bottom: 1px solid var(--v2-line) !important; }
.menus:not(.v2-menus)[data-eva-cont] { border-top-left-radius: 0 !important; border-top-right-radius: 0 !important; padding-top: 0 !important; }


.formats-preheader { font: 500 clamp(1.25rem, 1.05rem + .7vw, 1.625rem)/1.35 var(--font-secondary) !important; letter-spacing: .01em !important; text-align: center; max-width: 44rem; margin-left: auto !important; margin-right: auto !important; }
.root .cards { display: grid !important; grid-template-columns: minmax(0, 1fr); gap: 0 !important; }
.root .cards .card { background: transparent !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important; padding: 22px 8px !important; min-height: 0 !important; text-align: center; }
.root .cards .card + .card { border-top: 1px solid var(--v2-line) !important; }
.root .cards .card::before { content: ""; display: block; width: 28px; height: 1px; margin: 0 auto 16px; background: #c9ab70; }
.root .cards .card p { margin: 0 !important; font: 500 clamp(1.0625rem, .95rem + .35vw, 1.25rem)/1.35 var(--font-secondary) !important; letter-spacing: .01em !important; text-transform: none !important; color: var(--v2-ink) !important; }
.root .cards .card p::first-letter { text-transform: uppercase; }
@media (min-width: 768px) {
  .root .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .root .cards .card + .card { border-top: 0 !important; }
}
@media (min-width: 992px) {
  .root .cards { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .root .cards .card { padding: 8px clamp(16px, 2vw, 32px) !important; }
  .root .cards .card + .card { border-left: 1px solid var(--v2-line) !important; }
}


.advantages-grid .custom-advantage { position: relative; background: #0d2236 !important; aspect-ratio: 4 / 5; }
.advantages-grid .custom-advantage__media { position: absolute !important; inset: 0; aspect-ratio: auto !important; height: 100%; }
.advantages-grid .custom-advantage__media img { height: 100% !important; }
.advantages-grid .custom-advantage__media::after { content: ""; position: absolute; inset: auto 0 0 0; height: 62%; background: linear-gradient(to top, rgba(1, 26, 46, .85) 0%, rgba(1, 26, 46, .5) 45%, rgba(1, 26, 46, 0) 100%); }
.advantages-grid .custom-advantage::before { content: ""; position: absolute; inset: 12px; border: 1px solid rgba(255, 255, 255, .55); border-radius: 12px; z-index: 3; pointer-events: none; }
.advantages-grid .custom-advantage__title { position: relative; z-index: 2; margin-top: auto !important; padding: 0 26px !important; }
.advantages-grid .custom-advantage__title span { color: #fff !important; text-shadow: 0 1px 12px rgba(1, 26, 46, .35); }
.advantages-grid .custom-advantage__desc { position: relative; z-index: 2; flex: 0 0 auto !important; padding: 10px 26px 34px !important; color: rgba(255, 255, 255, .85) !important; }
.advantages-grid .custom-advantage__desc::before { content: ""; display: block; width: 26px; height: 1px; background: #f1e3c4; margin: 0 auto 10px; }


.advantages-grid .custom-advantage { display: grid !important; grid-template-rows: 1fr auto auto; }
.advantages-grid .custom-advantage__title { grid-row: 2; margin: 0 !important; align-self: end; }
.advantages-grid .custom-advantage__desc { grid-row: 3; }
.root .cards .card { display: block !important; }


.filter { z-index: 40 !important; }
@media (min-width: 992px) { .filter { top: 84px; } }
@media (max-width: 991.98px) { .filter { top: auto !important; } }
.venues { display: grid !important; columns: auto !important; grid-template-columns: minmax(0, 1fr) !important; gap: 24px !important; max-width: 1180px; margin-left: auto !important; margin-right: auto !important; }
.venues-item { border-radius: var(--v2-r-card) !important; break-inside: auto; }
.venues-item__mono { display: grid; place-items: center; aspect-ratio: 4 / 3; background: var(--v2-paper); font: 500 clamp(4rem, 3rem + 4vw, 6.5rem)/1 var(--font-secondary); color: #c9ab70; letter-spacing: 0; }
@media (min-width: 992px) {
  .venues-item { display: grid !important; grid-template-columns: minmax(0, 38%) minmax(0, 1fr); align-items: stretch; }
  .venues-item > .venues-item__media, .venues-item > .venues-item__mono { aspect-ratio: auto !important; height: 100%; min-height: 300px; }
  .venues-item__content { padding: clamp(28px, 3vw, 44px) !important; }
}


@media (min-width: 1024px) {
  .events[data-eva-cut] { height: 0 !important; min-height: 0 !important; padding-bottom: 0 !important; overflow: visible !important; position: relative; z-index: 30; align-items: start; }
  .t-rec:has(.events[data-eva-cut]) { overflow: visible !important; position: relative; z-index: 30; }
  .events[data-eva-cut] .events__aside { position: static !important; }
  .events[data-eva-cont] { padding-top: clamp(8px, 2vw, 24px) !important; }
  .events[data-eva-cont] > .events__header { grid-row: 1; }
  .events[data-eva-cont] > .events__main { grid-row: 2; }
}

@media (min-width: 1024px) { .filter__content, .filter.open .filter__content { overflow: visible !important; max-height: none !important; } }


#cart, .cart-layer .fancybox__content, .quick-order__modal, .popup-item__wrapper, .popup-item__content { scrollbar-width: none !important; -ms-overflow-style: none; }
#cart::-webkit-scrollbar, .cart-layer .fancybox__content::-webkit-scrollbar, .quick-order__modal::-webkit-scrollbar, .popup-item__wrapper::-webkit-scrollbar, .popup-item__content::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; }
.cart-layer .fancybox__slide { overflow: hidden !important; scrollbar-width: none; }
.cart-layer .fancybox__slide::-webkit-scrollbar { display: none; }


#cart .dscart-item { position: relative; }
#cart .dscart-item button[name="remove"] { position: absolute !important; top: 14px; right: 0; width: 30px !important; height: 30px !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important;
  border: 1px solid var(--v2-line) !important; border-radius: 50% !important; background: #fff !important; color: var(--v2-muted) !important; cursor: pointer; display: grid !important; place-items: center; font-size: 0 !important; transition: background .2s, color .2s, border-color .2s; }
#cart .dscart-item button[name="remove"]::before { content: "×"; font: 400 20px/1 var(--font-primary); margin-top: -2px; }
#cart .dscart-item button[name="remove"]:hover { background: var(--v2-ink) !important; color: #fff !important; border-color: var(--v2-ink) !important; }
#cart .dscart-item .form-title { padding-right: 40px; }

#cart .dscart-item { grid-template-columns: 128px minmax(0, 1fr) !important; gap: 18px !important; align-items: center !important; }
#cart .dscart-item__img { width: 128px !important; height: 128px !important; border-radius: 14px !important; }
@media (max-width: 575px) {
  #cart .dscart-item { grid-template-columns: 96px minmax(0, 1fr) !important; gap: 14px !important; }
  #cart .dscart-item__img { width: 96px !important; height: 96px !important; }
}


@media (max-width: 575px) {
  .quick-order__container { padding-left: 0 !important; padding-right: 0 !important; }
  .quick-order__modal { width: 100% !important; max-width: none !important; margin: 0 !important; box-sizing: border-box; }
  .primary__row { grid-template-columns: minmax(0, 1fr) !important; }
  .primary__media, .primary__main, .primary__content { min-width: 0 !important; max-width: 100% !important; }
  .primary .primary__header, .primary h1.primary__header, .primary__header.adam-header { font-size: clamp(1.625rem, 7.4vw, 2.125rem) !important; }
}



@media (max-width: 575px) { .adam-contact-content h2 { font-size: clamp(1.25rem, 5.9vw, 1.75rem) !important; padding: 0 4px; letter-spacing: .03em !important; } }


@media (max-width: 575px) {
  
  .v2-menus .v2-menu__actions { flex-direction: column !important; }
  .v2-menus .v2-menu__actions .btn { width: 100% !important; flex: none !important; font-size: .8125rem !important; letter-spacing: .08em !important; }
  
  .preview .btn-nav[data-preview-prev] { left: 16px !important; right: auto !important; }
  .preview .btn-nav[data-preview-next] { right: 16px !important; left: auto !important; }
  
  
  .primary__image, .primary.d5d .primary__media .swiper { border-radius: 16px !important; overflow: hidden !important; }
  
  
  .v2-callpop { left: 16px !important; right: 16px !important; min-width: 0 !important; bottom: calc(190px + env(safe-area-inset-bottom, 0px)) !important; }
  
  .fancybox__slide:has(.popup-item__wrapper) { padding: 16px !important; }
  
  #plan .plan-list li { padding-top: 12px !important; padding-bottom: 12px !important; align-items: flex-start !important; }
}

.v2-menu-box .carousel__button.is-prev, .v2-menu-box .carousel__button.is-next, .v2-menu-box .f-button.is-prev, .v2-menu-box .f-button.is-next { background: rgba(1, 26, 46, .72) !important; color: #fff !important; border-radius: 50% !important; width: 44px !important; height: 44px !important; }
.v2-menu-box .carousel__button svg, .v2-menu-box .f-button svg { stroke: #fff !important; filter: none !important; }

.form-counter button[data-change="down"], .form-counter button[name="down"] { font-size: 0 !important; }
.form-counter button[data-change="down"]::before, .form-counter button[name="down"]::before { content: "−"; font-size: 1.125rem; line-height: 1; }

.header-cart__count { background: #c9ab70 !important; color: var(--v2-ink) !important; }
@media (max-width: 575px) { .preview .preview__nav--prev { left: calc(166px - 50vw) !important; right: auto !important; } .preview .preview__nav--next { right: calc(166px - 50vw) !important; left: auto !important; } }
@media (max-width: 575px) {
  .primary.d5d .primary__wrap { padding-left: 16px !important; padding-right: 16px !important; }
  .primary.d5d .primary__media .migx-slider, .primary.d5d .primary__media .migx-slider > .container { border-radius: 16px !important; overflow: hidden !important; }
}
@media (max-width: 575px) {
  .primary.d5d .primary__media { border-radius: 16px !important; overflow: hidden !important; }
  .section-white .adam-contact-content > h2, .wrapper.adam-contact-content h2 { font-size: clamp(1.25rem, 5.9vw, 1.75rem) !important; letter-spacing: .03em !important; }
}
#cart .dscart-item .form-counter button[name="down"], .popup-item .form-counter button[data-change="down"] { font-size: 0 !important; color: inherit; }
#cart .dscart-item .form-counter button[name="down"]::before, .popup-item .form-counter button[data-change="down"]::before { content: "−"; font-size: 1.125rem !important; }
@media (max-width: 575px) { .primary.d5d .primary__media { height: auto !important; max-height: none !important; min-height: 0 !important; aspect-ratio: auto !important; overflow: visible !important; border-radius: 0 !important; } .primary.d5d .primary__media .swiper { aspect-ratio: 4 / 3 !important; } }


@media (max-width: 991.98px) {
  .header-burger { width: 84px !important; height: 26px !important; min-height: 0 !important; min-width: 0 !important; font-size: .5rem !important; }
  .header-burger::before, .header-burger::after { width: 84px !important; left: 0 !important; }
}

@media (max-width: 991.98px) { .header .header__media img, .header .header__logotype img, .header--base .header__media img { width: 140px !important; max-width: none !important; height: auto !important; } .header .header__media, .header .header__logotype { width: auto !important; max-width: none !important; } }


.v2-mini-header { position: fixed; left: 0; right: 0; top: 0; z-index: 860; background: rgba(255, 255, 255, .72); -webkit-backdrop-filter: saturate(1.6) blur(14px); backdrop-filter: saturate(1.6) blur(14px);
  border-bottom: 1px solid var(--v2-line); transform: translateY(-100%); opacity: 0; transition: transform .35s var(--v2-ease), opacity .35s var(--v2-ease); pointer-events: none; }
.v2-mini-header.is-shown { transform: none; opacity: 1; pointer-events: auto; }
.v2-mini-header__inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 10px 16px; max-width: 1440px; margin: 0 auto; box-sizing: border-box; }
@media (min-width: 992px) { .v2-mini-header__inner { padding: 12px 20px; } }
.v2-mini-header__logo { display: block; line-height: 0; }
.v2-mini-header__logo img { width: 140px; height: auto; display: block; filter: brightness(0) saturate(100%) invert(8%) sepia(29%) saturate(2766%) hue-rotate(185deg) brightness(93%) contrast(101%); }
@media (min-width: 992px) { .v2-mini-header__logo img { width: 190px; } }
.v2-mini-header__right { display: flex; align-items: center; gap: 16px; }
.nav-open .v2-mini-header { opacity: 0 !important; pointer-events: none !important; }

.quick-order__modal .offer__title, .quick-order__modal .h2, .quick-order__modal h2 { padding-left: 44px !important; padding-right: 44px !important; box-sizing: border-box; }

@media (max-width: 767px) {
  .custom-service { grid-template-rows: 1fr auto auto 1fr !important; }
  .custom-service > .custom-service__media { grid-row: 1 / -1 !important; }
  .custom-service > .custom-service__title { grid-row: 2 !important; align-self: end !important; padding: 0 18px !important; }
  .custom-service > .custom-service__price { grid-row: 3 !important; align-self: start !important; padding: 0 18px !important; }
  .custom-service > .custom-service__price::before { margin: 10px 0 10px !important; }
}

@media (max-width: 575px) {
  .fancybox__content.popup-item, .popup-item.fancybox__content { max-height: calc(100dvh - 32px) !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch; }
  .popup-item .popup-item__img { height: 34vh !important; max-height: 280px !important; min-height: 0 !important; }
  .popup-item .popup-item__img img { height: 100% !important; object-fit: cover !important; }
  .popup-item .popup-item__meta { padding-bottom: 20px !important; }
}

.preview .preview__text { margin-left: auto !important; margin-right: auto !important; }

@media (min-width: 1200px) {
  .catalog-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: 22px !important; }
  .box-item__content { padding: 18px 18px 20px !important; gap: 14px !important; }
  .box-item__price { font-size: 1.125rem !important; }
}

.v2-pdf-link { margin: 24px 0 4px; }
.v2-pdf-link .btn { display: inline-flex; min-height: 52px; padding: 0 32px !important; }
@media (max-width: 575px) { .v2-pdf-link .btn { width: 100%; justify-content: center; } }

.v2-menus .v2-menu__actions { flex-wrap: wrap !important; }
.v2-menus .v2-menu__actions .btn-primary { flex: 1 1 100% !important; }
@media (max-width: 575px) { .v2-menus .v2-menu__actions .btn { flex: none !important; } }
.v2-menus .v2-menu__actions .btn:not(.btn-primary) { letter-spacing: .06em !important; padding-left: 10px !important; padding-right: 10px !important; font-size: .75rem !important; }

.v2-menu-box .v2-menu-dl { display: inline-flex; align-items: center; margin-left: 14px; padding: 8px 18px; border-radius: 999px; background: #c9ab70; color: var(--v2-ink) !important; font: 600 .75rem/1 var(--font-primary); letter-spacing: .1em; text-transform: uppercase; text-decoration: none; }
@media (max-width: 575px) { .v2-menu-box .v2-menu-dl { display: flex; width: fit-content; margin: 10px auto 0; } }
.v2-pdf-link { display: flex; flex-wrap: wrap; gap: 12px; }

.nav__body { align-items: flex-start !important; overflow-y: auto !important; -webkit-overflow-scrolling: touch; }
.nav-open .nav__primary li { opacity: 1 !important; }

.v2-pdfload { position: fixed; inset: 0; z-index: 2000; display: grid; place-items: center; background: rgba(1, 26, 46, .55); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.v2-pdfload__card { background: #fff; border-radius: 20px; padding: 28px 36px; width: min(300px, calc(100% - 48px)); text-align: center; box-shadow: 0 30px 60px -30px rgba(1, 26, 46, .6); }
.v2-pdfload__t { font: 500 1.125rem/1.2 var(--font-secondary); letter-spacing: .05em; text-transform: uppercase; color: var(--v2-ink); }
.v2-pdfload__n { font: 600 2rem/1.2 var(--font-primary); color: var(--v2-ink); margin: 10px 0 14px; font-variant-numeric: tabular-nums; }
.v2-pdfload__bar { height: 4px; border-radius: 4px; background: var(--v2-paper); overflow: hidden; }
.v2-pdfload__bar i { display: block; height: 100%; width: 0; background: #c9ab70; transition: width .2s; }


#delayed-popup {
  padding: 0 !important; overflow: hidden !important; background: #fff !important;
  width: min(940px, calc(100vw - 48px)) !important; max-width: none !important; box-sizing: border-box;
  border-radius: 28px !important; box-shadow: 0 40px 90px -30px rgba(1, 26, 46, .55), 0 0 0 1px rgba(1, 26, 46, .04) !important;
}
#delayed-popup .popup-container { display: grid !important; grid-template-columns: 1.08fr 1fr; gap: 0 !important; min-height: 540px; }
#delayed-popup .left { position: relative; padding: 0 !important; min-height: 260px; overflow: hidden; }
#delayed-popup .left img {
  position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover;
  box-shadow: none !important; border-radius: 0 !important; display: block;
}
#delayed-popup .right {
  position: static !important; padding: 64px 52px 56px !important; width: auto !important;
  display: flex !important; flex-direction: column; align-items: center; justify-content: center; text-align: center;
  background-size: 135% !important; background-position: 50% 4% !important;
}
#delayed-popup .popup-header {
  font-size: clamp(2.125rem, 3.4vw, 2.875rem) !important; line-height: 1.04 !important; letter-spacing: .05em;
  margin: 0 0 22px !important; color: var(--v2-ink); font-weight: 500;
}
#delayed-popup .popup-desc {
  background: none !important; padding: 0 !important; margin: 0 0 36px !important;
  font-size: 1.125rem !important; letter-spacing: .04em; color: var(--v2-muted); text-align: center;
}
#delayed-popup .popup-desc::before { content: ""; display: block; width: 36px; height: 1px; margin: 0 auto 18px; background: #c9ab70; }
#delayed-popup .right .primary__button { width: auto !important; margin: 0 !important; display: flex !important; justify-content: center; }
#delayed-popup .right .primary__button .btn {
  width: auto !important; min-width: 240px; background: var(--v2-ink) !important; border-color: var(--v2-ink) !important; color: #fff !important;
}
#delayed-popup .right .primary__button .btn:hover { background: var(--v2-ink-hover) !important; border-color: var(--v2-ink-hover) !important; }
#delayed-popup .right .primary__button .btn svg { fill: currentColor; }
#delayed-popup #close-popup {
  --g: 44px; position: absolute !important; top: 16px !important; right: 16px !important; left: auto !important;
  font-size: 30px !important; z-index: 5;
}
#delayed-popup #close-popup:hover { background: rgba(255, 255, 255, .8) !important; }
@media (max-width: 1000px) {
  #delayed-popup {
    width: calc(100vw - 32px) !important; max-width: 460px !important; border-radius: 24px !important;
    padding: 0 !important; overflow-y: auto !important;
  }
  #delayed-popup .popup-container { display: flex !important; flex-direction: column !important; min-height: 0; }
  #delayed-popup .left { width: 100% !important; padding: 0 !important; min-height: 0; aspect-ratio: 4 / 3; flex: none; }
  #delayed-popup .right { padding: 28px 24px 28px !important; background-size: 110% !important; background-position: 50% 0 !important; }
  #delayed-popup .popup-header { font-size: clamp(1.75rem, 8vw, 2.25rem) !important; margin: 0 0 16px !important; }
  #delayed-popup .popup-desc { font-size: 1rem !important; margin: 0 0 24px !important; }
  #delayed-popup .popup-desc::before { margin-bottom: 14px; }
  #delayed-popup .right .primary__button, #delayed-popup .right .primary__button .btn { width: 100% !important; min-width: 0; }
  #delayed-popup #close-popup { --g: 40px; top: 12px !important; right: 12px !important; font-size: 30px !important; padding: 0 !important; }
}
