@import url('https://cdn.jsdelivr.net/npm/@fontsource/red-hat-display@latest/400.css');
@import url('https://cdn.jsdelivr.net/npm/@fontsource/red-hat-display@latest/700.css');

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

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

.pg-head {
position: relative;
background: linear-gradient(135deg, #fff 0%, #E8E0E8 60%, #DAB5CA 100%);
border-bottom: 2px solid #DAB5CA;
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
overflow: hidden;
}

.pg-head__decor {
position: absolute;
top: -48px;
right: -48px;
width: 260px;
height: 260px;
border-radius: 40px;
background: linear-gradient(160deg, rgba(184, 90, 167, 0.08) 0%, rgba(218, 181, 202, 0.13) 100%);
pointer-events: none;
transform: rotate(18deg);
}

.pg-head__decor--two {
top: auto;
bottom: -60px;
right: auto;
left: -36px;
width: 180px;
height: 180px;
transform: rotate(-12deg);
background: linear-gradient(200deg, rgba(218, 181, 202, 0.10) 0%, rgba(184, 90, 167, 0.06) 100%);
}

.pg-head__bound {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
}

.pg-head__strip {
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
padding: 12px 0;
border-bottom: 1px solid rgba(184, 90, 167, 0.13);
}

.pg-head__contact-row {
display: flex;
align-items: center;
gap: 24px;
}

.pg-head__contact-item {
display: flex;
align-items: center;
gap: 6px;
font-size: 14px;
line-height: 1.4;
color: #3a2235;
text-decoration: none;
letter-spacing: 0.02em;
transition: color 0.2s ease-out;
}

.pg-head__contact-item:hover {
color: #B85AA7;
}

.pg-head__contact-item i {
font-size: 14px;
color: #B85AA7;
}

.pg-head__tagline {
font-size: 14px;
line-height: 1.4;
color: #6b4460;
letter-spacing: 0.04em;
font-weight: 400;
}

.pg-head__core {
display: flex;
align-items: center;
gap: 48px;
padding: 24px 0;
}

.pg-head__nav--left {
flex: 1;
display: flex;
justify-content: flex-end;
}

.pg-head__nav--right {
flex: 1;
display: flex;
justify-content: flex-start;
}

.brand-mark {
flex-shrink: 0;
display: flex;
flex-direction: column;
align-items: center;
gap: 6px;
text-decoration: none;
}

.brand-mark__hex {
position: relative;
width: 96px;
height: 96px;
display: flex;
align-items: center;
justify-content: center;
background: #fff;
clip-path: polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%);
box-shadow:
-1px 1px 6px 0 rgba(184, 90, 167, 0.06),
-1px 7px 18px 0 rgba(184, 90, 167, 0.11),
-1px 9px 52px 0 rgba(184, 90, 167, 0.14);
}

.brand-mark__hex::before {
content: "";
position: absolute;
inset: -3px;
background: linear-gradient(135deg, #B85AA7 0%, #DAB5CA 100%);
clip-path: polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%);
z-index: 0;
}

.brand-mark__hex::after {
content: "";
position: absolute;
inset: 3px;
background: #fff;
clip-path: polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%);
z-index: 1;
}

.brand-mark__img {
position: relative;
z-index: 2;
width: 80px;
height: 80px;
object-fit: contain;
display: block;
}

.brand-mark__name {
font-size: 14px;
line-height: 1.4;
font-weight: 700;
color: #3a2235;
letter-spacing: 0.03em;
text-align: center;
}

.pg-nav {
display: flex;
align-items: center;
gap: 6px;
list-style: none;
margin: 0;
padding: 0;
flex-wrap: wrap;
}

.pg-nav__item {
position: relative;
}

.pg-nav__lnk {
display: flex;
align-items: center;
gap: 6px;
padding: 12px 12px;
font-size: 14px;
line-height: 1.4;
font-weight: 700;
color: #3a2235;
text-decoration: none;
border-radius: 3px;
letter-spacing: 0.02em;
transition: color 0.2s ease-out, background 0.25s ease-out;
white-space: nowrap;
min-height: 44px;
}

.pg-nav__lnk:hover,
.pg-nav__lnk:focus-visible {
color: #B85AA7;
background: rgba(184, 90, 167, 0.07);
outline: none;
}

.pg-nav__lnk:focus-visible {
outline: 2px solid #B85AA7;
outline-offset: 2px;
}

.pg-nav__lnk i {
font-size: 14px;
color: #B85AA7;
flex-shrink: 0;
}

.pg-nav__item--sub:hover .pg-nav__drop,
.pg-nav__item--sub:focus-within .pg-nav__drop {
opacity: 1;
pointer-events: auto;
transform: translateY(0);
}

.pg-nav__drop {
position: absolute;
top: calc(100% + 6px);
left: 0;
min-width: 260px;
background: #fff;
border-radius: 3px;
border: 1px solid #DAB5CA;
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
padding: 6px;
list-style: none;
margin: 0;
opacity: 0;
pointer-events: none;
transform: translateY(-8px);
transition: opacity 0.2s ease-out, transform 0.22s ease-out;
z-index: 200;
}

.pg-nav__drop::before {
content: "";
position: absolute;
top: -8px;
left: 0;
right: 0;
height: 8px;
}

.pg-nav__drop-lnk {
display: flex;
align-items: center;
gap: 6px;
padding: 12px 12px;
font-size: 14px;
line-height: 1.4;
color: #3a2235;
text-decoration: none;
border-radius: 3px;
font-weight: 400;
letter-spacing: 0.02em;
transition: color 0.18s ease-out, background 0.2s ease-out;
min-height: 44px;
}

.pg-nav__drop-lnk:hover,
.pg-nav__drop-lnk:focus-visible {
color: #B85AA7;
background: rgba(184, 90, 167, 0.07);
outline: none;
}

.pg-nav__drop-lnk:focus-visible {
outline: 2px solid #B85AA7;
outline-offset: 2px;
}

.pg-nav__drop-lnk i {
font-size: 14px;
color: #B85AA7;
}

.pg-nav__caret {
width: 10px;
height: 10px;
flex-shrink: 0;
}

@media (max-width: 1024px) {
.pg-head__core {
flex-wrap: wrap;
gap: 24px;
}

.pg-head__nav--left,
.pg-head__nav--right {
flex: none;
width: 100%;
justify-content: center;
}

.brand-mark {
margin: 0 auto;
}

.pg-nav {
justify-content: center;
}
}

@media (max-width: 768px) {
.pg-head__strip {
flex-direction: column;
align-items: flex-start;
gap: 6px;
}

.pg-head__contact-row {
flex-wrap: wrap;
gap: 12px;
}

.pg-head__tagline {
display: none;
}

.pg-head__core {
padding: 12px 0;
}
}

@media (max-width: 360px) {
.pg-head__bound {
padding: 0 12px;
}

.pg-nav__lnk {
padding: 12px 6px;
font-size: 14px;
}
}

.pg-foot {
background: linear-gradient(170deg, #3a2235 0%, #2a1828 100%);
color: #DAB5CA;
position: relative;
overflow: hidden;
}

.pg-foot__decor-arc {
position: absolute;
top: -80px;
right: -80px;
width: 320px;
height: 320px;
border-radius: 40px;
background: rgba(184, 90, 167, 0.06);
pointer-events: none;
transform: rotate(22deg);
}

.pg-foot__bound {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
}

.pg-foot__opener {
padding: 48px 0 24px;
display: flex;
align-items: center;
gap: 24px;
}

.pg-foot__brand-hex {
position: relative;
width: 96px;
height: 96px;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
background: rgba(255, 255, 255, 0.06);
clip-path: polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%);
box-shadow:
-1px 1px 6px 0 rgba(184, 90, 167, 0.06),
-1px 7px 18px 0 rgba(218, 181, 202, 0.11);
}

.pg-foot__brand-hex::before {
content: "";
position: absolute;
inset: -3px;
background: linear-gradient(135deg, #B85AA7 0%, #DAB5CA 100%);
clip-path: polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%);
z-index: 0;
}

.pg-foot__brand-hex::after {
content: "";
position: absolute;
inset: 3px;
background: #2a1828;
clip-path: polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%);
z-index: 1;
}

.pg-foot__logo-img {
position: relative;
z-index: 2;
width: 80px;
height: 80px;
object-fit: contain;
display: block;
filter: brightness(0) invert(1);
}

.pg-foot__brand-text {
display: flex;
flex-direction: column;
gap: 6px;
}

.pg-foot__brand-name {
font-size: 28px;
line-height: 1.1;
font-weight: 700;
color: #fff;
letter-spacing: -0.01em;
}

.pg-foot__brand-desc {
font-size: 14px;
line-height: 1.7;
color: #DAB5CA;
letter-spacing: 0.02em;
max-width: 480px;
}

.pg-foot__divider-row {
display: flex;
align-items: center;
gap: 24px;
padding: 24px 0;
}

.pg-foot__divider-line {
flex: 1;
height: 1px;
background: linear-gradient(90deg, transparent 0%, rgba(184, 90, 167, 0.4) 40%, rgba(218, 181, 202, 0.3) 100%);
}

.pg-foot__divider-gem {
width: 10px;
height: 10px;
border-radius: 3px;
background: #B85AA7;
transform: rotate(45deg);
flex-shrink: 0;
}

.pg-foot__body {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
padding-bottom: 48px;
}

.pg-foot__col-head {
font-size: 14px;
line-height: 1.4;
font-weight: 700;
color: #fff;
letter-spacing: 0.06em;
text-transform: uppercase;
margin-bottom: 12px;
}

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

.pg-foot__link-list a {
display: flex;
align-items: center;
gap: 6px;
font-size: 14px;
line-height: 1.7;
color: #DAB5CA;
text-decoration: none;
border-radius: 3px;
padding: 6px 6px;
transition: color 0.18s ease-out, background 0.22s ease-out;
min-height: 44px;
}

.pg-foot__link-list a:hover {
color: #fff;
background: rgba(184, 90, 167, 0.1);
}

.pg-foot__link-list a:focus-visible {
outline: 2px solid #B85AA7;
outline-offset: 2px;
color: #fff;
}

.pg-foot__link-list a i {
font-size: 14px;
color: #B85AA7;
flex-shrink: 0;
}

.pg-foot__contact-detail {
display: flex;
align-items: flex-start;
gap: 6px;
font-size: 14px;
line-height: 1.7;
color: #DAB5CA;
margin-bottom: 6px;
}

.pg-foot__contact-detail i {
font-size: 14px;
color: #B85AA7;
margin-top: 2px;
flex-shrink: 0;
}

.pg-foot__contact-detail a {
color: #DAB5CA;
text-decoration: none;
transition: color 0.18s ease-out;
}

.pg-foot__contact-detail a:hover {
color: #fff;
}

.pg-foot__contact-detail a:focus-visible {
outline: 2px solid #B85AA7;
outline-offset: 2px;
}

.pg-foot__bottom {
border-top: 1px solid rgba(184, 90, 167, 0.2);
padding: 24px 0;
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
flex-wrap: wrap;
}

.pg-foot__copy {
font-size: 14px;
line-height: 1.4;
color: rgba(218, 181, 202, 0.6);
letter-spacing: 0.02em;
}

.pg-foot__legal-links {
display: flex;
align-items: center;
gap: 12px;
flex-wrap: wrap;
}

