html {
box-sizing: border-box;
}

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

body {
margin: 0;
-webkit-text-size-adjust: 100%;
}

.siteheader {
background: linear-gradient(135deg, #FEFEFE 0%, #f4eafd 60%, #e8f5ee 100%);
border-bottom: 2px solid #D671FB;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
position: relative;
}

.siteheader-inner {
max-width: 1600px;
margin: 0 auto;
padding: 0 40px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 40px;
min-height: 88px;
}

.logobox {
flex-shrink: 0;
display: flex;
align-items: center;
text-decoration: none;
border: 1px solid #c4c4c4;
border-radius: 6px 6px 6px 0;
background: #FEFEFE;
padding: 8px;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
transition: box-shadow 0.18s ease-out;
}

.logobox:hover {
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
filter: none;
}

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

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

.sitenav ul {
list-style: none;
margin: 0;
padding: 0;
display: flex;
align-items: center;
gap: 4px;
flex-wrap: wrap;
}

.sitenav ul li {
position: relative;
}

.navitem {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 16px;
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 600;
letter-spacing: 0.02em;
line-height: 1.2;
color: #1b1b1b;
text-decoration: none;
border-radius: 6px;
border: 1px solid transparent;
transition: background 0.15s ease-out, border-color 0.15s ease-out, color 0.15s ease-out;
white-space: nowrap;
min-height: 44px;
}

.navitem:hover,
.navitem:focus-visible {
background: #f4eafd;
border-color: #D671FB;
color: #7a00b8;
outline: none;
}

.navitem:focus-visible {
outline: 2px solid #D671FB;
outline-offset: 2px;
box-shadow: 0 0 0 4px rgba(214, 113, 251, 0.18);
}

.navicon {
width: 18px;
height: 18px;
flex-shrink: 0;
fill: none;
stroke: currentColor;
stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;
}

.navitem-hasub {
padding-right: 8px;
}

.submenu {
display: none;
position: absolute;
top: calc(100% + 4px);
left: 0;
min-width: 240px;
background: #FEFEFE;
border: 1px solid #D671FB;
border-radius: 6px;
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
z-index: 200;
padding: 8px;
}

.sitenav ul li:hover .submenu,
.sitenav ul li:focus-within .submenu {
display: block;
}

.submenu::before {
content: '';
position: absolute;
top: -8px;
left: 0;
right: 0;
height: 8px;
background: transparent;
}

.submenu a {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 16px;
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 400;
letter-spacing: 0.01em;
line-height: 1.6;
color: #1b1b1b;
text-decoration: none;
border-radius: 6px;
border: 1px solid transparent;
transition: background 0.12s ease-out, border-color 0.12s ease-out;
white-space: normal;
min-height: 44px;
}

.submenu a:hover,
.submenu a:focus-visible {
background: #e8f5ee;
border-color: #087542;
color: #055228;
outline: none;
}

.submenu a:focus-visible {
outline: 2px solid #087542;
outline-offset: 2px;
box-shadow: 0 0 0 4px rgba(8, 117, 66, 0.15);
}

.chevron {
width: 14px;
height: 14px;
flex-shrink: 0;
stroke: currentColor;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
transition: transform 0.15s ease-out;
}

.sitenav ul li:hover .navitem-hasub .chevron {
transform: rotate(180deg);
}

.headercta {
flex-shrink: 0;
}

.headercta a {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 8px 16px;
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.02em;
line-height: 1.2;
text-transform: uppercase;
text-decoration: none;
color: #FEFEFE;
background: linear-gradient(120deg, #087542 0%, #0aad5e 100%);
border-radius: 6px 6px 6px 0;
border: none;
box-shadow: 0 3px 3px 0 rgba(8, 117, 66, 0.07);
min-height: 44px;
transition: background 0.18s ease-out, box-shadow 0.18s ease-out, filter 0.18s ease-out;
}

.headercta a:hover {
background: linear-gradient(200deg, #087542 0%, #0aad5e 100%);
box-shadow: 0 4px 25px 0 rgba(8, 117, 66, 0.10);
filter: brightness(0.92);
}

.headercta a:focus-visible {
outline: 2px solid #087542;
outline-offset: 3px;
box-shadow: 0 0 0 4px rgba(8, 117, 66, 0.18);
}

.sitefooter {
background: linear-gradient(160deg, #111418 0%, #1a2420 100%);
border-top: 2px solid #087542;
box-shadow: 0 -4px 25px 0 rgba(8, 117, 66, 0.10);
}

.footer-top {
max-width: 1600px;
margin: 0 auto;
padding: 40px 40px 0;
display: flex;
align-items: center;
gap: 16px;
border-bottom: 1px solid rgba(214, 113, 251, 0.15);
padding-bottom: 40px;
}

.footer-logobox {
display: flex;
align-items: center;
text-decoration: none;
border: 1px solid rgba(214, 113, 251, 0.35);
border-radius: 0 6px 6px 6px;
background: rgba(254, 254, 254, 0.06);
padding: 8px;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
transition: box-shadow 0.18s ease-out;
}

.footer-logobox:hover {
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
}

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

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

.footer-brandname {
font-family: 'Arimo', sans-serif;
font-size: 22px;
font-weight: 700;
letter-spacing: 0.01em;
line-height: 1.2;
color: #FEFEFE;
}

.footer-tagline {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 400;
letter-spacing: 0.02em;
line-height: 1.6;
color: rgba(214, 113, 251, 0.85);
}

.footer-grid {
max-width: 1600px;
margin: 0 auto;
padding: 40px;
display: grid;
grid-template-columns: 2fr 1fr 1fr;
gap: 40px;
}

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

.footer-desc {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 400;
letter-spacing: 0.01em;
line-height: 1.9;
color: rgba(254, 254, 254, 0.65);
}

.footer-contacts {
display: flex;
flex-direction: column;
gap: 8px;
}

.footer-contact-item {
display: flex;
align-items: flex-start;
gap: 8px;
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 400;
letter-spacing: 0.01em;
line-height: 1.6;
color: rgba(254, 254, 254, 0.65);
}

.footer-contact-item a {
color: rgba(214, 113, 251, 0.9);
text-decoration: none;
transition: color 0.15s ease-out;
}

.footer-contact-item a:hover {
color: #D671FB;
}

.footer-contact-item a:focus-visible {
outline: 2px solid #D671FB;
outline-offset: 2px;
}

.contact-icon {
width: 16px;
height: 16px;
flex-shrink: 0;
stroke: #087542;
stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
margin-top: 2px;
}

.footer-col-label {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.02em;
line-height: 1.2;
color: #D671FB;
text-transform: uppercase;
margin: 0 0 16px 0;
}

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

.footer-navlist a {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 400;
letter-spacing: 0.01em;
line-height: 1.6;
color: rgba(254, 254, 254, 0.65);
text-decoration: none;
transition: color 0.15s ease-out;
display: inline-block;
padding: 4px 0;
}

.footer-navlist a:hover {
color: #D671FB;
}

.footer-navlist a:focus-visible {
outline: 2px solid #D671FB;
outline-offset: 2px;
color: #D671FB;
}

.footer-trust {
display: flex;
flex-direction: column;
gap: 8px;
}

.trust-item {
display: flex;
align-items: center;
gap: 8px;
padding: 8px;
border: 1px solid rgba(8, 117, 66, 0.25);
border-radius: 6px;
background: rgba(8, 117, 66, 0.06);
}

.trust-icon {
width: 18px;
height: 18px;
flex-shrink: 0;
stroke: #087542;
stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round;
fill: none;
}

.trust-label {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 600;
letter-spacing: 0.01em;
line-height: 1.2;
color: rgba(254, 254, 254, 0.8);
}

.footer-bottom {
max-width: 1600px;
margin: 0 auto;
padding: 16px 40px;
border-top: 1px solid rgba(214, 113, 251, 0.12);
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
flex-wrap: wrap;
}

.footer-copy {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 400;
letter-spacing: 0.01em;
line-height: 1.6;
color: rgba(254, 254, 254, 0.4);
}

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

.footer-legallinks a {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 400;
letter-spacing: 0.01em;
line-height: 1.6;
color: rgba(254, 254, 254, 0.4);
text-decoration: none;
transition: color 0.12s ease-out;
}

.footer-legallinks a:hover {
color: rgba(214, 113, 251, 0.85);
}

.footer-legallinks a:focus-visible {
outline: 2px solid #D671FB;
outline-offset: 2px;
color: #D671FB;
}

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

.footer-about {
grid-column: 1 / -1;
}
}

@media (max-width: 768px) {
.siteheader-inner {
padding: 0 16px;
gap: 16px;
min-height: 72px;
flex-wrap: wrap;
padding-top: 8px;
padding-bottom: 8px;
}

.sitenav ul {
gap: 4px;
}

.navitem {
padding: 8px 8px;
font-size: 14px;
}

.footer-grid {
grid-template-columns: 1fr;
padding: 40px 16px;
gap: 40px;
}

.footer-about {
grid-column: auto;
}

.footer-top {
padding: 40px 16px 40px;
}

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

@media (max-width: 480px) {
.siteheader-inner {
padding: 8px;
}

.headercta {
display: none;
}

.sitenav ul {
flex-wrap: wrap;
}
}

.cookiepopup {
display: none;
position: fixed;
top: 40px;
right: 40px;
width: 360px;
max-width: calc(100vw - 80px);
background: #FEFEFE;
border: 1px solid #D671FB;
border-radius: 6px 6px 6px 0;
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
z-index: 8000;
padding: 16px;
transition: transform 0.18s ease-out, opacity 0.18s ease-out;
transform: translateX(0);
opacity: 1;
}

.cookiepopup.sliding-out {
transform: translateX(calc(100% + 80px));
opacity: 0;
}

.cookiepopup.sliding-in {
transform: translateX(0);
opacity: 1;
}

.cookie-desc {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 400;
letter-spacing: 0.01em;
line-height: 1.6;
color: #1b1b1b;
margin: 0 0 16px 0;
}

.cookie-toggles {
display: none;
flex-direction: column;
gap: 8px;
margin-bottom: 16px;
}

.cookie-toggles.visible {
display: flex;
}

.toggle-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 8px;
padding: 8px;
border: 1px solid rgba(214, 113, 251, 0.2);
border-radius: 6px;
}

.toggle-label {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 600;
letter-spacing: 0.01em;
line-height: 1.2;
color: #1b1b1b;
}

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

.toggle-switch input {
opacity: 0;
width: 0;
height: 0;
position: absolute;
}

.toggle-track {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: #c4c4c4;
border-radius: 36px;
cursor: pointer;
transition: background 0.15s ease-out;
}

.toggle-track::after {
content: '';
position: absolute;
top: 3px;
left: 3px;
width: 16px;
height: 16px;
background: #FEFEFE;
border-radius: 48px;
transition: transform 0.15s ease-out;
}

.toggle-switch input:checked+.toggle-track {
background: #087542;
}

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

.toggle-switch input:focus-visible+.toggle-track {
outline: 2px solid #D671FB;
outline-offset: 2px;
}

.cookie-btns {
display: flex;
align-items: center;
gap: 8px;
flex-wrap: wrap;
}

.cookie-btn-accept {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.02em;
line-height: 1.2;
text-transform: uppercase;
color: #FEFEFE;
background: linear-gradient(120deg, #087542 0%, #0aad5e 100%);
border: none;
border-radius: 36px;
padding: 8px 16px;
cursor: pointer;
min-height: 44px;
transition: filter 0.15s ease-out, box-shadow 0.15s ease-out;
}

.cookie-btn-accept:hover {
filter: brightness(0.9);
box-shadow: 0 4px 25px 0 rgba(8, 117, 66, 0.10);
}

.cookie-btn-accept:focus-visible {
outline: 2px solid #087542;
outline-offset: 3px;
}

.cookie-btn-deny {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 600;
letter-spacing: 0.02em;
line-height: 1.2;
text-transform: uppercase;
color: #1b1b1b;
background: transparent;
border: 1px solid #c4c4c4;
border-radius: 36px;
padding: 8px 16px;
cursor: pointer;
min-height: 44px;
transition: border-color 0.15s ease-out, background 0.15s ease-out;
}

.cookie-btn-deny:hover {
border-color: #D671FB;
background: #f4eafd;
}

.cookie-btn-deny:focus-visible {
outline: 2px solid #D671FB;
outline-offset: 3px;
}

.cookie-btn-settings {
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 400;
letter-spacing: 0.01em;
line-height: 1.6;
color: #087542;
background: none;
border: none;
padding: 4px 0;
cursor: pointer;
text-decoration: underline;
text-underline-offset: 2px;
transition: color 0.12s ease-out;
min-height: 44px;
}

.cookie-btn-settings:hover {
color: #055228;
}

.cookie-btn-settings:focus-visible {
outline: 2px solid #087542;
outline-offset: 2px;
}

.cookie-btn-save {
display: none;
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.02em;
line-height: 1.2;
text-transform: uppercase;
color: #FEFEFE;
background: linear-gradient(120deg, #D671FB 0%, #b040e0 100%);
border: none;
border-radius: 36px;
padding: 8px 16px;
cursor: pointer;
min-height: 44px;
transition: filter 0.15s ease-out;
}

.cookie-btn-save:hover {
filter: brightness(0.9);
}

.cookie-btn-save:focus-visible {
outline: 2px solid #D671FB;
outline-offset: 3px;
}

.cookie-minibanner {
display: none;
position: fixed;
bottom: 40px;
right: 0;
z-index: 7999;
background: #FEFEFE;
border: 1px solid #D671FB;
border-radius: 6px 0 0 6px;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
padding: 8px 16px;
cursor: pointer;
font-family: 'Arimo', sans-serif;
font-size: 14px;
font-weight: 600;
letter-spacing: 0.01em;
line-height: 1.2;
color: #1b1b1b;
transition: background 0.15s ease-out;
min-height: 44px;
align-items: center;
gap: 8px;
}

.cookie-minibanner:hover {
background: #f4eafd;
}

.cookie-minibanner:focus-visible {
outline: 2px solid #D671FB;
outline-offset: 2px;
}

@media (max-width: 480px) {
.cookiepopup {
top: 16px;
right: 16px;
max-width: calc(100vw - 32px);
width: 100%;
}

.cookie-minibanner {
bottom: 16px;
}
}

.doc-content {
box-sizing: border-box;
margin: 0 auto;
max-width: 1600px;
padding: 80px 40px;
}

.doc-content p {
font-size: 18px;
letter-spacing: 0.01em;
line-height: 1.9;
margin-bottom: 16px;
margin-top: 0;
}

.doc-content ul,
.doc-content ol {
margin-bottom: 16px;
margin-top: 0;
padding-left: 40px;
}

.doc-content li {
font-size: 18px;
letter-spacing: 0.01em;
line-height: 1.9;
margin-bottom: 8px;
}

.doc-content li:last-child {
margin-bottom: 0;
}

.doc-content ul li {
list-style-type: disc;
}

.doc-content ol li {
list-style-type: decimal;
}

.doc-content a {
color: #087542;
font-size: inherit;
letter-spacing: 0.01em;
text-decoration: underline;
text-underline-offset: 3px;
transition: color 0.18s ease-out, opacity 0.18s ease-out;
}

.doc-content a:hover {
color: #D671FB;
opacity: 0.82;
}

.doc-content a:active {
opacity: 0.65;
}

.doc-content table {
border-collapse: collapse;
border-radius: 6px;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
font-size: 18px;
letter-spacing: 0.01em;
line-height: 1.6;
margin-bottom: 40px;
margin-top: 16px;
overflow: hidden;
width: 100%;
}

.doc-content thead {
background-color: #087542;
}

.doc-content thead th {
color: #FEFEFE;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.02em;
line-height: 1.6;
padding: 16px;
text-align: left;
}

.doc-content tbody tr {
border-bottom: 1px solid rgba(214, 113, 251, 0.12);
transition: background-color 0.14s ease-out;
}

.doc-content tbody tr:last-child {
border-bottom: none;
}

.doc-content tbody tr:hover {
background-color: rgba(214, 113, 251, 0.05);
}

.doc-content td {
font-size: 18px;
letter-spacing: 0.01em;
line-height: 1.6;
padding: 16px;
vertical-align: top;
}

.doc-content th {
font-size: 14px;
letter-spacing: 0.02em;
line-height: 1.6;
padding: 16px;
vertical-align: top;
}

.doc-content div {
box-sizing: border-box;
}

@media (max-width: 1024px) {
.doc-content {
padding: 80px 40px;
}
}

@media (max-width: 768px) {
.doc-content {
padding: 40px 16px;
}

.doc-content p {
font-size: 18px;
}

.doc-content li {
font-size: 18px;
}

.doc-content table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
}

.doc-content thead th,
.doc-content td,
.doc-content th {
font-size: 14px;
padding: 8px;
}
}

@media (max-width: 480px) {
.doc-content {
padding: 40px 16px;
}

.doc-content ul,
.doc-content ol {
padding-left: 16px;
}

.doc-content p,
.doc-content li {
font-size: 14px;
line-height: 1.9;
}
}

.ebd-detail {
background: #FEFEFE;
color: #1b1b1b;
overflow-x: clip;
}

.ebd-detail .pg-schema {
display: none;
}

.ebd-detail .titleblk {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
display: grid;
grid-template-columns: 1fr 1.7fr;
gap: 80px;
align-items: start;
}

.ebd-detail .imgcol {
position: relative;
}

.ebd-detail .imgwrap {
border-radius: 6px;
overflow: hidden;
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
}

.ebd-detail .imgwrap img {
width: 100%;
height: 420px;
object-fit: cover;
display: block;
border-radius: 6px;
filter: brightness(0.97);
transition: filter 0.18s ease-out;
}

.ebd-detail .imgwrap::after {
content: "";
position: absolute;
inset: 0;
border-radius: 6px;
background: radial-gradient(ellipse at 0% 0%, rgba(214, 113, 251, 0.22) 0%, transparent 55%),
radial-gradient(ellipse at 100% 100%, rgba(8, 117, 66, 0.18) 0%, transparent 55%);
pointer-events: none;
}

.ebd-detail .dotpath {
position: absolute;
bottom: -24px;
right: -24px;
display: grid;
grid-template-columns: repeat(5, 8px);
gap: 8px;
z-index: 1;
}

.ebd-detail .dotpath span {
width: 8px;
height: 8px;
border-radius: 48px;
background: #D671FB;
opacity: 0.35;
display: block;
}

.ebd-detail .dotpath span:nth-child(odd) {
opacity: 0.18;
}

.ebd-detail .txtcol {
padding-top: 8px;
}

.ebd-detail .metarow {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
margin-bottom: 16px;
align-items: center;
}

.ebd-detail .cattag {
background: linear-gradient(90deg, #D671FB 0%, #FEFEFE 100%);
color: #5a0080;
font-size: 14px;
line-height: 1.2;
letter-spacing: 0.02em;
padding: 4px 16px;
border-radius: 36px;
font-weight: 700;
text-transform: uppercase;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
}

.ebd-detail .userfmt {
background: #f3fdf7;
color: #087542;
font-size: 14px;
line-height: 1.2;
letter-spacing: 0.01em;
padding: 4px 16px;
border-radius: 36px;
border: 1.5px solid #087542;
font-weight: 600;
}

.ebd-detail .pagetitle {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #1b1b1b;
margin: 0 0 16px 0;
text-shadow: 0 2px 12px rgba(214, 113, 251, 0.10), 0 1px 0 rgba(8, 117, 66, 0.07);
}

.ebd-detail .pagetitle em {
font-style: normal;
-webkit-text-stroke: 1.5px #D671FB;
color: transparent;
font-family: Georgia, serif;
}

.ebd-detail .accentphrase {
font-size: 18px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #2d2d2d;
border-left: 4px solid #D671FB;
border-top: 1px solid rgba(214, 113, 251, 0.18);
border-bottom: 1px solid rgba(214, 113, 251, 0.18);
padding: 8px 16px;
margin: 0 0 16px 0;
background: rgba(214, 113, 251, 0.04);
border-radius: 0 6px 6px 0;
}

.ebd-detail .quickfacts {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 16px;
margin-bottom: 40px;
}

.ebd-detail .factitem {
display: flex;
flex-direction: column;
gap: 4px;
}

.ebd-detail .factlabel {
font-size: 14px;
line-height: 1.2;
letter-spacing: 0.02em;
color: #888;
text-transform: uppercase;
}

.ebd-detail .factval {
font-size: 18px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #1b1b1b;
font-weight: 700;
}

.ebd-detail .factval.seats {
color: #087542;
}

.ebd-detail .pricebox {
display: flex;
flex-direction: column;
gap: 4px;
margin-bottom: 40px;
padding: 16px;
background: linear-gradient(90deg, rgba(214, 113, 251, 0.07) 0%, rgba(8, 117, 66, 0.04) 100%);
border-radius: 6px;
border: 1px solid rgba(214, 113, 251, 0.15);
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
}

.ebd-detail .pricelabel {
font-size: 14px;
line-height: 1.2;
letter-spacing: 0.02em;
color: #888;
text-transform: uppercase;
}

.ebd-detail .pricenum {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #087542;
font-weight: 800;
}

.ebd-detail .pricenote {
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #555;
}

.ebd-detail .btnrow {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
}

.ebd-detail .btn-enroll {
display: inline-block;
padding: 16px 40px;
background: linear-gradient(90deg, #D671FB 0%, #FEFEFE 100%);
color: #5a0080;
font-size: 14px;
line-height: 1.2;
letter-spacing: 0.02em;
font-weight: 700;
text-transform: uppercase;
border-radius: 6px;
text-decoration: none;
border: none;
cursor: pointer;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
transition: filter 0.15s ease-out, background 0.18s cubic-bezier(0.4, 0, 0.6, 1);
}

.ebd-detail .btn-enroll:hover {
filter: brightness(0.92);
background: linear-gradient(270deg, #D671FB 0%, #FEFEFE 100%);
}

.ebd-detail .btn-enroll:active {
filter: brightness(0.85);
}

.ebd-detail .btn-contact {
display: inline-block;
padding: 16px 40px;
background: #FEFEFE;
color: #087542;
font-size: 14px;
line-height: 1.2;
letter-spacing: 0.02em;
font-weight: 700;
text-transform: uppercase;
border-radius: 6px;
text-decoration: none;
border: 2px solid #087542;
cursor: pointer;
transition: filter 0.12s ease-out, background 0.18s cubic-bezier(0.4, 0, 0.6, 1);
}

.ebd-detail .btn-contact:hover {
filter: brightness(0.93);
background: linear-gradient(90deg, rgba(8, 117, 66, 0.07) 0%, #FEFEFE 100%);
}

.ebd-detail .btn-contact:active {
filter: brightness(0.85);
}

.ebd-detail .wavdiv {
width: 100%;
overflow: hidden;
line-height: 0;
margin: 0;
}

.ebd-detail .wavdiv svg {
display: block;
width: 100%;
}

.ebd-detail .bodyblk {
background: linear-gradient(90deg, #f7f0ff 0%, #edfaf3 100%);
}

.ebd-detail .bodyinner {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
display: grid;
grid-template-columns: 1.4fr 1fr;
gap: 80px;
align-items: start;
}

.ebd-detail .descblk h2 {
font-size: 22px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #1b1b1b;
margin: 0 0 16px 0;
text-shadow: 0 1px 6px rgba(214, 113, 251, 0.09);
}

.ebd-detail .descblk h3 {
font-size: 18px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #087542;
margin: 16px 0 8px 0;
}

.ebd-detail .descblk p {
font-size: 18px;
line-height: 1.9;
letter-spacing: 0.01em;
color: #2d2d2d;
margin: 0 0 16px 0;
}

.ebd-detail .descblk em {
font-style: italic;
color: #087542;
}

.ebd-detail .descblk ol {
margin: 0 0 16px 0;
padding-left: 40px;
}

.ebd-detail .descblk li {
font-size: 18px;
line-height: 1.9;
letter-spacing: 0.01em;
color: #2d2d2d;
margin-bottom: 4px;
}

.ebd-detail .descblk blockquote {
margin: 16px 0;
padding: 16px 16px 16px 40px;
border-left: 4px solid #087542;
border-top: 1px solid rgba(8, 117, 66, 0.15);
border-bottom: 1px solid rgba(8, 117, 66, 0.15);
background: rgba(8, 117, 66, 0.04);
border-radius: 0 6px 6px 0;
font-size: 18px;
line-height: 1.6;
color: #1b1b1b;
}

.ebd-detail .descblk cite {
display: block;
font-size: 14px;
color: #555;
margin-top: 8px;
font-style: normal;
}

.ebd-detail .descblk figure {
margin: 16px 0;
}

.ebd-detail .descblk figcaption {
font-size: 14px;
color: #888;
margin-top: 4px;
line-height: 1.6;
}

.ebd-detail .descblk details {
border: 1px solid rgba(214, 113, 251, 0.2);
border-radius: 6px;
margin-bottom: 8px;
background: #FEFEFE;
}

.ebd-detail .descblk summary {
padding: 8px 16px;
font-size: 18px;
line-height: 1.6;
cursor: pointer;
color: #1b1b1b;
font-weight: 600;
outline: none;
transition: color 0.15s ease-out;
}

.ebd-detail .descblk summary:hover {
color: #D671FB;
}

.ebd-detail .descblk details[open] summary {
color: #D671FB;
border-bottom: 1px solid rgba(214, 113, 251, 0.15);
}

.ebd-detail .descblk details>*:not(summary) {
padding: 8px 16px 16px 16px;
font-size: 18px;
line-height: 1.9;
color: #2d2d2d;
}

.ebd-detail .progblk {
position: sticky;
top: 40px;
}

.ebd-detail .progcard {
background: #FEFEFE;
border-radius: 6px;
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
padding: 40px;
border: 1px solid rgba(214, 113, 251, 0.12);
}

.ebd-detail .progtitle {
font-size: 22px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #1b1b1b;
margin: 0 0 16px 0;
text-shadow: 0 1px 6px rgba(8, 117, 66, 0.08);
font-weight: 700;
}

.ebd-detail .progbody p {
font-size: 18px;
line-height: 1.9;
letter-spacing: 0.01em;
color: #2d2d2d;
margin: 0 0 16px 0;
}

.ebd-detail .progbody h2 {
font-size: 22px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #D671FB;
margin: 16px 0 8px 0;
}

.ebd-detail .progbody h3 {
font-size: 18px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #087542;
margin: 16px 0 8px 0;
font-weight: 700;
}

.ebd-detail .progbody mark {
background: linear-gradient(90deg, rgba(214, 113, 251, 0.22) 0%, rgba(214, 113, 251, 0.06) 100%);
color: #5a0080;
border-radius: 6px;
padding: 0 4px;
}

.ebd-detail .progbody ul {
margin: 0 0 16px 0;
padding-left: 40px;
}

.ebd-detail .progbody li {
font-size: 18px;
line-height: 1.9;
letter-spacing: 0.01em;
color: #2d2d2d;
margin-bottom: 4px;
}

.ebd-detail .progbody figure {
margin: 16px 0;
}

.ebd-detail .progbody figcaption {
font-size: 14px;
color: #888;
margin-top: 4px;
line-height: 1.6;
}

.ebd-detail .progbody details {
border: 1px solid rgba(8, 117, 66, 0.2);
border-radius: 6px;
margin-bottom: 8px;
background: #f3fdf7;
}

.ebd-detail .progbody summary {
padding: 8px 16px;
font-size: 18px;
line-height: 1.6;
cursor: pointer;
color: #087542;
font-weight: 600;
outline: none;
transition: color 0.15s ease-out;
}

.ebd-detail .progbody summary:hover {
color: #D671FB;
}

.ebd-detail .progbody details[open] summary {
color: #D671FB;
border-bottom: 1px solid rgba(8, 117, 66, 0.15);
}

.ebd-detail .progbody details>*:not(summary) {
padding: 8px 16px 16px 16px;
font-size: 18px;
line-height: 1.9;
color: #2d2d2d;
}

.ebd-detail .largequote {
font-size: 56px;
line-height: 1.2;
color: rgba(214, 113, 251, 0.13);
display: block;
margin-bottom: -16px;
font-family: Georgia, serif;
font-weight: 900;
letter-spacing: 0;
user-select: none;
}

@media (max-width: 1024px) {
.ebd-detail .titleblk {
grid-template-columns: 1fr;
gap: 40px;
padding: 40px 40px;
}

.ebd-detail .imgwrap img {
height: 320px;
}

.ebd-detail .bodyinner {
grid-template-columns: 1fr;
gap: 40px;
padding: 40px 40px;
}

.ebd-detail .progblk {
position: static;
}

.ebd-detail .pagetitle {
font-size: 56px;
}
}

@media (max-width: 768px) {
.ebd-detail .titleblk {
padding: 40px 16px;
gap: 40px;
}

.ebd-detail .bodyinner {
padding: 40px 16px;
}

.ebd-detail .pagetitle {
font-size: 22px;
}

.ebd-detail .pricenum {
font-size: 22px;
}

.ebd-detail .quickfacts {
gap: 16px;
}

.ebd-detail .dotpath {
display: none;
}

.ebd-detail .btnrow {
flex-direction: column;
}

.ebd-detail .progcard {
padding: 16px;
}
}

@media (max-width: 480px) {
.ebd-detail .titleblk {
padding: 16px;
}

.ebd-detail .bodyinner {
padding: 16px;
}

.ebd-detail .metarow {
gap: 4px;
}
}

.edubiz {
background: #FEFEFE;
color: #1b1b1b;
overflow-x: hidden;
position: relative;
}

.edubiz ::selection {
background: #D671FB;
color: #0d0d0d;
}

.edubiz .pgrid {
max-width: 1600px;
margin: 0 auto;
padding: 0 40px;
}

.edubiz .titblock {
position: relative;
padding: 80px 40px;
background: linear-gradient(110deg, #f0e6fd 0%, #e8f5ee 55%, #FEFEFE 100%);
overflow: hidden;
}

.edubiz .titblock-inner {
max-width: 1600px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 80px;
}

.edubiz .titblock-text {
flex: 1 1 55%;
z-index: 1;
position: relative;
}

.edubiz .titblock-tagline {
display: inline-block;
font-size: 14px;
letter-spacing: 0.02em;
line-height: 1.6;
color: #087542;
border: 1.5px solid #087542;
border-radius: 6px;
padding: 4px 16px;
margin-bottom: 16px;
font-weight: 600;
text-transform: uppercase;
}

.edubiz .titblock-h1 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
font-weight: 800;
margin: 0 0 16px;
text-shadow: 0 2px 8px rgba(214, 113, 251, 0.10);
color: #1b1b1b;
}

.edubiz .titblock-h1 em {
font-style: italic;
color: #D671FB;
font-weight: 800;
}

.edubiz .titblock-desc {
font-size: 18px;
line-height: 1.9;
letter-spacing: 0.01em;
color: #2e2e2e;
max-width: 560px;
margin: 0 0 40px;
}

.edubiz .titblock-imgwrap {
flex: 0 0 38%;
position: relative;
border-radius: 6px;
overflow: hidden;
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
}

.edubiz .titblock-imgwrap img {
width: 100%;
height: 420px;
object-fit: cover;
object-position: center;
display: block;
border-radius: 6px;
transition: opacity 0.18s ease-out;
}

.edubiz .titblock-imgwrap::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(135deg, rgba(8, 117, 66, 0.38) 0%, rgba(214, 113, 251, 0.22) 100%);
border-radius: 6px;
pointer-events: none;
}

.edubiz .titblock-shape {
position: absolute;
top: -40px;
right: 30%;
width: 220px;
height: 220px;
background: rgba(214, 113, 251, 0.07);
clip-path: polygon(20% 0%, 80% 10%, 100% 60%, 60% 100%, 0% 80%);
pointer-events: none;
z-index: 0;
}

.edubiz .titblock-shape2 {
position: absolute;
bottom: -30px;
left: 10%;
width: 140px;
height: 140px;
background: rgba(8, 117, 66, 0.06);
clip-path: polygon(50% 0%, 100% 38%, 82% 100%, 18% 100%, 0% 38%);
pointer-events: none;
z-index: 0;
}

.edubiz .cardgrid-sec {
padding: 80px 40px;
background: #FEFEFE;
position: relative;
}

.edubiz .cardgrid-sec::before {
content: "";
display: block;
height: 2px;
background: linear-gradient(90deg, transparent 0%, #D671FB 30%, #087542 70%, transparent 100%);
margin-bottom: 80px;
}

.edubiz .cardgrid-head {
max-width: 1600px;
margin: 0 auto 40px;
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 40px;
}

.edubiz .cardgrid-h2 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
font-weight: 800;
margin: 0;
color: #1b1b1b;
text-shadow: 1px 2px 0 rgba(214, 113, 251, 0.13);
flex: 1 1 auto;
}

.edubiz .cardgrid-h2 span {
color: #D671FB;
}

.edubiz .cardgrid-sub {
font-size: 18px;
line-height: 1.6;
color: #2e2e2e;
max-width: 420px;
flex: 0 1 420px;
margin: 0;
}

.edubiz .cardgrid {
max-width: 1600px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 40px;
}

.edubiz .card {
background: #FEFEFE;
border-radius: 6px;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
border: 1.5px solid rgba(214, 113, 251, 0.13);
display: flex;
flex-direction: column;
overflow: hidden;
transition: box-shadow 0.18s ease-out, border-color 0.18s ease-out;
animation: wavein 0.22s cubic-bezier(0.4, 0, 0.6, 1) both;
}

.edubiz .card:nth-child(1) {
animation-delay: 0.04s;
}

.edubiz .card:nth-child(2) {
animation-delay: 0.10s;
}

@keyframes wavein {
from {
opacity: 0;
transform: translateY(18px);
}

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

.edubiz .card:hover {
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
border-color: rgba(214, 113, 251, 0.32);
}

.edubiz .card-imgwrap {
position: relative;
overflow: hidden;
width: 100%;
height: 260px;
flex-shrink: 0;
}

.edubiz .card-imgwrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
transition: opacity 0.16s ease-out;
}

.edubiz .card-imgoverlay {
position: absolute;
inset: 0;
background: linear-gradient(180deg, rgba(8, 117, 66, 0.10) 0%, rgba(214, 113, 251, 0.22) 100%);
pointer-events: none;
}

.edubiz .card-body {
padding: 40px;
display: flex;
flex-direction: column;
gap: 16px;
flex: 1 1 auto;
}

.edubiz .card-meta {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
flex-wrap: wrap;
}

.edubiz .card-tag {
font-size: 14px;
letter-spacing: 0.02em;
line-height: 1.6;
background: rgba(214, 113, 251, 0.10);
color: #9b22d4;
border-radius: 6px;
padding: 4px 16px;
font-weight: 600;
text-transform: uppercase;
}

.edubiz .card-level {
font-size: 14px;
letter-spacing: 0.02em;
line-height: 1.6;
background: rgba(8, 117, 66, 0.09);
color: #087542;
border-radius: 6px;
padding: 4px 16px;
font-weight: 600;
text-transform: uppercase;
}

.edubiz .card-h3 {
font-size: 22px;
line-height: 1.2;
letter-spacing: 0.01em;
font-weight: 700;
margin: 0;
color: #1b1b1b;
text-shadow: 0 1px 3px rgba(214, 113, 251, 0.07);
}

.edubiz .card-desc {
font-size: 18px;
line-height: 1.9;
letter-spacing: 0.01em;
color: #2e2e2e;
margin: 0;
}

.edubiz .card-details {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
align-items: center;
}

.edubiz .card-detail {
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #444;
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
}

.edubiz .card-detail svg {
flex-shrink: 0;
}

.edubiz .card-seats {
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.01em;
font-weight: 700;
color: #087542;
}

.edubiz .card-bottom {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 16px;
margin-top: 8px;
flex-wrap: wrap;
}

.edubiz .card-price {
display: flex;
flex-direction: column;
gap: 4px;
}

.edubiz .card-pricenum {
font-size: 22px;
line-height: 1.2;
letter-spacing: 0.01em;
font-weight: 800;
color: #1b1b1b;
}

.edubiz .card-pricenote {
font-size: 14px;
line-height: 1.6;
color: #555;
letter-spacing: 0.01em;
}

.edubiz .card-cta {
display: inline-block;
padding: 16px 40px;
background: linear-gradient(90deg, #D671FB 0%, #FEFEFE 100%);
color: #1b1b1b;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.02em;
text-transform: uppercase;
border-radius: 6px;
text-decoration: none;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
transition: background 0.16s ease-out, box-shadow 0.16s ease-out, filter 0.16s ease-out;
border: none;
cursor: pointer;
}

.edubiz .card-cta:hover {
background: linear-gradient(270deg, #D671FB 0%, #b44de0 100%);
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
filter: brightness(0.93);
}

.edubiz .card-cta:focus {
outline: 2px solid #D671FB;
outline-offset: 2px;
}

.edubiz .card-cta:active {
filter: brightness(0.87);
}

.edubiz .bleed-sec {
position: relative;
padding: 80px 40px;
background: #f4faf7;
overflow: hidden;
}

.edubiz .bleed-sec::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 340px;
height: 340px;
background: rgba(214, 113, 251, 0.07);
border-radius: 48px;
pointer-events: none;
animation: bleedcorner 6s cubic-bezier(0.4, 0, 0.6, 1) infinite alternate;
}

@keyframes bleedcorner {
0% {
opacity: 0.3;
transform: scale(0.85) translate(-30px, -30px);
}

100% {
opacity: 0.85;
transform: scale(1.08) translate(8px, 8px);
}
}

.edubiz .bleed-inner {
max-width: 1600px;
margin: 0 auto;
display: flex;
flex-direction: row;
gap: 80px;
align-items: center;
position: relative;
z-index: 1;
}

.edubiz .bleed-text {
flex: 1 1 50%;
}

.edubiz .bleed-h2 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
font-weight: 800;
margin: 0 0 16px;
color: #1b1b1b;
text-shadow: 2px 2px 0 rgba(8, 117, 66, 0.10);
}

.edubiz .bleed-h2 span {
color: #087542;
}

.edubiz .bleed-para {
font-size: 18px;
line-height: 1.9;
letter-spacing: 0.01em;
color: #2e2e2e;
margin: 0 0 16px;
}

.edubiz .bleed-stats {
flex: 0 0 42%;
display: flex;
flex-direction: column;
gap: 16px;
}

.edubiz .stat-row {
background: #FEFEFE;
border-radius: 6px;
padding: 16px 40px;
box-shadow: 0 3px 3px 0 rgba(8, 117, 66, 0.07);
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
border-left: 4px solid #087542;
border-top: 1.5px solid rgba(8, 117, 66, 0.10);
border-right: 1.5px solid rgba(8, 117, 66, 0.10);
border-bottom: 1.5px solid rgba(8, 117, 66, 0.10);
transition: box-shadow 0.14s ease-out, border-left-color 0.14s ease-out;
}

.edubiz .stat-row:hover {
box-shadow: 0 4px 25px 0 rgba(8, 117, 66, 0.10);
border-left-color: #D671FB;
filter: brightness(0.97);
}

.edubiz .stat-num {
font-size: 56px;
line-height: 1.2;
font-weight: 800;
color: #087542;
letter-spacing: 0.01em;
flex-shrink: 0;
min-width: 80px;
}

.edubiz .stat-label {
font-size: 18px;
line-height: 1.6;
color: #2e2e2e;
letter-spacing: 0.01em;
}

.edubiz .imgbg-sec {
position: relative;
padding: 80px 40px;
min-height: 480px;
display: flex;
align-items: center;
}

.edubiz .imgbg-img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
z-index: 0;
display: block;
}

.edubiz .imgbg-overlay {
position: absolute;
inset: 0;
background: linear-gradient(110deg, rgba(8, 117, 66, 0.82) 0%, rgba(214, 113, 251, 0.52) 100%);
z-index: 1;
pointer-events: none;
}

.edubiz .imgbg-inner {
max-width: 1600px;
margin: 0 auto;
position: relative;
z-index: 2;
display: flex;
flex-direction: column;
gap: 40px;
align-items: flex-start;
}

.edubiz .imgbg-h2 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
font-weight: 800;
color: #FEFEFE;
text-shadow: 0 3px 16px rgba(8, 117, 66, 0.30);
margin: 0;
max-width: 760px;
}

.edubiz .imgbg-h2 em {
font-style: italic;
color: #D671FB;
}

.edubiz .imgbg-para {
font-size: 18px;
line-height: 1.9;
color: rgba(254, 254, 254, 0.92);
max-width: 640px;
margin: 0;
letter-spacing: 0.01em;
}

.edubiz .testimonials-sec {
padding: 80px 40px;
background: #FEFEFE;
position: relative;
}

.edubiz .testimonials-sec::after {
content: "";
display: block;
height: 2px;
background: linear-gradient(90deg, transparent 0%, #087542 40%, #D671FB 60%, transparent 100%);
margin-top: 80px;
}

.edubiz .testimonials-h2 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
font-weight: 800;
margin: 0 0 40px;
color: #1b1b1b;
text-shadow: 1px 2px 0 rgba(214, 113, 251, 0.10);
max-width: 1600px;
margin-left: auto;
margin-right: auto;
margin-bottom: 40px;
}

.edubiz .testimonials-h2 span {
color: #D671FB;
}

.edubiz .testimonials-grid {
max-width: 1600px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
}

.edubiz .tcard {
background: linear-gradient(135deg, #f8f0fe 0%, #eaf5f1 100%);
border-radius: 6px;
padding: 40px;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
display: flex;
flex-direction: column;
gap: 16px;
border: 1.5px solid rgba(214, 113, 251, 0.10);
transition: box-shadow 0.16s ease-out;
}

.edubiz .tcard:hover {
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
filter: brightness(0.98);
}

.edubiz .tcard-quote {
font-size: 18px;
line-height: 1.9;
letter-spacing: 0.01em;
color: #1b1b1b;
margin: 0;
font-style: italic;
}

.edubiz .tcard-person {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
margin-top: 8px;
}

.edubiz .tcard-portrait {
width: 56px;
height: 56px;
border-radius: 50%;
object-fit: cover;
object-position: center;
flex-shrink: 0;
border: 2px solid #D671FB;
}

.edubiz .tcard-name {
font-size: 18px;
line-height: 1.6;
font-weight: 700;
color: #1b1b1b;
letter-spacing: 0.01em;
}

.edubiz .tcard-role {
font-size: 14px;
line-height: 1.6;
color: #087542;
letter-spacing: 0.01em;
}

.edubiz .faq-sec {
padding: 80px 40px;
background: linear-gradient(90deg, #f4faf7 0%, #fdf4ff 100%);
position: relative;
}

.edubiz .faq-inner {
max-width: 1600px;
margin: 0 auto;
display: flex;
flex-direction: row;
gap: 80px;
}

.edubiz .faq-left {
flex: 0 0 38%;
}

.edubiz .faq-h2 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
font-weight: 800;
margin: 0 0 16px;
color: #1b1b1b;
text-shadow: 2px 2px 0 rgba(214, 113, 251, 0.10);
}

.edubiz .faq-h2 span {
color: #D671FB;
}

.edubiz .faq-intro {
font-size: 18px;
line-height: 1.9;
color: #2e2e2e;
letter-spacing: 0.01em;
margin: 0;
}

.edubiz .faq-list {
flex: 1 1 55%;
display: flex;
flex-direction: column;
gap: 8px;
}

.edubiz .faq-item {
background: #FEFEFE;
border-radius: 6px;
border: 1.5px solid rgba(214, 113, 251, 0.13);
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
}

.edubiz .faq-item summary {
padding: 16px 40px;
font-size: 18px;
line-height: 1.6;
font-weight: 700;
color: #1b1b1b;
letter-spacing: 0.01em;
cursor: pointer;
list-style: none;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 16px;
border-radius: 6px;
transition: background 0.14s ease-out, color 0.14s ease-out;
}

.edubiz .faq-item summary:hover {
background: rgba(214, 113, 251, 0.06);
color: #9b22d4;
}

.edubiz .faq-item summary::-webkit-details-marker {
display: none;
}

.edubiz .faq-indicator {
width: 22px;
height: 22px;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
}

.edubiz .faq-indicator svg {
transition: transform 0.16s ease-out;
}

.edubiz .faq-item[open] .faq-indicator svg {
transform: rotate(45deg);
}

.edubiz .faq-answer {
padding: 0 40px 16px;
font-size: 18px;
line-height: 1.9;
color: #2e2e2e;
letter-spacing: 0.01em;
}

@media (max-width: 1024px) {
.edubiz .titblock-inner {
flex-direction: column;
gap: 40px;
}

.edubiz .titblock-imgwrap {
flex: 0 0 auto;
width: 100%;
}

.edubiz .cardgrid {
grid-template-columns: 1fr;
}

.edubiz .cardgrid-head {
flex-direction: column;
align-items: flex-start;
gap: 16px;
}

.edubiz .bleed-inner {
flex-direction: column;
gap: 40px;
}

.edubiz .testimonials-grid {
grid-template-columns: 1fr;
}

.edubiz .faq-inner {
flex-direction: column;
gap: 40px;
}
}

@media (max-width: 768px) {
.edubiz .titblock {
padding: 40px 16px;
}

.edubiz .titblock-h1 {
font-size: 22px;
}

.edubiz .cardgrid-sec {
padding: 40px 16px;
}

.edubiz .cardgrid-h2 {
font-size: 22px;
}

.edubiz .card-body {
padding: 16px;
}

.edubiz .bleed-sec {
padding: 40px 16px;
}

.edubiz .bleed-h2 {
font-size: 22px;
}

.edubiz .stat-num {
font-size: 22px;
min-width: 40px;
}

.edubiz .imgbg-sec {
padding: 40px 16px;
}

.edubiz .imgbg-h2 {
font-size: 22px;
}

.edubiz .testimonials-sec {
padding: 40px 16px;
}

.edubiz .testimonials-h2 {
font-size: 22px;
}

.edubiz .faq-sec {
padding: 40px 16px;
}

.edubiz .faq-h2 {
font-size: 22px;
}

.edubiz .faq-item summary {
padding: 16px;
font-size: 14px;
}

.edubiz .faq-answer {
padding: 0 16px 16px;
font-size: 14px;
}
}

@media (max-width: 480px) {
.edubiz .pgrid {
padding: 0 16px;
}

.edubiz .card-bottom {
flex-direction: column;
align-items: flex-start;
}

.edubiz .stat-row {
padding: 16px;
}

.edubiz .titblock {
padding: 40px 8px;
}
}

.uprog {
background: #FEFEFE;
overflow-x: clip;
position: relative;
}

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

.uprog ::selection {
background: #D671FB;
color: #1b0a2a;
}

.uprog .pgwrap {
max-width: 1600px;
margin: 0 auto;
padding: 0 40px;
}

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

.uprog .titblock {
position: relative;
padding: 80px 0 0 0;
background: #FEFEFE;
}

.uprog .titblock .pgwrap {
display: flex;
flex-direction: row;
align-items: stretch;
gap: 40px;
min-height: 340px;
}

.uprog .tittext {
flex: 1 1 50%;
display: flex;
flex-direction: column;
justify-content: center;
padding: 40px 40px 80px 0;
}

.uprog .tittext h1 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #0d0d0d;
margin: 0 0 16px 0;
text-shadow: 0 3px 3px rgba(214, 113, 251, 0.07), 0 4px 25px rgba(214, 113, 251, 0.10);
}

.uprog .tittext h1 em {
font-style: italic;
color: #087542;
}

.uprog .tittext .manifesto {
font-size: 18px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #2a2a2a;
margin: 0 0 40px 0;
max-width: 520px;
}

.uprog .tittext .manifesto strong {
color: #087542;
font-style: normal;
}

.uprog .titcta {
display: inline-block;
background: linear-gradient(90deg, #D671FB 0%, #FEFEFE 100%);
color: #1b0a2a;
font-size: 14px;
letter-spacing: 0.02em;
text-transform: uppercase;
padding: 16px 40px;
border-radius: 6px;
text-decoration: none;
font-weight: 700;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
transition: background 0.18s ease-out, box-shadow 0.15s ease-out, filter 0.15s ease-out;
align-self: flex-start;
}

.uprog .titcta:hover {
background: linear-gradient(180deg, #D671FB 0%, #FEFEFE 100%);
filter: brightness(0.93);
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
}

.uprog .titimgzone {
flex: 1 1 50%;
position: relative;
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: 1fr 1fr;
gap: 8px;
border-radius: 6px;
overflow: hidden;
}

.uprog .titimgmain {
grid-column: 1 / 3;
grid-row: 1 / 2;
position: relative;
overflow: hidden;
border-radius: 6px;
}

.uprog .titimgmain img {
width: 100%;
height: 240px;
object-fit: cover;
display: block;
filter: sepia(0.18) saturate(1.1) brightness(0.97);
}

.uprog .titimgmain::after {
content: '';
position: absolute;
inset: 0;
background: rgba(214, 113, 251, 0.13);
border-radius: 6px;
pointer-events: none;
}

.uprog .timswatch {
border-radius: 6px;
background: linear-gradient(90deg, #D671FB 0%, #FEFEFE 100%);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 16px;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
}

.uprog .timswatch span {
font-size: 22px;
font-weight: 800;
color: #1b0a2a;
line-height: 1.2;
}

.uprog .timswatch small {
font-size: 14px;
color: #2a2a2a;
line-height: 1.6;
letter-spacing: 0.01em;
}

.uprog .timswatchb {
border-radius: 6px;
background: #087542;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 16px;
box-shadow: 0 3px 3px 0 rgba(8, 117, 66, 0.07);
}

.uprog .timswatchb span {
font-size: 22px;
font-weight: 800;
color: #FEFEFE;
line-height: 1.2;
}

.uprog .timswatchb small {
font-size: 14px;
color: #c5f0da;
line-height: 1.6;
letter-spacing: 0.01em;
}

.uprog .wavdiv {
width: 100%;
line-height: 0;
margin-top: -1px;
}

.uprog .wavdiv svg {
display: block;
width: 100%;
}

@media (max-width: 768px) {
.uprog .titblock .pgwrap {
flex-direction: column;
min-height: unset;
}

.uprog .tittext {
padding: 40px 0 16px 0;
}

.uprog .tittext h1 {
font-size: 22px;
}

.uprog .titimgzone {
min-height: 200px;
}
}

@media (max-width: 480px) {
.uprog .tittext h1 {
font-size: 22px;
}

.uprog .titimgmain img {
height: 160px;
}
}

.uprog .progsec {
background: #f3f3f3;
padding: 80px 0;
position: relative;
}

.uprog .progsec .pgwrap {
display: flex;
flex-direction: column;
gap: 40px;
}

.uprog .proghead {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 16px;
}

.uprog .proghead h2 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #0d0d0d;
margin: 0;
text-shadow: 0 3px 3px rgba(8, 117, 66, 0.07);
}

.uprog .proghead h2 em {
font-style: italic;
color: #D671FB;
}

.uprog .proghead p {
font-size: 18px;
line-height: 1.6;
color: #2a2a2a;
margin: 0;
max-width: 400px;
letter-spacing: 0.01em;
}

.uprog .proglist {
display: flex;
flex-direction: column;
gap: 16px;
}

.uprog .progitem {
background: #FEFEFE;
border-radius: 6px;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
display: flex;
flex-direction: row;
align-items: stretch;
overflow: hidden;
opacity: 0;
transform: translateY(-28px);
animation: dropin 0.2s ease-out forwards;
}

.uprog .progitem:nth-child(1) {
animation-delay: 0.08s;
}

.uprog .progitem:nth-child(2) {
animation-delay: 0.14s;
}

.uprog .progitem:nth-child(3) {
animation-delay: 0.20s;
}

.uprog .progitem:nth-child(4) {
animation-delay: 0.26s;
}

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

.uprog .progitem:hover {
filter: brightness(0.96);
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
transition: box-shadow 0.18s ease-out, filter 0.15s ease-out;
}

.uprog .prognum {
width: 80px;
min-width: 80px;
background: linear-gradient(90deg, #D671FB 0%, #FEFEFE 100%);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
font-size: 22px;
font-weight: 800;
color: #1b0a2a;
letter-spacing: 0.01em;
line-height: 1.2;
padding: 16px 8px;
}

.uprog .progbody {
flex: 1;
padding: 40px;
display: flex;
flex-direction: column;
gap: 8px;
}

.uprog .progbody h3 {
font-size: 22px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #0d0d0d;
margin: 0;
text-shadow: 0 3px 3px rgba(214, 113, 251, 0.07);
}

.uprog .progbody p {
font-size: 14px;
line-height: 1.9;
color: #2a2a2a;
margin: 0;
letter-^spacing: 0.01em;
}

.uprog .progmeta {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
margin-top: 8px;
}

.uprog .progbadge {
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.02em;
padding: 4px 16px;
border-radius: 36px;
font-weight: 600;
text-transform: uppercase;
}

.uprog .progbadge.grp {
background: rgba(214, 113, 251, 0.12);
color: #7a0fa8;
border: 1px solid rgba(214, 113, 251, 0.3);
}

.uprog .progbadge.ind {
background: rgba(8, 117, 66, 0.10);
color: #055a31;
border: 1px solid rgba(8, 117, 66, 0.25);
}

.uprog .progside {
width: 200px;
min-width: 160px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 8px;
padding: 40px 16px;
border-left: 2px solid rgba(214, 113, 251, 0.13);
background: rgba(214, 113, 251, 0.03);
}

.uprog .progprice {
font-size: 22px;
font-weight: 800;
color: #087542;
line-height: 1.2;
letter-spacing: 0.01em;
}

.uprog .progdur {
font-size: 14px;
color: #555;
line-height: 1.6;
letter-spacing: 0.01em;
}

.uprog .progsec .progcta {
display: inline-block;
font-size: 14px;
letter-spacing: 0.02em;
text-transform: uppercase;
font-weight: 700;
color: #FEFEFE;
background: #087542;
border-radius: 6px;
padding: 8px 16px;
text-decoration: none;
box-shadow: 0 3px 3px 0 rgba(8, 117, 66, 0.07);
transition: background 0.18s ease-out, filter 0.15s ease-out;
}

.uprog .progsec .progcta:hover {
filter: brightness(0.9);
background: linear-gradient(90deg, #087542 0%, #D671FB 100%);
}

@media (max-width: 1024px) {
.uprog .proghead {
flex-direction: column;
align-items: flex-start;
}

.uprog .proghead h2 {
font-size: 22px;
}

.uprog .progside {
width: 140px;
min-width: 120px;
}
}

@media (max-width: 768px) {
.uprog .progitem {
flex-direction: column;
}

.uprog .prognum {
width: 100%;
min-width: unset;
flex-direction: row;
gap: 8px;
padding: 8px 16px;
justify-content: flex-start;
}

.uprog .progside {
width: 100%;
min-width: unset;
border-left: none;
border-top: 2px solid rgba(214, 113, 251, 0.13);
flex-direction: row;
justify-content: space-between;
padding: 16px;
}

.uprog .progbody {
padding: 16px;
}
}

.uprog .formatsec {
background: #FEFEFE;
padding: 80px 0;
position: relative;
}

.uprog .formatsec .pgwrap {
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start;
}

.uprog .fmtleft {
flex: 1 1 45%;
display: flex;
flex-direction: column;
gap: 16px;
}

.uprog .fmtleft h2 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #0d0d0d;
margin: 0;
text-shadow: 0 3px 3px rgba(214, 113, 251, 0.07), 0 4px 25px rgba(214, 113, 251, 0.10);
}

.uprog .fmtleft h2 em {
font-style: italic;
color: #087542;
}

.uprog .fmtleft p {
font-size: 18px;
line-height: 1.6;
color: #2a2a2a;
margin: 0;
letter-spacing: 0.01em;
}

.uprog .fmtblocks {
display: flex;
flex-direction: column;
gap: 8px;
margin-top: 16px;
}

.uprog .fmtblk {
background: #f3f3f3;
border-radius: 6px;
padding: 16px 40px;
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
transition: box-shadow 0.20s cubic-bezier(0.4, 0, 0.6, 1), filter 0.18s ease-out;
}

.uprog .fmtblk:hover {
filter: brightness(0.96);
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
}

.uprog .fmtico {
width: 40px;
height: 40px;
min-width: 40px;
border-radius: 6px;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
}

.uprog .fmtico.pur {
background: #D671FB;
}

.uprog .fmtico.grn {
background: #087542;
}

.uprog .fmtico svg {
display: block;
}

.uprog .fmtblk h5 {
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.02em;
color: #0d0d0d;
margin: 0 0 4px 0;
text-transform: uppercase;
font-weight: 700;
}

.uprog .fmtblk p {
font-size: 14px;
line-height: 1.6;
color: #2a2a2a;
margin: 0;
letter-spacing: 0.01em;
}

.uprog .fmtright {
flex: 1 1 50%;
display: flex;
flex-direction: column;
gap: 16px;
align-items: center;
}

.uprog .fmtright h3 {
font-size: 22px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #0d0d0d;
margin: 0;
align-self: flex-start;
text-shadow: 0 3px 3px rgba(8, 117, 66, 0.07);
}

.uprog .funnel {
display: flex;
flex-direction: column;
align-items: center;
gap: 4px;
width: 100%;
}

.uprog .fnlstep {
display: flex;
flex-direction: column;
align-items: center;
width: 100%;
opacity: 0;
transform: translateY(-18px);
animation: dropin 0.2s ease-out forwards;
}

.uprog .fnlstep:nth-child(1) {
animation-delay: 0.10s;
}

.uprog .fnlstep:nth-child(2) {
animation-delay: 0.17s;
}

.uprog .fnlstep:nth-child(3) {
animation-delay: 0.24s;
}

.uprog .fnlstep:nth-child(4) {
animation-delay: 0.31s;
}

.uprog .fnlbar {
border-radius: 6px;
height: 56px;
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
font-weight: 700;
letter-spacing: 0.02em;
color: #FEFEFE;
text-transform: uppercase;
transition: filter 0.15s ease-out;
}

.uprog .fnlbar:hover {
filter: brightness(0.9);
}

.uprog .fnlstep:nth-child(1) .fnlbar {
width: 100%;
background: linear-gradient(90deg, #D671FB 0%, #b84fe0 100%);
}

.uprog .fnlstep:nth-child(2) .fnlbar {
width: 82%;
background: linear-gradient(90deg, #a84fd1 0%, #087542 100%);
}

.uprog .fnlstep:nth-child(3) .fnlbar {
width: 64%;
background: linear-gradient(90deg, #087542 0%, #065c34 100%);
}

.uprog .fnlstep:nth-child(4) .fnlbar {
width: 46%;
background: #065c34;
}

.uprog .fnllabel {
font-size: 14px;
line-height: 1.6;
color: #555;
letter-spacing: 0.01em;
margin-top: 4px;
text-align: center;
}

.uprog .fnlarrow {
width: 0;
height: 0;
border-left: 12px solid transparent;
border-right: 12px solid transparent;
border-top: 10px solid rgba(214, 113, 251, 0.25);
margin: 0 auto;
}

@media (max-width: 1024px) {
.uprog .formatsec .pgwrap {
flex-direction: column;
gap: 40px;
}

.uprog .fmtleft h2 {
font-size: 22px;
}
}

@media (max-width: 768px) {
.uprog .formatsec {
padding: 40px 0;
}
}

.uprog .instrsec {
background: #f3f3f3;
padding: 80px 0;
position: relative;
}

.uprog .instrsec .pgwrap {
display: flex;
flex-direction: column;
gap: 40px;
}

.uprog .instrhead h2 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #0d0d0d;
margin: 0 0 8px 0;
text-shadow: 0 3px 3px rgba(8, 117, 66, 0.07), 0 4px 25px rgba(8, 117, 66, 0.10);
}

.uprog .instrhead h2 em {
font-style: italic;
color: #D671FB;
}

.uprog .instrhead p {
font-size: 18px;
line-height: 1.6;
color: #2a2a2a;
margin: 0;
max-width: 680px;
letter-spacing: 0.01em;
}

.uprog .instrfeat {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: auto auto;
gap: 16px;
}

.uprog .icard {
background: #FEFEFE;
border-radius: 6px;
padding: 40px;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
display: flex;
flex-direction: column;
gap: 8px;
opacity: 0;
transform: translateY(-20px);
animation: dropin 0.2s ease-out forwards;
transition: box-shadow 0.18s ease-out, filter 0.15s ease-out;
}

.uprog .icard:nth-child(1) {
animation-delay: 0.10s;
}

.uprog .icard:nth-child(2) {
animation-delay: 0.17s;
}

.uprog .icard:nth-child(3) {
animation-delay: 0.24s;
}

.uprog .icard:nth-child(4) {
animation-delay: 0.31s;
}

.uprog .icard:hover {
filter: brightness(0.97);
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
}

.uprog .icard.wide {
grid-column: 1 / 3;
flex-direction: row;
align-items: center;
gap: 40px;
background: linear-gradient(90deg, #087542 0%, #0a9450 100%);
}

.uprog .icard.wide h4 {
color: #FEFEFE;
}

.uprog .icard.wide p {
color: #c5f0da;
}

.uprog .icard.wide .iname {
color: #FEFEFE;
}

.uprog .icard.wide .irole {
color: #a8e6c4;
}

.uprog .icardico {
width: 48px;
height: 48px;
min-width: 48px;
border-radius: 48px;
background: linear-gradient(90deg, #D671FB 0%, #FEFEFE 100%);
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
}

.uprog .icard h4 {
font-size: 22px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #0d0d0d;
margin: 0;
text-shadow: 0 3px 3px rgba(214, 113, 251, 0.07);
}

.uprog .icard p {
font-size: 14px;
line-height: 1.9;
color: #2a2a2a;
margin: 0;
letter-spacing: 0.01em;
}

.uprog .iname {
font-size: 14px;
font-weight: 700;
color: #087542;
letter-spacing: 0.02em;
text-transform: uppercase;
}

.uprog .irole {
font-size: 14px;
color: #555;
letter-spacing: 0.01em;
line-height: 1.6;
}

.uprog .instrfeat .widecontent {
flex: 1;
display: flex;
flex-direction: column;
gap: 8px;
}

.uprog .instrfeat .wideside {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 4px;
min-width: 140px;
padding: 16px;
border-radius: 6px;
background: rgba(255, 255, 255, 0.12);
}

.uprog .instrfeat .wideside .bignum {
font-size: 56px;
font-weight: 800;
color: #FEFEFE;
line-height: 1.2;
letter-spacing: 0.01em;
}

.uprog .instrfeat .wideside small {
font-size: 14px;
color: #c5f0da;
line-height: 1.6;
letter-spacing: 0.01em;
text-align: center;
}

.uprog .zigdiv {
width: 100%;
line-height: 0;
}

.uprog .zigdiv svg {
display: block;
width: 100%;
}

@media (max-width: 768px) {
.uprog .instrfeat {
grid-template-columns: 1fr;
}

.uprog .icard.wide {
grid-column: 1 / 2;
flex-direction: column;
}

.uprog .instrhead h2 {
font-size: 22px;
}

.uprog .instrfeat .wideside {
flex-direction: row;
gap: 16px;
width: 100%;
}
}

@media (max-width: 480px) {
.uprog .instrsec {
padding: 40px 0;
}

.uprog .icard {
padding: 16px;
}

.uprog .icard.wide {
padding: 16px;
gap: 16px;
}
}

.uprog .decorcurve {
position: absolute;
pointer-events: none;
overflow: hidden;
border-radius: 0 0 0 48px;
}

.ctus {
background: #FEFEFE;
color: #1b1b1b;
overflow-x: clip;
position: relative;
}

.ctus ::selection {
background: #D671FB;
color: #1b1b1b;
}

.ctus .pg-wrap {
max-width: 1600px;
margin: 0 auto;
padding: 0 40px;
}

.ctus .reach-block {
position: relative;
min-height: 92vh;
display: flex;
flex-direction: row;
align-items: stretch;
overflow: hidden;
}

.ctus .reach-img-zone {
position: relative;
width: 42%;
flex-shrink: 0;
overflow: hidden;
}

.ctus .reach-img-zone img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
opacity: 0.82;
display: block;
filter: blur(0px) saturate(1.1);
transition: opacity 0.18s ease-out;
}

.ctus .reach-img-overlay {
position: absolute;
inset: 0;
background: linear-gradient(105deg, rgba(214, 113, 251, 0.22) 0%, rgba(8, 117, 66, 0.13) 100%);
pointer-events: none;
}

.ctus .reach-img-dots {
position: absolute;
inset: 0;
pointer-events: none;
overflow: hidden;
}

.ctus .reach-img-dots::before {
content: "";
position: absolute;
inset: 0;
background-image: radial-gradient(circle, rgba(214, 113, 251, 0.18) 1px, transparent 1px);
background-size: 28px 28px;
opacity: 0.55;
}

.ctus .reach-text-zone {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
padding: 80px 80px 80px 80px;
position: relative;
background: #FEFEFE;
}

.ctus .reach-accent-bar {
width: 48px;
height: 4px;
background: #D671FB;
border-radius: 6px;
margin-bottom: 16px;
animation: barIn 0.16s ease-out both;
}

.ctus .reach-text-zone h1 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #1b1b1b;
margin: 0 0 16px 0;
text-shadow: 0 3px 3px rgba(214, 113, 251, 0.07);
animation: fadeUp 0.18s ease-out 0.04s both;
}

.ctus .reach-text-zone h1 em {
font-style: italic;
color: #087542;
}

.ctus .reach-sub {
font-size: 18px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #3a3a3a;
max-width: 420px;
margin: 0 0 40px 0;
animation: fadeUp 0.18s ease-out 0.09s both;
}

.ctus .reach-info-list {
list-style: none;
padding: 0;
margin: 0 0 40px 0;
display: flex;
flex-direction: column;
gap: 16px;
animation: fadeUp 0.20s ease-out 0.13s both;
}

.ctus .reach-info-list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.02em;
color: #2a2a2a;
}

.ctus .info-ico {
width: 36px;
height: 36px;
border-radius: 6px;
background: linear-gradient(90deg, #D671FB 0%, #FEFEFE 100%);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
transition: background 0.16s ease-out, box-shadow 0.16s ease-out;
}

.ctus .reach-info-list li:hover .info-ico {
background: linear-gradient(90deg, #087542 0%, #D671FB 100%);
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
}

.ctus .info-ico svg {
width: 18px;
height: 18px;
fill: #1b1b1b;
}

.ctus .info-text strong {
display: block;
font-size: 14px;
letter-spacing: 0.02em;
color: #087542;
margin-bottom: 4px;
}

.ctus .reach-curve-deco {
position: absolute;
bottom: 40px;
right: 0;
width: 120px;
height: 60px;
pointer-events: none;
overflow: hidden;
}

.ctus .reach-curve-deco svg {
width: 100%;
height: 100%;
}

@keyframes fadeUp {
from {
opacity: 0;
transform: translateY(14px);
}

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

@keyframes barIn {
from {
width: 0;
opacity: 0;
}

to {
width: 48px;
opacity: 1;
}
}

.ctus .form-block {
background: linear-gradient(90deg, rgba(214, 113, 251, 0.07) 0%, rgba(8, 117, 66, 0.05) 100%);
position: relative;
padding: 80px 0;
}

.ctus .form-block::before {
content: "";
display: block;
height: 3px;
background: linear-gradient(90deg, #D671FB 0%, #087542 100%);
position: absolute;
top: 0;
left: 0;
right: 0;
}

.ctus .form-inner {
max-width: 1600px;
margin: 0 auto;
padding: 0 40px;
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start;
}

.ctus .form-aside {
width: 340px;
flex-shrink: 0;
padding-top: 8px;
}

.ctus .form-aside-accent {
width: 36px;
height: 4px;
background: #087542;
border-radius: 6px;
margin-bottom: 16px;
}

.ctus .form-aside h2 {
font-size: 22px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #1b1b1b;
margin: 0 0 16px 0;
text-shadow: 1px 1px 0 rgba(8, 117, 66, 0.10);
}

.ctus .form-aside h2 em {
font-style: italic;
color: #D671FB;
}

.ctus .form-aside p {
font-size: 14px;
line-height: 1.9;
letter-spacing: 0.01em;
color: #3a3a3a;
margin: 0 0 16px 0;
}

.ctus .form-aside-link {
display: inline-block;
font-size: 14px;
letter-spacing: 0.02em;
color: #087542;
text-decoration: underline;
text-underline-offset: 3px;
transition: color 0.14s ease-out, opacity 0.14s ease-out;
margin-top: 8px;
}

.ctus .form-aside-link:hover {
color: #D671FB;
opacity: 0.85;
}

.ctus .form-aside-img {
margin-top: 40px;
border-radius: 6px;
overflow: hidden;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
position: relative;
}

.ctus .form-aside-img img {
width: 100%;
height: 220px;
object-fit: cover;
object-position: center;
display: block;
opacity: 0.88;
transition: opacity 0.18s ease-out;
}

.ctus .form-aside-img:hover img {
opacity: 0.72;
}

.ctus .form-aside-img-overlay {
position: absolute;
inset: 0;
background: linear-gradient(90deg, rgba(214, 113, 251, 0.15) 0%, rgba(8, 117, 66, 0.10) 100%);
pointer-events: none;
border-radius: 6px;
}

.ctus .form-main {
flex: 1;
}

.ctus .edit-form {
display: flex;
flex-direction: column;
gap: 40px;
}

.ctus .form-row {
display: flex;
flex-direction: row;
gap: 16px;
}

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

.ctus .form-field label {
font-size: 14px;
letter-spacing: 0.02em;
color: #1b1b1b;
font-weight: 600;
}

.ctus .form-field input[type="text"],
.ctus .form-field input[type="tel"] {
height: 52px;
border: 1.5px solid #c8c8c8;
border-radius: 6px;
padding: 0 16px;
font-size: 14px;
letter-spacing: 0.01em;
color: #1b1b1b;
background: #FEFEFE;
outline: none;
transition: border-color 0.14s ease-out, box-shadow 0.14s ease-out;
box-shadow: inset 0 1px 2px rgba(214, 113, 251, 0.05);
width: 100%;
box-sizing: border-box;
}

.ctus .form-field input[type="text"]:focus,
.ctus .form-field input[type="tel"]:focus {
border-color: #D671FB;
box-shadow: 0 0 0 3px rgba(214, 113, 251, 0.10), inset 0 1px 2px rgba(214, 113, 251, 0.07);
}

.ctus .form-field input::placeholder {
color: #9a9a9a;
font-size: 14px;
}

.ctus .svc-group {
display: flex;
flex-direction: column;
gap: 8px;
}

.ctus .svc-group-label {
font-size: 14px;
letter-spacing: 0.02em;
color: #1b1b1b;
font-weight: 600;
margin-bottom: 8px;
}

.ctus .svc-options {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
}

.ctus .svc-opt {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
padding: 8px 16px;
border: 1.5px solid #c8c8c8;
border-radius: 36px;
cursor: pointer;
font-size: 14px;
letter-spacing: 0.01em;
color: #2a2a2a;
background: #FEFEFE;
transition: border-color 0.15s cubic-bezier(0.4, 0, 0.6, 1), background 0.15s cubic-bezier(0.4, 0, 0.6, 1), color 0.15s cubic-bezier(0.4, 0, 0.6, 1);
user-select: none;
position: relative;
}

.ctus .svc-opt:hover {
border-color: #D671FB;
background: rgba(214, 113, 251, 0.05);
color: #1b1b1b;
}

.ctus .svc-opt input[type="checkbox"] {
width: 16px;
height: 16px;
accent-color: #D671FB;
cursor: pointer;
flex-shrink: 0;
}

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

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

.ctus .privacy-row label {
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #3a3a3a;
}

.ctus .privacy-row label a {
color: #087542;
text-decoration: underline;
text-underline-offset: 2px;
transition: color 0.13s ease-out;
}

.ctus .privacy-row label a:hover {
color: #D671FB;
}

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

.ctus .btn-submit {
display: inline-block;
padding: 16px 40px;
border-radius: 48px;
background: linear-gradient(90deg, #D671FB 0%, #087542 100%);
color: #FEFEFE;
font-size: 14px;
letter-spacing: 0.02em;
font-weight: 700;
text-transform: uppercase;
border: none;
cursor: pointer;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
transition: background 0.16s ease-out, box-shadow 0.16s ease-out, filter 0.16s ease-out;
outline: none;
position: relative;
overflow: hidden;
}

.ctus .btn-submit:hover {
background: linear-gradient(270deg, #D671FB 0%, #087542 100%);
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
filter: brightness(0.93);
}

.ctus .btn-submit:focus {
box-shadow: 0 0 0 3px rgba(214, 113, 251, 0.22), 0 4px 25px 0 rgba(214, 113, 251, 0.10);
}

.ctus .btn-submit:active {
filter: brightness(0.87);
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
}

.ctus .form-note {
font-size: 14px;
line-height: 1.6;
color: #6a6a6a;
letter-spacing: 0.01em;
}

@media (max-width: 1024px) {
.ctus .reach-block {
flex-direction: column;
min-height: auto;
}

.ctus .reach-img-zone {
width: 100%;
height: 340px;
}

.ctus .reach-text-zone {
padding: 40px 40px;
}

.ctus .reach-text-zone h1 {
font-size: 40px;
}

.ctus .form-inner {
flex-direction: column;
gap: 40px;
}

.ctus .form-aside {
width: 100%;
}
}

@media (max-width: 768px) {
.ctus .reach-text-zone {
padding: 40px 16px;
}

.ctus .reach-text-zone h1 {
font-size: 32px;
}

.ctus .form-inner {
padding: 0 16px;
}

.ctus .form-row {
flex-direction: column;
}

.ctus .svc-options {
flex-direction: column;
}

.ctus .svc-opt {
border-radius: 6px;
}

.ctus .form-block {
padding: 40px 0;
}
}

@media (max-width: 480px) {
.ctus .reach-text-zone h1 {
font-size: 22px;
}

.ctus .reach-sub {
font-size: 14px;
}

.ctus .pg-wrap {
padding: 0 16px;
}

.ctus .btn-submit {
padding: 16px 24px;
font-size: 14px;
}
}

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

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

.abtus ::selection {
background-color: #D671FB;
color: #1a1a1a;
}

@keyframes tempShift {
0% {
background-color: #fff;
}

40% {
background-color: #fdf6ff;
}

70% {
background-color: #f6fff9;
}

100% {
background-color: #fff;
}
}

.abtus .pgwrap {
max-width: 1600px;
margin: 0 auto;
padding: 0 40px;
}

.abtus .titblk {
padding: 80px 40px;
max-width: 1600px;
margin: 0 auto;
display: grid;
grid-template-columns: 340px 1fr;
gap: 80px;
align-items: center;
}

.abtus .titblk .imgcard {
position: relative;
border-radius: 6px;
overflow: hidden;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
flex-shrink: 0;
}

.abtus .titblk .imgcard img {
width: 340px;
height: 420px;
object-fit: cover;
object-position: center;
display: block;
transition: transform 0.18s ease-out, filter 0.18s ease-out;
filter: blur(0px);
}

.abtus .titblk .imgcard:hover img {
transform: scale(1.03);
filter: brightness(0.92);
}

.abtus .titblk .imgcard::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 120px;
background: linear-gradient(to top, rgba(8, 117, 66, 0.18), transparent);
pointer-events: none;
}

.abtus .titblk .txtzone {
position: relative;
}

.abtus .titblk .txtzone .qtmark {
position: absolute;
top: -16px;
left: -8px;
font-size: 180px;
line-height: 1.2;
color: #D671FB;
opacity: 0.08;
font-style: italic;
pointer-events: none;
user-select: none;
z-index: 0;
}

.abtus .titblk .txtzone .bracket {
position: absolute;
top: 0;
left: -16px;
width: 4px;
height: 40px;
border-top: 2px solid #087542;
border-left: 2px solid #087542;
border-radius: 6px 0 0 0;
pointer-events: none;
}

.abtus .titblk .txtzone .bracketbr {
position: absolute;
bottom: 0;
right: 0;
width: 40px;
height: 4px;
border-bottom: 2px solid #D671FB;
border-right: 2px solid #D671FB;
border-radius: 0 0 6px 0;
pointer-events: none;
}

.abtus .titblk .txtzone h1 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #181818;
text-shadow: 0 3px 3px rgba(214, 113, 251, 0.07);
margin: 0 0 16px 0;
position: relative;
z-index: 1;
}

.abtus .titblk .txtzone h1 em {
font-style: italic;
color: #D671FB;
background: linear-gradient(90deg, #D671FB, #fff);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.abtus .titblk .txtzone .tagline {
font-size: 18px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #444;
max-width: 560px;
position: relative;
z-index: 1;
margin: 0 0 40px 0;
}

.abtus .titblk .txtzone .metarow {
display: flex;
flex-direction: row;
gap: 40px;
align-items: flex-start;
position: relative;
z-index: 1;
}

.abtus .titblk .txtzone .metarow .metaitem {
display: flex;
flex-direction: column;
gap: 4px;
}

.abtus .titblk .txtzone .metarow .metaitem .mval {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #087542;
font-weight: 700;
}

.abtus .titblk .txtzone .metarow .metaitem .mlbl {
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.02em;
color: #555;
text-transform: uppercase;
}

.abtus .titblk .txtzone .ctarow {
margin-top: 40px;
display: flex;
flex-direction: row;
gap: 16px;
align-items: center;
position: relative;
z-index: 1;
}

.abtus .titblk .txtzone .ctarow .btn-primary {
display: inline-block;
padding: 16px 40px;
background: linear-gradient(90deg, #D671FB, #087542);
color: #fff;
font-size: 14px;
letter-spacing: 0.02em;
text-transform: uppercase;
border-radius: 6px;
text-decoration: none;
font-weight: 700;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
transition: background 0.16s ease-out, filter 0.16s ease-out;
border: none;
cursor: pointer;
}

.abtus .titblk .txtzone .ctarow .btn-primary:hover {
background: linear-gradient(270deg, #D671FB, #087542);
filter: brightness(0.9);
}

.abtus .titblk .txtzone .ctarow .lnksec {
font-size: 14px;
letter-spacing: 0.02em;
color: #087542;
text-decoration: underline;
text-underline-offset: 3px;
transition: color 0.14s ease-out;
}

.abtus .titblk .txtzone .ctarow .lnksec:hover {
color: #D671FB;
filter: brightness(0.85);
}

.abtus .detblk {
animation: tempShift 18s ease-in-out infinite;
padding: 80px 0;
border-top: 1px solid rgba(214, 113, 251, 0.12);
border-bottom: 1px solid rgba(8, 117, 66, 0.10);
}

.abtus .detblk .pgwrap {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 80px;
align-items: start;
}

.abtus .detblk .leftcol {
display: flex;
flex-direction: column;
gap: 40px;
}

.abtus .detblk .leftcol h2 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #181818;
text-shadow: 2px 2px 0 rgba(214, 113, 251, 0.10), -1px -1px 0 rgba(8, 117, 66, 0.06);
margin: 0;
}

.abtus .detblk .leftcol h2 em {
font-style: italic;
color: #087542;
}

.abtus .detblk .leftcol .desc {
font-size: 18px;
line-height: 1.9;
letter-spacing: 0.01em;
color: #333;
margin: 0;
}

.abtus .detblk .leftcol .imgpair {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
}

.abtus .detblk .leftcol .imgpair .imgwrap {
border-radius: 6px;
overflow: hidden;
box-shadow: 0 3px 3px 0 rgba(8, 117, 66, 0.07);
position: relative;
}

.abtus .detblk .leftcol .imgpair .imgwrap img {
width: 100%;
height: 200px;
object-fit: cover;
object-position: center;
display: block;
transition: transform 0.20s cubic-bezier(0.4, 0, 0.6, 1), filter 0.20s cubic-bezier(0.4, 0, 0.6, 1);
}

.abtus .detblk .leftcol .imgpair .imgwrap:hover img {
transform: scale(1.05);
filter: brightness(0.88);
}

.abtus .detblk .leftcol .imgpair .imgwrap.wide {
grid-column: 1 / -1;
}

.abtus .detblk .leftcol .imgpair .imgwrap.wide img {
height: 260px;
}

.abtus .detblk .rightcol {
display: flex;
flex-direction: column;
gap: 40px;
position: relative;
}

.abtus .detblk .rightcol::before {
content: "";
position: absolute;
top: 0;
left: -40px;
width: 1px;
height: 100%;
background: linear-gradient(to bottom, transparent, rgba(214, 113, 251, 0.18), transparent);
}

.abtus .detblk .rightcol h3 {
font-size: 22px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #181818;
margin: 0;
text-shadow: 0 3px 3px rgba(8, 117, 66, 0.07);
}

.abtus .detblk .rightcol .featlist {
display: flex;
flex-direction: column;
gap: 16px;
list-style: none;
margin: 0;
padding: 0;
}

.abtus .detblk .rightcol .featlist li {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
padding: 16px;
border-radius: 6px;
background-color: #fff;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
border: 1px solid rgba(214, 113, 251, 0.10);
transition: background-color 0.15s ease-out, box-shadow 0.15s ease-out;
position: relative;
overflow: hidden;
}

.abtus .detblk .rightcol .featlist li::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 3px;
height: 100%;
background: linear-gradient(180deg, #D671FB, #087542);
border-radius: 6px 0 0 6px;
}

.abtus .detblk .rightcol .featlist li:hover {
background-color: #fdf6ff !important;
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
}

.abtus .detblk .rightcol .featlist li .ficon {
width: 40px;
height: 40px;
border-radius: 6px;
background: linear-gradient(90deg, #D671FB, #087542);
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
}

.abtus .detblk .rightcol .featlist li .ficon svg {
width: 20px;
height: 20px;
fill: #fff;
}

.abtus .detblk .rightcol .featlist li .ftxt {
display: flex;
flex-direction: column;
gap: 4px;
}

.abtus .detblk .rightcol .featlist li .ftxt .ftitle {
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.02em;
color: #181818;
font-weight: 700;
text-transform: uppercase;
}

.abtus .detblk .rightcol .featlist li .ftxt .fdesc {
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #444;
margin: 0;
}

.abtus .detblk .rightcol .teamcard {
border-radius: 6px;
background-color: #fff;
box-shadow: 0 4px 25px 0 rgba(8, 117, 66, 0.10);
padding: 40px;
display: flex;
flex-direction: row;
gap: 16px;
align-items: center;
border: 1px solid rgba(8, 117, 66, 0.10);
position: relative;
}

.abtus .detblk .rightcol .teamcard .bracketcorner {
position: absolute;
top: 8px;
left: 8px;
width: 16px;
height: 16px;
border-top: 2px solid #087542;
border-left: 2px solid #087542;
border-radius: 6px 0 0 0;
pointer-events: none;
}

.abtus .detblk .rightcol .teamcard .bracketcornerb {
position: absolute;
bottom: 8px;
right: 8px;
width: 16px;
height: 16px;
border-bottom: 2px solid #D671FB;
border-right: 2px solid #D671FB;
border-radius: 0 0 6px 0;
pointer-events: none;
}

.abtus .detblk .rightcol .teamcard .portrait {
width: 80px;
height: 80px;
border-radius: 50%;
overflow: hidden;
flex-shrink: 0;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
}

.abtus .detblk .rightcol .teamcard .portrait img {
width: 80px;
height: 80px;
object-fit: cover;
object-position: center;
display: block;
transition: filter 0.14s ease-out;
}

.abtus .detblk .rightcol .teamcard .portrait:hover img {
filter: brightness(0.9);
}

.abtus .detblk .rightcol .teamcard .persinfo {
display: flex;
flex-direction: column;
gap: 4px;
}

.abtus .detblk .rightcol .teamcard .persinfo .pname {
font-size: 18px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #181818;
font-weight: 700;
margin: 0;
}

.abtus .detblk .rightcol .teamcard .persinfo .prole {
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.02em;
color: #087542;
text-transform: uppercase;
}

.abtus .detblk .rightcol .teamcard .persinfo .pquote {
font-size: 14px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #555;
font-style: italic;
margin: 0;
}

.abtus .stepsep {
height: 40px;
position: relative;
overflow: hidden;
}

.abtus .stepsep svg {
width: 100%;
height: 40px;
display: block;
}

@media (max-width: 1024px) {
.abtus .titblk {
grid-template-columns: 260px 1fr;
gap: 40px;
padding: 80px 40px;
}

.abtus .titblk .imgcard img {
width: 260px;
height: 320px;
}

.abtus .titblk .txtzone h1 {
font-size: 56px;
}

.abtus .detblk .pgwrap {
grid-template-columns: 1fr;
gap: 40px;
}

.abtus .detblk .rightcol::before {
display: none;
}
}

@media (max-width: 768px) {
.abtus .titblk {
grid-template-columns: 1fr;
gap: 40px;
padding: 40px 16px;
}

.abtus .titblk .imgcard {
max-width: 100%;
}

.abtus .titblk .imgcard img {
width: 100%;
height: 260px;
}

.abtus .titblk .txtzone h1 {
font-size: 56px;
}

.abtus .titblk .txtzone .metarow {
gap: 16px;
flex-wrap: wrap;
}

.abtus .titblk .txtzone .metarow .metaitem .mval {
font-size: 22px;
}

.abtus .detblk {
padding: 40px 0;
}

.abtus .detblk .pgwrap {
padding: 0 16px;
gap: 40px;
}

.abtus .detblk .leftcol .imgpair {
grid-template-columns: 1fr;
}

.abtus .detblk .leftcol .imgpair .imgwrap.wide {
grid-column: 1;
}

.abtus .detblk .rightcol .teamcard {
flex-direction: column;
align-items: flex-start;
padding: 16px;
}
}

@media (max-width: 480px) {
.abtus .titblk {
padding: 40px 8px;
}

.abtus .titblk .txtzone h1 {
font-size: 22px;
}

.abtus .titblk .txtzone .ctarow {
flex-direction: column;
align-items: flex-start;
}

.abtus .detblk .pgwrap {
padding: 0 8px;
}

.abtus .detblk .leftcol h2 {
font-size: 22px;
}
}

.bse {
max-width: 1600px;
margin: 0 auto;
overflow-x: clip;
}

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

.bse ::selection {
background: #D671FB;
color: #111;
}

.bse .titblk {
display: flex;
flex-direction: row;
min-height: 600px;
position: relative;
background: linear-gradient(112deg, #f0e6ff 0%, #e8f7ef 40%, #D671FB22 70%, #08754222 100%);
overflow: hidden;
}

.bse .titblk::before {
content: "";
position: absolute;
top: -80px;
left: -40px;
width: 520px;
height: 520px;
border: 2px solid rgba(214, 113, 251, 0.18);
border-radius: 50%;
pointer-events: none;
}

.bse .titblk::after {
content: "";
position: absolute;
bottom: -60px;
right: 120px;
width: 340px;
height: 340px;
border: 1.5px solid rgba(8, 117, 66, 0.14);
border-radius: 50%;
pointer-events: none;
}

.bse .titblk .curvedeco {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 0;
}

.bse .titblk .txside {
flex: 1 1 55%;
display: flex;
flex-direction: column;
justify-content: center;
padding: 80px 40px 80px 80px;
position: relative;
z-index: 1;
}

.bse .titblk .imgside {
flex: 1 1 45%;
position: relative;
z-index: 1;
overflow: hidden;
}

.bse .titblk .imgside img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
filter: saturate(0.55) contrast(1.05);
display: block;
animation: wipein 0.82s cubic-bezier(0.4, 0, 0.6, 1) both;
}

@keyframes wipein {
from {
clip-path: inset(0 100% 0 0);
}

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

.bse .titblk .kicker {
font-size: 14px;
letter-spacing: 0.14em;
color: #087542;
text-transform: uppercase;
margin-bottom: 16px;
line-height: 1.2;
}

.bse .titblk .kicker span {
display: inline-block;
width: 32px;
height: 1px;
background: #087542;
vertical-align: middle;
margin-right: 8px;
}

.bse .titblk h1 {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #111;
margin: 0 0 16px 0;
text-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
}

.bse .titblk h1 em {
font-style: italic;
color: #087542;
}

.bse .titblk .subcap {
display: block;
font-size: 14px;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #555;
border-top: 1px solid rgba(8, 117, 66, 0.3);
padding-top: 8px;
margin-bottom: 40px;
line-height: 1.2;
}

.bse .titblk .txbody {
font-size: 18px;
line-height: 1.6;
color: #222;
max-width: 520px;
margin-bottom: 40px;
letter-spacing: 0.01em;
}

.bse .titblk .btnrow {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
}

.bse .titblk .btnrow a {
text-transform: uppercase;
letter-spacing: 0.08em;
font-size: 14px;
font-weight: 700;
padding: 16px 40px;
border-radius: 6px;
text-decoration: none;
transition: background 0.18s ease-out, color 0.18s ease-out, box-shadow 0.18s ease-out;
display: inline-block;
}

.bse .titblk .btnrow .prim {
background: #087542;
color: #fff;
box-shadow: 0 4px 25px 0 rgba(8, 117, 66, 0.10);
}

.bse .titblk .btnrow .prim:hover {
background: linear-gradient(90deg, #087542 0%, #0a9452 100%);
box-shadow: 0 9px 48px 0 rgba(8, 117, 66, 0.13);
filter: brightness(0.92);
}

.bse .titblk .btnrow .sec {
background: transparent;
color: #087542;
border: 1.5px solid #087542;
}

.bse .titblk .btnrow .sec:hover {
background: rgba(8, 117, 66, 0.06);
filter: brightness(0.93);
}

.bse .supdiv {
border-top: none;
border-bottom: none;
padding: 40px 80px;
display: flex;
flex-direction: row;
align-items: center;
gap: 40px;
}

.bse .supdiv::after {
content: "";
display: block;
flex: 1;
border-top: 1px dotted #bbb;
}

.bse .supdiv::before {
content: "";
display: block;
flex: 1;
border-top: 1px dotted #bbb;
}

.bse .supdiv .divlabel {
font-size: 14px;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #999;
white-space: nowrap;
}

.bse .supblk {
padding: 80px 80px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
background: #fff;
position: relative;
}

.bse .supblk .mathbg {
position: absolute;
top: 16px;
right: 40px;
font-size: 220px;
line-height: 1;
color: rgba(214, 113, 251, 0.06);
font-style: italic;
pointer-events: none;
user-select: none;
letter-spacing: -0.05em;
}

.bse .supblk .suphead {
grid-column: 1 / -1;
}

.bse .supblk .suphead h2 {
font-size: 56px;
line-height: 1.2;
color: #111;
margin: 0 0 8px 0;
letter-spacing: 0.01em;
text-shadow: 1px 2px 0 rgba(214, 113, 251, 0.10);
}

.bse .supblk .suphead h2 em {
font-style: italic;
color: #D671FB;
}

.bse .supblk .suphead .subcap {
display: block;
font-size: 14px;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #777;
border-top: 1px solid rgba(214, 113, 251, 0.3);
padding-top: 8px;
margin-bottom: 40px;
}

.bse .supblk .cardgrid {
grid-column: 1 / -1;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}

.bse .supblk .scard {
background: #f7f2ff;
border-radius: 6px;
padding: 40px;
border-top: 3px solid #D671FB;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
transition: box-shadow 0.16s ease-out, filter 0.16s ease-out;
}

.bse .supblk .scard:hover {
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
filter: brightness(0.97);
}

.bse .supblk .scard h4 {
font-size: 18px;
line-height: 1.2;
color: #111;
margin: 0 0 8px 0;
letter-spacing: 0.01em;
}

.bse .supblk .scard p {
font-size: 14px;
line-height: 1.6;
color: #444;
margin: 0;
letter-spacing: 0.01em;
}

.bse .supblk .imgpanel {
position: relative;
border-radius: 6px;
overflow: hidden;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
}

.bse .supblk .imgpanel img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
transition: filter 0.2s ease-out;
}

.bse .supblk .imgpanel:hover img {
filter: brightness(0.88);
}

.bse .distdiv {
padding: 40px 80px;
display: flex;
flex-direction: row;
align-items: center;
gap: 40px;
}

.bse .distdiv::before,
.bse .distdiv::after {
content: "";
flex: 1;
border-top: 1px dotted #ccc;
}

.bse .distdiv .divlabel {
font-size: 14px;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #aaa;
white-space: nowrap;
}

.bse .distblk {
padding: 80px 80px;
background: linear-gradient(180deg, #f4fff9 50%, #eef0ff 100%);
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start;
position: relative;
}

.bse .distblk .mathbg2 {
position: absolute;
bottom: 8px;
left: 40px;
font-size: 200px;
line-height: 1;
color: rgba(8, 117, 66, 0.05);
font-style: italic;
pointer-events: none;
user-select: none;
}

.bse .distblk .distleft {
flex: 0 0 420px;
position: relative;
z-index: 1;
}

.bse .distblk .distleft h2 {
font-size: 56px;
line-height: 1.2;
color: #111;
margin: 0 0 8px 0;
letter-spacing: 0.01em;
text-shadow: 2px 2px 0 rgba(8, 117, 66, 0.08);
}

.bse .distblk .distleft h2 em {
font-style: italic;
color: #087542;
}

.bse .distblk .distleft .subcap {
display: block;
font-size: 14px;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #555;
border-top: 1px solid rgba(8, 117, 66, 0.25);
padding-top: 8px;
margin-bottom: 40px;
}

.bse .distblk .distleft p {
font-size: 18px;
line-height: 1.6;
color: #222;
margin: 0 0 16px 0;
letter-spacing: 0.01em;
}

.bse .distblk .distright {
flex: 1;
display: flex;
flex-direction: column;
gap: 16px;
position: relative;
z-index: 1;
}

.bse .distblk .distright .ditem {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
padding: 40px;
background: #fff;
border-radius: 6px;
border-left: 3px solid #087542;
border-right: 1px solid rgba(8, 117, 66, 0.12);
box-shadow: 0 3px 3px 0 rgba(8, 117, 66, 0.07);
transition: box-shadow 0.14s ease-out, filter 0.14s ease-out;
}

.bse .distblk .distright .ditem:hover {
box-shadow: 0 9px 48px 0 rgba(8, 117, 66, 0.13);
filter: brightness(0.97);
}

.bse .distblk .distright .ditem .dnum {
font-size: 56px;
line-height: 1;
color: rgba(8, 117, 66, 0.12);
font-weight: 700;
flex-shrink: 0;
letter-spacing: -0.02em;
}

.bse .distblk .distright .ditem .dtxt h5 {
font-size: 18px;
line-height: 1.2;
color: #111;
margin: 0 0 8px 0;
letter-spacing: 0.01em;
}

.bse .distblk .distright .ditem .dtxt p {
font-size: 14px;
line-height: 1.6;
color: #444;
margin: 0;
letter-spacing: 0.01em;
}

.bse .numdiv {
padding: 40px 80px;
display: flex;
flex-direction: row;
align-items: center;
gap: 40px;
}

.bse .numdiv::before,
.bse .numdiv::after {
content: "";
flex: 1;
border-top: 1px dotted #bbb;
}

.bse .numdiv .divlabel {
font-size: 14px;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #aaa;
white-space: nowrap;
}

.bse .numblk {
padding: 80px;
background: #111;
position: relative;
overflow: hidden;
}

.bse .numblk .mathbg3 {
position: absolute;
top: -16px;
right: 80px;
font-size: 240px;
line-height: 1;
color: rgba(214, 113, 251, 0.07);
font-style: italic;
pointer-events: none;
user-select: none;
}

.bse .numblk .numhead {
margin-bottom: 40px;
}

.bse .numblk .numhead h2 {
font-size: 56px;
line-height: 1.2;
color: #f0f0f0;
margin: 0 0 8px 0;
letter-spacing: 0.01em;
text-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.13);
}

.bse .numblk .numhead h2 em {
font-style: italic;
color: #D671FB;
}

.bse .numblk .numhead .subcap {
display: block;
font-size: 14px;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #888;
border-top: 1px solid rgba(214, 113, 251, 0.2);
padding-top: 8px;
}

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

.bse .numblk .statgrid .stitem {
padding: 40px;
border-radius: 6px;
background: rgba(255, 255, 255, 0.04);
border: 1px solid rgba(214, 113, 251, 0.12);
transition: background 0.18s ease-out, border-color 0.18s ease-out;
}

.bse .numblk .statgrid .stitem:hover {
background: rgba(214, 113, 251, 0.08);
border-color: rgba(214, 113, 251, 0.28);
filter: brightness(1.05);
}

.bse .numblk .statgrid .stitem .stnum {
font-size: 56px;
line-height: 1.2;
color: #D671FB;
font-weight: 700;
letter-spacing: -0.02em;
display: block;
}

.bse .numblk .statgrid .stitem .stlabel {
font-size: 14px;
line-height: 1.6;
color: #bbb;
letter-spacing: 0.02em;
display: block;
margin-top: 8px;
}

.bse .numblk .imgrow {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
margin-top: 40px;
}

.bse .numblk .imgrow .imgwrap {
border-radius: 6px;
overflow: hidden;
position: relative;
}

.bse .numblk .imgrow .imgwrap img {
width: 100%;
height: 260px;
object-fit: cover;
object-position: center;
display: block;
transition: filter 0.2s ease-out, transform 0.2s ease-out;
}

.bse .numblk .imgrow .imgwrap:hover img {
filter: brightness(0.82);
transform: scale(1.03);
}

.bse .testdiv {
padding: 40px 80px;
display: flex;
flex-direction: row;
align-items: center;
gap: 40px;
}

.bse .testdiv::before,
.bse .testdiv::after {
content: "";
flex: 1;
border-top: 1px dotted #ddd;
}

.bse .testdiv .divlabel {
font-size: 14px;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #bbb;
white-space: nowrap;
}

.bse .testblk {
padding: 80px;
background: #fff;
display: grid;
grid-template-columns: 340px 1fr;
gap: 80px;
align-items: start;
position: relative;
}

.bse .testblk .portside {
display: flex;
flex-direction: column;
gap: 16px;
}

.bse .testblk .portside .portframe {
width: 100%;
aspect-ratio: 5/7;
overflow: hidden;
border-radius: 0;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
}

.bse .testblk .portside .portframe img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
transition: filter 0.2s ease-out;
}

.bse .testblk .portside .portframe:hover img {
filter: brightness(0.88);
}

.bse .testblk .portside .portname {
font-size: 18px;
line-height: 1.2;
color: #111;
font-weight: 700;
letter-spacing: 0.01em;
}

.bse .testblk .portside .portmeta {
font-size: 14px;
line-height: 1.6;
color: #666;
letter-spacing: 0.01em;
}

.bse .testblk .testright {
display: flex;
flex-direction: column;
gap: 40px;
}

.bse .testblk .testright h2 {
font-size: 56px;
line-height: 1.2;
color: #111;
margin: 0 0 8px 0;
letter-spacing: 0.01em;
text-shadow: 1px 2px 0 rgba(8, 117, 66, 0.08);
}

.bse .testblk .testright h2 em {
font-style: italic;
color: #087542;
}

.bse .testblk .testright .subcap {
display: block;
font-size: 14px;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #777;
border-top: 1px solid rgba(8, 117, 66, 0.2);
padding-top: 8px;
margin-bottom: 40px;
}

.bse .testblk .testright .quote {
background: #f4fff9;
border-radius: 6px;
padding: 40px;
border-top: 3px solid #087542;
box-shadow: 0 3px 3px 0 rgba(8, 117, 66, 0.07);
}

.bse .testblk .testright .quote blockquote {
margin: 0;
font-size: 18px;
line-height: 1.6;
color: #222;
letter-spacing: 0.01em;
font-style: italic;
}

.bse .testblk .testright .quote .qname {
display: block;
font-size: 14px;
color: #087542;
letter-spacing: 0.08em;
text-transform: uppercase;
margin-top: 16px;
font-style: normal;
}

.bse .testblk .testright .resultrow {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
}

.bse .testblk .testright .resultrow .ritem {
padding: 16px;
background: #f7f2ff;
border-radius: 6px;
border-bottom: 2px solid #D671FB;
box-shadow: 0 3px 3px 0 rgba(214, 113, 251, 0.07);
}

.bse .testblk .testright .resultrow .ritem .rval {
display: block;
font-size: 22px;
font-weight: 700;
color: #D671FB;
letter-spacing: -0.01em;
line-height: 1.2;
}

.bse .testblk .testright .resultrow .ritem .rdesc {
display: block;
font-size: 14px;
color: #555;
line-height: 1.6;
margin-top: 4px;
letter-spacing: 0.01em;
}

.bse .ltdiv {
padding: 40px 80px;
display: flex;
flex-direction: row;
align-items: center;
gap: 40px;
}

.bse .ltdiv::before,
.bse .ltdiv::after {
content: "";
flex: 1;
border-top: 1px dotted #ccc;
}

.bse .ltdiv .divlabel {
font-size: 14px;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #aaa;
white-space: nowrap;
}

.bse .ltblk {
padding: 80px;
position: relative;
overflow: hidden;
}

.bse .ltblk .splitbg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 50%;
background: #f0e6ff;
pointer-events: none;
z-index: 0;
}

.bse .ltblk .splitbgb {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 50%;
background: #e8f7ef;
pointer-events: none;
z-index: 0;
}

.bse .ltblk .grainy {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
z-index: 1;
opacity: 0.45;
}

.bse .ltblk .ltinner {
position: relative;
z-index: 2;
}

.bse .ltblk .ltinner h2 {
font-size: 56px;
line-height: 1.2;
color: #111;
margin: 0 0 8px 0;
letter-spacing: 0.01em;
text-shadow: 2px 2px 0 rgba(214, 113, 251, 0.10);
}

.bse .ltblk .ltinner h2 em {
font-style: italic;
color: #D671FB;
}

.bse .ltblk .ltinner .subcap {
display: block;
font-size: 14px;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #666;
border-top: 1px solid rgba(214, 113, 251, 0.25);
padding-top: 8px;
margin-bottom: 40px;
}

.bse .ltblk .ltinner .ltgrid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 16px;
}

.bse .ltblk .ltinner .ltgrid .lcard {
background: #fff;
border-radius: 6px;
padding: 40px;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
display: flex;
flex-direction: column;
gap: 8px;
transition: box-shadow 0.18s ease-out, filter 0.18s ease-out;
}

.bse .ltblk .ltinner .ltgrid .lcard:hover {
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
filter: brightness(0.97);
}

.bse .ltblk .ltinner .ltgrid .lcard h5 {
font-size: 18px;
line-height: 1.2;
color: #111;
margin: 0;
letter-spacing: 0.01em;
}

.bse .ltblk .ltinner .ltgrid .lcard p {
font-size: 14px;
line-height: 1.6;
color: #444;
margin: 0;
letter-spacing: 0.01em;
}

.bse .ltblk .ltinner .ltgrid .lcard .ltag {
display: inline-block;
font-size: 14px;
letter-spacing: 0.08em;
text-transform: uppercase;
color: #087542;
border: 1px solid rgba(8, 117, 66, 0.3);
border-radius: 36px;
padding: 4px 16px;
margin-top: 8px;
align-self: flex-start;
}

.bse .ltblk .ltinner .ltgrid .lcard.big {
grid-row: span 2;
background: #111;
}

.bse .ltblk .ltinner .ltgrid .lcard.big h5 {
font-size: 22px;
color: #f0f0f0;
}

.bse .ltblk .ltinner .ltgrid .lcard.big p {
font-size: 18px;
color: #bbb;
}

.bse .ltblk .ltinner .ltgrid .lcard.big .ltag {
color: #D671FB;
border-color: rgba(214, 113, 251, 0.35);
}

.bse .ltblk .ltinner .ltgrid .lcard.big .bignum {
font-size: 56px;
line-height: 1;
color: #D671FB;
font-weight: 700;
letter-spacing: -0.02em;
display: block;
margin-top: 8px;
}

.bse .ltblk .ltinner .imgfull {
margin-top: 40px;
border-radius: 6px;
overflow: hidden;
box-shadow: 0 4px 25px 0 rgba(8, 117, 66, 0.10);
}

.bse .ltblk .ltinner .imgfull img {
width: 100%;
height: 280px;
object-fit: cover;
object-position: center;
display: block;
transition: filter 0.2s ease-out;
}

.bse .ltblk .ltinner .imgfull:hover img {
filter: brightness(0.88);
}

.bse .letterhover span {
display: inline-block;
transition: color 0.12s ease-out;
}

.bse .letterhover:hover span:nth-child(1) {
color: #D671FB;
}

.bse .letterhover:hover span:nth-child(2) {
color: #c060e8;
transition-delay: 0.02s;
}

.bse .letterhover:hover span:nth-child(3) {
color: #087542;
transition-delay: 0.04s;
}

.bse .letterhover:hover span:nth-child(4) {
color: #D671FB;
transition-delay: 0.06s;
}

.bse .letterhover:hover span:nth-child(5) {
color: #087542;
transition-delay: 0.08s;
}

.bse .letterhover:hover span:nth-child(6) {
color: #D671FB;
transition-delay: 0.10s;
}

.bse .letterhover:hover span:nth-child(7) {
color: #087542;
transition-delay: 0.12s;
}

.bse .letterhover:hover span:nth-child(8) {
color: #c060e8;
transition-delay: 0.14s;
}

@media (max-width: 1024px) {
.bse .titblk .txside {
padding: 80px 40px;
}

.bse .supblk {
padding: 80px 40px;
}

.bse .supblk .cardgrid {
grid-template-columns: 1fr 1fr;
}

.bse .distblk {
padding: 80px 40px;
flex-direction: column;
gap: 40px;
}

.bse .distblk .distleft {
flex: none;
width: 100%;
}

.bse .numblk {
padding: 80px 40px;
}

.bse .numblk .statgrid {
grid-template-columns: repeat(2, 1fr);
}

.bse .testblk {
padding: 80px 40px;
grid-template-columns: 260px 1fr;
gap: 40px;
}

.bse .ltblk {
padding: 80px 40px;
}

.bse .ltblk .ltinner .ltgrid {
grid-template-columns: 1fr 1fr;
}

.bse .ltblk .ltinner .ltgrid .lcard.big {
grid-row: span 1;
}

.bse .supdiv,
.bse .distdiv,
.bse .numdiv,
.bse .testdiv,
.bse .ltdiv {
padding: 40px;
}
}

@media (max-width: 768px) {
.bse .titblk {
flex-direction: column;
}

.bse .titblk .txside {
padding: 40px 16px;
}

.bse .titblk h1 {
font-size: 56px;
}

.bse .titblk .imgside {
min-height: 300px;
}

.bse .supblk {
padding: 40px 16px;
}

.bse .supblk .cardgrid {
grid-template-columns: 1fr;
}

.bse .distblk {
padding: 40px 16px;
}

.bse .numblk {
padding: 40px 16px;
}

.bse .numblk .statgrid {
grid-template-columns: 1fr 1fr;
}

.bse .numblk .imgrow {
grid-template-columns: 1fr;
}

.bse .testblk {
padding: 40px 16px;
grid-template-columns: 1fr;
}

.bse .testblk .testright .resultrow {
grid-template-columns: 1fr;
}

.bse .ltblk {
padding: 40px 16px;
}

.bse .ltblk .ltinner .ltgrid {
grid-template-columns: 1fr;
}

.bse .supdiv,
.bse .distdiv,
.bse .numdiv,
.bse .testdiv,
.bse .ltdiv {
padding: 16px;
}
}

@media (max-width: 480px) {
.bse .titblk h1 {
font-size: 56px;
}

.bse .numblk .statgrid {
grid-template-columns: 1fr;
}

.bse .testblk .testright h2 {
font-size: 56px;
}
}

.successPage {
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 80px 16px;
background: linear-gradient(to right, #f4eafd, #eaf4f0, #FEFEFE);
}

.successPage .cardWrap {
background: #FEFEFE;
border-radius: 48px;
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
max-width: 640px;
width: 100%;
padding: 80px 80px;
display: flex;
flex-direction: column;
align-items: center;
gap: 40px;
position: relative;
}

.successPage .iconArea {
width: 80px;
height: 80px;
border-radius: 36px;
background: linear-gradient(to right, #D671FB, #087542);
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
box-shadow: 0 4px 25px 0 rgba(8, 117, 66, 0.10);
flex-shrink: 0;
}

.successPage .iconArea svg {
display: block;
}

.successPage .textBlock {
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
text-align: center;
}

.successPage .mainHeading {
font-size: 56px;
line-height: 1.2;
letter-spacing: 0.01em;
color: #111;
text-shadow: 0 3px 3px rgba(214, 113, 251, 0.07);
margin: 0;
}

.successPage .mainHeading em {
font-style: italic;
color: #087542;
}

.successPage .subText {
font-size: 18px;
line-height: 1.6;
letter-spacing: 0.01em;
color: #2a2a2a;
margin: 0;
max-width: 480px;
}

.successPage .dividerLine {
width: 64px;
height: 3px;
border-radius: 6px;
background: linear-gradient(to right, #D671FB, #087542);
}

.successPage .metaNote {
font-size: 14px;
line-height: 1.9;
letter-spacing: 0.02em;
color: #3a3a3a;
text-align: center;
margin: 0;
max-width: 400px;
}

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

.successPage .btnPrimary {
display: inline-block;
padding: 16px 40px;
background: linear-gradient(to right, #D671FB, #087542);
color: #FEFEFE;
font-size: 14px;
letter-spacing: 0.02em;
text-transform: uppercase;
border-radius: 6px;
border: none;
cursor: pointer;
text-decoration: none;
box-shadow: 0 4px 25px 0 rgba(214, 113, 251, 0.10);
transition: filter 0.18s ease-out, box-shadow 0.18s ease-out;
}

.successPage .btnPrimary:hover {
filter: brightness(0.88);
box-shadow: 0 9px 48px 0 rgba(214, 113, 251, 0.13);
}

.successPage .btnPrimary:active {
filter: brightness(0.80);
}

.successPage .btnSecondary {
display: inline-block;
padding: 16px 40px;
background: #FEFEFE;
color: #087542;
font-size: 14px;
letter-spacing: 0.02em;
text-transform: uppercase;
border-radius: 6px;
border: 2px solid #087542;
cursor: pointer;
text-decoration: none;
transition: background 0.15s cubic-bezier(0.4, 0, 0.6, 1), color 0.15s cubic-bezier(0.4, 0, 0.6, 1), filter 0.15s cubic-bezier(0.4, 0, 0.6, 1);
box-shadow: 0 3px 3px 0 rgba(8, 117, 66, 0.07);
}

.successPage .btnSecondary:hover {
background: #087542;
color: #FEFEFE;
filter: brightness(0.93);
}

.successPage .btnSecondary:active {
filter: brightness(0.82);
}

.successPage .decorDot {
position: absolute;
border-radius: 36px;
pointer-events: none;
overflow: hidden;
}

.successPage .decorDot.topRight {
width: 48px;
height: 48px;
background: linear-gradient(to right, rgba(214, 113, 251, 0.18), rgba(8, 117, 66, 0.10));
top: 24px;
right: 32px;
border-radius: 36px;
}

.successPage .decorDot.bottomLeft {
width: 32px;
height: 32px;
background: linear-gradient(to right, rgba(8, 117, 66, 0.14), rgba(214, 113, 251, 0.08));
bottom: 32px;
left: 24px;
border-radius: 36px;
}

@media (max-width: 768px) {
.successPage .cardWrap {
padding: 40px 16px;
border-radius: 36px;
gap: 40px;
}

.successPage .mainHeading {
font-size: 22px;
}

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

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

@media (max-width: 480px) {
.successPage {
padding: 40px 8px;
}

.successPage .cardWrap {
padding: 40px 8px;
}

.successPage .subText {
font-size: 14px;
}
}