* {
box-sizing: border-box
}

html {
font-size: 100%
}

body {
margin: 0
}

.topbar-strip {
background: #00607F;
padding: 8px 0
}

.topbar-pod {
max-width: 1170px;
margin: 0 auto;
padding: 0 32px;
display: flex;
align-items: center;
justify-content: flex-end;
gap: 32px
}

.topbar-contact {
display: flex;
align-items: center;
gap: 16px
}

.topbar-link {
font-family: 'Bitter', Georgia, serif;
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #DBE2E7;
text-decoration: none;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.topbar-link:hover {
color: #fff
}

.topbar-link:focus {
outline: 2px dashed #DBE2E7;
outline-offset: 2px
}

.topbar-sep {
width: 1px;
height: 14px;
background: #dbe2e759;
display: inline-block
}

.headermain {
background: linear-gradient(135deg, #476DA1 0%, #00607F 100%);
box-shadow: 0 4px 22px 0 #00607f1a;
position: relative
}

.headermain-pod {
max-width: 1170px;
margin: 0 auto;
padding: 0 32px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 32px;
min-height: 96px
}

.logomark {
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
background: #ffffff1f;
border: 1px solid #dbe2e747;
border-radius: 4px;
padding: 8px 16px;
box-shadow: 0 2px 3px 0 #00607f14 inset 0 1px 0 #ffffff26;
text-decoration: none
}

.logomark img {
width: 90px;
height: 48px;
object-fit: contain;
object-position: center;
display: block
}

.primarnav {
display: flex;
align-items: center;
gap: 4px;
flex-wrap: wrap;
justify-content: flex-end
}

.primarnav-item {
font-family: 'Bitter', Georgia, serif;
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #DBE2E7;
text-decoration: none;
padding: 12px 16px;
border-radius: 4px;
border: 1px solid transparent;
display: inline-block;
min-height: 44px;
display: flex;
align-items: center;
position: relative;
overflow: hidden;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1), border-color .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.primarnav-item::before {
content: '';
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 100%;
background: #dbe2e71f;
transition: left .45s cubic-bezier(0.16, 1, 0.3, 1);
z-index: 0
}

.primarnav-item:hover::before {
left: 0
}

.primarnav-item:hover {
color: #fff;
border-color: #dbe2e74d
}

.primarnav-item:focus {
outline: 2px dashed #DBE2E7;
outline-offset: 2px
}

.primarnav-item span {
position: relative;
z-index: 1
}

.primarnav-item.aktiv {
color: #fff;
border-color: #dbe2e766;
background: #dbe2e71a
}

.footermain {
background: #00607F;
padding: 64px 0 0
}

.footer-deck {
max-width: 1170px;
margin: 0 auto;
padding: 0 32px;
display: grid;
grid-template-columns: 1.6fr 1fr 1fr 1fr;
gap: 32px;
align-items: start
}

.footer-brand-cell {
display: flex;
flex-direction: column;
gap: 16px
}

.footer-logobox {
display: inline-flex;
align-items: center;
justify-content: flex-start;
background: #ffffff1a;
border: 1px solid #dbe2e738;
border-radius: 4px;
padding: 8px 16px;
box-shadow: 0 2px 3px 0 #00607f14;
width: fit-content
}

.footer-logobox img {
width: 90px;
height: 48px;
object-fit: contain;
object-position: center;
display: block
}

.footer-address {
font-family: 'Bitter', Georgia, serif;
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #dbe2e7cc;
font-style: normal
}

.footer-address a {
color: #dbe2e7cc;
text-decoration: none;
transition: color .4s ease-in-out;
display: block
}

.footer-address a:hover {
color: #fff
}

.footer-address a:focus {
outline: 2px dashed #DBE2E7;
outline-offset: 2px
}

.footer-col-cell {
display: flex;
flex-direction: column;
gap: 16px
}

.footer-col-heading {
font-family: 'Bitter', Georgia, serif;
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #fff;
font-weight: 700;
text-transform: uppercase
}

.footer-col-list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 8px
}

.footer-col-list li a {
font-family: 'Bitter', Georgia, serif;
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #dbe2e7cc;
text-decoration: none;
transition: color .4s ease-in-out;
display: inline-block;
min-height: 44px;
display: flex;
align-items: center
}

.footer-col-list li a:hover {
color: #fff
}

.footer-col-list li a:focus {
outline: 2px dashed #DBE2E7;
outline-offset: 2px
}

.footer-bottom-strip {
margin-top: 64px;
border-top: 1px solid #dbe2e726;
padding: 32px;
max-width: 1170px;
margin-left: auto;
margin-right: auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
flex-wrap: wrap
}

.footer-copy {
font-family: 'Bitter', Georgia, serif;
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #dbe2e799
}

.footer-legal-links {
display: flex;
align-items: center;
gap: 16px;
flex-wrap: wrap
}

.footer-legal-links a {
font-family: 'Bitter', Georgia, serif;
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #dbe2e7b3;
text-decoration: none;
transition: color .4s ease-in-out
}

.footer-legal-links a:hover {
color: #fff
}

.footer-legal-links a:focus {
outline: 2px dashed #DBE2E7;
outline-offset: 2px
}

.cookiepod {
display: none;
position: fixed;
bottom: 32px;
left: 32px;
z-index: 4000;
width: 320px;
background: #fff;
border-radius: 4px;
border: 1px solid #DBE2E7;
box-shadow: 0 9px 52px 0 #00607f21;
padding: 32px;
transform: translateY(20px);
opacity: 0;
transition: transform .26s cubic-bezier(0.16, 1, 0.3, 1), opacity .26s cubic-bezier(0.16, 1, 0.3, 1)
}

.cookiepod.shown {
transform: translateY(0);
opacity: 1
}

.cookiepod-text {
font-family: 'Bitter', Georgia, serif;
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #1b3a4b;
margin-bottom: 16px
}

.cookiepod-actions {
display: flex;
align-items: center;
gap: 16px
}

.cookiepod-accept {
font-family: 'Bitter', Georgia, serif;
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #00607F;
background: none;
border: none;
padding: 0;
cursor: pointer;
text-decoration: underline;
transition: color .4s ease-in-out
}

.cookiepod-accept:hover {
color: #476DA1
}

.cookiepod-accept:focus {
outline: 2px dashed #00607F;
outline-offset: 2px
}

.cookiepod-decline {
font-family: 'Bitter', Georgia, serif;
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #476DA1;
background: none;
border: none;
padding: 0;
cursor: pointer;
text-decoration: underline;
transition: color .4s ease-in-out
}

.cookiepod-decline:hover {
color: #00607F
}

.cookiepod-decline:focus {
outline: 2px dashed #476DA1;
outline-offset: 2px
}

@media (max-width: 1024px) {
.footer-deck {
grid-template-columns: 1fr 1fr;
gap: 32px
}

.footer-brand-cell {
grid-column: 1 / -1
}
}

@media (max-width: 640px) {
.headermain-pod {
flex-direction: column;
align-items: flex-start;
padding: 16px;
min-height: auto;
gap: 16px
}

.primarnav {
justify-content: flex-start;
width: 100%
}

.primarnav-item {
padding: 8px 12px
}

.topbar-pod {
padding: 0 16px;
flex-wrap: wrap;
gap: 8px
}

.footer-deck {
grid-template-columns: 1fr;
padding: 0 16px
}

.footer-bottom-strip {
flex-direction: column;
align-items: flex-start;
padding: 32px 16px
}

.cookiepod {
left: 16px;
right: 16px;
width: auto;
bottom: 16px
}
}

@media (max-width: 360px) {
.primarnav-item {
font-size: 15px;
padding: 8px
}

.topbar-link {
font-size: 15px
}
}

.terms-wrapper {
max-width: 1170px;
margin: 0 auto;
padding: 64px 32px;
color: #2c3e50
}

.terms-wrapper h1 {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
color: #00607F;
margin-bottom: 32px;
padding-bottom: 16px;
border-bottom: 2px solid #DBE2E7;
border-left: 4px solid #00607F;
padding-left: 16px
}

.terms-wrapper h2 {
font-size: 31px;
line-height: 1.1;
letter-spacing: .01em;
color: #00607F;
margin-top: 64px;
margin-bottom: 16px;
padding-left: 16px;
border-left: 4px solid #476DA1
}

.terms-wrapper h3 {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #00607F;
font-weight: 700;
margin-top: 32px;
margin-bottom: 8px;
text-transform: uppercase
}

.terms-wrapper h4 {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #476DA1;
font-weight: 700;
margin-top: 32px;
margin-bottom: 8px
}

.terms-wrapper h5 {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #2c3e50;
font-weight: 700;
margin-top: 16px;
margin-bottom: 8px
}

.terms-wrapper h6 {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #476DA1;
font-weight: 600;
margin-top: 16px;
margin-bottom: 8px
}

.terms-wrapper p {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2c3e50;
margin-bottom: 16px;
max-width: 72ch
}

.terms-wrapper em,
.terms-wrapper i {
font-style: italic;
color: #476DA1
}

.terms-wrapper a {
color: #00607F;
text-decoration: underline;
text-decoration-color: #00607f59;
text-underline-offset: 3px;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1), text-decoration-color .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.terms-wrapper a:hover {
color: #476DA1;
text-decoration-color: #476da199
}

.terms-wrapper hr {
border: none;
border-top: 1px solid #DBE2E7;
margin: 64px 0
}

.terms-wrapper table {
width: 100%;
border-collapse: collapse;
margin: 32px 0;
font-size: 15px;
line-height: 1.5;
box-shadow: 0 4px 22px 0 #00607f1a;
border-radius: 4px;
overflow: hidden
}

.terms-wrapper thead {
background-color: #00607F;
color: #fff
}

.terms-wrapper thead th {
padding: 16px;
text-align: left;
font-weight: 700;
letter-spacing: .02em;
font-size: 15px;
color: #fff;
border: none
}

.terms-wrapper tbody tr {
border-bottom: 1px solid #DBE2E7;
transition: background-color .35s ease-in-out
}

.terms-wrapper tbody tr:last-child {
border-bottom: none
}

.terms-wrapper tbody tr:nth-child(even) {
background-color: #dbe2e740
}

.terms-wrapper tbody tr:hover {
background-color: #00607f0d
}

.terms-wrapper td {
padding: 16px;
color: #2c3e50;
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
vertical-align: top
}

.terms-wrapper th {
padding: 16px;
font-size: 15px;
letter-spacing: .02em
}

.terms-wrapper div {
font-size: 15px;
line-height: 1.8
}

@media (max-width: 1024px) {
.terms-wrapper {
padding: 64px 32px
}

.terms-wrapper h1 {
font-size: 41px
}

.terms-wrapper h2 {
font-size: 31px
}
}

@media (max-width: 640px) {
.terms-wrapper {
padding: 32px 16px
}

.terms-wrapper h1 {
font-size: 31px;
margin-bottom: 16px
}

.terms-wrapper h2 {
font-size: 15px;
margin-top: 32px
}

.terms-wrapper h3,
.terms-wrapper h4,
.terms-wrapper h5,
.terms-wrapper h6 {
font-size: 15px
}

.terms-wrapper table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch
}

.terms-wrapper p {
max-width: 100%
}

.terms-wrapper hr {
margin: 32px 0
}
}

