
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap");
@charset "UTF-8";
:root {
  --MainFont:"Inter", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
  --MonoFont:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --MaterialIcons:"Material Icons";
  --BG:"";
  --InLine:3;
  --InPLine:3;
  --Color1:var(--Ink);
  --Color2:var(--Brass);
  --Color6:var(--BrassLight);
  --Red:#EB2B1E;
  --Color3:var(--Cream);
  --MainFrameBg:#EDE8DC;
  --Color4:#BFC3C8;
  --Gray8:#1E2939;
  --Gray7:#4A5C50;
  --Gray5:var(--Sage);
  --Gray4:#8A9A8E;
  --Gray3:#C4D0C8;
  --Gray2:#E5E7EB;
  --Gray0:#F9FAFB;
  --GradFrom:var(--Brass);
  --GradTo:var(--BrassLight);
  --Gradient:linear-gradient(90deg, var(--Brass), var(--BrassLight));
  --GradientR:linear-gradient(90deg, var(--BrassLight), var(--Brass));
  --Bfr:"";
  --Unit:calc(100cqw/1760);
  --MainCoef:tan(atan2(1760px,100cqw));
  --MainGap:var(--36);
  --Gap:var(--30);
  --Body:var(--1280);
  --1: calc(1 * var(--Unit));
  --2: calc(2 * var(--Unit));
  --3: calc(3 * var(--Unit));
  --4: calc(4 * var(--Unit));
  --5: calc(5 * var(--Unit));
  --6: calc(6 * var(--Unit));
  --8: calc(8 * var(--Unit));
  --9: calc(9 * var(--Unit));
  --10: calc(10 * var(--Unit));
  --12: calc(12 * var(--Unit));
  --13: calc(13 * var(--Unit));
  --14: calc(14 * var(--Unit));
  --15: calc(15 * var(--Unit));
  --16: calc(16 * var(--Unit));
  --17: calc(17 * var(--Unit));
  --18: calc(18 * var(--Unit));
  --19: calc(19 * var(--Unit));
  --20: calc(20 * var(--Unit));
  --22: calc(22 * var(--Unit));
  --24: calc(24 * var(--Unit));
  --26: calc(26 * var(--Unit));
  --29: calc(29 * var(--Unit));
  --30: calc(30 * var(--Unit));
  --32: calc(32 * var(--Unit));
  --36: calc(36 * var(--Unit));
  --40: calc(40 * var(--Unit));
  --42: calc(42 * var(--Unit));
  --44: calc(44 * var(--Unit));
  --48: calc(48 * var(--Unit));
  --50: calc(50 * var(--Unit));
  --52: calc(52 * var(--Unit));
  --60: calc(60 * var(--Unit));
  --64: calc(64 * var(--Unit));
  --72: calc(72 * var(--Unit));
  --80: calc(80 * var(--Unit));
  --96: calc(96 * var(--Unit));
  --100: calc(100 * var(--Unit));
  --128: calc(128 * var(--Unit));
  --150: calc(150 * var(--Unit));
  --192: calc(192 * var(--Unit));
  --195: calc(195 * var(--Unit));
  --230: calc(230 * var(--Unit));
  --250: calc(250 * var(--Unit));
  --395: calc(395 * var(--Unit));
  --500: calc(500 * var(--Unit));
  --550: calc(550 * var(--Unit));
  --560: calc(560 * var(--Unit));
  --600: calc(600 * var(--Unit));
  --880: calc(880 * var(--Unit));
  --970: calc(970 * var(--Unit));
  --1015: calc(1015 * var(--Unit));
  --1152: calc(1152 * var(--Unit));
  --1280: calc(1280 * var(--Unit));
  --1760: calc(1760 * var(--Unit));
  --7: calc(7 * var(--Unit));
  --11: calc(11 * var(--Unit));
  --21: calc(21 * var(--Unit));
  --23: calc(23 * var(--Unit));
  --25: calc(25 * var(--Unit));
  --27: calc(27 * var(--Unit));
  --28: calc(28 * var(--Unit));
  --34: calc(34 * var(--Unit));
  --38: calc(38 * var(--Unit));
  --56: calc(56 * var(--Unit));
  --MainContentGap:var(--60);
  --MainPadding:var(--80);
  --SidePadding:var(--80);
  --MoreGap:var(--15);
  --HeaderSliderPaddingTB:var(--230);
  --HeaderSliderPaddingLR:var(--SidePadding);
  --HeaderSliderMinWidth:var(--550);
  --HeaderSliderMaxWidth:var(--600);
  --ContentVerticalGapTB:var(--40);
  --ContentVerticalGapLR:0;
  --MainBorderRadius:var(--10);
  --MainBlockPadding:var(--30);
  --ContentShortGap:var(--10);
  --HalfPadding:var(--880);
  --LogoHeight:var(--64);
  --LogoWidth:var(--250);
  --Type2-1Height:var(--395);
  --Type3Padding:var(--150);
  --PhotoSize:var(--150);
  --S5-8Padding:var(--970);
  --ButtonPaddingTB:var(--19);
  --ButtonPaddingLR:var(--32);
  --ButtonsBorderRadius:0;
  --BlockIconWidth:var(--60);
  --BigIconWidth:var(--100);
  --SideTitleWidth:var(--500);
  --MainHeaderFontSize:var(--40);
  --Type2-1Width:var(--560);
  --Type4Height:auto;
  --ArrowRight:var(--40);
  --ArrowBottom:var(--40);
  --ArrowWidth:var(--50);
  --ArrowHeight:var(--50);
  --ArrowImageURL:url("../images/arrow.svg");
  --ArrowHoverImageURL:url("../images/arrow-h.svg");
  --BorderColor:var(--Brass);
  --HalfBorderRadius:50%;
  --HeadingWeight:700;
  --HeadingTracking:-0.02em;
  --HeadingTransform:none;
  --HeadingLine:none;
  --HeadingLineFill:var(--Gradient);
  --H3Weight:600;
  --HeroSize:var(--96);
  --HeroWeight:700;
  --HeroTransform:none;
  --SectionHeadSize:var(--44);
  --LabelFont:"IBM Plex Mono", "Courier New", monospace;
  --LabelTransform:none;
  --LabelTracking:0.06em;
  --CardRadius:0;
  --CardRadiusLg:0;
  --CardSharpRadius:0;
  --CardFill:var(--Cream);
  --CardShadow:0 2px 16px rgba(19,51,42,0.08);
  --CardBorderWidth:1px;
  --CardAccentBorder:2px;
  --BadgeRadius:var(--12);
  --DividerWidth:1px;
  --DividerColor:rgba(201,162,75,0.3);
  --ButtonBorderWidth:1px;
  --ButtonTransform:none;
  --ButtonFont:"IBM Plex Mono", monospace;
  --Pine:#13332A;
  --PineDark:#0D2219;
  --PineLight:#1E3D2A;
  --Cream:#F3EEE3;
  --CreamDim:#E8E0CC;
  --Ink:#16201B;
  --Sage:#6E7E72;
  --Brass:#C9A24B;
  --BrassLight:#E8C97A;
  --BrassDim:rgba(201,162,75,0.15);
  --39:calc(39 * var(--Unit));
  --220:calc(220 * var(--Unit));
  --260:calc(260 * var(--Unit));
  --480:calc(480 * var(--Unit));
  --660:calc(660 * var(--Unit));
  --700:calc(700 * var(--Unit));
}

textarea {
  -webkit-appearance: none;
}

*,
*:before,
*:after {
  font-family: var(--MainFont), serif;
  scroll-behavior: smooth;
  box-sizing: border-box;
  transform-style: flat;
  backface-visibility: hidden;
}

.description > * + * {
  margin-top: var(--20);
}
.description ul,
.description ol {
  margin-top: 0;
  margin-bottom: 0;
}
.description > p + ol, .description > p + ul {
  margin-top: var(--10);
}
.description:empty {
  display: none;
}
.description.annotation {
  font-size: var(--18);
  line-height: var(--26);
}

p {
  padding: 0;
  margin: 0;
}

p + p,
p + ul,
ul + p,
ol + p,
p + ol {
  margin: 0;
}

h1, h2, h3, h4, h5 {
  padding: 0;
  margin: 0;
  font-size: var(--40);
  font-weight: var(--HeadingWeight);
  letter-spacing: var(--HeadingTracking);
  color: var(--Color1);
}
h1:empty, h2:empty, h3:empty, h4:empty, h5:empty {
  display: none;
}

.h1,
h1.title {
  font-size: var(--40);
  font-weight: var(--HeadingWeight);
  color: var(--Color1);
}
.h2,
h2.title {
  font-size: var(--40);
  font-weight: var(--HeadingWeight);
  text-transform: var(--HeadingTransform);
  color: var(--Color1);
  position: relative;
  padding-bottom: var(--20);
}
.h2:after,
h2.title:after {
  content: "";
  display: var(--HeadingLine);
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: var(--2);
  background: var(--HeadingLineFill);
}
.h2 span,
h2.title span {
  background: var(--Gradient);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}

.h3,
h3.title {
  font-size: var(--30);
  font-weight: var(--H3Weight);
  color: var(--Color1);
}

.h2.up,
h2.title.up {
  text-transform: uppercase;
}

.description,
.type33aaa:before {
  font-size: var(--20);
  line-height: 1.6;
  color: var(--Gray7);
  hyphens: auto;
}
.description a,
.type33aaa:before a {
  color: var(--Color1);
}
.description.annotation,
.type33aaa:before.annotation {
  font-family: var(--LabelFont);
  font-size: var(--15);
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-transform: none;
  color: var(--Gray5);
}
.description p:has(.btn),
.type33aaa:before p:has(.btn) {
  font-size: 0;
  line-height: 0;
  display: flex;
  align-items: center;
  gap: var(--24);
}
.t0a .info .description,
.t21a > .title {
  font-size: var(--24);
  line-height: 1.35;
  font-weight: 300;
  color: var(--Gray3);
  hyphens: none;
}
.t0a .info .description p,
.t21a > .title p {
  margin: 0 0 var(--24);
}
.t0a .info .description p + p,
.t21a > .title p + p {
  margin: 0;
}
.t0a .info .description p:has(.btn),
.t21a > .title p:has(.btn) {
  margin-top: var(--64);
  align-items: center;
  justify-content: center;
}
.t0a .info .description p.alt,
.t21a > .title p.alt {
  color: var(--Gray4);
  line-height: 1.625;
  font-size: var(--18);
  font-family: var(--MonoFont);
  margin-bottom: var(--32);
}
.t0a .info .description p.price,
.t21a > .title p.price {
  padding-top: var(--48);
  font-size: var(--72);
  line-height: 1;
  font-weight: 900;
  background: var(--GradientR);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  margin-bottom: var(--8);
  display: inline-block;
}
.more:empty {
  display: none;
}
.more:hover {
  text-decoration: none;
}
.more:hover:before {
  transform: scaleX(1);
}
.more:hover:after {
  transform: translateX(var(--5));
}
.more.sm {
  font-size: var(--14);
}
.more.sm:after {
  content: none;
}
.btn {
  display: inline-block;
  color: inherit;
  line-height: 1.45;
  border: var(--ButtonBorderWidth) solid color-mix(in srgb, currentColor 30%, transparent);
  background: none;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  border-radius: var(--ButtonsBorderRadius);
  transform: scale(1);
  transform-origin: center;
}
.btn.t1 {
  border-color: color-mix(in srgb, currentColor 30%, transparent);
  color: inherit;
}
.t15a .title {
  font-size: var(--36);
  font-weight: 600;
  line-height: var(--42);
  cursor: pointer;
  padding: var(--ButtonPaddingTB) 0;
}
.t23a > .title {
  font-size: var(--64);
  color: var(--Color1);
}
#sections {
  container-type: inline-size;
}