.pg-foot__legal-links a {
font-size: 14px;
line-height: 1.4;
color: rgba(218, 181, 202, 0.7);
text-decoration: none;
border-radius: 3px;
padding: 6px 6px;
transition: color 0.2s ease-out;
min-height: 44px;
display: inline-flex;
align-items: center;
}

.pg-foot__legal-links a:hover {
color: #fff;
}

.pg-foot__legal-links a:focus-visible {
outline: 2px solid #B85AA7;
outline-offset: 2px;
}

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

.pg-foot__opener {
flex-direction: column;
align-items: flex-start;
padding: 24px 0 12px;
}

.pg-foot__bottom {
flex-direction: column;
align-items: flex-start;
gap: 12px;
}
}

@media (max-width: 360px) {
.pg-foot__bound {
padding: 0 12px;
}
}

.ck-strip {
position: fixed;
top: 24px;
left: 0;
right: 0;
margin: 0 auto;
max-width: 680px;
width: calc(100% - 48px);
background: #fff;
border-radius: 3px;
border: 1px solid #DAB5CA;
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
z-index: 8000;
display: none;
padding: 24px;
}

.ck-strip--visible {
display: flex;
flex-direction: column;
gap: 12px;
}

.ck-strip__icon-row {
display: flex;
align-items: center;
gap: 12px;
}

.ck-strip__icon-gem {
width: 36px;
height: 36px;
border-radius: 40px;
background: linear-gradient(135deg, #B85AA7 0%, #DAB5CA 100%);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
box-shadow: -1px 1px 6px 0 rgba(184, 90, 167, 0.06);
}

.ck-strip__icon-gem i {
font-size: 17px;
color: #fff;
}

.ck-strip__body-text {
font-size: 14px;
line-height: 1.7;
color: #3a2235;
font-family: 'Red Hat Display', sans-serif;
}

.ck-strip__body-text a {
color: #B85AA7;
text-decoration: underline;
transition: color 0.18s ease-out;
}

.ck-strip__body-text a:hover {
color: #3a2235;
}

.ck-strip__cats {
display: flex;
flex-direction: column;
gap: 6px;
padding: 12px;
background: #E8E0E8;
border-radius: 3px;
}

.ck-strip__cat-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
}

.ck-strip__cat-label {
font-size: 14px;
line-height: 1.4;
color: #3a2235;
font-family: 'Red Hat Display', sans-serif;
}

.ck-strip__cat-label--required {
font-weight: 700;
}

.ck-strip__toggle {
position: relative;
width: 40px;
height: 22px;
flex-shrink: 0;
}

.ck-strip__toggle input {
opacity: 0;
width: 0;
height: 0;
position: absolute;
}

.ck-strip__toggle-track {
position: absolute;
inset: 0;
background: #DAB5CA;
border-radius: 40px;
cursor: pointer;
transition: background 0.22s ease-out;
}

.ck-strip__toggle-track::after {
content: "";
position: absolute;
top: 3px;
left: 3px;
width: 16px;
height: 16px;
background: #fff;
border-radius: 40px;
transition: transform 0.22s ease-out;
}

.ck-strip__toggle input:checked+.ck-strip__toggle-track {
background: #B85AA7;
}

.ck-strip__toggle input:checked+.ck-strip__toggle-track::after {
transform: translateX(18px);
}

.ck-strip__toggle input:focus-visible+.ck-strip__toggle-track {
outline: 2px solid #B85AA7;
outline-offset: 2px;
}

.ck-strip__toggle--locked .ck-strip__toggle-track {
background: #B85AA7;
cursor: not-allowed;
opacity: 0.7;
}

.ck-strip__btns {
display: flex;
align-items: center;
gap: 12px;
flex-wrap: wrap;
}

.ck-strip__btn {
flex: 1;
min-width: 120px;
min-height: 44px;
padding: 12px 24px;
font-size: 14px;
line-height: 1.4;
font-weight: 700;
font-family: 'Red Hat Display', sans-serif;
border-radius: 3px;
cursor: pointer;
border: 2px solid #B85AA7;
position: relative;
overflow: hidden;
transition: color 0.2s ease-out, border-color 0.2s ease-out;
letter-spacing: 0.02em;
}

.ck-strip__btn::before {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 0;
background: #B85AA7;
transition: height 0.25s ease-out;
z-index: 0;
}

.ck-strip__btn:hover::before,
.ck-strip__btn:focus-visible::before {
height: 100%;
}

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

.ck-strip__btn--accept {
background: #B85AA7;
color: #fff;
}

.ck-strip__btn--accept::before {
background: #3a2235;
}

.ck-strip__btn--accept:hover,
.ck-strip__btn--accept:focus-visible {
color: #fff;
border-color: #3a2235;
}

.ck-strip__btn--accept:focus-visible {
outline: 2px solid #3a2235;
outline-offset: 2px;
}

.ck-strip__btn--deny {
background: transparent;
color: #B85AA7;
}

.ck-strip__btn--deny:hover,
.ck-strip__btn--deny:focus-visible {
color: #fff;
}

.ck-strip__btn--deny:focus-visible {
outline: 2px solid #B85AA7;
outline-offset: 2px;
}

.ck-strip--slide-out {
transform: translateX(-110%);
transition: transform 0.38s ease-out;
}

@media (max-width: 768px) {
.ck-strip {
top: 12px;
width: calc(100% - 24px);
}

.ck-strip__btns {
flex-direction: column;
}

.ck-strip__btn {
width: 100%;
}
}

.legal-wen-data {
max-width: 1320px;
margin: 0 auto;
padding: 48px 24px;
color: #2d1f2b;
line-height: 1.7;
font-size: 17px;
}

.legal-wen-data h1 {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.02em;
color: #1e0f1c;
margin-bottom: 24px;
margin-top: 0;
}

.legal-wen-data h2 {
font-size: 28px;
line-height: 1.4;
letter-spacing: -0.01em;
color: #1e0f1c;
margin-top: 48px;
margin-bottom: 12px;
padding-bottom: 6px;
border-bottom: 2px solid #E8E0E8;
}

.legal-wen-data h3 {
font-size: 17px;
line-height: 1.4;
letter-spacing: 0.01em;
color: #B85AA7;
margin-top: 24px;
margin-bottom: 12px;
text-transform: uppercase;
font-weight: 700;
}

.legal-wen-data h4 {
font-size: 17px;
line-height: 1.4;
letter-spacing: 0em;
color: #1e0f1c;
margin-top: 24px;
margin-bottom: 6px;
font-weight: 700;
}

.legal-wen-data h5 {
font-size: 14px;
line-height: 1.4;
letter-spacing: 0.02em;
color: #4a2e46;
margin-top: 24px;
margin-bottom: 6px;
font-weight: 700;
text-transform: uppercase;
}

.legal-wen-data h6 {
font-size: 14px;
line-height: 1.4;
letter-spacing: 0.02em;
color: #7a4e74;
margin-top: 12px;
margin-bottom: 6px;
font-weight: 600;
}

.legal-wen-data p {
font-size: 17px;
line-height: 1.7;
color: #2d1f2b;
margin-top: 0;
margin-bottom: 12px;
}

.legal-wen-data strong,
.legal-wen-data b {
font-weight: 700;
color: #1e0f1c;
}

.legal-wen-data a {
color: #B85AA7;
text-decoration: underline;
text-decoration-color: #DAB5CA;
text-underline-offset: 3px;
transition: color 0.2s ease-out, text-decoration-color 0.35s ease-out;
}

.legal-wen-data a:hover {
color: #8f3f80;
text-decoration-color: #B85AA7;
}

.legal-wen-data hr {
border: none;
border-top: 1px solid #DAB5CA;
margin: 48px 0;
opacity: 0.6;
}

.legal-wen-data div {
margin-bottom: 12px;
}

.legal-wen-data table {
width: 100%;
border-collapse: collapse;
font-size: 14px;
line-height: 1.7;
margin: 24px 0 48px;
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
border-radius: 3px;
overflow: hidden;
}

.legal-wen-data thead {
background: linear-gradient(135deg, #B85AA7 0%, #c97abd 100%);
}

.legal-wen-data thead th {
color: #fff;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.04em;
text-transform: uppercase;
padding: 12px 24px;
text-align: left;
border: none;
}

.legal-wen-data tbody tr {
background-color: #fff;
transition: background-color 0.15s ease-out;
}

.legal-wen-data tbody tr:nth-child(even) {
background-color: #f7f0f6;
}

.legal-wen-data tbody tr:hover {
background-color: #E8E0E8;
}

.legal-wen-data td {
padding: 12px 24px;
color: #2d1f2b;
font-size: 14px;
line-height: 1.7;
border-bottom: 1px solid #E8E0E8;
vertical-align: top;
}

.legal-wen-data tbody tr:last-child td {
border-bottom: none;
}

@media (max-width: 768px) {
.legal-wen-data {
padding: 24px 12px;
}

.legal-wen-data h1 {
font-size: 28px;
}

.legal-wen-data h2 {
font-size: 17px;
margin-top: 24px;
}

.legal-wen-data table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
}

.legal-wen-data thead th,
.legal-wen-data td {
padding: 12px;
min-width: 120px;
}
}

@media (max-width: 360px) {
.legal-wen-data {
padding: 12px 6px;
}

.legal-wen-data h1 {
font-size: 28px;
line-height: 1.1;
}
}

@media (min-width: 1440px) {
.legal-wen-data {
padding: 48px 48px;
}
}

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

.jrnl__inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
}

.jrnl .divider {
display: flex;
align-items: center;
justify-content: center;
gap: 12px;
margin: 48px auto;
max-width: 1320px;
padding: 0 24px;
}

.jrnl .divider__line {
flex: 1;
height: 1px;
background: #DAB5CA;
}

.jrnl .divider__cross {
width: 16px;
height: 16px;
position: relative;
flex-shrink: 0;
}

.jrnl .divider__cross::before,
.jrnl .divider__cross::after {
content: "";
position: absolute;
background: #B85AA7;
border-radius: 3px;
}

.jrnl .divider__cross::before {
width: 2px;
height: 16px;
top: 0;
left: 7px;
}

.jrnl .divider__cross::after {
width: 16px;
height: 2px;
top: 7px;
left: 0;
}

.jrnl .tb {
padding: 0 0 48px;
}

.jrnl .tb__strip {
width: 100%;
height: 220px;
overflow: hidden;
position: relative;
}

.jrnl .tb__strip img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center 30%;
display: block;
filter: saturate(1.2) sepia(0.18) brightness(0.92);
transition: transform 0.45s ease-out;
}

.jrnl .tb__strip:hover img {
transform: scale(1.04);
}

.jrnl .tb__caption {
position: absolute;
bottom: 0;
left: 0;
right: 0;
background: linear-gradient(to top, rgba(184, 90, 167, 0.55) 0%, transparent 100%);
padding: 48px 24px 24px;
opacity: 0;
transition: opacity 0.25s ease-out;
}

.jrnl .tb__strip:hover .tb__caption {
opacity: 1;
}

.jrnl .tb__cap-text {
color: #fff;
font-size: 14px;
line-height: 1.4;
letter-spacing: 0.04em;
}

.jrnl .tb__body {
max-width: 1320px;
margin: 0 auto;
padding: 48px 24px 24px;
position: relative;
}

.jrnl .tb__deco {
position: absolute;
top: 36px;
right: 36px;
width: 64px;
height: 64px;
background: #B85AA7;
opacity: 0.08;
transform: rotate(45deg);
border-radius: 3px;
pointer-events: none;
}

