html {
box-sizing: border-box;
font-family: 'Open Sans', sans-serif;
}

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

body {
margin: 0;
padding: 0;
}

.pghead {
position: relative;
z-index: 100;
background: #ffffff;
border-bottom: 3px solid #00DCA9;
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
}

.pghead-frame {
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
}

.pghead-brand {
display: flex;
flex-direction: column;
align-items: center;
padding: 32px 0 16px;
border-bottom: 1px solid rgba(45, 43, 165, 0.12);
}

.pghead-logobox {
display: flex;
align-items: center;
gap: 16px;
}

.pghead-imgwrap {
width: 72px;
height: 72px;
display: flex;
align-items: center;
justify-content: center;
border: 2px solid rgba(0, 220, 169, 0.4);
box-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08), 0 5px 28px -2px rgba(0, 220, 169, 0.09);
border-radius: 18px;
padding: 8px;
background: #ffffff;
}

.pghead-imgwrap img {
width: 56px;
height: 56px;
object-fit: contain;
display: block;
}

.pghead-nametext {
display: flex;
flex-direction: column;
gap: 4px;
}

.pghead-brand-name {
font-size: 37px;
font-weight: 700;
line-height: 1.2;
color: #2D2BA5;
letter-spacing: -0.5px;
}

.pghead-brand-sub {
font-size: 13px;
line-height: 1.55;
color: #2D2BA5;
letter-spacing: 0.08em;
text-transform: uppercase;
opacity: 0.7;
}

.pghead-nav {
padding: 12px 0;
}

.pghead-navlist {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
gap: 4px;
}

.pghead-navlist li {
display: flex;
}

.pghead-navlink {
display: inline-flex;
align-items: center;
padding: 12px 16px;
font-size: 14px;
font-weight: 700;
line-height: 1.2;
color: #2D2BA5;
text-decoration: none;
border: 2px solid transparent;
border-radius: 3px;
letter-spacing: 0.04em;
transition: border-color 0.15s cubic-bezier(0.4, 0, 1, 1), box-shadow 0.12s cubic-bezier(0.4, 0, 1, 1), color 0.12s cubic-bezier(0.4, 0, 1, 1);
min-height: 44px;
}

.pghead-navlink:hover {
border-color: #00DCA9;
color: #2D2BA5;
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
}

.pghead-navlink:focus-visible {
outline: 3px solid;
outline-color: #00DCA9;
outline-offset: 2px;
border-radius: 3px;
}

.pghead-navlink.active {
border-color: #2D2BA5;
background: rgba(45, 43, 165, 0.05);
}

.pgfoot {
background: #2D2BA5;
border-top: 3px solid #00DCA9;
box-shadow: 0 -2px 2px -2px rgba(45, 43, 165, 0.08);
}

.pgfoot-frame {
max-width: 1280px;
margin: 0 auto;
padding: 32px 32px 16px;
}

.pgfoot-cols {
display: flex;
flex-wrap: wrap;
gap: 32px;
align-items: flex-start;
justify-content: space-between;
padding-bottom: 32px;
border-bottom: 1px solid rgba(0, 220, 169, 0.25);
}

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

.pgfoot-imgwrap {
width: 65px;
height: 65px;
display: flex;
align-items: center;
justify-content: center;
border: 2px solid rgba(0, 220, 169, 0.5);
box-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08);
border-radius: 18px;
padding: 8px;
background: #ffffff;
}

.pgfoot-imgwrap img {
width: 49px;
height: 49px;
object-fit: contain;
display: block;
}

.pgfoot-brandname {
font-size: 20px;
font-weight: 700;
line-height: 1.2;
color: #ffffff;
letter-spacing: 0.02em;
}

.pgfoot-linkcol {
display: flex;
flex-direction: column;
gap: 8px;
min-width: 160px;
}

.pgfoot-colhead {
font-size: 13px;
font-weight: 700;
line-height: 1.2;
color: #00DCA9;
letter-spacing: 0.1em;
text-transform: uppercase;
margin-bottom: 4px;
}

.pgfoot-link {
font-size: 14px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.85);
text-decoration: none;
border-bottom: 1px solid transparent;
transition: color 0.1s cubic-bezier(0.4, 0, 1, 1), border-color 0.1s cubic-bezier(0.4, 0, 1, 1);
width: fit-content;
}

.pgfoot-link:hover {
color: #00DCA9;
border-bottom-color: #00DCA9;
}

.pgfoot-link:focus-visible {
outline: 2px solid #00DCA9;
outline-offset: 2px;
border-radius: 3px;
}

.pgfoot-contactcol {
display: flex;
flex-direction: column;
gap: 8px;
min-width: 200px;
}

.pgfoot-contactitem {
font-size: 13px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.75);
}

.pgfoot-contactitem a {
color: rgba(255, 255, 255, 0.85);
text-decoration: none;
border-bottom: 1px solid transparent;
transition: color 0.1s cubic-bezier(0.4, 0, 1, 1), border-color 0.1s cubic-bezier(0.4, 0, 1, 1);
}

.pgfoot-contactitem a:hover {
color: #00DCA9;
border-bottom-color: #00DCA9;
}

.pgfoot-contactitem a:focus-visible {
outline: 2px solid #00DCA9;
outline-offset: 2px;
border-radius: 3px;
}

.pgfoot-bottom {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
gap: 12px;
padding-top: 16px;
}

.pgfoot-copy {
font-size: 13px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.5);
}

.pgfoot-legallinks {
display: flex;
flex-wrap: wrap;
gap: 16px;
}

.pgfoot-legallink {
font-size: 13px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.55);
text-decoration: none;
border-bottom: 1px solid transparent;
transition: color 0.1s cubic-bezier(0.4, 0, 1, 1), border-color 0.1s cubic-bezier(0.4, 0, 1, 1);
}

.pgfoot-legallink:hover {
color: #00DCA9;
border-bottom-color: rgba(0, 220, 169, 0.5);
}

.pgfoot-legallink:focus-visible {
outline: 2px solid #00DCA9;
outline-offset: 2px;
border-radius: 3px;
}

.cookiebar {
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 1200;
background: #ffffff;
border-top: 3px solid #00DCA9;
box-shadow: 0 -5px 28px -2px rgba(0, 220, 169, 0.09);
}

.cookiebar-frame {
max-width: 1280px;
margin: 0 auto;
padding: 16px 32px;
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 16px;
justify-content: space-between;
}

.cookiebar-desc {
font-size: 13px;
line-height: 1.55;
color: #2D2BA5;
flex: 1 1 300px;
}

.cookiebar-desc a {
color: #00DCA9;
text-decoration: underline;
font-weight: 700;
}

.cookiebar-desc a:focus-visible {
outline: 2px solid #2D2BA5;
outline-offset: 2px;
border-radius: 3px;
}

.cookiebar-btns {
display: flex;
flex-wrap: wrap;
gap: 12px;
align-items: center;
}

.cookiebar-btn {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 12px 16px;
font-size: 14px;
font-weight: 700;
line-height: 1.2;
border-radius: 3px;
cursor: pointer;
min-height: 44px;
font-family: 'Open Sans', sans-serif;
transition: box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1), background 0.12s cubic-bezier(0.4, 0, 1, 1);
}

.cookiebar-accept {
background: transparent;
color: #2D2BA5;
border: 3px solid #2D2BA5;
}

.cookiebar-accept:hover {
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09);
}

.cookiebar-accept:focus-visible {
outline: 2px solid #00DCA9;
outline-offset: 2px;
}

.cookiebar-decline {
background: transparent;
color: #2D2BA5;
border: 3px solid rgba(45, 43, 165, 0.35);
}

.cookiebar-decline:hover {
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09);
border-color: #2D2BA5;
}

.cookiebar-decline:focus-visible {
outline: 2px solid #00DCA9;
outline-offset: 2px;
}

.cookiebar-settings {
display: none;
width: 100%;
padding-top: 16px;
border-top: 1px solid rgba(45, 43, 165, 0.12);
gap: 16px;
flex-wrap: wrap;
}

.cookiebar-settings.showing {
display: flex;
}

.cookiebar-checkrow {
display: flex;
align-items: center;
gap: 8px;
font-size: 13px;
line-height: 1.55;
color: #2D2BA5;
}

.cookiebar-checkrow input[type="checkbox"] {
width: 18px;
height: 18px;
accent-color: #00DCA9;
cursor: pointer;
}

.cookiebar-checkrow input[type="checkbox"]:disabled {
opacity: 0.6;
cursor: not-allowed;
}

.cookiebar-settingsbtn {
background: transparent;
border: none;
padding: 0;
font-size: 13px;
font-weight: 700;
color: rgba(45, 43, 165, 0.65);
cursor: pointer;
font-family: 'Open Sans', sans-serif;
letter-spacing: 0.04em;
text-decoration: underline;
transition: color 0.1s cubic-bezier(0.4, 0, 1, 1);
min-height: 44px;
}

.cookiebar-settingsbtn:hover {
color: #2D2BA5;
}

.cookiebar-settingsbtn:focus-visible {
outline: 2px solid #00DCA9;
outline-offset: 2px;
border-radius: 3px;
}

@media (max-width: 680px) {
.pghead-brand-name {
font-size: 20px;
}

.pghead-brand {
padding: 16px 0 12px;
}

.pghead-navlink {
font-size: 13px;
padding: 8px 12px;
}

.pgfoot-cols {
flex-direction: column;
gap: 24px;
}

.cookiebar-frame {
padding: 12px 16px;
}

.pghead-frame {
padding: 0 16px;
}

.pgfoot-frame {
padding: 24px 16px 12px;
}
}

.doc-area {
max-width: 1280px;
margin: 0 auto;
padding: 48px 32px;
color: #1b1b2e;
line-height: 1.8;
font-size: 14px;
}

.doc-area em,
.doc-area i {
font-style: italic;
color: #2D2BA5;
letter-spacing: 0.01em;
}

.doc-area a {
color: #2D2BA5;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
transition: color 0.15s cubic-bezier(0.4, 0, 1, 1), text-decoration-color 0.12s ease-in;
}

.doc-area a:hover {
color: #00DCA9;
text-decoration-color: #00DCA9;
outline: none;
}

.doc-area a:focus-visible {
outline: 2px solid #2D2BA5;
outline-offset: 2px;
border-radius: 3px;
}

.doc-area table {
width: 100%;
border-collapse: collapse;
margin: 32px 0;
font-size: 13px;
line-height: 1.55;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09);
}

.doc-area thead {
background: #2D2BA5;
color: #ffffff;
}

.doc-area thead th {
padding: 16px;
font-size: 13px;
font-weight: 700;
letter-spacing: 0.06em;
text-align: left;
border-bottom: 2px solid #00DCA9;
}

.doc-area tbody tr {
background: #ffffff;
transition: background 0.1s cubic-bezier(0.4, 0, 1, 1);
}

.doc-area tbody tr:nth-child(even) {
background: #F9F3D7;
}

.doc-area tbody tr:hover {
background: #e8fdf8;
}

.doc-area td {
padding: 12px 16px;
border-bottom: 1px solid rgba(45, 43, 165, 0.08);
vertical-align: top;
color: #1b1b2e;
}