html {
  padding: 0;
  margin: 0;
  min-height: 100vh;
  scroll-behavior: smooth;
}
body:has(.popupBox.visible) {
  overflow: hidden;
}
body > div.mb {
  width: 100%;
}

@media print {
  body:has(.popupBox.visible) {
    overflow: auto !important;
    background: #fff !important;
  }
  body:has(.popupBox.visible) > *:not(.popupBox) {
    display: none !important;
  }
  .popupBox {
    padding: 0 !important;
    position: relative;
    left: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    background: #fff !important;
    height: auto;
  }
  .popupBox .popup {
    height: auto;
  }
  .popupBox .popup .cover {
    max-height: none !important;
  }
  .popupBox .popup a.close,
  .popupBox .popup a.print,
  .popupBox .popup a.arrow {
    display: none !important;
  }
}
.popupBox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--Color3);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.3s linear, visibility 0.3s linear, z-index 0.3s linear 0.3s;
  padding: var(--MainPadding);
  overflow: hidden;
  pointer-events: none;
}
.popupBox.visible {
  opacity: 1;
  pointer-events: auto;
  z-index: 1000;
}
.popupBox .popup {
  position: relative;
  display: flex;
  flex-direction: column;
  background: var(--Color3);
  border-radius: var(--MainBorderRadius);
  overflow: hidden;
  max-height: calc(100% - var(--MainPadding) * 2);
  transition: all 0.3s linear;
}
.popupBox .popup > .title {
  color: var(--Color3);
  font-size: var(--24);
}
.popupBox .popup > a.close {
  display: block;
  width: var(--MainContentGap);
  height: var(--MainContentGap);
  background: url("../images/close.svg") no-repeat center center;
  background-size: var(--22);
  position: absolute;
  right: var(--20);
  top: var(--20);
}
.popupBox#requestPopup {
  display: flex;
  background: rgba(255, 255, 255, 0.9);
  justify-content: flex-end;
  padding: 0;
  overflow: hidden;
  align-items: flex-start;
  cursor: pointer;
  z-index: 2;
  backdrop-filter: blur(0);
}
.popupBox#requestPopup.visible {
  backdrop-filter: blur(3px) saturate(180%);
}
.popupBox#requestPopup.visible .popup {
  transform: translateX(0);
}
.popupBox#requestPopup.visible .popup > a.close {
  background-image: url("../images/close-w.svg");
}
.popupBox#requestPopup .popup {
  background: var(--Color2);
  padding: var(--MainBlockPadding);
  flex: 0 0 var(--HeaderSliderMaxWidth);
  transform: translateX(100%);
  transition: transform 0.3s linear;
  border-radius: 0;
  max-height: 100%;
  height: 100%;
  gap: var(--MainGap);
  cursor: auto;
}
.popupBox#requestPopup .popup > .title, .popupBox#requestPopup .popup .list {
  padding: var(--10);
}
.popupBox#requestPopup .popup form {
  flex: 1;
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}
.popupBox#requestPopup .popup form .list {
  flex: 1;
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: var(--ContentShortGap);
}
.popupBox#requestPopup .popup form .list .description {
  color: var(--Color3);
}
.popupBox#requestPopup .popup form .list .line {
  display: flex;
  flex-direction: column;
  gap: var(--ContentShortGap);
}
.popupBox#requestPopup .popup form .list .line > label:first-child {
  cursor: pointer;
  font-size: var(--20);
  color: var(--Color3);
}
.popupBox#requestPopup .popup form .actions {
  display: flex;
  gap: var(--MainGap);
}
.popupBox#requestPopup .popup .cb + label {
  color: var(--Color3);
}
.popupBox#requestPopup .popup .cb + label:after {
  border-color: var(--Color3);
}

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

:has(> .cb) {
  position: relative;
}

.cb {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  border: 0;
  padding: 0;
  margin: 0;
}
.cb:checked label:after {
  display: block;
}
.cb + label {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  font-size: var(--20);
  padding-left: var(--30);
}
.cb + label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: var(--24);
  height: var(--24);
  border: var(--2) solid var(--Color2);
  background-color: var(--Color3);
  border-radius: var(--3);
}
.cb + label:after {
  content: "";
  position: absolute;
  display: none;
  left: var(--8);
  top: var(--2);
  width: var(--8);
  height: var(--16);
  border: solid var(--Color2);
  border-width: 0 var(--2) var(--2) 0;
  transform: rotate(45deg);
}

img {
  height: auto;
  max-width: 100%;
}

a {
  color: var(--Color1);
  text-decoration: none;
}
a:hover, a:focus {
  text-decoration: underline;
}
a img {
  border: 0;
  max-width: 100%;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

select::-ms-expand {
  display: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
main,
nav,
section,
summary {
  display: block;
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  clear: both;
}

option {
  color: var(--Color1);
}

div.text,
input.text,
select.text,
textarea.text {
  width: 100%;
  border: 1px solid var(--BorderColor);
  border-radius: var(--MainBorderRadius);
  padding: var(--ButtonPaddingTB);
  background: var(--Color3);
  color: var(--Color1);
  font-size: var(--22);
  line-height: var(--30);
}

textarea.text {
  resize: vertical;
}

.message {
  font-weight: 500;
  font-size: var(--20);
}
.message.error {
  color: var(--Red);
}
.message.success {
  color: var(--Color2);
}
.message.success:first-child {
  margin-bottom: var(--MainGap);
}

#requestPopup .message.success,
.type23 .message.success {
  color: var(--Color3);
}

.text + .message {
  margin-top: var(--10);
}
.body {
  width:100%;
  max-width:var(--Body);
  margin-inline:auto;
  .body{
    width:100%;
  }
}

#gvp {
  padding: 0;
  background: var(--Color3);
  display: flex;
  flex-direction: column;
  --ArrowImageURL:url("../images/arrow-nb.svg");
  --ArrowHoverImageURL:url("../images/arrow-h.svg");
}
footer.footer .body {
  flex: 1;
  display: flex;
  gap: var(--MainGap);
  align-items: center;
}
footer.footer .social {
  display: flex;
  gap: var(--MoreGap);
}
footer.footer .social a.s {
  display: block;
  width: var(--40);
  height: var(--40);
  background: var(--BG) center center/contain no-repeat;
  filter: grayscale(1) brightness(0) invert(1);
  opacity: 0.7;
  transition: opacity 0.25s ease, transform 0.25s ease;
}
footer.footer .social a.s:hover {
  opacity: 1;
  transform: scale(1.1);
}
@keyframes headerLogoSlideIn {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}
header.header .menu {
  flex: 1;
  display: flex;
  gap: var(--MainGap);
  justify-content: center;
  padding: 0;
  margin: 0;
  list-style: none;
  pointer-events: auto;
}
header.header .menu:empty {
  display: none;
}
header.header .menu li {
  position: relative;
}
header.header .menu .sub > a:after {
  content: "";
  display: inline-block;
  width: var(--6);
  height: var(--6);
  margin: 0 0 var(--2) var(--8);
  border-right: var(--2) solid currentColor;
  border-bottom: var(--2) solid currentColor;
  transform: rotate(45deg);
}
header.header .menu .sub menu {
  position: absolute;
  top: 100%;
  left: calc(-1 * var(--20));
  margin: 0;
  padding: var(--14) var(--20) var(--16);
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: var(--12);
  min-width: max-content;
  background: rgba(255, 255, 255, 0.1);
  border: var(--1) solid rgba(255, 255, 255, 0.2);
  border-radius: var(--MainBorderRadius);
  backdrop-filter: blur(10px);
  opacity: 0;
  pointer-events: none;
  transform: translateY(var(--10));
  transition: opacity 0.15s ease, transform 0.15s ease;
}
header.header .menu .sub:hover menu, header.header .menu .sub:focus-within menu {
  opacity: 1;
  pointer-events: auto;
  transform: none;
}
header.header .contacts {
  display: flex;
  align-items: center;
  gap: var(--16);
  pointer-events: auto;
}
header.header .contacts a:before {
  content: "";
  background: var(--BG) center center/contain no-repeat;
  display: block;
  width: var(--20);
  height: var(--20);
}
header.header .contacts a span {
  display: none;
}
header.header .m {
  display: none;
}

#mb > .s.t0,
#mb > .s.t16.dark,
#mb > .s.t18,
#mb > .s.t19,
#mb > .s.t21.dark {
  margin: 0;
}

#mb > .s.t16.dark,
#mb > .s.t21.dark {
  max-width: none;
}

#mb > .s.t18,
#mb > .s.t21.dark {
  padding-left: var(--SidePadding);
  padding-right: var(--SidePadding);
}

div.t0,
section.t0 {
  position: relative;
}
.t0 .container,
.t17 .container,
.t20 .container {
  scroll-snap-type: both mandatory;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
}

.t0a,
.t12a,
.t17a,
.t20a {
  scroll-snap-align: center;
  scroll-snap-stop: always;
}
.t0 .arrows {
  position: absolute;
  display: flex;
  height: 0;
  gap: var(--MainGap);
  align-items: flex-end;
  right: var(--ArrowRight);
  bottom: var(--ArrowBottom);
  z-index: 1;
  cursor: pointer;
}

.t0 .arrows .arrow.right:hover {
  transform: rotate(180deg) scale(1.08);
}
.t0a svg {
  opacity: 0.3;
  position: absolute;
  pointer-events: none;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  animation: svgOpacity 1.5s linear;
}
.t0a:before {
  content: "";
  display: block;
  width: var(--128);
  height: var(--128);
  right: var(--80);
  top: var(--80);
  border-radius: 50%;
  border: var(--2) solid rgba(102, 70, 213, 0.3);
  position: absolute;
  pointer-events: none;
  animation: t0art 7s ease-in-out infinite alternate;
}
.t0a:after {
  content: "";
  display: block;
  width: var(--96);
  height: var(--96);
  bottom: var(--128);
  left: var(--128);
  background: rgba(153, 186, 43, 0.2);
  position: absolute;
  pointer-events: none;
  animation: t0alb 13s ease-in-out infinite alternate;
}
.t0a .lnk {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.t0a .body:before {
  content:"";
  pointer-events:none;
  width:var(--48);
  height:var(--48);
  border-radius:50%;
  background:var(--Color6);
  z-index:-1;
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%);
  animation:t0aInit 1.5s ease-out 1 forwards;
  animation-delay:0.3s;
  opacity:0;
  display:none;
}
.t0a .body:after {
  content: "";
  display: block;
  pointer-events: none;
  width: var(--64);
  height: var(--64);
  border-radius: 50%;
  border: var(--4) solid var(--Color2);
  position: absolute;
  right: 0;
  top: 0;
  animation: t0aInit 1.5s ease-out 1 forwards;
  animation-delay: 0.6s;
  opacity: 0;
}
.t0a .info .description p:nth-child(1) {
  animation-delay: 0.6s;
}
.t0a .info .description p:nth-child(2) {
  animation-delay: 0.8s;
}
.t0a .info .description p:nth-child(3) {
  animation-delay: 1s;
}
.t0a .info .description p:nth-child(4) {
  animation-delay: 1.2s;
}
.t0a .info .description p:nth-child(5) {
  animation-delay: 1.4s;
}
.t0a .info .more {
  color: var(--Color6);
  align-self: center;
  position: relative;
  z-index: 1;
}
.t0a.w .info .more,
.t0a.w .info .description,
.t0a.w .info .title {
  color: var(--Color3);
}

@keyframes SlideInfoIn {
  from {
    opacity: 0;
    transform: translateY(var(--20));
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@keyframes t0scroll {
  0% {
    transform: translate(-50%, -25%);
  }
  100% {
    transform: translate(-50%, 25%);
  }
}
@keyframes svgOpacity {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.3;
  }
}
@keyframes t0art {
  0% {
    transform: translate(0, 0) rotate(0deg) scale(1);
  }
  100% {
    transform: translate(var(--150), calc(0px - var(--50))) rotate(360deg) scale(1.2);
  }
}
@keyframes t0alb {
  0% {
    transform: translate(0, 0) rotate(0deg) scale(1);
  }
  100% {
    transform: translate(calc(0px - var(--150)), var(--50)) rotate(360deg) scale(1.2);
  }
}
@keyframes HeroGradient {
  0%, 100% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
}
@keyframes t0aInit {
  0% {
    opacity: 0;
    transform: translateY(var(--50));
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes t0aFromBottom {
  0% {
    opacity: 0;
    transform: translateY(var(--50));
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.s.t1:not(.bg) {
  background: var(--MainFrameBg);
}

.t1 .body,
.t5,
.t9 {
  display: flex;
  gap: var(--MainGap);
}

.t5.a,
.t9.a {
  flex-direction: row-reverse;
}

.t1 .body:before,
.t5:before {
  content: "";
  display: block;
  flex: 0 0 min(var(--1015), 58%);
  background: var(--BG) center center/cover no-repeat;
}

.t5:before {
  border-radius: var(--MainBorderRadius);
  flex: 0 0 calc((100% - var(--MainGap)) / 2);
}

.t1 .body .info,
.t5 .info,
.t9 .info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
  justify-content: center;
  padding: var(--ContentVerticalGapTB) var(--ContentVerticalGapLR);
}
.t1:not(.bg) .body .info {
  padding-right: var(--MainPadding);
}
.t2,
.t7,
.t13,
.t15 {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}

.t2 .items,
.t7 .items,
.t13 .items {
  display: flex;
  gap: var(--MainGap);
  flex-wrap: wrap;
}
.t2 {
  align-items: center;
}
.t2 h2.title {
  font-size: var(--SectionHeadSize);
  text-align: center;
}
.t2 .items {
  width: 100%;
  --MainGap:var(--32);
}
.t2a {
  flex: 0 0 calc((100% - var(--MainGap) * (var(--InLine) - 1)) / var(--InLine));
  width: calc((100% - var(--MainGap) * (var(--InLine) - 1)) / var(--InLine));
  background: var(--Color3);
  border-left: var(--CardAccentBorder) solid var(--Color2);
  border-radius: var(--CardSharpRadius);
  box-shadow: var(--CardShadow);
  display: flex;
  flex-direction: column;
  transform: none;
  transition: border-left-color 0.3s linear, transform 0.3s linear 0.3s;
}
.t2a:before {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 380/192;
  background: var(--BG) center center/cover no-repeat;
}
.t2a .title {
  color:var(--Color1);
  font-size:var(--20);
  flex:1;
  padding:var(--24);
  font-weight:900;
  line-height:1.4;
  transition:color 0.3s linear 0.3s;
}
.t2a .more {
  margin: 0 var(--24) var(--24);
  align-self: flex-start;
}
.t2a:hover {
  border-left-color: var(--Color6);
  transform: translateY(calc(0px - var(--10)));
  text-decoration: none;
}
.t2a:hover .title {
  color: var(--Color2);
}
.s.t1.bg {
  background: var(--BG) center center/cover no-repeat;
  border-radius: var(--MainBorderRadius);
  overflow: hidden;
}
.s.t1.bg .body:before {
  display: none;
}
.s.t1.bg .info {
  padding: var(--Type3Padding) var(--MainPadding) var(--Type3Padding) min(var(--HalfPadding), 50%);
}
.t3,
.t6 {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}
.t3 .items,
.t6 .items {
  display: flex;
  flex-wrap: wrap;
  gap: var(--MainGap);
}
.t4:not(.d) .info .title,
.t4:not(.d) .info .description,
.t4:not(.d) .info .description a {
  color: var(--Color3);
}
.t4.d .info {
  color: initial;
}
.t5 .info .items,
.t8 .items,
.t9 .items {
  display: flex;
  gap: var(--MainGap);
  flex-wrap: wrap;
}

.t5 .t5a {
  background: none;
}
.t6 {
  align-items: center;
}
.t6 h2.title {
  font-size: var(--SectionHeadSize);
  text-align: center;
}
.t6 > .description {
  text-align: center;
  font-weight: 300;
}
.t6 .items {
  width: 100%;
  counter-reset: section6;
  --MainGap:var(--48);
}
.t6a {
  --HeadColor:var(--Color2);
  counter-increment: section6;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--16);
  border: var(--CardBorderWidth) solid color-mix(in srgb, var(--HeadColor) 60%, transparent);
  border-radius: var(--CardRadiusLg);
  flex: 0 0 calc((100% - var(--MainGap) * (var(--InLine) - 1)) / var(--InLine));
  width: calc((100% - var(--MainGap) * (var(--InLine) - 1)) / var(--InLine));
  padding: var(--32);
  transition: transform 0.5s ease-in-out 0.3s, border-color 0.3s ease-in-out;
}
.t6a:nth-child(odd) {
  --HeadColor:var(--Color2);
}
.t6a:nth-child(even) {
  --HeadColor:var(--Color6);
}
.t6a:after {
  content: "";
  display: block;
  height: var(--2);
  width: var(--50);
  background: color-mix(in srgb, var(--HeadColor) 60%, transparent);
  position: absolute;
  right: calc(0px - var(--50) / 2 - var(--MainGap) / 2);
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}
.t6a:nth-child(even):after, .t6a:last-child:after {
  content: none;
}
.t6a:before {
  content: "0" counter(section6);
  background: var(--HeadColor);
  color: var(--Color3);
  text-align: center;
  font-weight: 900;
  font-size: var(--24);
  border-radius: var(--BadgeRadius);
  width: var(--64);
  height: var(--64);
  line-height: var(--64);
  transform: rotateZ(6deg);
  transition: transform 0.3s ease-in-out 0.3s, background-color 0.3s ease-in-out 0s;
}
.t6a:hover {
  transform: scale(1.025);
}
.t6a:hover:before {
  transform: rotateZ(-2deg);
  animation: t6aHoverBg 2s ease-in-out infinite alternate;
}
.t6a .info {
  display: flex;
  flex-direction: column;
  gap: var(--16);
  flex: 1;
}
.t6a h3.title {
  color: var(--HeadColor);
  font-weight: 900;
  font-size: var(--24);
  line-height: 1.33;
}
.t6a .description {
  color: var(--Gray7);
  line-height: 1.625;
  font-size: var(--16);
}

@keyframes t6aHoverBg {
  0% {
    background: var(--HeadColor);
    transform: rotateZ(6deg) scale(1);
  }
  100% {
    background: color-mix(in srgb, var(--HeadColor) 60%, transparent);
    transform: rotateZ(-2deg) scale(1.05);
  }
}
.t6.il .t6a {
  flex-direction: row;
}

.t6.il .t6a .info,
.t6.it .t6a .info {
  gap: var(--MainGap);
}
.t6.il .t6a:before,
.t6.it .t6a:before {
  content: "";
  display: block;
  background: var(--BG) center top/cover no-repeat;
  width: var(--BlockIconWidth);
  height: var(--BlockIconWidth);
  border-radius: 0;
  line-height: normal;
  transform: none;
  padding-top: var(--ContentShortGap);
}
.t6.il .t6a:hover:before,
.t6.it .t6a:hover:before {
  animation: none;
  transform: none;
}

.t8 .items .s.t1 {
  background: none;
}

.t9 {
  border-radius: var(--CardRadius);
  padding: var(--MainBlockPadding);
  background: var(--CardFill);
}
.t9 .info {
  padding: 0;
}
.t9 > .items {
  display: flex;
  flex-wrap: wrap;
  gap: var(--MainGap);
  flex: 0 0 calc((100% - var(--MainGap)) / 2);
}
.t10,
.t13a {
  text-align: center;
  overflow: hidden;
}
.t10 img,
.t13a img {
  border-radius: var(--MainBorderRadius);
}

.t12a {
  cursor: pointer;
}
.t12a span {
  display: block;
  border-radius: var(--MainBorderRadius);
  overflow: hidden;
}
.t12a a {
  display: block;
}
.t12a img {
  max-width: none;
  transition: transform 0.3s ease;
}
.t12a:hover img {
  transform: scale(1.03);
}
.t14 .info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}
.t15 .items {
  display: flex;
  flex-direction: column;
}
.t15a.current .description {
  display: block;
  animation: SlideInfoIn 0.3s ease both;
}
@media (prefers-reduced-motion: reduce) {
  .t0a .body,
  .t0a .body:before,
  .t0a .body:after,
  .t0a .info .description p {
    animation: none;
    opacity: 1;
  }
  .t0a.current .info,
  .t15a.current .description {
    animation: none;
  }
}
.t16.dark {
  background: var(--Color1);
  padding: var(--128) var(--SidePadding);
  color: var(--Color3);
}
.t16.dark a {
  color: var(--Color3);
}
.t16.dark .body {
  max-width: var(--1280);
  margin: 0 auto;
  gap: var(--48);
}
.t16.dark h2.title {
  color: var(--Color3);
  font-size: var(--72);
  line-height: 1.05;
}
.t16.dark .description {
  color: var(--Gray3);
  font-weight: 300;
  line-height: 1.625;
}
.t16.dark .line {
  gap: var(--80);
}

.t16 .line {
  display: flex;
  gap: var(--MainGap);
}
.t16 .line .content {
  display: flex;
  flex: 0 0 min(var(--SideTitleWidth), 40%);
  flex-direction: column;
  gap: var(--24);
}
.t16.mr .line .map {
  flex: 1;
  border-radius: var(--MainBorderRadius);
  overflow: hidden;
}
.t16a {
  --BGC:var(--Color2);
  display: flex;
  gap: var(--16);
  align-items: center;
}
.t16a:nth-child(3n+2) {
  --BGC:var(--Color6);
}
.t16a:nth-child(3n) {
  --BGC:#25D366;
}

.t16.dark .t16a .description {
  color: var(--Color3);
}
.t16.dark .t16a .description a {
  color: var(--Color3);
}

.icon-marker {
  cursor: pointer;
  width: var(--39);
  height: var(--39);
  position: relative;
  transform: translate(-50%, -50%);
  max-width: none;
  filter: drop-shadow(0 0 var(--10) var(--Color2));
}
.t16 .form,
.t16 .form form {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--24);
}

.t16:not(.f) .form {
  display: none;
}
.t16b {
  display: flex;
  flex-direction: column;
  gap: var(--8);
}
.t16.dark .form {
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(8px);
  border: var(--1) solid rgba(255, 255, 255, 0.1);
  border-radius: 0;
}
.t16.dark .form h3.title {
  font-weight: 900;
  font-size: var(--24);
  line-height: 1.33;
  color: var(--Color3);
}
.t16.dark .form .t16b > label {
  color: var(--Gray4);
}
.t16.dark .form .text {
  color: var(--Color3);
  padding: var(--12) 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  border-bottom: var(--2) solid rgba(255, 255, 255, 0.3);
  font-size: var(--16);
  line-height: normal;
  transition: border-color 0.15s ease;
}
.t16.dark .form .text:focus {
  border-bottom-color: var(--Color6);
  outline: none;
}
.t16.dark .form .text::placeholder {
  color: var(--Gray5);
}
.t16.dark .form .btn {
  background: var(--Gradient);
  border: 0;
  margin-top: var(--16);
  text-align: center;
  color: var(--Color3);
  letter-spacing: 0.1em;
  font-weight: 900;
  font-family: var(--MainFont);
  font-size: var(--18);
  line-height: 1.55;
  padding: var(--16) 0;
  width: 100%;
}
.t17 .container {
  display: flex;
  gap: var(--Gap);
  overflow-x:auto;overflow-y:hidden;
}

.t17a {
  flex: 0 0 calc((100% - var(--Gap) * (var(--InLine) - 1)) / var(--InLine));
  padding-top: var(--MainPadding);
  text-align: center;
  position: relative;
}
.t18 .items {
  display: flex;
  flex-wrap: wrap;
  gap: var(--MainGap) var(--MainPadding);
  justify-content: center;
}
.t18 .description {
  color: var(--Gray4);
}

.t18a {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}
.t19 .info .description strong,
.t19 .info .description b {
  display: block;
  font-family: var(--MainFont);
  font-weight: 900;
  font-size: var(--36);
  line-height: 1.2;
  letter-spacing: 0;
  background: var(--GradientR);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}
.t20 .container {
  display: flex;
  gap: var(--MainGap);
  align-items: center;
  overflow-x:auto;overflow-y:hidden;
}

.t20a {
  flex: 0 0 var(--195);
}
.t20a a {
  display: block;
}
.t21 .body {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
  text-align: center;
}

.t21.dark {
  color: var(--Color3);
  background: var(--Color1);
  padding: var(--MainPadding);
}
.t21.dark h2.title {
  color: var(--Color3);
}
.t21.dark .description {
  color: var(--Gray3);
}

.t21 .container {
  display: flex;
  gap: var(--MainGap);
  overflow: hidden;
  scroll-behavior: smooth;
}

.t21 .bullets {
  display: flex;
  justify-content: center;
  gap: var(--ContentShortGap);
  align-items: center;
}
.t21 .bullets .item {
  display: inline-block;
  border-radius: var(--MainBorderRadius);
  background: var(--Color4);
  width: var(--MainBorderRadius);
  height: var(--MainBorderRadius);
  transition: all 0.3s linear;
}
.t21 .bullets .item:hover, .t21 .bullets .item.current {
  background: var(--Color2);
}

.t21.dark .bullets .item {
  background: var(--Color3);
}
.t21.dark .bullets .item:hover, .t21.dark .bullets .item.current {
  background: var(--Color4);
  width: var(--ButtonPaddingTB);
  height: var(--ButtonPaddingTB);
}

.t21a {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
  flex: 0 0 100%;
}
.t21a .info {
  display: flex;
  flex-direction: column;
  gap: var(--ContentShortGap);
}
.t22 {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
  text-align: center;
}
.t22 .items {
  --Gap:0px;
  display: flex;
  flex-wrap: wrap;
  gap: var(--Gap);
}

.t22a {
  flex: 0 0 calc((100% - var(--MainGap) * (var(--InLine) - 1)) / var(--InLine));
  overflow: hidden;
}
.t22a a {
  display: block;
}
.t22a img {
  width: 100%;
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.t22a:hover img {
  transform: scale(1.04);
  opacity: 0.92;
}
.t23 {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}
.t23 .items {
  columns: var(--InLine);
  column-gap: var(--MainGap);
}

.t23a {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}
.t23a + .t23a {
  margin-top: var(--MainGap);
}

.t23a .items,
.t23aa .items {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}

.t23aa {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}

.t23aaa {
  display: flex;
  gap: var(--MoreGap);
  break-inside: avoid;
}
.t23aaa .description {
  flex: 1;
  hyphens: auto;
  order: 1;
}
.t23aaa .description + .description {
  flex: none;
  white-space: nowrap;
  order: 3;
  color: var(--Color2);
  font-weight: 600;
}
.t23aaa:after {
  content: "";
  order: 2;
  flex: 1 1 auto;
  border-bottom: 1px dashed var(--Color4);
  transform: translateY(calc(0px - var(--5)));
  align-self: flex-end;
}
.t16 .map{ background:var(--Ink) url('../images/map.svg') center/cover no-repeat; background-size:cover; }
.t16 .map:not(:empty){ background-image:none; }
#gvp.popupBox{background:color-mix(in srgb, var(--Cream,var(--Cream)) 95%, transparent);
  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:clamp(18px,4vw,68px)}
#gvp .popup{
  display:flex;
  gap:clamp(22px,3.2vw,56px);
  max-height:100vh;
  width:100%;
  background:transparent;
  flex-direction:row;
  padding:0;
  flex:1;
  position:relative;
  border-radius:0;
  max-width:1300px;
  align-items:stretch;}
#gvp .popup::before{content:"";position:absolute;left:0;right:56px;top:-18px;height:2px;background:var(--Brass,var(--Brass));}
#gvp .popup::after{content:"";position:absolute;left:0;right:56px;top:-13px;height:1px;background:rgba(201,162,75,.5);}
#gvp .popup > a.close{background:none;width:50px;height:50px;right:0;top:0;z-index:3;border:1.5px solid var(--Brass,#C9A24B);border-radius:50%;transition:.25s;}
#gvp .popup > a.close::before,#gvp .popup > a.close::after{content:"";position:absolute;left:50%;top:50%;width:17px;height:1.5px;background:var(--Ink,var(--Ink));}
#gvp .popup > a.close::before{transform:translate(-50%,-50%) rotate(45deg);}
#gvp .popup > a.close::after{transform:translate(-50%,-50%) rotate(-45deg);}
#gvp .popup > a.close:hover{background:var(--Brass,var(--Brass));}
#gvp .popup > a.close:hover::before,#gvp .popup > a.close:hover::after{background:var(--Cream,var(--Cream));}
#gvp .popup .photo{
  flex:1;
  display:flex;
  gap:18px;
  align-items:center;}
#gvp .popup .photo > .arrow{
  flex:0 0 auto;
  display:flex;
  align-items:center;}
#gvp .popup .photo > .arrow .arrow{
  display:block;
  width:54px;
  height:54px;
  background:none;
  transition:.25s;
  position:relative;
  border:1.5px solid rgba(201,162,75,.45);
  border-radius:50%;
  transform:none;}
#gvp .popup .photo > .arrow .arrow::before{content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;border-left:2px solid var(--Ink,#16201B);border-bottom:2px solid var(--Ink,#16201B);transform:translate(-30%,-50%) rotate(45deg);}
#gvp .popup .photo > .arrow.right .arrow::before{transform:translate(-70%,-50%) rotate(225deg);}
#gvp .popup .photo > .arrow .arrow:hover{
  background-image:var(--ArrowHoverImageURL);
  border-color:var(--Brass,var(--Brass));
  background:var(--Brass,var(--Brass));}
#gvp .popup .photo > .arrow .arrow:hover::before{border-color:var(--Cream,var(--Cream));}
#gvp .popup .photo > .cover{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:auto;}
#gvp .popup .photo > .cover img{max-width:100%;max-height:82vh;object-fit:contain;border-radius:0;
  background:#fff;padding:12px;border:1px solid var(--Brass,#C9A24B);outline:1px solid rgba(201,162,75,.4);outline-offset:5px;box-shadow:0 30px 60px -32px rgba(22,32,27,.4);}
#gvp .popup .info-block{
  flex:0 0 var(--Type2-1Width);
  display:flex;
  flex-direction:column;
  gap:14px;
  justify-content:center;}
#gvp .popup .info-block .title{color:var(--Ink,var(--Ink));font-family:var(--DisplayFont, "Playfair Display",Georgia,serif);font-weight:700;font-size:clamp(26px,3vw,44px);line-height:1.06;letter-spacing:-.005em;}
#gvp .popup .info-block .title::before{content:"КАПИТАЛ \00B7 ГАЛЕРЕЯ";display:block;font-family:var(--MonoFont, "IBM Plex Mono",monospace);font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--Brass,var(--Brass));margin-bottom:14px;}
#gvp .popup .info-block .description{color:rgba(22,32,27,.74);line-height:1.62;font-family:var(--MainFont, "Golos Text",sans-serif);}

@media (max-width: 1024px) {
  html {
    touch-action: manipulation;
  }
  body.menu {
    overflow: hidden;
  }
  ::-webkit-scrollbar {
    width: 0;
    height: 0;
  }
.body {
  width: 100%;
}
  :root {
    --Unit: 1px;
    --MainCoef: 1;
    --MainGap: var(--15);
    --MainBlockPadding: var(--20);
    --SidePadding: var(--16);
    --ImageHeight: var(--250);
    --ButtonPaddingTB: var(--10);
    --ButtonPaddingLR: var(--15);
    --MainHeaderFontSize: var(--30);
    --Body:100% !important;
  }
  .btn {
    font-size: var(--16);
    line-height: normal;
  }
  input.text,
  select.text,
  textarea.text {
    font-size: var(--16);
    line-height: normal;
  }
  .type1 .body,
  .type4 .items,
  .type5,
  .type6,
  .type7,
  .type8,
  .type9,
  .type9.a,
  .type10 .items,
  .type11 .items,
  .type11a,
  .type12 .items,
  .type13 .items,
  .type15,
  .type15a,
  .type19 .items,
  .type20,
  .type22 .line,
  .type23 .line,
  .type24 .line,
  .type26 .items,
  footer.footer {
    flex-direction: column;
    flex-wrap: initial;
  }
  .h1, h1.title, .h2, h2.title, .h3, h3.title {
    font-size: var(--30);
    line-height: normal;
    hyphens: auto;
  }
  .h3,
  h3.title {
    font-size: var(--20);
  }
  .description,
  .type33aaa:before {
    font-size: var(--16);
    line-height: normal;
  }
  .t2a .title {
    font-size: var(--20);
    line-height: normal;
  }
  .more {
    font-size: var(--14);
  }
  .type1 .body:before,
  .type9:before {
    flex: 0 0 var(--ImageHeight);
  }
  .type1 .body .info,
  .type9 .info,
  .type15 .info {
    padding: 0 var(--MainBlockPadding) var(--MainBlockPadding);
  }
  .type2 h2.title,
  .type4 h2.title,
  .type10 h2.title,
  .type11 h2.title,
  .type12 h2.title,
  .type14,
  .type15 > .items,
  .type17,
  .type19 h2.title,
  .type20,
  .type21,
  .type22 h2.title,
  .type22 .line .content,
  .type24 h2.title,
  .type24 .line,
  .type25 h2.title,
  .type25 .container,
  .type28 h2.title,
  .type28 .container,
  .type29,
  .type31 h2.title,
  .type31 .description,
  #gvp .popup .info-block,
  .type33 {
    padding: 0 var(--MainBlockPadding);
  }
  .type15 > .items,
  #gvp .popup .info-block {
    padding-bottom: var(--MainBlockPadding);
  }
  .type5,
  .type6,
  .type7,
  .type8 {
    padding: 0;
    display: flex;
    background: var(--Color1);
  }
  .type5:before,
  .type6:before,
  .type7:before,
  .type8:before {
    content: "";
    background: var(--BG) right center/cover no-repeat;
    flex: 0 0 var(--ImageHeight);
  }
  .type5 .info,
  .type6 .info,
  .type7 .info,
  .type8 .info,
  .type23 .body,
  .type26,
  .type27,
  .type27 .info,
  .type30 {
    padding: var(--MainBlockPadding);
  }
  .type15,
  .type23,
  #gvp .popup {
    padding: 0;
  }
  .type22 .line .map,
  .type24 .map {
    flex: 0 0 var(--ImageHeight);
  }
  #gvp .popup .photo > .arrow {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    z-index: 1;
  }
  #gvp .popup .photo > .arrow.right {
    left: auto;
    right: 0;
  }
  header.header .contacts a {
    width: var(--40);
    height: var(--40);
  }
  header.header .contacts a:before {
    width: var(--18);
    height: var(--18);
  }
  header.header .logo {
    flex: none;
  }
  header.header .m {
    display: block;
    flex: 0 0 var(--20);
  }
  header.header .m .mb {
    display: block;
    width: var(--20);
    height: var(--20);
    position: relative;
  }
  header.header .m .mb:before {
    content: "";
    display: block;
    position: absolute;
    top: var(--3);
    height: var(--14);
    width: var(--14);
    left: var(--3);
    border-top: 2px solid var(--Color3);
    border-bottom: 2px solid var(--Color3);
    transition: all 0.3s linear;
  }
  header.header .m .mb:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: var(--3);
    height: 2px;
    width: var(--14);
    background: var(--Color3);
    transform: translateY(-50%);
    transition: all 0.3s linear;
  }
  header.header .menu {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: -1;
    pointer-events: none;
    opacity: 0;
    background: rgba(0, 0, 0, 0.75);
    backdrop-filter: blur(5px);
    transition: all 0.3s linear;
    flex-direction: column;
    padding: var(--Type3Padding) var(--BlockIconWidth);
    gap: var(--MainBlockPadding);
  }
  header.header .menu .sub > a:after {
    display: none;
  }
  header.header .menu .sub menu {
    position: static;
    margin: 0;
    padding: var(--12) 0 0 var(--16);
    background: none;
    border: none;
    border-radius: 0;
    backdrop-filter: none;
    opacity: 1;
    pointer-events: auto;
    transform: none;
    display: flex;
    flex-direction: column;
    gap: var(--12);
  }
  .menu header.header .logo {
    z-index: 6;
    position: relative;
  }
  .menu header.header .m {
    z-index: 5;
  }
  .menu header.header .m .mb:before {
    height: 0;
    border-top-width: var(--1);
    border-bottom-width: var(--1);
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
  }
  .menu header.header .m .mb:after {
    transform: translateY(-50%) rotate(-45deg);
  }
  .menu header.header .menu {
    z-index: 5;
    opacity: 1;
    pointer-events: auto;
  }
  .popupBox .popup > a.close {
    right: 0;
    top: 0;
    z-index: 2;
  }
  .popupBox#requestPopup .popup {
    flex: 0 0 100%;
  }
  .type0 .arrows {
    right: var(--15);
    bottom: var(--15);
  }
  .type0 .arrows .arrow {
    width: var(--30);
    height: var(--30);
  }
  .type0 .type0a {
    padding: var(--MainBlockPadding);
  }
  .type0 .type0a .info {
    --HeaderSliderMinWidth: 100%;
    --HeaderSliderMaxWidth: 100%;
  }
  .type2 .items {
    flex-direction: column;
  }
  .type3 {
    padding: var(--MainBlockPadding);
    background: none;
    position: relative;
  }
  .type3:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--BG);
    z-index: -1;
    opacity: 0.25;
  }
  .type4a {
    flex: none;
  }
  .type4a .info {
    flex: none;
  }
  .type6:before,
  .type8:before {
    background-position: left center;
  }
  .type7,
  .type8 {
    background: var(--Color3);
  }
  .type9 .info {
    padding-bottom: 0;
  }
  .type13aa {
    flex: 0 0 calc((100% - var(--MainGap)) / 2);
  }
  .type15 {
    flex-direction: column-reverse;
  }
  .type15 .info {
    padding: var(--MainBlockPadding);
  }
  .type18a {
    flex: 0 0 80%;
  }
  .type18a img {
    max-width: 100%;
  }
  .type20 > .up {
    flex: none;
  }
  .type22 .line .content,
  .type23 .line .content,
  .type24 .line .content {
    flex: none;
  }
  .type25a {
    flex: 0 0 80%;
  }
  .type26 .items {
    gap: var(--MainGap);
  }
  .type28a {
    flex: none;
    max-width: 70%;
  }
  .type29 .bullets,
  .type30 .bullets {
    flex-wrap: wrap;
  }
  .type31a {
    flex: 0 0 50%;
  }
  .type33 .items {
    column-count: 1;
  }
  .t0 {
    min-height: 100svh;
  }
  .t0a:before, .t0a:after {
    display: none;
  }
  .t0a .info .description, .t21a > .title {
    padding: 0;
    font-size: var(--18);
  }
  .t0a .info .description p.price, .t21a > .title p.price {
    font-size: var(--48);
  }
  .t2 .items,
  .t6 .items {
    --InLine: 1;
  }
  .t2 h2.title,
  .t6 h2.title {
    font-size: var(--30);
  }
  .t6a:after {
    content: none !important;
  }
  .t16.dark {
    padding: var(--64) var(--SidePadding);
  }
  .t16.dark h2.title {
    font-size: var(--36);
  }
  .t16 .line .content {
    flex: none;
  }
  .t18 .items {
    gap: var(--24);
  }
  #gvp.popupBox{padding:14px;}
  #gvp .popup::before{right:48px;top:-14px;}
  #gvp .popup::after{right:48px;top:-10px;}
  #gvp .popup .info-block .title{font-size:21px;}
  #gvp .popup .info-block .title::before{margin-bottom:10px;}
  #gvp .popup .photo > .arrow .arrow{
    background-color:rgba(255, 255, 255, 0.75);
    width:44px;
    height:44px;}
  #gvp .popup .photo > .cover img{max-height:54vh;padding:8px;}
  #gvp .popup{
    flex-direction:column;
    justify-content:center;
    align-items:stretch;
    max-height:94vh;}
  #gvp .popup .photo{
    position:relative;
    flex:0 1 auto;
    min-height:0;
    align-items:center;}
  #gvp .popup .photo > .cover{flex:0 1 auto;min-height:0;}
  #gvp .popup .info-block{
    flex:0 0 auto;}
  .t7 .items, .t13 .items{
    flex-direction:column;
  }
}

.s .container,
#mb .container {
  max-width: none !important;
}

.t0a .body,
.t0a .body:before,
.t0a .body:after,
.t0a .info .HeaderSliderDescription p {
  opacity: 1;
  animation: none;
}
h1, h2, h3, h4 {
  font-family: "Playfair Display", Georgia, "Times New Roman", serif;
  font-weight: 700;
  text-transform: none;
  letter-spacing: -0.02em;
  color: var(--Ink);
}

.description, p, a {
  font-family: "Golos Text", "Segoe UI", system-ui, sans-serif;
}

.more, .btn, .annotation, label {
  font-family: var(--LabelFont);
  text-transform: none;
  letter-spacing: 0.04em;
}
h2.title, .h2 {
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 700;
  text-transform: none;
  color: var(--Ink);
  padding-bottom: var(--16);
  position: relative;
}
h2.title:after, .h2:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: var(--48);
  height: var(--1);
  background: var(--Brass);
}
body {
  background:var(--Cream);
  font-family:"Golos Text", "Segoe UI", system-ui, sans-serif;
  width:100%;
  min-height:100vh;
  color:var(--Color1);
  font-style:normal;
  position:relative;
  scroll-behavior:smooth;
  display:flex;
  flex-direction:column;
  overflow-x:hidden;
  padding:0;
  margin:0;
  font-size:0;
}
#mb > .s.body {
  margin: 0 auto;
  max-width: var(--Body);
}
#mb > .s.t13.body {
  width: auto;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  padding-left: max(var(--48), calc((100% - var(--Body)) / 2));
  padding-right: max(var(--48), calc((100% - var(--Body)) / 2));
}
#mb > .s.t16.body {
  width: auto;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  padding-left: var(--48);
  padding-right: var(--48);
}
#mb > .s {
  margin:0 var(--SidePadding);
  margin-top:0;
  margin-bottom:0;
}
#mb {
  flex:1;
  display:flex;
  flex-direction:column;
  gap:var(--60);
}
#sections::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(
    ellipse 60% 50% at calc(var(--mx, 0.5) * 100%) calc(var(--my, 0.4) * 100%),
    rgba(201,162,75, 0.06),
    transparent 65%
  );
  transition: background 0.1s linear;
}
.cursor-h, .cursor-v {
  position: fixed;
  pointer-events: none;
  z-index: 9999;
  background: rgba(201,162,75, 0.25);
  transition: opacity 0.3s ease;
  opacity: 0;
}
body.cursor-active .cursor-h, body.cursor-active .cursor-v {
  opacity: 1;
}
.cursor-h {
  left: 0; right: 0;
  height: var(--1);
  top: calc(var(--my, 0.5) * 100vh);
}
.cursor-v {
  top: 0; bottom: 0;
  width: var(--1);
  left: calc(var(--mx, 0.5) * 100vw);
}
.cursor-ring {
  position: fixed;
  pointer-events: none;
  z-index: 9999;
  width: var(--20); height: var(--20);
  border: 1px solid rgba(201,162,75, 0.6);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  left: calc(var(--mx, 0.5) * 100vw);
  top: calc(var(--my, 0.5) * 100vh);
  transition: opacity 0.3s ease, width 0.2s ease, height 0.2s ease;
  opacity: 0;
}
body.cursor-active .cursor-ring {
  opacity: 1;
}
header.header {
  position:fixed;
  left:0;
  top:0;
  width:100%;
  z-index:10;
  pointer-events:none;
  display:flex;
  justify-content:space-between;
  gap:var(--MainGap);
  align-items:center;
  mix-blend-mode:normal;
  background:transparent;
  border-bottom:1px solid rgba(201,162,75, 0.15);
  padding:var(--20) var(--48);
}

