@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:#0D1117;
  --Color2:#1A6DD4;
  --Color6:#60A5FA;
  --Red:#EB2B1E;
  --Color3:#fff;
  --MainFrameBg:#F0F4F9;
  --Color4:#BFC3C8;
  --Gray8:#1E2939;
  --Gray7:#374151;
  --Gray5:#6A7282;
  --Gray4:#99A1AF;
  --Gray3:#D1D5DC;
  --Gray2:#E5E7EB;
  --Gray0:#F9FAFB;
  --GradFrom:#1A6DD4;
  --GradTo:#60A5FA;
  --Gradient:linear-gradient(135deg, #1A6DD4, #60A5FA);
  --GradientR:linear-gradient(135deg, #60A5FA, #1A6DD4);
  --Bfr:"";
  --Unit:calc(100cqw/1760);
  --MainCoef:tan(atan2(1760px,100cqw));
  --MainGap:var(--30);
  --Gap:var(--30);
  --Body:var(--1520);
  --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));
  --14: calc(14 * var(--Unit));
  --15: calc(15 * var(--Unit));
  --16: calc(16 * 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));
  --MainContentGap:var(--50);
  --MainPadding:var(--80);
  --SidePadding:var(--100);
  --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:var(--6);
  --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:#1A6DD4;
  --HalfBorderRadius:50%;
  --HeadingWeight:700;
  --HeadingTracking:-0.03em;
  --HeadingTransform:none;
  --HeadingLine:block;
  --HeadingLineFill:var(--Gradient);
  --H3Weight:600;
  --HeroSize:var(--72);
  --HeroWeight:700;
  --HeroTransform:none;
  --SectionHeadSize:var(--44);
  --LabelFont:var(--MonoFont);
  --LabelTransform:uppercase;
  --LabelTracking:0.08em;
  --CardRadius:var(--12);
  --CardRadiusLg:var(--16);
  --CardSharpRadius:var(--8);
  --CardFill:#F0F4F9;
  --CardShadow:0 var(--4) var(--20) rgba(13,17,23,0.07), 0 var(--1) var(--3) rgba(13,17,23,0.04);
  --CardBorderWidth:var(--2);
  --CardAccentBorder:var(--4);
  --BadgeRadius:var(--12);
  --DividerWidth:1px;
  --DividerColor:#CBD5E0;
  --ButtonBorderWidth:1.5px;
  --ButtonTransform:uppercase;
  --ButtonFont:var(--MonoFont);
  --Ink:#0D1117;
  --InkMid:#4A5568;
  --InkLight:#8A9BB0;
  --Azure:#1A6DD4;
  --AzureLight:#E8F1FB;
  --AzureDark:#0F4B9B;
  --Glass:rgba(255,255,255,0.72);
  --GlassBorder:rgba(255,255,255,0.9);
  --Surface:#F8F9FB;
  --Surface2:#EEF2F8;
  --EaseOut:cubic-bezier(.16,1,.3,1);
  --EaseUI:cubic-bezier(.4,0,.2,1);
  --11:calc(11 * var(--Unit));
  --13:calc(13 * var(--Unit));
  --28:calc(28 * var(--Unit));
  --39:calc(39 * var(--Unit));
  --56:calc(56 * var(--Unit));
  --88:calc(88 * var(--Unit));
  --120:calc(120 * var(--Unit));
  --140:calc(140 * var(--Unit));
  --160:calc(160 * var(--Unit));
  --200:calc(200 * var(--Unit));
  --280:calc(280 * var(--Unit));
  --400:calc(400 * var(--Unit));
  --420:calc(420 * var(--Unit));
  --520:calc(520 * var(--Unit));
  --700:calc(700 * var(--Unit));
  --900:calc(900 * var(--Unit));
  --960:calc(960 * var(--Unit));
  --1392:calc(1392 * var(--Unit));
  --1520:calc(1520 * 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(--Azure);
}
.description.annotation,
.type33aaa:before.annotation {
  font-family: var(--LabelFont);
  font-size: var(--15);
  line-height: 1.5;
  letter-spacing: var(--LabelTracking);
  text-transform: var(--LabelTransform);
  color: var(--InkMid);
}
.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 {
  display:inline-flex;
  gap:var(--10);
  align-items:baseline;
  font-family:var(--LabelFont);
  font-size:var(--15);
  line-height:1.4;
  letter-spacing:var(--LabelTracking);
  text-transform:var(--LabelTransform);
  text-decoration:none;
  position:relative;
  padding-bottom:var(--5);
  color:var(--Azure);
}
.more:empty {
  display: none;
}
.more:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: var(--2);
  background: var(--Gradient);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.25s ease;
}
.more:after {
  content: "→";
  font-family: var(--MonoFont);
  transition: transform 0.25s ease;
}
.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;
  line-height: 1.45;
  background: none;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  transform: scale(1);
  transform-origin: center;
  transition: all 0.3s linear;
}
.btn:hover {
  transform: scale(1.05);
  text-decoration: none;
}
.btn.t1 {
  border-color: color-mix(in srgb, currentColor 30%, transparent);
  color: var(--Azure);
}
.t15a .title {
  font-size: var(--36);
  font-weight: 600;
  line-height: var(--42);
  cursor: pointer;
  padding: var(--ButtonPaddingTB) 0;
}

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: var(--Color3) !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: var(--Color3) !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 .description a {
  color: var(--Color3);
}
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 .logo {
  pointer-events: auto;
  display: flex;
  flex-direction: column;
  gap: var(--3);
  animation: headerLogoSlideIn 1s ease-out;
}
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 .current > a {
  background: var(--Gradient) left bottom/100% var(--2) no-repeat;
  padding-bottom: var(--5);
}
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 {
  font-size:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:var(--50);
  height:var(--50);
  background-color:rgba(255, 255, 255, 0.1);
  border-radius:50%;
  transition:background-color 0.15s ease, transform 0.15s ease;
  background:rgba(26,109,212,0.08);
  border:1px solid rgba(26,109,212,0.2);
  --BG:url("../images/ic-phone.svg");
}
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 {
  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 .scroll {
  position: absolute;
  left: 50%;
  bottom: var(--48);
  display: inline-flex;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.6);
  font-size: var(--14);
  font-family: var(--MonoFont);
  animation: t0scroll 1s ease-in-out infinite alternate;
  pointer-events: none;
}