.jrnl .tb__label {
font-size: 14px;
line-height: 1.4;
letter-spacing: 0.1em;
color: #B85AA7;
text-transform: uppercase;
margin-bottom: 12px;
display: flex;
align-items: center;
flex-direction: row;
gap: 6px;
}

.jrnl .tb__label i {
font-size: 14px;
}

.jrnl .tb__h1 {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.02em;
color: #2a1a28;
margin: 0 0 24px;
max-width: 780px;
}

.jrnl .tb__desc {
font-size: 17px;
line-height: 1.7;
color: #4a3448;
max-width: 620px;
margin-bottom: 24px;
}

.jrnl .tb__actions {
display: flex;
flex-direction: row;
gap: 12px;
flex-wrap: wrap;
}

.jrnl .btn-prim {
display: inline-block;
padding: 12px 24px;
background: #B85AA7;
color: #fff;
font-size: 14px;
line-height: 1.4;
letter-spacing: 0.06em;
border-radius: 3px;
text-decoration: none;
position: relative;
overflow: hidden;
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
transition: color 0.2s ease-out, box-shadow 0.25s ease-out;
}

.jrnl .btn-prim::after {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 0;
background: rgba(255, 255, 255, 0.15);
transition: height 0.2s ease-out;
}

.jrnl .btn-prim:hover::after {
height: 100%;
}

.jrnl .btn-prim:hover {
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
}

.jrnl .btn-sec {
display: inline-block;
padding: 12px 24px;
background: transparent;
color: #B85AA7;
font-size: 14px;
line-height: 1.4;
letter-spacing: 0.06em;
border-radius: 3px;
border: 1.5px solid #DAB5CA;
text-decoration: none;
position: relative;
overflow: hidden;
transition: border-color 0.2s ease-out, color 0.15s ease-out;
}

.jrnl .btn-sec::after {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 0;
background: #E8E0E8;
transition: height 0.22s ease-out;
z-index: 0;
}

.jrnl .btn-sec:hover::after {
height: 100%;
}

.jrnl .btn-sec:hover {
border-color: #B85AA7;
color: #2a1a28;
}

.jrnl .btn-sec span {
position: relative;
z-index: 1;
}

.jrnl .ranked {
background: linear-gradient(170deg, #2a1a28 0%, #3d1f3a 100%);
padding: 48px 0;
}

.jrnl .ranked__inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start;
}

.jrnl .ranked__text h2 {
font-size: 28px;
line-height: 1.4;
letter-spacing: 0.01em;
color: #E8E0E8;
font-weight: 300;
margin: 0 0 24px;
}

.jrnl .ranked__text p {
font-size: 17px;
line-height: 1.7;
color: #DAB5CA;
margin-bottom: 12px;
}

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

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

.jrnl .ranked__num {
font-size: 28px;
line-height: 1.1;
color: #B85AA7;
font-weight: 700;
letter-spacing: -0.02em;
flex-shrink: 0;
width: 40px;
}

.jrnl .ranked__detail {
flex: 1;
}

.jrnl .ranked__name {
font-size: 14px;
line-height: 1.4;
color: #E8E0E8;
letter-spacing: 0.05em;
text-transform: uppercase;
margin-bottom: 6px;
}

.jrnl .ranked__bar-wrap {
height: 4px;
background: rgba(218, 181, 202, 0.15);
border-radius: 3px;
overflow: hidden;
}

.jrnl .ranked__bar {
height: 100%;
background: linear-gradient(90deg, #B85AA7 0%, #DAB5CA 100%);
border-radius: 3px;
transition: width 0.45s ease-out;
}

.jrnl .mosaic {
padding: 48px 0;
background: #fff;
}

.jrnl .mosaic__inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
}

.jrnl .mosaic__grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 24px;
}

.jrnl .mosaic__card {
border-radius: 3px;
border: 1px solid #E8E0E8;
padding: 24px;
position: relative;
box-shadow: -1px 1px 6px 0 rgba(184, 90, 167, 0.06);
transition: box-shadow 0.25s ease-out, transform 0.2s ease-out;
}

.jrnl .mosaic__card:hover {
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
transform: translateY(-2px);
}

.jrnl .mosaic__card--wide {
grid-column: span 2;
}

.jrnl .mosaic__icon {
width: 36px;
height: 36px;
background: #E8E0E8;
border-radius: 3px;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 12px;
}

.jrnl .mosaic__icon i {
font-size: 17px;
color: #B85AA7;
}

.jrnl .mosaic__card h3 {
font-size: 17px;
line-height: 1.4;
color: #2a1a28;
margin: 0 0 12px;
letter-spacing: 0.01em;
}

.jrnl .mosaic__card p {
font-size: 14px;
line-height: 1.7;
color: #4a3448;
margin: 0;
}

.jrnl .mosaic__deco-diamond {
position: absolute;
bottom: -10px;
right: -10px;
width: 28px;
height: 28px;
background: #B85AA7;
opacity: 0.12;
transform: rotate(45deg);
border-radius: 3px;
pointer-events: none;
}

.jrnl .mosaic__head {
margin-bottom: 24px;
}

.jrnl .mosaic__head h2 {
font-size: 28px;
line-height: 1.4;
letter-spacing: 0.01em;
color: #2a1a28;
font-weight: 300;
margin: 0 0 12px;
}

.jrnl .mosaic__head p {
font-size: 17px;
line-height: 1.7;
color: #4a3448;
max-width: 640px;
}

.jrnl .trail {
padding: 48px 0;
background: #E8E0E8;
}

.jrnl .trail__inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
}

.jrnl .trail__head {
margin-bottom: 48px;
}

.jrnl .trail__head h2 {
font-size: 28px;
line-height: 1.4;
color: #2a1a28;
font-weight: 300;
letter-spacing: 0.01em;
margin: 0 0 12px;
}

.jrnl .trail__head p {
font-size: 17px;
line-height: 1.7;
color: #4a3448;
max-width: 560px;
}

.jrnl .trail__steps {
display: flex;
flex-direction: column;
gap: 0;
}

.jrnl .trail__step {
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start;
}

.jrnl .trail__dot-col {
display: flex;
flex-direction: column;
align-items: center;
flex-shrink: 0;
width: 24px;
}

.jrnl .trail__dot {
width: 16px;
height: 16px;
border-radius: 40px;
background: #DAB5CA;
border: 2px solid #B85AA7;
flex-shrink: 0;
transition: background 0.2s ease-out;
}

.jrnl .trail__step:hover .trail__dot {
background: #B85AA7;
}