.doc-area th {
padding: 16px;
vertical-align: middle;
}

.doc-area hr {
border: none;
border-top: 2px solid transparent;
background: linear-gradient(90deg, #00DCA9, #2D2BA5, #F9F3D7);
height: 2px;
margin: 48px 0;
border-radius: 3px;
opacity: 0.55;
}

.doc-area div {
margin: 16px 0;
line-height: 1.8;
}

@media (max-width: 768px) {
.doc-area {
padding: 32px 16px;
font-size: 13px;
}

.doc-area table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
border-radius: 3px;
}

.doc-area thead th,
.doc-area td {
padding: 8px 12px;
white-space: nowrap;
}

.doc-area hr {
margin: 32px 0;
}
}

.befstart {
max-width: 100%;
overflow-x: clip;
}

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

.befstart .titleblock {
position: relative;
padding: 48px 32px;
background: linear-gradient(118deg, #2D2BA5 0%, #2D2BA5 42%, #00DCA9 100%);
overflow: hidden;
}

.befstart .titleblock::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(118deg, transparent 38%, rgba(0, 220, 169, 0.18) 100%);
pointer-events: none;
}

.befstart .titledots {
position: absolute;
top: 0;
right: 0;
width: 260px;
height: 100%;
pointer-events: none;
overflow: hidden;
}

.befstart .titledots span {
position: absolute;
display: block;
border-radius: 50%;
background: rgba(249, 243, 215, 0.18);
}

.befstart .titledots span:nth-child(1) {
width: 8px;
height: 8px;
top: 20%;
right: 48px;
}

.befstart .titledots span:nth-child(2) {
width: 5px;
height: 5px;
top: 35%;
right: 80px;
}

.befstart .titledots span:nth-child(3) {
width: 6px;
height: 6px;
top: 55%;
right: 32px;
}

.befstart .titledots span:nth-child(4) {
width: 4px;
height: 4px;
top: 70%;
right: 64px;
}

.befstart .titledots span:nth-child(5) {
width: 7px;
height: 7px;
top: 15%;
right: 120px;
}

.befstart .titledots span:nth-child(6) {
width: 5px;
height: 5px;
top: 80%;
right: 100px;
}

.befstart .titledots span:nth-child(7) {
width: 4px;
height: 4px;
top: 45%;
right: 140px;
}

.befstart .titledots span:nth-child(8) {
width: 6px;
height: 6px;
top: 62%;
right: 170px;
}

.befstart .titleinner {
max-width: 1280px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 48px;
}

.befstart .titletxt {
flex: 1 1 0;
min-width: 0;
}

.befstart .titletxt h1 {
font-size: 52px;
line-height: 1.2;
color: #F9F3D7;
margin: 0 0 16px 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08), 0 5px 28px -2px rgba(45, 43, 165, 0.09);
letter-spacing: -0.5px;
}

.befstart .titletxt .slogan {
font-size: 20px;
line-height: 1.55;
color: rgba(249, 243, 215, 0.88);
margin: 0;
font-style: italic;
}

.befstart .titleimgwrap {
flex: 0 0 320px;
width: 320px;
height: 240px;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09);
position: relative;
}

.befstart .titleimgwrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
mix-blend-mode: luminosity;
opacity: 0.92;
animation: revealclip 0.16s cubic-bezier(0.4, 0, 1, 1) both;
}

@keyframes revealclip {
from {
clip-path: inset(50% 50% 50% 50%);
}

to {
clip-path: inset(0% 0% 0% 0%);
}
}

.befstart .titleimgwrap::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(160deg, rgba(0, 220, 169, 0.12) 0%, transparent 60%);
pointer-events: none;
}

.befstart .prepblock {
background: #fff;
padding: 48px 32px;
position: relative;
}

.befstart .prepinner {
max-width: 1280px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: auto auto;
gap: 32px;
align-items: start;
}

.befstart .prepheadcol {
grid-column: 1 / -1;
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 32px;
border-bottom: 2px solid #F9F3D7;
padding-bottom: 16px;
}

.befstart .prepheadcol h2 {
font-size: 37px;
line-height: 1.2;
color: #2D2BA5;
margin: 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.befstart .prepheadcol p {
font-size: 14px;
line-height: 1.55;
color: #3a3a5c;
margin: 0;
max-width: 380px;
}

.befstart .prepcard {
background: #F9F3D7;
border-radius: 18px;
padding: 32px;
box-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08);
border: 2px solid transparent;
transition: border-color 0.12s cubic-bezier(0.4, 0, 1, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1);
position: relative;
}

.befstart .prepcard:hover {
border-color: #00DCA9;
box-shadow: 0 10px 48px -2px rgba(0, 220, 169, 0.10);
}

.befstart .prepcard.mid {
background: #fff;
border: 2px solid #F9F3D7;
align-self: stretch;
display: flex;
flex-direction: column;
justify-content: center;
}

.befstart .prepcard::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 32px;
border-radius: 0 0 18px 18px;
background: linear-gradient(to top, rgba(0, 220, 169, 0.10), transparent);
pointer-events: none;
}

.befstart .prepcard h3 {
font-size: 20px;
line-height: 1.2;
color: #2D2BA5;
margin: 0 0 12px 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.befstart .prepcard p {
font-size: 14px;
line-height: 1.55;
color: #2a2a4a;
margin: 0 0 8px 0;
}

.befstart .prepcard p:last-child {
margin-bottom: 0;
}

.befstart .preplabel {
font-size: 13px;
line-height: 1.2;
letter-spacing: 0.08em;
color: #2D2BA5;
text-transform: uppercase;
margin: 0 0 8px 0;
display: block;
}

.befstart .preplabel::after {
content: ':';
color: #00DCA9;
}

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

.befstart .preplist li {
font-size: 14px;
line-height: 1.55;
color: #2a2a4a;
padding-left: 20px;
position: relative;
}

.befstart .preplist li::before {
content: '';
position: absolute;
left: 0;
top: 8px;
width: 8px;
height: 6px;
border-left: 2px solid #00DCA9;
border-bottom: 2px solid #00DCA9;
transform: rotate(-45deg) translateY(-2px);
}

.befstart .chartcol {
grid-column: 1 / -1;
background: rgba(249, 243, 215, 0.55);
border-radius: 28px;
padding: 32px;
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
border: 1.5px solid rgba(0, 220, 169, 0.18);
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09), inset 0 1px 8px 0 rgba(0, 220, 169, 0.07);
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
}

.befstart .charttitle {
font-size: 20px;
line-height: 1.2;
color: #2D2BA5;
margin: 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
align-self: flex-start;
}

.befstart .spiderwrap {
width: 100%;
max-width: 480px;
aspect-ratio: 1;
}

.befstart .spiderwrap svg {
width: 100%;
height: 100%;
}

.befstart .chartlegend {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 12px 32px;
justify-content: center;
}

.befstart .legenditem {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 13px;
line-height: 1.2;
color: #2a2a4a;
letter-spacing: 0.04em;
}

.befstart .legenddot {
width: 10px;
height: 10px;
border-radius: 3px;
flex-shrink: 0;
}

.befstart .legenddot.skill {
background: #00DCA9;
}

.befstart .legenddot.need {
background: #2D2BA5;
}

.befstart a {
color: #2D2BA5;
text-decoration: underline;
letter-spacing: 0;
transition: letter-spacing 0.12s cubic-bezier(0.4, 0, 1, 1);
}

.befstart a:hover {
letter-spacing: 0.04em;
}

.befstart a:focus-visible {
outline: 3px solid #00DCA9 !important;
outline-offset: 2px !important;
border-radius: 3px !important;
}

@media (max-width: 900px) {
.befstart .titleinner {
flex-direction: column;
gap: 32px;
}

.befstart .titleimgwrap {
flex: 0 0 auto;
width: 100%;
max-width: 480px;
height: 200px;
}

.befstart .titletxt h1 {
font-size: 37px;
}

.befstart .prepinner {
grid-template-columns: 1fr 1fr;
}

.befstart .prepheadcol {
flex-direction: column;
align-items: flex-start;
gap: 12px;
}

.befstart .prepcard.mid {
grid-column: 1 / -1;
}
}

@media (max-width: 600px) {
.befstart .titleblock {
padding: 32px 16px;
}

.befstart .prepblock {
padding: 32px 16px;
}

.befstart .prepinner {
grid-template-columns: 1fr;
gap: 16px;
}

.befstart .titletxt h1 {
font-size: 37px;
}

.befstart .prepcard.mid {
grid-column: auto;
}

.befstart .chartlegend {
gap: 8px 16px;
}
}

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

.subpg .pgwrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
}

.subpg ::selection {
background: linear-gradient(90deg, #00DCA9, #2D2BA5);
color: #fff;
}

.subpg a {
color: #2D2BA5;
text-decoration: none;
letter-spacing: 0;
transition: letter-spacing 0.15s cubic-bezier(0.4, 0, 1, 1);
}

.subpg a:hover {
letter-spacing: 0.04em;
}

.subpg .arrowlist {
list-style: none;
padding: 0;
margin: 0;
}

.subpg .arrowlist li {
padding-left: 20px;
position: relative;
margin-bottom: 8px;
font-size: 14px;
line-height: 1.55;
color: #2a2a3d;
}

.subpg .arrowlist li::before {
content: "";
position: absolute;
left: 0;
top: 7px;
width: 8px;
height: 8px;
border-right: 2px solid #00DCA9;
border-top: 2px solid #00DCA9;
transform: rotate(45deg);
}

.subpg .titlesec {
padding: 64px 0 48px;
background: #fff;
position: relative;
}

.subpg .titlesec::after {
content: "";
display: block;
height: 2px;
background: #2D2BA5;
max-width: 1280px;
margin: 0 auto;
position: relative;
}

.subpg .titlesec::before {
content: "";
display: block;
height: 2px;
background: #00DCA9;
max-width: 1280px;
margin: 0 auto 4px;
position: relative;
}

.subpg .titledbl {
position: absolute;
bottom: 0;
left: 0;
right: 0;
}

.subpg .titledivider {
border: none;
margin: 0;
padding: 0;
}

.subpg .titledivider .dline1 {
height: 2px;
background: #00DCA9;
max-width: 1280px;
margin: 0 auto;
}

.subpg .titledivider .dline2 {
height: 4px;
}

.subpg .titledivider .dline3 {
height: 2px;
background: #2D2BA5;
max-width: 1280px;
margin: 0 auto;
}

.subpg .titleinner {
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
display: grid;
grid-template-columns: 1fr 420px;
gap: 48px;
align-items: center;
}

.subpg .titletxt {
padding-right: 48px;
}

.subpg .titlelabel {
font-size: 13px;
letter-spacing: 0.12em;
color: #2D2BA5;
text-transform: uppercase;
margin-bottom: 16px;
display: block;
}

.subpg .titleh1 {
font-size: 52px;
line-height: 1.2;
color: #1b1b2e;
margin: 0 0 16px;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.subpg .titleh1 .gradword {
background: linear-gradient(120deg, #00DCA9 0%, #2D2BA5 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.subpg .titledesc {
font-size: 14px;
line-height: 1.55;
color: #3a3a5c;
max-width: 420px;
margin: 0;
}

.subpg .titlemark {
display: inline;
background: linear-gradient(180deg, transparent 55%, rgba(0, 220, 169, 0.35) 55%);
padding-bottom: 2px;
}

.subpg .titleimgbox {
position: relative;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
}

.subpg .titleimgbox img {
width: 100%;
height: 320px;
object-fit: cover;
display: block;
transition: transform 0.18s cubic-bezier(0.4, 0, 1, 1);
}

.subpg .titleimgbox::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(120deg, rgba(45, 43, 165, 0.55) 0%, transparent 60%);
pointer-events: none;
}

.subpg .titleimgbox:hover img {
transform: scale(1.03);
}

.subpg .imgcolorwash {
position: absolute;
inset: 0;
background: rgba(0, 220, 169, 0.28);
opacity: 0;
transition: opacity 0.15s cubic-bezier(0.4, 0, 1, 1);
pointer-events: none;
z-index: 2;
}

.subpg .titleimgbox:hover .imgcolorwash {
opacity: 1;
}

.subpg .deccircles {
position: absolute;
top: -40px;
left: -40px;
width: 180px;
height: 180px;
pointer-events: none;
z-index: 0;
}

.subpg .deccircles span {
position: absolute;
border-radius: 50%;
border: 1px solid rgba(45, 43, 165, 0.07);
}

.subpg .deccircles span:nth-child(1) {
width: 60px;
height: 60px;
top: 60px;
left: 60px;
}

.subpg .deccircles span:nth-child(2) {
width: 100px;
height: 100px;
top: 40px;
left: 40px;
}

.subpg .deccircles span:nth-child(3) {
width: 140px;
height: 140px;
top: 20px;
left: 20px;
}

.subpg .deccircles span:nth-child(4) {
width: 180px;
height: 180px;
top: 0;
left: 0;
}

.subpg .infosec {
padding: 64px 0;
background: linear-gradient(158deg, #F9F3D7 0%, #fff 70%);
position: relative;
}

.subpg .infosec .pgwrap {
position: relative;
z-index: 1;
}

.subpg .infodeccircles {
position: absolute;
bottom: -30px;
right: -30px;
width: 200px;
height: 200px;
pointer-events: none;
z-index: 0;
}

.subpg .infodeccircles span {
position: absolute;
border-radius: 50%;
border: 1px solid rgba(0, 220, 169, 0.09);
}

.subpg .infodeccircles span:nth-child(1) {
width: 60px;
height: 60px;
top: 70px;
left: 70px;
}

.subpg .infodeccircles span:nth-child(2) {
width: 110px;
height: 110px;
top: 45px;
left: 45px;
}

.subpg .infodeccircles span:nth-child(3) {
width: 160px;
height: 160px;
top: 20px;
left: 20px;
}

.subpg .infodeccircles span:nth-child(4) {
width: 200px;
height: 200px;
top: 0;
left: 0;
}

.subpg .infogrid {
display: grid;
grid-template-columns: 220px 1fr 1fr;
gap: 48px;
align-items: start;
margin-top: 48px;
}

.subpg .infolabelcol {
padding-top: 8px;
}

.subpg .infolabelcol .seclab {
font-size: 13px;
letter-spacing: 0.12em;
color: #2D2BA5;
text-transform: uppercase;
display: block;
margin-bottom: 16px;
}

.subpg .infolabelcol h2 {
font-size: 37px;
line-height: 1.2;
color: #1b1b2e;
margin: 0;
text-shadow: 1px 2px 0 rgba(0, 220, 169, 0.12);
}

.subpg .infotxtcol p {
font-size: 14px;
line-height: 1.55;
color: #2a2a3d;
margin: 0 0 16px;
}

.subpg .infotxtcol p:last-child {
margin-bottom: 0;
}

.subpg .infocardcol {
display: flex;
flex-direction: column;
gap: 16px;
}

.subpg .infocard {
background: #fff;
border: 2px solid #2D2BA5;
border-radius: 18px;
padding: 16px 20px;
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09);
transition: box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1), transform 0.15s cubic-bezier(0.4, 0, 1, 1);
cursor: default;
}

.subpg .infocard:hover {
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
transform: scale(1.025);
}

.subpg .infocard h5 {
font-size: 13px;
letter-spacing: 0.08em;
color: #2D2BA5;
text-transform: uppercase;
margin: 0 0 8px;
}

.subpg .infocard p {
font-size: 14px;
line-height: 1.55;
color: #2a2a3d;
margin: 0;
}

.subpg .infodivider {
margin: 64px 0 0;
border: none;
padding: 0;
}

.subpg .infodivider .dline1 {
height: 2px;
background: #00DCA9;
max-width: 1280px;
margin: 0 auto;
}

.subpg .infodivider .dlineGap {
height: 4px;
}

.subpg .infodivider .dline2 {
height: 2px;
background: #2D2BA5;
max-width: 1280px;
margin: 0 auto;
}

.subpg .metricsec {
padding: 64px 0 80px;
background: #fff;
position: relative;
}

.subpg .metricdeccircles {
position: absolute;
top: 32px;
right: -20px;
width: 160px;
height: 160px;
pointer-events: none;
z-index: 0;
}

.subpg .metricdeccircles span {
position: absolute;
border-radius: 50%;
border: 1px solid rgba(45, 43, 165, 0.06);
}

.subpg .metricdeccircles span:nth-child(1) {
width: 50px;
height: 50px;
top: 55px;
left: 55px;
}

.subpg .metricdeccircles span:nth-child(2) {
width: 90px;
height: 90px;
top: 35px;
left: 35px;
}

.subpg .metricdeccircles span:nth-child(3) {
width: 130px;
height: 130px;
top: 15px;
left: 15px;
}

.subpg .metricdeccircles span:nth-child(4) {
width: 160px;
height: 160px;
top: 0;
left: 0;
}

.subpg .metricinner {
position: relative;
z-index: 1;
}

.subpg .metrictop {
display: grid;
grid-template-columns: 1fr 320px;
gap: 48px;
align-items: start;
margin-bottom: 48px;
}

.subpg .metricheadlab {
font-size: 13px;
letter-spacing: 0.12em;
color: #00DCA9;
text-transform: uppercase;
display: block;
margin-bottom: 12px;
}

.subpg .metrich2 {
font-size: 37px;
line-height: 1.2;
color: #1b1b2e;
margin: 0 0 16px;
text-shadow: 1px 2px 0 rgba(45, 43, 165, 0.10);
}

.subpg .metricdesc {
font-size: 14px;
line-height: 1.55;
color: #2a2a3d;
margin: 0;
}

.subpg .metricside {
background: linear-gradient(158deg, #2D2BA5 0%, #1a197a 100%);
border-radius: 18px;
padding: 32px;
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
inset-shadow: inset 0 2px 2px -2px rgba(0, 220, 169, 0.08);
}

.subpg .metricside h4 {
font-size: 14px;
color: rgba(249, 243, 215, 0.75);
margin: 0 0 16px;
letter-spacing: 0.06em;
}

.subpg .metricside .arrowlist li {
color: #F9F3D7;
}

.subpg .metricside .arrowlist li::before {
border-color: #00DCA9;
}

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

.subpg .metricitem {
border: 2px solid transparent;
border-radius: 18px;
padding: 20px 16px;
background: #fff;
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
transition: border-color 0.15s cubic-bezier(0.4, 0, 1, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1), transform 0.15s cubic-bezier(0.4, 0, 1, 1);
text-align: center;
cursor: default;
}

.subpg .metricitem:hover {
border-color: #00DCA9;
box-shadow: 0 10px 48px -2px rgba(0, 220, 169, 0.10);
transform: scale(1.03);
}

.subpg .metricitem:active {
background: rgba(0, 220, 169, 0.08);
}

.subpg .metricval {
font-size: 37px;
line-height: 1.2;
color: #2D2BA5;
display: block;
margin-bottom: 8px;
font-weight: 700;
}

.subpg .metriclab {
font-size: 13px;
letter-spacing: 0.08em;
color: #3a3a5c;
text-transform: uppercase;
}

.subpg .metriclabel span {
color: #00DCA9;
}

.subpg .metricdivider {
margin: 0 0 48px;
border: none;
padding: 0;
}

.subpg .metricdivider .dline1 {
height: 2px;
background: #F9F3D7;
max-width: 1280px;
margin: 0 auto;
}

.subpg .metricdivider .dlineGap {
height: 4px;
}

.subpg .metricdivider .dline2 {
height: 2px;
background: #00DCA9;
max-width: 1280px;
margin: 0 auto;
}

@media (max-width: 900px) {
.subpg .titleinner {
grid-template-columns: 1fr;
}

.subpg .titletxt {
padding-right: 0;
}

.subpg .titleh1 {
font-size: 37px;
}

.subpg .infogrid {
grid-template-columns: 1fr;
gap: 32px;
}

.subpg .metrictop {
grid-template-columns: 1fr;
}

.subpg .metricrow {
grid-template-columns: repeat(2, 1fr);
}
}

@media (max-width: 560px) {

.subpg .titleinner,
.subpg .pgwrap {
padding: 0 16px;
}

.subpg .titlesec {
padding: 48px 0 32px;
}

.subpg .titleh1 {
font-size: 37px;
}

.subpg .metricrow {
grid-template-columns: 1fr 1fr;
gap: 12px;
}

.subpg .infosec,
.subpg .metricsec {
padding: 48px 0;
}
}

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

.abus .abuspg {
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
}

.abus *::selection {
background: linear-gradient(90deg, #00DCA9, #2D2BA5);
color: #fff;
}

@keyframes slideFromRight {
from {
opacity: 0;
transform: translateX(60px);
}

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

@keyframes imgZoom {
from {
transform: scale(1);
}

to {
transform: scale(1.06);
}
}

.abus .titlesec {
background: #fff;
padding: 48px 0;
position: relative;
}

.abus .titlesec::after {
content: '';
display: block;
border-top: 2px dotted #00DCA9;
margin: 0 32px;
opacity: 0.55;
}

.abus .titlegrid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: center;
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
}

.abus .titletxt {
order: 1;
padding-right: 16px;
}

.abus .titlelabel {
display: inline-block;
font-size: 13px;
letter-spacing: 0.18em;
color: #2D2BA5;
font-weight: 700;
text-transform: uppercase;
margin-bottom: 16px;
border-bottom: 2px solid #00DCA9;
padding-bottom: 4px;
}

.abus .titleh1 {
font-size: 52px;
line-height: 1.2;
color: #1a1a2e;
margin: 0 0 16px 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
font-weight: 900;
}

.abus .titledesc {
font-size: 20px;
line-height: 1.55;
color: #2c2c4a;
margin: 0 0 32px 0;
max-width: 420px;
}

.abus .titleimgwrap {
order: 2;
position: relative;
border-radius: 28px;
overflow: hidden;
box-shadow: 0 10px 48px -2px rgba(0, 220, 169, 0.10);
}

.abus .titleimgwrap::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(135deg, rgba(45, 43, 165, 0.18) 0%, transparent 60%);
z-index: 1;
pointer-events: none;
}

.abus .titleimgwrap img {
width: 100%;
height: 420px;
object-fit: cover;
display: block;
animation: imgZoom 8s ease-in alternate infinite;
}

.abus .titleshape {
position: absolute;
top: -24px;
right: -24px;
width: 120px;
height: 120px;
border-radius: 50%;
border: 3px solid #00DCA9;
opacity: 0.18;
pointer-events: none;
z-index: 0;
}

.abus .titleshape2 {
position: absolute;
bottom: 32px;
left: -16px;
width: 60px;
height: 60px;
border-radius: 18px;
background: #F9F3D7;
opacity: 0.7;
pointer-events: none;
z-index: 0;
}

.abus .titletxt {
animation: slideFromRight 0.18s cubic-bezier(0.4, 0, 1, 1) both;
animation-delay: 0.05s;
}

.abus .titleimgwrap {
animation: slideFromRight 0.18s cubic-bezier(0.4, 0, 1, 1) both;
animation-delay: 0.12s;
}

.abus .metricssec {
background: #F9F3D7;
padding: 48px 0;
position: relative;
}

.abus .metricssec::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
border-top: 2px dotted #2D2BA5;
opacity: 0.3;
}

.abus .metricsinner {
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start;
}

.abus .metricsleft {
display: flex;
flex-direction: column;
gap: 32px;
}

.abus .metricsh2 {
font-size: 37px;
line-height: 1.2;
color: #2D2BA5;
margin: 0;
text-shadow: 1px 2px 0 rgba(0, 220, 169, 0.15);
font-weight: 800;
}

.abus .metricstext {
font-size: 14px;
line-height: 1.55;
color: #2c2c4a;
margin: 0;
}

.abus .beforeafter {
display: flex;
flex-direction: row;
gap: 16px;
align-items: stretch;
}

.abus .bacard {
flex: 1;
border-radius: 18px;
padding: 32px 16px;
display: flex;
flex-direction: column;
align-items: center;
gap: 8px;
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09);
transition: box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1), transform 0.12s cubic-bezier(0.4, 0, 1, 1);
}

.abus .bacard:hover {
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
transform: translateY(-3px);
}

.abus .bacard.before {
background: #fff;
border: 2px solid #e8e4f5;
}

.abus .bacard.after {
background: #2D2BA5;
border: 2px solid #2D2BA5;
}

.abus .bacard .banumber {
font-size: 52px;
font-weight: 900;
line-height: 1.2;
}

.abus .bacard.before .banumber {
color: #2D2BA5;
}

.abus .bacard.after .banumber {
color: #00DCA9;
}

.abus .bacard .balabel {
font-size: 13px;
letter-spacing: 0.12em;
text-transform: uppercase;
font-weight: 600;
}

.abus .bacard.before .balabel {
color: #6a6a9a;
}

.abus .bacard.after .balabel {
color: #F9F3D7;
}

.abus .metricsright {
display: flex;
flex-direction: column;
gap: 16px;
}

.abus .statrow {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
background: #fff;
border-radius: 18px;
padding: 16px 32px;
box-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08);
border: 2px solid transparent;
transition: border-color 0.15s cubic-bezier(0.4, 0, 1, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1);
}

.abus .statrow:hover {
border-color: #00DCA9;
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
}

.abus .statnum {
font-size: 37px;
font-weight: 900;
color: #00DCA9;
line-height: 1.2;
min-width: 80px;
}

.abus .statdesc {
font-size: 14px;
line-height: 1.55;
color: #2c2c4a;
}

.abus .statdesc strong {
color: #2D2BA5;
font-weight: 700;
}

.abus .metricssec .curlsvg {
position: absolute;
bottom: 16px;
right: 32px;
opacity: 0.07;
pointer-events: none;
}

.abus .tierssec {
background: #fff;
padding: 48px 0;
position: relative;
}

.abus .tierssec::before {
content: '';
display: block;
border-top: 2px dotted #00DCA9;
margin: 0 32px;
opacity: 0.4;
position: absolute;
top: 0;
left: 0;
right: 0;
}

.abus .tiersinner {
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
}

.abus .tiersh2 {
font-size: 37px;
line-height: 1.2;
color: #1a1a2e;
margin: 0 0 8px 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
font-weight: 800;
}

.abus .tierssub {
font-size: 14px;
line-height: 1.55;
color: #5a5a8a;
margin: 0 0 32px 0;
max-width: 520px;
}

.abus .tiersgrid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}

.abus .tiercard {
border-radius: 18px;
padding: 32px 16px;
display: flex;
flex-direction: column;
gap: 12px;
border: 2px solid #e8e4f5;
background: #fff;
box-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
transition: box-shadow 0.14s cubic-bezier(0.4, 0, 1, 1), border-color 0.14s cubic-bezier(0.4, 0, 1, 1);
position: relative;
overflow: hidden;
}

.abus .tiercard:hover {
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
border-color: #2D2BA5;
}

.abus .tiercard.featured {
background: #2D2BA5;
border-color: #2D2BA5;
}

.abus .tiercard.featured:hover {
border-color: #00DCA9;
}

.abus .tiercardtop {
display: flex;
flex-direction: column;
gap: 4px;
}

.abus .tiername {
font-size: 20px;
font-weight: 800;
line-height: 1.2;
}

.abus .tiercard:not(.featured) .tiername {
color: #2D2BA5;
}

.abus .tiercard.featured .tiername {
color: #00DCA9;
}

.abus .tierprice {
font-size: 37px;
font-weight: 900;
line-height: 1.2;
}

.abus .tiercard:not(.featured) .tierprice {
color: #1a1a2e;
}

.abus .tiercard.featured .tierprice {
color: #fff;
}

.abus .tierperiod {
font-size: 13px;
letter-spacing: 0.08em;
color: #8888aa;
}

.abus .tiercard.featured .tierperiod {
color: #a0a0d0;
}

.abus .tierdivider {
border: none;
border-top: 1px solid #e8e4f5;
margin: 0;
}

.abus .tiercard.featured .tierdivider {
border-color: rgba(255, 255, 255, 0.15);
}

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

.abus .tierfeats li {
font-size: 14px;
line-height: 1.55;
padding-left: 16px;
position: relative;
}

.abus .tierfeats li::before {
content: '';
position: absolute;
left: 0;
top: 8px;
width: 6px;
height: 6px;
border-right: 2px solid #00DCA9;
border-bottom: 2px solid #00DCA9;
transform: rotate(-45deg);
}

.abus .tiercard:not(.featured) .tierfeats li {
color: #3c3c5c;
}

.abus .tiercard.featured .tierfeats li {
color: #d0d0f0;
}

.abus .tiercard.featured .tierfeats li::before {
border-color: #00DCA9;
}

.abus .tiercta {
display: inline-block;
margin-top: 8px;
padding: 12px 32px;
border-radius: 3px;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.08em;
text-decoration: none;
border: 2px solid #2D2BA5;
color: #2D2BA5;
background: transparent;
text-align: center;
transition: box-shadow 0.14s cubic-bezier(0.4, 0, 1, 1), background 0.14s cubic-bezier(0.4, 0, 1, 1), color 0.14s cubic-bezier(0.4, 0, 1, 1);
}

.abus .tiercta:hover {
background: #2D2BA5;
color: #fff;
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09);
}

.abus .tiercard.featured .tiercta {
border-color: #00DCA9;
color: #00DCA9;
background: transparent;
}

.abus .tiercard.featured .tiercta:hover {
background: #00DCA9;
color: #1a1a2e;
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
}

.abus .tierbadge {
position: absolute;
top: 16px;
right: 16px;
background: #00DCA9;
color: #1a1a2e;
font-size: 13px;
font-weight: 700;
letter-spacing: 0.1em;
padding: 4px 12px;
border-radius: 3px;
}

.abus .teamsec {
position: relative;
padding: 48px 0;
}

.abus .teambg {
position: absolute;
inset: 0;
overflow: hidden;
border-radius: 0;
z-index: 0;
}

.abus .teambg img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
animation: imgZoom 10s ease-in alternate infinite;
}

.abus .teambg::after {
content: '';
position: absolute;
inset: 0;
background: rgba(20, 18, 60, 0.91);
}

.abus .teaminner {
position: relative;
z-index: 1;
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start;
}

.abus .teamleft {
display: flex;
flex-direction: column;
gap: 16px;
}

.abus .teamh2 {
font-size: 37px;
font-weight: 800;
line-height: 1.2;
color: #fff;
margin: 0;
text-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.18);
}

.abus .teamdesc {
font-size: 14px;
line-height: 1.55;
color: #c0c0e0;
margin: 0;
}

.abus .teamdesc2 {
font-size: 14px;
line-height: 1.55;
color: #c0c0e0;
margin: 0;
}

.abus .teamsublink {
display: inline-block;
margin-top: 8px;
padding: 12px 32px;
border-radius: 3px;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.08em;
text-decoration: none;
border: 2px solid #00DCA9;
color: #00DCA9;
background: transparent;
transition: box-shadow 0.16s cubic-bezier(0.4, 0, 1, 1), background 0.16s cubic-bezier(0.4, 0, 1, 1), color 0.12s ease-in;
align-self: flex-start;
}

.abus .teamsublink:hover {
background: #00DCA9;
color: #14123c;
box-shadow: 0 10px 48px -2px rgba(0, 220, 169, 0.10);
}

.abus .teamright {
display: flex;
flex-direction: column;
gap: 16px;
}

.abus .membercard {
display: flex;
flex-direction: row;
gap: 16px;
align-items: center;
background: rgba(255, 255, 255, 0.06);
border: 2px solid rgba(255, 255, 255, 0.10);
border-radius: 18px;
padding: 16px;
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
transition: border-color 0.13s cubic-bezier(0.4, 0, 1, 1), box-shadow 0.13s cubic-bezier(0.4, 0, 1, 1);
}

.abus .membercard:hover {
border-color: #00DCA9;
box-shadow: 0 10px 48px -2px rgba(0, 220, 169, 0.10);
}

.abus .memberimgwrap {
width: 72px;
height: 72px;
border-radius: 18px;
overflow: hidden;
flex-shrink: 0;
box-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08);
}

.abus .memberimgwrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.abus .membertxt {
display: flex;
flex-direction: column;
gap: 4px;
}

.abus .membername {
font-size: 20px;
font-weight: 700;
color: #fff;
line-height: 1.2;
}

.abus .memberrole {
font-size: 13px;
letter-spacing: 0.12em;
color: #00DCA9;
font-weight: 600;
text-transform: uppercase;
}

.abus .memberbio {
font-size: 13px;
line-height: 1.55;
color: #a0a0c8;
}

@media (max-width: 900px) {
.abus .titlegrid {
grid-template-columns: 1fr;
gap: 32px;
}

.abus .titleimgwrap {
order: 1;
}

.abus .titletxt {
order: 2;
padding-right: 0;
}

.abus .titleimgwrap img {
height: 260px;
}

.abus .titleh1 {
font-size: 37px;
}

.abus .metricsinner {
grid-template-columns: 1fr;
gap: 32px;
}

.abus .tiersgrid {
grid-template-columns: 1fr;
gap: 16px;
}

.abus .teaminner {
grid-template-columns: 1fr;
gap: 32px;
}

.abus .beforeafter {
gap: 8px;
}
}

@media (max-width: 600px) {

.abus .titlegrid,
.abus .metricsinner,
.abus .tiersinner,
.abus .teaminner {
padding: 0 16px;
}

.abus .titlesec::after,
.abus .tierssec::before {
margin: 0 16px;
}

.abus .titleh1 {
font-size: 37px;
}

.abus .titledesc {
font-size: 14px;
}

.abus .bacard .banumber {
font-size: 37px;
}
}

.contus {
background: #fff;
overflow-x: clip;
padding: 0;
}

.contus .pgwrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
}

.contus ::selection {
background: linear-gradient(90deg, #00DCA9, #2D2BA5);
color: #fff;
}

.contus .formarea {
padding: 48px 0;
background: #fff;
position: relative;
}

.contus .formarea::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(110deg, transparent 0%, #00DCA9 40%, #2D2BA5 70%, transparent 100%);
}

.contus .formgrid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start;
}

.contus .formleft {
display: flex;
flex-direction: column;
gap: 32px;
}

.contus .formleft h1 {
font-size: 52px;
line-height: 1.2;
color: #111;
margin: 0;
letter-spacing: -0.5px;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
position: relative;
padding-left: 16px;
}

.contus .formleft h1::before {
content: '';
position: absolute;
left: 0;
top: 8px;
bottom: 8px;
width: 3px;
background: #00DCA9;
border-radius: 3px;
}

.contus .formleft .subdesc {
font-size: 14px;
line-height: 1.55;
color: #333;
margin: 0;
}

.contus .contactmeta {
display: flex;
flex-direction: column;
gap: 16px;
}

.contus .cmrow {
display: flex;
flex-direction: column;
gap: 4px;
}

.contus .cmlabel {
font-size: 13px;
line-height: 1.2;
color: #2D2BA5;
letter-spacing: 0.08em;
text-transform: uppercase;
font-weight: 600;
}

.contus .cmval {
font-size: 14px;
line-height: 1.55;
color: #222;
}

.contus .cmval a {
color: #222;
text-decoration: none;
letter-spacing: 0;
transition: letter-spacing 0.15s cubic-bezier(0.4, 0, 1, 1), color 0.12s cubic-bezier(0.4, 0, 1, 1);
}

.contus .cmval a:hover {
color: #2D2BA5;
letter-spacing: 0.04em;
}

.contus .statusbar {
display: flex;
flex-direction: column;
gap: 8px;
padding: 16px;
border: 2px solid #e8e4f7;
border-radius: 18px;
background: #F9F3D7;
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
}

.contus .statusbar .stlabel {
font-size: 13px;
color: #555;
letter-spacing: 0.06em;
text-transform: uppercase;
}

.contus .statusbar .sttrack {
display: flex;
flex-direction: row;
gap: 4px;
align-items: center;
}

.contus .statusbar .sttrack .stseg {
height: 6px;
border-radius: 3px;
flex: 1;
}

.contus .statusbar .sttrack .stseg.active1 {
background: #00DCA9;
}

.contus .statusbar .sttrack .stseg.active2 {
background: #00DCA9;
}

.contus .statusbar .sttrack .stseg.active3 {
background: #2D2BA5;
}

.contus .statusbar .sttrack .stseg.inactive {
background: #ddd;
}

.contus .statusbar .stinfo {
font-size: 13px;
color: #333;
line-height: 1.55;
}

.contus .formright {
background: #fff;
border: 2px solid #e4e2f5;
border-radius: 28px;
padding: 32px;
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
position: relative;
overflow: hidden;
}

.contus .formright::after {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 4px;
background: linear-gradient(110deg, #00DCA9 0%, #2D2BA5 100%);
border-radius: 28px 28px 0 0;
}

.contus .formright form {
display: flex;
flex-direction: column;
gap: 16px;
}

.contus .fieldgrp {
display: flex;
flex-direction: column;
gap: 4px;
}

.contus .fieldgrp label {
font-size: 13px;
color: #2D2BA5;
letter-spacing: 0.06em;
text-transform: uppercase;
font-weight: 600;
}

.contus .fieldgrp input[type="text"],
.contus .fieldgrp input[type="email"],
.contus .fieldgrp input[type="tel"] {
padding: 12px 16px;
border: 2px solid #d8d5f0;
border-radius: 3px;
font-size: 14px;
line-height: 1.55;
color: #111;
background: #fdfcff;
transition: border-color 0.15s cubic-bezier(0.4, 0, 1, 1), box-shadow 0.12s cubic-bezier(0.4, 0, 1, 1);
width: 100%;
box-sizing: border-box;
text-overflow: ellipsis;
}

.contus .fieldgrp input[type="text"]:focus,
.contus .fieldgrp input[type="email"]:focus,
.contus .fieldgrp input[type="tel"]:focus {
outline: none;
border-color: #00DCA9;
box-shadow: inset 0 2px 2px -2px rgba(0, 220, 169, 0.08), 0 0 0 3px rgba(0, 220, 169, 0.12);
}

.contus .fieldgrp input::placeholder {
color: #aaa;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}

.contus .radiolabel {
font-size: 13px;
color: #2D2BA5;
letter-spacing: 0.06em;
text-transform: uppercase;
font-weight: 600;
margin-bottom: 4px;
}

.contus .radiogrp {
display: flex;
flex-direction: row;
gap: 8px;
flex-wrap: wrap;
}

.contus .radiogrp .ropt {
display: flex;
flex-direction: row;
align-items: center;
gap: 4px;
cursor: pointer;
}

.contus .radiogrp .ropt input[type="radio"] {
accent-color: #00DCA9;
width: 16px;
height: 16px;
cursor: pointer;
}

.contus .radiogrp .ropt span {
font-size: 13px;
color: #333;
line-height: 1.2;
cursor: pointer;
}

.contus .privacyrow {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
}

.contus .privacyrow input[type="checkbox"] {
accent-color: #2D2BA5;
width: 16px;
height: 16px;
margin-top: 2px;
flex-shrink: 0;
cursor: pointer;
}

.contus .privacyrow .privtext {
font-size: 13px;
color: #444;
line-height: 1.55;
}

.contus .privacyrow .privtext a {
color: #2D2BA5;
text-decoration: underline;
letter-spacing: 0;
transition: letter-spacing 0.15s cubic-bezier(0.4, 0, 1, 1), color 0.12s cubic-bezier(0.4, 0, 1, 1);
}

.contus .privacyrow .privtext a:hover {
color: #00DCA9;
letter-spacing: 0.03em;
}

.contus .submitbtn {
padding: 12px 32px;
background: #fff;
border: 3px solid #2D2BA5;
border-radius: 3px;
font-size: 14px;
color: #2D2BA5;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
cursor: pointer;
align-self: flex-start;
transition: box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1), background 0.12s cubic-bezier(0.4, 0, 1, 1), color 0.12s cubic-bezier(0.4, 0, 1, 1);
box-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.contus .submitbtn:hover {
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
background: #2D2BA5;
color: #fff;
}

.contus .submitbtn:focus {
outline: 3px solid #00DCA9;
outline-offset: 2px;
}

.contus .submitbtn:active {
background: #1e1c8a;
border-color: #1e1c8a;
color: #fff;
}

.contus .infostrip {
padding: 48px 0;
background: #f5f3fe;
position: relative;
}

.contus .infostrip::before {
content: '';
position: absolute;
bottom: 0;
left: 32px;
right: 32px;
height: 1px;
background: linear-gradient(110deg, transparent 0%, #00DCA9 50%, transparent 100%);
}

.contus .infogrid {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
gap: 32px;
align-items: start;
}

.contus .infoanchor {
display: flex;
flex-direction: column;
gap: 16px;
}

.contus .infoanchor h2 {
font-size: 37px;
line-height: 1.2;
color: #111;
margin: 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.contus .infoanchor p {
font-size: 14px;
line-height: 1.55;
color: #333;
margin: 0;
max-width: 380px;
}

.contus .infoanchor .beforelink {
display: inline-block;
font-size: 13px;
color: #2D2BA5;
text-decoration: none;
border: 2px solid #2D2BA5;
border-radius: 3px;
padding: 8px 16px;
letter-spacing: 0.06em;
font-weight: 600;
align-self: flex-start;
transition: box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1), background 0.12s cubic-bezier(0.4, 0, 1, 1), color 0.12s cubic-bezier(0.4, 0, 1, 1);
box-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.contus .infoanchor .beforelink:hover {
background: #2D2BA5;
color: #fff;
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
}

.contus .infoanchor .beforelink:focus {
outline: 3px solid #00DCA9;
outline-offset: 2px;
}

.contus .infocard {
display: flex;
flex-direction: column;
gap: 12px;
padding: 16px;
border-radius: 18px;
border: 2px solid #e4e2f5;
background: #fff;
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
position: relative;
transition: box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1);
}

.contus .infocard:hover {
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10), inset 0 2px 2px -2px rgba(0, 220, 169, 0.08);
}

.contus .infocard h4 {
font-size: 13px;
color: #2D2BA5;
letter-spacing: 0.08em;
text-transform: uppercase;
margin: 0;
font-weight: 700;
}

.contus .infocard p {
font-size: 14px;
line-height: 1.55;
color: #222;
margin: 0;
}

.contus .infocard a {
color: #222;
text-decoration: none;
transition: letter-spacing 0.15s cubic-bezier(0.4, 0, 1, 1), color 0.12s cubic-bezier(0.4, 0, 1, 1);
}

.contus .infocard a:hover {
color: #2D2BA5;
letter-spacing: 0.03em;
}

.contus .imgblock {
padding: 0 0 48px;
background: #fff;
}

.contus .imgwrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
position: relative;
}

.contus .imgwrap figure {
margin: 0;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
position: relative;
}

.contus .imgwrap figure::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(110deg, rgba(45, 43, 165, 0.18) 0%, transparent 60%);
pointer-events: none;
}

.contus .imgwrap figure img {
width: 100%;
height: 320px;
object-fit: cover;
display: block;
filter: saturate(0.7) brightness(0.88);
transition: filter 0.18s cubic-bezier(0.4, 0, 1, 1);
}

.contus .imgwrap figure:hover img {
filter: saturate(1) brightness(1);
}

.contus .imgwrap figcaption {
font-size: 13px;
color: #555;
margin-top: 8px;
letter-spacing: 0.04em;
padding-left: 4px;
}

@keyframes bordertrace {
0% {
stroke-dashoffset: 600;
}

100% {
stroke-dashoffset: 0;
}
}

.contus .tracedeco {
position: absolute;
top: 16px;
right: 16px;
width: 64px;
height: 64px;
pointer-events: none;
z-index: 1;
}

.contus .tracedeco rect {
fill: none;
stroke: #00DCA9;
stroke-width: 2;
stroke-dasharray: 600;
stroke-dashoffset: 600;
animation: bordertrace 0.18s cubic-bezier(0.4, 0, 1, 1) 0.3s forwards;
}

@media (max-width: 900px) {
.contus .formgrid {
grid-template-columns: 1fr;
gap: 32px;
}

.contus .infogrid {
grid-template-columns: 1fr;
gap: 16px;
}

.contus .formleft h1 {
font-size: 37px;
}

.contus .infoanchor h2 {
font-size: 20px;
}

.contus .radiogrp {
flex-direction: column;
}
}

@media (max-width: 600px) {
.contus .pgwrap {
padding: 0 16px;
}

.contus .formright {
padding: 16px;
}

.contus .formarea {
padding: 32px 0;
}

.contus .infostrip {
padding: 32px 0;
}
}

.strt {
overflow-x: hidden;
background: #fff;
}

.strt * {
box-sizing: border-box;
}

.strt ::selection {
background: linear-gradient(90deg, #00DCA9, #2D2BA5);
color: #fff;
}

.strt .pgwrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
}

.strt .pgwrapnarrow {
max-width: 1280px;
margin: 0 auto;
padding: 0 48px;
}

.strt .titlesec {
background: #2D2BA5;
padding: 80px 0 64px;
position: relative;
}

.strt .titlesec::before {
content: '';
position: absolute;
inset: 0;
background:
radial-gradient(ellipse at 0% 50%, rgba(0, 220, 169, 0.18) 0%, transparent 55%),
radial-gradient(ellipse at 100% 30%, rgba(0, 220, 169, 0.12) 0%, transparent 50%);
pointer-events: none;
}

.strt .titleinner {
max-width: 1280px;
margin: 0 auto;
padding: 0 48px;
display: flex;
flex-direction: row;
align-items: center;
gap: 48px;
}

.strt .titletxt {
flex: 1 1 55%;
position: relative;
z-index: 1;
}

.strt .titlebadge {
display: inline-block;
font-size: 13px;
letter-spacing: 0.12em;
color: #00DCA9;
border: 2px solid rgba(0, 220, 169, 0.4);
border-radius: 3px;
padding: 4px 12px;
margin-bottom: 16px;
text-transform: uppercase;
}

.strt .titleh1 {
font-size: 52px;
line-height: 1.2;
color: #fff;
margin: 0 0 16px;
text-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08), 0 5px 28px -2px rgba(0, 220, 169, 0.09);
}

.strt .titleh1 .kword {
text-decoration: underline;
text-decoration-color: #00DCA9;
text-underline-offset: 6px;
text-decoration-thickness: 3px;
}

.strt .titledesc {
font-size: 20px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.82);
margin: 0 0 32px;
max-width: 520px;
}

.strt .titlebtnrow {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
}

.strt .btnprim {
font-size: 14px;
letter-spacing: 0.06em;
color: #2D2BA5;
background: #00DCA9;
border: 3px solid #00DCA9;
border-radius: 3px;
padding: 12px 32px;
cursor: pointer;
transition: box-shadow 0.12s cubic-bezier(0.4, 0, 1, 1), background 0.12s cubic-bezier(0.4, 0, 1, 1);
font-weight: 700;
}

.strt .btnprim:hover {
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.4);
background: #00f2bc;
border-color: #00f2bc;
}

.strt .btnprim:focus {
outline: 3px solid #fff;
outline-offset: 2px;
}

.strt .btnsec {
font-size: 14px;
letter-spacing: 0.06em;
color: #fff;
background: transparent;
border: 3px solid rgba(255, 255, 255, 0.5);
border-radius: 3px;
padding: 12px 32px;
cursor: pointer;
transition: box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1), border-color 0.15s cubic-bezier(0.4, 0, 1, 1);
}

.strt .btnsec:hover {
border-color: #fff;
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.3);
}

.strt .btnsec:focus {
outline: 3px solid #00DCA9;
outline-offset: 2px;
}

.strt .titleimgwrap {
flex: 1 1 40%;
position: relative;
z-index: 1;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
}

.strt .titleimgwrap img {
width: 100%;
height: 380px;
object-fit: cover;
display: block;
border-radius: 18px;
}

.strt .titleimgwrap::after {
content: '';
position: absolute;
inset: 0;
border-radius: 18px;
box-shadow: inset 0 0 32px rgba(0, 220, 169, 0.12);
pointer-events: none;
}

.strt .titlestats {
display: flex;
flex-direction: row;
gap: 32px;
margin-top: 32px;
flex-wrap: wrap;
}

.strt .tstat {
display: flex;
flex-direction: column;
gap: 4px;
}

.strt .tstatnum {
font-size: 37px;
line-height: 1.2;
color: #00DCA9;
font-weight: 800;
text-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08);
}

.strt .tstatlab {
font-size: 13px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.65);
letter-spacing: 0.08em;
}

.strt .div1 {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 16px;
padding: 12px 0;
background: #fff;
}

.strt .div1 svg {
display: block;
}

.strt .proofsec {
background: #fff;
padding: 64px 0 48px;
}

.strt .proofgrid {
max-width: 1280px;
margin: 0 auto;
padding: 0 48px;
display: grid;
grid-template-columns: 1fr 2fr 1fr;
gap: 32px;
align-items: start;
}

.strt .proofside {
display: flex;
flex-direction: column;
gap: 16px;
}

.strt .proofcenter {
display: flex;
flex-direction: column;
gap: 16px;
}

.strt .prooftag {
font-size: 13px;
letter-spacing: 0.12em;
color: #00DCA9;
text-transform: uppercase;
font-weight: 700;
}

.strt .proofh2 {
font-size: 37px;
line-height: 1.2;
color: #2D2BA5;
margin: 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.strt .proofbody {
font-size: 14px;
line-height: 1.8;
color: #222;
margin: 0;
}

.strt .proofimgwrap {
border-radius: 18px;
overflow: hidden;
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09);
margin-top: 8px;
}

.strt .proofimgwrap img {
width: 100%;
height: 260px;
object-fit: cover;
display: block;
}

.strt .proofstatbox {
border: 3px solid #2D2BA5;
border-radius: 28px;
padding: 16px;
display: flex;
flex-direction: column;
gap: 8px;
background: #fff;
box-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.strt .proofstatnum {
font-size: 37px;
line-height: 1.2;
color: #2D2BA5;
font-weight: 800;
}

.strt .proofstatdesc {
font-size: 13px;
line-height: 1.55;
color: #444;
}

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

.strt .prooflist li {
font-size: 14px;
line-height: 1.55;
color: #333;
padding-left: 20px;
position: relative;
}

.strt .prooflist li::before {
content: '';
position: absolute;
left: 0;
top: 7px;
width: 8px;
height: 8px;
border-top: 2px solid #00DCA9;
border-right: 2px solid #00DCA9;
transform: rotate(45deg);
}

.strt .div2 {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 16px;
padding: 12px 0;
background: #F9F3D7;
}

.strt .div2line {
height: 2px;
width: 80px;
background: linear-gradient(90deg, transparent, #00DCA9, transparent);
}

.strt .apprsec {
background: #F9F3D7;
padding: 64px 0;
}

.strt .apprinner {
max-width: 1280px;
margin: 0 auto;
padding: 0 48px;
}

.strt .apprtop {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 32px;
margin-bottom: 32px;
}

.strt .apprtopleft {
flex: 0 0 auto;
}

.strt .apprtopright {
flex: 0 1 480px;
}

.strt .apprtag {
font-size: 13px;
letter-spacing: 0.12em;
color: #2D2BA5;
text-transform: uppercase;
font-weight: 700;
margin-bottom: 8px;
}

.strt .apprh2 {
font-size: 37px;
line-height: 1.2;
color: #2D2BA5;
margin: 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.strt .apprdesc {
font-size: 14px;
line-height: 1.8;
color: #333;
margin: 0;
}

.strt .apprcards {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}

.strt .apprcard {
background: #fff;
border-radius: 18px;
padding: 32px;
border: 2px solid transparent;
box-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08);
transition: border-color 0.12s cubic-bezier(0.4, 0, 1, 1), box-shadow 0.12s cubic-bezier(0.4, 0, 1, 1);
display: flex;
flex-direction: column;
gap: 12px;
}

.strt .apprcard:hover {
border-color: #00DCA9;
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
}

.strt .apprcardnum {
font-size: 37px;
line-height: 1.2;
color: #00DCA9;
font-weight: 800;
opacity: 0.35;
}

.strt .apprcardh {
font-size: 20px;
line-height: 1.2;
color: #2D2BA5;
margin: 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.strt .apprcardbody {
font-size: 14px;
line-height: 1.8;
color: #444;
margin: 0;
}

.strt .div3 {
background: #fff;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
padding: 16px 0;
gap: 12px;
}

.strt .div3tri {
width: 0;
height: 0;
border-style: solid;
}

.strt .div3tri.left {
border-width: 10px 14px 10px 0;
border-color: transparent #00DCA9 transparent transparent;
}

.strt .div3tri.right {
border-width: 10px 0 10px 14px;
border-color: transparent transparent transparent #00DCA9;
}

.strt .div3dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: #2D2BA5;
}

.strt .suppsec {
background: #fff;
padding: 64px 0;
}

.strt .suppinner {
max-width: 1280px;
margin: 0 auto;
padding: 0 48px;
display: flex;
flex-direction: row;
gap: 48px;
align-items: stretch;
}

.strt .suppleft {
flex: 1 1 50%;
display: flex;
flex-direction: column;
gap: 16px;
justify-content: center;
}

.strt .supptag {
font-size: 13px;
letter-spacing: 0.12em;
color: #00DCA9;
text-transform: uppercase;
font-weight: 700;
}

.strt .supph2 {
font-size: 37px;
line-height: 1.2;
color: #2D2BA5;
margin: 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.strt .suppbody {
font-size: 14px;
line-height: 1.8;
color: #333;
margin: 0;
max-width: 440px;
}

.strt .suppitems {
display: flex;
flex-direction: column;
gap: 12px;
margin-top: 8px;
}

.strt .suppitem {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
padding: 12px 16px;
border-radius: 3px;
border: 2px solid #eee;
transition: border-color 0.1s cubic-bezier(0.4, 0, 1, 1);
}

.strt .suppitem:hover {
border-color: #00DCA9;
}

.strt .suppicon {
flex: 0 0 32px;
width: 32px;
height: 32px;
border-radius: 3px;
background: #F9F3D7;
display: flex;
align-items: center;
justify-content: center;
}

.strt .suppitemtxt {
display: flex;
flex-direction: column;
gap: 4px;
}

.strt .suppitemh {
font-size: 14px;
line-height: 1.2;
color: #2D2BA5;
font-weight: 700;
margin: 0;
}

.strt .suppitemdesc {
font-size: 13px;
line-height: 1.55;
color: #555;
margin: 0;
}

.strt .suppright {
flex: 1 1 45%;
display: flex;
flex-direction: column;
gap: 16px;
justify-content: flex-start;
}

.strt .suppimgwrap {
border-radius: 18px;
overflow: hidden;
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
position: relative;
}

.strt .suppimgwrap img {
width: 100%;
height: 300px;
object-fit: cover;
display: block;
}

.strt .suppimgwrap::before {
content: '';
position: absolute;
inset: 0;
border-radius: 18px;
box-shadow: inset 0 0 48px rgba(45, 43, 165, 0.08);
pointer-events: none;
z-index: 1;
}

.strt .suppquote {
background: #2D2BA5;
border-radius: 18px;
padding: 32px;
color: #fff;
display: flex;
flex-direction: column;
gap: 12px;
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09);
}

.strt .suppquotetxt {
font-size: 14px;
line-height: 1.8;
color: rgba(255, 255, 255, 0.9);
margin: 0;
font-style: italic;
}

.strt .suppquoteauthor {
font-size: 13px;
color: #00DCA9;
letter-spacing: 0.08em;
font-weight: 700;
}

.strt .div4 {
background: #2D2BA5;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
padding: 12px 0;
}

.strt .div4inner {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
}

.strt .div4line {
width: 60px;
height: 1px;
background: rgba(0, 220, 169, 0.5);
}

.strt .div4diamond {
width: 10px;
height: 10px;
background: #00DCA9;
transform: rotate(45deg);
}

.strt .condsec {
background: #2D2BA5;
padding: 64px 0 80px;
position: relative;
}

.strt .condsec::before {
content: '';
position: absolute;
inset: 0;
background:
radial-gradient(ellipse at 100% 100%, rgba(0, 220, 169, 0.14) 0%, transparent 50%),
radial-gradient(ellipse at 0% 0%, rgba(249, 243, 215, 0.06) 0%, transparent 40%);
pointer-events: none;
}

.strt .condinner {
max-width: 1280px;
margin: 0 auto;
padding: 0 48px;
position: relative;
z-index: 1;
}

.strt .condtop {
text-align: center;
margin-bottom: 48px;
}

.strt .condtag {
font-size: 13px;
letter-spacing: 0.12em;
color: #00DCA9;
text-transform: uppercase;
font-weight: 700;
display: block;
margin-bottom: 8px;
}

.strt .condh2 {
font-size: 37px;
line-height: 1.2;
color: #fff;
margin: 0 0 16px;
text-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
}

.strt .conddesc {
font-size: 14px;
line-height: 1.8;
color: rgba(255, 255, 255, 0.78);
max-width: 560px;
margin: 0 auto;
}

.strt .condgrid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
margin-bottom: 48px;
}

.strt .condcard {
background: rgba(255, 255, 255, 0.06);
border: 2px solid rgba(0, 220, 169, 0.25);
border-radius: 18px;
padding: 32px;
display: flex;
flex-direction: column;
gap: 12px;
transition: background 0.15s cubic-bezier(0.4, 0, 1, 1), border-color 0.15s cubic-bezier(0.4, 0, 1, 1);
}

.strt .condcard:hover {
background: rgba(0, 220, 169, 0.08);
border-color: rgba(0, 220, 169, 0.6);
}

.strt .condcardh {
font-size: 20px;
line-height: 1.2;
color: #00DCA9;
margin: 0;
text-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08);
}