.t0 .arrows .arrow.right:hover {
  transform: 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: "";
  display: block;
  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;
}
.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 {
  animation: t0aFromBottom 1.5s ease forwards;
  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.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(--Color3);
}

.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);
}
.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(--36);
  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 {
  border-radius: var(--MainBorderRadius);
  overflow: hidden;
  background: var(--BG) center center/cover no-repeat;
  padding: var(--HeaderSliderPaddingTB) var(--MainPadding);
}
.t4 .info {
  padding-right: var(--S5-8Padding);
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
  color: var(--Color3);
}
.t4:not(.d) .info .title,
.t4:not(.d) .info .description,
.t4:not(.d) .info .description a {
  color: var(--Color3);
}
.t4.r .info {
  padding-left: var(--S5-8Padding);
  padding-right: 0;
}
.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 > .description {
  text-align: center;
  font-weight: 300;
}
.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;
}

@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;
}
.t7a {
  display: flex;
  flex-direction: column;
  gap: var(--Gap);
  border-radius: var(--CardRadius);
  background: var(--CardFill);
  padding: var(--MainBlockPadding);
  flex: 0 0 calc((100% - var(--MainGap) * (var(--InPLine) - 1)) / var(--InPLine));
  width: calc((100% - var(--MainGap) * (var(--InPLine) - 1)) / var(--InPLine));
}

.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;
}
.t7aa:before {
  content: "";
  display: block;
  width: var(--BlockIconWidth);
  height: var(--BlockIconWidth);
  background: var(--BG) center center/contain no-repeat;
}
.t7aa .title {
  font-size:var(--32);
  color:var(--Color2);
  font-weight:600;
}

.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);
}

.t12 {
  display: flex;
  gap: var(--MainGap);
  overflow: auto;
  scroll-snap-type: both mandatory;
  -webkit-overflow-scrolling: touch;
}

.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);
}
.t13a:before {
  content: "";
  display: block;
  flex: 0 0 var(--BigIconWidth);
  background: var(--BG) center bottom/contain no-repeat;
  aspect-ratio:1 / 1;
}
.t14 {
  display: flex;
  gap: var(--MainGap);
}
.t14 > .up {
  flex: 0 0 min(var(--SideTitleWidth), 40%);
}
.t14 .info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}
.t15a > .title:after {
  content: "expand_more";
  font-family: var(--MaterialIcons), ui-serif;
  font-size: var(--MainHeaderFontSize);
  color: var(--Color2);
  transition: transform 0.25s ease;
}
.t15a.current > .title:after {
  transform: rotate(180deg);
}
.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 .body {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}
.t16.dark a {
  color: var(--Color3);
}
.t16.dark .description {
  color: var(--Gray3);
  font-weight: 300;
  line-height: 1.625;
}

.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.mt .body > .map {
  flex: 0 0 min(var(--600), 45%);
  border-radius: var(--MainBorderRadius);
  overflow: hidden;
}
.t16a:nth-child(3n+2) {
  --BGC:var(--Color6);
}
.t16a:nth-child(3n) {
  --BGC:#25D366;
}
.t16a:before {
  content: var(--Bfr);
  display: block;
  flex: 0 0 var(--48);
  width: var(--48);
  height: var(--48);
  line-height: var(--48);
  text-align: center;
  border-radius: 50%;
  background: var(--BGC);
  color: var(--Color3);
  font-family: var(--MaterialIcons), ui-serif;
  font-size: var(--24);
}
.t16a .description {
  font-weight: 500;
}
.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 .form {
  padding: var(--32);
  background: var(--CardFill);
  border-radius: var(--CardRadius);
}

.t16:not(.f) .form {
  display: none;
}
.t16b {
  display: flex;
  flex-direction: column;
  gap: var(--8);
}
.t16b > label {
  cursor: pointer;
  text-transform: var(--LabelTransform);
  color: var(--Gray5);
  letter-spacing: var(--LabelTracking);
  font-size: var(--14);
  font-family: var(--LabelFont);
}
.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);
}
.t17 {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
}
.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;
}
.t17a:before {
  content: "";
  display: block;
  width: var(--PhotoSize);
  height: var(--PhotoSize);
  border-radius: var(--HalfBorderRadius);
  background: var(--BG) center center/cover no-repeat;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 0 0 var(--3) var(--Color3), 0 0 0 var(--5) var(--Color2);
}
.t17a .info {
  display: flex;
  flex-direction: column;
  gap: var(--ContentShortGap);
  padding: var(--MainPadding) var(--MainBlockPadding) var(--MainBlockPadding);
  background: var(--CardFill);
  border-radius: var(--CardRadius);
}
.t17a .info .title.s {
  color: var(--Color4, );
  font-size: var(--22);
  line-height: var(--30);
}
.t18 .description {
  color: var(--Gray4);
}
.t19 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--MainPadding) var(--SidePadding);
}
.t19 .info {
  background: var(--Color3);
  border: var(--3) solid;
  border-image: var(--Gradient) 1;
  padding: var(--36) var(--52);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--10);
  text-align: center;
  max-width: 100%;
}
.t19 .info h2.title {
  font-size: var(--30);
  padding-bottom: 0;
}
.t19 .info h2.title:after {
  content: none;
}
.t19 .info .description {
  text-transform: var(--LabelTransform);
  letter-spacing: var(--LabelTracking);
  font-family: var(--LabelFont);
  font-size: var(--14);
  color: var(--Gray5);
}
.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;
}
.t20a a {
  display: block;
}
.t21 .body {
  display: flex;
  flex-direction: column;
  gap: var(--MainGap);
  text-align: center;
}
.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: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);
}
.t22a a {
  display: block;
}
.t22a:hover img {
  transform: scale(1.04);
  opacity: 0.92;
}
.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: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(--Color1) 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, #DDE7F2 78%, transparent);
  -webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2);padding:clamp(18px,4vw,64px);}