.jrnl .trail__connector {
width: 2px;
flex: 1;
min-height: 36px;
background: linear-gradient(to bottom, #DAB5CA, #E8E0E8);
}

.jrnl .trail__step:last-child .trail__connector {
display: none;
}

.jrnl .trail__body {
padding-bottom: 48px;
}

.jrnl .trail__step:last-child .trail__body {
padding-bottom: 0;
}

.jrnl .trail__body h4 {
font-size: 17px;
line-height: 1.4;
color: #2a1a28;
margin: 0 0 6px;
letter-spacing: 0.01em;
}

.jrnl .trail__body p {
font-size: 14px;
line-height: 1.7;
color: #4a3448;
margin: 0;
}

@media (max-width: 1024px) {
.jrnl .tb__h1 {
font-size: 54px;
}

.jrnl .ranked__inner {
grid-template-columns: 1fr;
gap: 24px;
}

.jrnl .mosaic__grid {
grid-template-columns: 1fr 1fr;
}

.jrnl .mosaic__card--wide {
grid-column: span 2;
}
}

@media (max-width: 768px) {
.jrnl .tb__h1 {
font-size: 28px;
}

.jrnl .tb__strip {
height: 160px;
}

.jrnl .mosaic__grid {
grid-template-columns: 1fr;
}

.jrnl .mosaic__card--wide {
grid-column: span 1;
}

.jrnl .tb__actions {
flex-direction: column;
}
}

@media (max-width: 360px) {
.jrnl .tb__h1 {
font-size: 28px;
}

.jrnl__inner,
.jrnl .tb__body,
.jrnl .ranked__inner,
.jrnl .mosaic__inner,
.jrnl .trail__inner {
padding: 0 12px;
}
}

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

.abt-pg .geo-bg {
position: absolute;
border-radius: 40px;
opacity: 0.045;
pointer-events: none;
z-index: 0;
}

.abt-pg ::selection {
background: #B85AA7;
color: #fff;
}

.abt-pg .pg-wrap {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
}

.abt-pg .ident-row {
position: relative;
display: flex;
flex-direction: row;
align-items: stretch;
gap: 48px;
padding: 48px 0;
overflow: hidden;
}

.abt-pg .ident-row .frame-wrap {
position: relative;
flex: 0 0 420px;
max-width: 420px;
}

.abt-pg .ident-row .frame-wrap::before {
content: "";
position: absolute;
top: -12px;
left: -12px;
right: 12px;
bottom: 12px;
border: 1.5px solid #DAB5CA;
border-radius: 3px;
pointer-events: none;
z-index: 1;
transition: border-color 0.25s ease-out;
}

.abt-pg .ident-row .frame-wrap::after {
content: "";
position: absolute;
top: 12px;
left: 12px;
right: -12px;
bottom: -12px;
border: 1px solid #E8E0E8;
border-radius: 3px;
pointer-events: none;
z-index: 1;
}

.abt-pg .ident-row .frame-wrap:hover::before {
border-color: #B85AA7;
}

.abt-pg .img-holder {
width: 100%;
height: 480px;
overflow: hidden;
border-radius: 3px;
position: relative;
}

.abt-pg .img-holder img {
width: 100%;
height: 100%;
object-fit: cover;
opacity: 0.82;
transition: transform 0.45s ease-out, opacity 0.25s ease-out;
display: block;
}

.abt-pg .img-holder:hover img {
transform: scale(1.04);
opacity: 0.95;
}

.abt-pg .ident-text {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
gap: 24px;
position: relative;
z-index: 1;
}

.abt-pg .ident-text .eyebrow {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
}

.abt-pg .ident-text .eyebrow-line {
width: 32px;
height: 1.5px;
background: #B85AA7;
border-radius: 3px;
}

.abt-pg .ident-text .eyebrow-label {
font-size: 14px;
line-height: 1.4;
letter-spacing: 0.12em;
color: #B85AA7;
text-transform: uppercase;
}

.abt-pg .ident-text .pg-h1 {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.02em;
color: #1e1020;
font-weight: 300;
margin: 0;
}

.abt-pg .ident-text .pg-h1 strong {
font-weight: 700;
color: #B85AA7;
}

.abt-pg .ident-text .lead-p {
font-size: 17px;
line-height: 1.7;
color: #3d2a3a;
max-width: 520px;
margin: 0;
}

.abt-pg .ident-text .stat-row {
display: flex;
flex-direction: row;
gap: 24px;
flex-wrap: wrap;
}

.abt-pg .stat-item {
display: flex;
flex-direction: column;
gap: 6px;
padding: 12px 24px;
background: #fff;
border-radius: 3px;
border: 1px solid #E8E0E8;
box-shadow: -1px 1px 6px 0 rgba(184, 90, 167, 0.06);
transition: box-shadow 0.2s ease-out, border-color 0.2s ease-out;
}

.abt-pg .stat-item:hover {
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
border-color: #DAB5CA;
}

.abt-pg .stat-item .stat-num {
font-size: 28px;
line-height: 1.1;
font-weight: 700;
color: #B85AA7;
letter-spacing: -0.01em;
}

.abt-pg .stat-item .stat-desc {
font-size: 14px;
line-height: 1.4;
color: #5a3d54;
}

.abt-pg .ident-geo-1 {
width: 280px;
height: 280px;
border: 1px solid #B85AA7;
background: transparent;
top: -60px;
right: -80px;
}

.abt-pg .ident-geo-2 {
width: 160px;
height: 160px;
background: #DAB5CA;
bottom: 20px;
left: 380px;
border-radius: 40px;
}

.abt-pg .wave-div {
width: 100%;
overflow: hidden;
line-height: 0;
height: 48px;
}

.abt-pg .wave-div svg {
display: block;
width: 100%;
height: 48px;
}

.abt-pg .method-sec {
position: relative;
background-image: url('./media_gallery/260527_upper8.jpg');
background-size: cover;
background-position: center;
background-attachment: fixed;
padding: 48px 0;
}

.abt-pg .method-sec .overlay {
position: absolute;
inset: 0;
background: linear-gradient(158deg, rgba(30, 16, 32, 0.88) 0%, rgba(90, 40, 80, 0.80) 100%);
z-index: 0;
}

.abt-pg .method-sec .pg-wrap {
position: relative;
z-index: 1;
}

.abt-pg .method-sec .sec-label {
font-size: 14px;
line-height: 1.4;
letter-spacing: 0.14em;
text-transform: uppercase;
color: #DAB5CA;
margin-bottom: 12px;
}

.abt-pg .method-sec .sec-h2 {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.02em;
font-weight: 300;
color: #fff;
margin: 0 0 6px 0;
}

.abt-pg .method-sec .sec-h2 em {
font-style: normal;
color: #DAB5CA;
font-weight: 700;
}

.abt-pg .method-sec .sec-sub {
font-size: 17px;
line-height: 1.7;
color: #E8E0E8;
max-width: 560px;
margin: 0 0 48px 0;
}

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

.abt-pg .method-left {
display: flex;
flex-direction: column;
gap: 24px;
}

.abt-pg .step-item {
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start;
padding: 24px;
background: rgba(255, 255, 255, 0.06);
border-radius: 3px;
border: 1px solid rgba(218, 181, 202, 0.2);
position: relative;
transition: background 0.35s ease-out, border-color 0.25s ease-out;
}

.abt-pg .step-item:hover {
background: rgba(184, 90, 167, 0.14);
border-color: rgba(218, 181, 202, 0.5);
}

.abt-pg .step-num {
flex: 0 0 40px;
width: 40px;
height: 40px;
border-radius: 3px;
background: rgba(184, 90, 167, 0.25);
border: 1px solid rgba(184, 90, 167, 0.5);
display: flex;
align-items: center;
justify-content: center;
font-size: 17px;
font-weight: 700;
color: #DAB5CA;
flex-shrink: 0;
}

.abt-pg .step-body {
flex: 1;
}

.abt-pg .step-body .step-h {
font-size: 17px;
line-height: 1.4;
font-weight: 600;
color: #fff;
margin: 0 0 6px 0;
}

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

.abt-pg .method-right {
display: flex;
flex-direction: column;
gap: 24px;
}

.abt-pg .result-card {
background: rgba(255, 255, 255, 0.08);
border-radius: 3px;
border: 1px solid rgba(218, 181, 202, 0.25);
overflow: hidden;
flex: 1;
}

.abt-pg .result-card .rc-img {
width: 100%;
height: 220px;
overflow: hidden;
}

.abt-pg .result-card .rc-img img {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.4s ease-out;
}

.abt-pg .result-card:hover .rc-img img {
transform: scale(1.05);
}

.abt-pg .result-card .rc-body {
padding: 24px;
}

.abt-pg .result-card .rc-h {
font-size: 17px;
font-weight: 600;
color: #fff;
line-height: 1.4;
margin: 0 0 6px 0;
}

.abt-pg .result-card .rc-p {
font-size: 14px;
line-height: 1.7;
color: #DAB5CA;
margin: 0;
}

.abt-pg .outcome-strip {
display: flex;
flex-direction: row;
gap: 12px;
flex-wrap: wrap;
}

.abt-pg .outcome-tag {
display: flex;
flex-direction: row;
align-items: center;
gap: 6px;
padding: 6px 12px;
background: rgba(184, 90, 167, 0.18);
border-radius: 40px;
border: 1px solid rgba(184, 90, 167, 0.35);
transition: background 0.2s ease-out;
}

.abt-pg .outcome-tag:hover {
background: rgba(184, 90, 167, 0.32);
}

.abt-pg .outcome-tag .tag-dot {
width: 6px;
height: 6px;
border-radius: 40px;
background: #DAB5CA;
flex-shrink: 0;
}

.abt-pg .outcome-tag .tag-txt {
font-size: 14px;
line-height: 1.4;
color: #E8E0E8;
}

.abt-pg .team-img-row {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 12px;
margin-top: 48px;
}

.abt-pg .team-img-item {
position: relative;
overflow: hidden;
border-radius: 3px;
border: 1px solid rgba(218, 181, 202, 0.2);
}

.abt-pg .team-img-item img {
width: 100%;
height: 160px;
object-fit: cover;
display: block;
transition: transform 0.4s ease-out;
}

.abt-pg .team-img-item:hover img {
transform: scale(1.06);
}

.abt-pg .team-img-item .img-caption {
position: absolute;
bottom: 0;
left: 0;
right: 0;
padding: 6px 12px;
background: rgba(30, 16, 32, 0.75);
font-size: 14px;
line-height: 1.4;
color: #E8E0E8;
}

.abt-pg .step-item::before,
.abt-pg .step-item::after {
content: "";
position: absolute;
border-radius: 3px;
pointer-events: none;
}

.abt-pg .step-item::before {
top: 0;
left: 0;
right: 0;
height: 2px;
background: #B85AA7;
transform: scaleX(0);
transform-origin: left;
transition: transform 0.35s ease-out;
}

.abt-pg .step-item:hover::before {
transform: scaleX(1);
}

.abt-pg .icon-outline-wrap {
position: relative;
display: inline-flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
}

.abt-pg .icon-outline-wrap svg.outline-ring {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
}

.abt-pg .icon-outline-wrap svg.outline-ring circle {
fill: none;
stroke: #B85AA7;
stroke-width: 1.5;
stroke-dasharray: 138;
stroke-dashoffset: 138;
transition: stroke-dashoffset 0.45s ease-out;
}

.abt-pg .icon-outline-wrap:hover svg.outline-ring circle {
stroke-dashoffset: 0;
}

@keyframes clr-reveal {
0% {
color: #E8E0E8;
}

100% {
color: #B85AA7;
}
}

.abt-pg .ident-text .pg-h1 strong {
animation: clr-reveal 0.45s ease-out both;
}

@keyframes fade-up {
0% {
opacity: 0;
transform: translateY(24px);
}

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

.abt-pg .ident-row {
animation: fade-up 0.4s ease-out both;
}

.abt-pg .step-item {
animation: fade-up 0.35s ease-out both;
}

.abt-pg .step-item:nth-child(1) {
animation-delay: 0.05s;
}

.abt-pg .step-item:nth-child(2) {
animation-delay: 0.12s;
}

.abt-pg .step-item:nth-child(3) {
animation-delay: 0.19s;
}

.abt-pg .step-item:nth-child(4) {
animation-delay: 0.26s;
}

@media (max-width: 1024px) {
.abt-pg .ident-row {
flex-direction: column;
gap: 24px;
}

.abt-pg .ident-row .frame-wrap {
flex: none;
max-width: 100%;
}

.abt-pg .img-holder {
height: 320px;
}

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

.abt-pg .team-img-row {
grid-template-columns: repeat(2, 1fr);
}

.abt-pg .ident-text .pg-h1 {
font-size: 54px;
}
}

@media (max-width: 768px) {
.abt-pg .ident-text .pg-h1 {
font-size: 28px;
}

.abt-pg .method-sec .sec-h2 {
font-size: 28px;
}

.abt-pg .stat-row {
flex-direction: column;
gap: 12px;
}

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

.abt-pg .ident-geo-1,
.abt-pg .ident-geo-2 {
display: none;
}
}

@media (max-width: 360px) {
.abt-pg .pg-wrap {
padding: 0 12px;
}

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

.abt-pg .outcome-strip {
flex-direction: column;
}
}

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

.entr__wrap {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
}

.entr__title-band {
background: linear-gradient(112deg, #2d1a2e 0%, #4a1a42 30%, #6b2560 55%, #B85AA7 80%, #DAB5CA 100%);
position: relative;
padding: 48px 0;
}

.entr__title-band::before {
content: "";
position: absolute;
inset: 0;
background-image:
linear-gradient(rgba(184, 90, 167, 0.08) 1px, transparent 1px),
linear-gradient(90deg, rgba(184, 90, 167, 0.08) 1px, transparent 1px);
background-size: 48px 48px;
pointer-events: none;
}

.entr__title-inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
display: flex;
flex-direction: row;
align-items: center;
gap: 48px;
}

.entr__title-text {
flex: 0 0 40%;
position: relative;
z-index: 1;
}

.entr__label {
display: inline-block;
font-size: 14px;
line-height: 1.4;
letter-spacing: 0.12em;
color: #DAB5CA;
text-transform: uppercase;
margin-bottom: 12px;
}

.entr__h1 {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.02em;
color: #fff;
margin: 0 0 24px 0;
font-weight: 300;
overflow: hidden;
}

.entr__h1 span {
display: inline-block;
animation: sweep-color 1.8s ease-out forwards;
}

@keyframes sweep-color {
0% {
color: rgba(255, 255, 255, 0.3);
}

40% {
color: #DAB5CA;
}

100% {
color: #fff;
}
}

.entr__desc {
font-size: 17px;
line-height: 1.7;
color: rgba(218, 181, 202, 0.9);
margin: 0;
}

.entr__title-img {
flex: 0 0 60%;
position: relative;
border-radius: 3px;
overflow: hidden;
}

.entr__title-img img {
width: 100%;
height: 420px;
object-fit: cover;
display: block;
border-radius: 3px;
filter: brightness(1.05) contrast(1.02);
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
}

.entr__title-img::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(120deg, rgba(45, 26, 46, 0.18) 0%, transparent 60%);
pointer-events: none;
border-radius: 3px;
}

.entr__circles {
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%);
pointer-events: none;
z-index: 0;
}

.entr__circles span {
display: block;
position: absolute;
border-radius: 40px;
border: 1px solid rgba(218, 181, 202, 0.12);
}

.entr__circles span:nth-child(1) {
width: 180px;
height: 180px;
top: -90px;
right: 12px;
}

.entr__circles span:nth-child(2) {
width: 280px;
height: 280px;
top: -140px;
right: -24px;
}

.entr__circles span:nth-child(3) {
width: 380px;
height: 380px;
top: -190px;
right: -72px;
}

.entr__divider--dot {
text-align: center;
padding: 6px 0;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 6px;
}

.entr__divider--dot span {
display: inline-block;
width: 5px;
height: 5px;
border-radius: 40px;
background: #B85AA7;
opacity: 0.35;
}

.entr__divider--dot span:nth-child(3) {
opacity: 0.7;
width: 7px;
height: 7px;
}

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

.entr__proof-inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start;
}

.entr__proof-left {
flex: 0 0 40%;
}

.entr__proof-right {
flex: 1;
}

