@charset "UTF-8";
:root {
  --se-ink: #102b42;
  --se-ink-deep: #0d293f;
  --se-blue: #174e6d;
  --se-orange: #ed6b32;
  --se-orange-action: #b94f22;
  --se-muted: #647582;
  --se-line: #d9e3e8;
  --se-surface: #f2f7f9;
  --se-link-visited: #647582;
  --se-radius-xs: 2px;
  --se-radius-s: 4px;
  --se-radius-m: 6px;
  --se-radius-l: 8px;
  --se-radius-xl: 12px;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, canvas {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

[hidden] {
  display: none !important;
}

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
}

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}

@-webkit-keyframes flash {
  from, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@keyframes flash {
  from, 50%, to {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}

@-webkit-keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}
@keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}
.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg);
  }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none;
  }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none;
  }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none;
  }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }
  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}
@keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none;
  }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }
  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}
.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center;
}

@-webkit-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
@keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}
.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}
@keyframes rollOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}
.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}

@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
@keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}
@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}
.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}
@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}
.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

body.compensate-for-scrollbar {
  overflow: hidden;
}

.fancybox-active {
  height: auto;
}

.fancybox-is-hidden {
  left: -9999px;
  margin: 0;
  position: absolute !important;
  top: -9999px;
  visibility: hidden;
}

.fancybox-container {
  -webkit-backface-visibility: hidden;
  height: 100%;
  left: 0;
  outline: none;
  position: fixed;
  -webkit-tap-highlight-color: transparent;
  top: 0;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  transform: translateZ(0);
  width: 100%;
  z-index: 99992;
}

.fancybox-container * {
  box-sizing: border-box;
}

.fancybox-outer,
.fancybox-inner,
.fancybox-bg,
.fancybox-stage {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.fancybox-outer {
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}

.fancybox-bg {
  background: #1e1e1e;
  opacity: 0;
  transition-duration: inherit;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.47, 0, 0.74, 0.71);
}

.fancybox-is-open .fancybox-bg {
  opacity: 0.9;
  transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fancybox-infobar,
.fancybox-toolbar,
.fancybox-caption,
.fancybox-navigation .fancybox-button {
  direction: ltr;
  opacity: 0;
  position: absolute;
  transition: opacity 0.25s ease, visibility 0s ease 0.25s;
  visibility: hidden;
  z-index: 99997;
}

.fancybox-show-infobar .fancybox-infobar,
.fancybox-show-toolbar .fancybox-toolbar,
.fancybox-show-caption .fancybox-caption,
.fancybox-show-nav .fancybox-navigation .fancybox-button {
  opacity: 1;
  transition: opacity 0.25s ease 0s, visibility 0s ease 0s;
  visibility: visible;
}

.fancybox-infobar {
  color: #ccc;
  font-size: 13px;
  -webkit-font-smoothing: subpixel-antialiased;
  height: 44px;
  left: 0;
  line-height: 44px;
  min-width: 44px;
  mix-blend-mode: difference;
  padding: 0 10px;
  pointer-events: none;
  top: 0;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.fancybox-toolbar {
  right: 0;
  top: 0;
}

.fancybox-stage {
  direction: ltr;
  overflow: visible;
  transform: translateZ(0);
  z-index: 99994;
}

.fancybox-is-open .fancybox-stage {
  overflow: hidden;
}

.fancybox-slide {
  -webkit-backface-visibility: hidden;
  /* Using without prefix would break IE11 */
  display: none;
  height: 100%;
  left: 0;
  outline: none;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: absolute;
  text-align: center;
  top: 0;
  transition-property: transform, opacity;
  white-space: normal;
  width: 100%;
  z-index: 99994;
}

.fancybox-slide::before {
  content: "";
  display: inline-block;
  font-size: 0;
  height: 100%;
  vertical-align: middle;
  width: 0;
}

.fancybox-is-sliding .fancybox-slide,
.fancybox-slide--previous,
.fancybox-slide--current,
.fancybox-slide--next {
  display: block;
}

.fancybox-slide--image {
  overflow: hidden;
  padding: 44px 0;
}

.fancybox-slide--image::before {
  display: none;
}

.fancybox-slide--html {
  padding: 6px;
}

.fancybox-content {
  background: #fff;
  display: inline-block;
  margin: 0;
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding: 44px;
  position: relative;
  text-align: left;
  vertical-align: middle;
}

.fancybox-slide--image .fancybox-content {
  animation-timing-function: cubic-bezier(0.5, 0, 0.14, 1);
  -webkit-backface-visibility: hidden;
  background: transparent;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  left: 0;
  max-width: none;
  overflow: visible;
  padding: 0;
  position: absolute;
  top: 0;
  -ms-transform-origin: top left;
  transform-origin: top left;
  transition-property: transform, opacity;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 99995;
}

.fancybox-can-zoomOut .fancybox-content {
  cursor: zoom-out;
}

.fancybox-can-zoomIn .fancybox-content {
  cursor: zoom-in;
}

.fancybox-can-swipe .fancybox-content,
.fancybox-can-pan .fancybox-content {
  cursor: -webkit-grab;
  cursor: grab;
}

.fancybox-is-grabbing .fancybox-content {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.fancybox-container [data-selectable=true] {
  cursor: text;
}

.fancybox-image,
.fancybox-spaceball {
  background: transparent;
  border: 0;
  height: 100%;
  left: 0;
  margin: 0;
  max-height: none;
  max-width: none;
  padding: 0;
  position: absolute;
  top: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  width: 100%;
}

.fancybox-spaceball {
  z-index: 1;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--map .fancybox-content,
.fancybox-slide--pdf .fancybox-content,
.fancybox-slide--iframe .fancybox-content {
  height: 100%;
  overflow: visible;
  padding: 0;
  width: 100%;
}

.fancybox-slide--video .fancybox-content {
  background: #000;
}

.fancybox-slide--map .fancybox-content {
  background: #e5e3df;
}

.fancybox-slide--iframe .fancybox-content {
  background: #fff;
}

.fancybox-video,
.fancybox-iframe {
  background: transparent;
  border: 0;
  display: block;
  height: 100%;
  margin: 0;
  overflow: hidden;
  padding: 0;
  width: 100%;
}

/* Fix iOS */
.fancybox-iframe {
  left: 0;
  position: absolute;
  top: 0;
}

.fancybox-error {
  background: #fff;
  cursor: default;
  max-width: 400px;
  padding: 40px;
  width: 100%;
}

.fancybox-error p {
  color: #444;
  font-size: 16px;
  line-height: 20px;
  margin: 0;
  padding: 0;
}

/* Buttons */
.fancybox-button {
  background: rgba(30, 30, 30, 0.6);
  border: 0;
  border-radius: 0;
  box-shadow: none;
  cursor: pointer;
  display: inline-block;
  height: 44px;
  margin: 0;
  padding: 10px;
  position: relative;
  transition: color 0.2s;
  vertical-align: top;
  visibility: inherit;
  width: 44px;
}

.fancybox-button,
.fancybox-button:visited,
.fancybox-button:link {
  color: #ccc;
}

.fancybox-button:hover {
  color: #fff;
}

.fancybox-button:focus {
  outline: none;
}

.fancybox-button.fancybox-focus {
  outline: 1px dotted;
}

.fancybox-button[disabled],
.fancybox-button[disabled]:hover {
  color: #888;
  cursor: default;
  outline: none;
}

/* Fix IE11 */
.fancybox-button div {
  height: 100%;
}

.fancybox-button svg {
  display: block;
  height: 100%;
  overflow: visible;
  position: relative;
  width: 100%;
}

.fancybox-button svg path {
  fill: currentColor;
  stroke-width: 0;
}

.fancybox-button--play svg:nth-child(2),
.fancybox-button--fsenter svg:nth-child(2) {
  display: none;
}

.fancybox-button--pause svg:nth-child(1),
.fancybox-button--fsexit svg:nth-child(1) {
  display: none;
}

.fancybox-progress {
  background: #ff5268;
  height: 2px;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -ms-transform-origin: 0;
  transform-origin: 0;
  transition-property: transform;
  transition-timing-function: linear;
  z-index: 99998;
}

/* Close button on the top right corner of html content */
.fancybox-close-small {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: #ccc;
  cursor: pointer;
  opacity: 0.8;
  padding: 8px;
  position: absolute;
  right: -12px;
  top: -44px;
  z-index: 401;
}

.fancybox-close-small:hover {
  color: #fff;
  opacity: 1;
}

.fancybox-slide--html .fancybox-close-small {
  color: currentColor;
  padding: 10px;
  right: 0;
  top: 0;
}

.fancybox-slide--image.fancybox-is-scaling .fancybox-content {
  overflow: hidden;
}

.fancybox-is-scaling .fancybox-close-small,
.fancybox-is-zoomable.fancybox-can-pan .fancybox-close-small {
  display: none;
}

/* Navigation arrows */
.fancybox-navigation .fancybox-button {
  background-clip: content-box;
  height: 100px;
  opacity: 0;
  position: absolute;
  top: calc(50% - 50px);
  width: 70px;
}

.fancybox-navigation .fancybox-button div {
  padding: 7px;
}

.fancybox-navigation .fancybox-button--arrow_left {
  left: 0;
  left: env(safe-area-inset-left);
  padding: 31px 26px 31px 6px;
}

.fancybox-navigation .fancybox-button--arrow_right {
  padding: 31px 6px 31px 26px;
  right: 0;
  right: env(safe-area-inset-right);
}

/* Caption */
.fancybox-caption {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.15) 65%, rgba(0, 0, 0, 0.075) 75.5%, rgba(0, 0, 0, 0.037) 82.85%, rgba(0, 0, 0, 0.019) 88%, rgba(0, 0, 0, 0) 100%);
  bottom: 0;
  color: #eee;
  font-size: 14px;
  font-weight: 400;
  left: 0;
  line-height: 1.5;
  padding: 75px 44px 25px 44px;
  pointer-events: none;
  right: 0;
  text-align: center;
  z-index: 99996;
}

@supports (padding: 0px) {
  .fancybox-caption {
    padding: 75px max(44px, env(safe-area-inset-right)) max(25px, env(safe-area-inset-bottom)) max(44px, env(safe-area-inset-left));
  }
}
.fancybox-caption--separate {
  margin-top: -50px;
}

.fancybox-caption__body {
  max-height: 50vh;
  overflow: auto;
  pointer-events: all;
}

.fancybox-caption a,
.fancybox-caption a:link,
.fancybox-caption a:visited {
  color: #ccc;
  text-decoration: none;
}

.fancybox-caption a:hover {
  color: #fff;
  text-decoration: underline;
}

/* Loading indicator */
.fancybox-loading {
  animation: fancybox-rotate 1s linear infinite;
  background: transparent;
  border: 4px solid #888;
  border-bottom-color: #fff;
  border-radius: 50%;
  height: 50px;
  left: 50%;
  margin: -25px 0 0 -25px;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  width: 50px;
  z-index: 99999;
}

@keyframes fancybox-rotate {
  100% {
    transform: rotate(360deg);
  }
}
/* Transition effects */
.fancybox-animated {
  transition-timing-function: cubic-bezier(0, 0, 0.25, 1);
}

/* transitionEffect: slide */
.fancybox-fx-slide.fancybox-slide--previous {
  opacity: 0;
  transform: translate3d(-100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--next {
  opacity: 0;
  transform: translate3d(100%, 0, 0);
}

.fancybox-fx-slide.fancybox-slide--current {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

/* transitionEffect: fade */
.fancybox-fx-fade.fancybox-slide--previous,
.fancybox-fx-fade.fancybox-slide--next {
  opacity: 0;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.fancybox-fx-fade.fancybox-slide--current {
  opacity: 1;
}

/* transitionEffect: zoom-in-out */
.fancybox-fx-zoom-in-out.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(1.5, 1.5, 1.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5);
}

.fancybox-fx-zoom-in-out.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1);
}

/* transitionEffect: rotate */
.fancybox-fx-rotate.fancybox-slide--previous {
  opacity: 0;
  -ms-transform: rotate(-360deg);
  transform: rotate(-360deg);
}

.fancybox-fx-rotate.fancybox-slide--next {
  opacity: 0;
  -ms-transform: rotate(360deg);
  transform: rotate(360deg);
}

.fancybox-fx-rotate.fancybox-slide--current {
  opacity: 1;
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
}

/* transitionEffect: circular */
.fancybox-fx-circular.fancybox-slide--previous {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(-100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--next {
  opacity: 0;
  transform: scale3d(0, 0, 0) translate3d(100%, 0, 0);
}

.fancybox-fx-circular.fancybox-slide--current {
  opacity: 1;
  transform: scale3d(1, 1, 1) translate3d(0, 0, 0);
}

/* transitionEffect: tube */
.fancybox-fx-tube.fancybox-slide--previous {
  transform: translate3d(-100%, 0, 0) scale(0.1) skew(-10deg);
}

.fancybox-fx-tube.fancybox-slide--next {
  transform: translate3d(100%, 0, 0) scale(0.1) skew(10deg);
}

.fancybox-fx-tube.fancybox-slide--current {
  transform: translate3d(0, 0, 0) scale(1);
}

/* Styling for Small-Screen Devices */
@media all and (max-height: 576px) {
  .fancybox-slide {
    padding-left: 6px;
    padding-right: 6px;
  }

  .fancybox-slide--image {
    padding: 6px 0;
  }

  .fancybox-close-small {
    right: -6px;
  }

  .fancybox-slide--image .fancybox-close-small {
    background: #4e4e4e;
    color: #f2f4f6;
    height: 36px;
    opacity: 1;
    padding: 6px;
    right: 0;
    top: 0;
    width: 36px;
  }

  .fancybox-caption {
    padding-left: 12px;
    padding-right: 12px;
  }

  @supports (padding: 0px) {
    .fancybox-caption {
      padding-left: max(12px, env(safe-area-inset-left));
      padding-right: max(12px, env(safe-area-inset-right));
    }
  }
}
/* Share */
.fancybox-share {
  background: #f4f4f4;
  border-radius: 3px;
  max-width: 90%;
  padding: 30px;
  text-align: center;
}

.fancybox-share h1 {
  color: #222;
  font-size: 35px;
  font-weight: 600;
  margin: 0 0 20px 0;
}

.fancybox-share p {
  margin: 0;
  padding: 0;
}

.fancybox-share__button {
  border: 0;
  border-radius: 3px;
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  line-height: 40px;
  margin: 0 5px 10px 5px;
  min-width: 130px;
  padding: 0 15px;
  text-decoration: none;
  transition: all 0.2s;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  white-space: nowrap;
}

.fancybox-share__button:visited,
.fancybox-share__button:link {
  color: #fff;
}

.fancybox-share__button:hover {
  text-decoration: none;
}

.fancybox-share__button--fb {
  background: #3b5998;
}

.fancybox-share__button--fb:hover {
  background: #344e86;
}

.fancybox-share__button--pt {
  background: #bd081d;
}

.fancybox-share__button--pt:hover {
  background: #aa0719;
}

.fancybox-share__button--tw {
  background: #1da1f2;
}

.fancybox-share__button--tw:hover {
  background: #0d95e8;
}

.fancybox-share__button svg {
  height: 25px;
  margin-right: 7px;
  position: relative;
  top: -1px;
  vertical-align: middle;
  width: 25px;
}

.fancybox-share__button svg path {
  fill: #fff;
}

.fancybox-share__input {
  background: transparent;
  border: 0;
  border-bottom: 1px solid #d7d7d7;
  border-radius: 0;
  color: #5d5b5b;
  font-size: 14px;
  margin: 10px 0 0 0;
  outline: none;
  padding: 10px 15px;
  width: 100%;
}

/* Thumbs */
.fancybox-thumbs {
  background: #ddd;
  bottom: 0;
  display: none;
  margin: 0;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  padding: 2px 2px 4px 2px;
  position: absolute;
  right: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  top: 0;
  width: 212px;
  z-index: 99995;
}

.fancybox-thumbs-x {
  overflow-x: auto;
  overflow-y: hidden;
}

.fancybox-show-thumbs .fancybox-thumbs {
  display: block;
}

.fancybox-show-thumbs .fancybox-inner {
  right: 212px;
}

.fancybox-thumbs__list {
  font-size: 0;
  height: 100%;
  list-style: none;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  position: absolute;
  position: relative;
  white-space: nowrap;
  width: 100%;
}

.fancybox-thumbs-x .fancybox-thumbs__list {
  overflow: hidden;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar {
  width: 7px;
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-track {
  background: #fff;
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
}

.fancybox-thumbs-y .fancybox-thumbs__list::-webkit-scrollbar-thumb {
  background: #2a2a2a;
  border-radius: 10px;
}

.fancybox-thumbs__list a {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-color: rgba(0, 0, 0, 0.1);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  cursor: pointer;
  float: left;
  height: 75px;
  margin: 2px;
  max-height: calc(100% - 8px);
  max-width: calc(50% - 4px);
  outline: none;
  overflow: hidden;
  padding: 0;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  width: 100px;
}

.fancybox-thumbs__list a::before {
  border: 6px solid #ff5268;
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  z-index: 99991;
}

.fancybox-thumbs__list a:focus::before {
  opacity: 0.5;
}

.fancybox-thumbs__list a.fancybox-thumbs-active::before {
  opacity: 1;
}

/* Styling for Small-Screen Devices */
@media all and (max-width: 576px) {
  .fancybox-thumbs {
    width: 110px;
  }

  .fancybox-show-thumbs .fancybox-inner {
    right: 110px;
  }

  .fancybox-thumbs__list a {
    max-width: calc(100% - 10px);
  }
}
.grey {
  color: #747474;
}

.nowrap {
  white-space: nowrap;
}

.date-label {
  background: url(/export/images/clock.png) no-repeat 2px;
  color: #747474;
  padding-left: 20px;
  font-size: 0.9em;
}

.clearfix::after, .slider-images::after, .example-description::after, .expertise-page .links .content-wrapper .content-wrapper2 .da::after, .expertise-page .faq::after, .expertise-page .cases2::after, .expertise-page .experts::after, .expertise-page .cost-block .content-wrapper .content-wrapper2 .row .small::after, .expertise-page .cost-block::after, .article-description::after, .labs::after, .expert-description::after, .page .question-form .fields::after, .page .question-form::after, .page .illustration.bump::after, .page .content::after, .page h1::after, .main-header .menu::after, .main-header .top::after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.action-link, .main-header .top .contacts .regions a {
  border-bottom-style: dotted !important;
  cursor: pointer;
}
.action-link:hover, .main-header .top .contacts .regions a:hover, .action-link:active, .main-header .top .contacts .regions a:active, .action-link:visited, .main-header .top .contacts .regions a:visited, .action-link:visited:hover, .action-link:visited:active {
  border-bottom-style: dotted !important;
}

.invisible {
  display: none;
}

.external-link {
  display: inline-block;
  background: url(/export/images/external-link.png);
  width: 16px;
  height: 16px;
  vertical-align: text-bottom;
}

.header-annotation {
  color: #747474;
  margin-bottom: 2em;
}
h1 + .header-annotation, .h1 + .header-annotation {
  margin-top: -1em;
}

.formatted-text i, .expertise-page .other i, .page .content i {
  font-style: italic;
}
.formatted-text b, .expertise-page .other b, .page .content b {
  font-weight: 600;
}
.formatted-text p, .expertise-page .other p, .page .content p {
  padding-bottom: 1em;
}
.formatted-text ul, .expertise-page .other ul, .page .content ul {
  list-style: circle outside;
  overflow: hidden;
  padding-bottom: 1em;
}
.formatted-text ol, .expertise-page .other ol, .page .content ol {
  list-style: decimal outside;
  overflow: hidden;
  padding-bottom: 1em;
}
.formatted-text li, .expertise-page .other li, .page .content li {
  display: list-item;
  margin-left: 2em;
  /* Убираем отступы у всех вложенных ul */
  /* Добавляем отступ только если есть другие элементы после ul */
}
.formatted-text li > ul, .expertise-page .other li > ul, .page .content li > ul, .formatted-text li > ol, .expertise-page .other li > ol, .page .content li > ol {
  padding-bottom: 0;
}
.formatted-text li > ul:not(:last-child), .expertise-page .other li > ul:not(:last-child), .page .content li > ul:not(:last-child), .formatted-text li > ol:not(:last-child), .expertise-page .other li > ol:not(:last-child), .page .content li > ol:not(:last-child) {
  padding-bottom: 1em;
}
.formatted-text h2, .expertise-page .other h2, .page .content h2, .formatted-text .h2, .expertise-page .other .h2, .page .content .h2 {
  font-size: 1.5714285714em;
  font-weight: 600;
  padding: 0.5em 0;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .formatted-text h2, .expertise-page .other h2, .page .content h2, .formatted-text .h2, .expertise-page .other .h2, .page .content .h2 {
    font-size: 1.2857142857em;
  }
}
.formatted-text h3, .expertise-page .other h3, .page .content h3, .formatted-text .h3, .expertise-page .other .h3, .page .content .h3 {
  font-size: 1.5714285714em;
  font-weight: 600;
  padding: 0.5em 0;
}
@media (max-width: 767px) {
  .formatted-text h3, .expertise-page .other h3, .page .content h3, .formatted-text .h3, .expertise-page .other .h3, .page .content .h3 {
    font-size: 1.2857142857em;
  }
}
.formatted-text h4, .expertise-page .other h4, .page .content h4, .formatted-text .h4, .expertise-page .other .h4, .page .content .h4 {
  font-weight: 600;
  padding: 0.5em 0;
  text-transform: uppercase;
}
.td_checkbox, .td-checkbox {
  overflow: hidden;
}
.td_checkbox input[type=checkbox], .td-checkbox input[type=checkbox] {
  float: left;
  margin-top: 0.2857142857em;
  width: 1em;
}
.old-ie .td_checkbox input[type=checkbox], .old-ie .td-checkbox input[type=checkbox] {
  font-size: 18px;
  margin-top: 0;
}
.td_checkbox > span, .td-checkbox > span {
  float: left;
  margin-top: 3px;
}

input[type=checkbox], input[type=radio] {
  vertical-align: middle;
  position: relative;
  bottom: 1px;
}

input[type=radio] {
  bottom: 2px;
}

.feedbackPanel {
  display: block;
  margin: 0 0 10px 0;
  padding: 0;
}
.feedbackPanel li.feedbackPanelERROR {
  display: block;
  background-color: #fcf0f0;
  border: 1px solid #e2d0d0;
  margin: 0;
  padding: 1em;
}
.feedbackPanel span.feedbackPanelERROR {
  display: block;
}
.feedbackPanel li.feedbackPanelWARNING {
  display: block;
  background-color: #fcfbe1;
  border: 1px solid #e2dcb7;
  margin: 0;
  padding: 1em;
}
.feedbackPanel span.feedbackPanelWARNING {
  display: block;
}
.feedbackPanel li.feedbackPanelINFO {
  display: block;
  background-color: #f0fcf0;
  border: 1px solid #d0e2d0;
  margin: 0;
  padding: 1em;
}
.feedbackPanel span.feedbackPanelINFO {
  display: block;
}

.button-link, .page .question-form .submit-block a {
  cursor: pointer;
  text-decoration: none;
  color: #0161ce;
  border-bottom: 1px solid rgba(1, 97, 206, 0.4);
  text-transform: uppercase;
  display: inline-block;
  border: 3px solid;
  color: #0161ce;
  font-size: 112%;
  font-weight: 600;
  padding: 0 1.5em;
  line-height: 1.8;
  text-align: center;
  background: transparent;
  font-family: inherit;
}
.button-link:hover, .page .question-form .submit-block a:hover, .button-link:visited:hover {
  color: #aa002d;
  border-bottom: 1px solid rgba(170, 0, 45, 0.4);
}
.button-link:active, .page .question-form .submit-block a:active, .button-link:visited:active {
  color: rgba(170, 0, 45, 0.2);
  border-bottom: 1px solid rgba(170, 0, 45, 0);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.button-link:visited, .page .question-form .submit-block a:visited {
  color: #0161ce;
  border-bottom: 1px solid rgba(1, 97, 206, 0.4);
}
@media (max-width: 767px) {
  .button-link, .page .question-form .submit-block a {
    padding: 0 0.5em;
  }
}
.button-link:active, .page .question-form .submit-block a:active {
  border: 3px solid rgba(170, 0, 45, 0.2);
}
.button-link:hover, .page .question-form .submit-block a:hover {
  border: 3px solid #aa002d;
}

.button-link-white {
  cursor: pointer;
  text-decoration: none;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  display: inline-block;
  border: 3px solid;
  color: #fff;
  font-size: 112%;
  font-weight: 600;
  padding: 0 1.5em;
  line-height: 1.8;
  text-align: center;
}
.button-link-white:hover, .button-link-white:visited:hover {
  color: #aa002d;
  border-bottom: 1px solid rgba(170, 0, 45, 0.4);
}
.button-link-white:active, .button-link-white:visited:active {
  color: rgba(170, 0, 45, 0.2);
  border-bottom: 1px solid rgba(170, 0, 45, 0);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.button-link-white:visited {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
@media (max-width: 767px) {
  .button-link-white {
    padding: 0 0.5em;
  }
}
.button-link-white:active {
  border: 3px solid rgba(170, 0, 45, 0.2);
}
.button-link-white:hover {
  border: 3px solid #aa002d;
}

.pagination {
  text-align: center;
  padding: 1em 0;
  margin: 0;
}
@media (max-width: 767px) {
  .pagination {
    font-size: 0.8em;
  }
}
.pagination ul {
  display: inline-block;
}
.pagination ul li {
  display: inline-block;
  height: 2.5714285714em;
  width: 2.5714285714em;
  float: left;
  margin: 0 0.2857142857em;
  padding: 0.5714285714em 0 0 0;
  text-align: center;
  font-weight: 600;
  border-radius: 50%;
}
@media (max-width: 767px) {
  .pagination ul li {
    border: none;
  }
}
.pagination ul li.prev, .pagination ul li.next, .pagination ul li.dots {
  width: auto;
  border: none;
  font-family: monospace;
  margin: 0;
  padding-top: 0;
  font-weight: normal;
}
.pagination ul li.prev, .pagination ul li.next {
  font-size: 1.7em;
}
.pagination ul li.dots {
  margin-top: 0.3571428571em;
}
.pagination ul li a {
  cursor: pointer;
  text-decoration: none;
  color: #0161ce;
  border-bottom: 1px solid rgba(1, 97, 206, 0.4);
  border-bottom: none !important;
}
.pagination ul li a:hover, .pagination ul li a:visited:hover {
  color: #0161ce;
  border-bottom: 1px solid rgba(1, 97, 206, 0.4);
}
.pagination ul li a:active, .pagination ul li a:visited:active {
  color: #0161ce;
  border-bottom: 1px solid rgba(1, 97, 206, 0.4);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.pagination ul li a:visited {
  color: #0161ce;
  border-bottom: 1px solid rgba(1, 97, 206, 0.4);
}
.pagination ul li.selected {
  background: #0161ce;
}
.pagination ul li.selected a {
  color: #fff !important;
}

.bottom-question-button {
  margin-top: 2em;
  border-top: 2.5px dotted rgba(1, 97, 206, 0.3);
  padding-top: 7em;
  text-align: center;
}
.bottom-question-button h2, .bottom-question-button .h2 {
  font-size: 2.5714285714em;
  text-transform: uppercase;
}
.bottom-question-button h3, .bottom-question-button .h3 {
  font-size: 1.4285714286em;
  text-transform: uppercase;
}
.bottom-question-button .button-block {
  padding: 5em 0;
}

.pagination__arrow {
  display: block;
  width: 1em;
  height: 1em;
}

body.site-header-menu-open {
  overflow: hidden;
}

.site-header {
  position: relative;
  z-index: 900;
  width: 100%;
  color: #173047;
  background: #fff;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
}
.site-header *,
.site-header *::before,
.site-header *::after {
  box-sizing: border-box;
}

.site-header__container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-right: 28px;
  padding-left: 28px;
}

.site-header__brand-row {
  position: relative;
  z-index: 2;
  border-bottom: 1px solid #dce5ea;
  background: radial-gradient(circle at 18% -80%, rgba(46, 106, 154, 0.09), transparent 42%), #fff;
}

.site-header__brand-container {
  display: grid;
  min-height: 96px;
  grid-template-columns: auto minmax(250px, 1fr) auto auto;
  align-items: center;
  gap: 28px;
}

.site-header__brand {
  width: 194px;
}

.site-header__brand,
.site-header__brand:hover,
.site-header__brand:active {
  display: block;
  border: 0;
  transform: none;
}

.site-header__brand picture,
.site-header__brand img {
  display: block;
  width: 100%;
  height: auto;
}

.site-header__identity {
  display: flex;
  min-width: 0;
  max-width: 430px;
  flex-direction: column;
  gap: 5px;
  padding-left: 25px;
  border-left: 1px solid #dce5ea;
}

.site-header__legal-form {
  color: #687d89;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.095em;
  line-height: 1.35;
  text-transform: uppercase;
}

.site-header__descriptor {
  max-width: 390px;
  color: #173047;
  font-family: "PT Serif", Georgia, "Times New Roman", serif;
  font-size: 15px;
  line-height: 1.35;
}

.site-header__contacts {
  display: grid;
  grid-template-columns: auto;
  justify-items: start;
  gap: 1px;
}

.site-header__phone {
  border: 0;
  color: #102c4b;
  font-size: 21px;
  font-weight: 600;
  letter-spacing: -0.015em;
  line-height: 1.15;
  text-decoration: none;
  white-space: nowrap;
}

.site-header__phone:hover {
  border: 0;
  color: #0161ce;
}

.site-header__phone-note {
  color: #7a8b94;
  font-size: 11px;
  line-height: 1.35;
}

.site-header__callback {
  appearance: none;
  margin: 4px 0 0;
  padding: 0;
  border: 0;
  border-bottom: 1px solid rgba(1, 97, 206, 0.38);
  color: #0161ce;
  background: transparent;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
}

.site-header__callback:hover {
  border-bottom-color: #0161ce;
  color: #014ea5;
}

.site-header__primary-action,
.site-header__nav-action {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 10px 19px;
  border: 1px solid #fd7713;
  border-radius: var(--se-radius-s);
  color: #fff;
  background: #fd8327;
  box-shadow: 0 8px 22px rgba(190, 80, 24, 0.16);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.site-header__primary-action:hover,
.site-header__nav-action:hover {
  border-color: #f96c02;
  color: #fff;
  background: #fd8f3b;
  box-shadow: 0 10px 26px rgba(190, 80, 24, 0.23);
  transform: none;
}

.site-header__mobile-phone,
.site-header__menu-toggle {
  display: none;
}

.site-header__nav-spacer {
  height: 0;
}

.site-header__nav-row {
  position: relative;
  z-index: 1;
  width: 100%;
  border-bottom: 1px solid rgba(255, 255, 255, 0.11);
  background: radial-gradient(circle at 75% -80%, rgba(74, 137, 197, 0.22), transparent 38%), linear-gradient(110deg, #142f55, #173c6e 58%, #16365f);
  box-shadow: 0 8px 24px rgba(10, 35, 65, 0.08);
}

.site-header__nav-row.is-fixed {
  position: fixed;
  z-index: 900;
  top: 0;
  right: 0;
  left: 0;
  box-shadow: 0 12px 32px rgba(7, 25, 47, 0.2);
}

.site-header__nav-container {
  display: flex;
  min-height: 62px;
  align-items: stretch;
}

.site-header__drawer-head,
.site-header__drawer-contact,
.site-header__compact-brand {
  display: none;
}

.site-header__nav-row.is-fixed .site-header__compact-brand {
  display: flex;
  min-width: 154px;
  align-items: center;
  margin-right: 10px;
  border: 0;
  color: #fff;
  font-family: "PT Serif", Georgia, "Times New Roman", serif;
  font-size: 15px;
  line-height: 1.15;
  text-decoration: none;
  white-space: nowrap;
}

.site-header__nav-row.is-fixed .site-header__compact-brand span {
  margin-right: 4px;
  color: rgba(255, 255, 255, 0.7);
}

.site-header__menu,
.site-header__menu ul,
.site-header__submenu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-header__menu {
  display: flex;
  min-width: 0;
  flex: 1;
  align-items: stretch;
  justify-content: center;
}

.site-header__nav-item {
  position: relative;
  display: flex;
  min-width: 0;
  align-items: stretch;
}

.site-header__nav-item > a,
.site-header__nav-trigger {
  appearance: none;
  position: relative;
  display: inline-flex;
  min-height: 62px;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0 17px;
  border: 0;
  color: rgba(255, 255, 255, 0.9);
  background: transparent;
  cursor: pointer;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.18s ease, background-color 0.18s ease;
}

.site-header__nav-item > a:hover,
.site-header__nav-item > a:active,
.site-header__nav-trigger:hover,
.site-header__nav-trigger:active,
.site-header__nav-trigger[aria-expanded=true] {
  border: 0;
  color: #fff;
  background: rgba(255, 255, 255, 0.09);
  transform: none;
}

.site-header__nav-item.is-current > a::after,
.site-header__nav-item.is-current > .site-header__nav-trigger::after {
  position: absolute;
  right: 17px;
  bottom: 0;
  left: 17px;
  height: 3px;
  border-radius: 2px 2px 0 0;
  background: #fd8327;
  content: "";
}

.site-header__nav-trigger > span {
  width: 7px;
  height: 7px;
  margin: -4px 0 0 10px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg);
  transition: margin 0.18s ease, transform 0.18s ease;
}

.site-header__nav-trigger[aria-expanded=true] > span {
  margin-top: 3px;
  transform: rotate(225deg);
}

.site-header__nav-action {
  display: none;
  min-height: 40px;
  align-self: center;
  margin-left: 13px;
  padding: 9px 16px;
  font-size: 13px;
}

.site-header__nav-row.is-fixed .site-header__nav-action {
  display: inline-flex;
}

.site-header__submenu {
  position: absolute;
  z-index: 20;
  top: calc(100% + 1px);
  left: 0;
  overflow: hidden;
  min-width: 300px;
  border: 1px solid #d7e2e8;
  border-top: 3px solid #fd8327;
  border-radius: 0 0 var(--se-radius-m) var(--se-radius-m);
  opacity: 0;
  visibility: hidden;
  background: #fff;
  box-shadow: 0 24px 54px rgba(13, 39, 63, 0.2);
  color: #173047;
  pointer-events: none;
  transform: translateY(-7px);
  transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;
}

.site-header__nav-item.is-open > .site-header__submenu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.site-header__submenu--expertises {
  width: min(820px, 100vw - 32px);
}

.site-header__submenu-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 22px 24px 18px;
  border-bottom: 1px solid #e5ecef;
  background: #f6f9fa;
}

.site-header__submenu-heading > div {
  display: grid;
  gap: 3px;
}

.site-header__submenu-heading span {
  color: #81919a;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.site-header__submenu-heading strong {
  color: #173047;
  font-family: "PT Serif", Georgia, "Times New Roman", serif;
  font-size: 19px;
  font-weight: normal;
}

.site-header__submenu-heading > a {
  border-bottom: 1px solid rgba(1, 97, 206, 0.35);
  color: #0161ce;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
}

.site-header__submenu-heading > a:hover,
.site-header__submenu-heading > a:active {
  border-bottom-color: rgba(253, 131, 39, 0.55);
  color: #fd8327;
  transform: none;
}

.site-header__expertise-links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 22px;
  padding: 16px 24px 21px !important;
}

.site-header__expertise-links li {
  min-width: 0;
  border-bottom: 1px solid #edf1f3;
}

.site-header__expertise-links a, .site-header__submenu--organization ul a, .site-header__submenu--tools ul a {
  display: flex;
  min-height: 43px;
  align-items: center;
  border: 0;
  color: #294454;
  font-size: 13px;
  line-height: 1.32;
  text-decoration: none;
  transition: color 0.16s ease, transform 0.16s ease;
}

.site-header__expertise-links a:hover, .site-header__submenu--organization ul a:hover, .site-header__submenu--tools ul a:hover {
  color: #0161ce;
  transform: translateX(3px);
}

.site-header__submenu--organization {
  width: 310px;
}

.site-header__submenu--organization ul,
.site-header__submenu--tools ul {
  padding: 10px 0 4px;
}

.site-header__submenu--organization ul {
  padding: 10px 21px 14px;
}

.site-header__submenu--tools {
  width: min(560px, 100vw - 32px);
}

.site-header__tools-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 26px;
  padding: 16px 24px 18px;
}

.site-header__tools-column-title {
  display: block;
  margin-bottom: 4px;
  color: #81919a;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.site-header__submenu--organization li + li,
.site-header__submenu--tools li + li {
  border-top: 1px solid #edf1f3;
}

.site-header a:focus-visible,
.site-header button:focus-visible {
  position: relative;
  z-index: 2;
  outline: 3px solid #fea664;
  outline-offset: 3px;
}

@media (max-width: 1240px) and (min-width: 1101px) {
  .site-header__container {
    padding-right: 20px;
    padding-left: 20px;
  }

  .site-header__brand-container {
    gap: 20px;
  }

  .site-header__brand {
    width: 180px;
  }

  .site-header__nav-item > a,
.site-header__nav-trigger {
    padding-right: 12px;
    padding-left: 12px;
    font-size: 13px;
  }

  .site-header__nav-row.is-fixed .site-header__compact-brand {
    min-width: 140px;
    font-size: 14px;
  }
}
@media (max-width: 1100px) {
  .site-header {
    position: sticky;
    top: 0;
  }

  .site-header__container {
    padding-right: 18px;
    padding-left: 18px;
  }

  .site-header__brand-container {
    min-height: 72px;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 14px;
  }

  .site-header__brand {
    width: 174px;
  }

  .site-header__identity,
.site-header__contacts,
.site-header__primary-action {
    display: none;
  }

  .site-header__mobile-phone {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    border: 0;
    color: #173554;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
  }

  .site-header__mobile-phone-short {
    display: none;
  }

  .site-header__menu-toggle {
    appearance: none;
    display: inline-flex;
    width: 46px;
    height: 46px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    margin: 0;
    padding: 0;
    border: 1px solid #cfdae0;
    border-radius: var(--se-radius-s);
    background: #f7f9fa;
    cursor: pointer;
  }

  .site-header__menu-toggle span {
    display: block;
    width: 21px;
    height: 2px;
    border-radius: 2px;
    background: #173554;
  }

  .site-header__nav-spacer {
    display: none;
  }

  .site-header__nav-row,
.site-header__nav-row.is-fixed {
    position: fixed;
    z-index: 950;
    display: block;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    border: 0;
    opacity: 0;
    visibility: hidden;
    background: rgba(5, 18, 32, 0.68);
    box-shadow: none;
    pointer-events: none;
    transition: opacity 0.2s ease, visibility 0.2s ease;
  }

  body.site-header-menu-open .site-header__nav-row {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .site-header__nav-container {
    display: block;
    overflow-y: auto;
    width: 100%;
    height: 100%;
    min-height: 100%;
    margin: 0 0 0 auto;
    padding: 0 22px 30px;
    background: radial-gradient(circle at 100% 0, rgba(67, 128, 184, 0.23), transparent 35%), linear-gradient(160deg, #102b4c, #0c2340 72%);
    box-shadow: -22px 0 58px rgba(4, 15, 28, 0.28);
    transform: translateX(100%);
    transition: transform 0.22s ease;
  }

  body.site-header-menu-open .site-header__nav-container {
    transform: translateX(0);
  }

  .site-header__nav-container > * {
    max-width: 460px;
    margin-right: 0;
    margin-left: auto;
  }

  .site-header__drawer-head {
    position: sticky;
    z-index: 4;
    display: flex;
    min-height: 72px;
    top: 0;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid rgba(255, 255, 255, 0.13);
    background: rgba(16, 43, 76, 0.96);
  }

  .site-header__drawer-brand {
    color: #fff;
    font-family: "PT Serif", Georgia, "Times New Roman", serif;
    font-size: 20px;
  }

  .site-header__drawer-close {
    appearance: none;
    display: inline-flex;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 50%;
    color: #fff;
    background: rgba(255, 255, 255, 0.07);
    cursor: pointer;
    font-size: 30px;
    font-weight: 400;
    line-height: 1;
  }

  .site-header__compact-brand {
    display: none !important;
  }

  .site-header__menu {
    display: block;
    padding: 10px 0 6px;
  }

  .site-header__nav-item {
    display: block;
    border-bottom: 1px solid rgba(255, 255, 255, 0.11);
  }

  .site-header__nav-item > a,
.site-header__nav-trigger {
    width: 100%;
    min-height: 58px;
    justify-content: space-between;
    padding: 12px 2px;
    color: rgba(255, 255, 255, 0.92);
    background: transparent;
    font-size: 17px;
    text-align: left;
  }

  .site-header__nav-item > a:hover,
.site-header__nav-trigger:hover,
.site-header__nav-trigger[aria-expanded=true] {
    background: transparent;
  }

  .site-header__nav-item.is-current > a::after,
.site-header__nav-item.is-current > .site-header__nav-trigger::after {
    right: auto;
    bottom: 14px;
    left: -10px;
    width: 3px;
    height: 30px;
    border-radius: 0 2px 2px 0;
  }

  .site-header__submenu {
    position: static;
    display: none;
    overflow: visible;
    width: 100%;
    min-width: 0;
    border: 0;
    border-radius: var(--se-radius-s);
    opacity: 1;
    visibility: visible;
    background: rgba(255, 255, 255, 0.07);
    box-shadow: none;
    color: #fff;
    pointer-events: auto;
    transform: none;
    transition: none;
  }

  .site-header__nav-item.is-open > .site-header__submenu {
    display: block;
  }

  .site-header__submenu-heading {
    display: block;
    padding: 17px 17px 12px;
    border-bottom-color: rgba(255, 255, 255, 0.11);
    background: transparent;
  }

  .site-header__submenu-heading > div {
    display: none;
  }

  .site-header__submenu-heading > a {
    display: inline-flex;
    min-height: 36px;
    align-items: center;
    border: 0;
    color: #fff;
    font-size: 14px;
  }

  .site-header__expertise-links {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    padding: 0 17px 14px !important;
  }

  .site-header__expertise-links li,
.site-header__submenu--organization li + li,
.site-header__submenu--tools li + li {
    border-color: rgba(255, 255, 255, 0.1);
  }

  .site-header__expertise-links a, .site-header__submenu--organization ul a, .site-header__submenu--tools ul a {
    min-height: 46px;
    border: 0;
    color: rgba(255, 255, 255, 0.82);
    font-size: 14px;
  }

  .site-header__expertise-links a:hover, .site-header__submenu--organization ul a:hover, .site-header__submenu--tools ul a:hover {
    color: #fff;
    transform: none;
  }

  .site-header__submenu--organization ul,
.site-header__submenu--tools ul {
    padding: 7px 0 4px;
  }

  .site-header__submenu--organization ul {
    padding: 7px 17px 11px;
  }

  .site-header__submenu--tools {
    width: 100%;
  }

  .site-header__tools-columns {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
    padding: 4px 17px 12px;
  }

  .site-header__tools-column + .site-header__tools-column {
    margin-top: 16px;
  }

  .site-header__tools-column-title {
    color: rgba(255, 255, 255, 0.55);
  }

  .site-header__nav-action {
    display: flex;
    width: 100%;
    min-height: 50px;
    margin: 20px 0 0 auto;
    font-size: 15px;
  }

  .site-header__drawer-contact {
    display: grid;
    gap: 2px;
    margin-top: 24px;
    padding-top: 22px;
    border-top: 1px solid rgba(255, 255, 255, 0.13);
  }

  .site-header__drawer-contact a {
    border: 0;
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    text-decoration: none;
  }

  .site-header__drawer-contact span {
    color: rgba(255, 255, 255, 0.57);
    font-size: 12px;
  }
}
@media (max-width: 620px) {
  .site-header__container {
    padding-right: 14px;
    padding-left: 14px;
  }

  .site-header__brand-container {
    gap: 10px;
  }

  .site-header__brand {
    width: 154px;
  }

  .site-header__mobile-phone {
    font-size: 14px;
  }
}
@media (max-width: 430px) {
  .site-header__container {
    padding-right: 10px;
    padding-left: 10px;
  }

  .site-header__brand-container {
    gap: 7px;
  }

  .site-header__brand {
    width: clamp(108px, 35vw, 138px);
  }

  .site-header__mobile-phone {
    font-size: clamp(12.5px, 3.5vw, 14px);
  }

  .site-header__mobile-phone-label {
    display: inline;
  }

  .site-header__mobile-phone-short {
    display: none;
  }

  .site-header__menu-toggle {
    width: 44px;
    height: 44px;
  }

  .site-header__nav-container {
    padding-right: 17px;
    padding-left: 17px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .site-header *,
.site-header *::before,
.site-header *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
.main-header {
  text-align: center;
}
.main-header .top {
  background: #fff;
  text-align: center;
  white-space: nowrap;
  margin: 0.5em auto;
  max-width: 1200px;
  position: relative;
  overflow: hidden;
}
.main-header .top .logo {
  float: left;
  max-width: 25%;
}
@media (max-width: 767px) {
  .main-header .top .logo {
    max-width: 50%;
  }
}
.main-header .top .logo img {
  float: right;
}
@media (max-width: 767px) {
  .main-header .top .logo img {
    max-height: 40px;
    margin-top: 5px;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .main-header .top .logo img {
    max-height: 70px;
  }
}
@media (min-width: 1024px) {
  .main-header .top .logo img {
    max-height: 90px;
  }
}
.old-ie .main-header .top .logo img {
  max-height: 90px;
}
.main-header .top .title {
  float: left;
  width: 50%;
  font-style: italic;
  color: #0161ce;
  text-align: left;
  font-family: "PT Serif", Georgia, "Times New Roman", serif;
  padding: 1em;
}
@media (max-width: 767px) {
  .main-header .top .title {
    display: none;
  }
}
.main-header .top .title.phone {
  display: none;
  font-size: 0.8em;
}
@media (max-width: 767px) {
  .main-header .top .title.phone {
    display: block;
  }
}
.main-header .top .contacts {
  float: right;
  width: 25%;
  text-align: left;
}
@media (max-width: 767px) {
  .main-header .top .contacts {
    display: none;
  }
}
.main-header .top .contacts .phone {
  font-size: 140%;
}
.main-header .top .contacts .phone a {
  text-decoration: none;
  border: none;
  color: #000;
}
.main-header .top .contacts .phone a:hover {
  border: none;
}
.main-header .top .contacts .phone a:active {
  border: none;
}
.main-header .top .contacts .phone span {
  font-weight: 600;
}
.main-header .top .contacts .regions a {
  font-style: italic;
}
.main-header .menu {
  box-sizing: content-box;
  background: #1e3560;
  color: #fff;
  display: block;
  text-align: center;
  border-top: 2px solid #d7d7d7;
  height: 4.4em;
}
.main-header .menu .centered {
  display: inline-block;
  position: relative;
}
.main-header .menu .centered .item-last {
  width: 1px;
  float: left;
  height: 1.4em;
  margin-top: 1.5em;
  background: #fff;
  background: rgba(255, 255, 255, 0.5);
}
@media (max-width: 767px) {
  .main-header .menu .centered .item-last {
    display: none;
  }
}
.old-ie .main-header .menu .centered .item-last {
  display: none;
}
.main-header .menu .centered .item-phone {
  display: inline-block;
  float: left;
  position: relative;
  overflow: hidden;
  padding: 0.5em 0.5em 0 0;
  font-size: 1.8em;
}
@media (min-width: 1024px) {
  .main-header .menu .centered .item-phone {
    display: none;
  }
}
.old-ie .main-header .menu .centered .item-phone {
  display: none;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .main-header .menu .centered .item-phone {
    display: none;
  }
}
.main-header .menu .centered .item-phone a {
  border: 0;
  color: inherit;
  text-decoration: none;
}
.main-header .menu .centered .item-button {
  float: left;
  padding: 0;
  position: relative;
}
.old-ie .main-header .menu .centered .item-button {
  display: none;
}
@media (min-width: 1024px) {
  .main-header .menu .centered .item-button {
    display: none;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .main-header .menu .centered .item-button {
    display: none;
  }
}
.main-header .menu .centered .item-button > .js-menu-button {
  appearance: none;
  display: inline-block;
  width: 76px;
  height: 4.4em;
  margin: 0;
  padding: 0;
  border: 0;
  background: url(/export/images/menu.png) no-repeat 50% 50%;
  cursor: pointer;
}
.main-header .menu .centered .item-button > .js-menu-button:focus-visible {
  outline: 3px solid #fea664;
  outline-offset: -5px;
}
.main-header .menu .centered h3, .main-header .menu .centered .h3 {
  font-size: 0.8em;
  padding: 1.5em;
  text-transform: uppercase;
  text-align: center;
  color: #fff;
}
.main-header .menu .centered > .item {
  display: inline-block;
  float: left;
  padding: 1.5em 2.25em;
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  .main-header .menu .centered > .item {
    display: none;
  }
}
.main-header .menu .centered > .item > .title {
  text-transform: uppercase;
  font-weight: 600;
  color: #fff;
}
.main-header .menu .centered > .item > .title > a {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  border: none;
}
.main-header .menu .centered > .item::after {
  content: "";
  display: inline-block;
  height: 1.4em;
  width: 1px;
  background: #fff;
  background: rgba(255, 255, 255, 0.5);
  position: absolute;
  top: 1.5em;
  left: 0;
}
.main-header .menu .centered > .item > a {
  text-decoration: none;
}
.main-header .menu .centered > .item:hover {
  background: #0f4b97;
  overflow: visible;
}
.main-header .menu .centered > .item .items {
  text-align: left;
  position: absolute;
  top: 4.4em;
  left: 0;
  background: #0161ce;
  background: rgba(1, 97, 206, 0.95);
  border-bottom-color: #fff;
  border-bottom: solid rgba(255, 255, 255, 0.9) 3px;
  min-width: 250px;
  padding: 1em 2em;
  line-height: 1.5;
  z-index: 1000;
}
.main-header .menu .centered > .item .items.expertises {
  left: -100px;
  width: 600px;
}
.main-header .menu .centered > .item .items a {
  cursor: pointer;
  text-decoration: none;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  white-space: nowrap;
}
.main-header .menu .centered > .item .items a:hover, .main-header .menu .centered > .item .items a:visited:hover {
  color: #d7d7d7;
  border-bottom: 1px solid rgba(215, 215, 215, 0.4);
}
.main-header .menu .centered > .item .items a:active, .main-header .menu .centered > .item .items a:visited:active {
  color: rgba(255, 255, 255, 0.2);
  border-bottom: 1px solid rgba(255, 255, 255, 0);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.main-header .menu .centered > .item .items a:visited {
  color: #bebebe;
  border-bottom: 1px solid rgba(190, 190, 190, 0.4);
}
.main-header .menu .centered > .item .items .item {
  line-height: 1.5;
  padding: 0.3em 0;
}
.main-header .menu .centered > .item .items .item.double {
  width: 50%;
  display: inline-block;
}
.main-header .menu .centered > .item .items .item.double:nth-child(even) {
  border-left-color: #fff;
  border-left: solid rgba(255, 255, 255, 0.2) 1px;
  padding-left: 1.5em;
}

.main-footer {
  color: #fff;
  position: relative;
  overflow: hidden;
  text-align: left;
  border-top: 4px solid #0161ce;
  background: radial-gradient(circle at 82% -25%, rgba(70, 133, 207, 0.24) 0, rgba(70, 133, 207, 0) 42%), linear-gradient(135deg, #102441 0%, #1e3560 58%, #142b4c 100%);
}
.main-footer::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 1px;
  background: rgba(255, 255, 255, 0.16);
}
.main-footer a {
  color: rgba(255, 255, 255, 0.86);
  border-bottom: 1px solid rgba(255, 255, 255, 0.26);
  transition: color 0.18s ease, border-color 0.18s ease, background-color 0.18s ease, transform 0.18s ease;
}
.main-footer a:hover {
  color: #fff;
  border-bottom-color: rgba(255, 255, 255, 0.8);
}
.main-footer a:focus-visible {
  outline: 2px solid #fea664;
  outline-offset: 4px;
}
.main-footer__inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 64px 42px 28px;
  position: relative;
  z-index: 1;
}
.main-footer__primary {
  display: grid;
  grid-template-columns: minmax(200px, 0.95fr) minmax(390px, 1.7fr) minmax(205px, 0.85fr);
  gap: 36px;
  align-items: start;
}
.main-footer__identity, .main-footer__contacts {
  min-width: 0;
}
.main-footer__brand {
  display: inline-block;
  border: 0 !important;
}
.main-footer__brand-type {
  display: block;
  margin-bottom: 7px;
  color: rgba(255, 255, 255, 0.62);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.35;
  letter-spacing: 0.105em;
  text-transform: uppercase;
}
.main-footer__brand-name {
  display: block;
  color: #fff;
  font-family: "PT Serif", Georgia, "Times New Roman", serif;
  font-size: 29px;
  line-height: 1.12;
}
.main-footer__description {
  max-width: 310px;
  margin: 22px 0 25px;
  color: rgba(255, 255, 255, 0.72);
  font-size: 15px;
  line-height: 1.55;
}
.main-footer__action {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 11px 20px;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  border-radius: var(--se-radius-xs);
  background: #fd8327;
  box-shadow: 0 10px 24px rgba(6, 19, 37, 0.2);
  color: #fff !important;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.01em;
}
.main-footer__action:hover {
  background: #fd9240;
  border-color: rgba(255, 255, 255, 0.45) !important;
  transform: translateY(-1px);
}
.main-footer__navigation {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 36px;
}
.main-footer__heading {
  margin: 0 0 17px;
  color: rgba(255, 255, 255, 0.58);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}
.main-footer__links {
  margin: 0;
  padding: 0;
  list-style: none;
}
.main-footer__links li {
  margin: 0 0 11px;
  padding: 0;
  line-height: 1.35;
}
.main-footer__links a {
  font-size: 14px;
}
.main-footer a.main-footer__phone {
  display: inline-block;
  color: #fff;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.38);
  font-size: 22px;
  font-weight: 600;
  line-height: 1.2;
  white-space: nowrap;
}
.main-footer a.main-footer__phone:hover {
  color: #ffa867;
  border: 0;
  border-bottom: 1px solid #ffa867;
}
.main-footer__phone-note {
  display: block;
  margin: 5px 0 18px;
  color: rgba(255, 255, 255, 0.5);
  font-size: 12px;
}
.main-footer__email {
  display: inline-block;
  margin-bottom: 18px;
  font-size: 15px;
}
.main-footer__address, .main-footer__hours {
  margin: 0 0 13px;
  color: rgba(255, 255, 255, 0.7);
  font-size: 13px;
  font-style: normal;
  line-height: 1.5;
}
.main-footer__contact-link {
  display: inline-block;
  margin-top: 2px;
  font-size: 13px;
}
.main-footer__legal {
  display: grid;
  grid-template-columns: minmax(280px, 0.8fr) minmax(480px, 1.65fr);
  gap: 54px;
  margin-top: 50px;
  padding-top: 25px;
  border-top: 1px solid rgba(255, 255, 255, 0.13);
  color: rgba(255, 255, 255, 0.58);
  font-size: 13px;
  line-height: 1.55;
}
.main-footer__legal p {
  margin: 0;
}
.main-footer__details {
  white-space: normal;
}
.main-footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-top: 22px;
  color: rgba(255, 255, 255, 0.62);
  font-size: 12px;
}
.main-footer__bottom p {
  margin: 0;
}
.main-footer__bottom-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 12px 24px;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .main-footer__inner {
    padding: 54px 34px 26px;
  }
  .main-footer__primary {
    grid-template-columns: minmax(0, 1fr) minmax(230px, 0.68fr);
    gap: 45px 60px;
  }
  .main-footer__navigation {
    grid-column: 1/-1;
    grid-row: 2;
    gap: 55px;
  }
  .main-footer__legal {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 42px;
  }
}
@media (max-width: 767px) {
  .main-footer__inner {
    padding: 38px 20px 22px;
  }
  .main-footer__primary {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .main-footer__brand-name {
    font-size: 27px;
  }
  .main-footer__description {
    max-width: 520px;
    margin: 18px 0 22px;
  }
  .main-footer__navigation {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px 24px;
    padding: 28px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.13);
    border-bottom: 1px solid rgba(255, 255, 255, 0.13);
  }
  .main-footer__contacts {
    max-width: 320px;
  }
  .main-footer__legal {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 30px;
    padding-top: 22px;
  }
  .main-footer__details {
    white-space: normal;
  }
  .main-footer__bottom {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
    margin-top: 24px;
  }
  .main-footer__bottom-links {
    justify-content: flex-start;
  }
}
@media (max-width: 430px) {
  .main-footer__navigation {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 20px;
  }
  .main-footer__nav-group:last-child {
    grid-column: 1/-1;
  }
  .main-footer__nav-group:last-child .main-footer__links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px 20px;
  }
  .main-footer__nav-group:last-child .main-footer__links li {
    margin: 0;
  }
}

@media screen and (max-width: 620px) {
  .main-footer__links a,
.main-footer__bottom-links a {
    display: inline-block;
    padding: 7px 0;
  }

  .main-footer a.main-footer__contact-link,
.main-footer a.main-footer__email,
.main-footer a.main-footer__phone {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
  }
}
body.menu-dialog-open {
  overflow: hidden;
}

.menu-dialog {
  position: fixed;
  z-index: 1000;
  display: flex;
  overflow: auto;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  align-items: flex-start;
  justify-content: center;
  padding: clamp(72px, 10vh, 104px) 22px 32px;
  color: #fff;
  background: radial-gradient(circle at 85% 0, rgba(70, 133, 207, 0.24), transparent 36%), rgba(30, 53, 96, 0.98);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
}
.menu-dialog .close-button {
  appearance: none;
  position: absolute;
  display: inline-flex;
  width: 46px;
  height: 46px;
  top: 16px;
  right: 18px;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 8px;
  border: 1px solid rgba(255, 255, 255, 0.24) !important;
  border-radius: 50%;
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
  cursor: pointer;
}
.menu-dialog .close-button:hover {
  border-color: rgba(255, 255, 255, 0.55) !important;
  background: rgba(255, 255, 255, 0.14);
}
.menu-dialog .close-button:focus-visible {
  outline: 3px solid #fea664;
  outline-offset: 3px;
}
.menu-dialog .close-button img {
  display: block;
  width: 100%;
  height: 100%;
}
.menu-dialog .dialog-body {
  overflow: hidden;
  width: min(100%, 680px);
  max-height: none;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--se-radius-l);
  background: rgba(7, 25, 45, 0.7);
  box-shadow: 0 24px 60px rgba(3, 12, 23, 0.32);
}
.menu-dialog .dialog-body > div {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.11);
  font-size: 18px;
  text-transform: none;
}
.menu-dialog .dialog-body > div:last-child {
  border-bottom: 0;
}
.menu-dialog .dialog-body > div > a,
.menu-dialog .dialog-body > div > button {
  appearance: none;
  display: flex;
  width: 100%;
  min-height: 58px;
  align-items: center;
  justify-content: space-between;
  margin: 0;
  padding: 15px 22px;
  border: 0;
  color: rgba(255, 255, 255, 0.9);
  background: transparent;
  font: inherit;
  font-weight: 600;
  line-height: 1.35;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  transition: color 0.18s ease, background-color 0.18s ease;
}
.menu-dialog .dialog-body > div > a:hover,
.menu-dialog .dialog-body > div > button:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
}
.menu-dialog .dialog-body > div > a:focus-visible,
.menu-dialog .dialog-body > div > button:focus-visible {
  position: relative;
  z-index: 1;
  outline: 3px solid #fea664;
  outline-offset: -4px;
}
.menu-dialog .dialog-body > div > .menu-dialog__submenu::after {
  margin-left: 18px;
  color: #feac6e;
  content: "→";
  font-size: 1.2em;
}
.menu-dialog .dialog-body > div h3,
.menu-dialog .dialog-body > div .h3 {
  margin: 0;
  padding: 17px 22px;
  color: rgba(255, 255, 255, 0.66);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .menu-dialog {
    padding: 70px 14px 22px;
  }
  .menu-dialog .close-button {
    width: 44px;
    height: 44px;
    top: 12px;
    right: 14px;
  }
  .menu-dialog .dialog-body {
    border-radius: var(--se-radius-m);
  }
  .menu-dialog .dialog-body > div {
    font-size: 16px;
  }
  .menu-dialog .dialog-body > div > a,
.menu-dialog .dialog-body > div > button {
    min-height: 54px;
    padding: 13px 17px;
  }
}

.region-dialog {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.91);
  color: #fff;
  text-align: center;
  padding-top: 150px;
  font-family: "PT Serif", Georgia, "Times New Roman", serif;
}
.region-dialog .dialog-body {
  display: inline-block;
  width: 500px;
  height: 350px;
  background: #1e3560;
  position: relative;
  overflow: auto;
  padding: 2em;
}
.region-dialog .dialog-body .close-button {
  display: inline-block;
  position: absolute;
  top: 10px;
  right: 10px;
  color: #fff;
  border-bottom: none !important;
  width: 40px;
  height: 40px;
}
.region-dialog .dialog-body .close-button img {
  width: 100%;
  height: 100%;
}
.region-dialog .dialog-body a {
  cursor: pointer;
  text-decoration: none;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.region-dialog .dialog-body a:hover, .region-dialog .dialog-body a:visited:hover {
  color: #d7d7d7;
  border-bottom: 1px solid rgba(215, 215, 215, 0.4);
}
.region-dialog .dialog-body a:active, .region-dialog .dialog-body a:visited:active {
  color: rgba(255, 255, 255, 0.2);
  border-bottom: 1px solid rgba(255, 255, 255, 0);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.region-dialog .dialog-body a:visited {
  color: #bebebe;
  border-bottom: 1px solid rgba(190, 190, 190, 0.4);
}
.region-dialog .dialog-body .city {
  float: left;
  width: 50%;
  text-align: left;
  line-height: 2;
}
.region-dialog .dialog-body .all {
  float: left;
  line-height: 4;
  text-align: center;
  text-transform: uppercase;
}

body.call-dialog-open {
  overflow: hidden;
}

.call-dialog {
  position: fixed;
  z-index: 2000;
  inset: 0;
  overflow-x: hidden;
  overflow-y: auto;
  width: 100%;
  height: 100%;
  padding: clamp(24px, 7vh, 68px) 18px;
  color: var(--se-ink);
  background: rgba(7, 25, 40, 0.74);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  overscroll-behavior: contain;
  backdrop-filter: blur(8px);
}
.call-dialog * {
  box-sizing: border-box;
}
.call-dialog .dialog-body {
  position: relative;
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
  width: min(100%, 680px);
  max-height: calc(100vh - 48px);
  margin: 0 auto;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--se-radius-xl);
  color: var(--se-ink);
  background: #fff;
  box-shadow: 0 30px 90px rgba(2, 18, 31, 0.34);
  animation: call-dialog-in 0.2s ease-out;
}
.call-dialog .close-button {
  position: absolute;
  z-index: 4;
  top: 18px;
  right: 18px;
  display: block;
  width: 42px;
  height: 42px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: 50%;
  color: #fff;
  background: rgba(6, 28, 44, 0.2);
  cursor: pointer;
  transform: none;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.call-dialog .close-button picture {
  display: none;
}
.call-dialog .close-button::before, .call-dialog .close-button::after {
  position: absolute;
  top: 19px;
  left: 11px;
  width: 18px;
  height: 2px;
  border-radius: 2px;
  background: currentColor;
  content: "";
}
.call-dialog .close-button::before {
  transform: rotate(45deg);
}
.call-dialog .close-button::after {
  transform: rotate(-45deg);
}
.call-dialog .close-button:hover {
  border-color: rgba(255, 255, 255, 0.42) !important;
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
  transform: none;
}
.call-dialog .close-button:focus-visible {
  outline: 3px solid #ffb18b;
  outline-offset: 3px;
}
.call-dialog .call-dialog__header {
  position: relative;
  overflow: hidden;
  padding: 40px 72px 34px 42px;
  color: #fff;
  background: radial-gradient(circle at 96% 0, rgba(75, 160, 201, 0.32), transparent 38%), linear-gradient(132deg, #0d293f 0%, #174e6d 100%);
}
.call-dialog .call-dialog__header::after {
  position: absolute;
  right: -92px;
  bottom: -122px;
  width: 260px;
  height: 260px;
  border: 34px solid rgba(255, 255, 255, 0.035);
  border-radius: 50%;
  content: "";
}
.call-dialog .call-dialog__header > * {
  position: relative;
  z-index: 1;
}
.call-dialog .call-dialog__header h2 {
  max-width: 520px;
  margin: 0 0 15px;
  padding: 0;
  color: #fff;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2rem, 4vw, 2.65rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.06;
  text-align: left;
  text-transform: none;
}
.call-dialog .call-dialog__header p {
  max-width: 540px;
  margin: 0;
  color: rgba(255, 255, 255, 0.75);
  font-size: 0.98rem;
  line-height: 1.62;
  text-align: left;
}
.call-dialog .call-dialog__eyebrow {
  display: block;
  margin-bottom: 14px;
  color: #ffb08a;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  line-height: 1.35;
  text-transform: uppercase;
}
.call-dialog .form {
  padding: 31px 42px 26px;
  color: var(--se-ink);
  background: #fff;
  text-align: left;
}
.call-dialog .form form {
  margin: 0;
}
.call-dialog .form .fields {
  display: grid;
  overflow: visible;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}
.call-dialog .form .fields::before, .call-dialog .form .fields::after {
  display: none;
}
.call-dialog .form .fields > div,
.call-dialog .form .fields > div.column50 {
  position: relative;
  float: none;
  overflow: visible;
  width: auto;
  padding: 0;
  border: 0;
  background: none;
}
.call-dialog .form .fields label {
  position: static;
  display: block;
  width: auto;
  margin: 0 0 8px;
  padding: 0;
  color: #3f5665;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.035em;
  line-height: 1.35;
  text-transform: none;
}
.call-dialog .form .fields input {
  position: static;
  display: block;
  width: 100%;
  min-height: 52px;
  padding: 13px 14px;
  border: 1px solid #cfdde4;
  border-radius: var(--se-radius-s);
  outline: 0;
  color: var(--se-ink);
  background: #f8fafb;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  line-height: 1.35;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}
.call-dialog .form .fields input:hover {
  border-color: #aebfc8;
  background: #fff;
}
.call-dialog .form .fields input:focus {
  padding: 13px 14px;
  border-color: var(--se-blue);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(36, 95, 128, 0.13);
}
.call-dialog .form .fields input.error {
  border-color: #c53f32;
  background: #fff9f8;
}
.call-dialog .form .fields span.error {
  position: static;
  display: block;
  width: auto;
  margin: 7px 0 0;
  padding: 0;
  color: #b42318;
  background: none;
  font-size: 0.76rem;
  font-weight: 600;
  line-height: 1.35;
}
.call-dialog .form .submit-block {
  padding: 22px 0 0;
  text-align: left;
}
.call-dialog .form .submit-block-btn {
  display: inline-flex;
  width: 100%;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  padding: 14px 22px;
  border: 1px solid #ed6b32;
  border-radius: var(--se-radius-s);
  color: #fff;
  background: #ed6b32;
  font: 700 0.95rem/1.3 "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transform: none;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.call-dialog .form .submit-block-btn:hover {
  border-color: var(--se-orange-action);
  color: #fff;
  background: var(--se-orange-action);
  transform: none;
}
.call-dialog .form .submit-block-btn:focus-visible {
  outline: 3px solid rgba(237, 107, 50, 0.28);
  outline-offset: 3px;
}
.call-dialog .form .submit-block-btn:disabled {
  cursor: wait;
  opacity: 0.65;
}
.call-dialog .call-dialog__schedule,
.call-dialog .call-dialog__privacy {
  margin: 0;
  color: var(--se-muted);
  text-align: left;
}
.call-dialog .call-dialog__schedule {
  position: relative;
  margin-top: 15px;
  padding-left: 18px;
  font-size: 0.82rem;
  line-height: 1.5;
}
.call-dialog .call-dialog__schedule::before {
  position: absolute;
  top: 0.55em;
  left: 1px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ed6b32;
  content: "";
}
.call-dialog .call-dialog__privacy {
  margin-top: 11px;
  font-size: 0.84rem;
  line-height: 1.5;
}
.call-dialog .call-dialog__privacy a {
  border-bottom: 1px solid rgba(36, 95, 128, 0.3);
  color: var(--se-blue);
  text-decoration: none;
}
.call-dialog .call-dialog__privacy a:hover {
  border-bottom-color: #b94f22;
  color: #b94f22;
}
.call-dialog .call-dialog__detailed-link {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  margin-top: 20px;
  border: 0;
  color: var(--se-blue);
  font-size: 0.84rem;
  font-weight: 700;
  text-decoration: none;
  transform: none;
}
.call-dialog .call-dialog__detailed-link span {
  font-size: 1.05rem;
  transition: transform 0.2s ease;
}
.call-dialog .call-dialog__detailed-link:hover {
  border: 0;
  color: #b94f22;
  transform: none;
}
.call-dialog .call-dialog__detailed-link:hover span {
  transform: translateX(3px);
}
.call-dialog .call-dialog__footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 3px 20px;
  align-items: center;
  padding: 20px 42px 22px;
  border-top: 1px solid var(--se-line);
  background: var(--se-surface);
}
.call-dialog .call-dialog__footer > span {
  grid-row: 1/span 2;
  color: var(--se-muted);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}
.call-dialog .call-dialog__footer a {
  justify-self: end;
  border-bottom: 1px solid rgba(36, 95, 128, 0.3);
  color: var(--se-ink);
  font-size: 1.18rem;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
  transform: none;
}
.call-dialog .call-dialog__footer a:hover {
  border-bottom-color: #ed6b32;
  color: #b94f22;
  transform: none;
}
.call-dialog .call-dialog__footer small {
  justify-self: end;
  color: #748893;
  font-size: 0.7rem;
  line-height: 1.35;
}

@keyframes call-dialog-in {
  from {
    opacity: 0;
    transform: translateY(10px) scale(0.985);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
@media (max-width: 700px) {
  .call-dialog {
    padding: 12px;
  }
  .call-dialog .dialog-body {
    max-height: calc(100vh - 24px);
    border-radius: var(--se-radius-l);
  }
  .call-dialog .close-button {
    top: 14px;
    right: 14px;
  }
  .call-dialog .call-dialog__header {
    padding: 32px 62px 27px 23px;
  }
  .call-dialog .call-dialog__header h2 {
    font-size: clamp(1.85rem, 9vw, 2.3rem);
  }
  .call-dialog .call-dialog__header p {
    font-size: 0.92rem;
  }
  .call-dialog .form {
    padding: 25px 22px 23px;
  }
  .call-dialog .form .fields {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
  .call-dialog .call-dialog__footer {
    grid-template-columns: minmax(0, 1fr);
    gap: 6px;
    padding: 19px 22px 21px;
  }
  .call-dialog .call-dialog__footer > span {
    grid-row: auto;
    margin-bottom: 3px;
  }
  .call-dialog .call-dialog__footer a,
.call-dialog .call-dialog__footer small {
    justify-self: start;
  }
}
@media (prefers-reduced-motion: reduce) {
  .call-dialog .dialog-body {
    animation: none;
  }
}
.start-page {
  --home-ink: var(--se-ink);
  --home-blue: var(--se-blue);
  --home-blue-deep: var(--se-ink-deep);
  --home-orange: var(--se-orange);
  --home-orange-action: var(--se-orange-action);
  --home-muted: var(--se-muted);
  --home-surface: var(--se-surface);
  --home-line: var(--se-line);
  overflow: clip;
  color: var(--home-ink);
  background: #fff;
}

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

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

.start-page h1,
.start-page h2,
.start-page h3,
.start-page h4 {
  color: var(--home-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  text-transform: none;
}

.home-shell {
  width: min(1180px, 100% - 48px);
  margin-right: auto;
  margin-left: auto;
}

.home-section {
  padding: clamp(76px, 8vw, 112px) 0;
}

.home-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 17px;
  color: var(--home-orange);
  font-size: 0.73rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  line-height: 1.35;
  text-transform: uppercase;
}

.home-eyebrow::before {
  width: 32px;
  height: 2px;
  flex: 0 0 32px;
  background: currentColor;
  content: "";
}

.home-section-heading {
  max-width: 790px;
}

.home-section-heading h2,
.home-final h2,
.home-organization h2 {
  margin: 0;
  color: var(--home-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2.15rem, 4vw, 3.45rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.06;
  text-align: left;
  text-transform: none;
}

.home-section-heading > p {
  max-width: 720px;
  margin: 21px 0 0;
  color: var(--home-muted);
  font-size: 1rem;
  line-height: 1.68;
}

.home-section-heading--center {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.home-section-heading--center h2,
.home-section-heading--center > p {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.home-button {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 23px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.91rem;
  font-weight: 700;
  line-height: 1.35;
  text-align: center;
  text-decoration: none;
  transition: color 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.home-button:hover {
  transform: translateY(-1px);
}

.home-button--primary {
  color: #fff;
  background: var(--home-orange-action);
}

.home-button--primary:hover {
  color: #fff;
  background: #963d18;
}

.home-button--ghost {
  border-color: rgba(255, 255, 255, 0.28);
  color: #fff;
  background: rgba(255, 255, 255, 0.07);
}

.home-button--ghost:hover {
  border-color: rgba(255, 255, 255, 0.52);
  color: #fff;
  background: rgba(255, 255, 255, 0.13);
}

.home-text-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid rgba(31, 94, 128, 0.28);
  color: var(--home-blue);
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.45;
  text-decoration: none;
  transition: color 0.18s ease, border-color 0.18s ease;
}

.home-text-link:hover {
  border-bottom-color: var(--home-orange);
  color: var(--home-orange);
}

.home-text-link--light {
  border-bottom-color: rgba(255, 255, 255, 0.32);
  color: #fff;
}

.home-text-link--light:hover {
  border-bottom-color: #ffb08a;
  color: #ffb08a;
}

.start-page a:focus-visible,
.start-page button:focus-visible {
  outline: 3px solid #f8a37a;
  outline-offset: 4px;
}

.home-hero {
  position: relative;
  overflow: hidden;
  overflow: clip;
  padding: clamp(68px, 7vw, 96px) 0 0;
  color: #fff;
  background: radial-gradient(circle at 86% 11%, rgba(64, 155, 199, 0.32), transparent 32%), linear-gradient(133deg, #0b273d 0%, #123c58 58%, #1b5775 100%);
}

.home-hero::before {
  position: absolute;
  width: 360px;
  height: 200px;
  top: 28px;
  right: max(20px, (100vw - 1220px) / 2);
  opacity: 0.13;
  background: url(/export/images/page-start/cells.png) top right/224px 123px no-repeat;
  content: "";
  transform: scale(1.45);
  transform-origin: top right;
}

.home-hero::after {
  position: absolute;
  width: 520px;
  height: 520px;
  right: -230px;
  bottom: -315px;
  border: 56px solid rgba(255, 255, 255, 0.035);
  border-radius: 50%;
  content: "";
}

.home-hero__layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.42fr) minmax(310px, 0.72fr);
  gap: clamp(48px, 7vw, 88px);
  align-items: center;
}

.home-hero__copy {
  max-width: 790px;
}

.home-hero .home-eyebrow,
.home-organization .home-eyebrow,
.home-final .home-eyebrow {
  color: #ffb08a;
}

.home-hero h1 {
  max-width: 780px;
  margin: 0 0 27px;
  color: #fff;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(3rem, 4.7vw, 4.6rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 0.97;
  text-transform: none;
}

.home-hero__lead {
  max-width: 745px;
  margin: 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: clamp(1.08rem, 1.55vw, 1.24rem);
  line-height: 1.62;
}

.home-hero__audience {
  max-width: 720px;
  margin: 18px 0 0;
  color: rgba(255, 255, 255, 0.64);
  font-size: 0.91rem;
  line-height: 1.6;
}

.home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 34px;
}

.home-hero__production {
  padding: 30px 30px 26px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--se-radius-l);
  background: rgba(255, 255, 255, 0.085);
  box-shadow: 0 20px 45px rgba(3, 23, 36, 0.16);
  backdrop-filter: blur(8px);
}

.home-hero__production-label {
  display: block;
  margin-bottom: 14px;
  color: #fff;
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.4;
}

.home-hero__production ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.home-hero__production li {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 13px;
  align-items: start;
  margin: 0;
  padding: 14px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.13);
}

.home-hero__production li span {
  color: #ffb08a;
  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.55;
}

.home-hero__production li p {
  margin: 0;
  color: rgba(255, 255, 255, 0.77);
  font-size: 0.84rem;
  line-height: 1.48;
}

.home-hero__facts-band {
  position: relative;
  z-index: 2;
  margin-top: clamp(54px, 6vw, 76px);
  background: linear-gradient(to bottom, transparent 0 50%, #fff 50% 100%);
}

.home-facts {
  position: relative;
  display: grid;
  grid-template-columns: 0.82fr 0.9fr 1.28fr;
  border: 1px solid rgba(217, 228, 233, 0.72);
  border-radius: var(--se-radius-l);
  color: var(--home-ink);
  background: #fff;
  box-shadow: 0 16px 42px rgba(4, 25, 39, 0.13);
  overflow: hidden;
}

.home-facts > div {
  min-width: 0;
  min-height: 118px;
  padding: 25px 28px 23px;
}

.home-facts > div + div {
  border-left: 1px solid var(--home-line);
}

.home-facts strong,
.home-facts span {
  display: block;
}

.home-facts strong {
  margin-bottom: 7px;
  color: var(--home-ink);
  font-size: 1.03rem;
  line-height: 1.3;
}

.home-facts > div:not(:last-child) strong {
  margin-top: -3px;
  color: var(--home-orange);
  font-size: 1.72rem;
  letter-spacing: -0.02em;
  line-height: 1.15;
}

.home-facts span {
  color: var(--home-muted);
  font-size: 0.79rem;
  line-height: 1.47;
}

.home-routes {
  padding-top: clamp(60px, 5.4vw, 78px);
}

.home-routes__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 42px;
}

.home-route-card {
  position: relative;
  display: grid;
  min-width: 0;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 17px;
  padding: 30px 28px 29px;
  border: 1px solid var(--home-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 13px 34px rgba(16, 48, 67, 0.055);
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.home-route-card:hover {
  border-color: #b7ccd6;
  box-shadow: 0 18px 42px rgba(16, 48, 67, 0.09);
  transform: translateY(-2px);
}

.home-route-card__number {
  display: inline-flex;
  width: 40px;
  height: 40px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--home-blue);
  background: var(--home-surface);
  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.06em;
}

.home-route-card__type {
  display: block;
  margin: 2px 0 13px;
  color: var(--home-orange);
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-transform: uppercase;
}

.home-route-card h3 {
  margin: 0 0 15px;
  color: var(--home-ink);
  font-size: 1.18rem;
  font-weight: 600;
  letter-spacing: -0.018em;
  line-height: 1.28;
}

.home-route-card p {
  margin: 0 0 23px;
  color: var(--home-muted);
  font-size: 0.88rem;
  line-height: 1.62;
}

.home-route-card a {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  color: var(--home-blue);
  font-size: 0.8rem;
  font-weight: 700;
  text-decoration: none;
}

.home-route-card a:hover {
  color: var(--home-orange);
}

.home-expertises,
.home-process,
.home-mentions {
  background: var(--home-surface);
}

.home-expertises__intro {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(280px, 0.72fr);
  gap: clamp(44px, 7vw, 90px);
  align-items: end;
}

.home-expertises__intro-copy p {
  margin: 0 0 20px;
  color: var(--home-muted);
  font-size: 0.96rem;
  line-height: 1.66;
}

.home-expertise-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 42px;
}

.home-expertise-grid a {
  position: relative;
  display: flex;
  min-height: 204px;
  flex-direction: column;
  padding: 27px 55px 26px 27px;
  border: 1px solid var(--home-line);
  border-radius: var(--se-radius-m);
  color: var(--home-ink);
  background: #fff;
  text-decoration: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.home-expertise-grid a:hover {
  border-color: #adc6d2;
  color: var(--home-ink);
  box-shadow: 0 15px 32px rgba(15, 50, 70, 0.085);
  transform: translateY(-2px);
}

.home-expertise-grid a > span {
  margin-bottom: 13px;
  color: var(--home-orange);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: 1.4;
  text-transform: uppercase;
}

.home-expertise-grid strong {
  color: var(--home-ink);
  font-size: 1.06rem;
  line-height: 1.35;
}

.home-expertise-grid small {
  margin-top: 12px;
  color: var(--home-muted);
  font-size: 0.85rem;
  line-height: 1.55;
}

.home-expertise-grid b {
  position: absolute;
  display: inline-flex;
  width: 32px;
  height: 32px;
  right: 18px;
  bottom: 18px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: var(--home-blue);
  background: var(--home-surface);
  transition: color 0.18s ease, background-color 0.18s ease;
}

.home-expertise-grid b svg {
  display: block;
  width: 17px;
  height: 17px;
}

.home-expertise-grid a:hover b {
  color: #fff;
  background: var(--home-orange-action);
}

.home-organization {
  position: relative;
  color: #fff;
  background: radial-gradient(circle at 90% 8%, rgba(72, 163, 204, 0.25), transparent 31%), linear-gradient(132deg, #0d293f 0%, #174c69 100%);
}

.home-organization::after {
  position: absolute;
  width: 360px;
  height: 360px;
  right: -180px;
  bottom: -225px;
  border: 48px solid rgba(255, 255, 255, 0.035);
  border-radius: 50%;
  content: "";
}

.home-organization__layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(400px, 0.95fr);
  gap: clamp(52px, 8vw, 104px);
  align-items: center;
}

.home-organization h2 {
  max-width: 690px;
  color: #fff;
}

.home-organization__copy > p {
  max-width: 715px;
  margin: 23px 0 0;
  color: rgba(255, 255, 255, 0.74);
  font-size: 0.96rem;
  line-height: 1.72;
}

.home-organization__copy .home-text-link {
  margin-top: 28px;
}

.home-organization__responsibility {
  display: grid;
  gap: 13px;
}

.home-organization__responsibility article {
  padding: 27px 28px 25px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--se-radius-l);
  background: rgba(255, 255, 255, 0.075);
}

.home-organization__responsibility article > span {
  display: block;
  margin-bottom: 8px;
  color: #ffb08a;
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.home-organization__responsibility h3 {
  margin: 0 0 14px;
  color: #fff;
  font-size: 1.15rem;
  line-height: 1.3;
}

.home-organization__responsibility ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.home-organization__responsibility li {
  position: relative;
  margin: 0;
  padding-left: 17px;
  color: rgba(255, 255, 255, 0.71);
  font-size: 0.82rem;
  line-height: 1.5;
}

.home-organization__responsibility li::before {
  position: absolute;
  width: 5px;
  height: 5px;
  top: 0.58em;
  left: 0;
  border-radius: 50%;
  background: #ff9868;
  content: "";
}

.home-cases__heading,
.home-documents__heading,
.home-mentions__heading,
.home-faq__heading {
  display: flex;
  gap: 32px;
  align-items: end;
  justify-content: space-between;
  margin-bottom: 40px;
}

.home-cases__heading .home-text-link,
.home-documents__heading .home-text-link,
.home-mentions__heading .home-text-link,
.home-faq__heading .home-text-link {
  flex: 0 0 auto;
  margin-bottom: 7px;
}

.home-cases__archive {
  flex: 0 0 auto;
  width: 292px;
  margin-bottom: 0;
}

.home-cases__archive-link {
  display: grid;
  gap: 15px;
  padding: 19px 21px 17px;
  border: 1px solid var(--home-line);
  border-top: 3px solid var(--home-orange);
  border-radius: var(--se-radius-m);
  color: var(--home-ink);
  background: #f7fafb;
  text-decoration: none;
  transition: border-color 0.18s ease, background-color 0.18s ease;
}

.home-cases__count {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: end;
  color: var(--home-muted);
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.2;
}

.home-cases__count strong {
  color: var(--home-ink);
  font-size: 2.65rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.02em;
  line-height: 0.9;
}

.home-cases__archive-action {
  display: flex;
  gap: 14px;
  align-items: center;
  justify-content: space-between;
  padding-top: 12px;
  border-top: 1px solid var(--home-line);
  color: var(--home-blue);
  font-size: 0.93rem;
  font-weight: 700;
  line-height: 1.35;
}

.home-cases__archive-link:hover {
  border-color: #bfd2dc;
  border-top-color: var(--home-orange);
  color: var(--home-ink);
  background: #fff;
}

.home-cases__archive-link:hover .home-cases__archive-action {
  color: var(--home-orange-action);
}

.home-cases__grid,
.home-documents__grid,
.home-mentions__grid,
.home-faq__list {
  display: grid;
  gap: 16px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.home-cases__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home-mentions__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home-documents__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home-cases__grid > li,
.home-documents__grid > li,
.home-mentions__grid > li,
.home-faq__list > li {
  min-width: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.home-cases__grid > li > span {
  display: block;
  height: 100%;
}

.home-cases__grid .example-card {
  position: relative;
  display: block;
  overflow: hidden;
  height: 100%;
  min-height: 470px;
  border: 1px solid var(--home-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 13px 32px rgba(18, 51, 70, 0.055);
}

.home-cases__grid .example-card::before {
  display: block;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, var(--home-orange) 0 58px, var(--home-blue) 58px 100%);
  content: "";
}

.home-cases__grid .example-card__media {
  display: none;
}

.home-cases__grid .example-card__body {
  display: flex;
  min-width: 0;
  min-height: 466px;
  flex-direction: column;
  padding: 29px 27px 27px;
}

.home-cases__grid .example-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 12px;
  align-items: center;
  margin-bottom: 15px;
}

.home-cases__grid .example-card__meta > span {
  color: var(--home-orange);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.home-cases__grid .header-date {
  overflow: visible;
  padding: 0;
  color: var(--home-muted);
  background: none;
  font-size: 0.69rem;
  line-height: 1.4;
}

.home-cases__grid .example-card__title {
  margin: 0 0 14px;
  padding: 0;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.35rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.18;
  text-transform: none;
}

.home-cases__grid .example-card__title a {
  border-bottom: 0;
  color: var(--home-ink);
  text-decoration: none;
}

.home-cases__grid .example-card__title a:hover {
  color: var(--home-blue);
}

.home-cases__grid .example-card__summary {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 0 18px;
  color: var(--home-muted);
  font-size: 0.875rem;
  line-height: 1.58;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
}

.home-cases__grid .example-card__details {
  overflow: visible;
  margin: 0 0 20px;
  padding: 0;
  border: 0;
}

.home-cases__grid .example-card__details > * {
  display: none;
}

.home-cases__grid .example-card__details > .example-case-source {
  display: block;
  margin: 0;
  padding: 13px 14px;
  border-radius: var(--se-radius-s);
  color: var(--home-ink);
  background: var(--home-surface);
  font-size: 0.75rem;
  line-height: 1.48;
}

.home-cases__grid .example-case-source strong {
  display: block;
  min-width: 0;
  font-weight: 600;
}

.home-cases__grid .example-case-deal {
  display: block;
  margin-top: 6px;
  color: var(--home-blue);
  white-space: normal;
}

.home-cases__grid .example-card__action {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  align-self: flex-start;
  min-height: 44px;
  margin-top: auto;
  color: var(--home-blue);
  font-size: 0.84rem;
  font-weight: 700;
  text-decoration: none;
}

.home-cases__grid .example-card__action:hover {
  color: var(--home-orange);
}

.home-process__steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin: 45px 0 0;
  padding: 0;
  list-style: none;
}

.home-process__steps::before {
  position: absolute;
  height: 1px;
  top: 31px;
  right: 10%;
  left: 10%;
  background: #bdd0d9;
  content: "";
}

.home-process__steps li {
  position: relative;
  z-index: 1;
  min-width: 0;
  margin: 0;
  padding: 0 18px;
  text-align: center;
}

.home-process__steps li > span {
  display: inline-flex;
  width: 62px;
  height: 62px;
  align-items: center;
  justify-content: center;
  border: 8px solid var(--home-surface);
  border-radius: 50%;
  color: #fff;
  background: var(--home-blue);
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  box-shadow: 0 0 0 1px #b9ced8;
}

.home-process__steps h3 {
  margin: 22px 0 12px;
  color: var(--home-ink);
  font-size: 1.03rem;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
}

.home-process__steps p {
  margin: 0;
  color: var(--home-muted);
  font-size: 0.875rem;
  line-height: 1.58;
  text-align: center;
}

.home-document-card {
  display: grid;
  overflow: hidden;
  height: 100%;
  min-height: 310px;
  grid-template-columns: 170px minmax(0, 1fr);
  border: 1px solid var(--home-line);
  border-radius: var(--se-radius-l);
  color: var(--home-ink);
  background: #fff;
  text-decoration: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.home-document-card:hover {
  border-color: #afc7d2;
  color: var(--home-ink);
  box-shadow: 0 16px 35px rgba(15, 49, 69, 0.085);
  transform: translateY(-2px);
}

.home-document-card__image {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  padding: 25px 20px;
  background: var(--home-surface);
}

.home-document-card__image picture,
.home-document-card__image img {
  display: block;
  max-width: 100%;
}

.home-document-card__image img {
  width: auto;
  max-height: 240px;
  border: 0;
  box-shadow: 0 9px 23px rgba(19, 50, 68, 0.13);
}

.home-document-card__copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 31px 29px 27px;
}

.home-document-card__copy strong {
  color: var(--home-ink);
  font-size: 1.05rem;
  line-height: 1.4;
}

.home-document-card__copy small {
  margin-top: 13px;
  color: var(--home-muted);
  font-size: 0.85rem;
  line-height: 1.55;
}

.home-document-card__copy b {
  margin-top: auto;
  padding-top: 22px;
  color: var(--home-blue);
  font-size: 0.78rem;
  line-height: 1.4;
}

.home-mention-card {
  display: grid;
  height: 100%;
  min-height: 240px;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 22px;
  padding: 28px;
  border: 1px solid var(--home-line);
  border-radius: var(--se-radius-l);
  background: #fff;
}

.home-mention-card__image {
  display: block;
  align-self: start;
  padding: 6px;
  border: 1px solid var(--home-line);
  border-radius: var(--se-radius-s);
  background: #fff;
}

.home-mention-card__image picture,
.home-mention-card__image img {
  display: block;
  width: 100%;
}

.home-mention-card__copy strong,
.home-mention-card__copy span {
  display: block;
}

.home-mention-card__copy strong {
  margin-bottom: 6px;
  color: var(--home-ink);
  font-size: 0.96rem;
  line-height: 1.4;
}

.home-mention-card__copy span {
  min-height: 38px;
  color: var(--home-muted);
  font-size: 0.8rem;
  font-weight: 600;
  line-height: 1.5;
}

.home-mention-card__copy p {
  display: -webkit-box;
  overflow: hidden;
  margin: 20px 0 0;
  color: #506873;
  font-size: 0.875rem;
  font-style: normal;
  line-height: 1.6;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 7;
}

.home-faq-card {
  overflow: hidden;
  margin: 0;
  padding: 0;
  border: 1px solid var(--home-line);
  border-radius: var(--se-radius-m);
  background: #fff;
}

.home-faq-card[open] {
  border-color: #bed1da;
  box-shadow: 0 12px 28px rgba(18, 51, 70, 0.055);
}

.home-faq-card summary {
  position: relative;
  display: grid;
  min-height: 72px;
  grid-template-columns: minmax(0, 1fr) 34px;
  gap: 20px;
  align-items: center;
  padding: 20px 22px 20px 25px;
  color: var(--home-ink);
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.42;
  list-style: none;
}

.home-faq-card summary::-webkit-details-marker {
  display: none;
}

.home-faq-card summary i {
  position: relative;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--home-surface);
}

.home-faq-card summary i::before,
.home-faq-card summary i::after {
  position: absolute;
  width: 14px;
  height: 2px;
  top: 16px;
  left: 10px;
  border-radius: 2px;
  background: var(--home-blue);
  content: "";
  transition: transform 0.18s ease;
}

.home-faq-card summary i::after {
  transform: rotate(90deg);
}

.home-faq-card[open] summary i::after {
  transform: rotate(0);
}

.home-faq-card__answer {
  overflow: visible;
  margin: 0;
  padding: 0 68px 24px 25px;
  color: var(--home-muted);
  font-size: 0.88rem;
  line-height: 1.65;
}

.home-faq-card__answer p {
  margin: 0 0 13px;
  padding: 0;
}

.home-faq-card__answer p:last-child {
  margin-bottom: 0;
}

.home-faq-card__answer ul,
.home-faq-card__answer ol {
  overflow: visible;
  margin: 13px 0;
  padding: 0 0 0 1.35rem;
}

.home-faq-card__answer li {
  margin: 0 0 7px;
  padding: 0;
}

.home-final {
  position: relative;
  overflow: hidden;
  padding: clamp(72px, 8vw, 108px) 0;
  color: #fff;
  background: radial-gradient(circle at 88% 10%, rgba(78, 164, 205, 0.28), transparent 33%), linear-gradient(132deg, #0c283e 0%, #174e6d 100%);
}

.home-final::after {
  position: absolute;
  width: 460px;
  height: 460px;
  right: -180px;
  bottom: -300px;
  border: 58px solid rgba(255, 255, 255, 0.035);
  border-radius: 50%;
  content: "";
}

.home-final__layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: clamp(48px, 8vw, 96px);
  align-items: center;
}

.home-final h2 {
  max-width: 740px;
  color: #fff;
}

.home-final__layout > div:first-child > p {
  max-width: 760px;
  margin: 22px 0 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 1rem;
  line-height: 1.7;
}

.home-final__actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 28px 27px 25px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--se-radius-l);
  background: rgba(4, 24, 38, 0.2);
}

.home-final__actions > span {
  margin: 23px 0 8px;
  color: rgba(255, 255, 255, 0.48);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.home-final__phone {
  align-self: flex-start;
  border-bottom: 1px solid rgba(255, 255, 255, 0.35);
  color: #fff;
  font-size: 1.26rem;
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
}

.home-final__phone:hover {
  border-bottom-color: #ffb08a;
  color: #ffb08a;
}

.home-final__actions small {
  margin-top: 7px;
  color: rgba(255, 255, 255, 0.54);
  font-size: 0.72rem;
  line-height: 1.4;
}

@media (max-width: 1020px) {
  .home-hero__layout,
.home-organization__layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-hero__production {
    max-width: 720px;
  }

  .home-routes__grid,
.home-expertise-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-cases__grid,
.home-mentions__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-route-card:last-child {
    grid-column: 1/-1;
  }

  .home-organization__responsibility {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-process__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 34px 18px;
  }

  .home-process__steps::before {
    display: none;
  }
}
@media (max-width: 820px) {
  .home-shell {
    width: min(100% - 32px, 720px);
  }

  .home-section {
    padding: 70px 0;
  }

  .home-hero {
    padding-top: 56px;
  }

  .home-facts {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-facts > div {
    min-height: 0;
    padding: 21px 24px;
  }

  .home-facts > div + div {
    border-top: 1px solid var(--home-line);
    border-left: 0;
  }

  .home-expertises__intro,
.home-final__layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-cases__heading,
.home-documents__heading,
.home-mentions__heading,
.home-faq__heading {
    align-items: flex-start;
    flex-direction: column;
    margin-bottom: 34px;
  }

  .home-cases__heading .home-text-link,
.home-documents__heading .home-text-link,
.home-mentions__heading .home-text-link,
.home-faq__heading .home-text-link {
    margin-bottom: 0;
  }

  .home-cases__archive {
    width: min(100%, 420px);
    margin-bottom: 0;
  }

  .home-document-card {
    grid-template-columns: 142px minmax(0, 1fr);
  }

  .home-final__actions {
    max-width: 430px;
  }
}
@media (max-width: 720px) {
  .home-documents__grid,
.home-mentions__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 620px) {
  .home-shell {
    width: min(100% - 28px, 540px);
  }

  .home-section {
    padding: 58px 0;
  }

  .home-eyebrow {
    font-size: 0.67rem;
  }

  .home-section-heading h2,
.home-final h2,
.home-organization h2 {
    font-size: 2rem;
  }

  .home-section-heading > p {
    margin-top: 17px;
    font-size: 0.93rem;
  }

  .home-hero {
    padding-top: 42px;
  }

  .home-hero::before {
    right: -95px;
    opacity: 0.09;
  }

  .home-hero__layout {
    gap: 37px;
  }

  .home-hero h1 {
    margin-bottom: 22px;
    font-size: clamp(2.65rem, 13.2vw, 4rem);
    overflow-wrap: normal;
    word-break: normal;
  }

  .home-hero__lead {
    font-size: 1rem;
  }

  .home-hero__audience {
    font-size: 0.84rem;
  }

  .home-actions {
    align-items: stretch;
    flex-direction: column;
    margin-top: 28px;
  }

  .home-actions .home-button {
    width: 100%;
  }

  .home-hero__production {
    padding: 25px 22px 20px;
  }

  .home-hero__facts-band {
    margin-top: 40px;
  }

  .home-routes__grid,
.home-expertise-grid,
.home-organization__responsibility,
.home-process__steps,
.home-cases__grid,
.home-documents__grid,
.home-mentions__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .home-route-card:last-child {
    grid-column: auto;
  }

  .home-route-card {
    grid-template-columns: 38px minmax(0, 1fr);
    padding: 25px 22px;
  }

  .home-route-card__number {
    width: 36px;
    height: 36px;
  }

  .home-expertises__intro {
    gap: 24px;
  }

  .home-expertise-grid {
    margin-top: 32px;
  }

  .home-expertise-grid a {
    min-height: 176px;
    padding: 24px 53px 23px 23px;
  }

  .home-organization__layout {
    gap: 38px;
  }

  .home-organization__copy > p {
    font-size: 0.91rem;
  }

  .start-page .home-process__steps {
    gap: 12px;
    margin-top: 34px;
  }

  .home-process__steps li {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    column-gap: 17px;
    padding: 22px;
    border: 1px solid var(--home-line);
    border-radius: var(--se-radius-m);
    background: #fff;
    text-align: left;
  }

  .home-process__steps li > span {
    width: 50px;
    height: 50px;
    grid-row: 1/span 2;
    border-width: 5px;
  }

  .home-process__steps h3 {
    margin: 2px 0 7px;
    text-align: left;
  }

  .home-process__steps p {
    text-align: left;
  }

  .home-cases__grid .example-card {
    min-height: 0;
  }

  .home-cases__grid .example-card__body {
    min-height: 0;
    padding: 27px 23px 29px;
  }

  .home-cases__grid .example-card__title {
    font-size: 1.4rem;
  }

  .home-cases__grid .example-card__summary {
    -webkit-line-clamp: 6;
  }

  .home-document-card {
    min-height: 0;
    grid-template-columns: 112px minmax(0, 1fr);
  }

  .home-document-card__image {
    padding: 18px 13px;
  }

  .home-document-card__copy {
    padding: 24px 20px 22px;
  }

  .home-document-card__copy strong {
    font-size: 0.94rem;
  }

  .home-mention-card {
    min-height: 0;
    grid-template-columns: 74px minmax(0, 1fr);
    gap: 16px;
    padding: 22px 18px;
  }

  .home-mention-card__copy span {
    min-height: 0;
  }

  .home-mention-card__copy p {
    margin-top: 15px;
    -webkit-line-clamp: 8;
  }

  .home-faq-card {
    border-radius: var(--se-radius-m);
  }

  .home-faq-card summary {
    min-height: 68px;
    gap: 14px;
    padding: 18px 17px;
    font-size: 0.92rem;
  }

  .home-faq-card__answer {
    padding: 0 57px 21px 17px;
  }

  .home-final__layout {
    gap: 34px;
  }

  .home-final__layout > div:first-child > p {
    font-size: 0.92rem;
  }

  .home-final__actions {
    padding: 23px 20px 21px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .start-page *,
.start-page *::before,
.start-page *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}
@media screen and (max-width: 620px) {
  .home-text-link,
.home-route-card a,
.home-final__phone {
    min-height: 44px;
    padding: 10px 0;
  }
}
.breadcrumbs {
  position: relative;
  vertical-align: top;
  color: #637783;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 15px;
  font-style: normal;
  line-height: 1.5;
}
.breadcrumbs ul {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 0;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.breadcrumbs ul li {
  display: inline;
}
.breadcrumbs ul li:first-child {
  display: none;
}
.breadcrumbs ul li.gap {
  display: inline-block;
  padding: 0 0.55em;
  color: #9aa8af;
  text-align: center;
}
.breadcrumbs a {
  border-bottom: 1px solid rgba(36, 95, 128, 0.24);
  color: var(--se-blue);
  font-weight: 600;
  text-decoration: none;
}
.breadcrumbs a:hover {
  border-bottom-color: #b94f22;
  color: #98421f;
}
.breadcrumbs a:focus-visible {
  outline: 2px solid #b94f22;
  outline-offset: 3px;
}
@media (max-width: 767px) {
  .breadcrumbs {
    font-size: 14px;
  }
  .breadcrumbs ul li.gap {
    padding-right: 0.4em;
    padding-left: 0.4em;
  }
}

.page {
  padding: 1.4285714286em;
  min-height: 400px;
  margin: 0 auto;
  max-width: 1200px;
}
.page h1 {
  font-size: 2.5714285714em;
  font-weight: 600;
  padding: 0.5em 0;
}
@media (max-width: 767px) {
  .page h1 {
    font-size: 2em;
  }
}
.page .content {
  line-height: 1.5;
}
.page .content .annotation {
  font-weight: 600;
}
.page .content .prefix {
  color: #747474;
}
.page .content iframe {
  max-width: 100%;
}
.page .content li {
  margin-top: 0.25em;
  margin-bottom: 0.25em;
}
.page .important {
  padding: 1em;
  border-left: solid 3px #0161ce;
  font-weight: 600;
  margin-bottom: 1em;
}
.page .important .important_h1 {
  padding: 0 0 10px 25px;
  line-height: 1;
  font-size: 1.2142857143em;
  font-weight: 600;
  background-image: url(/export/images/warn.png);
  background-repeat: no-repeat;
}
.page .ok-message {
  padding: 70px 0 200px 0;
  text-align: center;
  font-size: 2em;
  line-height: 2em;
}
@media (max-width: 767px) {
  .page .ok-message {
    font-size: 1em;
    line-height: 1.5em;
    padding: 70px 0 70px 0;
  }
}
.page .video {
  float: left;
  margin-right: 2.3333333333%;
}
.page .video .player {
  max-width: 100%;
}
.page .illustration img {
  float: right;
  max-width: 100%;
}
.page .illustration.right, .page .illustration.left {
  display: inline-block;
  position: relative;
  float: right;
  margin: 0 0 1em 1em;
  max-width: 100%;
}
.page .illustration.right img, .page .illustration.left img {
  width: 300px;
}
.page .illustration.right label, .page .illustration.left label {
  width: 300px;
  clear: both;
  float: right;
  max-width: 100%;
  display: inline;
  color: #0161ce;
  font-size: 0.7857142857em;
  text-align: center;
}
.page .illustration.right {
  float: right;
}
.page .illustration.left {
  float: left;
  margin: 0 1em 1em 0;
}
.page .illustration.left label {
  float: left;
}
.page .illustration.bump {
  display: block;
  position: relative;
  float: none;
  margin: 0 1.5em 1em 1em;
  padding: 1.5em;
  text-align: left;
  /* box-shadow: 1px 1px 1px #C8C8C8; */
  border-left: 3px solid #0161ce;
  border-top: none;
  border-bottom: none;
  border-right: none;
}
@media (max-width: 767px) {
  .page .illustration.bump {
    margin: 0 0 10px 0;
  }
}
.page .illustration.bump img {
  float: left;
  margin-right: 20px;
  max-height: 10.7142857143em;
  max-width: 50%;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
  border: 3px solid #fff;
}
@media (max-width: 767px) {
  .page .illustration.bump img {
    float: none;
    max-width: 100%;
    max-height: inherit;
    display: block;
    margin-bottom: 1em;
  }
}
.page .illustration.bump label {
  color: #0f4b97;
  font-size: 1.2142857143em;
  text-align: left;
}
.page .question-form {
  background: #0161ce;
  color: #fff;
  padding: 2em;
  text-align: left;
  background: #0161ce;
}
@media (min-width: 1024px) {
  .page .question-form {
    margin: 0 9.5833333333%;
  }
}
.page .question-form h2, .page .question-form .h2 {
  text-transform: uppercase;
  text-align: center;
  font-size: 1.4285714286em;
  padding-bottom: 1em;
  font-weight: 600;
}
.page .question-form i {
  display: block;
  text-align: center;
  font-style: italic;
}
.page .question-form .fields {
  position: relative;
  overflow: hidden;
}
.page .question-form .fields > div {
  position: relative;
  overflow: hidden;
  background: #fff;
  float: left;
  width: 100%;
  border: 2px solid #0161ce;
}
.page .question-form .fields > div.opaque {
  background: none;
}
@media (min-width: 768px) {
  .page .question-form .fields > div.column50 {
    width: 50%;
  }
}
.old-ie .page .question-form .fields > div.column50 {
  width: 50%;
}
@media (min-width: 768px) {
  .page .question-form .fields > div.column33 {
    width: 33.3333333333%;
  }
}
.old-ie .page .question-form .fields > div.column33 {
  width: 33.3333333333%;
}
@media (min-width: 768px) {
  .page .question-form .fields > div.column66 {
    width: 66.6666666667%;
  }
}
.old-ie .page .question-form .fields > div.column66 {
  width: 66.6666666667%;
}
.page .question-form .fields select {
  width: 100%;
}
.page .question-form .fields input, .page .question-form .fields textarea, .page .question-form .fields select {
  width: 100%;
  border: none;
  background: none;
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
  padding: 8px 12px;
  outline: 0;
}
.page .question-form .fields input:focus, .page .question-form .fields textarea:focus, .page .question-form .fields select:focus {
  border-color: #fe9e31;
}
.page .question-form .fields input:focus + label, .page .question-form .fields input:focus + span.error + label, .page .question-form .fields textarea:focus + label, .page .question-form .fields textarea:focus + span.error + label, .page .question-form .fields select:focus + label, .page .question-form .fields select:focus + span.error + label {
  background: #fe9e31;
  color: white;
  font-size: 70%;
  padding: 1px 6px;
  z-index: 3;
  text-transform: uppercase;
}
.page .question-form .fields textarea {
  display: block;
  resize: vertical;
}
.page .question-form .fields label {
  -webkit-transition: background 0.2s, color 0.2s, top 0.2s, bottom 0.2s, right 0.2s, left 0.2s;
  transition: background 0.2s, color 0.2s, top 0.2s, bottom 0.2s, right 0.2s, left 0.2s;
  position: absolute;
  color: #0161ce;
  padding: 2px 4px;
  font-size: 0.7em;
  text-transform: uppercase;
}
.page .question-form .fields span.error {
  -webkit-transition: background 0.2s, color 0.2s, top 0.2s, bottom 0.2s, right 0.2s, left 0.2s;
  transition: background 0.2s, color 0.2s, top 0.2s, bottom 0.2s, right 0.2s, left 0.2s;
  position: absolute;
  color: #aa002d;
  background: rgba(170, 0, 45, 0.1);
  padding: 2px 4px;
  font-size: 0.7em;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
}
.page .question-form .fields span.error + label {
  display: inline-block;
  opacity: 0;
  z-index: -1;
}
.page .question-form .fields input, .page .question-form .fields textarea {
  padding: 12px 12px 12px 12px;
}
.page .question-form .fields label {
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
}
.page .question-form .fields input:focus, .page .question-form .fields textarea:focus {
  padding: 4px 6px 20px 6px;
}
.page .question-form .fields input:focus + span.error, .page .question-form .fields textarea:focus + span.error {
  display: none;
}
.page .question-form .fields input:focus + label, .page .question-form .fields textarea:focus + label,
.page .question-form .fields input:focus + span.error + label, .page .question-form .fields textarea:focus + span.error + label {
  display: inline-block;
  top: 100%;
  margin-top: -16px;
  opacity: 1;
  z-index: 1;
}
.page .question-form .submit-block {
  text-align: center;
  padding: 1em;
}
.page .question-form .submit-block a {
  border: 3px solid #fff;
  color: #fff;
  background: #0161ce;
}
.page .question-form .links {
  position: relative;
  display: inline-block;
  max-width: 50%;
  margin-top: 1em;
}
.page .question-form .links .fill_form_btn {
  cursor: pointer;
  text-decoration: none;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  font-weight: 600;
  margin-right: 1em;
  border-bottom-style: dotted;
}
.page .question-form .links .fill_form_btn:hover, .page .question-form .links .fill_form_btn:visited:hover {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.page .question-form .links .fill_form_btn:active, .page .question-form .links .fill_form_btn:visited:active {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.page .question-form .links .fill_form_btn:visited {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.page .question-form .links .fill_form_btn:hover, .page .question-form .links .fill_form_btn:active, .page .question-form .links .fill_form_btn:visited, .page .question-form .links .fill_form_btn:visited:hover, .page .question-form .links .fill_form_btn:visited:active {
  border-bottom-style: dotted;
}
.page .question-form .links > ul {
  position: absolute;
  display: block;
  background: #0090ff;
  left: 100%;
  top: -1em;
  padding: 1em;
  z-index: 1;
  line-height: 1.5;
}
.page .question-form .links > ul li {
  display: block;
}
.page .question-form .links > ul li a {
  cursor: pointer;
  text-decoration: none;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.page .question-form .links > ul li a:hover, .page .question-form .links > ul li a:visited:hover {
  color: #aa002d;
  border-bottom: 1px solid rgba(170, 0, 45, 0.4);
}
.page .question-form .links > ul li a:active, .page .question-form .links > ul li a:visited:active {
  color: rgba(170, 0, 45, 0.2);
  border-bottom: 1px solid rgba(170, 0, 45, 0);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.page .question-form .links > ul li a:visited {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
@media (min-width: 768px) {
  .page .question-form.compact {
    margin: 0 25%;
  }
}
.page .question-form a {
  cursor: pointer;
  text-decoration: none;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.page .question-form a:hover, .page .question-form a:visited:hover {
  color: #d7d7d7;
  border-bottom: 1px solid rgba(215, 215, 215, 0.4);
}
.page .question-form a:active, .page .question-form a:visited:active {
  color: #d7d7d7;
  border-bottom: 1px solid rgba(215, 215, 215, 0.4);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.page .question-form a:visited {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.page .question-form h2, .page .question-form .h2 {
  margin: 1em 0 0.5em 0;
}
.page .question-form h3, .page .question-form .h3 {
  margin: 1em 0 0.5em 0;
  text-transform: uppercase;
}
.page .question-form .submit-block {
  text-align: center;
}
.page .question-form .files-comment {
  margin-bottom: 1em;
  color: rgba(255, 255, 255, 0.7);
}
.page .question-form .files-loaded {
  margin-bottom: 2px;
}
.page .question-form .files-loaded .files-delete {
  background: none;
  border: 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  line-height: 18px;
  margin: 0 0 0 4px;
  padding: 0;
  vertical-align: top;
}
.page .question-form .files-loaded .files-delete:hover {
  color: #aa002d;
}
.page .question-form .captcha-block {
  margin-top: 3em;
  text-align: center;
}
.page .question-form .captcha-block .r {
  width: 320px;
  display: inline-block;
}
@media (max-width: 767px) {
  .page .question-form .captcha-block .r {
    width: 160px;
  }
}
.page .question-form .captcha-block .r .captcha-div {
  float: left;
  background: #fff url(/export/images/ajax-loader.gif) no-repeat center center;
  width: 50%;
  height: 40px;
  display: inline-block;
}
@media (max-width: 767px) {
  .page .question-form .captcha-block .r .captcha-div {
    width: 100%;
  }
}
.page .question-form .captcha-block .r .captcha-div img {
  float: left;
  width: 100%;
  height: 100%;
}
.page .question-form .captcha-block .r .fields {
  float: left;
  width: 50%;
  height: 40px;
  display: inline-block;
}
.page .question-form .captcha-block .r .fields > div {
  border: none;
}
@media (max-width: 767px) {
  .page .question-form .captcha-block .r .fields {
    width: 100%;
    margin-top: 1em;
  }
}
.page .question-form .captcha-block .r .fields input {
  height: 40px;
}
.page .question-form .captcha-block .link-div {
  margin: 1em 0;
}
.page .question-form .captcha-block .privacy {
  margin: 1em 0;
  max-width: 320px;
  color: #d7d7d7;
  font-size: 11px;
  display: inline-block;
}

.mentions-page,
.mention-detail-page {
  --mention-ink: var(--se-ink);
  --mention-blue: var(--se-blue);
  --mention-blue-deep: var(--se-ink-deep);
  --mention-orange: var(--se-orange);
  --mention-muted: var(--se-muted);
  --mention-surface: var(--se-surface);
  --mention-line: var(--se-line);
  color: var(--mention-ink);
}

.mentions-page *,
.mentions-page *::before,
.mentions-page *::after,
.mention-detail-page *,
.mention-detail-page *::before,
.mention-detail-page *::after {
  box-sizing: border-box;
}

.mentions-page h1,
.mentions-page h2,
.mentions-page h3,
.mentions-page p,
.mention-detail-page h1,
.mention-detail-page h2,
.mention-detail-page h3,
.mention-detail-page p {
  margin-top: 0;
}

.mentions-page h1,
.mentions-page h2,
.mentions-page h3,
.mention-detail-page h1,
.mention-detail-page h2,
.mention-detail-page h3 {
  color: var(--mention-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  text-transform: none;
}

.mentions-page h1,
.mention-detail-page h1 {
  margin: 0;
  padding: 0;
  color: #fff;
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
}

.mentions-page h2,
.mention-detail-page h2 {
  margin-bottom: 20px;
  font-size: clamp(2rem, 3.5vw, 3.15rem);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.02em;
}

.mentions-page h3,
.mention-detail-page h3 {
  font-size: 1.24rem;
  font-weight: 600;
  line-height: 1.3;
}

.mentions-page p,
.mention-detail-page p {
  color: var(--mention-muted);
  font-size: 1rem;
  line-height: 1.68;
}

.mentions-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--mention-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
}

.mentions-eyebrow::before {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: currentColor;
  content: "";
}

.mentions-eyebrow--light {
  color: #ff9364;
}

.mentions-button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.88rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.mentions-button:hover,
.mentions-button:focus-visible {
  text-decoration: none;
  transform: translateY(-1px);
}

.mentions-button--primary {
  background: var(--mention-orange);
  color: #fff;
}

.mentions-page a.mentions-button--primary:visited,
.mention-detail-page a.mentions-button--primary:visited {
  color: #fff;
}

.mentions-button--primary:hover,
.mentions-button--primary:focus-visible {
  background: #d95b27;
  color: #fff;
}

.mentions-button--ghost {
  border-color: rgba(255, 255, 255, 0.38);
  color: #fff;
}

.mentions-page a.mentions-button--ghost:visited,
.mention-detail-page a.mentions-button--ghost:visited {
  color: #fff;
}

.mentions-button--ghost:hover,
.mentions-button--ghost:focus-visible {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.mentions-button:focus-visible,
.mention-card a:focus-visible,
.mention-years a:focus-visible,
.mention-detail-page a:focus-visible {
  outline: 3px solid rgba(237, 107, 50, 0.36);
  outline-offset: 4px;
}

.mentions-page,
.mention-detail-page {
  padding-bottom: clamp(72px, 8vw, 112px);
}

.mentions-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  min-height: 545px;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  align-items: center;
  gap: clamp(44px, 7vw, 96px);
  margin-top: 20px;
  padding: clamp(50px, 7vw, 86px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 90% 8%, rgba(78, 158, 197, 0.3), transparent 34%), linear-gradient(132deg, #0c283e 0%, #153f5a 62%, #1c5674 100%);
}

.mentions-hero::after,
.mention-detail-hero::after,
.mentions-closing::after {
  position: absolute;
  right: -165px;
  bottom: -245px;
  width: 560px;
  height: 560px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
}

.mentions-hero__copy,
.mentions-hero__note {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.mentions-hero__copy .mentions-eyebrow {
  margin-bottom: 22px;
}

.mentions-hero__copy h1 {
  max-width: 760px;
  margin-bottom: 26px;
  font-size: clamp(2.9rem, 3.6vw, 3.65rem);
}

.mentions-hero__copy > p {
  max-width: 730px;
  margin-bottom: 30px;
  color: rgba(231, 240, 244, 0.86);
  font-size: clamp(1.08rem, 1.45vw, 1.27rem);
  line-height: 1.62;
}

.mentions-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.mentions-hero__note {
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--se-radius-l);
  background: rgba(5, 25, 39, 0.48);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.16);
  backdrop-filter: blur(8px);
}

.mentions-hero__note > span {
  display: block;
  margin-bottom: 12px;
  color: #ff9364;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.mentions-hero__note strong {
  display: block;
  margin-bottom: 16px;
  color: #fff;
  font-size: clamp(2.1rem, 3vw, 3rem);
  line-height: 1.1;
}

.mentions-hero__note p {
  margin-bottom: 0;
  color: rgba(226, 238, 243, 0.75);
}

.mentions-archive {
  padding-top: clamp(74px, 8vw, 108px);
  scroll-margin-top: 92px;
}

.mentions-section-heading,
.mention-detail-section-heading {
  max-width: 830px;
  margin-bottom: 42px;
}

.mentions-section-heading .mentions-eyebrow,
.mention-detail-section-heading .mentions-eyebrow {
  margin-bottom: 18px;
}

.mentions-section-heading p {
  max-width: 710px;
  margin-bottom: 0;
  font-size: 1.07rem;
}

.mention-years {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-bottom: 64px;
  padding: 18px 22px;
  border: 1px solid var(--mention-line);
  border-radius: var(--se-radius-m);
  background: var(--mention-surface);
}

.mention-years__label {
  flex: 0 0 auto;
  color: var(--mention-muted);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.mention-years__links {
  display: flex;
  overflow-x: auto;
  align-items: center;
  gap: 8px;
  padding: 2px;
  scrollbar-width: thin;
}

.mention-years a {
  display: inline-flex;
  min-width: 64px;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  padding: 7px 12px;
  border: 1px solid #d6e1e6;
  border-radius: var(--se-radius-s);
  background: #fff;
  color: var(--mention-blue);
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
}

.mention-years a:hover {
  border-color: var(--mention-orange);
  color: var(--mention-orange);
  text-decoration: none;
}

.mention-year {
  margin-bottom: clamp(68px, 7vw, 92px);
  scroll-margin-top: 84px;
}

.mention-year__heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 28px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--mention-line);
}

.mention-year__heading > div > span {
  display: block;
  margin-bottom: 8px;
  color: var(--mention-orange);
  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.mention-year__heading h2 {
  margin-bottom: 0;
  color: var(--mention-blue);
}

.mention-year__heading small {
  padding-bottom: 8px;
  color: var(--mention-muted);
  font-size: 0.82rem;
}

.mention-year__grid,
.mention-related__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.mention-card {
  display: flex;
  overflow: hidden;
  min-width: 0;
  height: 100%;
  flex-direction: column;
  border: 1px solid var(--mention-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 14px 34px rgba(25, 58, 77, 0.055);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.mention-card:hover {
  border-color: #c5d6de;
  box-shadow: 0 20px 46px rgba(25, 58, 77, 0.1);
  transform: translateY(-3px);
}

.mention-card__media {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 4/3;
  padding: 18px;
  border: 0 !important;
  background: radial-gradient(circle at 84% 12%, rgba(70, 145, 183, 0.13), transparent 34%), #edf3f5;
}

.mention-card__media picture,
.mention-card__media img {
  display: block;
  width: 100%;
  height: 100%;
}

.mention-card__media img {
  object-fit: contain;
  filter: drop-shadow(0 8px 12px rgba(22, 47, 62, 0.13));
  transition: opacity 0.2s ease, transform 0.35s ease;
}

.mention-card__media img.lazy:not(.loaded) {
  opacity: 0;
}

.mention-card:hover .mention-card__media img {
  transform: scale(1.025);
}

.mention-card__body {
  display: flex;
  min-height: 202px;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 24px;
}

.mention-card__meta {
  display: flex;
  min-height: 20px;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin-bottom: 16px;
}

.mention-card__type {
  color: var(--mention-orange);
  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.mention-card time {
  color: var(--mention-muted);
  font-size: 0.78rem;
}

.mention-card h3 {
  margin: 0 0 18px;
}

.mention-card h3 a {
  color: var(--mention-ink);
  text-decoration: none;
}

.mentions-page .mention-card h3 a:visited,
.mention-detail-page .mention-card h3 a:visited {
  color: var(--mention-ink);
}

.mention-card h3 a:hover {
  color: var(--mention-orange);
  text-decoration: none;
}

.mention-card__action {
  margin-top: auto;
  align-self: flex-start;
  color: var(--mention-blue);
  font-size: 0.84rem;
  font-weight: 600;
  text-decoration-color: rgba(23, 78, 109, 0.28);
  text-underline-offset: 4px;
}

.mentions-page a.mention-card__action:visited,
.mention-detail-page a.mention-card__action:visited {
  color: var(--mention-blue);
}

.mention-card__action:hover {
  color: var(--mention-orange);
  text-decoration-color: currentColor;
}

.mentions-closing {
  position: relative;
  display: grid;
  overflow: hidden;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 48px;
  padding: clamp(42px, 6vw, 68px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 92% 0%, rgba(65, 148, 190, 0.28), transparent 34%), linear-gradient(132deg, #0c283e 0%, #174b68 100%);
}

.mentions-closing > * {
  position: relative;
  z-index: 1;
}

.mentions-closing h2 {
  margin: 16px 0 14px;
  color: #fff;
}

.mentions-closing p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(226, 237, 242, 0.78);
  font-size: 1.06rem;
}

.mention-detail-hero {
  position: relative;
  overflow: hidden;
  min-height: 390px;
  margin-top: 20px;
  padding: clamp(52px, 7vw, 82px) clamp(54px, 7vw, 86px) 120px;
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 90% 8%, rgba(78, 158, 197, 0.3), transparent 34%), linear-gradient(132deg, #0c283e 0%, #153f5a 62%, #1c5674 100%);
}

.mention-detail-hero > * {
  position: relative;
  z-index: 1;
}

.mention-detail-hero .mentions-eyebrow {
  margin-bottom: 24px;
}

.mention-detail-hero h1 {
  max-width: 1000px;
  margin-bottom: 30px;
  font-size: clamp(2.75rem, 4.7vw, 4.5rem);
  overflow-wrap: break-word;
}

.mention-detail-hero__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 24px;
  color: rgba(231, 240, 244, 0.82);
  font-size: 0.9rem;
  font-weight: 600;
}

.mention-detail-hero__meta > * + *::before {
  margin-right: 24px;
  color: #ff9364;
  content: "•";
}

.mention-document {
  position: relative;
  z-index: 2;
  width: calc(100% - 80px);
  max-width: 1080px;
  margin: -62px auto 0;
  padding: clamp(30px, 4.5vw, 48px);
  border: 1px solid var(--mention-line);
  border-radius: var(--se-radius-xl);
  background: #fff;
  box-shadow: 0 28px 70px rgba(21, 54, 72, 0.13);
}

.mention-document__heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: 30px;
}

.mention-document__heading .mentions-eyebrow {
  margin-bottom: 14px;
}

.mention-document__heading h2 {
  margin-bottom: 0;
}

.mention-document__original,
.mention-related__all {
  color: var(--mention-blue);
  font-size: 0.87rem;
  font-weight: 600;
  text-decoration-color: rgba(23, 78, 109, 0.28);
  text-underline-offset: 4px;
}

.mention-detail-page a.mention-document__original:visited,
.mention-detail-page a.mention-related__all:visited {
  color: var(--mention-blue);
}

.mention-document__original:hover,
.mention-related__all:hover {
  color: var(--mention-orange);
  text-decoration-color: currentColor;
}

.mention-document__figure {
  margin: 0;
}

.mention-document__stage {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: clamp(20px, 4vw, 52px);
  border-radius: var(--se-radius-l);
  background: radial-gradient(circle at 88% 7%, rgba(70, 145, 183, 0.12), transparent 30%), #eaf0f3;
}

.mention-document__stage picture {
  display: block;
  width: min(100%, 820px);
}

.mention-document__stage img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid #d1dce1;
  background: #fff;
  box-shadow: 0 18px 40px rgba(22, 48, 63, 0.16);
}

.mention-related {
  padding-top: clamp(76px, 8vw, 106px);
}

.mention-related__all {
  display: inline-block;
  margin-top: 28px;
}

.mention-detail-page .mentions-closing {
  margin-top: clamp(76px, 8vw, 106px);
}

@media (max-width: 1040px) {
  .mentions-hero {
    grid-template-columns: 1fr;
  }

  .mentions-hero__note {
    max-width: 650px;
  }

  .mention-year__grid,
.mention-related__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .mentions-page,
.mention-detail-page {
    padding-bottom: 64px;
  }

  .mentions-page h2,
.mention-detail-page h2 {
    font-size: clamp(1.8rem, 8.8vw, 2.5rem);
  }

  .mentions-hero {
    gap: 36px;
    min-height: 0;
    margin-top: 12px;
    padding: 38px 24px 24px;
    border-radius: var(--se-radius-l);
  }

  .mentions-hero__copy h1 {
    font-size: clamp(1.95rem, 8.2vw, 2.5rem);
    line-height: 1.04;
    letter-spacing: -0.02em;
    overflow-wrap: break-word;
  }

  .mentions-hero__copy > p {
    font-size: 1.04rem;
  }

  .mentions-hero__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .mentions-button {
    width: 100%;
  }

  .mentions-hero__note {
    padding: 24px 20px;
  }

  .mention-years {
    display: block;
    margin-bottom: 50px;
    padding: 16px;
  }

  .mention-years__label {
    display: block;
    margin-bottom: 12px;
  }

  .mention-year__heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }

  .mention-year__heading small {
    padding-bottom: 0;
  }

  .mention-year__grid,
.mention-related__grid {
    grid-template-columns: 1fr;
  }

  .mention-card__body {
    min-height: 0;
  }

  .mentions-closing {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 38px 24px;
    border-radius: var(--se-radius-l);
  }

  .mention-detail-hero {
    min-height: 330px;
    margin-top: 12px;
    padding: 38px 24px 100px;
    border-radius: var(--se-radius-l);
  }

  .mention-detail-hero h1 {
    font-size: clamp(1.95rem, 8.2vw, 2.55rem);
    line-height: 1.04;
  }

  .mention-detail-hero__meta {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }

  .mention-detail-hero__meta > * + *::before {
    display: none;
  }

  .mention-document {
    width: calc(100% - 24px);
    margin-top: -62px;
    padding: 24px;
    border-radius: var(--se-radius-l);
  }

  .mention-document__heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 18px;
  }

  .mention-document__original {
    width: 100%;
    padding: 12px 10px;
    border: 1px solid var(--mention-line);
    border-radius: var(--se-radius-s);
    font-size: 0.78rem;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
  }

  .mention-document__stage {
    padding: 12px;
    border-radius: var(--se-radius-m);
  }
}
@media (prefers-reduced-motion: reduce) {
  .mentions-button,
.mention-card,
.mention-card__media img {
    transition: none;
  }
}
.courts-page {
  --courts-ink: var(--se-ink);
  --courts-blue: var(--se-blue);
  --courts-blue-deep: var(--se-ink-deep);
  --courts-orange: var(--se-orange);
  --courts-muted: var(--se-muted);
  --courts-surface: var(--se-surface);
  --courts-line: var(--se-line);
  padding-bottom: clamp(72px, 8vw, 112px);
  color: var(--courts-ink);
}

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

.courts-page h1,
.courts-page h2,
.courts-page h3,
.courts-page p {
  margin-top: 0;
}

.courts-page h1,
.courts-page h2,
.courts-page h3 {
  color: var(--courts-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  text-transform: none;
}

.courts-page h1 {
  margin: 0 0 26px;
  padding: 0;
  color: #fff;
  font-size: clamp(2.65rem, 3.45vw, 3.65rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.02;
}

.courts-page h2 {
  margin-bottom: 20px;
  font-size: clamp(2rem, 3.5vw, 3.15rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.08;
}

.courts-page h3 {
  margin-bottom: 0;
  font-size: clamp(1.35rem, 2.2vw, 1.85rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.courts-page p {
  color: var(--courts-muted);
  font-size: 1rem;
  line-height: 1.68;
}

.courts-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--courts-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
}

.courts-eyebrow::before {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: currentColor;
  content: "";
}

.courts-eyebrow--light {
  color: #ff9364;
}

.courts-button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.88rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.courts-button:hover,
.courts-button:focus-visible {
  text-decoration: none;
  transform: translateY(-1px);
}

.courts-button--primary,
.courts-page a.courts-button--primary:visited {
  background: var(--courts-orange);
  color: #fff;
}

.courts-button--primary:hover,
.courts-button--primary:focus-visible {
  background: #d95b27;
  color: #fff;
}

.courts-button--ghost,
.courts-page a.courts-button--ghost:visited {
  border-color: rgba(255, 255, 255, 0.38);
  color: #fff;
}

.courts-button--ghost:hover,
.courts-button--ghost:focus-visible {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.courts-button:focus-visible,
.court-source:focus-visible,
.courts-page a:focus-visible {
  outline: 3px solid rgba(237, 107, 50, 0.36);
  outline-offset: 4px;
}

.courts-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  min-height: 545px;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  align-items: center;
  gap: clamp(44px, 7vw, 96px);
  margin-top: 20px;
  padding: clamp(50px, 7vw, 86px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 90% 8%, rgba(78, 158, 197, 0.3), transparent 34%), linear-gradient(132deg, #0c283e 0%, #153f5a 62%, #1c5674 100%);
}

.courts-hero::after,
.courts-closing::after {
  position: absolute;
  right: -165px;
  bottom: -245px;
  width: 560px;
  height: 560px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
}

.courts-hero__copy,
.courts-hero__note {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.courts-hero__copy .courts-eyebrow {
  margin-bottom: 22px;
}

.courts-hero__copy > p {
  max-width: 730px;
  margin-bottom: 30px;
  color: rgba(231, 240, 244, 0.88);
  font-size: clamp(1.06rem, 1.4vw, 1.23rem);
  line-height: 1.62;
}

.courts-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.courts-hero__note {
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--se-radius-l);
  background: rgba(5, 25, 39, 0.48);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.16);
  backdrop-filter: blur(8px);
}

.courts-hero__note > span {
  display: block;
  margin-bottom: 12px;
  color: #ff9364;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.courts-hero__note strong {
  display: block;
  margin-bottom: 16px;
  color: #fff;
  font-size: clamp(1.5rem, 2.25vw, 2.05rem);
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.courts-hero__note p {
  margin-bottom: 0;
  color: rgba(231, 240, 244, 0.76);
  line-height: 1.6;
}

.courts-context {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  align-items: center;
  gap: clamp(42px, 7vw, 94px);
  margin-top: clamp(24px, 3.5vw, 46px);
  padding: clamp(38px, 5vw, 64px);
  border: 1px solid var(--courts-line);
  border-radius: var(--se-radius-xl);
  background: var(--courts-surface);
}

.courts-context > div,
.courts-context > aside {
  min-width: 0;
}

.courts-context .courts-eyebrow,
.courts-section-heading .courts-eyebrow {
  margin-bottom: 18px;
}

.courts-context > div > p {
  max-width: 760px;
  margin-bottom: 0;
  font-size: 1.04rem;
}

.courts-context > aside {
  padding: 26px 28px;
  border-left: 3px solid var(--courts-orange);
  border-radius: 0 var(--se-radius-m) var(--se-radius-m) 0;
  background: #fff;
  box-shadow: 0 12px 30px rgba(16, 43, 66, 0.07);
}

.courts-context > aside strong {
  display: block;
  margin-bottom: 10px;
  color: var(--courts-ink);
  font-size: 1.08rem;
  line-height: 1.35;
}

.courts-context > aside p {
  margin-bottom: 0;
  font-size: 0.94rem;
  line-height: 1.58;
}

.courts-sources {
  padding-top: clamp(68px, 7vw, 96px);
  scroll-margin-top: 92px;
}

.courts-section-heading {
  max-width: 780px;
  margin-bottom: clamp(38px, 5vw, 58px);
}

.courts-section-heading p {
  margin-bottom: 0;
  font-size: 1.04rem;
}

.court-group + .court-group {
  margin-top: clamp(60px, 7vw, 90px);
}

.court-group__heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--courts-line);
}

.court-group__heading > span {
  flex: 0 0 auto;
  color: var(--courts-muted);
  font-size: 0.82rem;
  font-weight: 600;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.court-group__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.court-source,
.courts-page a.court-source:visited {
  display: flex;
  min-width: 0;
  min-height: 116px;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 24px;
  border: 1px solid var(--courts-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 8px 24px rgba(16, 43, 66, 0.04);
  color: var(--courts-ink);
  text-decoration: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.court-source:hover,
.court-source:focus-visible {
  border-color: rgba(237, 107, 50, 0.72);
  box-shadow: 0 14px 34px rgba(16, 43, 66, 0.1);
  color: var(--courts-ink);
  text-decoration: none;
  transform: translateY(-2px);
}

.court-source strong {
  color: inherit;
  font-size: 1.02rem;
  font-weight: 600;
  line-height: 1.4;
}

.court-source > span {
  color: var(--courts-blue);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.035em;
  line-height: 1.3;
}

.court-source:hover > span,
.court-source:focus-visible > span {
  color: var(--courts-orange);
}

.courts-closing {
  position: relative;
  display: grid;
  overflow: hidden;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(32px, 7vw, 92px);
  margin-top: clamp(68px, 7vw, 96px);
  padding: clamp(38px, 5vw, 62px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 90% 10%, rgba(78, 158, 197, 0.24), transparent 34%), linear-gradient(132deg, var(--courts-blue-deep) 0%, #174c68 100%);
}

.courts-closing > * {
  position: relative;
  z-index: 1;
}

.courts-closing .courts-eyebrow {
  margin-bottom: 17px;
}

.courts-closing h2 {
  max-width: 730px;
  margin-bottom: 16px;
  color: #fff;
  font-size: clamp(1.85rem, 3vw, 2.8rem);
}

.courts-closing p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(231, 240, 244, 0.8);
  font-size: 1.02rem;
}

.courts-closing > .courts-button {
  min-width: 228px;
}

@media (max-width: 1040px) {
  .courts-hero,
.courts-context {
    grid-template-columns: minmax(0, 1fr);
  }

  .courts-hero {
    min-height: 0;
  }

  .courts-hero__note {
    max-width: 580px;
  }
}
@media (max-width: 760px) {
  .courts-page {
    padding-bottom: 72px;
  }

  .courts-hero {
    gap: 34px;
    margin-top: 12px;
    padding: 34px 24px;
    border-radius: var(--se-radius-l);
  }

  .courts-page h1 {
    font-size: clamp(1.95rem, 8.2vw, 2.45rem);
    letter-spacing: -0.02em;
    line-height: 1.06;
    overflow-wrap: anywhere;
  }

  .courts-hero__copy > p {
    font-size: 1rem;
  }

  .courts-hero__actions {
    flex-direction: column;
  }

  .courts-hero__actions .courts-button {
    width: 100%;
  }

  .courts-hero__note {
    padding: 24px;
  }

  .courts-context {
    gap: 30px;
    padding: 30px 24px;
    border-radius: var(--se-radius-l);
  }

  .courts-context > aside {
    padding: 22px;
  }

  .courts-sources {
    padding-top: 72px;
  }

  .court-group__heading {
    display: block;
  }

  .court-group__heading h3 {
    margin-bottom: 10px;
  }

  .court-group__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .court-source {
    min-height: 108px;
    padding: 20px;
  }

  .courts-closing {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    margin-top: 72px;
    padding: 34px 24px;
    border-radius: var(--se-radius-l);
  }

  .courts-closing > .courts-button {
    width: 100%;
    min-width: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .courts-button,
.court-source {
    transition: none;
  }
}
.expertise-catalog-page {
  --expertise-catalog-ink: var(--se-ink);
  --expertise-catalog-blue: var(--se-blue);
  --expertise-catalog-blue-deep: var(--se-ink-deep);
  --expertise-catalog-orange: var(--se-orange);
  --expertise-catalog-muted: var(--se-muted);
  --expertise-catalog-surface: var(--se-surface);
  --expertise-catalog-line: var(--se-line);
  padding-bottom: clamp(72px, 8vw, 112px);
  color: var(--expertise-catalog-ink);
}

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

.expertise-catalog-page [hidden] {
  display: none !important;
}

.expertise-catalog-page h1,
.expertise-catalog-page h2,
.expertise-catalog-page h3,
.expertise-catalog-page p {
  margin-top: 0;
}

.expertise-catalog-page h1,
.expertise-catalog-page h2,
.expertise-catalog-page h3 {
  color: var(--expertise-catalog-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  text-transform: none;
}

.expertise-catalog-page h1 {
  margin: 0 0 26px;
  padding: 0;
  color: #fff;
  font-size: clamp(2.85rem, 4vw, 4.15rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.02;
}

.expertise-catalog-page h2 {
  margin-bottom: 20px;
  font-size: clamp(2rem, 3.5vw, 3.15rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.08;
}

.expertise-catalog-page h3 {
  font-size: 1.35rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.25;
}

.expertise-catalog-page p {
  color: var(--expertise-catalog-muted);
  font-size: 1rem;
  line-height: 1.68;
}

.expertise-catalog-visually-hidden {
  position: absolute;
  overflow: hidden;
  width: 1px;
  height: 1px;
  padding: 0;
  border: 0;
  margin: -1px;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.expertise-catalog-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--expertise-catalog-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
}

.expertise-catalog-eyebrow::before {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: currentColor;
  content: "";
}

.expertise-catalog-eyebrow--light {
  color: #ff9364;
}

.expertise-catalog-button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.88rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.expertise-catalog-button:hover,
.expertise-catalog-button:focus-visible {
  text-decoration: none;
  transform: translateY(-1px);
}

.expertise-catalog-button--primary,
.expertise-catalog-page a.expertise-catalog-button--primary:visited {
  background: var(--expertise-catalog-orange);
  color: #fff;
}

.expertise-catalog-button--primary:hover,
.expertise-catalog-button--primary:focus-visible {
  background: #d95b27;
  color: #fff;
}

.expertise-catalog-button--secondary,
.expertise-catalog-page a.expertise-catalog-button--secondary:visited {
  border-color: var(--expertise-catalog-blue);
  color: var(--expertise-catalog-blue);
}

.expertise-catalog-button--secondary:hover,
.expertise-catalog-button--secondary:focus-visible {
  background: var(--expertise-catalog-blue);
  color: #fff;
}

.expertise-catalog-button:focus-visible,
.expertise-search input:focus-visible,
.expertise-search__clear:focus-visible,
.expertise-scenario:focus-visible,
.expertise-group__summary:focus-visible,
.expertise-group--direct:focus-visible,
.expertise-catalog-item:focus-visible,
.expertise-search-result:focus-visible,
.expertise-group__overview:focus-visible {
  outline: 3px solid rgba(237, 107, 50, 0.38);
  outline-offset: 4px;
}

.expertise-catalog-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  overflow: clip;
  min-height: 570px;
  grid-template-columns: minmax(0, 1fr) minmax(290px, 360px);
  align-items: center;
  gap: clamp(44px, 7vw, 96px);
  margin-top: 20px;
  padding: clamp(50px, 7vw, 86px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 90% 8%, rgba(78, 158, 197, 0.31), transparent 34%), linear-gradient(132deg, #0c283e 0%, #153f5a 62%, #1c5674 100%);
}

.expertise-catalog-hero::after,
.expertise-catalog-closing::after {
  position: absolute;
  right: -165px;
  bottom: -245px;
  width: 560px;
  height: 560px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
}

.expertise-catalog-hero__copy,
.expertise-catalog-hero__help {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.expertise-catalog-hero__copy .expertise-catalog-eyebrow {
  margin-bottom: 22px;
}

.expertise-catalog-hero__copy > p {
  max-width: 720px;
  margin-bottom: 30px;
  color: rgba(231, 240, 244, 0.88);
  font-size: clamp(1.06rem, 1.4vw, 1.23rem);
  line-height: 1.62;
}

.expertise-search {
  max-width: 690px;
}

.expertise-search__field {
  position: relative;
  display: flex;
  min-height: 62px;
  align-items: center;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: var(--se-radius-m);
  background: #fff;
  box-shadow: 0 18px 46px rgba(0, 0, 0, 0.17);
}

.expertise-search__icon {
  position: relative;
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  margin-left: 21px;
  border: 2px solid var(--expertise-catalog-blue);
  border-radius: 50%;
}

.expertise-search__icon::after {
  position: absolute;
  right: -6px;
  bottom: -4px;
  width: 8px;
  height: 2px;
  background: var(--expertise-catalog-blue);
  content: "";
  transform: rotate(45deg);
  transform-origin: left center;
}

.expertise-search input {
  width: 100%;
  min-width: 0;
  height: 60px;
  padding: 0 48px 0 17px;
  border: 0;
  border-radius: var(--se-radius-m);
  outline: 0;
  background: transparent;
  color: var(--expertise-catalog-ink);
  font: 500 1rem/1.35 "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.expertise-search input::placeholder {
  color: #7c8b96;
  opacity: 1;
}

.expertise-search input::-webkit-search-cancel-button {
  display: none;
}

.expertise-search__clear {
  position: absolute;
  top: 50%;
  right: 15px;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--expertise-catalog-surface);
  cursor: pointer;
  transform: translateY(-50%);
}

.expertise-search__clear::before,
.expertise-search__clear::after {
  position: absolute;
  top: 15px;
  left: 9px;
  width: 14px;
  height: 2px;
  background: var(--expertise-catalog-blue);
  content: "";
}

.expertise-search__clear::before {
  transform: rotate(45deg);
}

.expertise-search__clear::after {
  transform: rotate(-45deg);
}

.expertise-search .expertise-search__hint {
  min-height: 22px;
  margin: 11px 2px 0;
  color: rgba(231, 240, 244, 0.68);
  font-size: 0.82rem;
  line-height: 1.5;
}

.expertise-catalog-hero__help {
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--se-radius-l);
  background: rgba(5, 25, 39, 0.48);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.16);
  backdrop-filter: blur(8px);
}

.expertise-catalog-hero__help > span {
  display: block;
  margin-bottom: 12px;
  color: #ff9364;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  line-height: 1.45;
  text-transform: uppercase;
}

.expertise-catalog-hero__help strong {
  display: block;
  margin-bottom: 16px;
  color: #fff;
  font-size: clamp(1.55rem, 2.3vw, 2.08rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.expertise-catalog-hero__help p {
  margin-bottom: 24px;
  color: rgba(231, 240, 244, 0.78);
  line-height: 1.6;
}

.expertise-scenarios {
  margin-top: clamp(24px, 3.5vw, 46px);
  padding: clamp(40px, 5vw, 64px);
  border: 1px solid var(--expertise-catalog-line);
  border-radius: var(--se-radius-xl);
  background: var(--expertise-catalog-surface);
}

.expertise-catalog-section-heading {
  max-width: 790px;
  margin-bottom: clamp(34px, 4vw, 48px);
}

.expertise-catalog-section-heading .expertise-catalog-eyebrow {
  margin-bottom: 18px;
}

.expertise-catalog-section-heading p {
  margin-bottom: 0;
  font-size: 1.04rem;
}

.expertise-scenarios__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.expertise-scenario {
  position: relative;
  display: flex;
  min-height: 142px;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 22px;
  border: 1px solid var(--expertise-catalog-line);
  border-radius: var(--se-radius-m);
  background: #fff;
  box-shadow: 0 8px 24px rgba(16, 43, 66, 0.04);
  color: var(--expertise-catalog-ink);
  cursor: pointer;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.expertise-scenario::after {
  color: var(--expertise-catalog-orange);
  content: "→";
  font-size: 1rem;
  font-weight: 700;
}

.expertise-scenario:hover,
.expertise-scenario.is-active {
  border-color: rgba(237, 107, 50, 0.72);
  box-shadow: 0 14px 30px rgba(16, 43, 66, 0.09);
  transform: translateY(-2px);
}

.expertise-scenario strong {
  display: block;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.32;
}

.expertise-scenario span {
  color: var(--expertise-catalog-muted);
  font-size: 0.86rem;
  line-height: 1.48;
}

.expertise-catalog {
  padding-top: clamp(76px, 9vw, 124px);
  scroll-margin-top: 92px;
}

.expertise-search-results {
  margin-bottom: 34px;
  scroll-margin-top: 84px;
}

.expertise-search-results__heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 22px;
  margin-bottom: 22px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--expertise-catalog-line);
}

.expertise-search-results__heading h3 {
  margin-bottom: 0;
}

.expertise-search-results__heading > span {
  color: var(--expertise-catalog-muted);
  font-size: 0.83rem;
  font-weight: 600;
}

.expertise-search-results__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.expertise-search-result,
.expertise-catalog-page a.expertise-search-result:visited {
  position: relative;
  display: grid;
  min-height: 112px;
  grid-template-columns: minmax(0, 1fr) auto;
  align-content: center;
  gap: 8px 20px;
  padding: 21px 54px 21px 22px;
  border: 1px solid var(--expertise-catalog-line);
  border-radius: var(--se-radius-m);
  background: #fff;
  color: var(--expertise-catalog-ink);
  text-decoration: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.expertise-search-result:hover,
.expertise-search-result:focus-visible {
  border-color: rgba(237, 107, 50, 0.72);
  box-shadow: 0 13px 30px rgba(16, 43, 66, 0.09);
  color: var(--expertise-catalog-ink);
  text-decoration: none;
  transform: translateY(-2px);
}

.expertise-search-result strong,
.expertise-search-result > span:not(.expertise-search-result__arrow) {
  grid-column: 1;
}

.expertise-search-result strong {
  font-size: 1rem;
  line-height: 1.38;
}

.expertise-search-result > span:not(.expertise-search-result__arrow) {
  color: var(--expertise-catalog-muted);
  font-size: 0.79rem;
  line-height: 1.45;
}

.expertise-search-result__arrow {
  position: absolute;
  top: 50%;
  right: 22px;
  color: var(--expertise-catalog-orange);
  font-size: 1.15rem;
  font-weight: 700;
  transform: translateY(-50%);
}

.expertise-search-results__empty {
  padding: clamp(30px, 5vw, 54px);
  border: 1px solid var(--expertise-catalog-line);
  border-radius: var(--se-radius-l);
  background: var(--expertise-catalog-surface);
  text-align: center;
}

.expertise-search-results__empty strong {
  display: block;
  margin-bottom: 10px;
  color: var(--expertise-catalog-ink);
  font-size: 1.35rem;
}

.expertise-search-results__empty p {
  max-width: 620px;
  margin: 0 auto 22px;
}

.expertises-groups {
  counter-reset: expertise-group;
}

.expertise-group {
  counter-increment: expertise-group;
  display: block;
  margin-bottom: 14px;
  border: 1px solid var(--expertise-catalog-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 8px 24px rgba(16, 43, 66, 0.035);
}

.expertise-group__summary {
  display: grid;
  min-height: 88px;
  grid-template-columns: 54px minmax(0, 1fr) auto 34px;
  align-items: center;
  gap: 20px;
  padding: 18px 24px;
  border-radius: var(--se-radius-l);
  cursor: pointer;
  list-style: none;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.expertise-group__summary::-webkit-details-marker {
  display: none;
}

.expertise-group__summary::before,
.expertise-group--direct::before {
  display: inline-flex;
  width: 46px;
  height: 46px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--expertise-catalog-surface);
  color: var(--expertise-catalog-blue);
  content: counter(expertise-group, decimal-leading-zero);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.05em;
}

.expertise-group__summary:hover {
  background: #f8fbfc;
}

.expertise-group[open] {
  border-color: rgba(23, 78, 109, 0.32);
  box-shadow: 0 17px 42px rgba(16, 43, 66, 0.09);
}

.expertise-group[open] .expertise-group__summary {
  border-radius: var(--se-radius-l) var(--se-radius-l) 0 0;
  background: var(--expertise-catalog-surface);
}

.expertise-group__title {
  color: var(--expertise-catalog-ink);
  font-size: clamp(1.04rem, 1.7vw, 1.3rem);
  font-weight: 600;
  letter-spacing: -0.012em;
  line-height: 1.3;
}

.expertise-group__count {
  color: var(--expertise-catalog-muted);
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.expertise-group__toggle {
  position: relative;
  width: 30px;
  height: 30px;
  border: 1px solid var(--expertise-catalog-line);
  border-radius: 50%;
}

.expertise-group__toggle::before,
.expertise-group__toggle::after {
  position: absolute;
  top: 14px;
  left: 8px;
  width: 12px;
  height: 2px;
  background: var(--expertise-catalog-blue);
  content: "";
  transition: transform 0.2s ease;
}

.expertise-group__toggle::after {
  transform: rotate(90deg);
}

.expertise-group[open] .expertise-group__toggle::after {
  transform: rotate(0);
}

.expertise-group__body {
  padding: 28px 30px 32px;
  border-top: 1px solid var(--expertise-catalog-line);
}

.expertise-group__description {
  max-width: 820px;
  margin-bottom: 14px;
  font-size: 1.02rem;
}

.expertise-group__overview,
.expertise-catalog-page a.expertise-group__overview:visited {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 26px;
  border-bottom: 1px solid rgba(23, 78, 109, 0.28);
  color: var(--expertise-catalog-blue);
  font-size: 0.84rem;
  font-weight: 600;
  text-decoration: none;
}

.expertise-group__overview:hover,
.expertise-group__overview:focus-visible {
  border-color: var(--expertise-catalog-orange);
  color: var(--expertise-catalog-orange);
  text-decoration: none;
}

.expertise-group__items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.expertise-catalog-item,
.expertise-catalog-page a.expertise-catalog-item:visited {
  display: flex;
  min-width: 0;
  min-height: 92px;
  flex-direction: column;
  justify-content: center;
  gap: 7px;
  padding: 18px 20px;
  border: 1px solid var(--expertise-catalog-line);
  border-radius: var(--se-radius-m);
  background: #fff;
  color: var(--expertise-catalog-ink);
  text-decoration: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.expertise-catalog-item:hover,
.expertise-catalog-item:focus-visible {
  border-color: rgba(237, 107, 50, 0.68);
  box-shadow: 0 11px 26px rgba(16, 43, 66, 0.08);
  color: var(--expertise-catalog-ink);
  text-decoration: none;
  transform: translateY(-2px);
}

.expertise-catalog-item strong {
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.38;
}

.expertise-catalog-item span {
  color: var(--expertise-catalog-muted);
  font-size: 0.76rem;
  line-height: 1.42;
}

.expertise-group--direct,
.expertise-catalog-page a.expertise-group--direct:visited {
  display: grid;
  min-height: 104px;
  grid-template-columns: 54px minmax(0, 1fr) auto 34px;
  align-items: center;
  gap: 20px;
  padding: 22px 24px;
  color: var(--expertise-catalog-ink);
  text-decoration: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.expertise-group--direct:hover,
.expertise-group--direct:focus-visible {
  border-color: rgba(237, 107, 50, 0.72);
  box-shadow: 0 14px 34px rgba(16, 43, 66, 0.09);
  color: var(--expertise-catalog-ink);
  text-decoration: none;
  transform: translateY(-2px);
}

.expertise-group__direct-copy {
  min-width: 0;
}

.expertise-group__direct-copy strong,
.expertise-group__direct-copy > span {
  display: block;
}

.expertise-group__direct-copy strong {
  margin-bottom: 7px;
  font-size: clamp(1.04rem, 1.7vw, 1.3rem);
  font-weight: 600;
  letter-spacing: -0.012em;
  line-height: 1.3;
}

.expertise-group__direct-copy > span {
  max-width: 760px;
  color: var(--expertise-catalog-muted);
  font-size: 0.85rem;
  line-height: 1.48;
}

.expertise-group__direct-arrow {
  color: var(--expertise-catalog-orange);
  font-size: 1.05rem;
  font-weight: 700;
}

.expertise-catalog-closing {
  position: relative;
  display: grid;
  overflow: hidden;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(32px, 7vw, 92px);
  margin-top: clamp(76px, 9vw, 124px);
  padding: clamp(38px, 5vw, 62px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 90% 10%, rgba(78, 158, 197, 0.24), transparent 34%), linear-gradient(132deg, var(--expertise-catalog-blue-deep) 0%, #174c68 100%);
}

.expertise-catalog-closing > * {
  position: relative;
  z-index: 1;
}

.expertise-catalog-closing .expertise-catalog-eyebrow {
  margin-bottom: 17px;
}

.expertise-catalog-closing h2 {
  max-width: 760px;
  margin-bottom: 16px;
  color: #fff;
  font-size: clamp(1.85rem, 3vw, 2.8rem);
}

.expertise-catalog-closing p {
  max-width: 780px;
  margin-bottom: 0;
  color: rgba(231, 240, 244, 0.8);
  font-size: 1.02rem;
}

.expertise-catalog-closing > .expertise-catalog-button {
  min-width: 205px;
}

@media (max-width: 1080px) {
  .expertise-catalog-hero {
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
  }

  .expertise-catalog-hero__help {
    max-width: 620px;
  }

  .expertise-scenarios__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .expertise-catalog-page {
    padding-bottom: 72px;
  }

  .expertise-catalog-hero {
    gap: 34px;
    margin-top: 12px;
    padding: 34px 24px;
    border-radius: var(--se-radius-l);
  }

  .expertise-catalog-page h1 {
    font-size: clamp(2.05rem, 9vw, 2.6rem);
    letter-spacing: -0.02em;
    line-height: 1.06;
    overflow-wrap: anywhere;
  }

  .expertise-catalog-hero__copy > p {
    font-size: 1rem;
  }

  .expertise-search__field {
    min-height: 58px;
  }

  .expertise-search input {
    height: 56px;
    padding-left: 13px;
    font-size: 0.91rem;
  }

  .expertise-search__icon {
    margin-left: 17px;
  }

  .expertise-catalog-hero__help {
    padding: 24px;
  }

  .expertise-catalog-hero__help .expertise-catalog-button {
    width: 100%;
  }

  .expertise-scenarios {
    padding: 30px 24px;
    border-radius: var(--se-radius-l);
  }

  .expertise-scenarios__grid,
.expertise-search-results__grid,
.expertise-group__items {
    grid-template-columns: minmax(0, 1fr);
  }

  .expertise-scenario {
    min-height: 126px;
    padding: 20px;
  }

  .expertise-catalog {
    padding-top: 72px;
  }

  .expertise-search-results__heading {
    display: block;
  }

  .expertise-search-results__heading h3 {
    margin-bottom: 7px;
  }

  .expertise-group__summary {
    min-height: 104px;
    grid-template-columns: 42px minmax(0, 1fr) 30px;
    gap: 14px;
    padding: 17px 16px;
  }

  .expertise-group__summary::before,
.expertise-group--direct::before {
    width: 38px;
    height: 38px;
  }

  .expertise-group__summary .expertise-group__count {
    grid-column: 2;
    margin-top: -8px;
  }

  .expertise-group__toggle {
    grid-column: 3;
    grid-row: 1/span 2;
  }

  .expertise-group__body {
    padding: 24px 18px 26px;
  }

  .expertise-group__overview {
    margin-bottom: 22px;
  }

  .expertise-catalog-item {
    min-height: 88px;
    padding: 17px;
  }

  .expertise-group--direct {
    min-height: 124px;
    grid-template-columns: 42px minmax(0, 1fr) 26px;
    gap: 14px;
    padding: 18px 16px;
  }

  .expertise-group--direct > .expertise-group__count {
    grid-column: 2;
    margin-top: -7px;
  }

  .expertise-group__direct-copy {
    align-self: end;
  }

  .expertise-group__direct-arrow {
    grid-column: 3;
    grid-row: 1/span 2;
  }

  .expertise-catalog-closing {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
    margin-top: 72px;
    padding: 34px 24px;
    border-radius: var(--se-radius-l);
  }

  .expertise-catalog-closing > .expertise-catalog-button {
    width: 100%;
    min-width: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .expertise-catalog-button,
.expertise-scenario,
.expertise-search-result,
.expertise-group__summary,
.expertise-group__toggle::before,
.expertise-group__toggle::after,
.expertise-group--direct,
.expertise-catalog-item {
    scroll-behavior: auto;
    transition: none;
  }
}
.licenses-catalog-page {
  --licenses-ink: var(--se-ink);
  --licenses-muted: var(--se-muted);
  --licenses-line: var(--se-line);
  --licenses-soft: var(--se-surface);
  --licenses-blue: var(--se-blue);
  --licenses-blue-dark: var(--se-ink-deep);
  --licenses-orange: var(--se-orange);
  color: var(--licenses-ink);
  padding-bottom: clamp(64px, 7vw, 88px);
}

.licenses-catalog-page h1,
.licenses-catalog-page h2,
.licenses-catalog-page h3,
.licenses-catalog-page p {
  text-align: left;
}

.licenses-catalog-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  grid-template-columns: minmax(0, 1.42fr) minmax(300px, 0.78fr);
  gap: clamp(36px, 6vw, 76px);
  align-items: center;
  margin-top: 18px;
  padding: clamp(52px, 7vw, 82px);
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: radial-gradient(circle at 92% 4%, rgba(84, 165, 203, 0.3), transparent 34%), linear-gradient(135deg, #102f46 0%, #163c56 60%, #1b4b66 100%);
  box-shadow: 0 24px 54px rgba(13, 42, 60, 0.16);
}

.licenses-catalog-hero::before {
  position: absolute;
  width: 220px;
  height: 220px;
  right: -94px;
  bottom: -116px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 50%;
  content: "";
}

.licenses-catalog-hero__copy,
.licenses-catalog-hero__note {
  position: relative;
  z-index: 1;
}

.licenses-catalog-eyebrow {
  display: block;
  margin-bottom: 18px;
  color: var(--licenses-orange);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.35;
  text-transform: uppercase;
}

.licenses-catalog-hero .licenses-catalog-eyebrow,
.licenses-catalog-cta .licenses-catalog-eyebrow {
  color: #ffb08a;
}

.licenses-catalog-hero h1 {
  max-width: 720px;
  margin: 0 0 24px;
  padding: 0;
  color: #fff;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2.55rem, 5vw, 4.45rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 0.98;
  text-transform: none;
}

.licenses-catalog-hero__lead {
  max-width: 720px;
  margin: 0;
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: clamp(1.02rem, 1.55vw, 1.2rem) !important;
  line-height: 1.62 !important;
}

.licenses-catalog-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 34px;
}

.licenses-catalog-button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.91rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.licenses-catalog-button:hover {
  transform: translateY(-1px);
}

.licenses-catalog-button--primary {
  color: #fff;
  background: var(--licenses-orange);
}

.licenses-catalog-button--primary:hover {
  color: #fff;
  background: #d95f2d;
}

.licenses-catalog-button--ghost {
  border-color: rgba(255, 255, 255, 0.28);
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
}

.licenses-catalog-button--ghost:hover {
  border-color: rgba(255, 255, 255, 0.52);
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
}

.licenses-catalog-hero__note {
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.17);
  border-radius: var(--se-radius-l);
  background: rgba(255, 255, 255, 0.09);
  box-shadow: 0 18px 34px rgba(4, 24, 37, 0.14);
  backdrop-filter: blur(8px);
}

.licenses-catalog-hero__note-mark {
  position: relative;
  display: flex;
  width: 46px;
  height: 54px;
  align-items: center;
  justify-content: center;
  margin-bottom: 23px;
  border: 1px solid rgba(255, 255, 255, 0.38);
  border-radius: var(--se-radius-xs);
  background: rgba(255, 255, 255, 0.08);
}

.licenses-catalog-hero__note-mark::before,
.licenses-catalog-hero__note-mark::after,
.licenses-catalog-hero__note-mark i {
  position: absolute;
  left: 11px;
  height: 2px;
  border-radius: 2px;
  background: #ffb08a;
  content: "";
}

.licenses-catalog-hero__note-mark::before {
  width: 22px;
  top: 17px;
}

.licenses-catalog-hero__note-mark::after {
  width: 17px;
  top: 25px;
}

.licenses-catalog-hero__note-mark i {
  width: 20px;
  top: 33px;
}

.licenses-catalog-hero__note h2 {
  margin: 0 0 14px;
  color: #fff;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.15rem;
  font-weight: 600;
  letter-spacing: -0.015em;
  line-height: 1.3;
  text-transform: none;
}

.licenses-catalog-hero__note p {
  margin: 0;
  color: rgba(255, 255, 255, 0.75) !important;
  font-size: 0.88rem !important;
  line-height: 1.56 !important;
}

.licenses-catalog-hero__note p + p {
  margin-top: 12px;
}

.licenses-catalog-trust {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: -24px 38px 0;
  border: 1px solid var(--licenses-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 16px 42px rgba(20, 51, 70, 0.09);
}

.licenses-catalog-trust > div {
  position: relative;
  min-height: 118px;
  padding: 24px 26px 22px 62px;
}

.licenses-catalog-trust > div + div {
  border-left: 1px solid var(--licenses-line);
}

.licenses-catalog-trust span {
  position: absolute;
  top: 26px;
  left: 24px;
  color: var(--licenses-orange);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.licenses-catalog-trust strong,
.licenses-catalog-trust small {
  display: block;
  text-align: left;
}

.licenses-catalog-trust strong {
  margin-bottom: 8px;
  color: var(--licenses-ink);
  font-size: 0.96rem;
  line-height: 1.3;
}

.licenses-catalog-trust small {
  color: var(--licenses-muted);
  font-size: 0.8rem;
  line-height: 1.45;
}

.licenses-catalog-documents {
  padding: clamp(68px, 7vw, 96px) 0 clamp(68px, 7vw, 96px);
}

.licenses-catalog-heading {
  max-width: 770px;
  margin: 0 0 42px;
}

.licenses-catalog-heading--compact {
  max-width: 680px;
}

.licenses-catalog-heading h2,
.licenses-catalog-cta h2 {
  margin: 0;
  color: var(--licenses-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.1rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.07;
  text-transform: none;
}

.licenses-catalog-heading p {
  max-width: 690px;
  margin: 18px 0 0;
  color: var(--licenses-muted) !important;
  font-size: 1rem !important;
  line-height: 1.65 !important;
}

.licenses-catalog-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.license-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--licenses-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 10px 28px rgba(22, 54, 73, 0.045);
  transition: border-color 0.24s ease, box-shadow 0.24s ease, transform 0.24s ease;
}

.license-card:hover {
  border-color: #aec4d0;
  box-shadow: 0 18px 40px rgba(22, 54, 73, 0.1);
  transform: translateY(-3px);
}

.license-card__link {
  display: grid;
  min-height: 308px;
  grid-template-columns: 176px minmax(0, 1fr);
  color: var(--licenses-ink);
  text-decoration: none;
}

.license-card__media,
.license-card__content,
.license-card__meta,
.license-card__action {
  display: flex;
}

.license-card__media {
  position: relative;
  min-width: 0;
  align-items: center;
  justify-content: center;
  padding: 50px 22px 36px;
  background: linear-gradient(rgba(255, 255, 255, 0.58), rgba(255, 255, 255, 0.58)), repeating-linear-gradient(135deg, #e8f0f3 0, #e8f0f3 1px, #f3f7f8 1px, #f3f7f8 12px);
}

.license-card__media picture {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
}

.license-card__image {
  display: block;
  width: auto;
  max-width: 128px;
  height: auto;
  max-height: 202px;
  border: 5px solid #fff;
  border-radius: var(--se-radius-xs);
  background: #fff;
  box-shadow: 0 10px 23px rgba(16, 46, 67, 0.18);
  object-fit: contain;
  transition: transform 0.24s ease;
}

.license-card__fallback {
  display: flex;
  width: 112px;
  height: 154px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 5px solid #fff;
  border-radius: var(--se-radius-xs);
  color: #79909d;
  background: #fff;
  box-shadow: 0 10px 23px rgba(16, 46, 67, 0.14);
}

.license-card__fallback i {
  position: relative;
  display: block;
  width: 31px;
  height: 39px;
  margin-bottom: 14px;
  border: 2px solid #9eb1bb;
  border-radius: 2px;
}

.license-card__fallback i::before,
.license-card__fallback i::after {
  position: absolute;
  left: 6px;
  height: 2px;
  border-radius: 1px;
  background: #9eb1bb;
  content: "";
}

.license-card__fallback i::before {
  width: 15px;
  top: 12px;
}

.license-card__fallback i::after {
  width: 18px;
  top: 20px;
}

.license-card__fallback b {
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.license-card__image + .license-card__fallback {
  display: none;
}

.license-card:hover .license-card__image {
  transform: scale(1.025);
}

.license-card__index,
.license-card__open {
  position: absolute;
  color: var(--licenses-blue);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.license-card__index {
  top: 19px;
  left: 20px;
}

.license-card__open {
  right: 18px;
  bottom: 17px;
  font-size: 1.05rem;
  letter-spacing: 0;
  transition: color 0.2s ease, transform 0.2s ease;
}

.license-card:hover .license-card__open {
  color: var(--licenses-orange);
  transform: translate(2px, -2px);
}

.license-card__content {
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  padding: 29px 28px 27px;
}

.license-card__meta {
  flex-wrap: wrap;
  gap: 7px 10px;
  align-items: center;
  margin-bottom: 17px;
}

.license-card__category {
  display: inline-flex;
  align-items: center;
  color: var(--licenses-blue);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.075em;
  line-height: 1.35;
  text-transform: uppercase;
}

.license-card__title {
  margin: 0 0 13px;
  color: var(--licenses-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.22rem;
  font-weight: 600;
  letter-spacing: -0.018em;
  line-height: 1.27;
  text-transform: none;
}

.license-card__description {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 0 22px;
  color: var(--licenses-muted);
  font-size: 0.87rem;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

.license-card__description > :first-child {
  margin-top: 0;
}

.license-card__description > :last-child {
  margin-bottom: 0;
}

.license-card__action {
  align-items: center;
  margin-top: auto;
  color: var(--licenses-blue);
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.35;
}

.license-card__action i {
  margin-left: 7px;
  font-style: normal;
  transition: transform 0.2s ease;
}

.license-card:hover .license-card__action {
  color: var(--licenses-orange);
}

.license-card:hover .license-card__action i {
  transform: translateX(3px);
}

.licenses-catalog-guide {
  margin: 0 -20px;
  padding: clamp(70px, 8vw, 98px) 20px;
  background: var(--licenses-soft);
}

.licenses-catalog-guide > * {
  max-width: 1160px;
  margin-right: auto;
  margin-left: auto;
}

.licenses-catalog-guide__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.licenses-catalog-guide article {
  min-height: 255px;
  padding: 30px;
  border: 1px solid var(--licenses-line);
  border-radius: var(--se-radius-l);
  background: #fff;
}

.licenses-catalog-guide article > span {
  display: inline-flex;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  margin-bottom: 24px;
  border-radius: 50%;
  color: var(--licenses-blue);
  background: #e9f1f4;
  font-size: 0.82rem;
  font-weight: 700;
}

.licenses-catalog-guide h3 {
  margin: 0 0 13px;
  color: var(--licenses-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.12rem;
  font-weight: 600;
  line-height: 1.3;
  text-transform: none;
}

.licenses-catalog-guide p {
  margin: 0;
  color: var(--licenses-muted) !important;
  font-size: 0.88rem !important;
  line-height: 1.62 !important;
}

.licenses-catalog-cta {
  position: relative;
  display: grid;
  overflow: hidden;
  isolation: isolate;
  grid-template-columns: minmax(0, 1.12fr) minmax(340px, 0.88fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: stretch;
  margin: clamp(68px, 7vw, 96px) 0 0;
  padding: clamp(48px, 6vw, 68px);
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: radial-gradient(circle at 90% 0, rgba(77, 158, 196, 0.22), transparent 30%), var(--licenses-blue-dark);
}

.licenses-catalog-cta::before {
  position: absolute;
  width: 290px;
  height: 290px;
  right: -120px;
  bottom: -180px;
  z-index: -1;
  border: 1px solid rgba(255, 255, 255, 0.11);
  border-radius: 50%;
  box-shadow: 0 0 0 54px rgba(255, 255, 255, 0.025);
  content: "";
}

.licenses-catalog-cta__copy,
.licenses-catalog-cta__panel {
  position: relative;
  z-index: 1;
}

.licenses-catalog-cta h2 {
  max-width: 650px;
  color: #fff;
}

.licenses-catalog-cta__copy > p {
  max-width: 720px;
  margin: 17px 0 0;
  color: rgba(255, 255, 255, 0.73) !important;
  font-size: 0.96rem !important;
  line-height: 1.65 !important;
}

.licenses-catalog-cta__points {
  display: grid;
  gap: 11px;
  margin: 26px 0 0;
  padding: 0;
  list-style: none;
}

.licenses-catalog-cta__points li {
  position: relative;
  margin: 0;
  padding: 0 0 0 24px;
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.9rem;
  line-height: 1.5;
}

.licenses-catalog-cta__points li::before {
  position: absolute;
  width: 7px;
  height: 7px;
  top: 0.5em;
  left: 1px;
  border-radius: 50%;
  background: #ff9b6b;
  box-shadow: 0 0 0 5px rgba(255, 155, 107, 0.1);
  content: "";
}

.licenses-catalog-cta__panel {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--se-radius-l);
  background: rgba(255, 255, 255, 0.075);
  box-shadow: 0 20px 40px rgba(4, 24, 37, 0.16);
}

.licenses-catalog-cta__panel-label {
  margin-bottom: 12px;
  color: #ffb08a;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.4;
  text-transform: uppercase;
}

.licenses-catalog-cta__panel strong {
  color: #fff;
  font-size: 1.08rem;
  line-height: 1.48;
}

.licenses-catalog-cta__panel p {
  margin: 13px 0 0;
  color: rgba(255, 255, 255, 0.7) !important;
  font-size: 0.88rem !important;
  line-height: 1.55 !important;
}

.licenses-catalog-cta__actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 12px;
  margin-top: 25px;
}

.licenses-catalog-cta__actions .licenses-catalog-button {
  width: 100%;
}

.licenses-catalog-cta__panel small {
  margin-top: 13px;
  color: rgba(255, 255, 255, 0.52);
  font-size: 0.72rem;
  line-height: 1.45;
}

.licenses-catalog-button--light {
  color: var(--licenses-blue-dark);
  background: #fff;
}

.licenses-catalog-button--light:hover {
  color: var(--licenses-blue-dark);
  background: #f4f8fa;
}

.licenses-catalog-button--outline-light {
  border-color: rgba(255, 255, 255, 0.34);
  color: #fff;
  background: transparent;
}

.licenses-catalog-button--outline-light:hover {
  border-color: rgba(255, 255, 255, 0.62);
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
}

@media (max-width: 980px) {
  .licenses-catalog-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .licenses-catalog-hero__note {
    max-width: 680px;
  }

  .licenses-catalog-trust {
    margin-right: 22px;
    margin-left: 22px;
  }

  .licenses-catalog-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .license-card__link {
    grid-template-columns: 190px minmax(0, 1fr);
  }

  .licenses-catalog-guide__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .licenses-catalog-guide article {
    min-height: 0;
  }

  .licenses-catalog-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .licenses-catalog-cta__panel {
    max-width: 640px;
  }
}
@media (max-width: 720px) {
  .licenses-catalog-page {
    padding-right: 14px;
    padding-left: 14px;
  }

  .licenses-catalog-hero {
    margin-top: 10px;
    padding: 38px 28px;
    border-radius: var(--se-radius-l);
  }

  .licenses-catalog-hero h1 {
    font-size: clamp(2.35rem, 11vw, 3.2rem);
  }

  .licenses-catalog-hero__note {
    padding: 25px;
  }

  .licenses-catalog-trust {
    grid-template-columns: minmax(0, 1fr);
    margin: 16px 0 0;
  }

  .licenses-catalog-trust > div {
    min-height: 0;
  }

  .licenses-catalog-trust > div + div {
    border-top: 1px solid var(--licenses-line);
    border-left: 0;
  }

  .licenses-catalog-guide {
    margin-right: -14px;
    margin-left: -14px;
    padding-right: 14px;
    padding-left: 14px;
  }

  .licenses-catalog-cta {
    margin-right: 0;
    margin-left: 0;
    padding: 42px 26px;
    border-radius: var(--se-radius-l);
  }

  .licenses-catalog-cta__panel {
    padding: 25px 22px;
  }
}
@media (max-width: 560px) {
  .licenses-catalog-hero__actions,
.licenses-catalog-button {
    width: 100%;
  }

  .licenses-catalog-heading {
    margin-bottom: 32px;
  }

  .license-card__link {
    grid-template-columns: minmax(0, 1fr);
  }

  .license-card__media {
    min-height: 252px;
    padding: 42px 22px 30px;
  }

  .license-card__image {
    max-width: 138px;
    max-height: 188px;
  }

  .license-card__content {
    padding: 26px 24px 25px;
  }

  .license-card__description {
    -webkit-line-clamp: 5;
  }

  .licenses-catalog-cta__actions {
    max-width: none;
    flex-direction: column;
    align-items: stretch;
  }
}
.license-page .content .descr {
  margin: 1em 0;
}

.expert-description {
  margin: 3em 0;
}
.expert-description a.img {
  display: inline-block;
  float: left;
  max-width: 25%;
  margin-right: 3em;
  margin-left: 10px;
  margin-bottom: 0.5em;
  border-radius: 50%;
}
@media (max-width: 767px) {
  .expert-description a.img {
    margin-right: 1em;
  }
}
.expert-description a.img div {
  width: 100%;
  float: left;
  border-radius: 50%;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.5);
}
.expert-description a.img div img {
  width: 100%;
  float: left;
  border-radius: 50%;
  position: relative;
  z-index: -2;
}
.expert-description a.img:hover {
  -webkit-animation: pulse 0.7s ease-out;
  animation: pulse 0.7s ease-out;
}
.expert-description .description {
  overflow: hidden;
  padding-bottom: 1em;
  border-bottom: 3px solid #0161ce;
}
@media (max-width: 767px) {
  .expert-description .description {
    overflow: inherit;
  }
}
.expert-description .description .title {
  text-transform: uppercase;
}
.expert-description .description .work {
  overflow: hidden;
  font-style: italic;
  color: #0161ce;
  padding: 1em 0;
}
.expert-description .description .lab {
  float: right;
  padding-top: 1em;
}
@media (max-width: 767px) {
  .expert-description .description .lab {
    float: none;
  }
}

.expert-photo-big {
  float: left;
  margin: 0 2em 2em 0;
}
@media (max-width: 767px) {
  .expert-photo-big {
    float: none;
    text-align: center;
    width: 100%;
  }
}
.expert-photo-big img {
  width: 100%;
  float: left;
}
@media (max-width: 767px) {
  .expert-photo-big img {
    float: none;
    width: auto;
  }
}

.labs {
  margin-top: 2em;
}
.labs .lab {
  display: inline-block;
  float: left;
  width: 33%;
  height: 7.8571428571em;
}
@media (max-width: 767px) {
  .labs .lab {
    width: 100%;
    height: 6.4285714286em;
  }
}
.labs .lab .gerb {
  float: left;
  width: 4em;
  margin-right: 1em;
  text-align: center;
}
.labs .lab .gerb img {
  max-height: 4em;
  width: auto;
  max-width: 100%;
}
.labs .lab .name {
  padding-top: 0.5em;
}
.labs .lab .name a {
  text-transform: uppercase;
}

.article-description {
  margin: 3em 0;
}
.article-description a.img {
  margin-right: 3%;
  display: inline-block;
  position: relative;
  float: left;
  width: 200px;
  max-width: 33%;
}
.article-description a.img img {
  width: 100%;
  float: left;
  cursor: pointer;
  text-decoration: none;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  border: 3px solid;
  box-shadow: 0px 2px 7px 0 rgba(0, 0, 0, 0.3);
}
.article-description a.img img:hover, .article-description a.img img:visited:hover {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.article-description a.img img:active, .article-description a.img img:visited:active {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.article-description a.img img:visited {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.article-description a.img img:active {
  border: 3px solid #fff;
}
.article-description a.img img:hover {
  border: 3px solid #fff;
}
.article-description a.img img:hover {
  box-shadow: 0px 2px 7px 0 rgba(0, 0, 0, 0.4);
}
.article-description .txt {
  overflow: hidden;
}
@media (max-width: 767px) {
  .article-description .txt {
    overflow: inherit;
  }
}
.article-description .txt h3 {
  padding: 0;
  text-transform: uppercase;
  font-size: 1.1em;
  font-weight: 600;
}
.article-description .txt .comment {
  color: #747474;
}
.article-description .txt .descr {
  margin-top: 1em;
  padding-bottom: 1em;
  border-bottom: 3px solid #0161ce;
  margin-bottom: 2em;
}
.article-description:last-child .descr {
  border-bottom: none;
  margin-bottom: 0;
}
.article-description .header-date, .article-description .date-label {
  font-size: 0.9em;
  color: #747474;
  margin: 0.5em 0;
  overflow: hidden;
}

.article-image {
  float: left;
  /*height: 250px;*/
  margin-right: 2.3333333333%;
  margin-bottom: 2em;
  position: relative;
  display: inline-block;
}
.article-image img {
  float: left;
  width: 300px;
  max-width: 100%;
}
.article-image .author {
  display: inline-block;
  background: rgba(30, 53, 96, 0.5);
  padding: 5px;
  font-size: 0.75em;
  /*9/12*/
  position: absolute;
  right: 0;
  top: 0;
  color: #aaa;
}
.article-image .description {
  clear: both;
  display: inline-block;
  float: left;
  color: #0161ce;
  font-style: italic;
  text-align: center;
  width: 300px;
  max-width: 100%;
}

.map-block {
  border-top: 2.5px dotted rgba(30, 53, 96, 0.3);
  margin: 70px 0 -40px 0;
  position: relative;
  min-height: 500px;
}
@media (max-width: 767px) {
  .map-block {
    margin-top: 0;
  }
}
.map-block #map {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.map-block .content-bg {
  width: 100%;
  min-height: 29px;
  margin: 0;
  background: url(/export/images/page-start/map-bg1.png) no-repeat;
  position: relative;
  top: 0;
  left: 0;
  z-index: 1;
}
.map-block .content-wrapper {
  margin: 0 auto;
  max-width: 1200px;
  position: relative;
  height: 100%;
}
.map-block .content-wrapper .content {
  width: 400px;
  min-height: 150px;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.8);
  position: absolute;
  top: 40px;
  left: 9.5833333333%;
  z-index: 2;
  padding: 1em;
  font-family: "PT Serif", Georgia, "Times New Roman", serif;
  border: 1px solid #fff;
}
@media (max-width: 767px) {
  .map-block .content-wrapper .content {
    left: 0;
    width: 80%;
    margin: 0 10%;
  }
}
.map-block .content-wrapper .content h2, .map-block .content-wrapper .content .h2 {
  text-transform: uppercase;
  font-size: 2.1428571429em;
  line-height: 1;
  margin-bottom: 0.5em;
}
@media (max-width: 767px) {
  .map-block .content-wrapper .content h2, .map-block .content-wrapper .content .h2 {
    font-size: 1.4285714286em;
  }
}
.map-block .content-wrapper .content i {
  font-size: 1.0714285714em;
}
@media (max-width: 767px) {
  .map-block .content-wrapper .content i {
    font-size: 0.9285714286em;
  }
}
.map-block .content-wrapper .content .addr {
  display: block;
  margin-top: 2em;
}
.map-block .content-wrapper .content .close-button {
  display: inline-block;
  position: absolute;
  top: 0.2142857143em;
  right: 0.2142857143em;
  color: #fff;
  border-bottom: none !important;
  width: 2.8571428571em;
  height: 2.8571428571em;
}
.map-block .content-wrapper .content .close-button img {
  width: 100%;
  height: 100%;
}

.sitemap-page {
  --sitemap-ink: var(--se-ink);
  --sitemap-muted: var(--se-muted);
  --sitemap-line: var(--se-line);
  --sitemap-surface: var(--se-surface);
  --sitemap-blue: var(--se-blue);
  --sitemap-orange: var(--se-orange);
  max-width: 1200px;
  margin: 0 auto;
  padding-bottom: clamp(70px, 9vw, 120px);
  color: var(--sitemap-ink);
}

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

.sitemap-hero {
  max-width: 780px;
  margin-top: 24px;
}

.sitemap-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: var(--sitemap-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  line-height: 1.3;
  text-transform: uppercase;
}

.sitemap-eyebrow::before {
  width: 32px;
  height: 2px;
  flex: 0 0 32px;
  background: currentColor;
  content: "";
}

.sitemap-page h1 {
  margin: 0 0 16px;
  padding: 0;
  color: var(--sitemap-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2.1rem, 4.2vw, 3.3rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.06;
  text-align: left;
  text-transform: none;
}

.sitemap-hero p {
  margin: 0;
  color: var(--sitemap-muted);
  font-size: 1.02rem;
  line-height: 1.62;
}

.sitemap-index {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: clamp(28px, 4vw, 40px);
}

.sitemap-index a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  padding: 9px 15px;
  border: 1px solid var(--sitemap-line);
  border-radius: var(--se-radius-s);
  color: var(--sitemap-ink);
  background: #fff;
  font-size: 0.86rem;
  font-weight: 500;
  text-decoration: none;
  transition: border-color 0.18s ease, color 0.18s ease;
}

.sitemap-index a:hover {
  border-color: var(--sitemap-orange);
  color: var(--sitemap-orange);
}

.sitemap-sections {
  display: grid;
  gap: 16px;
  margin-top: clamp(28px, 4vw, 44px);
}

.sitemap-section {
  padding: clamp(26px, 3.5vw, 40px);
  border: 1px solid var(--sitemap-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  scroll-margin-top: 92px;
}

.sitemap-page .sitemap-section h2 {
  margin: 0 0 18px;
  padding: 0;
  color: var(--sitemap-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(1.3rem, 2.2vw, 1.6rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.2;
  text-align: left;
  text-transform: none;
}

.sitemap-page ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.sitemap-page li {
  margin: 0;
}

.sitemap-links > li + li {
  margin-top: 10px;
}

.sitemap-page .sitemap-links > li > a {
  font-size: 1rem;
  font-weight: 600;
}

.sitemap-sections a,
.sitemap-sections a:visited {
  border-bottom: 1px solid transparent;
  color: var(--sitemap-blue);
  text-decoration: none;
}

.sitemap-sections a:hover {
  border-bottom-color: currentColor;
  color: var(--sitemap-orange);
}

.sitemap-page .sitemap-sublist {
  margin-top: 10px;
  padding-left: 18px;
  border-left: 1px solid var(--sitemap-line);
}

.sitemap-sublist li {
  padding: 4px 0;
  font-size: 0.92rem;
  line-height: 1.45;
}

.sitemap-sublist b {
  font-weight: 600;
}

.sitemap-page .sitemap-sublist--wide {
  margin-top: 0;
  padding-left: 0;
  border-left: 0;
}

.sitemap-sublist--wide,
.sitemap-details__body > ul:not(:has(ul)) {
  columns: 2;
  column-gap: 36px;
}

.sitemap-sublist--wide li,
.sitemap-details__body > ul:not(:has(ul)) li {
  break-inside: avoid;
}

.sitemap-details {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--sitemap-line);
}

.sitemap-details summary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--sitemap-blue);
  cursor: pointer;
  font-size: 0.88rem;
  font-weight: 600;
  list-style: none;
}

.sitemap-details summary::-webkit-details-marker {
  display: none;
}

.sitemap-details summary b {
  padding: 2px 8px;
  border-radius: 999px;
  color: var(--sitemap-muted);
  background: var(--sitemap-surface);
  font-size: 0.78rem;
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}

.sitemap-details summary::after {
  content: "↓";
}

.sitemap-details[open] summary::after {
  content: "↑";
}

.sitemap-details summary:hover {
  color: var(--sitemap-orange);
}

.sitemap-details__body {
  margin-top: 16px;
}

.sitemap-details__body > .sitemap-sublist {
  margin-top: 0;
  padding-left: 0;
  border-left: 0;
}

@media screen and (max-width: 760px) {
  .sitemap-sublist--wide,
.sitemap-details__body > ul:not(:has(ul)) {
    columns: 1;
  }
}
@media screen and (max-width: 600px) {
  .sitemap-page {
    margin-right: 10px;
    margin-left: 10px;
  }

  .sitemap-section {
    padding: 22px 18px;
  }

  .sitemap-sublist {
    padding-left: 14px;
  }
}
.faq-index-page,
.faq-group-page,
.faq-answer-page {
  --faq-ink: var(--se-ink);
  --faq-blue: var(--se-blue);
  --faq-blue-deep: var(--se-ink-deep);
  --faq-orange: var(--se-orange);
  --faq-orange-dark: var(--se-orange-action);
  --faq-muted: var(--se-muted);
  --faq-surface: var(--se-surface);
  --faq-line: var(--se-line);
  padding-bottom: clamp(68px, 8vw, 104px);
  color: var(--faq-ink);
}

.faq-index-page *,
.faq-index-page *::before,
.faq-index-page *::after,
.faq-group-page *,
.faq-group-page *::before,
.faq-group-page *::after,
.faq-answer-page *,
.faq-answer-page *::before,
.faq-answer-page *::after {
  box-sizing: border-box;
}

.faq-index-page h1,
.faq-index-page h2,
.faq-index-page h3,
.faq-index-page p,
.faq-index-page ol,
.faq-index-page ul,
.faq-index-page dl,
.faq-group-page h1,
.faq-group-page h2,
.faq-group-page p,
.faq-group-page ol,
.faq-answer-page h1,
.faq-answer-page h2,
.faq-answer-page h3,
.faq-answer-page p,
.faq-answer-page ol,
.faq-answer-page ul {
  margin-top: 0;
}

.faq-index-page h1,
.faq-index-page h2,
.faq-index-page h3,
.faq-group-page h1,
.faq-group-page h2,
.faq-answer-page h1,
.faq-answer-page h2,
.faq-answer-page h3 {
  color: var(--faq-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  text-transform: none;
}

.faq-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--faq-orange);
  font-size: 0.73rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
}

.faq-eyebrow::before {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: currentColor;
  content: "";
}

.faq-eyebrow--light {
  color: #ffad84;
}

.faq-button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 13px 23px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transform: none;
  transition: color 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.faq-button--primary {
  color: #fff;
  background: var(--faq-orange);
  box-shadow: 0 10px 25px rgba(195, 80, 31, 0.24);
}

.faq-button--primary:hover {
  border-color: transparent;
  color: #fff;
  background: var(--faq-orange-dark);
}

.faq-button--ghost {
  border-color: rgba(255, 255, 255, 0.34);
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
}

.faq-button--ghost:hover {
  border-color: rgba(255, 255, 255, 0.68);
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
}

.faq-button--light {
  color: var(--faq-blue-deep);
  background: #fff;
}

.faq-button--light:hover {
  border-color: #fff;
  color: var(--faq-blue-deep);
  background: #f3f7f9;
}

.faq-button:focus-visible,
.faq-index-page a:focus-visible,
.faq-group-page a:focus-visible,
.faq-answer-page a:focus-visible,
.faq-catalog summary:focus-visible,
.faq-catalog input:focus-visible {
  outline: 3px solid rgba(237, 107, 50, 0.38);
  outline-offset: 4px;
}

.faq-index-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  min-height: 540px;
  grid-template-columns: minmax(0, 1.35fr) minmax(330px, 0.65fr);
  align-items: center;
  gap: clamp(52px, 8vw, 100px);
  margin-top: 20px;
  padding: clamp(52px, 7vw, 84px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 92% 10%, rgba(65, 151, 193, 0.28), transparent 35%), linear-gradient(132deg, #0c283e 0%, #153f5a 62%, #1c5674 100%);
}

.faq-index-hero::after,
.faq-group-hero::after,
.faq-answer-hero::after {
  position: absolute;
  right: -170px;
  bottom: -310px;
  width: 560px;
  height: 560px;
  border: 38px solid rgba(255, 255, 255, 0.035);
  border-radius: 50%;
  content: "";
}

.faq-index-hero__copy,
.faq-index-guide,
.faq-group-hero > *,
.faq-answer-hero > * {
  position: relative;
  z-index: 1;
}

.faq-index-hero .faq-eyebrow {
  margin-bottom: 22px;
}

.faq-index-page.faq-index-page .faq-index-hero h1 {
  max-width: 780px;
  margin: 0 0 28px;
  color: #fff;
  font-size: clamp(3rem, 5.3vw, 4.75rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 0.99;
}

.faq-index-hero__copy > p {
  max-width: 720px;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: clamp(1.08rem, 1.6vw, 1.28rem);
  line-height: 1.6;
}

.faq-index-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 32px;
}

.faq-index-guide {
  padding: 34px 32px 28px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--se-radius-l);
  background: rgba(7, 30, 48, 0.43);
  backdrop-filter: blur(8px);
}

.faq-index-guide > span {
  display: block;
  margin-bottom: 18px;
  color: rgba(255, 255, 255, 0.62);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.faq-index-guide ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.faq-index-guide li {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 10px;
  padding: 17px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.faq-index-guide b {
  color: #ff9b6e;
  font-size: 0.73rem;
  letter-spacing: 0.08em;
}

.faq-index-guide p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.8);
  font-size: 0.93rem;
  line-height: 1.5;
}

.faq-entry-points,
.faq-catalog {
  margin-top: clamp(72px, 7vw, 96px);
}

.faq-section-heading {
  max-width: 820px;
  margin-bottom: 38px;
}

.faq-section-heading .faq-eyebrow {
  margin-bottom: 17px;
}

.faq-index-page.faq-index-page .faq-section-heading h2,
.faq-group-page.faq-group-page .faq-section-heading h2 {
  margin: 0 0 18px;
  font-size: clamp(2rem, 3.7vw, 3.15rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.08;
}

.faq-section-heading > p {
  max-width: 720px;
  margin-bottom: 0;
  color: var(--faq-muted);
  font-size: 1.04rem;
  line-height: 1.66;
}

.faq-entry-points__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.faq-entry-points__grid > a {
  display: flex;
  min-height: 260px;
  flex-direction: column;
  align-items: flex-start;
  padding: 30px;
  border: 1px solid var(--faq-line);
  border-radius: var(--se-radius-l);
  color: var(--faq-ink);
  background: #fff;
  box-shadow: 0 10px 28px rgba(16, 43, 66, 0.045);
  text-decoration: none;
  transform: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.faq-entry-points__grid > a:hover {
  border-color: rgba(237, 107, 50, 0.68);
  color: var(--faq-ink);
  box-shadow: 0 17px 38px rgba(16, 43, 66, 0.1);
  transform: translateY(-2px);
}

.faq-entry-points__grid > a > span {
  margin-bottom: 35px;
  color: var(--faq-orange);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.faq-entry-points__grid strong {
  margin-bottom: 13px;
  color: inherit;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.3;
}

.faq-entry-points__grid p {
  margin-bottom: 24px;
  color: var(--faq-muted);
  line-height: 1.56;
}

.faq-entry-points__grid b {
  margin-top: auto;
  color: var(--faq-blue);
  font-size: 0.83rem;
  font-weight: 600;
}

.faq-catalog {
  scroll-margin-top: 92px;
}

.faq-catalog__heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 48px;
  margin-bottom: 36px;
}

.faq-catalog__heading .faq-eyebrow {
  margin-bottom: 17px;
}

.faq-index-page.faq-index-page .faq-catalog__heading h2 {
  max-width: 800px;
  margin: 0 0 18px;
  font-size: clamp(2.1rem, 4vw, 3.35rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.06;
}

.faq-catalog__heading p {
  max-width: 720px;
  margin-bottom: 0;
  color: var(--faq-muted);
  font-size: 1.03rem;
  line-height: 1.65;
}

.faq-catalog__heading dl {
  display: flex;
  gap: 28px;
  margin: 0;
}

.faq-catalog__heading dl > div {
  min-width: 120px;
  padding-left: 18px;
  border-left: 2px solid var(--faq-orange);
}

.faq-catalog__heading dt {
  color: var(--faq-blue);
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1;
}

.faq-catalog__heading dd {
  max-width: 130px;
  margin: 7px 0 0;
  color: var(--faq-muted);
  font-size: 0.76rem;
  line-height: 1.35;
}

.faq-catalog__search {
  padding: 28px 30px 24px;
  border: 1px solid var(--faq-line);
  border-radius: var(--se-radius-l);
  background: var(--faq-surface);
}

.faq-catalog__search label > span:first-child {
  display: block;
  margin-bottom: 10px;
  color: var(--faq-ink);
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.04em;
}

.faq-catalog__search-field {
  position: relative;
  display: block;
}

.faq-catalog__search input {
  display: block;
  width: 100%;
  height: 58px;
  padding: 0 56px 0 18px;
  border: 1px solid #cbd9e0;
  border-radius: var(--se-radius-s);
  color: var(--faq-ink);
  background: #fff;
  font: inherit;
  font-size: 1rem;
}

.faq-catalog__search input::placeholder {
  color: #8998a1;
}

.faq-catalog__search-field i {
  position: absolute;
  top: 18px;
  right: 20px;
  width: 18px;
  height: 18px;
  border: 2px solid var(--faq-blue);
  border-radius: 50%;
  pointer-events: none;
}

.faq-catalog__search-field i::after {
  position: absolute;
  right: -6px;
  bottom: -4px;
  width: 8px;
  height: 2px;
  background: var(--faq-blue);
  content: "";
  transform: rotate(45deg);
}

.faq-catalog__search > p {
  margin: 10px 0 0;
  color: var(--faq-muted);
  font-size: 0.8rem;
  line-height: 1.45;
}

.faq-catalog__empty {
  margin-top: 18px;
  padding: 25px 28px;
  border: 1px dashed #bdcbd3;
  border-radius: var(--se-radius-m);
  background: #fafcfd;
}

.faq-catalog__empty strong {
  display: block;
  margin-bottom: 7px;
  color: var(--faq-ink);
  font-size: 1.05rem;
}

.faq-catalog__empty p {
  margin-bottom: 0;
  color: var(--faq-muted);
}

.faq-catalog__empty a {
  color: var(--faq-blue);
}

.faq-catalog__featured,
.faq-catalog__directions {
  margin-top: 48px;
}

.faq-catalog__section-heading {
  margin-bottom: 22px;
}

.faq-catalog__section-heading > span {
  display: block;
  margin-bottom: 8px;
  color: var(--faq-orange);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.faq-index-page.faq-index-page .faq-catalog__section-heading h3 {
  margin: 0;
  font-size: clamp(1.55rem, 2.8vw, 2.15rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.15;
}

.faq-catalog__featured-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.faq-catalog__featured-card {
  display: flex;
  min-height: 180px;
  flex-direction: column;
  align-items: flex-start;
  padding: 25px 26px;
  border: 1px solid var(--faq-line);
  border-top: 3px solid var(--faq-orange);
  border-radius: var(--se-radius-m);
  color: var(--faq-ink);
  background: #fff;
  text-decoration: none;
  transform: none;
}

.faq-catalog__featured-card:hover {
  border-color: rgba(237, 107, 50, 0.72);
  color: var(--faq-ink);
}

.faq-catalog__featured-card > span {
  margin-bottom: 18px;
  color: var(--faq-muted);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.faq-catalog__featured-card strong {
  margin-bottom: 20px;
  color: inherit;
  font-size: 1.08rem;
  font-weight: 600;
  line-height: 1.4;
}

.faq-catalog__featured-card b {
  margin-top: auto;
  color: var(--faq-blue);
  font-size: 0.78rem;
}

.faq-catalog__groups {
  border-top: 1px solid var(--faq-line);
}

.faq-catalog__group {
  border-bottom: 1px solid var(--faq-line);
}

.faq-catalog__group[hidden],
.faq-catalog__link-item[hidden],
.faq-catalog__branch[hidden],
.faq-catalog__featured-card[hidden] {
  display: none !important;
}

.faq-catalog__group summary {
  display: grid;
  min-height: 96px;
  grid-template-columns: 50px minmax(0, 1fr) 34px;
  align-items: center;
  gap: 20px;
  padding: 20px 4px;
  cursor: pointer;
  list-style: none;
}

.faq-catalog__group summary::-webkit-details-marker {
  display: none;
}

.faq-catalog__group summary:hover .faq-catalog__group-title strong {
  color: var(--faq-orange-dark);
}

.faq-catalog__group-index {
  color: var(--faq-orange);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.faq-catalog__group-title {
  display: grid;
  gap: 5px;
}

.faq-catalog__group-title strong {
  color: var(--faq-ink);
  font-size: clamp(1.08rem, 2vw, 1.3rem);
  font-weight: 600;
  line-height: 1.35;
  transition: color 0.18s ease;
}

.faq-catalog__group-title small {
  color: var(--faq-muted);
  font-size: 0.75rem;
  line-height: 1.3;
}

.faq-catalog__group-toggle {
  position: relative;
  width: 30px;
  height: 30px;
  border: 1px solid #c9d6dd;
  border-radius: 50%;
}

.faq-catalog__group-toggle::before,
.faq-catalog__group-toggle::after {
  position: absolute;
  top: 14px;
  left: 8px;
  width: 12px;
  height: 1.5px;
  background: var(--faq-blue);
  content: "";
  transition: transform 0.18s ease;
}

.faq-catalog__group-toggle::after {
  transform: rotate(90deg);
}

.faq-catalog__group[open] .faq-catalog__group-toggle::after {
  transform: rotate(0);
}

.faq-catalog__group-body {
  padding: 0 0 30px 70px;
}

.faq-catalog__group-body > .faq-catalog__branch-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
}

.faq-catalog__branch-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.faq-catalog__branch {
  min-width: 0;
  break-inside: avoid;
}

.faq-catalog__group-body > .faq-catalog__branch-list > .faq-catalog__branch {
  padding: 20px 22px 22px;
  border: 1px solid var(--faq-line);
  border-radius: var(--se-radius-m);
  background: #fff;
}

.faq-catalog__group-body > .faq-catalog__branch-list > .faq-catalog__link-item {
  padding: 7px 18px;
  border: 1px solid var(--se-line);
  border-radius: var(--se-radius-m);
  background: var(--faq-surface);
}

.faq-catalog__branch-title {
  display: block;
  margin-bottom: 8px;
  color: #425d6d;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.055em;
  line-height: 1.4;
  text-transform: uppercase;
}

.faq-catalog__group-body > .faq-catalog__branch-list > .faq-catalog__branch > .faq-catalog__branch-title {
  margin-bottom: 13px;
  color: var(--faq-ink);
  font-size: 0.8rem;
  letter-spacing: 0.045em;
}

.faq-catalog__branch .faq-catalog__branch-list {
  padding-left: 14px;
  border-left: 1px solid #dce5e9;
}

.faq-catalog__branch .faq-catalog__branch {
  margin-top: 14px;
}

.faq-catalog__link-item + .faq-catalog__link-item {
  border-top: 1px solid #edf2f4;
}

.faq-catalog__link-item > a {
  display: grid;
  min-height: 46px;
  grid-template-columns: minmax(0, 1fr) 20px;
  align-items: center;
  gap: 12px;
  padding: 10px 4px;
  border: 0;
  color: #294756;
  font-size: 0.9rem;
  line-height: 1.43;
  text-decoration: none;
  transform: none;
}

.faq-catalog__link-item > a:hover {
  border: 0;
  color: var(--faq-orange-dark);
  transform: none;
}

.faq-catalog__link-item i {
  color: var(--faq-orange);
  font-style: normal;
  text-align: right;
}

.faq-closing {
  position: relative;
  display: grid;
  overflow: hidden;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(36px, 7vw, 90px);
  margin-top: clamp(72px, 7vw, 96px);
  padding: clamp(44px, 6vw, 68px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 92% 8%, rgba(77, 160, 199, 0.25), transparent 34%), var(--faq-blue-deep);
}

.faq-closing > * {
  position: relative;
  z-index: 1;
}

.faq-closing .faq-eyebrow {
  margin-bottom: 17px;
}

.faq-index-page.faq-index-page .faq-closing h2 {
  max-width: 720px;
  margin: 0 0 17px;
  color: #fff;
  font-size: clamp(2rem, 3.6vw, 3rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.08;
}

.faq-closing p {
  max-width: 760px;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.7);
  font-size: 1.02rem;
  line-height: 1.65;
}

.faq-group-hero,
.faq-answer-hero {
  position: relative;
  overflow: hidden;
  margin-top: 20px;
  padding: clamp(48px, 7vw, 76px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 92% 8%, rgba(74, 159, 199, 0.26), transparent 36%), linear-gradient(132deg, #0c283e 0%, #17465f 100%);
}

.faq-group-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 48px;
}

.faq-group-hero .faq-eyebrow,
.faq-answer-hero .faq-eyebrow {
  margin-bottom: 20px;
}

.faq-group-page.faq-group-page .faq-group-hero h1,
.faq-answer-page.faq-answer-page .faq-answer-hero h1 {
  max-width: 920px;
  margin: 0 0 22px;
  overflow-wrap: anywhere;
  color: #fff;
  font-size: clamp(2.55rem, 5vw, 4.3rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.02;
}

.faq-group-hero p,
.faq-answer-hero p {
  max-width: 780px;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.7);
  font-size: 1.08rem;
  line-height: 1.62;
}

.faq-question-index {
  margin-top: clamp(68px, 7vw, 96px);
}

.faq-topic-navigation {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 18px 28px;
  margin: 34px 0 58px;
  padding: 24px 26px;
  border: 1px solid var(--faq-line);
  border-radius: var(--se-radius-l);
  background: var(--faq-soft);
}

.faq-topic-navigation > span {
  padding-top: 7px;
  color: var(--faq-muted);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.faq-topic-navigation ul {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.faq-topic-navigation a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 7px 13px;
  border: 1px solid rgba(20, 76, 108, 0.15);
  border-radius: var(--se-radius-s);
  color: var(--faq-blue);
  background: #fff;
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.25;
  text-decoration: none;
  transform: none;
}

.faq-topic-navigation a:hover {
  border-color: rgba(241, 100, 36, 0.45);
  color: var(--faq-orange-dark);
  transform: none;
}

.faq-topic-groups {
  display: grid;
  gap: clamp(58px, 7vw, 82px);
}

.faq-topic-group {
  scroll-margin-top: 110px;
}

.faq-topic-group__heading {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 18px;
  margin-bottom: 22px;
}

.faq-topic-group__heading > span {
  padding-top: 6px;
  color: var(--faq-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.faq-group-page.faq-group-page .faq-topic-group__heading h3 {
  margin: 0 0 7px;
  color: var(--faq-ink);
  font-size: clamp(1.55rem, 2.8vw, 2.15rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.12;
}

.faq-topic-group__heading p {
  max-width: 760px;
  margin: 0;
  color: var(--faq-muted);
  font-size: 0.98rem;
  line-height: 1.55;
}

.faq-question-list {
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--faq-line);
  list-style: none;
}

.faq-question-list > li {
  border-bottom: 1px solid var(--faq-line);
}

.faq-question-list > li > a {
  display: grid;
  min-height: 88px;
  grid-template-columns: 44px minmax(0, 1fr) 28px;
  align-items: center;
  gap: 20px;
  padding: 18px 4px;
  border: 0;
  color: var(--faq-ink);
  text-decoration: none;
  transform: none;
}

.faq-question-list > li > a:hover {
  border: 0;
  color: var(--faq-orange-dark);
  transform: none;
}

.faq-question-list a > span {
  color: var(--faq-orange);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.faq-question-list a > strong {
  color: inherit;
  font-size: clamp(1rem, 1.7vw, 1.15rem);
  font-weight: 600;
  line-height: 1.45;
}

.faq-question-list a > i {
  color: var(--faq-blue);
  font-size: 1.15rem;
  font-style: normal;
  text-align: right;
}

.faq-bottom-cta {
  position: relative;
  display: grid;
  overflow: hidden;
  box-sizing: border-box;
  max-width: 1160px;
  min-height: 340px;
  grid-template-columns: minmax(0, 1fr) 300px;
  align-items: center;
  gap: clamp(42px, 7vw, 90px);
  margin: 0 auto clamp(68px, 8vw, 104px);
  padding: clamp(46px, 6vw, 68px);
  border: 0;
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: radial-gradient(circle at 92% 10%, rgba(75, 160, 201, 0.3), transparent 34%), linear-gradient(132deg, #0d293f 0%, #174e6d 100%);
  text-align: left;
}

.faq-bottom-cta::after {
  position: absolute;
  right: -175px;
  bottom: -245px;
  width: 520px;
  height: 520px;
  border: 64px solid rgba(255, 255, 255, 0.035);
  border-radius: 50%;
  content: "";
}

.faq-bottom-cta *,
.faq-bottom-cta *::before,
.faq-bottom-cta *::after {
  box-sizing: border-box;
}

.faq-bottom-cta > * {
  position: relative;
  z-index: 1;
}

.faq-bottom-cta .faq-eyebrow {
  margin-bottom: 19px;
}

.faq-bottom-cta h2 {
  max-width: 680px;
  margin: 0 0 18px;
  color: #fff;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2.15rem, 4vw, 3.2rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.06;
  text-transform: none;
}

.faq-bottom-cta__copy > p {
  max-width: 710px;
  margin: 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 1.05rem;
  line-height: 1.65;
}

.faq-bottom-cta__copy ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.faq-bottom-cta__copy li {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: rgba(255, 255, 255, 0.88);
  font-size: 0.84rem;
  font-weight: 600;
}

.faq-bottom-cta__copy li::before {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: #ff8a54;
  content: "";
}

.faq-bottom-cta__actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 29px 28px 27px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--se-radius-l);
  background: rgba(5, 26, 42, 0.22);
}

.faq-bottom-cta__button {
  display: inline-flex;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  padding: 14px 22px;
  border: 1px solid #ed6b32;
  border-radius: var(--se-radius-s);
  color: #fff;
  background: #ed6b32;
  font-weight: 600;
  text-decoration: none;
  transform: none;
}

.faq-bottom-cta__button:hover {
  border-color: var(--se-orange-action);
  color: #fff;
  background: var(--se-orange-action);
  transform: none;
}

.faq-bottom-cta__actions > span {
  margin: 24px 0 9px;
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.faq-bottom-cta__phone {
  align-self: flex-start;
  border-bottom: 1px solid rgba(255, 255, 255, 0.35);
  color: #fff;
  font-size: 1.28rem;
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
  transform: none;
}

.faq-bottom-cta__phone:hover {
  border-bottom-color: #ff9a69;
  color: #ffb18b;
  transform: none;
}

.faq-bottom-cta__actions small {
  margin-top: 7px;
  color: rgba(255, 255, 255, 0.54);
  font-size: 0.74rem;
  line-height: 1.4;
}

.faq-answer-hero {
  min-height: 390px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.faq-answer-page.faq-answer-page .faq-answer-hero h1 {
  max-width: 980px;
  font-size: clamp(2.3rem, 4.5vw, 3.8rem);
  line-height: 1.07;
}

.faq-answer-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  align-items: start;
  gap: clamp(44px, 7vw, 86px);
  margin-top: clamp(68px, 7vw, 96px);
}

.faq-answer-card {
  min-width: 0;
}

.faq-answer-card__label {
  margin-bottom: 28px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--faq-line);
}

.faq-answer-card__label span {
  color: var(--faq-orange);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.faq-answer-body {
  max-width: 790px;
  color: #304b5c;
  font-size: 1.06rem;
  line-height: 1.76;
}

.faq-answer-body > :first-child {
  margin-top: 0 !important;
}

.faq-answer-body > :last-child {
  margin-bottom: 0 !important;
}

.faq-answer-body p,
.faq-answer-body ul,
.faq-answer-body ol,
.faq-answer-body blockquote,
.faq-answer-body table {
  margin: 0 0 22px;
}

.faq-answer-body h2,
.faq-answer-body h3,
.faq-answer-body h4 {
  margin: 42px 0 18px;
  color: var(--faq-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.25;
  text-align: left;
  text-transform: none;
}

.faq-answer-body h2 {
  font-size: 1.75rem;
}

.faq-answer-body h3 {
  font-size: 1.38rem;
}

.faq-answer-body h4 {
  font-size: 1.12rem;
}

.faq-answer-body ul,
.faq-answer-body ol {
  padding-left: 1.5em;
}

.faq-answer-body ul {
  list-style: disc;
}

.faq-answer-body ol {
  list-style: decimal;
}

.faq-answer-body li {
  margin-bottom: 9px;
  padding-left: 5px;
}

.faq-answer-body li::marker {
  color: var(--faq-orange);
  font-weight: 600;
}

.faq-answer-body blockquote {
  padding: 22px 26px;
  border-left: 4px solid var(--faq-orange);
  background: var(--faq-surface);
}

.faq-answer-body a {
  color: var(--faq-blue);
  text-decoration-color: rgba(23, 78, 109, 0.35);
  text-underline-offset: 3px;
}

.faq-answer-body a:hover {
  color: var(--faq-orange-dark);
  text-decoration-color: currentColor;
}

.faq-answer-body img {
  max-width: 100%;
  height: auto;
}

.faq-answer-body table {
  width: 100%;
  overflow: hidden;
  border: 1px solid var(--faq-line);
  border-radius: var(--se-radius-s);
}

.faq-answer-body th,
.faq-answer-body td {
  padding: 12px 14px;
  border-bottom: 1px solid var(--faq-line);
  text-align: left;
}

.faq-answer-body th {
  color: var(--faq-ink);
  background: var(--faq-surface);
  font-weight: 600;
}

.faq-answer-aside {
  position: sticky;
  top: 92px;
  padding: 30px;
  border: 1px solid var(--faq-line);
  border-top: 4px solid var(--faq-orange);
  border-radius: var(--se-radius-m);
  background: var(--faq-surface);
}

.faq-answer-aside > span {
  display: block;
  margin-bottom: 13px;
  color: var(--faq-muted);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.faq-answer-aside__group {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 18px;
  gap: 12px;
  padding-bottom: 22px;
  border: 0;
  color: var(--faq-ink);
  font-size: 1.05rem;
  font-weight: 600;
  line-height: 1.45;
  text-decoration: none;
  transform: none;
}

.faq-answer-aside__group:hover {
  border: 0;
  color: var(--faq-orange-dark);
  transform: none;
}

.faq-answer-aside__group i {
  color: var(--faq-orange);
  font-style: normal;
}

.faq-answer-aside__links {
  display: grid;
  gap: 10px;
  padding: 20px 0;
  border-top: 1px solid var(--faq-line);
  border-bottom: 1px solid var(--faq-line);
}

.faq-answer-aside__links a {
  border: 0;
  color: var(--faq-blue);
  font-size: 0.88rem;
  font-weight: 600;
}

.faq-answer-aside__links a:hover {
  border: 0;
  color: var(--faq-orange-dark);
}

.faq-answer-aside > p {
  margin: 18px 0 0;
  color: var(--faq-muted);
  font-size: 0.82rem;
  line-height: 1.55;
}

.faq-next-question {
  margin-top: clamp(64px, 7vw, 92px);
  padding-top: 30px;
  border-top: 1px solid var(--faq-line);
}

.faq-next-question > span {
  display: block;
  margin-bottom: 14px;
  color: var(--faq-orange);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.faq-next-question a {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 30px;
  align-items: center;
  gap: 18px;
  padding: 26px 28px;
  border: 1px solid var(--faq-line);
  border-radius: var(--se-radius-m);
  color: var(--faq-ink);
  background: #fff;
  text-decoration: none;
  transform: none;
}

.faq-next-question a:hover {
  border-color: rgba(237, 107, 50, 0.68);
  color: var(--faq-orange-dark);
  transform: none;
}

.faq-next-question strong {
  color: inherit;
  font-size: 1.08rem;
  font-weight: 600;
  line-height: 1.45;
}

.faq-next-question i {
  color: var(--faq-orange);
  font-size: 1.25rem;
  font-style: normal;
}

@media (max-width: 1020px) {
  .faq-index-hero {
    min-height: 0;
    grid-template-columns: 1fr;
  }

  .faq-index-guide {
    max-width: 700px;
  }

  .faq-entry-points__grid {
    grid-template-columns: 1fr;
  }

  .faq-entry-points__grid > a {
    min-height: 0;
  }

  .faq-catalog__heading {
    grid-template-columns: 1fr;
  }

  .faq-catalog__heading dl {
    justify-content: flex-start;
  }

  .faq-catalog__featured-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .faq-group-hero,
.faq-closing {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .faq-group-hero .faq-button,
.faq-closing .faq-button {
    justify-self: start;
  }

  .faq-answer-layout {
    grid-template-columns: 1fr;
  }

  .faq-answer-aside {
    position: static;
    max-width: 680px;
  }

  .faq-bottom-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .faq-bottom-cta__actions {
    width: 100%;
    max-width: 430px;
  }
}
@media (max-width: 700px) {
  .faq-index-page,
.faq-group-page,
.faq-answer-page {
    margin-right: 0;
    margin-left: 0;
    padding-right: 16px;
    padding-left: 16px;
  }

  .faq-index-hero,
.faq-group-hero,
.faq-answer-hero {
    margin-top: 12px;
    padding: 38px 24px;
    border-radius: var(--se-radius-l);
  }

  .faq-index-page.faq-index-page .faq-index-hero h1 {
    font-size: clamp(2.45rem, 12.5vw, 3.35rem);
  }

  .faq-group-page.faq-group-page .faq-group-hero h1,
.faq-answer-page.faq-answer-page .faq-answer-hero h1 {
    overflow-wrap: normal;
    hyphens: auto;
    font-size: clamp(1.95rem, 9vw, 2.7rem);
  }

  .faq-index-hero__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .faq-button {
    width: 100%;
  }

  .faq-index-guide {
    padding: 27px 22px 22px;
  }

  .faq-entry-points,
.faq-catalog,
.faq-question-index,
.faq-answer-layout {
    margin-top: 68px;
  }

  .faq-entry-points__grid > a {
    padding: 26px 23px;
  }

  .faq-entry-points__grid > a > span {
    margin-bottom: 25px;
  }

  .faq-catalog__heading dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }

  .faq-catalog__heading dl > div {
    min-width: 0;
  }

  .faq-catalog__search {
    padding: 22px 18px 20px;
  }

  .faq-catalog__search input {
    height: 54px;
    padding-left: 14px;
    font-size: 0.92rem;
  }

  .faq-catalog__featured-grid {
    grid-template-columns: 1fr;
  }

  .faq-catalog__group summary {
    min-height: 86px;
    grid-template-columns: 34px minmax(0, 1fr) 30px;
    gap: 12px;
  }

  .faq-catalog__group-body {
    padding: 0 0 26px 46px;
  }

  .faq-catalog__group-body > .faq-catalog__branch-list {
    grid-template-columns: 1fr;
  }

  .faq-catalog__group-body > .faq-catalog__branch-list > .faq-catalog__branch {
    padding: 18px 16px 20px;
  }

  .faq-catalog__group-body > .faq-catalog__branch-list > .faq-catalog__link-item {
    padding: 6px 12px;
  }

  .faq-catalog__branch .faq-catalog__branch-list {
    padding-left: 10px;
  }

  .faq-closing {
    padding: 38px 24px;
    border-radius: var(--se-radius-l);
  }

  .faq-topic-navigation {
    display: block;
    margin: 26px 0 46px;
    padding: 20px 18px;
  }

  .faq-topic-navigation > span {
    display: block;
    padding: 0 0 13px;
  }

  .faq-topic-navigation ul {
    gap: 8px;
  }

  .faq-topic-navigation a {
    min-height: 34px;
    padding: 7px 11px;
    font-size: 0.84rem;
  }

  .faq-topic-groups {
    gap: 54px;
  }

  .faq-topic-group {
    scroll-margin-top: 82px;
  }

  .faq-topic-group__heading {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 12px;
    margin-bottom: 16px;
  }

  .faq-topic-group__heading > span {
    padding-top: 4px;
  }

  .faq-group-page.faq-group-page .faq-topic-group__heading h3 {
    font-size: clamp(1.4rem, 7vw, 1.8rem);
  }

  .faq-question-list > li > a {
    min-height: 80px;
    grid-template-columns: 34px minmax(0, 1fr) 20px;
    gap: 12px;
  }

  .faq-bottom-cta {
    min-height: 0;
    margin-right: 10px;
    margin-left: 10px;
    padding: 38px 24px 28px;
    border-radius: var(--se-radius-l);
  }

  .faq-bottom-cta h2 {
    font-size: clamp(2.05rem, 10vw, 2.75rem);
  }

  .faq-bottom-cta__copy ul {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .faq-bottom-cta__actions {
    max-width: none;
    padding: 23px 20px 21px;
  }

  .faq-answer-hero {
    min-height: 0;
  }

  .faq-answer-body {
    font-size: 1rem;
  }

  .faq-answer-aside {
    padding: 25px 22px;
  }

  .faq-next-question a {
    padding: 22px 20px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .faq-button,
.faq-entry-points__grid > a,
.faq-catalog__group-title strong,
.faq-catalog__group-toggle::after {
    transition: none;
  }
}
.expertise-page h2, .expertise-page .h2 {
  font-size: 2.5714285714em;
  text-transform: uppercase;
  margin: 0.5em 0 0.2em 0;
}
.expertise-page .cost-block {
  position: relative;
  min-height: 200px;
  color: #fff;
  overflow: hidden;
  border-bottom: 5px solid rgba(255, 255, 255, 0.5);
}
@media (max-width: 767px) {
  .expertise-page .cost-block {
    min-height: 100px;
  }
}
.expertise-page .cost-block .cost-block-background-wrapper {
  position: absolute;
  left: 50%;
  top: 0px;
}
.expertise-page .cost-block .cost-block-background-wrapper #cost-block-background {
  z-index: 0;
  position: relative;
  left: -50%;
}
.expertise-page .cost-block .content-wrapper {
  margin: 0 auto;
  max-width: 1200px;
  position: relative;
  height: 100%;
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 {
  padding: 3em 9.5833333333% 2em 9.5833333333%;
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 h2, .expertise-page .cost-block .content-wrapper .content-wrapper2 .h2 {
  color: #fff;
  font-weight: 600;
  margin: 0.5em 1px 0.2em 1px;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.3);
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 h3, .expertise-page .cost-block .content-wrapper .content-wrapper2 .h3 {
  font-size: 1.4285714286em;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
  color: #fff;
  margin-bottom: 1em;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.3);
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 .row {
  margin: 2em 1px;
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 .row .desc {
  font-family: "PT Serif", Georgia, "Times New Roman", serif;
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 .row .cost {
  float: right;
  display: inline-block;
  width: 24.1666666667%;
  margin: 0 0 1em 1em;
  padding: 0 0 1em 1em;
  border-left: 1px solid #fff;
}
@media (max-width: 767px) {
  .expertise-page .cost-block .content-wrapper .content-wrapper2 .row .cost {
    float: none;
    display: block;
    width: 100%;
    border-left: none;
    margin: 0 0 1em 0;
    padding: 0 0 1em 0;
    border-bottom: 1px solid #fff;
  }
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 .row .cost .val {
  font-size: 1.8571428571em;
  font-weight: 600;
  padding-bottom: 0.5em;
  text-transform: uppercase;
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 .row .cost .comment {
  padding-bottom: 1em;
  font-size: 0.8571428571em;
  font-style: italic;
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 .row .cost .time {
  padding-bottom: 1em;
  font-weight: 600;
  font-family: "PT Serif", Georgia, "Times New Roman", serif;
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 .row .small {
  margin-bottom: 1em;
  border-bottom: 1px dotted rgba(255, 255, 255, 0.5);
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 .row .small.nobottom {
  border-bottom: none;
}
.expertise-page .cost-block .content-wrapper .content-wrapper2 .row .small .val_small {
  font-size: 0.8571428571em;
  font-style: italic;
}
@media (max-width: 767px) {
  .expertise-page .cost-block .content-wrapper .content-wrapper2 .row .small .cost {
    font-size: 0.8em;
    float: none;
    display: block;
    width: 100%;
    border-left: none;
    margin: 1em 0 0 0;
    padding: 1em 0 0 0;
    border-bottom: none;
  }
}
.expertise-page .experts {
  position: relative;
  min-height: 120px;
}
.expertise-page .experts .content-wrapper {
  margin: 0 auto;
  max-width: 1200px;
  position: relative;
  height: 100%;
}
.expertise-page .experts .content-wrapper .content-wrapper2 {
  padding: 3em 9.5833333333% 2em 9.5833333333%;
}
.expertise-page .experts .content-wrapper .content-wrapper2 .important {
  color: #747474;
  text-align: center;
  font-size: 0.7857142857em;
}
.expertise-page .cases2 {
  position: relative;
  min-height: 120px;
}
.expertise-page .cases2 .content-wrapper {
  margin: 0 auto;
  max-width: 1200px;
  position: relative;
  height: 100%;
}
.expertise-page .cases2 .content-wrapper .content-wrapper2 {
  padding: 3em 9.5833333333% 2em 9.5833333333%;
}
.expertise-page .cases2 .content-wrapper .content-wrapper2 .all {
  float: right;
}
.expertise-page .cases2 .content-wrapper .content-wrapper2 .all span {
  padding-left: 22px;
  display: inline-block;
  padding-bottom: 0.5em;
}
.expertise-page .cases2 .content-wrapper .content-wrapper2 .all span a {
  line-height: 20px;
  font-style: italic;
}
@media (max-width: 767px) {
  .expertise-page .cases2 .content-wrapper .content-wrapper2 .all {
    float: none;
    position: absolute;
    bottom: 10px;
    text-align: center;
    width: 100%;
    left: 0;
  }
}
.expertise-page .cases2 .content-wrapper .content-wrapper2 .important {
  color: #747474;
  text-align: center;
  font-size: 0.7857142857em;
  margin-top: 60px;
}
.expertise-page .cases2 .content-wrapper .content-wrapper2 .article-description {
  padding-left: 1em;
}
.expertise-page .cases2 .content-wrapper .content-wrapper2 .article-description .txt .descr {
  border-bottom: none;
}
.expertise-page .cases2 .content-wrapper .content-wrapper2 .article-description .txt h3, .expertise-page .cases2 .content-wrapper .content-wrapper2 .article-description .txt .h3 {
  font-size: 1.1em;
  font-weight: 600;
  padding: 0;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .expertise-page .cases2 .content-wrapper .content-wrapper2 .article-description .txt h3, .expertise-page .cases2 .content-wrapper .content-wrapper2 .article-description .txt .h3 {
    font-size: 1.1em;
  }
}
@media (max-width: 767px) {
  .expertise-page .cases2 .content-wrapper .content-wrapper2 .article-description a.img {
    float: none;
    display: block;
    width: 100%;
    max-width: 100%;
  }
  .expertise-page .cases2 .content-wrapper .content-wrapper2 .article-description a.img img {
    width: 100%;
    margin-bottom: 1em;
  }
}
.expertise-page .faq {
  min-height: 100px;
  border-bottom: 2.5px dotted rgba(1, 97, 206, 0.3);
  position: relative;
  margin-bottom: 3em;
  overflow: hidden;
}
.expertise-page .faq .faq-background-wrapper {
  position: absolute;
  left: 50%;
  top: 0px;
}
.expertise-page .faq .faq-background-wrapper #faq-background {
  z-index: 0;
  position: relative;
  left: -50%;
}
.expertise-page .faq .content-wrapper {
  margin: 0 auto;
  max-width: 1200px;
  position: relative;
  height: 100%;
}
.expertise-page .faq .content-wrapper .content-wrapper2 {
  padding: 70px 9.5833333333% 2em 9.5833333333%;
}
.expertise-page .faq .content-wrapper .content-wrapper2 .all {
  float: right;
}
.expertise-page .faq .content-wrapper .content-wrapper2 .all span {
  background: url(/export/images/page-start/faq-tr.png) no-repeat;
  padding-left: 22px;
  display: inline-block;
  padding-bottom: 0.5em;
}
.expertise-page .faq .content-wrapper .content-wrapper2 .all span a {
  line-height: 20px;
  font-style: italic;
}
@media (max-width: 767px) {
  .expertise-page .faq .content-wrapper .content-wrapper2 .all {
    float: none;
    position: absolute;
    bottom: 10px;
    text-align: center;
    width: 100%;
    left: 0;
  }
}
.expertise-page .faq .content-wrapper .content-wrapper2 .row {
  min-height: 250px;
}
.expertise-page .faq .content-wrapper .content-wrapper2 .row h3, .expertise-page .faq .content-wrapper .content-wrapper2 .row .h3 {
  font-size: 1.4285714286em;
  font-weight: 600;
  padding-bottom: 0.5em;
}
.expertise-page .faq .content-wrapper .content-wrapper2 .row i {
  display: block;
  font-size: 1em;
}
.expertise-page .cases {
  border-bottom: 2.5px dotted rgba(1, 97, 206, 0.3);
  min-height: 300px;
  position: relative;
}
@media (max-width: 767px) {
  .expertise-page .cases {
    min-height: 200px;
  }
}
.expertise-page .cases .content-wrapper {
  margin: 0 auto;
  max-width: 1200px;
  position: relative;
  height: 100%;
}
.expertise-page .cases .content-wrapper .content-wrapper2 {
  padding: 2em 9.5833333333% 2em 9.5833333333%;
}
.expertise-page .cases .content-wrapper .content-wrapper2 h2, .expertise-page .cases .content-wrapper .content-wrapper2 .h2 {
  margin-bottom: 1em;
}
@media (max-width: 767px) {
  .expertise-page .other-top li {
    margin-bottom: 1.5em;
  }
}
.expertise-page .other-top ul {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-bottom: 1em;
  min-height: 6em;
}
.expertise-page .other-top ul li {
  float: left;
  display: block;
  width: 50%;
  font-size: 0.8em;
  padding: 0 1em 1em 0;
  position: relative;
}
@media (max-width: 767px) {
  .expertise-page .other-top ul li {
    width: 100%;
  }
}
.expertise-page .other-top ul li:before {
  content: "→";
  display: block;
  padding-right: 0.5em;
  float: left;
  color: #747474;
}
.expertise-page .other-top.up {
  min-height: 6em;
  max-height: 6em;
  border-bottom: 2.5px dotted rgba(1, 97, 206, 0.3);
  margin-bottom: 1em;
  overflow: hidden;
  position: relative;
}
.expertise-page .other-top.up:before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 35px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff);
  bottom: 0;
  left: 0;
  z-index: 1;
}
.expertise-page .other-top.up .open_link {
  z-index: 2;
  position: absolute;
  display: block;
  width: 84px;
  background-image: radial-gradient(circle at bottom center, white 35px, rgba(215, 215, 215, 0.5) 36px, rgba(0, 0, 0, 0) 41px, rgba(0, 0, 0, 0) 100%);
  bottom: 0;
  left: 50%;
  margin-left: -42px;
  text-align: center;
  padding: 5em 0 0.2em 0;
}
.expertise-page .other-top.up .open_link a {
  border: none;
  font-size: 1.6em;
}
.expertise-page .other {
  border-bottom: 2.5px dotted rgba(1, 97, 206, 0.3);
  min-height: 300px;
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  .expertise-page .other {
    min-height: 200px;
  }
  .expertise-page .other .other-links li {
    margin-bottom: 1.5em;
  }
}
.expertise-page .other .other-background-wrapper {
  position: absolute;
  left: 50%;
  top: 0px;
}
.expertise-page .other .other-background-wrapper #other-background {
  z-index: 0;
  position: relative;
  left: -50%;
}
.expertise-page .other .content-wrapper {
  margin: 0 auto;
  max-width: 1200px;
  position: relative;
  height: 100%;
}
.expertise-page .other .content-wrapper .content-wrapper2 {
  padding: 2em 9.5833333333% 4em 9.5833333333%;
}
.expertise-page .other .content-wrapper .content-wrapper2 h2, .expertise-page .other .content-wrapper .content-wrapper2 .h2 {
  font-size: 2em;
  font-weight: 600;
  margin-bottom: 1em;
}
.expertise-page .links {
  position: relative;
  text-align: center;
  border-bottom: 2.5px dotted rgba(1, 97, 206, 0.3);
}
.expertise-page .links .content-wrapper {
  margin: 0 auto;
  max-width: 1200px;
  position: relative;
  height: 100%;
}
.expertise-page .links .content-wrapper .content-wrapper2 {
  padding: 4em 0 2em 0;
}
.expertise-page .links .content-wrapper .content-wrapper2 h2, .expertise-page .links .content-wrapper .content-wrapper2 .h2 {
  text-align: center;
  font-size: 2em;
  margin: 0 2em 1em 2em;
}
.expertise-page .links .content-wrapper .content-wrapper2 .da {
  position: relative;
  width: 80%;
  display: inline-block;
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li {
  display: inline-block;
  width: 25%;
  float: left;
  text-transform: uppercase;
  font-weight: 600;
  text-align: center;
  padding: 5%;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .expertise-page .links .content-wrapper .content-wrapper2 .da li {
    padding: 5% 1%;
    font-size: 0.8em;
  }
}
@media (max-width: 767px) {
  .expertise-page .links .content-wrapper .content-wrapper2 .da li {
    width: 100%;
  }
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a {
  display: inline-block;
  float: left;
  width: 100%;
  height: 100%;
  border-bottom: none !important;
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a span {
  content: "";
  display: inline-block;
  width: 8.5714285714em;
  height: 8.5714285714em;
  border-radius: 50%;
  background: #0161ce;
  border-bottom: none;
  margin-bottom: 1em;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.3);
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a span.i1 {
  background: url(/export/images/page-expertise/i1.png) no-repeat center, #0161ce;
  background-size: 50%;
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a span.i2 {
  background: url(/export/images/page-expertise/i2.png) no-repeat center, #0161ce;
  background-size: 50%;
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a span.i3 {
  background: url(/export/images/page-expertise/i3.png) no-repeat center, #0161ce;
  background-size: 50%;
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a span.i4 {
  background: url(/export/images/page-expertise/i4.png) no-repeat center, #0161ce;
  background-size: 50%;
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a span:hover {
  -webkit-animation: pulse 0.7s ease-out;
  animation: pulse 0.7s ease-out;
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a div {
  border-bottom: none !important;
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a div s {
  display: inline;
  cursor: pointer;
  text-decoration: none;
  color: #1e3560;
  border-bottom: 1px solid rgba(30, 53, 96, 0.4);
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a div s:hover, .expertise-page .links .content-wrapper .content-wrapper2 .da li a div s:visited:hover {
  color: #1e3560;
  border-bottom: 1px solid rgba(30, 53, 96, 0.4);
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a div s:active, .expertise-page .links .content-wrapper .content-wrapper2 .da li a div s:visited:active {
  color: #1e3560;
  border-bottom: 1px solid rgba(30, 53, 96, 0.4);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.expertise-page .links .content-wrapper .content-wrapper2 .da li a div s:visited {
  color: #1e3560;
  border-bottom: 1px solid rgba(30, 53, 96, 0.4);
}
.expertise-page .bottom-question-button {
  border-top: none;
}
.expertise-page .top-cost {
  float: right;
  display: inline-block;
  margin: 1em;
  padding: 1em;
  background-color: #fd8327;
  background: repeating-linear-gradient(-45deg, #fd8327 0, #fd8327 10px, rgba(253, 131, 39, 0.8) 10px, rgba(253, 131, 39, 0.8) 20px);
  border: solid 3px #fd8327;
  color: #fff;
  text-align: center;
  border-radius: 1em;
}
.expertise-page .top-cost .link-div {
  color: #fff;
}
.expertise-page .top-cost .link-div .button-link-white {
  background-color: rgba(1, 97, 206, 0.7);
}
.expertise-page .top-cost .s {
  padding-bottom: 1em;
  text-shadow: 1px 1px 0px #bd631e;
  font-size: 1.1em;
}
.expertise-page .top-cost .s .action-link, .expertise-page .top-cost .s .main-header .top .contacts .regions a, .main-header .top .contacts .regions .expertise-page .top-cost .s a {
  border-bottom: 1px;
}

.expertise-landing-page {
  --expertise-ink: var(--se-ink);
  --expertise-blue: var(--se-blue);
  --expertise-blue-deep: var(--se-ink-deep);
  --expertise-orange: var(--se-orange);
  --expertise-muted: var(--se-muted);
  --expertise-surface: var(--se-surface);
  --expertise-line: var(--se-line);
  padding-bottom: clamp(72px, 8vw, 112px);
  color: var(--expertise-ink);
}

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

.expertise-landing-page [hidden] {
  display: none !important;
}

body .body.expertise-layout {
  overflow-x: clip;
  overflow-y: visible;
}

.expertise-landing-page h1,
.expertise-landing-page h2,
.expertise-landing-page h3,
.expertise-landing-page p {
  margin-top: 0;
}

.expertise-landing-page h1,
.expertise-landing-page h2,
.expertise-landing-page h3,
.expertise-landing-page .h2 {
  color: var(--expertise-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  text-transform: none;
}

.expertise-landing-page main > .page {
  width: 100%;
  min-height: 0;
  padding: 20px 20px 0;
}

.expertise-landing-page .content-wrapper {
  width: min(100% - 40px, 1160px);
  max-width: 1160px;
  margin-right: auto;
  margin-left: auto;
}

.expertise-landing-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  color: var(--expertise-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  line-height: 1.4;
  text-transform: uppercase;
}

.expertise-landing-eyebrow::before {
  width: 34px;
  height: 2px;
  background: currentColor;
  content: "";
}

.expertise-landing-button,
.expertise-landing-page a.expertise-landing-button:visited {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.91rem;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.expertise-landing-button:hover,
.expertise-landing-button:focus-visible {
  text-decoration: none;
  transform: translateY(-1px);
}

.expertise-landing-button--primary,
.expertise-landing-page a.expertise-landing-button--primary:visited {
  background: var(--expertise-orange);
  color: #fff;
}

.expertise-landing-button--primary:hover,
.expertise-landing-button--primary:focus-visible {
  background: #d95a26;
  color: #fff;
}

.expertise-landing-button--ghost,
.expertise-landing-page a.expertise-landing-button--ghost:visited {
  border-color: rgba(255, 255, 255, 0.34);
  color: #fff;
}

.expertise-landing-button--ghost:hover,
.expertise-landing-button--ghost:focus-visible {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
}

.expertise-landing-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  overflow: clip;
  min-height: 560px;
  grid-template-columns: minmax(0, 1fr) minmax(315px, 370px);
  align-items: center;
  gap: clamp(36px, 5vw, 68px);
  margin-top: 18px;
  padding: clamp(48px, 4.5vw, 64px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 92% 7%, rgba(76, 158, 199, 0.33), transparent 35%), linear-gradient(134deg, #0b283d 0%, #153f59 62%, #1c5674 100%);
}

.expertise-landing-hero::after,
.expertise-final-cta::after {
  position: absolute;
  right: -170px;
  bottom: -300px;
  width: 590px;
  height: 590px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.expertise-landing-hero__copy,
.expertise-landing-hero__brief {
  position: relative;
  z-index: 1;
}

.expertise-landing-hero h1 {
  max-width: 720px;
  margin: 18px 0 26px;
  padding: 0;
  color: #fff;
  font-size: clamp(2.75rem, 4vw, 4rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.02;
  hyphens: none;
  overflow-wrap: normal;
  word-break: normal;
}

.expertise-landing-hero h1.expertise-landing-hero__title--long {
  font-size: clamp(2.65rem, 3.55vw, 3.55rem);
}

.expertise-landing-hero h1.expertise-landing-hero__title--extra-long {
  font-size: clamp(2.4rem, 3.15vw, 3.15rem);
}

.expertise-landing-hero h1.expertise-landing-hero__title--long-word {
  font-size: clamp(2.6rem, 3.4vw, 3.35rem);
}

.expertise-landing-hero h1.expertise-landing-hero__title--extra-long.expertise-landing-hero__title--long-word {
  font-size: clamp(2.3rem, 3vw, 3rem);
}

.expertise-landing-hero__lead {
  max-width: 720px;
  margin-bottom: 24px;
  color: rgba(237, 244, 247, 0.86);
  font-size: clamp(1.02rem, 1.45vw, 1.18rem);
  line-height: 1.68;
}

.expertise-landing-hero__lead-toggle {
  display: none;
}

.expertise-landing-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.expertise-landing-hero__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 18px;
  margin: 24px 0 0;
  padding: 0;
  color: rgba(234, 242, 246, 0.74);
  font-size: 0.79rem;
  font-weight: 600;
  list-style: none;
}

.expertise-landing-hero__facts li {
  display: flex;
  align-items: center;
  gap: 8px;
}

.expertise-landing-hero__facts li::before {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--expertise-orange);
  content: "";
}

.expertise-landing-hero__brief {
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-top: 3px solid rgba(255, 149, 104, 0.82);
  border-radius: var(--se-radius-l);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.045), transparent 42%), rgba(5, 25, 39, 0.58);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.14);
  backdrop-filter: blur(8px);
}

.expertise-hero-price {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 480px;
  margin: 0 0 26px;
}

.expertise-hero-price > div {
  padding: 0 24px 0 0;
}

.expertise-hero-price > div + div {
  padding-right: 0;
  padding-left: 24px;
  border-left: 1px solid rgba(255, 255, 255, 0.18);
}

.expertise-hero-price dt {
  margin-bottom: 8px;
  color: rgba(231, 240, 244, 0.64);
  font-size: 0.67rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1.35;
  text-transform: uppercase;
}

.expertise-hero-price dd {
  margin: 0;
  color: #fff;
  font-size: 1.05rem;
  font-weight: 600;
  line-height: 1.35;
}

.expertise-landing-hero__brief-label {
  display: block;
  margin-bottom: 13px;
  color: rgba(231, 240, 244, 0.62);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  line-height: 1.45;
  text-transform: uppercase;
}

.expertise-landing-hero__brief-title {
  display: block;
  margin: 0 0 22px;
  color: #fff;
  font-size: clamp(1.35rem, 1.7vw, 1.7rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.22;
}

.expertise-landing-hero__brief-list {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.expertise-landing-hero__brief-list li {
  position: relative;
  padding: 12px 0 12px 28px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  color: rgba(241, 246, 248, 0.88);
  font-size: 0.88rem;
  font-weight: 600;
  line-height: 1.45;
}

.expertise-landing-hero__brief-list li::before {
  position: absolute;
  top: 15px;
  left: 2px;
  color: #ff9568;
  content: "✓";
  font-size: 0.76rem;
  font-weight: 700;
}

.expertise-landing-hero__brief-note {
  margin: 20px 0 0;
  color: rgba(231, 240, 244, 0.76);
  font-size: 0.82rem;
  line-height: 1.55;
}

.expertise-landing-page .criminal_case a {
  color: var(--expertise-blue);
}

.expertise-section-nav {
  position: sticky;
  z-index: 12;
  top: 63px;
  display: flex;
  overflow-x: auto;
  gap: 4px;
  width: min(100% - 40px, 1160px);
  margin: 16px auto 0;
  padding: 8px;
  box-sizing: border-box;
  border: 1px solid var(--expertise-line);
  border-radius: var(--se-radius-m);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 12px 36px rgba(16, 43, 66, 0.08);
  scroll-snap-type: x proximity;
  scrollbar-width: none;
}

.expertise-section-nav::-webkit-scrollbar {
  display: none;
}

.expertise-section-nav a,
.expertise-landing-page .expertise-section-nav a:visited {
  flex: 0 0 auto;
  scroll-snap-align: start;
  padding: 10px 16px;
  border: 0;
  border-radius: var(--se-radius-s);
  color: var(--expertise-blue);
  font-size: 0.82rem;
  font-weight: 600;
  text-decoration: none;
}

.expertise-section-nav a:hover,
.expertise-section-nav a:focus-visible {
  background: var(--expertise-surface);
  color: var(--expertise-orange);
}

.expertise-confidence {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: clamp(24px, 3.5vw, 42px);
  overflow: hidden;
  border: 1px solid var(--expertise-line);
  border-radius: var(--se-radius-l);
  background: var(--expertise-surface);
}

.expertise-confidence article {
  position: relative;
  padding: 25px;
}

.expertise-confidence article + article {
  border-left: 1px solid var(--expertise-line);
}

.expertise-confidence article > span {
  display: block;
  margin-bottom: 18px;
  color: var(--expertise-orange);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.09em;
}

.expertise-confidence strong {
  display: block;
  margin-bottom: 9px;
  color: var(--expertise-ink);
  font-size: 1.04rem;
  line-height: 1.35;
}

.expertise-confidence p {
  margin-bottom: 0;
  color: var(--expertise-muted);
  font-size: 0.89rem;
  line-height: 1.58;
}

.expertise-section-heading {
  max-width: 820px;
}

.expertise-section-heading h2 {
  margin: 17px 0 17px;
  color: var(--expertise-ink);
  font-size: clamp(2rem, 3.4vw, 3.05rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.08;
}

.expertise-section-heading > p {
  margin-bottom: 0;
  color: var(--expertise-muted);
  font-size: 1.02rem;
  line-height: 1.68;
}

.expertise-section-heading--light h2 {
  color: #fff;
}

.expertise-section-heading--light > p {
  color: rgba(231, 240, 244, 0.76);
}

.expertise-article {
  padding: clamp(52px, 6vw, 76px) 0 clamp(38px, 4vw, 52px);
  scroll-margin-top: 140px;
}

.expertise-article__layout {
  display: grid;
  grid-template-columns: minmax(0, 780px) minmax(250px, 300px);
  justify-content: space-between;
  gap: clamp(48px, 7vw, 86px);
  margin-top: clamp(38px, 4.5vw, 52px);
}

.expertise-article__content {
  min-width: 0;
}

.expertise-article__toggle {
  display: none;
}

.expertise-article__body.is-collapsed {
  position: relative;
  overflow: hidden;
  max-height: var(--expertise-article-collapsed-height, 2400px);
}

.expertise-article__body.is-collapsed::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 210px;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff 84%);
  content: "";
  pointer-events: none;
}

.expertise-article__body.is-expanded {
  overflow: visible;
  max-height: none;
}

.expertise-article__toggle.is-visible {
  display: flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  width: min(100%, 420px);
  margin: 16px auto 8px;
  padding: 12px 18px;
  border: 1px solid var(--expertise-line);
  border-radius: var(--se-radius-s);
  color: var(--expertise-blue);
  background: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 0.84rem;
  font-weight: 600;
}

.expertise-article__body {
  color: #263c4c;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.06rem;
  line-height: 1.78;
}

.expertise-article__body > :first-child {
  margin-top: 0 !important;
}

.expertise-article__body p {
  margin: 0 0 1.35em;
  padding-bottom: 0;
  color: #334955;
  font-size: inherit;
  line-height: inherit;
}

.expertise-article__body p:empty {
  display: none;
}

.expertise-article__body h2,
.expertise-article__body h3 {
  max-width: 760px;
  padding: 0;
  scroll-margin-top: 100px;
  color: var(--expertise-ink);
  font-weight: 600;
  text-transform: none;
}

.expertise-article__body h2 {
  margin: 4rem 0 1.35rem;
  font-size: clamp(1.75rem, 2.8vw, 2.45rem);
  letter-spacing: -0.02em;
  line-height: 1.14;
}

.expertise-article__body h3 {
  margin: 2.5rem 0 1rem;
  font-size: clamp(1.45rem, 2vw, 1.85rem);
  letter-spacing: -0.02em;
  line-height: 1.22;
}

.expertise-article__body h4 {
  margin: 2em 0 0.65em;
  color: var(--expertise-ink);
  font-size: 1.15rem;
  line-height: 1.35;
}

.expertise-article__body ul,
.expertise-article__body ol {
  display: grid;
  overflow: visible;
  gap: 0.68em;
  margin: 1.2em 0 1.65em;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 1.45em;
}

.expertise-article__body ul {
  list-style: disc;
}

.expertise-article__body ol {
  list-style: decimal;
}

.expertise-article__body li {
  margin-left: 0;
  padding-left: 0.3em;
  color: #334955;
  line-height: 1.68;
}

.expertise-article__body li > p:last-child {
  margin-bottom: 0;
}

.expertise-article__body li > ul:not(:last-child),
.expertise-article__body li > ol:not(:last-child) {
  margin-bottom: 0.75em;
  padding-bottom: 0;
}

.expertise-article__body li > ul:last-child,
.expertise-article__body li > ol:last-child {
  margin-bottom: 0;
}

.expertise-article__body ul > ul:only-child,
.expertise-article__body ol > ol:only-child {
  margin-top: 0;
  margin-bottom: 0;
}

.expertise-article__body li::marker {
  color: var(--expertise-orange);
  font-weight: 600;
}

.expertise-article__body a {
  border-bottom: 1px solid rgba(23, 78, 109, 0.28);
  color: var(--expertise-blue);
  font-weight: 600;
  text-decoration: none;
}

.expertise-article__body a:hover {
  border-color: var(--expertise-orange);
  color: var(--expertise-orange);
}

.expertise-article__body blockquote {
  margin: 2em 0;
  padding: 24px 26px;
  border-left: 4px solid var(--expertise-orange);
  border-radius: 0 var(--se-radius-m) var(--se-radius-m) 0;
  background: var(--expertise-surface);
  color: var(--expertise-ink);
}

.expertise-article__body img {
  max-width: 100%;
  height: auto;
  margin: 1.3em 0;
  border-radius: var(--se-radius-m);
}

.expertise-article__body table {
  display: block;
  overflow-x: auto;
  max-width: 100%;
  margin: 1.8em 0;
  border-collapse: collapse;
  font-size: 0.92rem;
}

.expertise-article__body th,
.expertise-article__body td {
  min-width: 150px;
  padding: 13px 15px;
  border: 1px solid var(--expertise-line);
  text-align: left;
  vertical-align: top;
}

.expertise-article__body th {
  background: var(--expertise-surface);
  color: var(--expertise-ink);
  font-weight: 600;
}

.expertise-article__aside {
  min-width: 0;
}

.expertise-toc,
.expertise-aside-request {
  padding: 24px;
  border: 1px solid var(--expertise-line);
  border-radius: var(--se-radius-m);
}

.expertise-toc {
  position: sticky;
  top: 140px;
  background: #fff;
  box-shadow: 0 16px 44px rgba(16, 43, 66, 0.07);
}

.expertise-toc--mobile,
.expertise-mobile-action {
  display: none;
}

.expertise-toc--desktop {
  max-height: calc(100vh - 158px);
  overflow-y: auto;
}

.expertise-toc--mobile summary {
  position: relative;
  padding-right: 32px;
  color: var(--expertise-ink);
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: 600;
  list-style: none;
}

.expertise-toc--mobile summary::-webkit-details-marker {
  display: none;
}

.expertise-toc--mobile summary > span::before,
.expertise-toc--mobile summary > span::after {
  position: absolute;
  top: 50%;
  right: 2px;
  width: 14px;
  height: 2px;
  background: var(--expertise-blue);
  content: "";
  transition: transform 0.2s ease;
}

.expertise-toc--mobile summary > span::after {
  transform: rotate(90deg);
}

.expertise-toc--mobile[open] summary > span::after {
  transform: rotate(0);
}

.expertise-toc--mobile ol {
  margin-top: 16px;
}

.expertise-toc > span {
  display: block;
  margin-bottom: 16px;
  color: var(--expertise-ink);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.expertise-toc ol {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  counter-reset: expertise-toc;
  list-style: none;
}

.expertise-toc li {
  counter-increment: expertise-toc;
}

.expertise-toc a,
.expertise-landing-page .expertise-toc a:visited {
  position: relative;
  display: block;
  padding: 10px 0 10px 27px;
  border-bottom: 1px solid #edf2f4;
  color: var(--expertise-muted);
  font-size: 0.79rem;
  font-weight: 600;
  line-height: 1.42;
  text-decoration: none;
}

.expertise-toc a::before {
  position: absolute;
  top: 10px;
  left: 0;
  color: var(--expertise-orange);
  content: counter(expertise-toc, decimal-leading-zero);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.expertise-toc a:hover,
.expertise-toc a:focus-visible {
  color: var(--expertise-orange);
}

.expertise-aside-request {
  margin-top: 18px;
  background: var(--expertise-surface);
}

.expertise-aside-request > span {
  display: block;
  margin-bottom: 10px;
  color: var(--expertise-orange);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.07em;
  line-height: 1.4;
  text-transform: uppercase;
}

.expertise-aside-request strong {
  display: block;
  margin-bottom: 10px;
  color: var(--expertise-ink);
  font-size: 1.05rem;
  line-height: 1.35;
}

.expertise-aside-request p {
  margin-bottom: 16px;
  color: var(--expertise-muted);
  font-size: 0.84rem;
  line-height: 1.58;
}

.expertise-aside-request a,
.expertise-landing-page .expertise-aside-request a:visited {
  color: var(--expertise-blue);
  font-size: 0.82rem;
  font-weight: 600;
  text-decoration: none;
}

.expertise-landing-page .criminal_case {
  margin: clamp(52px, 7vw, 78px) 0 0;
  padding: 30px;
  border: 1px solid #cddfe7;
  border-radius: var(--se-radius-l);
  background: linear-gradient(145deg, #f4f8fa 0%, #eaf2f5 100%);
}

.expertise-landing-page .criminal_case::before {
  display: block;
  margin-bottom: 13px;
  color: var(--expertise-orange);
  content: "Важное процессуальное условие";
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.expertise-landing-page .criminal_case h2 {
  margin: 0 0 18px;
  font-size: clamp(1.45rem, 2.1vw, 1.85rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.expertise-landing-page .criminal_case p {
  margin: 0 0 1em;
  color: #3a5260;
  font-size: 0.94rem;
  line-height: 1.66;
}

.expertise-landing-page .criminal_case p:last-child {
  margin-bottom: 0;
}

.expertise-process {
  position: relative;
  overflow: hidden;
  overflow: clip;
  padding: clamp(54px, 6vw, 76px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 90% 0%, rgba(61, 142, 184, 0.26), transparent 34%), var(--expertise-blue-deep);
  margin-top: 0;
  scroll-margin-top: 140px;
}

.expertise-landing-page main > .page.expertise-process-wrap {
  padding-top: clamp(40px, 5vw, 64px);
  padding-bottom: clamp(40px, 5vw, 64px);
}

.expertise-process__steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 40px 0 0;
  padding: 0;
  list-style: none;
  counter-reset: none;
}

.expertise-process__steps li {
  min-height: 230px;
  padding: 24px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--se-radius-m);
  background: rgba(255, 255, 255, 0.055);
}

.expertise-process__steps li > span {
  display: block;
  margin-bottom: 42px;
  color: #ff9568;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.expertise-process__steps strong {
  display: block;
  margin-bottom: 12px;
  color: #fff;
  font-size: 1rem;
  line-height: 1.38;
}

.expertise-process__steps p {
  margin-bottom: 0;
  color: rgba(231, 240, 244, 0.72);
  font-size: 0.84rem;
  line-height: 1.58;
}

.expertise-pricing {
  margin-top: 0;
  padding: clamp(48px, 6vw, 80px) 0;
  background: radial-gradient(circle at 90% 6%, rgba(67, 151, 194, 0.22), transparent 32%), linear-gradient(135deg, #0b283e 0%, #143f59 100%);
  scroll-margin-top: 140px;
}

.expertise-pricing__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 46px;
}

.expertise-pricing__grid--single {
  grid-template-columns: minmax(0, 720px);
  justify-content: center;
}

.expertise-pricing-card {
  display: flex;
  min-width: 0;
  min-height: 380px;
  flex-direction: column;
  align-items: flex-start;
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--se-radius-l);
  background: rgba(255, 255, 255, 0.96);
}

.expertise-pricing-card--featured {
  box-shadow: inset 4px 0 0 var(--expertise-orange);
}

.expertise-pricing-card__label {
  margin-bottom: 16px;
  color: var(--expertise-orange);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  line-height: 1.4;
  text-transform: uppercase;
}

.expertise-pricing-card h3 {
  margin: 0 0 22px;
  color: var(--expertise-ink);
  font-size: clamp(1.35rem, 2vw, 1.72rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.expertise-pricing-card__price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 13px;
  margin-bottom: 8px;
}

.expertise-pricing-card__price strong,
.expertise-pricing-card__price > div,
.expertise-pricing-card__price.action-block > strong {
  color: var(--expertise-ink);
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.2;
}

.expertise-pricing-card__old {
  color: #8a969e;
  font-size: 0.88rem;
}

.expertise-pricing-card__time {
  margin-bottom: 12px;
  color: var(--expertise-blue);
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1.4;
}

.expertise-pricing-card__time::before {
  margin-right: 7px;
  color: var(--expertise-orange);
  content: "Срок: ";
}

.expertise-pricing-card__comment {
  margin-bottom: 14px;
  color: var(--expertise-muted);
  font-size: 0.78rem;
  line-height: 1.5;
}

.expertise-pricing-card > p {
  margin-bottom: 24px;
  color: var(--expertise-muted);
  font-size: 0.9rem;
  line-height: 1.62;
}

.expertise-pricing-card > a,
.expertise-landing-page .expertise-pricing-card > a:visited {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  border-bottom: 1px solid rgba(23, 78, 109, 0.28);
  color: var(--expertise-blue);
  font-size: 0.82rem;
  font-weight: 600;
  text-decoration: none;
}

.expertise-pricing-card > a:hover {
  border-color: var(--expertise-orange);
  color: var(--expertise-orange);
}

.expertise-pricing__note {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px 42px;
  margin-top: 16px;
  padding: 26px 30px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: var(--se-radius-m);
  background: rgba(4, 25, 39, 0.48);
}

.expertise-pricing__note strong {
  color: #fff;
  font-size: 1.08rem;
  line-height: 1.4;
}

.expertise-pricing__note p {
  grid-column: 1;
  margin-bottom: 0;
  color: rgba(231, 240, 244, 0.72);
  font-size: 0.85rem;
  line-height: 1.55;
}

.expertise-pricing__note .expertise-landing-button {
  grid-row: 1/span 2;
  grid-column: 2;
}

.expertise-practice {
  padding: clamp(48px, 6vw, 80px) 0;
  background: var(--expertise-surface);
  scroll-margin-top: 140px;
}

.expertise-practice__heading,
.expertise-faq__heading,
.expertise-related__heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
}

.expertise-practice__all,
.expertise-faq__heading > a,
.expertise-related__heading > a,
.expertise-landing-page a.expertise-practice__all:visited,
.expertise-landing-page .expertise-faq__heading > a:visited,
.expertise-landing-page .expertise-related__heading > a:visited {
  flex: 0 0 auto;
  margin-bottom: 8px;
  color: var(--expertise-blue);
  font-size: 0.82rem;
  font-weight: 600;
  text-decoration: none;
}

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

.expertise-landing-page .expertise-practice__grid > .cases {
  min-width: 0;
  min-height: 0;
  margin: 0;
  border-bottom: 0;
}

.expertise-landing-page .expertise-practice__grid .example-card {
  display: flex;
  overflow: hidden;
  height: 100%;
  min-height: 100%;
  flex-direction: column;
  border: 1px solid var(--expertise-line);
  border-radius: var(--se-radius-m);
  background: #fff;
  box-shadow: 0 10px 32px rgba(16, 43, 66, 0.07);
}

.expertise-landing-page .expertise-practice__grid .example-card__media {
  float: none;
  height: 190px;
  min-height: 190px;
  overflow: hidden;
  margin: 0;
  padding: 0;
  background: #e6eef2;
}

.expertise-landing-page .expertise-practice__grid .example-card__media a.img,
.expertise-landing-page .expertise-practice__grid .example-card__media picture {
  display: block;
  position: static;
  width: 100%;
  height: 100%;
  border: 0;
}

.expertise-landing-page .expertise-practice__grid .example-card__media img {
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  border: 0;
  border-radius: 0;
  object-fit: cover;
}

.expertise-landing-page .expertise-practice__grid .example-card__body {
  display: flex;
  min-width: 0;
  flex: 1;
  flex-direction: column;
  padding: 22px;
}

.expertise-landing-page .expertise-practice__grid .example-card__meta {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 13px;
  color: var(--expertise-muted);
  font-size: 0.68rem;
  line-height: 1.35;
}

.expertise-landing-page .expertise-practice__grid .example-card__title {
  margin: 0 0 12px;
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.3;
}

.expertise-landing-page .expertise-practice__grid .example-card__title a {
  border: 0;
  color: var(--expertise-ink);
  text-decoration: none;
}

.expertise-landing-page .expertise-practice__grid .example-card__summary,
.expertise-landing-page .expertise-practice__grid .example-card__details {
  color: var(--expertise-muted);
  font-size: 0.82rem;
  line-height: 1.55;
}

.expertise-landing-page .expertise-practice__grid .example-card__summary {
  display: -webkit-box;
  overflow: hidden;
  margin: 0 0 18px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
}

.expertise-landing-page .expertise-practice__grid .example-card__details {
  display: none;
}

.expertise-landing-page .expertise-practice__grid .example-card__action {
  margin-top: auto;
  padding-top: 17px;
  border: 0;
  color: var(--expertise-blue);
  font-size: 0.78rem;
  font-weight: 600;
  text-decoration: none;
}

.expertise-landing-page .expertise-practice .important {
  margin: 24px 0 0;
  padding: 18px 20px 18px 48px;
  border: 1px solid var(--expertise-line);
  border-radius: var(--se-radius-m);
  background: rgba(255, 255, 255, 0.74);
  color: var(--expertise-muted);
  font-size: 0.78rem;
  line-height: 1.55;
}

.expertise-landing-page .expertise-practice .important .info {
  top: 20px;
  left: 20px;
}

.expertise-landing-page .expertise-practice .important a {
  color: var(--expertise-blue);
}

.expertise-faq {
  padding: clamp(48px, 6vw, 80px) 0;
  scroll-margin-top: 140px;
}

.expertise-documents + .expertise-faq {
  padding-top: clamp(40px, 4vw, 52px);
}

.expertise-faq .expertise-section-heading h2 {
  font-size: clamp(1.85rem, 3vw, 2.65rem);
}

.expertise-faq__list {
  display: grid;
  gap: 10px;
  margin-top: 42px;
}

.expertise-faq__list.is-collapsed > :nth-child(n+8) {
  display: none;
}

.expertise-faq__toggle {
  display: none;
}

.expertise-faq__toggle.is-visible {
  display: flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  margin: 22px auto 0;
  padding: 10px 17px;
  border: 1px solid var(--expertise-line);
  border-radius: var(--se-radius-s);
  color: var(--expertise-blue);
  background: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 0.82rem;
  font-weight: 600;
}

.expertise-faq__item {
  overflow: hidden;
  border: 1px solid var(--expertise-line);
  border-radius: var(--se-radius-m);
  background: #fff;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.expertise-faq__item[open] {
  border-color: #b9d0dc;
  box-shadow: 0 14px 40px rgba(16, 43, 66, 0.07);
}

.expertise-faq__item summary {
  position: relative;
  display: grid;
  min-height: 78px;
  grid-template-columns: minmax(0, 1fr) 28px;
  align-items: center;
  gap: 24px;
  padding: 20px 24px;
  cursor: pointer;
  list-style: none;
}

.expertise-faq__item summary::-webkit-details-marker {
  display: none;
}

.expertise-faq__item summary strong {
  color: var(--expertise-ink);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.45;
}

.expertise-faq__item summary > span {
  position: relative;
  width: 28px;
  height: 28px;
  border: 1px solid var(--expertise-line);
  border-radius: 50%;
}

.expertise-faq__item summary > span::before,
.expertise-faq__item summary > span::after {
  position: absolute;
  top: 13px;
  left: 7px;
  width: 12px;
  height: 2px;
  background: var(--expertise-blue);
  content: "";
  transition: transform 0.2s ease;
}

.expertise-faq__item summary > span::after {
  transform: rotate(90deg);
}

.expertise-faq__item[open] summary > span::after {
  transform: rotate(0);
}

.expertise-faq__answer {
  padding: 0 76px 26px 24px;
}

.expertise-faq__answer,
.expertise-faq__answer p,
.expertise-faq__answer li {
  color: #455c68;
  font-size: 0.94rem;
  line-height: 1.68;
}

.expertise-faq__permalink,
.expertise-landing-page .expertise-faq__permalink:visited {
  display: inline-flex;
  align-items: baseline;
  gap: 5px;
  margin-top: 6px;
  color: var(--expertise-blue);
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.45;
  text-decoration: none;
}

.expertise-faq__permalink:hover {
  text-decoration: underline;
}

.expertise-documents {
  padding: clamp(34px, 4vw, 52px) 0;
  border-top: 1px solid var(--expertise-line);
  border-bottom: 1px solid var(--expertise-line);
  background: #fff;
}

.expertise-documents .licenses {
  margin: 0;
  background: transparent;
}

.expertise-landing-page .expertise-documents .licenses > .content-wrapper {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

.expertise-landing-page .expertise-documents .licenses .content-wrapper2 {
  display: grid;
  width: min(100% - 40px, 1160px);
  max-width: none;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px 28px;
  margin: 0 auto;
  padding: 0;
}

.expertise-landing-page .expertise-documents .licenses h2 {
  grid-row: 1;
  grid-column: 1;
  margin: 0;
  padding: 0;
  color: var(--expertise-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(1.35rem, 2.1vw, 1.75rem);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.02em;
  text-align: left;
  text-transform: none;
}

.expertise-landing-page .expertise-documents .licenses .all {
  float: none;
  grid-row: 1;
  grid-column: 2;
  margin: 0;
}

.expertise-landing-page .expertise-documents .licenses .all span {
  padding: 0;
  background: none;
}

.expertise-landing-page .expertise-documents .licenses .all a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  gap: 8px;
  padding: 8px 0;
  border: 0;
  color: var(--expertise-blue);
  background: transparent;
  font-size: 0.84rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
}

.expertise-landing-page .expertise-documents .licenses .all a::after {
  color: var(--expertise-orange);
  content: "→";
}

.expertise-landing-page .expertise-documents .licenses .licenses-grid {
  display: flex;
  width: 100%;
  grid-row: 2;
  grid-column: 1/-1;
  gap: 12px;
  margin: 8px 0 0;
  padding: 10px 0 4px;
  overflow-x: auto;
  list-style: none;
  scrollbar-width: none;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
}

.expertise-landing-page .expertise-documents .licenses .licenses-grid::-webkit-scrollbar {
  display: none;
}

.expertise-landing-page .expertise-documents .licenses .licenses-grid .license {
  flex: 0 0 112px;
  margin: 0;
  padding: 0;
  scroll-snap-align: start;
}

.expertise-landing-page .expertise-documents .licenses .licenses-grid .license:nth-child(n+7) {
  display: none;
}

.expertise-landing-page .expertise-documents .licenses .licenses-grid .license:hover {
  animation: none;
}

.expertise-landing-page .expertise-documents .licenses .licenses-grid .license-card {
  display: block;
  width: 112px;
  min-height: 0;
  overflow: hidden;
  padding: 9px;
  border: 1px solid var(--expertise-line);
  border-radius: var(--se-radius-s);
  color: var(--expertise-ink);
  background: #fff;
  box-shadow: 0 4px 12px rgba(20, 52, 75, 0.06);
  text-decoration: none;
}

.expertise-landing-page .expertise-documents .licenses .licenses-grid .license-card:hover {
  border-color: #9ab4c4;
  box-shadow: 0 8px 20px rgba(20, 52, 75, 0.1);
}

.expertise-landing-page .expertise-documents .licenses .license-card__image {
  display: block;
  min-height: 0;
}

.expertise-landing-page .expertise-documents .licenses .license-card__image picture {
  display: block;
}

.expertise-landing-page .expertise-documents .licenses .license-card__image img {
  display: block;
  width: 92px;
  height: 126px;
  max-height: 126px;
  margin: 0;
  border: 0;
  border-radius: var(--se-radius-xs);
  object-fit: contain;
}

.expertise-landing-page .expertise-documents .licenses .license-card__copy {
  display: none;
}

.expertise-request-paths {
  padding: clamp(48px, 6vw, 80px) 0;
  background: var(--expertise-surface);
  scroll-margin-top: 140px;
}

.expertise-request-paths__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 42px;
}

.expertise-request-paths__grid > a,
.expertise-landing-page .expertise-request-paths__grid > a:visited {
  position: relative;
  display: flex;
  min-height: 220px;
  flex-direction: column;
  align-items: flex-start;
  padding: 26px 64px 26px 26px;
  border: 1px solid var(--expertise-line);
  border-radius: var(--se-radius-m);
  background: #fff;
  color: var(--expertise-ink);
  text-decoration: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.expertise-request-paths__grid > a:hover,
.expertise-request-paths__grid > a:focus-visible {
  border-color: #b7cfd9;
  box-shadow: 0 16px 42px rgba(16, 43, 66, 0.09);
  transform: translateY(-2px);
}

.expertise-request-paths__grid > a > span {
  margin-bottom: 28px;
  color: var(--expertise-orange);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.expertise-request-paths__grid strong {
  margin-bottom: 10px;
  color: var(--expertise-ink);
  font-size: 1.24rem;
  line-height: 1.32;
}

.expertise-request-paths__grid p {
  margin-bottom: 0;
  color: var(--expertise-muted);
  font-size: 0.86rem;
  line-height: 1.58;
}

.expertise-request-paths__grid i {
  position: absolute;
  right: 26px;
  bottom: 26px;
  color: var(--expertise-orange);
  font-size: 1.2rem;
  font-style: normal;
}

.expertise-related {
  padding: clamp(48px, 6vw, 80px) 0;
}

.expertise-faq + .expertise-related {
  padding-top: 0;
}

.expertise-related__heading h2 {
  margin: 16px 0 0;
  font-size: clamp(1.85rem, 3vw, 2.7rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.1;
}

.expertise-related__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 40px;
}

.expertise-related__card,
.expertise-landing-page a.expertise-related__card:visited {
  display: flex;
  min-height: 120px;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 24px;
  border: 1px solid var(--expertise-line);
  border-radius: var(--se-radius-m);
  background: #fff;
  color: var(--expertise-ink);
  text-decoration: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.expertise-related__card:hover,
.expertise-related__card:focus-visible {
  border-color: #b7cfd9;
  box-shadow: 0 14px 38px rgba(16, 43, 66, 0.08);
  transform: translateY(-1px);
}

.expertise-related__card strong {
  color: var(--expertise-ink);
  font-size: 1rem;
  line-height: 1.4;
}

.expertise-related__card > span {
  color: var(--expertise-muted);
  font-size: 0.76rem;
  font-weight: 600;
}

.expertise-related__card i {
  margin-left: 5px;
  color: var(--expertise-orange);
  font-style: normal;
}

.expertise-final-cta {
  position: relative;
  display: grid;
  overflow: hidden;
  overflow: clip;
  width: min(100% - 40px, 1160px);
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 40px;
  margin: 0 auto;
  padding: clamp(42px, 5vw, 62px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 92% 8%, rgba(71, 155, 196, 0.3), transparent 36%), var(--expertise-blue-deep);
}

.expertise-final-cta > div {
  position: relative;
  z-index: 1;
}

.expertise-final-cta h2 {
  max-width: 700px;
  margin: 16px 0 14px;
  color: #fff;
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.08;
}

.expertise-final-cta p {
  max-width: 720px;
  margin-bottom: 0;
  color: rgba(231, 240, 244, 0.77);
  font-size: 0.98rem;
  line-height: 1.65;
}

.expertise-final-cta__actions {
  display: flex;
  min-width: 220px;
  flex-direction: column;
  align-items: stretch;
  gap: 14px;
}

.expertise-final-cta__phone,
.expertise-landing-page a.expertise-final-cta__phone:visited {
  border: 0;
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
}

.expertise-landing-button:focus-visible,
.expertise-section-nav a:focus-visible,
.expertise-toc a:focus-visible,
.expertise-aside-request a:focus-visible,
.expertise-pricing-card > a:focus-visible,
.expertise-practice__all:focus-visible,
.expertise-faq__heading > a:focus-visible,
.expertise-faq__permalink:focus-visible,
.expertise-faq__item summary:focus-visible,
.expertise-request-paths__grid > a:focus-visible,
.expertise-related__heading > a:focus-visible,
.expertise-related__card:focus-visible,
.expertise-final-cta__phone:focus-visible {
  outline: 3px solid rgba(237, 107, 50, 0.4);
  outline-offset: 4px;
}

@media (max-width: 1080px) {
  .expertise-landing-hero {
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
  }

  .expertise-landing-hero__brief {
    max-width: 720px;
  }

  .expertise-article__layout {
    grid-template-columns: minmax(0, 1fr) 260px;
    gap: 42px;
  }

  .expertise-process__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .expertise-process__steps li {
    min-height: 210px;
  }
}
@media (max-width: 820px) {
  .expertise-confidence {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .expertise-confidence article + article {
    border-left: 1px solid var(--expertise-line);
  }

  .expertise-confidence article:nth-child(odd) {
    border-left: 0;
  }

  .expertise-confidence article:nth-child(n+3) {
    border-top: 1px solid var(--expertise-line);
  }

  .expertise-article__layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .expertise-article__aside {
    display: block;
  }

  .expertise-toc--desktop {
    display: none;
  }

  .expertise-toc--mobile {
    display: block;
    position: static;
    padding: 18px 20px;
  }

  .expertise-aside-request {
    margin-top: 14px;
  }

  .expertise-landing-page .expertise-practice__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .expertise-landing-page {
    padding-bottom: 88px;
  }

  .expertise-mobile-action.is-visible,
.expertise-landing-page a.expertise-mobile-action.is-visible:visited {
    position: fixed;
    z-index: 40;
    right: 16px;
    bottom: 12px;
    left: 16px;
    display: flex;
    min-height: 52px;
    align-items: center;
    justify-content: space-between;
    padding: 13px 18px;
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: var(--se-radius-s);
    color: #fff;
    background: var(--expertise-orange);
    box-shadow: 0 14px 32px rgba(16, 43, 66, 0.25);
    font-size: 0.88rem;
    font-weight: 600;
    text-decoration: none;
  }

  .expertise-landing-page .content-wrapper,
.expertise-final-cta {
    width: min(100% - 32px, 1160px);
  }

  .expertise-landing-hero {
    gap: 24px;
    margin-top: 12px;
    padding: 28px 23px;
    border-radius: var(--se-radius-l);
  }

  .expertise-landing-hero h1 {
    margin-top: 15px;
    font-size: clamp(2rem, 9vw, 2.55rem);
    letter-spacing: -0.02em;
    line-height: 1.06;
  }

  .expertise-landing-hero h1.expertise-landing-hero__title--long,
.expertise-landing-hero h1.expertise-landing-hero__title--extra-long {
    font-size: clamp(1.85rem, 8.2vw, 2.35rem);
  }

  .expertise-landing-hero h1.expertise-landing-hero__title--long-word {
    font-size: clamp(1.7rem, 7.3vw, 1.88rem);
  }

  .expertise-landing-hero h1.expertise-landing-hero__title--extra-long.expertise-landing-hero__title--long-word {
    font-size: clamp(1.62rem, 6.9vw, 1.78rem);
  }

  .expertise-landing-hero__lead {
    display: -webkit-box;
    overflow: hidden;
    margin-bottom: 12px;
    font-size: 0.98rem;
    line-height: 1.65;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 7;
  }

  .expertise-landing-hero__lead.is-expanded {
    display: block;
    overflow: visible;
  }

  .expertise-landing-hero__lead-toggle.is-visible {
    display: inline-flex;
    margin: 0 0 22px;
    padding: 0 0 3px;
    border: 0;
    border-bottom: 1px solid rgba(255, 149, 104, 0.5);
    color: #ff9568;
    background: transparent;
    font: inherit;
    font-size: 0.78rem;
    font-weight: 600;
  }

  .expertise-landing-hero__actions,
.expertise-landing-hero__actions .expertise-landing-button {
    width: 100%;
  }

  .expertise-landing-hero__facts {
    margin-top: 18px;
  }

  .expertise-landing-hero__brief {
    padding: 20px;
  }

  .expertise-landing-hero__brief-title {
    margin-bottom: 12px;
    font-size: 1.35rem;
  }

  .expertise-hero-price {
    grid-template-columns: minmax(0, 1fr);
    margin-bottom: 20px;
  }

  .expertise-hero-price > div,
.expertise-hero-price > div + div {
    padding: 0;
  }

  .expertise-hero-price > div + div {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid rgba(255, 255, 255, 0.18);
    border-left: 0;
  }

  .expertise-section-nav {
    top: 73px;
    margin-right: -2px;
    margin-left: -2px;
  }

  .expertise-confidence article {
    padding: 20px;
  }

  .expertise-confidence article > span {
    margin-bottom: 12px;
  }

  .expertise-confidence strong {
    font-size: 0.94rem;
  }

  .expertise-confidence p {
    font-size: 0.79rem;
  }

  .expertise-section-heading h2 {
    font-size: clamp(1.85rem, 9vw, 2.35rem);
  }

  .expertise-article {
    padding: 52px 0;
  }

  .expertise-article__layout {
    margin-top: 38px;
  }

  .expertise-article__body {
    font-size: 1rem;
    line-height: 1.72;
  }

  .expertise-article__body h2 {
    margin: 3rem 0 1.125rem;
    font-size: 1.75rem;
  }

  .expertise-article__body h3 {
    margin: 2rem 0 0.875rem;
    font-size: 1.42rem;
  }

  .expertise-article__body.is-collapsed {
    position: relative;
    overflow: hidden;
    max-height: var(--expertise-article-collapsed-height, 7200px);
  }

  .expertise-article__body.is-collapsed::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 180px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff 82%);
    content: "";
    pointer-events: none;
  }

  .expertise-article__body.is-expanded {
    overflow: visible;
    max-height: none;
  }

  .expertise-article__toggle.is-visible {
    display: flex;
    min-height: 48px;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: 12px 0 8px;
    padding: 12px 16px;
    border: 1px solid var(--expertise-line);
    border-radius: var(--se-radius-s);
    color: var(--expertise-blue);
    background: #fff;
    cursor: pointer;
    font: inherit;
    font-size: 0.84rem;
    font-weight: 600;
  }

  .expertise-article__aside {
    grid-template-columns: minmax(0, 1fr);
  }

  .expertise-landing-page .criminal_case {
    padding: 23px;
  }

  .expertise-process {
    padding: 40px 23px;
    border-radius: var(--se-radius-l);
  }

  .expertise-process__steps,
.expertise-pricing__grid,
.expertise-landing-page .expertise-practice__grid,
.expertise-request-paths__grid,
.expertise-related__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .expertise-process__steps li {
    min-height: 0;
  }

  .expertise-process__steps li > span {
    margin-bottom: 26px;
  }

  .expertise-pricing-card {
    min-height: 0;
    padding: 24px;
  }

  .expertise-pricing__note {
    grid-template-columns: minmax(0, 1fr);
    padding: 24px;
  }

  .expertise-pricing__note p,
.expertise-pricing__note .expertise-landing-button {
    grid-row: auto;
    grid-column: 1;
  }

  .expertise-pricing__note .expertise-landing-button {
    width: 100%;
    margin-top: 14px;
  }

  .expertise-practice__heading,
.expertise-faq__heading,
.expertise-related__heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .expertise-practice__all,
.expertise-faq__heading > a,
.expertise-related__heading > a {
    margin-bottom: 0;
  }

  .expertise-landing-page .expertise-practice__grid .example-card__media {
    height: 210px;
  }

  .expertise-landing-page .expertise-practice__grid > .cases:nth-child(n+4) {
    display: none;
  }

  .expertise-faq__item summary {
    min-height: 72px;
    gap: 16px;
    padding: 18px;
  }

  .expertise-faq__answer {
    padding: 0 18px 22px;
  }

  .expertise-landing-page .expertise-documents .licenses .content-wrapper2 {
    width: min(100% - 32px, 1160px);
    gap: 8px 12px;
    padding: 0;
  }

  .expertise-landing-page .expertise-documents .licenses h2 {
    padding: 0;
    font-size: 1.25rem;
  }

  .expertise-landing-page .expertise-documents .licenses .all a {
    font-size: 0.76rem;
  }

  .expertise-landing-page .expertise-documents .licenses .licenses-grid {
    gap: 9px;
    margin-top: 5px;
    padding-top: 8px;
  }

  .expertise-landing-page .expertise-documents .licenses .licenses-grid .license {
    flex-basis: 90px;
  }

  .expertise-landing-page .expertise-documents .licenses .licenses-grid .license-card {
    width: 90px;
    min-height: 0;
    padding: 7px;
  }

  .expertise-landing-page .expertise-documents .licenses .license-card__image img {
    width: 74px;
    height: 102px;
    max-height: 102px;
  }

  .expertise-request-paths__grid > a {
    min-height: 210px;
    padding: 24px 58px 24px 24px;
  }

  .expertise-final-cta {
    grid-template-columns: minmax(0, 1fr);
    padding: 36px 24px;
  }

  .expertise-final-cta__actions {
    min-width: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .expertise-landing-page *,
.expertise-landing-page *::before,
.expertise-landing-page *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
@media screen and (max-width: 900px) {
  .expertise-section-nav {
    padding-right: 30px;
    -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent);
    mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent);
  }
}
.videos-page,
.video-detail-page {
  --video-ink: var(--se-ink);
  --video-blue: var(--se-blue);
  --video-blue-deep: var(--se-ink-deep);
  --video-orange: var(--se-orange);
  --video-muted: var(--se-muted);
  --video-surface: var(--se-surface);
  --video-line: var(--se-line);
  color: var(--video-ink);
}

.videos-page *,
.videos-page *::before,
.videos-page *::after,
.video-detail-page *,
.video-detail-page *::before,
.video-detail-page *::after {
  box-sizing: border-box;
}

.videos-page h1,
.videos-page h2,
.videos-page h3,
.videos-page p,
.video-detail-page h1,
.video-detail-page h2,
.video-detail-page h3,
.video-detail-page p {
  margin-top: 0;
}

.videos-page h1,
.videos-page h2,
.videos-page h3,
.video-detail-page h1,
.video-detail-page h2,
.video-detail-page h3 {
  color: var(--video-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  text-transform: none;
}

.videos-page h1,
.video-detail-page h1 {
  margin: 0;
  padding: 0;
  color: #fff;
  font-size: clamp(3rem, 5.5vw, 5rem);
  font-weight: 600;
  line-height: 0.99;
  letter-spacing: -0.02em;
}

.videos-page h2,
.video-detail-page h2 {
  margin-bottom: 20px;
  font-size: clamp(2rem, 3.5vw, 3.15rem);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.02em;
}

.videos-page h3,
.video-detail-page h3 {
  font-size: 1.24rem;
  font-weight: 600;
  line-height: 1.3;
}

.videos-page p,
.video-detail-page p {
  color: var(--video-muted);
  font-size: 1rem;
  line-height: 1.68;
}

.videos-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--video-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
}

.videos-eyebrow::before {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: currentColor;
  content: "";
}

.videos-eyebrow--light {
  color: #ff9364;
}

.videos-button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.88rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.videos-button:hover,
.videos-button:focus-visible {
  text-decoration: none;
  transform: translateY(-1px);
}

.videos-button--primary {
  background: var(--video-orange);
  color: #fff;
}

.videos-page a.videos-button--primary:visited,
.video-detail-page a.videos-button--primary:visited {
  color: #fff;
}

.videos-button--primary:hover,
.videos-button--primary:focus-visible {
  background: #d95b27;
  color: #fff;
}

.videos-button--ghost {
  border-color: rgba(255, 255, 255, 0.38);
  color: #fff;
}

.videos-page a.videos-button--ghost:visited,
.video-detail-page a.videos-button--ghost:visited {
  color: #fff;
}

.videos-button--ghost:hover,
.videos-button--ghost:focus-visible {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.videos-button:focus-visible,
.video-card a:focus-visible,
.video-years a:focus-visible,
.video-detail-page a:focus-visible {
  outline: 3px solid rgba(237, 107, 50, 0.36);
  outline-offset: 4px;
}

.videos-page {
  padding-bottom: clamp(72px, 8vw, 112px);
}

.videos-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  min-height: 565px;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
  align-items: center;
  gap: clamp(44px, 7vw, 96px);
  margin-top: 20px;
  padding: clamp(50px, 7vw, 86px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 90% 8%, rgba(78, 158, 197, 0.3), transparent 34%), linear-gradient(132deg, #0c283e 0%, #153f5a 62%, #1c5674 100%);
}

.videos-hero::after {
  position: absolute;
  right: -165px;
  bottom: -245px;
  width: 560px;
  height: 560px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
}

.videos-hero__copy,
.videos-hero__note {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.videos-hero__copy .videos-eyebrow {
  margin-bottom: 22px;
}

.videos-hero__copy h1 {
  max-width: 810px;
  margin-bottom: 26px;
  font-size: clamp(2.8rem, 4vw, 4rem);
}

.videos-hero__copy > p {
  max-width: 730px;
  margin-bottom: 30px;
  color: rgba(231, 240, 244, 0.86);
  font-size: clamp(1.1rem, 1.5vw, 1.3rem);
  line-height: 1.62;
}

.videos-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.videos-hero__note {
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--se-radius-l);
  background: rgba(5, 25, 39, 0.48);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.16);
  backdrop-filter: blur(8px);
}

.videos-hero__note > span {
  display: block;
  margin-bottom: 12px;
  color: #ff9364;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.videos-hero__note strong {
  display: block;
  margin-bottom: 16px;
  color: #fff;
  font-size: 1.45rem;
  line-height: 1.28;
}

.videos-hero__note p {
  margin-bottom: 0;
  color: rgba(226, 238, 243, 0.75);
}

.videos-archive {
  padding-top: clamp(68px, 7vw, 96px);
  scroll-margin-top: 92px;
}

.videos-section-heading,
.video-detail-section-heading {
  max-width: 820px;
  margin-bottom: 40px;
}

.videos-section-heading .videos-eyebrow,
.video-detail-section-heading .videos-eyebrow {
  margin-bottom: 16px;
}

.videos-section-heading p {
  max-width: 710px;
  margin-bottom: 0;
  font-size: 1.07rem;
}

.video-years {
  display: flex;
  align-items: center;
  gap: 24px;
  margin-bottom: 64px;
  padding: 18px 22px;
  border: 1px solid var(--video-line);
  border-radius: var(--se-radius-m);
  background: var(--video-surface);
}

.video-years__label {
  flex: 0 0 auto;
  color: var(--video-muted);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.video-years__links {
  display: flex;
  overflow-x: auto;
  align-items: center;
  gap: 8px;
  padding: 2px;
  scrollbar-width: thin;
}

.video-years a {
  display: inline-flex;
  min-width: 64px;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  padding: 7px 13px;
  border: 1px solid var(--video-line);
  border-radius: var(--se-radius-s);
  background: #fff;
  color: var(--video-blue);
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
}

.video-years a:hover {
  border-color: var(--video-orange);
  color: var(--video-orange);
  text-decoration: none;
}

.video-year {
  margin-bottom: clamp(64px, 7vw, 96px);
  scroll-margin-top: 84px;
}

.video-year__heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 28px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--video-line);
}

.video-year__heading span {
  display: block;
  margin-bottom: 4px;
  color: var(--video-orange);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.video-year__heading h2 {
  margin: 0;
  color: var(--video-blue);
  font-size: clamp(2.25rem, 4vw, 3.4rem);
}

.video-year__heading small {
  padding-bottom: 6px;
  color: var(--video-muted);
  font-size: 0.86rem;
}

.video-year__grid,
.video-related__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.video-card {
  display: flex;
  overflow: hidden;
  min-width: 0;
  height: 100%;
  flex-direction: column;
  border: 1px solid var(--video-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 14px 34px rgba(25, 58, 77, 0.055);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.video-card:hover {
  border-color: #c5d6de;
  box-shadow: 0 20px 46px rgba(25, 58, 77, 0.1);
  transform: translateY(-3px);
}

.video-card__media {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 16/9;
  border: 0 !important;
  background: #dfe9ed;
}

.video-card__media picture,
.video-card__media img {
  display: block;
  width: 100%;
  height: 100%;
}

.video-card__media img {
  object-fit: cover;
  transition: transform 0.35s ease;
}

.video-card:hover .video-card__media img {
  transform: scale(1.025);
}

.video-card__media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(5, 28, 43, 0.35), transparent 50%);
  content: "";
}

.video-card__play {
  position: absolute;
  z-index: 1;
  right: 18px;
  bottom: 16px;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: 50%;
  background: rgba(8, 39, 57, 0.82);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
}

.video-card__play::after {
  position: absolute;
  top: 50%;
  left: 52%;
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 9px solid #fff;
  content: "";
  transform: translate(-40%, -50%);
}

.video-card__body {
  display: flex;
  min-height: 285px;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 24px;
}

.video-card__meta {
  display: flex;
  min-height: 20px;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 12px;
  margin-bottom: 16px;
}

.video-card__channel {
  color: var(--video-orange);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.video-card time {
  color: var(--video-muted);
  font-size: 0.78rem;
}

.video-card h3 {
  margin: 0 0 13px;
}

.video-card h3 a {
  color: var(--video-ink);
  text-decoration: none;
}

.video-card h3 a:hover {
  color: var(--video-orange);
  text-decoration: none;
}

.videos-page a.video-card__action:visited,
.video-detail-page a.video-card__action:visited {
  color: var(--video-blue);
}

.videos-page .video-card h3 a:visited,
.video-detail-page .video-card h3 a:visited {
  color: var(--video-ink);
}

.video-card__body > p {
  display: -webkit-box;
  overflow: hidden;
  margin-bottom: 20px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  font-size: 0.93rem;
  line-height: 1.58;
}

.video-card__action {
  margin-top: auto;
  align-self: flex-start;
  color: var(--video-blue);
  font-size: 0.84rem;
  font-weight: 600;
  text-decoration-color: rgba(23, 78, 109, 0.28);
  text-underline-offset: 4px;
}

.video-card__action:hover {
  color: var(--video-orange);
  text-decoration-color: currentColor;
}

.videos-press {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) auto;
  align-items: center;
  gap: clamp(42px, 8vw, 100px);
  padding: clamp(46px, 7vw, 78px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 100% 0, rgba(74, 153, 190, 0.3), transparent 36%), var(--video-blue-deep);
}

.videos-press h2 {
  margin-top: 16px;
  color: #fff;
}

.videos-press p {
  max-width: 720px;
  margin-bottom: 0;
  color: rgba(226, 237, 242, 0.78);
  font-size: 1.06rem;
}

/* Detail page */
.video-detail-page {
  padding-bottom: clamp(72px, 8vw, 112px);
}

.video-detail-schema-image {
  display: none;
}

.video-detail-hero {
  position: relative;
  overflow: hidden;
  min-height: 460px;
  margin-top: 20px;
  padding: clamp(50px, 7vw, 84px) clamp(44px, 7vw, 86px) 165px;
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 92% 0, rgba(76, 157, 196, 0.29), transparent 36%), linear-gradient(132deg, #0c283e 0%, #153f5a 68%, #1b536f 100%);
}

.video-detail-hero::after {
  position: absolute;
  right: -180px;
  bottom: -310px;
  width: 620px;
  height: 620px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
}

.video-detail-hero .videos-eyebrow {
  position: relative;
  z-index: 1;
  margin-bottom: 24px;
}

.video-detail-hero h1 {
  position: relative;
  z-index: 1;
  max-width: 1030px;
  margin-bottom: 28px;
  font-size: clamp(2.8rem, 5.2vw, 4.7rem);
}

.video-detail-hero__meta {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;
  color: rgba(231, 241, 245, 0.82);
}

.video-detail-hero__meta time,
.video-detail-hero__meta span {
  color: inherit;
  font-size: 0.88rem;
  font-weight: 600;
  letter-spacing: 0.035em;
}

.video-detail-hero__meta span {
  position: relative;
  padding-left: 24px;
}

.video-detail-hero__meta span::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #ff9364;
  content: "";
  transform: translateY(-50%);
}

.video-detail-player {
  position: relative;
  z-index: 2;
  max-width: 1030px;
  margin: -120px auto 0;
  padding: 12px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--se-radius-l);
  background: #081e2d;
  box-shadow: 0 28px 70px rgba(14, 42, 59, 0.25);
}

.video-detail-player__frame {
  overflow: hidden;
  aspect-ratio: 16/9;
  border-radius: var(--se-radius-m);
  background: #05141e;
}

.video-detail-player .player,
.video-detail-player video {
  display: block;
  width: 100%;
  height: 100%;
}

.video-detail-player video {
  object-fit: contain;
}

.video-detail-content {
  padding-top: clamp(68px, 7vw, 96px);
}

.video-detail-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(280px, 0.75fr);
  align-items: start;
  gap: clamp(50px, 8vw, 110px);
  margin-bottom: clamp(72px, 7vw, 96px);
}

.video-detail-story > .videos-eyebrow {
  margin-bottom: 22px;
}

.video-detail-story__body {
  max-width: 790px;
}

.video-detail-story__body > :first-child {
  margin-top: 0;
}

.video-detail-story__body > :last-child {
  margin-bottom: 0;
}

.video-detail-story__body p,
.video-detail-story__body li {
  color: #3f5668;
  font-size: 1.06rem;
  line-height: 1.78;
}

.video-detail-story__body p {
  margin-bottom: 20px;
}

.video-detail-story__body ul,
.video-detail-story__body ol {
  margin: 0 0 24px;
  padding-left: 24px;
}

.video-detail-story__body a {
  color: var(--video-blue);
  text-underline-offset: 4px;
}

.video-detail-media-note {
  padding: 30px;
  border-top: 4px solid var(--video-orange);
  border-radius: 0 0 var(--se-radius-m) var(--se-radius-m);
  background: var(--video-surface);
}

.video-detail-media-note > span {
  display: block;
  margin-bottom: 12px;
  color: var(--video-orange);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.video-detail-media-note h2 {
  margin-bottom: 14px;
  font-size: 1.55rem;
  line-height: 1.22;
  letter-spacing: -0.02em;
}

.video-detail-media-note p {
  margin-bottom: 20px;
  font-size: 0.92rem;
  line-height: 1.6;
}

.video-detail-media-note a,
.video-related__all {
  color: var(--video-blue);
  font-weight: 600;
  text-decoration-color: rgba(23, 78, 109, 0.28);
  text-underline-offset: 5px;
}

.video-detail-media-note a:hover,
.video-related__all:hover {
  color: var(--video-orange);
  text-decoration-color: currentColor;
}

.video-detail-page .video-detail-media-note a:visited,
.video-detail-page a.video-related__all:visited {
  color: var(--video-blue);
}

.video-detail-experts,
.video-related {
  margin-bottom: clamp(72px, 7vw, 96px);
}

.video-detail-experts__list {
  padding: 30px;
  border: 1px solid var(--video-line);
  border-radius: var(--se-radius-l);
  background: var(--video-surface);
}

.video-detail-experts__list .experts_list {
  margin: 0;
}

.video-related__all {
  display: inline-block;
  margin-top: 28px;
}

.video-detail-closing {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) auto;
  align-items: center;
  gap: clamp(42px, 8vw, 100px);
  padding: clamp(46px, 7vw, 78px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 100% 0, rgba(74, 153, 190, 0.3), transparent 36%), var(--video-blue-deep);
}

.video-detail-closing h2 {
  margin-top: 16px;
  color: #fff;
}

.video-detail-closing p {
  max-width: 720px;
  margin-bottom: 0;
  color: rgba(226, 237, 242, 0.78);
  font-size: 1.06rem;
}

@media (max-width: 1040px) {
  .videos-hero {
    grid-template-columns: 1fr;
  }

  .videos-hero__note {
    max-width: 650px;
  }

  .video-year__grid,
.video-related__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .video-detail-layout {
    grid-template-columns: 1fr;
  }

  .video-detail-media-note {
    max-width: 650px;
  }
}
@media (max-width: 760px) {
  .videos-page,
.video-detail-page {
    padding-bottom: 64px;
  }

  .videos-page h1,
.video-detail-page h1 {
    font-size: clamp(2.45rem, 12.5vw, 3.6rem);
    line-height: 1.02;
  }

  .videos-page h2,
.video-detail-page h2 {
    font-size: clamp(1.8rem, 8.8vw, 2.5rem);
  }

  .videos-hero {
    gap: 36px;
    min-height: 0;
    margin-top: 12px;
    padding: 38px 24px 24px;
    border-radius: var(--se-radius-l);
  }

  .videos-hero__copy h1 {
    font-size: clamp(2.05rem, 9.2vw, 2.75rem);
    line-height: 1.04;
    letter-spacing: -0.02em;
  }

  .videos-hero__copy > p {
    font-size: 1.06rem;
  }

  .videos-hero__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .videos-button {
    width: 100%;
  }

  .videos-hero__note {
    padding: 24px 20px;
  }

  .video-years {
    display: block;
    margin-bottom: 50px;
    padding: 16px;
  }

  .video-years__label {
    display: block;
    margin-bottom: 12px;
  }

  .video-year__heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }

  .video-year__heading small {
    padding-bottom: 0;
  }

  .video-year__grid,
.video-related__grid {
    grid-template-columns: 1fr;
  }

  .video-card__body {
    min-height: 0;
  }

  .videos-press,
.video-detail-closing {
    grid-template-columns: 1fr;
    gap: 30px;
    padding: 38px 24px;
    border-radius: var(--se-radius-l);
  }

  .video-detail-hero {
    min-height: 390px;
    margin-top: 12px;
    padding: 38px 24px 105px;
    border-radius: var(--se-radius-l);
  }

  .video-detail-hero h1 {
    font-size: clamp(2.15rem, 9.4vw, 2.9rem);
  }

  .video-detail-player {
    width: calc(100% - 24px);
    margin-top: -68px;
    padding: 6px;
    border-radius: var(--se-radius-m);
  }

  .video-detail-player__frame {
    border-radius: var(--se-radius-s);
  }

  .video-detail-content {
    padding-top: 66px;
  }

  .video-detail-layout {
    gap: 46px;
  }

  .video-detail-story__body p,
.video-detail-story__body li {
    font-size: 1rem;
    line-height: 1.7;
  }

  .video-detail-media-note,
.video-detail-experts__list {
    padding: 24px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .videos-button,
.video-card,
.video-card__media img {
    transition: none;
  }
}
.media-page {
  --media-ink: var(--se-ink);
  --media-blue: var(--se-blue);
  --media-blue-deep: var(--se-ink-deep);
  --media-orange: var(--se-orange);
  --media-muted: var(--se-muted);
  --media-surface: var(--se-surface);
  --media-line: var(--se-line);
  padding-bottom: clamp(72px, 8vw, 112px);
  color: var(--media-ink);
}

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

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

.media-page h1,
.media-page h2,
.media-page h3 {
  color: var(--media-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  text-transform: none;
}

.media-page h1 {
  max-width: 820px;
  margin: 0 0 26px;
  padding: 0;
  color: #fff;
  font-size: clamp(3rem, 5.6vw, 5rem);
  font-weight: 600;
  line-height: 0.98;
  letter-spacing: -0.02em;
}

.media-page h2 {
  margin-bottom: 20px;
  font-size: clamp(2rem, 3.5vw, 3.15rem);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.02em;
}

.media-page h3 {
  margin-bottom: 12px;
  font-size: 1.28rem;
  font-weight: 600;
  line-height: 1.28;
}

.media-page p,
.media-page li {
  color: var(--media-muted);
  font-size: 1rem;
  line-height: 1.68;
}

.media-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--media-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
}

.media-eyebrow::before {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: currentColor;
  content: "";
}

.media-eyebrow--light {
  color: #ff9364;
}

.media-button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.88rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.media-button:hover,
.media-button:focus-visible {
  text-decoration: none;
  transform: translateY(-1px);
}

.media-button:focus-visible,
.media-link:focus-visible,
.media-hero a:focus-visible,
.media-topics a:focus-visible,
.media-closing a:focus-visible,
.media-boilerplate summary:focus-visible {
  outline: 3px solid rgba(237, 107, 50, 0.35);
  outline-offset: 4px;
}

.media-button--primary {
  background: var(--media-orange);
  color: #fff;
}

.media-button--primary:hover,
.media-button--primary:focus-visible {
  background: #d95b27;
  color: #fff;
}

.media-button--ghost {
  border-color: rgba(255, 255, 255, 0.38);
  color: #fff;
}

.media-button--ghost:hover,
.media-button--ghost:focus-visible {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.media-button--dark {
  background: var(--media-blue-deep);
  color: #fff;
}

.media-button--dark:hover,
.media-button--dark:focus-visible {
  background: var(--media-blue);
  color: #fff;
}

.media-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  min-height: 610px;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 390px);
  align-items: center;
  gap: clamp(44px, 7vw, 96px);
  margin-top: 20px;
  padding: clamp(50px, 7vw, 86px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 89% 8%, rgba(86, 168, 205, 0.27), transparent 31%), linear-gradient(132deg, #0c283e 0%, #153f5a 62%, #1c5674 100%);
}

.media-hero::before {
  position: absolute;
  right: -165px;
  bottom: -245px;
  width: 560px;
  height: 560px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
}

.media-hero__copy,
.media-request {
  position: relative;
  z-index: 1;
}

.media-hero__copy > .media-eyebrow {
  margin-bottom: 22px;
}

.media-hero__lead {
  max-width: 760px;
  margin-bottom: 18px;
  color: rgba(255, 255, 255, 0.94) !important;
  font-size: clamp(1.2rem, 1.7vw, 1.42rem) !important;
  line-height: 1.55 !important;
}

.media-hero__text {
  max-width: 720px;
  margin-bottom: 30px;
  color: rgba(225, 237, 243, 0.78) !important;
}

.media-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.media-request {
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.17);
  border-radius: var(--se-radius-l);
  background: rgba(5, 25, 39, 0.48);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.16);
  backdrop-filter: blur(8px);
}

.media-request__label {
  display: block;
  margin-bottom: 9px;
  color: #ff9364;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.media-request h2 {
  margin-bottom: 23px;
  color: #fff;
  font-size: 1.55rem;
  letter-spacing: -0.02em;
}

.media-request ol {
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
}

.media-request li {
  display: grid;
  grid-template-columns: 32px 1fr;
  gap: 12px;
  padding: 15px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.13);
}

.media-request li > span {
  padding-top: 2px;
  color: #ff9364;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.media-request li p {
  margin-bottom: 0;
  color: rgba(239, 246, 249, 0.87);
  line-height: 1.5;
}

.media-request > a {
  color: #fff;
  font-size: 1.12rem;
  font-weight: 600;
  text-decoration-color: rgba(255, 255, 255, 0.35);
  text-underline-offset: 5px;
}

.media-request > a:hover {
  color: #ffad88;
  text-decoration-color: currentColor;
}

.media-request__note {
  margin: 17px 0 0;
  color: rgba(219, 233, 239, 0.68) !important;
  font-size: 0.86rem !important;
  line-height: 1.52 !important;
}

.media-facts {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: -1px clamp(28px, 5vw, 72px) 0;
  border: 1px solid var(--media-line);
  border-top: 0;
  border-radius: 0 0 var(--se-radius-l) var(--se-radius-l);
  background: #fff;
  box-shadow: 0 16px 44px rgba(25, 58, 77, 0.07);
}

.media-facts > div {
  min-width: 0;
  padding: 26px clamp(20px, 3vw, 36px);
}

.media-facts > div + div {
  border-left: 1px solid var(--media-line);
}

.media-facts strong,
.media-facts span {
  display: block;
}

.media-facts strong {
  margin-bottom: 5px;
  color: var(--media-blue);
  font-size: clamp(1.35rem, 2.2vw, 1.78rem);
  font-weight: 600;
  line-height: 1.1;
}

.media-facts span {
  color: var(--media-muted);
  font-size: 0.86rem;
  line-height: 1.45;
}

.media-content {
  padding-top: clamp(64px, 7vw, 96px);
}

.media-section {
  margin-bottom: clamp(72px, 7vw, 96px);
}

.media-section__heading {
  max-width: 790px;
  margin-bottom: 42px;
}

.media-section__heading .media-eyebrow {
  margin-bottom: 16px;
}

.media-section__heading p {
  max-width: 720px;
  margin-bottom: 0;
  font-size: 1.08rem;
}

.media-section__heading--compact {
  margin-bottom: 36px;
}

.media-formats__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.media-formats article {
  min-height: 260px;
  padding: 30px;
  border: 1px solid var(--media-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 14px 34px rgba(25, 58, 77, 0.055);
}

.media-card-number {
  display: block;
  margin-bottom: 50px;
  color: var(--media-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.media-formats article p {
  margin-bottom: 0;
}

.media-topics {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(400px, 1.1fr);
  gap: clamp(50px, 8vw, 110px);
  margin-bottom: clamp(72px, 7vw, 96px);
  padding: clamp(46px, 7vw, 84px);
  border-radius: var(--se-radius-xl);
  background: var(--media-blue-deep);
}

.media-topics h2 {
  margin-top: 16px;
  color: #fff;
}

.media-topics__intro p {
  margin-bottom: 28px;
  color: rgba(224, 236, 242, 0.78);
}

.media-topics__intro > a {
  color: #fff;
  font-weight: 600;
  text-decoration-color: rgba(255, 255, 255, 0.3);
  text-underline-offset: 5px;
}

.media-topics__intro > a:hover {
  color: #ff9364;
  text-decoration-color: currentColor;
}

.media-topics__list {
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  list-style: none;
}

.media-topics__list li {
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 14px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.16);
  color: rgba(245, 249, 251, 0.91);
  line-height: 1.45;
}

.media-topics__list li span {
  padding-top: 2px;
  color: #ff9364;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.media-process__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--media-line);
  list-style: none;
}

.media-process__grid li {
  display: grid;
  min-height: 190px;
  grid-template-columns: 48px 1fr;
  gap: 20px;
  padding: 30px 30px 30px 0;
  border-bottom: 1px solid var(--media-line);
}

.media-process__grid li:nth-child(odd) {
  padding-right: 44px;
  border-right: 1px solid var(--media-line);
}

.media-process__grid li:nth-child(even) {
  padding-left: 44px;
}

.media-process__grid li > span {
  padding-top: 3px;
  color: var(--media-orange);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.media-process__grid h3 {
  margin-bottom: 9px;
}

.media-process__grid p {
  margin-bottom: 0;
}

.media-boilerplate__list {
  border-top: 1px solid var(--media-line);
}

.media-boilerplate details {
  border-bottom: 1px solid var(--media-line);
}

.media-boilerplate summary {
  position: relative;
  display: grid;
  cursor: pointer;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 0.7fr) 28px;
  align-items: center;
  gap: 24px;
  padding: 26px 4px;
  color: var(--media-ink);
  list-style: none;
}

.media-boilerplate summary::-webkit-details-marker {
  display: none;
}

.media-boilerplate summary::after {
  color: var(--media-orange);
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  content: "+";
}

.media-boilerplate details[open] summary::after {
  content: "−";
}

.media-boilerplate summary > span {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.3;
}

.media-boilerplate summary > small {
  color: var(--media-muted);
  font-size: 0.88rem;
  line-height: 1.45;
}

.media-boilerplate details > div {
  max-width: 920px;
  padding: 2px 44px 30px 4px;
}

.media-boilerplate details > div p {
  margin-bottom: 14px;
  color: #3f5668;
  font-size: 1.05rem;
  line-height: 1.72;
}

.media-boilerplate details > div p:last-child {
  margin-bottom: 0;
}

.media-assets {
  display: grid;
  grid-template-columns: minmax(300px, 0.9fr) minmax(0, 1.1fr);
  align-items: center;
  gap: clamp(42px, 7vw, 92px);
  margin-bottom: clamp(72px, 7vw, 96px);
  padding: clamp(36px, 5vw, 64px);
  border: 1px solid var(--media-line);
  border-radius: var(--se-radius-l);
  background: var(--media-surface);
}

.media-assets__preview {
  display: flex;
  min-height: 260px;
  align-items: center;
  justify-content: center;
  padding: 44px;
  border: 1px solid var(--media-line);
  border-radius: var(--se-radius-m);
  background: #fff;
}

.media-assets__preview img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 170px;
}

.media-assets__copy .media-eyebrow {
  margin-bottom: 16px;
}

.media-assets__copy p {
  max-width: 620px;
  margin-bottom: 28px;
}

.media-assets__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
}

.media-link {
  color: var(--media-blue);
  font-weight: 600;
  text-decoration-color: rgba(23, 78, 109, 0.3);
  text-underline-offset: 5px;
}

.media-link:hover {
  color: var(--media-orange);
  text-decoration-color: currentColor;
}

.media-closing {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(260px, 0.75fr);
  align-items: center;
  gap: clamp(44px, 8vw, 100px);
  padding: clamp(46px, 7vw, 82px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 100% 0, rgba(74, 153, 190, 0.3), transparent 36%), var(--media-blue-deep);
}

.media-closing h2 {
  margin-top: 16px;
  color: #fff;
}

.media-closing p {
  max-width: 700px;
  margin-bottom: 0;
  color: rgba(226, 237, 242, 0.78);
  font-size: 1.06rem;
}

.media-closing__contacts {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.media-closing__contacts a {
  color: #fff;
  font-size: clamp(1.18rem, 2vw, 1.45rem);
  font-weight: 600;
  line-height: 1.35;
  text-decoration-color: rgba(255, 255, 255, 0.28);
  text-underline-offset: 5px;
}

.media-closing__contacts a + a {
  margin-top: 12px;
}

.media-closing__contacts a:hover {
  color: #ff9364;
  text-decoration-color: currentColor;
}

.media-closing__contacts small {
  margin-top: 10px;
  color: rgba(222, 235, 241, 0.62);
  font-size: 0.78rem;
  line-height: 1.4;
}

@media (max-width: 1020px) {
  .media-hero {
    min-height: auto;
    grid-template-columns: 1fr;
  }

  .media-request {
    max-width: 640px;
  }

  .media-topics,
.media-assets,
.media-closing {
    grid-template-columns: 1fr;
  }

  .media-topics__list {
    max-width: 760px;
  }

  .media-assets__preview {
    min-height: 230px;
  }

  .media-closing__contacts {
    padding-top: 8px;
  }
}
@media (max-width: 760px) {
  .media-page {
    padding-bottom: 64px;
  }

  .media-page h1 {
    font-size: clamp(2.55rem, 13vw, 3.7rem);
    line-height: 1.02;
  }

  .media-page h2 {
    font-size: clamp(1.8rem, 8.8vw, 2.5rem);
  }

  .media-hero {
    gap: 36px;
    margin-top: 12px;
    padding: 38px 24px 24px;
    border-radius: var(--se-radius-l);
  }

  .media-hero__lead {
    font-size: 1.08rem !important;
  }

  .media-hero__actions,
.media-assets__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .media-button {
    width: 100%;
  }

  .media-request {
    padding: 24px 20px;
  }

  .media-facts {
    grid-template-columns: 1fr;
    margin: 0 16px;
  }

  .media-facts > div {
    padding: 20px 22px;
  }

  .media-facts > div + div {
    border-top: 1px solid var(--media-line);
    border-left: 0;
  }

  .media-content {
    padding-top: 72px;
  }

  .media-section__heading {
    margin-bottom: 30px;
  }

  .media-formats__grid,
.media-process__grid {
    grid-template-columns: 1fr;
  }

  .media-formats article {
    min-height: 0;
    padding: 26px 24px;
  }

  .media-card-number {
    margin-bottom: 30px;
  }

  .media-topics {
    gap: 42px;
    padding: 38px 24px;
    border-radius: var(--se-radius-l);
  }

  .media-topics__list li {
    grid-template-columns: 32px 1fr;
    gap: 10px;
  }

  .media-process__grid li,
.media-process__grid li:nth-child(odd),
.media-process__grid li:nth-child(even) {
    min-height: 0;
    padding: 26px 0;
    border-right: 0;
  }

  .media-process__grid li {
    grid-template-columns: 38px 1fr;
    gap: 10px;
  }

  .media-boilerplate summary {
    grid-template-columns: minmax(0, 1fr) 26px;
    gap: 14px;
    padding: 22px 2px;
  }

  .media-boilerplate summary > small {
    display: none;
  }

  .media-boilerplate details > div {
    padding: 0 30px 25px 2px;
  }

  .media-assets {
    gap: 34px;
    padding: 24px;
  }

  .media-assets__preview {
    min-height: 200px;
    padding: 30px;
  }

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

  .media-closing {
    gap: 30px;
    padding: 38px 24px;
    border-radius: var(--se-radius-l);
  }
}
@media (prefers-reduced-motion: reduce) {
  .media-button {
    transition: none;
  }
}
.page.examples .example-description .descr, .page.examples .example-description .header-date, .page.example .example-description .descr, .page.example .example-description .header-date {
  overflow: hidden;
}

.example-description .img-container {
  float: left;
  margin-right: 3%;
}
.example-description .img-container a.img {
  display: inline-block;
  position: relative;
  width: 200px;
}
.example-description .img-container a.img img {
  width: 100%;
  cursor: pointer;
  text-decoration: none;
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  border: 3px solid;
  box-shadow: 0px 2px 7px 0 rgba(0, 0, 0, 0.3);
}
.example-description .img-container a.img img:hover, .example-description .img-container a.img img:visited:hover {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.example-description .img-container a.img img:active, .example-description .img-container a.img img:visited:active {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}
.example-description .img-container a.img img:visited {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}
.example-description .img-container a.img img:active {
  border: 3px solid #fff;
}
.example-description .img-container a.img img:hover {
  border: 3px solid #fff;
}
.example-description .img-container a.img img:hover {
  box-shadow: 0px 2px 7px 0 rgba(0, 0, 0, 0.4);
}
@media (max-width: 767px) {
  .example-description .txt {
    overflow: inherit;
  }
}
.example-description .txt h3:not(.example-card__title) {
  padding-top: 0;
  text-transform: uppercase;
  font-size: 1.3em;
  font-weight: 600;
}
.example-description .header-date {
  padding-left: 26px;
  background-position: 5px 1px;
}
.example-description .descr {
  margin-top: 1em;
  padding-bottom: 1em;
  border-bottom: 3px solid #0161ce;
  margin-bottom: 2em;
}
.example-description .descr ol, .example-description .descr ul {
  overflow: visible;
  padding-bottom: 0;
  padding-top: 0;
}
.example-description .descr > div, .example-description .descr > p, .example-description .descr > ul {
  padding-left: 26px;
}
.example-description .descr b, .example-description .descr strong {
  font-weight: 600;
}
.example-description .descr i, .example-description .descr em {
  font-style: italic;
}
.example-description .descr p {
  padding-bottom: 0;
}
.example-description .descr .deal {
  white-space: nowrap;
  text-transform: none;
  font-weight: normal;
}
.example-description .descr .deal img {
  display: inline;
}
.example-description .descr .court-participants {
  padding-left: 26px;
  background: url(/export/images/battle.png) 5px 2px no-repeat;
  overflow: hidden;
}
.example-description .descr .court-participants .hidden {
  color: gray;
}
.example-description .descr.no-bottom-border {
  border-bottom: none;
  margin-bottom: 0;
}
.example-description:last-child .descr {
  border-bottom: none;
  margin-bottom: 0;
}

.cases-catalog-page {
  --cases-ink: var(--se-ink);
  --cases-muted: var(--se-muted);
  --cases-line: var(--se-line);
  --cases-soft: var(--se-surface);
  --cases-blue: var(--se-blue);
  --cases-blue-dark: var(--se-ink-deep);
  --cases-orange: var(--se-orange);
  color: var(--cases-ink);
  padding-bottom: clamp(72px, 8vw, 108px);
}

.cases-catalog-page h1,
.cases-catalog-page h2,
.cases-catalog-page h3,
.cases-catalog-page h4,
.cases-catalog-page p {
  text-align: left;
}

.cases-catalog-eyebrow {
  display: block;
  margin-bottom: 17px;
  color: var(--cases-orange);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.35;
  text-transform: uppercase;
}

.cases-catalog-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  grid-template-columns: minmax(0, 1.38fr) minmax(320px, 0.82fr);
  gap: clamp(40px, 6vw, 78px);
  align-items: center;
  margin-top: 18px;
  padding: clamp(52px, 7vw, 82px);
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: radial-gradient(circle at 92% 4%, rgba(80, 165, 205, 0.3), transparent 34%), linear-gradient(135deg, #102f46 0%, #163d57 60%, #1b4d68 100%);
  box-shadow: 0 24px 54px rgba(13, 42, 60, 0.16);
}

.cases-catalog-hero::before,
.cases-catalog-hero::after {
  position: absolute;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
}

.cases-catalog-hero::before {
  width: 236px;
  height: 236px;
  right: -102px;
  bottom: -126px;
}

.cases-catalog-hero::after {
  width: 102px;
  height: 102px;
  top: -52px;
  left: 48%;
}

.cases-catalog-hero__copy,
.cases-catalog-hero__guide {
  position: relative;
  z-index: 1;
}

.cases-catalog-hero .cases-catalog-eyebrow,
.cases-catalog-cta .cases-catalog-eyebrow {
  color: #ffb08a;
}

.cases-catalog-hero h1 {
  max-width: 740px;
  margin: 0 0 24px;
  padding: 0;
  color: #fff;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2.55rem, 5vw, 4.35rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 0.99;
  text-transform: none;
}

.cases-catalog-hero__lead {
  max-width: 720px;
  margin: 0;
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: clamp(1.02rem, 1.55vw, 1.18rem) !important;
  line-height: 1.63 !important;
}

.cases-catalog-hero__actions,
.cases-catalog-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.cases-catalog-hero__actions {
  margin-top: 34px;
}

.cases-catalog-button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.91rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.cases-catalog-button:hover {
  transform: translateY(-1px);
}

.cases-catalog-button--primary {
  color: #fff;
  background: var(--cases-orange);
}

.cases-catalog-button--primary:hover {
  color: #fff;
  background: #d95f2d;
}

.cases-catalog-button--ghost {
  border-color: rgba(255, 255, 255, 0.28);
  color: #fff;
  background: rgba(255, 255, 255, 0.06);
}

.cases-catalog-button--ghost:hover {
  border-color: rgba(255, 255, 255, 0.52);
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
}

.cases-catalog-hero__guide {
  padding: 29px 30px 27px;
  border: 1px solid rgba(255, 255, 255, 0.17);
  border-radius: var(--se-radius-l);
  background: rgba(255, 255, 255, 0.09);
  box-shadow: 0 18px 34px rgba(4, 24, 37, 0.14);
  backdrop-filter: blur(8px);
}

.cases-catalog-hero__guide-label {
  display: block;
  margin-bottom: 12px;
  color: #ffb08a;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.cases-catalog-hero__guide h2 {
  margin: 0 0 22px;
  color: #fff;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.14rem;
  font-weight: 600;
  letter-spacing: -0.015em;
  line-height: 1.35;
  text-transform: none;
}

.cases-catalog-hero__guide ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.cases-catalog-hero__guide li {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 13px;
  align-items: start;
  margin: 0;
  padding: 13px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.13);
}

.cases-catalog-hero__guide li span {
  color: #ffb08a;
  font-size: 0.69rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.cases-catalog-hero__guide li p {
  margin: 0;
  color: rgba(255, 255, 255, 0.76) !important;
  font-size: 0.84rem !important;
  line-height: 1.48 !important;
}

.cases-catalog-facts {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 0.85fr 1fr 1.2fr;
  margin: -24px 38px 0;
  border: 1px solid var(--cases-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 16px 42px rgba(20, 51, 70, 0.09);
}

.cases-catalog-facts > div {
  min-width: 0;
  min-height: 118px;
  padding: 25px 27px 23px;
}

.cases-catalog-facts > div + div {
  border-left: 1px solid var(--cases-line);
}

.cases-catalog-facts strong,
.cases-catalog-facts span {
  display: block;
  text-align: left;
}

.cases-catalog-facts strong {
  margin-bottom: 8px;
  color: var(--cases-ink);
  font-size: 0.97rem;
  line-height: 1.3;
}

.cases-catalog-facts__number strong {
  margin: -3px 0 4px;
  color: var(--cases-orange);
  font-size: 1.72rem;
  letter-spacing: -0.02em;
  line-height: 1.15;
}

.cases-catalog-facts span {
  color: var(--cases-muted);
  font-size: 0.8rem;
  line-height: 1.45;
}

.cases-catalog-note {
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 24px;
  max-width: 1010px;
  margin: clamp(68px, 7vw, 96px) auto 0;
  padding: 31px 34px;
  border: 1px solid #d8e4e9;
  border-radius: var(--se-radius-l);
  background: var(--cases-soft);
}

.cases-catalog-note__mark {
  position: relative;
  display: block;
  width: 48px;
  height: 56px;
  border: 2px solid #8ba9b8;
  border-radius: var(--se-radius-xs);
  background: #fff;
}

.cases-catalog-note__mark::before,
.cases-catalog-note__mark::after,
.cases-catalog-note__mark i {
  position: absolute;
  left: 11px;
  height: 2px;
  border-radius: 2px;
  background: var(--cases-orange);
  content: "";
}

.cases-catalog-note__mark::before {
  width: 23px;
  top: 17px;
}

.cases-catalog-note__mark::after {
  width: 18px;
  top: 26px;
}

.cases-catalog-note__mark i {
  width: 21px;
  top: 35px;
}

.cases-catalog-note h2 {
  margin: 0 0 12px;
  color: var(--cases-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.13rem;
  font-weight: 600;
  letter-spacing: -0.015em;
  line-height: 1.35;
  text-transform: none;
}

.cases-catalog-note p {
  margin: 0;
  color: var(--cases-muted) !important;
  font-size: 0.9rem !important;
  line-height: 1.62 !important;
}

.cases-catalog-note p + p {
  margin-top: 10px;
}

.cases-catalog-note a {
  color: var(--cases-blue);
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: rgba(36, 95, 128, 0.35);
  text-underline-offset: 3px;
}

.cases-catalog-note a:hover {
  color: var(--cases-orange);
  text-decoration-color: var(--cases-orange);
}

.cases-catalog-list-section {
  padding: clamp(68px, 7vw, 96px) 0 0;
  scroll-margin-top: 92px;
}

.cases-catalog-heading {
  max-width: 790px;
  margin: 0 0 39px;
}

.cases-catalog-heading h2,
.cases-catalog-cta h2 {
  margin: 0;
  color: var(--cases-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2rem, 3.6vw, 3.12rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.07;
  text-transform: none;
}

.cases-catalog-heading p {
  max-width: 700px;
  margin: 18px 0 0;
  color: var(--cases-muted) !important;
  font-size: 1rem !important;
  line-height: 1.65 !important;
}

.cases-catalog-filter {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 14px;
  align-items: center;
  margin: 0 0 24px;
  padding: 16px 18px;
  border: 1px solid #bfd1da;
  border-radius: var(--se-radius-m);
  background: #edf4f6;
  text-align: left;
}

.cases-catalog-filter span {
  color: var(--cases-muted);
  font-size: 0.78rem;
  font-weight: 600;
}

.cases-catalog-filter strong {
  color: var(--cases-ink);
  font-size: 0.88rem;
}

.cases-catalog-filter a {
  margin-left: auto;
  color: var(--cases-blue);
  font-size: 0.8rem;
  font-weight: 700;
  text-decoration: none;
}

.cases-catalog-filter a:hover {
  color: var(--cases-orange);
}

.cases-catalog-toolbar {
  display: flex;
  min-height: 66px;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  margin-bottom: 20px;
  padding: 10px 16px 10px 20px;
  border: 1px solid var(--cases-line);
  border-radius: var(--se-radius-m);
  background: #fff;
}

.cases-catalog-toolbar > span {
  color: var(--cases-muted);
  font-size: 0.82rem;
  font-weight: 600;
  text-align: left;
}

.cases-catalog-page .pagination {
  padding: 0;
}

.cases-catalog-page .pagination ul {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
}

.cases-catalog-page .pagination ul li {
  display: flex;
  width: 36px;
  height: 36px;
  float: none;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  border-radius: var(--se-radius-s);
  font-size: 0.82rem;
}

.cases-catalog-page .pagination ul li.prev,
.cases-catalog-page .pagination ul li.next {
  width: 38px;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.25rem;
}

.cases-catalog-page .pagination ul li.dots {
  width: 28px;
  margin: 0;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 0.9rem;
}

.cases-catalog-page .pagination ul li a {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
  border: 0 !important;
  border-radius: inherit;
  color: var(--cases-blue) !important;
  text-decoration: none;
}

.cases-catalog-page .pagination ul li a:hover {
  color: var(--cases-blue-dark) !important;
  background: #e9f1f4;
}

.cases-catalog-page .pagination ul li.selected {
  background: var(--cases-blue);
}

.cases-catalog-page .pagination ul li.selected a {
  color: #fff !important;
}

.cases-catalog-list {
  display: grid;
  gap: 20px;
  line-height: 1.5;
}

.cases-catalog-list .example-card {
  display: grid;
  overflow: hidden;
  grid-template-columns: 230px minmax(0, 1fr);
  margin: 0;
  border: 1px solid var(--cases-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 10px 28px rgba(22, 54, 73, 0.045);
  text-align: left;
  transition: border-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}

.cases-catalog-list .example-card:hover {
  border-color: #aec4d0;
  box-shadow: 0 18px 40px rgba(22, 54, 73, 0.1);
  transform: translateY(-2px);
}

.cases-catalog-list .example-card--text-only {
  grid-template-columns: minmax(0, 1fr);
}

.cases-catalog-list .example-card__media {
  display: flex;
  min-height: 100%;
  align-items: flex-start;
  justify-content: center;
  margin: 0;
  padding: 32px 25px;
  background: linear-gradient(rgba(255, 255, 255, 0.55), rgba(255, 255, 255, 0.55)), repeating-linear-gradient(135deg, #e7eff2 0, #e7eff2 1px, #f2f6f7 1px, #f2f6f7 12px);
}

.cases-catalog-list .example-card__media a.img {
  display: block;
  width: 100%;
}

.cases-catalog-list .example-card__media picture {
  display: block;
}

.cases-catalog-list .example-card__media img {
  display: block;
  width: 100%;
  max-height: 285px;
  border: 5px solid #fff;
  border-radius: var(--se-radius-xs);
  background: #fff;
  box-shadow: 0 12px 28px rgba(16, 46, 67, 0.17);
  object-fit: contain;
  transition: transform 0.22s ease;
}

.cases-catalog-list .example-card:hover .example-card__media img {
  transform: scale(1.018);
}

.cases-catalog-list .example-card__body {
  min-width: 0;
  padding: 31px 34px 30px;
}

.cases-catalog-list .example-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;
  align-items: center;
  margin-bottom: 13px;
}

.cases-catalog-list .example-card__meta > span {
  color: var(--cases-orange);
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.095em;
  line-height: 1.35;
  text-transform: uppercase;
}

.cases-catalog-list .header-date {
  margin: 0;
  padding: 0;
  color: #71838e;
  background: none;
  font-size: 0.75rem;
  line-height: 1.4;
}

.cases-catalog-list .example-card__title {
  margin: 0 0 19px;
  padding: 0;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(1.34rem, 2vw, 1.68rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.18;
  text-transform: none !important;
}

.cases-catalog-list .example-card__title a {
  border: 0;
  color: var(--cases-ink);
  text-transform: none !important;
  text-decoration: none;
}

.cases-catalog-list .example-card__title a:hover {
  color: var(--cases-blue);
}

.cases-catalog-list .example-card__details {
  overflow: visible;
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--cases-muted);
}

.cases-catalog-list .example-card__details > div,
.cases-catalog-list .example-card__details > p,
.cases-catalog-list .example-card__details > ul {
  padding-left: 0;
}

.cases-catalog-list .example-case-source {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  align-items: baseline;
  margin-bottom: 9px;
  color: var(--cases-ink);
  font-size: 0.82rem;
  line-height: 1.48;
}

.cases-catalog-list .example-case-source strong {
  font-weight: 700;
}

.cases-catalog-list .example-case-deal {
  display: inline-flex;
  gap: 5px;
  align-items: center;
  color: var(--cases-blue);
  font-size: 0.78rem;
  font-weight: 600;
  white-space: normal;
}

.cases-catalog-list .court-participants {
  margin: 0 0 17px;
  padding: 0;
  color: #788993;
  background: none;
  font-size: 0.78rem;
  line-height: 1.48;
}

.cases-catalog-list .court-participants__label {
  color: var(--cases-ink);
  font-weight: 600;
}

.cases-catalog-list .court-participants .hidden {
  color: #8b99a1;
  font-style: italic;
}

.cases-catalog-list .example-field {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  gap: 18px;
  margin: 0;
  padding: 13px 0;
  border-top: 1px solid #e7eef1;
}

.cases-catalog-list .example-field h4 {
  margin: 1px 0 0;
  padding: 0;
  color: var(--cases-blue);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.075em;
  line-height: 1.45;
  text-transform: uppercase;
}

.cases-catalog-list .example-field__value {
  min-width: 0;
  color: var(--cases-muted);
  font-size: 0.86rem;
  line-height: 1.58;
}

.cases-catalog-list .example-field__value p:first-child {
  margin-top: 0;
}

.cases-catalog-list .example-field__value p:last-child {
  margin-bottom: 0;
}

.cases-catalog-list .example-field__value a {
  display: inline;
  border-bottom: 1px solid rgba(36, 95, 128, 0.25);
  color: var(--cases-blue);
  font-weight: 600;
  text-decoration: none;
}

.cases-catalog-list .example-field__value a:hover {
  border-bottom-color: var(--cases-orange);
  color: var(--cases-orange);
}

.cases-catalog-list .example-field__value .action-link, .cases-catalog-list .example-field__value .main-header .top .contacts .regions a, .main-header .top .contacts .regions .cases-catalog-list .example-field__value a {
  margin-left: 5px;
  color: #748893;
  font-size: 0.78rem;
}

.cases-catalog-list .example-card__action {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  margin-top: 19px;
  border: 0;
  color: var(--cases-blue);
  font-size: 0.82rem;
  font-weight: 700;
  text-decoration: none;
}

.cases-catalog-list .example-card__action span {
  font-size: 1.1rem;
  transition: transform 0.2s ease;
}

.cases-catalog-list .example-card__action:hover {
  color: var(--cases-orange);
}

.cases-catalog-list .example-card__action:hover span {
  transform: translateX(3px);
}

.cases-catalog-empty {
  padding: 42px;
  border: 1px solid var(--cases-line);
  border-radius: var(--se-radius-l);
  background: var(--cases-soft);
  text-align: left;
}

.cases-catalog-empty strong {
  display: block;
  margin-bottom: 10px;
  color: var(--cases-ink);
  font-size: 1.1rem;
}

.cases-catalog-empty p {
  max-width: 690px;
  margin: 0 0 16px;
  color: var(--cases-muted) !important;
  line-height: 1.6 !important;
}

.cases-catalog-empty a {
  color: var(--cases-blue);
  font-weight: 700;
}

.cases-catalog-pagination-bottom {
  margin-top: 30px;
  padding-top: 24px;
  border-top: 1px solid var(--cases-line);
}

.cases-catalog-cta {
  position: relative;
  display: grid;
  overflow: hidden;
  min-height: 360px;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: clamp(42px, 7vw, 90px);
  align-items: center;
  margin-top: clamp(68px, 7vw, 96px);
  padding: clamp(46px, 6vw, 68px);
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: radial-gradient(circle at 92% 10%, rgba(75, 160, 201, 0.3), transparent 34%), linear-gradient(132deg, #0d293f 0%, #174e6d 100%);
}

.cases-catalog-cta::after {
  position: absolute;
  right: -175px;
  bottom: -245px;
  width: 520px;
  height: 520px;
  border: 64px solid rgba(255, 255, 255, 0.035);
  border-radius: 50%;
  content: "";
}

.cases-catalog-cta > * {
  position: relative;
  z-index: 1;
}

.cases-catalog-cta h2 {
  max-width: 650px;
  margin: 0 0 18px;
  color: #fff;
  font-size: clamp(2.15rem, 4vw, 3.2rem);
  letter-spacing: -0.02em;
  line-height: 1.06;
}

.cases-catalog-cta__copy > p {
  max-width: 710px;
  margin: 0;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.05rem !important;
  line-height: 1.65 !important;
}

.cases-catalog-cta__copy ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.cases-catalog-cta__copy li {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0;
  padding: 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: 0.84rem;
  font-weight: 600;
}

.cases-catalog-cta__copy li::before {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: #ff8a54;
  content: "";
}

.cases-catalog-cta__actions {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  gap: 0;
  align-items: stretch;
  padding: 29px 28px 27px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--se-radius-l);
  background: rgba(5, 26, 42, 0.22);
}

.cases-catalog-cta__button {
  display: inline-flex;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  padding: 14px 22px;
  border: 1px solid #ed6b32;
  border-radius: var(--se-radius-s);
  color: #fff;
  background: #ed6b32;
  font-weight: 600;
  text-decoration: none;
  transform: none;
}

.cases-catalog-cta__button:hover {
  border-color: var(--se-orange-action);
  color: #fff;
  background: var(--se-orange-action);
  transform: none;
}

.cases-catalog-cta__actions > span {
  margin: 24px 0 9px;
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.cases-catalog-cta__phone {
  align-self: flex-start;
  border-bottom: 1px solid rgba(255, 255, 255, 0.35);
  color: #fff;
  font-size: 1.28rem;
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
  transform: none;
}

.cases-catalog-cta__phone:hover {
  border-bottom-color: #ff9a69;
  color: #ffb18b;
  transform: none;
}

.cases-catalog-cta__actions small {
  margin-top: 7px;
  color: rgba(255, 255, 255, 0.54);
  font-size: 0.74rem;
  line-height: 1.4;
}

.cases-catalog-cta__button:focus-visible,
.cases-catalog-cta__phone:focus-visible {
  outline: 3px solid #ffc09d;
  outline-offset: 4px;
}

@media (max-width: 980px) {
  .cases-catalog-hero {
    grid-template-columns: minmax(0, 1fr);
  }

  .cases-catalog-hero__guide {
    max-width: 700px;
  }

  .cases-catalog-facts {
    margin-right: 22px;
    margin-left: 22px;
  }

  .cases-catalog-list .example-card {
    grid-template-columns: 195px minmax(0, 1fr);
  }

  .cases-catalog-list .example-card--text-only {
    grid-template-columns: minmax(0, 1fr);
  }

  .cases-catalog-list .example-card__body {
    padding: 29px 28px 28px;
  }

  .cases-catalog-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .cases-catalog-cta__actions {
    width: 100%;
    max-width: 430px;
  }
}
@media (max-width: 720px) {
  .cases-catalog-page {
    padding-right: 14px;
    padding-left: 14px;
  }

  .cases-catalog-hero {
    margin-top: 10px;
    padding: 38px 28px;
    border-radius: var(--se-radius-l);
  }

  .cases-catalog-hero h1 {
    font-size: clamp(2.3rem, 11vw, 3.2rem);
  }

  .cases-catalog-hero__guide {
    padding: 25px;
  }

  .cases-catalog-facts {
    grid-template-columns: minmax(0, 1fr);
    margin: 16px 0 0;
  }

  .cases-catalog-facts > div {
    min-height: 0;
  }

  .cases-catalog-facts > div + div {
    border-top: 1px solid var(--cases-line);
    border-left: 0;
  }

  .cases-catalog-note {
    grid-template-columns: minmax(0, 1fr);
    margin-top: 64px;
    padding: 27px;
  }

  .cases-catalog-toolbar {
    flex-direction: column;
    align-items: flex-start;
    padding: 17px;
  }

  .cases-catalog-toolbar .pagination {
    width: 100%;
  }

  .cases-catalog-filter a {
    width: 100%;
    margin-left: 0;
  }

  .cases-catalog-list .example-card,
.cases-catalog-list .example-card--text-only {
    grid-template-columns: minmax(0, 1fr);
  }

  .cases-catalog-list .example-card__media {
    min-height: 250px;
  }

  .cases-catalog-list .example-card__media a.img {
    max-width: 230px;
  }

  .cases-catalog-cta {
    min-height: 0;
    padding: 38px 24px 28px;
    border-radius: var(--se-radius-l);
  }
}
@media (max-width: 520px) {
  .cases-catalog-hero__actions,
.cases-catalog-button {
    width: 100%;
  }

  .cases-catalog-heading {
    margin-bottom: 30px;
  }

  .cases-catalog-list .example-card__body {
    padding: 25px 22px 24px;
  }

  .cases-catalog-list .example-card__meta {
    align-items: flex-start;
    flex-direction: column;
  }

  .cases-catalog-list .example-field {
    grid-template-columns: minmax(0, 1fr);
    gap: 7px;
  }

  .cases-catalog-list .example-field h4 {
    margin-top: 0;
  }

  .cases-catalog-empty {
    padding: 28px 23px;
  }

  .cases-catalog-cta__copy ul {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .cases-catalog-cta__actions {
    max-width: none;
    padding: 23px 20px 21px;
  }
}
.example-detail-page {
  --example-ink: var(--se-ink);
  --example-muted: var(--se-muted);
  --example-line: var(--se-line);
  --example-soft: var(--se-surface);
  --example-blue: var(--se-blue);
  --example-blue-dark: var(--se-ink-deep);
  --example-orange: var(--se-orange-action);
  color: var(--example-ink);
  padding-bottom: clamp(64px, 7vw, 88px);
}

.example-detail-page h1,
.example-detail-page h2,
.example-detail-page h3,
.example-detail-page h4,
.example-detail-page p,
.example-detail-page dl,
.example-detail-page dd {
  text-align: left;
}

.example-detail-eyebrow {
  display: block;
  margin-bottom: 16px;
  color: var(--example-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.35;
  text-transform: uppercase;
}

.example-detail-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  grid-template-columns: minmax(0, 1.42fr) minmax(300px, 0.72fr);
  gap: clamp(42px, 6vw, 76px);
  align-items: center;
  margin-top: 18px;
  padding: clamp(50px, 6.8vw, 80px);
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: radial-gradient(circle at 92% 2%, rgba(80, 165, 205, 0.3), transparent 34%), linear-gradient(135deg, #102f46 0%, #153b55 58%, #1c506b 100%);
  box-shadow: 0 24px 54px rgba(13, 42, 60, 0.16);
}

.example-detail-hero::before,
.example-detail-hero::after {
  position: absolute;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
}

.example-detail-hero::before {
  width: 238px;
  height: 238px;
  right: -112px;
  bottom: -126px;
}

.example-detail-hero::after {
  width: 92px;
  height: 92px;
  top: -48px;
  left: 49%;
}

.example-detail-hero__copy,
.example-detail-hero__context {
  position: relative;
  z-index: 1;
}

.example-detail-hero .example-detail-eyebrow,
.example-detail-cta .example-detail-eyebrow {
  color: #ffb08a;
}

.example-detail-hero h1 {
  max-width: 720px;
  margin: 0 0 24px;
  padding: 0;
  color: #fff;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2.55rem, 5vw, 4.3rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1;
  text-transform: none;
}

.example-detail-hero__summary {
  max-width: 760px;
  margin: 0;
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: clamp(1.01rem, 1.45vw, 1.16rem) !important;
  line-height: 1.64 !important;
}

.example-detail-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 16px;
  align-items: center;
  margin-top: 30px;
}

.example-detail-hero__meta > span {
  color: rgba(255, 255, 255, 0.54);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.example-detail-hero__meta .header-date {
  margin: 0;
  padding: 0;
  color: #fff;
  background: none;
  font-size: 0.83rem;
  font-weight: 600;
  line-height: 1.4;
}

.example-detail-hero__context {
  padding: 29px 30px 27px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--se-radius-l);
  background: rgba(6, 29, 44, 0.28);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(7px);
}

.example-detail-hero__context-label {
  display: block;
  margin-bottom: 9px;
  color: #ffb08a;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.example-detail-hero__context dl {
  margin: 0;
}

.example-detail-hero__context dl > div {
  padding: 17px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

.example-detail-hero__context dt {
  margin-bottom: 6px;
  color: rgba(255, 255, 255, 0.48);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.075em;
  line-height: 1.4;
  text-transform: uppercase;
}

.example-detail-hero__context dd {
  margin: 0;
  color: #fff;
  font-size: 0.87rem;
  font-weight: 600;
  line-height: 1.48;
}

.example-detail-disclosure {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 21px;
  align-items: center;
  max-width: 880px;
  margin: -24px auto 0;
  padding: 23px 28px;
  border: 1px solid var(--example-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 15px 36px rgba(16, 46, 67, 0.1);
}

.example-detail-disclosure__mark {
  position: relative;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #edf4f6;
}

.example-detail-disclosure__mark::before,
.example-detail-disclosure__mark::after,
.example-detail-disclosure__mark span {
  position: absolute;
  width: 19px;
  height: 2px;
  left: 15px;
  border-radius: 2px;
  background: var(--example-blue);
  content: "";
}

.example-detail-disclosure__mark::before {
  top: 17px;
}

.example-detail-disclosure__mark span {
  top: 23px;
}

.example-detail-disclosure__mark::after {
  top: 29px;
  width: 13px;
}

.example-detail-disclosure strong {
  display: block;
  margin-bottom: 5px;
  color: var(--example-ink);
  font-size: 0.92rem;
}

.example-detail-disclosure p {
  margin: 0;
  color: var(--example-muted) !important;
  font-size: 0.875rem !important;
  line-height: 1.55 !important;
}

.example-detail-research,
.example-detail-article,
.example-detail-illustrations,
.example-detail-expertises,
.example-detail-related {
  margin-top: clamp(64px, 7vw, 82px);
  scroll-margin-top: 92px;
}

.example-detail-research,
.example-detail-article {
  max-width: 990px;
  margin-right: auto;
  margin-left: auto;
}

.example-detail-section-heading {
  max-width: 800px;
  margin-bottom: 34px;
}

.example-detail-section-heading h2,
.example-detail-expertises h2,
.example-detail-cta h2 {
  margin: 0;
  padding: 0;
  color: var(--example-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2rem, 3.7vw, 3.05rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.08;
  text-transform: none;
}

.example-detail-section-heading p,
.example-detail-expertises__lead {
  max-width: 700px;
  margin: 18px 0 0;
  color: var(--example-muted) !important;
  font-size: 0.98rem !important;
  line-height: 1.68 !important;
}

.example-detail-case {
  margin: 0;
  padding: clamp(27px, 4.5vw, 46px);
  border: 1px solid var(--example-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 14px 34px rgba(22, 54, 73, 0.055);
}

.example-detail-case .descr {
  overflow: visible;
  margin: 0;
  padding: 0;
  border: 0;
}

.example-detail-case .descr > div,
.example-detail-case .descr > p,
.example-detail-case .descr > ul {
  padding-left: 0;
}

.example-detail-page .example-detail-case .example-case-source {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin: 0 0 7px;
  padding: 22px 24px;
  border-radius: var(--se-radius-m);
  color: var(--example-ink);
  background: var(--example-soft);
}

.example-detail-case .example-case-source strong {
  font-size: 1.03rem;
  line-height: 1.45;
}

.example-detail-case .example-case-deal {
  display: inline-flex;
  gap: 5px;
  align-items: center;
  color: var(--example-blue);
  font-size: 0.82rem;
  font-weight: 700;
  white-space: normal;
}

.example-detail-page .example-detail-case .court-participants {
  margin: 0 0 12px;
  padding: 13px 24px 20px;
  color: #596f7b;
  background: none;
  font-size: 0.875rem;
  line-height: 1.5;
}

.example-detail-case .court-participants__label {
  color: var(--example-ink);
  font-weight: 700;
}

.example-detail-case .court-participants .hidden {
  color: #667a84;
  font-style: italic;
}

.example-detail-case .example-field {
  display: grid;
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 32px;
  margin: 0;
  padding: 23px 0;
  border-top: 1px solid #e5ecef;
}

.example-detail-case .example-field h4 {
  margin: 2px 0 0;
  padding: 0;
  color: var(--example-blue);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.075em;
  line-height: 1.48;
  text-transform: uppercase;
}

.example-detail-case .example-field__value {
  min-width: 0;
  color: #435d6c;
  font-size: 1rem;
  line-height: 1.68;
}

.example-detail-case .example-field__value p {
  margin: 0 0 14px;
  padding: 0;
}

.example-detail-case .example-field__value p:last-child {
  margin-bottom: 0;
}

.example-detail-case .example-field__value ul,
.example-detail-case .example-field__value ol {
  overflow: visible;
  margin: 15px 0;
  padding: 0 0 0 1.35rem;
}

.example-detail-case .example-field__value ul {
  list-style: disc outside;
}

.example-detail-case .example-field__value ol {
  list-style: decimal outside;
}

.example-detail-case .example-field__value li {
  display: list-item;
  margin: 0 0 9px;
  padding-left: 5px;
}

.example-detail-case .example-field__value li:last-child {
  margin-bottom: 0;
}

.example-detail-case .example-field__value li::marker {
  color: var(--example-blue);
  font-weight: 700;
}

.example-detail-case .example-field__value li > ul,
.example-detail-case .example-field__value li > ol {
  margin-top: 8px;
  margin-bottom: 8px;
}

.example-detail-case .example-field__value ul ul {
  list-style-type: circle;
}

.example-detail-case .example-field__value ol ol {
  list-style-type: lower-alpha;
}

.example-detail-case .example-field__value strong,
.example-detail-case .example-field__value b {
  color: var(--example-ink);
  font-weight: 700;
}

.example-detail-case .example-field__value em,
.example-detail-case .example-field__value i {
  font-style: italic;
}

.example-detail-case .example-field__value blockquote {
  margin: 16px 0;
  padding: 4px 0 4px 18px;
  border-left: 3px solid var(--example-orange);
  color: var(--example-muted);
}

.example-detail-case .example-field__value table {
  width: 100%;
  margin: 18px 0;
  border-collapse: collapse;
  font-size: 0.88rem;
}

.example-detail-case .example-field__value th,
.example-detail-case .example-field__value td {
  padding: 10px 12px;
  border: 1px solid var(--example-line);
  text-align: left;
  vertical-align: top;
}

.example-detail-case .example-field__value th {
  color: var(--example-ink);
  background: var(--example-soft);
  font-weight: 700;
}

.example-detail-case .example-field--questions .example-field__value > ol,
.example-detail-case .example-field--questions .example-field__value > ul {
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: example-question;
}

.example-detail-case .example-field--questions .example-field__value > ol > li,
.example-detail-case .example-field--questions .example-field__value > ul > li {
  position: relative;
  min-height: 34px;
  margin: 0;
  padding: 0 0 0 48px;
  counter-increment: example-question;
  list-style: none;
}

.example-detail-case .example-field--questions .example-field__value > ol > li + li,
.example-detail-case .example-field--questions .example-field__value > ul > li + li {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid #e5ecef;
}

.example-detail-case .example-field--questions .example-field__value > ol > li::before,
.example-detail-case .example-field--questions .example-field__value > ul > li::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  color: #fff;
  background: var(--example-blue);
  content: counter(example-question);
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 34px;
  text-align: center;
}

.example-detail-case .example-field--questions .example-field__value > ol > li + li::before,
.example-detail-case .example-field--questions .example-field__value > ul > li + li::before {
  top: 18px;
}

.example-detail-case .example-field__value p:first-child,
.example-detail-article__body p:first-child {
  margin-top: 0;
}

.example-detail-case .example-field__value p:last-child,
.example-detail-article__body p:last-child {
  margin-bottom: 0;
}

.example-detail-case a,
.example-detail-article a {
  border-bottom: 1px solid rgba(36, 95, 128, 0.28);
  color: var(--example-blue);
  text-decoration: none;
}

.example-detail-case a:hover,
.example-detail-article a:hover {
  border-bottom-color: var(--example-orange);
  color: var(--example-orange);
}

.example-detail-article__body {
  padding: clamp(28px, 4.5vw, 46px);
  border: 1px solid var(--example-line);
  border-radius: var(--se-radius-l);
  color: #435d6c;
  background: #fff;
  font-size: 0.96rem;
  line-height: 1.75;
  box-shadow: 0 14px 34px rgba(22, 54, 73, 0.05);
}

.example-detail-illustrations {
  padding: clamp(42px, 6vw, 68px);
  border-radius: var(--se-radius-xl);
  background: var(--example-soft);
}

.example-detail-gallery .slider-images {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 440px));
  gap: 18px;
  align-items: flex-start;
  justify-content: center;
}

.example-detail-gallery .slider-images::after {
  display: none;
  content: none;
}

.example-detail-gallery .slider-image {
  display: contents;
}

.example-detail-gallery .slider-image > span {
  min-width: 0;
  font-size: 0;
  line-height: 0;
}

.example-detail-gallery a.img {
  display: block;
  overflow: hidden;
  width: 100%;
  padding: 9px;
  border: 1px solid var(--example-line);
  border-radius: var(--se-radius-s);
  background: #fff;
  box-shadow: 0 13px 30px rgba(16, 46, 67, 0.13);
}

.example-detail-gallery picture,
.example-detail-gallery img {
  display: block;
  max-width: 100%;
}

.example-detail-gallery picture {
  height: auto !important;
}

.example-detail-gallery img {
  width: 100%;
  height: auto !important;
  max-height: 480px;
  border-radius: var(--se-radius-xs);
  object-fit: contain;
}

.example-detail-expertises {
  margin-top: clamp(64px, 7vw, 82px);
  padding: clamp(42px, 6vw, 68px);
  border: 1px solid var(--example-line);
  border-radius: var(--se-radius-xl);
  background: #fff;
}

.example-detail-expertises > ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 18px;
  margin: 34px 0 0;
  padding: 0;
  list-style: none;
}

.example-detail-expertises > ul > li {
  margin: 0;
  padding: 25px 27px;
  border-radius: var(--se-radius-m);
  background: var(--example-soft);
  list-style: none;
}

.example-detail-expertises > ul > li > b {
  display: block;
  color: var(--example-ink);
  font-size: 0.93rem;
  line-height: 1.48;
}

.example-detail-expertises ul ul {
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}

.example-detail-expertises ul ul li {
  position: relative;
  margin: 9px 0 0;
  padding-left: 17px;
  color: var(--example-muted);
  font-size: 0.82rem;
  line-height: 1.48;
  list-style: none;
}

.example-detail-expertises ul ul li::before {
  position: absolute;
  width: 5px;
  height: 5px;
  top: 0.55em;
  left: 0;
  border-radius: 50%;
  background: var(--example-orange);
  content: "";
}

.example-detail-expertises a {
  border-bottom: 1px solid rgba(36, 95, 128, 0.22);
  color: var(--example-blue);
  text-decoration: none;
}

.example-detail-expertises a:hover {
  border-bottom-color: var(--example-orange);
  color: var(--example-orange);
}

.example-detail-related__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.example-detail-related__grid .example-card {
  grid-template-columns: 145px minmax(0, 1fr);
}

.example-detail-related__grid .example-card--text-only {
  grid-template-columns: minmax(0, 1fr);
}

.example-detail-related__grid .example-card__media {
  padding: 24px 18px;
}

.example-detail-related__grid .example-card__body {
  padding: 26px 25px 25px;
}

.example-detail-related__grid .example-card__title {
  font-size: 1.32rem;
}

.example-detail-related__grid .example-card__summary {
  margin: -4px 0 16px;
  color: var(--example-muted);
  font-size: 0.9rem;
  line-height: 1.62;
}

.example-detail-related__grid .example-field {
  display: none;
}

.example-detail-page .example-detail-related__grid .court-participants {
  margin-bottom: 10px;
  padding-left: 0;
  background: none;
}

.example-detail-cta {
  position: relative;
  display: grid;
  overflow: hidden;
  min-height: 360px;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: clamp(42px, 7vw, 90px);
  align-items: center;
  margin-top: clamp(64px, 7vw, 82px);
  padding: clamp(46px, 6vw, 68px);
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: radial-gradient(circle at 92% 10%, rgba(75, 160, 201, 0.3), transparent 34%), linear-gradient(132deg, #0d293f 0%, #174e6d 100%);
}

.example-detail-cta::after {
  position: absolute;
  right: -175px;
  bottom: -245px;
  width: 520px;
  height: 520px;
  border: 64px solid rgba(255, 255, 255, 0.035);
  border-radius: 50%;
  content: "";
}

.example-detail-cta > * {
  position: relative;
  z-index: 1;
}

.example-detail-cta h2 {
  max-width: 650px;
  margin: 0 0 18px;
  color: #fff;
  font-size: clamp(2.15rem, 4vw, 3.2rem);
  letter-spacing: -0.02em;
  line-height: 1.06;
}

.example-detail-cta__copy > p {
  max-width: 710px;
  margin: 0;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 1.05rem !important;
  line-height: 1.65 !important;
}

.example-detail-cta__copy ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.example-detail-cta__copy li {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0;
  padding: 0;
  color: rgba(255, 255, 255, 0.88);
  font-size: 0.84rem;
  font-weight: 600;
}

.example-detail-cta__copy li::before {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: #ff8a54;
  content: "";
}

.example-detail-cta__actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 29px 28px 27px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--se-radius-l);
  background: rgba(5, 26, 42, 0.22);
}

.example-detail-cta__button {
  display: inline-flex;
  min-height: 54px;
  align-items: center;
  justify-content: center;
  padding: 14px 22px;
  border: 1px solid #ed6b32;
  border-radius: var(--se-radius-s);
  color: #fff;
  background: #ed6b32;
  font-weight: 600;
  text-decoration: none;
  transform: none;
}

.example-detail-cta__button:hover {
  border-color: var(--se-orange-action);
  color: #fff;
  background: var(--se-orange-action);
  transform: none;
}

.example-detail-cta__actions > span {
  margin: 24px 0 9px;
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.example-detail-cta__phone {
  align-self: flex-start;
  border-bottom: 1px solid rgba(255, 255, 255, 0.35);
  color: #fff;
  font-size: 1.28rem;
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
  transform: none;
}

.example-detail-cta__phone:hover {
  border-bottom-color: #ff9a69;
  color: #ffb18b;
  transform: none;
}

.example-detail-cta__actions small {
  margin-top: 7px;
  color: rgba(255, 255, 255, 0.54);
  font-size: 0.74rem;
  line-height: 1.4;
}

.example-detail-cta__button:focus-visible,
.example-detail-cta__phone:focus-visible {
  outline: 3px solid #ffc09d;
  outline-offset: 4px;
}

@media (max-width: 1080px) {
  .example-detail-related__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 920px) {
  .example-detail-hero,
.example-detail-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .example-detail-hero__context {
    max-width: 680px;
  }

  .example-detail-cta__actions {
    width: 100%;
    max-width: 430px;
  }
}
@media (max-width: 720px) {
  .example-detail-page {
    padding-right: 14px;
    padding-left: 14px;
  }

  .example-detail-hero {
    margin-top: 10px;
    padding: 38px 28px;
    border-radius: var(--se-radius-l);
  }

  .example-detail-hero h1 {
    font-size: clamp(2.3rem, 11vw, 3.2rem);
  }

  .example-detail-hero__context {
    padding: 24px;
  }

  .example-detail-disclosure {
    grid-template-columns: minmax(0, 1fr);
    margin-right: 13px;
    margin-left: 13px;
    padding: 24px;
  }

  .example-detail-case {
    padding: 25px 22px;
  }

  .example-detail-case .example-case-source {
    grid-template-columns: minmax(0, 1fr);
    gap: 9px;
    padding: 19px;
  }

  .example-detail-page .example-detail-case .court-participants {
    padding-right: 19px;
    padding-left: 19px;
  }

  .example-detail-page .example-detail-case .example-case-source {
    grid-template-columns: minmax(0, 1fr);
    gap: 9px;
  }

  .example-detail-case .example-case-deal {
    display: flex;
    width: 100%;
  }

  .example-detail-case .example-field {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
    padding: 20px 0;
  }

  .example-detail-case .example-field h4 {
    margin-top: 0;
  }

  .example-detail-case .example-field--questions .example-field__value > ol > li,
.example-detail-case .example-field--questions .example-field__value > ul > li {
    min-height: 30px;
    padding-left: 42px;
  }

  .example-detail-case .example-field--questions .example-field__value > ol > li::before,
.example-detail-case .example-field--questions .example-field__value > ul > li::before {
    width: 30px;
    height: 30px;
    line-height: 30px;
  }

  .example-detail-illustrations,
.example-detail-expertises {
    padding: 34px 25px;
    border-radius: var(--se-radius-l);
  }

  .example-detail-gallery .slider-images {
    grid-template-columns: minmax(0, 1fr);
  }

  .example-detail-expertises > ul {
    grid-template-columns: minmax(0, 1fr);
  }

  .example-detail-related__grid .example-card {
    grid-template-columns: 112px minmax(0, 1fr);
  }

  .example-detail-related__grid .example-card--text-only {
    grid-template-columns: minmax(0, 1fr);
  }

  .example-detail-related__grid .example-card__media {
    min-height: 100%;
    padding: 18px 12px;
  }

  .example-detail-related__grid .example-card__body {
    padding: 21px 18px 20px;
  }

  .example-detail-related__grid .example-card__media img {
    max-height: 150px;
  }

  .example-detail-related__grid .example-card__title {
    font-size: 1.18rem;
  }

  .example-detail-cta {
    min-height: 0;
    padding: 38px 24px 28px;
    border-radius: var(--se-radius-l);
  }
}
@media (max-width: 520px) {
  .example-detail-research,
.example-detail-article,
.example-detail-illustrations,
.example-detail-expertises,
.example-detail-related,
.example-detail-cta {
    margin-top: 54px;
  }

  .example-detail-section-heading h2,
.example-detail-expertises h2,
.example-detail-cta h2 {
    font-size: 2rem;
  }

  .example-detail-hero__summary {
    font-size: 1rem !important;
  }

  .example-detail-cta__copy ul {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .example-detail-cta__actions {
    max-width: none;
    padding: 23px 20px 21px;
  }
}
.cases-slider .example-description {
  padding-right: 3px;
  margin-top: 1em;
}
.cases-slider .example-description .img-container {
  display: inline-block;
  margin-right: 3px;
  margin-bottom: 1em;
  margin-left: 1em;
  float: right;
}
.cases-slider .example-description .img-container .img {
  width: 200px;
  background: linear-gradient(245deg, #0161ce, #1e3560) 20px 20px no-repeat border-box;
  padding: 7px;
}
@media (max-width: 767px) {
  .cases-slider .example-description .img-container {
    text-align: center;
    display: block;
    float: none;
  }
  .cases-slider .example-description .img-container a.img {
    background: none;
    width: 200px;
  }
  .cases-slider .example-description .img-container a.img img {
    margin-bottom: 1em;
  }
}
.cases-slider .example-description .txt .example-card__meta > span,
.cases-slider .example-description .txt .example-card__action {
  display: none;
}
.cases-slider .example-description .txt .descr {
  border-bottom: none;
}
.cases-slider .example-description .txt h3, .cases-slider .example-description .txt .h3 {
  font-size: 1.2em !important;
  font-weight: 600;
  padding: 0;
  margin-bottom: 0.5em;
}
@media (max-width: 767px) {
  .cases-slider .example-description .txt h3, .cases-slider .example-description .txt .h3 {
    font-size: 1.1em;
  }
}

.question-intake,
.question-sent,
.question-confirm,
.privacy-consent {
  --request-ink: var(--se-ink);
  --request-muted: var(--se-muted);
  --request-line: var(--se-line);
  --request-soft: var(--se-surface);
  --request-blue: var(--se-blue);
  --request-orange: var(--se-orange);
  --request-error: #b42318;
  max-width: 1200px;
  margin: 0 auto;
  padding-bottom: clamp(70px, 9vw, 120px);
  color: var(--request-ink);
}

.question-intake *,
.question-intake *::before,
.question-intake *::after,
.question-sent *,
.question-sent *::before,
.question-sent *::after,
.question-confirm *,
.question-confirm *::before,
.question-confirm *::after,
.privacy-consent *,
.privacy-consent *::before,
.privacy-consent *::after {
  box-sizing: border-box;
}

.question-intake__hero {
  margin-top: 20px;
  padding: clamp(42px, 6vw, 76px);
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: radial-gradient(circle at 92% 4%, rgba(73, 157, 198, 0.27), transparent 35%), linear-gradient(130deg, #102d43 0%, #174b67 100%);
}

.question-intake__hero > span,
.question-intake__aside > span,
.privacy-consent__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  color: #f29a70;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.question-intake__hero > span::before,
.question-intake__aside > span::before,
.privacy-consent__eyebrow::before {
  width: 32px;
  height: 2px;
  flex: 0 0 32px;
  background: currentColor;
  content: "";
}

.question-intake__hero h1,
.privacy-consent h1 {
  max-width: 900px;
  margin: 0 0 22px;
  color: inherit;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2.4rem, 5vw, 4.3rem);
  font-weight: 600;
  line-height: 1.04;
  letter-spacing: -0.02em;
  text-align: left;
  text-transform: none;
}

.question-intake__hero p {
  max-width: 820px;
  margin: 0;
  color: rgba(255, 255, 255, 0.78);
  font-size: clamp(1.05rem, 1.7vw, 1.25rem);
  line-height: 1.6;
}

.question-intake__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  gap: clamp(28px, 5vw, 64px);
  align-items: start;
  padding-top: clamp(42px, 6vw, 72px);
}

.question-intake__main {
  padding: clamp(28px, 4.5vw, 52px);
  border: 1px solid var(--request-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 18px 48px rgba(20, 52, 75, 0.07);
}

.question-intake__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.question-intake__fields--three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.question-intake__fields--spaced {
  margin-top: 22px;
}

.question-intake__field--span-two {
  grid-column: span 2;
}

.question-intake__field {
  min-width: 0;
}

.question-intake__field--wide {
  margin-top: 28px;
}

.question-intake__field label {
  display: block;
  margin-bottom: 8px;
  color: var(--request-ink);
  font-size: 0.9rem;
  font-weight: 600;
}

.question-intake__field label small {
  color: var(--request-muted);
  font-size: 0.76rem;
  font-weight: 500;
}

.question-intake__field input,
.question-intake__field textarea,
.question-intake__field select {
  width: 100%;
  min-width: 0;
  padding: 13px 15px;
  border: 1px solid #bdccd5;
  border-radius: var(--se-radius-s);
  color: var(--request-ink);
  background: #fff;
  font: inherit;
  line-height: 1.45;
}

.question-intake__field textarea {
  min-height: 168px;
  resize: vertical;
}

.question-intake__field input:focus,
.question-intake__field textarea:focus,
.question-intake__field select:focus {
  border-color: #477e9b;
  outline: 3px solid rgba(71, 126, 155, 0.17);
}

.question-intake__field input.error,
.question-intake__field textarea.error,
.question-intake__field select.error {
  border-color: var(--request-error);
}

.question-intake__field > small,
.question-intake__field-hint {
  display: block;
  margin: 8px 0 0;
  color: var(--request-muted);
  font-size: 0.78rem;
  line-height: 1.45;
}

.question-intake span.error {
  color: var(--request-error);
}

.question-intake__section {
  margin-top: 34px;
  padding-top: 34px;
  border-top: 1px solid var(--request-line);
}

.question-intake form > .question-intake__section:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.question-intake__section-heading {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 20px;
  align-items: start;
  margin-bottom: 24px;
}

.question-intake__section-heading > span {
  padding-top: 4px;
  color: var(--request-orange);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.35;
  text-transform: uppercase;
}

.question-intake__section-heading h2 {
  margin: 0 0 7px;
  color: var(--request-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.45rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.2;
  text-align: left;
  text-transform: none;
}

.question-intake__section-heading p {
  margin: 0;
  color: var(--request-muted);
  font-size: 0.86rem;
  line-height: 1.55;
}

.question-intake__section .question-intake__field--wide {
  margin-top: 22px;
}

.question-intake__field--compact {
  max-width: 280px;
}

.question-intake__field--role {
  max-width: 560px;
}

.question-intake__conditional {
  padding: 24px;
  border: 1px solid var(--request-line);
  border-top: 3px solid #86a9bc;
  border-radius: 0 0 var(--se-radius-m) var(--se-radius-m);
  background: #f7fafb;
}

.question-intake__conditional--compact {
  margin-top: 18px;
  padding: 18px;
}

.question-intake__conditional--compact .question-intake__field--wide {
  margin-top: 0;
}

.question-intake__choices {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.question-intake__choice {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  min-height: 82px;
  padding: 16px;
  border: 1px solid var(--request-line);
  border-radius: var(--se-radius-s);
  color: var(--request-ink);
  background: #fbfdfe;
  cursor: pointer;
}

.question-intake__choice:hover {
  border-color: #9eb8c7;
  background: var(--request-soft);
}

.question-intake__choice input {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
}

.question-intake__choice span {
  display: block;
}

.question-intake__choice strong,
.question-intake__choice small {
  display: block;
}

.question-intake__choice strong {
  font-size: 0.9rem;
  line-height: 1.35;
}

.question-intake__choice small {
  margin-top: 4px;
  color: var(--request-muted);
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.4;
}

.question-intake h3 {
  margin: 32px 0 10px;
  color: var(--request-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.08rem;
  font-weight: 600;
  line-height: 1.35;
}

.question-intake h3 small {
  color: var(--request-muted);
  font-size: 0.75rem;
  font-weight: 500;
}

.question-intake .files-comment {
  margin-bottom: 18px;
  padding: 18px 20px;
  border-left: 3px solid var(--request-orange);
  color: #526a79;
  background: var(--request-soft);
  font-size: 0.86rem;
  line-height: 1.62;
}

.question-intake .mfuex input[type=file] {
  max-width: 100%;
}

.question-intake .captcha-block,
.question-confirm .captcha-block {
  margin-top: 34px;
  padding-top: 28px;
  border-top: 1px solid var(--request-line);
}

.question-intake .captcha-block .r,
.question-confirm .captcha-block .r {
  display: grid;
  grid-template-columns: auto minmax(180px, 1fr);
  gap: 16px;
  align-items: center;
}

.question-intake .captcha-block .fields,
.question-intake .captcha-block .fields > div,
.question-confirm .captcha-block .fields,
.question-confirm .captcha-block .fields > div {
  width: 100%;
  margin: 0;
}

.question-intake .captcha-block input[type=text],
.question-confirm .captcha-block input[type=text] {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid #bdccd5;
  border-radius: var(--se-radius-s);
  font: inherit;
}

.question-intake .captcha-block .privacy,
.question-confirm .captcha-block .privacy {
  margin-top: 24px;
  padding: 18px 20px;
  border: 1px solid var(--request-line);
  border-radius: var(--se-radius-s);
  background: #fbfdfe;
}

.question-intake .captcha-block .privacy input,
.question-confirm .captcha-block .privacy input {
  width: 18px;
  height: 18px;
  margin: 2px 9px 0 0;
  vertical-align: top;
}

.question-intake .captcha-block .privacy label,
.question-confirm .captcha-block .privacy label {
  display: inline;
  color: var(--request-ink);
  font-size: 0.87rem;
  line-height: 1.5;
}

.question-intake .captcha-block .privacy p {
  margin: 8px 0 0 29px;
  color: var(--request-muted);
  font-size: 0.76rem;
  line-height: 1.45;
}

.question-intake .submit-block {
  margin-top: 28px;
  text-align: left;
}

.question-intake__submit {
  min-height: 48px;
  padding: 12px 24px;
  border: 1px solid var(--request-orange);
  border-radius: var(--se-radius-s);
  color: #fff;
  background: var(--request-orange);
  cursor: pointer;
  font: inherit;
  font-weight: 700;
}

.question-intake__submit:hover,
.question-intake__submit:focus-visible {
  border-color: #cb5422;
  background: #cb5422;
}

.question-intake__submit:focus-visible {
  outline: 3px solid rgba(235, 111, 56, 0.24);
  outline-offset: 2px;
}

.question-intake__aside {
  position: sticky;
  top: 24px;
  padding: 30px;
  border-top: 4px solid var(--request-orange);
  border-radius: 0 0 var(--se-radius-l) var(--se-radius-l);
  background: var(--request-soft);
}

.question-intake__aside h2 {
  margin: 0 0 22px;
  color: var(--request-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -0.02em;
  text-align: left;
  text-transform: none;
}

.question-intake__aside ol {
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: request-steps;
}

.question-intake__aside li {
  position: relative;
  margin: 0 0 18px;
  padding-left: 38px;
  color: #3f5969;
  line-height: 1.5;
  counter-increment: request-steps;
}

.question-intake__aside li::before {
  position: absolute;
  top: -2px;
  left: 0;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  color: #fff;
  background: var(--request-blue);
  content: counter(request-steps);
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 26px;
  text-align: center;
}

.question-intake__aside > p {
  margin: 24px 0 0;
  padding-top: 20px;
  border-top: 1px solid var(--request-line);
  color: var(--request-muted);
  font-size: 0.8rem;
  line-height: 1.55;
}

.privacy-consent__document {
  max-width: 920px;
  margin: 24px auto 0;
  padding: clamp(36px, 6vw, 72px);
  border: 1px solid var(--request-line);
  border-top: 5px solid var(--request-blue);
  border-radius: 0 0 var(--se-radius-l) var(--se-radius-l);
  background: #fff;
  box-shadow: 0 18px 50px rgba(20, 52, 75, 0.06);
}

.privacy-consent h1 {
  color: var(--request-ink);
  font-size: clamp(2.25rem, 4.8vw, 3.8rem);
}

.privacy-consent__lead {
  max-width: 800px;
  margin: 0 0 42px;
  color: #395566;
  font-size: 1.12rem;
  line-height: 1.7;
}

.privacy-consent section {
  margin-top: 38px;
  padding-top: 34px;
  border-top: 1px solid var(--request-line);
}

.privacy-consent h2 {
  margin: 0 0 16px;
  color: var(--request-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.55rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: left;
  text-transform: none;
}

.privacy-consent h3 {
  margin: 24px 0 10px;
  color: var(--request-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.08rem;
  font-weight: 600;
  line-height: 1.35;
}

.privacy-consent p,
.privacy-consent li {
  color: #465e6d;
  font-size: 0.98rem;
  line-height: 1.68;
}

.privacy-consent ul {
  margin: 18px 0;
  padding-left: 22px;
  list-style: disc;
}

.privacy-consent li {
  margin-bottom: 8px;
}

.privacy-consent__note {
  margin-top: 42px;
  padding: 24px 26px;
  border-left: 4px solid var(--request-orange);
  background: var(--request-soft);
}

.privacy-consent__note strong {
  color: var(--request-ink);
  font-size: 1rem;
}

.privacy-consent__note p,
.privacy-consent__links,
.privacy-consent__updated {
  margin: 8px 0 0;
}

.privacy-consent__note > a {
  display: inline-block;
  margin-top: 10px;
  font-weight: 600;
}

.privacy-consent__links {
  margin-top: 34px;
}

.privacy-consent__updated {
  color: var(--request-muted) !important;
  font-size: 0.78rem !important;
}

.privacy-policy__subtitle {
  max-width: 720px;
  margin: -6px 0 34px !important;
  color: #526b7a !important;
  font-size: 1.12rem !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
}

.privacy-policy ol.privacy-policy__provisions {
  margin: 0 0 46px;
  padding: 0;
  list-style: none !important;
  counter-reset: policy-provision;
}

.privacy-policy__provisions > li {
  position: relative;
  margin: 0;
  padding: 22px 0 22px 56px;
  border-top: 1px solid var(--request-line);
  counter-increment: policy-provision;
  list-style: none !important;
}

.privacy-policy__provisions > li::before {
  position: absolute;
  top: 22px;
  left: 0;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  color: #fff;
  background: var(--request-blue);
  content: counter(policy-provision);
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 34px;
  text-align: center;
}

.privacy-policy__provisions > li > ul {
  margin: 16px 0 0;
  padding-left: 22px;
  list-style: disc;
}

.privacy-policy__provisions > li > ul > li {
  margin: 0 0 7px;
  padding: 0;
  border: 0;
}

.privacy-policy__document > h2:not(.privacy-policy__subtitle) {
  margin-top: 52px;
  padding-top: 38px;
  border-top: 1px solid var(--request-line);
}

.privacy-policy__updated {
  display: inline-block;
  margin: 6px 0 0 !important;
  padding: 7px 11px;
  border-radius: var(--se-radius-xs);
  color: var(--request-muted) !important;
  background: var(--request-soft);
  font-size: 0.76rem !important;
  font-weight: 600;
}

@media screen and (max-width: 1240px) {
  .question-intake,
.privacy-consent {
    margin-right: 20px;
    margin-left: 20px;
  }
}
@media screen and (max-width: 860px) {
  .question-intake__layout {
    grid-template-columns: 1fr;
  }

  .question-intake__aside {
    position: static;
  }
}
@media screen and (max-width: 600px) {
  .question-intake,
.privacy-consent {
    margin-right: 10px;
    margin-left: 10px;
  }

  .question-intake__hero {
    padding: 38px 24px;
    border-radius: var(--se-radius-l);
  }

  .question-intake__hero h1,
.privacy-consent h1 {
    font-size: clamp(2rem, 11vw, 2.8rem);
  }

  .question-intake--detailed .question-intake__hero h1 {
    overflow-wrap: normal;
    font-size: clamp(1.8rem, 8.35vw, 2.05rem);
    hyphens: none;
  }

  .question-intake__main,
.privacy-consent__document {
    padding: 28px 20px;
  }

  .question-intake__fields,
.question-intake__fields--three,
.question-intake .captcha-block .r,
.question-confirm .captcha-block .r {
    grid-template-columns: 1fr;
  }

  .question-intake__field--span-two {
    grid-column: auto;
  }

  .question-intake__section-heading {
    grid-template-columns: 1fr;
    gap: 7px;
  }

  .question-intake__choices {
    grid-template-columns: 1fr;
  }

  .question-intake__conditional {
    padding: 20px 16px;
  }

  .question-intake__submit {
    width: 100%;
  }

  .privacy-policy__provisions > li {
    padding-left: 46px;
  }

  .privacy-policy__provisions > li::before {
    width: 30px;
    height: 30px;
    line-height: 30px;
  }

  .privacy-policy h1 {
    overflow-wrap: break-word;
    font-size: clamp(2rem, 8.8vw, 2.15rem);
    hyphens: auto;
  }
}
.question-sent__card,
.question-confirm__card {
  margin-top: 20px;
  padding: clamp(32px, 5vw, 58px);
  border: 1px solid var(--request-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 18px 48px rgba(20, 52, 75, 0.07);
}

.question-sent__eyebrow,
.question-confirm__eyebrow {
  display: block;
  margin-bottom: 16px;
  color: var(--request-orange);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.question-sent h1,
.question-confirm h1 {
  max-width: 700px;
  margin: 0 0 18px;
  padding: 0;
  color: var(--request-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(1.95rem, 4vw, 3.05rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.07;
  text-align: left;
  text-transform: none;
}

.question-sent__lead,
.question-confirm__lead {
  max-width: 660px;
  margin: 0;
  color: var(--request-muted);
  font-size: 1.02rem;
  line-height: 1.62;
}

.question-sent__number {
  margin-top: 30px;
  padding: 20px 24px;
  border: 1px solid var(--request-line);
  border-radius: var(--se-radius-m);
  background: var(--request-soft);
}

.question-sent__number span {
  display: block;
  margin-bottom: 6px;
  color: var(--request-muted);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.question-sent__number strong {
  display: block;
  color: var(--request-ink);
  font-size: 1.5rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
}

.question-sent__number small {
  display: block;
  margin-top: 8px;
  color: var(--request-muted);
  font-size: 0.82rem;
  line-height: 1.5;
}

.question-sent__schedule {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--request-line);
}

.question-sent__hours {
  margin: 0 0 12px;
  color: var(--request-muted);
  font-size: 0.95rem;
  line-height: 1.55;
}

.question-sent__call {
  margin: 0;
  color: var(--request-ink);
  font-size: 1.02rem;
  line-height: 1.5;
}

.question-sent__call a {
  border-bottom: 1px solid rgba(23, 78, 109, 0.3);
  color: var(--request-ink);
  font-weight: 600;
  white-space: nowrap;
}

.question-sent__call a:hover {
  border-bottom-color: var(--request-orange);
  color: var(--request-orange);
}

.question-sent__call-note {
  margin: 6px 0 0;
  color: var(--request-muted);
  font-size: 0.82rem;
}

.question-sent__next {
  margin-top: clamp(40px, 5vw, 64px);
}

.question-sent__next h2 {
  margin: 0 0 20px;
  padding: 0;
  color: var(--request-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(1.35rem, 2.4vw, 1.75rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  text-align: left;
  text-transform: none;
}

.question-sent__links {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.question-sent__links a {
  display: block;
  padding: 22px 24px;
  border: 1px solid var(--request-line);
  border-radius: var(--se-radius-m);
  color: var(--request-ink);
  background: #fff;
  text-decoration: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.question-sent__links a:hover {
  border-color: rgba(237, 107, 50, 0.6);
  color: var(--request-ink);
  box-shadow: 0 14px 32px rgba(20, 52, 75, 0.09);
  transform: translateY(-2px);
}

.question-sent__links strong {
  display: block;
  margin-bottom: 8px;
  font-size: 1.02rem;
  font-weight: 600;
}

.question-sent__links small {
  display: block;
  color: var(--request-muted);
  font-size: 0.86rem;
  line-height: 1.5;
}

.question-confirm .submit-block {
  margin-top: 28px;
  text-align: left;
}

.question-intake .captcha-block .captcha-div,
.question-confirm .captcha-block .captcha-div {
  overflow: hidden;
  width: max-content;
  max-width: 100%;
  border: 1px solid var(--request-line);
  border-radius: var(--se-radius-s);
  background: #fff;
}

.question-intake .captcha-block .captcha-div img,
.question-confirm .captcha-block .captcha-div img {
  display: block;
  max-width: 100%;
}

.question-intake .captcha-block .fields > div,
.question-confirm .captcha-block .fields > div {
  display: flex;
  flex-direction: column-reverse;
  gap: 8px;
}

.question-intake .captcha-block .fields label,
.question-confirm .captcha-block .fields label {
  color: var(--request-ink);
  font-size: 0.84rem;
  font-weight: 500;
  line-height: 1.35;
}

.question-intake .captcha-block .link-div,
.question-confirm .captcha-block .link-div {
  margin-top: 14px;
}

.question-intake .captcha-block .link-div a,
.question-confirm .captcha-block .link-div a {
  display: inline-block;
  padding: 6px 0;
  border-bottom: 1px dotted rgba(23, 78, 109, 0.5);
  color: var(--request-blue);
  font-size: 0.86rem;
  font-weight: 500;
}

.question-intake .captcha-block .link-div a:hover,
.question-confirm .captcha-block .link-div a:hover {
  border-bottom-color: var(--request-orange);
  color: var(--request-orange);
}

.question-intake input[type=file],
.question-confirm input[type=file] {
  width: 100%;
  max-width: 100%;
  color: var(--request-muted);
  font-size: 0.88rem;
}

.question-intake input[type=file]::file-selector-button,
.question-confirm input[type=file]::file-selector-button {
  margin-right: 14px;
  padding: 12px 18px;
  border: 1px solid var(--request-line);
  border-radius: var(--se-radius-s);
  color: var(--request-ink);
  background: #fff;
  cursor: pointer;
  font: inherit;
  font-weight: 500;
  transition: border-color 0.18s ease, color 0.18s ease;
}

.question-intake input[type=file]::file-selector-button:hover,
.question-confirm input[type=file]::file-selector-button:hover {
  border-color: var(--request-orange);
  color: var(--request-orange);
}

.question-intake .files-comment p {
  margin: 0;
}

.files-comment__more {
  margin-top: 12px;
}

.files-comment__more summary {
  display: inline-block;
  border-bottom: 1px dotted rgba(23, 78, 109, 0.5);
  color: var(--request-blue);
  cursor: pointer;
  font-size: 0.85rem;
  font-weight: 500;
  list-style: none;
}

.files-comment__more summary::-webkit-details-marker {
  display: none;
}

.files-comment__more summary::after {
  content: " ↓";
}

.files-comment__more[open] summary::after {
  content: " ↑";
}

.files-comment__more ul {
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}

.files-comment__more li {
  position: relative;
  padding-left: 16px;
}

.files-comment__more li + li {
  margin-top: 10px;
}

.files-comment__more li::before {
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--request-orange);
  content: "";
}

@media screen and (min-width: 601px) and (max-width: 1023px) {
  .question-intake__main {
    max-width: 620px;
  }
}
@media screen and (max-width: 900px) {
  .question-sent__links {
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 600px) {
  .question-sent__card,
.question-confirm__card {
    padding: 28px 20px;
  }

  .question-sent__number {
    padding: 18px;
  }

  .question-intake__main {
    max-width: none;
  }

  .question-intake input[type=file]::file-selector-button,
.question-confirm input[type=file]::file-selector-button {
    margin-right: 10px;
    padding: 12px 14px;
  }
}
.tools-page,
.tool-page {
  --tools-ink: var(--se-ink);
  --tools-ink-deep: var(--se-ink-deep);
  --tools-blue: var(--se-blue);
  --tools-orange: var(--se-orange);
  --tools-muted: var(--se-muted);
  --tools-surface: var(--se-surface);
  --tools-line: var(--se-line);
  --tools-notable-ink: #7a4c05;
  --tools-notable-bg: #fdf3e2;
  --tools-alert-ink: #8a2f22;
  --tools-alert-bg: #fbeceb;
  max-width: 1200px;
  margin: 0 auto;
  padding-bottom: clamp(72px, 8vw, 112px);
  color: var(--tools-ink);
}

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

.tools-page h1,
.tools-page h2,
.tools-page h3,
.tools-page p,
.tool-page h1,
.tool-page h2,
.tool-page h3,
.tool-page p {
  margin-top: 0;
}

.tools-page h1,
.tools-page h2,
.tools-page h3,
.tool-page h1,
.tool-page h2,
.tool-page h3 {
  color: var(--tools-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-weight: 600;
  letter-spacing: -0.02em;
  text-align: left;
  text-transform: none;
}

.tools-page h1,
.tool-page h1 {
  margin: 0 0 24px;
  padding: 0;
  color: #fff;
  font-size: clamp(2.3rem, 3.3vw, 3.4rem);
  line-height: 1.05;
}

.tools-page h2,
.tool-page h2 {
  margin-bottom: 18px;
  font-size: clamp(1.7rem, 2.8vw, 2.5rem);
  line-height: 1.12;
}

.tools-page h3,
.tool-page h3 {
  margin-bottom: 10px;
  font-size: clamp(1.2rem, 1.9vw, 1.5rem);
  line-height: 1.22;
}

.tools-page p,
.tool-page p {
  font-size: 1rem;
  line-height: 1.6;
}

.tools-eyebrow,
.tool-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
  color: var(--tools-orange);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.tools-eyebrow::before,
.tool-eyebrow::before {
  width: 32px;
  height: 2px;
  flex: 0 0 32px;
  background: currentColor;
  content: "";
}

.tools-button,
.tool-button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 0.88rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.tools-button--primary,
.tools-page a.tools-button--primary:visited,
.tool-button--primary,
.tool-page a.tool-button--primary:visited {
  background: var(--tools-orange);
  color: #fff;
}

.tools-button--primary:hover,
.tools-button--primary:focus-visible,
.tool-button--primary:hover,
.tool-button--primary:focus-visible {
  background: #d95b27;
  color: #fff;
}

.tools-button--ghost,
.tools-page a.tools-button--ghost:visited,
.tool-button--ghost,
.tool-page a.tool-button--ghost:visited {
  border-color: rgba(255, 255, 255, 0.38);
  color: #fff;
}

.tools-button--ghost:hover,
.tools-button--ghost:focus-visible,
.tool-button--ghost:hover,
.tool-button--ghost:focus-visible {
  border-color: #fff;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}

.tools-page a:focus-visible,
.tools-page button:focus-visible,
.tool-page a:focus-visible,
.tool-page button:focus-visible,
.tool-page input:focus-visible {
  outline: 3px solid rgba(237, 107, 50, 0.36);
  outline-offset: 4px;
}

.tools-hero,
.tool-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.85fr);
  gap: clamp(28px, 4vw, 56px);
  align-items: start;
  margin-top: 20px;
  padding: clamp(38px, 5.5vw, 68px);
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: radial-gradient(circle at 92% 4%, rgba(73, 157, 198, 0.27), transparent 35%), linear-gradient(130deg, #102d43 0%, #174b67 100%);
}

.tools-hero__copy > p,
.tool-hero__copy > p {
  max-width: 780px;
  margin: 0;
  color: rgba(255, 255, 255, 0.8);
  font-size: clamp(1.02rem, 1.5vw, 1.18rem);
  line-height: 1.6;
}

.tool-hero__formats {
  margin: 18px 0 0;
  color: rgba(255, 255, 255, 0.68);
  font-size: 0.88rem;
  line-height: 1.5;
}

.tool-hero__formats b {
  color: #fff;
  font-weight: 600;
}

.tools-hero__note,
.tool-hero__note {
  padding: 26px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: var(--se-radius-l);
  background: rgba(255, 255, 255, 0.06);
}

.tools-hero__note > span,
.tool-hero__note > span {
  display: block;
  margin-bottom: 10px;
  color: #f29a70;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.tools-hero__note > strong,
.tool-hero__note > strong {
  display: block;
  margin-bottom: 10px;
  color: #fff;
  font-size: 1.1rem;
  font-weight: 600;
  line-height: 1.3;
}

.tools-hero__note > p,
.tool-hero__note > p {
  margin: 0;
  color: rgba(255, 255, 255, 0.76);
  font-size: 0.92rem;
  line-height: 1.55;
}

.tools-offline,
.tool-offline {
  margin-top: 28px;
  padding: 22px 26px;
  border: 1px solid #e8d3a8;
  border-left: 4px solid #c98a24;
  border-radius: var(--se-radius-m);
  background: var(--tools-notable-bg);
}

.tools-offline > strong,
.tool-offline > strong {
  display: block;
  margin-bottom: 6px;
  color: var(--tools-notable-ink);
  font-size: 1rem;
  font-weight: 600;
}

.tools-offline > p,
.tool-offline > p {
  margin: 0;
  color: var(--tools-ink);
  font-size: 0.95rem;
  line-height: 1.55;
}

.tools-section-heading {
  margin-bottom: 28px;
}

.tools-grid {
  padding-top: clamp(48px, 6vw, 80px);
}

.tools-grid__items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(18px, 2.4vw, 28px);
}

.tools-card {
  display: flex;
  flex-direction: column;
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-l);
  background: #fff;
}

.tools-card__kind {
  display: block;
  margin-bottom: 12px;
  color: var(--tools-muted);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.3;
  text-transform: uppercase;
}

.tools-card h3 {
  margin-bottom: 12px;
}

.tools-card h3 a,
.tools-page .tools-card h3 a:visited {
  color: var(--tools-ink);
  text-decoration: none;
}

.tools-card h3 a:hover,
.tools-card h3 a:focus-visible {
  color: var(--tools-blue);
  text-decoration: underline;
}

.tools-card__lead {
  margin-bottom: 16px;
  color: var(--tools-muted);
  font-size: 0.95rem;
  line-height: 1.6;
}

.tools-card__checks {
  margin: 0 0 18px;
  padding: 0;
  list-style: none;
}

.tools-card__checks li {
  position: relative;
  margin-bottom: 7px;
  padding-left: 18px;
  font-size: 0.92rem;
  line-height: 1.5;
}

.tools-card__checks li::before {
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--tools-orange);
  content: "";
}

.tools-card__formats {
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid var(--tools-line);
  color: var(--tools-muted);
  font-size: 0.82rem;
  font-weight: 500;
  line-height: 1.4;
}

.tools-card__formats b {
  color: var(--tools-ink);
  font-weight: 700;
}

.tools-how {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(260px, 0.8fr);
  gap: clamp(26px, 4vw, 52px);
  align-items: start;
  margin-top: clamp(52px, 6vw, 84px);
  padding: clamp(30px, 4vw, 50px);
  border-radius: var(--se-radius-xl);
  background: var(--tools-surface);
}

.tools-how__copy p {
  max-width: 720px;
  margin-bottom: 14px;
  color: var(--tools-ink);
}

.tools-how__note {
  padding: 24px;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-l);
  background: #fff;
}

.tools-how__note strong {
  display: block;
  margin-bottom: 10px;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.3;
}

.tools-how__note p {
  margin: 0;
  color: var(--tools-muted);
  font-size: 0.92rem;
  line-height: 1.55;
}

.tool-feedback {
  margin-top: 26px;
}

.tool-feedback ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.tool-feedback li {
  margin-bottom: 8px;
  padding: 16px 20px;
  border: 1px solid #e3bdb6;
  border-left: 4px solid var(--tools-alert-ink);
  border-radius: var(--se-radius-m);
  background: var(--tools-alert-bg);
  color: var(--tools-alert-ink);
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.5;
}

.tool-suggestion {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 14px;
  margin-top: 12px;
  padding: 16px 20px;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-m);
  background: var(--tools-surface);
}

.tool-suggestion p {
  margin: 0;
  font-size: 0.95rem;
}

.tool-suggestion a,
.tool-page .tool-suggestion a:visited {
  color: var(--tools-blue);
  font-weight: 600;
}

.tool-upload {
  margin-top: clamp(34px, 4vw, 52px);
  padding: clamp(26px, 3.6vw, 44px);
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 18px 48px rgba(20, 52, 75, 0.07);
}

.tool-upload__field {
  display: block;
  margin-bottom: 14px;
}

.tool-upload__label {
  display: block;
  margin-bottom: 8px;
  color: var(--tools-muted);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.3;
  text-transform: uppercase;
}

.tool-upload__input {
  display: block;
  width: 100%;
  max-width: 560px;
  padding: 13px 14px;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-s);
  background: var(--tools-surface);
  color: var(--tools-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 0.95rem;
  line-height: 1.4;
}

.tool-upload__hint {
  margin-bottom: 20px;
  color: var(--tools-muted);
  font-size: 0.88rem;
  line-height: 1.5;
}

.tool-upload__hint b {
  color: var(--tools-ink);
  font-weight: 700;
}

.tool-page .tool-upload__progress {
  display: flex;
  gap: 12px;
  align-items: center;
  margin: 26px 0;
  padding: 14px 16px;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-s);
  background: var(--tools-surface);
  color: var(--tools-ink);
  font-size: 0.9rem;
  line-height: 1.5;
}

.tool-upload__spinner {
  flex: none;
  width: 18px;
  height: 18px;
  border: 2px solid var(--tools-line);
  border-top-color: var(--tools-orange);
  border-radius: 50%;
  animation: tool-upload-spin 0.9s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
  .tool-upload__spinner {
    animation: none;
  }
}
@keyframes tool-upload-spin {
  to {
    transform: rotate(360deg);
  }
}
.tool-upload__privacy {
  margin: 18px 0 0;
  color: var(--tools-muted);
  font-size: 0.86rem;
  line-height: 1.55;
}

.tool-upload__privacy a,
.tool-page .tool-upload__privacy a:visited {
  color: var(--tools-blue);
}

.tool-results {
  margin-top: clamp(38px, 4.5vw, 60px);
}

.tool-results__material {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  margin: 0 0 26px;
  padding: 0;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-m);
  background: var(--tools-line);
  overflow: hidden;
}

.tool-results__material > div {
  padding: 16px 18px;
  background: #fff;
}

.tool-results__material dt {
  margin-bottom: 5px;
  color: var(--tools-muted);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
}

.tool-results__material dd {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.tool-results__hash {
  font-family: monospace;
  font-size: 0.8rem;
}

.tool-dates {
  margin-bottom: 26px;
  padding: 20px 24px;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-m);
  background: var(--tools-surface);
}

.tool-dates__heading {
  margin-bottom: 14px;
  font-size: 1.05rem;
}

.tool-dates__list {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 24px;
}

.tool-dates__list > div {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 10px;
  align-items: baseline;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--tools-line);
}

.tool-dates__list dt {
  color: var(--tools-muted);
  font-size: 0.85rem;
  line-height: 1.4;
}

.tool-dates__list dd {
  margin: 0;
  font-size: 0.92rem;
  font-weight: 600;
  line-height: 1.4;
}

.tool-dates__note {
  margin: 16px 0 0;
  color: var(--tools-muted);
  font-size: 0.84rem;
  line-height: 1.55;
}

.tool-result {
  margin-bottom: 26px;
  padding: clamp(22px, 2.8vw, 32px);
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-l);
  background: #fff;
}

.tool-result__note {
  margin: 0;
  color: var(--tools-muted);
  font-size: 0.95rem;
  line-height: 1.5;
}

.tool-figure {
  margin: 0 0 18px;
}

.tool-figure__image {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 480px;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-m);
  background: var(--tools-surface);
}

.tool-figure__caption {
  margin-top: 10px;
  color: var(--tools-muted);
  font-size: 0.86rem;
  line-height: 1.5;
}

.tool-figure__caption b {
  display: block;
  margin-bottom: 3px;
  color: var(--tools-ink);
  font-weight: 600;
}

.tool-finding {
  padding: 18px 0;
  border-top: 1px solid var(--tools-line);
}

.tool-finding__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  margin-bottom: 10px;
}

.tool-chip {
  display: inline-flex;
  align-items: center;
  padding: 4px 10px;
  border-radius: var(--se-radius-xs);
  background: var(--tools-surface);
  color: var(--tools-muted);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-transform: uppercase;
}

.tool-chip--notable {
  background: var(--tools-notable-bg);
  color: var(--tools-notable-ink);
}

.tool-chip--suspicious {
  background: var(--tools-alert-bg);
  color: var(--tools-alert-ink);
}

.tool-finding__confidence {
  color: var(--tools-muted);
  font-size: 0.8rem;
  line-height: 1.3;
}

.tool-finding__confidence b {
  color: var(--tools-ink);
  font-weight: 600;
}

.tool-finding__summary {
  margin-bottom: 8px;
  font-size: 1.02rem;
  font-weight: 500;
  line-height: 1.5;
}

.tool-finding__interpretation {
  margin-bottom: 8px;
  padding: 12px 16px;
  border-left: 3px solid var(--tools-blue);
  background: #f4f8fb;
  color: var(--tools-ink);
  font-size: 0.95rem;
  line-height: 1.55;
}

.tool-finding__interpretation b {
  color: var(--tools-blue);
  font-weight: 600;
}

.tool-finding__limits {
  margin: 0;
  padding: 12px 16px;
  border-left: 3px solid var(--tools-line);
  background: var(--tools-surface);
  color: var(--tools-muted);
  font-size: 0.9rem;
  line-height: 1.55;
}

.tool-finding__limits b {
  color: var(--tools-ink);
  font-weight: 600;
}

.tool-place {
  margin-bottom: 26px;
  padding: 20px 24px;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-m);
  background: var(--tools-surface);
}

.tool-place__heading {
  margin-bottom: 10px;
  font-size: 1.05rem;
}

.tool-page .tool-place__coordinates {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 12px;
  align-items: baseline;
  margin: 0 0 14px;
  font-size: 1rem;
}

.tool-place__source {
  color: var(--tools-muted);
  font-size: 0.82rem;
}

.tool-place__source code {
  font-family: monospace;
  font-size: 0.8rem;
}

.tool-place__map {
  display: block;
  width: 100%;
  height: 340px;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-s);
  background: #fff;
}

.tool-page .tool-place__note {
  margin: 14px 0 0;
  color: var(--tools-muted);
  font-size: 0.84rem;
  line-height: 1.55;
}

.tool-metadata {
  margin-bottom: 26px;
  padding: clamp(22px, 2.8vw, 32px);
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-l);
  background: #fff;
}

.tool-metadata__heading {
  margin-bottom: 10px;
  font-size: 1.15rem;
}

.tool-page .tool-metadata__note {
  margin: 0 0 22px;
  color: var(--tools-muted);
  font-size: 0.86rem;
  line-height: 1.55;
}

.tool-metadata__note code {
  font-family: monospace;
  font-size: 0.82rem;
}

.tool-metadata__reader + .tool-metadata__reader {
  margin-top: 30px;
  padding-top: 24px;
  border-top: 1px solid var(--tools-line);
}

.tool-metadata__reader-name {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 10px;
  align-items: baseline;
  margin-bottom: 6px;
  font-size: 1.02rem;
}

.tool-metadata__reader-count {
  color: var(--tools-muted);
  font-size: 0.82rem;
  font-weight: 400;
}

.tool-page .tool-metadata__reader-about {
  margin: 0 0 16px;
  color: var(--tools-muted);
  font-size: 0.86rem;
  line-height: 1.5;
}

.tool-metadata__group {
  margin-bottom: 12px;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-m);
  background: var(--tools-surface);
  overflow: hidden;
}

.tool-metadata__group-name {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 8px;
  align-items: baseline;
  margin: 0;
  padding: 9px 14px;
  border-bottom: 1px solid var(--tools-line);
  font-family: monospace;
  font-size: 0.82rem;
  font-weight: 700;
}

.tool-metadata__group-count {
  color: var(--tools-muted);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 0.78rem;
  font-weight: 400;
}

.tool-metadata__table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.84rem;
  line-height: 1.45;
}

.tool-metadata__table th,
.tool-metadata__table td {
  padding: 6px 14px;
  text-align: left;
  vertical-align: top;
  overflow-wrap: anywhere;
}

.tool-metadata__table tr + tr th,
.tool-metadata__table tr + tr td {
  border-top: 1px solid var(--tools-line);
}

.tool-metadata__table th {
  width: 34%;
  color: var(--tools-muted);
  font-family: monospace;
  font-size: 0.78rem;
  font-weight: 400;
}

.tool-metadata__table td {
  color: var(--tools-ink);
  font-weight: 500;
}

.tool-page .tool-metadata__omission {
  margin: 4px 0 0;
  padding: 9px 14px;
  border-left: 3px solid var(--tools-orange);
  background: var(--tools-surface);
  color: var(--tools-ink);
  font-size: 0.84rem;
  line-height: 1.5;
}

.tool-metadata__caveat {
  margin-top: 26px;
  padding-top: 22px;
  border-top: 1px solid var(--tools-line);
}

.tool-metadata__caveat-heading {
  margin-bottom: 10px;
  font-size: 1.02rem;
}

.tool-page .tool-metadata__caveat p {
  margin: 0 0 10px;
  color: var(--tools-muted);
  font-size: 0.88rem;
  line-height: 1.6;
}

.tool-page .tool-metadata__caveat p:last-child {
  margin-bottom: 0;
}

.tool-readings {
  margin-top: 18px;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-m);
  background: var(--tools-surface);
}

.tool-readings__summary {
  padding: 12px 16px;
  color: var(--tools-ink);
  font-size: 0.9rem;
  font-weight: 600;
  line-height: 1.4;
  cursor: pointer;
}

.tool-readings__summary b {
  font-weight: 700;
}

.tool-readings__scroll {
  max-height: 460px;
  padding: 0 16px 14px;
  overflow: auto;
}

.tool-readings__table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.84rem;
  line-height: 1.45;
}

.tool-readings__table th,
.tool-readings__table td {
  padding: 7px 10px;
  border-top: 1px solid var(--tools-line);
  text-align: left;
  vertical-align: top;
  overflow-wrap: anywhere;
}

.tool-readings__table th {
  width: 38%;
  color: var(--tools-muted);
  font-family: monospace;
  font-size: 0.78rem;
  font-weight: 400;
  white-space: nowrap;
}

.tool-readings__table td {
  color: var(--tools-ink);
  font-weight: 500;
}

.tool-result__about {
  margin-bottom: 14px;
  color: var(--tools-muted);
  font-size: 0.9rem;
  line-height: 1.5;
}

.tool-result__provenance {
  margin: 16px 0 0;
  padding-top: 12px;
  border-top: 1px solid var(--tools-line);
  color: var(--tools-muted);
  font-size: 0.8rem;
  line-height: 1.45;
}

.tool-results__disclaimer {
  margin: 0;
  padding: 20px 24px;
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-m);
  background: var(--tools-surface);
  color: var(--tools-ink);
  font-size: 0.95rem;
  line-height: 1.6;
}

.tool-scope {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(20px, 3vw, 36px);
  margin-top: clamp(48px, 6vw, 78px);
}

.tool-scope__block {
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid var(--tools-line);
  border-radius: var(--se-radius-l);
  background: #fff;
}

.tool-scope__block--limits {
  background: var(--tools-surface);
}

.tool-scope__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.tool-scope__list li {
  position: relative;
  margin-bottom: 10px;
  padding-left: 20px;
  font-size: 0.95rem;
  line-height: 1.55;
}

.tool-scope__list li::before {
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--tools-orange);
  content: "";
}

.tool-scope__list--limits li::before {
  top: 0.72em;
  width: 10px;
  height: 2px;
  border-radius: 0;
  background: var(--tools-muted);
}

.tools-cta,
.tool-cta {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(240px, 0.8fr);
  gap: clamp(26px, 4vw, 52px);
  align-items: center;
  margin-top: clamp(52px, 6vw, 84px);
  padding: clamp(32px, 4.2vw, 54px);
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: linear-gradient(130deg, #102d43 0%, #1c4c69 100%);
}

.tools-cta h2,
.tool-cta h2 {
  color: #fff;
}

.tools-cta p,
.tool-cta p {
  margin: 0;
  max-width: 720px;
  color: rgba(255, 255, 255, 0.8);
  line-height: 1.6;
}

.tools-cta__actions,
.tool-cta__actions {
  display: grid;
  gap: 12px;
}

@media (max-width: 1040px) {
  .tools-hero,
.tool-hero,
.tools-how,
.tools-cta,
.tool-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .tools-grid__items,
.tool-scope {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 760px) {
  .tools-page,
.tool-page {
    padding-right: 16px;
    padding-left: 16px;
  }

  .tools-hero,
.tool-hero {
    padding: 30px 22px;
    border-radius: var(--se-radius-l);
  }

  .tools-how,
.tools-cta,
.tool-cta {
    padding: 28px 22px;
    border-radius: var(--se-radius-l);
  }

  .tools-cta__actions .tools-button,
.tool-cta__actions .tool-button {
    width: 100%;
  }

  .tool-upload {
    padding: 24px 20px;
  }

  .tool-upload__input {
    max-width: none;
  }

  .tool-results__material,
.tool-dates__list {
    grid-template-columns: minmax(0, 1fr);
  }

  .tool-result {
    padding: 22px 20px;
  }

  .tool-readings__table th {
    width: 45%;
    white-space: normal;
  }

  .tool-metadata {
    padding: 22px 20px;
  }

  .tool-metadata__table th {
    width: 45%;
  }

  .tool-metadata__table th,
.tool-metadata__table td {
    padding: 6px 10px;
  }

  .tool-place {
    padding: 18px 16px;
  }

  .tool-place__map {
    height: 280px;
  }

  .tools-card {
    padding: 24px 20px;
  }
}
/*
   Сравнение текстов.

   Живёт внутри .tool-page, поэтому переменные --tools-* уже определены выше: они
   объявлены на паре селекторов «.tools-page, .tool-page», и страница текстового
   инструмента намеренно носит тот же класс, что и страница файловой проверки.

   Цвета — приглушённые пары «чернила + подложка» в том же регистре, что и существующие
   --tools-alert-*: раздел принадлежит экспертной организации, работающей с судами, и
   светофорная раскраска здесь читается как потребительский продукт.

   Смысл не передаётся одним цветом. В левом поле каждой строки стоит знак: без него
   результат нечитаем при дальтонизме и на чёрно-белой печати, а печатают его часто.
*/
/*
   Обещание приватности — спокойное утверждение, а не предупреждение, и оформлено оно
   тише вступления, а не громче. Ни заливки, ни рамки здесь нет намеренно: в тёмном
   герое уже есть ровно одна карточка — оговорка «Важно», и вторая отняла бы у неё вес.
   Прежняя светлая подложка была единственным непрозрачным светлым пятном внутри
   тёмного героя и кричала громче заголовка.

   Отделяет обещание волосяная линия, опознаёт — замок. Замок нарисован прямо в
   правиле: одна иконка не стоит ни отдельного запроса, ни записи в сборке.

   Пробелы внутри data-URI закодированы как %20, и трогать это нельзя. CSS на боевом
   сервере отдаётся сжатым YUI-компрессором, а он вырезает пробелы и внутри url():
   `%3Csvg xmlns=` превращается в `%3Csvgxmlns=`, `viewBox='0 0 16 16'` — в
   `viewBox='001616'`, картинка перестаёт разбираться, и значок пропадает. Локально
   этого не видно: в режиме разработки страница берёт несжатый style.css.

   Всё правило висит на потомке `.tool-hero__copy`, потому что соседнее
   `.tool-hero__copy > p` (0,1,1) красит все абзацы врезки в белый для тёмной подложки,
   и правило с одним классом его не перебило бы. Обещание живёт только в герое —
   отдельное базовое правило было бы мёртвым.
*/
.tool-hero__copy > .tool-promise {
  margin-top: 20px;
  padding: 16px 0 0 30px;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2016%2016'%20fill='none'%20stroke='%23ffffff'%20stroke-opacity='.85'%20stroke-width='1.35'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='2.9'%20y='6.9'%20width='10.2'%20height='6.6'%20rx='1.6'/%3E%3Cpath%20d='M5.6%206.9V5a2.4%202.4%200%200%201%204.8%200v1.9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 0 17px;
  background-size: 16px 16px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.94rem;
  line-height: 1.55;
}

.tool-hero__copy > .tool-promise b {
  color: #fff;
  font-weight: 600;
}

.text-compare {
  --tools-removed-ink: #7d2d20;
  --tools-removed-bg: #fbeceb;
  --tools-added-ink: #1f5136;
  --tools-added-bg: #e9f4ee;
  --tools-moved-ink: #1b4a63;
  --tools-moved-bg: #e8f0f5;
  margin: 32px 0;
}

.text-compare__sources {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.text-compare__source {
  min-width: 0;
}

.text-compare__source-title {
  display: block;
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--tools-muted);
  margin-bottom: 6px;
}

.text-compare__drop {
  display: block;
  padding: 20px;
  border: 1px dashed var(--se-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  cursor: pointer;
  text-align: center;
}

.text-compare__drop.is-over {
  border-color: var(--tools-orange);
  background: var(--se-surface);
}

.text-compare__drop-hint {
  color: var(--tools-muted);
}

.text-compare__drop-name {
  display: block;
  margin-top: 6px;
  font-weight: 500;
  color: var(--tools-ink);
}

.text-compare__field {
  display: block;
  width: 100%;
  min-height: 180px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid var(--se-line);
  border-radius: var(--se-radius-s);
  font: inherit;
  line-height: 1.5;
  resize: vertical;
}

.text-compare__controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 16px;
}

/*
   .tool-button--ghost задуман для тёмной подложки (тексту белый, рамка полупрозрачная
   белая) — так он выглядит на других страницах раздела. Кнопка «или вставить текст» в
   __controls и кнопка «показать целиком» в __diff стоят на белом фоне раздела сравнения,
   поэтому здесь тот же класс переопределяется на тёмный текст, не трогая исходное правило.
*/
.text-compare .tool-button--ghost {
  border-color: var(--tools-line);
  color: var(--tools-ink);
}

.text-compare .tool-button--ghost:hover,
.text-compare .tool-button--ghost:focus-visible {
  border-color: var(--tools-orange);
  background: var(--tools-surface);
  color: var(--tools-ink);
}

.text-compare__switch {
  font-size: 14px;
  color: var(--tools-muted);
}

/*
   Дальше у нескольких правил селектор удвоен: `.text-compare .text-compare__…`.
   Это не суеверие. Раздел красит свою типографику правилами вида `.tool-page p` и
   `.tool-page h3` — специфичность (0,1,1), класс плюс тег. Одиночный класс (0,1,0) их
   не перебивает, и правило молча не применяется: оговорка показателя, например,
   получалась крупнее собственной подписи. Удвоение даёт (0,2,0) и выигрывает по числу
   классов. Касается только узлов с тегом из того списка — абзацев и заголовков; у
   span, ol и button всё работает и с одним классом.
*/
.text-compare .text-compare__message {
  margin-top: 12px;
  color: var(--tools-muted);
}

/*
   Показатели идут два на два, а не четвёркой в ряд. Причина в тексте, а не во вкусе:
   у каждого числа есть оговорка на два-три предложения, и в колонке шириной около
   270 пикселей она встаёт стеной на пять строк, а под короткими соседями зияет пустота.
   На вдвое более широкой карточке та же оговорка укладывается в две строки, и высоты
   выравниваются сами.
*/
.text-compare__metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 28px;
}

/*
   Две колонки живут только пока карточке хватает ширины. Ниже примерно тысячи ста
   пикселей под текст в ней остаётся около трёхсот, и оговорка снова встаёт стеной на
   восемь строк — ровно та беда, ради которой уходили от четырёх колонок. Порог
   выбран по содержимому: на 1080 карточка ещё читается, ниже — уже нет.
*/
@media (max-width: 1080px) {
  .text-compare__metrics {
    grid-template-columns: 1fr;
  }
}
/*
   Число слева в своей колонке фиксированной ширины: так все четыре выровнены между
   собой по левому краю, и подписи начинаются на одной вертикали.
*/
.text-compare__metric {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  padding: 22px 24px;
  border: 1px solid var(--se-line);
  border-radius: var(--se-radius-l);
  background: #fff;
}

.text-compare__metric-value {
  color: var(--tools-ink);
  font-size: 2.1rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.1;
}

.text-compare__metric-title {
  display: block;
  color: var(--tools-ink);
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.35;
}

.text-compare .text-compare__metric-note {
  margin: 8px 0 0;
  color: var(--tools-muted);
  font-size: 0.84rem;
  line-height: 1.55;
}

.text-compare .text-compare__counts {
  grid-column: 1/-1;
  margin: 2px 0 0;
  color: var(--tools-muted);
  font-size: 0.88rem;
}

.text-compare__threshold {
  display: flex;
  gap: 8px;
  margin: 8px 0 12px;
}

.text-compare__threshold-option {
  padding: 4px 10px;
  border: 1px solid var(--se-line);
  border-radius: var(--se-radius-s);
  background: #fff;
  font: inherit;
  font-size: 13px;
  cursor: pointer;
}

.text-compare__threshold-option.is-active {
  border-color: var(--tools-orange);
  color: var(--tools-orange);
}

.text-compare__fragments {
  margin-top: 24px;
}

.text-compare .text-compare__fragments-title {
  margin: 0 0 8px;
  font-size: 16px;
  font-weight: 600;
  color: var(--tools-ink);
}

.text-compare__fragment-list {
  margin: 8px 0 0;
  padding-left: 20px;
  line-height: 1.5;
}

.text-compare__fragment-link {
  color: var(--tools-ink);
}

.text-compare .text-compare__fragments-rest {
  margin: 8px 0 0;
  font-size: 13px;
  color: var(--tools-muted);
}

.text-compare__diff {
  margin-top: 24px;
}

.text-compare__row {
  display: grid;
  grid-template-columns: 24px 1fr 1fr;
  gap: 8px;
  padding: 6px 0;
  border-top: 1px solid var(--se-line);
  line-height: 1.5;
}

.text-compare__row--head {
  font-weight: 700;
  font-size: 12px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--tools-muted);
  border-top: 0;
}

.text-compare__sign {
  font-weight: 700;
  color: var(--tools-muted);
}

.text-compare__cell {
  overflow-wrap: anywhere;
}

.text-compare__row--removed .text-compare__cell,
.text-compare__row--changed .text-compare__mark {
  background: var(--tools-removed-bg);
  color: var(--tools-removed-ink);
}

.text-compare__row--added .text-compare__cell,
.text-compare__row--changed .text-compare__cell + .text-compare__cell .text-compare__mark {
  background: var(--tools-added-bg);
  color: var(--tools-added-ink);
}

.text-compare__row--moved .text-compare__cell {
  background: var(--tools-moved-bg);
  color: var(--tools-moved-ink);
}

/*
   Пустая половина строки не красится: заливка на месте, где текста нет, читается как
   «здесь что-то было», хотя не было ничего. Селектор удвоен по той же причине, что и
   выше: правила вида `.text-compare__row--removed .text-compare__cell` — это (0,2,0),
   и одиночный класс их не перебивает.
*/
.text-compare__cell.text-compare__cell--empty {
  background: none;
}

.text-compare__moved-hint {
  grid-column: 2/-1;
  font-size: 12px;
  color: var(--tools-moved-ink);
}

.text-compare__folded {
  display: block;
  width: 100%;
  padding: 8px;
  border: 0;
  border-top: 1px solid var(--se-line);
  background: var(--se-surface);
  font: inherit;
  font-size: 13px;
  color: var(--tools-muted);
  cursor: pointer;
  text-align: left;
}

@media (max-width: 720px) {
  .text-compare__sources {
    grid-template-columns: 1fr;
  }

  .text-compare__metrics {
    grid-template-columns: 1fr;
  }

  /*
     На узком экране колонка под число съедает треть строки — число встаёт над
     подписью, как в обычной карточке.
  */
  .text-compare__metric {
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 18px 20px;
  }

  /*
     На узком экране две колонки не помещаются: строка разворачивается в один поток —
     удалённое над добавленным, с теми же цветами и знаками. Знак больше не растягивается
     гридом: у `.text-compare__row` нигде не объявлен `grid-template-rows`, а отрицательная
     линия (`grid-row: 1 / -1`) без явной сетки строк отсчитывается только по неявной
     первой — она схлопывается в неё же и ничего не растягивает, знак остаётся против одной
     верхней подстроки. Знак обязан стоять против строки целиком, сколько бы подстрок из
     неё ни вышло, поэтому вместо колонки под него в гриде он позиционируется абсолютно
     относительно самой строки, а освободившееся место — в левом внутреннем отступе строки.
  */
  .text-compare__row {
    position: relative;
    grid-template-columns: 1fr;
    padding: 6px 0 6px 28px;
  }

  .text-compare__cell {
    grid-column: 1;
  }

  .text-compare__cell--empty {
    display: none;
  }

  /*
     Шапка с двумя названиями колонок в одном потоке теряет смысл: колонок нет, и два
     заголовка встают друг под другом, ничего не поясняя. Какая половина откуда —
     говорит цвет и знак правки.
  */
  .text-compare__row--head {
    display: none;
  }

  .text-compare__sign {
    position: absolute;
    top: 6px;
    left: 0;
  }

  .text-compare__moved-hint {
    grid-column: 1;
  }

  /*
     Совпавшая строка несёт один и тот же абзац с обеих сторон; в один поток вторая
     колонка превратилась бы в точный повтор первой — прячем её.
  */
  .text-compare__row--same .text-compare__cell + .text-compare__cell {
    display: none;
  }
}
@media print {
  /*
     Кнопка «показать целиком / только изменения» — прямой потомок __diff, добавляемый
     скриптом при каждой отрисовке; своего класса не несёт, только существующие
     tool-button tool-button--ghost. Это тоже орган управления, и на бумаге он не нужен.

     .text-compare__folded сюда нарочно не входит: text-compare-page.js по beforeprint
     раскрывает все свёрнутые пробеги, и кнопок раскрытия в DOM к моменту печати не
     остаётся. Прятать класс на всякий случай — не подстраховка, а её видимость: не
     сработай скрипт (старый браузер, ошибка), спрятанная кнопка означала бы, что на
     бумаге снова молча пропадают и совпавшие абзацы, и сама пометка о пропуске.
  */
  .text-compare__sources,
.text-compare__controls,
.text-compare__threshold,
.text-compare__diff > .tool-button--ghost {
    display: none;
  }

  .text-compare__row {
    break-inside: avoid;
  }
}
.about-page,
.about-closing,
.page-about {
  --about-ink: var(--se-ink);
  --about-blue: var(--se-blue);
  --about-blue-deep: var(--se-ink-deep);
  --about-orange: var(--se-orange);
  --about-muted: var(--se-muted);
  --about-surface: var(--se-surface);
  --about-line: var(--se-line);
}

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

.about-page {
  padding-bottom: clamp(70px, 8vw, 112px);
  color: var(--about-ink);
}
.about-page h1,
.about-page h2,
.about-page h3,
.about-page p,
.about-page dl,
.about-page dd,
.about-page ol,
.about-page ul {
  margin-top: 0;
}
.about-page h1,
.about-page h2,
.about-page h3 {
  color: var(--about-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  text-transform: none;
}
.about-page h1 {
  max-width: 880px;
  margin-bottom: 28px;
  color: #fff;
  font-size: clamp(3rem, 5.6vw, 5rem);
  font-weight: 600;
  line-height: 0.98;
  letter-spacing: -0.02em;
}
.about-page h2 {
  margin-bottom: 22px;
  font-size: clamp(2rem, 3.5vw, 3.15rem);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.02em;
}
.about-page h3 {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.28;
}
.about-page p,
.about-page li,
.about-page dd {
  color: var(--about-muted);
  font-size: 1rem;
  line-height: 1.68;
}

.about-page.about-page h2 {
  margin-bottom: 22px;
  font-size: clamp(2rem, 3.5vw, 3.15rem);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.02em;
  text-align: left;
  text-transform: none;
}

.about-eyebrow,
.about-section__heading > span,
.about-mission > span,
.about-team__grid small,
.about-accountability__grid article > span {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--about-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
}

.about-eyebrow::before {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: currentColor;
  content: "";
}

.about-button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 13px 24px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.92rem;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transition: color 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.about-button:hover {
  transform: translateY(-1px);
}

.about-button--primary {
  color: #fff;
  background: var(--about-orange);
}

.about-button--primary:hover {
  color: #fff;
  background: #d95820;
}

.about-button--ghost {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.24);
  background: rgba(255, 255, 255, 0.08);
}

.about-button--ghost:hover {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.5);
  background: rgba(255, 255, 255, 0.14);
}

.about-button--outline {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.32);
  background: transparent;
}

.about-button--outline:hover {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.7);
  background: rgba(255, 255, 255, 0.08);
}

.about-hero {
  position: relative;
  display: flex;
  overflow: hidden;
  min-height: 540px;
  align-items: center;
  margin-top: 20px;
  padding: clamp(52px, 7vw, 86px);
  border-radius: var(--se-radius-xl) var(--se-radius-xl) 0 0;
  background: radial-gradient(circle at 88% 12%, rgba(66, 151, 193, 0.3), transparent 34%), linear-gradient(132deg, #0c283e 0%, #153f5a 62%, #1c5674 100%);
}

.about-hero::after {
  position: absolute;
  right: -130px;
  bottom: -250px;
  width: 520px;
  height: 520px;
  border: 34px solid rgba(255, 255, 255, 0.035);
  border-radius: 50%;
  content: "";
}

.about-hero__copy {
  position: relative;
  z-index: 1;
  max-width: 880px;
}

.about-hero__legal-form {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  color: #ffad84;
  font-size: clamp(0.85rem, 1.15vw, 1rem);
  font-weight: 600;
  letter-spacing: 0.065em;
  line-height: 1.2;
}

.about-hero__legal-form::after {
  width: 42px;
  height: 2px;
  flex: 0 0 42px;
  background: currentColor;
  content: "";
}

.about-hero__name {
  display: block;
  white-space: nowrap;
}

.about-hero__lead {
  max-width: 830px;
  margin-bottom: 20px;
  color: rgba(255, 255, 255, 0.9) !important;
  font-size: clamp(1.12rem, 1.7vw, 1.35rem) !important;
  line-height: 1.55 !important;
}

.about-hero__text {
  max-width: 820px;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.62) !important;
}

.about-hero__text + .about-hero__text {
  margin-top: 14px;
}

.about-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.about-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0 28px;
  border: 1px solid var(--about-line);
  border-top: 0;
  border-radius: 0 0 var(--se-radius-l) var(--se-radius-l);
  background: #fff;
  box-shadow: 0 14px 34px rgba(20, 52, 75, 0.055);
}

.about-facts > div {
  min-width: 0;
  padding: 26px 24px;
}

.about-facts > div + div {
  border-left: 1px solid var(--about-line);
}

.about-facts strong {
  display: block;
  margin-bottom: 6px;
  color: var(--about-blue);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.55rem;
  font-weight: 600;
  line-height: 1.1;
}

.about-facts span {
  display: block;
  color: var(--about-muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.about-content {
  max-width: none;
  padding-top: clamp(64px, 7vw, 96px);
}

.about-section__heading {
  max-width: 900px;
  margin-bottom: clamp(36px, 5vw, 58px);
}

.about-section__heading > span {
  margin-bottom: 20px;
}

.about-section__heading > p {
  max-width: 820px;
  margin-bottom: 0;
  font-size: 1.06rem !important;
}

.about-profile__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 410px);
  gap: clamp(42px, 7vw, 90px);
  align-items: start;
}

.about-profile__prose p {
  margin-bottom: 24px;
}

.about-profile__prose p:first-child {
  color: #304a5b;
  font-size: 1.12rem !important;
  line-height: 1.72 !important;
}

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

.about-mission {
  position: sticky;
  top: 28px;
  padding: 34px;
  border: 1px solid var(--about-line);
  border-top: 4px solid var(--about-orange);
  border-radius: var(--se-radius-l);
  background: var(--about-surface);
}

.about-mission > span {
  margin-bottom: 18px;
}

.about-mission h3 {
  margin-bottom: 18px;
  font-size: 1.55rem;
  line-height: 1.2;
}

.about-mission p {
  margin-bottom: 0;
  font-size: 0.96rem !important;
}

.about-team {
  position: relative;
  overflow: hidden;
  margin-top: clamp(72px, 7vw, 96px);
  padding: clamp(52px, 7vw, 82px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 100% 0, rgba(61, 148, 190, 0.2), transparent 32%), var(--about-blue-deep);
}

.about-section__heading--light h2 {
  color: #fff;
}

.about-section__heading--light > span {
  color: #ffad84;
}

.about-section__heading--light > p {
  color: rgba(255, 255, 255, 0.62) !important;
}

.about-team__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin: 0;
  padding: 0;
  list-style: none !important;
}

.about-team__grid > li {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 18px;
  padding: 26px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--se-radius-m);
  background: rgba(255, 255, 255, 0.035);
  list-style: none !important;
}

.about-team__grid > li::marker {
  color: transparent;
  font-size: 0;
  content: "";
}

.about-team__grid > li:last-child {
  grid-column: 1/-1;
}

.about-team__grid > li > span {
  color: #ff9b6a;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.about-team__grid small {
  margin-bottom: 10px;
  color: #8dcfae;
  font-size: 0.64rem;
}

.about-team__grid h3 {
  margin-bottom: 12px;
  color: #fff;
  font-size: 1.16rem;
}

.about-team__grid p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.58) !important;
  font-size: 0.91rem !important;
  line-height: 1.58 !important;
}

.about-accountability {
  margin-top: clamp(72px, 7vw, 96px);
}

.about-accountability__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.about-accountability__grid article {
  padding: clamp(32px, 4vw, 48px);
  border: 1px solid var(--about-line);
  border-radius: var(--se-radius-l);
  background: var(--about-surface);
}

.about-accountability__grid article:first-child {
  color: #fff;
  border-color: var(--about-blue);
  background: var(--about-blue);
}

.about-accountability__grid article > span {
  margin-bottom: 18px;
}

.about-accountability__grid article:first-child > span {
  color: #a8e2c2;
}

.about-accountability__grid h3 {
  margin-bottom: 24px;
  font-size: 1.65rem;
}

.about-accountability__grid article:first-child h3 {
  color: #fff;
}

.about-page .about-accountability__grid ul {
  margin: 0;
  padding: 0;
  overflow: visible;
  list-style: none !important;
}

.about-page .about-accountability__grid li {
  position: relative;
  display: block;
  margin-left: 0;
  padding: 13px 0 13px 24px;
  border-top: 1px solid var(--about-line);
  font-size: 0.94rem !important;
}

.about-page .about-accountability__grid li::marker {
  color: transparent;
  font-size: 0;
  content: "";
}

.about-page .about-accountability__grid li::before {
  position: absolute;
  top: 21px;
  left: 2px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--about-orange);
  content: "";
}

.about-page .about-accountability__grid article:first-child li {
  color: rgba(255, 255, 255, 0.7) !important;
  border-top-color: rgba(255, 255, 255, 0.13);
}

.about-openness {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
  gap: clamp(42px, 7vw, 90px);
  align-items: center;
  margin-top: clamp(72px, 7vw, 96px);
  padding: clamp(48px, 7vw, 76px);
  border-radius: var(--se-radius-xl);
  background: #eef5f7;
}

.about-openness .about-eyebrow {
  margin-bottom: 20px;
}

.about-openness h2 {
  max-width: 690px;
}

.about-openness > div > p {
  max-width: 700px;
  margin-bottom: 0;
}

.about-openness__note {
  padding: 30px;
  border-left: 4px solid var(--about-orange);
  border-radius: 0 var(--se-radius-m) var(--se-radius-m) 0;
  background: #fff;
  box-shadow: 0 12px 28px rgba(20, 52, 75, 0.055);
}

.about-openness__note strong {
  display: block;
  margin-bottom: 12px;
  color: var(--about-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.12rem;
}

.about-openness__note p {
  margin-bottom: 0;
  font-size: 0.9rem !important;
  line-height: 1.58 !important;
}

.about-documents {
  margin-top: clamp(72px, 7vw, 96px);
}

.about-documents__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.about-documents__grid a {
  display: flex;
  min-height: 250px;
  flex-direction: column;
  padding: 28px;
  border: 1px solid var(--about-line);
  border-radius: var(--se-radius-m);
  color: var(--about-ink);
  background: #fff;
  box-shadow: 0 8px 24px rgba(20, 52, 75, 0.035);
  text-decoration: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.about-documents__grid a:hover {
  border-color: #8aaabd;
  box-shadow: 0 14px 30px rgba(20, 52, 75, 0.08);
  transform: translateY(-2px);
}

.about-documents__grid a > span {
  margin-bottom: 22px;
  color: var(--about-orange);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.about-documents__grid strong {
  display: block;
  margin-bottom: 12px;
  color: var(--about-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.25;
}

.about-documents__grid small {
  display: block;
  color: var(--about-muted);
  font-size: 0.87rem;
  line-height: 1.5;
}

.about-documents__grid b {
  display: block;
  margin-top: auto;
  padding-top: 26px;
  color: var(--about-blue);
  border-bottom: 1px solid #c5d3da;
  font-size: 0.86rem;
  font-weight: 600;
}

.about-office {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(310px, 430px);
  gap: clamp(42px, 7vw, 90px);
  align-items: start;
  margin-top: clamp(72px, 7vw, 96px);
  padding: clamp(44px, 6vw, 68px);
  border-top: 4px solid var(--about-blue);
  border-radius: 0 0 var(--se-radius-l) var(--se-radius-l);
  background: var(--about-surface);
}

.about-office .about-eyebrow {
  margin-bottom: 20px;
}

.about-office h2 {
  max-width: 650px;
}

.about-office > div > p {
  margin-bottom: 0;
}

.about-office dl {
  margin-bottom: 0;
}

.about-office dl > div {
  padding: 15px 0;
  border-top: 1px solid var(--about-line);
}

.about-office dt {
  margin-bottom: 5px;
  color: var(--about-muted);
  font-size: 0.73rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.about-office dd {
  margin: 0;
  color: var(--about-ink) !important;
  font-size: 0.98rem !important;
  font-weight: 600;
}

.about-office dd a {
  color: var(--about-ink);
  text-decoration: none;
}

.about-office dd a:hover {
  color: var(--about-orange);
}

.about-office__link {
  align-self: end;
  grid-column: 2;
  color: var(--about-blue);
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
}

.about-office__link:hover {
  color: var(--about-orange);
}

.page-about {
  color: var(--about-ink);
}
.page-about .licenses {
  margin: 0;
  background: #edf4f7;
}
.page-about .licenses .content-wrapper {
  max-width: none;
  margin: 0;
  padding: 0;
}
.page-about .licenses .content-wrapper .content-wrapper2 {
  position: relative;
  max-width: 1160px;
  margin: 0 auto;
  padding: clamp(62px, 8vw, 92px) 0 clamp(58px, 8vw, 88px);
}
.page-about .licenses .content-wrapper .content-wrapper2 .h2 {
  max-width: 720px;
  margin: 0;
  padding: 0 190px 36px 0;
  color: var(--about-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(2rem, 3.5vw, 3.1rem);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.02em;
  text-align: left;
  text-transform: none;
}
.page-about .licenses .content-wrapper .content-wrapper2 .all {
  float: right;
  margin-top: 12px;
}
.page-about .licenses .content-wrapper .content-wrapper2 .all span {
  padding: 0;
  background: none;
}
.page-about .licenses .content-wrapper .content-wrapper2 .all a {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  padding: 10px 14px;
  border: 1px solid #c8d7e0;
  border-radius: var(--se-radius-s);
  color: #285e7c;
  background: #fff;
  font-style: normal;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
}
.page-about .licenses .content-wrapper .content-wrapper2 .all a:hover {
  border-color: #92adbd;
  color: #173f58;
}
.page-about .licenses .content-wrapper .content-wrapper2 .licenses-slider {
  width: 100%;
  margin: 0;
  padding: 0;
}
.page-about .licenses .content-wrapper .content-wrapper2 .licenses-slider .license {
  padding: 8px 9px 28px;
}
.page-about .licenses .content-wrapper .content-wrapper2 .licenses-slider .license:hover {
  animation: none;
}
.page-about .licenses .content-wrapper .content-wrapper2 .licenses-slider .license > a {
  display: block;
  min-height: 175px;
  overflow: hidden;
  padding: 20px;
  border: 1px solid var(--about-line);
  border-radius: var(--se-radius-m);
  color: var(--about-ink);
  background: #fff;
  box-shadow: 0 8px 22px rgba(20, 52, 75, 0.04);
  text-decoration: none;
}
.page-about .licenses .content-wrapper .content-wrapper2 .licenses-slider .license > a:hover {
  border-color: #9ab4c4;
}
.page-about .licenses .content-wrapper .content-wrapper2 .licenses-slider .license img {
  width: 96px;
  max-height: 132px;
  margin: 0 18px 8px 0;
  border: 0;
  border-radius: var(--se-radius-xs);
  box-shadow: 0 4px 14px rgba(20, 52, 75, 0.16);
  object-fit: contain;
}
.page-about .licenses .content-wrapper .content-wrapper2 .licenses-slider .license img:hover {
  border: 0;
  box-shadow: 0 6px 18px rgba(20, 52, 75, 0.2);
}
.page-about .licenses .content-wrapper .content-wrapper2 .licenses-slider .license b {
  display: block;
  margin: 2px 0 9px;
  color: var(--about-ink);
  font-size: 0.94rem;
  line-height: 1.35;
  text-transform: none;
}
.page-about .licenses .content-wrapper .content-wrapper2 .licenses-slider .license i {
  color: var(--about-muted);
  font-size: 0.82rem;
  line-height: 1.4;
}

.about-closing {
  color: #fff;
  background: radial-gradient(circle at 88% 0, rgba(80, 164, 203, 0.2), transparent 32%), #102b42;
}

.about-closing__inner {
  display: grid;
  max-width: 1160px;
  grid-template-columns: minmax(0, 1fr) 300px;
  gap: clamp(44px, 8vw, 100px);
  align-items: center;
  margin: 0 auto;
  padding: clamp(52px, 7vw, 78px) 0;
}
.about-closing__inner .about-eyebrow {
  margin-bottom: 18px;
  color: #ffae86;
}
.about-closing__inner h2 {
  max-width: 760px;
  margin: 0 0 18px;
  color: #fff;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(1.9rem, 3.4vw, 2.8rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.02em;
  text-align: left;
  text-transform: none;
}
.about-closing__inner p {
  max-width: 780px;
  margin: 0;
  color: rgba(255, 255, 255, 0.68);
  font-size: 1rem;
  line-height: 1.65;
}

.about-closing__actions {
  display: flex;
  align-items: stretch;
  flex-direction: column;
  gap: 12px;
}

@media screen and (max-width: 1180px) {
  .page-about .licenses .content-wrapper .content-wrapper2,
.about-closing__inner {
    margin-right: 20px;
    margin-left: 20px;
  }
}
@media screen and (max-width: 980px) {
  .about-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .about-facts > div:nth-child(3),
.about-facts > div:nth-child(4) {
    border-top: 1px solid var(--about-line);
  }
  .about-facts > div:nth-child(3) {
    border-left: 0;
  }

  .about-profile__grid,
.about-openness,
.about-office,
.about-closing__inner {
    grid-template-columns: 1fr;
  }

  .about-mission {
    position: static;
    max-width: 680px;
  }

  .about-documents__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .about-office__link {
    grid-column: auto;
  }

  .about-closing__actions {
    max-width: 360px;
  }
}
@media screen and (max-width: 700px) {
  .about-page {
    margin: 0 auto;
    padding: 0 20px 54px;
  }
  .about-page h1 {
    overflow-wrap: break-word;
    font-size: clamp(2.35rem, 11vw, 3.15rem);
  }
  .about-page h2 {
    font-size: clamp(1.8rem, 8vw, 2.4rem);
  }

  .about-hero__legal-form {
    margin-bottom: 10px;
    gap: 8px;
    font-size: 0.68rem;
    letter-spacing: 0.04em;
  }

  .about-hero__legal-form::after {
    width: 20px;
    flex-basis: 20px;
  }

  .about-hero__name {
    font-size: clamp(1.68rem, 8.5vw, 3.15rem);
  }

  .about-hero {
    min-height: 0;
    margin-top: 12px;
    padding: 38px 24px;
    border-radius: var(--se-radius-l) var(--se-radius-l) 0 0;
  }

  .about-hero__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .about-button {
    width: 100%;
  }

  .about-facts {
    margin: 0 10px;
  }

  .about-content {
    padding-top: 72px;
  }

  .about-profile__grid {
    gap: 34px;
  }

  .about-team,
.about-openness,
.about-office {
    margin-right: -2px;
    margin-left: -2px;
    padding: 42px 22px;
    border-radius: var(--se-radius-l);
  }

  .about-team__grid,
.about-accountability__grid,
.about-documents__grid {
    grid-template-columns: 1fr;
  }

  .about-team__grid > li:last-child {
    grid-column: auto;
  }

  .about-team__grid > li {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 12px;
    padding: 23px 18px;
  }

  .about-documents__grid a {
    min-height: 220px;
  }

  .page-about .licenses {
    margin-top: 0;
  }

  .page-about .licenses .content-wrapper .content-wrapper2 {
    display: flex;
    flex-direction: column;
    margin-right: 0;
    margin-left: 0;
    padding: 46px 20px 58px;
  }

  .page-about .licenses .content-wrapper .content-wrapper2 .h2 {
    order: 1;
    padding-right: 0;
    padding-bottom: 0;
    text-align: left;
  }

  .page-about .licenses .content-wrapper .content-wrapper2 .all {
    position: static;
    order: 2;
    margin: 18px 0 28px;
  }

  .page-about .licenses .content-wrapper .content-wrapper2 .all a {
    width: 100%;
    justify-content: center;
  }

  .page-about .licenses .content-wrapper .content-wrapper2 .licenses-slider {
    width: 100%;
    order: 3;
  }

  .about-closing__inner {
    margin-right: 0;
    margin-left: 0;
    padding: 50px 20px;
  }

  .about-closing__actions {
    max-width: none;
  }
}
@media screen and (max-width: 480px) {
  .about-facts {
    grid-template-columns: 1fr;
  }
  .about-facts > div + div,
.about-facts > div:nth-child(3) {
    border-top: 1px solid var(--about-line);
    border-left: 0;
  }

  .about-facts > div {
    padding: 22px 20px;
  }

  .about-accountability__grid article,
.about-mission,
.about-openness__note,
.about-documents__grid a {
    padding: 24px;
  }
}
@media screen and (max-width: 360px) {
  .about-hero__legal-form::after {
    display: none;
  }
}
.contacts-page {
  --contacts-ink: var(--se-ink);
  --contacts-blue: var(--se-blue);
  --contacts-blue-deep: var(--se-ink-deep);
  --contacts-orange: var(--se-orange);
  --contacts-muted: var(--se-muted);
  --contacts-surface: var(--se-surface);
  --contacts-line: var(--se-line);
  padding-bottom: clamp(72px, 8vw, 112px);
  color: var(--contacts-ink);
}

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

.contacts-page h1,
.contacts-page h2,
.contacts-page h3,
.contacts-page p,
.contacts-page dl,
.contacts-page dd {
  margin-top: 0;
}

.contacts-page h1,
.contacts-page h2,
.contacts-page h3 {
  color: var(--contacts-ink);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  text-transform: none;
}

.contacts-page h1 {
  max-width: 780px;
  margin: 0 0 24px;
  padding: 0;
  color: #fff;
  font-size: clamp(3rem, 5.5vw, 4.8rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: -0.02em;
}

.contacts-page h2 {
  margin-bottom: 20px;
  font-size: clamp(2rem, 3.6vw, 3.15rem);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.02em;
}

.contacts-page h3 {
  margin-bottom: 12px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.25;
}

.contacts-page p,
.contacts-page dd {
  color: var(--contacts-muted);
  font-size: 1rem;
  line-height: 1.65;
}

.contacts-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--contacts-orange);
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
}

.contacts-eyebrow::before {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: currentColor;
  content: "";
}

.contacts-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  min-height: 540px;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 330px);
  align-items: center;
  gap: clamp(42px, 7vw, 92px);
  margin-top: 20px;
  padding: clamp(50px, 7vw, 84px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 90% 8%, rgba(78, 158, 197, 0.3), transparent 34%), linear-gradient(132deg, #0c283e 0%, #153f5a 62%, #1c5674 100%);
}

.contacts-hero::after {
  position: absolute;
  right: -120px;
  bottom: -190px;
  width: 480px;
  height: 480px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
}

.contacts-hero__copy,
.contacts-hero__note {
  position: relative;
  z-index: 1;
}

.contacts-hero__copy > .contacts-eyebrow {
  margin-bottom: 30px;
}

.contacts-hero__copy > p {
  max-width: 760px;
  margin-bottom: 30px;
  color: rgba(255, 255, 255, 0.78);
  font-size: clamp(1.08rem, 1.6vw, 1.24rem);
  line-height: 1.62;
}

.contacts-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.contacts-button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 13px 24px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.92rem;
  font-weight: 600;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  transition: color 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.contacts-button:hover {
  transform: translateY(-1px);
}

.contacts-button--primary {
  color: #fff;
  background: var(--contacts-orange);
}

.contacts-button--primary:hover {
  color: #fff;
  background: #d95820;
}

.contacts-button--ghost {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.07);
}

.contacts-button--ghost:hover {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.55);
  background: rgba(255, 255, 255, 0.13);
}

.contacts-hero__note {
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.17);
  border-radius: var(--se-radius-l);
  background: rgba(7, 31, 48, 0.45);
  box-shadow: 0 22px 54px rgba(2, 20, 31, 0.2);
}

.contacts-hero__note > span {
  display: block;
  margin-bottom: 18px;
  color: #f1a17c;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.contacts-hero__note strong {
  display: block;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.45;
}

.contacts-hero__note p {
  margin: 20px 0 12px;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.9rem;
  line-height: 1.58;
}

.contacts-hero__note a {
  color: #fff;
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
}

.contacts-hero__note a:hover {
  color: #f1a17c;
}

.contacts-channels,
.contacts-routing,
.contacts-office,
.contacts-legal {
  padding-top: clamp(68px, 7vw, 96px);
}

.contacts-section-heading {
  max-width: 790px;
  margin-bottom: 40px;
}

.contacts-section-heading--compact {
  max-width: 680px;
}

.contacts-section-heading > .contacts-eyebrow {
  margin-bottom: 18px;
}

.contacts-section-heading > p {
  margin-bottom: 0;
  font-size: 1.08rem;
}

.contacts-channels__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.contacts-channel {
  position: relative;
  display: flex;
  min-height: 290px;
  flex-direction: column;
  padding: 30px;
  border: 1px solid var(--contacts-line);
  border-top: 4px solid var(--contacts-blue);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 18px 44px rgba(17, 53, 76, 0.07);
}

.contacts-channel--accent {
  border-top-color: var(--contacts-orange);
  background: linear-gradient(150deg, #fff 0%, #fff8f4 100%);
}

.contacts-channel > span {
  margin-bottom: 22px;
  color: var(--contacts-muted);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.contacts-channel__value {
  margin-bottom: 18px;
  color: var(--contacts-ink);
  border-bottom: 1px solid rgba(16, 43, 66, 0.3);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(1.45rem, 2.5vw, 2rem);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -0.02em;
  text-decoration: none;
}

.contacts-channel__value--email {
  font-size: clamp(1.25rem, 2.1vw, 1.7rem);
}

.contacts-channel__value:hover {
  color: var(--contacts-orange);
  border-bottom-color: currentColor;
}

.contacts-channel p {
  margin-bottom: 20px;
}

.contacts-channel small {
  display: block;
  margin-top: auto;
  padding-top: 17px;
  border-top: 1px solid var(--contacts-line);
  color: #83919a;
  font-size: 0.8rem;
  line-height: 1.5;
}

.contacts-routing {
  display: grid;
  grid-template-columns: minmax(260px, 0.8fr) minmax(0, 1.6fr);
  align-items: start;
  gap: clamp(48px, 7vw, 90px);
}

.contacts-routing__grid {
  border-top: 1px solid var(--contacts-line);
}

.contacts-routing__grid article {
  display: grid;
  grid-template-columns: 48px minmax(160px, 0.65fr) minmax(0, 1fr);
  gap: 22px;
  padding: 28px 0;
  border-bottom: 1px solid var(--contacts-line);
}

.contacts-routing__grid article > span {
  color: var(--contacts-orange);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}

.contacts-routing__grid h3,
.contacts-routing__grid p {
  margin-bottom: 0;
}

.contacts-routing__grid a {
  grid-column: 3;
  width: fit-content;
  color: var(--contacts-blue);
  font-weight: 600;
  text-decoration: none;
}

.contacts-routing__grid a:hover {
  color: var(--contacts-orange);
}

.contacts-section-heading--office {
  max-width: 850px;
}

.contacts-office__layout {
  display: grid;
  overflow: hidden;
  min-height: 520px;
  grid-template-columns: minmax(0, 1.7fr) minmax(300px, 0.75fr);
  border: 1px solid var(--contacts-line);
  border-radius: var(--se-radius-xl);
  background: var(--contacts-surface);
  box-shadow: 0 20px 54px rgba(17, 53, 76, 0.09);
}

.contacts-map {
  min-height: 520px;
  background: #dfe9ee;
}

.contacts-map iframe {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 520px;
  border: 0;
}

.contacts-office__card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0;
  padding: clamp(30px, 4vw, 48px);
  background: var(--contacts-surface);
}

.contacts-office__card > div {
  padding: 24px 0;
  border-bottom: 1px solid var(--contacts-line);
}

.contacts-office__card > div:first-child {
  padding-top: 0;
}

.contacts-office__card > div:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.contacts-office__card > div > span {
  display: block;
  margin-bottom: 9px;
  color: var(--contacts-orange);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.contacts-office__card address {
  margin-bottom: 13px;
  color: var(--contacts-ink);
  font-size: 1.2rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.5;
}

.contacts-office__card p {
  margin-bottom: 0;
  font-size: 0.91rem;
}

.contacts-office__card a {
  color: var(--contacts-blue);
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
}

.contacts-office__card a:hover {
  color: var(--contacts-orange);
}

.contacts-office__notice {
  margin-top: 2px;
}

.contacts-legal {
  display: grid;
  grid-template-columns: minmax(250px, 0.72fr) minmax(0, 1.5fr);
  gap: clamp(42px, 7vw, 86px);
}

.contacts-legal__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 30px;
  margin-bottom: 22px;
  border-top: 1px solid var(--contacts-line);
}

.contacts-legal__grid > div {
  padding: 22px 0;
  border-bottom: 1px solid var(--contacts-line);
}

.contacts-legal__name {
  grid-column: 1/-1;
}

.contacts-legal dt {
  margin-bottom: 7px;
  color: var(--contacts-muted);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.contacts-legal dd {
  margin-left: 0;
  color: var(--contacts-ink);
  font-weight: 600;
  line-height: 1.45;
}

.contacts-legal__links {
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;
}

.contacts-legal__links a {
  color: var(--contacts-blue);
  font-weight: 600;
  text-decoration: none;
}

.contacts-legal__links a:hover {
  color: var(--contacts-orange);
}

.contacts-closing {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 50px;
  margin-top: clamp(68px, 7vw, 96px);
  padding: clamp(38px, 5vw, 60px);
  border-radius: var(--se-radius-xl);
  background: var(--contacts-blue-deep);
}

.contacts-closing > div {
  max-width: 730px;
}

.contacts-closing .contacts-eyebrow {
  margin-bottom: 16px;
}

.contacts-closing h2 {
  margin-bottom: 14px;
  color: #fff;
}

.contacts-closing p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.72);
}

.contacts-closing > .contacts-button {
  flex: 0 0 auto;
}

@media screen and (max-width: 980px) {
  .contacts-hero {
    min-height: auto;
    grid-template-columns: 1fr;
  }

  .contacts-hero__note {
    max-width: 520px;
  }

  .contacts-channels__grid {
    grid-template-columns: 1fr;
  }

  .contacts-channel {
    min-height: 0;
  }

  .contacts-routing,
.contacts-legal {
    grid-template-columns: 1fr;
  }

  .contacts-routing__grid,
.contacts-legal__grid,
.contacts-legal__links {
    grid-column: 1;
  }

  .contacts-office__layout {
    grid-template-columns: 1fr;
  }

  .contacts-map,
.contacts-map iframe {
    min-height: 430px;
  }
}
@media screen and (max-width: 600px) {
  .contacts-page {
    padding-right: 10px;
    padding-left: 10px;
  }

  .contacts-page h1 {
    overflow-wrap: normal;
    font-size: clamp(2.1rem, 9.5vw, 2.55rem);
    hyphens: none;
  }

  .contacts-page h2 {
    font-size: clamp(1.8rem, 8vw, 2.2rem);
  }

  .contacts-hero {
    gap: 34px;
    padding: 40px 24px;
    border-radius: var(--se-radius-l);
  }

  .contacts-actions,
.contacts-button {
    width: 100%;
  }

  .contacts-hero__note,
.contacts-channel {
    padding: 24px;
  }

  .contacts-routing__grid article {
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 12px;
  }

  .contacts-routing__grid article > p,
.contacts-routing__grid article > a {
    grid-column: 2;
  }

  .contacts-office__layout {
    border-radius: var(--se-radius-l);
  }

  .contacts-map,
.contacts-map iframe {
    min-height: 340px;
  }

  .contacts-office__card {
    padding: 26px 22px;
  }

  .contacts-legal__grid {
    grid-template-columns: 1fr;
  }

  .contacts-legal__name {
    grid-column: 1;
  }

  .contacts-closing {
    align-items: stretch;
    flex-direction: column;
    gap: 28px;
    padding: 32px 24px;
    border-radius: var(--se-radius-l);
  }
}
@media (prefers-reduced-motion: reduce) {
  .contacts-button {
    transition: none;
  }
}
.law-hub {
  --law-ink: var(--se-ink);
  --law-muted: var(--se-muted);
  --law-line: var(--se-line);
  --law-paper: #fff;
  --law-soft: var(--se-surface);
  --law-accent: var(--se-orange);
  --law-accent-dark: var(--se-orange-action);
  color: var(--law-ink);
  padding-bottom: 48px;
}
.law-hub *,
.law-hub *::before,
.law-hub *::after {
  box-sizing: border-box;
}
.law-hub h1,
.law-hub h2,
.law-hub h3,
.law-hub p,
.law-hub ul {
  margin-top: 0;
}
.law-hub h1,
.law-hub h2,
.law-hub h3 {
  color: inherit;
  text-align: left;
  text-shadow: none;
}
.law-hub h1 {
  max-width: 760px;
  padding: 0;
  font-size: clamp(2.5rem, 5vw, 4.6rem);
  font-weight: 600;
  line-height: 1.04;
  letter-spacing: -0.02em;
}
.law-hub h2 {
  padding: 0;
  font-size: clamp(2rem, 3.6vw, 3.15rem);
  font-weight: 600;
  line-height: 1.08;
  letter-spacing: -0.02em;
}
.law-hub h3 {
  padding: 0;
  font-size: 1.28rem;
  line-height: 1.28;
}
.law-hub p {
  padding-bottom: 0;
}
.law-hub a:focus-visible,
.law-hub summary:focus-visible {
  outline: 3px solid rgba(229, 107, 54, 0.45);
  outline-offset: 4px;
}

.law-hub__hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(275px, 0.65fr);
  gap: 52px;
  overflow: hidden;
  margin-top: 18px;
  padding: clamp(42px, 7vw, 84px);
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: radial-gradient(circle at 85% 12%, rgba(80, 164, 203, 0.26), transparent 34%), radial-gradient(circle at 15% 105%, rgba(229, 107, 54, 0.2), transparent 32%), linear-gradient(132deg, #0d2439 0%, #173d59 55%, #0e2c43 100%);
  isolation: isolate;
}
.law-hub__hero::after {
  position: absolute;
  z-index: -1;
  right: -80px;
  bottom: -130px;
  width: 360px;
  height: 360px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  box-shadow: 0 0 0 48px rgba(255, 255, 255, 0.035), 0 0 0 96px rgba(255, 255, 255, 0.02);
  content: "";
}
.law-hub__hero h1 {
  margin: 0;
  color: #fff;
}

.law-hub__hero-copy {
  align-self: center;
}

.law-hub__eyebrow,
.law-hub__kicker {
  display: inline-flex;
  align-items: center;
  margin-bottom: 18px;
  color: var(--law-accent);
  font-size: 0.77rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
.law-hub__eyebrow::before,
.law-hub__kicker::before {
  width: 34px;
  height: 2px;
  margin-right: 12px;
  background: currentColor;
  content: "";
}

.law-hub__eyebrow {
  color: #ffae86;
}

.law-hub__lead {
  max-width: 720px;
  margin: 0;
  padding-top: clamp(28px, 3.2vw, 38px);
  color: rgba(255, 255, 255, 0.78);
  font-size: clamp(1.12rem, 1.8vw, 1.36rem);
  line-height: 1.58;
}

.law-hub__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 36px;
}

.law-hub__button {
  display: inline-flex;
  min-height: 50px;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  transition: color 0.18s ease, background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.law-hub__button--primary {
  color: #fff;
  background: var(--law-accent);
  box-shadow: 0 12px 24px rgba(174, 62, 14, 0.24);
}

.law-hub__button--primary:hover {
  color: #fff;
  background: var(--law-accent-dark);
}

.law-hub__button--ghost {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.25);
  background: rgba(255, 255, 255, 0.07);
}

.law-hub__button--ghost:hover {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.5);
  background: rgba(255, 255, 255, 0.12);
}

.law-hub__status {
  align-self: end;
  padding: 26px;
  border: 1px solid rgba(255, 255, 255, 0.17);
  border-radius: var(--se-radius-l);
  background: rgba(4, 24, 39, 0.38);
  backdrop-filter: blur(12px);
}

.law-hub__status-mark {
  display: grid;
  width: 46px;
  height: 46px;
  margin-bottom: 24px;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
}
.law-hub__status-mark span {
  width: 17px;
  height: 9px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  transform: rotate(-45deg) translate(1px, -1px);
}

.law-hub__status-label {
  margin-bottom: 4px;
  color: #b7c7d3;
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.law-hub__status-date {
  margin-bottom: 13px;
  color: #fff;
  font-size: 1.25rem;
  font-weight: 600;
}

.law-hub__status-note {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.67);
  font-size: 0.95rem;
  line-height: 1.55;
}

.law-hub__trust-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  margin: 0 24px;
  border: 1px solid var(--law-line);
  border-top: 0;
  border-radius: 0 0 var(--se-radius-l) var(--se-radius-l);
  background: #fff;
  box-shadow: 0 14px 34px rgba(18, 48, 70, 0.06);
}
.law-hub__trust-row div {
  min-width: 0;
  padding: 23px 26px;
}
.law-hub__trust-row div + div {
  border-left: 1px solid var(--law-line);
}
.law-hub__trust-row strong,
.law-hub__trust-row span {
  display: block;
}
.law-hub__trust-row strong {
  margin-bottom: 5px;
  font-size: 0.98rem;
}
.law-hub__trust-row span {
  color: var(--law-muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.law-hub__section {
  padding: clamp(68px, 7vw, 96px) 0 0;
}

.law-hub__section-heading {
  max-width: 760px;
  margin-bottom: 38px;
}
.law-hub__section-heading h2 {
  margin: 0 0 20px;
}
.law-hub__section-heading p {
  max-width: 680px;
  margin-bottom: 0;
  color: var(--law-muted);
  font-size: 1.1rem;
  line-height: 1.62;
}

.law-hub__task-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.law-hub__task-card {
  position: relative;
  display: flex;
  min-height: 420px;
  flex-direction: column;
  overflow: hidden;
  padding: clamp(28px, 4vw, 42px);
  border: 1px solid var(--law-line);
  border-radius: var(--se-radius-l);
  background: var(--law-paper);
  box-shadow: 0 12px 34px rgba(21, 51, 72, 0.06);
}
.law-hub__task-card::after {
  position: absolute;
  top: 0;
  right: 0;
  width: 96px;
  height: 4px;
  background: #9cb3c2;
  content: "";
}
.law-hub__task-card h3 {
  max-width: 430px;
  margin: 18px 0 14px;
  font-size: clamp(1.45rem, 2.5vw, 2rem);
  letter-spacing: -0.02em;
}
.law-hub__task-card p {
  max-width: 580px;
  margin-bottom: 18px;
  color: var(--law-muted);
  font-size: 1.02rem;
  line-height: 1.6;
}
.law-hub__task-card ul {
  margin: 0 0 26px;
  padding: 0;
  color: #405568;
  list-style: none;
}
.law-hub__task-card li {
  position: relative;
  padding: 0 0 9px 20px;
  line-height: 1.45;
  list-style: none;
}
.law-hub__task-card li::before {
  position: absolute;
  top: 0.58em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--law-accent);
  content: "";
}

.law-hub__task-card--accent {
  border-color: #efd5c7;
  background: linear-gradient(155deg, #fff 55%, #fff4ed 100%);
}
.law-hub__task-card--accent::after {
  background: var(--law-accent);
}

.law-hub__task-card--dark {
  color: #fff;
  border-color: #173b55;
  background: linear-gradient(145deg, #173b55, #102b40);
}
.law-hub__task-card--dark::after {
  background: #82ddb6;
}
.law-hub__task-card--dark p,
.law-hub__task-card--dark ul {
  color: rgba(255, 255, 255, 0.7);
}
.law-hub__task-card--dark .law-hub__task-number {
  color: #82ddb6;
}
.law-hub__task-card--dark .law-hub__card-link {
  color: #fff;
}

.law-hub__task-number {
  color: var(--law-accent);
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.14em;
}

.law-hub__card-link {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  margin-top: auto;
  color: #174e71;
  font-weight: 600;
  text-decoration: none;
}
.law-hub__card-link span {
  margin-left: 9px;
  font-size: 1.25em;
  transition: transform 0.18s ease;
}

.law-hub__card-link:hover {
  color: var(--law-accent-dark);
}
.law-hub__card-link:hover span {
  transform: translateX(3px);
}

.law-hub__section--tinted {
  margin-top: clamp(68px, 7vw, 96px);
  padding: clamp(64px, 8vw, 90px) clamp(24px, 5vw, 64px);
  border-radius: var(--se-radius-xl);
  background: var(--law-soft);
}

.law-hub__process-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.law-hub__process-card {
  display: flex;
  min-height: 295px;
  flex-direction: column;
  padding: 27px;
  border: 1px solid #d9e3e9;
  border-radius: var(--se-radius-l);
  background: #fff;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}
.law-hub__process-card:hover {
  border-color: #bdcdd8;
  box-shadow: 0 14px 30px rgba(20, 49, 70, 0.08);
  transform: translateY(-2px);
}
.law-hub__process-card h3 {
  margin: 15px 0 12px;
  font-size: 1.35rem;
}
.law-hub__process-card p {
  margin-bottom: 20px;
  color: var(--law-muted);
  line-height: 1.55;
}
.law-hub__process-card strong {
  display: block;
  margin-top: auto;
  color: #3d5263;
  font-size: 0.88rem;
}
.law-hub__process-card a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid #e5ebef;
  color: #174e71;
  font-weight: 600;
  text-decoration: none;
}
.law-hub__process-card a:hover {
  color: var(--law-accent-dark);
}

.law-hub__process-code {
  align-self: flex-start;
  padding: 5px 9px;
  border-radius: var(--se-radius-s);
  color: #28536f;
  background: #e8f1f6;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.law-hub__answers {
  display: grid;
  grid-template-columns: minmax(260px, 0.7fr) minmax(0, 1.3fr);
  gap: clamp(40px, 7vw, 90px);
  align-items: start;
}
.law-hub__answers .law-hub__section-heading {
  position: sticky;
  top: 24px;
  margin-bottom: 0;
}

.law-hub__answer-list {
  border-top: 1px solid var(--law-line);
}
.law-hub__answer-list details {
  border-bottom: 1px solid var(--law-line);
}
.law-hub__answer-list summary {
  position: relative;
  padding: 27px 52px 27px 0;
  font-size: 1.15rem;
  font-weight: 600;
  line-height: 1.4;
  cursor: pointer;
  list-style: none;
}
.law-hub__answer-list summary::-webkit-details-marker {
  display: none;
}
.law-hub__answer-list summary::after {
  position: absolute;
  top: 23px;
  right: 0;
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border: 1px solid var(--law-line);
  border-radius: 50%;
  color: #36586f;
  content: "+";
  font-size: 1.35rem;
  font-weight: 400;
  line-height: 1;
}
.law-hub__answer-list details[open] summary::after {
  content: "−";
}
.law-hub__answer-list details > div {
  max-width: 720px;
  padding: 0 52px 24px 0;
  color: var(--law-muted);
  font-size: 1.02rem;
  line-height: 1.65;
}
.law-hub__answer-list p {
  margin-bottom: 12px;
}
.law-hub__answer-list a {
  color: #174e71;
  font-weight: 600;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.law-hub__document-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border-top: 1px solid var(--law-line);
  border-left: 1px solid var(--law-line);
  border-radius: var(--se-radius-l);
  overflow: hidden;
}
.law-hub__document-grid article {
  display: flex;
  min-height: 285px;
  flex-direction: column;
  padding: clamp(27px, 4vw, 40px);
  border-right: 1px solid var(--law-line);
  border-bottom: 1px solid var(--law-line);
  background: #fff;
}
.law-hub__document-grid h3 {
  margin: 17px 0 12px;
  font-size: 1.46rem;
}
.law-hub__document-grid p {
  margin-bottom: 22px;
  color: var(--law-muted);
  font-size: 1rem;
  line-height: 1.6;
}
.law-hub__document-grid article > div {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 19px;
  margin-top: auto;
}
.law-hub__document-grid a {
  color: #174e71;
  font-weight: 600;
  text-decoration: none;
}
.law-hub__document-grid a:hover {
  color: var(--law-accent-dark);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.law-hub__document-status {
  align-self: flex-start;
  padding: 5px 9px;
  border-radius: var(--se-radius-s);
  color: #2d644e;
  background: #e5f4ec;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.law-hub__limit {
  display: flex;
  gap: 40px;
  align-items: flex-end;
  justify-content: space-between;
  margin-top: clamp(68px, 7vw, 96px);
  padding: clamp(38px, 6vw, 68px);
  border-radius: var(--se-radius-xl);
  color: #fff;
  background: linear-gradient(130deg, #173f5b, #102c42);
}
.law-hub__limit > div {
  max-width: 770px;
}
.law-hub__limit h2 {
  max-width: 690px;
  margin-bottom: 18px;
  color: #fff;
}
.law-hub__limit p {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 1.05rem;
  line-height: 1.65;
}

.law-hub__button--light {
  flex: 0 0 auto;
  color: #17384f;
  background: #fff;
}

.law-hub__button--light:hover {
  color: #17384f;
  background: #f3f7f9;
}

.law-hub__updates .law-hub__section-heading {
  max-width: 850px;
}

.law-hub__update-grid {
  --law-update-date-width: 112px;
  --law-update-track-width: 32px;
  --law-update-gap: 20px;
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  margin: 0;
  padding: 26px;
  border: 1px solid #e1e9ee;
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 100% 0, rgba(55, 126, 164, 0.08), transparent 290px), #f6f9fb;
  list-style: none;
}
.law-hub__update-grid::before {
  position: absolute;
  top: 66px;
  bottom: 66px;
  left: calc(26px + var(--law-update-date-width) + var(--law-update-gap) + var(--law-update-track-width) / 2 - 1px);
  width: 2px;
  border-radius: 2px;
  background: linear-gradient(#e6aa90, #cbd9e2 12%, #cbd9e2 88%, #e6aa90);
  content: "";
}
.law-hub__update-grid li {
  min-width: 0;
}
.law-hub__update-grid .law-hub__update-link {
  position: relative;
  display: grid;
  grid-template-columns: var(--law-update-date-width) var(--law-update-track-width) minmax(0, 1fr);
  gap: var(--law-update-gap);
  align-items: start;
  border-bottom: 0;
  color: var(--law-ink);
  text-decoration: none;
}
.law-hub__update-grid .law-hub__update-link:hover,
.law-hub__update-grid .law-hub__update-link:focus-visible {
  color: var(--law-ink);
}
.law-hub__update-grid .law-hub__update-link:hover .law-hub__update-content,
.law-hub__update-grid .law-hub__update-link:focus-visible .law-hub__update-content {
  border-color: rgba(235, 102, 52, 0.45);
  box-shadow: 0 14px 32px rgba(23, 56, 79, 0.1);
  transform: translateY(-2px);
}
.law-hub__update-grid .law-hub__update-link:hover .law-hub__update-marker,
.law-hub__update-grid .law-hub__update-link:focus-visible .law-hub__update-marker {
  border-color: var(--law-accent);
  background: var(--law-accent);
  box-shadow: 0 0 0 5px rgba(235, 102, 52, 0.14);
}
.law-hub__update-grid .law-hub__update-link:focus-visible {
  outline: 3px solid rgba(235, 102, 52, 0.32);
  outline-offset: 5px;
  border-radius: var(--se-radius-m);
}
.law-hub__update-grid time {
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  padding-top: 18px;
  text-align: right;
}
.law-hub__update-grid .law-hub__update-year {
  color: var(--law-ink);
  font-size: 1.65rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1;
}
.law-hub__update-grid .law-hub__update-day {
  margin-top: 5px;
  color: var(--law-accent-dark);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-transform: uppercase;
}
.law-hub__update-grid .law-hub__update-marker {
  position: relative;
  z-index: 1;
  display: block;
  width: 16px;
  height: 16px;
  margin: 25px auto 0;
  border: 4px solid #c1d0d9;
  border-radius: 50%;
  background: #f6f9fb;
  transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}
.law-hub__update-grid .law-hub__update-content {
  position: relative;
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 22px 26px 20px;
  border: 1px solid #dce6ec;
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 7px 22px rgba(23, 56, 79, 0.055);
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}
.law-hub__update-grid .law-hub__update-content::before {
  position: absolute;
  top: 31px;
  left: calc((var(--law-update-gap) + 8px) * -1);
  width: calc(var(--law-update-gap) + 8px);
  height: 1px;
  background: #cbd9e2;
  content: "";
}
.law-hub__update-grid h3 {
  margin: 0 0 8px;
  font-size: 1.15rem;
}
.law-hub__update-grid p {
  margin-bottom: 0;
  color: var(--law-muted);
  line-height: 1.58;
}
.law-hub__update-grid .law-hub__update-more {
  padding-top: 12px;
  color: var(--law-accent-dark);
  font-size: 0.86rem;
  font-weight: 700;
}
.law-hub__update-grid .law-hub__update-status {
  align-self: flex-start;
  margin-bottom: 8px;
  padding: 4px 8px;
  border-radius: var(--se-radius-s);
  color: #765213;
  background: #fff1c9;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.law-hub__update-grid .law-hub__update-future .law-hub__update-content {
  border-color: #ead9a8;
  background: linear-gradient(145deg, #fff 60%, #fff9e9);
}
.law-hub__update-grid .law-hub__update-future .law-hub__update-marker {
  border-color: #d7a538;
  background: #fff6d8;
  box-shadow: 0 0 0 5px rgba(215, 165, 56, 0.12);
}

.law-hub__updates,
.law-hub__update-grid > li {
  scroll-margin-top: 104px;
}

.law-hub__archive {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
  gap: 50px;
  margin-top: clamp(68px, 7vw, 96px);
  padding: clamp(34px, 5vw, 54px);
  border: 1px dashed #bbc8d1;
  border-radius: var(--se-radius-l);
  background: #f8fafb;
}
.law-hub__archive h2 {
  margin: 10px 0 14px;
  font-size: clamp(1.55rem, 3vw, 2.15rem);
}
.law-hub__archive p {
  max-width: 650px;
  margin-bottom: 0;
  color: var(--law-muted);
  line-height: 1.6;
}
.law-hub__archive ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.law-hub__archive li {
  padding: 13px 0;
  border-bottom: 1px solid #dde5ea;
  list-style: none;
}
.law-hub__archive li:last-child {
  border-bottom: 0;
}
.law-hub__archive a {
  color: #36566c;
  font-weight: 600;
  line-height: 1.45;
  text-decoration: none;
}
.law-hub__archive a:hover {
  color: var(--law-accent-dark);
}

.law-hub__archive-label {
  color: #788995;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.law-hub__disclaimer {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 30px;
  margin-top: 30px;
  padding: 28px 4px 0;
  border-top: 1px solid var(--law-line);
  color: #6e7d88;
  font-size: 0.87rem;
  line-height: 1.6;
}
.law-hub__disclaimer strong {
  color: #455968;
}
.law-hub__disclaimer p {
  margin-bottom: 0;
}

@media screen and (max-width: 980px) {
  .law-hub__hero {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .law-hub__status {
    max-width: 480px;
  }

  .law-hub__trust-row {
    grid-template-columns: repeat(2, 1fr);
  }
  .law-hub__trust-row div:nth-child(3) {
    border-top: 1px solid var(--law-line);
    border-left: 0;
  }
  .law-hub__trust-row div:nth-child(4) {
    border-top: 1px solid var(--law-line);
  }

  .law-hub__process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .law-hub__answers {
    grid-template-columns: 1fr;
  }
  .law-hub__answers .law-hub__section-heading {
    position: static;
  }

  .law-hub__update-grid {
    --law-update-date-width: 96px;
    --law-update-gap: 14px;
  }
  .law-hub__update-grid .law-hub__update-year {
    font-size: 1.45rem;
  }
}
@media screen and (max-width: 700px) {
  .law-hub {
    margin: 0 auto;
    padding: 0 20px 34px;
  }
  .law-hub h1 {
    overflow-wrap: break-word;
    font-size: clamp(2.1rem, 9.6vw, 2.7rem);
    hyphens: none;
  }

  .law-hub__hero {
    margin-top: 12px;
    padding: 36px 24px;
    border-radius: var(--se-radius-l);
  }

  .law-hub__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .law-hub__button {
    width: 100%;
  }

  .law-hub__trust-row {
    margin: 0 10px;
  }
  .law-hub__trust-row div {
    padding: 18px;
  }

  .law-hub__task-grid,
.law-hub__process-grid,
.law-hub__document-grid,
.law-hub__archive {
    grid-template-columns: 1fr;
  }

  .law-hub__update-grid {
    gap: 4px;
    margin-right: -4px;
    margin-left: -4px;
    padding: 22px 14px;
    border-radius: var(--se-radius-l);
  }
  .law-hub__update-grid::before {
    top: 50px;
    bottom: 50px;
    left: 22px;
  }
  .law-hub__update-grid li {
    min-width: 0;
  }
  .law-hub__update-grid .law-hub__update-link {
    display: block;
    padding: 0 0 18px 28px;
    border-bottom: 0;
  }
  .law-hub__update-grid time {
    align-items: baseline;
    flex-direction: row;
    gap: 8px;
    padding: 0 0 10px;
    text-align: left;
  }
  .law-hub__update-grid .law-hub__update-year {
    font-size: 1.35rem;
  }
  .law-hub__update-grid .law-hub__update-day {
    margin-top: 0;
  }
  .law-hub__update-grid .law-hub__update-marker {
    position: absolute;
    top: 4px;
    left: 0;
    width: 16px;
    height: 16px;
    margin: 0;
  }
  .law-hub__update-grid .law-hub__update-content {
    padding: 19px 18px 18px;
  }
  .law-hub__update-grid .law-hub__update-content::before {
    display: none;
  }
  .law-hub__update-grid .law-hub__update-link:hover .law-hub__update-content,
.law-hub__update-grid .law-hub__update-link:focus-visible .law-hub__update-content {
    transform: translateY(-2px);
  }

  .law-hub__task-card {
    min-height: 0;
  }

  .law-hub__section--tinted {
    margin-right: -2px;
    margin-left: -2px;
    padding: 52px 18px;
    border-radius: var(--se-radius-l);
  }

  .law-hub__process-card {
    min-height: 0;
  }

  .law-hub__document-grid article {
    min-height: 0;
  }

  .law-hub__limit {
    align-items: stretch;
    flex-direction: column;
    padding: 34px 24px;
  }

  .law-hub__archive {
    gap: 26px;
  }

  .law-hub__disclaimer {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}
@media screen and (max-width: 480px) {
  .law-hub__trust-row {
    grid-template-columns: 1fr;
  }
  .law-hub__trust-row div + div,
.law-hub__trust-row div:nth-child(3) {
    border-top: 1px solid var(--law-line);
    border-left: 0;
  }

  .law-hub__answer-list summary {
    padding-right: 44px;
  }
  .law-hub__answer-list details > div {
    padding-right: 0;
  }
}
.law-reference-page {
  --reference-ink: var(--se-ink);
  --reference-muted: var(--se-muted);
  --reference-line: var(--se-line);
  --reference-accent: var(--se-orange);
  color: var(--reference-ink);
  padding-bottom: 48px;
}
.law-reference-page *,
.law-reference-page *::before,
.law-reference-page *::after {
  box-sizing: border-box;
}
.law-reference-page h1,
.law-reference-page h2,
.law-reference-page h3,
.law-reference-page p,
.law-reference-page ul,
.law-reference-page ol {
  margin-top: 0;
}
.law-reference-page h1,
.law-reference-page h2,
.law-reference-page h3 {
  color: inherit;
  text-align: left;
  text-shadow: none;
}
.law-reference-page h1 {
  max-width: 840px;
  padding: 0;
  font-size: clamp(2.3rem, 4.4vw, 3.8rem);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: -0.02em;
  text-wrap: balance;
}
.law-reference-page h2 {
  padding: 0;
  font-size: clamp(1.9rem, 3.6vw, 2.85rem);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -0.02em;
}
.law-reference-page h3 {
  padding: 0;
}
.law-reference-page p {
  padding-bottom: 0;
}
.law-reference-page a:focus-visible {
  outline: 3px solid rgba(223, 102, 50, 0.38);
  outline-offset: 4px;
}

.law-reference__hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 245px;
  gap: clamp(32px, 4vw, 56px);
  align-items: end;
  margin-top: 18px;
  padding: clamp(38px, 5vw, 64px);
  border: 1px solid #d7e2e9;
  border-radius: var(--se-radius-xl) var(--se-radius-xl) 0 0;
  background: radial-gradient(circle at 92% 4%, rgba(85, 157, 194, 0.12), transparent 31%), linear-gradient(145deg, #f7fafc 0%, #fff 68%);
}

.law-reference__hero-main h1 {
  margin: 0;
}

.law-reference__back {
  display: inline-block;
  margin-bottom: 26px;
  color: #527083;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
}

.law-reference__back:hover {
  color: var(--reference-accent);
}

.law-reference__eyebrow {
  display: flex;
  align-items: center;
  margin-bottom: 14px;
  color: var(--reference-accent);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}
.law-reference__eyebrow::before {
  width: 31px;
  height: 2px;
  margin-right: 11px;
  background: currentColor;
  content: "";
}

.law-reference__lead {
  max-width: 760px;
  margin: 0;
  padding-top: clamp(22px, 2.4vw, 28px);
  color: var(--reference-muted);
  font-size: clamp(1.08rem, 1.7vw, 1.28rem);
  line-height: 1.62;
}

.law-reference-page .law-reference__sources {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}
.law-reference-page .law-reference__sources li {
  padding: 0;
  list-style: none;
}
.law-reference-page .law-reference__sources a {
  display: inline-flex;
  min-height: 43px;
  align-items: center;
  padding: 10px 14px;
  border: 1px solid #cddbe4;
  border-radius: var(--se-radius-s);
  color: #1c5679;
  background: #fff;
  font-weight: 600;
  line-height: 1.35;
  text-decoration: none;
}
.law-reference-page .law-reference__sources a:hover {
  border-color: #9fb7c7;
  color: #113f5b;
  background: #f7fafc;
}

.law-reference__status {
  position: relative;
  padding: 27px 24px 24px;
  border: 1px solid #b9dfcc;
  border-radius: var(--se-radius-m);
  background: #f1faf5;
}
.law-reference__status::before {
  position: absolute;
  top: 19px;
  right: 19px;
  width: 10px;
  height: 10px;
  border: 3px solid #fff;
  border-radius: 50%;
  background: #44a777;
  box-shadow: 0 0 0 1px #44a777;
  content: "";
}
.law-reference__status span,
.law-reference__status strong,
.law-reference__status small {
  display: block;
}
.law-reference__status strong {
  margin: 12px 0 8px;
  padding-right: 15px;
  font-size: 1.05rem;
  line-height: 1.45;
}
.law-reference__status small {
  color: #62786d;
  line-height: 1.45;
}

.law-reference__status-label {
  color: #287552;
  font-size: 0.71rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.law-reference__status--archive {
  border-color: #e6c3bd;
  background: #fff4f1;
}
.law-reference__status--archive::before {
  background: #c95845;
  box-shadow: 0 0 0 1px #c95845;
}
.law-reference__status--archive .law-reference__status-label {
  color: #a53e30;
}

.law-reference__status--special {
  border-color: #e5d8ad;
  background: #fffaf0;
}
.law-reference__status--special::before {
  background: #bd8b29;
  box-shadow: 0 0 0 1px #bd8b29;
}
.law-reference__status--special .law-reference__status-label {
  color: #856014;
}

.law-reference__facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-right: 1px solid var(--reference-line);
  border-bottom: 1px solid var(--reference-line);
  border-left: 1px solid var(--reference-line);
  border-radius: 0 0 var(--se-radius-l) var(--se-radius-l);
  background: #fff;
}
.law-reference__facts > div {
  min-width: 0;
  padding: 24px 27px;
}
.law-reference__facts > div + div {
  border-left: 1px solid var(--reference-line);
}
.law-reference__facts strong,
.law-reference__facts span {
  display: block;
}
.law-reference__facts strong {
  margin-bottom: 6px;
  font-size: 1.04rem;
}
.law-reference__facts span {
  color: var(--reference-muted);
  font-size: 0.82rem;
  line-height: 1.42;
}

.law-reference__summary {
  position: relative;
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: clamp(34px, 5vw, 70px);
  margin-top: clamp(34px, 5vw, 54px);
  padding: clamp(34px, 5.5vw, 62px);
  overflow: hidden;
  border: 1px solid #24465f;
  border-radius: var(--se-radius-l);
  color: #fff;
  background: radial-gradient(circle at 92% 0, rgba(92, 170, 204, 0.18), transparent 34%), linear-gradient(135deg, #18354b 0%, #10293d 100%);
}
.law-reference__summary::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background: linear-gradient(90deg, var(--reference-accent) 0 120px, rgba(255, 255, 255, 0.13) 120px);
  content: "";
}

.law-reference__summary-aside span,
.law-reference__summary-aside strong {
  display: block;
}
.law-reference__summary-aside span {
  margin-bottom: 13px;
  color: #f4a17c;
  font-size: 0.73rem;
  font-weight: 700;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}
.law-reference__summary-aside strong {
  max-width: 150px;
  color: #b7c9d5;
  font-size: 0.91rem;
  font-weight: 600;
  line-height: 1.5;
}

.law-reference__summary-body {
  min-width: 0;
}
.law-reference__summary-body h2 {
  max-width: 800px;
  margin: 0 0 23px;
  color: #fff;
  font-size: clamp(1.75rem, 3vw, 2.45rem);
  line-height: 1.12;
}

.law-reference__summary-copy {
  max-width: 830px;
}
.law-reference__summary-copy p {
  margin-bottom: 15px;
  color: #d5e0e7;
  font-size: 1.04rem;
  line-height: 1.67;
}
.law-reference__summary-copy p:last-child {
  margin-bottom: 0;
}

.law-reference__summary-copy + .law-reference__summary-copy {
  margin-top: 15px;
}

.law-reference__summary-points {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 29px 0 0;
  padding: 0;
  list-style: none;
}
.law-reference__summary-points li {
  position: relative;
  min-width: 0;
  margin: 0;
  padding: 18px 17px 18px 39px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: var(--se-radius-s);
  color: #edf3f6;
  background: rgba(255, 255, 255, 0.055);
  font-size: 0.88rem;
  line-height: 1.5;
  list-style: none;
}
.law-reference__summary-points li::before {
  position: absolute;
  top: 23px;
  left: 18px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #ef8a5e;
  content: "";
}

.law-reference__summary-highlight {
  margin-top: 20px;
  padding: clamp(24px, 3.5vw, 34px);
  border-left: 4px solid var(--reference-accent);
  border-radius: var(--se-radius-xs) var(--se-radius-m) var(--se-radius-m) var(--se-radius-xs);
  color: var(--reference-ink);
  background: #fff;
  box-shadow: 0 16px 40px rgba(4, 20, 31, 0.16);
}
.law-reference__summary-highlight h3 {
  max-width: 760px;
  margin: 0 0 17px;
  color: var(--reference-ink);
  font-size: clamp(1.25rem, 2vw, 1.62rem);
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -0.018em;
}
.law-reference__summary-highlight p {
  margin: 0 0 12px;
  color: #4f6474;
  font-size: 0.97rem;
  line-height: 1.62;
}
.law-reference__summary-highlight p:last-child {
  margin-bottom: 0;
}

.law-reference__summary-highlight-eyebrow {
  display: block;
  margin-bottom: 9px;
  color: #b94e22;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.law-reference__nav {
  display: flex;
  flex-wrap: wrap;
  gap: 11px 26px;
  margin: 26px 0 0;
  padding: 18px 4px;
  border-bottom: 1px solid var(--reference-line);
}
.law-reference__nav a {
  color: #385a70;
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
}
.law-reference__nav a:hover {
  color: var(--reference-accent);
}

.law-reference__section {
  padding-top: clamp(68px, 8vw, 100px);
  scroll-margin-top: 80px;
}

.law-reference__section-heading {
  max-width: 740px;
  margin-bottom: 34px;
}
.law-reference__section-heading > span {
  display: block;
  margin-bottom: 13px;
  color: var(--reference-accent);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.law-reference__section-heading h2 {
  margin: 0 0 18px;
}
.law-reference__section-heading p {
  margin-bottom: 0;
  color: var(--reference-muted);
  font-size: 1.04rem;
  line-height: 1.6;
}

.law-reference__rules {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.law-reference__rules article {
  min-height: 245px;
  padding: clamp(26px, 4vw, 37px);
  border: 1px solid var(--reference-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 9px 24px rgba(20, 52, 75, 0.045);
}
.law-reference__rules h3 {
  margin: 17px 0 11px;
  font-size: 1.32rem;
  line-height: 1.3;
}
.law-reference__rules p {
  margin-bottom: 0;
  color: var(--reference-muted);
  font-size: 0.98rem;
  line-height: 1.62;
}

.law-reference__article {
  display: inline-flex;
  padding: 5px 9px;
  border-radius: var(--se-radius-s);
  color: #285873;
  background: #e8f1f6;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.law-reference__longread {
  max-width: 980px;
  margin-right: auto;
  margin-left: auto;
}

.law-reference__guide {
  display: grid;
  gap: 22px;
}
.law-reference__guide article {
  padding: clamp(30px, 5vw, 54px);
  border: 1px solid var(--reference-line);
  border-radius: var(--se-radius-l);
  background: #fff;
  box-shadow: 0 12px 34px rgba(20, 52, 75, 0.045);
}
.law-reference__guide article:nth-child(even) {
  border-color: var(--se-line);
  background: #f6f9fa;
}
.law-reference__guide h3 {
  max-width: 760px;
  margin: 11px 0 22px;
  font-size: clamp(1.45rem, 2.7vw, 2rem);
  line-height: 1.22;
  letter-spacing: -0.018em;
}
.law-reference__guide p {
  max-width: 820px;
  margin-bottom: 17px;
  color: #4f6271;
  font-size: 1.01rem;
  line-height: 1.78;
}
.law-reference__guide p:last-child {
  margin-bottom: 0;
}
.law-reference__guide ul {
  display: grid;
  gap: 10px;
  max-width: 820px;
  margin: 25px 0 0;
  padding: 20px 24px;
  border-left: 3px solid #8faebe;
  border-radius: 0 var(--se-radius-s) var(--se-radius-s) 0;
  background: #edf3f6;
  list-style: none;
}
.law-reference__guide li {
  position: relative;
  padding-left: 20px;
  color: #405867;
  line-height: 1.62;
  list-style: none;
}
.law-reference__guide li::before {
  position: absolute;
  top: 0.7em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--reference-accent);
  content: "";
}

.law-reference__guide-kicker {
  color: var(--reference-accent);
  font-size: 0.73rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.law-reference__section--soft {
  margin-top: clamp(40px, 5vw, 64px);
  padding: clamp(44px, 5vw, 60px) clamp(24px, 5vw, 60px);
  border-radius: var(--se-radius-xl);
  background: #f2f6f8;
}

.law-reference__steps {
  margin: 0;
  padding: 0;
  counter-reset: none;
  list-style: none;
}
.law-reference__steps li {
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 22px;
  padding: 24px 0;
  border-top: 1px solid #d5e0e6;
  list-style: none;
}
.law-reference__steps li > span {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: #193e58;
  font-size: 0.75rem;
  font-weight: 700;
}
.law-reference__steps h3 {
  margin: 0 0 8px;
  font-size: 1.16rem;
}
.law-reference__steps p {
  max-width: 800px;
  margin-bottom: 0;
  color: var(--reference-muted);
  line-height: 1.62;
}

.law-reference__notice {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 25px;
  margin-top: clamp(40px, 5vw, 64px);
  scroll-margin-top: 80px;
  padding: clamp(30px, 5vw, 48px);
  border: 1px solid #e9cdbf;
  border-radius: var(--se-radius-l);
  background: linear-gradient(135deg, #fff7f2, #fff);
}
.law-reference__notice h2 {
  margin-bottom: 12px;
  font-size: clamp(1.45rem, 2.7vw, 2.05rem);
}
.law-reference__notice p {
  max-width: 850px;
  margin-bottom: 0;
  color: #705f57;
  font-size: 1.01rem;
  line-height: 1.64;
}

.law-reference__notice-mark {
  display: grid;
  width: 50px;
  height: 50px;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--reference-accent);
  font-size: 1.35rem;
  font-weight: 700;
}

.law-reference__related {
  display: flex;
  gap: 30px;
  align-items: center;
  justify-content: space-between;
  margin-top: 24px;
  padding: 30px 34px;
  border-radius: var(--se-radius-l);
  color: #fff;
  background: linear-gradient(130deg, #173d58, #102b40);
}
.law-reference__related h2 {
  margin: 0;
  color: #fff;
  font-size: 1.28rem;
}
.law-reference__related > div {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}
.law-reference__related a {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  padding: 10px 14px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: var(--se-radius-s);
  color: #fff;
  background: rgba(255, 255, 255, 0.07);
  font-weight: 600;
  text-decoration: none;
}
.law-reference__related a:hover {
  border-color: rgba(255, 255, 255, 0.45);
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
}
.law-reference__related b {
  margin-left: 7px;
}

.law-reference__disclaimer {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 28px;
  margin-top: 30px;
  padding: 28px 4px 0;
  border-top: 1px solid var(--reference-line);
  color: #6c7b87;
  font-size: 0.87rem;
  line-height: 1.62;
}
.law-reference__disclaimer strong {
  color: #455a69;
}
.law-reference__disclaimer p {
  margin-bottom: 0;
}

@media screen and (max-width: 900px) {
  .law-reference__hero {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .law-reference__status {
    max-width: 430px;
  }

  .law-reference__facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .law-reference__facts > div:nth-child(3) {
    border-top: 1px solid var(--reference-line);
    border-left: 0;
  }
  .law-reference__facts > div:nth-child(4) {
    border-top: 1px solid var(--reference-line);
  }

  .law-reference__summary {
    grid-template-columns: 1fr;
    gap: 23px;
  }

  .law-reference__summary-aside strong {
    max-width: none;
  }

  .law-reference__summary-points {
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 700px) {
  .law-reference-page {
    margin: 0 auto;
    padding: 0 20px 34px;
  }
  .law-reference-page h1 {
    overflow-wrap: break-word;
    font-size: clamp(2.05rem, 9.6vw, 2.55rem);
    hyphens: none;
  }

  .law-reference__hero {
    margin-top: 12px;
    gap: 28px;
    padding: 32px 22px;
    border-radius: var(--se-radius-l) var(--se-radius-l) 0 0;
  }

  .law-reference__summary {
    padding: 32px 23px;
    border-radius: var(--se-radius-l);
  }

  .law-reference__summary-body h2 {
    margin-bottom: 20px;
  }

  .law-reference__summary-copy p {
    font-size: 0.98rem;
  }

  .law-reference__sources {
    align-items: stretch;
    flex-direction: column;
  }
  .law-reference__sources a {
    width: 100%;
  }

  .law-reference__rules {
    grid-template-columns: 1fr;
  }
  .law-reference__rules article {
    min-height: 0;
  }

  .law-reference__section--soft {
    padding: 36px 20px;
  }

  .law-reference__notice {
    grid-template-columns: 1fr;
  }

  .law-reference__related {
    align-items: stretch;
    flex-direction: column;
  }
  .law-reference__related > div {
    flex-direction: column;
  }

  .law-reference__disclaimer {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}
@media screen and (max-width: 480px) {
  .law-reference__facts {
    grid-template-columns: 1fr;
  }
  .law-reference__facts > div + div,
.law-reference__facts > div:nth-child(3) {
    border-top: 1px solid var(--reference-line);
    border-left: 0;
  }

  .law-reference__steps li {
    grid-template-columns: 42px 1fr;
    gap: 15px;
  }
}
.law {
  padding-top: 50px;
  border-top: #ddd 1px solid;
}

.law h2 {
  text-align: center;
}

.law_footer {
  font-style: italic;
  text-align: right;
  padding-top: 30px;
}

.law_header {
  font-style: italic;
  text-align: right;
  padding-top: 30px;
  padding-bottom: 30px;
}

.law_header_middle {
  font-style: italic;
  text-align: center;
  padding-top: 30px;
  padding-bottom: 30px;
}

.law_declaration {
  padding: 40px;
  font-weight: 600;
  text-align: center;
}

.vacancies-page h1,
.vacancies-page h2,
.vacancies-page h3,
.vacancies-page h4,
.vacancy-page h1,
.vacancy-page h2,
.vacancy-page h3,
.vacancy-page h4 {
  color: var(--se-ink);
}
.vacancies-page .vacancy-eyebrow,
.vacancy-page .vacancy-eyebrow {
  color: var(--se-orange);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.12em;
  margin-bottom: 12px;
  text-transform: uppercase;
}
.vacancies-page .vacancy-button,
.vacancy-page .vacancy-button {
  background: var(--se-orange);
  border: 0;
  border-radius: var(--se-radius-s);
  box-shadow: 0 12px 24px rgba(180, 78, 15, 0.18);
  box-sizing: border-box;
  color: #fff;
  display: inline-block;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.35;
  min-height: 50px;
  padding: 14px 22px;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}
.vacancies-page .vacancy-button:hover, .vacancies-page .vacancy-button:visited, .vacancies-page .vacancy-button:active,
.vacancy-page .vacancy-button:hover,
.vacancy-page .vacancy-button:visited,
.vacancy-page .vacancy-button:active {
  color: #fff;
  text-decoration: none;
}
.vacancies-page .vacancy-button:hover,
.vacancy-page .vacancy-button:hover {
  background: var(--se-orange-action);
  box-shadow: 0 14px 28px rgba(180, 78, 15, 0.24);
  transform: translateY(-1px);
}
.vacancies-page .vacancy-button:focus-visible,
.vacancy-page .vacancy-button:focus-visible {
  outline: 3px solid rgba(253, 131, 39, 0.35);
  outline-offset: 4px;
}
.vacancies-page .vacancy-check-list,
.vacancy-page .vacancy-check-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.vacancies-page .vacancy-check-list li,
.vacancy-page .vacancy-check-list li {
  margin: 0 0 12px;
  padding-left: 24px;
  position: relative;
}
.vacancies-page .vacancy-check-list li:before,
.vacancy-page .vacancy-check-list li:before {
  color: var(--se-blue);
  content: "✓";
  font-weight: 600;
  left: 0;
  position: absolute;
  top: 0;
}

.vacancies-page .vacancies-hero {
  background: radial-gradient(circle at 86% 8%, rgba(91, 171, 224, 0.24), transparent 34%), radial-gradient(circle at 12% 112%, rgba(253, 131, 39, 0.18), transparent 34%), linear-gradient(132deg, #102744 0%, var(--se-ink-deep) 52%, #1a4e83 100%);
  border-radius: var(--se-radius-xl);
  color: #fff;
  isolation: isolate;
  margin: 18px 0 clamp(68px, 8vw, 96px);
  overflow: hidden;
  padding: clamp(46px, 7vw, 82px);
  position: relative;
}
.vacancies-page .vacancies-hero:after {
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 50%;
  box-shadow: 0 0 0 48px rgba(255, 255, 255, 0.03), 0 0 0 96px rgba(255, 255, 255, 0.018);
  content: "";
  height: 360px;
  position: absolute;
  right: -105px;
  top: -190px;
  width: 360px;
  z-index: -1;
}
.vacancies-page .vacancies-hero .vacancy-eyebrow {
  color: #f29a70;
}
.vacancies-page .vacancies-hero h1 {
  color: #fff;
  font-size: clamp(2.75rem, 4.6vw, 4.2rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.04;
  margin: 0;
  max-width: 800px;
  padding: 0;
  position: relative;
  text-transform: none;
  z-index: 1;
}
.vacancies-page .vacancies-hero p {
  color: rgba(255, 255, 255, 0.8);
  font-size: 17px;
  line-height: 1.65;
  margin: 20px 0 0;
  max-width: 790px;
  padding: 0;
  position: relative;
  z-index: 1;
}
.vacancies-page .vacancies-hero .vacancies-hero__lead {
  color: rgba(255, 255, 255, 0.9);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(1.17rem, 1.8vw, 1.4rem);
  line-height: 1.58;
  margin: 0;
  padding-top: clamp(28px, 3vw, 36px);
}
.vacancies-page .vacancies-hero .vacancy-button {
  margin-top: 32px;
  position: relative;
  z-index: 1;
}
.vacancies-page .vacancies-scale {
  display: grid;
  gap: 55px;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  margin-bottom: clamp(68px, 7vw, 96px);
}
.vacancies-page .vacancies-scale h2 {
  font-size: clamp(2rem, 3.5vw, 3rem);
  letter-spacing: -0.02em;
  line-height: 1.08;
  margin: 0 0 24px;
  padding: 0;
  text-transform: none;
}
.vacancies-page .vacancies-scale .vacancies-scale__intro p {
  color: #536373;
  font-size: 16px;
  line-height: 1.7;
  margin: 0 0 18px;
  padding: 0;
}
.vacancies-page .vacancies-scale .vacancies-scale__intro p:last-child {
  margin-bottom: 0;
}
.vacancies-page .vacancies-principles {
  border-top: 1px solid var(--se-line);
}
.vacancies-page .vacancies-principle {
  border-bottom: 1px solid var(--se-line);
  display: grid;
  gap: 6px 16px;
  grid-template-columns: 40px 1fr;
  padding: 22px 0;
}
.vacancies-page .vacancies-principle > span {
  color: var(--se-orange);
  font-size: 12px;
  font-weight: 600;
  grid-row: 1/3;
  letter-spacing: 0.1em;
  padding-top: 3px;
}
.vacancies-page .vacancies-principle h3 {
  font-size: 18px;
  margin: 0;
}
.vacancies-page .vacancies-principle p {
  color: #4e5663;
  margin: 0;
}
.vacancies-page .vacancies-block {
  margin-bottom: clamp(68px, 7vw, 96px);
}
.vacancies-page .vacancies-block .vacancies-block__header {
  align-items: end;
  display: grid;
  gap: 50px;
  grid-template-columns: minmax(0, 0.8fr) minmax(320px, 1.2fr);
  margin-bottom: 34px;
}
.vacancies-page .vacancies-block .vacancies-block__header h2 {
  font-size: clamp(2rem, 3.3vw, 2.75rem);
  letter-spacing: -0.02em;
  line-height: 1.08;
  margin: 0;
  padding: 0;
  text-transform: none;
}
.vacancies-page .vacancies-block .vacancies-block__header p {
  color: #4e5663;
  font-size: 15px;
  line-height: 1.65;
  margin: 0;
  padding: 0;
}
.vacancies-page .vacancy-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.vacancies-page .vacancy-grid.vacancy-grid--experts {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.vacancies-page .vacancy-card {
  background: #f4f8fb;
  border: 1px solid #d8e3ec;
  border-radius: var(--se-radius-l);
  box-shadow: 0 10px 28px rgba(23, 45, 78, 0.045);
  color: var(--se-ink);
  display: flex;
  flex-direction: column;
  min-height: 262px;
  padding: clamp(28px, 3vw, 35px);
  text-decoration: none;
  transition: border-color 0.2s, box-shadow 0.2s, transform 0.2s;
}
.vacancies-page .vacancy-card:visited {
  color: var(--se-ink);
}
.vacancies-page .vacancy-card:hover {
  border-color: var(--se-blue);
  box-shadow: 0 16px 34px rgba(30, 53, 96, 0.12);
  color: var(--se-ink);
  text-decoration: none;
  transform: translateY(-3px);
}
.vacancies-page .vacancy-card.vacancy-card--team {
  background: #fff9f4;
  border-color: #eddccf;
}
.vacancies-page .vacancy-card .vacancy-card__number {
  align-items: center;
  align-self: flex-start;
  background: #e7f0f7;
  border-radius: 999px;
  color: var(--se-blue);
  display: inline-flex;
  font-size: 12px;
  font-weight: 600;
  height: 28px;
  justify-content: center;
  letter-spacing: 0.1em;
  margin-bottom: 24px;
  padding: 0 11px;
}
.vacancies-page .vacancy-card h3 {
  font-size: clamp(1.35rem, 2vw, 1.55rem);
  letter-spacing: -0.012em;
  line-height: 1.2;
  margin: 0 0 14px;
  padding: 0;
}
.vacancies-page .vacancy-card p {
  color: #4e5663;
  line-height: 1.55;
  margin: 0 0 22px;
  padding: 0;
}
.vacancies-page .vacancy-card .vacancy-card__link {
  color: var(--se-blue);
  font-weight: 600;
  margin-top: auto;
}
.vacancies-page .vacancy-card .vacancy-card__link:after {
  content: " →";
}
.vacancies-page .vacancy-card:focus-visible {
  outline: 3px solid rgba(1, 97, 206, 0.25);
  outline-offset: 4px;
}
.vacancies-page .vacancies-reassurance {
  background: linear-gradient(120deg, #142b52 0%, var(--se-ink-deep) 62%, #244a7f 100%);
  border-radius: var(--se-radius-xl);
  box-shadow: 0 18px 44px rgba(20, 43, 82, 0.12);
  color: #fff;
  margin-bottom: clamp(52px, 7vw, 78px);
  overflow: hidden;
  padding: clamp(44px, 6vw, 66px);
  position: relative;
}
.vacancies-page .vacancies-reassurance:before {
  background: var(--se-orange);
  content: "";
  height: 3px;
  left: clamp(44px, 6vw, 66px);
  position: absolute;
  top: 0;
  width: 72px;
}
.vacancies-page .vacancies-reassurance > div {
  max-width: 920px;
}
.vacancies-page .vacancies-reassurance .vacancy-eyebrow {
  color: #f29a70;
  margin-bottom: 14px;
}
.vacancies-page .vacancies-reassurance h2 {
  color: #fff;
  font-size: clamp(1.9rem, 3.3vw, 2.65rem);
  letter-spacing: -0.02em;
  line-height: 1.1;
  margin: 0 0 17px;
  padding: 0;
  text-transform: none;
}
.vacancies-page .vacancies-reassurance p {
  color: rgba(255, 255, 255, 0.84);
  font-size: 16px;
  line-height: 1.72;
  margin: 0;
  padding: 0;
}
.vacancies-page .vacancies-apply {
  align-items: center;
  background: radial-gradient(circle at 100% 0, rgba(74, 147, 198, 0.12), transparent 34%), #f2f7fa;
  border: 1px solid #d7e3ea;
  border-radius: var(--se-radius-l);
  display: grid;
  gap: clamp(32px, 5vw, 64px);
  grid-template-columns: minmax(0, 1fr) auto;
  margin-bottom: clamp(64px, 8vw, 92px);
  padding: clamp(38px, 6vw, 58px);
}
.vacancies-page .vacancies-apply h2 {
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  letter-spacing: -0.02em;
  line-height: 1.14;
  margin: 0 0 18px;
  padding: 0;
  text-transform: none;
}
.vacancies-page .vacancies-apply p {
  color: #4d5f6e;
  line-height: 1.65;
  margin: 0 0 12px;
  max-width: 900px;
  padding: 0;
}
.vacancies-page .vacancies-apply p:last-child {
  margin-bottom: 0;
}
.vacancies-page .vacancies-apply .vacancy-button {
  min-width: 190px;
}

.vacancy-page {
  color: #162236;
  overflow: hidden;
}
.vacancy-page .breadcrumbs {
  color: #697488;
  font-size: 14px;
  font-style: normal;
  margin-bottom: 20px;
}
.vacancy-page .breadcrumbs ul {
  margin-right: 0;
}
.vacancy-page .vacancy-hero {
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 10% 0, rgba(26, 123, 236, 0.35), transparent 38%), linear-gradient(135deg, #14294f 0%, var(--se-ink-deep) 48%, #102442 100%);
  color: #fff;
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(330px, 0.65fr);
  isolation: isolate;
  margin: 0 0 72px;
  overflow: hidden;
  position: relative;
}
.vacancy-page .vacancy-hero:before {
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
  height: 420px;
  left: -210px;
  position: absolute;
  top: -250px;
  width: 420px;
  z-index: -1;
}
.vacancy-page .vacancy-hero:after {
  background-image: linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
  background-size: 42px 42px;
  bottom: 0;
  content: "";
  left: 0;
  mask-image: linear-gradient(to right, transparent, #000 60%);
  opacity: 0.8;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}
.vacancy-page .vacancy-hero h1 {
  color: #fff;
  font-size: 50px;
  letter-spacing: -0.02em;
  line-height: 1.08;
  margin: 0 0 24px;
  max-width: 760px;
  overflow-wrap: break-word;
  padding: 0;
  text-transform: none;
}
.vacancy-page .vacancy-hero .vacancy-eyebrow {
  color: #f29a70;
  margin-bottom: 18px;
}
.vacancy-page .vacancy-hero .vacancy-lead {
  color: rgba(255, 255, 255, 0.86);
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 21px;
  line-height: 1.5;
  margin: 0 0 34px;
  max-width: 760px;
  padding: 0;
}
.vacancy-page .vacancy-hero .vacancy-button {
  box-shadow: 0 12px 26px rgba(0, 0, 0, 0.2);
}
.vacancy-page .vacancy-hero__main {
  min-width: 0;
  padding: 66px 58px 62px;
}
.vacancy-page .vacancy-hero__aside {
  align-self: stretch;
  backdrop-filter: blur(6px);
  background: rgba(7, 24, 49, 0.48);
  border-left: 1px solid rgba(255, 255, 255, 0.14);
  min-width: 0;
  padding: 44px 38px 38px;
}
.vacancy-page .vacancy-hero__brand {
  align-items: center;
  color: rgba(255, 255, 255, 0.76);
  display: flex;
  font-size: 12px;
  font-weight: 600;
  gap: 12px;
  letter-spacing: 0.06em;
  margin-bottom: 34px;
  text-transform: uppercase;
}
.vacancy-page .vacancy-hero__monogram {
  align-items: center;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 50%;
  color: #fff;
  display: inline-flex;
  flex: 0 0 40px;
  height: 40px;
  justify-content: center;
  letter-spacing: 0;
}
.vacancy-page .vacancy-hero__aside-title {
  color: #fff;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.35;
  margin: 0 0 28px;
  padding: 0;
}
.vacancy-page .vacancy-facts {
  margin: 0;
}
.vacancy-page .vacancy-facts > div {
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  padding: 17px 0 16px;
}
.vacancy-page .vacancy-facts dt {
  color: #f29a70;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.12em;
  margin-bottom: 6px;
  text-transform: uppercase;
}
.vacancy-page .vacancy-facts dd {
  color: rgba(255, 255, 255, 0.86);
  font-size: 14px;
  line-height: 1.45;
  margin: 0;
}
.vacancy-page .vacancy-content,
.vacancy-page .vacancy-section,
.vacancy-page .vacancy-section__copy,
.vacancy-page .vacancy-section__heading {
  min-width: 0;
}
.vacancy-page .vacancy-section h2 {
  font-size: 29px;
  letter-spacing: -0.015em;
  line-height: 1.2;
  margin: 0;
  overflow-wrap: break-word;
  padding: 0;
  text-transform: none;
}
.vacancy-page .vacancy-section p {
  margin: 0;
  padding: 0;
}
.vacancy-page .vacancy-section__heading {
  align-items: flex-start;
  display: flex;
  gap: 18px;
}
.vacancy-page .vacancy-section__number {
  align-items: center;
  border: 1px solid #cddced;
  border-radius: 50%;
  color: var(--se-blue);
  display: inline-flex;
  flex: 0 0 38px;
  font-size: 11px;
  font-weight: 600;
  height: 38px;
  justify-content: center;
  letter-spacing: 0.06em;
}
.vacancy-page .vacancy-section--intro {
  border-bottom: 1px solid #dce4ed;
  border-top: 1px solid #dce4ed;
  display: grid;
  gap: 64px;
  grid-template-columns: minmax(250px, 0.75fr) minmax(0, 1.55fr);
  margin-bottom: 54px;
  max-width: none;
  padding: 40px 0;
}
.vacancy-page .vacancy-section--intro .vacancy-eyebrow {
  margin: 0 0 8px;
}
.vacancy-page .vacancy-section--intro .vacancy-section__copy p {
  color: #3d4859;
  font-size: 18px;
  line-height: 1.75;
}
.vacancy-page .vacancy-columns {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 54px;
}
.vacancy-page .vacancy-columns .vacancy-section {
  background: #fff;
  border: 1px solid #dce5f0;
  border-radius: var(--se-radius-l);
  box-shadow: 0 18px 45px rgba(23, 45, 78, 0.08);
  padding: 38px 36px 30px;
  position: relative;
}
.vacancy-page .vacancy-columns .vacancy-section:before {
  background: var(--se-blue);
  border-radius: var(--se-radius-l) var(--se-radius-l) 0 0;
  content: "";
  height: 3px;
  left: -1px;
  position: absolute;
  right: -1px;
  top: -1px;
}
.vacancy-page .vacancy-columns .vacancy-section:nth-child(2):before {
  background: var(--se-orange);
}
.vacancy-page .vacancy-columns .vacancy-section__heading {
  margin-bottom: 30px;
}
.vacancy-page .vacancy-check-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.vacancy-page .vacancy-check-list li {
  color: #354256;
  display: flex;
  font-size: 15px;
  line-height: 1.55;
  margin: 0 0 17px;
  min-width: 0;
  padding: 0 0 0 31px;
  position: relative;
}
.vacancy-page .vacancy-check-list li:before {
  align-items: center;
  background: #eaf3fd;
  border-radius: 50%;
  color: var(--se-blue);
  content: "✓";
  display: flex;
  font-size: 10px;
  font-weight: 600;
  height: 20px;
  justify-content: center;
  left: 0;
  position: absolute;
  top: 1px;
  width: 20px;
}
.vacancy-page .vacancy-check-list li:last-child {
  margin-bottom: 0;
}
.vacancy-page .vacancy-section--offer {
  align-items: center;
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 100% 0, rgba(1, 97, 206, 0.35), transparent 38%), var(--se-ink-deep);
  color: #fff;
  display: grid;
  gap: 68px;
  grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1.2fr);
  margin-bottom: 56px;
  overflow: hidden;
  padding: 50px 52px;
  position: relative;
}
.vacancy-page .vacancy-section--offer .vacancy-eyebrow {
  color: #f29a70;
}
.vacancy-page .vacancy-section--offer h2 {
  color: #fff;
  font-size: 34px;
  margin-bottom: 18px;
}
.vacancy-page .vacancy-section--offer p {
  color: rgba(255, 255, 255, 0.72);
  font-size: 15px;
  line-height: 1.65;
}
.vacancy-page .vacancy-section--offer .vacancy-check-list li {
  color: rgba(255, 255, 255, 0.88);
}
.vacancy-page .vacancy-section--offer .vacancy-check-list li:before {
  background: rgba(143, 197, 255, 0.13);
  color: #f29a70;
}
.vacancy-page .vacancy-meaning {
  align-items: center;
  background: #f7f4ef;
  border-left: 4px solid var(--se-orange);
  border-radius: var(--se-radius-l);
  display: grid;
  gap: 48px;
  grid-template-columns: 155px minmax(0, 1fr);
  margin: 0 0 56px;
  max-width: none;
  padding: 38px 48px 40px;
  text-align: left;
}
.vacancy-page .vacancy-meaning h2 {
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 30px;
  letter-spacing: -0.015em;
  line-height: 1.25;
  margin: 0 0 12px;
  overflow-wrap: break-word;
  padding: 0;
  text-transform: none;
}
.vacancy-page .vacancy-meaning p {
  color: #4e5663;
  font-size: 16px;
  line-height: 1.7;
  margin: 0;
  padding: 0;
}
.vacancy-page .vacancy-meaning__mark {
  color: var(--se-orange);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.16em;
  position: relative;
  text-transform: uppercase;
}
.vacancy-page .vacancy-meaning__mark:after {
  background: rgba(253, 131, 39, 0.35);
  content: "";
  display: block;
  height: 1px;
  margin-top: 14px;
  width: 72px;
}
.vacancy-page .vacancy-apply {
  align-items: stretch;
  background: #f2f7fd;
  border: 1px solid #d9e6f4;
  border-radius: var(--se-radius-l);
  border-top: 4px solid var(--se-blue);
  display: grid;
  gap: 54px;
  grid-template-columns: minmax(0, 1fr) 300px;
  margin-bottom: 54px;
  padding: 42px 46px;
}
.vacancy-page .vacancy-apply h2 {
  font-size: 31px;
  margin: 0 0 17px;
  padding: 0;
  text-transform: none;
}
.vacancy-page .vacancy-apply p {
  color: #3f4c5e;
  line-height: 1.65;
  margin: 0 0 11px;
  padding: 0;
}
.vacancy-page .vacancy-apply__action {
  align-items: stretch;
  border-left: 1px solid #cad9e9;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding-left: 38px;
}
.vacancy-page .vacancy-apply__action > span {
  color: #6a7688;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  margin-bottom: 6px;
  text-transform: uppercase;
}
.vacancy-page .vacancy-apply__email {
  color: var(--se-ink-deep);
  font-size: 21px;
  font-weight: 600;
  margin-bottom: 22px;
  overflow-wrap: anywhere;
  text-decoration: none;
}
.vacancy-page .vacancy-related {
  border-top: 1px solid #dce4ed;
  padding-top: 36px;
}
.vacancy-page .vacancy-related h2 {
  font-size: 25px;
  margin: 0 0 20px;
  padding: 0;
  text-transform: none;
}
.vacancy-page .vacancy-related ul {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 0 0 22px;
  overflow: visible;
  padding: 0;
}
.vacancy-page .vacancy-related li {
  margin: 0;
  min-width: 0;
}
.vacancy-page .vacancy-related li a {
  align-items: center;
  border: 1px solid #dce5f0;
  color: var(--se-ink-deep);
  display: flex;
  font-weight: 600;
  gap: 18px;
  justify-content: space-between;
  min-height: 74px;
  padding: 18px 20px;
  text-decoration: none;
  transition: border-color 0.2s, box-shadow 0.2s, color 0.2s;
}
.vacancy-page .vacancy-related li a:visited {
  color: var(--se-ink-deep);
}
.vacancy-page .vacancy-related li a:hover {
  border-color: var(--se-blue);
  box-shadow: 0 10px 24px rgba(23, 45, 78, 0.08);
  color: var(--se-blue);
}
.vacancy-page .vacancy-related li a span:last-child {
  color: var(--se-blue);
  flex: 0 0 auto;
  font-size: 20px;
}
.vacancy-page .vacancy-all-link {
  color: #6a7688;
  font-size: 13px;
  font-weight: 600;
}

@media (max-width: 1023px) {
  .vacancies-page .vacancies-hero {
    padding: 38px 32px;
  }
  .vacancies-page .vacancies-hero h1 {
    font-size: 36px;
  }
  .vacancies-page .vacancies-scale,
.vacancies-page .vacancies-block .vacancies-block__header {
    gap: 25px;
    grid-template-columns: 1fr;
  }
  .vacancies-page .vacancies-apply {
    grid-template-columns: 1fr;
  }
  .vacancies-page .vacancies-apply .vacancy-button {
    justify-self: start;
  }
  .vacancies-page .vacancy-grid,
.vacancies-page .vacancy-grid.vacancy-grid--experts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .vacancies-page .vacancy-grid .vacancy-card,
.vacancies-page .vacancy-grid .vacancy-card:nth-child(4),
.vacancies-page .vacancy-grid.vacancy-grid--experts .vacancy-card,
.vacancies-page .vacancy-grid.vacancy-grid--experts .vacancy-card:nth-child(4) {
    grid-column: auto;
  }

  .vacancy-page .vacancy-hero {
    grid-template-columns: 1fr;
  }
  .vacancy-page .vacancy-hero h1 {
    font-size: 44px;
  }
  .vacancy-page .vacancy-hero__main {
    padding: 52px 46px 48px;
  }
  .vacancy-page .vacancy-hero__aside {
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    padding: 32px 46px 34px;
  }
  .vacancy-page .vacancy-hero__brand {
    margin-bottom: 22px;
  }
  .vacancy-page .vacancy-facts {
    display: grid;
    gap: 24px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .vacancy-page .vacancy-facts > div {
    padding-bottom: 0;
  }
  .vacancy-page .vacancy-section--intro {
    gap: 24px;
    grid-template-columns: 1fr;
  }
  .vacancy-page .vacancy-section--offer {
    gap: 32px;
    grid-template-columns: 1fr;
  }
  .vacancy-page .vacancy-meaning {
    gap: 32px;
    grid-template-columns: 120px minmax(0, 1fr);
  }
  .vacancy-page .vacancy-apply {
    gap: 30px;
    grid-template-columns: 1fr;
  }
  .vacancy-page .vacancy-apply__action {
    border-left: 0;
    border-top: 1px solid #cad9e9;
    padding-left: 0;
    padding-top: 28px;
  }
  .vacancy-page .vacancy-related ul {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .vacancies-page .vacancy-button,
.vacancy-page .vacancy-button {
    text-align: center;
    width: 100%;
  }

  .vacancies-page .vacancies-hero {
    border-radius: var(--se-radius-l);
    margin-top: 12px;
    margin-bottom: 35px;
    padding: 30px 22px;
  }
  .vacancies-page .vacancies-hero h1 {
    font-size: 31px;
  }
  .vacancies-page .vacancies-hero .vacancies-hero__lead {
    font-size: 19px;
  }
  .vacancies-page .vacancies-scale,
.vacancies-page .vacancies-block {
    margin-bottom: 48px;
  }
  .vacancies-page .vacancies-block .vacancies-block__header h2 {
    font-size: 29px;
  }
  .vacancies-page .vacancy-grid,
.vacancies-page .vacancy-grid.vacancy-grid--experts {
    grid-template-columns: 1fr;
  }
  .vacancies-page .vacancy-card {
    min-height: 0;
  }
  .vacancies-page .vacancies-reassurance {
    border-radius: var(--se-radius-l);
    padding: 35px 24px 38px;
  }
  .vacancies-page .vacancies-reassurance:before {
    left: 24px;
  }
  .vacancies-page .vacancies-reassurance h2 {
    font-size: 28px;
  }
  .vacancies-page .vacancies-apply {
    border-radius: var(--se-radius-l);
    margin-bottom: 52px;
    padding: 34px 24px;
  }
  .vacancies-page .vacancies-apply .vacancy-button {
    min-width: 0;
  }

  .vacancy-page {
    padding-left: 16px;
    padding-right: 16px;
  }
  .vacancy-page .breadcrumbs {
    font-size: 13px;
    line-height: 1.45;
    margin-bottom: 16px;
    overflow-wrap: anywhere;
  }
  .vacancy-page .breadcrumbs ul {
    display: flex;
    flex-wrap: wrap;
    gap: 2px 0;
  }
  .vacancy-page .breadcrumbs ul li.gap {
    padding: 0 6px;
  }
  .vacancy-page .vacancy-section--offer {
    border-radius: var(--se-radius-l);
  }
  .vacancy-page .vacancy-hero {
    border-radius: 0;
    margin-bottom: 42px;
    margin-left: -16px;
    margin-right: -16px;
  }
  .vacancy-page .vacancy-hero h1 {
    font-size: 32px;
    line-height: 1.08;
    margin-bottom: 20px;
  }
  .vacancy-page .vacancy-hero .vacancy-lead {
    font-size: 18px;
    line-height: 1.48;
    margin-bottom: 27px;
  }
  .vacancy-page .vacancy-hero__main {
    padding: 36px 20px 32px;
  }
  .vacancy-page .vacancy-hero__aside {
    padding: 27px 20px 28px;
  }
  .vacancy-page .vacancy-hero__brand {
    margin-bottom: 22px;
  }
  .vacancy-page .vacancy-hero__aside-title {
    font-size: 18px;
    margin-bottom: 18px;
  }
  .vacancy-page .vacancy-facts {
    display: block;
  }
  .vacancy-page .vacancy-facts > div {
    padding: 14px 0;
  }
  .vacancy-page .vacancy-section h2 {
    font-size: 25px;
    line-height: 1.18;
  }
  .vacancy-page .vacancy-section__heading {
    gap: 13px;
  }
  .vacancy-page .vacancy-section__number {
    flex-basis: 34px;
    height: 34px;
  }
  .vacancy-page .vacancy-section--intro {
    gap: 20px;
    margin-bottom: 38px;
    padding: 32px 0;
  }
  .vacancy-page .vacancy-section--intro .vacancy-section__copy p {
    font-size: 16px;
    line-height: 1.65;
  }
  .vacancy-page .vacancy-columns {
    gap: 18px;
    grid-template-columns: 1fr;
    margin-bottom: 40px;
  }
  .vacancy-page .vacancy-columns .vacancy-section {
    padding: 29px 20px 24px;
  }
  .vacancy-page .vacancy-columns .vacancy-section .vacancy-section__heading {
    margin-bottom: 24px;
  }
  .vacancy-page .vacancy-check-list li {
    font-size: 15px;
    overflow-wrap: break-word;
  }
  .vacancy-page .vacancy-section--offer {
    gap: 27px;
    margin-left: -16px;
    margin-right: -16px;
    padding: 38px 20px 34px;
  }
  .vacancy-page .vacancy-section--offer h2 {
    font-size: 29px;
  }
  .vacancy-page .vacancy-meaning {
    gap: 22px;
    grid-template-columns: 1fr;
    margin-bottom: 40px;
    padding: 29px 22px 31px;
  }
  .vacancy-page .vacancy-meaning h2 {
    font-size: 26px;
  }
  .vacancy-page .vacancy-apply {
    gap: 27px;
    margin-bottom: 42px;
    padding: 32px 22px;
  }
  .vacancy-page .vacancy-apply h2 {
    font-size: 27px;
  }
  .vacancy-page .vacancy-apply__action {
    padding-top: 24px;
  }
  .vacancy-page .vacancy-apply__email {
    font-size: 19px;
  }
  .vacancy-page .vacancy-related {
    padding-top: 29px;
  }
  .vacancy-page .vacancy-related ul {
    grid-template-columns: 1fr;
  }
  .vacancy-page .vacancy-related li a {
    min-height: 64px;
    padding: 15px 17px;
  }
}
.error-page {
  --error-ink: var(--se-ink);
  --error-blue: var(--se-blue);
  --error-blue-deep: var(--se-ink-deep);
  --error-orange: var(--se-orange);
  --error-muted: var(--se-muted);
  --error-surface: var(--se-surface);
  --error-line: var(--se-line);
  min-height: 0;
  padding-bottom: clamp(68px, 8vw, 108px);
  color: var(--error-ink);
}

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

.error-page h1,
.error-page h2,
.error-page p {
  margin-top: 0;
}

.error-page h1,
.error-page h2 {
  padding: 0;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  text-align: left;
  text-transform: none;
}

.error-page a {
  text-decoration: none;
}

.error-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--error-orange);
  font-size: 0.74rem;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.14em;
  line-height: 1.3;
  text-transform: uppercase;
}

.error-eyebrow::before {
  width: 34px;
  height: 2px;
  flex: 0 0 34px;
  background: currentColor;
  content: "";
}

.error-hero {
  position: relative;
  display: grid;
  overflow: hidden;
  overflow: clip;
  min-height: 525px;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
  align-items: center;
  gap: clamp(42px, 7vw, 96px);
  margin-top: 20px;
  padding: clamp(52px, 7vw, 86px);
  border-radius: var(--se-radius-xl);
  background: radial-gradient(circle at 91% 4%, rgba(75, 158, 198, 0.34), transparent 34%), linear-gradient(132deg, #0b273c 0%, #153f5a 62%, #1b5674 100%);
  box-shadow: 0 24px 60px rgba(15, 48, 70, 0.12);
}

.error-hero::before {
  position: absolute;
  right: -155px;
  bottom: -250px;
  width: 560px;
  height: 560px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  content: "";
}

.error-hero__content,
.error-visual {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.error-hero__content .error-eyebrow {
  margin-bottom: 22px;
  color: #ff9364;
}

.error-page .error-hero h1 {
  max-width: 680px;
  margin: 0 0 24px;
  color: #fff;
  font-size: clamp(3rem, 5.2vw, 4.75rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 0.98;
}

.error-hero__content > p:not(.error-hint) {
  max-width: 660px;
  margin-bottom: 30px;
  color: rgba(232, 241, 245, 0.86);
  font-size: clamp(1.06rem, 1.5vw, 1.2rem);
  line-height: 1.65;
}

.error-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.error-button,
.error-page a.error-button:visited {
  display: inline-flex;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  padding: 13px 22px;
  border: 1px solid transparent;
  border-radius: var(--se-radius-s);
  font-size: 0.9rem;
  font-weight: 600;
  letter-spacing: 0.018em;
  line-height: 1.2;
  text-align: center;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.error-button:hover,
.error-button:focus-visible {
  text-decoration: none;
  transform: translateY(-1px);
}

.error-button--primary,
.error-page a.error-button--primary:visited {
  border-color: var(--error-orange);
  color: #fff;
  background: var(--error-orange);
  box-shadow: 0 12px 28px rgba(177, 74, 28, 0.24);
}

.error-button--primary:hover,
.error-button--primary:focus-visible {
  border-color: #d95b27;
  color: #fff;
  background: #d95b27;
}

.error-button--secondary,
.error-page a.error-button--secondary:visited {
  border-color: rgba(255, 255, 255, 0.34);
  color: #fff;
  background: rgba(255, 255, 255, 0.04);
}

.error-button--secondary:hover,
.error-button--secondary:focus-visible {
  border-color: rgba(255, 255, 255, 0.64);
  color: #fff;
  background: rgba(255, 255, 255, 0.1);
}

.error-page .error-hint {
  position: relative;
  max-width: 620px;
  margin: 32px 0 0;
  padding-left: 18px;
  color: rgba(232, 241, 245, 0.58);
  font-size: 0.82rem;
  line-height: 1.5;
}

.error-hint::before {
  position: absolute;
  top: 0.55em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #ff9364;
  content: "";
}

.error-visual {
  display: grid;
  min-height: 330px;
  place-items: center;
}

.error-visual__orbit {
  position: absolute;
  width: min(28vw, 320px);
  height: min(28vw, 320px);
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 50%;
}

.error-visual__orbit::before,
.error-visual__orbit::after {
  position: absolute;
  background: rgba(255, 255, 255, 0.14);
  content: "";
}

.error-visual__orbit::before {
  top: 50%;
  right: -34px;
  left: -34px;
  height: 1px;
}

.error-visual__orbit::after {
  top: -34px;
  bottom: -34px;
  left: 50%;
  width: 1px;
}

.error-visual__point {
  position: absolute;
  top: 34px;
  right: 38px;
  width: 16px;
  height: 16px;
  border: 4px solid #ff9364;
  border-radius: 50% 50% 50% 0;
  box-shadow: 0 0 0 8px rgba(255, 147, 100, 0.1);
  transform: rotate(-45deg);
}

.error-visual strong {
  position: relative;
  color: #fff;
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(6.8rem, 11vw, 10rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 0.8;
  text-shadow: 0 18px 42px rgba(0, 0, 0, 0.2);
}

.error-visual__label {
  position: absolute;
  bottom: 52px;
  padding: 7px 13px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--se-radius-s);
  color: rgba(255, 255, 255, 0.72);
  background: rgba(4, 25, 39, 0.42);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.error-routes {
  margin-top: clamp(24px, 3.5vw, 44px);
  padding: clamp(42px, 5.5vw, 68px);
  border: 1px solid var(--error-line);
  border-radius: var(--se-radius-xl);
  background: var(--error-surface);
}

.error-section-heading {
  max-width: 760px;
  margin-bottom: clamp(30px, 4vw, 44px);
}

.error-section-heading .error-eyebrow,
.error-help .error-eyebrow {
  margin-bottom: 17px;
}

.error-page .error-section-heading h2,
.error-page .error-help h2 {
  margin: 0 0 16px;
  color: var(--error-ink);
  font-size: clamp(2rem, 3.5vw, 3rem);
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.08;
}

.error-section-heading p,
.error-help p {
  margin-bottom: 0;
  color: var(--error-muted);
  font-size: 1rem;
  line-height: 1.65;
}

.error-routes__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.error-routes__grid > a,
.error-page .error-routes__grid > a:visited {
  display: flex;
  min-height: 252px;
  flex-direction: column;
  align-items: flex-start;
  padding: 25px;
  border: 1px solid var(--error-line);
  border-radius: var(--se-radius-m);
  color: var(--error-ink);
  background: #fff;
  box-shadow: 0 8px 24px rgba(16, 43, 66, 0.04);
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.error-routes__grid > a:hover,
.error-routes__grid > a:focus-visible {
  border-color: rgba(237, 107, 50, 0.72);
  color: var(--error-ink);
  box-shadow: 0 14px 30px rgba(16, 43, 66, 0.09);
  text-decoration: none;
  transform: translateY(-2px);
}

.error-routes__grid > a > span {
  display: inline-flex;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  margin-bottom: 22px;
  border-radius: 50%;
  color: var(--error-blue);
  background: var(--error-surface);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

.error-routes__grid strong {
  display: block;
  margin-bottom: 11px;
  color: var(--error-ink);
  font-size: 1.08rem;
  line-height: 1.32;
}

.error-routes__grid p {
  margin-bottom: 20px;
  color: var(--error-muted);
  font-size: 0.87rem;
  line-height: 1.55;
}

.error-routes__grid b {
  display: block;
  margin-top: auto;
  color: var(--error-blue);
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.35;
}

.error-routes__grid b i {
  margin-left: 5px;
  color: var(--error-orange);
  font-style: normal;
}

.error-help {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 340px);
  align-items: center;
  gap: clamp(40px, 7vw, 90px);
  margin-top: clamp(48px, 6vw, 76px);
  padding: clamp(40px, 5.5vw, 66px);
  border-top: 4px solid var(--error-blue);
  border-radius: 0 0 var(--se-radius-l) var(--se-radius-l);
  background: #eef5f7;
}

.error-help__actions {
  display: flex;
  align-items: stretch;
  flex-direction: column;
  text-align: center;
}

.error-button--dark,
.error-page a.error-button--dark:visited {
  color: #fff;
  background: var(--error-blue-deep);
}

.error-button--dark:hover,
.error-button--dark:focus-visible {
  color: #fff;
  background: var(--error-blue);
}

.error-help__phone,
.error-page a.error-help__phone:visited {
  align-self: center;
  margin-top: 20px;
  border-bottom: 1px solid rgba(23, 78, 109, 0.28);
  color: var(--error-blue-deep);
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1.25;
}

.error-help__phone:hover,
.error-help__phone:focus-visible {
  color: var(--error-orange);
}

.error-help__actions small {
  margin-top: 5px;
  color: var(--error-muted);
  font-size: 0.73rem;
}

.error-button:focus-visible,
.error-routes__grid > a:focus-visible,
.error-help__phone:focus-visible {
  outline: 3px solid rgba(237, 107, 50, 0.38);
  outline-offset: 4px;
}

@media screen and (max-width: 1000px) {
  .error-hero {
    min-height: 0;
    grid-template-columns: minmax(0, 1fr) minmax(240px, 0.65fr);
    gap: 34px;
  }

  .error-visual {
    min-height: 280px;
  }

  .error-routes__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .error-routes__grid > a {
    min-height: 230px;
  }
}
@media screen and (max-width: 760px) {
  .error-page {
    margin: 0 -10px;
    padding: 0 10px 58px;
  }

  .error-hero {
    grid-template-columns: 1fr;
    margin-top: 12px;
    padding: 40px 24px 34px;
    border-radius: var(--se-radius-l);
  }

  .error-page .error-hero h1 {
    font-size: clamp(2.7rem, 13vw, 4rem);
  }

  .error-visual {
    min-height: 225px;
  }

  .error-visual__orbit {
    width: 210px;
    height: 210px;
  }

  .error-visual__point {
    top: 18px;
    right: calc(50% - 120px);
  }

  .error-visual strong {
    font-size: 7rem;
  }

  .error-visual__label {
    bottom: 15px;
  }

  .error-routes {
    padding: 40px 22px;
    border-radius: var(--se-radius-l);
  }

  .error-help {
    grid-template-columns: 1fr;
    padding: 42px 24px;
  }

  .error-help__actions {
    max-width: 360px;
  }
}
@media screen and (max-width: 560px) {
  .error-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .error-button {
    width: 100%;
  }

  .error-routes__grid {
    grid-template-columns: 1fr;
  }

  .error-routes__grid > a {
    min-height: 218px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .error-button,
.error-routes__grid > a {
    transition: none;
  }
}
.error-trace {
  margin-top: clamp(24px, 3.5vw, 40px);
  padding: 22px clamp(20px, 3vw, 32px);
  border: 1px solid var(--error-line);
  border-radius: var(--se-radius-l);
  background: #fff;
}

.error-trace summary {
  color: var(--error-blue);
  cursor: pointer;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  list-style: none;
  text-transform: uppercase;
}

.error-trace summary::-webkit-details-marker {
  display: none;
}

.error-trace summary::after {
  content: " ↓";
}

.error-trace[open] summary::after {
  content: " ↑";
}

.error-trace pre {
  overflow-x: auto;
  margin: 16px 0 0;
  padding: 16px;
  border-radius: var(--se-radius-s);
  color: var(--error-ink);
  background: var(--error-surface);
  font-family: monospace;
  font-size: 0.78rem;
  line-height: 1.55;
  white-space: pre;
}

/* golos text: cyrillic-ext */
@font-face {
  font-family: "Golos Text";
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url(/export/css/fonts/golos/golos-text-cyrillic-ext.woff2) format("woff2");
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* golos text: cyrillic */
@font-face {
  font-family: "Golos Text";
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url(/export/css/fonts/golos/golos-text-cyrillic.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* golos text: latin-ext */
@font-face {
  font-family: "Golos Text";
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url(/export/css/fonts/golos/golos-text-latin-ext.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* golos text: latin */
@font-face {
  font-family: "Golos Text";
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url(/export/css/fonts/golos/golos-text-latin.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* pt serif: cyrillic */
@font-face {
  font-family: "PT Serif";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/export/css/fonts/ptserif/pt-serif-cyrillic.woff2) format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* pt serif: latin */
@font-face {
  font-family: "PT Serif";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/export/css/fonts/ptserif/pt-serif-latin.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
.last-updated {
  margin: 1.5rem 0 0;
  color: var(--se-muted);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.slider-images .slider-image {
  float: left;
}
.slider-images .slider-image a.img {
  margin: 0 1em 1em 0;
}
.view-all-cases-suggestion {
  text-align: center;
  margin: 3em;
  padding: 2em;
}
.view-all-cases-suggestion div {
  margin-bottom: 1em;
}
@media (max-width: 767px) {
  .view-all-cases-suggestion {
    margin: 1em 0;
    font-size: 1em;
  }
}
.view-all-cases-suggestion .total {
  color: #747474;
  letter-spacing: 1px;
  font-size: 0.8em;
  text-shadow: 1px 1px white;
}

* {
  box-sizing: border-box;
}

body {
  background: #fff;
  text-align: center;
  font-size: 14px;
  line-height: 1.4;
  color: #000;
}
@media (min-width: 768px) and (max-width: 1023px) {
  body {
    font-size: 14px;
  }
}
@media (min-width: 1024px) {
  body {
    font-size: 14px;
  }
}
body .body {
  font-family: "Golos Text", -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  min-width: 320px;
  /*width: 1100px;*/
  width: 100%;
  display: inline-block;
  text-align: left;
  position: relative;
  overflow: clip;
  float: left;
}

a {
  cursor: pointer;
  text-decoration: none;
  color: #0161ce;
  border-bottom: 1px solid rgba(1, 97, 206, 0.4);
}
a:hover {
  color: #aa002d;
  border-bottom: 1px solid rgba(170, 0, 45, 0.4);
}
a:active {
  color: rgba(170, 0, 45, 0.2);
  border-bottom: 1px solid rgba(170, 0, 45, 0);
  -webkit-transform: translateY(1px);
  transform: translateY(1px);
  -webkit-transition: 0.1s;
  transition: 0.1s;
}

.formatted-text a, .page .content a, .expertise-page .other a {
  color: var(--se-blue);
  border-bottom-color: rgba(23, 78, 109, 0.38);
}
.formatted-text a:visited, .page .content a:visited, .expertise-page .other a:visited {
  color: var(--se-link-visited);
  border-bottom-color: rgba(100, 117, 130, 0.42);
}
.formatted-text a:hover, .page .content a:hover, .expertise-page .other a:hover,
.formatted-text a:visited:hover {
  color: var(--se-orange);
  border-bottom-color: rgba(237, 107, 50, 0.55);
}
.formatted-text a:active, .page .content a:active, .expertise-page .other a:active,
.formatted-text a:visited:active {
  color: var(--se-orange-action);
  border-bottom-color: transparent;
}

a.img, a.img:hover, a.img:active, a.img:visited {
  border: none;
}

b {
  font-weight: 600;
}

/*# sourceMappingURL=style.css.map */