#gvp .popup{
  display:flex;
  gap:clamp(22px,3.2vw,52px);
  max-height:100vh;
  width:100%;
  background:transparent;
  flex-direction:row;
  padding:0;
  flex:1;
  position:relative;
  border-radius:0;
  max-width:1240px;
  align-items:stretch;}
#gvp .popup > a.close{background:rgba(255,255,255,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:50px;height:50px;right:0;top:0;z-index:3;border:1px solid rgba(26,109,212,.3);border-radius:50%;transition:.24s;}
#gvp .popup > a.close::before,#gvp .popup > a.close::after{content:"";position:absolute;left:50%;top:50%;width:17px;height:2px;border-radius:2px;background:var(--Color1);}
#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(--Color2,var(--Color2));border-color:var(--Color2,var(--Color2));}
#gvp .popup > a.close:hover::before,#gvp .popup > a.close:hover::after{background:var(--Color3);}
#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:rgba(255,255,255,.55);
  transition:.24s;
  position:relative;
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  border:1px solid rgba(26,109,212,.28);
  border-radius:50%;
  transform:none;
  box-shadow:0 8px 22px -10px rgba(26,109,212,.4);}
#gvp .popup .photo > .arrow .arrow::before{content:"";position:absolute;left:50%;top:50%;width:13px;height:13px;border-left:2px solid #0D1117;border-bottom:2px solid #0D1117;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);
  background:var(--Color2,var(--Color2));
  border-color:var(--Color2,var(--Color2));}
#gvp .popup .photo > .arrow .arrow:hover::before{border-color:var(--Color3);}
#gvp .popup .photo > .cover{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:auto;
  position:relative;}
#gvp .popup .photo > .cover img{max-width:100%;max-height:82vh;object-fit:contain;border-radius:14px;border:6px solid #fff;box-shadow:0 30px 70px -28px rgba(26,109,212,.55);}
#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(--Color1);font-family:var(--MainFont,'Inter',sans-serif);font-weight:700;font-size:clamp(22px,2.4vw,34px);line-height:1.16;}
#gvp .popup .info-block .title::before{content:"СВЕТ · СТЕКЛО";display:block;font-family:var(--MonoFont,ui-monospace,monospace);font-size:11px;font-weight:600;letter-spacing:.2em;color:var(--Color2,var(--Color2));margin-bottom:13px;text-transform:uppercase;}
#gvp .popup .info-block .description{color:rgba(13,17,23,.66);line-height:1.62;font-family:var(--MainFont,'Inter',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);
  }
  .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 .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 .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(--36);
  }
  .t6a:after {
    content: none !important;
  }
  .t14 {
    flex-direction: column;
  }
  .t14 > .up {
    flex: none;
  }
  .t18 .items {
    gap:var(--24);
    flex-wrap:wrap;
  }
#gvp.popupBox{padding:14px;}
#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;border-width:4px;}
#gvp .popup .info-block .title{font-size:20px;}
  #gvp .popup{
    flex-direction:column;
    gap:16px;
    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;}
  .t17a{
    flex:0 0 75%;
  }
}

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

.t0a .body,
.t0a .body:before,
.t0a .body:after,
.t0a .info .HeaderSliderDescription p {
  opacity: 1;
  animation: none;
}
.t0a.current .info {
  animation:none;
}
body {
  background:var(--Surface);
  color:var(--Ink);
  font-family:var(--MainFont), serif;
  width:100%;
  min-height:100vh;
  font-style:normal;
  position:relative;
  scroll-behavior:smooth;
  display:flex;
  flex-direction:column;
  overflow-x:hidden;
  padding:0;
  margin:0;
  font-size:0;
}
#mb {
  flex:1;
  display:flex;
  flex-direction:column;
  gap:var(--MainContentGap);
  position:relative;
}
#mb::before {
  content: "";
  position: fixed;
  left: var(--72);
  top: 0; bottom: 0;
  width: var(--1);
  background: linear-gradient(to bottom,
    transparent 2%,
    rgba(26,109,212,0.18) 15%,
    rgba(26,109,212,0.22) 50%,
    rgba(26,109,212,0.18) 85%,
    transparent 98%);
  pointer-events: none;
  z-index: 0;
}
#mb > .s::before {
  content: none;
}
#sections::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(
    700px at calc(var(--mx, 0.5) * 100vw) calc(var(--my, 0.4) * 100vh),
    rgba(26,109,212,0.055),
    transparent 65%
  );
}
body.rv-on .reveal {
  opacity: 0;
  transform: translateY(var(--28));
  transition: opacity 0.8s var(--EaseOut), transform 0.8s var(--EaseOut);
}
body.rv-on .reveal.in, body:not(.rv-on) .reveal {
  opacity: 1;
  transform: none;
}
body.rv-on .reveal-stagger > * {
  opacity: 0;
  transform: translateY(var(--20));
  transition: opacity 0.65s var(--EaseOut), transform 0.65s var(--EaseOut);
}
body.rv-on .reveal-stagger.in > *, body:not(.rv-on) .reveal-stagger > * {
  opacity: 1;
  transform: none;
}
body.rv-on .reveal-stagger.in > *:nth-child(1) { transition-delay: 0ms; }
body.rv-on .reveal-stagger.in > *:nth-child(2) { transition-delay: 90ms; }
body.rv-on .reveal-stagger.in > *:nth-child(3) { transition-delay: 180ms; }
body.rv-on .reveal-stagger.in > *:nth-child(4) { transition-delay: 270ms; }
body.rv-on .reveal-stagger.in > *:nth-child(5) { transition-delay: 360ms; }
body.rv-on .reveal-stagger.in > *:nth-child(6) { transition-delay: 450ms; }
body.rv-on .reveal-stagger.in > *:nth-child(7) { transition-delay: 540ms; }
body.rv-on .reveal-stagger.in > *:nth-child(8) { transition-delay: 630ms; }
h1, h2, h3, h4 {
  font-family: 'Unbounded', 'Inter', system-ui, sans-serif;
  letter-spacing: -0.025em;
  color: var(--Ink);
}

h2.title, .h2 {
  font-family: 'Unbounded', system-ui, sans-serif;
  font-weight: 700;
  text-transform: none;
}

body.oknaplast-b .h2{
  font-size: var(--36);
  color: var(--Ink);
  padding-bottom: var(--20);
}
h2.title::after, .h2::after {
  background: var(--Gradient);
  height: var(--2);
  width: var(--60);
}
h2.title span {
  background: var(--Gradient);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}
h3.title {
  font-family: 'Unbounded', system-ui, sans-serif;
  font-size: var(--18);
  font-weight: 600;
  color: var(--Ink);
  letter-spacing: -0.02em;
}
.description {
  color: var(--InkMid);
}
.more::before {
  background: var(--Gradient);
}
.btn {
  border-radius: var(--ButtonsBorderRadius);
  font-family: 'Inter', sans-serif;
  font-size: var(--13);
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0.02em;
  border: 1.5px solid rgba(26,109,212,0.4);
  color: var(--Azure);
  padding: var(--14) var(--28);
}
.btn.cl {
  font-family:'Inter', sans-serif;
  line-height:1.4;
  background:var(--Gradient);
  border:0;
  color:var(--Color3);
  font-weight:700;
  font-size:var(--15);
  padding:var(--16) var(--36);
  letter-spacing:0.01em;
  text-transform:none;
  box-shadow:0 var(--8) var(--24) rgba(26,109,212,0.35);
}
.btn.cl:hover {
  box-shadow: 0 var(--12) var(--32) rgba(26,109,212,0.5);
  transform: scale(1.03) translateY(calc(-1 * var(--2)));
}
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:rgba(248,249,251,0.88);
  backdrop-filter:blur(20px) saturate(180%);
  -webkit-backdrop-filter:blur(20px) saturate(180%);
  border-bottom:1px solid rgba(26,109,212,0.1);
  padding:var(--16) var(--64);
}
@supports not (backdrop-filter: blur(1px)) {
  header.header {
    background: rgba(248,249,251,0.97);
  }
}

