html {
box-sizing: border-box;
margin: 0;
padding: 0
}

body {
margin: 0;
position: relative;
min-height: 100vh
}

.sitehead {
background: linear-gradient(135deg, #0A7289 0%, #085f73 60%, #791CEC 100%);
font-family: 'Archivo', sans-serif
}

.sitehead-upper {
max-width: 1170px;
margin: 0 auto;
padding: 24px 24px 0;
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 24px
}

.brandcell {
display: flex;
flex-direction: column;
gap: 6px;
flex-shrink: 0
}

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

.logoframe {
width: 88px;
height: 88px;
background: #fff;
border-radius: 16px;
box-shadow: 2px 6px 22px -2px #0a728917;
border: 2px solid #ffffffe6;
display: flex;
align-items: center;
justify-content: center;
padding: 6px;
flex-shrink: 0
}

.logoframe img {
width: 100%;
height: 100%;
object-fit: contain;
display: block
}

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

.brandname {
font-size: 23px;
font-weight: 700;
color: #fff;
line-height: 1.2;
letter-spacing: -.03em
}

.brandtag {
font-size: 13px;
color: #ffffffc7;
line-height: 1.7;
font-weight: 400;
letter-spacing: .01em
}

.headright {
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 12px;
padding-top: 6px
}

.contactstrip {
display: flex;
align-items: center;
gap: 24px
}

.contactitem {
display: flex;
align-items: center;
gap: 6px;
text-decoration: none;
color: #ffffffd9;
font-size: 13px;
font-family: 'Archivo', sans-serif;
line-height: 1.2;
border-radius: 8px;
padding: 6px 12px;
border: 1px solid #ffffff2e;
background: #ffffff14;
transition: background .22s cubic-bezier(0.4, 0, 0.2, 1), color .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.contactitem:hover {
background: #ffffff2e;
color: #fff;
transform: translateY(-2px)
}

.contactitem svg {
flex-shrink: 0;
color: #DEAC0A
}

.regionbadge {
display: flex;
align-items: center;
gap: 6px;
font-size: 13px;
color: #ffffffa6;
font-family: 'Archivo', sans-serif;
line-height: 1.2;
padding: 6px 12px;
border-radius: 8px;
background: #ffffff0f;
border: 1px solid #ffffff1f
}

.regionbadge svg {
color: #DEAC0A;
flex-shrink: 0
}

.sitehead-lower {
max-width: 1170px;
margin: 0 auto;
padding: 0 24px
}

.navdeck {
display: flex;
align-items: stretch;
gap: 0;
margin-top: 24px;
border-top: 1px solid #ffffff26;
padding-top: 0
}

.navitem {
display: flex;
align-items: center;
gap: 6px;
text-decoration: none;
color: #ffffffd1;
font-size: 15px;
font-family: 'Archivo', sans-serif;
font-weight: 400;
line-height: 1.2;
padding: 18px 24px;
border-bottom: 3px solid transparent;
transition: color .2s cubic-bezier(0.4, 0, 0.2, 1), border-color .25s cubic-bezier(0.0, 0, 0.2, 1), background .2s cubic-bezier(0.4, 0, 0.2, 1);
white-space: nowrap
}

.navitem:hover {
color: #fff;
border-bottom-color: #DEAC0A;
background: #ffffff0f
}

.navitem.active {
color: #fff;
border-bottom-color: #DEAC0A;
font-weight: 700
}

.navitem svg {
flex-shrink: 0;
opacity: .7
}

.navitem:hover svg {
opacity: 1
}

.sitefooter {
background: #0d1a1f;
font-family: 'Archivo', sans-serif;
border-top: 3px solid #0A7289
}

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

.footdivider {
background: #ffffff1a;
height: 100%;
min-height: 120px;
align-self: stretch
}

.footcol {
padding: 0 12px
}

.footcol-label {
font-size: 13px;
font-weight: 700;
color: #DEAC0A;
letter-spacing: .08em;
text-transform: uppercase;
line-height: 1.2;
margin-bottom: 24px;
display: flex;
align-items: center;
gap: 6px
}

.footcol-label svg {
flex-shrink: 0
}

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

.footlinks li a {
text-decoration: none;
color: #ffffffa6;
font-size: 15px;
line-height: 1.7;
font-family: 'Archivo', sans-serif;
transition: color .2s cubic-bezier(0.4, 0, 0.2, 1), transform .2s cubic-bezier(0.4, 0, 0.2, 1);
display: inline-flex;
align-items: center;
gap: 6px
}

.footlinks li a:hover {
color: #fff;
transform: translateX(3px)
}

.footlinks li a svg {
flex-shrink: 0;
color: #0A7289
}

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

.footcontactitem {
display: flex;
align-items: flex-start;
gap: 6px;
color: #ffffffa6;
font-size: 13px;
line-height: 1.7;
font-family: 'Archivo', sans-serif;
text-decoration: none;
transition: color .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.footcontactitem:hover {
color: #fff
}

.footcontactitem svg {
flex-shrink: 0;
margin-top: 2px;
color: #791CEC
}

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

.footlogoframe {
width: 72px;
height: 72px;
background: #fff;
border-radius: 16px;
box-shadow: 2px 3px 6px -2px #0a728914;
border: 2px solid #ffffffe6;
display: flex;
align-items: center;
justify-content: center;
padding: 6px
}

.footlogoframe img {
width: 100%;
height: 100%;
object-fit: contain;
display: block
}

.footbrandname {
font-size: 18px;
font-weight: 700;
color: #fff;
line-height: 1.2;
letter-spacing: -.02em
}

.footbranddesc {
font-size: 13px;
color: #ffffff80;
line-height: 1.7
}

.footbottom {
max-width: 1170px;
margin: 0 auto;
padding: 24px 24px 36px;
border-top: 1px solid #ffffff14;
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
flex-wrap: wrap
}

.copyright {
font-size: 13px;
color: #ffffff61;
font-family: 'Archivo', sans-serif;
line-height: 1.7
}

.footpolicies {
display: flex;
align-items: center;
gap: 24px;
flex-wrap: wrap
}

.footpolicies a {
font-size: 13px;
color: #ffffff6b;
text-decoration: none;
font-family: 'Archivo', sans-serif;
line-height: 1.7;
transition: color .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.footpolicies a:hover {
color: #ffffffbf
}

.footpolicies a+a {
padding-left: 24px;
border-left: 1px solid #ffffff1f
}

:focus-visible {
outline: 2px solid #DEAC0A;
outline-offset: 3px;
box-shadow: 0 0 0 4px #deac0a2e
}

.mnj-legal-box {
max-width: 1170px;
margin: 0 auto;
padding: 72px 36px
}

.mnj-legal-box p {
font-size: 15px;
line-height: 1.7;
color: #2c2c2c;
margin-bottom: 24px
}

.mnj-legal-box ul,
.mnj-legal-box ol {
margin: 0 0 24px;
padding-left: 36px
}

.mnj-legal-box ul {
list-style-type: disc
}

.mnj-legal-box ol {
list-style-type: decimal
}

.mnj-legal-box li {
font-size: 15px;
line-height: 1.7;
color: #2c2c2c;
margin-bottom: 6px;
padding-left: 6px
}

.mnj-legal-box li:last-child {
margin-bottom: 0
}

.mnj-legal-box ul ul,
.mnj-legal-box ol ol,
.mnj-legal-box ul ol,
.mnj-legal-box ol ul {
margin-top: 6px;
margin-bottom: 6px
}

.mnj-legal-box strong,
.mnj-legal-box b {
font-weight: 700;
color: #1b1b1b
}

.mnj-legal-box em,
.mnj-legal-box i {
font-style: italic;
color: #2c2c2c
}

.mnj-legal-box hr {
border: none;
border-top: 2px solid #0A7289;
opacity: .18;
margin: 36px 0
}

.mnj-legal-box div {
margin-bottom: 24px
}

.mnj-legal-box a {
color: #0A7289;
text-decoration: underline;
text-underline-offset: 3px;
text-decoration-thickness: 1px;
transition: color .22s cubic-bezier(0.4, 0, 0.2, 1), text-decoration-color .18s cubic-bezier(0.0, 0, 0.2, 1)
}

.mnj-legal-box a:hover {
color: #791CEC;
text-decoration-color: #791CEC
}

@media (max-width: 768px) {
.mnj-legal-box {
padding: 36px 24px
}

.mnj-legal-box p,
.mnj-legal-box li {
font-size: 15px
}

.mnj-legal-box ul,
.mnj-legal-box ol {
padding-left: 24px
}
}

@media (max-width: 480px) {
.mnj-legal-box {
padding: 24px 12px
}
}

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

.tmpage .tmbody {
max-width: 1170px;
margin: 0 auto;
padding: 0 24px
}

.tmpage .titlesec {
position: relative;
padding: 72px 0 0
}

.tmpage .titlesec .diagbg {
position: relative;
background: linear-gradient(118deg, #0A7289 0%, #0A7289 48%, #f4f0ff 48%, #f4f0ff 100%);
border-radius: 16px;
overflow: hidden;
max-width: 1170px;
margin: 0 auto;
padding: 0 24px
}

.tmpage .titlesec .diagband {
position: absolute;
top: 0;
left: 0;
width: 6px;
height: 100%;
background: #DEAC0A;
border-radius: 16px 0 0 16px
}

.tmpage .titlesec .diaginner {
display: flex;
flex-direction: row;
align-items: stretch;
min-height: 420px
}

.tmpage .titlesec .diagleft {
flex: 0 0 52%;
padding: 72px 48px 72px 24px;
display: flex;
flex-direction: column;
justify-content: center;
gap: 24px
}

.tmpage .titlesec .diagright {
flex: 0 0 48%;
position: relative;
display: flex;
align-items: center;
justify-content: center;
padding: 36px 24px
}

.tmpage .titlesec .diagright .imgwrap {
width: 100%;
height: 360px;
border-radius: 16px;
overflow: hidden;
box-shadow: 2px 8px 48px -2px #0a72891a
}

.tmpage .titlesec .diagright .imgwrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
filter: saturate(0.7) brightness(0.88) contrast(1.1)
}

.tmpage .titlesec .tagline {
display: inline-flex;
align-items: center;
gap: 6px;
border: 2px solid #DEAC0A;
border-radius: 8px;
padding: 6px 12px;
width: fit-content
}

.tmpage .titlesec .tagline span {
font-size: 13px;
color: #DEAC0A;
letter-spacing: .04em;
font-weight: 600
}

.tmpage .titlesec .tagline svg {
color: #DEAC0A
}

.tmpage .titlesec .headrow {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px
}

.tmpage .titlesec .counter {
font-size: 62px;
line-height: 1.2;
font-weight: 800;
color: #DEAC0A;
letter-spacing: -.03em;
flex-shrink: 0
}

.tmpage .titlesec .h1text {
font-size: 45px;
line-height: 1.2;
font-weight: 800;
color: #fff;
letter-spacing: -.02em;
margin: 0
}

.tmpage .titlesec .subdesc {
font-size: 18px;
line-height: 1.7;
color: #ffffffd1;
max-width: 400px;
margin: 0
}

.tmpage .titlesec .statrow {
display: flex;
flex-direction: row;
gap: 24px;
flex-wrap: wrap
}

.tmpage .titlesec .statitem {
display: flex;
flex-direction: column;
gap: 6px
}

.tmpage .titlesec .statnum {
font-size: 32px;
line-height: 1.2;
font-weight: 800;
color: #DEAC0A;
letter-spacing: -.02em
}

.tmpage .titlesec .statlbl {
font-size: 13px;
color: #ffffffb3;
letter-spacing: .03em
}

.tmpage .membsec {
padding: 72px 0;
background: #fff;
position: relative
}

.tmpage .membsec::before {
content: '';
display: block;
text-align: center;
width: 100%;
height: 3px;
background: linear-gradient(90deg, transparent 0%, #0A7289 30%, #791CEC 70%, transparent 100%);
margin-bottom: 72px
}

.tmpage .membsec .dotdiv {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 12px;
margin-bottom: 36px
}

.tmpage .membsec .dotdiv .dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: #0A7289
}

.tmpage .membsec .dotdiv .dot.mid {
background: #DEAC0A;
width: 10px;
height: 10px
}

.tmpage .membsec .dotdiv .dot.last {
background: #791CEC
}

.tmpage .membsec .sechead {
text-align: center;
margin-bottom: 72px
}

.tmpage .membsec .sechead .overtxt {
font-size: 13px;
letter-spacing: .1em;
color: #791CEC;
font-weight: 600;
text-transform: uppercase;
margin-bottom: 12px
}

.tmpage .membsec .sechead h2 {
font-size: 45px;
line-height: 1.2;
font-weight: 800;
color: #111827;
letter-spacing: -.02em;
margin: 0 0 12px
}

.tmpage .membsec .sechead .subp {
font-size: 18px;
line-height: 1.7;
color: #374151;
max-width: 540px;
margin: 0 auto
}

.tmpage .membsec .fourcolwrap {
display: grid;
grid-template-columns: 2fr 1fr 1fr 1fr;
gap: 24px;
align-items: start
}

.tmpage .membsec .membcard {
position: relative;
border: 2px solid #e8e8e8;
border-radius: 16px;
padding: 36px 24px;
background: #fff;
transition: border-color .22s cubic-bezier(0.4, 0, 0.2, 1), transform .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.tmpage .membsec .membcard:hover {
border-color: #0A7289;
transform: translateY(-4px)
}

.tmpage .membsec .membcard.featured {
border-color: #0A7289;
box-shadow: 6px 8px 0 0 #0a72892e;
background: linear-gradient(160deg, #f0fbff 0%, #fff 100%)
}

.tmpage .membsec .membcard .shadowoffset {
position: absolute;
inset: 0;
border-radius: 16px;
border: 2px solid #0a728926;
transform: translate(6px, 6px);
z-index: -1;
pointer-events: none
}

.tmpage .membsec .membcard .portrow {
display: flex;
flex-direction: row;
align-items: center;
gap: 24px;
margin-bottom: 24px
}

.tmpage .membsec .membcard.featured .portrow {
flex-direction: row
}

.tmpage .membsec .membcard .portimg {
width: 80px;
height: 80px;
border-radius: 50%;
overflow: hidden;
flex-shrink: 0;
border: 2px solid #0A7289
}

.tmpage .membsec .membcard .portimg img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: top
}

.tmpage .membsec .membcard.featured .portimg {
width: 96px;
height: 96px;
border-color: #DEAC0A
}

.tmpage .membsec .membcard .portinfo {
display: flex;
flex-direction: column;
gap: 6px
}

.tmpage .membsec .membcard .pname {
font-size: 18px;
font-weight: 700;
color: #111827;
line-height: 1.2
}

.tmpage .membsec .membcard .prole {
font-size: 13px;
color: #0A7289;
font-weight: 600;
letter-spacing: .03em
}

.tmpage .membsec .membcard .pbio {
font-size: 15px;
line-height: 1.7;
color: #374151;
margin: 0 0 24px
}

.tmpage .membsec .membcard .skillset {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 6px
}

.tmpage .membsec .membcard .skilltag {
font-size: 13px;
padding: 6px 12px;
border-radius: 30px;
border: 2px solid #e8e8e8;
color: #374151;
font-weight: 500;
transition: border-color .2s cubic-bezier(0.4, 0, 0.2, 1), color .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.tmpage .membsec .membcard .skilltag:hover {
border-color: #0A7289;
color: #0A7289
}

.tmpage .membsec .membcard.featured .skilltag {
border-color: #0a72894d;
color: #0A7289
}

.tmpage .membsec .membcard .noportrow {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 12px;
margin-bottom: 24px
}

.tmpage .membsec .membcard .initbadge {
width: 56px;
height: 56px;
border-radius: 16px;
background: linear-gradient(135deg, #791CEC 0%, #0A7289 100%);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.tmpage .membsec .membcard .initbadge span {
font-size: 18px;
font-weight: 800;
color: #fff;
letter-spacing: -.01em
}

.tmpage .valuesec {
padding: 72px 0;
position: relative;
overflow: hidden
}

.tmpage .valuesec .bgimgwrap {
position: absolute;
inset: 0;
z-index: 0;
pointer-events: none
}

.tmpage .valuesec .bgimgwrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center
}

.tmpage .valuesec .bgoverlay {
position: absolute;
inset: 0;
background: #0a192fd6;
z-index: 1;
pointer-events: none
}

.tmpage .valuesec .bgshift {
position: absolute;
inset: 0;
z-index: 2;
pointer-events: none;
background: radial-gradient(ellipse 70% 60% at var(--rx, 30%) var(--ry, 50%), #0a728938 0%, transparent 70%);
animation: bgmove 8s ease-in-out infinite alternate
}

@keyframes bgmove {
0% {
--rx: 20%;
--ry: 40%
}

33% {
--rx: 60%;
--ry: 60%
}

66% {
--rx: 75%;
--ry: 30%
}

100% {
--rx: 35%;
--ry: 70%
}
}

.tmpage .valuesec .valbody {
position: relative;
z-index: 3;
max-width: 1170px;
margin: 0 auto;
padding: 0 24px
}

.tmpage .valuesec .valhead {
text-align: center;
margin-bottom: 72px
}

.tmpage .valuesec .valhead h2 {
font-size: 45px;
line-height: 1.2;
font-weight: 800;
color: #fff;
letter-spacing: -.02em;
margin: 0 0 12px
}

.tmpage .valuesec .valhead .accentphrase {
font-size: 18px;
color: #ffffffb8;
line-height: 1.7
}

.tmpage .valuesec .valhead .accentphrase em {
color: #DEAC0A;
font-style: normal;
font-weight: 600
}

.tmpage .valuesec .valgrid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-bottom: 72px
}

.tmpage .valuesec .valcard {
border: 2px solid #ffffff1f;
border-radius: 16px;
padding: 36px;
background: #ffffff0d;
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start;
transition: border-color .24s cubic-bezier(0.0, 0, 0.2, 1), background .24s cubic-bezier(0.0, 0, 0.2, 1), transform .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.tmpage .valuesec .valcard:hover {
border-color: #deac0a80;
background: #ffffff14;
transform: translateY(-3px)
}

.tmpage .valuesec .valcard .valnumwrap {
position: relative;
flex-shrink: 0;
width: 64px;
height: 64px;
display: flex;
align-items: center;
justify-content: center
}

.tmpage .valuesec .valcard .valnumbg {
position: absolute;
inset: 0;
font-size: 62px;
font-weight: 800;
color: #ffffff0f;
line-height: 1;
display: flex;
align-items: center;
justify-content: center;
letter-spacing: -.04em;
pointer-events: none
}

.tmpage .valuesec .valcard .valicon {
position: relative;
z-index: 1;
width: 48px;
height: 48px;
border-radius: 8px;
background: #0a728940;
border: 2px solid #0a728980;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.tmpage .valuesec .valcard .valicon svg {
color: #DEAC0A
}

.tmpage .valuesec .valcard .valtxt {
display: flex;
flex-direction: column;
gap: 12px
}

.tmpage .valuesec .valcard .valtxt h4 {
font-size: 18px;
font-weight: 700;
color: #fff;
margin: 0;
line-height: 1.2
}

.tmpage .valuesec .valcard .valtxt p {
font-size: 15px;
line-height: 1.7;
color: #ffffffb8;
margin: 0
}

.tmpage .valuesec .checklist {
border: 2px dashed #deac0a73;
border-radius: 16px;
padding: 36px;
background: #ffffff0a;
max-width: 760px;
margin: 0 auto
}

.tmpage .valuesec .checklist .cltitle {
font-size: 23px;
font-weight: 700;
color: #fff;
margin: 0 0 24px;
line-height: 1.2
}

.tmpage .valuesec .checklist .clgrid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px
}

.tmpage .valuesec .checklist .clitem {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px
}

.tmpage .valuesec .checklist .clitem .svgcheck {
flex-shrink: 0;
margin-top: 2px
}

.tmpage .valuesec .checklist .clitem span {
font-size: 15px;
line-height: 1.7;
color: #ffffffd1
}

@media (max-width: 900px) {
.tmpage .titlesec .diaginner {
flex-direction: column
}

.tmpage .titlesec .diagbg {
background: linear-gradient(180deg, #0A7289 0%, #0A7289 55%, #f4f0ff 55%, #f4f0ff 100%)
}

.tmpage .titlesec .diagleft {
flex: none;
padding: 48px 24px 36px
}

.tmpage .titlesec .diagright {
flex: none;
padding: 0 24px 36px
}

.tmpage .titlesec .diagright .imgwrap {
height: 240px
}

.tmpage .membsec .fourcolwrap {
grid-template-columns: 1fr 1fr
}

.tmpage .membsec .membcard.featured {
grid-column: span 2
}

.tmpage .valuesec .valgrid {
grid-template-columns: 1fr
}

.tmpage .valuesec .checklist .clgrid {
grid-template-columns: 1fr
}
}

@media (max-width: 600px) {
.tmpage .titlesec .h1text {
font-size: 32px
}

.tmpage .titlesec .counter {
font-size: 45px
}

.tmpage .membsec .fourcolwrap {
grid-template-columns: 1fr
}

.tmpage .membsec .membcard.featured {
grid-column: span 1
}

.tmpage .membsec .sechead h2 {
font-size: 32px
}

.tmpage .valuesec .valhead h2 {
font-size: 32px
}

.tmpage .valuesec .valcard {
flex-direction: column;
padding: 24px
}

.tmpage .valuesec .checklist {
padding: 24px
}
}

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

.triacc .tblock {
max-width: 1170px;
margin: 0 auto;
padding: 0 24px
}

.triacc .titlesec {
position: relative;
background: #0d1a1f;
padding: 72px 0 0
}

.triacc .titlesec .tblock {
position: relative;
z-index: 2
}

.triacc .framelines {
position: absolute;
top: 24px;
left: 24px;
right: 24px;
bottom: 0;
pointer-events: none;
z-index: 1
}

.triacc .framelines::before,
.triacc .framelines::after {
content: '';
position: absolute;
border: 1px solid #0a728938
}

.triacc .framelines::before {
top: 0;
left: 0;
right: 0;
bottom: 0
}

.triacc .framelines::after {
top: 6px;
left: 6px;
right: 6px;
bottom: 0;
border-color: #deac0a1f
}

.triacc .titletop {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 36px;
padding: 36px 0 0
}

.triacc .titletexts {
flex: 1 1 0;
min-width: 0;
display: flex;
flex-direction: column;
gap: 24px
}

.triacc .titletag {
display: inline-flex;
align-items: center;
gap: 6px;
border: 2px solid #DEAC0A;
border-radius: 2px;
padding: 6px 12px;
color: #DEAC0A;
font-size: 13px;
letter-spacing: .08em;
text-transform: uppercase;
width: fit-content
}

.triacc .titletag svg {
flex-shrink: 0
}

.triacc .titleh1 {
font-size: 62px;
line-height: 1.2;
color: #fff;
letter-spacing: -.03em;
margin: 0
}

.triacc .titleh1 .accentword {
color: #0A7289
}

.triacc .titleh1 .accentbracket {
color: #DEAC0A;
font-size: 45px
}

.triacc .titlesub {
font-size: 18px;
line-height: 1.7;
color: #ffffffa6;
margin: 0;
max-width: 520px
}

.triacc .titlemetarow {
display: flex;
flex-direction: row;
gap: 24px;
flex-wrap: wrap;
align-items: center
}

.triacc .tmeta {
display: flex;
flex-direction: column;
gap: 6px
}

.triacc .tmeta .mlabel {
font-size: 13px;
color: #fff6;
letter-spacing: .06em;
text-transform: uppercase
}

.triacc .tmeta .mval {
font-size: 23px;
color: #fff;
line-height: 1.2;
font-weight: 700
}

.triacc .tmeta .mval span {
color: #DEAC0A
}

.triacc .tmetadiv {
width: 1px;
height: 36px;
background: #ffffff26;
align-self: center
}

.triacc .imgwrap {
position: relative;
width: 420px;
flex-shrink: 0;
border-radius: 8px 8px 0 0;
overflow: hidden;
align-self: flex-end
}

.triacc .imgwrap img {
width: 420px;
height: 340px;
object-fit: cover;
object-position: center;
display: block
}

.triacc .imgwrap::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(160deg, #0d1a1f8c 0%, #0d1a1f1a 55%, #0d1a1fb8 100%);
pointer-events: none
}

.triacc .imgcorner {
position: absolute;
top: 12px;
right: 12px;
z-index: 3;
background: #791CEC;
color: #fff;
font-size: 13px;
border-radius: 2px;
padding: 6px 12px;
letter-spacing: .04em;
pointer-events: none
}

.triacc .diamonddeco {
position: absolute;
bottom: -18px;
left: -18px;
width: 36px;
height: 36px;
background: #DEAC0A;
transform: rotate(45deg);
z-index: 4;
pointer-events: none
}

.triacc .doubdiv {
margin-top: 48px;
display: flex;
flex-direction: column;
gap: 6px
}

.triacc .doubdiv .dline {
height: 2px;
background: linear-gradient(90deg, #0A7289 0%, #0a72892e 100%);
border-radius: 2px
}

.triacc .doubdiv .dline.thin {
height: 1px;
background: linear-gradient(90deg, #deac0a8c 0%, #deac0a0f 100%)
}

.triacc .detailsec {
background: #f0f5f6;
padding: 72px 0
}

.triacc .detailsec .tblock {
display: flex;
flex-direction: column;
gap: 72px
}

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

.triacc .detleft {
display: flex;
flex-direction: column;
gap: 24px
}

.triacc .secnumfade {
font-size: 62px;
line-height: 1.2;
color: #0a728917;
letter-spacing: -.04em;
font-weight: 900;
margin: 0;
pointer-events: none;
user-select: none
}

.triacc .deth2 {
font-size: 32px;
line-height: 1.2;
color: #0d1a1f;
letter-spacing: -.02em;
margin: 0
}

.triacc .deth2 .bktxt {
color: #0A7289
}

.triacc .detpara {
font-size: 15px;
line-height: 1.7;
color: #2a3d42;
margin: 0
}

.triacc .detpara.narrow {
max-width: 380px
}

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

.triacc .stepcard {
background: #fff;
border-radius: 8px;
padding: 24px;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
border: 2px solid transparent;
transition: border-color .22s cubic-bezier(0.4, 0, 0.2, 1), transform .18s cubic-bezier(0.4, 0, 0.2, 1);
cursor: default;
position: relative
}

.triacc .stepcard:hover {
border-color: #0A7289;
transform: translateY(-3px)
}

.triacc .detright:has(.stepcard:hover) .stepcard:not(:hover) {
transform: scale(0.97);
opacity: .75
}

.triacc .stepnum {
font-size: 32px;
line-height: 1.2;
font-weight: 900;
color: #0a728921;
min-width: 36px;
letter-spacing: -.03em
}

.triacc .stepcontent {
display: flex;
flex-direction: column;
gap: 6px;
flex: 1 1 0;
min-width: 0
}

.triacc .stepcontent h5 {
font-size: 15px;
line-height: 1.2;
color: #0d1a1f;
margin: 0;
font-weight: 700
}

.triacc .stepcontent p {
font-size: 13px;
line-height: 1.7;
color: #4a6068;
margin: 0
}

.triacc .stepbadge {
position: absolute;
top: -8px;
right: 16px;
background: #791CEC;
color: #fff;
font-size: 13px;
border-radius: 30px;
padding: 6px 12px;
pointer-events: none;
white-space: nowrap
}

.triacc .stepbadge.alt {
background: #DEAC0A;
color: #0d1a1f
}

.triacc .detbottom {
display: flex;
flex-direction: column;
gap: 36px
}

.triacc .detbottomhead {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 24px;
flex-wrap: wrap
}

.triacc .deth3 {
font-size: 23px;
line-height: 1.2;
color: #0d1a1f;
margin: 0;
letter-spacing: -.01em
}

.triacc .deth3 .bktxt {
color: #0A7289
}

.triacc .pillrow {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 12px
}

.triacc .pill {
display: inline-flex;
align-items: center;
gap: 6px;
border-radius: 46px;
padding: 6px 16px;
font-size: 13px;
line-height: 1.2;
border: 2px solid #0A7289;
color: #0A7289;
background: transparent;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1), color .2s cubic-bezier(0.4, 0, 0.2, 1);
cursor: default
}

.triacc .pill:hover {
background: #0A7289;
color: #fff
}

.triacc .pill.secondary {
border-color: #791CEC;
color: #791CEC
}

.triacc .pill.secondary:hover {
background: #791CEC;
color: #fff
}

.triacc .pill svg {
flex-shrink: 0
}

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

.triacc .minicard {
background: #fff;
border-radius: 16px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 12px;
border: 2px solid transparent;
position: relative;
transition: border-color .25s cubic-bezier(0.0, 0, 0.2, 1), transform .2s cubic-bezier(0.4, 0, 0.2, 1);
box-shadow: 2px 3px 6px -2px #0a728914
}

.triacc .minicard:hover {
border-color: #DEAC0A;
transform: translateY(-4px);
box-shadow: 2px 6px 22px -2px #0a728917
}

.triacc .minicard .cardico {
width: 36px;
height: 36px;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.triacc .minicard .cardico.primary {
background: #0a72891a
}

.triacc .minicard .cardico.secondary {
background: #deac0a1f
}

.triacc .minicard .cardico.tertiary {
background: #791cec1a
}

.triacc .minicard h6 {
font-size: 15px;
line-height: 1.2;
color: #0d1a1f;
margin: 0;
font-weight: 700
}

.triacc .minicard p {
font-size: 13px;
line-height: 1.7;
color: #4a6068;
margin: 0
}

.triacc .minicardtag {
position: absolute;
top: -10px;
right: 16px;
background: #0A7289;
color: #fff;
font-size: 13px;
border-radius: 2px;
padding: 6px 10px;
pointer-events: none
}

.triacc .minicardtag.alt {
background: #DEAC0A;
color: #0d1a1f
}

.triacc .minicardtag.alt2 {
background: #791CEC;
color: #fff
}

.triacc .inlinebadge {
display: inline-flex;
align-items: center;
gap: 4px;
background: #0a72891a;
color: #0A7289;
border-radius: 30px;
padding: 2px 10px;
font-size: 13px;
font-weight: 600;
vertical-align: middle;
margin: 0 2px
}

.triacc .inlinebadge.gold {
background: #deac0a24;
color: #a07800
}

.triacc .inlinebadge.purple {
background: #791cec1a;
color: #791CEC
}

.triacc .ctastrip {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 24px;
background: #0A7289;
border-radius: 16px;
padding: 36px;
flex-wrap: wrap;
box-shadow: 2px 8px 48px -2px #0a72891a
}

.triacc .ctastrip .ctawords {
display: flex;
flex-direction: column;
gap: 6px;
flex: 1 1 260px
}

.triacc .ctastrip .ctawords h4 {
font-size: 23px;
line-height: 1.2;
color: #fff;
margin: 0
}

.triacc .ctastrip .ctawords p {
font-size: 15px;
line-height: 1.7;
color: #ffffffb8;
margin: 0
}

.triacc .btnprimary {
display: inline-flex;
align-items: center;
gap: 8px;
border: 3px solid #DEAC0A;
border-radius: 8px;
background: transparent;
color: #DEAC0A;
font-size: 15px;
font-weight: 700;
padding: 12px 24px;
cursor: pointer;
text-decoration: none;
letter-spacing: .04em;
transition: background .22s cubic-bezier(0.4, 0, 0.2, 1), color .22s cubic-bezier(0.4, 0, 0.2, 1), transform .18s cubic-bezier(0.4, 0, 0.2, 1);
white-space: nowrap
}

.triacc .btnprimary:hover {
background: #DEAC0A;
color: #0d1a1f;
transform: translateY(-2px)
}

.triacc .btnprimary:active {
transform: scale(0.96)
}

.triacc .btnprimary:focus-visible {
outline: 3px solid #fff;
outline-offset: 3px
}

@keyframes triacc-settle {
0% {
transform: translateY(18px);
opacity: 0
}

70% {
transform: translateY(-5px);
opacity: 1
}

85% {
transform: translateY(3px)
}

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

.triacc .titletag {
animation: triacc-settle .5s cubic-bezier(0.4, 0, 0.2, 1) both;
animation-delay: .05s
}

.triacc .titleh1 {
animation: triacc-settle .52s cubic-bezier(0.4, 0, 0.2, 1) both;
animation-delay: .13s
}

.triacc .titlesub {
animation: triacc-settle .5s cubic-bezier(0.4, 0, 0.2, 1) both;
animation-delay: .22s
}

.triacc .titlemetarow {
animation: triacc-settle .5s cubic-bezier(0.4, 0, 0.2, 1) both;
animation-delay: .3s
}

.triacc .imgwrap {
animation: triacc-settle .56s cubic-bezier(0.4, 0, 0.2, 1) both;
animation-delay: .18s
}

@media (max-width: 900px) {
.triacc .titletop {
flex-direction: column;
gap: 24px
}

.triacc .imgwrap {
width: 100%;
border-radius: 8px;
overflow: hidden
}

.triacc .imgwrap img {
width: 100%;
height: 220px
}

.triacc .titleh1 {
font-size: 45px
}

.triacc .detsplit {
grid-template-columns: 1fr
}

.triacc .minicomposec {
grid-template-columns: 1fr 1fr
}
}

@media (max-width: 600px) {
.triacc .titleh1 {
font-size: 32px
}

.triacc .minicomposec {
grid-template-columns: 1fr
}

.triacc .ctastrip {
flex-direction: column;
align-items: flex-start
}

.triacc .titlemetarow {
flex-direction: column;
align-items: flex-start;
gap: 12px
}

.triacc .tmetadiv {
display: none
}
}

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

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

.abtus .ti-icon {
display: inline-block;
width: 1em;
height: 1em;
vertical-align: middle
}

.abtus .titblk {
background: #f4f7f9;
padding: 72px 0;
position: relative
}

.abtus .titblk-dotgrid {
position: absolute;
bottom: 0;
left: 0;
right: 0;
top: 0;
background-image: radial-gradient(circle, #0A7289 1px, transparent 1px);
background-size: 28px 28px;
opacity: .1;
pointer-events: none;
z-index: 0
}

.abtus .titblk-inner {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
align-items: center;
gap: 36px
}

.abtus .titblk-imgwrap {
width: 340px;
height: 220px;
border-radius: 16px;
overflow: hidden;
box-shadow: 2px 6px 22px -2px #0a728917;
flex-shrink: 0
}

.abtus .titblk-imgwrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
filter: saturate(0.82) brightness(0.94) contrast(1.08);
display: block
}

.abtus .titblk-text {
text-align: center;
max-width: 680px
}

.abtus .titblk-label {
display: inline-block;
font-size: 13px;
font-weight: 600;
letter-spacing: .12em;
text-transform: uppercase;
color: #0A7289;
background: #0a728914;
border-radius: 30px;
padding: 6px 24px;
margin-bottom: 24px
}

.abtus .titblk-h1 {
font-size: 62px;
line-height: 1.2;
letter-spacing: -.03em;
color: #0f2a32;
margin: 0 0 24px;
font-weight: 800
}

.abtus .titblk-h1 span {
color: #0A7289
}

.abtus .titblk-desc {
font-size: 18px;
line-height: 1.7;
color: #2e4a52;
margin: 0
}

.abtus .whowe {
background: #fff;
padding: 72px 0;
border-bottom: 1px solid #0a728914
}

.abtus .whowe-grid {
display: grid;
grid-template-columns: 1fr 420px;
gap: 72px;
align-items: start
}

.abtus .whowe-left {
position: relative
}

.abtus .whowe-num {
font-size: 62px;
font-weight: 900;
color: #0a728912;
line-height: 1.2;
position: absolute;
top: -12px;
left: -6px;
pointer-events: none;
user-select: none;
letter-spacing: -.04em
}

.abtus .whowe-htag {
font-size: 13px;
font-weight: 700;
letter-spacing: .1em;
text-transform: uppercase;
color: #791CEC;
margin-bottom: 12px;
padding-top: 12px
}

.abtus .whowe-h2 {
font-size: 45px;
line-height: 1.2;
letter-spacing: -.025em;
color: #0f2a32;
margin: 0 0 24px;
font-weight: 800
}

.abtus .whowe-body {
font-size: 18px;
line-height: 1.7;
color: #2e4a52;
margin: 0 0 24px
}

.abtus .whowe-body:last-child {
margin-bottom: 0
}

.abtus .whowe-accent {
color: #0A7289;
font-style: normal
}

.abtus .whowe-right {
display: flex;
flex-direction: column;
gap: 24px
}

.abtus .whowe-imgbox {
position: relative
}

.abtus .whowe-imgbox::before {
content: '';
position: absolute;
top: 12px;
left: 12px;
right: -12px;
bottom: -12px;
border: 2px solid #DEAC0A;
border-radius: 16px;
z-index: 0
}

.abtus .whowe-imgbox img {
width: 100%;
height: 280px;
object-fit: cover;
object-position: center;
border-radius: 16px;
display: block;
position: relative;
z-index: 1;
box-shadow: 2px 8px 48px -2px #0a72891a
}

.abtus .whowe-sidebar {
display: flex;
flex-direction: column;
gap: 12px
}

.abtus .whowe-pill {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
background: #f4f7f9;
border-radius: 8px;
padding: 12px 24px;
font-size: 15px;
color: #0f2a32;
font-weight: 500;
border-right: 3px solid #0A7289;
transition: background-color .22s cubic-bezier(0.4, 0, 0.2, 1), transform .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.abtus .whowe-pill:hover {
background: #0a72890f;
transform: translateX(-3px)
}

.abtus .whowe-pill svg {
flex-shrink: 0;
color: #0A7289
}

.abtus .metrics {
position: relative;
padding: 0;
overflow: hidden
}

.abtus .metrics-bgtop {
position: absolute;
top: 0;
left: 0;
right: 0;
height: 50%;
background: #0f2a32;
z-index: 0
}

.abtus .metrics-bgbot {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 50%;
background: #f4f7f9;
z-index: 0
}

.abtus .metrics-inner {
position: relative;
z-index: 1;
padding: 72px 0
}

.abtus .metrics-top {
text-align: center;
margin-bottom: 36px
}

.abtus .metrics-label {
display: inline-block;
font-size: 13px;
font-weight: 700;
letter-spacing: .12em;
text-transform: uppercase;
color: #DEAC0A;
margin-bottom: 12px
}

.abtus .metrics-h2 {
font-size: 45px;
line-height: 1.2;
letter-spacing: -.025em;
color: #fff;
margin: 0;
font-weight: 800
}

.abtus .metrics-h2 span {
color: #DEAC0A
}

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

.abtus .mcard {
background: #fff;
border-radius: 16px;
padding: 36px 24px;
position: relative;
box-shadow: 2px 6px 22px -2px #0a728917;
border-top: 3px solid transparent;
transition: transform .24s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .24s cubic-bezier(0.4, 0, 0.2, 1)
}

.abtus .mcard:hover {
transform: translateY(-4px);
box-shadow: 2px 8px 48px -2px #0a72891a
}

.abtus .mcard.col-a {
border-top-color: #0A7289
}

.abtus .mcard.col-b {
border-top-color: #DEAC0A
}

.abtus .mcard.col-c {
border-top-color: #791CEC
}

.abtus .mcard-ico {
width: 46px;
height: 46px;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 24px
}

.abtus .mcard.col-a .mcard-ico {
background: #0a72891a;
color: #0A7289
}

.abtus .mcard.col-b .mcard-ico {
background: #deac0a1a;
color: #DEAC0A
}

.abtus .mcard.col-c .mcard-ico {
background: #791cec1a;
color: #791CEC
}

.abtus .mcard-bignum {
font-size: 45px;
font-weight: 900;
line-height: 1.2;
letter-spacing: -.03em;
color: #0f2a32;
margin-bottom: 6px
}

.abtus .mcard.col-a .mcard-bignum {
color: #0A7289
}

.abtus .mcard.col-b .mcard-bignum {
color: #DEAC0A
}

.abtus .mcard.col-c .mcard-bignum {
color: #791CEC
}

.abtus .mcard-title {
font-size: 18px;
font-weight: 700;
color: #0f2a32;
margin-bottom: 12px;
line-height: 1.2
}

.abtus .mcard-desc {
font-size: 15px;
line-height: 1.7;
color: #4a6370;
margin: 0
}

.abtus .approach {
background: #fff;
padding: 72px 0
}

.abtus .approach-grid {
display: grid;
grid-template-columns: 280px 1fr;
gap: 72px;
align-items: start
}

.abtus .approach-sidebar {
display: flex;
flex-direction: column;
gap: 24px;
position: sticky;
top: 24px
}

.abtus .approach-portrait {
width: 100%;
aspect-ratio: 7/9;
border-radius: 30px;
overflow: hidden;
box-shadow: 2px 8px 48px -2px #0a72891a
}

.abtus .approach-portrait img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: top;
display: block
}

.abtus .approach-namecard {
background: #f4f7f9;
border-radius: 8px;
padding: 24px
}

.abtus .approach-name {
font-size: 18px;
font-weight: 700;
color: #0f2a32;
margin-bottom: 6px
}

.abtus .approach-role {
font-size: 13px;
font-weight: 600;
letter-spacing: .08em;
text-transform: uppercase;
color: #0A7289
}

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

.abtus .approach-htag {
font-size: 13px;
font-weight: 700;
letter-spacing: .1em;
text-transform: uppercase;
color: #DEAC0A;
margin-bottom: 12px
}

.abtus .approach-h2 {
font-size: 45px;
line-height: 1.2;
letter-spacing: -.025em;
color: #0f2a32;
margin: 0 0 24px;
font-weight: 800
}

.abtus .approach-body {
font-size: 18px;
line-height: 1.7;
color: #2e4a52;
margin: 0
}

.abtus .approach-steps {
display: flex;
flex-direction: column;
gap: 24px
}

.abtus .astep {
display: grid;
grid-template-columns: 46px 1fr;
gap: 24px;
align-items: start
}

.abtus .astep-num {
width: 46px;
height: 46px;
border-radius: 8px;
background: #0a728914;
display: flex;
align-items: center;
justify-content: center;
font-size: 18px;
font-weight: 800;
color: #0A7289;
flex-shrink: 0;
transition: background-color .2s cubic-bezier(0.0, 0, 0.2, 1)
}

.abtus .astep:hover .astep-num {
background: #0a728929
}

.abtus .astep-title {
font-size: 18px;
font-weight: 700;
color: #0f2a32;
margin-bottom: 6px;
line-height: 1.2
}

.abtus .astep-desc {
font-size: 15px;
line-height: 1.7;
color: #4a6370;
margin: 0
}

.abtus .approach-imgrow {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px
}

.abtus .approach-imgbox {
border-radius: 16px;
overflow: hidden;
box-shadow: 2px 3px 6px -2px #0a728914;
transition: box-shadow .26s cubic-bezier(0.4, 0, 0.2, 1), transform .26s cubic-bezier(0.4, 0, 0.2, 1)
}

.abtus .approach-imgbox:hover {
box-shadow: 2px 8px 48px -2px #0a72891a;
transform: translateY(-3px)
}

.abtus .approach-imgbox img {
width: 100%;
height: 180px;
object-fit: cover;
object-position: center;
display: block
}

@keyframes bgshift {
0% {
background-color: #0f2a32
}

50% {
background-color: #0d3340
}

100% {
background-color: #0f2a32
}
}

.abtus .metrics-bgtop {
animation: bgshift 8s ease-in-out infinite
}

.abtus .divider-zz {
display: block;
width: 100%;
height: 36px;
overflow: hidden
}

.abtus .divider-zz svg {
width: 100%;
height: 100%;
display: block
}

@media (max-width: 900px) {
.abtus .titblk-h1 {
font-size: 45px
}

.abtus .whowe-grid {
grid-template-columns: 1fr;
gap: 36px
}

.abtus .whowe-imgbox::before {
display: none
}

.abtus .metrics-cards {
grid-template-columns: 1fr;
gap: 24px
}

.abtus .approach-grid {
grid-template-columns: 1fr;
gap: 36px
}

.abtus .approach-sidebar {
position: static;
flex-direction: row;
align-items: flex-start
}

.abtus .approach-portrait {
width: 140px;
flex-shrink: 0
}

.abtus .approach-imgrow {
grid-template-columns: 1fr
}

.abtus .whowe-h2,
.abtus .metrics-h2,
.abtus .approach-h2 {
font-size: 32px
}
}

@media (max-width: 600px) {
.abtus .titblk-h1 {
font-size: 32px
}

.abtus .titblk-imgwrap {
width: 100%;
height: 180px
}

.abtus .pg-wrap {
padding: 0 12px
}

.abtus .metrics-cards {
grid-template-columns: 1fr
}

.abtus .approach-sidebar {
flex-direction: column
}

.abtus .approach-portrait {
width: 100%
}

.abtus .whowe-num {
font-size: 45px
}
}

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

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

.dbt .row-wave {
opacity: 0;
transform: translateY(18px);
animation: rowReveal .24s cubic-bezier(0.4, 0, 0.2, 1) forwards
}

.dbt .row-wave:nth-child(1) {
animation-delay: .04s
}

.dbt .row-wave:nth-child(2) {
animation-delay: .1s
}

.dbt .row-wave:nth-child(3) {
animation-delay: .16s
}

.dbt .row-wave:nth-child(4) {
animation-delay: .22s
}

.dbt .row-wave:nth-child(5) {
animation-delay: .28s
}

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

.dbt .ti-band {
background: linear-gradient(160deg, #e8f5f8 0%, #fff 60%);
padding: 72px 0 0;
position: relative
}

.dbt .ti-band::after {
content: '';
display: block;
width: 100%;
height: 48px;
background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 48' preserveAspectRatio='none'%3E%3Cpath d='M0,0 C300,48 900,0 1200,32 L1200,48 L0,48 Z' fill='%23ffffff'/%3E%3C/svg%3E") no-repeat bottom center / 100% 100%;
margin-top: 36px
}

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

.dbt .ti-text {
padding: 12px 0 36px
}

.dbt .ti-eyebrow {
display: inline-flex;
align-items: center;
gap: 6px;
font-size: 13px;
font-weight: 600;
color: #0A7289;
letter-spacing: .08em;
text-transform: uppercase;
margin-bottom: 24px;
padding: 6px 12px;
border: 2px solid #0A7289;
border-radius: 2px
}

.dbt .ti-h1 {
font-size: 62px;
line-height: 1.2;
color: #111827;
letter-spacing: -.03em;
margin: 0 0 24px
}

.dbt .ti-h1 span {
color: #0A7289
}

.dbt .ti-desc {
font-size: 18px;
line-height: 1.7;
color: #374151;
max-width: 520px;
margin: 0 0 24px
}

.dbt .ti-desc strong {
color: #0A7289
}

.dbt .ti-desc2 {
font-size: 15px;
line-height: 1.7;
color: #4b5563;
max-width: 480px;
margin: 0 0 36px
}

.dbt .ti-btns {
display: flex;
flex-direction: row;
gap: 12px;
flex-wrap: wrap
}

.dbt .btn-prim {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 12px 24px;
font-size: 15px;
font-weight: 700;
color: #fff;
background: #0A7289;
border: 3px solid #0A7289;
border-radius: 8px;
text-decoration: none;
transition: transform .22s cubic-bezier(0.4, 0, 0.2, 1), background .2s cubic-bezier(0.0, 0, 0.2, 1);
cursor: pointer
}

.dbt .btn-prim:hover {
transform: translateY(-2px);
background: #085e73;
border-color: #085e73
}

.dbt .btn-prim:active {
transform: scale(0.97)
}

.dbt .btn-sec {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 12px 24px;
font-size: 15px;
font-weight: 700;
color: #0A7289;
background: transparent;
border: 3px solid #0A7289;
border-radius: 8px;
text-decoration: none;
transition: transform .22s cubic-bezier(0.4, 0, 0.2, 1), color .2s cubic-bezier(0.0, 0, 0.2, 1);
cursor: pointer
}

.dbt .btn-sec:hover {
transform: translateY(-2px);
color: #085e73;
border-color: #085e73
}

.dbt .btn-sec:active {
transform: scale(0.97)
}

.dbt .ti-imgcard {
position: relative;
border-radius: 16px;
overflow: hidden;
box-shadow: 2px 8px 48px -2px #0a72891a;
margin-top: 12px
}

.dbt .ti-imgcard img {
width: 100%;
height: 420px;
object-fit: cover;
object-position: center;
display: block
}

.dbt .ti-imgcard-overlay {
position: absolute;
inset: 0;
background: linear-gradient(135deg, #0a72898c 0%, #791cec2e 100%)
}

.dbt .ti-imgcard-label {
position: absolute;
bottom: 24px;
left: 24px;
right: 24px;
color: #fff;
font-size: 15px;
font-weight: 600;
line-height: 1.2
}

.dbt .ti-imgcard-label span {
display: block;
font-size: 13px;
font-weight: 400;
opacity: .85;
margin-top: 6px
}

.dbt .out-band {
background: #fff;
padding: 72px 0;
position: relative
}

.dbt .out-band::before {
content: '';
display: block;
position: absolute;
top: 0;
left: 0;
right: 0;
height: 6px;
background: linear-gradient(90deg, #0A7289 0%, #DEAC0A 50%, #791CEC 100%);
border-radius: 0 0 2px 2px
}

.dbt .out-toprow {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 36px;
margin-bottom: 36px
}

.dbt .out-hdg {
font-size: 45px;
line-height: 1.2;
color: #111827;
letter-spacing: -.025em;
margin: 0;
max-width: 520px
}

.dbt .out-hdg em {
font-style: normal;
color: #0A7289
}

.dbt .out-sub {
font-size: 15px;
line-height: 1.7;
color: #4b5563;
max-width: 320px;
margin: 0
}

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

.dbt .out-item {
padding: 24px;
border: 2px solid #e5f0f3;
border-radius: 16px;
position: relative;
background: #f7fbfc;
transition: transform .22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.dbt .out-item:hover {
transform: translateY(-3px);
box-shadow: 2px 6px 22px -2px #0a728917
}

.dbt .out-num {
font-size: 62px;
font-weight: 900;
line-height: 1.2;
position: absolute;
top: 12px;
right: 16px;
color: #0A7289;
opacity: .07;
letter-spacing: -.04em;
pointer-events: none;
user-select: none
}

.dbt .out-icon {
width: 36px;
height: 36px;
margin-bottom: 12px;
color: #0A7289
}

.dbt .out-itemhdg {
font-size: 18px;
font-weight: 700;
color: #111827;
margin: 0 0 12px;
line-height: 1.2
}

.dbt .out-itemtxt {
font-size: 15px;
line-height: 1.7;
color: #374151;
margin: 0
}

.dbt .out-imgrow {
margin-top: 36px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
align-items: center
}

.dbt .out-imgbox {
border-radius: 16px;
overflow: hidden;
box-shadow: 2px 6px 22px -2px #0a728917
}

.dbt .out-imgbox img {
width: 100%;
height: 260px;
object-fit: cover;
object-position: center;
display: block
}

.dbt .out-imgtext {
padding: 12px 0
}

.dbt .out-imgtext p {
font-size: 15px;
line-height: 1.7;
color: #374151;
margin: 0 0 12px
}

.dbt .out-badge {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 6px 12px;
border-radius: 30px;
background: #e8f5f8;
color: #0A7289;
font-size: 13px;
font-weight: 600;
margin: 0 6px 6px 0
}

.dbt .prob-band {
background: linear-gradient(180deg, #f3f0fd 0%, #fff 100%);
padding: 72px 0;
position: relative
}

.dbt .prob-divtop {
width: 100%;
height: 3px;
display: flex;
flex-direction: row;
margin-bottom: 72px
}

.dbt .prob-divtop span {
flex: 1;
height: 3px
}

.dbt .prob-divtop span:nth-child(1) {
background: #791CEC
}

.dbt .prob-divtop span:nth-child(2) {
background: transparent;
height: 3px
}

.dbt .prob-divtop span:nth-child(3) {
background: #791CEC
}

.dbt .prob-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 72px;
align-items: start
}

.dbt .prob-left {
position: relative
}

.dbt .prob-eyebrow {
font-size: 13px;
font-weight: 700;
color: #791CEC;
letter-spacing: .1em;
text-transform: uppercase;
margin-bottom: 12px
}

.dbt .prob-hdg {
font-size: 45px;
line-height: 1.2;
color: #111827;
letter-spacing: -.025em;
margin: 0 0 24px
}

.dbt .prob-hdg em {
font-style: normal;
color: #791CEC
}

.dbt .prob-body {
font-size: 15px;
line-height: 1.7;
color: #374151;
margin: 0 0 12px
}

.dbt .prob-imgwrap {
border-radius: 16px;
overflow: hidden;
box-shadow: 2px 8px 48px -2px #791cec1a;
margin-top: 24px
}

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

.dbt .prob-right {
padding-top: 12px
}

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

.dbt .prob-list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
padding: 16px;
background: #fff;
border-radius: 8px;
border: 2px solid #ede8fb;
font-size: 15px;
line-height: 1.7;
color: #374151;
box-shadow: 2px 3px 6px -2px #791cec14
}

.dbt .prob-list li svg {
flex-shrink: 0;
margin-top: 2px;
color: #791CEC
}

.dbt .prob-accent {
display: inline;
color: #791CEC;
font-weight: 600
}

.dbt .prob-ctatxt {
font-size: 15px;
line-height: 1.7;
color: #4b5563;
margin: 0 0 24px
}

.dbt .rdy-band {
background: #fff;
padding: 72px 0;
position: relative
}

.dbt .rdy-divider {
width: 100%;
margin-bottom: 72px;
display: flex;
flex-direction: column;
gap: 6px
}

.dbt .rdy-divider span {
display: block;
height: 2px;
background: #e5f0f3;
border-radius: 2px
}

.dbt .rdy-divider span:nth-child(2) {
background: #DEAC0A;
width: 80px
}

.dbt .rdy-hdgrow {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 36px;
margin-bottom: 36px
}

.dbt .rdy-hdg {
font-size: 45px;
line-height: 1.2;
color: #111827;
letter-spacing: -.025em;
margin: 0;
flex: 1
}

.dbt .rdy-hdg em {
font-style: normal;
color: #DEAC0A
}

.dbt .rdy-intro {
flex: 1;
font-size: 15px;
line-height: 1.7;
color: #4b5563;
margin: 12px 0 0
}

.dbt .rdy-timeline {
position: relative;
padding-left: 36px;
display: flex;
flex-direction: column;
gap: 0
}

.dbt .rdy-timeline::before {
content: '';
position: absolute;
left: 10px;
top: 8px;
bottom: 8px;
width: 2px;
background: linear-gradient(180deg, #DEAC0A 0%, #e5f0f3 100%)
}

.dbt .rdy-tstep {
position: relative;
padding: 0 0 36px 24px;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 24px
}

.dbt .rdy-tstep:last-child {
padding-bottom: 0
}

.dbt .rdy-dot {
position: absolute;
left: -26px;
top: 6px;
width: 20px;
height: 20px;
border-radius: 30px;
border: 3px solid #DEAC0A;
background: #fff;
display: flex;
align-items: center;
justify-content: center
}

.dbt .rdy-dot.done {
background: #DEAC0A
}

.dbt .rdy-dot svg {
color: #fff
}

.dbt .rdy-stepbody {
flex: 1
}

.dbt .rdy-stephdg {
font-size: 18px;
font-weight: 700;
color: #111827;
margin: 0 0 6px;
line-height: 1.2
}

.dbt .rdy-steptxt {
font-size: 15px;
line-height: 1.7;
color: #374151;
margin: 0
}

.dbt .rdy-steplabel {
flex-shrink: 0;
font-size: 13px;
font-weight: 700;
color: #DEAC0A;
background: #fdf8e8;
border: 2px solid #DEAC0A;
border-radius: 30px;
padding: 4px 12px;
white-space: nowrap;
margin-top: 2px
}

.dbt .rdy-imgrow {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-top: 36px
}

.dbt .rdy-imgbox {
border-radius: 16px;
overflow: hidden;
box-shadow: 2px 6px 22px -2px #deac0a17
}

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

.dbt .rdy-imgcap {
padding: 12px 16px;
background: #fdf8e8;
font-size: 13px;
line-height: 1.7;
color: #4b5563
}

.dbt .cli-band {
background: linear-gradient(180deg, #f0f9fb 0%, #fff 100%);
padding: 72px 0;
position: relative
}

.dbt .cli-divtop {
height: 4px;
background: linear-gradient(90deg, transparent 0%, #0A7289 40%, #DEAC0A 60%, transparent 100%);
margin-bottom: 72px;
border-radius: 2px
}

.dbt .cli-hdgrow {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 36px;
margin-bottom: 36px;
align-items: end
}

.dbt .cli-hdg {
font-size: 45px;
line-height: 1.2;
color: #111827;
letter-spacing: -.025em;
margin: 0
}

.dbt .cli-hdg em {
font-style: normal;
color: #0A7289
}

.dbt .cli-hdgsub {
font-size: 15px;
line-height: 1.7;
color: #4b5563;
margin: 0
}

.dbt .cli-cards {
display: flex;
flex-direction: column;
gap: 24px
}

.dbt .cli-card {
display: grid;
grid-template-columns: 200px 1fr;
gap: 36px;
align-items: start;
background: #fff;
border-radius: 16px;
padding: 24px;
box-shadow: 2px 6px 22px -2px #0a728917;
border: 2px solid #e5f0f3;
transition: transform .26s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .26s cubic-bezier(0.4, 0, 0.2, 1)
}

.dbt .cli-card:hover {
transform: translateY(-3px);
box-shadow: 2px 8px 48px -2px #0a72891a
}

.dbt .cli-card.alt {
grid-template-columns: 1fr 200px
}

.dbt .cli-card.alt .cli-portrait {
order: 2
}

.dbt .cli-card.alt .cli-cardtext {
order: 1
}

.dbt .cli-portrait {
width: 200px;
height: 280px;
overflow: hidden;
border-radius: 8px;
flex-shrink: 0
}

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

.dbt .cli-noportrait {
width: 200px;
height: 280px;
border-radius: 8px;
background: linear-gradient(135deg, #e8f5f8 0%, #f3f0fd 100%);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 12px;
flex-shrink: 0
}

.dbt .cli-noportrait svg {
color: #0A7289;
opacity: .5
}

.dbt .cli-noportrait span {
font-size: 13px;
color: #0A7289;
font-weight: 600;
opacity: .6
}

.dbt .cli-cardtext {
padding: 6px 0
}

.dbt .cli-name {
font-size: 18px;
font-weight: 700;
color: #111827;
margin: 0 0 6px;
line-height: 1.2
}

.dbt .cli-role {
font-size: 13px;
color: #0A7289;
font-weight: 600;
margin: 0 0 12px;
letter-spacing: .04em
}

.dbt .cli-situation {
font-size: 13px;
font-weight: 700;
color: #791CEC;
text-transform: uppercase;
letter-spacing: .08em;
margin: 0 0 6px
}

.dbt .cli-body {
font-size: 15px;
line-height: 1.7;
color: #374151;
margin: 0 0 12px
}

.dbt .cli-outcome {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 6px;
padding: 12px;
background: #e8f5f8;
border-radius: 8px;
border: 2px solid #c5e4ec
}

.dbt .cli-outcome svg {
color: #0A7289;
flex-shrink: 0;
margin-top: 2px
}

.dbt .cli-outcometxt {
font-size: 13px;
line-height: 1.7;
color: #0A7289;
font-weight: 600;
margin: 0
}

.dbt .cli-nocard {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-top: 0
}

.dbt .cli-nocard-item {
background: #fff;
border-radius: 16px;
padding: 24px;
border: 2px solid #e5f0f3;
box-shadow: 2px 3px 6px -2px #0a728914;
transition: transform .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.dbt .cli-nocard-item:hover {
transform: translateY(-2px)
}

.dbt .cli-nocard-item .cli-name {
font-size: 15px
}

.dbt .cli-nocard-item .cli-body {
font-size: 15px
}

@media (max-width: 900px) {
.dbt .ti-grid {
grid-template-columns: 1fr
}

.dbt .ti-imgcard {
max-width: 480px
}

.dbt .ti-h1 {
font-size: 45px
}

.dbt .out-grid {
grid-template-columns: 1fr 1fr
}

.dbt .out-imgrow {
grid-template-columns: 1fr
}

.dbt .prob-layout {
grid-template-columns: 1fr;
gap: 36px
}

.dbt .rdy-hdgrow {
flex-direction: column;
gap: 12px
}

.dbt .rdy-imgrow {
grid-template-columns: 1fr
}

.dbt .cli-hdgrow {
grid-template-columns: 1fr;
gap: 12px
}

.dbt .cli-card {
grid-template-columns: 1fr
}

.dbt .cli-card.alt {
grid-template-columns: 1fr
}

.dbt .cli-card.alt .cli-portrait {
order: 0
}

.dbt .cli-card.alt .cli-cardtext {
order: 0
}

.dbt .cli-portrait {
width: 100%;
height: 240px
}

.dbt .cli-noportrait {
width: 100%;
height: 120px
}

.dbt .cli-nocard {
grid-template-columns: 1fr
}
}

@media (max-width: 600px) {
.dbt .ti-h1 {
font-size: 32px
}

.dbt .out-hdg {
font-size: 32px
}

.dbt .out-grid {
grid-template-columns: 1fr
}

.dbt .prob-hdg {
font-size: 32px
}

.dbt .rdy-hdg {
font-size: 32px
}

.dbt .cli-hdg {
font-size: 32px
}

.dbt .pg-wrap {
padding: 0 12px
}

.dbt .ti-band {
padding: 36px 0 0
}

.dbt .out-band,
.dbt .prob-band,
.dbt .rdy-band,
.dbt .cli-band {
padding: 36px 0
}

.dbt .rdy-tstep {
flex-direction: column;
gap: 6px
}
}

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

.ctus .pg-band {
width: 100%;
max-width: 1170px;
margin: 0 auto;
padding: 0 24px
}

.ctus .titlblk {
background: #0d1a20;
position: relative;
padding: 72px 0
}

.ctus .titlblk::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(160deg, #0a72892e 0%, #791cec1a 60%, transparent 100%);
pointer-events: none
}

.ctus .dotgrid {
position: absolute;
top: 0;
left: 0;
width: 55%;
height: 100%;
background-image: radial-gradient(circle, #0a728938 1px, transparent 1px);
background-size: 22px 22px;
pointer-events: none;
overflow: hidden
}

.ctus .titlblk-inner {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
gap: 24px;
max-width: 1170px;
margin: 0 auto;
padding: 0 24px
}

.ctus .titlblk-tag {
display: inline-flex;
align-items: center;
gap: 6px;
background: #0a72892e;
border: 1.5px solid #0a728966;
border-radius: 30px;
padding: 6px 24px;
color: #5dcde3;
font-size: 13px;
letter-spacing: .06em;
width: fit-content
}

.ctus .titlblk-tag svg {
flex-shrink: 0
}

.ctus .titlblk-h {
font-size: 62px;
line-height: 1.2;
color: #fff;
font-weight: 800;
letter-spacing: -.03em;
margin: 0;
max-width: 680px
}

.ctus .titlblk-h span {
color: #DEAC0A
}

.ctus .titlblk-desc {
font-size: 18px;
line-height: 1.7;
color: #ffffffad;
margin: 0;
max-width: 520px
}

.ctus .titlblk-meta {
display: flex;
flex-direction: row;
gap: 36px;
flex-wrap: wrap;
margin-top: 12px
}

.ctus .titlblk-stat {
display: flex;
flex-direction: column;
gap: 6px
}

.ctus .titlblk-stat-num {
font-size: 32px;
font-weight: 800;
color: #DEAC0A;
line-height: 1.2;
letter-spacing: -.02em
}

.ctus .titlblk-stat-lbl {
font-size: 13px;
color: #ffffff80;
line-height: 1.2;
letter-spacing: .04em
}

.ctus .titlblk-divider {
width: 1px;
background: #ffffff1f;
align-self: stretch
}

.ctus .formblk {
padding: 72px 0;
background: #f2f7f9;
position: relative;
overflow: hidden
}

.ctus .formblk::before {
content: '';
position: absolute;
top: -40px;
right: -60px;
width: 320px;
height: 320px;
border: 30px solid #0a728912;
border-radius: 46px;
transform: rotate(18deg);
pointer-events: none
}

.ctus .formblk::after {
content: '';
position: absolute;
bottom: -50px;
left: -30px;
width: 200px;
height: 200px;
background: #deac0a0f;
border-radius: 46px;
transform: rotate(-12deg);
pointer-events: none
}

.ctus .formblk-grid {
display: grid;
grid-template-columns: 1fr 2fr;
gap: 72px;
align-items: start;
position: relative;
z-index: 1
}

.ctus .formblk-aside {
display: flex;
flex-direction: column;
gap: 36px
}

.ctus .formblk-aside-head {
display: flex;
flex-direction: column;
gap: 12px
}

.ctus .aside-eyebrow {
font-size: 13px;
color: #0A7289;
letter-spacing: .08em;
font-weight: 700;
text-transform: uppercase
}

.ctus .aside-h {
font-size: 32px;
font-weight: 800;
color: #0d1a20;
line-height: 1.2;
letter-spacing: -.02em;
margin: 0
}

.ctus .aside-txt {
font-size: 15px;
line-height: 1.7;
color: #3a5460;
margin: 0
}

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

.ctus .citem {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
padding: 12px;
background: #fff;
border-radius: 8px;
border: 1.5px solid #0a72891a;
transition: border-color .22s cubic-bezier(0.4, 0, 0.2, 1), transform .18s cubic-bezier(0.4, 0, 0.2, 1);
position: relative;
overflow: hidden
}

.ctus .citem::after {
content: '';
position: absolute;
left: 0;
top: 0;
width: 3px;
height: 100%;
background: #0A7289;
border-radius: 2px 0 0 2px;
transform: scaleY(0);
transform-origin: bottom;
transition: transform .24s cubic-bezier(0.0, 0, 0.2, 1)
}

.ctus .citem:hover {
border-color: #0a728947;
transform: translateX(4px)
}

.ctus .citem:hover::after {
transform: scaleY(1)
}

.ctus .citem-icon {
width: 36px;
height: 36px;
background: #0a72891a;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.ctus .citem-icon svg {
color: #0A7289
}

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

.ctus .citem-lbl {
font-size: 13px;
color: #0A7289;
font-weight: 700;
letter-spacing: .05em;
text-transform: uppercase
}

.ctus .citem-val {
font-size: 15px;
color: #0d1a20;
line-height: 1.7;
font-weight: 600
}

.ctus .citem-val a {
color: #0d1a20;
text-decoration: none;
transition: color .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.ctus .citem-val a:hover {
color: #0A7289
}

.ctus .formcard {
background: #fff;
border-radius: 16px;
border: 1.5px solid #0a72891f;
padding: 36px;
box-shadow: 2px 6px 22px -2px #0a728917;
position: relative
}

.ctus .formcard-head {
display: flex;
flex-direction: column;
gap: 6px;
margin-bottom: 36px
}

.ctus .formcard-h {
font-size: 23px;
font-weight: 800;
color: #0d1a20;
line-height: 1.2;
letter-spacing: -.02em;
margin: 0
}

.ctus .formcard-sub {
font-size: 15px;
color: #3a5460;
line-height: 1.7;
margin: 0
}

.ctus .reqtype-group {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 24px
}

.ctus .reqtype-lbl {
font-size: 13px;
font-weight: 700;
color: #0d1a20;
letter-spacing: .04em;
text-transform: uppercase
}

.ctus .reqtype-opts {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px
}

.ctus .reqtype-opt {
position: relative
}

.ctus .reqtype-opt input[type="radio"] {
position: absolute;
opacity: 0;
width: 0;
height: 0
}

.ctus .reqtype-opt label {
display: flex;
flex-direction: row;
align-items: center;
gap: 6px;
padding: 12px;
border: 2px solid #0a72892e;
border-radius: 8px;
cursor: pointer;
font-size: 13px;
font-weight: 600;
color: #3a5460;
background: #f2f7f9;
transition: border-color .22s cubic-bezier(0.4, 0, 0.2, 1), background .22s cubic-bezier(0.4, 0, 0.2, 1), color .22s cubic-bezier(0.4, 0, 0.2, 1);
user-select: none
}

.ctus .reqtype-opt label svg {
flex-shrink: 0;
color: #0A7289
}

.ctus .reqtype-opt input[type="radio"]:checked+label {
border-color: #0A7289;
background: #0a728914 !important;
color: #0A7289
}

.ctus .reqtype-opt label:hover {
border-color: #0A7289;
background: #0a72890d;
color: #0A7289
}

.ctus .fieldrow {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-bottom: 24px
}

.ctus .field {
display: flex;
flex-direction: column;
gap: 6px;
position: relative
}

.ctus .field-lbl {
font-size: 13px;
font-weight: 700;
color: #0d1a20;
letter-spacing: .04em;
text-transform: uppercase
}

.ctus .field-inp {
padding: 12px;
border: 2px solid #0a72892e;
border-radius: 8px;
font-size: 15px;
color: #0d1a20;
background: #f2f7f9;
outline: none;
transition: border-color .24s cubic-bezier(0.0, 0, 0.2, 1), background .2s cubic-bezier(0.4, 0, 0.2, 1);
width: 100%;
box-sizing: border-box;
appearance: none
}

.ctus .field-inp:focus {
border-color: #0A7289;
background: #fff
}

.ctus .field-inp::placeholder {
color: #8aacb8
}

.ctus .field-inp:focus::placeholder {
color: transparent
}

.ctus .field-inp[type="tel"] {
font-variant-numeric: tabular-nums
}

.ctus .msgfield {
margin-bottom: 24px
}

.ctus .msgfield .field-inp {
resize: vertical;
min-height: 80px
}

.ctus .privrow {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
margin-bottom: 24px;
padding: 12px;
background: #0a72890a;
border-radius: 8px;
border: 1px solid #0a72891a
}

.ctus .privrow input[type="checkbox"] {
width: 18px;
height: 18px;
border: 2px solid #0A7289;
border-radius: 2px;
cursor: pointer;
flex-shrink: 0;
margin-top: 2px;
accent-color: #0A7289
}

.ctus .privrow-txt {
font-size: 13px;
color: #3a5460;
line-height: 1.7
}

.ctus .privrow-txt a {
color: #0A7289;
font-weight: 600;
text-decoration: underline;
text-underline-offset: 2px
}

.ctus .privrow-txt a:hover {
color: #791CEC
}

.ctus .submitbtn {
display: inline-flex;
align-items: center;
gap: 12px;
padding: 12px 36px;
background: transparent;
border: 3px solid #0A7289;
border-radius: 8px;
color: #0A7289;
font-size: 15px;
font-weight: 800;
letter-spacing: .04em;
cursor: pointer;
transition: background .22s cubic-bezier(0.4, 0, 0.2, 1), color .22s cubic-bezier(0.4, 0, 0.2, 1), transform .18s cubic-bezier(0.4, 0, 0.2, 1);
text-transform: uppercase
}

.ctus .submitbtn:hover {
background: #0A7289;
color: #fff;
transform: translateY(-2px)
}

.ctus .submitbtn:active {
transform: scale(0.97)
}

.ctus .submitbtn svg {
transition: transform .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.ctus .submitbtn:hover svg {
transform: translateX(4px)
}

.ctus .infostrip {
padding: 72px 0;
background: #fff;
position: relative
}

.ctus .infostrip-divtop {
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(90deg, #0A7289 0%, #DEAC0A 55%, #deac0a00 100%)
}

.ctus .infostrip-grid {
display: grid;
grid-template-columns: 1fr 1fr 2fr;
gap: 36px;
align-items: stretch
}

.ctus .infostrip-col {
display: flex;
flex-direction: column;
gap: 24px
}

.ctus .infostrip-col.dominant {
background: #0d1a20;
border-radius: 16px;
padding: 36px;
position: relative;
overflow: hidden
}

.ctus .infostrip-col.dominant::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(135deg, #0a728938 0%, #791cec24 100%);
pointer-events: none
}

.ctus .infostrip-col.dominant::after {
content: '';
position: absolute;
bottom: -30px;
right: -30px;
width: 160px;
height: 160px;
border: 25px solid #deac0a1a;
border-radius: 46px;
transform: rotate(30deg);
pointer-events: none
}

.ctus .diamond-accent {
position: absolute;
top: 24px;
right: 24px;
width: 28px;
height: 28px;
background: #DEAC0A;
transform: rotate(45deg);
border-radius: 2px;
opacity: .7
}

.ctus .dominant-inner {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
gap: 24px;
height: 100%
}

.ctus .dominant-bignum {
font-size: 62px;
font-weight: 800;
color: #DEAC0A;
line-height: 1.2;
letter-spacing: -.04em
}

.ctus .dominant-lbl {
font-size: 18px;
font-weight: 700;
color: #fff;
line-height: 1.2;
margin: 0
}

.ctus .dominant-txt {
font-size: 15px;
color: #ffffff9e;
line-height: 1.7;
margin: 0
}

.ctus .dominant-badges {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 6px;
margin-top: auto
}

.ctus .dbadge {
padding: 6px 12px;
border-radius: 30px;
border: 1.5px solid #deac0a4d;
color: #DEAC0A;
font-size: 13px;
font-weight: 600
}

.ctus .infotile {
background: #f2f7f9;
border-radius: 16px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 12px;
border: 1.5px solid #0a728914;
transition: box-shadow .26s cubic-bezier(0.4, 0, 0.2, 1), transform .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.ctus .infotile:hover {
box-shadow: 2px 6px 22px -2px #0a728917;
transform: translateY(-3px)
}

.ctus .infotile-icon {
width: 44px;
height: 44px;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center
}

.ctus .infotile-icon.gold {
background: #deac0a1f;
color: #DEAC0A
}

.ctus .infotile-icon.purple {
background: #791cec1a;
color: #791CEC
}

.ctus .infotile-icon.teal {
background: #0a72891a;
color: #0A7289
}

.ctus .infotile-h {
font-size: 15px;
font-weight: 800;
color: #0d1a20;
line-height: 1.2;
margin: 0
}

.ctus .infotile-txt {
font-size: 13px;
color: #3a5460;
line-height: 1.7;
margin: 0
}

.ctus .infotile-tag {
display: inline-flex;
align-items: center;
padding: 6px 12px;
border-radius: 30px;
font-size: 13px;
font-weight: 700;
width: fit-content
}

.ctus .infotile-tag.teal {
background: #0a72891a;
color: #0A7289
}

.ctus .infotile-tag.gold {
background: #deac0a1f;
color: #b08a08
}

.ctus .infotile-tag.purple {
background: #791cec14;
color: #791CEC
}

@keyframes desat {

0%,
100% {
filter: saturate(1)
}

50% {
filter: saturate(0.3)
}
}

.ctus .formblk {
animation: desat 8s ease-in-out infinite
}

@media (max-width: 900px) {
.ctus .titlblk-h {
font-size: 45px
}

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

.ctus .infostrip-grid {
grid-template-columns: 1fr 1fr;
gap: 24px
}

.ctus .infostrip-col.dominant {
grid-column: 1 / -1;
order: -1
}
}

@media (max-width: 620px) {
.ctus .titlblk-h {
font-size: 32px
}

.ctus .titlblk-meta {
gap: 24px
}

.ctus .reqtype-opts {
grid-template-columns: 1fr
}

.ctus .fieldrow {
grid-template-columns: 1fr;
gap: 12px
}

.ctus .formcard {
padding: 24px
}

.ctus .infostrip-grid {
grid-template-columns: 1fr
}

.ctus .titlblk-divider {
display: none
}
}

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

.successPage .successWrap {
max-width: 560px;
width: 100%;
text-align: center
}

.successPage .successWrap .iconRing {
width: 72px;
height: 72px;
border-radius: 46px;
border: 3px solid #0A7289;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 36px
}

.successPage .successWrap .iconRing svg {
display: block
}

.successPage .successWrap .successTitle {
font-size: 32px;
line-height: 1.2;
letter-spacing: -.02em;
color: #0A7289;
margin: 0 0 12px
}

.successPage .successWrap .successSub {
font-size: 18px;
line-height: 1.7;
color: #2a4a52;
margin: 0 0 36px
}

.successPage .successWrap .successNote {
font-size: 15px;
line-height: 1.7;
color: #4a6a74;
margin: 0 0 36px;
padding: 24px;
border-radius: 8px;
background: #f0f8fa;
border-top: 3px solid #DEAC0A
}

.successPage .successWrap .successNote span {
color: #0A7289;
font-size: 13px;
display: block;
margin-bottom: 6px;
letter-spacing: .04em;
text-transform: uppercase
}

.successPage .successWrap .btnBack {
display: inline-block;
padding: 12px 36px;
font-size: 15px;
line-height: 1.2;
color: #0A7289;
background: transparent;
border: 2px solid #0A7289;
border-radius: 8px;
text-decoration: none;
transition: color .22s cubic-bezier(0.4, 0, 0.2, 1), background .18s cubic-bezier(0.0, 0, 0.2, 1), transform .12s cubic-bezier(0.4, 0, 0.2, 1)
}

.successPage .successWrap .btnBack:hover {
background: #0A7289;
color: #fff;
transform: translateY(-2px)
}

.successPage .successWrap .btnBack:active {
transform: scale(0.97)
}

@media (max-width: 480px) {
.successPage {
padding: 72px 12px
}

.successPage .successWrap .successTitle {
font-size: 23px
}

.successPage .successWrap .successSub {
font-size: 15px
}
}