@media (max-width: 360px) {
.terms-wrapper {
padding: 32px 16px
}

.terms-wrapper h1 {
font-size: 31px
}

.terms-wrapper td,
.terms-wrapper th {
padding: 8px
}
}

.ctus {
background: #fff;
overflow-x: clip;
position: relative
}

.ctus .pg-reveal {
animation: zoomSettle .55s cubic-bezier(0.16, 1, 0.3, 1) both
}

@keyframes zoomSettle {
from {
transform: scale(1.04);
opacity: .7
}

to {
transform: scale(1);
opacity: 1
}
}

.ctus .reach-wrap {
max-width: 1170px;
margin: 0 auto;
padding: 96px 32px
}

.ctus .reach-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: start
}

.ctus .reach-left {
display: flex;
flex-direction: column;
gap: 32px;
position: relative
}

.ctus .deco-lines {
position: absolute;
top: 0;
right: -16px;
display: flex;
flex-direction: column;
gap: 8px;
pointer-events: none;
z-index: 0
}

.ctus .deco-lines span {
display: block;
height: 1px;
background: #476DA1;
opacity: .22
}

.ctus .deco-lines span:nth-child(1) {
width: 64px
}

.ctus .deco-lines span:nth-child(2) {
width: 48px
}

.ctus .deco-lines span:nth-child(3) {
width: 32px
}

.ctus .deco-lines span:nth-child(4) {
width: 20px
}

.ctus .reach-label {
font-size: 15px;
letter-spacing: .12em;
text-transform: uppercase;
color: #476DA1;
line-height: 1.5;
font-weight: 600
}

.ctus .reach-heading {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
color: #1b2d3e;
font-weight: 700;
margin: 0
}

.ctus .reach-heading em {
font-style: normal;
color: #00607F
}

.ctus .reach-desc {
font-size: 15px;
line-height: 1.8;
color: #2e4057;
letter-spacing: .01em;
margin: 0
}

.ctus .contact-details {
display: flex;
flex-direction: column;
gap: 16px;
margin-top: 8px
}

.ctus .cdet-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
padding: 16px;
border-radius: 4px;
background: #f4f7fa;
box-shadow: 0 2px 3px 0 #00607f14;
transition: box-shadow .45s cubic-bezier(0.16, 1, 0.3, 1), background .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.ctus .cdet-row:hover {
background: #eaf1f6;
box-shadow: 0 4px 22px 0 #00607f1a
}

.ctus .cdet-icon {
flex-shrink: 0;
width: 36px;
height: 36px;
border-radius: 4px;
background: #00607F;
display: flex;
align-items: center;
justify-content: center
}

.ctus .cdet-icon svg {
width: 18px;
height: 18px;
fill: none;
stroke: #fff;
stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round
}

.ctus .cdet-text {
display: flex;
flex-direction: column;
gap: 4px
}

.ctus .cdet-text strong {
font-size: 15px;
color: #1b2d3e;
font-weight: 600;
letter-spacing: .01em;
line-height: 1.5
}

.ctus .cdet-text a,
.ctus .cdet-text span {
font-size: 15px;
color: #2e4057;
line-height: 1.5;
letter-spacing: .01em;
text-decoration: none;
transition: color .35s ease-in-out
}

.ctus .cdet-text a:hover {
color: #00607F
}

.ctus .reach-right {
display: flex;
flex-direction: column;
gap: 32px
}

.ctus .form-card {
background: #fff;
border-radius: 4px;
padding: 32px;
box-shadow: 0 4px 22px 0 #00607f1a;
display: flex;
flex-direction: column;
gap: 32px;
position: relative;
overflow: hidden
}

.ctus .form-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(90deg, #00607F, #476DA1, transparent)
}

.ctus .form-heading {
font-size: 31px;
line-height: 1.1;
letter-spacing: .01em;
color: #1b2d3e;
font-weight: 700;
margin: 0
}

.ctus .form-heading em {
font-style: normal;
color: #476DA1;
font-weight: 300
}

.ctus .field-group {
display: flex;
flex-direction: column;
gap: 16px
}

.ctus .field-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px
}

.ctus .field-item {
display: flex;
flex-direction: column;
gap: 8px
}

.ctus .field-item label {
font-size: 15px;
font-weight: 600;
color: #1b2d3e;
letter-spacing: .02em;
line-height: 1.5
}

.ctus .field-item input,
.ctus .field-item textarea {
padding: 16px;
border: 1.5px solid #DBE2E7;
border-radius: 4px;
font-size: 15px;
color: #1b2d3e;
background: #fff;
line-height: 1.5;
letter-spacing: .01em;
transition: border-color .45s cubic-bezier(0.16, 1, 0.3, 1), box-shadow .45s cubic-bezier(0.16, 1, 0.3, 1);
outline: none;
width: 100%;
box-sizing: border-box
}

.ctus .field-item input::placeholder,
.ctus .field-item textarea::placeholder {
color: #7a95a8;
text-transform: uppercase;
font-size: 15px;
letter-spacing: .06em
}

.ctus .field-item input:focus,
.ctus .field-item textarea:focus {
border-color: #00607F;
box-shadow: 0 0 0 3px #00607f1a inset 0 1px 4px #00607f14
}

.ctus .field-item textarea {
resize: vertical;
min-height: 140px
}

.ctus .privacy-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px
}

.ctus .privacy-row input[type="checkbox"] {
width: 18px;
height: 18px;
flex-shrink: 0;
margin-top: 2px;
accent-color: #00607F;
cursor: pointer
}

.ctus .privacy-row label {
font-size: 15px;
color: #2e4057;
line-height: 1.8;
letter-spacing: .01em;
cursor: pointer
}

.ctus .privacy-row label a {
color: #00607F;
text-decoration: underline;
text-underline-offset: 2px;
transition: color .35s ease-in-out
}

.ctus .privacy-row label a:hover {
color: #476DA1
}

.ctus .submit-btn {
position: relative;
display: inline-flex;
align-items: center;
justify-content: center;
padding: 16px 32px;
border: 2px solid #00607F;
border-radius: 4px;
background: transparent;
color: #00607F;
font-size: 15px;
font-weight: 600;
letter-spacing: .06em;
text-transform: uppercase;
cursor: pointer;
overflow: hidden;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1);
z-index: 0;
align-self: flex-start
}

.ctus .submit-btn::after {
content: '';
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 100%;
background: #00607F;
transition: left .45s cubic-bezier(0.16, 1, 0.3, 1);
z-index: -1
}

.ctus .submit-btn:hover::after {
left: 0
}

.ctus .submit-btn:hover {
color: #fff
}

.ctus .submit-btn:focus-visible {
outline: 3px solid #476DA1;
outline-offset: 3px
}

.ctus .divider-asym {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
padding: 0 32px;
max-width: 1170px;
margin: 0 auto
}

.ctus .divider-asym .dl {
flex: 3;
height: 1px;
background: #DBE2E7
}

.ctus .divider-asym .ds {
flex: 1;
height: 1px;
background: #DBE2E7;
opacity: .4
}

.ctus .alt-strip {
background: linear-gradient(105deg, #00607F 0%, #476DA1 55%, #DBE2E7 100%);
position: relative;
overflow: hidden
}

.ctus .alt-strip::before {
content: '';
position: absolute;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23grain)' opacity='0.06'/%3E%3C/svg%3E");
pointer-events: none;
z-index: 0
}

.ctus .alt-inner {
max-width: 1170px;
margin: 0 auto;
padding: 64px 32px;
position: relative;
z-index: 1
}

.ctus .alt-cols {
display: grid;
grid-template-columns: 1.4fr 1fr;
gap: 64px;
align-items: center
}

.ctus .alt-text {
display: flex;
flex-direction: column;
gap: 16px
}

.ctus .alt-text h2 {
font-size: 31px;
line-height: 1.1;
letter-spacing: .01em;
color: #fff;
font-weight: 700;
margin: 0
}

.ctus .alt-text h2 em {
font-style: normal;
font-weight: 300;
color: #DBE2E7
}

.ctus .alt-text p {
font-size: 15px;
line-height: 1.8;
color: #dbe2e7eb;
letter-spacing: .01em;
margin: 0
}

.ctus .alt-facts {
display: flex;
flex-direction: column;
gap: 16px
}

.ctus .fact-item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
padding: 16px;
border-radius: 4px;
background: #ffffff17;
box-shadow: inset 0 1px 0 #ffffff26 0 2px 3px 0 #00607f14;
transition: background .5s cubic-bezier(0.16, 1, 0.3, 1)
}

.ctus .fact-item:hover {
background: #ffffff29
}

.ctus .fact-num {
font-size: 31px;
font-weight: 700;
color: #fff;
line-height: 1.1;
letter-spacing: .01em;
flex-shrink: 0;
width: 48px
}

.ctus .fact-desc {
display: flex;
flex-direction: column;
gap: 4px
}

.ctus .fact-desc strong {
font-size: 15px;
color: #fff;
font-weight: 600;
line-height: 1.5;
letter-spacing: .01em
}

.ctus .fact-desc span {
font-size: 15px;
color: #dbe2e7d9;
line-height: 1.5;
letter-spacing: .01em
}

@media (max-width: 1024px) {
.ctus .reach-grid {
grid-template-columns: 1fr;
gap: 48px
}

.ctus .alt-cols {
grid-template-columns: 1fr;
gap: 32px
}

.ctus .deco-lines {
display: none
}
}

@media (max-width: 640px) {
.ctus .reach-wrap {
padding: 64px 16px
}

.ctus .alt-inner {
padding: 64px 16px
}

.ctus .field-row {
grid-template-columns: 1fr
}

.ctus .reach-heading {
font-size: 31px
}

.ctus .form-card {
padding: 16px
}
}

@media (max-width: 360px) {
.ctus .reach-wrap {
padding: 32px 16px
}

.ctus .form-heading {
font-size: 31px
}

.ctus .submit-btn {
width: 100%;
justify-content: center
}
}

.lrnprog {
background: #fff;
overflow-x: clip
}

.lrnprog .prog-titleblock {
background: #00607F;
padding: 96px 16px 64px;
position: relative
}

.lrnprog .prog-titleblock .dotgrid {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
overflow: hidden
}

.lrnprog .prog-titleblock .dotgrid svg {
width: 100%;
height: 100%;
opacity: .13
}

.lrnprog .prog-titleblock .title-inner {
max-width: 1170px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 64px;
position: relative;
z-index: 1
}

.lrnprog .prog-titleblock .title-text {
flex: 1 1 0
}

.lrnprog .prog-titleblock .title-label {
font-size: 15px;
color: #DBE2E7;
letter-spacing: .08em;
text-transform: uppercase;
margin-bottom: 16px;
line-height: 1.5
}

.lrnprog .prog-titleblock .title-h1 {
font-size: 70px;
line-height: 1.1;
letter-spacing: .01em;
color: #fff;
font-weight: 800;
margin-bottom: 8px
}

.lrnprog .prog-titleblock .title-h1 span {
color: #DBE2E7;
font-weight: 300
}

.lrnprog .prog-titleblock .title-sub {
font-size: 31px;
line-height: 1.5;
color: #DBE2E7;
font-weight: 300;
letter-spacing: .01em;
margin-bottom: 32px
}

.lrnprog .prog-titleblock .title-desc {
font-size: 15px;
line-height: 1.8;
color: #dbe2e7e0;
letter-spacing: .01em;
max-width: 520px
}

.lrnprog .prog-titleblock .title-imgcol {
flex: 0 0 340px;
position: relative
}

.lrnprog .prog-titleblock .title-imgwrap {
width: 340px;
height: 420px;
border-radius: 4px;
overflow: hidden;
position: relative;
box-shadow: 0 9px 52px 0 #00607f21
}

.lrnprog .prog-titleblock .title-imgwrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center top;
display: block
}

.lrnprog .prog-titleblock .title-imgwrap::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(160deg, #00607f61 0%, transparent 55%, #00607f8c 100%);
pointer-events: none
}

.lrnprog .prog-titleblock .title-stats {
display: flex;
flex-direction: row;
gap: 32px;
margin-top: 32px
}

.lrnprog .prog-titleblock .stat-item {
display: flex;
flex-direction: column;
gap: 4px
}

.lrnprog .prog-titleblock .stat-num {
font-size: 41px;
line-height: 1.1;
font-weight: 800;
color: #fff;
letter-spacing: .01em
}

.lrnprog .prog-titleblock .stat-label {
font-size: 15px;
line-height: 1.5;
color: #DBE2E7;
letter-spacing: .02em
}

.lrnprog .prog-titleblock .title-cta {
margin-top: 32px;
display: inline-block;
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #fff;
border: 2px solid #fff;
border-radius: 4px;
padding: 16px 32px;
text-decoration: none;
position: relative;
overflow: hidden;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1);
background: transparent
}

.lrnprog .prog-titleblock .title-cta::before {
content: "";
position: absolute;
top: 0;
right: 100%;
width: 100%;
height: 100%;
background: #fff;
transition: right .45s cubic-bezier(0.16, 1, 0.3, 1);
z-index: 0
}

.lrnprog .prog-titleblock .title-cta:hover::before {
right: 0
}

.lrnprog .prog-titleblock .title-cta:hover {
color: #00607F
}

.lrnprog .prog-titleblock .title-cta span {
position: relative;
z-index: 1
}

.lrnprog .prog-structure {
background: #fff;
padding: 96px 16px 64px
}

.lrnprog .prog-structure .struct-inner {
max-width: 1170px;
margin: 0 auto
}

.lrnprog .prog-structure .struct-head {
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 64px;
margin-bottom: 64px
}

.lrnprog .prog-structure .struct-headtext {
flex: 1 1 0
}

.lrnprog .prog-structure .struct-h2 {
font-size: 41px;
line-height: 1.1;
font-weight: 800;
color: #00607F;
letter-spacing: .01em;
margin-bottom: 16px
}

.lrnprog .prog-structure .struct-h2 em {
font-style: normal;
font-weight: 300;
color: #476DA1
}

.lrnprog .prog-structure .struct-intro {
font-size: 15px;
line-height: 1.8;
color: #1e3a4a;
letter-spacing: .01em;
max-width: 480px
}

.lrnprog .prog-structure .struct-aside {
flex: 0 0 300px;
background: linear-gradient(135deg, #00607F 0%, transparent 100%);
background-color: #476DA1;
border-radius: 4px;
padding: 32px;
color: #fff
}

.lrnprog .prog-structure .aside-label {
font-size: 15px;
letter-spacing: .06em;
text-transform: uppercase;
color: #DBE2E7;
margin-bottom: 8px;
line-height: 1.5
}

.lrnprog .prog-structure .aside-val {
font-size: 31px;
font-weight: 700;
color: #fff;
line-height: 1.1;
letter-spacing: .01em;
margin-bottom: 16px
}

.lrnprog .prog-structure .aside-list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 8px
}

.lrnprog .prog-structure .aside-list li {
font-size: 15px;
line-height: 1.5;
color: #DBE2E7;
letter-spacing: .01em;
padding-left: 16px;
position: relative
}

.lrnprog .prog-structure .aside-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 6px;
height: 6px;
border-radius: 50%;
background: #DBE2E7
}

.lrnprog .prog-structure .modules-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px
}

.lrnprog .prog-structure .module-card {
border: 1.5px solid #DBE2E7;
border-radius: 4px;
padding: 32px;
display: flex;
flex-direction: column;
gap: 16px;
transition: border-color .42s ease-in-out, box-shadow .42s ease-in-out;
background: #fff
}

.lrnprog .prog-structure .module-card:hover {
border-color: #476DA1;
box-shadow: 0 4px 22px 0 #476da11a
}

.lrnprog .prog-structure .module-num {
font-size: 41px;
font-weight: 800;
color: #DBE2E7;
line-height: 1.1;
letter-spacing: .01em
}

.lrnprog .prog-structure .module-h4 {
font-size: 15px;
font-weight: 700;
color: #00607F;
line-height: 1.5;
letter-spacing: .02em;
text-transform: uppercase
}

.lrnprog .prog-structure .module-desc {
font-size: 15px;
line-height: 1.8;
color: #1e3a4a;
letter-spacing: .01em
}

.lrnprog .prog-structure .module-meta {
font-size: 15px;
color: #476DA1;
line-height: 1.5;
letter-spacing: .01em;
margin-top: auto;
font-weight: 600
}

.lrnprog .prog-experts {
background: #f4f7f9;
padding: 96px 16px 64px;
position: relative
}

.lrnprog .prog-experts .experts-inner {
max-width: 1170px;
margin: 0 auto
}

.lrnprog .prog-experts .experts-h2 {
font-size: 41px;
line-height: 1.1;
font-weight: 800;
color: #1e3a4a;
letter-spacing: .01em;
margin-bottom: 8px
}

.lrnprog .prog-experts .experts-h2 span {
color: #476DA1;
font-weight: 300
}

.lrnprog .prog-experts .experts-subline {
font-size: 15px;
line-height: 1.5;
color: #476DA1;
letter-spacing: .02em;
margin-bottom: 64px
}

.lrnprog .prog-experts .experts-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: start
}

.lrnprog .prog-experts .expert-card {
display: flex;
flex-direction: row;
gap: 32px;
align-items: flex-start
}

.lrnprog .prog-experts .expert-portrait {
flex: 0 0 140px;
width: 140px;
height: 140px;
overflow: hidden;
border-radius: 4px;
box-shadow: 0 4px 22px 0 #00607f1a
}

.lrnprog .prog-experts .expert-portrait img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.lrnprog .prog-experts .expert-info {
flex: 1 1 0
}

.lrnprog .prog-experts .expert-name {
font-size: 31px;
font-weight: 700;
color: #00607F;
line-height: 1.1;
letter-spacing: .01em;
margin-bottom: 4px
}

.lrnprog .prog-experts .expert-role {
font-size: 15px;
color: #476DA1;
line-height: 1.5;
letter-spacing: .02em;
margin-bottom: 16px;
font-weight: 600;
text-transform: uppercase
}

.lrnprog .prog-experts .expert-bio {
font-size: 15px;
line-height: 1.8;
color: #1e3a4a;
letter-spacing: .01em
}

.lrnprog .prog-experts .experts-facts {
margin-top: 64px;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 32px
}

.lrnprog .prog-experts .fact-item {
background: #fff;
border-radius: 4px;
padding: 32px 16px;
text-align: center;
box-shadow: 0 2px 3px 0 #00607f14;
transition: box-shadow .38s cubic-bezier(0.16, 1, 0.3, 1)
}

.lrnprog .prog-experts .fact-item:hover {
box-shadow: 0 4px 22px 0 #00607f1a
}

.lrnprog .prog-experts .fact-num {
font-size: 41px;
font-weight: 800;
color: #00607F;
line-height: 1.1;
letter-spacing: .01em;
display: block;
margin-bottom: 8px
}

.lrnprog .prog-experts .fact-label {
font-size: 15px;
line-height: 1.5;
color: #476DA1;
letter-spacing: .02em
}

.lrnprog .prog-faq {
background: #fff;
padding: 96px 16px 64px
}

.lrnprog .prog-faq .faq-inner {
max-width: 1170px;
margin: 0 auto;
display: grid;
grid-template-columns: 380px 1fr;
gap: 96px;
align-items: start
}

.lrnprog .prog-faq .faq-leftcol {
position: sticky;
top: 32px
}

.lrnprog .prog-faq .faq-h2 {
font-size: 41px;
line-height: 1.1;
font-weight: 800;
color: #00607F;
letter-spacing: .01em;
margin-bottom: 16px
}

.lrnprog .prog-faq .faq-h2 em {
font-style: normal;
font-weight: 300;
color: #476DA1
}

.lrnprog .prog-faq .faq-lead {
font-size: 15px;
line-height: 1.8;
color: #1e3a4a;
letter-spacing: .01em;
margin-bottom: 32px
}

.lrnprog .prog-faq .faq-imgwrap {
width: 100%;
height: 280px;
border-radius: 4px;
overflow: hidden;
box-shadow: 0 9px 52px 0 #00607f21
}

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

.lrnprog .prog-faq .faq-list {
display: flex;
flex-direction: column;
gap: 4px
}

.lrnprog .prog-faq .faq-item {
border: 1.5px solid #DBE2E7;
border-radius: 4px;
overflow: hidden;
transition: border-color .4s ease-in-out
}

.lrnprog .prog-faq .faq-item:hover {
border-color: #476DA1
}

.lrnprog .prog-faq details {
width: 100%
}

.lrnprog .prog-faq details summary {
font-size: 15px;
font-weight: 700;
color: #1e3a4a;
line-height: 1.5;
letter-spacing: .01em;
padding: 16px 32px 16px 16px;
cursor: pointer;
list-style: none;
position: relative;
transition: color .4s ease-in-out;
user-select: none
}

.lrnprog .prog-faq details summary::-webkit-details-marker {
display: none
}

.lrnprog .prog-faq details summary::after {
content: "";
position: absolute;
right: 16px;
top: 50%;
transform: translateY(-50%) rotate(0deg);
width: 10px;
height: 10px;
border-right: 2px solid #476DA1;
border-bottom: 2px solid #476DA1;
transform-origin: center;
transition: transform .4s cubic-bezier(0.16, 1, 0.3, 1);
transform: translateY(-70%) rotate(45deg)
}

.lrnprog .prog-faq details[open] summary::after {
transform: translateY(-30%) rotate(225deg)
}

.lrnprog .prog-faq details summary:hover {
color: #00607F
}

.lrnprog .prog-faq .faq-answer {
font-size: 15px;
line-height: 1.8;
color: #1e3a4a;
letter-spacing: .01em;
padding: 0 16px 16px
}

.lrnprog .anim-fadein {
animation: lrnFadeIn .55s cubic-bezier(0.16, 1, 0.3, 1) both
}

.lrnprog .anim-fadein.delay1 {
animation-delay: .1s
}

.lrnprog .anim-fadein.delay2 {
animation-delay: .22s
}

.lrnprog .anim-fadein.delay3 {
animation-delay: .34s
}

@keyframes lrnFadeIn {
from {
opacity: 0;
filter: blur(6px);
transform: translateY(12px)
}

to {
opacity: 1;
filter: blur(0);
transform: translateY(0)
}
}

@media (max-width: 1024px) {
.lrnprog .prog-titleblock .title-inner {
flex-direction: column;
gap: 32px
}

.lrnprog .prog-titleblock .title-imgcol {
flex: none;
width: 100%
}

.lrnprog .prog-titleblock .title-imgwrap {
width: 100%;
height: 320px
}

.lrnprog .prog-titleblock .title-h1 {
font-size: 41px
}

.lrnprog .prog-structure .struct-head {
flex-direction: column;
gap: 32px
}

.lrnprog .prog-structure .struct-aside {
flex: none;
width: 100%
}

.lrnprog .prog-structure .modules-grid {
grid-template-columns: 1fr 1fr
}

.lrnprog .prog-experts .experts-layout {
grid-template-columns: 1fr;
gap: 32px
}

.lrnprog .prog-experts .experts-facts {
grid-template-columns: repeat(2, 1fr)
}

.lrnprog .prog-faq .faq-inner {
grid-template-columns: 1fr;
gap: 32px
}

.lrnprog .prog-faq .faq-leftcol {
position: static
}
}

@media (max-width: 640px) {
.lrnprog .prog-titleblock {
padding: 64px 16px 32px
}

.lrnprog .prog-titleblock .title-h1 {
font-size: 31px
}

.lrnprog .prog-titleblock .title-sub {
font-size: 15px
}

.lrnprog .prog-titleblock .title-stats {
flex-direction: column;
gap: 16px
}

.lrnprog .prog-structure .modules-grid {
grid-template-columns: 1fr
}

.lrnprog .prog-experts .expert-card {
flex-direction: column;
gap: 16px
}

.lrnprog .prog-experts .experts-facts {
grid-template-columns: 1fr 1fr
}

.lrnprog .prog-structure {
padding: 64px 16px 32px
}

.lrnprog .prog-experts {
padding: 64px 16px 32px
}

.lrnprog .prog-faq {
padding: 64px 16px 32px
}
}

@media (max-width: 360px) {
.lrnprog .prog-titleblock .title-h1 {
font-size: 31px
}

.lrnprog .prog-experts .experts-facts {
grid-template-columns: 1fr
}
}

.aboutus {
width: 100%;
max-width: 100%;
background: #fff
}

.aboutus .split-screen {
display: flex;
flex-direction: row;
min-height: 0;
padding: 0
}

.aboutus .split-left {
flex: 1 1 52%;
background: #00607F;
padding: 96px 64px;
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
overflow: hidden
}

.aboutus .split-left::before {
content: "";
position: absolute;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60'%3E%3Cpath d='M0 30 L15 0 L30 30 L15 60Z' fill='%23ffffff' fill-opacity='0.03'/%3E%3Cpath d='M30 30 L45 0 L60 30 L45 60Z' fill='%23ffffff' fill-opacity='0.03'/%3E%3C/svg%3E");
background-size: 60px 60px;
pointer-events: none
}

.aboutus .split-left::after {
content: "";
position: absolute;
top: 0;
right: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 0 64px 64px 0;
border-color: transparent #476DA1 transparent transparent;
pointer-events: none
}

.aboutus .split-right {
flex: 1 1 48%;
background: #DBE2E7;
padding: 96px 64px;
display: flex;
flex-direction: column;
justify-content: center;
position: relative
}

.aboutus .split-right::before {
content: "";
position: absolute;
bottom: 0;
left: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 64px 0 0 64px;
border-color: transparent transparent transparent #476DA1;
pointer-events: none
}

.aboutus .label-tag {
display: inline-block;
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #DBE2E7;
border: 1px solid #dbe2e766;
border-radius: 4px;
padding: 4px 16px;
margin-bottom: 32px;
text-transform: uppercase
}

.aboutus .main-heading {
font-size: 70px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #fff;
margin-bottom: 32px
}

.aboutus .main-heading span {
color: #DBE2E7;
font-weight: 300
}

.aboutus .main-desc {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #dbe2e7e6;
margin-bottom: 0;
max-width: 480px
}

.aboutus .img-glow-wrap {
position: relative;
display: inline-block;
margin-bottom: 32px
}

.aboutus .img-glow-wrap img {
width: 100%;
max-width: 320px;
height: 420px;
object-fit: cover;
object-position: center;
display: block;
border-radius: 4px;
box-shadow: 0 9px 52px 0 #00607f21;
transition: box-shadow .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.aboutus .img-glow-wrap:hover img {
box-shadow: 0 0 0 6px #476da12e 0 9px 52px 0 #00607f2e
}

.aboutus .stat-row {
display: flex;
flex-direction: row;
gap: 32px;
margin-top: 32px
}

.aboutus .stat-item {
display: flex;
flex-direction: column;
gap: 4px
}

.aboutus .stat-num {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #00607F
}

.aboutus .stat-label {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #476DA1
}

.aboutus .right-heading {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 700;
color: #00607F;
margin-bottom: 16px
}

.aboutus .right-heading span {
font-weight: 300;
color: #476DA1
}

.aboutus .right-desc {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2d3a47;
margin-bottom: 32px
}

.aboutus .zigzag-divider {
width: 100%;
line-height: 0;
overflow: hidden
}

.aboutus .zigzag-divider svg {
display: block;
width: 100%
}

.aboutus .detail-section {
background: #fff;
padding: 96px 0 64px;
position: relative
}

.aboutus .detail-section::after {
content: "";
position: absolute;
top: 0;
right: 0;
width: 6px;
height: 100%;
background: linear-gradient(180deg, #00607F 0%, transparent 100%);
pointer-events: none
}

.aboutus .detail-inner {
max-width: 1170px;
margin: 0 auto;
padding: 0 32px
}

.aboutus .three-col {
display: grid;
grid-template-columns: 1fr 0.8fr 1fr;
gap: 32px;
align-items: start
}

.aboutus .col-side {
display: flex;
flex-direction: column;
gap: 32px
}

.aboutus .col-center {
display: flex;
flex-direction: column;
gap: 32px;
margin-top: 64px
}

.aboutus .info-card {
background: #fff;
border-radius: 4px;
padding: 32px;
box-shadow: 0 4px 22px 0 #00607f1a;
transition: box-shadow .5s cubic-bezier(0.16, 1, 0.3, 1)
}

.aboutus .info-card:hover {
box-shadow: 0 0 0 2px #00607f2e 0 9px 52px 0 #00607f21
}

.aboutus .info-card.tinted {
background: linear-gradient(135deg, #00607f0f 0%, transparent 100%)
}

.aboutus .card-num {
font-size: 41px;
line-height: 1.1;
font-weight: 800;
color: #00607F;
letter-spacing: .01em;
margin-bottom: 8px
}

.aboutus .card-heading {
font-size: 15px;
line-height: 1.5;
font-weight: 700;
color: #00607F;
letter-spacing: .02em;
margin-bottom: 8px;
text-transform: uppercase
}

.aboutus .card-text {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2d3a47
}

.aboutus .person-block {
background: #DBE2E7;
border-radius: 4px;
overflow: hidden;
box-shadow: 0 2px 3px 0 #00607f14
}

.aboutus .person-img-wrap {
width: 100%;
aspect-ratio: 5/7;
overflow: hidden
}

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

.aboutus .person-meta {
padding: 16px
}

.aboutus .person-name {
font-size: 15px;
line-height: 1.5;
font-weight: 700;
color: #00607F;
letter-spacing: .01em
}

.aboutus .person-role {
font-size: 15px;
line-height: 1.5;
color: #476DA1;
letter-spacing: .01em
}

.aboutus .person-quote {
font-size: 15px;
line-height: 1.8;
color: #2d3a47;
letter-spacing: .01em;
margin-top: 8px
}

.aboutus .label-row {
display: flex;
flex-direction: column;
gap: 8px;
margin-top: 16px
}

.aboutus .lv-row {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
padding: 8px 16px;
background: #fff;
border-radius: 4px;
box-shadow: 0 2px 3px 0 #00607f14
}

.aboutus .lv-label {
font-size: 15px;
line-height: 1.5;
color: #476DA1;
letter-spacing: .02em;
text-transform: uppercase;
font-weight: 700
}

.aboutus .lv-value {
font-size: 15px;
line-height: 1.5;
color: #2d3a47;
letter-spacing: .01em
}

.aboutus .checklist {
list-style: none;
padding: 0 !important;
margin: 0;
display: flex;
flex-direction: column;
gap: 8px
}

.aboutus .checklist li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
font-size: 15px;
line-height: 1.8;
color: #2d3a47;
letter-spacing: .01em
}

.aboutus .check-icon {
flex-shrink: 0;
width: 20px;
height: 20px;
margin-top: 2px
}

.aboutus .check-icon.cross {
color: #476DA1
}

.aboutus .section-sup {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
text-transform: uppercase;
color: #476DA1;
margin-bottom: 8px;
font-weight: 700
}

.aboutus .section-h2 {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #00607F;
margin-bottom: 32px
}

.aboutus .section-h2 span {
font-weight: 300;
color: #476DA1
}

.aboutus .img-wide-wrap {
width: 100%;
border-radius: 4px;
overflow: hidden;
box-shadow: 0 4px 22px 0 #00607f1a
}

.aboutus .img-wide-wrap img {
width: 100%;
height: 220px;
object-fit: cover;
object-position: center top;
display: block;
transition: transform .55s cubic-bezier(0.16, 1, 0.3, 1)
}

.aboutus .img-wide-wrap:hover img {
transform: scale(1.03)
}

.aboutus .img-sq-wrap {
width: 100%;
border-radius: 4px;
overflow: hidden;
box-shadow: 0 4px 22px 0 #00607f1a
}

.aboutus .img-sq-wrap img {
width: 100%;
height: 200px;
object-fit: cover;
object-position: center;
display: block;
transition: transform .55s cubic-bezier(0.16, 1, 0.3, 1)
}

.aboutus .img-sq-wrap:hover img {
transform: scale(1.03)
}

.aboutus .reveal-child {
opacity: 0;
transform: translateY(24px);
animation: revealUp .55s cubic-bezier(0.16, 1, 0.3, 1) forwards
}

.aboutus .reveal-child.d1 {
animation-delay: .1s
}

.aboutus .reveal-child.d2 {
animation-delay: .22s
}

.aboutus .reveal-child.d3 {
animation-delay: .34s
}

.aboutus .reveal-child.d4 {
animation-delay: .46s
}

.aboutus .reveal-child.d5 {
animation-delay: .58s
}

@keyframes revealUp {
to {
opacity: 1;
transform: translateY(0)
}
}

@media (max-width: 1024px) {
.aboutus .split-screen {
flex-direction: column
}

.aboutus .split-left,
.aboutus .split-right {
flex: none;
width: 100%;
padding: 64px 32px
}

.aboutus .main-heading {
font-size: 41px
}

.aboutus .three-col {
grid-template-columns: 1fr 1fr
}

.aboutus .col-center {
margin-top: 0
}
}

@media (max-width: 640px) {

.aboutus .split-left,
.aboutus .split-right {
padding: 64px 16px
}

.aboutus .main-heading {
font-size: 31px
}

.aboutus .three-col {
grid-template-columns: 1fr
}

.aboutus .stat-row {
flex-direction: column;
gap: 16px
}

.aboutus .detail-inner {
padding: 0 16px
}

.aboutus .right-heading {
font-size: 31px
}
}

@media (max-width: 360px) {
.aboutus .main-heading {
font-size: 31px
}

.aboutus .split-left,
.aboutus .split-right {
padding: 32px 16px
}
}

.srvc {
max-width: 100%;
overflow-x: hidden
}

.srvc .pg-wrap {
max-width: 1170px;
margin: 0 auto;
padding: 0 32px
}

.srvc .pg-wrap-narrow {
max-width: 780px;
margin: 0 auto;
padding: 0 32px
}

@keyframes cardFlip {
0% {
transform: rotateY(90deg);
opacity: 0
}

100% {
transform: rotateY(0deg);
opacity: 1
}
}

@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(16px)
}

to {
opacity: 1;
transform: translateY(0)
}
}