.strt .condcardbody {
font-size: 14px;
line-height: 1.8;
color: rgba(255, 255, 255, 0.82);
margin: 0;
}

.strt .condbottom {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 48px;
flex-wrap: wrap;
}

.strt .condstatshape {
display: flex;
flex-direction: column;
align-items: center;
gap: 8px;
}

.strt .condshapewrap {
width: 100px;
height: 100px;
border: 3px solid #00DCA9;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
box-shadow: inset 0 0 20px rgba(0, 220, 169, 0.1), 0 5px 28px -2px rgba(0, 220, 169, 0.09);
}

.strt .condshapenum {
font-size: 37px;
line-height: 1.2;
color: #00DCA9;
font-weight: 800;
}

.strt .condshapelab {
font-size: 13px;
color: rgba(255, 255, 255, 0.65);
letter-spacing: 0.08em;
text-align: center;
max-width: 100px;
}

.strt .conddivider {
width: 1px;
height: 60px;
background: rgba(0, 220, 169, 0.3);
}

@keyframes splitopen {
0% {
clip-path: inset(0 50% 0 50%);
opacity: 0;
}

100% {
clip-path: inset(0 0% 0 0%);
opacity: 1;
}
}

.strt .titleh1 {
animation: splitopen 0.5s cubic-bezier(0.4, 0, 1, 1) both;
}

@keyframes fadeslideup {
0% {
opacity: 0;
transform: translateY(20px);
}

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

.strt .titledesc {
animation: fadeslideup 0.18s cubic-bezier(0.4, 0, 1, 1) 0.2s both;
}

.strt .titlebtnrow {
animation: fadeslideup 0.18s cubic-bezier(0.4, 0, 1, 1) 0.32s both;
}

.strt .titlestats {
animation: fadeslideup 0.18s cubic-bezier(0.4, 0, 1, 1) 0.42s both;
}

@media (max-width: 900px) {
.strt .titleinner {
flex-direction: column;
padding: 0 32px;
}

.strt .titleimgwrap {
width: 100%;
}

.strt .titleimgwrap img {
height: 240px;
}

.strt .titleh1 {
font-size: 37px;
}

.strt .proofgrid {
grid-template-columns: 1fr;
padding: 0 32px;
}

.strt .apprcards {
grid-template-columns: 1fr;
}

.strt .apprinner {
padding: 0 32px;
}

.strt .apprtop {
flex-direction: column;
align-items: flex-start;
}

.strt .suppinner {
flex-direction: column;
padding: 0 32px;
}

.strt .condgrid {
grid-template-columns: 1fr;
}

.strt .condinner {
padding: 0 32px;
}

.strt .condbottom {
gap: 32px;
}

.strt .conddivider {
display: none;
}

.strt .pgwrapnarrow {
padding: 0 32px;
}
}

@media (max-width: 600px) {
.strt .titleh1 {
font-size: 37px;
}

.strt .proofh2,
.strt .apprh2,
.strt .supph2,
.strt .condh2 {
font-size: 37px;
}

.strt .titlestats {
gap: 16px;
}

.strt .tstatnum {
font-size: 20px;
}
}

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

.lrnprog .pgwrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 32px;
}

.lrnprog .arrowlist {
list-style: none;
padding: 0;
margin: 0;
}

.lrnprog .arrowlist li {
padding: 4px 0 4px 20px;
position: relative;
font-size: 14px;
line-height: 1.55;
color: #2a2a3d;
}

.lrnprog .arrowlist li::before {
content: "";
position: absolute;
left: 0;
top: 10px;
width: 8px;
height: 8px;
border-right: 2px solid #00DCA9;
border-top: 2px solid #00DCA9;
transform: rotate(45deg);
}

.lrnprog ::selection {
background: linear-gradient(90deg, #00DCA9, #2D2BA5);
color: #fff;
}

.lrnprog .secDividerA {
display: flex;
align-items: center;
gap: 8px;
margin-bottom: 32px;
}

.lrnprog .secDividerA span:first-child {
display: block;
width: 32px;
height: 2px;
background: #2D2BA5;
}

.lrnprog .secDividerA span:last-child {
display: block;
flex: 1;
height: 1px;
border-top: 1px dashed #2D2BA5;
opacity: 0.3;
}

.lrnprog .secDividerB {
display: flex;
align-items: center;
gap: 8px;
margin-bottom: 32px;
}

.lrnprog .secDividerB span:first-child {
display: block;
flex: 1;
height: 1px;
border-top: 1px dashed #00DCA9;
opacity: 0.4;
max-width: 60px;
}

.lrnprog .secDividerB span:last-child {
display: block;
flex: 1;
height: 2px;
background: #00DCA9;
}

.lrnprog .labelColon {
font-size: 13px;
letter-spacing: 0.12em;
color: #555570;
text-transform: uppercase;
}

.lrnprog .labelColon::after {
content: ":";
color: #00DCA9;
font-weight: 700;
}

.lrnprog .titlesec {
padding: 48px 0 32px;
background: #fff;
border-bottom: 2px solid #F9F3D7;
position: relative;
}

.lrnprog .titlesec::after {
content: "";
display: block;
position: absolute;
right: 0;
top: 0;
bottom: 0;
width: 4px;
background: #00DCA9;
}

.lrnprog .titlegrid {
display: grid;
grid-template-columns: 1fr 420px;
gap: 48px;
align-items: start;
}

.lrnprog .titletext {
display: flex;
flex-direction: column;
gap: 16px;
padding-right: 16px;
}

.lrnprog .problabel {
font-size: 13px;
letter-spacing: 0.14em;
text-transform: uppercase;
color: #2D2BA5;
font-weight: 600;
}

.lrnprog .titleh1 {
font-size: 52px;
line-height: 1.2;
color: #15143a;
margin: 0;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.lrnprog .titlesubh {
font-size: 20px;
line-height: 1.55;
color: #2D2BA5;
margin: 0;
font-weight: 400;
}

.lrnprog .titledesc {
font-size: 14px;
line-height: 1.55;
color: #3a3a5c;
margin: 0;
max-width: 480px;
}

.lrnprog .titleactions {
display: flex;
flex-direction: row;
gap: 12px;
flex-wrap: wrap;
margin-top: 8px;
}

.lrnprog .btnprim {
display: inline-block;
padding: 12px 32px;
font-size: 14px;
font-weight: 700;
color: #15143a;
background: transparent;
border: 3px solid #00DCA9;
border-radius: 3px;
cursor: pointer;
text-decoration: none;
letter-spacing: 0.04em;
box-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08);
transition: box-shadow 0.12s cubic-bezier(0.4, 0, 1, 1), border-color 0.12s cubic-bezier(0.4, 0, 1, 1);
}

.lrnprog .btnprim:hover {
box-shadow: 0 10px 48px -2px rgba(0, 220, 169, 0.10);
border-color: #2D2BA5;
}

.lrnprog .btnsec {
display: inline-block;
padding: 12px 32px;
font-size: 14px;
font-weight: 700;
color: #2D2BA5;
background: transparent;
border: 3px solid #2D2BA5;
border-radius: 3px;
cursor: pointer;
text-decoration: none;
letter-spacing: 0.04em;
box-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
transition: box-shadow 0.15s ease-in, border-color 0.15s ease-in;
}

.lrnprog .btnsec:hover {
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
border-color: #00DCA9;
}

.lrnprog .titleimgcol {
position: relative;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09);
}

.lrnprog .titleimgcol::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 40%;
background: linear-gradient(to bottom, rgba(21, 20, 58, 0.55), transparent);
z-index: 1;
pointer-events: none;
}

.lrnprog .titleimgcol img {
display: block;
width: 100%;
height: 360px;
object-fit: cover;
border-radius: 18px;
}

.lrnprog .imgbadge {
position: absolute;
bottom: 16px;
left: 16px;
z-index: 2;
background: rgba(255, 255, 255, 0.92);
border-radius: 3px;
padding: 8px 12px;
font-size: 13px;
color: #15143a;
font-weight: 600;
box-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08);
border: 1px solid #F9F3D7;
}

.lrnprog .titleedge {
position: absolute;
top: 48px;
bottom: 48px;
left: -4px;
width: 2px;
border-left: 2px dashed rgba(0, 220, 169, 0.4);
}

.lrnprog .detailsec {
padding: 48px 0;
background: #F9F3D7;
position: relative;
}