header.header .logo {
  pointer-events:auto;
  display:flex;
  flex-direction:column;
  animation:headerLogoSlideIn 1s ease-out;
  gap:var(--4);
}
header.header .logo .pixio {
  line-height:1.2;
  font-family:"Playfair Display", Georgia, serif;
  font-size:var(--22);
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:none;
  color:var(--Cream);
}
header.header .logo .label {
  line-height:1.3;
  font-family:var(--ButtonFont);
  font-size:var(--11);
  color:rgba(243,238,227,0.5);
  letter-spacing:0.08em;
}

header.header .menu a {
  display:inline-block;
  font-family:var(--ButtonFont);
  font-size:var(--12);
  letter-spacing:0.08em;
  text-transform:none;
  color:rgba(243,238,227,0.8);
}
header.header .menu a:hover {
  text-decoration:none;
  color:var(--BrassLight);
}
header.header .menu .current > a {
  padding-bottom:var(--5);
  background:linear-gradient(90deg, var(--Brass), var(--BrassLight)) left bottom/100% 1px no-repeat;
}
header.header .contacts a {
  font-size:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition:background-color 0.15s ease, transform 0.15s ease;
  --BG:url("../images/ic-phone.svg");
  width:var(--40);
  height:var(--40);
  border-radius:0;
  background-color:rgba(201,162,75, 0.1);
  border:1px solid rgba(201,162,75, 0.3);
}
header.header .contacts a.whatsapp {
  --BG: url("../images/ic-wa.svg");
}
header.header .contacts a:hover {
  text-decoration:none;
  background-color:rgba(201,162,75, 0.25);
  transform:none;
  border-color:var(--Brass);
}
footer.footer {
  display:flex;
  gap:var(--MainGap);
  align-items:center;
  background:var(--PineDark);
  border-top:1px solid rgba(201,162,75, 0.2);
  margin-top:0;
  padding:var(--40) var(--80);
}
footer.footer .description {
  flex:1;
  font-family:var(--ButtonFont);
  font-size:var(--12);
  color:var(--Sage);
  letter-spacing:0.06em;
}
footer.footer .description a {
  color: var(--BrassLight);
}
.rev {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s cubic-bezier(0.4,0,0.2,1), transform 0.7s cubic-bezier(0.4,0,0.2,1);
}
body.rv-on .rev.in, .rev.in {
  opacity: 1;
  transform: none;
}
.rev-delay-1 { transition-delay: 0.1s; }
.rev-delay-2 { transition-delay: 0.2s; }
.rev-delay-3 { transition-delay: 0.3s; }
.rev-delay-4 { transition-delay: 0.4s; }
.t0 {
  overflow:hidden;
  display:flex;
  align-items:stretch;
  justify-content:center;
  background:var(--PineDark);
  min-height:100vh;
}
.t0 .container {
  display:flex;
  width:100%;
  overflow:hidden;
}
.t0a {
  display:flex;
  align-items:center;
  flex:0 0 100%;
  position:relative;
  background:var(--BG) center center/cover no-repeat;
  background-color:var(--PineDark);
  justify-content:flex-start;
  padding:0 var(--80) 0 var(--96);
}
.t0a:before, .t0a:after {
  display: none;
}
.t0a .body {
  max-width: var(--1280);
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--80);
  opacity: 1;
  animation: none;
  position: relative;
}
.t0a .body::after {
  content: "";
  display: block;
  flex: 0 0 45%;
  height: var(--480);
  background: var(--BG-hero) center center/contain no-repeat;
  opacity: 0.95;
}

