:root {
--ink: #2c2c2c;
--muted: #646979;
--accent: #6f85e9;
--accent-dark: #4e64ce;
--accent-soft: #ebefff;
--accent-pale: #f6f8ff;
--line: #dbe2ff;
--white: #ffffff;
--success: #2f7d5b;
--danger: #ad3f4b;
--shadow: 0 24px 60px rgba(67, 84, 164, 0.13);
--shell: 1240px;
--radius-lg: 32px;
--radius-md: 20px;
--radius-sm: 12px;
--brand-primary: #2869f2;
--brand-primary-dark: #1746b8;
--surface-card: #ffffff;
--surface-soft: #f5f8ff;
--card-border: #d6e1fb;
--card-radius: 24px;
--card-shadow: 0 20px 50px rgba(51, 74, 145, 0.1);
--card-shadow-hover: 0 28px 62px rgba(51, 74, 145, 0.16);
} .qualification-design-section,
.documents-design-section,
.process-result-section,
.trust-map-section {
position: relative;
overflow: hidden;
background:
radial-gradient(circle at 86% 12%, rgba(107, 148, 255, 0.18), transparent 31%),
radial-gradient(circle at 8% 94%, rgba(168, 195, 255, 0.13), transparent 27%),
#f9fbff;
}
.qualification-design-section::before,
.process-result-section::before {
position: absolute;
inset: 0;
pointer-events: none;
background: linear-gradient(118deg, transparent 52%, rgba(255, 255, 255, 0.62) 53%, transparent 73%);
content: "";
}
.qualification-design-section .shell,
.documents-design-section .shell,
.process-result-section .shell,
.trust-map-section .shell {
position: relative;
z-index: 1;
}
.qualification-design-section {
padding-block: 104px;
}
.qualification-design-section .qualification-grid {
grid-template-columns: minmax(330px, 0.92fr) minmax(520px, 1.08fr);
align-items: center;
gap: clamp(58px, 7vw, 112px);
}
.qualification-design-section .qualification-copy {
position: static;
}
.qualification-design-section .eyebrow,
.documents-design-section .eyebrow,
.process-result-section .eyebrow,
.trust-map-section .eyebrow {
color: #2b6df6;
letter-spacing: 0.22em;
}
.qualification-design-section h2 {
max-width: 580px;
margin: 14px 0 24px;
color: #101a3c;
font-size: clamp(44px, 4.55vw, 70px);
line-height: 1.05;
letter-spacing: -0.047em;
}
.qualification-design-section .qualification-copy > p:not(.eyebrow) {
max-width: 560px;
margin-bottom: 28px;
color: #667393;
font-size: clamp(18px, 1.45vw, 23px);
line-height: 1.48;
}
.qualification-button {
gap: 20px;
min-width: 286px;
justify-content: center;
box-shadow: 0 18px 34px rgba(50, 104, 236, 0.23);
}
.qualification-button span {
font-size: 22px;
}
.qualification-assurances {
display: grid;
grid-template-columns: minmax(0, 1fr);
width: fit-content;
gap: 11px;
margin: 28px 0 0;
padding: 0;
color: #65718e;
font-size: 14px;
list-style: none;
}
.qualification-assurances li {
display: grid;
grid-template-columns: 26px minmax(0, 1fr);
align-items: center;
min-height: 28px;
gap: 10px;
}
.qualification-assurances .qualification-assurance-icon {
display: grid;
width: 26px;
height: 26px;
place-items: center;
border-radius: 50%;
color: #fff;
background: #3d78f5;
box-shadow: 0 6px 14px rgba(61, 120, 245, 0.2);
}
.qualification-assurances .qualification-assurance-icon svg {
width: 15px;
height: 15px;
fill: none;
stroke: currentColor;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
}
.qualification-design-section .qualification-list {
position: relative;
display: grid;
gap: 16px;
border: 0;
}
.qualification-design-section .qualification-list::before {
position: absolute;
top: 30px;
bottom: 30px;
left: 19px;
width: 1px;
background: #c5d7ff;
content: "";
}
.qualification-design-section .qualification-list article {
position: relative;
display: grid;
grid-template-columns: 40px 58px minmax(0, 1fr);
gap: 18px;
align-items: center;
min-height: 112px;
padding: 18px 28px 18px 0;
border: 0;
border-radius: 18px;
background: rgba(255, 255, 255, 0.9);
box-shadow: 0 16px 42px rgba(62, 91, 151, 0.08);
}
.qualification-design-section .qualification-number {
position: relative;
z-index: 2;
display: grid;
width: 40px;
height: 40px;
place-items: center;
border: 1px solid #bcd1ff;
border-radius: 50%;
color: #2468f2;
background: #fff;
font-size: 16px;
font-weight: 700;
box-shadow: 0 0 0 8px #f7faff;
}
.qualification-design-section .qualification-icon {
display: grid;
width: 58px;
height: 58px;
place-items: center;
border-radius: 50%;
color: #2f72f4;
background: #edf4ff;
}
.qualification-design-section .qualification-icon svg,
.document-list svg,
.doc-logo svg,
.documents-shield svg {
width: 29px;
height: 29px;
fill: none;
stroke: currentColor;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
}
.qualification-design-section .qualification-list h3 {
margin: 0 0 5px;
color: #111a3a;
font-size: 19px;
line-height: 1.18;
}
.qualification-design-section .qualification-list p {
margin: 0;
color: #6b7897;
font-size: 15px;
line-height: 1.42;
}
.documents-design-section {
padding-block: 82px 96px;
background: #fff;
}
.documents-design-section .documents-grid {
grid-template-columns: minmax(360px, 0.82fr) minmax(0, 1.18fr);
gap: clamp(54px, 7vw, 110px);
}
.documents-visual-column {
display: grid;
min-width: 0;
align-content: start;
gap: 22px;
}
.documents-design-section .documents-visual {
position: relative;
min-height: 430px;
border-radius: 44% 56% 42% 58% / 48% 44% 56% 52%;
background:
radial-gradient(circle at 50% 42%, rgba(255, 255, 255, 0.96), transparent 30%),
linear-gradient(145deg, #f0f5ff, #e5eeff);
}
.documents-design-section .doc-stack {
width: 245px;
height: 300px;
}
.documents-design-section .doc-sheet-front {
padding: 30px;
}
.documents-design-section .doc-logo {
width: 48px;
height: 48px;
color: #fff;
}
.documents-design-section .doc-logo svg {
width: 27px;
height: 27px;
}
.documents-design-section .doc-stamp {
color: #2c6ff2;
font-size: 11px;
line-height: 1.15;
text-align: center;
}
.documents-note {
position: absolute;
top: 52%;
left: -8px;
color: #2c6ff2;
font-family: "Segoe Print", "Comic Sans MS", cursive;
font-size: 16px;
line-height: 1.12;
transform: rotate(-8deg);
}
.documents-note b {
display: inline-block;
margin-left: 10px;
font-size: 34px;
font-weight: 400;
transform: rotate(24deg);
}
.documents-shield {
position: absolute;
right: 24px;
bottom: 34px;
display: grid;
width: 64px;
height: 64px;
place-items: center;
border: 8px solid #fff;
border-radius: 50%;
color: #236bf2;
background: #eef4ff;
box-sizing: content-box;
box-shadow: 0 16px 34px rgba(63, 101, 184, 0.13);
}
.documents-upload-button {
min-width: 270px;
min-height: 56px;
justify-self: center;
gap: 11px;
border: 0;
box-shadow: 0 16px 32px rgba(49, 104, 236, 0.22);
}
.documents-upload-button svg {
width: 22px;
height: 22px;
fill: none;
stroke: currentColor;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
}
.documents-copy h2 {
max-width: 650px;
margin: 13px 0 24px;
color: #101a3c;
font-size: clamp(42px, 4vw, 62px);
line-height: 1.03;
letter-spacing: -0.044em;
}
.documents-design-section .document-list {
gap: 12px;
}
.documents-design-section .document-list > div {
grid-template-columns: 46px minmax(0, 1fr);
align-items: center;
min-height: 66px;
padding: 10px 16px;
border-color: #cbdcff;
border-radius: 12px;
background: rgba(250, 252, 255, 0.85);
}
.documents-design-section .document-list > div > span {
display: grid;
width: 42px;
height: 42px;
place-items: center;
border-radius: 50%;
color: #2e72f3;
background: #edf4ff;
}
.documents-design-section .document-list svg {
width: 24px;
height: 24px;
}
.documents-design-section .document-list p {
color: #35405f;
font-size: 15px;
}
.documents-design-section .document-item-wide {
grid-column: 1 / -1;
}
.documents-design-section .notice {
margin-top: 18px;
padding: 13px 16px;
font-size: 13px;
}
.process-result-section {
padding-block: 78px 96px;
}
.process-result-section .process-result-heading {
display: block;
max-width: 860px;
margin: 0 auto 58px;
text-align: center;
}
.process-result-section .process-result-heading-copy {
max-width: none;
}
.process-result-section .process-result-heading h2 {
max-width: 820px;
margin: 14px auto 12px;
font-size: clamp(38px, 3.6vw, 56px);
line-height: 1.06;
}
.process-result-section .process-result-heading-copy > p:last-child {
max-width: 800px;
margin-inline: auto;
font-size: 16px;
}
.process-result-section .process-result-timeline {
position: relative;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 14px;
}
.process-result-section .process-result-timeline::before {
position: absolute;
z-index: 0;
top: -9px;
right: 8%;
left: 8%;
height: 2px;
background: #a9c5ff;
content: "";
}
.process-result-section .process-result-step {
position: relative;
z-index: 1;
min-height: 300px;
padding: 44px 24px 30px;
border: 1px solid rgba(208, 220, 248, 0.7);
border-radius: 14px;
background: rgba(255, 255, 255, 0.93);
box-shadow: 0 16px 38px rgba(69, 93, 151, 0.07);
}
.process-result-section .process-result-step::before,
.process-result-section .process-result-step::after {
display: none;
}
.process-result-number {
position: absolute;
top: -25px;
left: 50%;
display: grid;
width: 48px;
height: 48px;
place-items: center;
border: 6px solid #f3f7ff;
border-radius: 50%;
color: #fff;
background: linear-gradient(145deg, #5b8cff, #2f6df3);
font-size: 13px;
font-weight: 700;
transform: translateX(-50%);
box-sizing: content-box;
}
.process-result-section .process-result-icon {
display: grid;
width: 64px;
height: 64px;
margin: 0 auto 24px;
color: #2c70f2;
}
.process-result-section .process-result-icon svg {
width: 35px;
height: 35px;
stroke-width: 2.4;
}
.process-result-section .process-result-step h3 {
max-width: none;
margin-bottom: 12px;
color: #111a3b;
font-size: 19px;
line-height: 1.16;
text-align: center;
}
.process-result-section .process-result-step p {
max-width: none;
color: #6b7896;
font-size: 14px;
line-height: 1.46;
text-align: left;
}
.trust-map-section {
padding-block: 76px 58px;
background: #fff;
}
.trust-map-heading {
display: grid;
grid-template-columns: minmax(280px, 0.78fr) minmax(620px, 1.22fr);
gap: 46px;
align-items: end;
margin-bottom: 26px;
}
.trust-map-heading h2 {
max-width: 520px;
margin: 10px 0 0;
color: #111a3b;
font-size: clamp(32px, 3vw, 46px);
line-height: 1.08;
letter-spacing: -0.035em;
}
.trust-points {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
gap: 14px;
margin: 0;
padding: 0;
color: #56627f;
font-size: 12px;
line-height: 1.35;
list-style: none;
}
.trust-points li {
display: grid;
grid-template-columns: 46px minmax(0, 1fr);
gap: 10px;
align-items: center;
}
.trust-points li > span {
display: grid;
width: 46px;
height: 46px;
place-items: center;
border-radius: 50%;
color: #276bf1;
background: #edf4ff;
font-size: 20px;
font-weight: 800;
}
.trust-widgets-grid {
grid-template-columns: minmax(250px, 0.32fr) minmax(0, 1.68fr);
gap: 18px;
}
.trust-widgets-grid .yandex-review-widget,
.trust-widgets-grid .yandex-map-widget {
height: 390px;
border-radius: 16px;
box-shadow: 0 18px 42px rgba(51, 77, 131, 0.08);
}
.trust-widgets-grid .yandex-review-widget iframe,
.trust-widgets-grid .yandex-map-widget iframe {
height: 100%;
}
.lead-section {
position: relative;
overflow: hidden;
padding: 58px 0 0;
background:
radial-gradient(circle at 43% 72%, rgba(191, 220, 255, 0.55), transparent 19%),
linear-gradient(118deg, #3677f4 0%, #72a2ff 52%, #2d67ed 100%);
}
.lead-section::before {
position: absolute;
right: -12%;
bottom: -58%;
width: 74%;
height: 150%;
border-radius: 50%;
background: rgba(20, 74, 206, 0.3);
content: "";
}
.lead-section .lead-grid {
position: relative;
z-index: 1;
grid-template-columns: minmax(290px, 0.83fr) minmax(260px, 0.68fr) minmax(410px, 1.05fr);
align-items: end;
gap: clamp(18px, 2.6vw, 40px);
}
.lead-section .lead-copy {
align-self: center;
padding-bottom: 50px;
}
.lead-section .lead-copy h2 {
max-width: 470px;
margin: 10px 0 24px;
color: #fff;
font-size: clamp(38px, 3.4vw, 54px);
line-height: 1.06;
letter-spacing: -0.04em;
}
.lead-benefits {
margin-top: 0 !important;
gap: 11px !important;
font-size: 14px;
}
.lead-benefits li {
position: relative;
padding-left: 30px;
}
.lead-benefits li::before {
position: absolute;
top: -1px;
left: 0;
display: grid;
width: 21px;
height: 21px;
place-items: center;
border-radius: 50%;
color: #3371ef;
background: #fff;
font-size: 12px;
}
.lead-consultant-visual {
position: relative;
align-self: end;
height: 420px;
overflow: hidden;
}
.lead-consultant-visual::before {
position: absolute;
right: 5%;
bottom: -10%;
left: 3%;
height: 96%;
border-radius: 50% 50% 0 0;
background: linear-gradient(160deg, rgba(255,255,255,.78), rgba(255,255,255,.05));
content: "";
}
.lead-consultant-visual img {
position: absolute;
right: 7%;
bottom: 0;
width: 88%;
height: 94%;
border-radius: 48% 48% 0 0;
object-fit: cover;
object-position: 50% 18%;
filter: saturate(0.92) contrast(1.02);
box-shadow: 0 24px 50px rgba(16, 49, 126, 0.22);
}
.lead-city-label {
position: absolute;
z-index: 2;
top: 22px;
right: -2px;
color: #fff;
font-family: "Segoe Print", "Comic Sans MS", cursive;
font-size: 17px;
line-height: 1.05;
transform: rotate(-6deg);
}
.lead-city-label b {
font-size: 31px;
font-weight: 400;
}
.lead-section .lead-form {
align-self: center;
margin-bottom: 48px;
padding: 30px;
gap: 17px;
border-radius: 12px;
box-shadow: 0 24px 55px rgba(18, 46, 119, 0.22);
}
.lead-section .form-heading {
padding-bottom: 10px;
border-bottom: 0;
}
.lead-section .form-heading strong {
color: #111a3b;
font-size: 23px;
line-height: 1.25;
}
.lead-section .form-field label {
margin-bottom: 7px;
color: #34405f;
font-size: 14px;
}
.lead-section .form-field label span {
color: #7b849a;
font-weight: 400;
}
.lead-section .form-field input,
.lead-section .form-field select,
.lead-section .form-field textarea {
width: 100%;
min-height: 56px;
padding: 13px 14px;
border: 1px solid #d6e1fa;
border-radius: 8px;
color: var(--ink);
background: #fff;
font: inherit;
font-size: 15px;
outline: none;
}
.lead-section .form-field textarea {
min-height: 62px;
resize: vertical;
}
.lead-section .form-field input:focus,
.lead-section .form-field select:focus,
.lead-section .form-field textarea:focus {
border-color: #4a80ef;
box-shadow: 0 0 0 3px rgba(74, 128, 239, 0.12);
}
.lead-section .consent {
margin-top: 3px;
font-size: 11.5px;
line-height: 1.42;
}
.lead-section .form-submit {
min-height: 56px;
border-radius: 8px;
font-size: 17px;
}
.lead-data-note {
margin: -2px 0 0;
color: #7b849b;
font-size: 11px;
text-align: center;
}
@media (max-width: 1180px) {
.qualification-design-section .qualification-grid,
.documents-design-section .documents-grid {
gap: 48px;
}
.trust-map-heading {
grid-template-columns: 1fr;
}
.trust-points {
max-width: 860px;
}
.lead-section .lead-grid {
grid-template-columns: minmax(280px, .82fr) minmax(380px, 1.18fr);
}
.lead-consultant-visual {
display: none;
}
}
@media (max-width: 980px) {
.qualification-design-section .qualification-grid,
.documents-design-section .documents-grid {
grid-template-columns: 1fr;
}
.qualification-design-section .qualification-copy {
max-width: 700px;
}
.qualification-design-section .qualification-list {
max-width: 760px;
}
.documents-design-section .documents-visual {
min-height: 360px;
}
.documents-design-section .documents-copy {
max-width: 760px;
}
.process-result-section .process-result-timeline {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 42px 16px;
}
.process-result-section .process-result-timeline::before {
display: none;
}
.trust-points {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.trust-widgets-grid {
grid-template-columns: minmax(230px, .52fr) minmax(0, 1.48fr);
}
}
@media (max-width: 720px) {
.qualification-design-section,
.documents-design-section,
.process-result-section,
.trust-map-section {
padding-block: 70px;
}
.qualification-design-section h2,
.documents-copy h2,
.process-result-section .process-result-heading h2,
.lead-section .lead-copy h2 {
font-size: clamp(34px, 10.6vw, 46px);
}
.qualification-assurances {
display: grid;
}
.qualification-design-section .qualification-list article {
grid-template-columns: 38px 50px minmax(0, 1fr);
gap: 12px;
padding-right: 16px;
}
.qualification-design-section .qualification-icon {
width: 50px;
height: 50px;
}
.documents-design-section .documents-visual {
min-height: 320px;
}
.documents-upload-button {
width: 100%;
min-width: 0;
}
.documents-design-section .doc-stack {
width: 190px;
height: 240px;
}
.documents-design-section .document-list {
grid-template-columns: 1fr;
}
.documents-design-section .document-item-wide {
grid-column: auto;
}
.documents-note {
display: none;
}
.process-result-section .process-result-timeline {
display: grid;
grid-template-columns: 1fr;
gap: 42px;
}
.process-result-section .process-result-step {
display: grid;
grid-template-columns: 64px minmax(0, 1fr);
gap: 16px;
min-height: 0;
padding: 38px 20px 22px;
}
.process-result-section .process-result-icon {
margin: 0;
}
.process-result-section .process-result-step h3,
.process-result-section .process-result-step p {
text-align: left;
}
.process-result-number {
left: 52px;
transform: none;
}
.trust-points,
.trust-widgets-grid {
grid-template-columns: 1fr;
}
.trust-widgets-grid .yandex-review-widget,
.trust-widgets-grid .yandex-map-widget {
height: 360px;
}
.lead-section {
padding-top: 68px;
}
.lead-section .lead-grid {
grid-template-columns: 1fr;
}
.lead-section .lead-copy {
padding-bottom: 0;
}
.lead-section .lead-form {
grid-template-columns: 1fr;
margin: 12px 0 44px;
}
.lead-section .form-field-wide,
.lead-section .form-heading {
grid-column: auto;
}
} .legal-consultation-section {
position: relative;
overflow: hidden;
}
.legal-consultation-section::before {
content: "";
position: absolute;
width: 460px;
height: 460px;
right: -220px;
top: 42px;
border-radius: 50%;
background: radial-gradient(circle, rgba(111, 133, 233, 0.14), transparent 69%);
pointer-events: none;
}
.consultation-path {
position: relative;
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 22px;
}
.consultation-step-card {
min-height: 260px;
padding: 34px 30px;
border: 1px solid var(--line);
border-radius: var(--radius-md);
background: linear-gradient(155deg, #ffffff 0%, #f7f9ff 100%);
box-shadow: 0 18px 42px rgba(67, 84, 164, 0.08);
}
.consultation-step-card > span {
display: inline-grid;
width: 46px;
height: 46px;
margin-bottom: 26px;
place-items: center;
border-radius: 14px;
color: var(--accent-dark);
background: var(--accent-soft);
font-size: 16px;
font-weight: 700;
letter-spacing: 0.08em;
}
.consultation-step-card h3 {
color: #27315c;
}
.consultation-step-card p {
margin-bottom: 0;
color: var(--muted);
}
.consultation-result-card {
grid-column: 1 / -1;
display: grid;
grid-template-columns: minmax(260px, 0.9fr) minmax(380px, 1.35fr) auto;
gap: 28px;
align-items: center;
padding: 34px 38px;
border-radius: var(--radius-md);
color: var(--white);
background:
radial-gradient(circle at 90% 0%, rgba(255, 255, 255, 0.18), transparent 38%),
linear-gradient(135deg, #5269d4, #788bea);
box-shadow: var(--shadow);
}
.consultation-result-card .eyebrow {
margin-bottom: 8px;
color: #e8ecff;
}
.consultation-result-card h3 {
margin-bottom: 0;
color: var(--white);
font-size: clamp(26px, 2.2vw, 36px);
}
.check-list {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 12px 24px;
margin: 0;
padding: 0;
list-style: none;
}
.check-list li {
position: relative;
padding-left: 28px;
color: #f8f9ff;
}
.check-list li::before {
content: "✓";
position: absolute;
left: 0;
top: 0;
font-weight: 700;
}
.consultation-result-card .button {
justify-self: end;
white-space: nowrap;
color: var(--accent-dark);
background: var(--white);
box-shadow: none;
}
.consultation-result-card .button.cta-attention:not(:disabled) {
color: var(--accent-dark);
background-color: var(--white);
background-image: none;
animation: none;
}
.consultation-result-card .button:hover,
.consultation-result-card .button:focus-visible {
color: #253ca4;
background: #f4f6ff;
}
.legal-route-section {
padding-top: 36px;
background: var(--accent-pale);
}
.legal-route-table-wrap {
overflow-x: auto;
border: 1px solid var(--line);
border-radius: var(--radius-md);
background: var(--white);
box-shadow: 0 18px 48px rgba(67, 84, 164, 0.08);
}
.legal-route-table-wrap:focus-visible {
outline: 3px solid rgba(111, 133, 233, 0.42);
outline-offset: 4px;
}
.legal-route-table {
width: 100%;
min-width: 860px;
border-collapse: collapse;
font-size: 17px;
line-height: 1.45;
}
.legal-route-table th,
.legal-route-table td {
padding: 24px 26px;
border-right: 1px solid var(--line);
border-bottom: 1px solid var(--line);
text-align: left;
vertical-align: top;
}
.legal-route-table th:last-child,
.legal-route-table td:last-child {
border-right: 0;
}
.legal-route-table tbody tr:last-child th,
.legal-route-table tbody tr:last-child td {
border-bottom: 0;
}
.legal-route-table thead th {
color: var(--white);
background: #566dcc;
font-size: 16px;
font-weight: 700;
letter-spacing: 0.02em;
}
.legal-route-table tbody th {
width: 22%;
color: #27315c;
background: #f4f6ff;
font-weight: 700;
}
.legal-route-table tbody td {
width: 39%;
color: #4d556b;
}
.legal-route-note {
max-width: 880px;
margin: 20px 0 0;
color: var(--muted);
font-size: 16px;
}
.remote-work-section {
background:
radial-gradient(circle at 7% 10%, rgba(111, 133, 233, 0.17), transparent 28%),
linear-gradient(145deg, #f7f9ff, #edf1ff);
}
.remote-work-grid {
display: grid;
grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
gap: 76px;
align-items: center;
}
.remote-work-copy > p:not(.eyebrow) {
max-width: 650px;
color: var(--muted);
}
.remote-city {
white-space: nowrap;
}
.remote-work-actions {
display: flex;
flex-wrap: wrap;
gap: 18px 26px;
align-items: center;
margin-top: 34px;
}
.remote-work-steps {
display: grid;
gap: 16px;
margin: 0;
padding: 0;
list-style: none;
}
.remote-work-steps li {
display: grid;
grid-template-columns: 58px 1fr;
gap: 22px;
align-items: start;
padding: 26px 28px;
border: 1px solid rgba(111, 133, 233, 0.24);
border-radius: 18px;
background: rgba(255, 255, 255, 0.9);
box-shadow: 0 14px 36px rgba(67, 84, 164, 0.07);
}
.remote-work-steps li > span {
display: grid;
width: 50px;
height: 50px;
place-items: center;
border-radius: 14px;
color: var(--white);
background: var(--accent);
font-size: 15px;
font-weight: 700;
letter-spacing: 0.06em;
}
.remote-work-steps h3 {
margin-bottom: 7px;
color: #27315c;
}
.remote-work-steps p {
margin-bottom: 0;
color: var(--muted);
}
@media (max-width: 1040px) {
.consultation-result-card {
grid-template-columns: minmax(240px, 0.9fr) minmax(320px, 1.1fr);
}
.consultation-result-card .button {
grid-column: 1 / -1;
justify-self: start;
}
.remote-work-grid {
gap: 44px;
}
}
@media (max-width: 920px) {
.consultation-path {
grid-template-columns: 1fr;
}
.consultation-step-card {
min-height: 0;
}
.consultation-result-card {
grid-column: auto;
grid-template-columns: 1fr;
}
.consultation-result-card .button {
grid-column: auto;
}
.remote-work-grid {
grid-template-columns: 1fr;
}
}
@media (max-width: 640px) {
.consultation-step-card,
.consultation-result-card {
padding: 28px 22px;
}
.check-list {
grid-template-columns: 1fr;
}
.consultation-result-card .button {
width: 100%;
white-space: normal;
}
.legal-route-table th,
.legal-route-table td {
padding: 20px;
}
.remote-work-actions {
align-items: stretch;
}
.remote-work-actions .button {
width: 100%;
}
.remote-work-steps li {
grid-template-columns: 48px 1fr;
gap: 16px;
padding: 22px 18px;
}
.remote-work-steps li > span {
width: 44px;
height: 44px;
}
}
*,
*::before,
*::after {
box-sizing: border-box;
}
html {
scroll-behavior: smooth;
scroll-padding-top: 112px;
}
body {
margin: 0;
color: var(--ink);
background: var(--white);
font-family: "Ysabeau", Arial, sans-serif;
font-size: 19px;
line-height: 1.55;
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
}
body.menu-open {
overflow: hidden;
}
img {
display: block;
max-width: 100%;
height: auto;
}
a {
color: inherit;
text-decoration: none;
}
button,
input,
select {
font: inherit;
}
button,
select {
cursor: pointer;
}
p,
h1,
h2,
h3,
blockquote {
margin-top: 0;
}
h1,
h2,
h3 {
font-weight: 500;
line-height: 1.08;
letter-spacing: -0.025em;
}
h1 {
max-width: 820px;
margin-bottom: 18px;
font-size: clamp(44px, 4.7vw, 68px);
line-height: 1.02;
}
h2 {
margin-bottom: 20px;
font-size: clamp(36px, 4.1vw, 58px);
}
h3 {
margin-bottom: 12px;
font-size: 25px;
}
p {
margin-bottom: 20px;
}
.shell {
width: min(calc(100% - 48px), var(--shell));
margin-inline: auto;
}
.section {
padding: 110px 0;
}
.section-blue {
background:
radial-gradient(circle at 88% 12%, rgba(111, 133, 233, 0.2), transparent 33%),
linear-gradient(155deg, #f8f9ff 0%, #eef2ff 100%);
}
.section-soft {
background: var(--accent-pale);
}
.skip-link {
position: fixed;
z-index: 1000;
left: 16px;
top: 16px;
transform: translateY(-160%);
padding: 10px 16px;
border-radius: 10px;
color: var(--white);
background: var(--accent-dark);
}
.skip-link:focus {
transform: none;
}
.skip-link:focus:not(:focus-visible) {
transform: translateY(-160%);
}
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
.eyebrow {
margin-bottom: 18px;
color: var(--accent-dark);
font-size: 15px;
font-weight: 700;
letter-spacing: 0.12em;
text-transform: uppercase;
}
.eyebrow-light {
color: #dce3ff;
}
.button {
display: inline-flex;
min-height: 58px;
align-items: center;
justify-content: center;
padding: 14px 30px;
border: 1px solid var(--accent);
border-radius: var(--radius-sm);
color: var(--white);
background: var(--accent);
font-weight: 600;
line-height: 1.2;
text-align: center;
transition: transform 160ms ease, background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}
.button:hover {
transform: translateY(-2px);
border-color: var(--accent-dark);
background: var(--accent-dark);
box-shadow: 0 12px 26px rgba(78, 100, 206, 0.22);
}
.button-small {
min-height: 46px;
padding: 11px 18px;
font-size: 16px;
}
.button-ghost {
color: var(--ink);
border-color: #cbd5ff;
background: rgba(255, 255, 255, 0.78);
}
.button-ghost:hover {
color: var(--accent-dark);
border-color: var(--accent);
background: var(--white);
}
.text-link {
display: inline-flex;
align-items: center;
gap: 8px;
color: var(--accent-dark);
font-weight: 600;
line-height: 1.35;
}
.text-link span {
transition: transform 160ms ease;
}
.text-link:hover span {
transform: translateX(4px);
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
summary:focus-visible {
outline: 3px solid rgba(78, 100, 206, 0.36);
outline-offset: 4px;
}
.site-header {
position: sticky;
z-index: 100;
top: 0;
border-bottom: 1px solid rgba(111, 133, 233, 0.12);
background: rgba(255, 255, 255, 0.94);
backdrop-filter: blur(18px);
}
.header-row {
display: grid;
min-height: 92px;
grid-template-columns: 210px auto 1fr auto;
align-items: center;
gap: 24px;
}
.brand img {
width: 205px;
}
.header-service-link {
padding-left: 22px;
border-left: 1px solid var(--accent);
color: #6b7190;
font-size: 13px;
line-height: 1.25;
text-decoration: underline;
text-decoration-color: rgba(111, 133, 233, 0.4);
text-underline-offset: 3px;
}
.primary-nav {
display: flex;
align-items: center;
justify-content: center;
gap: 24px;
font-size: 16px;
}
.primary-nav a {
white-space: nowrap;
}
.primary-nav a:hover {
color: var(--accent-dark);
}
.header-actions {
display: flex;
align-items: center;
gap: 14px;
}
.phone {
white-space: nowrap;
font-size: 17px;
font-weight: 600;
}
.menu-toggle {
position: relative;
display: none;
flex: 0 0 46px;
width: 46px;
height: 46px;
padding: 0;
border: 1px solid var(--line);
border-radius: 12px;
appearance: none;
background: var(--white);
line-height: 0;
}
.menu-toggle > span:not(.sr-only) {
position: absolute;
top: 50%;
left: 50%;
display: block;
width: 20px;
height: 2px;
border-radius: 2px;
background: var(--ink);
transition: transform 0.2s ease, opacity 0.2s ease;
}
.menu-toggle > span:nth-child(1) {
transform: translate(-50%, -7px);
}
.menu-toggle > span:nth-child(2) {
transform: translate(-50%, -1px);
}
.menu-toggle > span:nth-child(3) {
transform: translate(-50%, 5px);
}
.menu-toggle[aria-expanded="true"] > span:nth-child(1) {
transform: translate(-50%, -1px) rotate(45deg);
}
.menu-toggle[aria-expanded="true"] > span:nth-child(2) {
opacity: 0;
}
.menu-toggle[aria-expanded="true"] > span:nth-child(3) {
transform: translate(-50%, -1px) rotate(-45deg);
}
.hero {
position: relative;
overflow: hidden;
padding: 56px 0 74px;
}
.hero::before {
position: absolute;
width: 680px;
height: 680px;
right: -260px;
top: -320px;
border: 1px solid rgba(111, 133, 233, 0.26);
border-radius: 50%;
content: "";
}
.hero-grid {
position: relative;
display: grid;
grid-template-columns: minmax(0, 1.1fr) minmax(390px, 0.9fr);
align-items: center;
gap: 64px;
}
.hero-copy {
position: relative;
z-index: 2;
}
.hero-lead {
max-width: 760px;
margin-bottom: 22px;
color: #505667;
font-size: 20px;
line-height: 1.5;
}
.hero-points {
display: grid;
margin: 0 0 26px;
padding: 0;
gap: 8px;
list-style: none;
}
.hero-points li {
display: flex;
align-items: center;
gap: 12px;
font-weight: 500;
}
.check {
display: inline-grid;
flex: 0 0 auto;
width: 28px;
height: 28px;
place-items: center;
border-radius: 50%;
color: var(--accent-dark);
background: var(--white);
box-shadow: 0 6px 16px rgba(78, 100, 206, 0.12);
font-size: 15px;
font-weight: 700;
}
.hero-actions {
display: flex;
flex-wrap: wrap;
gap: 12px;
}
.microcopy {
max-width: 660px;
margin: 20px 0 0;
color: #73788a;
font-size: 14px;
line-height: 1.45;
}
.hero-visual {
position: relative;
min-height: 560px;
}
.hero-image-card {
position: absolute;
inset: 28px 0 30px 34px;
display: grid;
place-items: center;
overflow: hidden;
border: 1px solid rgba(111, 133, 233, 0.24);
border-radius: 42% 42% 30px 30px;
background: linear-gradient(160deg, #ffffff, #dfe6ff);
box-shadow: var(--shadow);
}
.hero-image-card::before {
position: absolute;
inset: 34px;
border: 1px solid rgba(111, 133, 233, 0.18);
border-radius: inherit;
content: "";
}
.hero-image-card img {
position: relative;
width: 95%;
max-height: 520px;
object-fit: contain;
transform: translateY(8px);
}
.rating-card,
.remote-card {
position: absolute;
z-index: 3;
display: flex;
align-items: center;
gap: 12px;
padding: 16px 18px;
border: 1px solid rgba(111, 133, 233, 0.2);
border-radius: 16px;
background: rgba(255, 255, 255, 0.95);
box-shadow: 0 18px 36px rgba(61, 76, 143, 0.14);
font-size: 15px;
line-height: 1.25;
}
.rating-card {
top: 0;
right: -18px;
}
.rating-star {
display: grid;
width: 38px;
height: 38px;
place-items: center;
border-radius: 12px;
color: #f4ad39;
background: #fff7df;
font-size: 23px;
}
.rating-card strong {
font-size: 20px;
}
.rating-card small {
color: var(--muted);
}
.remote-card {
right: 16px;
bottom: 4px;
display: grid;
gap: 2px;
}
.remote-card span {
color: var(--muted);
font-size: 13px;
}
.proof-strip {
position: relative;
z-index: 5;
border-top: 1px solid var(--line);
border-bottom: 1px solid var(--line);
background: var(--white);
}
.proof-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
overflow: hidden;
border: 1px solid var(--line);
border-radius: 22px;
background: rgba(255, 255, 255, 0.92);
box-shadow: 0 18px 44px rgba(73, 92, 170, 0.1);
}
.hero-benefits {
position: relative;
z-index: 2;
margin-top: 36px;
}
.proof-item {
display: grid;
min-height: 172px;
align-content: center;
justify-items: center;
padding: 24px 22px;
gap: 9px;
border-right: 1px solid var(--line);
text-align: center;
}
.proof-item:nth-child(even) {
background: rgba(246, 248, 255, 0.58);
}
.proof-item:first-child {
border-left: 0;
}
.proof-item:last-child {
border-right: 0;
}
.proof-icon-wrap {
display: grid;
width: 38px;
height: 38px;
place-items: center;
color: var(--accent);
}
.proof-icon {
width: 28px;
height: 28px;
stroke: currentColor;
stroke-width: 1.55;
stroke-linecap: round;
stroke-linejoin: round;
}
.proof-item strong {
color: var(--ink);
font-size: 16px;
font-weight: 600;
line-height: 1.25;
text-decoration: underline;
text-decoration-color: rgba(27, 34, 58, 0.55);
text-decoration-thickness: 1px;
text-underline-offset: 3px;
}
.proof-item span {
max-width: 230px;
color: var(--muted);
font-size: 13px;
line-height: 1.42;
}
.section-heading {
margin-bottom: 48px;
}
.section-heading h2 {
max-width: 900px;
}
.section-heading > p:not(.eyebrow),
.split-heading > p {
color: var(--muted);
}
.split-heading {
display: grid;
grid-template-columns: minmax(0, 1.35fr) minmax(260px, 0.65fr);
align-items: end;
gap: 70px;
}
.split-heading h2,
.split-heading p {
margin-bottom: 0;
}
.centered {
max-width: 850px;
margin-inline: auto;
text-align: center;
}
.service-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-auto-rows: 1fr;
gap: 18px;
}
.service-card {
position: relative;
display: grid;
min-height: 270px;
grid-template-columns: 64px minmax(0, 1fr);
align-items: start;
column-gap: 22px;
row-gap: 0;
padding: 30px 28px;
overflow: hidden;
border: 1px solid var(--line);
border-radius: 18px;
background: linear-gradient(135deg, #ffffff 0%, #fbfdff 58%, #f1f5fb 100%);
transition:
color 340ms ease,
transform 340ms cubic-bezier(0.22, 1, 0.36, 1),
box-shadow 340ms ease,
border-color 340ms ease;
}
.service-card::before {
position: absolute;
z-index: 1;
inset: 0;
background: linear-gradient(90deg, #0967ea 0%, #0967ea 58%, rgba(9, 103, 234, 0.84) 70%, rgba(9, 103, 234, 0.18) 100%);
opacity: 0;
content: "";
pointer-events: none;
transition: opacity 340ms cubic-bezier(0.22, 1, 0.36, 1);
}
.service-card::after {
position: absolute;
z-index: 2;
inset: 0;
background: linear-gradient(90deg, #ffffff 0%, #ffffff 58%, rgba(255, 255, 255, 0.92) 68%, transparent 86%);
opacity: 1;
content: "";
pointer-events: none;
transition: opacity 340ms cubic-bezier(0.22, 1, 0.36, 1);
}
.service-card:hover {
transform: translateY(-2px);
border-color: #bac6fb;
box-shadow: var(--shadow);
}
.service-card.is-service-active {
border-color: #0869ef;
color: var(--white);
}
.service-card.is-service-active::before {
opacity: 1;
}
.service-card.is-service-active::after {
opacity: 0;
}
.service-icon {
position: relative;
z-index: 3;
display: grid;
width: 64px;
height: 64px;
margin: 0;
align-self: start;
place-items: center;
border-radius: 18px;
color: #0d68ea;
background: #edf5ff;
transition: color 340ms ease, background-color 340ms ease;
}
.service-icon svg {
width: 36px;
height: 36px;
fill: none;
stroke: currentColor;
stroke-width: 3;
stroke-linecap: round;
stroke-linejoin: round;
}
.service-icon-dots {
grid-template-columns: repeat(3, 8px);
justify-content: center;
align-content: center;
gap: 6px;
}
.service-icon-dots span {
width: 8px;
height: 8px;
border-radius: 50%;
background: currentColor;
}
.service-card.is-service-active .service-icon {
color: var(--white);
background: rgba(255, 255, 255, 0.1);
}
.service-card-copy {
position: relative;
z-index: 3;
display: flex;
min-width: 0;
min-height: 210px;
flex-direction: column;
}
.service-card h3 {
max-width: 245px;
margin-top: 3px;
margin-bottom: 14px;
font-size: 22px;
font-weight: 650;
letter-spacing: -0.035em;
transition: color 340ms ease;
}
.service-card p {
max-width: 218px;
margin-bottom: 20px;
color: var(--muted);
font-size: 15.5px;
line-height: 1.38;
transition: color 340ms ease;
}
.service-card.is-service-active p {
color: rgba(255, 255, 255, 0.88);
}
.service-card .text-link {
margin-top: auto;
color: #0967ee;
font-size: 16px;
font-weight: 600;
transition: color 340ms ease;
}
.service-card.is-service-active .text-link {
color: var(--white);
}
.service-card-art {
position: absolute;
z-index: 0;
right: -2%;
bottom: -4%;
width: 42%;
height: auto;
max-height: 82%;
object-fit: contain;
object-position: right bottom;
opacity: 1;
pointer-events: none;
transition: opacity 340ms ease, filter 340ms ease, transform 340ms cubic-bezier(0.22, 1, 0.36, 1);
-webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.78) 24%, #000 48%, #000 100%);
mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.78) 24%, #000 48%, #000 100%);
}
.service-card.is-service-active .service-card-art {
z-index: 2;
opacity: 0.42;
mix-blend-mode: screen;
transform: scale(1.025);
} .service-card:nth-child(1) .service-card-art {
right: -3%;
bottom: -10%;
width: 43%;
}
.service-card:nth-child(2) .service-card-art {
right: -6%;
bottom: -8%;
width: 59%;
}
.service-card:nth-child(3) .service-card-art {
right: -10%;
bottom: -16%;
width: 60%;
}
.service-card:nth-child(4) .service-card-art {
right: -4%;
bottom: -13%;
width: 44%;
}
.service-card:nth-child(5) .service-card-art {
right: -13%;
bottom: -4%;
width: 62%;
}
.service-card:nth-child(6) .service-card-art {
right: -11%;
bottom: -17%;
width: 61%;
}
.services-heading {
align-items: end;
grid-template-columns: minmax(0, 1.75fr) minmax(300px, 0.75fr);
gap: 54px;
}
.services-heading h2 {
max-width: 850px;
font-size: clamp(38px, 3.4vw, 54px);
font-weight: 650;
letter-spacing: -0.04em;
}
.services-heading > p {
max-width: 430px;
font-size: 18px;
line-height: 1.55;
}
.qualification-grid {
display: grid;
grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
align-items: start;
gap: 88px;
}
.qualification-copy {
position: sticky;
top: 142px;
}
.qualification-copy p:not(.eyebrow) {
color: var(--muted);
}
.qualification-list {
display: grid;
border-top: 1px solid var(--line);
}
.qualification-list article {
display: grid;
grid-template-columns: 54px 1fr;
gap: 20px;
padding: 28px 0;
border-bottom: 1px solid var(--line);
}
.qualification-list article > span {
display: grid;
width: 44px;
height: 44px;
place-items: center;
border-radius: 50%;
color: var(--accent-dark);
background: var(--white);
font-size: 14px;
font-weight: 700;
}
.qualification-list h3 {
margin-bottom: 8px;
}
.qualification-list p {
margin-bottom: 0;
color: var(--muted);
font-size: 17px;
}
.documents-grid {
display: grid;
grid-template-columns: minmax(340px, 0.75fr) minmax(0, 1.25fr);
align-items: center;
gap: 90px;
}
.documents-visual {
display: grid;
min-height: 480px;
place-items: center;
border-radius: var(--radius-lg);
background:
radial-gradient(circle at 20% 20%, rgba(255, 255, 255, 0.9), transparent 36%),
var(--accent-soft);
}
.doc-stack {
position: relative;
width: 270px;
height: 330px;
}
.doc-sheet {
position: absolute;
inset: 0;
border: 1px solid #cbd4fb;
border-radius: 18px;
background: var(--white);
box-shadow: 0 22px 50px rgba(69, 85, 159, 0.16);
}
.doc-sheet-back {
transform: rotate(-9deg) translate(-30px, 8px);
opacity: 0.66;
}
.doc-sheet-middle {
transform: rotate(8deg) translate(28px, 8px);
opacity: 0.82;
}
.doc-sheet-front {
display: flex;
flex-direction: column;
padding: 34px;
}
.doc-logo {
display: grid;
width: 48px;
height: 48px;
margin-bottom: 44px;
place-items: center;
border-radius: 15px;
color: var(--white);
background: var(--accent);
font-size: 25px;
font-weight: 700;
}
.doc-line {
display: block;
width: 70%;
height: 8px;
margin-bottom: 18px;
border-radius: 8px;
background: #e4e8f8;
}
.doc-line-long {
width: 100%;
}
.doc-line-short {
width: 44%;
}
.doc-stamp {
align-self: flex-end;
margin-top: auto;
padding: 10px 14px;
border: 2px solid var(--accent);
border-radius: 9px;
color: var(--accent-dark);
font-size: 12px;
font-weight: 700;
letter-spacing: 0.08em;
transform: rotate(-5deg);
}
.document-list {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 14px;
}
.document-list > div {
display: grid;
grid-template-columns: 40px 1fr;
gap: 12px;
padding: 20px;
border: 1px solid var(--line);
border-radius: 15px;
background: var(--accent-pale);
}
.document-list span {
color: var(--accent-dark);
font-size: 13px;
font-weight: 700;
}
.document-list p {
margin: 0;
font-size: 16px;
line-height: 1.4;
}
.notice {
margin: 22px 0 0;
padding: 18px 20px;
border-left: 3px solid var(--accent);
color: #5f6473;
background: #f8f9ff;
font-size: 15px;
}
.process-grid {
display: grid;
grid-template-columns: repeat(5, 1fr);
margin: 0;
padding: 0;
gap: 14px;
list-style: none;
counter-reset: item;
}
.process-grid li {
position: relative;
min-height: 300px;
padding: 26px 24px;
border: 1px solid rgba(111, 133, 233, 0.25);
border-radius: var(--radius-md);
background: rgba(255, 255, 255, 0.76);
}
.process-grid li::after {
position: absolute;
z-index: 2;
top: 56px;
right: -20px;
width: 28px;
height: 1px;
background: #aebcf5;
content: "";
}
.process-grid li:last-child::after {
display: none;
}
.step {
display: inline-grid;
width: 46px;
height: 46px;
margin-bottom: 54px;
place-items: center;
border-radius: 14px;
color: var(--white);
background: var(--accent);
font-size: 14px;
font-weight: 700;
}
.process-grid h3 {
font-size: 22px;
}
.process-grid p {
margin-bottom: 0;
color: var(--muted);
font-size: 16px;
}
.case-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
}
.case-card {
display: flex;
height: 100%;
flex-direction: column;
overflow: hidden;
border: 1px solid var(--line);
border-radius: var(--radius-md);
background: var(--white);
transition: transform 180ms ease, box-shadow 180ms ease;
}
.case-card:hover {
transform: translateY(-5px);
box-shadow: var(--shadow);
}
.case-image {
display: block;
height: 260px;
flex: 0 0 260px;
overflow: hidden;
background: var(--accent-soft);
}
.case-image img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 260ms ease;
}
.case-card:hover .case-image img {
transform: scale(1.025);
}
.case-body {
display: flex;
flex: 1;
flex-direction: column;
padding: 26px;
}
.case-tags {
display: flex;
min-height: 31px;
flex-wrap: wrap;
margin-bottom: 24px;
gap: 8px;
}
.case-tags span {
padding: 6px 10px;
border-radius: 999px;
color: #59617c;
background: var(--accent-soft);
font-size: 13px;
}
.case-amount {
margin-bottom: 12px;
color: var(--accent-dark);
font-size: 34px;
font-weight: 600;
letter-spacing: -0.03em;
}
.case-body p:not(.case-amount) {
color: var(--muted);
font-size: 16px;
}
.case-body .text-link {
align-self: flex-start;
margin-top: auto;
padding-top: 14px;
font-size: 15px;
}
.section-footer-action {
display: flex;
justify-content: center;
margin-top: 36px;
}
.section-footer-action .button-ghost {
border-color: var(--accent);
color: var(--accent-dark);
background: var(--white);
}
.section-footer-action .button-ghost:hover,
.section-footer-action .button-ghost:focus-visible {
color: var(--white);
border-color: var(--accent);
background: var(--accent);
}
.expert-section {
overflow: hidden;
color: var(--white);
background: #2f3551;
}
.expert-grid {
display: grid;
grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr);
align-items: center;
gap: 80px;
}
.expert-section .eyebrow {
color: #aebdfd;
}
.expert-copy > p:not(.eyebrow):not(.expert-name) {
color: #d9deee;
}
.expert-name {
margin-bottom: 12px;
font-size: 26px;
font-weight: 600;
}
.expert-copy blockquote {
margin: 30px 0;
padding: 22px 24px;
border-left: 3px solid #aebdfd;
border-radius: 0 14px 14px 0;
color: #e8ebf8;
background: rgba(255, 255, 255, 0.07);
font-size: 18px;
font-style: italic;
}
.expert-visual {
position: relative;
min-height: 560px;
}
.expert-image-wrap {
position: absolute;
inset: 0 0 0 60px;
display: grid;
place-items: end center;
overflow: hidden;
border-radius: 46% 46% 30px 30px;
background: linear-gradient(160deg, #59668f, #cad4ff);
}
.expert-image-wrap img {
width: 98%;
max-height: 540px;
object-fit: contain;
object-position: bottom;
}
.expert-note {
position: absolute;
left: 0;
bottom: 30px;
display: grid;
max-width: 260px;
padding: 18px 20px;
gap: 4px;
border: 1px solid rgba(255, 255, 255, 0.2);
border-radius: 16px;
color: var(--ink);
background: rgba(255, 255, 255, 0.95);
box-shadow: 0 20px 45px rgba(13, 20, 48, 0.3);
}
.expert-note span {
color: var(--muted);
font-size: 14px;
line-height: 1.35;
}
.review-grid {
display: grid;
grid-template-columns: minmax(260px, 0.38fr) minmax(0, 1fr);
gap: 50px;
}
.review-score {
display: flex;
flex-direction: column;
align-items: flex-start;
}
.score-line {
display: flex;
align-items: center;
gap: 16px;
}
.score-line strong {
font-size: 72px;
font-weight: 500;
letter-spacing: -0.05em;
line-height: 1;
}
.score-line span,
.review-stars {
color: #f4ad39;
letter-spacing: 0.05em;
}
.review-score p {
margin: 12px 0;
color: var(--muted);
}
.award {
display: inline-flex;
margin-bottom: 14px;
padding: 7px 11px;
border-radius: 999px;
color: #7e570e;
background: #fff3d3;
font-size: 13px;
font-weight: 600;
}
.review-score small {
margin-bottom: 22px;
color: #858a98;
}
.review-cards {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 14px;
}
.review-cards article {
display: flex;
min-height: 240px;
flex-direction: column;
padding: 24px;
border: 1px solid var(--line);
border-radius: var(--radius-md);
background: var(--white);
}
.review-cards p {
margin: 26px 0 auto;
font-size: 17px;
}
.review-cards article > span {
color: var(--muted);
font-size: 13px;
}
.faq-grid {
display: grid;
grid-template-columns: minmax(300px, 0.68fr) minmax(0, 1.32fr);
align-items: start;
gap: 90px;
}
.faq-intro {
position: sticky;
top: 142px;
}
.faq-intro p:not(.eyebrow) {
color: var(--muted);
}
.faq-list {
border-top: 1px solid var(--line);
}
.faq-list details {
border-bottom: 1px solid var(--line);
}
.faq-list summary {
position: relative;
padding: 26px 48px 26px 0;
cursor: pointer;
font-size: 21px;
font-weight: 600;
line-height: 1.3;
list-style: none;
}
.faq-list summary::-webkit-details-marker {
display: none;
}
.faq-list summary::after {
position: absolute;
top: 24px;
right: 0;
display: grid;
width: 34px;
height: 34px;
place-items: center;
border-radius: 50%;
color: var(--accent-dark);
background: var(--accent-soft);
content: "+";
font-size: 23px;
font-weight: 400;
}
.faq-list details[open] summary::after {
content: "−";
}
.faq-list details p {
max-width: 760px;
padding: 0 46px 24px 0;
color: var(--muted);
}
.lead-section {
scroll-margin-top: 100px;
padding: 96px 0;
color: var(--white);
background:
radial-gradient(circle at 82% 18%, rgba(164, 180, 255, 0.33), transparent 28%),
#536bd6;
}
.lead-grid {
display: grid;
grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1.28fr);
align-items: start;
gap: 74px;
}
.lead-copy h2 {
max-width: 560px;
}
.lead-copy > p:not(.eyebrow) {
max-width: 560px;
color: #edf0ff;
}
.lead-copy ul {
display: grid;
margin: 30px 0 0;
padding: 0;
gap: 9px;
color: #edf0ff;
list-style: none;
}
.lead-copy li::before {
margin-right: 10px;
content: "✓";
font-weight: 700;
}
.lead-form {
display: grid;
grid-template-columns: 1fr 1fr;
padding: 34px;
gap: 18px;
border: 1px solid rgba(255, 255, 255, 0.34);
border-radius: 26px;
color: var(--ink);
background: var(--white);
box-shadow: 0 30px 70px rgba(25, 38, 95, 0.28);
}
.form-heading {
grid-column: 1 / -1;
display: flex;
align-items: baseline;
justify-content: space-between;
padding-bottom: 20px;
border-bottom: 1px solid var(--line);
}
.form-heading span {
color: var(--accent-dark);
font-size: 14px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
}
.form-heading strong {
font-size: 24px;
font-weight: 600;
}
.form-field {
display: flex;
flex-direction: column;
}
.form-field-wide {
grid-column: 1 / -1;
}
.form-field label {
margin-bottom: 8px;
font-size: 15px;
font-weight: 600;
}
.form-field input,
.form-field select {
width: 100%;
min-height: 54px;
padding: 12px 14px;
border: 1px solid #cad3f4;
border-radius: 11px;
color: var(--ink);
background: #fbfcff;
outline: none;
}
.form-field input:hover,
.form-field select:hover {
border-color: #aebcf4;
}
.form-field input:focus,
.form-field select:focus {
border-color: var(--accent);
box-shadow: 0 0 0 4px rgba(111, 133, 233, 0.12);
}
.form-field.has-error input,
.form-field.has-error select,
.consent.has-error {
border-color: var(--danger);
}
.field-error {
min-height: 18px;
margin-top: 5px;
color: var(--danger);
font-size: 12px;
}
.consent {
display: grid;
grid-template-columns: 20px 1fr;
align-items: start;
gap: 10px;
padding: 10px 0;
color: var(--muted);
font-size: 13px;
line-height: 1.42;
}
.consent input {
width: 18px;
height: 18px;
margin: 2px 0 0;
accent-color: var(--accent);
}
.consent a {
color: var(--accent-dark);
text-decoration: underline;
text-underline-offset: 2px;
}
.form-submit {
width: 100%;
border: 0;
}
.form-status {
display: none;
margin: 0;
padding: 14px 16px;
border-radius: 10px;
font-size: 14px;
line-height: 1.4;
}
.form-status.is-visible {
display: block;
}
.form-status.is-success {
color: #255f48;
background: #e8f7ef;
}
.form-status.is-error {
color: #8b303a;
background: #fff0f1;
}
.site-footer {
padding: 72px 0 24px;
color: #e2e6f4;
background: #262b42;
}
.footer-grid {
display: grid;
grid-template-columns: 1.45fr 0.8fr 0.75fr 1fr;
gap: 48px;
}
.footer-brand img {
width: 220px;
margin-bottom: 22px;
padding: 10px 14px;
border-radius: 12px;
background: var(--white);
}
.footer-brand p {
max-width: 390px;
color: #b9bfd2;
font-size: 15px;
}
.site-footer h2 {
margin-bottom: 20px;
color: var(--white);
font-size: 18px;
letter-spacing: 0;
}
.site-footer a,
.site-footer address {
display: block;
margin-bottom: 10px;
color: #c3c9dc;
font-size: 15px;
font-style: normal;
line-height: 1.45;
}
.site-footer a:hover {
color: var(--white);
}
.footer-phone {
color: var(--white) !important;
font-size: 20px !important;
font-weight: 600;
}
.footer-bottom {
display: flex;
align-items: center;
justify-content: space-between;
margin-top: 54px;
padding-top: 24px;
gap: 30px;
border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.footer-bottom p {
margin: 0;
color: #979eb5;
font-size: 13px;
}
.footer-bottom div {
display: flex;
flex-wrap: wrap;
justify-content: flex-end;
gap: 18px;
}
.footer-bottom a {
margin: 0;
color: #979eb5;
font-size: 13px;
}
.mobile-cta {
display: none;
}
@media (max-width: 1180px) {
.header-row {
grid-template-columns: 190px auto 1fr auto;
gap: 16px;
}
.brand img {
width: 185px;
}
.header-service-link {
display: none;
}
.primary-nav {
gap: 17px;
font-size: 15px;
}
.header-actions .phone {
display: none;
}
.hero-grid {
gap: 38px;
}
.process-grid {
grid-template-columns: repeat(3, 1fr);
}
.process-grid li::after {
display: none;
}
.footer-grid {
grid-template-columns: 1.2fr 1fr 1fr;
}
.footer-brand {
grid-column: 1 / -1;
}
}
@media (max-width: 920px) {
body {
font-size: 18px;
}
.shell {
width: min(calc(100% - 36px), var(--shell));
}
.section {
padding: 82px 0;
}
.header-row {
min-height: 76px;
grid-template-columns: 1fr auto auto;
}
.brand img {
width: 180px;
}
.menu-toggle {
display: grid;
grid-column: 3;
}
.header-actions {
grid-column: 2;
grid-row: 1;
}
.primary-nav {
position: fixed;
z-index: 90;
top: 76px;
right: 0;
left: 0;
display: none;
max-height: calc(100vh - 76px);
flex-direction: column;
align-items: stretch;
justify-content: flex-start;
padding: 22px 24px 30px;
overflow: auto;
border-top: 1px solid var(--line);
background: var(--white);
box-shadow: 0 18px 32px rgba(44, 44, 44, 0.1);
}
.primary-nav.is-open {
display: flex;
}
.primary-nav a {
padding: 9px 0;
font-size: 18px;
}
.hero {
padding: 68px 0 80px;
}
.hero-grid,
.qualification-grid,
.documents-grid,
.expert-grid,
.review-grid,
.faq-grid,
.lead-grid {
grid-template-columns: 1fr;
}
.hero-visual {
min-height: 520px;
}
.hero-image-card {
inset: 20px 50px 26px;
}
.rating-card {
right: 20px;
}
.remote-card {
right: 60px;
}
.proof-grid {
grid-template-columns: 1fr 1fr;
}
.proof-item:nth-child(2) {
border-right: 0;
}
.proof-item:nth-child(3),
.proof-item:nth-child(4) {
border-top: 1px solid var(--line);
}
.split-heading {
grid-template-columns: 1fr;
gap: 18px;
}
.service-grid,
.case-grid {
grid-template-columns: 1fr 1fr;
}
.qualification-grid,
.documents-grid,
.expert-grid,
.faq-grid,
.lead-grid {
gap: 48px;
}
.qualification-copy,
.faq-intro {
position: static;
}
.documents-visual {
min-height: 400px;
}
.process-grid {
grid-template-columns: 1fr 1fr;
}
.expert-visual {
min-height: 520px;
}
.review-grid {
gap: 34px;
}
.review-cards {
grid-template-columns: 1fr 1fr 1fr;
}
.footer-grid {
grid-template-columns: 1fr 1fr;
}
}
@media (max-width: 640px) {
html {
scroll-padding-top: 82px;
}
body {
padding-bottom: 70px;
font-size: 17px;
}
.shell {
width: min(calc(100% - 28px), var(--shell));
}
.section {
padding: 66px 0;
}
h1 {
font-size: clamp(38px, 11.5vw, 54px);
}
h2 {
font-size: clamp(32px, 9vw, 44px);
}
h3 {
font-size: 23px;
}
.header-row {
min-height: 70px;
grid-template-columns: 1fr auto;
}
.brand img {
width: 165px;
}
.header-actions {
display: none;
}
.menu-toggle {
grid-column: 2;
}
.primary-nav {
top: 70px;
max-height: calc(100vh - 70px);
}
.hero {
padding: 48px 0 60px;
}
.hero-grid {
gap: 28px;
}
.hero-lead {
font-size: 19px;
}
.hero-actions {
display: grid;
}
.hero-actions .button {
width: 100%;
}
.hero-visual {
min-height: 390px;
}
.hero-image-card {
inset: 20px 0 28px;
border-radius: 38% 38% 24px 24px;
}
.hero-image-card img {
width: 100%;
}
.rating-card {
top: 0;
right: -2px;
padding: 12px 14px;
font-size: 13px;
}
.rating-star {
width: 32px;
height: 32px;
font-size: 19px;
}
.rating-card strong {
font-size: 17px;
}
.remote-card {
right: 8px;
bottom: 0;
padding: 12px 14px;
}
.proof-grid,
.service-grid,
.case-grid,
.process-grid,
.document-list,
.review-cards,
.lead-form,
.footer-grid {
grid-template-columns: 1fr;
}
.proof-item {
padding: 22px 18px;
border: 0;
border-bottom: 1px solid var(--line);
}
.proof-item:first-child {
border-left: 0;
}
.proof-item:last-child {
border-bottom: 0;
}
.service-card {
min-height: 285px;
padding: 24px;
}
.service-icon {
margin-bottom: 0;
}
.qualification-list article {
grid-template-columns: 46px 1fr;
gap: 14px;
}
.documents-grid {
gap: 38px;
}
.documents-visual {
min-height: 340px;
}
.doc-stack {
width: 210px;
height: 270px;
}
.doc-sheet-front {
padding: 26px;
}
.process-grid li {
min-height: auto;
}
.step {
margin-bottom: 34px;
}
.case-body {
padding: 22px;
}
.expert-visual {
min-height: 390px;
}
.expert-image-wrap {
inset: 0 0 0 20px;
}
.expert-note {
max-width: 220px;
padding: 14px 16px;
}
.review-cards article {
min-height: 210px;
}
.score-line strong {
font-size: 60px;
}
.lead-section {
scroll-margin-top: 78px;
padding: 66px 0;
}
.lead-form {
padding: 24px 18px;
}
.form-heading {
display: grid;
gap: 4px;
}
.form-field-wide,
.form-heading {
grid-column: 1;
}
.footer-bottom {
align-items: flex-start;
flex-direction: column;
}
.footer-bottom div {
justify-content: flex-start;
}
.mobile-cta {
position: fixed;
z-index: 110;
right: 10px;
bottom: 10px;
left: 10px;
display: flex;
min-height: 52px;
align-items: center;
justify-content: center;
border-radius: 12px;
color: var(--white);
background: var(--accent);
box-shadow: 0 12px 28px rgba(47, 61, 126, 0.32);
font-weight: 600;
}
}
@media (prefers-reduced-motion: reduce) {
html {
scroll-behavior: auto;
}
*,
*::before,
*::after {
scroll-behavior: auto !important;
transition-duration: 0.01ms !important;
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
}
} body.modal-open {
overflow: hidden;
}
.mobile-cta,
.button-link,
.nav-link {
border: 0;
}
.nav-item-has-mega {
position: static;
}
.nav-link {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 10px 0;
color: inherit;
background: transparent;
white-space: nowrap;
}
.nav-caret {
display: inline-block;
width: 8px;
height: 8px;
margin: -4px 1px 0 3px;
border-right: 1.5px solid var(--accent-dark);
border-bottom: 1.5px solid var(--accent-dark);
transform: rotate(45deg);
transform-origin: center;
transition: transform 0.2s ease, margin 0.2s ease;
}
.nav-services-toggle[aria-expanded="true"] .nav-caret {
margin-top: 3px;
transform: rotate(225deg);
}
.mega-menu {
position: absolute;
z-index: 120;
top: calc(100% + 1px);
left: 50%;
width: min(calc(100vw - 40px), 1240px);
padding: 22px;
border: 1px solid var(--line);
border-radius: 0 0 24px 24px;
opacity: 0;
visibility: hidden;
background: rgba(255, 255, 255, 0.99);
box-shadow: 0 26px 60px rgba(49, 61, 123, 0.18);
transform: translate(-50%, 10px);
transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
pointer-events: none;
}
.mega-menu.is-open {
opacity: 1;
visibility: visible;
transform: translate(-50%, 0);
pointer-events: auto;
}
.mega-menu-shell {
display: grid;
min-height: 390px;
grid-template-columns: 300px minmax(0, 1fr);
gap: 14px;
}
.mega-menu-primary {
display: grid;
align-content: start;
padding: 8px;
gap: 6px;
border: 1px solid rgba(111, 133, 233, 0.2);
border-radius: 18px;
background: #f7f8ff;
}
.mega-primary-item {
display: grid;
min-width: 0;
grid-template-columns: minmax(0, 1fr) 42px;
align-items: center;
border: 1px solid transparent;
border-radius: 14px;
background: transparent;
transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}
.mega-primary-item:is(:hover, :focus-within),
.mega-primary-item.is-active {
border-color: rgba(111, 133, 233, 0.26);
background: var(--white);
box-shadow: 0 8px 22px rgba(73, 92, 170, 0.08);
}
.mega-primary-link {
display: grid;
min-width: 0;
padding: 15px 10px 15px 14px;
gap: 5px;
white-space: normal !important;
}
.mega-primary-link strong {
color: var(--ink);
font-size: 16px;
font-weight: 650;
line-height: 1.25;
}
.mega-primary-link small {
color: var(--muted);
font-size: 12px;
line-height: 1.3;
}
.mega-branch-toggle {
position: relative;
display: grid;
width: 36px;
height: 36px;
padding: 0;
place-items: center;
border: 1px solid rgba(111, 133, 233, 0.22);
border-radius: 10px;
color: var(--accent-dark);
background: var(--white);
appearance: none;
transition: color 0.18s ease, background 0.18s ease, border-color 0.18s ease;
}
.mega-branch-toggle:is(:hover, :focus-visible),
.mega-primary-item.is-active .mega-branch-toggle {
border-color: var(--accent);
color: var(--white);
background: var(--accent);
}
.mega-branch-arrow {
width: 8px;
height: 8px;
margin-left: -3px;
border-top: 1.5px solid currentColor;
border-right: 1.5px solid currentColor;
transform: rotate(45deg);
transition: transform 0.18s ease;
}
.mega-menu-secondary {
min-width: 0;
padding: 24px 26px;
border: 1px solid rgba(111, 133, 233, 0.2);
border-radius: 18px;
background: linear-gradient(145deg, #fff 0%, #f8f9ff 100%);
}
.mega-panel[hidden] {
display: none;
}
.mega-panel.is-active {
display: block;
animation: mega-panel-in 0.18s ease both;
}
@keyframes mega-panel-in {
from {
opacity: 0;
transform: translateX(6px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
.mega-panel-heading {
display: flex;
align-items: flex-start;
justify-content: space-between;
margin-bottom: 22px;
gap: 24px;
}
.mega-panel-heading > div {
display: grid;
gap: 5px;
}
.mega-panel-heading span {
color: var(--accent-dark);
font-size: 11px;
font-weight: 800;
letter-spacing: 0.08em;
text-transform: uppercase;
}
.mega-panel-heading strong {
color: var(--ink);
font-size: 22px;
line-height: 1.2;
}
.mega-panel-heading > a {
flex: 0 0 auto;
padding: 8px 12px;
border-radius: 10px;
color: var(--accent-dark);
background: var(--accent-pale);
font-size: 13px;
font-weight: 700;
}
.mega-link-groups {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 24px;
}
.mega-link-group {
display: grid;
align-content: start;
gap: 9px;
}
.mega-group-title {
margin-bottom: 3px;
color: var(--muted);
font-size: 12px;
font-weight: 750;
letter-spacing: 0.04em;
text-transform: uppercase;
}
.mega-link-group > a:not(.template-preview-link) {
color: #43495a;
font-size: 14px;
line-height: 1.32;
white-space: normal !important;
}
.mega-link-group > a:not(.template-preview-link):hover {
color: var(--accent-dark);
text-decoration: underline;
text-underline-offset: 3px;
}
.template-preview-link {
display: inline-flex;
width: fit-content;
margin-top: 7px;
padding: 8px 10px;
border-radius: 9px;
color: var(--accent-dark);
background: var(--accent-pale);
font-size: 11px;
font-weight: 800;
}
.template-preview-link:hover {
color: #fff;
background: var(--accent);
}
.hero-copy h1 span {
color: var(--accent);
}
.yandex-award-badge {
position: absolute;
z-index: 4;
top: 0;
right: 0;
width: 150px;
height: 50px;
overflow: hidden;
border-radius: 8px;
background: #f6f6f6;
box-shadow: 0 12px 28px rgba(61, 76, 143, 0.12);
}
.yandex-award-badge iframe {
display: block;
}
.direction-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 20px;
}
.direction-card {
position: relative;
display: flex;
min-height: 430px;
flex-direction: column;
padding: 30px;
overflow: hidden;
border: 1px solid var(--line);
border-radius: var(--radius-md);
background: var(--white);
box-shadow: 0 16px 36px rgba(67, 84, 164, 0.08);
transition:
color 340ms ease,
border-color 340ms ease,
box-shadow 340ms ease;
}
.direction-card::before {
position: absolute;
z-index: 0;
inset: 0;
background: linear-gradient(145deg, #596fd6, #7f92ec);
opacity: 0;
content: "";
pointer-events: none;
transition: opacity 340ms cubic-bezier(0.22, 1, 0.36, 1);
}
.direction-card > * {
position: relative;
z-index: 1;
}
.direction-card.is-direction-active {
color: var(--white);
border-color: transparent;
box-shadow: 0 20px 42px rgba(74, 94, 192, 0.2);
}
.direction-card.is-direction-active::before {
opacity: 1;
}
.direction-kicker {
margin-bottom: 22px;
color: var(--accent-dark);
font-size: 13px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.055em;
transition: color 340ms ease;
}
.direction-card.is-direction-active .direction-kicker,
.direction-card.is-direction-active p,
.direction-card.is-direction-active .text-link {
color: rgba(255, 255, 255, 0.9);
}
.direction-card h3 {
font-size: 30px;
transition: color 340ms ease;
}
.direction-card > p {
color: var(--muted);
font-size: 17px;
transition: color 340ms ease;
}
.direction-card.is-direction-active h3,
.direction-card.is-direction-active > p,
.direction-card.is-direction-active .direction-kicker,
.direction-card.is-direction-active .text-link,
.direction-card.is-direction-active .direction-links a {
color: #fff;
}
.direction-card.is-direction-active > p {
color: rgba(255, 255, 255, 0.96);
}
.direction-card.is-direction-active .direction-links a:hover,
.direction-card.is-direction-active .direction-links a:focus-visible {
color: var(--accent-dark);
border-color: #fff;
background: #fff;
}
.direction-links {
display: flex;
flex-wrap: wrap;
margin: auto 0 24px;
gap: 8px;
}
.direction-links a {
padding: 7px 10px;
border: 1px solid var(--line);
border-radius: 999px;
background: var(--accent-pale);
font-size: 14px;
transition:
color 340ms ease,
border-color 340ms ease,
background 340ms ease;
}
.direction-card.is-direction-active .direction-links a {
border-color: rgba(255, 255, 255, 0.26);
background: rgba(255, 255, 255, 0.12);
}
.case-proof-gallery {
position: relative;
display: block;
height: 260px;
overflow: hidden;
background: #e9edfb;
}
.case-proof-gallery .case-cover {
width: 65%;
height: 100%;
object-fit: cover;
}
.case-proof-gallery .case-document {
position: absolute;
z-index: 2;
width: 35%;
height: 80%;
right: 5%;
top: 10%;
border: 5px solid #fff;
border-radius: 8px;
object-fit: cover;
object-position: top;
background: #fff;
box-shadow: 0 14px 26px rgba(31, 39, 78, 0.24);
}
.case-proof-gallery .case-document-one {
transform: translateX(-18%) rotate(-5deg);
}
.case-proof-gallery .case-document-two {
transform: translateX(10%) rotate(4deg);
}
.document-badge {
position: absolute;
z-index: 4;
right: 12px;
bottom: 12px;
padding: 6px 10px;
border-radius: 999px;
color: var(--accent-dark);
background: rgba(255, 255, 255, 0.94);
box-shadow: 0 8px 18px rgba(31, 39, 78, 0.16);
font-size: 12px;
font-weight: 700;
}
.team-section {
overflow: hidden;
background: linear-gradient(155deg, #f8f9ff, #eef2ff);
}
.team-heading {
align-items: end;
}
.slider-controls {
display: flex;
justify-content: flex-end;
gap: 10px;
}
.slider-button {
display: grid;
width: 50px;
height: 50px;
place-items: center;
border: 1px solid var(--line);
border-radius: 50%;
color: var(--accent-dark);
background: var(--white);
font-size: 22px;
box-shadow: 0 10px 24px rgba(67, 84, 164, 0.1);
}
.slider-button:hover {
color: var(--white);
background: var(--accent);
}
.team-slider {
display: grid;
grid-auto-columns: minmax(520px, 58%);
grid-auto-flow: column;
padding: 4px 4px 18px;
gap: 20px;
overflow-x: auto;
scroll-behavior: smooth;
scroll-snap-type: x mandatory;
scrollbar-color: var(--accent) var(--accent-soft);
scrollbar-width: thin;
}
.team-card {
display: grid;
min-height: 430px;
grid-template-columns: 210px 1fr;
overflow: hidden;
border: 1px solid var(--line);
border-radius: 24px;
background: var(--white);
box-shadow: 0 18px 38px rgba(67, 84, 164, 0.09);
scroll-snap-align: start;
}
.team-photo {
display: grid;
min-height: 100%;
align-content: center;
justify-items: center;
padding: 24px;
color: var(--accent-dark);
background:
radial-gradient(circle at 50% 30%, rgba(255, 255, 255, 0.9), transparent 26%),
linear-gradient(155deg, #edf1ff, #d7defa);
text-align: center;
}
.team-photo-primary {
color: var(--white);
background:
radial-gradient(circle at 50% 30%, rgba(255, 255, 255, 0.24), transparent 28%),
linear-gradient(155deg, #6379dc, #91a1ec);
}
.team-photo span {
display: grid;
width: 112px;
height: 112px;
margin-bottom: 18px;
place-items: center;
border: 2px solid currentColor;
border-radius: 50%;
font-size: 34px;
font-weight: 700;
}
.team-photo small {
max-width: 150px;
font-size: 12px;
line-height: 1.35;
text-transform: uppercase;
letter-spacing: 0.06em;
}
.team-card-body {
display: flex;
flex-direction: column;
padding: 34px;
}
.team-role {
margin-bottom: 14px;
color: var(--accent-dark);
font-size: 13px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.05em;
}
.team-card-body blockquote {
margin: 8px 0 24px;
padding-left: 16px;
border-left: 3px solid var(--accent);
color: #555d72;
font-size: 16px;
font-style: italic;
}
.button-link {
align-self: flex-start;
margin-top: auto;
padding: 0;
background: transparent;
}
.team-placeholder-label {
align-self: flex-start;
margin-top: auto;
padding: 6px 10px;
border-radius: 999px;
color: #777d8d;
background: #f0f2f8;
font-size: 12px;
font-weight: 700;
}
.team-draft-notice {
display: flex;
margin-bottom: 22px;
padding: 14px 18px;
gap: 8px;
border: 1px solid #ead9a5;
border-radius: 14px;
color: #685522;
background: #fff9e8;
font-size: 14px;
line-height: 1.5;
}
.expert-slider {
grid-auto-columns: minmax(720px, 82%);
}
.expert-profile-card {
min-height: 760px;
grid-template-columns: minmax(230px, 34%) 1fr;
}
.expert-profile-photo {
position: relative;
min-height: 100%;
margin: 0;
overflow: hidden;
background: #dfe4f8;
}
.expert-profile-photo::after {
position: absolute;
inset: auto 0 0;
height: 34%;
background: linear-gradient(to top, rgba(24, 31, 64, 0.72), transparent);
content: "";
pointer-events: none;
}
.expert-profile-photo img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center top;
}
.expert-profile-photo figcaption {
position: absolute;
z-index: 1;
right: 16px;
bottom: 16px;
left: 16px;
color: rgba(255, 255, 255, 0.92);
font-size: 12px;
font-weight: 700;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.08em;
}
.expert-profile-content {
gap: 16px;
}
.expert-profile-content .team-role {
margin-bottom: 0;
}
.expert-profile-content h3,
.expert-profile-content p {
margin: 0;
}
.expert-profile-experience {
color: var(--accent-dark);
font-size: 17px;
}
.expert-profile-experience strong {
font-size: 24px;
}
.expert-profile-facts {
display: grid;
margin: 2px 0 0;
gap: 10px;
}
.expert-profile-facts div {
display: grid;
grid-template-columns: 112px 1fr;
padding-top: 10px;
gap: 12px;
border-top: 1px solid var(--line);
}
.expert-profile-facts dt {
color: #656d82;
font-size: 13px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.04em;
}
.expert-profile-facts dd {
margin: 0;
color: var(--text);
}
.expert-profile-results {
padding: 16px 18px;
border: 1px solid #dce3ff;
border-radius: 16px;
background: #f7f9ff;
}
.expert-profile-results > strong {
display: block;
margin-bottom: 9px;
color: var(--accent-dark);
}
.expert-profile-results ul {
display: grid;
margin: 0;
padding-left: 18px;
gap: 6px;
color: #51596f;
font-size: 14px;
}
.expert-profile-cta {
align-self: flex-start;
margin-top: auto;
}
.expert-profile-note {
color: #8a6320;
font-size: 12px;
line-height: 1.45;
}
.contact-map-section {
padding-top: 80px;
}
.contact-summary {
display: grid;
grid-template-columns: 1.25fr 1fr 1.45fr 1fr;
align-items: center;
margin-bottom: 44px;
gap: 30px;
}
.contact-brand img {
width: 285px;
}
.contact-summary-item {
display: grid;
justify-items: center;
gap: 10px;
text-align: center;
font-size: 16px;
line-height: 1.35;
}
.contact-icon {
display: grid;
width: 54px;
height: 54px;
place-items: center;
color: var(--accent);
}
.contact-icon svg {
display: block;
width: 44px;
height: 44px;
fill: currentColor;
}
.yandex-widgets-grid {
display: grid;
min-height: 520px;
grid-template-columns: minmax(320px, 0.75fr) minmax(0, 1.75fr);
gap: 34px;
}
.yandex-review-widget,
.yandex-map-widget {
position: relative;
min-height: 520px;
overflow: hidden;
border: 1px solid var(--line);
border-radius: 16px;
background: var(--white);
box-shadow: 0 18px 38px rgba(67, 84, 164, 0.1);
}
.yandex-review-widget iframe,
.yandex-map-widget iframe {
display: block;
width: 100%;
height: 100%;
min-height: 520px;
border: 0;
}
.yandex-review-widget > a {
position: absolute;
z-index: 2;
right: 16px;
bottom: 8px;
left: 16px;
color: #9a9ead;
font-family: Arial, sans-serif;
font-size: 10px;
text-align: center;
}
.consultation-modal {
position: fixed;
z-index: 300;
inset: 0;
display: grid;
place-items: center;
padding: 20px;
}
.consultation-modal[hidden] {
display: none;
}
.modal-backdrop {
position: absolute;
inset: 0;
background: rgba(28, 32, 53, 0.64);
backdrop-filter: blur(5px);
}
.modal-dialog {
position: relative;
z-index: 1;
width: min(100%, 620px);
max-height: calc(100vh - 40px);
padding: 40px;
overflow: auto;
border-radius: 28px;
background: var(--white);
box-shadow: 0 36px 90px rgba(18, 24, 56, 0.34);
}
.modal-dialog h2 {
margin-bottom: 12px;
font-size: clamp(34px, 5vw, 48px);
}
.modal-close {
position: absolute;
top: 16px;
right: 16px;
display: grid;
width: 42px;
height: 42px;
padding: 0;
place-items: center;
border: 1px solid var(--line);
border-radius: 50%;
color: var(--ink);
background: var(--white);
appearance: none;
}
.modal-close svg {
display: block;
width: 18px;
height: 18px;
fill: none;
stroke: currentColor;
stroke-width: 1.7;
stroke-linecap: round;
}
.modal-form {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
margin-top: 26px;
gap: 16px;
}
.document-upload-dialog {
width: min(100%, 700px);
}
.document-upload-form {
align-items: start;
}
.document-file-picker {
position: relative;
display: grid;
min-height: 126px;
grid-template-columns: 54px minmax(0, 1fr);
align-items: center;
padding: 22px;
gap: 16px;
overflow: hidden;
border: 1px dashed #aebff7;
border-radius: 16px;
background: #f7f9ff;
cursor: pointer;
transition: border-color 180ms ease, background 180ms ease, box-shadow 180ms ease;
}
.document-file-picker:hover,
.document-file-picker:focus-within {
border-color: #5577ea;
background: #f0f4ff;
box-shadow: 0 0 0 4px rgba(85, 119, 234, 0.1);
}
.document-file-picker input[type="file"] {
position: absolute;
z-index: 2;
inset: 0;
width: 100%;
height: 100%;
min-height: 0;
padding: 0;
border: 0;
opacity: 0;
cursor: pointer;
}
.document-file-icon {
display: grid;
width: 54px;
height: 54px;
place-items: center;
border-radius: 15px;
color: #fff;
background: linear-gradient(145deg, #3f77ef, #7890ef);
box-shadow: 0 10px 22px rgba(64, 103, 218, 0.2);
}
.document-file-icon svg {
width: 27px;
height: 27px;
fill: none;
stroke: currentColor;
stroke-width: 1.9;
stroke-linecap: round;
stroke-linejoin: round;
}
.document-file-copy {
display: grid;
gap: 5px;
}
.document-file-copy strong {
color: #172345;
font-size: 17px;
}
.document-file-copy small {
color: #74809d;
font-size: 13px;
line-height: 1.4;
}
.document-files-field.has-error .document-file-picker {
border-color: var(--danger);
}
.document-file-list {
display: grid;
margin: 10px 0 0;
padding: 0;
gap: 7px;
list-style: none;
}
.document-file-list:empty {
display: none;
}
.document-file-list li {
display: grid;
grid-template-columns: 18px minmax(0, 1fr) auto;
align-items: center;
padding: 8px 10px;
gap: 8px;
border-radius: 9px;
color: #44506f;
background: #f3f6ff;
font-size: 12px;
}
.document-file-list li span:nth-child(2) {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.document-file-list li small {
color: #7a849d;
}
.document-upload-security {
margin: -2px 0 0;
color: #6f7890;
font-size: 12px;
text-align: center;
}
.document-upload-security span {
color: #3673ed;
font-weight: 800;
}
a[data-future-link="true"] {
cursor: default;
opacity: 0.72;
}
.template-preview-link[data-future-link="true"] {
display: none;
}
.messenger-links {
display: flex;
margin-top: 14px;
gap: 8px;
}
.messenger-links a {
display: inline-grid;
min-width: 44px;
min-height: 38px;
place-items: center;
margin: 0 !important;
padding: 6px 10px;
border: 1px solid rgba(255, 255, 255, 0.24);
border-radius: 10px;
color: var(--white) !important;
background: rgba(255, 255, 255, 0.08);
font-size: 12px !important;
font-weight: 700;
}
.messenger-phone {
margin-top: 8px !important;
color: var(--white) !important;
font-size: 16px !important;
}
.contact-widget {
position: fixed;
z-index: 250;
right: 24px;
bottom: 24px;
display: grid;
justify-items: end;
}
.contact-widget-panel {
position: absolute;
right: 0;
bottom: 76px;
width: min(330px, calc(100vw - 32px));
max-height: calc(100dvh - 116px);
overflow-y: auto;
overscroll-behavior: contain;
padding: 16px;
border: 1px solid rgba(111, 133, 233, 0.24);
border-radius: 20px;
background: rgba(255, 255, 255, 0.98);
box-shadow: 0 24px 60px rgba(36, 44, 86, 0.24);
transform-origin: right bottom;
}
.contact-widget-panel[hidden] {
display: none;
}
.contact-widget-heading {
display: grid;
padding: 4px 4px 13px;
gap: 2px;
}
.contact-widget-heading strong {
color: var(--ink);
font-size: 18px;
}
.contact-widget-heading span {
color: var(--muted);
font-size: 13px;
}
.contact-widget-action {
display: grid;
width: 100%;
min-height: 62px;
grid-template-columns: 42px 1fr;
align-items: center;
padding: 9px 10px;
gap: 11px;
border: 0;
border-radius: 14px;
color: var(--ink);
background: transparent;
text-align: left;
transition: background 0.18s ease, transform 0.18s ease;
}
.contact-widget-action:hover,
.contact-widget-action:focus-visible {
color: var(--ink);
background: var(--accent-pale);
transform: translateX(-2px);
}
.contact-widget-action:hover .contact-widget-icon,
.contact-widget-action:focus-visible .contact-widget-icon {
transform: scale(1.06) rotate(-2deg);
}
.contact-widget-action > span:last-child {
display: grid;
min-width: 0;
gap: 1px;
}
.contact-widget-action strong {
font-size: 15px;
line-height: 1.25;
}
.contact-widget-action small {
color: var(--muted);
font-size: 12px;
line-height: 1.3;
}
.contact-widget-callback {
color: var(--white);
background: var(--accent);
}
.contact-widget-callback:hover,
.contact-widget-callback:focus-visible {
color: var(--white);
background: var(--accent-dark);
}
.contact-widget-callback small {
color: rgba(255, 255, 255, 0.8);
}
.contact-widget-icon {
position: relative;
display: grid;
width: 44px;
height: 44px;
place-items: center;
overflow: hidden;
border: 1px solid rgba(255, 255, 255, 0.34);
border-radius: 14px;
color: var(--white);
background: linear-gradient(145deg, #7890ef, #5369cf);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.26), 0 7px 16px rgba(64, 78, 148, 0.2);
transition: transform 0.18s ease, box-shadow 0.18s ease;
}
.contact-widget-icon::after {
position: absolute;
inset: 0;
background: linear-gradient(145deg, rgba(255, 255, 255, 0.18), transparent 52%);
content: "";
pointer-events: none;
}
.contact-widget-icon svg {
position: relative;
z-index: 1;
width: 24px;
height: 24px;
fill: none;
stroke: currentColor;
stroke-linecap: round;
stroke-linejoin: round;
stroke-width: 1.75;
}
.contact-widget-callback .contact-widget-icon {
background: rgba(255, 255, 255, 0.14);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.24), 0 7px 16px rgba(49, 61, 123, 0.2);
}
.contact-widget-icon-telegram {
background: linear-gradient(145deg, #36b9f1, #188fce);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0 7px 16px rgba(34, 158, 217, 0.26);
}
.contact-widget-icon-max {
background: linear-gradient(145deg, #8976ff, #5a46dc);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.28), 0 7px 16px rgba(92, 70, 220, 0.25);
}
.contact-widget-icon-whatsapp {
background: linear-gradient(145deg, #42d984, #1faa63);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0 7px 16px rgba(39, 184, 109, 0.25);
}
.contact-widget-icon.contact-widget-icon-brand {
padding: 5px;
border-color: #e3e7f4;
background: var(--white);
box-shadow: 0 7px 16px rgba(52, 63, 119, 0.14);
}
.contact-widget-icon.contact-widget-icon-brand::after {
display: none;
}
.contact-widget-icon-brand img {
display: block;
width: 32px;
height: 32px;
object-fit: contain;
}
.contact-widget-toggle {
position: relative;
display: grid;
width: 62px;
height: 62px;
place-items: center;
border: 0;
border-radius: 50%;
color: var(--white);
background: linear-gradient(145deg, var(--accent), var(--accent-dark));
box-shadow: 0 16px 34px rgba(79, 100, 203, 0.38);
transition: transform 0.18s ease, box-shadow 0.18s ease;
}
.contact-widget-toggle::after {
position: absolute;
top: 1px;
right: 1px;
width: 13px;
height: 13px;
border: 2px solid var(--white);
border-radius: 50%;
background: #34c97b;
content: "";
}
.contact-widget-toggle:hover,
.contact-widget-toggle:focus-visible {
transform: translateY(-2px);
box-shadow: 0 20px 40px rgba(79, 100, 203, 0.46);
}
.contact-widget-toggle svg {
width: 29px;
height: 29px;
fill: none;
stroke: currentColor;
stroke-linecap: round;
stroke-linejoin: round;
stroke-width: 1.8;
}
.contact-widget-close-icon {
display: none;
}
.contact-widget-toggle[aria-expanded="true"] .contact-widget-open-icon {
display: none;
}
.contact-widget-toggle[aria-expanded="true"] .contact-widget-close-icon {
display: block;
}
.contact-widget-toggle[aria-expanded="true"]::after {
display: none;
}
.cta-attention:not(:disabled) {
background-image: linear-gradient(110deg, var(--accent) 0%, #8195f1 48%, var(--accent-dark) 100%);
background-size: 220% 100%;
animation: cta-attention-pulse 5.2s ease-in-out infinite;
will-change: transform, box-shadow, background-position;
}
.header-actions .cta-attention:not(:disabled) {
animation-delay: -1.4s;
}
.cta-attention:not(:disabled):hover,
.cta-attention:not(:disabled):focus-visible {
background-image: none;
animation: none;
transform: translateY(-2px) scale(1.015);
box-shadow: 0 15px 32px rgba(78, 100, 206, 0.34);
}
@keyframes cta-attention-pulse {
0%,
62%,
100% {
background-position: 0% 50%;
transform: translateY(0) scale(1);
box-shadow: 0 8px 20px rgba(78, 100, 206, 0.18);
}
74% {
background-position: 100% 50%;
transform: translateY(-1px) scale(1.012);
box-shadow: 0 15px 34px rgba(78, 100, 206, 0.38);
}
86% {
background-position: 35% 50%;
transform: translateY(0) scale(1);
box-shadow: 0 10px 24px rgba(78, 100, 206, 0.24);
}
}
@media (prefers-reduced-motion: reduce) {
.cta-attention:not(:disabled) {
background-position: 0% 50%;
animation: none;
transform: none;
}
}
@media (max-width: 1100px) {
.mega-menu-shell {
grid-template-columns: 260px minmax(0, 1fr);
max-height: calc(100vh - 120px);
overflow: auto;
}
.mega-menu-secondary {
padding: 22px;
}
.mega-link-groups {
gap: 18px;
}
.direction-grid {
grid-template-columns: 1fr 1fr;
}
.direction-card-primary {
grid-column: 1 / -1;
}
.contact-summary {
grid-template-columns: 1fr 1fr;
}
.contact-brand img {
margin-inline: auto;
}
}
@media (max-width: 920px) {
.nav-item-has-mega {
width: 100%;
}
.nav-link {
width: 100%;
justify-content: space-between;
padding: 9px 0;
font-size: 18px;
}
.mega-menu {
position: static;
width: 100%;
max-height: none;
display: none;
padding: 12px 0 0;
border: 0;
border-radius: 0;
opacity: 1;
visibility: visible;
box-shadow: none;
transform: none;
pointer-events: auto;
}
.mega-menu.is-open {
display: block;
transform: none;
}
.mega-menu-shell {
grid-template-columns: 1fr;
min-height: 0;
max-height: none;
gap: 10px;
overflow: visible;
}
.mega-menu-primary {
padding: 6px;
}
.mega-menu-secondary {
padding: 20px;
}
.mega-link-groups {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.mega-primary-item.is-active .mega-branch-arrow {
margin-top: -3px;
transform: rotate(135deg);
}
.direction-grid {
grid-template-columns: 1fr;
}
.direction-card-primary {
grid-column: auto;
}
.team-slider {
grid-auto-columns: minmax(460px, 82%);
}
.team-card {
grid-template-columns: 170px 1fr;
}
.expert-slider {
grid-auto-columns: minmax(600px, 94%);
}
.expert-profile-card {
grid-template-columns: 200px 1fr;
}
.yandex-widgets-grid {
grid-template-columns: 1fr;
}
.yandex-review-widget,
.yandex-map-widget,
.yandex-review-widget iframe,
.yandex-map-widget iframe {
min-height: 480px;
}
}
@media (max-width: 640px) {
.mega-panel-heading {
display: grid;
gap: 14px;
}
.mega-panel-heading > a {
width: fit-content;
}
.mega-link-groups {
grid-template-columns: 1fr;
gap: 22px;
}
.mega-menu-secondary {
padding: 18px 16px;
}
.hero-visual {
min-height: 420px;
}
.yandex-award-badge {
top: 2px;
right: 2px;
}
.direction-card {
min-height: auto;
padding: 24px;
}
.case-image,
.case-proof-gallery {
height: 240px;
flex-basis: 240px;
}
.team-heading {
gap: 18px;
}
.slider-controls {
justify-content: flex-start;
}
.team-slider {
grid-auto-columns: 92%;
}
.team-card {
grid-template-columns: 1fr;
}
.team-photo {
min-height: 230px;
}
.team-card-body {
padding: 26px 22px;
}
.team-draft-notice {
display: grid;
}
.expert-slider {
grid-auto-columns: 94%;
}
.expert-profile-card {
min-height: 0;
grid-template-columns: 1fr;
}
.expert-profile-photo {
min-height: 360px;
max-height: 420px;
}
.expert-profile-content {
gap: 14px;
}
.expert-profile-facts div {
grid-template-columns: 1fr;
gap: 4px;
}
.contact-summary {
grid-template-columns: 1fr;
}
.contact-summary-item {
padding: 20px 0;
border-top: 1px solid var(--line);
}
.yandex-review-widget,
.yandex-review-widget iframe {
min-height: 560px;
}
.yandex-map-widget,
.yandex-map-widget iframe {
min-height: 420px;
}
.modal-dialog {
padding: 34px 20px 24px;
border-radius: 22px;
}
.modal-form {
grid-template-columns: 1fr;
}
.mobile-cta {
border: 0;
}
.contact-widget {
right: 14px;
bottom: 78px;
}
.contact-widget-panel {
bottom: 70px;
width: min(320px, calc(100vw - 28px));
max-height: calc(100dvh - 164px);
}
.contact-widget-toggle {
width: 58px;
height: 58px;
}
} .process-result-section {
position: relative;
overflow: hidden;
scroll-margin-top: 104px;
background:
radial-gradient(circle at 79% 2%, rgba(111, 133, 233, 0.07), transparent 28%),
var(--white);
}
.process-result-heading {
display: grid;
grid-template-columns: minmax(0, 1fr) auto;
gap: 48px;
align-items: start;
margin-bottom: 54px;
}
.process-result-heading-copy {
max-width: 840px;
}
.process-result-heading .eyebrow {
margin-bottom: 12px;
}
.process-result-heading h2 {
max-width: 820px;
margin-bottom: 12px;
color: #151d3d;
font-size: clamp(38px, 4.1vw, 62px);
line-height: 1.08;
letter-spacing: -0.035em;
}
.process-result-heading-copy > p:last-child {
max-width: 680px;
margin: 0;
color: #63708f;
font-size: clamp(19px, 1.7vw, 24px);
}
.process-result-link {
display: inline-flex;
gap: 18px;
align-items: center;
margin-top: 68px;
color: #1468ee;
font-size: 19px;
font-weight: 600;
white-space: nowrap;
text-decoration: none;
}
.process-result-link span {
font-size: 30px;
line-height: 1;
transition: transform 180ms ease;
}
.process-result-link:hover span,
.process-result-link:focus-visible span {
transform: translateX(5px);
}
.process-result-timeline {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 0;
margin: 0;
padding: 0;
list-style: none;
}
.process-result-step {
position: relative;
min-width: 0;
padding-right: 34px;
}
.process-result-step:not(:last-child)::before {
position: absolute;
top: 42px;
right: 16px;
width: 1px;
height: 172px;
background: #cbdcff;
content: "";
}
.process-result-step:not(:last-child)::after {
position: absolute;
top: 118px;
right: 12px;
width: 9px;
height: 9px;
border-radius: 50%;
background: #9ec0ff;
box-shadow: 0 0 0 4px var(--white);
content: "";
}
.process-result-icon {
display: inline-grid;
width: 76px;
height: 76px;
margin-bottom: 18px;
place-items: center;
border-radius: 50%;
color: #1267ec;
background: linear-gradient(145deg, #edf4ff, #dce9ff);
}
.process-result-icon svg {
width: 43px;
height: 43px;
fill: none;
stroke: currentColor;
stroke-width: 2.8;
stroke-linecap: round;
stroke-linejoin: round;
}
.process-result-step h3 {
max-width: 220px;
margin: 0 0 10px;
color: #151d3d;
font-size: clamp(20px, 1.65vw, 25px);
line-height: 1.08;
letter-spacing: -0.025em;
}
.process-result-step p {
max-width: 230px;
margin: 0;
color: #687494;
font-size: 16px;
line-height: 1.45;
}
@media (max-width: 1100px) {
.process-result-heading {
grid-template-columns: 1fr;
gap: 8px;
}
.process-result-link {
margin-top: 0;
}
.process-result-timeline {
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 40px 22px;
}
.process-result-step:not(:last-child)::before,
.process-result-step:not(:last-child)::after {
display: none;
}
}
@media (max-width: 720px) {
.process-result-heading {
margin-bottom: 38px;
}
.process-result-heading h2 {
font-size: clamp(34px, 10vw, 46px);
}
.process-result-link {
gap: 10px;
align-items: flex-start;
font-size: 16px;
white-space: normal;
}
.process-result-timeline {
display: block;
}
.process-result-step {
display: grid;
grid-template-columns: 66px minmax(0, 1fr);
gap: 18px;
min-height: 142px;
padding: 0 0 30px;
}
.process-result-step:not(:last-child)::before {
display: block;
top: 66px;
right: auto;
bottom: 0;
left: 32px;
width: 1px;
height: auto;
}
.process-result-step:not(:last-child)::after {
display: block;
top: 96px;
right: auto;
left: 28px;
}
.process-result-icon {
width: 66px;
height: 66px;
margin: 0;
}
.process-result-icon svg {
width: 37px;
height: 37px;
}
.process-result-step h3,
.process-result-step p {
max-width: none;
}
.process-result-step h3 {
font-size: 22px;
}
} .process-result-section {
padding-block: 78px 96px;
background:
radial-gradient(circle at 86% 12%, rgba(107, 148, 255, 0.18), transparent 31%),
radial-gradient(circle at 8% 94%, rgba(168, 195, 255, 0.13), transparent 27%),
#f9fbff;
}
.lead-section {
position: relative;
overflow: hidden;
padding: 58px 0 0;
color: #fff;
background:
radial-gradient(circle at 43% 72%, rgba(191, 220, 255, 0.55), transparent 19%),
linear-gradient(118deg, #3677f4 0%, #72a2ff 52%, #2d67ed 100%);
}
@media (max-width: 720px) {
.process-result-section {
padding-block: 70px;
}
.lead-section {
padding-top: 68px;
}
} .mobile-header-phone,
.mobile-menu-actions,
.mobile-nav-only,
.mobile-return-link,
.mobile-menu-note,
.mobile-nav-item-icon,
.mobile-nav-chevron {
display: none;
}
.site-header .header-row {
min-height: 94px;
grid-template-columns: 235px 190px minmax(420px, 1fr) auto;
gap: 24px;
}
.site-header .brand img {
width: 230px;
}
.site-header .primary-nav {
gap: 28px;
color: #142044;
font-size: 16px;
}
.site-header .nav-services-toggle {
position: relative;
color: #2169ed;
font-weight: 700;
}
.site-header .nav-services-toggle::after {
position: absolute;
right: 0;
bottom: -25px;
left: 0;
height: 3px;
border-radius: 4px;
background: #246cf0;
content: "";
}
.site-header .phone {
display: inline-flex;
align-items: center;
gap: 9px;
color: #142044;
font-size: 16px;
font-weight: 700;
}
.site-header .phone::before {
color: #2470ef;
content: "☎";
font-size: 21px;
transform: rotate(-13deg);
}
.site-header .header-actions .button {
min-height: 54px;
padding-inline: 24px;
border-radius: 12px;
}
.site-header .mega-menu {
top: calc(100% + 1px);
width: min(calc(100vw - 64px), 1320px);
padding: 18px;
border-color: #d4e0fb;
border-radius: 20px;
background: rgba(255, 255, 255, 0.98);
box-shadow: 0 26px 80px rgba(42, 74, 145, 0.15);
}
.site-header .mega-menu-shell {
min-height: 414px;
grid-template-columns: 320px minmax(0, 1fr);
gap: 12px;
}
.site-header .mega-menu-primary {
padding: 10px;
gap: 12px;
border-color: #d6e2fb;
border-radius: 17px;
background: linear-gradient(145deg, #fbfdff, #f6f9ff);
}
.site-header .mega-primary-item {
grid-template-columns: 64px minmax(0, 1fr) 44px;
min-height: 105px;
border-color: #dbe5f8;
border-radius: 14px;
background: rgba(255, 255, 255, 0.82);
}
.site-header .mega-primary-item:is(:hover, :focus-within),
.site-header .mega-primary-item.is-active {
border-color: #4d83f4;
background: linear-gradient(135deg, #f4f8ff, #fff);
box-shadow: 0 10px 25px rgba(45, 103, 229, 0.08);
}
.mega-primary-icon {
display: grid;
width: 50px;
height: 50px;
margin-left: 12px;
place-items: center;
border-radius: 16px;
color: #236df0;
background: #eef5ff;
}
.mega-primary-icon svg,
.mobile-header-phone svg,
.mobile-menu-phone svg,
.mobile-nav-item-icon svg,
.mobile-service-icon svg {
width: 30px;
height: 30px;
fill: none;
stroke: currentColor;
stroke-width: 2.3;
stroke-linecap: round;
stroke-linejoin: round;
}
.site-header .mega-primary-link {
padding: 17px 8px 17px 10px;
}
.site-header .mega-primary-link strong {
color: #142044;
font-size: 17px;
line-height: 1.22;
}
.site-header .mega-primary-link small {
color: #7180a2;
font-size: 13px;
}
.site-header .mega-branch-toggle {
width: 40px;
height: 40px;
border-radius: 50%;
color: #246cf0;
}
.site-header .mega-primary-item.is-active .mega-branch-toggle {
color: #fff;
background: linear-gradient(145deg, #4f85f7, #1765ed);
}
.site-header .mega-menu-secondary {
padding: 28px 34px;
border-color: #d6e2fb;
border-radius: 17px;
background: rgba(255, 255, 255, 0.98);
}
.site-header .mega-panel-heading {
margin-bottom: 26px;
}
.site-header .mega-panel-heading span {
color: #2a6cf0;
font-size: 12px;
letter-spacing: 0.11em;
}
.site-header .mega-panel-heading strong {
color: #101b40;
font-size: 30px;
}
.site-header .mega-panel-heading > a {
padding: 12px 18px;
border-radius: 12px;
color: #1768ed;
background: #f2f6ff;
font-size: 14px;
}
.site-header .mega-link-groups {
gap: 34px;
}
.site-header .mega-link-group + .mega-link-group {
padding-left: 28px;
border-left: 1px solid #e0e7f7;
}
.site-header .mega-group-title {
color: #53658e;
font-size: 13px;
letter-spacing: 0.08em;
}
.site-header .mega-link-group > a:not(.template-preview-link) {
color: #26385f;
font-size: 15px;
}
@media (max-width: 1280px) and (min-width: 1181px) {
.site-header .header-row {
grid-template-columns: 185px minmax(0, 1fr) auto;
gap: 18px;
}
.site-header .brand img {
width: 185px;
}
.site-header .header-service-link,
.site-header .phone {
display: none;
}
.site-header .primary-nav {
gap: 20px;
font-size: 15px;
}
}
@media (max-width: 1180px) and (min-width: 921px) {
.site-header .header-row {
grid-template-columns: 185px minmax(390px, 1fr) auto;
gap: 16px;
}
.site-header .brand img {
width: 185px;
}
.site-header .header-service-link {
display: none;
}
.site-header .primary-nav {
gap: 18px;
font-size: 14px;
}
.site-header .phone {
display: none;
}
}
@media (max-width: 920px) {
body.menu-open {
overflow: hidden;
}
body.menu-open .mobile-cta,
body.menu-open .contact-widget {
display: none !important;
}
.site-header {
background: rgba(255, 255, 255, 0.985);
}
.site-header .header-row {
min-height: 82px;
grid-template-columns: minmax(0, 1fr) 50px 50px;
gap: 8px;
}
.site-header .brand img {
width: min(220px, 100%);
}
.site-header .header-service-link,
.site-header .header-actions {
display: none;
}
.mobile-header-phone {
display: grid;
width: 48px;
height: 48px;
grid-column: 2;
place-items: center;
border-radius: 50%;
color: #1769ef;
background: #eef5ff;
}
.mobile-header-phone svg {
width: 25px;
height: 25px;
}
.site-header .menu-toggle {
display: grid;
width: 48px;
height: 48px;
grid-column: 3;
border: 0;
border-left: 1px solid #dce5f8;
border-radius: 0;
}
.site-header .primary-nav {
position: fixed;
z-index: 95;
top: 82px;
right: 0;
bottom: auto;
left: 0;
display: none;
height: calc(100dvh - 82px);
max-height: calc(100dvh - 82px);
padding: 16px 18px 34px;
gap: 12px;
overflow-y: auto;
overscroll-behavior: contain;
border-top: 1px solid #dce5f8;
color: #142044;
background: linear-gradient(145deg, #f9fbff, #fff);
box-shadow: none;
}
.site-header .primary-nav.is-open {
display: flex;
}
.site-header .nav-item-has-mega {
display: none;
}
.mobile-menu-actions {
display: grid;
padding: 12px;
gap: 10px;
border: 1px solid #d8e3fa;
border-radius: 16px;
background: #f5f9ff;
}
.site-header .mobile-menu-phone {
display: flex;
align-items: center;
gap: 14px;
padding: 2px 0 8px;
color: #142044;
font-size: 21px;
font-weight: 700;
}
.mobile-menu-phone > span {
display: grid;
width: 44px;
height: 44px;
place-items: center;
border-radius: 50%;
color: #1769ef;
background: #e8f1ff;
}
.mobile-menu-phone svg {
width: 23px;
height: 23px;
}
.mobile-menu-consultation {
display: flex;
width: 100%;
min-height: 58px;
justify-content: center;
gap: 24px;
border-radius: 11px;
font-size: 18px;
}
.mobile-nav-only {
display: block;
}
.mobile-services-root,
.mobile-service-branch {
border: 1px solid #d6e2fa;
border-radius: 15px;
background: rgba(255, 255, 255, 0.86);
}
.mobile-services-root > summary,
.mobile-service-branch > summary {
display: grid;
grid-template-columns: 48px minmax(0, 1fr) 24px;
align-items: center;
gap: 10px;
min-height: 64px;
padding: 8px 14px;
cursor: pointer;
list-style: none;
}
.mobile-services-root > summary::-webkit-details-marker,
.mobile-service-branch > summary::-webkit-details-marker {
display: none;
}
.mobile-services-root > summary {
color: #1769ef;
font-size: 19px;
}
.mobile-service-tree {
display: grid;
padding: 0 8px 8px;
gap: 8px;
}
.mobile-service-branch > summary {
min-height: 70px;
grid-template-columns: 52px minmax(0, 1fr) 22px;
padding-inline: 12px;
}
.mobile-service-branch > summary strong {
font-size: 18px;
line-height: 1.2;
}
.mobile-service-icon,
.mobile-nav-item-icon {
display: grid;
width: 44px;
height: 44px;
place-items: center;
border-radius: 50%;
color: #1769ef;
background: #edf4ff;
}
.mobile-service-icon svg,
.mobile-nav-item-icon svg {
width: 26px;
height: 26px;
}
.mobile-nav-chevron {
display: block;
width: 10px;
height: 10px;
justify-self: center;
border-right: 2px solid #1769ef;
border-bottom: 2px solid #1769ef;
transform: rotate(45deg);
transition: transform 0.18s ease;
}
details[open] > summary > .mobile-nav-chevron {
margin-top: 6px;
transform: rotate(225deg);
}
.mobile-service-groups {
display: grid;
padding: 2px 24px 20px 74px;
gap: 18px;
}
.mobile-service-groups > div {
display: grid;
padding-top: 16px;
gap: 8px;
border-top: 1px solid #e0e7f6;
}
.mobile-service-groups > div:first-child {
padding-top: 4px;
border-top: 0;
}
.mobile-service-groups span {
color: #5d6f97;
font-size: 12px;
font-weight: 750;
letter-spacing: 0.08em;
text-transform: uppercase;
}
.site-header .mobile-service-groups a {
padding: 0;
color: #4f5f82;
font-size: 16px;
line-height: 1.32;
white-space: normal;
}
.site-header .mobile-nav-row {
display: grid;
grid-template-columns: 44px minmax(0, 1fr) 22px;
align-items: center;
gap: 12px;
min-height: 62px;
padding: 8px 14px;
border: 1px solid #d6e2fa;
border-radius: 0;
color: #142044;
background: #fff;
font-size: 18px;
font-weight: 600;
}
.site-header .mobile-nav-row + .mobile-nav-row {
margin-top: -13px;
}
.site-header .mobile-nav-row:first-of-type {
border-radius: 14px 14px 0 0;
}
.site-header .mobile-nav-row:nth-of-type(4) {
border-radius: 0 0 14px 14px;
}
.site-header .mobile-return-link {
display: flex;
min-height: 58px;
align-items: center;
justify-content: center;
gap: 20px;
padding: 12px 18px;
border: 1px solid #3f78ef;
border-radius: 14px;
color: #1769ef;
background: #fff;
font-size: 17px;
font-weight: 650;
}
.mobile-menu-note {
display: block;
max-width: 440px;
margin: 0 auto;
color: #75809b;
font-size: 13px;
line-height: 1.4;
text-align: center;
}
}
@media (max-width: 480px) {
.site-header .header-row {
width: min(calc(100% - 24px), var(--shell));
}
.site-header .brand img {
width: min(205px, 100%);
}
.site-header .primary-nav {
padding-inline: 12px;
}
.mobile-service-groups {
padding-left: 66px;
}
.site-header .mobile-menu-phone {
font-size: 19px;
}
} .company-team-section {
position: relative;
overflow: hidden;
background:
radial-gradient(circle at 92% 8%, rgba(102, 139, 245, 0.16), transparent 29%),
linear-gradient(180deg, #f8faff 0%, #ffffff 82%);
}
.company-team-section::before {
position: absolute;
top: -190px;
left: -150px;
width: 440px;
height: 440px;
border: 1px solid rgba(111, 133, 233, 0.13);
border-radius: 50%;
content: "";
pointer-events: none;
}
.company-team-section .shell {
position: relative;
z-index: 1;
}
.company-team-heading {
align-items: end;
margin-bottom: 42px;
}
.company-team-heading h2 {
max-width: 760px;
color: #111b3d;
}
.company-team-heading > p {
max-width: 420px;
color: #68738f;
font-size: 17px;
line-height: 1.65;
}
.company-team-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
align-items: stretch;
gap: 20px;
}
.company-team-card {
display: flex;
min-width: 0;
overflow: hidden;
flex-direction: column;
border: 1px solid #d6e1fb;
border-radius: 26px;
background: rgba(255, 255, 255, 0.94);
box-shadow: 0 20px 50px rgba(51, 74, 145, 0.09);
transition: transform 0.32s ease, border-color 0.32s ease, box-shadow 0.32s ease;
}
.company-team-card:hover,
.company-team-card:focus-within {
border-color: #a9bdf6;
box-shadow: 0 28px 62px rgba(51, 74, 145, 0.15);
transform: translateY(-5px);
}
.company-team-photo {
position: relative;
height: clamp(320px, 29vw, 390px);
margin: 0;
overflow: hidden;
background: #e9eef9;
}
.company-team-photo::after {
position: absolute;
inset: auto 0 0;
height: 34%;
background: linear-gradient(180deg, transparent, rgba(11, 24, 57, 0.18));
content: "";
pointer-events: none;
}
.company-team-photo img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center top;
transform-origin: center top;
transition: transform 0.5s ease;
}
.company-team-card:hover .company-team-photo img,
.company-team-card:focus-within .company-team-photo img {
transform: scale(1.025);
}
.company-team-content {
display: flex;
min-height: 286px;
flex: 1;
flex-direction: column;
align-items: flex-start;
padding: 28px 28px 26px;
}
.company-team-role {
display: block;
margin-bottom: 13px;
color: #4d69df;
font-size: 12px;
font-weight: 800;
line-height: 1.35;
letter-spacing: 0.1em;
text-transform: uppercase;
}
.company-team-content h3 {
margin: 0 0 17px;
color: #111b3d;
font-size: clamp(26px, 2vw, 32px);
line-height: 1.08;
letter-spacing: -0.025em;
}
.company-team-content p {
margin: 0 0 24px;
color: #68738f;
font-size: 15px;
line-height: 1.58;
}
.company-team-action {
display: inline-flex;
align-items: center;
gap: 12px;
margin-top: auto;
padding: 0;
border: 0;
color: #2767ed;
background: transparent;
font: inherit;
font-size: 15px;
font-weight: 750;
cursor: pointer;
}
.company-team-action span {
font-size: 20px;
line-height: 1;
transition: transform 0.22s ease;
}
.company-team-action:hover span,
.company-team-action:focus-visible span {
transform: translateX(4px);
}
.company-team-action:focus-visible {
outline: 2px solid #2767ed;
outline-offset: 5px;
}
.company-team-card-group {
border-color: transparent;
background: linear-gradient(145deg, #123b9d 0%, #216df0 55%, #74a5ff 100%);
}
.company-team-card-group .company-team-content {
color: #fff;
}
.company-team-card-group .company-team-role,
.company-team-card-group .company-team-content h3,
.company-team-card-group .company-team-content p,
.company-team-card-group .company-team-action {
color: #fff;
}
.company-team-card-group .company-team-role {
color: rgba(255, 255, 255, 0.78);
}
.company-team-card-group .company-team-content p {
color: rgba(255, 255, 255, 0.84);
}
.company-team-illustration {
position: relative;
display: grid;
height: clamp(320px, 29vw, 390px);
place-items: center;
overflow: hidden;
background:
radial-gradient(circle at 50% 42%, rgba(255, 255, 255, 0.2), transparent 31%),
linear-gradient(145deg, rgba(255, 255, 255, 0.08), transparent);
}
.company-team-illustration::before,
.company-team-illustration::after {
position: absolute;
border: 1px solid rgba(255, 255, 255, 0.18);
border-radius: 50%;
content: "";
}
.company-team-illustration::before {
width: 330px;
height: 330px;
}
.company-team-illustration::after {
width: 240px;
height: 240px;
}
.company-team-illustration svg {
position: relative;
z-index: 1;
width: min(86%, 330px);
fill: rgba(255, 255, 255, 0.1);
stroke: rgba(255, 255, 255, 0.92);
stroke-linecap: round;
stroke-linejoin: round;
stroke-width: 7;
}
.company-team-mark {
position: absolute;
top: 24px;
left: 26px;
z-index: 2;
display: grid;
width: 50px;
height: 50px;
place-items: center;
border: 1px solid rgba(255, 255, 255, 0.4);
border-radius: 15px;
color: #fff;
background: rgba(255, 255, 255, 0.14);
font-size: 24px;
font-weight: 800;
backdrop-filter: blur(8px);
}
.company-team-illustration-caption {
position: absolute;
right: 24px;
bottom: 22px;
left: 24px;
z-index: 2;
color: rgba(255, 255, 255, 0.88);
font-size: 14px;
font-weight: 650;
line-height: 1.35;
text-align: center;
}
@media (max-width: 980px) {
.company-team-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.company-team-card-group {
grid-column: 1 / -1;
display: grid;
grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
}
.company-team-card-group .company-team-illustration {
height: 100%;
min-height: 330px;
}
}
@media (max-width: 680px) {
.company-team-heading {
margin-bottom: 28px;
}
.company-team-grid {
grid-template-columns: minmax(0, 1fr);
}
.company-team-card-group {
grid-column: auto;
display: flex;
}
.company-team-photo,
.company-team-illustration,
.company-team-card-group .company-team-illustration {
height: min(112vw, 440px);
min-height: 0;
}
.company-team-content {
min-height: 0;
padding: 24px 22px;
}
.company-team-content h3 {
font-size: 28px;
}
}
@media (prefers-reduced-motion: reduce) {
.company-team-card,
.company-team-photo img,
.company-team-action span {
transition: none;
}
} .showcase-carousel {
--carousel-gap: 20px;
position: relative;
}
.showcase-carousel-controls {
display: flex;
min-height: 46px;
align-items: center;
justify-content: flex-end;
margin: -14px 0 22px;
gap: 12px;
}
.showcase-carousel-arrow {
display: inline-grid;
width: 44px;
height: 44px;
place-items: center;
border: 1px solid var(--card-border);
border-radius: 50%;
color: var(--brand-primary);
background: var(--surface-card);
box-shadow: 0 10px 24px rgba(51, 74, 145, 0.1);
font: inherit;
font-size: 22px;
line-height: 1;
cursor: pointer;
transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease, transform 220ms ease, opacity 220ms ease;
}
.showcase-carousel-arrow:hover,
.showcase-carousel-arrow:focus-visible {
border-color: var(--brand-primary);
color: #fff;
background: var(--brand-primary);
transform: translateY(-2px);
}
.showcase-carousel-arrow:focus-visible {
outline: 3px solid rgba(40, 105, 242, 0.24);
outline-offset: 3px;
}
.showcase-carousel-arrow:disabled {
opacity: 0.36;
cursor: default;
transform: none;
}
.showcase-carousel-dots {
display: flex;
min-width: 54px;
align-items: center;
justify-content: center;
gap: 7px;
}
.showcase-carousel-dot {
width: 8px;
height: 8px;
padding: 0;
border: 0;
border-radius: 999px;
background: #b9c7ea;
cursor: pointer;
transition: width 240ms ease, background-color 240ms ease, transform 240ms ease;
}
.showcase-carousel-dot:hover,
.showcase-carousel-dot:focus-visible {
background: #7799ee;
transform: scale(1.15);
}
.showcase-carousel-dot:focus-visible {
outline: 3px solid rgba(40, 105, 242, 0.24);
outline-offset: 3px;
}
.showcase-carousel-dot[aria-current="true"] {
width: 26px;
background: var(--brand-primary);
}
.showcase-carousel-track,
.case-grid.showcase-carousel-track,
.company-team-grid.showcase-carousel-track {
display: grid;
grid-template-columns: none;
grid-auto-flow: column;
grid-auto-columns: 45.8%;
align-items: stretch;
gap: var(--carousel-gap);
margin: -8px -8px -34px;
padding: 8px 8px 70px;
overflow-x: auto;
overscroll-behavior-inline: contain;
scroll-behavior: smooth;
scroll-snap-type: inline mandatory;
scrollbar-width: none;
cursor: grab;
touch-action: pan-y pinch-zoom;
user-select: none;
-webkit-overflow-scrolling: touch;
}
.showcase-carousel-track.is-dragging {
scroll-behavior: auto;
scroll-snap-type: none;
cursor: grabbing;
}
.showcase-carousel-track.is-dragging .case-card,
.showcase-carousel-track.is-dragging .company-team-card {
transform: none;
}
.showcase-carousel-track::-webkit-scrollbar {
display: none;
}
.showcase-carousel-track > * {
min-width: 0;
scroll-snap-align: start;
scroll-snap-stop: always;
}
.case-card,
.company-team-card {
border-color: var(--card-border);
border-radius: var(--card-radius);
background: var(--surface-card);
box-shadow: var(--card-shadow);
transition: transform 320ms ease, border-color 320ms ease, box-shadow 320ms ease;
}
.company-team-card {
border-bottom-color: rgba(214, 225, 251, 0.34);
box-shadow:
0 20px 54px -22px rgba(51, 74, 145, 0.2),
0 44px 92px -38px rgba(51, 74, 145, 0.22);
}
.case-card:hover,
.case-card:focus-within,
.company-team-card:hover,
.company-team-card:focus-within {
border-color: #abc0f7;
box-shadow: var(--card-shadow-hover);
transform: translateY(-4px);
}
.case-image {
position: relative;
height: 272px;
flex-basis: 272px;
}
.case-result-badge {
position: absolute;
top: 18px;
left: 18px;
z-index: 6;
display: inline-flex;
align-items: center;
min-height: 34px;
padding: 8px 12px;
border: 1px solid rgba(255, 255, 255, 0.72);
border-radius: 999px;
color: #fff;
background: rgba(23, 70, 184, 0.88);
box-shadow: 0 10px 26px rgba(12, 37, 99, 0.22);
font-size: 12px;
font-weight: 800;
letter-spacing: 0.045em;
text-transform: uppercase;
backdrop-filter: blur(8px);
}
.case-result-summary {
display: grid;
margin: 0 0 15px;
gap: 3px;
}
.case-claim-stat {
display: flex;
align-items: baseline;
justify-content: space-between;
margin: 0 0 12px;
padding: 10px 12px;
gap: 14px;
border: 1px solid #e0e8fb;
border-radius: 12px;
color: #74809d;
background: var(--surface-soft);
font-size: 12px;
font-weight: 750;
letter-spacing: 0.045em;
text-transform: uppercase;
}
.case-claim-stat strong {
color: #34466f;
font-size: 17px;
letter-spacing: -0.01em;
white-space: nowrap;
}
.case-award-image img {
object-position: left center;
}
.case-result-summary > span {
color: #74809d;
font-size: 12px;
font-weight: 800;
letter-spacing: 0.09em;
text-transform: uppercase;
}
.case-result-summary .case-amount {
margin: 0;
color: var(--brand-primary-dark);
font-size: clamp(34px, 3vw, 43px);
font-weight: 760;
}
.case-primary-link {
min-height: 46px;
padding: 11px 15px !important;
border: 1px solid var(--card-border);
border-radius: 12px;
color: var(--brand-primary);
background: var(--surface-soft);
transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease, transform 220ms ease;
}
.case-primary-link:hover,
.case-primary-link:focus-visible {
border-color: var(--brand-primary);
color: #fff;
background: var(--brand-primary);
transform: translateY(-1px);
}
.company-team-grid.showcase-carousel-track > .company-team-card-group {
display: flex;
grid-column: auto;
grid-template-columns: none;
border-color: var(--card-border);
color: var(--ink);
background: var(--surface-card);
}
.company-team-card-group .company-team-content,
.company-team-card-group .company-team-content h3 {
color: #111b3d;
}
.company-team-card-group .company-team-role,
.company-team-card-group .company-team-action {
color: var(--brand-primary);
}
.company-team-card-group .company-team-content p {
color: #68738f;
}
.company-team-card-group .company-team-illustration,
.company-team-card-group .company-team-illustration {
height: clamp(320px, 29vw, 390px);
min-height: 0;
background:
radial-gradient(circle at 50% 40%, rgba(255, 255, 255, 0.96), transparent 34%),
linear-gradient(145deg, #eef4ff 0%, #dbe8ff 100%);
}
.company-team-card-group .company-team-illustration::before,
.company-team-card-group .company-team-illustration::after {
border-color: rgba(40, 105, 242, 0.14);
}
.company-team-card-group .company-team-illustration svg {
fill: rgba(40, 105, 242, 0.05);
stroke: rgba(40, 105, 242, 0.78);
}
.company-team-card-group .company-team-mark {
border-color: rgba(40, 105, 242, 0.2);
color: var(--brand-primary);
background: rgba(255, 255, 255, 0.78);
}
.company-team-card-group .company-team-illustration-caption {
color: #4b5f8f;
}
@media (max-width: 980px) {
.showcase-carousel-track,
.case-grid.showcase-carousel-track,
.company-team-grid.showcase-carousel-track {
grid-auto-columns: 72%;
}
.company-team-grid.showcase-carousel-track > .company-team-card-group {
display: flex;
grid-column: auto;
}
}
@media (max-width: 640px) {
.legal-route-table-wrap {
overflow: visible;
border: 0;
border-radius: 0;
background: transparent;
box-shadow: none;
}
.legal-route-table {
display: block;
min-width: 0;
font-size: 15px;
}
.legal-route-table thead {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0 0 0 0);
white-space: nowrap;
border: 0;
}
.legal-route-table tbody {
display: grid;
gap: 14px;
}
.legal-route-table tbody tr {
display: block;
overflow: hidden;
border: 1px solid var(--card-border);
border-radius: var(--card-radius);
background: var(--surface-card);
box-shadow: var(--card-shadow);
}
.legal-route-table tbody th,
.legal-route-table tbody td {
display: block;
width: 100%;
padding: 18px 20px;
border-right: 0;
border-bottom: 1px solid #e7edfc;
}
.legal-route-table tbody th {
color: #fff;
background: linear-gradient(135deg, var(--brand-primary-dark), var(--brand-primary));
font-size: 19px;
line-height: 1.25;
}
.legal-route-table tbody td {
color: #55617e;
background: #fff;
line-height: 1.55;
}
.legal-route-table tbody td::before {
display: block;
margin-bottom: 7px;
color: var(--brand-primary);
content: attr(data-label);
font-size: 11px;
font-weight: 800;
letter-spacing: 0.1em;
text-transform: uppercase;
}
.legal-route-table tbody tr:last-child th,
.legal-route-table tbody tr:last-child td,
.legal-route-table tbody td:last-child {
border-bottom: 0;
}
.showcase-carousel-controls {
justify-content: center;
margin: -6px 0 18px;
}
.showcase-carousel-track,
.case-grid.showcase-carousel-track,
.company-team-grid.showcase-carousel-track {
--carousel-gap: 14px;
grid-auto-columns: 88%;
margin: 0 -14px -28px;
padding: 8px 14px 62px;
scroll-padding-inline: 14px;
}
.case-image,
.case-proof-gallery {
height: 232px;
flex-basis: 232px;
}
.case-result-badge {
top: 14px;
left: 14px;
font-size: 10px;
}
.case-body {
padding: 22px;
}
.company-team-photo,
.company-team-illustration,
.company-team-card-group .company-team-illustration {
height: min(102vw, 390px);
}
}
@media (prefers-reduced-motion: reduce) {
.showcase-carousel-track {
scroll-behavior: auto;
}
.showcase-carousel-arrow,
.showcase-carousel-dot,
.case-card,
.company-team-card,
.case-primary-link {
transition: none;
}
}
.ukalbert-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }