html {
box-sizing: border-box;
}

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

body {
margin: 0;
min-height: 100svh;
overflow-x: hidden;
-webkit-text-size-adjust: 100%;
font-family: 'Noto Sans', sans-serif;
}

.page_header {
position: relative;
background: linear-gradient(135deg, #2D087B 0%, #1a0550 60%, #2D087B 100%);
padding: 0;
overflow: visible;
}

.page_header::after {
content: '';
display: block;
position: absolute;
bottom: -48px;
left: 0;
right: 0;
height: 48px;
background: linear-gradient(to bottom, #2D087B 0%, transparent 100%);
pointer-events: none;
z-index: 1;
}

.header_accent_bar {
background: linear-gradient(90deg, #E900A9 0%, #12FF95 50%, #E900A9 100%);
height: 3px;
width: 100%;
}

.header_body {
max-width: 1170px;
margin: 0 auto;
padding: 24px 36px;
display: grid;
grid-template-columns: 1fr auto 1fr;
align-items: center;
gap: 24px;
}

.nav_left {
display: flex;
align-items: center;
gap: 6px;
justify-content: flex-start;
flex-wrap: wrap;
}

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

.logo_container {
display: flex;
flex-direction: column;
align-items: center;
gap: 6px;
flex-shrink: 0;
}

.logo_frame {
display: flex;
align-items: center;
justify-content: center;
width: 72px;
height: 72px;
border-radius: 24px;
border: 2px solid #12FF95;
background: #ffffff;
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10), 0 0 0 4px rgba(18, 255, 149, 0.15);
padding: 6px;
flex-shrink: 0;
}

.logo_frame img {
width: 60px;
height: 60px;
object-fit: contain;
display: block;
}

.brand_name {
font-family: 'Noto Sans', sans-serif;
font-size: 15px;
font-weight: 700;
color: #12FF95;
letter-spacing: 0.04em;
text-align: center;
line-height: 1.2;
}

.nav_link {
font-family: 'Noto Sans', sans-serif;
font-size: 15px;
color: rgba(255, 255, 255, 0.85);
text-decoration: none;
padding: 12px 12px;
border-radius: 3px;
line-height: 1.2;
display: inline-block;
position: relative;
transition: color 0.12s ease-out, background-color 0.18s ease-out;
white-space: nowrap;
}

.nav_link::before {
content: '';
position: absolute;
inset: 0;
border-radius: 3px;
background: rgba(233, 0, 169, 0.18);
transform: scaleX(0);
transform-origin: left center;
transition: transform 0.18s cubic-bezier(0.4, 0, 0.6, 1);
z-index: 0;
}

.nav_link:hover::before,
.nav_link:focus::before {
transform: scaleX(1);
}

.nav_link:hover,
.nav_link:focus {
color: #ffffff;
outline: none;
}

.nav_link:focus-visible {
outline: 2px solid #12FF95;
outline-offset: 2px;
}

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

.header_address_row {
max-width: 1170px;
margin: 0 auto;
padding: 0 36px 24px;
display: flex;
justify-content: center;
}

.address_pill {
display: inline-flex;
align-items: center;
gap: 12px;
background: rgba(255, 255, 255, 0.07);
border: 1px solid rgba(18, 255, 149, 0.25);
border-radius: 40px;
padding: 6px 24px;
}

.address_pill_dot {
width: 6px;
height: 6px;
border-radius: 40px;
background: #12FF95;
flex-shrink: 0;
}

.address_text {
font-family: 'Noto Sans', sans-serif;
font-size: 15px;
color: rgba(255, 255, 255, 0.65);
line-height: 1.2;
}

@media (max-width: 1024px) {
.header_body {
grid-template-columns: 1fr;
justify-items: center;
gap: 12px;
padding: 24px 24px 12px;
}

.nav_left,
.nav_right {
justify-content: center;
}

.header_address_row {
padding: 0 24px 24px;
}
}

@media (max-width: 640px) {
.header_body {
padding: 24px 12px 12px;
}

.nav_link {
font-size: 15px;
padding: 12px 6px;
}

.address_pill {
padding: 6px 12px;
}

.address_text {
font-size: 15px;
}
}

.page_footer {
background: #1a0550;
border-top: 3px solid #E900A9;
padding: 36px 0 24px;
font-family: 'Noto Sans', sans-serif;
}

.footer_inner {
max-width: 1170px;
margin: 0 auto;
padding: 0 36px;
}

.footer_columns {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 36px;
align-items: start;
}

.footer_divider_column {
display: flex;
gap: 36px;
}

.footer_nav_column {
flex: 1;
}

.footer_column_label {
font-size: 15px;
font-weight: 700;
color: #12FF95;
text-transform: uppercase;
letter-spacing: 0.1em;
line-height: 1.2;
margin-bottom: 12px;
}

.footer_nav_list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 6px;
}

.footer_nav_list li a {
font-size: 15px;
color: rgba(255, 255, 255, 0.7);
text-decoration: none;
line-height: 1.55;
display: inline-block;
transition: color 0.12s ease-out;
border-radius: 3px;
padding: 0 3px;
}

.footer_nav_list li a:hover,
.footer_nav_list li a:focus {
color: #E900A9;
}

.footer_nav_list li a:focus-visible {
outline: 2px solid #12FF95;
outline-offset: 2px;
}

.footer_contact_column {
border-left: 1px solid rgba(233, 0, 169, 0.3);
padding-left: 36px;
}

.footer_contact_list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 6px;
}

.footer_contact_list li {
font-size: 15px;
color: rgba(255, 255, 255, 0.7);
line-height: 1.55;
}

.footer_contact_list li a {
color: rgba(255, 255, 255, 0.7);
text-decoration: none;
transition: color 0.14s ease-out;
}

.footer_contact_list li a:hover,
.footer_contact_list li a:focus {
color: #12FF95;
}

.footer_contact_list li a:focus-visible {
outline: 2px solid #12FF95;
outline-offset: 2px;
}

.contact_label {
color: rgba(255, 255, 255, 0.4);
font-size: 15px;
display: block;
margin-bottom: 0;
}

.footer_bottom {
margin-top: 36px;
padding-top: 24px;
border-top: 1px solid rgba(255, 255, 255, 0.08);
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
gap: 12px;
}

.footer_logo_frame {
display: flex;
align-items: center;
justify-content: center;
width: 60px;
height: 60px;
border-radius: 24px;
border: 2px solid rgba(18, 255, 149, 0.5);
background: #ffffff;
box-shadow: 0 1px 6px 0 rgba(45, 8, 123, 0.05);
padding: 6px;
}

.footer_logo_frame img {
width: 48px;
height: 48px;
object-fit: contain;
display: block;
}

.footer_copyright {
font-size: 15px;
color: rgba(255, 255, 255, 0.4);
line-height: 1.55;
text-align: center;
}

@media (max-width: 1024px) {
.footer_inner {
padding: 0 24px;
}
}

@media (max-width: 640px) {
.footer_columns {
grid-template-columns: 1fr;
gap: 24px;
}

.footer_contact_column {
border-left: none;
border-top: 1px solid rgba(233, 0, 169, 0.3);
padding-left: 0;
padding-top: 24px;
}

.footer_inner {
padding: 0 12px;
}
}

.cookie_bar {
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 2000;
background: #1a0550;
border-top: 2px solid #E900A9;
box-shadow: 0 -6px 20px 0 rgba(45, 8, 123, 0.13);
font-family: 'Noto Sans', sans-serif;
}

.cookie_bar_inner {
max-width: 1170px;
margin: 0 auto;
padding: 24px 36px;
display: flex;
align-items: center;
gap: 24px;
flex-wrap: wrap;
}

.cookie_description {
flex: 1;
min-width: 200px;
}

.cookie_description p {
font-size: 15px;
color: rgba(255, 255, 255, 0.8);
line-height: 1.55;
margin: 0 0 6px;
}

.cookie_description ul {
margin: 0;
padding: 0 0 0 24px;
font-size: 15px;
color: rgba(255, 255, 255, 0.6);
line-height: 1.55;
}

.cookie_description ul li {
margin-bottom: 0;
}

.cookie_headline {
font-size: 15px;
font-weight: 700;
color: #12FF95;
line-height: 1.2;
margin-top: 6px;
}

.cookie_actions {
display: flex;
align-items: center;
gap: 12px;
flex-wrap: wrap;
flex-shrink: 0;
}

