body {
margin: 0;
word-break: break-word;
overflow-wrap: anywhere;
}

.sthdr {
background: linear-gradient(135deg, #0D4043 0%, #0a3336 60%, #071f21 100%);
position: relative;
overflow: hidden;
}

.sthdr::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(90deg, rgba(113, 115, 154, 0.08) 0%, transparent 60%);
pointer-events: none;
}

.sthdr-inner {
max-width: 1440px;
margin: 0 auto;
padding: 32px 64px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 32px;
}

.brandarea {
display: flex;
align-items: center;
gap: 16px;
text-decoration: none;
flex-shrink: 0;
}

.logocircle {
width: 64px;
height: 64px;
border-radius: 48px;
background: #fff;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08), 1px 5px 22px -2px rgba(13, 64, 67, 0.18), 0 0 0 2px rgba(179, 183, 199, 0.3);
flex-shrink: 0;
overflow: hidden;
}

.logocircle img {
width: 55px;
height: 55px;
object-fit: contain;
display: block;
}

.brandname {
font-family: 'Red Hat Display', sans-serif;
font-size: 23px;
font-weight: 700;
color: #ffffff;
line-height: 1.2;
letter-spacing: -0.01em;
}

.brandtag {
font-family: 'Work Sans', sans-serif;
font-size: 15px;
font-weight: 400;
color: #B3B7C7;
line-height: 1.6;
letter-spacing: 0.02em;
display: block;
margin-top: 4px;
}

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

.hdrnav a {
font-family: 'Work Sans', sans-serif;
font-size: 15px;
font-weight: 400;
color: #B3B7C7;
text-decoration: none;
padding: 8px 16px;
border-radius: 6px;
line-height: 1.6;
letter-spacing: 0.02em;
transition: color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
white-space: nowrap;
min-height: 44px;
display: inline-flex;
align-items: center;
}

.hdrnav a:hover {
color: #ffffff;
background: rgba(179, 183, 199, 0.1);
}

.hdrnav a:focus {
outline: none;
box-shadow: 0 0 0 3px rgba(113, 115, 154, 0.5);
border-radius: 6px;
}

.hdrnav a[data-current="true"] {
color: #ffffff;
background: rgba(179, 183, 199, 0.12);
}

.hdraccent {
display: flex;
align-items: center;
gap: 4px;
margin-left: 16px;
padding-left: 16px;
border-left: none;
flex-shrink: 0;
}

.hdraccent-dot {
width: 6px;
height: 6px;
border-radius: 36px;
background: #71739A;
opacity: 0.7;
}

.hdraccent-dot:nth-child(2) {
background: #B3B7C7;
opacity: 0.5;
}

.hdraccent-dot:nth-child(3) {
background: #71739A;
opacity: 0.3;
}

.stftr {
background: #0D4043;
padding: 64px 0 32px;
}

.stftr-inner {
max-width: 1440px;
margin: 0 auto;
padding: 0 64px;
display: flex;
flex-direction: column;
align-items: center;
gap: 32px;
}

.ftrlogo-area {
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
}

.ftrdivider {
width: 120px;
height: 1px;
background: linear-gradient(90deg, transparent, rgba(179, 183, 199, 0.4), transparent);
}

.ftrlogocircle {
width: 60px;
height: 60px;
border-radius: 48px;
background: #fff;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08), 0 0 0 2px rgba(179, 183, 199, 0.25);
overflow: hidden;
}

.ftrlogocircle img {
width: 50px;
height: 50px;
object-fit: contain;
display: block;
}

.ftrbrandname {
font-family: 'Red Hat Display', sans-serif;
font-size: 23px;
font-weight: 700;
color: #ffffff;
line-height: 1.2;
letter-spacing: -0.01em;
}

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

.ftrnav-group {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 8px;
}

.ftrnav a {
font-family: 'Work Sans', sans-serif;
font-size: 15px;
color: #B3B7C7;
text-decoration: none;
padding: 8px 16px;
border-radius: 6px;
line-height: 1.6;
letter-spacing: 0.02em;
transition: color 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55), background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
min-height: 44px;
display: inline-flex;
align-items: center;
}

.ftrnav a:hover {
color: #ffffff;
background: rgba(179, 183, 199, 0.08);
}

.ftrnav a:focus {
outline: none;
box-shadow: 0 0 0 3px rgba(113, 115, 154, 0.5);
border-radius: 6px;
}

.ftrcontact {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 16px;
}

.ftrcontact-item {
display: flex;
align-items: center;
gap: 8px;
font-family: 'Work Sans', sans-serif;
font-size: 15px;
color: #B3B7C7;
line-height: 1.6;
letter-spacing: 0.02em;
}

.ftrcontact-item i {
color: #71739A;
font-size: 15px;
flex-shrink: 0;
}