.srvc .bento-grid {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: auto auto;
gap: 16px;
padding: 64px 32px;
max-width: 1170px;
margin: 0 auto
}

.srvc .bento-cell {
border-radius: 4px
}

.srvc .bento-img-cell {
grid-column: 2;
grid-row: 1 / 3;
position: relative;
border-radius: 4px;
overflow: hidden;
min-height: 380px
}

.srvc .bento-img-cell img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center top;
display: block;
animation: fadeIn .55s cubic-bezier(0.16, 1, 0.3, 1) .2s both
}

.srvc .bento-text-cell {
grid-column: 1;
grid-row: 1;
padding: 32px;
background: linear-gradient(135deg, #f4f7fa 0%, #dbe2e7 100%);
border-radius: 4px;
position: relative
}

.srvc .bento-text-cell::before {
content: "";
position: absolute;
top: 16px;
left: 16px;
right: 16px;
bottom: 16px;
border: 1.5px dashed #476DA1;
border-radius: 4px;
pointer-events: none;
opacity: .45
}

.srvc .bento-sub-cell {
grid-column: 1;
grid-row: 2;
padding: 32px;
background: #00607F;
border-radius: 4px
}

.srvc .bento-kicker {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #476DA1;
font-weight: 600;
text-transform: uppercase;
margin-bottom: 16px;
display: block
}

.srvc .bento-h1 {
font-size: 70px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #1b3a4b;
margin-bottom: 16px
}

.srvc .bento-h1 em {
font-style: normal;
color: #00607F;
text-decoration: underline;
text-decoration-color: #DBE2E7;
text-underline-offset: 6px
}

.srvc .bento-sub-cell .sub-label {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #DBE2E7
}

.srvc .bento-sub-cell .sub-label strong {
color: #fff;
font-weight: 700
}

.srvc .bento-tag {
display: inline-block;
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #fff;
background: #476da159;
border-radius: 36px;
padding: 4px 16px;
margin-top: 16px
}

.srvc .offers-band {
background: linear-gradient(160deg, #f0f4f8 0%, #dbe2e7 60%, #f0f4f8 100%);
padding: 64px 0
}

.srvc .offers-band .band-head {
text-align: center;
margin-bottom: 32px
}

.srvc .offers-band .band-h2 {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 700;
color: #1b3a4b
}

.srvc .offers-band .band-h2 span {
color: #476DA1;
font-weight: 300
}

.srvc .offers-band .band-desc {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2d4a5e;
max-width: 560px;
margin: 16px auto 0
}

.srvc .offers-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
perspective: 900px
}

.srvc .offer-card {
background: #fff;
border-radius: 4px;
padding: 32px;
box-shadow: 0 4px 22px 0 #00607f1a;
animation: cardFlip .45s cubic-bezier(0.16, 1, 0.3, 1) both;
border-top: 3px solid #00607F
}

.srvc .offer-card:nth-child(1) {
animation-delay: .05s
}

.srvc .offer-card:nth-child(2) {
animation-delay: .18s
}

.srvc .offer-card:nth-child(3) {
animation-delay: .31s
}

.srvc .offer-card .card-num {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #DBE2E7;
display: block;
margin-bottom: 8px
}

.srvc .offer-card .card-h3 {
font-size: 31px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 700;
color: #00607F;
margin-bottom: 16px
}

.srvc .offer-card .card-body {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2d4a5e
}

.srvc .offer-card .card-detail {
margin-top: 16px;
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #476DA1;
font-weight: 600
}

.srvc .voices-strip {
padding: 64px 0;
background: #fff
}

.srvc .voices-strip .vs-inner {
max-width: 1170px;
margin: 0 auto;
padding: 0 32px;
display: grid;
grid-template-columns: 1fr 2fr;
gap: 64px;
align-items: start
}

.srvc .vs-label-col .vs-h2 {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 700;
color: #1b3a4b;
margin-bottom: 16px
}

.srvc .vs-label-col .vs-h2 em {
font-style: normal;
color: #476DA1;
font-weight: 300
}

.srvc .vs-label-col .vs-intro {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2d4a5e
}

.srvc .vs-cards {
display: flex;
flex-direction: column;
gap: 16px
}

.srvc .vs-card {
display: grid;
grid-template-columns: 80px 1fr;
gap: 16px;
align-items: start;
padding: 32px;
border-radius: 4px;
box-shadow: 0 2px 3px 0 #00607f14;
background: #f4f7fa;
transition: box-shadow .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.srvc .vs-card:hover {
box-shadow: 0 9px 52px 0 #00607f21
}

.srvc .vs-portrait {
width: 80px;
height: 80px;
border-radius: 50%;
overflow: hidden;
flex-shrink: 0
}

.srvc .vs-portrait img {
width: 80px;
height: 80px;
object-fit: cover;
object-position: center;
display: block
}

.srvc .vs-text .vs-name {
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
font-weight: 700;
color: #00607F;
margin-bottom: 4px
}

.srvc .vs-text .vs-role {
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #476DA1;
margin-bottom: 8px
}

.srvc .vs-text .vs-quote {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2d4a5e
}

.srvc .vs-no-portrait {
width: 80px;
height: 80px;
border-radius: 50%;
background: linear-gradient(135deg, #DBE2E7 0%, #476DA1 100%);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.srvc .vs-no-portrait svg {
width: 36px;
height: 36px;
fill: #fff
}

.srvc .approach-row {
padding: 96px 0 64px;
background: linear-gradient(170deg, #00607F 0%, #1b3a4b 100%)
}

.srvc .approach-row .ar-inner {
max-width: 1170px;
margin: 0 auto;
padding: 0 32px
}

.srvc .approach-row .ar-h2 {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 700;
color: #fff;
margin-bottom: 8px
}

.srvc .approach-row .ar-h2 span {
color: #DBE2E7;
font-weight: 300
}

.srvc .approach-row .ar-sub {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #DBE2E7;
margin-bottom: 32px;
max-width: 600px
}

.srvc .steps-list {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px
}

.srvc .step-item {
padding: 32px;
border-radius: 4px;
background: #ffffff12;
box-shadow: inset 0 1px 0 #dbe2e733 0 4px 22px 0 #00607f1a;
transition: background .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.srvc .step-item:hover {
background: #ffffff21
}

.srvc .step-item .step-num {
font-size: 70px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #dbe2e72e;
display: block;
margin-bottom: 8px
}

.srvc .step-item .step-h4 {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
font-weight: 700;
color: #fff;
text-transform: uppercase;
margin-bottom: 8px
}

.srvc .step-item .step-body {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #DBE2E7
}

.srvc .ar-cta-row {
margin-top: 32px;
display: flex;
flex-direction: row;
align-items: center;
gap: 16px
}

.srvc .btn-outline {
display: inline-block;
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
font-weight: 600;
color: #fff;
border: 2px solid #fff;
border-radius: 4px;
padding: 16px 32px;
text-decoration: none;
position: relative;
overflow: hidden;
background: transparent;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1);
z-index: 0
}

.srvc .btn-outline::after {
content: "";
position: absolute;
inset: 0;
background: #fff;
transform: translateX(101%);
transition: transform .45s cubic-bezier(0.16, 1, 0.3, 1);
z-index: -1
}

.srvc .btn-outline:hover {
color: #00607F
}

.srvc .btn-outline:hover::after {
transform: translateX(0)
}

.srvc .btn-outline:focus {
outline: 3px solid #DBE2E7;
outline-offset: 3px
}

.srvc .btn-tonal {
display: inline-block;
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
font-weight: 600;
color: #00607F;
border: 2px solid #DBE2E7;
border-radius: 4px;
padding: 16px 32px;
text-decoration: none;
position: relative;
overflow: hidden;
background: transparent;
transition: color .5s ease-in-out;
z-index: 0
}

.srvc .btn-tonal::after {
content: "";
position: absolute;
inset: 0;
background: #DBE2E7;
transform: translateX(101%);
transition: transform .5s ease-in-out;
z-index: -1
}

.srvc .btn-tonal:hover {
color: #1b3a4b
}

.srvc .btn-tonal:hover::after {
transform: translateX(0)
}

.srvc .btn-tonal:focus {
outline: 3px solid #476DA1;
outline-offset: 3px
}

@media (max-width: 1024px) {
.srvc .bento-grid {
grid-template-columns: 1fr;
grid-template-rows: auto;
padding: 32px 16px
}

.srvc .bento-img-cell {
grid-column: 1;
grid-row: 3;
min-height: 260px
}

.srvc .bento-text-cell {
grid-column: 1;
grid-row: 1
}

.srvc .bento-sub-cell {
grid-column: 1;
grid-row: 2
}

.srvc .bento-h1 {
font-size: 41px
}

.srvc .offers-grid {
grid-template-columns: 1fr 1fr
}

.srvc .steps-list {
grid-template-columns: 1fr 1fr
}

.srvc .voices-strip .vs-inner {
grid-template-columns: 1fr;
gap: 32px
}
}

@media (max-width: 640px) {
.srvc .bento-h1 {
font-size: 31px
}

.srvc .offers-grid {
grid-template-columns: 1fr
}

.srvc .steps-list {
grid-template-columns: 1fr
}

.srvc .pg-wrap {
padding: 0 16px
}

.srvc .offers-band {
padding: 32px 0
}

.srvc .approach-row {
padding: 64px 0 32px
}

.srvc .voices-strip {
padding: 32px 0
}

.srvc .voices-strip .vs-inner {
padding: 0 16px
}

.srvc .approach-row .ar-inner {
padding: 0 16px
}

.srvc .ar-cta-row {
flex-direction: column;
align-items: flex-start
}

.srvc .band-h2 {
font-size: 31px !important
}

.srvc .ar-h2 {
font-size: 31px !important
}

.srvc .vs-h2 {
font-size: 31px !important
}
}

@media (max-width: 360px) {
.srvc .bento-h1 {
font-size: 31px
}

.srvc .bento-text-cell {
padding: 16px
}

.srvc .bento-sub-cell {
padding: 16px
}

.srvc .offer-card {
padding: 16px
}

.srvc .step-item {
padding: 16px
}
}

.frst {
background: #fff;
overflow-x: clip
}

.frst .grad-bg {
background: linear-gradient(158deg, #00607F 0%, #476DA1 60%, #DBE2E7 100%);
background-size: 300% 300%;
animation: bgshift 9s ease-in-out infinite alternate;
padding: 96px 16px 64px;
position: relative
}

@keyframes bgshift {
0% {
background-position: 0 50%
}

100% {
background-position: 100% 50%
}
}

.frst .grad-bg::before,
.frst .grad-bg::after {
content: "";
position: absolute;
width: 60px;
height: 60px;
border: 2px solid #dbe2e773;
pointer-events: none
}

.frst .grad-bg::before {
top: 32px;
left: 32px;
border-right: none;
border-bottom: none
}

.frst .grad-bg::after {
bottom: 32px;
right: 32px;
border-left: none;
border-top: none
}

.frst .tb-inner {
max-width: 1170px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 64px
}

.frst .tb-text {
flex: 1 1 0;
padding-bottom: 8px
}

.frst .tb-label {
display: inline-block;
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #DBE2E7;
border: 1px solid #dbe2e766;
border-radius: 4px;
padding: 4px 16px;
margin-bottom: 32px
}

.frst .tb-h1 {
font-size: 70px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #fff;
margin-bottom: 32px
}

.frst .tb-h1 em {
font-style: normal;
color: #DBE2E7;
font-weight: 300
}

.frst .tb-desc {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #ffffffe0;
max-width: 520px;
margin-bottom: 32px
}

.frst .tb-btn {
display: inline-block;
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #fff;
border: 2px solid #ffffffb3;
border-radius: 4px;
padding: 16px 32px;
background: transparent;
cursor: pointer;
position: relative;
overflow: hidden;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1), border-color .45s cubic-bezier(0.16, 1, 0.3, 1);
text-decoration: none
}

.frst .tb-btn::after {
content: "";
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 100%;
background: #ffffff2e;
transition: left .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.frst .tb-btn:hover::after {
left: 0
}

.frst .tb-btn:hover {
border-color: #fff
}

.frst .tb-imgwrap {
flex: 0 0 420px;
position: relative
}

.frst .tb-img {
width: 420px;
height: 480px;
object-fit: cover;
object-position: center top;
border-radius: 4px;
display: block;
filter: brightness(0.88);
transition: filter .5s cubic-bezier(0.16, 1, 0.3, 1)
}

.frst .tb-img:hover {
filter: brightness(1.05)
}

.frst .tb-leak {
position: absolute;
top: 0;
left: 0;
width: 180px;
height: 180px;
background: radial-gradient(ellipse at 0% 0%, #dbe2e78c 0%, transparent 70%);
border-radius: 4px;
pointer-events: none
}

.frst .tb-imgwrap::before,
.frst .tb-imgwrap::after {
content: "";
position: absolute;
width: 24px;
height: 24px;
border: 2px solid #dbe2e7b3;
pointer-events: none;
z-index: 2
}

.frst .tb-imgwrap::before {
top: -8px;
left: -8px;
border-right: none;
border-bottom: none
}

.frst .tb-imgwrap::after {
bottom: -8px;
right: -8px;
border-left: none;
border-top: none
}

.frst .chevron-div {
width: 100%;
overflow: hidden;
line-height: 0
}

.frst .chevron-div svg {
display: block;
width: 100%
}

.frst .support-sect {
background: #fff;
padding: 64px 16px
}

.frst .support-inner {
max-width: 1170px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: center
}

.frst .support-imgwrap {
position: relative;
overflow: hidden;
border-radius: 4px
}

.frst .support-img {
width: 100%;
height: 400px;
object-fit: cover;
object-position: center;
border-radius: 4px;
filter: brightness(0.85);
transition: filter .5s cubic-bezier(0.16, 1, 0.3, 1);
display: block
}

.frst .support-imgwrap:hover .support-img {
filter: brightness(1.05)
}

.frst .support-tag {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #00607F;
font-weight: 600;
margin-bottom: 16px;
display: block
}

.frst .support-h2 {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #1a3a4a;
margin-bottom: 16px
}

.frst .support-h2 span {
color: #476DA1;
font-weight: 300
}

.frst .support-p {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2c4a5a;
margin-bottom: 16px
}

.frst .support-items {
list-style: none;
padding: 0;
margin: 32px 0 0;
display: flex;
flex-direction: column;
gap: 16px
}

.frst .support-items li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2c4a5a
}

.frst .si-mark {
flex-shrink: 0;
width: 22px;
height: 22px;
margin-top: 2px;
display: flex;
align-items: center;
justify-content: center
}

.frst .si-mark svg {
display: block
}

.frst .chevron-div2 {
width: 100%;
overflow: hidden;
line-height: 0;
background: #fff
}

.frst .chevron-div2 svg {
display: block;
width: 100%
}

.frst .team-sect {
background: #f4f7fa;
padding: 64px 16px
}

.frst .team-inner {
max-width: 1170px;
margin: 0 auto
}

.frst .team-header {
margin-bottom: 48px;
max-width: 640px
}

.frst .team-h2 {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #1a3a4a;
margin-bottom: 16px
}

.frst .team-h2 span {
color: #00607F;
font-weight: 300
}

.frst .team-intro {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2c4a5a
}

.frst .team-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px
}

.frst .tcard {
background: #fff;
border-radius: 4px;
padding: 32px;
box-shadow: 0 4px 22px 0 #00607f1a;
display: flex;
flex-direction: row;
gap: 32px;
align-items: flex-start;
position: relative
}

.frst .tcard-portrait {
flex-shrink: 0;
width: 80px;
height: 80px;
border-radius: 36px;
object-fit: cover;
object-position: center;
filter: brightness(0.9);
transition: filter .45s ease-in-out
}

.frst .tcard:hover .tcard-portrait {
filter: brightness(1.08)
}

.frst .tcard-body {
flex: 1 1 0
}

.frst .tcard-name {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
font-weight: 700;
color: #00607F;
margin-bottom: 4px
}

.frst .tcard-role {
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #476DA1;
margin-bottom: 8px
}

.frst .tcard-desc {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2c4a5a
}

.frst .tcard-badges {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
margin-top: 16px
}

.frst .badge {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
color: #00607F;
background: #DBE2E7;
border-radius: 4px;
padding: 4px 8px;
font-weight: 600
}

.frst .tcard-stat {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
background: linear-gradient(158deg, #00607F 0%, #476DA1 100%);
border-radius: 4px;
padding: 32px;
box-shadow: 0 4px 22px 0 #476da11a;
color: #fff
}

.frst .tcard-stat-num {
font-size: 70px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #DBE2E7;
display: block
}

.frst .tcard-stat-label {
font-size: 15px;
line-height: 1.8;
letter-spacing: .02em;
color: #fff;
text-align: center
}

.frst .tcard-stat-detail {
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #dbe2e7cc;
text-align: center;
margin-top: 8px
}

.frst .chevron-div3 {
width: 100%;
overflow: hidden;
line-height: 0;
background: #f4f7fa
}

.frst .chevron-div3 svg {
display: block;
width: 100%
}

.frst .exp-sect {
background: #fff;
padding: 64px 16px
}

.frst .exp-inner {
max-width: 1170px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: center
}

.frst .exp-text {
order: 2
}

.frst .exp-imgwrap {
order: 1;
overflow: hidden;
border-radius: 4px
}

.frst .exp-img {
width: 100%;
height: 420px;
object-fit: cover;
object-position: center;
border-radius: 4px;
filter: brightness(0.87);
transition: filter .55s cubic-bezier(0.16, 1, 0.3, 1);
display: block
}

.frst .exp-imgwrap:hover .exp-img {
filter: brightness(1.06)
}

.frst .exp-h2 {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #1a3a4a;
margin-bottom: 16px
}

.frst .exp-h2 span {
color: #476DA1;
font-weight: 300
}

.frst .exp-p {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2c4a5a;
margin-bottom: 16px
}

.frst .exp-quote {
border-top: 2px solid #DBE2E7;
border-bottom: 2px solid #DBE2E7;
padding: 16px 0;
margin: 32px 0;
display: flex;
flex-direction: column;
gap: 8px
}

.frst .eq-text {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #00607F;
font-weight: 600
}

.frst .eq-attr {
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #476DA1
}

.frst .chevron-div4 {
width: 100%;
overflow: hidden;
line-height: 0;
background: #fff
}

.frst .chevron-div4 svg {
display: block;
width: 100%
}

.frst .value-sect {
background: #00607F;
padding: 96px 16px 64px;
position: relative
}

.frst .glow-anim {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: radial-gradient(ellipse at 50% 40%, #dbe2e717 0%, transparent 65%);
animation: glowpulse 7s ease-in-out infinite alternate;
pointer-events: none
}

@keyframes glowpulse {
0% {
opacity: .4
}

100% {
opacity: 1
}
}

.frst .value-inner {
max-width: 1170px;
margin: 0 auto;
position: relative
}

.frst .value-h2 {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #fff;
margin-bottom: 16px;
max-width: 640px
}

.frst .value-h2 span {
color: #DBE2E7;
font-weight: 300
}

.frst .value-intro {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #dbe2e7e0;
max-width: 560px;
margin-bottom: 64px
}

.frst .value-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px
}

.frst .vcard {
background: #ffffff14;
border: 1px solid #dbe2e733;
border-radius: 4px;
padding: 32px;
position: relative;
box-shadow: inset 0 2px 3px 0 #dbe2e70f;
transition: background .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.frst .vcard:hover {
background: #ffffff24
}

.frst .vcard-num {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #DBE2E7;
display: block;
margin-bottom: 16px
}

.frst .vcard-h4 {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
font-weight: 700;
color: #fff;
margin-bottom: 8px
}

.frst .vcard-p {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #dbe2e7d9
}

.frst .vcard-underline {
height: 2px;
background: #DBE2E7;
border-radius: 4px;
margin-top: 16px;
width: 32px;
animation: lineexpand 2.8s ease-in-out infinite
}

@keyframes lineexpand {

0%,
100% {
width: 32px
}

50% {
width: 64px
}
}

.frst .chevron-div5 {
width: 100%;
overflow: hidden;
line-height: 0;
background: #00607F
}

.frst .chevron-div5 svg {
display: block;
width: 100%
}

.frst .after-sect {
background: #f4f7fa;
padding: 64px 16px 96px
}

.frst .after-inner {
max-width: 1170px;
margin: 0 auto
}

.frst .after-top {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: start;
margin-bottom: 64px
}

.frst .after-h2 {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #1a3a4a;
margin-bottom: 16px
}

.frst .after-h2 span {
color: #00607F;
font-weight: 300
}

.frst .after-p {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2c4a5a;
margin-bottom: 16px
}

.frst .fact-block {
background: #fff;
border-radius: 4px;
padding: 32px;
box-shadow: 0 9px 52px 0 #00607f21;
display: flex;
flex-direction: column;
gap: 16px
}

.frst .fact-num {
font-size: 70px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 800;
color: #00607F
}

.frst .fact-label {
font-size: 31px;
line-height: 1.1;
letter-spacing: .01em;
font-weight: 300;
color: #476DA1
}

.frst .fact-desc {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2c4a5a;
border-top: 1px solid #DBE2E7;
padding-top: 16px
}

.frst .after-imgrow {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px
}

.frst .after-imgwrap {
overflow: hidden;
border-radius: 4px
}

.frst .after-img {
width: 100%;
height: 260px;
object-fit: cover;
object-position: center;
border-radius: 4px;
filter: brightness(0.88);
transition: filter .5s cubic-bezier(0.16, 1, 0.3, 1);
display: block
}

.frst .after-imgwrap:hover .after-img {
filter: brightness(1.06)
}

.frst .after-caption {
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #476DA1;
margin-top: 8px;
font-weight: 600
}

.frst .after-captext {
font-size: 15px;
line-height: 1.8;
letter-spacing: .01em;
color: #2c4a5a;
margin-top: 4px
}

@media (max-width: 1024px) {
.frst .tb-inner {
flex-direction: column;
align-items: flex-start;
gap: 32px
}

.frst .tb-h1 {
font-size: 41px
}

.frst .tb-imgwrap {
flex: none;
width: 100%
}

.frst .tb-img {
width: 100%;
height: 320px
}

.frst .support-inner {
grid-template-columns: 1fr;
gap: 32px
}

.frst .team-grid {
grid-template-columns: 1fr
}

.frst .exp-inner {
grid-template-columns: 1fr;
gap: 32px
}

.frst .exp-text {
order: 1
}

.frst .exp-imgwrap {
order: 2
}

.frst .value-grid {
grid-template-columns: 1fr 1fr;
gap: 16px
}

.frst .after-top {
grid-template-columns: 1fr;
gap: 32px
}

.frst .after-imgrow {
grid-template-columns: 1fr 1fr
}
}

@media (max-width: 640px) {
.frst .tb-h1 {
font-size: 31px
}

.frst .value-grid {
grid-template-columns: 1fr
}

.frst .after-imgrow {
grid-template-columns: 1fr
}

.frst .tcard {
flex-direction: column
}

.frst .grad-bg {
padding: 64px 16px 32px
}

.frst .support-h2,
.frst .team-h2,
.frst .exp-h2,
.frst .value-h2,
.frst .after-h2 {
font-size: 31px
}
}

@media (max-width: 360px) {
.frst .tb-h1 {
font-size: 31px
}

.frst .tb-btn {
padding: 16px
}
}

.successPage {
min-height: 80vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 64px 16px;
background: #fff
}

.successPage .successCard {
max-width: 540px;
width: 100%;
background: #f4f7fa;
border-radius: 36px;
padding: 64px 32px;
box-shadow: 0 9px 52px 0 #00607f21;
text-align: center
}

.successPage .successIcon {
width: 72px;
height: 72px;
margin: 0 auto 32px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 36px;
background: #DBE2E7;
box-shadow: inset 0 2px 8px 0 #00607f1a
}

.successPage .successIcon svg {
display: block
}

.successPage .successHeading {
font-size: 41px;
line-height: 1.1;
letter-spacing: .01em;
color: #00607F;
font-weight: 700;
margin-bottom: 16px
}

.successPage .successHeading span {
color: #476DA1;
font-weight: 300
}

.successPage .successText {
font-size: 15px;
line-height: 1.8;
letter-spacing: .02em;
color: #1b3a4b;
margin-bottom: 32px
}

.successPage .successDivider {
width: 48px;
height: 3px;
background: linear-gradient(90deg, #00607F, transparent);
border-radius: 4px;
margin: 0 auto 32px
}

.successPage .successMeta {
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #476DA1;
margin-bottom: 32px
}

.successPage .successBtn {
display: inline-block;
font-size: 15px;
letter-spacing: .02em;
line-height: 1.5;
color: #00607F;
border: 2px solid #00607F;
border-radius: 4px;
padding: 16px 32px;
text-decoration: none;
background: linear-gradient(to left, transparent 50%, #00607F 50%);
background-size: 200% 100%;
background-position: right bottom;
transition: background-position .45s cubic-bezier(0.16, 1, 0.3, 1), color .45s cubic-bezier(0.16, 1, 0.3, 1);
font-weight: 600
}

.successPage .successBtn:hover,
.successPage .successBtn:focus {
background-position: left bottom;
color: #fff;
outline: none
}

.successPage .successBtn:focus-visible {
box-shadow: 0 0 0 3px #00607f4d
}

@media (max-width: 640px) {
.successPage .successCard {
padding: 32px 16px
}

.successPage .successHeading {
font-size: 31px
}
}