.t0a .info {
  display:flex;
  flex-direction:column;
  will-change:transform;
  flex:0 0 52%;
  text-align:left;
  align-items:flex-start;
  gap:var(--28);
}
.t0a .info .title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: var(--80);
  font-weight: 700;
  text-transform: none;
  letter-spacing: -0.03em;
  color: var(--Cream);
  line-height: 1.08;
  max-width: 100%;
}
.t0a .info .title span {
  background-size:200% 100%;
  background:linear-gradient(90deg, var(--Brass), var(--BrassLight));
  background-clip:text;
  -webkit-background-clip:text;
  color:transparent;
  animation:none;
}
.t0a .info .description {
  font-size: var(--18);
  color: rgba(243,238,227,0.7);
  line-height: 1.7;
  font-family: "Golos Text", system-ui, sans-serif;
  font-weight: 400;
  hyphens: none;
  max-width: 42ch;
}
.t0a .info .description p {
  animation: none;
  opacity: 1;
}
.t0a.current .info {
  animation: kapitalHeroIn 0.8s cubic-bezier(0.4,0,0.2,1) both;
}
@keyframes kapitalHeroIn {
  from { opacity:0; transform:translateY(24px); }
  to   { opacity:1; transform:none; }
}
.t0a .info::before {
  content: "Бухгалтерское сопровождение";
  font-family: var(--ButtonFont);
  font-size: var(--11);
  letter-spacing: 0.12em;
  color: var(--Brass);
  text-transform: uppercase;
  padding: var(--6) var(--14);
  border: 1px solid rgba(201,162,75, 0.4);
  display: inline-block;
  margin-bottom: var(--4);
}
.t0 .scroll {
  position:absolute;
  left:50%;
  bottom:var(--48);
  display:inline-flex;
  text-transform:uppercase;
  animation:t0scroll 1s ease-in-out infinite alternate;
  pointer-events:none;
  color:rgba(201,162,75, 0.5);
  font-family:var(--ButtonFont);
  font-size:var(--11);
  letter-spacing:0.1em;
}
.t0 .arrows .arrow {
  display:block;
  background:var(--ArrowImageURL) center center/contain no-repeat;
  transition:transform 0.2s ease;
  background-image:url("../images/arrow.svg");
  background-size:contain;
  width:var(--40);
  height:var(--40);
}
.t0 .arrows .arrow:hover {
  transform:scale(1.08);
  background-image:url("../images/arrow-h.svg");
}
.t0 .arrows .arrow.right{
  transform:rotate(180deg);
}
.t13 {
  background: var(--Pine);
  padding: var(--80) 0;
  counter-reset: principle;
}
.t13 h2.title {
  color: var(--Cream);
  font-size: var(--48);
  padding-bottom: var(--16);
}
.t13 h2.title:after {
  background: var(--Brass);
  width: var(--60);
  height: var(--1);
}
.t13 .items {
  display: flex;
  flex-direction: column;
  --MainGap: 0;
}
.t13a {
  border-radius:var(--CardRadius);
  flex:none;
  width:100%;
  counter-increment:principle;
  display:flex;
  flex-direction:row;
  text-align:left;
  justify-content:flex-start;
  align-items:center;
  gap:var(--32);
  padding:var(--28) 0;
  border-bottom:1px solid rgba(201,162,75, 0.2);
  background:none;
  transition:background 0.3s ease;
  overflow:visible;
}
.t13a:first-child {
  border-top: 1px solid rgba(201,162,75, 0.2);
}
.t13a:hover {
  background: rgba(201,162,75, 0.04);
  transform: none;
  box-shadow: none;
}
.t13a:before {
  display:block;
  background:var(--BG) center bottom/contain no-repeat;
  all:unset;
  content:counter(principle, decimal-leading-zero);
  font-family:"Playfair Display", Georgia, serif;
  font-size:var(--36);
  font-weight:700;
  color:var(--Brass);
  flex:0 0 var(--72);
  line-height:1;
  letter-spacing:-0.02em;
  aspect-ratio:1 / 1;
}
.t13a:after {
  all: unset;
  content: "";
  display: block;
  flex: 0 0 var(--32);
  height: var(--32);
  border: 1px solid rgba(201,162,75, 0.3);
  background: url("../images/arrow.svg") center/60% no-repeat;
  opacity: 0;
  transform: translateX(-8px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}
.t13a:hover:after {
  opacity: 1;
  transform: translateX(0);
}
.t13a .description {
  flex: 1;
  font-family: "Golos Text", system-ui, sans-serif;
  font-size: var(--18);
  color: rgba(243,238,227,0.8);
  line-height: 1.5;
}
.t13a > [style*="--BG"] {
  display: none;
}
.t4 {
  border-radius:var(--MainBorderRadius);
  --S5-8Padding:0px;
  padding:var(--80) var(--80);
  background:linear-gradient(90deg, rgba(13,34,25,0.92) 0%, rgba(13,34,25,0.74) 45%, rgba(13,34,25,0.45) 100%), var(--BG) center/cover no-repeat;
  background-color:var(--PineDark);
  overflow:hidden;
}
.t4 .info {
  display:flex;
  flex-direction:column;
  gap:var(--MainGap);
  color:var(--Color3);
  max-width:var(--660);
  padding-left:0;
  padding-right:0;
}
.t4 h2.title {
  color: var(--Cream);
  font-size: var(--48);
}
.t4 h2.title:after {
  background: var(--Brass);
}
.t4 .description {
  color: rgba(243,238,227,0.75);
  font-family: "Golos Text", system-ui, sans-serif;
  font-size: var(--18);
}
.t4.r .info {
  padding-right:0;
  margin-left:auto;
  max-width:55%;
  padding-left:0;
}
.t20 {
  text-align:center;
  display:flex;
  flex-direction:column;
  gap:var(--MainGap);
  background:var(--Cream);
  padding:var(--48) 0;
}
.t20 h2.title {
  font-size: var(--32);
  color: var(--Sage);
}
.t20 h2.title:after {
  display: none;
}
.t20a img {
  opacity:0.7;
  transition:filter 0.25s ease, opacity 0.25s ease;
  filter:grayscale(1) sepia(0.1) opacity(0.55);
}
.t20a:hover img {
  opacity:1;
  filter:grayscale(0) opacity(1);
}
.t14 > .up {
  flex: 0 0 min(340px, 35%);
}
.t14 > .up.title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: var(--96);
  font-weight: 700;
  color: rgba(201,162,75,0.18);
  letter-spacing: -0.04em;
  line-height: 1;
  text-transform: none;
  padding-bottom: 0;
  align-self: flex-start;
}
.t14 > .up.title:after {
  display: none;
}
.t14 > .up:after {
  content: "";
  display: block;
  width: var(--1);
  position: absolute;
  top: 0; bottom: 0;
  right: calc(-1 * var(--24));
  background: linear-gradient(to bottom, transparent, var(--Brass) 30%, var(--Brass) 70%, transparent);
  opacity: 0.35;
}
.t14 {
  display:flex;
  background:var(--Cream);
  padding:var(--60) 0;
  gap:var(--48);
  align-items:flex-start;
  position:relative;
}
.t14 .info h2.title {
  font-size: var(--36);
  text-align: left;
  align-self: flex-start;
}
.t14 .info h2.title:after {
  margin-left: 0;
  margin-right: auto;
}
.t14 .info .description {
  font-family: "Golos Text", system-ui, sans-serif;
  font-size: var(--17);
  color: var(--Gray7);
  line-height: 1.75;
  max-width: 60ch;
  text-align: left;
}
.t14 .info .title.up {
  font-family: var(--ButtonFont);
  font-size: var(--12);
  letter-spacing: 0.1em;
  color: var(--Brass);
  font-weight: 400;
  text-transform: uppercase;
  padding-bottom: 0;
}
.t14 .info .title.up:after {
  display: none;
}
.t7 {
  background: var(--Cream);
  padding: var(--48) 0;
}
.t7 h2.title {
  font-size: var(--40);
}
.t7a {
  display:flex;
  flex-direction:column;
  gap:var(--Gap);
  border-radius:var(--CardRadius);
  flex:0 0 calc((100% - var(--MainGap) * (var(--InPLine) - 1)) / var(--InPLine));
  width:calc((100% - var(--MainGap) * (var(--InPLine) - 1)) / var(--InPLine));
  border:1px solid rgba(201,162,75, 0.3);
  padding:var(--32);
  background:rgba(255,255,255,0.6);
}
.t7a h2.title {
  font-family: var(--ButtonFont);
  font-size: var(--14);
  letter-spacing: 0.08em;
  color: var(--Sage);
  font-weight: 400;
  text-transform: uppercase;
  padding-bottom: 0;
}
.t7a h2.title:after {
  display: none;
}
.t7aa {
  display:flex;
  align-items:center;
  flex-direction:column;
  gap:var(--ContentShortGap);
  flex:0 0 calc((100% - var(--MainGap) * (var(--InLine) - 1)) / var(--InLine));
  text-align:center;
  padding:var(--16) 0;
  border-bottom:1px solid rgba(201,162,75, 0.15);
}
.t7aa:last-child {
  border-bottom: none;
}
.t7aa .title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: var(--40);
  font-weight: 700;
  background: linear-gradient(90deg, var(--Brass), var(--BrassLight));
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}
.t7aa .description {
  font-family: var(--ButtonFont);
  font-size: var(--13);
  color: var(--Sage);
  letter-spacing: 0.06em;
}
.t7aa:before {
  content:"";
  width:var(--BlockIconWidth);
  height:var(--BlockIconWidth);
  background:var(--BG) center center/contain no-repeat;
  display:none;
}
.t7aa > [style*="--BG"] {
  display: none;
}
.t12 {
  display:flex;
  gap:var(--MainGap);
  overflow:auto;
  scroll-snap-type:both mandatory;
  -webkit-overflow-scrolling:touch;
  background:var(--Pine);
  padding:var(--48) 0;
}
.t12a .cover {
  border: 1px solid rgba(201,162,75, 0.2);
  overflow: hidden;
  display: block;
}
.t12a .cover img {
  display: block;
  height: var(--260);
  width: auto;
  object-fit: cover;
  filter: sepia(0.15) saturate(0.85);
  transition: filter 0.3s ease, transform 0.3s ease;
}
.t12a:hover .cover img {
  filter: sepia(0) saturate(1);
  transform: scale(1.03);
}
.t19 {
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--Pine);
  padding:var(--80) var(--80);
}
.t19 .info {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:var(--10);
  text-align:center;
  border:1px solid var(--Brass);
  border-image:none;
  background:var(--PineDark);
  padding:var(--52) var(--64);
  position:relative;
  max-width:var(--700);
}
.t19 .info::before {
  content: "";
  position: absolute;
  top: var(--20);
  right: var(--20);
  width: var(--64);
  height: var(--64);
  background: var(--Brass);
  border-radius: 50%;
  opacity: 0.12;
}
.t19 .info::after {
  content: "Б П";
  position: absolute;
  top: var(--20);
  right: var(--20);
  width: var(--64);
  height: var(--64);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Playfair Display", Georgia, serif;
  font-size: var(--14);
  font-weight: 700;
  color: var(--Brass);
  letter-spacing: 0.1em;
  border: 1px solid rgba(201,162,75,0.4);
  border-radius: 50%;
}
.t19 .info h2.title {
  padding-bottom:0;
  font-family:"Playfair Display", Georgia, serif;
  color:var(--Cream);
  font-size:var(--36);
  text-align:left;
}
.t19 .info h2.title:after {
  content:none;
  display:none;
}
.t19 .info .description {
  color: rgba(243,238,227,0.6);
  font-family: "Golos Text", system-ui, sans-serif;
  text-transform: none;
  letter-spacing: 0;
  font-size: var(--17);
  text-align: left;
}
.t19 .info .description strong, .t19 .info .description b {
  font-family: "Playfair Display", Georgia, serif;
  font-size: var(--52);
  color: var(--Brass);
  background: none;
  -webkit-background-clip: unset;
  background-clip: unset;
}
.t19 .info-wrap {
  position: relative;
  display: inline-block;
}
.t19 .info-wrap::after {
  content: "";
  position: absolute;
  top: var(--8);
  left: var(--8);
  right: calc(-1 * var(--8));
  bottom: calc(-1 * var(--8));
  border: 1px solid rgba(201,162,75,0.2);
  pointer-events: none;
}
.t3 {
  background: var(--Cream);
  padding: var(--48) 0;
}
.t3a {
  display:flex;
  flex-direction:column;
  border-radius:var(--CardRadius);
  overflow:hidden;
  flex:0 0 calc((100% - var(--MainGap) * (var(--InLine) - 1)) / var(--InLine));
  border:1px solid rgba(201,162,75, 0.25);
  background:white;
  transition:border-color 0.3s ease, box-shadow 0.3s ease;
}
.t3a:hover {
  border-color: var(--Brass);
  box-shadow: 0 8px 32px rgba(19,51,42,0.1);
  transform: none;
}
.t3a img {
  display: block;
  width: 100%;
  height: var(--220);
  object-fit: cover;
  filter: sepia(0.1);
  transition: filter 0.3s ease;
}
.t3a:hover img {
  filter: sepia(0);
}
.t3a .info {
  flex:1;
  display:flex;
  flex-direction:column;
  background:var(--CardFill);
  padding:var(--24) var(--24) var(--28);
  gap:var(--12);
}
.t3a .info .title {
  line-height:var(--26);
  font-family:"Playfair Display", Georgia, serif;
  font-size:var(--22);
  font-weight:700;
  color:var(--Ink);
}
.t3a .info .description {
  font-size: var(--15);
  line-height: 1.65;
}
.t3a .info .more {
  color: var(--Brass);
  font-family: var(--ButtonFont);
  font-size: var(--12);
  letter-spacing: 0.08em;
}
.t3a .info .more:before {
  background: var(--Brass);
}
.t18 {
  display:flex;
  flex-direction:column;
  gap:var(--MainGap);
  color:var(--Color3);
  text-align:center;
  background:var(--Pine);
  padding:var(--80) var(--80);
  border-top:1px solid rgba(201,162,75, 0.15);
  border-bottom:1px solid rgba(201,162,75, 0.15);
}
.t18 h2.title {
  color: var(--Cream);
  font-family: "Playfair Display", Georgia, serif;
  font-size: var(--36);
  text-transform: none;
  letter-spacing: -0.02em;
}
.t18 h2.title:after {
  display: none;
}
.t18a .title {
  font-family: "Playfair Display", Georgia, serif;
  font-size: var(--80);
  font-weight: 700;
  background: linear-gradient(135deg, var(--Brass), var(--BrassLight));
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  line-height: 1;
  letter-spacing: -0.03em;
}
.t18a .description {
  font-family: var(--ButtonFont);
  font-size: var(--13);
  letter-spacing: 0.06em;
  color: var(--Sage);
  text-transform: none;
  text-underline-offset: 4px;
  border-bottom: 1px solid rgba(201,162,75, 0.3);
  padding-bottom: var(--8);
  margin-top: var(--4);
  display: inline-block;
}
.t17 {
  display:flex;
  flex-direction:column;
  gap:var(--MainGap);
  background:var(--Cream);
  padding:var(--48) 0;
}
.t17 h2.title {
  font-size: var(--40);
}
.t17a:before {
  content:"";
  display:block;
  width:var(--PhotoSize);
  height:var(--PhotoSize);
  background:var(--BG) center center/cover no-repeat;
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  border:1px solid rgba(201,162,75, 0.5);
  box-shadow:none;
  border-radius:0;
}
.t17a .info {
  display:flex;
  flex-direction:column;
  gap:var(--ContentShortGap);
  padding:var(--MainPadding) var(--MainBlockPadding) var(--MainBlockPadding);
  border-radius:var(--CardRadius);
  background:white;
  border:1px solid rgba(201,162,75, 0.2);
  border-top:none;
  height:100%;
}
.t17a .info .title.h3 {
  font-family: "Playfair Display", Georgia, serif;
  font-size: var(--18);
  font-weight: 700;
  color: var(--Ink);
}
.t17a .info .title.s {
  line-height:var(--30);
  font-family:var(--ButtonFont);
  font-size:var(--12);
  color:var(--Brass);
  letter-spacing:0.06em;
}
.t17a .info .description {
  font-size: var(--14);
  line-height: 1.6;
}
.t15 {
  background: var(--Cream);
  padding: var(--48) 0;
}
.t15 h2.title {
  font-size: var(--40);
}
.t15a {
  border-bottom: 1px solid rgba(201,162,75, 0.25);
}
.t15a > .title {
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--MainGap);
  font-family:"Playfair Display", Georgia, serif;
  font-size:var(--22);
  font-weight:700;
  color:var(--Ink);
  padding:var(--20) 0;
}
.t15a > .title:after {
  content: "+";
  font-family: var(--ButtonFont);
  font-size: var(--20);
  color: var(--Brass);
  font-weight: 400;
  transform: none;
  transition: transform 0.25s ease, color 0.25s ease;
}
.t15a.current > .title:after {
  content: "−";
  transform: none;
  color: var(--Brass);
}
.t15a .description {
  display:none;
  font-family:"Golos Text", system-ui, sans-serif;
  font-size:var(--16);
  line-height:1.75;
  color:var(--Gray7);
  padding-bottom:var(--20);
}
.t16 {
  background: var(--PineDark);
  padding: var(--80) 0;
}
.t16 .body {
  display:flex;
  flex-direction:column;
  gap:var(--40);
}
.t16 h2.title {
  font-family: "Playfair Display", Georgia, serif;
  color: var(--Cream);
  font-size: var(--48);
  text-transform: none;
}
.t16 h2.title:after {
  background: var(--Brass);
  width: var(--60);
}
.t16.mt .body > .map {
  overflow:hidden;
  flex:0 0 360px;
  border-radius:0;
  border:1px solid rgba(201,162,75,0.25);
}
.t16a:before {
  content:var(--Bfr);
  display:block;
  flex:0 0 var(--48);
  text-align:center;
  font-family:var(--MaterialIcons), ui-serif;
  background:rgba(201,162,75, 0.15);
  border:1px solid rgba(201,162,75, 0.3);
  color:var(--Brass);
  font-size:var(--20);
  border-radius:0;
  width:var(--44);
  height:var(--44);
  line-height:var(--44);
}
.t16a .description {
  font-weight:500;
  color:rgba(243,238,227,0.75);
  font-family:"Golos Text", system-ui, sans-serif;
  font-size:var(--16);
}
.t16a .description a {
  color: var(--BrassLight);
}
.t16 .form {
  background: rgba(255,255,255, 0.04);
  border: 1px solid rgba(201,162,75, 0.2);
  border-radius: 0;
  padding: var(--40);
}
.t16b > label {
  cursor:pointer;
  font-family:var(--ButtonFont);
  font-size:var(--12);
  letter-spacing:0.08em;
  color:var(--Sage);
  text-transform:none;
}
.t16 .form input.text, .t16 .form textarea.text, .t16 .form select.text {
  background: transparent;
  border: none;
  border-bottom: 1px solid rgba(201,162,75, 0.3);
  border-radius: 0;
  padding: var(--12) 0;
  font-family: "Golos Text", system-ui, sans-serif;
  font-size: var(--16);
  color: var(--Cream);
  line-height: 1.5;
}
.t16 .form input.text::placeholder, .t16 .form textarea.text::placeholder {
  color: rgba(110,126,114,0.6);
  font-family: "Golos Text", system-ui, sans-serif;
}
.t16 .form input.text:focus-visible, .t16 .form textarea.text:focus-visible {
  outline: none;
  border-bottom-color: var(--Brass);
  box-shadow: 0 2px 0 rgba(201,162,75,0.2);
}
.t16 .form input[type=submit].btn, .t16 .form .btn.cl {
  background: var(--Brass);
  border: none;
  color: var(--PineDark);
  font-family: var(--ButtonFont);
  font-size: var(--14);
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: var(--16) 0;
  width: 100%;
  text-transform: none;
  transition: background 0.25s ease, transform 0.2s ease;
}
.t16 .form input[type=submit].btn:hover, .t16 .form .btn.cl:hover {
  background: var(--BrassLight);
  transform: none;
}
.t16 .wax-seal {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--80);
  height: var(--80);
  border: 1px solid rgba(201,162,75,0.4);
  border-radius: 50%;
  font-family: "Playfair Display", Georgia, serif;
  font-size: var(--16);
  color: var(--Brass);
  letter-spacing: 0.08em;
  position: relative;
}
.t16 .wax-seal::before {
  content: "";
  position: absolute;
  inset: var(--4);
  border: 1px solid rgba(201,162,75,0.2);
  border-radius: 50%;
}
.btn {
  font-family: var(--ButtonFont);
  font-size: var(--13);
  letter-spacing: 0.06em;
  text-transform: none;
  border-color: rgba(201,162,75,0.4);
  padding: var(--14) var(--28);
  transition: border-color 0.25s ease, background 0.25s ease;
}
.btn:hover {
  text-decoration:none;
  border-color:var(--Brass);
  transform:none;
}
.btn.cl {
  font-family:var(--ButtonFont);
  letter-spacing:0.06em;
  line-height:1.4;
  background:var(--Brass);
  color:var(--PineDark);
  font-weight:700;
  border:none;
  font-size:var(--14);
  padding:var(--16) var(--36);
}
.btn.cl:hover {
  background: var(--BrassLight);
  transform: none;
}
.more {
  display:inline-flex;
  gap:var(--10);
  align-items:baseline;
  line-height:1.4;
  text-decoration:none;
  position:relative;
  padding-bottom:var(--5);
  color:var(--Brass);
  font-family:var(--LabelFont);
  font-size:var(--12);
  letter-spacing:0.04em;
  text-transform:none;
}
.more:before {
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:var(--2);
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform 0.25s ease;
  background:linear-gradient(90deg, var(--Brass), var(--BrassLight));
}
.more:after {
  content:"→";
  font-family:var(--MonoFont);
  transition:transform 0.25s ease;
  color:var(--BrassLight);
}
.growth-spine {
  position: fixed;
  left: 0; top: 0;
  width: 100%; height: 100%;
  pointer-events: none;
  z-index: 0;
  opacity: 0;
  transition: opacity 1s ease;
}
body.rv-on .growth-spine {
  opacity: 1;
}
.growth-spine path {
  stroke-dasharray: 2000;
  stroke-dashoffset: 2000;
  transition: stroke-dashoffset 3s cubic-bezier(0.4,0,0.2,1);
}
body.rv-on .growth-spine path {
  stroke-dashoffset: 0;
}
@media (max-width: 1024px) {
  header.header {
    pointer-events: auto;
    position: relative;
    background: var(--PineDark);
    mix-blend-mode: normal;
    padding: 14px 16px;
    border-bottom: 1px solid rgba(201,162,75,0.2);
  }
  header.header .logo .pixio {
    font-size: 18px;
    color: var(--Cream);
  }
  header.header .m .mb:before, header.header .m .mb:after {
    border-color: var(--Cream);
    background: var(--Cream);
  }
  body.menu header.header .menu {
    background: var(--PineDark);
    border: none;
  }
  header.header .menu a {
    font-size: 16px;
    color: var(--Cream);
  }
  .t0a {
    padding: 0 16px;
    justify-content: center;
  }
  .t0a .body {
    flex-direction: column;
    gap: 32px;
    align-items: flex-start;
  }
  .t0a .body::after {
    display: none;
  }
  .t0a .info {
    flex: none;
    width: 100%;
  }
  .t0a .info .title {
    font-size: 40px;
  }
  .t0a .info .description {
    font-size: 16px;
  }
  .t0a .info::before {
    font-size: 10px;
    padding: 5px 10px;
  }
  .t13a {
    gap: 16px;
    padding: 20px 0;
  }
  .t13a:before {
    font-size: 28px;
    flex: 0 0 48px;
  }
  .t13a .description {
    font-size: 15px;
  }
  .t14 > .up {
    flex: none;
  }
  .t14 > .up.title {
    font-size: 48px;
  }
  .t14:after {
    display: none;
  }
  .t18 {
    padding: 48px 16px;
  }
  .t18a .title {
    font-size: 60px;
  }
  .t18a .description {
    font-size: 12px;
  }
  .t19 .info {
    padding: 32px 24px;
  }
  .t19 .info h2.title {
    font-size: 28px;
  }
  .t19 .info .description strong, .t19 .info .description b {
    font-size: 36px;
  }
  .t16 {
    padding: 40px 0;
  }
  .t16 h2.title {
    font-size: 32px;
  }
  .t16 .line {
    gap:var(--32);
    flex-direction:column;
  }
  .t16 .form {
    flex: 0 0 auto;
    width: 100%;
    padding: 24px 16px;
  }
  .t16.mt .body > .map {
    flex: 0 0 240px;
  }
  .t7 {
    padding: 40px 16px;
  }
  .t7 .items {
    flex-direction: column;
    --MainGap: 16px;
  }
  .t7 h2.title, .t13 h2.title, .t17 h2.title, .t15 h2.title {
    font-size: 30px;
  }
  .t15 {
    padding:40px 16px;
  }
  .t15a > .title {
    font-size: 18px;
  }
  .t3 {
    padding: 40px 16px;
  }
  .t19 {
    padding:40px 16px;
  }
  .t3 .items {
    flex-direction: column;
  }
  .t4 {
    --S5-8Padding: 0px;
    padding: 40px 16px;
    overflow: hidden;
  }
  .t4 .info {
    max-width: 100%;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
  .t4.r .info {
    margin-left: 0;
    max-width: 100%;
    padding-left: 0;
  }
  .t4 h2.title {
    font-size: 28px;
  }
  .t4 .description {
    font-size: 15px;
  }
  .t20 .container {
    flex-wrap: wrap;
    overflow-x: hidden;
    gap: 16px;
    padding: 0 16px;
  }
  .t20a {
    flex: 0 0 calc(50% - 8px);
    min-width: 0;
  }
  .t20a img {
    max-width: 100%;
    height: auto;
  }
  .t13 {
    padding:40px 16px;
    max-width:100%;
    overflow:hidden;
  }
  .t14 {
    padding:40px 0;
    flex-direction:column;
    gap:24px;
    overflow:hidden;
    max-width:100%;
  }
  .growth-spine {
    display: none;
  }
  .cursor-h, .cursor-v, .cursor-ring {
    display: none;
  }
  .t17 {
    padding: 40px 16px;
  }
  .t17 .container {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    padding: 0;
    overflow: visible;
    transform: none !important;
  }
  .t17a {
    flex:0 0 calc(50% - 8px);
    min-width:0;
    margin:0 !important;
  }
  .t12 {
    padding: 40px 0;
  }
  .t12 .t12a .cover img, .t12 .t12a img {
    height: 200px;
  }
  .t7a .items {
    flex-direction: column;
  }
  .t7a  {
    width:100%;
    flex:none;
    padding:20px;
    width:100% !important;
    flex:none !important;
  }
  #mb > .s.t13.body, #mb > .s.t16.body {
    padding-left: 16px;
    padding-right: 16px;
  }
  #mb > .s {
    overflow-x: hidden;
  }
  body.kapital #mb > .s{
    max-width: 100vw;
  }

  footer.footer .body {
    width:100%;
  }

  .t14 .info {
    padding:0 16px;
  }
}
.rq-ok{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(8,12,20,.62);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s;font-family:var(--MainFont,system-ui,-apple-system,Segoe UI,Roboto,sans-serif)}
.rq-ok.is-open{opacity:1;visibility:visible}
.rq-ok__box{position:relative;max-width:440px;width:100%;background:var(--Color3,#fff);color:var(--Color1,#0e1116);border-radius:var(--MainBorderRadius,18px);padding:42px 34px 34px;text-align:center;box-shadow:0 40px 90px -20px rgba(0,0,0,.45);transform:translateY(16px) scale(.97);transition:transform .35s cubic-bezier(.16,1,.3,1)}
.rq-ok.is-open .rq-ok__box{transform:none}
.rq-ok__ic{width:74px;height:74px;margin:0 auto 22px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;background:var(--Gradient,linear-gradient(135deg,#6646D5,#99BA2B))}
.rq-ok__t{font-size:23px;font-weight:800;letter-spacing:-.01em;margin:0 0 10px}
.rq-ok__d{font-size:15px;line-height:1.55;color:var(--Gray7,#5b6472);margin:0 0 26px}
.rq-ok__btn{font-family:var(--MonoFont,var(--MainFont,inherit));text-transform:uppercase;letter-spacing:.06em;font-size:13px;font-weight:600;cursor:pointer;border:0;border-radius:var(--ButtonsBorderRadius,8px);padding:14px 32px;color:#fff;background:var(--Gradient,linear-gradient(135deg,#6646D5,#99BA2B));transition:transform .2s ease}
.rq-ok__btn:hover{transform:scale(1.04)}
.rq-ok__x{position:absolute;top:12px;right:14px;width:34px;height:34px;border:0;background:transparent;cursor:pointer;font-size:26px;line-height:1;color:var(--Gray4,#9aa3af);transition:color .2s}
.rq-ok__x:hover{color:var(--Color1,#0e1116)}