header.header .logo .pixio {
  line-height:1.2;
  font-family:'Unbounded', system-ui, sans-serif;
  font-size:var(--18);
  font-weight:700;
  color:var(--Ink);
  letter-spacing:-0.02em;
  text-transform:none;
}
header.header .logo .label {
  font-family:var(--MonoFont);
  font-size:var(--12);
  line-height:1.3;
  color:var(--InkLight);
}
header.header .menu a {
  display:inline-block;
  color:var(--InkMid);
  font-family:'Inter', sans-serif;
  font-size:var(--13);
  letter-spacing:0.02em;
  text-transform:none;
  font-weight:500;
}
header.header .menu a:hover {
  text-decoration:none;
  color:var(--Azure);
}
header.header .contacts a::before {
  filter: invert(36%) sepia(95%) saturate(600%) hue-rotate(196deg) brightness(85%) contrast(95%);
}
header.header .contacts a.whatsapp {
  --BG: url("../images/ic-wa.svg");
}
header.header .contacts a:hover {
  background-color:rgba(153, 186, 43, 0.25);
  text-decoration:none;
  background:rgba(26,109,212,0.15);
  transform:scale(1.08);
}
footer.footer {
  padding:var(--30) var(--SidePadding);
  display:flex;
  gap:var(--MainGap);
  align-items:center;
  background:var(--Ink);
  margin-top:0;
}
footer.footer .description {
  flex:1;
  font-family:var(--MonoFont);
  font-size:var(--15);
  letter-spacing:0.05em;
  color:rgba(255,255,255,0.45);
}
#mb > .s {
  margin: 0 var(--64);
  padding: var(--88) 0;
}
#mb > .s.t0 {
  margin: 0;
  padding: 0;
}
#mb > .s.t18 {
  margin: 0;
  padding: var(--72) var(--64);
}
#mb > .s.t21.dark {
  padding: var(--80) var(--64);
}
#mb > .s.t16.dark {
  margin: 0;
  max-width: none;
}
#mb > .s.body {
  margin: 0 auto;
  padding-left: var(--64);
  padding-right: var(--64);
}
#mb > .s.t0, #mb > .s.t18, #mb > .s.t16.dark {
  padding-left: 0;
  padding-right: 0;
}
.t0 {
  overflow:hidden;
  display:flex;
  align-items:stretch;
  justify-content:center;
  background:var(--Color1);
  background:#071529 !important;
  min-height:100vh;
}
.t0 .container {
  display:flex;
  overflow:hidden;
  width:100%;
  background:#071529;
}
.t0a {
  display:flex;
  padding:0 var(--HeaderSliderPaddingLR);
  flex:0 0 100%;
  position:relative;
  background:var(--BG) center center/cover no-repeat;
  background:linear-gradient(135deg, #071529 0%, #0d2248 55%, #193a7a 100%) !important;
  min-height:100vh;
  align-items:center;
  justify-content:flex-start;
  padding-left:var(--160);
  padding-right:var(--120);
}
.t0a::before, .t0a::after {
  display: none;
}
.t0a .body::before, .t0a .body::after {
  display: none;
}
.t0a .body, .t0a .body:before, .t0a .body:after, .t0a .info, .t0a .info .title, .t0a .info .description, .t0a .info .description p, .t0a .info .more, .t0a .info .btn {
  animation: none !important;
  opacity: 1 !important;
  transform: none !important;
}
.t0a .body {
  animation:t0aInit 1.5s ease-out 1 forwards;
  opacity:0;
  max-width:var(--960);
  position:relative;
}
.t0a .window-frame {
  position: absolute;
  right: var(--60);
  top: 50%;
  transform: translateY(-50%);
  width: var(--420);
  height: var(--520);
  border: 1.5px solid rgba(255,255,255,0.08);
  border-radius: var(--8);
  pointer-events: none;
}
.t0a .window-frame::before {
  content: "";
  position: absolute;
  left: 50%; top: 0; bottom: 0;
  width: 1.var(--5);
  background: rgba(255,255,255,0.06);
}
.t0a .window-frame::after {
  content: "";
  position: absolute;
  top: 50%; left: 0; right: 0;
  height: 1.var(--5);
  background: rgba(255,255,255,0.06);
}

.t0a .info {
  display:flex;
  flex-direction:column;
  will-change:transform;
  align-items:flex-start;
  text-align:left;
  gap:var(--28);
}
.t0a .info .title {
  font-family: 'Unbounded', system-ui, sans-serif;
  font-size: var(--64);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.03em;
  color: var(--Color3);
  text-transform: none;
  animation: none;
  opacity: 1;
}
.t0a .info .title span {
  background-size:200% 100%;
  background:linear-gradient(135deg, var(--Color6), #93C5FD);
  background-clip:text;
  -webkit-background-clip:text;
  color:transparent;
  animation:none;
}
.t0a .info .description, .t0a .info .description p {
  font-family: 'Inter', sans-serif;
  font-size: var(--18);
  font-weight: 400;
  line-height: 1.65;
  color: rgba(255,255,255,0.72);
  animation: none;
  opacity: 1;
}
.t0a .info .more {
  align-self:center;
  position:relative;
  z-index:1;
  color:var(--Color6);
  font-family:'Inter', sans-serif;
  font-size:var(--14);
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:0.08em;
}
.t0a .info .more::before {
  background: linear-gradient(135deg, var(--Color6), #93C5FD);
}
.hero-spec {
  position: absolute;
  bottom: var(--60);
  right: var(--80);
  padding: var(--20) var(--28);
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: var(--10);
  color: var(--Color3);
  pointer-events: none;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
@supports not (backdrop-filter: blur(1px)) {
  .hero-spec {
    background: rgba(7,21,41,0.85);
  }
}
.hero-spec .spec-label {
  font-family: 'Inter', sans-serif;
  font-size: var(--11);
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.5);
  margin-bottom: var(--6);
}
.hero-spec .spec-value {
  font-family: 'Unbounded', sans-serif;
  font-size: var(--32);
  font-weight: 700;
  line-height: 1;
  background: linear-gradient(135deg, var(--Color6), #93C5FD);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}
.t0 .arrows {
  position:absolute;
  display:flex;
  height:0;
  gap:var(--MainGap);
  align-items:flex-end;
  cursor:pointer;
  right:var(--80);
  bottom:var(--60);
  z-index:2;
}
.t0 .arrows .arrow {
  display:block;
  transition:transform 0.2s ease;
  width:var(--52);
  height:var(--52);
  background:var(--ArrowImageURL) center/contain no-repeat;
  border:none;
  background-color:transparent;
  cursor:pointer;
}
.t0 .arrows .arrow.left {
  transform: rotate(180deg);
}
.t0 .arrows .arrow:hover {
  background-image:var(--ArrowHoverImageURL);
}
.t0 .arrows .arrow.left:hover {
  transform: rotate(180deg) scale(1.08);
}
.t0 .arrows .arrow.right{
  transform: none;
}
.t0 .arrows .arrow.right:hover {
  transform: scale(1.08);
}
.t18 {
  padding:var(--MainPadding);
  display:flex;
  flex-direction:column;
  gap:var(--MainGap);
  text-align:center;
  background:var(--Surface);
  color:var(--Ink);
  border-top:1px solid rgba(26,109,212,0.08);
  border-bottom:1px solid rgba(26,109,212,0.08);
}
.t18 h2.title::after {
  display: none;
}
.t18 .items {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:0;
  border:1px solid rgba(26,109,212,0.1);
  border-radius:var(--12);
  overflow:hidden;
}
.t18a {
  display:flex;
  flex-direction:column;
  flex:1;
  padding:var(--32) var(--24);
  border-right:1px solid rgba(26,109,212,0.08);
  gap:var(--8);
}
.t18a:last-child {
  border-right: none;
}
.t18a .title {
  font-family: 'Unbounded', system-ui, sans-serif;
  font-size: var(--52);
  font-weight: 700;
  background: var(--Gradient);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  line-height: 1;
}
.t18a .description {
  font-family: 'Inter', sans-serif;
  font-size: var(--13);
  font-weight: 500;
  color: var(--InkMid);
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.t1:not(.bg) {
  background: var(--Color3);
  border-radius: var(--16);
}
.t1 .body {
  align-items: center;
  gap: var(--60);
}
.t1 .body::before {
  border-radius: var(--12);
  overflow: hidden;
  flex: 0 0 min(var(--700), 55%);
  height:stretch;
}
.t1:not(.bg) .body .info {
  padding-right: var(--40);
}
.t1 .info .btn.cl {
  align-self: flex-start;
}
.t3 {
  background: var(--AzureLight);
  border-radius: var(--16);
  padding: var(--60);
}
.t3 .items {
  --MainGap: var(--20);
}
.t3a {
  display:flex;
  flex-direction:column;
  background:var(--Color3);
  border-radius:var(--14);
  box-shadow:0 var(--2) var(--12) rgba(26,109,212,0.08);
  overflow:hidden;
  flex:0 0 calc((100% - var(--20) * (var(--InLine) - 1)) / var(--InLine));
  transition:transform 0.3s var(--EaseOut), box-shadow 0.3s var(--EaseOut);
}
.t3a:hover {
  transform: translateY(calc(-1 * var(--6)));
  box-shadow: 0 var(--12) var(--32) rgba(26,109,212,0.18);
}
.t3a img {
  height: var(--200);
  width: 100%;
  object-fit: cover;
}
.t3a .info {
  flex:1;
  display:flex;
  flex-direction:column;
  background:var(--Color3);
  padding:var(--24);
  gap:var(--12);
}
.t3a .info .title {
  line-height:var(--26);
  font-family:'Unbounded', system-ui, sans-serif;
  font-size:var(--16);
  font-weight:600;
  color:var(--Ink);
}
.t3a .info .description {
  font-size: var(--14);
  line-height: 1.55;
}
.t3a .info .more.sm, .t3a .info .btn {
  font-size: var(--13);
  font-family: 'Inter', sans-serif;
  color: var(--Azure);
  padding: var(--10) var(--20);
  border-color: rgba(26,109,212,0.3);
}
.t6 {
  align-items:center;
  background:var(--Color3);
  border-radius:var(--16);
  padding:var(--60);
}
.t6 .items {
  width:100%;
  counter-reset:section6;
  --MainGap:var(--24);
}
.t6.il .t6a::before {
  content: "";
  width: var(--52);
  height: var(--52);
  background: var(--BG) center/contain no-repeat;
  border-radius: 0;
  flex: 0 0 var(--52);
}
.t6a h3.title {
  font-weight:600;
  line-height:1.33;
  color:var(--Ink);
  font-size:var(--16);
}
.t6a .description {
  line-height:1.625;
  font-size:var(--14);
  color:var(--InkMid);
}
.t6a::after {
  background: rgba(26,109,212,0.2);
}
.t6a {
  counter-increment:section6;
  position:relative;
  display:flex;
  flex-direction:column;
  border:var(--CardBorderWidth) solid color-mix(in srgb, var(--HeadColor) 60%, transparent);
  transition:transform 0.5s ease-in-out 0.3s, border-color 0.3s ease-in-out;
  background:var(--Surface);
  border-color:rgba(26,109,212,0.2);
  border-radius:var(--14);
  flex:0 0 calc((100% - var(--24) * (var(--InLine) - 1)) / var(--InLine));
  width:calc((100% - var(--24) * (var(--InLine) - 1)) / var(--InLine));
  padding:var(--28);
  gap:var(--16);
  --HeadColor:var(--Azure); }
.t23 {
  display:flex;
  flex-direction:column;
  gap:var(--MainGap);
  background:var(--Surface);
  border-radius:var(--16);
  padding:var(--60);
}
.t23 > .description {
  margin-bottom: var(--24);
  font-size: var(--16);
}
.t23 .items {
  columns: 3;
  column-gap: var(--32);
}
.t23a {
  display:flex;
  flex-direction:column;
  gap:var(--MainGap);
  background:var(--Color3);
  border-radius:var(--12);
  border:1px solid rgba(26,109,212,0.1);
  padding:var(--28);
  margin-bottom:var(--24);
  break-inside:avoid;
}
.t23a > .title {
  font-family: 'Unbounded', system-ui, sans-serif;
  font-size: var(--18);
  font-weight: 700;
  color: var(--Azure);
  padding-bottom: var(--16);
  border-bottom: 1px solid rgba(26,109,212,0.1);
  margin-bottom: var(--16);
}
.t23aa .title.h2 {
  font-family: 'Unbounded', system-ui, sans-serif;
  font-size: var(--13);
  font-weight: 700;
  color: var(--InkMid);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding-bottom: 0;
}
.t23aa .title.h2::after {
  display: none;
}
.t23aaa .description:first-child {
  font-size: var(--14);
  color: var(--Ink);
}
.t23aaa .description + .description {
  flex:none;
  white-space:nowrap;
  order:3;
  color:var(--Azure);
  font-weight:700;
  font-size:var(--14);
}
.t23aaa::after {
  border-bottom-color: rgba(26,109,212,0.15);
}
.t13 {
  background: var(--Color3);
  border-radius: var(--16);
  padding: var(--60);
}
.t13 .items {
  --MainGap: var(--20);
}
.t13a {
  display:flex;
  flex-direction:column;
  gap:var(--MainGap);
  background:var(--Surface);
  border-radius:var(--14);
  border:1px solid rgba(26,109,212,0.1);
  padding:var(--28) var(--20);
  flex:0 0 calc((100% - var(--20) * (var(--InLine) - 1)) / var(--InLine));
  text-align:center;
  transition:border-color 0.25s ease, box-shadow 0.25s ease;
}
.t13a:hover {
  border-color: rgba(26,109,212,0.35);
  box-shadow: 0 var(--8) var(--20) rgba(26,109,212,0.1);
  transform: none;
}
.t13a::before {
  width: var(--56);
  height: var(--56);
  background: var(--BG) center/contain no-repeat;
  margin: 0 auto;
}
.t13a h3.title {
  font-size: var(--14);
  font-weight: 600;
  color: var(--Ink);
  font-family: 'Inter', sans-serif;
}
.t13a .description {
  font-size: var(--14);
  font-weight: 600;
  color: var(--InkMid);
}
.t22 {
  display:flex;
  flex-direction:column;
  gap:var(--MainGap);
  text-align:center;
  background:var(--Surface);
  border-radius:var(--16);
  padding:var(--60);
}
.t22 .items {
  --Gap:0px;
  display:flex;
  flex-wrap:wrap;
  gap:var(--16);
  border-radius:var(--12);
  overflow:hidden;
}
.t22a {
  border-radius: var(--10);
  overflow: hidden;
  flex: 0 0 calc((100% - var(--16) * (var(--InLine) - 1)) / var(--InLine));
}
.t22a img {
  width:100%;
  transition:transform 0.3s ease, opacity 0.3s ease;
  border-radius:var(--10);
}
.t20 {
  text-align:center;
  display:flex;
  flex-direction:column;
  gap:var(--MainGap);
  background:var(--Color3);
  border-radius:var(--16);
  padding:var(--48) var(--60);
}
.t20 h2.title::after {
  display: none;
}
.t20 .container {
  display:flex;
  align-items:center;
  overflow-x:auto;
  overflow-y:hidden;
  justify-content:center;
  gap:var(--48);
  overflow:visible;
}
.t20a {
  flex: 0 0 var(--160);
  display: flex;
  align-items: center;
  justify-content: center;
}
.t20a img {
  filter: grayscale(1);
  opacity: 0.45;
  transition: filter 0.3s ease, opacity 0.3s ease;
  max-width: var(--140);
  max-height: var(--60);
  object-fit: contain;
}
.t20a:hover img {
  filter: none;
  opacity: 1;
}
.t21.dark {
  color:var(--Color3);
  padding:var(--MainPadding);
  background:var(--Ink);
}
.t21.dark h2.title {
  color:var(--Color3);
  font-family:'Unbounded', system-ui, sans-serif;
  font-size:var(--32);
}
.t21a > .title {
  font-size: var(--20);
  line-height: 1.6;
  color: rgba(255,255,255,0.82);
  font-weight: 300;
  font-style: italic;
}
.t21a .info .description:first-child {
  font-family: 'Unbounded', sans-serif;
  font-size: var(--15);
  font-weight: 600;
  color: var(--Color3);
}
.t21a .info .description + .description {
  font-size: var(--13);
  color: rgba(255,255,255,0.45);
  font-family: 'Inter', sans-serif;
}
.t21.dark .bullets .item {
  background: rgba(255,255,255,0.25);
}
.t21.dark .bullets .item.current {
  background: var(--Azure);
  width: var(--24);
  height: var(--8);
}
.t15 {
  background: var(--Color3);
  border-radius: var(--16);
  padding: var(--60);
}
.t15 .items {
  display:flex;
  flex-direction:column;
  max-width:var(--900);
  margin:0 auto;
  width:100%;
}
.t15a {
  border-bottom:var(--DividerWidth) solid var(--DividerColor);
  border-bottom-color:rgba(26,109,212,0.12);
}
.t15a > .title {
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--MainGap);
  font-family:'Unbounded', system-ui, sans-serif;
  font-size:var(--18);
  font-weight:600;
  color:var(--Ink);
  padding:var(--20) 0;
  letter-spacing:-0.02em;
}
.t15a > .title::after {
  content: "";
  flex: 0 0 auto;
  box-sizing: border-box;
  width: var(--12);
  height: var(--12);
  margin-right: var(--6);
  border-right: 2px solid var(--Azure);
  border-bottom: 2px solid var(--Azure);
  transform: rotate(45deg);
  transition: transform 0.3s ease;
}
.t15a.current > .title::after {
  transform: rotate(-135deg);
}
.t15a .description {
  display:none;
  font-size:var(--16);
  line-height:1.65;
  color:var(--InkMid);
  padding-bottom:var(--20);
}
.t16.dark {
  color:var(--Color3);
  background:var(--Ink);
  padding:var(--100) var(--64);
}
.t16.dark h2.title {
  font-family: 'Unbounded', system-ui, sans-serif;
  font-size: var(--48);
  line-height: 1.1;
  color: var(--Color3);
  letter-spacing: -0.03em;
  font-weight: 700;
}
.t16.dark h2.title::after {
  display: none;
}
.t16.dark .body {
  margin:0 auto;
  max-width:var(--1392);
  gap:var(--48);
}
.t16.dark .line {
  gap: var(--60);
  align-items: flex-start;
}
.t16.mr .line .map {
  flex: 1 1 0;
  min-height: var(--400);
  border-radius: var(--12);
  overflow: hidden;
  opacity: 0.85;
}
.t16.dark .line .content {
  flex: 0 0 var(--280);
}
.t16a {
  --BGC:var(--Color2);
  display:flex;
  gap:var(--16);
  align-items:flex-start;
}
.t16a::before {
  background: rgba(26,109,212,0.18);
  color: var(--Azure);
  font-size: var(--18);
  line-height: var(--44);
  width: var(--44);
  height: var(--44);
  flex: 0 0 var(--44);
  border-radius: var(--8);
  border: 1px solid rgba(26,109,212,0.3);
}
.t16.dark .t16a .description {
  color: rgba(255,255,255,0.8);
  font-size: var(--15);
}
.t16.dark .form {
  background:rgba(13,17,23,0.6);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:var(--12);
  padding:var(--36);
  backdrop-filter:none;
}
@supports (backdrop-filter: blur(1px)) {
  .t16.dark .form {
    background: rgba(255,255,255,0.05);
    backdrop-filter: blur(16px) saturate(180%);
    -webkit-backdrop-filter: blur(16px) saturate(180%);
  }
}
.t16.dark .form .text {
  border-bottom:var(--2) solid rgba(255, 255, 255, 0.3);
  line-height:normal;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.15);
  border-radius:var(--8);
  color:var(--Color3);
  font-size:var(--15);
  padding:var(--14) var(--18);
  transition:border-color 0.2s ease, box-shadow 0.2s ease;
}
.t16.dark .form .text:focus {
  border-bottom-color:var(--Color6);
  border-color:rgba(26,109,212,0.6);
  box-shadow:0 0 0 3px rgba(26,109,212,0.15);
  outline:none;
}
.t16.dark .form .text::placeholder {
  color: rgba(255,255,255,0.3);
}
.t16.dark .form .btn {
  text-align:center;
  line-height:1.55;
  background:var(--Gradient);
  border:0;
  border-radius:var(--8);
  color:var(--Color3);
  font-family:'Inter', sans-serif;
  font-size:var(--15);
  font-weight:700;
  letter-spacing:0.02em;
  text-transform:none;
  padding:var(--16) var(--24);
  width:100%;
  margin-top:var(--8);
  box-shadow:0 var(--8) var(--24) rgba(26,109,212,0.4);
  transition:box-shadow 0.3s ease, transform 0.2s ease;
}
.t16.dark .form .btn:hover {
  box-shadow: 0 var(--12) var(--32) rgba(26,109,212,0.55);
  transform: translateY(calc(-1 * var(--1)));
}
#sections {
  container-type:inline-size;
  position:relative;
}
.t6::before, .t13::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(26,109,212,0.06) 1px, transparent 1px);
  background-size: var(--32) var(--32);
  border-radius: inherit;
  pointer-events: none;
  z-index: 0;
}
.t6, .t13 {
  position: relative;
}
.t6 > *, .t13 > * {
  position: relative;
  z-index: 1;
}
.t0a:nth-child(2) {
  background: linear-gradient(135deg, #08162e 0%, #102040 55%, #1e3768 100%);
}
@keyframes wordReveal {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: none; }
}
@media (max-width: 1024px) {
  header.header {
    pointer-events: auto;
    position: fixed;
    mix-blend-mode: normal;
    background: rgba(248,249,251,0.97);
    backdrop-filter: none;
    padding: 15px 20px;
    z-index: 100;
  }
  header.header .logo .pixio {
    font-size: 18px;
  }
  header.header .m {
    display:block;
    flex:0 0 var(--20);
    outline:none;
    -webkit-tap-highlight-color:transparent; }
  header.header .m:focus, header.header .m:focus-visible { outline: none; }
  header.header .m .mb::before {
    border-color: var(--Ink);
    background: transparent;
  }
  header.header .m .mb::after {
    background: var(--Ink);
    border-color: var(--Ink);
  }
  header.header .menu {
    position:fixed;
    left:0;
    top:0;
    width:100vw;
    height:100vh;
    z-index:-1;
    pointer-events:none;
    opacity:0;
    transition:all 0.3s linear;
    flex-direction:column;
    padding:var(--Type3Padding) var(--BlockIconWidth);
    gap:var(--MainBlockPadding);
    background:rgba(248,249,251,0.97);
    backdrop-filter:blur(10px);
  }
  header.header .menu a {
    color: var(--Ink);
    font-size: 20px;
  }
  #mb > .s.body {
    padding: 40px 20px;
    margin: 0 auto;
  }
  #mb > .s.t0 { padding: 0; margin: 0; }
  #mb > .s.t18 { padding: 40px 20px; }
  #mb > .s.t16.dark { padding: 40px 20px; }
  #mb > .s.t21.dark { padding: 40px 20px; }
  .t0, .t0 .container, .t0a {
    min-height: 100vh;
  }
  .t0a {
    padding-left: 24px;
    padding-right: 24px;
    display: flex !important;
    align-items: center !important;
  }
  .t0a .body {
    display: flex !important;
    opacity: 1 !important;
    animation: none !important;
  }
  .t0a .info {
    display: flex !important;
    flex-direction: column !important;
    opacity: 1 !important;
    animation: none !important;
  }
  .t0a .info .title {
    font-size: 34px;
    line-height: 1.15;
    opacity: 1 !important;
    animation: none !important;
    color: var(--Color3) !important;
  }
  .t0a .info .description, .t0a .info .description p {
    font-size: 15px;
    opacity: 1 !important;
    animation: none !important;
    color: rgba(255,255,255,0.72) !important;
  }
  .t0a .info .more {
    opacity: 1 !important;
    animation: none !important;
  }
  .t0a .window-frame {
    display: none;
  }
  .hero-spec {
    bottom: 20px;
    right: 20px;
    padding: 14px 18px;
  }
  .hero-spec .spec-label { font-size: 10px; }
  .hero-spec .spec-value { font-size: 24px; }
  .t18a {
    flex: 0 0 calc(50% - 1px);
    border-right: 1px solid rgba(26,109,212,0.08);
    border-bottom: 1px solid rgba(26,109,212,0.08);
  }
  .t18a:nth-child(even) { border-right: none; }
  .t18a:nth-last-child(-n+2) { border-bottom: none; }
  .t18a .title { font-size: 40px; }
  .t1 .body { flex-direction: column; }
  .t1 .body::before { flex: 0 0 240px; width: 100%; }
  .t3 { padding: 24px 20px; }
  .t3 .items { --InLine: 1; --MainGap: 16px; }
  .t3a { flex: 0 0 100%; width: 100%; }
  .t3a img { height: 200px; }
  .t6 { padding: 32px 20px; }
  .t6 .items { --InLine: 1; }
  .t6a { flex: 0 0 100%; width: 100%; }
  .t6a::after { content: none !important; }
  .t23 { padding: 32px 20px; }
  .t23 .items { columns: 1; }
  .t13 { padding: 32px 20px; }
  .t13 .items {
    flex-direction:column;
    --InLine:2; }
  .t13a { flex: 0 0 calc(50% - 10px); }
  .t22 { padding: 32px 20px; }
  .t22 .items { --InLine: 1; gap: 12px; }
  .t22a { flex: 0 0 100%; }
  .t20 { padding: 32px 20px; }
  .t20 .container { flex-wrap: wrap; justify-content: center; gap: 24px; overflow: visible; }
  .t20a { flex: 0 0 130px; }
  .t21 .container > * { max-width: 100vw; overflow: hidden; }
  .t21a > .title { font-size: 17px; }
  .t15 {
    padding:32px 20px; }
  .t15a > .title { font-size: 16px; }
  .t16.dark { padding: 40px 20px; }
  .t16.dark h2.title { font-size: 30px; }
  .t16 .line { flex-direction: column; gap: 24px; }
  .t16 .line .content { flex: 0 0 auto; }
  .t16.dark .form { flex: 0 0 auto; width: 100%; }
  .t16.mr .line .map { flex: 0 0 auto; min-height: 260px; width: 100%; }
  #mb::before { display: none; }
  #mb > .s {
    margin:0;
    padding:40px 20px;
    overflow-x:clip; }
}
.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,var(--Color3));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:var(--Color3);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:var(--Color3);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)}
h2.title{
  font-size: var(--36);
  color: var(--Ink);
  padding-bottom: var(--20);
}
.t18 h2.title{
  color:var(--InkMid);
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:0.12em;
  font-family:'Inter', sans-serif;
  font-size:var(--14);
  padding-bottom:0;
}
.t3 h2.title{
  padding-bottom: var(--40);
}
.t6 h2.title{
  font-size:var(--36);
  text-align:center;
  padding-bottom:var(--40);
}
.t23 h2.title{
  padding-bottom: var(--16);
}
.t13 h2.title{
  padding-bottom: var(--40);
}
.t20 h2.title{
  font-family:'Inter', sans-serif;
  font-weight:500;
  letter-spacing:0.12em;
  text-transform:uppercase;
  font-size:var(--14);
  color:var(--InkLight);
  padding-bottom:var(--32);
}
.t15 h2.title{
  padding-bottom: var(--40);
}

/* --- fix: t16a contact icons (kit Material ligature broken → own SVG) --- */
.t16a::before{ content:"" !important; background-repeat:no-repeat; background-position:center; background-size:var(--20) var(--20); }
.t16a.s9614a::before{ background-image:url('../images/ic-call.svg'); }
.t16a.s9614b::before{ background-image:url('../images/ic-mail.svg'); }
.t16a.s9614c::before{ background-image:url('../images/ic-loc.svg'); }