@keyframes gradshift {
0% {
background-position: 0% 50%;
}

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

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

.lrnprog .detailsec::before {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(118deg,
rgba(0, 220, 169, 0.08),
rgba(249, 243, 215, 0) 40%,
rgba(249, 243, 215, 0) 60%,
rgba(45, 43, 165, 0.06));
background-size: 300% 300%;
animation: gradshift 9s linear infinite;
pointer-events: none;
}

.lrnprog .detailgrid {
display: grid;
grid-template-columns: 2fr 1fr;
gap: 48px;
align-items: start;
position: relative;
}

.lrnprog .detailmain {
display: flex;
flex-direction: column;
gap: 32px;
}

.lrnprog .detailh2 {
font-size: 37px;
line-height: 1.2;
color: #15143a;
margin: 0;
text-shadow: 1px 1px 0 rgba(45, 43, 165, 0.10);
}

.lrnprog .detailparas {
display: flex;
flex-direction: column;
gap: 16px;
}

.lrnprog .detailparas p {
font-size: 14px;
line-height: 1.55;
color: #2a2a3d;
margin: 0;
max-width: 560px;
}

.lrnprog .detailparas p.wide {
max-width: 100%;
}

.lrnprog .modgrid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
}

.lrnprog .modcard {
background: #fff;
border-radius: 18px;
padding: 16px;
box-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08);
border-right: 3px solid #00DCA9;
transition: box-shadow 0.13s cubic-bezier(0.4, 0, 1, 1);
position: relative;
}

.lrnprog .modcard:hover {
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
}

.lrnprog .modnum {
font-size: 37px;
line-height: 1.2;
color: #F9F3D7;
font-weight: 700;
position: absolute;
top: 8px;
right: 12px;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
pointer-events: none;
user-select: none;
}

.lrnprog .modtitle {
font-size: 14px;
font-weight: 700;
color: #15143a;
margin: 0 0 8px;
line-height: 1.2;
}

.lrnprog .moddesc {
font-size: 13px;
line-height: 1.55;
color: #3a3a5c;
margin: 0;
}

.lrnprog .detailside {
display: flex;
flex-direction: column;
gap: 16px;
}

.lrnprog .sidecard {
background: #fff;
border-radius: 28px;
padding: 16px;
box-shadow: 0 5px 28px -2px rgba(45, 43, 165, 0.09);
display: flex;
flex-direction: column;
gap: 12px;
}

.lrnprog .sidecard h4 {
font-size: 14px;
font-weight: 700;
color: #2D2BA5;
margin: 0;
line-height: 1.2;
text-shadow: 0 1px 2px rgba(45, 43, 165, 0.08);
}

.lrnprog .statrow {
display: flex;
flex-direction: column;
gap: 8px;
}

.lrnprog .statitem {
display: flex;
flex-direction: row;
align-items: baseline;
gap: 8px;
}

.lrnprog .statval {
font-size: 20px;
font-weight: 700;
color: #00DCA9;
line-height: 1.2;
}

.lrnprog .statlbl {
font-size: 13px;
color: #3a3a5c;
line-height: 1.55;
}

.lrnprog .dashdivider {
width: 100%;
height: 1px;
border: none;
border-top: 1px dashed rgba(0, 220, 169, 0.5);
margin: 4px 0;
}

.lrnprog .ressec {
padding: 48px 0;
background: #15143a;
position: relative;
}

.lrnprog .ressec::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(90deg, transparent 0%, #00DCA9 30%, #2D2BA5 70%, transparent 100%);
}

.lrnprog .resinner {
display: flex;
flex-direction: column;
gap: 32px;
position: relative;
}

.lrnprog .resheadrow {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 32px;
flex-wrap: wrap;
}

.lrnprog .resh2 {
font-size: 37px;
line-height: 1.2;
color: #F9F3D7;
margin: 0;
text-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.10);
}

.lrnprog .resdesc {
font-size: 14px;
line-height: 1.55;
color: rgba(249, 243, 215, 0.75);
margin: 0;
max-width: 340px;
}

.lrnprog .rescardgrid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}

.lrnprog .rescard {
background: rgba(255, 255, 255, 0.04);
border: 1px solid rgba(0, 220, 169, 0.18);
border-radius: 18px;
padding: 16px;
display: flex;
flex-direction: column;
gap: 12px;
transition: background 0.13s cubic-bezier(0.4, 0, 1, 1), box-shadow 0.16s ease-in;
box-shadow: inset 0 1px 0 rgba(0, 220, 169, 0.08);
}

.lrnprog .rescard:hover {
background: rgba(0, 220, 169, 0.08);
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09), inset 0 1px 0 rgba(0, 220, 169, 0.15);
}

.lrnprog .restype {
display: inline-block;
font-size: 13px;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #00DCA9;
font-weight: 700;
border: 1px solid rgba(0, 220, 169, 0.35);
border-radius: 3px;
padding: 4px 8px;
align-self: flex-start;
}

.lrnprog .restitle {
font-size: 14px;
font-weight: 700;
color: #F9F3D7;
margin: 0;
line-height: 1.2;
}

.lrnprog .resmeta {
display: flex;
flex-direction: row;
gap: 8px;
align-items: center;
margin-top: auto;
}

.lrnprog .ressize {
font-size: 13px;
color: rgba(249, 243, 215, 0.5);
letter-spacing: 0.06em;
}

.lrnprog .resdot {
width: 3px;
height: 3px;
border-radius: 50%;
background: rgba(249, 243, 215, 0.3);
display: inline-block;
}

.lrnprog .resformat {
font-size: 13px;
color: rgba(249, 243, 215, 0.5);
}

.lrnprog .resdl {
display: inline-block;
margin-top: 4px;
font-size: 13px;
font-weight: 700;
color: #00DCA9;
text-decoration: none;
letter-spacing: 0.06em;
border-bottom: 1px solid rgba(0, 220, 169, 0.3);
transition: letter-spacing 0.14s cubic-bezier(0.4, 0, 1, 1);
}

.lrnprog .resdl:hover {
letter-spacing: 0.12em;
}

.lrnprog .resbottomrow {
display: flex;
flex-direction: row;
align-items: center;
gap: 32px;
padding-top: 16px;
border-top: 1px solid rgba(249, 243, 215, 0.08);
flex-wrap: wrap;
}

.lrnprog .resbottext {
font-size: 14px;
color: rgba(249, 243, 215, 0.6);
line-height: 1.55;
max-width: 480px;
margin: 0;
}

.lrnprog .btnlight {
display: inline-block;
padding: 12px 32px;
font-size: 14px;
font-weight: 700;
color: #F9F3D7;
background: transparent;
border: 3px solid rgba(249, 243, 215, 0.4);
border-radius: 3px;
cursor: pointer;
text-decoration: none;
letter-spacing: 0.04em;
box-shadow: 0 2px 2px -2px rgba(0, 220, 169, 0.08);
transition: box-shadow 0.14s ease-in, border-color 0.14s ease-in;
white-space: nowrap;
}

.lrnprog .btnlight:hover {
box-shadow: 0 10px 48px -2px rgba(0, 220, 169, 0.10);
border-color: #00DCA9;
}

@media (max-width: 900px) {
.lrnprog .titlegrid {
grid-template-columns: 1fr;
gap: 32px;
}

.lrnprog .titleimgcol img {
height: 260px;
}

.lrnprog .detailgrid {
grid-template-columns: 1fr;
gap: 32px;
}

.lrnprog .modgrid {
grid-template-columns: 1fr;
}

.lrnprog .rescardgrid {
grid-template-columns: 1fr 1fr;
gap: 12px;
}

.lrnprog .resheadrow {
flex-direction: column;
align-items: flex-start;
gap: 16px;
}

.lrnprog .titleh1 {
font-size: 37px;
}
}

@media (max-width: 600px) {
.lrnprog .pgwrap {
padding: 0 16px;
}

.lrnprog .rescardgrid {
grid-template-columns: 1fr;
}

.lrnprog .titleactions {
flex-direction: column;
}

.lrnprog .resbottomrow {
flex-direction: column;
align-items: flex-start;
gap: 16px;
}

.lrnprog .detailh2,
.lrnprog .resh2 {
font-size: 20px;
}

.lrnprog .titleh1 {
font-size: 20px;
}
}

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

.successPage .successWrap {
max-width: 1280px;
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
gap: 32px;
}

.successPage .successIcon {
width: 72px;
height: 72px;
border-radius: 28px;
background: #F9F3D7;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 5px 28px -2px rgba(0, 220, 169, 0.09);
flex-shrink: 0;
}

.successPage .successIcon svg {
display: block;
}

.successPage .successBody {
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
text-align: center;
max-width: 520px;
}

.successPage .successHeading {
font-size: 37px;
line-height: 1.2;
color: #2D2BA5;
margin: 0;
letter-spacing: -0.01em;
text-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.successPage .successText {
font-size: 14px;
line-height: 1.55;
color: #3a3a3a;
margin: 0;
}

.successPage .successDivider {
width: 48px;
height: 3px;
border-radius: 3px;
background: linear-gradient(107deg, #00DCA9, #2D2BA5);
}

.successPage .successActions {
display: flex;
flex-direction: row;
gap: 12px;
flex-wrap: wrap;
justify-content: center;
}

.successPage .btnPrimary {
display: inline-block;
font-size: 14px;
line-height: 1.2;
color: #2D2BA5;
background: #ffffff;
border: 2px solid #2D2BA5;
border-radius: 18px;
padding: 12px 32px;
text-decoration: none;
letter-spacing: 0.04em;
cursor: pointer;
box-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
transition: box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1), border-color 0.12s cubic-bezier(0.4, 0, 1, 1);
outline: none;
}

.successPage .btnPrimary:hover,
.successPage .btnPrimary:focus-visible {
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
border-color: #00DCA9;
color: #2D2BA5;
}

.successPage .btnPrimary:active {
box-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.successPage .btnSecondary {
display: inline-block;
font-size: 14px;
line-height: 1.2;
color: #ffffff;
background: #2D2BA5;
border: 2px solid #2D2BA5;
border-radius: 18px;
padding: 12px 32px;
text-decoration: none;
letter-spacing: 0.04em;
cursor: pointer;
box-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
transition: box-shadow 0.15s cubic-bezier(0.4, 0, 1, 1), background 0.12s ease-in;
outline: none;
}

.successPage .btnSecondary:hover,
.successPage .btnSecondary:focus-visible {
box-shadow: 0 10px 48px -2px rgba(45, 43, 165, 0.10);
background: #1e1c8a;
border-color: #1e1c8a;
}

.successPage .btnSecondary:active {
box-shadow: 0 2px 2px -2px rgba(45, 43, 165, 0.08);
}

.successPage .successNote {
font-size: 13px;
line-height: 1.55;
color: #555555;
margin: 0;
letter-spacing: 0.03em;
text-align: center;
max-width: 400px;
}

.successPage .successNote span {
color: #00DCA9;
font-size: 13px;
}

@media (max-width: 600px) {
.successPage .successHeading {
font-size: 20px;
}

.successPage .successActions {
flex-direction: column;
align-items: stretch;
}

.successPage .btnPrimary,
.successPage .btnSecondary {
text-align: center;
}
}