.entr__section-tag {
font-size: 14px;
line-height: 1.4;
letter-spacing: 0.1em;
color: #B85AA7;
text-transform: uppercase;
display: flex;
flex-direction: row;
align-items: center;
gap: 6px;
margin-bottom: 12px;
}

.entr__section-tag svg {
flex-shrink: 0;
}

.entr__h2 {
font-size: 28px;
line-height: 1.1;
letter-spacing: -0.01em;
color: #2d1a2e;
margin: 0 0 24px 0;
font-weight: 300;
}

.entr__body {
font-size: 17px;
line-height: 1.7;
color: #3a2540;
margin: 0 0 12px 0;
}

.entr__proof-img {
width: 100%;
height: 320px;
object-fit: cover;
border-radius: 3px;
display: block;
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
transition: transform 0.25s ease-out;
}

.entr__proof-img:hover {
transform: scale(1.02);
}

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

.entr__expand-list li {
border-top: 1px solid #E8E0E8;
}

.entr__expand-list li:last-child {
border-bottom: 1px solid #E8E0E8;
}

.entr__expand-btn {
width: 100%;
background: none;
border: none;
padding: 12px 0;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
cursor: pointer;
font-size: 17px;
line-height: 1.4;
color: #2d1a2e;
text-align: left;
transition: color 0.2s ease-out;
}

.entr__expand-btn:hover {
color: #B85AA7;
}

.entr__expand-btn:focus {
outline: 2px solid #B85AA7;
outline-offset: 2px;
}

.entr__expand-icon {
width: 20px;
height: 20px;
flex-shrink: 0;
transition: transform 0.2s ease-out;
}

.entr__expand-detail {
display: none;
font-size: 14px;
line-height: 1.7;
color: #5a3d60;
padding: 0 0 12px 0;
}

.entr__expand-detail--open {
display: block;
}

.entr__expand-icon--open {
transform: rotate(45deg);
}

.entr__long-term {
padding: 48px 0;
background: linear-gradient(160deg, #E8E0E8 0%, #f5f0f5 100%);
position: relative;
}

.entr__long-inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
}

.entr__long-top {
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start;
margin-bottom: 48px;
}

.entr__long-heading {
flex: 0 0 40%;
}

.entr__long-body {
flex: 1;
padding-top: 12px;
}

.entr__h2--wide {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.025em;
color: #2d1a2e;
margin: 0 0 12px 0;
font-weight: 300;
}

.entr__long-grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 24px;
}

.entr__long-card {
background: #fff;
border-radius: 3px;
padding: 24px;
box-shadow: -1px 1px 6px 0 rgba(184, 90, 167, 0.06);
transition: box-shadow 0.35s ease-out, transform 0.35s ease-out;
position: relative;
overflow: hidden;
}

.entr__long-card::before {
content: "";
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(90deg, #B85AA7, #DAB5CA);
transform: scaleX(0);
transform-origin: left;
transition: transform 0.3s ease-out;
}

.entr__long-card:hover {
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
transform: translateY(-3px);
}

.entr__long-card:hover::before {
transform: scaleX(1);
}

.entr__card-num {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.03em;
color: #E8E0E8;
font-weight: 700;
margin-bottom: 6px;
display: block;
}

.entr__h5 {
font-size: 17px;
line-height: 1.4;
color: #2d1a2e;
margin: 0 0 6px 0;
font-weight: 600;
}

.entr__card-text {
font-size: 14px;
line-height: 1.7;
color: #5a3d60;
margin: 0;
}

.entr__long-imgs {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-top: 24px;
}

.entr__long-img-wrap {
border-radius: 3px;
overflow: hidden;
}

.entr__long-img-wrap img {
width: 100%;
height: 220px;
object-fit: cover;
display: block;
transition: transform 0.4s ease-out;
}

.entr__long-img-wrap:hover img {
transform: scale(1.04);
}

.entr__divider--line {
border: none;
border-top: 2px dashed rgba(184, 90, 167, 0.2);
margin: 0;
}

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

.entr__people-inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
}

.entr__people-top {
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start;
margin-bottom: 48px;
}

.entr__people-heading {
flex: 0 0 40%;
}

.entr__people-intro {
flex: 1;
padding-top: 6px;
}

.entr__review-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
}

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

.entr__review--featured {
grid-row: span 2;
position: relative;
}

.entr__review-img-wrap {
border-radius: 3px;
overflow: hidden;
flex-shrink: 0;
}

.entr__review-img-wrap img {
width: 100%;
height: 260px;
object-fit: cover;
display: block;
transition: transform 0.45s ease-out;
}

.entr__review-img-wrap:hover img {
transform: scale(1.03);
}

.entr__review--featured .entr__review-img-wrap img {
height: 100%;
min-height: 360px;
}

.entr__quote-card {
background: #E8E0E8;
border-radius: 3px;
padding: 24px;
box-shadow: inset -1px 1px 6px 0 rgba(184, 90, 167, 0.08);
flex: 1;
}

.entr__quote-card--accent {
background: linear-gradient(135deg, #4a1a42 0%, #B85AA7 100%);
}

.entr__quote-text {
font-size: 17px;
line-height: 1.7;
color: #2d1a2e;
margin: 0 0 12px 0;
font-style: italic;
}

.entr__quote-card--accent .entr__quote-text {
color: #fff;
}

.entr__quote-name {
font-size: 14px;
line-height: 1.4;
color: #B85AA7;
font-weight: 600;
letter-spacing: 0.06em;
margin: 0;
}

.entr__quote-card--accent .entr__quote-name {
color: #DAB5CA;
}

.entr__quote-role {
font-size: 14px;
line-height: 1.4;
color: #7a5a80;
margin: 0;
}

.entr__quote-card--accent .entr__quote-role {
color: rgba(218, 181, 202, 0.7);
}

.entr__review-plain {
background: #fff;
border: 1px solid #E8E0E8;
border-radius: 3px;
padding: 24px;
box-shadow: -1px 1px 6px 0 rgba(184, 90, 167, 0.06);
}

.entr__review-plain .entr__quote-text {
color: #3a2540;
}

@media (max-width: 1024px) {
.entr__h1 {
font-size: 42px;
}

.entr__h2--wide {
font-size: 42px;
}

.entr__long-grid {
grid-template-columns: 1fr 1fr;
}

.entr__title-img img {
height: 340px;
}
}

@media (max-width: 768px) {
.entr__title-inner {
flex-direction: column;
gap: 24px;
}

.entr__title-text {
flex: none;
width: 100%;
}

.entr__title-img {
flex: none;
width: 100%;
}

.entr__title-img img {
height: 260px;
}

.entr__h1 {
font-size: 28px;
}

.entr__h2--wide {
font-size: 28px;
}

.entr__proof-inner {
flex-direction: column;
gap: 24px;
}

.entr__proof-left {
flex: none;
width: 100%;
}

.entr__long-top {
flex-direction: column;
gap: 24px;
}

.entr__long-heading {
flex: none;
width: 100%;
}

.entr__long-grid {
grid-template-columns: 1fr;
}

.entr__long-imgs {
grid-template-columns: 1fr;
}

.entr__people-top {
flex-direction: column;
gap: 24px;
}

.entr__people-heading {
flex: none;
width: 100%;
}

.entr__review-grid {
grid-template-columns: 1fr;
}

.entr__review--featured {
grid-row: auto;
}

.entr__review--featured .entr__review-img-wrap img {
min-height: 220px;
}

.entr__circles {
display: none;
}
}

@media (max-width: 360px) {
.entr__title-band {
padding: 24px 0;
}

.entr__proof {
padding: 24px 0;
}

.entr__long-term {
padding: 24px 0;
}

.entr__people {
padding: 24px 0;
}

.entr__h1 {
font-size: 28px;
}

.entr__wrap {
padding: 0 12px;
}

.entr__title-inner {
padding: 0 12px;
}

.entr__proof-inner {
padding: 0 12px;
}

.entr__long-inner {
padding: 0 12px;
}

.entr__people-inner {
padding: 0 12px;
}
}

.lp-prog {
max-width: 1320px;
margin: 0 auto;
overflow: hidden;
}

.lp-prog .slide-up {
animation: slideUp 0.45s ease-out both;
}

.lp-prog .slide-up--d1 {
animation-delay: 0.1s;
}

.lp-prog .slide-up--d2 {
animation-delay: 0.2s;
}

.lp-prog .slide-up--d3 {
animation-delay: 0.32s;
}

@keyframes slideUp {
from {
opacity: 0;
transform: translateY(36px);
}

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

.lp-prog ::selection {
background: #B85AA7;
color: #fff;
}

.lp-prog .top-band {
display: flex;
flex-direction: row;
align-items: stretch;
gap: 0;
background: #fff;
padding: 48px 48px 48px 48px;
position: relative;
overflow: hidden;
}

.lp-prog .top-band__deco {
position: absolute;
top: -60px;
right: -60px;
width: 320px;
height: 320px;
border-radius: 40px;
background: #E8E0E8;
opacity: 0.28;
pointer-events: none;
}

.lp-prog .top-band__deco--sm {
width: 180px;
height: 180px;
top: auto;
bottom: -40px;
right: 120px;
opacity: 0.18;
}

.lp-prog .top-band__img-col {
flex: 0 0 420px;
position: relative;
}

.lp-prog .top-band__img-frame {
width: 420px;
height: 480px;
border-radius: 40px 3px 40px 3px;
overflow: hidden;
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
border: 2px solid #DAB5CA;
position: relative;
}

.lp-prog .top-band__img-frame img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: saturate(0.82) brightness(0.96) contrast(1.06);
transition: transform 0.38s ease-out;
}

.lp-prog .top-band__img-frame:hover img {
transform: scale(1.04);
}

.lp-prog .top-band__txt {
flex: 1;
padding: 24px 0 24px 48px;
display: flex;
flex-direction: column;
justify-content: center;
gap: 24px;
}

.lp-prog .top-band__eyebrow {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
}

.lp-prog .top-band__dot {
width: 10px;
height: 10px;
border-radius: 40px;
background: #B85AA7;
flex-shrink: 0;
}

.lp-prog .top-band__label {
font-size: 14px;
line-height: 1.4;
letter-spacing: 0.12em;
color: #B85AA7;
text-transform: uppercase;
}

.lp-prog .top-band__h1 {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.02em;
color: #1e1030;
font-weight: 700;
margin: 0;
}

.lp-prog .top-band__desc {
font-size: 17px;
line-height: 1.7;
color: #3d2a3a;
margin: 0;
max-width: 480px;
}

.lp-prog .top-band__meta {
display: flex;
flex-direction: row;
gap: 24px;
flex-wrap: wrap;
}

.lp-prog .meta-item {
display: flex;
flex-direction: column;
gap: 6px;
}

.lp-prog .meta-item__val {
font-size: 28px;
line-height: 1.1;
font-weight: 700;
color: #B85AA7;
}

.lp-prog .meta-item__key {
font-size: 14px;
line-height: 1.4;
color: #6a4f65;
letter-spacing: 0.06em;
}

.lp-prog .top-band__actions {
display: flex;
flex-direction: row;
gap: 12px;
flex-wrap: wrap;
}

.lp-prog .btn-primary {
position: relative;
display: inline-flex;
align-items: center;
gap: 8px;
padding: 12px 24px;
border-radius: 3px;
border: 2px solid #B85AA7;
background: #B85AA7;
color: #fff;
font-size: 17px;
font-weight: 600;
cursor: pointer;
overflow: hidden;
transition: color 0.22s ease-out, border-color 0.22s ease-out;
text-decoration: none;
}

.lp-prog .btn-primary::before {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 0;
background: #1e1030;
transition: height 0.28s ease-out;
z-index: 0;
}

.lp-prog .btn-primary:hover::before {
height: 100%;
}

.lp-prog .btn-primary:hover {
color: #fff;
border-color: #1e1030;
}

.lp-prog .btn-primary span {
position: relative;
z-index: 1;
}

.lp-prog .btn-outline {
position: relative;
display: inline-flex;
align-items: center;
gap: 8px;
padding: 12px 24px;
border-radius: 3px;
border: 2px solid #B85AA7;
background: transparent;
color: #B85AA7;
font-size: 17px;
font-weight: 600;
cursor: pointer;
overflow: hidden;
transition: color 0.2s ease-out;
text-decoration: none;
}

.lp-prog .btn-outline::before {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 0;
background: #B85AA7;
transition: height 0.25s ease-out;
z-index: 0;
}

.lp-prog .btn-outline:hover::before {
height: 100%;
}

.lp-prog .btn-outline:hover {
color: #fff;
}

.lp-prog .btn-outline span {
position: relative;
z-index: 1;
}

.lp-prog .modules-band {
background: #f5eff4;
padding: 48px 48px;
}

.lp-prog .modules-band__top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 24px;
margin-bottom: 48px;
}

.lp-prog .modules-band__h2 {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.02em;
font-weight: 300;
color: #1e1030;
margin: 0;
}

.lp-prog .modules-band__sub {
font-size: 17px;
line-height: 1.7;
color: #5a3f56;
max-width: 360px;
text-align: right;
margin: 0;
}

.lp-prog .modules-grid {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
grid-template-rows: auto auto;
gap: 24px;
}

.lp-prog .mod-card {
background: #fff;
border-radius: 3px;
padding: 24px;
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
display: flex;
flex-direction: column;
gap: 12px;
border: 1px solid #e3d5e1;
transition: box-shadow 0.25s ease-out, border-color 0.18s ease-out;
position: relative;
}

.lp-prog .mod-card:hover {
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
border-color: #B85AA7;
}

.lp-prog .mod-card--accent {
background: #B85AA7 !important;
color: #fff;
grid-row: 1 / 3;
}

.lp-prog .mod-card--accent .mod-card__num,
.lp-prog .mod-card--accent .mod-card__h,
.lp-prog .mod-card--accent .mod-card__p {
color: #fff;
}

.lp-prog .mod-card--accent .mod-card__tag {
background: rgba(255, 255, 255, 0.18);
color: #fff;
}

.lp-prog .mod-card__num {
font-size: 54px;
line-height: 1.1;
font-weight: 700;
color: #E8E0E8;
letter-spacing: -0.03em;
margin: 0;
}

.lp-prog .mod-card__h {
font-size: 17px;
line-height: 1.4;
font-weight: 700;
color: #1e1030;
margin: 0;
}

.lp-prog .mod-card__p {
font-size: 14px;
line-height: 1.7;
color: #5a3f56;
margin: 0;
flex: 1;
}

.lp-prog .mod-card__tag {
display: inline-flex;
align-items: center;
gap: 6px;
background: #E8E0E8;
border-radius: 40px;
padding: 6px 12px;
font-size: 14px;
color: #B85AA7;
font-weight: 600;
align-self: flex-start;
}

.lp-prog .mod-card__img-wrap {
border-radius: 3px;
overflow: hidden;
height: 180px;
margin: 0 -24px;
margin-top: 12px;
}

.lp-prog .mod-card__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.38s ease-out;
}

.lp-prog .mod-card:hover .mod-card__img-wrap img {
transform: scale(1.05);
}

.lp-prog .mod-card__trail {
display: flex;
flex-direction: column;
gap: 6px;
margin-top: 6px;
}

.lp-prog .trail-item {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 14px;
line-height: 1.4;
color: #3d2a3a;
}

.lp-prog .trail-dot {
width: 8px;
height: 8px;
border-radius: 40px;
background: #DAB5CA;
flex-shrink: 0;
position: relative;
}

.lp-prog .trail-dot--active {
background: #B85AA7;
}

.lp-prog .detail-band {
padding: 0;
display: flex;
flex-direction: row;
align-items: stretch;
}

.lp-prog .detail-band__img-col {
flex: 0 0 480px;
position: relative;
}

.lp-prog .detail-band__img-col::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(160deg, rgba(30, 16, 48, 0.72) 0%, rgba(184, 90, 167, 0.38) 100%);
pointer-events: none;
}

.lp-prog .detail-band__img-col img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.lp-prog .detail-band__copy {
flex: 1;
background: #1e1030;
padding: 48px;
display: flex;
flex-direction: column;
gap: 24px;
justify-content: center;
}

.lp-prog .detail-band__h2 {
font-size: 28px;
line-height: 1.4;
font-weight: 700;
color: #fff;
margin: 0;
letter-spacing: 0.01em;
}

.lp-prog .detail-band__p {
font-size: 17px;
line-height: 1.7;
color: #c9b4c5;
margin: 0;
}

.lp-prog .feat-list {
display: flex;
flex-direction: column;
gap: 12px;
list-style: none;
padding: 0;
margin: 0;
}

.lp-prog .feat-list__item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
font-size: 17px;
line-height: 1.7;
color: #e8d8e6;
}

.lp-prog .feat-list__icon {
width: 20px;
height: 20px;
flex-shrink: 0;
margin-top: 3px;
}

.lp-prog .detail-band__journal {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14px;
color: #DAB5CA;
text-decoration: none;
border-bottom: 1px solid rgba(218, 181, 202, 0.3);
padding-bottom: 6px;
transition: color 0.2s ease-out, border-color 0.2s ease-out;
align-self: flex-start;
}

.lp-prog .detail-band__journal:hover {
color: #fff;
border-color: #fff;
}

@media (max-width: 1024px) {
.lp-prog .top-band {
flex-direction: column;
padding: 48px 24px;
}

.lp-prog .top-band__img-col {
flex: none;
}

.lp-prog .top-band__img-frame {
width: 100%;
height: 320px;
}

.lp-prog .top-band__txt {
padding: 24px 0 0 0;
}

.lp-prog .top-band__h1 {
font-size: 54px;
}

.lp-prog .modules-band {
padding: 48px 24px;
}

.lp-prog .modules-grid {
grid-template-columns: 1fr 1fr;
}

.lp-prog .mod-card--accent {
grid-row: auto;
grid-column: 1 / 3;
}

.lp-prog .detail-band {
flex-direction: column;
}

.lp-prog .detail-band__img-col {
flex: none;
height: 300px;
}

.lp-prog .detail-band__copy {
padding: 48px 24px;
}
}

@media (max-width: 768px) {
.lp-prog .top-band__h1 {
font-size: 28px;
}

.lp-prog .modules-band__h2 {
font-size: 28px;
}

.lp-prog .modules-band__top {
flex-direction: column;
align-items: flex-start;
}

.lp-prog .modules-band__sub {
text-align: left;
max-width: 100%;
}

.lp-prog .modules-grid {
grid-template-columns: 1fr;
}

.lp-prog .mod-card--accent {
grid-column: auto;
}

.lp-prog .top-band__meta {
gap: 24px;
}
}

@media (max-width: 360px) {
.lp-prog .top-band {
padding: 24px 12px;
}

.lp-prog .modules-band {
padding: 24px 12px;
}

.lp-prog .detail-band__copy {
padding: 24px 12px;
}

.lp-prog .top-band__h1 {
font-size: 28px;
}

.lp-prog .btn-primary,
.lp-prog .btn-outline {
font-size: 14px;
padding: 12px 12px;
}
}

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

.ctus__inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
}

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

.ctus__reach::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(135deg, #B85AA7 0%, #DAB5CA 60%, #E8E0E8 100%);
}

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