.ftrcontact-item a {
color: #B3B7C7;
text-decoration: none;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ftrcontact-item a:hover {
color: #ffffff;
}

.ftrcontact-item a:focus {
outline: none;
box-shadow: 0 0 0 3px rgba(113, 115, 154, 0.5);
border-radius: 6px;
}

.ftrbottom {
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
padding-top: 32px;
}

.ftrbottom-divider {
width: 100%;
height: 1px;
background: rgba(179, 183, 199, 0.15);
}

.ftrcopy {
font-family: 'Work Sans', sans-serif;
font-size: 15px;
color: rgba(179, 183, 199, 0.5);
line-height: 1.6;
letter-spacing: 0.02em;
text-align: center;
}

.ftrterms a {
font-family: 'Work Sans', sans-serif;
font-size: 15px;
color: rgba(179, 183, 199, 0.5);
text-decoration: underline;
text-underline-offset: 3px;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
line-height: 1.6;
}

.ftrterms a:hover {
color: #B3B7C7;
}

.ftrterms a:focus {
outline: none;
box-shadow: 0 0 0 3px rgba(113, 115, 154, 0.5);
border-radius: 6px;
}

.cookiepopup {
position: fixed;
top: 32px;
left: 0;
right: 0;
margin: 0 auto;
width: 480px;
max-width: calc(100vw - 32px);
background: #ffffff;
border-radius: 12px;
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09), 1px 12px 52px -2px rgba(13, 64, 67, 0.14);
padding: 32px;
z-index: 1200;
opacity: 0;
transition: opacity 0.42s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.cookiepopup[data-visible="true"] {
opacity: 1;
}

.cookiepopup-headline {
font-family: 'Red Hat Display', sans-serif;
font-size: 23px;
font-weight: 700;
color: #0D4043;
line-height: 1.2;
letter-spacing: -0.01em;
margin: 0 0 16px;
}

.cookiepopup-desc {
font-family: 'Work Sans', sans-serif;
font-size: 15px;
color: #444c55;
line-height: 1.9;
letter-spacing: 0.02em;
margin: 0 0 8px;
}

.cookiepopup-list {
font-family: 'Work Sans', sans-serif;
font-size: 15px;
color: #444c55;
line-height: 1.9;
letter-spacing: 0.02em;
margin: 0 0 16px;
padding-left: 16px;
}

.cookiepopup-list li {
margin-bottom: 4px;
}

.cookiepopup-actions {
display: flex;
gap: 16px;
justify-content: flex-end;
}

.cookiepopup-actions button {
font-family: 'Work Sans', sans-serif;
font-size: 15px;
background: none;
border: none;
cursor: pointer;
padding: 8px 4px;
text-decoration: underline;
text-underline-offset: 3px;
line-height: 1.6;
min-height: 44px;
border-radius: 6px;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.cookiepopup-actions button:focus {
outline: none;
box-shadow: 0 0 0 3px rgba(113, 115, 154, 0.5);
}

.cookiepopup-actions .btnaccept {
color: #0D4043;
font-weight: 700;
}

.cookiepopup-actions .btnaccept:hover {
color: #71739A;
}

.cookiepopup-actions .btndecline {
color: #71739A;
}

.cookiepopup-actions .btndecline:hover {
color: #0D4043;
}

@media (max-width: 900px) {
.sthdr-inner {
padding: 32px 32px;
flex-wrap: wrap;
gap: 16px;
}

.hdrnav {
justify-content: flex-start;
gap: 4px;
}

.stftr-inner {
padding: 0 32px;
}
}

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

.stftr-inner {
padding: 0 16px;
}

.ftrcontact {
flex-direction: column;
align-items: center;
}
}

.abus {
max-width: 1440px;
margin: 0 auto;
overflow-x: clip;
}

.abus .hero-blk {
position: relative;
padding: 64px 96px 96px;
background: linear-gradient(31deg, #0D4043 0%, #0D4043cc 40%, transparent 100%);
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: end;
}

.abus .hero-blk::before {
content: '';
position: absolute;
inset: 0;
background: url('./pictures/tmp-left17.jpg') center/cover no-repeat;
z-index: -2;
}

.abus .hero-blk::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(31deg, #0D4043 0%, #0D4043bb 50%, #0D404355 100%);
z-index: -1;
}

.abus .hero-txt {
z-index: 1;
}

.abus .hero-txt h1 {
font-size: 60px;
line-height: 1.2;
letter-spacing: -0.03em;
color: #fff;
margin: 0 0 16px;
font-weight: 700;
}

.abus .hero-txt h1 .accent-wd {
background: linear-gradient(31deg, #B3B7C7, #fff);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
font-style: italic;
}

.abus .hero-txt p {
font-size: 15px;
line-height: 1.9;
color: rgba(255, 255, 255, 0.82);
margin: 0 0 32px;
max-width: 480px;
}

.abus .hero-stat {
display: flex;
flex-direction: row;
gap: 32px;
z-index: 1;
align-self: end;
padding-bottom: 8px;
}

.abus .stat-item {
text-align: center;
background: rgba(255, 255, 255, 0.08);
-webkit-backdrop-filter: blur(12px);
backdrop-filter: blur(12px);
border-radius: 12px;
padding: 16px 32px;
border: 1px solid rgba(255, 255, 255, 0.15);
}

.abus .stat-item .snum {
font-size: 31px;
font-weight: 700;
color: #B3B7C7;
line-height: 1.2;
letter-spacing: -0.02em;
display: block;
}

.abus .stat-item .slbl {
font-size: 15px;
color: rgba(255, 255, 255, 0.7);
line-height: 1.6;
display: block;
}

.abus .about-grid {
display: grid;
grid-template-columns: 5fr 3fr 2fr;
gap: 32px;
padding: 96px 96px 64px;
background: #fff;
}

.abus .ag-main {
padding-right: 32px;
}

.abus .ag-main h2 {
font-size: 31px;
font-weight: 700;
line-height: 1.2;
letter-spacing: -0.02em;
color: transparent;
-webkit-text-stroke: 1.5px #0D4043;
margin: 0 0 8px;
}

.abus .ag-main .hdline {
width: 40px;
height: 2px;
background: linear-gradient(31deg, #0D4043, #71739A);
margin: 0 0 16px;
}

.abus .ag-main p {
font-size: 15px;
line-height: 1.9;
color: #2a3a3b;
margin: 0 0 16px;
padding: 0 64px;
}

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

.abus .side-card {
background: #f4f5f7;
border-radius: 12px;
padding: 16px;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
transition: transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.abus .side-card:hover {
transform: translateY(-4px);
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
}

.abus .side-card h5 {
font-size: 15px;
font-weight: 700;
color: #0D4043;
margin: 0 0 8px;
line-height: 1.2;
}

.abus .side-card p {
font-size: 15px;
line-height: 1.6;
color: #4a5a5b;
margin: 0;
}

.abus .ag-narrow {
display: flex;
flex-direction: column;
gap: 16px;
justify-content: flex-start;
}

.abus .narrow-img {
width: 100%;
aspect-ratio: 3/4;
border-radius: 12px;
overflow: hidden;
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.14);
}

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

.abus .narrow-tag {
background: linear-gradient(31deg, #0D4043, #71739A);
border-radius: 6px;
padding: 8px 16px;
font-size: 15px;
color: #fff;
font-weight: 600;
line-height: 1.6;
text-align: center;
}

.abus .roles-blk {
padding: 64px 96px;
background: linear-gradient(31deg, #0D4043 0%, #1a5a5e 60%, #71739A 100%);
position: relative;
}

.abus .roles-blk::before {
content: '';
position: absolute;
inset: 0;
background: url('./pictures/old-second18x.jpg') center/cover no-repeat;
opacity: 0.12;
}

.abus .roles-hd {
position: relative;
z-index: 1;
margin-bottom: 32px;
}

.abus .roles-hd h2 {
font-size: 31px;
font-weight: 700;
line-height: 1.2;
letter-spacing: -0.02em;
color: transparent;
-webkit-text-stroke: 1.5px rgba(255, 255, 255, 0.9);
margin: 0 0 8px;
}

.abus .roles-hd .hdline {
width: 40px;
height: 2px;
background: linear-gradient(31deg, #B3B7C7, #fff);
}

.abus .roles-cols {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 32px;
position: relative;
z-index: 1;
}

.abus .role-col {
background: rgba(255, 255, 255, 0.07);
-webkit-backdrop-filter: blur(8px);
backdrop-filter: blur(8px);
border-radius: 12px;
padding: 32px;
border: 1px solid rgba(255, 255, 255, 0.13);
position: relative;
overflow: hidden;
transition: background 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.abus .role-col::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 4px;
height: 100%;
background: linear-gradient(180deg, #B3B7C7, #71739A);
transition: left 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.abus .role-col:hover::before {
left: 0;
}

.abus .role-col:hover {
background: rgba(255, 255, 255, 0.12);
}

.abus .role-icon {
width: 48px;
height: 48px;
border-radius: 12px;
background: rgba(179, 183, 199, 0.2);
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
margin-bottom: 16px;
}

.abus .role-icon i {
font-size: 23px;
color: #B3B7C7;
}

.abus .role-col h4 {
font-size: 23px;
font-weight: 700;
color: #fff;
margin: 0 0 8px;
line-height: 1.2;
letter-spacing: -0.01em;
}

.abus .role-col .hdline {
width: 32px;
height: 2px;
background: linear-gradient(31deg, #B3B7C7, transparent);
margin-bottom: 16px;
}

.abus .role-col p {
font-size: 15px;
line-height: 1.9;
color: rgba(255, 255, 255, 0.78);
margin: 0 0 16px;
}

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

.abus .role-list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
font-size: 15px;
color: rgba(255, 255, 255, 0.7);
line-height: 1.6;
}

.abus .role-list li i {
color: #B3B7C7;
font-size: 15px;
margin-top: 2px;
flex-shrink: 0;
}

.abus .team-blk {
padding: 64px 96px 96px;
background: #f0f2f4;
}

.abus .team-hd {
margin-bottom: 32px;
}

.abus .team-hd h2 {
font-size: 31px;
font-weight: 700;
line-height: 1.2;
letter-spacing: -0.02em;
color: transparent;
-webkit-text-stroke: 1.5px #0D4043;
margin: 0 0 8px;
}

.abus .team-hd .hdline {
width: 40px;
height: 2px;
background: linear-gradient(31deg, #0D4043, #71739A);
}

.abus .team-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
}

.abus .team-member {
background: #fff;
border-radius: 12px;
padding: 32px;
display: flex;
flex-direction: row;
gap: 16px;
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
transition: transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.abus .team-member:hover {
transform: translateY(-4px);
}

.abus .tm-portrait {
width: 80px;
height: 80px;
border-radius: 12px;
overflow: hidden;
flex-shrink: 0;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
}

.abus .tm-portrait img {
width: 80px;
height: 80px;
object-fit: cover;
object-position: center;
display: block;
}

.abus .tm-info h5 {
font-size: 15px;
font-weight: 700;
color: #0D4043;
margin: 0 0 4px;
line-height: 1.2;
}

.abus .tm-info .tm-role {
font-size: 15px;
color: #71739A;
line-height: 1.6;
margin: 0 0 8px;
font-weight: 600;
}

.abus .tm-info p {
font-size: 15px;
line-height: 1.9;
color: #3a4a4b;
margin: 0;
}

.abus .team-extra {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
margin-top: 32px;
}

.abus .team-img-blk {
border-radius: 12px;
overflow: hidden;
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.14);
aspect-ratio: 16/9;
}

.abus .team-img-blk img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
}

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

.abus .val-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
background: #fff;
border-radius: 12px;
padding: 16px;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
transition: box-shadow 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.abus .val-row:hover {
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
}

.abus .val-icon {
width: 36px;
height: 36px;
border-radius: 6px;
background: linear-gradient(31deg, #0D4043, #71739A);
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

.abus .val-icon i {
font-size: 15px;
color: #fff;
}

.abus .val-row h6 {
font-size: 15px;
font-weight: 700;
color: #0D4043;
margin: 0 0 4px;
line-height: 1.2;
}

.abus .val-row p {
font-size: 15px;
line-height: 1.6;
color: #4a5a5b;
margin: 0;
}

.abus .team-noportrait {
background: #fff;
border-radius: 12px;
padding: 32px;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
transition: transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.abus .team-noportrait:hover {
transform: translateY(-4px);
}

.abus .team-noportrait h5 {
font-size: 15px;
font-weight: 700;
color: #0D4043;
margin: 0;
line-height: 1.2;
}

.abus .team-noportrait .tm-role {
font-size: 15px;
color: #71739A;
font-weight: 600;
margin: 0;
line-height: 1.6;
}

.abus .team-noportrait p {
font-size: 15px;
line-height: 1.9;
color: #3a4a4b;
margin: 0;
}

.abus .prog-dots {
display: flex;
flex-direction: row;
gap: 4px;
margin-top: 8px;
}

.abus .prog-dot {
width: 8px;
height: 8px;
border-radius: 48px;
background: #B3B7C7;
}

.abus .prog-dot.active {
background: #0D4043;
width: 24px;
}

.abus .panorama-blk {
position: relative;
padding: 96px 96px 64px;
overflow: hidden;
}

.abus .panorama-bg {
position: absolute;
inset: 0;
width: 130%;
height: 100%;
animation: panmove 18s linear infinite alternate;
}

.abus .panorama-bg img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
}

@keyframes panmove {
from {
transform: translateX(0);
}

to {
transform: translateX(-23%);
}
}

.abus .panorama-overlay {
position: absolute;
inset: 0;
background: linear-gradient(31deg, rgba(13, 64, 67, 0.92) 0%, rgba(13, 64, 67, 0.7) 60%, rgba(113, 115, 154, 0.5) 100%);
}

.abus .panorama-cnt {
position: relative;
z-index: 1;
max-width: 720px;
}

.abus .panorama-cnt h2 {
font-size: 31px;
font-weight: 700;
line-height: 1.2;
letter-spacing: -0.02em;
color: transparent;
-webkit-text-stroke: 1.5px rgba(255, 255, 255, 0.9);
margin: 0 0 8px;
}

.abus .panorama-cnt .hdline {
width: 40px;
height: 2px;
background: linear-gradient(31deg, #B3B7C7, #fff);
margin-bottom: 16px;
}

.abus .panorama-cnt p {
font-size: 15px;
line-height: 1.9;
color: rgba(255, 255, 255, 0.82);
margin: 0 0 32px;
}

.abus .pano-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
margin-top: 32px;
}

.abus .pano-item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
background: rgba(255, 255, 255, 0.08);
-webkit-backdrop-filter: blur(6px);
backdrop-filter: blur(6px);
border-radius: 12px;
padding: 16px;
border: 1px solid rgba(255, 255, 255, 0.12);
}

.abus .pano-item i {
font-size: 23px;
color: #B3B7C7;
flex-shrink: 0;
margin-top: 2px;
}

.abus .pano-item h6 {
font-size: 15px;
font-weight: 700;
color: #fff;
margin: 0 0 4px;
line-height: 1.2;
}

.abus .pano-item p {
font-size: 15px;
line-height: 1.6;
color: rgba(255, 255, 255, 0.72);
margin: 0;
}

.abus .cta-btn {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
padding: 16px 32px;
border-radius: 6px;
font-size: 15px;
font-weight: 700;
color: #0D4043;
background: linear-gradient(to left, #B3B7C7 0%, #fff 50%, #fff 100%);
background-size: 200% 100%;
background-position: right center;
border: none !important;
cursor: pointer;
text-decoration: none;
transition: background-position 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.14);
}

.abus .cta-btn:hover {
background-position: left center;
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.2);
}

@media (max-width: 1100px) {

.abus .hero-blk,
.abus .about-grid,
.abus .roles-blk,
.abus .team-blk,
.abus .panorama-blk {
padding-left: 32px;
padding-right: 32px;
}

.abus .roles-cols {
grid-template-columns: 1fr;
}

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

.abus .ag-narrow {
display: none;
}
}

@media (max-width: 768px) {
.abus .hero-blk {
grid-template-columns: 1fr;
padding: 32px 16px 64px;
}

.abus .hero-stat {
flex-direction: row;
flex-wrap: wrap;
}

.abus .about-grid {
grid-template-columns: 1fr;
padding: 32px 16px;
}

.abus .ag-main p {
padding: 0;
}

.abus .team-layout,
.abus .team-extra,
.abus .pano-grid {
grid-template-columns: 1fr;
}

.abus .team-blk,
.abus .panorama-blk {
padding: 32px 16px;
}

.abus .hero-txt h1 {
font-size: 31px;
}
}

.hiw {
width: 100%;
max-width: 100%;
overflow-x: hidden;
background: #fff;
}

.hiw .step-band {
width: 100%;
height: 4px;
background: linear-gradient(31deg, #0D4043 0%, #71739A 60%, #B3B7C7 100%);
}

.hiw .titblk {
background: #0D4043;
padding: 96px 64px;
position: relative;
overflow: hidden;
}

.hiw .titblk::before {
content: '';
position: absolute;
top: -40px;
right: -40px;
width: 320px;
height: 320px;
border: 2px solid rgba(179, 183, 199, 0.12);
border-radius: 48px;
transform: rotate(18deg);
pointer-events: none;
}

.hiw .titblk::after {
content: '';
position: absolute;
bottom: 32px;
right: 120px;
width: 180px;
height: 180px;
border: 1px solid rgba(113, 115, 154, 0.18);
border-radius: 48px;
transform: rotate(-12deg);
pointer-events: none;
}

.hiw .titblk-inner {
max-width: 1440px;
margin: 0 auto;
display: flex;
flex-direction: column;
gap: 32px;
}

.hiw .titblk-label {
display: inline-flex;
align-items: center;
gap: 8px;
background: rgba(113, 115, 154, 0.18);
border-radius: 6px;
padding: 4px 16px;
width: fit-content;
}

.hiw .titblk-label span {
font-size: 15px;
color: #B3B7C7;
letter-spacing: 0.08em;
line-height: 1.6;
}

.hiw .titblk-h1 {
font-size: 72px;
line-height: 1.2;
letter-spacing: -0.03em;
color: #fff;
max-width: 820px;
margin: 0;
}

.hiw .titblk-h1 em {
font-style: normal;
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
background-image: linear-gradient(31deg, #B3B7C7 0%, #71739A 100%);
text-decoration: underline;
text-decoration-color: rgba(113, 115, 154, 0.4);
text-underline-offset: 6px;
}

.hiw .titblk-sub {
font-size: 23px;
color: #B3B7C7;
line-height: 1.6;
max-width: 560px;
margin: 0;
letter-spacing: 0.01em;
}

.hiw .titblk-shape {
position: absolute;
left: 60%;
top: 50%;
transform: translateY(-50%);
width: 260px;
height: 260px;
pointer-events: none;
}

.hiw .titblk-shape svg {
width: 100%;
height: 100%;
opacity: 0.07;
}

.hiw .divband {
width: 100%;
height: 6px;
background: linear-gradient(31deg, #0D4043 0%, #71739A 55%, #B3B7C7 100%);
}

.hiw .procblk {
background: #f4f5f7;
padding: 96px 64px;
position: relative;
}

.hiw .procblk::before {
content: '';
position: absolute;
right: 0;
top: 0;
width: 6px;
height: 100%;
background: linear-gradient(180deg, #0D4043 0%, #71739A 100%);
border-radius: 0 6px 6px 0;
}

.hiw .procblk-inner {
max-width: 1440px;
margin: 0 auto;
display: grid;
grid-template-columns: 340px 1fr;
gap: 64px;
align-items: start;
}

.hiw .procblk-side {
background: #0D4043;
border-radius: 12px;
padding: 32px;
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.14);
position: sticky;
top: 32px;
}

.hiw .procblk-side h2 {
font-size: 31px;
line-height: 1.2;
letter-spacing: -0.02em;
color: transparent;
-webkit-text-stroke: 1.5px #B3B7C7;
margin: 0 0 16px 0;
}

.hiw .procblk-side p {
font-size: 15px;
line-height: 1.6;
color: #B3B7C7;
margin: 0 0 32px 0;
}

.hiw .procblk-stat {
display: flex;
flex-direction: column;
gap: 16px;
}

.hiw .stat-item {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
background: rgba(179, 183, 199, 0.1);
border-radius: 6px;
padding: 16px;
}

.hiw .stat-num {
font-size: 31px;
line-height: 1.2;
letter-spacing: -0.02em;
color: #B3B7C7;
font-weight: 700;
min-width: 56px;
}

.hiw .stat-desc {
font-size: 15px;
color: rgba(179, 183, 199, 0.8);
line-height: 1.6;
}

.hiw .procblk-steps {
display: flex;
flex-direction: column;
gap: 32px;
}

.hiw .step-card {
background: #fff;
border-radius: 12px;
padding: 32px;
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
display: grid;
grid-template-columns: 64px 1fr;
gap: 32px;
align-items: start;
transition: box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.hiw .step-card:hover {
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.14);
transform: translateY(-2px);
}

.hiw .step-num {
width: 64px;
height: 64px;
border-radius: 12px;
background: linear-gradient(31deg, #0D4043 0%, #71739A 100%);
display: flex;
align-items: center;
justify-content: center;
font-size: 23px;
font-weight: 700;
color: #fff;
flex-shrink: 0;
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.14);
}

.hiw .step-body h3 {
font-size: 23px;
line-height: 1.2;
letter-spacing: -0.01em;
color: #0D4043;
margin: 0 0 8px 0;
}

.hiw .step-body p {
font-size: 15px;
line-height: 1.6;
color: #3a3d4a;
margin: 0 0 16px 0;
}

.hiw .step-tags {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
}

.hiw .step-tag {
font-size: 15px;
color: #71739A;
background: rgba(113, 115, 154, 0.08);
border-radius: 6px;
padding: 4px 16px;
line-height: 1.6;
}

.hiw .divband2 {
width: 100%;
height: 4px;
background: linear-gradient(31deg, #B3B7C7 0%, #71739A 50%, #0D4043 100%);
}

.hiw .teamblk {
background: #fff;
padding: 96px 64px;
position: relative;
}

.hiw .teamblk::before {
content: '';
position: absolute;
left: 0;
top: 0;
width: 6px;
height: 100%;
background: linear-gradient(180deg, #71739A 0%, #0D4043 100%);
border-radius: 6px 0 0 6px;
}

.hiw .teamblk-inner {
max-width: 1440px;
margin: 0 auto;
}

.hiw .teamblk-head {
margin-bottom: 64px;
max-width: 560px;
margin-left: auto;
margin-right: auto;
text-align: center;
}

.hiw .teamblk-head h2 {
font-size: 60px;
line-height: 1.2;
letter-spacing: -0.03em;
color: transparent;
-webkit-text-stroke: 2px #0D4043;
margin: 0 0 16px 0;
}

.hiw .teamblk-head h2 strong {
-webkit-text-stroke: 0;
color: #0D4043;
font-weight: 700;
}

.hiw .teamblk-head p {
font-size: 15px;
color: #3a3d4a;
line-height: 1.6;
margin: 0;
padding: 0 64px;
}

.hiw .team-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
}

.hiw .team-card {
display: flex;
flex-direction: row;
gap: 32px;
background: #f4f5f7;
border-radius: 12px;
padding: 32px;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
align-items: flex-start;
}

.hiw .team-portrait {
width: 96px;
height: 120px;
border-radius: 12px;
overflow: hidden;
flex-shrink: 0;
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
}

.hiw .team-portrait img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: grayscale(100%);
}

.hiw .team-info h4 {
font-size: 23px;
line-height: 1.2;
color: #0D4043;
margin: 0 0 4px 0;
letter-spacing: -0.01em;
}

.hiw .team-info .team-role {
font-size: 15px;
color: #71739A;
line-height: 1.6;
margin: 0 0 16px 0;
}

.hiw .team-info p {
font-size: 15px;
color: #3a3d4a;
line-height: 1.6;
margin: 0;
}

.hiw .team-noportrait {
display: flex;
flex-direction: column;
gap: 32px;
background: #f4f5f7;
border-radius: 12px;
padding: 32px;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
}

.hiw .team-noportrait h4 {
font-size: 23px;
line-height: 1.2;
color: #0D4043;
margin: 0 0 4px 0;
}

.hiw .team-noportrait .team-role {
font-size: 15px;
color: #71739A;
line-height: 1.6;
margin: 0 0 8px 0;
}

.hiw .team-noportrait p {
font-size: 15px;
color: #3a3d4a;
line-height: 1.6;
margin: 0;
}

.hiw .divband3 {
width: 100%;
height: 4px;
background: linear-gradient(31deg, #0D4043 0%, #B3B7C7 100%);
}

.hiw .imgblk {
background: #0D4043;
padding: 96px 64px;
position: relative;
overflow: hidden;
}

.hiw .imgblk-dotgrid {
position: absolute;
inset: 0;
background-image: radial-gradient(circle, rgba(179, 183, 199, 0.07) 1px, transparent 1px);
background-size: 28px 28px;
pointer-events: none;
animation: dotpulse 6s ease-in-out infinite;
}

@keyframes dotpulse {

0%,
100% {
opacity: 1;
}

50% {
opacity: 0.4;
}
}

.hiw .imgblk-inner {
max-width: 1440px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 480px;
gap: 64px;
align-items: center;
position: relative;
z-index: 1;
}

.hiw .imgblk-txt h2 {
font-size: 60px;
line-height: 1.2;
letter-spacing: -0.03em;
color: transparent;
-webkit-text-stroke: 2px #B3B7C7;
margin: 0 0 32px 0;
}

.hiw .imgblk-txt h2 em {
font-style: normal;
-webkit-text-stroke: 0;
color: #B3B7C7;
text-decoration: underline;
text-decoration-color: rgba(113, 115, 154, 0.5);
text-underline-offset: 6px;
}

.hiw .imgblk-txt p {
font-size: 15px;
color: #B3B7C7;
line-height: 1.6;
margin: 0 0 32px 0;
max-width: 480px;
}

.hiw .imgblk-feats {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
margin-bottom: 32px;
}

.hiw .feat-item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
background: rgba(179, 183, 199, 0.08);
border-radius: 6px;
padding: 16px;
}

.hiw .feat-item i {
font-size: 23px;
color: #B3B7C7;
flex-shrink: 0;
margin-top: 2px;
}

.hiw .feat-item span {
font-size: 15px;
color: rgba(179, 183, 199, 0.85);
line-height: 1.6;
}

.hiw .imgblk-cta {
display: inline-flex;
align-items: center;
gap: 8px;
background: linear-gradient(31deg, #71739A 0%, #B3B7C7 100%);
background-size: 200% 100%;
background-position: right center;
color: #0D4043;
font-size: 15px;
font-weight: 700;
border-radius: 6px;
padding: 16px 32px;
text-decoration: none;
border: none;
cursor: pointer;
transition: background-position 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.14);
}

.hiw .imgblk-cta:hover {
background-position: left center;
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.14);
}

.hiw .imgblk-cta:focus {
outline: 2px solid #B3B7C7;
outline-offset: 4px;
}

.hiw .imgblk-img {
border-radius: 12px;
overflow: hidden;
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.14);
position: relative;
}

.hiw .imgblk-img img {
width: 100%;
height: 480px;
object-fit: cover;
display: block;
filter: grayscale(100%);
}

.hiw .imgblk-img::after {
content: '';
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 30% 70%, transparent 40%, rgba(13, 64, 67, 0.55) 100%);
pointer-events: none;
border-radius: 12px;
}

.hiw .iconrot {
display: inline-flex;
cursor: pointer;
transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.hiw .iconrot:active {
transform: rotate(90deg);
}

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

.hiw .procblk-side {
position: static;
}

.hiw .imgblk-inner {
grid-template-columns: 1fr;
}

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

.hiw .titblk-shape {
display: none;
}
}

@media (max-width: 768px) {

.hiw .titblk,
.hiw .procblk,
.hiw .teamblk,
.hiw .imgblk {
padding: 64px 32px;
}

.hiw .titblk-h1 {
font-size: 60px;
}

.hiw .step-card {
grid-template-columns: 1fr;
}

.hiw .imgblk-feats {
grid-template-columns: 1fr;
}

.hiw .teamblk-head p {
padding: 0;
}
}

@media (max-width: 480px) {

.hiw .titblk,
.hiw .procblk,
.hiw .teamblk,
.hiw .imgblk {
padding: 64px 16px;
}

.hiw .titblk-h1 {
font-size: 31px;
}

.hiw .teamblk-head h2 {
font-size: 31px;
}

.hiw .imgblk-txt h2 {
font-size: 31px;
}

.hiw .team-card {
flex-direction: column;
}
}

.lrnprog {
max-width: 1440px;
margin: 0 auto;
overflow: hidden;
background: #fff;
}

.lrnprog .titblk {
position: relative;
padding: 64px 96px 64px 96px;
background: linear-gradient(31deg, #0D4043 0%, #1a6b70 60%, transparent 100%);
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 64px;
min-height: 0;
}

.lrnprog .titblk::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(31deg, #0D4043 0%, rgba(13, 64, 67, 0.82) 45%, rgba(13, 64, 67, 0.18) 100%);
pointer-events: none;
}

.lrnprog .titblk .imgside {
position: absolute;
inset: 0;
z-index: 0;
}

.lrnprog .titblk .imgside img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
max-width: 100%;
}

.lrnprog .titblk .imgside::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(31deg, #0D4043 0%, rgba(13, 64, 67, 0.88) 50%, rgba(13, 64, 67, 0.3) 100%);
}

.lrnprog .titblk .geo1 {
position: absolute;
top: 32px;
right: 96px;
width: 120px;
height: 120px;
border: 2px solid rgba(179, 183, 199, 0.18);
border-radius: 12px;
transform: rotate(18deg);
pointer-events: none;
z-index: 1;
}

.lrnprog .titblk .geo2 {
position: absolute;
bottom: 32px;
right: 200px;
width: 60px;
height: 60px;
border: 2px solid rgba(113, 115, 154, 0.22);
border-radius: 48px;
pointer-events: none;
z-index: 1;
}

.lrnprog .titblk .geo3 {
position: absolute;
top: 48px;
right: 260px;
width: 36px;
height: 36px;
border: 1px solid rgba(179, 183, 199, 0.14);
border-radius: 6px;
transform: rotate(-12deg);
pointer-events: none;
z-index: 1;
}

.lrnprog .titblk .txtside {
position: relative;
z-index: 2;
flex: 1;
max-width: 720px;
}

.lrnprog .titblk .txtside .supertag {
display: inline-flex;
align-items: center;
gap: 8px;
background: rgba(113, 115, 154, 0.22);
border: 1px solid rgba(179, 183, 199, 0.28);
border-radius: 6px;
padding: 4px 16px;
margin-bottom: 16px;
font-size: 15px;
color: #B3B7C7;
letter-spacing: 0.06em;
}

.lrnprog .titblk .txtside h1 {
font-size: 60px;
line-height: 1.2;
letter-spacing: -0.03em;
color: #fff;
margin: 0 0 16px 0;
font-weight: 700;
}

.lrnprog .titblk .txtside h1 .grad {
background: linear-gradient(31deg, #B3B7C7, #71739A);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}

.lrnprog .titblk .txtside .subdesc {
font-size: 15px;
line-height: 1.9;
color: rgba(255, 255, 255, 0.78);
margin: 0 0 32px 0;
max-width: 520px;
}

.lrnprog .titblk .metarow {
display: flex;
flex-direction: row;
gap: 32px;
flex-wrap: wrap;
}

.lrnprog .titblk .metarow .met {
display: flex;
flex-direction: column;
gap: 4px;
}

.lrnprog .titblk .metarow .met .mlbl {
font-size: 15px;
color: rgba(179, 183, 199, 0.7);
letter-spacing: 0.04em;
}

.lrnprog .titblk .metarow .met .mval {
font-size: 23px;
font-weight: 700;
color: #fff;
line-height: 1.2;
}

.lrnprog .titblk .metarow .met .mval i {
font-size: 15px;
color: #B3B7C7;
margin-right: 4px;
}

.lrnprog .detblk {
background: #fff;
padding: 64px 96px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: start;
}

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

.lrnprog .detblk .leftcol .sechead {
display: flex;
flex-direction: column;
gap: 8px;
}

.lrnprog .detblk .leftcol .sechead h2 {
font-size: 31px;
line-height: 1.2;
letter-spacing: -0.02em;
color: transparent;
-webkit-text-stroke: 1.5px #0D4043;
margin: 0;
font-weight: 700;
}

.lrnprog .detblk .leftcol .sechead .accentline {
width: 48px;
height: 3px;
background: linear-gradient(31deg, #0D4043, #71739A);
border-radius: 6px;
animation: drawline 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
transform-origin: left center;
}

@keyframes drawline {
from {
transform: scaleX(0);
}

to {
transform: scaleX(1);
}
}

.lrnprog .detblk .leftcol .bodytxt {
font-size: 15px;
line-height: 1.9;
color: #2a3a3b;
margin: 0 64px 0 0;
}

.lrnprog .detblk .leftcol .modlist {
display: grid;
grid-template-columns: 1fr;
gap: 8px;
}

.lrnprog .detblk .leftcol .modlist .moditem {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
padding: 16px;
border-radius: 12px;
background: #f4f5f7;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.lrnprog .detblk .leftcol .modlist .moditem:hover {
background: #eaecf2;
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
}

.lrnprog .detblk .leftcol .modlist .moditem .micon {
width: 36px;
height: 36px;
border-radius: 6px;
background: linear-gradient(31deg, #0D4043, #71739A);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

.lrnprog .detblk .leftcol .modlist .moditem .micon i {
color: #fff;
font-size: 15px;
}

.lrnprog .detblk .leftcol .modlist .moditem .mtxt {
display: flex;
flex-direction: column;
gap: 4px;
}

.lrnprog .detblk .leftcol .modlist .moditem .mtxt h5 {
font-size: 15px;
font-weight: 700;
color: #0D4043;
margin: 0;
line-height: 1.2;
}

.lrnprog .detblk .leftcol .modlist .moditem .mtxt p {
font-size: 15px;
color: #4a5a5b;
margin: 0;
line-height: 1.6;
}

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

.lrnprog .detblk .rightcol .ratingcard {
background: linear-gradient(31deg, #0D4043 0%, #1c5e62 100%);
border-radius: 12px;
padding: 32px;
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.14);
display: flex;
flex-direction: column;
gap: 16px;
}

.lrnprog .detblk .rightcol .ratingcard .rtop {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
}

.lrnprog .detblk .rightcol .ratingcard .rtop .rscore {
font-size: 60px;
font-weight: 700;
color: #fff;
line-height: 1.2;
letter-spacing: -0.04em;
}

.lrnprog .detblk .rightcol .ratingcard .rtop .rinfo {
display: flex;
flex-direction: column;
gap: 4px;
}

.lrnprog .detblk .rightcol .ratingcard .rtop .rinfo .stars {
display: flex;
flex-direction: row;
gap: 4px;
}

.lrnprog .detblk .rightcol .ratingcard .rtop .rinfo .stars i {
color: #B3B7C7;
font-size: 15px;
}

.lrnprog .detblk .rightcol .ratingcard .rtop .rinfo .rcnt {
font-size: 15px;
color: rgba(179, 183, 199, 0.8);
line-height: 1.6;
}

.lrnprog .detblk .rightcol .ratingcard .rdivider {
height: 1px;
background: rgba(179, 183, 199, 0.18);
}

.lrnprog .detblk .rightcol .ratingcard .rreviews {
display: flex;
flex-direction: column;
gap: 16px;
}

.lrnprog .detblk .rightcol .ratingcard .rreviews .rev {
display: flex;
flex-direction: row;
gap: 12px;
align-items: flex-start;
}

.lrnprog .detblk .rightcol .ratingcard .rreviews .rev .rport {
width: 40px;
height: 40px;
border-radius: 50%;
overflow: hidden;
flex-shrink: 0;
border: 2px solid rgba(179, 183, 199, 0.22);
}

.lrnprog .detblk .rightcol .ratingcard .rreviews .rev .rport img {
width: 40px;
height: 40px;
object-fit: cover;
object-position: center;
display: block;
}

.lrnprog .detblk .rightcol .ratingcard .rreviews .rev .rtxtblk {
display: flex;
flex-direction: column;
gap: 4px;
}

.lrnprog .detblk .rightcol .ratingcard .rreviews .rev .rtxtblk .rname {
font-size: 15px;
font-weight: 700;
color: #fff;
line-height: 1.2;
}

.lrnprog .detblk .rightcol .ratingcard .rreviews .rev .rtxtblk .rtext {
font-size: 15px;
color: rgba(179, 183, 199, 0.85);
line-height: 1.6;
margin: 0;
}

.lrnprog .detblk .rightcol .faqblk {
display: flex;
flex-direction: column;
gap: 8px;
}

.lrnprog .detblk .rightcol .faqblk h3 {
font-size: 23px;
font-weight: 700;
color: transparent;
-webkit-text-stroke: 1.5px #0D4043;
line-height: 1.2;
letter-spacing: -0.01em;
margin: 0 0 8px 0;
}

.lrnprog .detblk .rightcol .faqblk .faqitem {
border-radius: 6px;
border: 1px solid rgba(13, 64, 67, 0.12);
overflow: hidden;
}

.lrnprog .detblk .rightcol .faqblk .faqitem input[type="checkbox"] {
position: absolute;
opacity: 0;
pointer-events: none;
width: 0;
height: 0;
}

.lrnprog .detblk .rightcol .faqblk .faqitem .faqq {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
padding: 16px;
cursor: pointer;
background: #fff;
font-size: 15px;
font-weight: 600;
color: #0D4043;
line-height: 1.6;
gap: 16px;
transition: background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
user-select: none;
}

.lrnprog .detblk .rightcol .faqblk .faqitem .faqq:hover {
background: #f0f3f3;
}

.lrnprog .detblk .rightcol .faqblk .faqitem .faqq .faqarrow {
width: 20px;
height: 20px;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.lrnprog .detblk .rightcol .faqblk .faqitem .faqq .faqarrow i {
font-size: 15px;
color: #71739A;
}

.lrnprog .detblk .rightcol .faqblk .faqitem .faqa {
max-height: 0;
overflow: hidden;
transition: max-height 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.lrnprog .detblk .rightcol .faqblk .faqitem.open .faqa {
max-height: 300px;
}

.lrnprog .detblk .rightcol .faqblk .faqitem.open .faqarrow {
transform: rotate(180deg);
}

.lrnprog .detblk .rightcol .faqblk .faqitem .faqa .fatxt {
padding: 0 16px 16px 16px;
font-size: 15px;
color: #3a4a4b;
line-height: 1.9;
margin: 0;
}

.lrnprog .detblk .rightcol .offercard {
border-radius: 12px;
border: 1px solid rgba(13, 64, 67, 0.14);
padding: 32px;
background: #f4f5f7;
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
display: flex;
flex-direction: column;
gap: 16px;
}

.lrnprog .detblk .rightcol .offercard h4 {
font-size: 23px;
font-weight: 700;
color: #0D4043;
margin: 0;
line-height: 1.2;
letter-spacing: -0.01em;
}

.lrnprog .detblk .rightcol .offercard .priceline {
display: flex;
flex-direction: row;
align-items: baseline;
gap: 8px;
}

.lrnprog .detblk .rightcol .offercard .priceline .price {
font-size: 31px;
font-weight: 700;
color: #0D4043;
line-height: 1.2;
}

.lrnprog .detblk .rightcol .offercard .priceline .priceper {
font-size: 15px;
color: #71739A;
}

.lrnprog .detblk .rightcol .offercard .featurelist {
display: flex;
flex-direction: column;
gap: 8px;
}

.lrnprog .detblk .rightcol .offercard .featurelist .feat {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 15px;
color: #2a3a3b;
line-height: 1.6;
}

.lrnprog .detblk .rightcol .offercard .featurelist .feat i {
color: #0D4043;
font-size: 15px;
flex-shrink: 0;
}

.lrnprog .detblk .rightcol .offercard .enrollbtn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
padding: 16px 32px;
border-radius: 36px;
border: none;
cursor: pointer;
font-size: 15px;
font-weight: 700;
color: #fff;
background: linear-gradient(31deg, #0D4043 0%, #71739A 100%);
background-size: 200% 100%;
background-position: right center;
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.14);
transition: background-position 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55);
text-decoration: none;
}

.lrnprog .detblk .rightcol .offercard .enrollbtn:hover {
background-position: left center;
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.18);
}

.lrnprog .detblk .rightcol .offercard .enrollbtn:focus {
outline: 2px solid #0D4043;
outline-offset: 3px;
}

@media (max-width: 1024px) {
.lrnprog .titblk {
padding: 64px 32px;
}

.lrnprog .detblk {
padding: 64px 32px;
grid-template-columns: 1fr;
gap: 32px;
}

.lrnprog .detblk .leftcol .bodytxt {
margin-right: 0;
}
}

@media (max-width: 640px) {
.lrnprog .titblk {
padding: 32px 16px;
}

.lrnprog .titblk .txtside h1 {
font-size: 31px;
}

.lrnprog .detblk {
padding: 32px 16px;
}

.lrnprog .titblk .metarow {
gap: 16px;
}
}

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

.successPage .confirmCard {
max-width: 560px;
width: 100%;
background: linear-gradient(31deg, #0D4043 0%, #1a5a5e 60%, #71739A 100%);
border-radius: 12px;
padding: 64px 64px;
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.14);
text-align: center;
}

.successPage .confirmCard .iconWrap {
width: 72px;
height: 72px;
margin: 0 auto 32px;
border-radius: 36px;
background: rgba(255, 255, 255, 0.12);
display: flex;
align-items: center;
justify-content: center;
box-shadow: inset 0 4px 6px rgba(13, 64, 67, 0.18);
}

.successPage .confirmCard .iconWrap svg {
display: block;
}

.successPage .confirmCard .successHeading {
font-size: 31px;
line-height: 1.2;
letter-spacing: -0.02em;
color: #fff;
margin: 0 0 16px;
font-weight: 700;
}

.successPage .confirmCard .successMsg {
font-size: 15px;
line-height: 1.6;
color: rgba(255, 255, 255, 0.82);
margin: 0 0 32px;
}

.successPage .confirmCard .dividerLine {
height: 1px;
background: rgba(255, 255, 255, 0.18);
margin: 0 0 32px;
border-radius: 6px;
}

.successPage .confirmCard .metaNote {
font-size: 15px;
line-height: 1.6;
color: rgba(255, 255, 255, 0.6);
margin: 0 0 32px;
}

.successPage .confirmCard .metaNote strong {
color: #fff;
font-weight: 600;
}

.successPage .confirmCard .backBtn {
display: inline-block;
padding: 16px 32px;
border-radius: 6px;
font-size: 15px;
line-height: 1.2;
font-weight: 600;
color: #0D4043;
background: #fff;
text-decoration: none;
position: relative;
overflow: hidden;
transition: color 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.18);
}

.successPage .confirmCard .backBtn::before {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(31deg, #B3B7C7 0%, #fff 100%);
transform: translateX(100%);
transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
border-radius: 6px;
}

.successPage .confirmCard .backBtn:hover::before {
transform: translateX(0);
}

.successPage .confirmCard .backBtn:hover {
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.22);
}

.successPage .confirmCard .backBtn span {
position: relative;
z-index: 1;
}

.successPage .confirmCard .backBtn:focus-visible {
outline: 3px solid #B3B7C7;
outline-offset: 3px;
}

.sglt-doc-content {
max-width: 860px;
margin: 0 auto;
padding: 64px 32px;
}

.sglt-doc-content p {
font-size: 15px;
line-height: 1.9;
color: #2a3540;
margin-bottom: 16px;
letter-spacing: 0.01em;
}

.sglt-doc-content ul,
.sglt-doc-content ol {
margin: 16px 0 32px 0;
padding-left: 32px;
}

.sglt-doc-content li {
font-size: 15px;
line-height: 1.9;
color: #2a3540;
margin-bottom: 8px;
letter-spacing: 0.01em;
}

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

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

.sglt-doc-content ul li::marker,
.sglt-doc-content ol li::marker {
color: #0D4043;
}

.sglt-doc-content strong,
.sglt-doc-content b {
font-weight: 700;
color: #0D4043;
}

.sglt-doc-content table {
width: 100%;
border-collapse: collapse;
margin: 32px 0;
font-size: 15px;
line-height: 1.6;
border-radius: 12px;
overflow: hidden;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08), 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
}

.sglt-doc-content thead {
background: linear-gradient(135deg, #0D4043 0%, #1a6870 100%);
}

.sglt-doc-content thead th {
color: #ffffff;
font-size: 15px;
font-weight: 700;
letter-spacing: 0.03em;
padding: 16px;
text-align: left;
border: none;
}

.sglt-doc-content tbody tr {
border-bottom: 1px solid rgba(13, 64, 67, 0.08);
transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

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

.sglt-doc-content tbody tr:nth-child(even) {
background-color: rgba(113, 115, 154, 0.05);
}

.sglt-doc-content tbody tr:hover {
background-color: rgba(13, 64, 67, 0.06);
}

.sglt-doc-content td {
padding: 16px;
color: #2a3540;
font-size: 15px;
line-height: 1.6;
vertical-align: top;
border: none;
}

.sglt-doc-content hr {
border: none;
height: 1px;
background: linear-gradient(90deg, transparent, rgba(13, 64, 67, 0.18), rgba(113, 115, 154, 0.22), transparent);
margin: 32px 0;
}

.dbt {
max-width: 1440px;
margin: 0 auto;
overflow: hidden;
}

.dbt .pg-s1 {
padding: 64px 96px 64px;
background: linear-gradient(31deg, #0D4043 0%, #1a5a5e 40%, #e8ede8 100%);
position: relative;
}

.dbt .pg-s1::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 3px;
background: repeating-linear-gradient(90deg, #71739A 0px, #71739A 4px, transparent 4px, transparent 10px),
repeating-linear-gradient(90deg, #B3B7C7 0px, #B3B7C7 4px, transparent 4px, transparent 10px);
background-position: 0 0, 0 2px;
background-size: 14px 2px, 14px 2px;
}

.dbt .s1-grid {
display: flex;
flex-direction: row;
gap: 64px;
align-items: flex-start;
}

.dbt .s1-text {
flex: 1.2;
padding-top: 32px;
}

.dbt .s1-label {
font-size: 15px;
letter-spacing: 0.12em;
color: #B3B7C7;
text-transform: uppercase;
margin-bottom: 16px;
line-height: 1.6;
}

.dbt .s1-h1 {
font-size: 72px;
line-height: 1.2;
letter-spacing: -0.03em;
color: transparent;
-webkit-text-stroke: 2px #fff;
margin-bottom: 32px;
animation: splitReveal 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

@keyframes splitReveal {
from {
letter-spacing: 0.18em;
opacity: 0;
}

to {
letter-spacing: -0.03em;
opacity: 1;
}
}

.dbt .s1-desc {
font-size: 15px;
line-height: 1.9;
color: #d4ddd4;
max-width: 480px;
margin-left: auto;
margin-right: 0;
}

.dbt .s1-imgcol {
flex: 1;
display: flex;
flex-direction: column;
gap: 16px;
align-self: flex-end;
}

.dbt .s1-imgwrap {
border-radius: 12px;
overflow: hidden;
position: relative;
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.14);
}

.dbt .s1-imgwrap img {
width: 100%;
height: 340px;
object-fit: cover;
object-position: center;
display: block;
max-width: 100%;
}

.dbt .s1-imgwrap::after {
content: '';
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 30% 60%, transparent 40%, rgba(13, 64, 67, 0.38) 100%);
pointer-events: none;
}

.dbt .s1-arrow {
width: 32px;
height: 32px;
border-radius: 6px;
background: rgba(179, 183, 199, 0.18);
display: flex;
align-items: center;
justify-content: center;
align-self: flex-end;
}

.dbt .s1-arrow svg {
width: 18px;
height: 18px;
stroke: #B3B7C7;
fill: none;
stroke-width: 2;
}

.dbt .pg-s2 {
padding: 64px 96px;
background: #fff;
position: relative;
}

.dbt .pg-s2::after {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: repeating-linear-gradient(90deg, #0D4043 0px, #0D4043 4px, transparent 4px, transparent 10px),
repeating-linear-gradient(90deg, #71739A 0px, #71739A 4px, transparent 4px, transparent 10px);
background-position: 0 0, 0 2px;
background-size: 14px 2px, 14px 2px;
}

.dbt .s2-row {
display: flex;
flex-direction: row;
gap: 64px;
align-items: flex-start;
}

.dbt .s2-left {
flex: 1;
position: relative;
}

.dbt .s2-notch {
position: absolute;
left: -16px;
top: 8px;
width: 4px;
height: 64px;
background: linear-gradient(31deg, #0D4043, #71739A);
border-radius: 6px;
}

.dbt .s2-h2 {
font-size: 31px;
line-height: 1.2;
letter-spacing: -0.01em;
color: transparent;
-webkit-text-stroke: 1.5px #0D4043;
margin-bottom: 16px;
padding-left: 8px;
}

.dbt .s2-sub {
font-size: 15px;
line-height: 1.9;
color: #2a3a3b;
padding-left: 8px;
max-width: 360px;
}

.dbt .s2-right {
flex: 1.4;
}

.dbt .s2-cards {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
}

.dbt .s2-card {
background: #f2f5f5;
border-radius: 12px;
padding: 32px;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.dbt .s2-card:hover {
transform: translateY(-4px);
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
}

.dbt .s2-card.shifted {
margin-top: 48px;
}

.dbt .s2-cicon {
width: 36px;
height: 36px;
border-radius: 6px;
background: linear-gradient(31deg, #0D4043, #71739A);
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 16px;
}

.dbt .s2-cicon i {
color: #fff;
font-size: 18px;
}

.dbt .s2-ch {
font-size: 15px;
font-weight: 700;
color: #0D4043;
margin-bottom: 8px;
line-height: 1.6;
}

.dbt .s2-ct {
font-size: 15px;
line-height: 1.9;
color: #3a4a4b;
}

.dbt .s2-imgrow {
margin-top: 32px;
border-radius: 12px;
overflow: hidden;
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
}

.dbt .s2-imgrow img {
width: 100%;
height: 220px;
object-fit: cover;
object-position: center;
display: block;
max-width: 100%;
}

.dbt .pg-s3 {
padding: 64px 96px;
background: linear-gradient(31deg, #0D4043 0%, #71739A 100%);
position: relative;
}

.dbt .pg-s3::before {
content: '';
position: absolute;
inset: 0;
background-image: repeating-linear-gradient(135deg,
rgba(255, 255, 255, 0.03) 0px,
rgba(255, 255, 255, 0.03) 6px,
transparent 6px,
transparent 18px);
pointer-events: none;
}

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

.dbt .s3-topleft {
flex: 1;
}

.dbt .s3-h2 {
font-size: 60px;
line-height: 1.2;
letter-spacing: -0.02em;
color: transparent;
-webkit-text-stroke: 2px #fff;
margin-bottom: 16px;
}

.dbt .s3-topright {
flex: 1;
padding-top: 16px;
}

.dbt .s3-desc {
font-size: 15px;
line-height: 1.9;
color: rgba(255, 255, 255, 0.82);
}

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

.dbt .s3-item {
background: rgba(255, 255, 255, 0.09);
border-radius: 12px;
padding: 32px;
backdrop-filter: blur(6px);
-webkit-backdrop-filter: blur(6px);
border: 1px solid rgba(255, 255, 255, 0.12);
position: relative;
overflow: hidden;
}

.dbt .s3-item::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(90deg, #B3B7C7, transparent);
}

.dbt .s3-ih {
font-size: 23px;
line-height: 1.2;
letter-spacing: -0.01em;
color: transparent;
-webkit-text-stroke: 1px #B3B7C7;
margin-bottom: 8px;
}

.dbt .s3-it {
font-size: 15px;
line-height: 1.9;
color: rgba(255, 255, 255, 0.78);
}

.dbt .s3-imgpair {
display: flex;
flex-direction: row;
gap: 16px;
margin-top: 32px;
}

.dbt .s3-imgpair .imgw {
flex: 1;
border-radius: 12px;
overflow: hidden;
}

.dbt .s3-imgpair .imgw img {
width: 100%;
height: 200px;
object-fit: cover;
object-position: center;
display: block;
max-width: 100%;
}

.dbt .pg-s4 {
padding: 64px 96px;
background: #f0f3f3;
position: relative;
}

.dbt .pg-s4::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: repeating-linear-gradient(90deg, #B3B7C7 0px, #B3B7C7 4px, transparent 4px, transparent 10px),
repeating-linear-gradient(90deg, #71739A 0px, #71739A 4px, transparent 4px, transparent 10px);
background-position: 0 0, 0 2px;
background-size: 14px 2px, 14px 2px;
}

.dbt .s4-head {
max-width: 600px;
margin: 0 auto 48px;
text-align: center;
}

.dbt .s4-h2 {
font-size: 31px;
line-height: 1.2;
letter-spacing: -0.01em;
color: transparent;
-webkit-text-stroke: 1.5px #0D4043;
margin-bottom: 16px;
}

.dbt .s4-hdesc {
font-size: 15px;
line-height: 1.9;
color: #3a4a4b;
margin: 0 64px;
}

.dbt .s4-timeline {
display: flex;
flex-direction: row;
gap: 8px;
align-items: stretch;
margin-bottom: 48px;
}

.dbt .s4-phase {
flex: 1;
background: #fff;
border-radius: 12px;
padding: 32px 16px;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
position: relative;
transition: box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.dbt .s4-phase:hover {
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
}

.dbt .s4-pnum {
font-size: 60px;
line-height: 1.2;
letter-spacing: -0.04em;
color: transparent;
-webkit-text-stroke: 1px #B3B7C7;
margin-bottom: 8px;
}

.dbt .s4-ph {
font-size: 15px;
font-weight: 700;
color: #0D4043;
line-height: 1.6;
margin-bottom: 8px;
}

.dbt .s4-pt {
font-size: 15px;
line-height: 1.9;
color: #3a4a4b;
}

.dbt .s4-connector {
width: 4px;
background: linear-gradient(180deg, #0D4043, #B3B7C7);
border-radius: 6px;
align-self: stretch;
flex-shrink: 0;
margin-top: 32px;
margin-bottom: 32px;
}

.dbt .s4-bottom {
display: flex;
flex-direction: row;
gap: 32px;
align-items: flex-start;
}

.dbt .s4-profile {
display: flex;
flex-direction: row;
gap: 16px;
align-items: center;
background: #fff;
border-radius: 12px;
padding: 32px;
flex: 1;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
}

.dbt .s4-portrait {
width: 80px;
height: 103px;
border-radius: 12px;
overflow: hidden;
flex-shrink: 0;
}

.dbt .s4-portrait img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
}

.dbt .s4-ptext {
flex: 1;
}

.dbt .s4-pname {
font-size: 15px;
font-weight: 700;
color: #0D4043;
line-height: 1.6;
margin-bottom: 4px;
}

.dbt .s4-prole {
font-size: 15px;
color: #71739A;
line-height: 1.6;
margin-bottom: 8px;
}

.dbt .s4-pquote {
font-size: 15px;
line-height: 1.9;
color: #3a4a4b;
}

.dbt .s4-links {
flex: 1;
display: flex;
flex-direction: column;
gap: 8px;
}

.dbt .s4-lnk {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
background: #fff;
border-radius: 12px;
padding: 16px 32px;
text-decoration: none;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
transition: box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
position: relative;
overflow: hidden;
}

.dbt .s4-lnk::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(31deg, #0D4043, #71739A);
opacity: 0;
transition: opacity 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
border-radius: 12px;
}

.dbt .s4-lnk:hover::after {
opacity: 1;
}

.dbt .s4-lnk:hover .s4-lt,
.dbt .s4-lnk:hover .s4-li {
color: #fff;
position: relative;
z-index: 1;
}

.dbt .s4-li {
font-size: 23px;
color: #0D4043;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
position: relative;
z-index: 1;
}

.dbt .s4-lt {
font-size: 15px;
font-weight: 700;
color: #0D4043;
line-height: 1.6;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
position: relative;
z-index: 1;
}

.dbt .s4-wavy {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 8px;
overflow: hidden;
}

.dbt .s4-wavy svg {
width: 100%;
height: 8px;
}

@media (max-width: 900px) {

.dbt .pg-s1,
.dbt .pg-s2,
.dbt .pg-s3,
.dbt .pg-s4 {
padding: 32px 16px;
}

.dbt .s1-grid,
.dbt .s2-row,
.dbt .s3-top,
.dbt .s4-bottom {
flex-direction: column;
gap: 32px;
}

.dbt .s1-h1 {
font-size: 31px;
}

.dbt .s3-h2 {
font-size: 31px;
}

.dbt .s2-cards {
grid-template-columns: 1fr;
}

.dbt .s2-card.shifted {
margin-top: 0;
}

.dbt .s3-list {
grid-template-columns: 1fr;
}

.dbt .s4-timeline {
flex-direction: column;
}

.dbt .s4-connector {
width: auto;
height: 4px;
margin: 0;
}

.dbt .s4-pnum {
font-size: 31px;
}

.dbt .s3-imgpair {
flex-direction: column;
}

.dbt .s4-hdesc {
margin: 0;
}
}

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

.ctus .pg-vig {
position: fixed;
inset: 0;
pointer-events: none;
z-index: 0;
background: radial-gradient(ellipse 80% 80% at 50% 50%, transparent 60%, rgba(13, 64, 67, 0.07) 100%);
animation: vigpulse 6s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite alternate;
}

@keyframes vigpulse {
from {
opacity: 0.6;
}

to {
opacity: 1;
}
}

.ctus .titleblk {
position: relative;
padding: 96px 64px 64px;
background: linear-gradient(31deg, #0D4043 0%, #0D4043 40%, rgba(13, 64, 67, 0.55) 70%, transparent 100%);
overflow: hidden;
}

.ctus .titleblk::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(to bottom, transparent 0%, rgba(13, 64, 67, 0.18) 100%);
pointer-events: none;
}

.ctus .tb-curves {
position: absolute;
inset: 0;
pointer-events: none;
overflow: hidden;
}

.ctus .tb-curves svg {
position: absolute;
top: 0;
right: 0;
width: 60%;
height: 100%;
opacity: 0.13;
}

.ctus .tb-inner {
max-width: 1440px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 64px;
position: relative;
z-index: 1;
}

.ctus .tb-text {
flex: 1 1 0;
}

.ctus .tb-label {
display: inline-block;
font-size: 15px;
line-height: 1.6;
letter-spacing: 0.12em;
color: #B3B7C7;
text-transform: uppercase;
margin-bottom: 16px;
background: rgba(255, 255, 255, 0.07);
padding: 4px 16px;
border-radius: 6px;
}

.ctus .tb-h1 line1 {
display: block;
}

.ctus .tb-h1 {
font-size: 60px;
line-height: 1.2;
letter-spacing: -0.02em;
margin: 0 0 16px;
color: #fff;
}

.ctus .tb-h1 .ln1 {
display: block;
color: transparent;
-webkit-text-stroke: 1.5px rgba(255, 255, 255, 0.55);
font-size: 60px;
}

.ctus .tb-h1 .ln2 {
display: block;
color: transparent;
-webkit-text-stroke: 1.5px rgba(255, 255, 255, 0.75);
font-size: 60px;
}

.ctus .tb-h1 .ln3 {
display: block;
color: #fff;
font-size: 60px;
}

.ctus .tb-desc {
font-size: 15px;
line-height: 1.9;
color: rgba(255, 255, 255, 0.75);
max-width: 480px;
margin: 0;
}

.ctus .tb-img {
flex: 0 0 420px;
height: 340px;
border-radius: 12px;
overflow: hidden;
position: relative;
}

.ctus .tb-img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: sepia(0.18) saturate(1.2) brightness(0.88);
}

.ctus .tb-img::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(31deg, rgba(13, 64, 67, 0.62) 0%, transparent 60%);
border-radius: 12px;
}

.ctus .wave-div {
width: 100%;
overflow: hidden;
line-height: 0;
margin-bottom: -1px;
}

.ctus .wave-div svg {
display: block;
width: 100%;
}

.ctus .formblk {
background: #f5f6f8;
padding: 64px 64px;
position: relative;
}

.ctus .formblk-inner {
max-width: 1440px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1.4fr;
gap: 64px;
align-items: start;
}

.ctus .finfo {
display: flex;
flex-direction: column;
gap: 32px;
}

.ctus .finfo-hd {
font-size: 31px;
line-height: 1.2;
letter-spacing: -0.01em;
color: transparent;
-webkit-text-stroke: 1px #0D4043;
margin: 0 0 8px;
}

.ctus .finfo-sub {
font-size: 15px;
line-height: 1.9;
color: #2a3a3b;
margin: 0;
}

.ctus .fcontact-list {
display: flex;
flex-direction: column;
gap: 16px;
list-style: none;
margin: 0;
padding: 0;
}

.ctus .fcontact-list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
}

.ctus .fcontact-list .ico {
flex: 0 0 36px;
height: 36px;
background: linear-gradient(31deg, #0D4043, #71739A);
border-radius: 6px;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
font-size: 15px;
}

.ctus .fcontact-list .ctext {
display: flex;
flex-direction: column;
gap: 4px;
}

.ctus .fcontact-list .clabel {
font-size: 15px;
line-height: 1.2;
color: #71739A;
letter-spacing: 0.06em;
text-transform: uppercase;
}

.ctus .fcontact-list .cval {
font-size: 15px;
line-height: 1.6;
color: #0D4043;
font-weight: 600;
text-decoration: none;
}

.ctus .fcontact-list .cval:hover {
color: #71739A;
transition: color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ctus .formcard {
background: #fff;
border-radius: 12px;
padding: 32px;
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
}

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

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

.ctus .form-field label {
font-size: 15px;
line-height: 1.2;
color: #0D4043;
font-weight: 600;
letter-spacing: 0.04em;
}

.ctus .form-field input,
.ctus .form-field select,
.ctus .form-field textarea {
background: #f5f6f8;
border: 1.5px solid #B3B7C7;
border-radius: 6px;
padding: 8px 16px;
font-size: 15px;
line-height: 1.6;
color: #0D4043;
outline: none;
transition: border-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: inset 2px 3px 6px -2px rgba(13, 64, 67, 0.06);
width: 100%;
box-sizing: border-box;
appearance: none;
-webkit-appearance: none;
}

.ctus .form-field input::placeholder,
.ctus .form-field textarea::placeholder {
color: #B3B7C7;
}

.ctus .form-field input:focus,
.ctus .form-field select:focus,
.ctus .form-field textarea:focus {
border-color: #0D4043;
box-shadow: inset 2px 3px 6px -2px rgba(13, 64, 67, 0.06), 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
}

.ctus .form-field select {
cursor: pointer;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%230D4043' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 16px center;
padding-right: 40px;
}

.ctus .form-field textarea {
resize: vertical;
min-height: 96px;
}

.ctus .priv-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
margin-bottom: 16px;
}

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

.ctus .priv-row .priv-txt {
font-size: 15px;
line-height: 1.6;
color: #71739A;
}

.ctus .priv-row .priv-txt a {
color: #0D4043;
text-decoration: underline;
text-underline-offset: 2px;
}

.ctus .priv-row .priv-txt a:hover {
color: #71739A;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ctus .submitbtn {
display: inline-block;
position: relative;
overflow: hidden;
background: linear-gradient(31deg, #0D4043 0%, #71739A 100%);
color: #fff;
font-size: 15px;
line-height: 1.6;
letter-spacing: 0.06em;
padding: 8px 32px;
border-radius: 36px;
border: none;
cursor: pointer;
font-weight: 600;
transition: box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
z-index: 1;
}

.ctus .submitbtn::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(31deg, #71739A 0%, #0D4043 100%);
transform: translateX(100%);
transition: transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
z-index: -1;
border-radius: 36px;
}

.ctus .submitbtn:hover::before {
transform: translateX(0);
}

.ctus .submitbtn:hover {
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
transform: translateY(-2px);
}

.ctus .submitbtn:focus {
outline: 2px solid #0D4043;
outline-offset: 3px;
}

.ctus .submitbtn:active {
transform: translateY(0);
}

.ctus .wave-div2 {
width: 100%;
overflow: hidden;
line-height: 0;
margin-top: -1px;
}

.ctus .wave-div2 svg {
display: block;
width: 100%;
}

.ctus .annotblk {
padding: 64px 64px;
background: #fff;
position: relative;
}

.ctus .annotblk-inner {
max-width: 1440px;
margin: 0 auto;
display: grid;
grid-template-columns: 1.1fr 1fr;
gap: 64px;
align-items: center;
}

.ctus .annot-imgwrap {
position: relative;
border-radius: 12px;
overflow: hidden;
height: 440px;
}

.ctus .annot-imgwrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.ctus .annot-imgwrap::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(31deg, rgba(13, 64, 67, 0.28) 0%, transparent 70%);
}

.ctus .annot-imgwrap::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(to right, transparent 70%, #fff 100%);
z-index: 2;
pointer-events: none;
}

.ctus .annot-labels {
display: flex;
flex-direction: column;
gap: 16px;
}

.ctus .annot-hd {
font-size: 31px;
line-height: 1.2;
letter-spacing: -0.01em;
color: transparent;
-webkit-text-stroke: 1px #0D4043;
margin: 0 0 16px;
}

.ctus .annot-item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
padding: 16px;
border-radius: 12px;
background: #f5f6f8;
box-shadow: 1px 3px 5px -2px rgba(13, 64, 67, 0.08);
transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ctus .annot-item:hover {
box-shadow: 1px 5px 22px -2px rgba(13, 64, 67, 0.09);
transform: translateX(4px);
}

.ctus .annot-num {
flex: 0 0 36px;
height: 36px;
background: linear-gradient(31deg, #0D4043, #71739A);
border-radius: 6px;
display: flex;
align-items: center;
justify-content: center;
color: #fff;
font-size: 15px;
font-weight: 700;
letter-spacing: -0.01em;
}

.ctus .annot-body {
display: flex;
flex-direction: column;
gap: 4px;
}

.ctus .annot-body strong {
font-size: 15px;
line-height: 1.2;
color: #0D4043;
font-weight: 700;
}

.ctus .annot-body p {
font-size: 15px;
line-height: 1.6;
color: #71739A;
margin: 0;
}

.ctus .split-bg {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0;
}

.ctus .split-bg::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 50%;
background: #f5f6f8;
}

.ctus .split-bg::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 50%;
background: #fff;
}

.ctus .annotblk-inner {
position: relative;
z-index: 1;
}

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

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

.ctus .annot-item:nth-child(1) {
animation: wavein 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) 0.05s both;
}

.ctus .annot-item:nth-child(2) {
animation: wavein 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) 0.12s both;
}

.ctus .annot-item:nth-child(3) {
animation: wavein 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) 0.19s both;
}

.ctus .annot-item:nth-child(4) {
animation: wavein 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) 0.26s both;
}

@media (max-width: 1024px) {
.ctus .tb-inner {
flex-direction: column;
gap: 32px;
}

.ctus .tb-img {
flex: 0 0 auto;
width: 100%;
height: 260px;
}

.ctus .formblk-inner {
grid-template-columns: 1fr;
gap: 32px;
}

.ctus .annotblk-inner {
grid-template-columns: 1fr;
gap: 32px;
}

.ctus .annot-imgwrap {
height: 280px;
}
}

@media (max-width: 768px) {
.ctus .titleblk {
padding: 64px 32px 32px;
}

.ctus .tb-h1 .ln1,
.ctus .tb-h1 .ln2,
.ctus .tb-h1 .ln3 {
font-size: 31px;
}

.ctus .formblk {
padding: 32px 32px;
}

.ctus .annotblk {
padding: 32px 32px;
}

.ctus .form-row {
grid-template-columns: 1fr;
}
}

.spkg {
max-width: 1440px;
margin: 0 auto;
overflow: hidden;
}

.spkg .titblk {
display: grid;
grid-template-columns: 1fr 380px;
gap: 64px;
padding: 64px 96px 96px 96px;
background: #fff;
position: relative;
}

.spkg .titblk .decback {
position: absolute;
top: 0;
left: 0;
width: calc(100% - 380px - 64px - 96px);
height: 100%;
pointer-events: none;
overflow: hidden;
border-radius: 0;
}

.spkg .titblk .decback::before {
content: '';
position: absolute;
top: 32px;
left: 32px;
right: 32px;
bottom: 32px;
border: 1.5px solid rgba(113, 115, 154, 0.18);
border-radius: 12px;
border-right: 3px solid #0D4043;
}

.spkg .titblk .txtzone {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
gap: 16px;
padding: 16px 0;
}

.spkg .titblk .lbl {
font-size: 15px;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #71739A;
font-weight: 600;
line-height: 1.2;
}

.spkg .titblk .mhead {
font-size: 60px;
line-height: 1.2;
letter-spacing: -0.03em;
color: transparent;
-webkit-text-stroke: 2px #0D4043;
background: none;
margin: 0;
}

.spkg .titblk .slogan {
font-size: 23px;
line-height: 1.6;
color: #2a3a3b;
font-style: italic;
max-width: 480px;
border-top: 1px solid rgba(13, 64, 67, 0.15);
padding-top: 16px;
margin: 0;
}

.spkg .titblk .imgcol {
position: relative;
z-index: 1;
}

.spkg .titblk .imgcol img {
width: 100%;
height: 460px;
object-fit: cover;
border-radius: 12px;
display: block;
}

.spkg .divdr {
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
padding: 16px 96px;
background: #fff;
}

.spkg .divdr span {
width: 7px;
height: 7px;
background: #B3B7C7;
transform: rotate(45deg);
display: inline-block;
flex-shrink: 0;
}

.spkg .divdr span.ac {
background: #0D4043;
}

.spkg .evtgrid {
padding: 64px 96px;
background: linear-gradient(31deg, #0D4043 0%, #1e5558 60%, #2d6b6f 100%);
position: relative;
overflow: hidden;
}

.spkg .evtgrid::before {
content: '';
position: absolute;
inset: 0;
background-image:
repeating-linear-gradient(60deg,
transparent,
transparent 18px,
rgba(255, 255, 255, 0.025) 18px,
rgba(255, 255, 255, 0.025) 19px),
repeating-linear-gradient(-60deg,
transparent,
transparent 18px,
rgba(255, 255, 255, 0.025) 18px,
rgba(255, 255, 255, 0.025) 19px);
pointer-events: none;
}

.spkg .evtgrid .toplbl {
font-size: 15px;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #B3B7C7;
font-weight: 600;
line-height: 1.2;
margin-bottom: 16px;
}

.spkg .evtgrid .eghead {
font-size: 31px;
line-height: 1.2;
letter-spacing: -0.02em;
color: transparent;
-webkit-text-stroke: 1.5px #fff;
margin: 0 0 32px 0;
}

.spkg .evtgrid .egrid {
display: grid;
grid-template-columns: 2fr 1fr 1fr 1fr;
gap: 16px;
position: relative;
z-index: 1;
}

.spkg .evtgrid .ecard {
background: rgba(255, 255, 255, 0.07);
border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 12px;
padding: 32px;
display: flex;
flex-direction: column;
gap: 16px;
transition: background 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.spkg .evtgrid .ecard:hover {
background: rgba(255, 255, 255, 0.13);
box-shadow: 1px 12px 52px -2px rgba(13, 64, 67, 0.14);
}

.spkg .evtgrid .ecard.featured {
background: rgba(255, 255, 255, 0.11);
}

.spkg .evtgrid .etag {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 15px;
color: #B3B7C7;
letter-spacing: 0.06em;
text-transform: uppercase;
font-weight: 600;
}

.spkg .evtgrid .etag i {
font-size: 15px;
color: #B3B7C7;
}

.spkg .evtgrid .etitle {
font-size: 23px;
line-height: 1.2;
color: #fff;
margin: 0;
font-weight: 700;
}

.spkg .evtgrid .ecard.featured .etitle {
font-size: 31px;
}

.spkg .evtgrid .edesc {
font-size: 15px;
line-height: 1.6;
color: rgba(255, 255, 255, 0.75);
margin: 0;
}

.spkg .evtgrid .emeta {
display: flex;
flex-direction: column;
gap: 8px;
margin-top: auto;
}

.spkg .evtgrid .erow {
display: flex;
align-items: center;
gap: 8px;
font-size: 15px;
color: rgba(255, 255, 255, 0.6);
}

.spkg .evtgrid .erow i {
font-size: 15px;
color: #B3B7C7;
flex-shrink: 0;
}

.spkg .evtgrid .erow strong {
color: #fff;
font-weight: 600;
}

.spkg .evtgrid .statbar {
margin-top: 8px;
display: flex;
flex-direction: column;
gap: 4px;
}

.spkg .evtgrid .statbar .stlbl {
font-size: 15px;
color: rgba(255, 255, 255, 0.55);
letter-spacing: 0.04em;
}

.spkg .evtgrid .statbar .sttrack {
height: 6px;
background: rgba(255, 255, 255, 0.12);
border-radius: 6px;
overflow: hidden;
}

.spkg .evtgrid .statbar .stfill {
height: 100%;
border-radius: 6px;
background: linear-gradient(90deg, #B3B7C7, #71739A);
animation: fillbar 1.4s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
width: 0;
}

@keyframes fillbar {
to {
width: var(--fw);
}
}

.spkg .evtgrid .infocard {
background: rgba(255, 255, 255, 0.04);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 12px;
padding: 32px;
display: flex;
flex-direction: column;
gap: 16px;
}

.spkg .evtgrid .irow {
display: flex;
flex-direction: column;
gap: 4px;
padding-bottom: 16px;
border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.spkg .evtgrid .irow:last-child {
border-bottom: none;
padding-bottom: 0;
}

.spkg .evtgrid .ilbl {
font-size: 15px;
color: rgba(255, 255, 255, 0.45);
letter-spacing: 0.06em;
text-transform: uppercase;
}

.spkg .evtgrid .ival {
font-size: 15px;
color: #fff;
font-weight: 600;
line-height: 1.6;
}

.spkg .divdr2 {
display: flex;
align-items: center;
padding: 0 96px;
background: linear-gradient(31deg, #0D4043 0%, #2d6b6f 100%);
}

.spkg .divdr2 .dline {
flex: 1;
height: 1px;
background: rgba(255, 255, 255, 0.12);
}

.spkg .divdr2 .ddiam {
width: 8px;
height: 8px;
background: rgba(255, 255, 255, 0.3);
transform: rotate(45deg);
margin: 0 4px;
flex-shrink: 0;
}

.spkg .evtgrid .speakrow {
display: grid;
grid-template-columns: 2fr 1fr 1fr 1fr;
gap: 16px;
margin-top: 16px;
position: relative;
z-index: 1;
}

.spkg .evtgrid .spkcard {
background: rgba(255, 255, 255, 0.05);
border: 1px solid rgba(255, 255, 255, 0.1);
border-radius: 12px;
padding: 32px;
display: flex;
flex-direction: column;
gap: 8px;
}

.spkg .evtgrid .spkname {
font-size: 15px;
font-weight: 700;
color: #fff;
line-height: 1.2;
}

.spkg .evtgrid .spkrole {
font-size: 15px;
color: rgba(255, 255, 255, 0.55);
line-height: 1.6;
}

.spkg .evtgrid .spkquote {
font-size: 15px;
color: rgba(255, 255, 255, 0.7);
line-height: 1.6;
font-style: italic;
margin: 0;
padding-top: 8px;
border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.spkg .evtgrid .spkcard.wide {
grid-column: span 2;
}

@media (max-width: 1100px) {
.spkg .titblk {
grid-template-columns: 1fr;
padding: 64px 32px 64px 32px;
gap: 32px;
}

.spkg .titblk .decback {
width: 100%;
}

.spkg .titblk .imgcol img {
height: 320px;
}

.spkg .evtgrid {
padding: 64px 32px;
}

.spkg .evtgrid .egrid {
grid-template-columns: 1fr 1fr;
}

.spkg .evtgrid .ecard.featured {
grid-column: span 2;
}

.spkg .evtgrid .speakrow {
grid-template-columns: 1fr 1fr;
}

.spkg .evtgrid .spkcard.wide {
grid-column: span 2;
}

.spkg .divdr {
padding: 16px 32px;
}
}

@media (max-width: 700px) {
.spkg .titblk {
padding: 32px 16px 64px 16px;
}

.spkg .titblk .mhead {
font-size: 31px;
}

.spkg .titblk .slogan {
font-size: 15px;
}

.spkg .evtgrid {
padding: 32px 16px;
}

.spkg .evtgrid .egrid {
grid-template-columns: 1fr;
}

.spkg .evtgrid .ecard.featured {
grid-column: span 1;
}

.spkg .evtgrid .speakrow {
grid-template-columns: 1fr;
}

.spkg .evtgrid .spkcard.wide {
grid-column: span 1;
}

.spkg .divdr {
padding: 16px;
}
}