html {
box-sizing: border-box;
scroll-behavior: auto
}

*,
::before,
::after {
box-sizing: inherit
}

body {
margin: 0;
min-height: 100dvh;
overflow-x: hidden
}

.site_hdr {
font-family: 'EB Garamond', Georgia, serif;
background: linear-gradient(160deg, #fff 0%, #E6E9F0 60%, #d8eef0 100%);
border-bottom: 1px solid #3b96a22e;
box-shadow: 1px 4px 28px -2px #3b96a21c;
position: relative
}

.hdr_top {
max-width: 1366px;
margin: 0 auto;
padding: 24px 48px 12px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
border-bottom: 1px solid #a3a4d938
}

.brand_lockup {
display: flex;
align-items: center;
gap: 12px;
text-decoration: none
}

.logo_ring {
width: 44px;
height: 44px;
border-radius: 12px 6px 12px 6px;
background: #fff;
box-shadow: 0 0 0 2px #3b96a259 1px 3px 2px -2px #3b96a20f 1px 4px 28px -2px #3b96a21c;
display: flex;
align-items: center;
justify-content: center;
padding: 4px;
flex-shrink: 0
}

.logo_ring img {
width: 36px;
height: 36px;
object-fit: contain;
display: block
}

.brand_name {
font-size: 36px;
font-weight: 700;
line-height: 1.1;
color: #2a6e78;
letter-spacing: 0
}

.brand_name span {
color: #A3A4D9
}

.hdr_addr {
font-size: 14px;
line-height: 1.4;
color: #4a7a82;
display: flex;
align-items: center;
gap: 4px;
flex-shrink: 0
}

.hdr_addr svg {
flex-shrink: 0;
opacity: .7
}

.hdr_nav_row {
max-width: 1366px;
margin: 0 auto;
padding: 0 48px
}

.hdr_nav_row nav {
display: flex;
align-items: center;
gap: 4px;
flex-wrap: wrap
}

.nav_lnk {
font-family: 'EB Garamond', Georgia, serif;
font-size: 16px;
font-weight: 500;
line-height: 1.4;
color: #2a6e78;
text-decoration: none;
padding: 12px 24px;
border-radius: 6px;
display: inline-flex;
align-items: center;
gap: 4px;
transition: background-color .45s cubic-bezier(0.22, 1, 0.36, 1), color .45s cubic-bezier(0.22, 1, 0.36, 1);
position: relative
}

.nav_lnk:hover,
.nav_lnk:focus {
background-color: #3b96a21a;
color: #1d5860;
text-decoration: none
}

.nav_lnk:focus {
outline: 2px solid #3B96A2;
outline-offset: 2px
}

.nav_lnk.active {
color: #3B96A2;
background-color: #3b96a214
}

.hdr_divider {
height: 1px;
background: linear-gradient(90deg, transparent, #a3a4d966 30%, #3b96a24d 70%, transparent);
margin: 0
}

.site_ftr {
font-family: 'EB Garamond', Georgia, serif;
background: linear-gradient(170deg, #E6E9F0 0%, #d4edf0 100%);
border-top: 1px solid #3b96a226;
margin-top: auto
}

.ftr_body {
max-width: 1366px;
margin: 0 auto;
padding: 96px 48px 48px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 48px;
flex-wrap: wrap
}

.ftr_brand {
display: flex;
align-items: center;
gap: 12px
}

.ftr_logo_ring {
width: 36px;
height: 36px;
border-radius: 6px 12px 6px 12px;
background: #fff;
box-shadow: 0 0 0 1px #3b96a247 1px 3px 2px -2px #3b96a20f;
display: flex;
align-items: center;
justify-content: center;
padding: 4px;
flex-shrink: 0
}

.ftr_logo_ring img {
width: 28px;
height: 28px;
object-fit: contain;
display: block
}

.ftr_brand_name {
font-size: 16px;
font-weight: 500;
line-height: 1.4;
color: #2a6e78
}

.ftr_bottom {
max-width: 1366px;
margin: 0 auto;
padding: 24px 48px;
border-top: 1px solid #a3a4d94d;
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
flex-wrap: wrap
}

.ftr_copy {
font-size: 14px;
line-height: 1.4;
color: #4a7a82
}

.ftr_legal_nav {
display: flex;
align-items: center;
gap: 24px;
flex-wrap: wrap
}

.ftr_lnk {
font-size: 14px;
line-height: 1.4;
color: #4a7a82;
text-decoration: none;
transition: color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.ftr_lnk:hover,
.ftr_lnk:focus {
color: #3B96A2;
text-decoration: underline
}

.ftr_lnk:focus {
outline: 2px solid #3B96A2;
outline-offset: 2px;
border-radius: 6px
}

.ck_toast {
position: fixed;
top: 24px;
right: 24px;
width: 320px;
background: #fff;
border-radius: 12px;
box-shadow: 1px 3px 2px -2px #3b96a20f 1px 4px 28px -2px #3b96a21c 1px 12px 36px -2px #3b96a21a;
border: 1px solid #3b96a22e;
z-index: 1000;
font-family: 'EB Garamond', Georgia, serif;
overflow: hidden
}

.ck_head {
padding: 24px 24px 12px
}

.ck_ttl {
font-size: 16px;
font-weight: 700;
line-height: 1.4;
color: #2a6e78;
margin: 0 0 4px
}

.ck_desc {
font-size: 14px;
line-height: 1.7;
color: #4a7a82;
margin: 0
}

.ck_acts {
padding: 12px 24px 24px;
display: flex;
align-items: center;
gap: 24px
}

.ck_btn_accept {
font-family: 'EB Garamond', Georgia, serif;
font-size: 14px;
font-weight: 700;
line-height: 1.4;
color: #fff;
background: #3B96A2;
border: none;
border-radius: 6px;
padding: 12px 24px;
cursor: pointer;
text-transform: uppercase;
transition: background-color .45s cubic-bezier(0.22, 1, 0.36, 1);
letter-spacing: .04em
}

.ck_btn_accept:hover,
.ck_btn_accept:focus {
background: #2a6e78;
outline: none
}

.ck_btn_accept:focus {
outline: 2px solid #2a6e78;
outline-offset: 2px
}

.ck_btn_settings {
font-family: 'EB Garamond', Georgia, serif;
font-size: 14px;
line-height: 1.4;
color: #3B96A2;
background: none;
border: none;
cursor: pointer;
text-decoration: underline;
padding: 0;
transition: color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.ck_btn_settings:hover,
.ck_btn_settings:focus {
color: #2a6e78;
outline: none
}

.ck_btn_settings:focus {
outline: 2px solid #3B96A2;
outline-offset: 2px;
border-radius: 6px
}

.ck_panel {
border-top: 1px solid #3b96a226;
padding: 12px 24px 24px
}

.ck_toggle_row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
margin-bottom: 12px
}

.ck_toggle_lbl {
font-size: 14px;
line-height: 1.4;
color: #2a6e78
}

.ck_chk {
width: 16px;
height: 16px;
accent-color: #3B96A2;
cursor: pointer
}

.ck_save_btn {
font-family: 'EB Garamond', Georgia, serif;
font-size: 14px;
font-weight: 700;
line-height: 1.4;
color: #3B96A2;
background: none;
border: 1px solid #3B96A2;
border-radius: 6px;
padding: 4px 12px;
cursor: pointer;
text-transform: uppercase;
transition: background-color .45s cubic-bezier(0.22, 1, 0.36, 1), color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.ck_save_btn:hover,
.ck_save_btn:focus {
background: #3B96A2;
color: #fff;
outline: none
}

.ck_save_btn:focus {
outline: 2px solid #3B96A2;
outline-offset: 2px
}

.ck_gear_fixed {
position: fixed;
bottom: 24px;
right: 24px;
width: 44px;
height: 44px;
border-radius: 20px;
background: #fff;
border: 1px solid #3b96a247;
box-shadow: 1px 4px 28px -2px #3b96a21c;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
z-index: 999;
transition: background-color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.ck_gear_fixed:hover,
.ck_gear_fixed:focus {
background: #E6E9F0;
outline: none
}

.ck_gear_fixed:focus {
outline: 2px solid #3B96A2;
outline-offset: 2px
}

@media (max-width: 768px) {
.hdr_top {
padding: 24px 24px 12px;
flex-wrap: wrap
}

.hdr_nav_row {
padding: 0 24px
}

.hdr_addr {
display: none
}

.ftr_body {
padding: 48px 24px 24px;
flex-direction: column;
align-items: flex-start
}

.ftr_bottom {
padding: 24px;
flex-direction: column;
align-items: flex-start
}

.ck_toast {
width: calc(100vw - 48px);
right: 24px
}
}

@media (max-width: 480px) {
.brand_name {
font-size: 36px
}

.hdr_top {
padding: 12px
}

.hdr_nav_row {
padding: 0 12px
}

.nav_lnk {
padding: 12px;
font-size: 14px
}
}

.doc-block {
max-width: 1366px;
margin: 0 auto;
padding: 48px 24px
}

.doc-block p {
font-size: 16px;
line-height: 1.7;
margin-bottom: 24px;
color: #2c3a3b
}

.doc-block ul,
.doc-block ol {
font-size: 16px;
line-height: 1.7;
padding-left: 24px;
margin-bottom: 24px
}

.doc-block li {
margin-bottom: 12px;
color: #2c3a3b
}

.doc-block ul li::marker {
color: #3B96A2
}

.doc-block ol li::marker {
color: #3B96A2;
font-weight: 600
}

.doc-block strong,
.doc-block b {
font-weight: 700;
color: #1e2e30
}

.doc-block a {
color: #3B96A2;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
transition: color .45s cubic-bezier(0.22, 1, 0.36, 1), text-decoration-color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.doc-block a:hover {
color: #2a7480;
text-decoration-color: #A3A4D9
}

.doc-block table {
width: 100%;
border-collapse: collapse;
margin-bottom: 24px;
font-size: 14px;
line-height: 1.4;
border-radius: 12px;
overflow: hidden;
box-shadow: 1px 4px 28px -2px #3b96a21c
}

.doc-block thead {
background-color: #3B96A2
}

.doc-block thead th {
color: #fff;
font-size: 14px;
font-weight: 700;
padding: 12px 24px;
text-align: left;
line-height: 1.4
}

.doc-block tbody tr {
background-color: #fff;
transition: background-color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.doc-block tbody tr:nth-child(even) {
background-color: #E6E9F0
}

.doc-block tbody tr:hover {
background-color: #a3a4d92e
}

.doc-block td {
padding: 12px 24px;
color: #2c3a3b;
line-height: 1.7;
border-bottom: 1px solid #3b96a21a
}

.doc-block div {
margin-bottom: 24px
}

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

.rdmp .pg-limit {
max-width: 1366px;
margin-left: auto;
margin-right: auto;
padding-left: 24px;
padding-right: 24px
}

.rdmp .title-blk {
padding-top: 96px;
padding-bottom: 96px;
background: #E6E9F0;
position: relative
}

.rdmp .title-blk::after {
content: "";
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: radial-gradient(ellipse at 30% 60%, #E6E9F0 30%, #c8cdd9 100%);
z-index: 0;
pointer-events: none
}

.rdmp .title-blk .pg-limit {
position: relative;
z-index: 1
}

.rdmp .title-eyebrow {
display: block;
font-size: 14px;
line-height: 1.4;
letter-spacing: .18em;
text-transform: uppercase;
color: #3B96A2;
margin-bottom: 24px;
border-bottom: 1.5px solid #3B96A2;
padding-bottom: 12px;
width: fit-content
}

.rdmp .title-h1 {
font-size: 70px;
line-height: 1.1;
color: #22404a;
font-style: italic;
margin-bottom: 24px;
max-width: 780px
}

.rdmp .title-sub {
font-size: 16px;
line-height: 1.7;
color: #3a3d52;
max-width: 480px;
margin-bottom: 48px
}

.rdmp .title-link {
display: inline-flex;
align-items: center;
gap: 12px;
font-size: 14px;
line-height: 1.4;
text-transform: uppercase;
letter-spacing: .12em;
color: #fff;
background: #3B96A2;
padding: 12px 24px;
border-radius: 6px;
text-decoration: none;
box-shadow: 1px 4px 28px -2px #3b96a21c;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1), padding .45s cubic-bezier(0.22, 1, 0.36, 1);
overflow: hidden;
position: relative
}

.rdmp .title-link .lnk-icon {
display: inline-block;
width: 16px;
height: 16px;
flex-shrink: 0;
opacity: 0;
transform: translateX(-8px);
transition: opacity .4s cubic-bezier(0.22, 1, 0.36, 1), transform .4s cubic-bezier(0.22, 1, 0.36, 1)
}

.rdmp .title-link .lnk-txt {
transition: transform .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.rdmp .title-link:hover .lnk-icon {
opacity: 1;
transform: translateX(0)
}

.rdmp .title-link:hover .lnk-txt {
transform: translateX(4px)
}

.rdmp .title-link:hover {
background: #2e7a85;
box-shadow: 1px 12px 36px -2px #3b96a21a
}

.rdmp .svg-divider-zz {
display: block;
width: 100%;
line-height: 0
}

.rdmp .phase-strip {
background: radial-gradient(ellipse at 50% 50%, #f5f7fb 0%, #dde2ec 100%);
padding-top: 96px;
padding-bottom: 48px
}

.rdmp .phase-strip .pg-limit {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start
}

.rdmp .phase-left {
position: sticky;
top: 48px
}

.rdmp .phase-label {
font-size: 14px;
line-height: 1.4;
letter-spacing: .16em;
text-transform: uppercase;
color: #A3A4D9;
margin-bottom: 12px
}

.rdmp .phase-h2 {
font-size: 52px;
line-height: 1.1;
color: #22404a;
font-style: italic;
margin-bottom: 24px
}

.rdmp .phase-desc {
font-size: 16px;
line-height: 1.7;
color: #3a3d52;
max-width: 420px
}

.rdmp .phase-img-wrap {
margin-top: 48px;
border-radius: 12px;
overflow: hidden;
box-shadow: 1px 4px 28px -2px #3b96a21c;
width: 100%;
aspect-ratio: 1/1;
clip-path: inset(0 100% 0 0);
animation: img-wipe .7s cubic-bezier(0.22, 1, 0.36, 1) .2s forwards
}

@keyframes img-wipe {
to {
clip-path: inset(0 0% 0 0)
}
}

.rdmp .phase-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: grayscale(100%);
transition: filter .6s cubic-bezier(0.22, 1, 0.36, 1)
}

.rdmp .phase-img-wrap:hover img {
filter: grayscale(0%)
}

.rdmp .phase-steps {
display: flex;
flex-direction: column;
gap: 24px
}

.rdmp .step-card {
background: #fff;
border-radius: 12px;
padding: 24px;
box-shadow: 1px 3px 2px -2px #3b96a20f inset 0 2px 8px -4px #a3a4d92e;
transition: box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1), transform .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.rdmp .step-card:hover {
box-shadow: 1px 12px 36px -2px #3b96a21a;
transform: translateY(-2px)
}

.rdmp .step-num {
font-size: 14px;
line-height: 1.4;
letter-spacing: .14em;
text-transform: uppercase;
color: #3B96A2;
margin-bottom: 12px;
display: block
}

.rdmp .step-title {
font-size: 16px;
line-height: 1.4;
color: #22404a;
font-style: italic;
font-weight: 600;
margin-bottom: 12px
}

.rdmp .step-body {
font-size: 14px;
line-height: 1.7;
color: #3a3d52
}

.rdmp .milestones-blk {
background: #22404a;
padding-top: 96px;
padding-bottom: 96px;
position: relative
}

.rdmp .milestones-blk::before {
content: "";
display: block;
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 70% 30%, #2e5a66 0%, #22404a 60%);
pointer-events: none;
z-index: 0
}

.rdmp .milestones-blk .pg-limit {
position: relative;
z-index: 1
}

.rdmp .ms-top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
margin-bottom: 48px;
gap: 24px
}

.rdmp .ms-h2 {
font-size: 52px;
line-height: 1.1;
color: #E6E9F0;
font-style: italic;
max-width: 560px
}

.rdmp .ms-aside {
font-size: 14px;
line-height: 1.7;
color: #A3A4D9;
max-width: 320px;
text-align: right
}

.rdmp .ms-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px
}

.rdmp .ms-item {
border-radius: 12px;
padding: 24px;
background: #ffffff0d;
border-top: 2px solid #a3a4d959;
transition: background .55s cubic-bezier(0.22, 1, 0.36, 1), border-color .55s cubic-bezier(0.22, 1, 0.36, 1)
}

.rdmp .ms-item:hover {
background: #a3a4d91f;
border-color: #A3A4D9
}

.rdmp .ms-item-num {
font-size: 36px;
line-height: 1.1;
color: #3B96A2;
font-style: italic;
display: block;
margin-bottom: 12px
}

.rdmp .ms-item-label {
font-size: 14px;
line-height: 1.4;
color: #E6E9F0;
letter-spacing: .08em;
text-transform: uppercase;
margin-bottom: 12px;
display: block
}

.rdmp .ms-item-desc {
font-size: 14px;
line-height: 1.7;
color: #A3A4D9
}

.rdmp .path-blk {
background: #fff;
padding-top: 96px;
padding-bottom: 96px
}

.rdmp .path-blk .pg-limit {
display: flex;
flex-direction: column;
align-items: center
}

.rdmp .path-eyebrow {
font-size: 14px;
line-height: 1.4;
letter-spacing: .18em;
text-transform: uppercase;
color: #A3A4D9;
margin-bottom: 12px
}

.rdmp .path-h2 {
font-size: 52px;
line-height: 1.1;
color: #22404a;
font-style: italic;
text-align: center;
max-width: 680px;
margin-bottom: 12px
}

.rdmp .path-sub {
font-size: 16px;
line-height: 1.7;
color: #3a3d52;
text-align: center;
max-width: 560px;
margin-bottom: 48px
}

.rdmp .path-timeline {
width: 100%;
display: flex;
flex-direction: column;
gap: 0;
position: relative
}

.rdmp .path-timeline::before {
content: "";
display: block;
position: absolute;
left: 50%;
top: 0;
bottom: 0;
width: 2px;
background: linear-gradient(180deg, #3B96A2 0%, #A3A4D9 100%);
transform: translateX(-50%)
}

.rdmp .tl-item {
display: grid;
grid-template-columns: 1fr 48px 1fr;
gap: 0;
align-items: start;
margin-bottom: 48px
}

.rdmp .tl-item:last-child {
margin-bottom: 0
}

.rdmp .tl-card {
background: #E6E9F0;
border-radius: 12px;
padding: 24px;
box-shadow: 1px 3px 2px -2px #3b96a20f;
transition: box-shadow .6s cubic-bezier(0.22, 1, 0.36, 1)
}

.rdmp .tl-card:hover {
box-shadow: 1px 12px 36px -2px #3b96a21a
}

.rdmp .tl-item.right .tl-card {
grid-column: 3;
grid-row: 1
}

.rdmp .tl-item.left .tl-card {
grid-column: 1;
grid-row: 1
}

.rdmp .tl-dot-col {
display: flex;
flex-direction: column;
align-items: center;
padding-top: 24px
}

.rdmp .tl-dot {
width: 20px;
height: 20px;
border-radius: 48px;
background: #3B96A2;
border: 3px solid #fff;
box-shadow: 1px 3px 2px -2px #3b96a20f;
flex-shrink: 0
}

.rdmp .tl-item.right .tl-dot-col {
grid-column: 2;
grid-row: 1
}

.rdmp .tl-item.left .tl-dot-col {
grid-column: 2;
grid-row: 1
}

.rdmp .tl-empty {
grid-row: 1
}

.rdmp .tl-item.left .tl-empty {
grid-column: 3
}

.rdmp .tl-item.right .tl-empty {
grid-column: 1
}

.rdmp .tl-phase-tag {
font-size: 14px;
line-height: 1.4;
letter-spacing: .12em;
text-transform: uppercase;
color: #3B96A2;
margin-bottom: 12px;
display: block
}

.rdmp .tl-card-h {
font-size: 16px;
line-height: 1.4;
color: #22404a;
font-style: italic;
font-weight: 600;
margin-bottom: 12px
}

.rdmp .tl-card-p {
font-size: 14px;
line-height: 1.7;
color: #3a3d52
}

@media (max-width: 900px) {
.rdmp .phase-strip .pg-limit {
grid-template-columns: 1fr
}

.rdmp .phase-left {
position: static
}

.rdmp .ms-grid {
grid-template-columns: 1fr 1fr
}

.rdmp .ms-top {
flex-direction: column;
align-items: flex-start
}

.rdmp .ms-aside {
text-align: left
}
}

@media (max-width: 640px) {
.rdmp .title-h1 {
font-size: 52px
}

.rdmp .phase-h2,
.rdmp .ms-h2,
.rdmp .path-h2 {
font-size: 36px
}

.rdmp .ms-grid {
grid-template-columns: 1fr
}

.rdmp .path-timeline::before {
left: 20px
}

.rdmp .tl-item {
grid-template-columns: 40px 1fr
}

.rdmp .tl-item.right .tl-card,
.rdmp .tl-item.left .tl-card {
grid-column: 2;
grid-row: 1
}

.rdmp .tl-item.right .tl-dot-col,
.rdmp .tl-item.left .tl-dot-col {
grid-column: 1;
grid-row: 1
}

.rdmp .tl-item.right .tl-empty,
.rdmp .tl-item.left .tl-empty {
display: none
}
}

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

.ctus-pg .pg-band {
width: 100%;
position: relative
}

.ctus-pg .reach-split {
background: #1a2e32;
position: relative;
padding: 96px 0 48px;
overflow: hidden
}

.ctus-pg .reach-split::before {
content: "";
position: absolute;
inset: 0;
background-image: linear-gradient(#3b96a212 1px, transparent 1px), linear-gradient(90deg, #3b96a212 1px, transparent 1px);
background-size: 48px 48px;
pointer-events: none
}

.ctus-pg .reach-split .circ-deco {
position: absolute;
bottom: -80px;
right: -80px;
width: 320px;
height: 320px;
border-radius: 50%;
border: 1px solid #3b96a21f;
pointer-events: none
}

.ctus-pg .reach-split .circ-deco::before {
content: "";
position: absolute;
inset: 24px;
border-radius: 50%;
border: 1px solid #3b96a217
}

.ctus-pg .reach-split .circ-deco::after {
content: "";
position: absolute;
inset: 48px;
border-radius: 50%;
border: 1px solid #3b96a20f
}

.ctus-pg .reach-inner {
max-width: 1366px;
margin: 0 auto;
padding: 0 48px;
display: flex;
flex-direction: row;
gap: 96px;
align-items: flex-start
}

.ctus-pg .reach-left {
flex: 0 0 340px;
display: flex;
flex-direction: column;
gap: 48px
}

.ctus-pg .reach-eyebrow {
font-size: 14px;
line-height: 1.4;
color: #3B96A2;
letter-spacing: .08em;
text-transform: uppercase;
margin: 0 0 12px
}

.ctus-pg .reach-hdg {
font-size: 52px;
line-height: 1.1;
color: #E6E9F0;
font-style: italic;
margin: 0
}

.ctus-pg .reach-hdg em {
color: #3B96A2;
font-style: normal
}

.ctus-pg .reach-sub {
font-size: 16px;
line-height: 1.7;
color: #e6e9f0b8;
margin: 0
}

.ctus-pg .contact-facts {
display: flex;
flex-direction: column;
gap: 24px;
margin: 0;
padding: 0;
list-style: none
}

.ctus-pg .contact-facts li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px
}

.ctus-pg .fact-ico {
flex-shrink: 0;
width: 36px;
height: 36px;
border-radius: 12px;
background: #3b96a226;
display: flex;
align-items: center;
justify-content: center
}

.ctus-pg .fact-ico svg {
width: 16px;
height: 16px;
fill: #3B96A2
}

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

.ctus-pg .fact-label {
font-size: 14px;
line-height: 1.4;
color: #e6e9f080;
text-transform: uppercase;
letter-spacing: .06em
}

.ctus-pg .fact-val {
font-size: 16px;
line-height: 1.4;
color: #E6E9F0
}

.ctus-pg .fact-val a {
color: #E6E9F0;
text-decoration: none;
transition: color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus-pg .fact-val a:hover {
color: #3B96A2
}

.ctus-pg .reach-right {
flex: 1 1 0;
padding-bottom: 96px
}

.ctus-pg .form-card {
background: #e6e9f00a;
border: 1px solid #3b96a22e;
border-radius: 20px;
padding: 48px;
box-shadow: 1px 12px 36px -2px #3b96a21a
}

.ctus-pg .form-card-hdg {
font-size: 36px;
line-height: 1.1;
color: #E6E9F0;
font-style: italic;
margin: 0 0 12px
}

.ctus-pg .form-card-note {
font-size: 14px;
line-height: 1.7;
color: #e6e9f08c;
margin: 0 0 48px
}

.ctus-pg .qtype-row {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 48px
}

.ctus-pg .qtype-lbl {
font-size: 14px;
line-height: 1.4;
color: #e6e9f099;
text-transform: uppercase;
letter-spacing: .06em
}

.ctus-pg .qtype-opts {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 12px
}

.ctus-pg .qtype-opt {
position: relative
}

.ctus-pg .qtype-opt input[type="radio"] {
position: absolute;
opacity: 0;
width: 0;
height: 0
}

.ctus-pg .qtype-opt label {
display: inline-block;
padding: 12px 24px;
border-radius: 36px;
border: 1px solid #3b96a24d;
font-size: 14px;
line-height: 1.4;
color: #e6e9f0b3;
cursor: pointer;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), border-color .5s cubic-bezier(0.22, 1, 0.36, 1), color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus-pg .qtype-opt input[type="radio"]:checked+label {
background: #3b96a238;
border-color: #3B96A2;
color: #E6E9F0
}

.ctus-pg .qtype-opt label:hover {
border-color: #3b96a299;
color: #E6E9F0
}

.ctus-pg .form-row-pair {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-bottom: 24px
}

.ctus-pg .form-field {
display: flex;
flex-direction: column;
gap: 4px
}

.ctus-pg .form-field label {
font-size: 14px;
line-height: 1.4;
color: #e6e9f099;
text-transform: uppercase;
letter-spacing: .06em
}

.ctus-pg .form-field input,
.ctus-pg .form-field select {
background: #e6e9f00d;
border: 1px solid #3b96a238;
border-radius: 12px;
padding: 12px 24px;
font-size: 16px;
line-height: 1.4;
color: #E6E9F0;
width: 100%;
transition: border-color .45s cubic-bezier(0.22, 1, 0.36, 1), background .45s cubic-bezier(0.22, 1, 0.36, 1);
box-sizing: border-box
}

.ctus-pg .form-field input::placeholder {
color: #e6e9f04d;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap
}

.ctus-pg .form-field input:focus,
.ctus-pg .form-field select:focus {
border-color: #3B96A2;
background: #3b96a214;
outline: none;
box-shadow: 1px 4px 28px -2px #3b96a21c
}

.ctus-pg .form-field select {
appearance: none;
-webkit-appearance: none;
cursor: pointer
}

.ctus-pg .form-field-full {
margin-bottom: 24px
}

.ctus-pg .privacy-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
margin-bottom: 48px;
padding: 24px;
background: #3b96a20f;
border-radius: 12px
}

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

.ctus-pg .privacy-txt {
font-size: 14px;
line-height: 1.7;
color: #e6e9f099;
margin: 0
}

.ctus-pg .privacy-txt a {
color: #3B96A2;
text-decoration: underline;
text-underline-offset: 3px;
transition: color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus-pg .privacy-txt a:hover {
color: #A3A4D9
}

.ctus-pg .submit-btn {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 12px;
background: #3B96A2;
color: #fff;
border: none;
border-radius: 6px;
padding: 12px 48px;
font-size: 14px;
line-height: 1.4;
letter-spacing: .08em;
text-transform: uppercase;
cursor: pointer;
position: relative;
overflow: hidden;
box-shadow: 1px 4px 28px -2px #3b96a21c;
transition: background .6s cubic-bezier(0.22, 1, 0.36, 1), box-shadow .6s cubic-bezier(0.22, 1, 0.36, 1), transform .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus-pg .submit-btn:hover {
background: #2d7a85;
box-shadow: 1px 12px 36px -2px #3b96a21a;
transform: translateY(-2px)
}

.ctus-pg .submit-btn:active {
transform: translateY(0)
}

.ctus-pg .submit-btn:focus-visible {
outline: 2px solid #3B96A2;
outline-offset: 3px
}

.ctus-pg .btn-arrow {
width: 16px;
height: 16px;
flex-shrink: 0;
transition: transform .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus-pg .submit-btn:hover .btn-arrow {
transform: translateX(4px)
}

.ctus-pg .divider-diamonds {
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 12px;
padding: 24px 0;
background: #E6E9F0;
overflow: hidden
}

.ctus-pg .dmd {
width: 7px;
height: 7px;
background: #3B96A2;
transform: rotate(45deg);
flex-shrink: 0;
opacity: .35
}

.ctus-pg .dmd.mid {
opacity: .7;
width: 9px;
height: 9px
}

.ctus-pg .about-strip {
background: #E6E9F0;
padding: 96px 0;
position: relative
}

.ctus-pg .strip-lines-bg {
position: absolute;
inset: 0;
background-image: repeating-linear-gradient(45deg, #a3a4d912 0px, #a3a4d912 1px, transparent 1px, transparent 18px);
pointer-events: none
}

.ctus-pg .strip-inner {
max-width: 1366px;
margin: 0 auto;
padding: 0 48px;
display: grid;
grid-template-columns: 40% 1fr;
gap: 96px;
align-items: center
}

.ctus-pg .strip-img-col {
position: relative
}

.ctus-pg .strip-img-frame {
border-radius: 20px;
overflow: hidden;
box-shadow: 1px 12px 36px -2px #3b96a21a;
box-shadow: inset 0 2px 8px #3b96a214 1px 12px 36px -2px #3b96a21a
}

.ctus-pg .strip-img-frame img {
display: block;
width: 100%;
height: 420px;
object-fit: cover;
max-width: 100%;
filter: saturate(0.85) contrast(1.08)
}

.ctus-pg .strip-corner-circ {
position: absolute;
top: -48px;
left: -48px;
width: 180px;
height: 180px;
border-radius: 50%;
border: 1px solid #3b96a226;
pointer-events: none
}

.ctus-pg .strip-corner-circ::before {
content: "";
position: absolute;
inset: 20px;
border-radius: 50%;
border: 1px solid #3b96a21a
}

.ctus-pg .strip-text-col {
display: flex;
flex-direction: column;
gap: 24px
}

.ctus-pg .strip-hdg {
font-size: 36px;
line-height: 1.1;
color: #1a2e32;
font-style: italic;
margin: 0
}

.ctus-pg .strip-hdg em {
color: #3B96A2;
font-style: normal
}

.ctus-pg .strip-body {
padding: 0 48px
}

.ctus-pg .strip-body p {
font-size: 16px;
line-height: 1.7;
color: #2c4a50;
margin: 0 0 12px
}

.ctus-pg .strip-body p:last-child {
margin-bottom: 0
}

.ctus-pg .strip-details-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px
}

.ctus-pg .detail-card {
background: #fff;
border-radius: 12px;
padding: 24px;
box-shadow: 1px 3px 2px -2px #3b96a20f;
transition: box-shadow .55s cubic-bezier(0.22, 1, 0.36, 1), transform .55s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus-pg .detail-card:hover {
box-shadow: 1px 4px 28px -2px #3b96a21c;
transform: translateY(-3px)
}

.ctus-pg .detail-card-lbl {
font-size: 14px;
line-height: 1.4;
color: #3b96a2cc;
text-transform: uppercase;
letter-spacing: .06em;
margin: 0 0 4px
}

.ctus-pg .detail-card-val {
font-size: 16px;
line-height: 1.4;
color: #1a2e32;
margin: 0
}

.ctus-pg .detail-card-val a {
color: #1a2e32;
text-decoration: none;
transition: color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus-pg .detail-card-val a:hover {
color: #3B96A2
}

@keyframes pattern-drift {
0% {
background-position: 0 0
}

100% {
background-position: 48px 48px
}
}

.ctus-pg .reach-split::before {
animation: pattern-drift 8s linear infinite
}

@media (max-width: 1024px) {
.ctus-pg .reach-inner {
flex-direction: column;
gap: 48px;
padding: 0 24px
}

.ctus-pg .reach-left {
flex: none;
width: 100%
}

.ctus-pg .reach-right {
width: 100%;
padding-bottom: 48px
}

.ctus-pg .strip-inner {
grid-template-columns: 1fr;
gap: 48px;
padding: 0 24px
}

.ctus-pg .strip-body {
padding: 0
}
}

@media (max-width: 680px) {
.ctus-pg .form-row-pair {
grid-template-columns: 1fr
}

.ctus-pg .strip-details-grid {
grid-template-columns: 1fr
}

.ctus-pg .reach-hdg {
font-size: 36px
}

.ctus-pg .qtype-opts {
flex-direction: column
}

.ctus-pg .form-card {
padding: 24px
}

.ctus-pg .reach-split {
padding: 48px 0 24px
}
}

.frst {
max-width: 1366px;
margin: 0 auto;
overflow-x: clip
}

.frst .ttl_blk {
position: relative;
padding: 96px 48px;
background: radial-gradient(ellipse at 8% 15%, #3b96a238 0%, #a3a4d91a 55%, #e6e9f00a 100%)
}

.frst .ttl_blk .ttl_grid {
display: grid;
grid-template-columns: 3fr 1fr;
gap: 48px;
align-items: center;
max-width: 1366px
}

.frst .ttl_blk .ttl_text h1 {
font-size: 70px;
line-height: 1.1;
font-style: italic;
color: #1b3c40;
margin-bottom: 24px
}

.frst .ttl_blk .ttl_text .ttl_sub {
font-size: 36px;
line-height: 1.4;
color: #3B96A2;
font-style: italic;
margin-bottom: 24px
}

.frst .ttl_blk .ttl_text .ttl_desc {
font-size: 16px;
line-height: 1.7;
color: #2c4a4e;
max-width: 620px
}

.frst .ttl_blk .ttl_img_col {
display: flex;
flex-direction: column;
align-items: center
}

.frst .ttl_blk .ttl_img_wrap {
width: 260px;
height: 320px;
border-radius: 20px;
overflow: hidden;
box-shadow: 1px 12px 36px -2px #3b96a21a 0 0 48px 12px #a3a4d92e
}

.frst .ttl_blk .ttl_img_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
filter: brightness(1.06) saturate(0.92)
}

.frst .ttl_blk .wave_div {
position: absolute;
bottom: -2px;
left: 0;
width: 100%;
line-height: 0
}

.frst .ttl_blk .wave_div svg {
display: block;
width: 100%
}

.frst .ttl_blk .dot_border {
position: absolute;
top: 0;
right: 0;
width: 220px;
height: 220px;
pointer-events: none;
overflow: hidden
}

.frst .ttl_blk .dot_border svg {
width: 100%;
height: 100%
}

.frst .mthd_blk {
padding: 96px 48px 72px;
background: #f2f5f8;
position: relative
}

.frst .mthd_blk .mthd_inner {
display: grid;
grid-template-columns: 1fr 3fr;
gap: 48px;
max-width: 1366px;
align-items: start
}

.frst .mthd_blk .mthd_sidebar {
background: #3B96A2;
border-radius: 20px;
padding: 48px 24px;
color: #fff;
box-shadow: 1px 4px 28px -2px #3b96a21c;
position: sticky;
top: 24px
}

.frst .mthd_blk .mthd_sidebar h4 {
font-size: 14px;
line-height: 1.4;
letter-spacing: .08em;
text-transform: uppercase;
color: #ffffffb3;
margin-bottom: 24px
}

.frst .mthd_blk .mthd_sidebar .sb_stat {
font-size: 52px;
line-height: 1.1;
font-style: italic;
color: #fff;
margin-bottom: 12px
}

.frst .mthd_blk .mthd_sidebar .sb_label {
font-size: 14px;
line-height: 1.7;
color: #ffffffd1
}

.frst .mthd_blk .mthd_sidebar .sb_divider {
height: 1px;
background: #fff3;
margin: 24px 0
}

.frst .mthd_blk .mthd_main h2 {
font-size: 52px;
line-height: 1.1;
font-style: italic;
color: #1b3c40;
margin-bottom: 24px
}

.frst .mthd_blk .mthd_main .mthd_desc {
font-size: 16px;
line-height: 1.7;
color: #2c4a4e;
max-width: 560px;
margin-left: auto;
margin-right: auto;
margin-bottom: 48px
}

.frst .mthd_blk .mthd_pairs {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px
}

.frst .mthd_blk .mthd_pair_card {
background: #fff;
border-radius: 12px;
padding: 24px;
box-shadow: 1px 3px 2px -2px #3b96a20f;
border-top: 4px solid #3B96A2;
transition: box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1), transform .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.frst .mthd_blk .mthd_pair_card:hover {
box-shadow: 1px 4px 28px -2px #3b96a21c;
transform: translateY(-4px)
}

.frst .mthd_blk .mthd_pair_card h5 {
font-size: 16px;
line-height: 1.4;
color: #3B96A2;
font-style: italic;
margin-bottom: 12px
}

.frst .mthd_blk .mthd_pair_card p {
font-size: 14px;
line-height: 1.7;
color: #3a4a4e
}

.frst .mthd_blk .mthd_img_row {
margin-top: 48px;
border-radius: 20px;
overflow: hidden;
height: 280px;
box-shadow: 1px 4px 28px -2px #3b96a21c
}

.frst .mthd_blk .mthd_img_row img {
width: 100%;
height: 100%;
object-fit: cover
}

.frst .inv_blk {
padding: 72px 48px;
background: #1b3c40;
position: relative;
overflow: hidden
}

.frst .inv_blk .inv_geo {
position: absolute;
top: -60px;
right: -60px;
width: 340px;
height: 340px;
border-radius: 48px;
background: #a3a4d90f;
pointer-events: none;
transform: rotate(24deg)
}

.frst .inv_blk .inv_geo2 {
position: absolute;
bottom: -80px;
left: 10%;
width: 260px;
height: 260px;
border-radius: 36px;
background: #3b96a212;
pointer-events: none;
transform: rotate(-12deg)
}

.frst .inv_blk .inv_grid {
display: grid;
grid-template-columns: 3fr 1fr;
gap: 48px;
align-items: start;
position: relative
}

.frst .inv_blk h2 {
font-size: 52px;
line-height: 1.1;
font-style: italic;
color: #E6E9F0;
margin-bottom: 24px
}

.frst .inv_blk .inv_desc {
font-size: 16px;
line-height: 1.7;
color: #e6e9f0c7;
max-width: 540px;
margin-bottom: 48px
}

.frst .inv_blk .bars_wrap {
margin-bottom: 48px
}

.frst .inv_blk .bar_row {
margin-bottom: 24px
}

.frst .inv_blk .bar_label {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
margin-bottom: 8px
}

.frst .inv_blk .bar_label span {
font-size: 14px;
line-height: 1.4;
color: #e6e9f0d1
}

.frst .inv_blk .bar_label .bar_val {
color: #A3A4D9;
font-style: italic
}

.frst .inv_blk .bar_track {
height: 8px;
background: #e6e9f01a;
border-radius: 6px;
overflow: hidden
}

.frst .inv_blk .bar_fill {
height: 100%;
border-radius: 6px;
background: linear-gradient(90deg, #3B96A2 0%, #A3A4D9 100%);
transition: width .7s cubic-bezier(0.22, 1, 0.36, 1)
}

.frst .inv_blk .inv_aside {
background: #a3a4d91a;
border-radius: 20px;
padding: 24px;
border-top: 4px solid #A3A4D9
}

.frst .inv_blk .inv_aside h5 {
font-size: 14px;
line-height: 1.4;
color: #A3A4D9;
text-transform: uppercase;
letter-spacing: .07em;
margin-bottom: 12px
}

.frst .inv_blk .inv_aside p {
font-size: 14px;
line-height: 1.7;
color: #e6e9f0bf
}

.frst .inv_blk .inv_img_strip {
margin-top: 48px;
border-radius: 12px;
overflow: hidden;
height: 220px;
box-shadow: 1px 12px 36px -2px #3b96a21a
}

.frst .inv_blk .inv_img_strip img {
width: 100%;
height: 100%;
object-fit: cover;
filter: brightness(0.88) saturate(0.85)
}

.frst .fit_blk {
padding: 96px 48px;
background: #fff
}

.frst .fit_blk .fit_head {
max-width: 680px;
margin: 0 auto 48px;
text-align: center
}

.frst .fit_blk .fit_head h2 {
font-size: 52px;
line-height: 1.1;
font-style: italic;
color: #1b3c40;
margin-bottom: 24px
}

.frst .fit_blk .fit_head p {
font-size: 16px;
line-height: 1.7;
color: #3a4a4e
}

.frst .fit_blk .fit_cols {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start
}

.frst .fit_blk .fit_col_yes {
border-radius: 20px;
padding: 48px 24px;
background: #3b96a212;
box-shadow: inset 1px 3px 2px -2px #3b96a20f
}

.frst .fit_blk .fit_col_no {
border-radius: 20px;
padding: 48px 24px;
background: #a3a4d91a;
box-shadow: inset 1px 3px 2px -2px #a3a4d917
}

.frst .fit_blk .fit_col_yes h4,
.frst .fit_blk .fit_col_no h4 {
font-size: 16px;
line-height: 1.4;
font-style: italic;
margin-bottom: 24px
}

.frst .fit_blk .fit_col_yes h4 {
color: #3B96A2
}

.frst .fit_blk .fit_col_no h4 {
color: #A3A4D9
}

.frst .fit_blk .fit_item {
display: grid;
grid-template-columns: 20px 1fr;
gap: 12px;
align-items: start;
margin-bottom: 12px
}

.frst .fit_blk .fit_item .fit_icon {
margin-top: 3px;
flex-shrink: 0
}

.frst .fit_blk .fit_item p {
font-size: 14px;
line-height: 1.7;
color: #2c4a4e;
margin: 0
}

.frst .fit_blk .fit_img_band {
margin-top: 48px;
border-radius: 20px;
overflow: hidden;
height: 240px;
box-shadow: 1px 4px 28px -2px #3b96a21c
}

.frst .fit_blk .fit_img_band img {
width: 100%;
height: 100%;
object-fit: cover
}

.frst .hes_blk {
padding: 72px 48px 96px;
background: linear-gradient(160deg, #E6E9F0 0%, #a3a4d92e 60%, #3b96a214 100%)
}

.frst .hes_blk .hes_narrow {
max-width: 720px;
margin: 0 auto
}

.frst .hes_blk h2 {
font-size: 36px;
line-height: 1.4;
font-style: italic;
color: #1b3c40;
margin-bottom: 24px
}

.frst .hes_blk .hes_body {
font-size: 16px;
line-height: 1.7;
color: #2c4a4e;
margin-bottom: 24px;
padding: 0 96px
}

.frst .hes_blk .hes_accent {
font-size: 16px;
line-height: 1.7;
font-style: italic;
color: #A3A4D9;
padding: 0 96px;
margin-bottom: 24px
}

.frst .hes_blk .hes_link_row {
display: flex;
flex-direction: row;
gap: 24px;
padding: 0 96px;
flex-wrap: wrap
}

.frst .hes_blk .hes_btn {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 12px;
padding: 12px 24px;
background: #3B96A2;
color: #fff !important;
border-radius: 12px;
font-size: 14px;
line-height: 1.4;
text-transform: uppercase;
text-decoration: none;
letter-spacing: .06em;
box-shadow: 1px 4px 28px -2px #3b96a21c;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1), transform .45s cubic-bezier(0.22, 1, 0.36, 1);
position: relative;
overflow: hidden
}

.frst .hes_blk .hes_btn::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: #a3a4d947;
transition: left .55s cubic-bezier(0.22, 1, 0.36, 1);
border-radius: 12px
}

.frst .hes_blk .hes_btn:hover::before {
left: 0
}

.frst .hes_blk .hes_btn:hover {
background: #2d7a85;
box-shadow: 1px 12px 36px -2px #3b96a21a;
transform: translateY(-2px)
}

.frst .hes_blk .hes_btn .btn_icon {
transition: transform .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.frst .hes_blk .hes_btn:hover .btn_icon {
transform: translateX(4px)
}

.frst .hes_blk .hes_btn_sec {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 12px;
padding: 12px 24px;
background: transparent;
color: #3B96A2 !important;
border-radius: 12px;
font-size: 14px;
line-height: 1.4;
text-transform: uppercase;
text-decoration: none;
letter-spacing: .06em;
border: 1.5px solid #3B96A2;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.frst .hes_blk .hes_btn_sec:hover {
background: #3b96a217
}

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

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

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

.frst .ttl_blk {
background-size: 200% 200%;
animation: grad_shift 14s ease-in-out infinite
}

@media (max-width: 900px) {

.frst .ttl_blk .ttl_grid,
.frst .mthd_blk .mthd_inner,
.frst .inv_blk .inv_grid,
.frst .fit_blk .fit_cols {
grid-template-columns: 1fr
}

.frst .ttl_blk .ttl_text h1 {
font-size: 52px
}

.frst .mthd_blk .mthd_pairs {
grid-template-columns: 1fr
}

.frst .hes_blk .hes_body,
.frst .hes_blk .hes_accent,
.frst .hes_blk .hes_link_row {
padding: 0 24px
}

.frst .ttl_blk .ttl_img_col {
display: none
}
}

@media (max-width: 600px) {

.frst .ttl_blk,
.frst .mthd_blk,
.frst .inv_blk,
.frst .fit_blk,
.frst .hes_blk {
padding: 48px 24px
}

.frst .ttl_blk .ttl_text h1 {
font-size: 36px
}

.frst .mthd_blk .mthd_main h2,
.frst .inv_blk h2,
.frst .fit_blk .fit_head h2 {
font-size: 36px
}
}

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

.abt-pg .pg-bound {
max-width: 1366px;
margin-left: auto;
margin-right: auto;
padding-left: 24px;
padding-right: 24px
}

.abt-pg .load-reveal {
animation: blurIn .7s cubic-bezier(0.22, 1, 0.36, 1) both
}

.abt-pg .load-reveal.delay-1 {
animation-delay: .15s
}

.abt-pg .load-reveal.delay-2 {
animation-delay: .3s
}

.abt-pg .load-reveal.delay-3 {
animation-delay: .45s
}

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

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

.abt-pg .pan-img {
animation: panLR 18s ease-in-out infinite alternate
}

@keyframes panLR {
from {
object-position: 0 center
}

to {
object-position: 100% center
}
}

.abt-pg .intro-strip {
padding-top: 96px;
padding-bottom: 96px;
background: #E6E9F0;
position: relative
}

.abt-pg .intro-strip::before {
content: "";
position: absolute;
top: -60px;
right: -60px;
width: 220px;
height: 220px;
border: 2px solid #3b96a22e;
border-radius: 48px;
transform: rotate(18deg);
pointer-events: none
}

.abt-pg .intro-grid {
display: grid;
grid-template-columns: 340px 1fr;
gap: 48px;
align-items: center
}

.abt-pg .intro-img-card {
position: relative;
border-radius: 20px;
overflow: hidden;
box-shadow: 1px 4px 28px -2px #3b96a21c
}

.abt-pg .intro-img-card img {
width: 100%;
height: 420px;
object-fit: cover;
display: block;
border-radius: 20px;
clip-path: polygon(0 0, 100% 0, 100% 88%, 88% 100%, 0 100%)
}

.abt-pg .intro-img-card .noise-layer {
position: absolute;
inset: 0;
border-radius: 20px;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.08'/%3E%3C/svg%3E");
mix-blend-mode: overlay;
pointer-events: none
}

.abt-pg .intro-img-card .dbl-exp {
position: absolute;
inset: 0;
background: linear-gradient(160deg, #3b96a238 0%, #a3a4d924 100%);
border-radius: 20px;
pointer-events: none
}

.abt-pg .intro-txt {
padding-left: 24px
}

.abt-pg .intro-txt .eyebrow {
font-size: 14px;
line-height: 1.4;
color: #3B96A2;
letter-spacing: .08em;
text-transform: uppercase;
margin-bottom: 12px;
display: block
}

.abt-pg .intro-txt h1 {
font-size: 52px;
line-height: 1.1;
color: #1e3a3f;
margin-bottom: 24px;
font-style: italic
}

.abt-pg .intro-txt .lead-para {
font-size: 16px;
line-height: 1.7;
color: #2c3e42;
margin-bottom: 24px;
max-width: 520px
}

.abt-pg .intro-txt .stat-row {
display: flex;
flex-direction: row;
gap: 48px;
margin-top: 24px
}

.abt-pg .stat-item .stat-num {
font-size: 36px;
line-height: 1.1;
color: #3B96A2;
font-style: italic;
display: block
}

.abt-pg .stat-item .stat-lbl {
font-size: 14px;
line-height: 1.4;
color: #4a6468
}

.abt-pg .story-strip {
padding-top: 96px;
padding-bottom: 96px;
background: #fff;
position: relative
}

.abt-pg .story-strip .diag-bg {
position: absolute;
inset: 0;
background: linear-gradient(168deg, #fff 62%, #E6E9F0 62%);
pointer-events: none
}

.abt-pg .story-inner {
position: relative;
z-index: 1
}

.abt-pg .story-cols {
display: grid;
grid-template-columns: 1fr 380px;
gap: 48px;
align-items: start
}

.abt-pg .story-txt-col {
padding-right: 24px
}

.abt-pg .story-txt-col h2 {
font-size: 36px;
line-height: 1.1;
color: #1e3a3f;
margin-bottom: 24px;
font-style: italic;
max-width: 480px
}

.abt-pg .wide-para {
font-size: 16px;
line-height: 1.7;
color: #2c3e42;
margin-left: 48px;
margin-right: 48px;
margin-bottom: 24px
}

.abt-pg .story-img-wrap {
position: relative;
border-radius: 20px;
overflow: hidden;
box-shadow: 1px 12px 36px -2px #3b96a21a
}

.abt-pg .story-img-wrap img {
width: 100%;
height: 380px;
object-fit: cover;
display: block;
border-radius: 20px
}

.abt-pg .story-img-wrap .curved-deco {
position: absolute;
bottom: -24px;
right: -24px;
width: 120px;
height: 120px;
border: 3px solid #a3a4d966;
border-radius: 48px;
pointer-events: none
}

.abt-pg .method-strip {
padding-top: 96px;
padding-bottom: 96px;
background: linear-gradient(174deg, #3B96A2 0%, #2a7a85 55%, #A3A4D9 100%);
position: relative;
overflow: hidden
}

.abt-pg .method-strip .bg-curve {
position: absolute;
top: -80px;
left: -80px;
width: 320px;
height: 320px;
border: 2px solid #ffffff1f;
border-radius: 48px;
transform: rotate(28deg);
pointer-events: none
}

.abt-pg .method-heading {
text-align: center;
margin-bottom: 48px
}

.abt-pg .method-heading h2 {
font-size: 36px;
line-height: 1.1;
color: #fff;
font-style: italic;
margin-bottom: 12px
}

.abt-pg .method-heading p {
font-size: 16px;
line-height: 1.7;
color: #ffffffd1;
max-width: 560px;
margin-left: auto;
margin-right: auto
}

.abt-pg .method-cards {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px
}

.abt-pg .mcard {
background: #ffffff1a;
border-radius: 20px;
padding: 24px;
box-shadow: inset 1px 3px 2px -2px #3b96a20f 1px 4px 28px -2px #3b96a21c;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), transform .5s cubic-bezier(0.22, 1, 0.36, 1);
cursor: default
}

.abt-pg .mcard:hover {
background: #ffffff2e;
transform: translateY(-4px)
}

.abt-pg .mcard .mcard-icon {
width: 44px;
height: 44px;
border-radius: 12px;
background: #ffffff2e;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 12px
}

.abt-pg .mcard .mcard-icon svg {
width: 22px;
height: 22px;
fill: #fff
}

.abt-pg .mcard h4 {
font-size: 16px;
line-height: 1.4;
color: #fff;
margin-bottom: 12px;
font-style: italic
}

.abt-pg .mcard p {
font-size: 14px;
line-height: 1.7;
color: #fffc;
margin: 0
}

.abt-pg .team-strip {
padding-top: 96px;
padding-bottom: 96px;
background: #E6E9F0
}

.abt-pg .team-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start
}

.abt-pg .team-left h2 {
font-size: 36px;
line-height: 1.1;
color: #1e3a3f;
font-style: italic;
margin-bottom: 24px
}

.abt-pg .team-left .wide-para {
margin-left: 0;
margin-right: 0
}

.abt-pg .team-img-pair {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px
}

.abt-pg .t-img-box {
border-radius: 20px;
overflow: hidden;
box-shadow: 1px 4px 28px -2px #a3a4d91c;
position: relative
}

.abt-pg .t-img-box img {
width: 100%;
height: 260px;
object-fit: cover;
display: block;
transition: transform .6s cubic-bezier(0.22, 1, 0.36, 1)
}

.abt-pg .t-img-box:hover img {
transform: scale(1.04)
}

.abt-pg .t-img-box .t-caption {
position: absolute;
bottom: 0;
left: 0;
right: 0;
background: linear-gradient(0deg, #1e3a3fd1 0%, transparent 100%);
padding: 12px;
border-radius: 0 0 20px 20px
}

.abt-pg .t-img-box .t-caption .t-name {
font-size: 14px;
line-height: 1.4;
color: #fff;
display: block;
font-style: italic
}

.abt-pg .t-img-box .t-caption .t-role {
font-size: 14px;
line-height: 1.4;
color: #e6e9f0cc
}

.abt-pg .team-pair-solo {
grid-column: 1 / -1;
max-width: 260px;
margin-left: auto;
margin-right: auto
}

.abt-pg .values-list {
margin-top: 24px;
display: flex;
flex-direction: column;
gap: 12px
}

.abt-pg .val-item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
background: #fff;
border-radius: 12px;
padding: 12px;
box-shadow: 1px 3px 2px -2px #3b96a20f;
transition: box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.abt-pg .val-item:hover {
box-shadow: 1px 4px 28px -2px #3b96a21c
}

.abt-pg .val-dot {
width: 10px;
height: 10px;
border-radius: 6px;
background: #3B96A2;
flex-shrink: 0;
margin-top: 6px
}

.abt-pg .val-item p {
font-size: 14px;
line-height: 1.7;
color: #2c3e42;
margin: 0
}

.abt-pg .val-item p em {
color: #A3A4D9;
font-style: italic
}

@media (max-width: 900px) {
.abt-pg .intro-grid {
grid-template-columns: 1fr
}

.abt-pg .intro-img-card img {
height: 280px
}

.abt-pg .intro-txt {
padding-left: 0
}

.abt-pg .intro-txt h1 {
font-size: 36px
}

.abt-pg .story-cols {
grid-template-columns: 1fr
}

.abt-pg .story-img-wrap {
order: -1
}

.abt-pg .wide-para {
margin-left: 0;
margin-right: 0
}

.abt-pg .method-cards {
grid-template-columns: 1fr
}

.abt-pg .team-layout {
grid-template-columns: 1fr
}

.abt-pg .team-img-pair {
grid-template-columns: 1fr
}

.abt-pg .team-pair-solo {
max-width: 100%
}
}

@media (max-width: 600px) {
.abt-pg .intro-txt h1 {
font-size: 36px
}

.abt-pg .intro-txt .stat-row {
gap: 24px;
flex-wrap: wrap
}

.abt-pg .method-heading h2 {
font-size: 36px
}
}

.success_pg {
min-height: 80vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 96px 24px;
background: linear-gradient(160deg, #fff 0%, #E6E9F0 60%, #d6eef1 100%)
}

.success_pg .card_wrap {
max-width: 560px;
width: 100%;
background: #fff;
border-radius: 20px;
padding: 48px;
box-shadow: 1px 4px 28px -2px #3b96a21c 1px 12px 36px -2px #3b96a21a;
text-align: center
}

.success_pg .icon_circle {
width: 72px;
height: 72px;
border-radius: 36px;
background: linear-gradient(160deg, #3B96A2 0%, #A3A4D9 100%);
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 24px;
box-shadow: 1px 3px 2px -2px #3b96a20f
}

.success_pg .icon_circle svg {
display: block
}

.success_pg .success_heading {
font-size: 36px;
line-height: 1.1;
font-style: italic;
color: #2a6e78;
margin: 0 0 12px
}

.success_pg .success_sub {
font-size: 16px;
line-height: 1.7;
color: #3d4a52;
margin: 0 0 24px
}

.success_pg .detail_row {
background: #E6E9F0;
border-radius: 12px;
padding: 12px 24px;
margin: 0 0 24px;
font-size: 14px;
line-height: 1.7;
color: #3d4a52
}

.success_pg .detail_row span {
color: #3B96A2;
font-style: italic
}

.success_pg .btn_home {
display: inline-block;
padding: 12px 48px;
background: #3B96A2;
color: #fff;
border-radius: 6px;
text-decoration: none;
font-size: 14px;
letter-spacing: .06em;
text-transform: uppercase;
font-weight: 600;
border: none;
cursor: pointer;
transition: background-color .5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow .6s cubic-bezier(0.22, 1, 0.36, 1);
box-shadow: 1px 3px 2px -2px #3b96a20f
}

.success_pg .btn_home:hover,
.success_pg .btn_home:focus {
background: #2a6e78;
box-shadow: 1px 4px 28px -2px #3b96a21c;
outline: none
}

.success_pg .contact_note {
margin: 24px 0 0;
font-size: 14px;
line-height: 1.7;
color: #5a6470
}

.success_pg .contact_note a {
color: #3B96A2;
text-decoration: none;
border-bottom: 1px solid #3b96a24d;
transition: border-color .4s ease-in-out
}

.success_pg .contact_note a:hover {
border-color: #3B96A2
}