.cookie_btn {
font-family: 'Noto Sans', sans-serif;
font-size: 15px;
line-height: 1.2;
padding: 12px 24px;
border-radius: 3px;
border: 2px solid transparent;
cursor: pointer;
min-height: 44px;
min-width: 100px;
position: relative;
overflow: hidden;
transition: color 0.18s ease-out, border-color 0.18s ease-out;
}

.cookie_btn::before {
content: '';
position: absolute;
inset: 0;
transform: translateX(-100%);
transition: transform 0.18s cubic-bezier(0.4, 0, 0.6, 1);
z-index: 0;
}

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

.cookie_btn:hover::before,
.cookie_btn:focus::before {
transform: translateX(0);
}

.cookie_btn:focus-visible {
outline: 2px solid #12FF95;
outline-offset: 2px;
}

.cookie_btn.accept {
background: #E900A9;
color: #ffffff;
border-color: #E900A9;
}

.cookie_btn.accept::before {
background: #2D087B;
}

.cookie_btn.accept:hover,
.cookie_btn.accept:focus {
border-color: #2D087B;
color: #ffffff;
}

.cookie_btn.reject {
background: transparent;
color: rgba(255, 255, 255, 0.8);
border-color: rgba(255, 255, 255, 0.3);
}

.cookie_btn.reject::before {
background: rgba(255, 255, 255, 0.08);
}

.cookie_btn.reject:hover,
.cookie_btn.reject:focus {
color: #ffffff;
border-color: rgba(255, 255, 255, 0.6);
}

.cookie_settings_link {
font-size: 15px;
color: #12FF95;
text-decoration: underline;
cursor: pointer;
background: none;
border: none;
font-family: 'Noto Sans', sans-serif;
padding: 6px;
border-radius: 3px;
min-height: 44px;
display: inline-flex;
align-items: center;
transition: color 0.12s ease-out;
}

.cookie_settings_link:hover,
.cookie_settings_link:focus {
color: #E900A9;
}

.cookie_settings_link:focus-visible {
outline: 2px solid #12FF95;
outline-offset: 2px;
}

.cookie_toggles {
width: 100%;
padding-top: 12px;
display: flex;
gap: 24px;
flex-wrap: wrap;
}

.toggle_item {
display: flex;
align-items: center;
gap: 12px;
font-size: 15px;
color: rgba(255, 255, 255, 0.75);
line-height: 1.2;
}

.toggle_item input[type="checkbox"] {
width: 20px;
height: 20px;
accent-color: #E900A9;
cursor: pointer;
}