.ctus__reach-divider {
background: linear-gradient(180deg, transparent 0%, #DAB5CA 30%, #B85AA7 50%, #DAB5CA 70%, transparent 100%);
align-self: stretch;
min-height: 200px;
}

.ctus__reach-label {
font-size: 14px;
letter-spacing: 0.12em;
color: #B85AA7;
text-transform: uppercase;
margin-bottom: 12px;
display: flex;
align-items: center;
gap: 6px;
}

.ctus__reach-label svg {
width: 14px;
height: 14px;
flex-shrink: 0;
}

.ctus__reach-heading {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.02em;
color: #1e1e1e;
margin-bottom: 24px;
font-weight: 300;
}

.ctus__reach-heading strong {
font-weight: 700;
color: #B85AA7;
}

.ctus__reach-desc {
font-size: 17px;
line-height: 1.7;
color: #3a3a3a;
margin-bottom: 24px;
}

.ctus__reach-facts {
display: flex;
flex-direction: column;
gap: 12px;
}

.ctus__fact {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
padding: 12px;
border: 1px solid #E8E0E8;
border-radius: 3px;
transition: border-color 0.25s ease-out, box-shadow 0.25s ease-out;
}

.ctus__fact:hover {
border-color: #DAB5CA;
box-shadow: -1px 1px 6px 0 rgba(184, 90, 167, 0.06);
}

.ctus__fact-icon {
width: 36px;
height: 36px;
border-radius: 3px;
background: #E8E0E8;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
transition: background 0.2s ease-out;
}

.ctus__fact:hover .ctus__fact-icon {
background: #DAB5CA;
}

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

.ctus__fact-body {
display: flex;
flex-direction: column;
gap: 6px;
}

.ctus__fact-label {
font-size: 14px;
color: #888;
letter-spacing: 0.06em;
}

.ctus__fact-value {
font-size: 17px;
color: #1e1e1e;
line-height: 1.4;
}

.ctus__fact-value a {
color: #B85AA7;
text-decoration: none;
transition: color 0.2s ease-out;
}

.ctus__fact-value a:hover {
color: #8a3f7d;
}

.ctus__reach-right {
padding-top: 12px;
}

.ctus__channel-heading {
font-size: 28px;
line-height: 1.4;
color: #1e1e1e;
font-weight: 300;
letter-spacing: 0.01em;
margin-bottom: 12px;
}

.ctus__channel-desc {
font-size: 14px;
line-height: 1.7;
color: #555;
margin-bottom: 24px;
}

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

.ctus__channel-item {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
padding: 12px;
border-radius: 3px;
background: #f5f0f5;
border: 1px solid transparent;
transition: background 0.2s ease-out, border-color 0.2s ease-out;
}

.ctus__channel-item:hover {
background: #ede5ed;
border-color: #DAB5CA;
}

.ctus__channel-dot {
width: 10px;
height: 10px;
border-radius: 40px;
background: #DAB5CA;
flex-shrink: 0;
position: relative;
}

.ctus__channel-dot::after {
content: '';
position: absolute;
inset: -3px;
border-radius: 40px;
border: 1px solid #B85AA7;
opacity: 0;
transition: opacity 0.2s ease-out;
}

.ctus__channel-item:hover .ctus__channel-dot::after {
opacity: 1;
}

.ctus__channel-text {
font-size: 17px;
color: #2a2a2a;
line-height: 1.4;
}

.ctus__channel-sub {
font-size: 14px;
color: #777;
margin-left: auto;
}

.ctus__zigzag {
width: 100%;
overflow: hidden;
line-height: 0;
display: block;
}

.ctus__form-wrap {
padding: 48px 0;
background: linear-gradient(160deg, #f9f5f9 0%, #fff 50%, #f5eef5 100%);
position: relative;
overflow: hidden;
}

.ctus__form-wrap::before {
content: '';
position: absolute;
top: -24px;
right: -24px;
width: 200px;
height: 200px;
border-radius: 40px;
background: rgba(184, 90, 167, 0.04);
transform: rotate(15deg);
pointer-events: none;
}

.ctus__form-wrap::after {
content: '';
position: absolute;
bottom: -12px;
left: 48px;
width: 120px;
height: 120px;
border-radius: 40px;
background: rgba(218, 181, 202, 0.08);
transform: rotate(-10deg);
pointer-events: none;
}

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

.ctus__form-aside {
position: sticky;
top: 24px;
}

.ctus__form-aside-tag {
display: inline-flex;
align-items: center;
gap: 6px;
font-size: 14px;
color: #B85AA7;
letter-spacing: 0.1em;
text-transform: uppercase;
margin-bottom: 12px;
}

.ctus__form-aside-tag svg {
width: 14px;
height: 14px;
stroke: #B85AA7;
fill: none;
stroke-width: 2;
stroke-linecap: round;
}

.ctus__form-aside-heading {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.02em;
color: #1e1e1e;
font-weight: 300;
margin-bottom: 24px;
}

.ctus__form-aside-heading em {
font-style: normal;
font-weight: 700;
color: #B85AA7;
}

.ctus__form-aside-note {
font-size: 17px;
line-height: 1.7;
color: #444;
margin-bottom: 24px;
}

.ctus__form-aside-note strong {
color: #B85AA7;
}

.ctus__response-badge {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 6px 12px;
border-radius: 40px;
background: #E8E0E8;
font-size: 14px;
color: #3a3a3a;
border: 1px solid #DAB5CA;
}

.ctus__response-badge svg {
width: 13px;
height: 13px;
stroke: #B85AA7;
fill: none;
stroke-width: 2;
stroke-linecap: round;
}

.ctus__form {
background: #fff;
border-radius: 3px;
padding: 48px;
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
position: relative;
}

.ctus__form::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(90deg, #B85AA7 0%, #DAB5CA 100%);
border-radius: 3px 3px 0 0;
}

.ctus__field-group {
display: flex;
flex-direction: column;
gap: 6px;
margin-bottom: 24px;
}

.ctus__field-label {
font-size: 14px;
color: #444;
letter-spacing: 0.04em;
display: flex;
align-items: center;
gap: 6px;
}

.ctus__field-label svg {
width: 13px;
height: 13px;
stroke: #B85AA7;
fill: none;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
}

.ctus__field-label .req {
color: #B85AA7;
font-size: 14px;
}

.ctus__input {
width: 100%;
padding: 12px;
border: 1px solid #E8E0E8;
border-radius: 3px;
font-size: 17px;
color: #1e1e1e;
background: #fff;
outline: none;
transition: border-color 0.2s ease-out, box-shadow 0.2s ease-out;
box-sizing: border-box;
inset-shadow: inset -1px 1px 6px 0 rgba(184, 90, 167, 0.04);
}

.ctus__input:focus {
border-color: #B85AA7;
box-shadow: -1px 1px 6px 0 rgba(184, 90, 167, 0.06), inset 0 1px 4px 0 rgba(184, 90, 167, 0.06);
}

.ctus__input::placeholder {
color: #bbb;
}

.ctus__channel-select {
display: flex;
flex-direction: column;
gap: 6px;
margin-bottom: 24px;
}

.ctus__channel-select-label {
font-size: 14px;
color: #444;
letter-spacing: 0.04em;
margin-bottom: 6px;
display: flex;
align-items: center;
gap: 6px;
}

.ctus__channel-select-label svg {
width: 13px;
height: 13px;
stroke: #B85AA7;
fill: none;
stroke-width: 2;
stroke-linecap: round;
}

.ctus__select-native {
width: 100%;
padding: 12px;
border: 1px solid #E8E0E8;
border-radius: 3px;
font-size: 17px;
color: #1e1e1e;
background: #fff;
outline: none;
cursor: pointer;
appearance: none;
-webkit-appearance: none;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23B85AA7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 12px center;
padding-right: 36px;
transition: border-color 0.2s ease-out, box-shadow 0.2s ease-out;
box-sizing: border-box;
}

.ctus__select-native:focus {
border-color: #B85AA7;
box-shadow: -1px 1px 6px 0 rgba(184, 90, 167, 0.06);
}

.ctus__textarea {
width: 100%;
padding: 12px;
border: 1px solid #E8E0E8;
border-radius: 3px;
font-size: 17px;
color: #1e1e1e;
background: #fff;
outline: none;
resize: vertical;
min-height: 100px;
transition: border-color 0.2s ease-out, box-shadow 0.2s ease-out;
box-sizing: border-box;
}

.ctus__textarea:focus {
border-color: #B85AA7;
box-shadow: -1px 1px 6px 0 rgba(184, 90, 167, 0.06);
}

.ctus__textarea::placeholder {
color: #bbb;
}

.ctus__privacy {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
margin-bottom: 24px;
padding: 12px;
background: #f9f5f9;
border-radius: 3px;
border: 1px solid #E8E0E8;
}

.ctus__privacy-check {
width: 18px;
height: 18px;
flex-shrink: 0;
margin-top: 2px;
accent-color: #B85AA7;
cursor: pointer;
}

.ctus__privacy-text {
font-size: 14px;
color: #555;
line-height: 1.7;
}

.ctus__privacy-text a {
color: #B85AA7;
text-decoration: underline;
text-decoration-color: #DAB5CA;
transition: color 0.2s ease-out;
}

.ctus__privacy-text a:hover {
color: #8a3f7d;
}

.ctus__submit-btn {
display: inline-block;
padding: 12px 48px;
background: #B85AA7;
color: #fff;
font-size: 17px;
border: none;
border-radius: 3px;
cursor: pointer;
position: relative;
overflow: hidden;
transition: color 0.2s ease-out, box-shadow 0.25s ease-out;
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
letter-spacing: 0.04em;
}

.ctus__submit-btn::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 0;
background: #8a3f7d;
transition: height 0.22s ease-out;
z-index: 0;
}

.ctus__submit-btn:hover::before {
height: 100%;
}

.ctus__submit-btn:hover {
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
}

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

.ctus__submit-btn:focus {
outline: 2px solid #B85AA7;
outline-offset: 3px;
}

.ctus__map-strip {
padding: 48px 0;
background: #1e1a1e;
position: relative;
overflow: hidden;
}

.ctus__map-strip::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(160deg, rgba(184, 90, 167, 0.08) 0%, transparent 60%);
pointer-events: none;
}