@media (max-width: 640px) {
.cookie_bar_inner {
padding: 24px 12px;
flex-direction: column;
align-items: flex-start;
}

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

.rules-content {
max-width: 1170px;
margin: 0 auto;
padding: 72px 24px;
}

.rules-content h1 {
font-size: 68px;
line-height: 1.2;
color: #2D087B;
margin-bottom: 36px;
margin-top: 0;
}

.rules-content h2 {
font-size: 37px;
line-height: 1.2;
color: #2D087B;
margin-top: 72px;
margin-bottom: 24px;
}

.rules-content h3 {
font-size: 27px;
line-height: 1.2;
color: #2D087B;
margin-top: 36px;
margin-bottom: 12px;
}

.rules-content h4 {
font-size: 21px;
line-height: 1.55;
color: #2D087B;
margin-top: 24px;
margin-bottom: 12px;
}

.rules-content h5 {
font-size: 15px;
line-height: 1.55;
color: #2D087B;
text-transform: uppercase;
letter-spacing: 0.08em;
margin-top: 24px;
margin-bottom: 6px;
}

.rules-content h6 {
font-size: 15px;
line-height: 1.55;
color: #E900A9;
margin-top: 24px;
margin-bottom: 6px;
}

.rules-content p {
font-size: 15px;
line-height: 1.8;
color: #1b1b2e;
margin-top: 0;
margin-bottom: 24px;
max-width: 72ch;
}

.rules-content strong,
.rules-content b {
font-weight: 700;
color: #2D087B;
}

.rules-content em,
.rules-content i {
font-style: italic;
color: inherit;
}

.rules-content hr {
border: none;
border-top: 2px solid #e8e0f5;
margin-top: 36px;
margin-bottom: 36px;
box-shadow: inset 0 1px 6px 0 rgba(45, 8, 123, 0.05);
}

@media (max-width: 1024px) {
.rules-content h1 {
font-size: 37px;
}

.rules-content h2 {
font-size: 27px;
}

.rules-content h3 {
font-size: 21px;
}

.rules-content {
padding: 36px 24px;
}
}

@media (max-width: 640px) {
.rules-content h1 {
font-size: 27px;
}

.rules-content h2 {
font-size: 21px;
margin-top: 36px;
}

.rules-content h3 {
font-size: 15px;
}

.rules-content {
padding: 24px 12px;
}

.rules-content p {
max-width: 100%;
}
}

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

.contact-us .form-area {
max-width: 1170px;
margin: 0 auto;
padding: 72px 24px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 72px;
align-items: start;
}

.contact-us .form-left {
position: relative;
}

.contact-us .quotemark {
position: absolute;
top: -24px;
left: -12px;
font-size: 120px;
line-height: 1.2;
color: #2D087B;
opacity: 0.07;
pointer-events: none;
user-select: none;
z-index: 0;
}

.contact-us .form-left-text {
position: relative;
z-index: 1;
}

.contact-us .form-eyebrow {
font-size: 15px;
line-height: 1.55;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #E900A9;
margin-bottom: 12px;
}

.contact-us .form-heading {
font-size: 68px;
line-height: 1.2;
background: linear-gradient(to top, #2D087B, #E900A9);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
margin-bottom: 24px;
}

.contact-us .form-desc {
font-size: 21px;
line-height: 1.55;
color: #3a2060;
margin-bottom: 36px;
max-width: 420px;
}

.contact-us .image-bw {
width: 100%;
max-width: 380px;
display: block;
border-radius: 24px;
filter: grayscale(100%) contrast(1.1);
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
transition: filter 0.18s ease-out, transform 0.12s ease-out;
}

.contact-us .image-bw:hover {
filter: grayscale(0%) contrast(1.05);
transform: scale(1.02);
}

.contact-us .image-wrap {
margin-top: 36px;
dashed-border: none;
}

.contact-us .dashed-frame {
display: inline-block;
padding: 12px;
border: 2px dashed rgba(45, 8, 123, 0.18);
border-radius: 24px;
}

.contact-us .form-right {
background: #f4f0ff;
border-radius: 24px;
padding: 36px;
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
animation: rotate-in 0.22s cubic-bezier(0.4, 0, 0.6, 1) both;
}

@keyframes rotate-in {
from {
opacity: 0;
transform: rotate(-1.5deg) translateY(16px);
}

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

.contact-us .form-title {
font-size: 27px;
line-height: 1.2;
color: #2D087B;
margin-bottom: 24px;
}

.contact-us .field-group {
margin-bottom: 24px;
}

.contact-us .field-label {
display: block;
font-size: 15px;
line-height: 1.55;
color: #2D087B;
margin-bottom: 6px;
font-weight: 600;
}

.contact-us .field-input {
width: 100%;
padding: 12px 16px;
font-size: 15px;
line-height: 1.55;
border: 2px solid rgba(45, 8, 123, 0.15);
border-radius: 3px;
background: #fff;
color: #1a0a3d;
outline: none;
transition: border-color 0.16s ease-out, box-shadow 0.16s ease-out;
box-sizing: border-box;
}

.contact-us .field-input::placeholder {
font-size: 14px;
color: #9e8ec0;
}

.contact-us .field-input:focus {
border-color: #E900A9;
box-shadow: 0 1px 6px 0 rgba(233, 0, 169, 0.10);
}

.contact-us .field-select {
width: 100%;
padding: 12px 16px;
font-size: 15px;
line-height: 1.55;
border: 2px solid rgba(45, 8, 123, 0.15);
border-radius: 3px;
background: #fff;
color: #1a0a3d;
outline: none;
appearance: none;
cursor: pointer;
transition: border-color 0.16s ease-out, box-shadow 0.16s ease-out;
box-sizing: border-box;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%232D087B' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 16px center;
padding-right: 40px;
}

.contact-us .field-select:focus {
border-color: #E900A9;
box-shadow: 0 1px 6px 0 rgba(233, 0, 169, 0.10);
}

.contact-us .options-group {
margin-bottom: 24px;
}

.contact-us .options-label {
display: block;
font-size: 15px;
line-height: 1.55;
color: #2D087B;
margin-bottom: 12px;
font-weight: 600;
}

.contact-us .radio-list {
display: flex;
flex-direction: column;
gap: 6px;
}

.contact-us .radio-item {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
padding: 12px;
border-radius: 3px;
border: 2px solid rgba(45, 8, 123, 0.10);
background: #fff;
cursor: pointer;
transition: border-color 0.12s ease-out, background 0.12s ease-out;
}

.contact-us .radio-item:hover {
border-color: #E900A9;
background: #fff5fd;
}

.contact-us .radio-item input[type="radio"] {
accent-color: #E900A9;
width: 18px;
height: 18px;
cursor: pointer;
flex-shrink: 0;
}

.contact-us .radio-item-text {
font-size: 15px;
line-height: 1.55;
color: #2D087B;
}

.contact-us .privacy-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
margin-bottom: 24px;
padding: 12px;
border-radius: 3px;
background: rgba(45, 8, 123, 0.04);
}

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

.contact-us .privacy-text {
font-size: 15px;
line-height: 1.55;
color: #3a2060;
}

.contact-us .privacy-text a {
color: #E900A9;
text-decoration: underline;
text-underline-offset: 3px;
transition: color 0.12s ease-out;
}

.contact-us .privacy-text a:focus {
outline: 2px solid #2D087B;
outline-offset: 2px;
border-radius: 3px;
}

.contact-us .privacy-text a:hover {
color: #2D087B;
}

.contact-us .submit-btn {
position: relative;
overflow: hidden;
display: inline-block;
padding: 12px 36px;
font-size: 15px;
line-height: 1.55;
color: #fff;
background: #2D087B;
border: none;
border-radius: 3px;
cursor: pointer;
letter-spacing: 0.04em;
text-transform: lowercase;
width: 100%;
transition: color 0.16s ease-out;
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
}

.contact-us .submit-btn::before {
content: "";
position: absolute;
inset: 0;
background: #E900A9;
transform: translateX(-100%);
transition: transform 0.18s cubic-bezier(0.4, 0, 0.6, 1);
z-index: 0;
border-radius: 3px;
}

.contact-us .submit-btn:hover::before {
transform: translateX(0);
}

.contact-us .submit-btn:focus {
outline: 2px solid #12FF95;
outline-offset: 3px;
}

.contact-us .submit-btn span {
position: relative;
z-index: 1;
}

.contact-us .diamond-divider {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 6px;
padding: 12px 0;
overflow: hidden;
}

.contact-us .diamond-divider svg {
flex-shrink: 0;
}

.contact-us .info-strip {
background: #2D087B;
padding: 72px 24px;
}

.contact-us .info-strip-inner {
max-width: 1170px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 36px;
align-items: start;
}

.contact-us .info-card {
border-radius: 24px;
padding: 36px;
background: rgba(255, 255, 255, 0.06);
border: 1px solid rgba(18, 255, 149, 0.15);
box-shadow: 0 1px 6px 0 rgba(45, 8, 123, 0.05);
transition: background 0.18s ease-out, transform 0.12s ease-out;
}

.contact-us .info-card:hover {
background: rgba(255, 255, 255, 0.10);
transform: translateY(-4px);
}

.contact-us .info-card-icon {
width: 40px;
height: 40px;
margin-bottom: 12px;
}

.contact-us .info-card-label {
font-size: 15px;
line-height: 1.55;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #12FF95;
margin-bottom: 6px;
}

.contact-us .info-card-value {
font-size: 21px;
line-height: 1.55;
color: #fff;
}

.contact-us .info-card-value a {
color: #fff;
text-decoration: none;
transition: color 0.12s ease-out;
}

.contact-us .info-card-value a:hover {
color: #12FF95;
}

.contact-us .info-card-value a:focus {
outline: 2px solid #12FF95;
outline-offset: 2px;
border-radius: 3px;
}

.contact-us .info-card-sub {
font-size: 15px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.55);
margin-top: 6px;
}

.contact-us .info-image-wrap {
grid-column: span 1;
}

.contact-us .info-image {
width: 100%;
border-radius: 24px;
display: block;
filter: grayscale(30%) contrast(1.05);
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
transition: filter 0.18s ease-out, transform 0.12s ease-out;
object-fit: cover;
}

.contact-us .info-image:hover {
filter: grayscale(0%) contrast(1.0);
transform: scale(1.02);
}

.contact-us .info-cards-col {
display: flex;
flex-direction: column;
gap: 24px;
grid-column: span 2;
grid-row: 1;
}

.contact-us .strip-heading {
font-size: 37px;
line-height: 1.2;
color: #fff;
margin-bottom: 36px;
max-width: 1170px;
margin-left: auto;
margin-right: auto;
padding: 0 24px;
}

.contact-us .strip-heading span {
background: linear-gradient(to top, #12FF95, #E900A9);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

@media (max-width: 1024px) {
.contact-us .form-area {
grid-template-columns: 1fr;
gap: 36px;
padding: 36px 24px;
}

.contact-us .form-heading {
font-size: clamp(37px, 8vw, 68px);
}

.contact-us .info-strip-inner {
grid-template-columns: 1fr 1fr;
gap: 24px;
}

.contact-us .info-cards-col {
grid-column: span 2;
}

.contact-us .info-image-wrap {
grid-column: span 2;
}

.contact-us .strip-heading {
font-size: 27px;
}
}

@media (max-width: 640px) {
.contact-us .form-area {
padding: 36px 12px;
gap: 24px;
}

.contact-us .form-right {
padding: 24px;
}

.contact-us .info-strip {
padding: 36px 12px;
}

.contact-us .info-strip-inner {
grid-template-columns: 1fr;
}

.contact-us .info-cards-col {
grid-column: span 1;
}

.contact-us .info-image-wrap {
grid-column: span 1;
}

.contact-us .strip-heading {
font-size: 21px;
padding: 0 12px;
}

.contact-us .form-heading {
font-size: 37px;
}
}

.case-studies {
background: #ffffff;
overflow-x: clip;
}

.case-studies .title-block {
background: linear-gradient(to top, #2D087B, #E900A9);
padding: 72px 24px 36px;
position: relative;
overflow: hidden;
}

.case-studies .title-block .curved-line {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
}

.case-studies .title-block .curved-line svg {
width: 100%;
height: 100%;
opacity: 0.13;
}

.case-studies .title-block-inner {
max-width: 1170px;
margin: 0 auto;
position: relative;
}

.case-studies .title-block-inner .page-label {
font-size: 15px;
line-height: 1.55;
color: #12FF95;
text-transform: uppercase;
letter-spacing: 0.12em;
margin-bottom: 24px;
display: block;
}

.case-studies .title-block-inner h1 {
font-size: clamp(37px, 6vw, 68px);
line-height: 1.2;
color: #ffffff;
max-width: 760px;
margin-bottom: 24px;
}

.case-studies .title-block-inner .subtitle {
font-size: 21px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.82);
max-width: 580px;
}

.case-studies .split-reveal {
animation: splitOpen 0.22s cubic-bezier(0.4, 0, 0.6, 1) both;
}

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

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

.case-studies .divider-partial {
width: 100%;
max-width: 1170px;
margin: 0 auto;
padding: 0 24px;
}

.case-studies .divider-partial span {
display: block;
width: 38%;
height: 2px;
background: linear-gradient(to right, #E900A9, transparent);
}

.case-studies .studies-grid-block {
background: #f4f0ff;
padding: 72px 24px;
}

.case-studies .studies-grid-block .grid-inner {
max-width: 1170px;
margin: 0 auto;
}

.case-studies .studies-grid-block .block-heading {
font-size: clamp(27px, 4vw, 37px);
line-height: 1.2;
background: linear-gradient(to top, #2D087B, #E900A9);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
margin-bottom: 12px;
}

.case-studies .studies-grid-block .block-intro {
font-size: 15px;
line-height: 1.55;
color: #3a3060;
max-width: 520px;
margin-bottom: 36px;
}

.case-studies .studies-grid-block .studies-list {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
}

@media (max-width: 640px) {
.case-studies .studies-grid-block .studies-list {
grid-template-columns: 1fr;
}
}

.case-studies .study-card {
background: #ffffff;
border-radius: 24px;
padding: 36px;
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
position: relative;
border-right: 3px solid #E900A9;
transition: box-shadow 0.18s ease-out, transform 0.14s ease-out;
}

.case-studies .study-card:hover {
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
transform: translateY(-3px);
}

.case-studies .study-card .card-num {
font-size: 68px;
line-height: 1.2;
color: #2D087B;
opacity: 0.07;
position: absolute;
top: 12px;
right: 24px;
pointer-events: none;
}

.case-studies .study-card h3 {
font-size: 21px;
line-height: 1.2;
color: #2D087B;
margin-bottom: 12px;
}

.case-studies .study-card .card-tag {
display: inline-block;
font-size: 15px;
line-height: 1.55;
color: #E900A9;
background: rgba(233, 0, 169, 0.08);
border-radius: 3px;
padding: 0 12px;
margin-bottom: 12px;
}

.case-studies .study-card .card-body {
font-size: 15px;
line-height: 1.8;
color: #3a3060;
}

.case-studies .study-card .card-metrics {
margin-top: 24px;
display: flex;
flex-direction: row;
gap: 24px;
flex-wrap: wrap;
}

.case-studies .study-card .metric-item {
display: flex;
flex-direction: column;
gap: 6px;
}

.case-studies .study-card .metric-value {
font-size: 27px;
line-height: 1.2;
color: #2D087B;
}

.case-studies .study-card .metric-label {
font-size: 15px;
line-height: 1.55;
color: #7a6fa0;
}

.case-studies .study-card.featured {
grid-column: 1 / -1;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 36px;
align-items: start;
}

@media (max-width: 640px) {
.case-studies .study-card.featured {
grid-template-columns: 1fr;
grid-column: 1;
}
}

.case-studies .study-card.featured .card-image-wrap {
border-radius: 24px;
overflow: hidden;
height: 280px;
}

.case-studies .study-card.featured .card-image-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
filter: grayscale(0%);
transition: filter 2.4s cubic-bezier(0.4, 0, 0.6, 1);
}

.case-studies .study-card.featured:hover .card-image-wrap img {
filter: grayscale(100%);
}

.case-studies .study-card.featured .card-text {
display: flex;
flex-direction: column;
gap: 12px;
}

.case-studies .divider-dots {
max-width: 1170px;
margin: 0 auto;
padding: 0 24px;
display: flex;
flex-direction: row;
gap: 6px;
align-items: center;
}

.case-studies .divider-dots span {
width: 6px;
height: 6px;
border-radius: 40px;
background: #12FF95;
display: block;
}

.case-studies .divider-dots span:nth-child(2) {
background: #E900A9;
width: 12px;
}

.case-studies .divider-dots span:nth-child(3) {
background: #2D087B;
}

.case-studies .analysis-block {
padding: 72px 24px;
background: #ffffff;
}

.case-studies .analysis-block .analysis-inner {
max-width: 1170px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 2fr;
gap: 72px;
align-items: start;
}

@media (max-width: 1024px) {
.case-studies .analysis-block .analysis-inner {
grid-template-columns: 1fr;
gap: 36px;
}
}

.case-studies .analysis-block .analysis-left {
position: sticky;
top: 36px;
}

.case-studies .analysis-block .analysis-left h2 {
font-size: clamp(27px, 4vw, 37px);
line-height: 1.2;
background: linear-gradient(to top, #2D087B, #E900A9);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
margin-bottom: 24px;
}

.case-studies .analysis-block .analysis-left .vertical-bar {
width: 3px;
height: 72px;
background: linear-gradient(to top, #12FF95, #E900A9);
border-radius: 3px;
margin-bottom: 24px;
}

.case-studies .analysis-block .analysis-left .left-note {
font-size: 15px;
line-height: 1.8;
color: #3a3060;
}

.case-studies .analysis-block .analysis-right {
display: flex;
flex-direction: column;
gap: 36px;
}

.case-studies .analysis-item {
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start;
}

.case-studies .analysis-item .item-number {
font-size: 68px;
line-height: 1.2;
color: #2D087B;
opacity: 0.09;
min-width: 60px;
pointer-events: none;
}

.case-studies .analysis-item .item-body {
display: flex;
flex-direction: column;
gap: 6px;
padding-top: 6px;
}

.case-studies .analysis-item .item-body h4 {
font-size: 21px;
line-height: 1.2;
color: #2D087B;
}

.case-studies .analysis-item .item-body p {
font-size: 15px;
line-height: 1.8;
color: #3a3060;
}

.case-studies .analysis-item .item-body .progress-bar-wrap {
margin-top: 12px;
background: rgba(45, 8, 123, 0.08);
border-radius: 3px;
height: 6px;
overflow: hidden;
}

.case-studies .analysis-item .item-body .progress-bar-fill {
height: 100%;
border-radius: 3px;
background: linear-gradient(to right, #E900A9, #12FF95);
animation: barGrow 0.22s cubic-bezier(0.4, 0, 0.6, 1) both;
animation-delay: 0.12s;
}

@keyframes barGrow {
from {
width: 0;
}
}

.case-studies .analysis-item .item-body .progress-label {
font-size: 15px;
line-height: 1.55;
color: #7a6fa0;
margin-top: 6px;
}

@media (max-width: 640px) {
.case-studies .title-block {
padding: 36px 24px 36px;
}

.case-studies .title-block-inner h1 {
font-size: 37px;
}

.case-studies .studies-grid-block {
padding: 36px 24px;
}

.case-studies .analysis-block {
padding: 36px 24px;
}

.case-studies .analysis-item {
flex-direction: column;
gap: 6px;
}

.case-studies .analysis-item .item-number {
font-size: 37px;
min-width: auto;
}
}

.root {
background: #ffffff;
overflow-x: clip;
padding: 0;
}

.root .accent_bar {
width: 36px;
height: 3px;
background: linear-gradient(to top, #E900A9, #2D087B);
border-radius: 3px;
margin-bottom: 12px;
}

.root .grad_text {
background: linear-gradient(to top, #E900A9, #2D087B);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.root .title_strip {
background: linear-gradient(to bottom, #2D087B 0%, rgba(45, 8, 123, 0) 100%);
padding: 36px 24px;
position: relative;
}

.root .title_strip_inner {
max-width: 1170px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 36px;
}

.root .title_dots {
position: absolute;
top: 0;
right: 0;
width: 160px;
height: 100%;
pointer-events: none;
overflow: hidden;
}

.root .title_dots svg {
width: 100%;
height: 100%;
}

.root .title_text_col {
flex: 1;
min-width: 0;
}

.root .title_label {
font-size: 15px;
line-height: 1.55;
color: #12FF95;
letter-spacing: 0.12em;
text-transform: uppercase;
margin-bottom: 12px;
}

.root .title_heading {
font-size: clamp(37px, 5vw, 68px);
line-height: 1.2;
color: #ffffff;
margin: 0 0 12px 0;
}

.root .title_desc {
font-size: 15px;
line-height: 1.8;
color: rgba(255, 255, 255, 0.82);
max-width: 520px;
margin: 0;
}

.root .title_img_col {
flex-shrink: 0;
width: 260px;
}

.root .title_img_frame {
width: 260px;
height: 200px;
border-radius: 3px;
overflow: hidden;
filter: sepia(0.38) contrast(1.1) brightness(0.88) saturate(0.78);
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
}

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

.root .invest_strip {
background: #f5f3fb;
padding: 72px 24px;
position: relative;
}

.root .invest_strip::before {
content: "";
display: block;
position: absolute;
top: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(to right, #2D087B, #E900A9, #12FF95);
}

.root .invest_inner {
max-width: 1170px;
margin: 0 auto;
display: flex;
flex-direction: row;
gap: 72px;
align-items: flex-start;
}

.root .invest_left {
flex: 1;
min-width: 0;
}

.root .invest_heading {
font-size: clamp(27px, 3vw, 37px);
line-height: 1.2;
margin: 0 0 24px 0;
}

.root .invest_body {
font-size: 15px;
line-height: 1.8;
color: #3a3350;
margin: 0 0 24px 0;
}

.root .invest_right {
flex-shrink: 0;
width: 340px;
}

.root .invest_card {
background: #ffffff;
border-radius: 24px;
padding: 36px;
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
}

.root .invest_card_row {
display: flex;
flex-direction: row;
align-items: baseline;
gap: 12px;
margin-bottom: 12px;
}

.root .invest_price_label {
font-size: 15px;
color: #7a6fa0;
line-height: 1.55;
}

.root .invest_price_val {
font-size: 37px;
line-height: 1.2;
font-weight: 700;
color: #2D087B;
}

.root .invest_price_period {
font-size: 15px;
color: #7a6fa0;
}

.root .invest_divider {
height: 1px;
background: #e8e3f5;
margin: 24px 0;
}

.root .invest_item_list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 12px;
}

.root .invest_item_list li {
font-size: 15px;
line-height: 1.55;
color: #3a3350;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
}

.root .invest_dot {
width: 8px;
height: 8px;
border-radius: 40px;
background: #E900A9;
flex-shrink: 0;
margin-top: 5px;
}

.root .numbers_strip {
background: #ffffff;
padding: 72px 24px;
position: relative;
}

.root .numbers_strip::after {
content: "";
display: block;
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(to right, transparent, #E900A9, transparent);
}

.root .numbers_inner {
max-width: 1170px;
margin: 0 auto;
}

.root .numbers_heading {
font-size: clamp(27px, 3vw, 37px);
line-height: 1.2;
margin: 0 0 12px 0;
text-align: center;
}

.root .numbers_sub {
font-size: 15px;
line-height: 1.8;
color: #5c4f7c;
text-align: center;
max-width: 560px;
margin: 0 auto 36px auto;
}

.root .numbers_grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px;
}

.root .num_card {
background: linear-gradient(to bottom, #f5f3fb, #ffffff);
border-radius: 24px;
padding: 36px 24px;
text-align: center;
box-shadow: 0 1px 6px 0 rgba(45, 8, 123, 0.05);
transition: box-shadow 0.18s ease-out, transform 0.12s ease-out;
}

.root .num_card:hover {
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
transform: translateY(-3px);
}

.root .num_big {
font-size: 68px;
line-height: 1.2;
font-weight: 800;
background: linear-gradient(to top, #E900A9, #2D087B);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
display: block;
}

.root .num_label {
font-size: 15px;
line-height: 1.55;
color: #5c4f7c;
margin-top: 6px;
display: block;
}

.root .after_strip {
background: #2D087B;
padding: 72px 24px;
position: relative;
overflow: hidden;
}

.root .after_pattern {
position: absolute;
inset: 0;
pointer-events: none;
overflow: hidden;
}

.root .after_inner {
max-width: 1170px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 72px;
align-items: center;
position: relative;
}

.root .after_text_col h2 {
font-size: clamp(27px, 3vw, 37px);
line-height: 1.2;
color: #ffffff;
margin: 0 0 24px 0;
}

.root .after_text_col p {
font-size: 15px;
line-height: 1.8;
color: rgba(255, 255, 255, 0.80);
margin: 0 0 24px 0;
}

.root .after_outcomes {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 12px;
counter-reset: outcomes;
}

.root .after_outcomes li {
counter-increment: outcomes;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
color: rgba(255, 255, 255, 0.88);
font-size: 15px;
line-height: 1.55;
}

.root .after_outcomes li::before {
content: counter(outcomes, decimal-leading-zero);
font-size: 27px;
line-height: 1.2;
font-weight: 800;
color: #12FF95;
flex-shrink: 0;
opacity: 0.55;
}

.root .after_img_col {
display: flex;
flex-direction: column;
gap: 24px;
}

.root .after_img_frame {
width: 100%;
height: 280px;
border-radius: 24px;
overflow: hidden;
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
filter: brightness(0.9) saturate(0.85);
}

.root .after_img_frame img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: filter 0.22s ease-out;
}

.root .after_img_frame:hover img {
filter: blur(0px) brightness(1);
}

.root .after_caption {
font-size: 15px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.6);
text-align: center;
}

.root .exp_strip {
padding: 72px 24px;
background: #fff;
position: relative;
}

.root .exp_strip_bg_top {
background: #f5f3fb;
height: 50%;
position: absolute;
top: 0;
left: 0;
right: 0;
z-index: 0;
}

.root .exp_inner {
max-width: 1170px;
margin: 0 auto;
position: relative;
z-index: 1;
}

.root .exp_heading {
font-size: clamp(27px, 3vw, 37px);
line-height: 1.2;
margin: 0 0 36px 0;
max-width: 600px;
}

.root .exp_grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr 2fr;
gap: 24px;
align-items: start;
}

.root .exp_card {
background: #ffffff;
border-radius: 24px;
padding: 36px 24px;
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
transition: box-shadow 0.16s ease-out;
}

.root .exp_card:hover {
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
}

.root .exp_name {
font-size: 15px;
font-weight: 700;
color: #2D087B;
margin-bottom: 6px;
line-height: 1.55;
}

.root .exp_role {
font-size: 15px;
color: #7a6fa0;
line-height: 1.55;
margin-bottom: 12px;
}

.root .exp_quote {
font-size: 15px;
line-height: 1.8;
color: #3a3350;
margin: 0;
}

.root .exp_card_featured {
background: linear-gradient(to top, #E900A9, #2D087B);
border-radius: 24px;
padding: 36px;
box-shadow: 0 10px 48px 0 rgba(233, 0, 169, 0.13);
}

.root .exp_card_featured .exp_name {
color: #12FF95;
}

.root .exp_card_featured .exp_role {
color: rgba(255, 255, 255, 0.65);
}

.root .exp_card_featured .exp_quote {
color: rgba(255, 255, 255, 0.90);
font-size: 21px;
line-height: 1.55;
}

.root .exp_img_frame {
width: 100%;
height: 160px;
border-radius: 3px;
overflow: hidden;
margin-bottom: 24px;
}

.root .exp_img_frame img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: saturate(0.7) brightness(0.95);
transition: filter 0.18s ease-out;
}

.root .exp_card:hover .exp_img_frame img {
filter: saturate(1) brightness(1);
}

.root .support_strip {
padding: 72px 24px;
background: #f5f3fb;
position: relative;
}

.root .support_strip::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(to right, #12FF95, #E900A9, #2D087B);
}

.root .support_inner {
max-width: 1170px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 72px;
align-items: start;
}

.root .support_left h2 {
font-size: clamp(27px, 3vw, 37px);
line-height: 1.2;
margin: 0 0 24px 0;
}

.root .support_left p {
font-size: 15px;
line-height: 1.8;
color: #3a3350;
margin: 0 0 24px 0;
}

.root .support_right {
display: flex;
flex-direction: column;
gap: 24px;
}

.root .support_item {
background: #ffffff;
border-radius: 24px;
padding: 24px 36px;
box-shadow: 0 1px 6px 0 rgba(45, 8, 123, 0.05);
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 24px;
transition: box-shadow 0.14s ease-out;
}

.root .support_item:hover {
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
}

.root .support_icon {
flex-shrink: 0;
width: 40px;
height: 40px;
border-radius: 40px;
background: linear-gradient(to top, #E900A9, #2D087B);
display: flex;
align-items: center;
justify-content: center;
}

.root .support_icon svg {
width: 20px;
height: 20px;
fill: none;
stroke: #ffffff;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
}

.root .support_item_title {
font-size: 15px;
font-weight: 700;
color: #2D087B;
margin-bottom: 6px;
line-height: 1.55;
}

.root .support_item_desc {
font-size: 15px;
line-height: 1.8;
color: #5c4f7c;
margin: 0;
}

.root .support_img_frame {
width: 100%;
height: 220px;
border-radius: 24px;
overflow: hidden;
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
margin-top: 12px;
}

.root .support_img_frame img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: saturate(0.8);
transition: filter 0.20s ease-out, transform 0.18s ease-out;
}

.root .support_img_frame:hover img {
filter: saturate(1.1);
transform: scale(1.03);
}

.root .wave_top {
width: 100%;
overflow: hidden;
line-height: 0;
}

.root .wave_top svg {
display: block;
width: 100%;
}

@media (max-width: 1024px) {
.root .title_strip_inner {
flex-direction: column;
gap: 24px;
}

.root .title_img_col {
width: 100%;
}

.root .title_img_frame {
width: 100%;
height: 200px;
}

.root .invest_inner {
flex-direction: column;
gap: 36px;
}

.root .invest_right {
width: 100%;
}

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

.root .after_inner {
grid-template-columns: 1fr;
gap: 36px;
}

.root .exp_grid {
grid-template-columns: 1fr 1fr;
}

.root .support_inner {
grid-template-columns: 1fr;
gap: 36px;
}
}

@media (max-width: 640px) {
.root .numbers_grid {
grid-template-columns: 1fr 1fr;
gap: 12px;
}

.root .num_big {
font-size: 37px;
}

.root .exp_grid {
grid-template-columns: 1fr;
}

.root .invest_card {
padding: 24px;
}

.root .title_heading {
font-size: 37px;
}

.root .after_img_frame {
height: 200px;
}
}

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

.learning_program .program_hero {
background: linear-gradient(to top, #2D087B, #E900A9);
position: relative;
padding: 72px 24px;
}

.learning_program .hero_blob_one {
position: absolute;
top: -36px;
left: -36px;
width: 320px;
height: 320px;
background: #E900A9;
border-radius: 40px;
filter: blur(80px);
opacity: 0.25;
pointer-events: none;
overflow: hidden;
}

.learning_program .hero_blob_two {
position: absolute;
bottom: -24px;
right: -24px;
width: 260px;
height: 260px;
background: #12FF95;
border-radius: 40px;
filter: blur(90px);
opacity: 0.18;
pointer-events: none;
overflow: hidden;
}

.learning_program .hero_inner {
max-width: 1170px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 72px;
position: relative;
z-index: 1;
}

.learning_program .hero_text {
flex: 1 1 0;
}

.learning_program .hero_label {
display: inline-block;
font-size: 15px;
line-height: 1.2;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #12FF95;
margin-bottom: 24px;
border: 1px solid rgba(18, 255, 149, 0.35);
border-radius: 3px;
padding: 6px 12px;
}

.learning_program .hero_heading {
font-size: clamp(37px, 5vw, 68px);
line-height: 1.2;
color: #fff;
margin-bottom: 24px;
}

.learning_program .hero_heading .accent_mark {
color: #12FF95;
}

.learning_program .hero_description {
font-size: 21px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.82);
max-width: 520px;
margin-bottom: 36px;
}

.learning_program .hero_stats {
display: flex;
flex-direction: row;
gap: 36px;
}

.learning_program .stat_item {
display: flex;
flex-direction: column;
gap: 6px;
}

.learning_program .stat_number {
font-size: 37px;
line-height: 1.2;
color: #12FF95;
font-weight: 700;
}

.learning_program .stat_label {
font-size: 15px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.7);
}

.learning_program .hero_image_wrap {
flex: 0 0 420px;
position: relative;
}

.learning_program .hero_image_wrap img {
width: 420px;
height: 480px;
object-fit: cover;
border-radius: 24px;
filter: grayscale(100%);
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
display: block;
transition: filter 0.18s ease-out;
}

.learning_program .hero_image_wrap img:hover {
filter: grayscale(0%);
}

.learning_program .hero_counter {
position: absolute;
top: 24px;
right: -12px;
background: #E900A9;
color: #fff;
font-size: 15px;
line-height: 1.2;
border-radius: 3px;
padding: 6px 12px;
font-weight: 700;
box-shadow: 0 6px 20px 0 rgba(233, 0, 169, 0.10);
}

.learning_program .hero_divider {
width: 100%;
height: 6px;
background: linear-gradient(to right, #2D087B 70%, transparent 100%);
border: none;
margin: 0;
}

.learning_program .program_detail {
background: #fff;
padding: 72px 24px;
}

.learning_program .detail_inner {
max-width: 1170px;
margin: 0 auto;
}

.learning_program .detail_top {
display: flex;
flex-direction: row;
gap: 72px;
align-items: flex-start;
margin-bottom: 72px;
}

.learning_program .detail_left {
flex: 1 1 0;
}

.learning_program .detail_heading {
font-size: clamp(27px, 3vw, 37px);
line-height: 1.2;
margin-bottom: 24px;
background: linear-gradient(to top, #2D087B, #E900A9);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.learning_program .detail_body {
font-size: 15px;
line-height: 1.8;
color: #2a2a35;
margin-bottom: 24px;
max-width: 540px;
}

.learning_program .detail_list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 24px;
}

.learning_program .detail_list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
font-size: 15px;
line-height: 1.55;
color: #2a2a35;
position: relative;
}

.learning_program .list_num {
font-size: 37px;
line-height: 1;
color: rgba(45, 8, 123, 0.10);
font-weight: 900;
flex-shrink: 0;
width: 36px;
text-align: right;
}

.learning_program .list_text {
padding-top: 6px;
}

.learning_program .detail_right {
flex: 0 0 380px;
display: flex;
flex-direction: column;
gap: 24px;
}

.learning_program .tier_cards {
display: flex;
flex-direction: column;
gap: 24px;
}

.learning_program .tier_card {
border-radius: 24px;
padding: 24px;
position: relative;
overflow: hidden;
box-shadow: 0 1px 6px 0 rgba(45, 8, 123, 0.05);
transition: box-shadow 0.15s ease-out, transform 0.12s ease-out;
animation: border_glow 1.2s ease-out forwards;
}

.learning_program .tier_card:hover {
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
transform: translateY(-2px);
}

.learning_program .tier_card.basic {
background: #f4f0ff;
border: 2px solid rgba(45, 8, 123, 0.12);
}

.learning_program .tier_card.standard {
background: linear-gradient(to top, rgba(45, 8, 123, 0.06), rgba(233, 0, 169, 0.06));
border: 2px solid rgba(233, 0, 169, 0.22);
}

.learning_program .tier_card.advanced {
background: #2D087B;
border: 2px solid #E900A9;
color: #fff;
}

@keyframes border_glow {
0% {
box-shadow: 0 0 0 0 rgba(45, 8, 123, 0);
}

60% {
box-shadow: 0 0 0 6px rgba(45, 8, 123, 0.08);
}

100% {
box-shadow: 0 1px 6px 0 rgba(45, 8, 123, 0.05);
}
}

.learning_program .tier_name {
font-size: 15px;
line-height: 1.2;
text-transform: uppercase;
letter-spacing: 0.1em;
font-weight: 700;
margin-bottom: 6px;
}

.learning_program .tier_card.basic .tier_name {
color: #2D087B;
}

.learning_program .tier_card.standard .tier_name {
color: #E900A9;
}

.learning_program .tier_card.advanced .tier_name {
color: #12FF95;
}

.learning_program .tier_price {
font-size: 37px;
line-height: 1.2;
font-weight: 900;
margin-bottom: 12px;
}

.learning_program .tier_card.basic .tier_price {
color: #2D087B;
}

.learning_program .tier_card.standard .tier_price {
color: #E900A9;
}

.learning_program .tier_card.advanced .tier_price {
color: #12FF95;
}

.learning_program .tier_features {
list-style: none;
padding: 0;
margin: 0 0 24px 0;
display: flex;
flex-direction: column;
gap: 6px;
}

.learning_program .tier_features li {
font-size: 15px;
line-height: 1.55;
padding-left: 12px;
position: relative;
}

.learning_program .tier_card.basic .tier_features li {
color: #2a2a35;
}

.learning_program .tier_card.standard .tier_features li {
color: #2a2a35;
}

.learning_program .tier_card.advanced .tier_features li {
color: rgba(255, 255, 255, 0.85);
}

.learning_program .tier_features li::before {
content: '';
position: absolute;
left: 0;
top: 9px;
width: 4px;
height: 4px;
border-radius: 40px;
background: currentColor;
opacity: 0.5;
}

.learning_program .tier_btn {
display: inline-block;
padding: 12px 24px;
border-radius: 3px;
font-size: 15px;
line-height: 1.2;
cursor: pointer;
border: none;
font-weight: 600;
position: relative;
overflow: hidden;
transition: color 0.15s ease-out;
text-decoration: none;
}

.learning_program .tier_btn::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
transition: left 0.18s cubic-bezier(0.4, 0, 0.6, 1);
}

.learning_program .tier_btn:hover::before {
left: 0;
}

.learning_program .tier_btn.basic_btn {
background: #f4f0ff;
color: #2D087B;
border: 2px solid #2D087B;
}

.learning_program .tier_btn.basic_btn::before {
background: #2D087B;
}

.learning_program .tier_btn.basic_btn:hover {
color: #fff;
}

.learning_program .tier_btn.standard_btn {
background: #E900A9;
color: #fff;
}

.learning_program .tier_btn.standard_btn::before {
background: #2D087B;
}

.learning_program .tier_btn.advanced_btn {
background: #12FF95;
color: #2D087B;
}

.learning_program .tier_btn.advanced_btn::before {
background: #E900A9;
}

.learning_program .tier_btn.advanced_btn:hover {
color: #fff;
}

.learning_program .detail_bottom {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 36px;
align-items: start;
}

.learning_program .image_block {
position: relative;
}

.learning_program .image_block img {
width: 100%;
height: 340px;
object-fit: cover;
border-radius: 24px;
filter: grayscale(60%);
display: block;
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
transition: filter 0.22s ease-out;
}

.learning_program .image_block img:hover {
filter: grayscale(0%);
}

.learning_program .image_counter {
position: absolute;
bottom: 24px;
left: 24px;
background: #E900A9;
color: #fff;
font-size: 15px;
line-height: 1.2;
border-radius: 3px;
padding: 6px 12px;
font-weight: 700;
}

.learning_program .faq_block {
display: flex;
flex-direction: column;
gap: 12px;
}

.learning_program .faq_heading {
font-size: 21px;
line-height: 1.2;
background: linear-gradient(to top, #2D087B, #E900A9);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
margin-bottom: 12px;
}

.learning_program .faq_item {
border: 1px solid rgba(45, 8, 123, 0.12);
border-radius: 3px;
overflow: hidden;
}

.learning_program .faq_question {
width: 100%;
background: none;
border: none;
text-align: left;
padding: 12px 24px;
font-size: 15px;
line-height: 1.55;
color: #2D087B;
cursor: pointer;
font-weight: 600;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
gap: 12px;
transition: background 0.12s ease-out;
}

.learning_program .faq_question:hover {
background: rgba(45, 8, 123, 0.04);
}

.learning_program .faq_question:focus {
outline: 2px solid #E900A9;
outline-offset: -2px;
}

.learning_program .faq_icon {
flex-shrink: 0;
width: 18px;
height: 18px;
border-radius: 40px;
background: rgba(45, 8, 123, 0.08);
display: flex;
align-items: center;
justify-content: center;
transition: background 0.15s ease-out, transform 0.15s ease-out;
}

.learning_program .faq_answer {
font-size: 15px;
line-height: 1.8;
color: #2a2a35;
padding: 0 24px;
max-height: 0;
overflow: hidden;
transition: max-height 0.22s cubic-bezier(0.4, 0, 0.6, 1), padding 0.18s ease-out;
}

.learning_program .faq_item.open .faq_answer {
padding: 12px 24px 24px;
}

.learning_program .faq_item.open .faq_icon {
background: #E900A9;
transform: rotate(45deg);
}

.learning_program .faq_icon svg {
display: block;
}

.learning_program .detail_divider {
width: 100%;
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
margin: 72px 0 0;
}

.learning_program .divider_line_long {
flex: 3 1 0;
height: 1px;
background: linear-gradient(to right, #2D087B, rgba(45, 8, 123, 0.08));
}

.learning_program .divider_line_short {
flex: 1 1 0;
height: 1px;
background: rgba(45, 8, 123, 0.15);
}

.learning_program .divider_dot {
width: 6px;
height: 6px;
border-radius: 40px;
background: #E900A9;
flex-shrink: 0;
}

@media (max-width: 1024px) {
.learning_program .hero_inner {
flex-direction: column;
gap: 36px;
}

.learning_program .hero_image_wrap {
flex: 0 0 auto;
width: 100%;
}

.learning_program .hero_image_wrap img {
width: 100%;
height: 320px;
}

.learning_program .detail_top {
flex-direction: column;
gap: 36px;
}

.learning_program .detail_right {
flex: 0 0 auto;
width: 100%;
}

.learning_program .detail_bottom {
grid-template-columns: 1fr;
}
}

@media (max-width: 640px) {
.learning_program .program_hero {
padding: 36px 12px;
}

.learning_program .hero_stats {
flex-direction: column;
gap: 12px;
}

.learning_program .program_detail {
padding: 36px 12px;
}

.learning_program .hero_heading {
font-size: 37px;
}

.learning_program .detail_top {
gap: 24px;
}

.learning_program .tier_cards {
gap: 12px;
}
}

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

.about-us .grain-band {
position: relative;
padding: 72px 24px;
background-color: #f5f3ff;
}

.about-us .grain-band::before {
content: "";
position: absolute;
inset: 0;
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%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.07'/%3E%3C/svg%3E");
background-repeat: repeat;
pointer-events: none;
z-index: 0;
}

.about-us .grain-dots {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0;
overflow: hidden;
}

.about-us .grain-dots span {
position: absolute;
width: 5px;
height: 5px;
border-radius: 40px;
background: #2D087B;
opacity: 0.12;
}

.about-us .grain-dots span:nth-child(1) {
top: 12%;
left: 7%;
}

.about-us .grain-dots span:nth-child(2) {
top: 30%;
left: 15%;
width: 3px;
height: 3px;
opacity: 0.08;
}

.about-us .grain-dots span:nth-child(3) {
top: 65%;
left: 5%;
}

.about-us .grain-dots span:nth-child(4) {
top: 80%;
left: 22%;
width: 4px;
height: 4px;
opacity: 0.1;
}

.about-us .grain-dots span:nth-child(5) {
top: 10%;
right: 12%;
width: 4px;
height: 4px;
}

.about-us .grain-dots span:nth-child(6) {
top: 45%;
right: 8%;
}

.about-us .grain-dots span:nth-child(7) {
top: 70%;
right: 18%;
width: 3px;
height: 3px;
opacity: 0.09;
}

.about-us .grain-dots span:nth-child(8) {
top: 88%;
right: 6%;
width: 6px;
height: 6px;
opacity: 0.07;
}

.about-us .band-inner {
position: relative;
z-index: 1;
max-width: 1170px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 72px;
}

.about-us .band-text {
flex: 1 1 0;
min-width: 0;
}

.about-us .category-label {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 6px;
margin-bottom: 24px;
}

.about-us .category-dot {
width: 10px;
height: 10px;
border-radius: 40px;
background: #E900A9;
flex-shrink: 0;
}

.about-us .category-text {
font-size: 15px;
line-height: 1.2;
color: #2D087B;
text-transform: uppercase;
letter-spacing: 0.12em;
font-weight: 600;
}

.about-us .band-heading {
font-size: clamp(37px, 5vw, 68px);
line-height: 1.2;
font-weight: 800;
margin-bottom: 24px;
background: linear-gradient(to top, #2D087B, #E900A9);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.about-us .band-desc {
font-size: 21px;
line-height: 1.55;
color: #1e1240;
max-width: 520px;
}

.about-us .band-image-wrap {
flex: 0 0 340px;
width: 340px;
border-radius: 24px;
overflow: hidden;
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
animation: img-scale-in 0.22s cubic-bezier(0.4, 0, 0.6, 1) both;
}

@keyframes img-scale-in {
from {
transform: scale(0.97);
opacity: 0.7;
}

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

.about-us .band-image-wrap img {
width: 340px;
height: 420px;
object-fit: cover;
display: block;
filter: saturate(0.85) brightness(0.96) contrast(1.04);
}

.about-us .story-section {
padding: 72px 24px;
background: #ffffff;
}

.about-us .story-inner {
max-width: 1170px;
margin: 0 auto;
}

.about-us .story-grid {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
gap: 36px;
align-items: start;
}

.about-us .story-main {
position: relative;
}

.about-us .quote-mark {
font-size: 120px;
line-height: 1;
color: #E900A9;
opacity: 0.12;
position: absolute;
top: -24px;
left: -12px;
font-weight: 900;
pointer-events: none;
user-select: none;
}

.about-us .story-heading {
font-size: clamp(27px, 3vw, 37px);
line-height: 1.2;
font-weight: 700;
margin-bottom: 24px;
padding-top: 12px;
background: linear-gradient(to top, #2D087B, #E900A9);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.about-us .story-para {
font-size: 15px;
line-height: 1.8;
color: #2a1f4e;
margin-bottom: 24px;
}

.about-us .story-para:last-child {
margin-bottom: 0;
}

.about-us .story-side {
display: flex;
flex-direction: column;
gap: 24px;
}

.about-us .stat-card {
border-radius: 24px;
padding: 24px;
background: #f5f3ff;
box-shadow: 0 1px 6px 0 rgba(45, 8, 123, 0.05);
transition: box-shadow 0.18s ease-out, transform 0.12s ease-out;
}

.about-us .stat-card:hover {
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
transform: translateY(-2px);
}

.about-us .stat-number {
font-size: 37px;
line-height: 1.2;
font-weight: 800;
color: #2D087B;
display: block;
}

.about-us .stat-label {
font-size: 15px;
line-height: 1.55;
color: #5a4a8a;
margin-top: 6px;
display: block;
}

.about-us .story-img-wrap {
border-radius: 24px;
overflow: hidden;
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
}

.about-us .story-img-wrap img {
width: 100%;
height: 260px;
object-fit: cover;
display: block;
}

.about-us .divider-diagonal {
height: 48px;
background: linear-gradient(170deg, #ffffff 49%, #0d0730 50%);
}

.about-us .team-section {
padding: 72px 24px;
background: #0d0730;
}

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

.about-us .team-top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 36px;
margin-bottom: 72px;
}

.about-us .team-heading {
font-size: clamp(27px, 3.5vw, 37px);
line-height: 1.2;
font-weight: 700;
background: linear-gradient(to top, #12FF95, #E900A9);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
max-width: 480px;
}

.about-us .team-intro {
font-size: 15px;
line-height: 1.8;
color: #b8a8e8;
max-width: 380px;
}

.about-us .team-grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr;
gap: 24px;
}

.about-us .person-card {
border-radius: 24px;
overflow: hidden;
background: #1a0f4a;
box-shadow: 0 6px 20px 0 rgba(233, 0, 169, 0.10);
transition: box-shadow 0.16s ease-out, transform 0.12s ease-out;
}

.about-us .person-card:hover {
box-shadow: 0 10px 48px 0 rgba(233, 0, 169, 0.13);
transform: translateY(-3px);
}

.about-us .person-img-wrap {
overflow: hidden;
}

.about-us .person-img-wrap img {
width: 100%;
height: 220px;
object-fit: cover;
display: block;
filter: saturate(0.8) brightness(0.92);
transition: filter 0.18s ease-out, transform 0.18s ease-out;
}

.about-us .person-card:hover .person-img-wrap img {
filter: saturate(1) brightness(1);
transform: scale(1.03);
}

.about-us .person-info {
padding: 24px;
}

.about-us .person-name {
font-size: 21px;
line-height: 1.2;
font-weight: 700;
color: #ffffff;
margin-bottom: 6px;
}

.about-us .person-role {
font-size: 15px;
line-height: 1.55;
color: #12FF95;
margin-bottom: 12px;
font-weight: 500;
}

.about-us .person-bio {
font-size: 15px;
line-height: 1.8;
color: #9d8ec8;
}

.about-us .numbered-list {
list-style: none;
padding: 0;
margin: 0;
counter-reset: item-count;
}

.about-us .numbered-list li {
counter-increment: item-count;
position: relative;
padding-left: 36px;
margin-bottom: 12px;
font-size: 15px;
line-height: 1.55;
color: #2a1f4e;
}

.about-us .numbered-list li::before {
content: counter(item-count);
position: absolute;
left: 0;
top: -2px;
font-size: 27px;
line-height: 1.2;
font-weight: 800;
color: #E900A9;
opacity: 0.22;
}

.about-us .approach-section {
padding: 72px 24px;
background: #f5f3ff;
}

.about-us .approach-inner {
max-width: 1170px;
margin: 0 auto;
}

.about-us .approach-layout {
display: grid;
grid-template-columns: 1fr 2fr;
gap: 72px;
align-items: start;
}

.about-us .approach-left {
position: sticky;
top: 24px;
}

.about-us .approach-heading {
font-size: clamp(27px, 3vw, 37px);
line-height: 1.2;
font-weight: 700;
background: linear-gradient(to top, #2D087B, #E900A9);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
margin-bottom: 24px;
}

.about-us .approach-sub {
font-size: 15px;
line-height: 1.8;
color: #5a4a8a;
margin-bottom: 36px;
}

.about-us .approach-img-wrap {
border-radius: 24px;
overflow: hidden;
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
}

.about-us .approach-img-wrap img {
width: 100%;
height: 300px;
object-fit: cover;
display: block;
}

.about-us .approach-right {
display: flex;
flex-direction: column;
gap: 36px;
}

.about-us .method-item {
border-radius: 24px;
padding: 36px;
background: #ffffff;
box-shadow: 0 1px 6px 0 rgba(45, 8, 123, 0.05);
position: relative;
transition: box-shadow 0.14s ease-out;
}

.about-us .method-item:hover {
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
}

.about-us .method-number {
font-size: 68px;
line-height: 1;
font-weight: 800;
color: #2D087B;
opacity: 0.07;
position: absolute;
top: 12px;
right: 24px;
pointer-events: none;
user-select: none;
}

.about-us .method-title {
font-size: 21px;
line-height: 1.2;
font-weight: 700;
color: #2D087B;
margin-bottom: 12px;
}

.about-us .method-text {
font-size: 15px;
line-height: 1.8;
color: #3d2e6b;
}

.about-us .accent-bar {
width: 36px;
height: 3px;
border-radius: 3px;
background: linear-gradient(to right, #E900A9, #12FF95);
margin-bottom: 24px;
}

@media (max-width: 1024px) {
.about-us .band-inner {
gap: 36px;
}

.about-us .band-image-wrap {
flex: 0 0 260px;
width: 260px;
}

.about-us .band-image-wrap img {
width: 260px;
height: 320px;
}

.about-us .story-grid {
grid-template-columns: 1fr 1fr;
}

.about-us .story-side:first-of-type {
grid-column: 2;
grid-row: 1;
}

.about-us .team-grid {
grid-template-columns: 1fr 1fr;
}

.about-us .approach-layout {
grid-template-columns: 1fr;
gap: 36px;
}

.about-us .approach-left {
position: static;
}
}

@media (max-width: 640px) {
.about-us .band-inner {
flex-direction: column;
gap: 36px;
}

.about-us .band-image-wrap {
flex: none;
width: 100%;
}

.about-us .band-image-wrap img {
width: 100%;
height: 260px;
}

.about-us .story-grid {
grid-template-columns: 1fr;
}

.about-us .team-top {
flex-direction: column;
align-items: flex-start;
gap: 24px;
margin-bottom: 36px;
}

.about-us .team-grid {
grid-template-columns: 1fr;
}

.about-us .band-heading {
font-size: 37px;
}
}

.success_page {
min-height: 60vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 72px 24px;
background: #fff;
}

.success_page .success_card {
max-width: 540px;
width: 100%;
background: #fff;
border-radius: 24px;
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
padding: 72px 36px;
text-align: center;
position: relative;
}

.success_page .success_card .icon_wrap {
width: 72px;
height: 72px;
border-radius: 40px;
background: linear-gradient(to top, #2D087B, #E900A9);
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
margin: 0 auto 36px;
box-shadow: 0 6px 20px 0 rgba(233, 0, 169, 0.10);
}

.success_page .success_card .icon_wrap svg {
display: block;
}

.success_page .success_card .success_heading {
font-size: 37px;
line-height: 1.2;
color: #2D087B;
margin: 0 0 12px;
background: linear-gradient(to top, #2D087B, #E900A9);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.success_page .success_card .success_text {
font-size: 15px;
line-height: 1.55;
color: #3a3a4a;
margin: 0 0 36px;
}

.success_page .success_card .home_link {
display: inline-block;
padding: 12px 36px;
border-radius: 24px;
background: linear-gradient(to top, #2D087B, #E900A9);
color: #fff;
font-size: 15px;
line-height: 1.2;
text-decoration: none;
box-shadow: 0 6px 20px 0 rgba(45, 8, 123, 0.10);
transition: box-shadow 0.18s ease-out, transform 0.12s cubic-bezier(0.4, 0, 0.6, 1);
}

.success_page .success_card .home_link:hover {
box-shadow: 0 10px 48px 0 rgba(45, 8, 123, 0.13);
transform: translateY(-2px);
}

.success_page .success_card .home_link:focus {
outline: 3px solid #12FF95;
outline-offset: 3px;
}

.success_page .success_card .home_link:active {
transform: translateY(0);
box-shadow: 0 1px 6px 0 rgba(45, 8, 123, 0.05);
}

.success_page .success_card .divider_line {
width: 48px;
height: 3px;
border-radius: 3px;
background: linear-gradient(to top, #2D087B, #E900A9);
margin: 36px auto;
}

.success_page .success_card .meta_note {
font-size: 15px;
line-height: 1.55;
color: #888;
}

@media (max-width: 640px) {
.success_page {
padding: 36px 12px;
}

.success_page .success_card {
padding: 36px 24px;
}

.success_page .success_card .success_heading {
font-size: 27px;
}
}