.ctus__edge-glow {
position: absolute;
top: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(90deg, transparent 0%, #B85AA7 30%, #DAB5CA 50%, #B85AA7 70%, transparent 100%);
animation: edgeGlow 3.5s ease-out infinite alternate;
}

@keyframes edgeGlow {
0% {
opacity: 0.3;
}

100% {
opacity: 0.9;
}
}

.ctus__map-strip-bottom-glow {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(90deg, transparent 0%, #B85AA7 30%, #DAB5CA 50%, #B85AA7 70%, transparent 100%);
animation: edgeGlow 3.5s ease-out 1.75s infinite alternate;
}

.ctus__addr-layout {
display: flex;
flex-direction: row;
align-items: center;
gap: 48px;
}

.ctus__addr-label {
font-size: 14px;
letter-spacing: 0.12em;
color: #DAB5CA;
text-transform: uppercase;
margin-bottom: 12px;
}

.ctus__addr-heading {
font-size: 28px;
line-height: 1.4;
color: #fff;
font-weight: 300;
letter-spacing: 0.01em;
margin-bottom: 12px;
}

.ctus__addr-text {
font-size: 17px;
line-height: 1.7;
color: #c8b8c8;
margin-bottom: 6px;
}

.ctus__addr-text strong {
color: #fff;
}

.ctus__addr-divider-v {
width: 1px;
align-self: stretch;
background: linear-gradient(180deg, transparent 0%, #DAB5CA 30%, #B85AA7 50%, #DAB5CA 70%, transparent 100%);
flex-shrink: 0;
}

.ctus__addr-visual {
flex: 1;
display: flex;
flex-direction: column;
gap: 12px;
}

.ctus__addr-geo {
display: flex;
flex-direction: column;
gap: 6px;
}

.ctus__geo-row {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
padding: 12px;
border-radius: 3px;
border: 1px solid rgba(218, 181, 202, 0.2);
background: rgba(184, 90, 167, 0.06);
transition: border-color 0.2s ease-out, background 0.2s ease-out;
}

.ctus__geo-row:hover {
border-color: rgba(218, 181, 202, 0.5);
background: rgba(184, 90, 167, 0.12);
}

.ctus__geo-row svg {
width: 18px;
height: 18px;
stroke: #DAB5CA;
fill: none;
stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;
flex-shrink: 0;
}

.ctus__geo-text {
font-size: 17px;
color: #e0d0e0;
line-height: 1.4;
}

.ctus__geo-text a {
color: #DAB5CA;
text-decoration: none;
transition: color 0.2s ease-out;
}

.ctus__geo-text a:hover {
color: #fff;
}

.ctus__addr-left {
max-width: 380px;
}

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

.ctus__reach-divider {
height: 1px;
min-height: unset;
background: linear-gradient(90deg, transparent 0%, #DAB5CA 30%, #B85AA7 50%, #DAB5CA 70%, transparent 100%);
}

.ctus__form-layout {
grid-template-columns: 1fr;
gap: 24px;
}

.ctus__form-aside {
position: static;
}

.ctus__form-aside-heading {
font-size: 28px;
}

.ctus__addr-layout {
flex-direction: column;
gap: 24px;
}

.ctus__addr-divider-v {
width: 100%;
height: 1px;
align-self: auto;
background: linear-gradient(90deg, transparent 0%, #DAB5CA 30%, #B85AA7 50%, #DAB5CA 70%, transparent 100%);
}

.ctus__addr-left {
max-width: 100%;
}
}

@media (max-width: 768px) {
.ctus__reach-heading {
font-size: 28px;
}

.ctus__form {
padding: 24px;
}

.ctus__submit-btn {
width: 100%;
text-align: center;
}

.ctus__addr-layout {
gap: 24px;
}
}

@media (max-width: 360px) {
.ctus__inner {
padding: 0 12px;
}

.ctus__form {
padding: 12px;
}

.ctus__reach-heading {
font-size: 28px;
}
}

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

.mstr__inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
}

.mstr__title-block {
position: relative;
padding: 96px 24px 72px;
background: linear-gradient(170deg, #2a1228 0%, #3d1a38 40%, #B85AA7 100%);
overflow: hidden;
}

.mstr__title-block::before {
content: "";
position: absolute;
inset: 0;
background-image:
linear-gradient(rgba(184, 90, 167, 0.08) 1px, transparent 1px),
linear-gradient(90deg, rgba(184, 90, 167, 0.08) 1px, transparent 1px);
background-size: 48px 48px;
pointer-events: none;
}

.mstr__title-block::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 120px;
background: linear-gradient(to top, #2a1228 0%, transparent 100%);
pointer-events: none;
}

.mstr__title-wrap {
position: relative;
z-index: 1;
max-width: 1320px;
margin: 0 auto;
}

.mstr__label {
display: inline-block;
font-size: 14px;
letter-spacing: 0.12em;
color: #DAB5CA;
border: 1px solid rgba(218, 181, 202, 0.35);
border-radius: 3px;
padding: 6px 12px;
margin-bottom: 24px;
text-transform: uppercase;
}

.mstr__h1 {
font-size: 70px;
line-height: 1.1;
letter-spacing: -0.03em;
color: #fff;
font-weight: 300;
margin: 0 0 24px;
max-width: 820px;
overflow: hidden;
}

.mstr__h1 span {
display: inline-block;
animation: splitReveal 0.45s ease-out both;
}

.mstr__h1 span:nth-child(2) {
animation-delay: 0.15s;
margin-left: 0.18em;
}

@keyframes splitReveal {
from {
opacity: 0;
transform: translateX(-18px);
}

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

.mstr__desc {
font-size: 17px;
line-height: 1.7;
color: #DAB5CA;
max-width: 560px;
margin: 0;
}

.mstr__dbl-border {
border: 1px solid rgba(218, 181, 202, 0.18);
outline: 3px solid rgba(184, 90, 167, 0.12);
outline-offset: 6px;
border-radius: 3px;
padding: 6px 12px;
display: inline-block;
margin-top: 24px;
}

.mstr__dbl-border span {
font-size: 14px;
color: #DAB5CA;
letter-spacing: 0.08em;
}

.mstr__prog {
background: #fff;
padding: 72px 0 48px;
}

.mstr__prog-inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: start;
}

.mstr__prog-left {
position: relative;
}

.mstr__prog-img-wrap {
position: relative;
border-radius: 3px;
overflow: hidden;
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
}

.mstr__prog-img-wrap img {
width: 100%;
height: 420px;
object-fit: cover;
display: block;
transition: transform 0.4s ease-out;
}

.mstr__prog-img-wrap:hover img {
transform: scale(1.04);
}

.mstr__color-wash {
position: absolute;
inset: 0;
background: rgba(184, 90, 167, 0.0);
transition: background 0.35s ease-out;
pointer-events: none;
border-radius: 3px;
}

.mstr__prog-img-wrap:hover .mstr__color-wash {
background: rgba(184, 90, 167, 0.28);
}

.mstr__prog-badge {
position: absolute;
bottom: -12px;
left: 24px;
background: #B85AA7;
color: #fff;
font-size: 14px;
padding: 6px 12px;
border-radius: 3px;
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
letter-spacing: 0.06em;
}

.mstr__prog-right {
padding-top: 12px;
}

.mstr__section-tag {
display: flex;
align-items: center;
gap: 6px;
margin-bottom: 12px;
}

.mstr__section-tag i {
color: #B85AA7;
font-size: 17px;
}

.mstr__section-tag span {
font-size: 14px;
letter-spacing: 0.1em;
color: #B85AA7;
text-transform: uppercase;
}

.mstr__h2 {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.02em;
font-weight: 300;
color: #2a1228;
margin: 0 0 24px;
}

.mstr__body {
font-size: 17px;
line-height: 1.7;
color: #4a3048;
margin: 0 0 24px;
}

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

.mstr__trail li {
display: flex;
align-items: flex-start;
gap: 12px;
font-size: 17px;
line-height: 1.4;
color: #2a1228;
position: relative;
}

.mstr__trail-dot {
width: 10px;
height: 10px;
border-radius: 40px;
background: #B85AA7;
flex-shrink: 0;
margin-top: 5px;
box-shadow: -1px 1px 6px 0 rgba(184, 90, 167, 0.06);
position: relative;
}

.mstr__trail-dot::after {
content: "";
position: absolute;
top: 10px;
left: 4px;
width: 2px;
height: 28px;
background: linear-gradient(to bottom, rgba(184, 90, 167, 0.4), transparent);
}

.mstr__trail li:last-child .mstr__trail-dot::after {
display: none;
}

.mstr__offer {
background: #E8E0E8;
padding: 72px 0;
position: relative;
}

.mstr__offer::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 50%;
background: #E8E0E8;
pointer-events: none;
}

.mstr__offer::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 50%;
background: #fff;
pointer-events: none;
}

.mstr__offer-inner {
max-width: 1320px;
margin: 0 auto;
padding: 0 24px;
position: relative;
z-index: 1;
}

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

.mstr__offer-head {
grid-column: 1 / -1;
text-align: center;
margin-bottom: 24px;
}

.mstr__h3 {
font-size: 28px;
line-height: 1.4;
font-weight: 400;
color: #2a1228;
margin: 0 0 12px;
letter-spacing: 0.01em;
}

.mstr__offer-sub {
font-size: 17px;
line-height: 1.7;
color: #4a3048;
margin: 0;
}

.mstr__card {
background: #fff;
border-radius: 3px;
padding: 24px;
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
border: 1px solid rgba(184, 90, 167, 0.1);
transition: box-shadow 0.25s ease-out, transform 0.2s ease-out;
display: flex;
flex-direction: column;
gap: 12px;
}

.mstr__card:hover {
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
transform: translateY(-3px);
}

.mstr__card--featured {
border-color: #B85AA7;
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
}

.mstr__card-icon {
width: 40px;
height: 40px;
border-radius: 40px;
background: linear-gradient(135deg, #DAB5CA 0%, #B85AA7 100%);
display: flex;
align-items: center;
justify-content: center;
}

.mstr__card-icon i {
color: #fff;
font-size: 17px;
}

.mstr__card-name {
font-size: 17px;
font-weight: 600;
color: #2a1228;
line-height: 1.4;
margin: 0;
}

.mstr__card-text {
font-size: 14px;
line-height: 1.7;
color: #4a3048;
margin: 0;
}

.mstr__card-price {
margin-top: auto;
padding-top: 12px;
border-top: 1px solid rgba(184, 90, 167, 0.15);
}

.mstr__price-val {
font-size: 28px;
font-weight: 700;
color: #B85AA7;
line-height: 1.1;
}

.mstr__price-note {
font-size: 14px;
color: #4a3048;
margin-top: 6px;
}

.mstr__btn {
display: inline-block;
padding: 12px 24px;
border-radius: 3px;
font-size: 14px;
letter-spacing: 0.06em;
cursor: pointer;
border: none;
position: relative;
overflow: hidden;
transition: color 0.2s ease-out;
text-decoration: none;
}

.mstr__btn--primary {
background: #B85AA7;
color: #fff;
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
}

.mstr__btn--primary::before {
content: "";
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 0;
background: #2a1228;
transition: height 0.25s ease-out;
z-index: 0;
}

.mstr__btn--primary:hover::before {
height: 100%;
}

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

.mstr__btn--outline {
background: transparent;
color: #B85AA7;
border: 1.5px solid #B85AA7;
}

.mstr__btn--outline::before {
content: "";
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 0;
background: #B85AA7;
transition: height 0.2s ease-out;
z-index: 0;
}

.mstr__btn--outline:hover {
color: #fff;
}

.mstr__btn--outline:hover::before {
height: 100%;
}

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

.mstr__quote-wrap {
margin-top: 48px;
padding: 24px;
background: #fff;
border-radius: 3px;
border: 1px solid rgba(184, 90, 167, 0.15);
box-shadow: -1px 1px 6px 0 rgba(184, 90, 167, 0.06);
position: relative;
}

.mstr__bubble-tail {
position: absolute;
top: -12px;
left: 36px;
width: 0;
height: 0;
border-left: 10px solid transparent;
border-right: 10px solid transparent;
border-bottom: 12px solid rgba(184, 90, 167, 0.15);
}

.mstr__bubble-tail::after {
content: "";
position: absolute;
top: 2px;
left: -9px;
width: 0;
height: 0;
border-left: 9px solid transparent;
border-right: 9px solid transparent;
border-bottom: 11px solid #fff;
}

.mstr__quote-text {
font-size: 17px;
line-height: 1.7;
color: #2a1228;
margin: 0 0 12px;
font-style: italic;
}

.mstr__quote-author {
font-size: 14px;
color: #B85AA7;
letter-spacing: 0.06em;
}

.mstr__divider {
height: 1px;
background: linear-gradient(90deg, transparent, rgba(184, 90, 167, 0.25), transparent);
filter: blur(0.5px);
margin: 0;
}

@media (max-width: 1024px) {
.mstr__h1 {
font-size: 54px;
}

.mstr__prog-inner {
grid-template-columns: 1fr;
gap: 24px;
}

.mstr__prog-img-wrap img {
height: 300px;
}

.mstr__offer-grid {
grid-template-columns: 1fr 1fr;
}
}

@media (max-width: 768px) {
.mstr__title-block {
padding: 48px 24px 48px;
}

.mstr__h1 {
font-size: 28px;
letter-spacing: -0.01em;
}

.mstr__h2 {
font-size: 28px;
}

.mstr__offer-grid {
grid-template-columns: 1fr;
}

.mstr__prog {
padding: 48px 0;
}

.mstr__offer {
padding: 48px 0;
}
}

@media (max-width: 360px) {
.mstr__h1 {
font-size: 28px;
}

.mstr__label {
font-size: 14px;
}

.mstr__inner {
padding: 0 12px;
}
}

.success-pg {
min-height: 80vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 48px 24px;
background: linear-gradient(160deg, #fff 60%, #E8E0E8 100%);
}

.success-pg .result-card {
max-width: 560px;
width: 100%;
background: #fff;
border-radius: 40px;
padding: 48px;
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
text-align: center;
border-top: 3px solid #B85AA7;
}

.success-pg .result-card__icon {
width: 72px;
height: 72px;
margin: 0 auto 24px;
display: flex;
align-items: center;
justify-content: center;
}

.success-pg .result-card__icon svg {
width: 72px;
height: 72px;
}

.success-pg .result-card__heading {
font-size: 54px;
line-height: 1.1;
letter-spacing: -0.02em;
font-weight: 700;
color: #2d1a2b;
margin: 0 0 12px;
}

.success-pg .result-card__sub {
font-size: 17px;
line-height: 1.7;
color: #5a3d55;
margin: 0 0 24px;
}

.success-pg .result-card__note {
font-size: 14px;
line-height: 1.4;
color: #8a6a84;
margin: 0 0 48px;
padding: 12px;
background: #E8E0E8;
border-radius: 3px;
}

.success-pg .result-card__action {
display: inline-block;
text-decoration: none;
font-size: 17px;
line-height: 1.4;
font-weight: 600;
color: #fff;
background: #B85AA7;
padding: 12px 48px;
border-radius: 3px;
border: 2px solid #B85AA7;
transition: color 0.2s ease-out, background 0.35s ease-out, box-shadow 0.25s ease-out;
position: relative;
overflow: hidden;
box-shadow: -1px 7px 18px 0 rgba(184, 90, 167, 0.11);
}

.success-pg .result-card__action::after {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 0;
background: #2d1a2b;
border-radius: 0 0 3px 3px;
transition: height 0.25s ease-out;
z-index: 0;
}

.success-pg .result-card__action span {
position: relative;
z-index: 1;
}

.success-pg .result-card__action:hover::after {
height: 100%;
}

.success-pg .result-card__action:hover {
box-shadow: -1px 9px 52px 0 rgba(184, 90, 167, 0.14);
color: #fff;
}

.success-pg .result-card__action:focus {
outline: 2px solid #B85AA7;
outline-offset: 3px;
}

@media (max-width: 768px) {
.success-pg .result-card {
padding: 48px 24px;
}

.success-pg .result-card__heading {
font-size: 28px;
}
}

@media (max-width: 360px) {
.success-pg {
padding: 24px 12px;
}

.success-pg .result-card {
padding: 24px 12px;
border-radius: 3px;
}
}