* {
box-sizing: border-box
}

html {
font-size: 100%
}

body {
margin: 0;
font-family: 'Lato', sans-serif;
background-color: #0b1220;
color: #FFFFFB
}

.site-header {
position: relative;
background: linear-gradient(135deg, #07101f 0%, #0d1a2e 60%, #0b1525 100%);
border-bottom: 1px solid #04df8d2e;
box-shadow: 0 4px 25px 0 #04df8d14;
overflow: hidden
}

.site-header::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(90deg, transparent 0%, #04DF8D 40%, #870807 100%);
pointer-events: none
}

.header-upper {
display: flex;
align-items: stretch;
justify-content: space-between;
max-width: 1366px;
margin: 0 auto;
padding: 0 40px;
min-height: 80px
}

.header-nav-side {
display: flex;
align-items: center;
flex: 1
}

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

.primary-nav li {
display: flex
}

.primary-nav a {
display: flex;
align-items: center;
padding: 8px 20px;
font-size: 15px;
font-weight: 400;
letter-spacing: .04em;
color: #fffffbc7;
text-decoration: none;
border-radius: 6px;
border: 1px solid transparent;
transition: color .22s ease-out, background-color .18s ease-out, border-color .25s ease-out;
white-space: nowrap;
position: relative
}

.primary-nav a:hover {
color: #04DF8D;
background-color: #04df8d12;
border-color: #04df8d38;
clip-path: inset(0 0 0 0 round 6px)
}

.primary-nav a:focus {
outline: none
}

.primary-nav a:focus::before {
content: 'fokus';
position: absolute;
top: -18px;
left: 50%;
transform: translateX(-50%);
font-size: 10px;
color: #04DF8D;
background: #0b1220;
padding: 2px 4px;
border-radius: 3px;
white-space: nowrap;
pointer-events: none
}

.primary-nav a[aria-current="page"] {
color: #04DF8D;
background-color: #04df8d1a;
border-color: #04df8d4d
}

.header-brand-side {
display: flex;
align-items: center;
gap: 20px;
padding: 20px 0 20px 40px
}

.brand-address {
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 4px
}

.brand-address-text {
font-size: 15px;
color: #fffffb80;
letter-spacing: .02em;
line-height: 1.5;
white-space: nowrap
}

.brand-address-text .addr-icon {
color: #04DF8D;
margin-right: 4px;
font-size: 14px
}

.logo-accent-wrap {
display: flex;
align-items: center;
border-left: 3px solid #04DF8D;
padding-left: 20px;
box-shadow: inset 2px 0 8px 0 #04df8d1f
}

.brand-logo-img {
display: block;
width: 46px;
height: 46px;
object-fit: contain;
object-position: center
}

.logo-accent-wrap {
background: #04df8d0f;
border-radius: 0 6px 6px 0;
padding: 8px 8px 8px 20px;
box-shadow: 0 3px 4px 0 #04df8d0f inset 0 0 12px 0 #04df8d14
}

.header-sub-bar {
background: #87080714;
border-top: 1px solid #87080733
}

.header-sub-inner {
max-width: 1366px;
margin: 0 auto;
padding: 8px 40px;
display: flex;
align-items: center;
gap: 20px
}

.sub-bar-label {
font-size: 15px;
color: #fffffb73;
letter-spacing: .05em;
text-transform: uppercase;
font-weight: 300
}

.sub-bar-contact {
display: flex;
align-items: center;
gap: 20px;
margin-left: auto
}

.sub-contact-link {
display: flex;
align-items: center;
gap: 8px;
font-size: 15px;
color: #fffffb99;
text-decoration: none;
letter-spacing: .02em;
transition: color .2s ease-out;
padding: 4px 8px;
border-radius: 3px
}

.sub-contact-link:hover {
color: #04DF8D
}

.sub-contact-link:focus {
outline: none;
position: relative
}

.sub-contact-link:focus::before {
content: 'fokus';
position: absolute;
top: -18px;
left: 50%;
transform: translateX(-50%);
font-size: 10px;
color: #04DF8D;
background: #0b1220;
padding: 2px 4px;
border-radius: 3px;
pointer-events: none
}

.sub-contact-link .typcn {
font-size: 16px;
color: #870807
}

.site-footer {
background: linear-gradient(180deg, #080f1c 0%, #060c17 100%);
padding: 40px 0 0
}

.footer-top {
max-width: 1366px;
margin: 0 auto;
padding: 0 40px 40px;
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 40px;
flex-wrap: wrap
}

.footer-brand-col {
display: flex;
flex-direction: column;
gap: 20px;
min-width: 200px
}

.footer-logo-row {
display: flex;
align-items: center;
gap: 20px
}

.footer-logo-wrap {
background: #04df8d0f;
border-radius: 6px;
padding: 8px;
box-shadow: 0 3px 4px 0 #04df8d0f 0 0 0 1px #04df8d26
}

.footer-logo-img {
display: block;
width: 42px;
height: 42px;
object-fit: contain;
object-position: center
}

.footer-brand-name {
font-size: 19px;
font-weight: 700;
color: #FFFFFB;
letter-spacing: -.01em;
line-height: 1.2
}

.footer-brand-desc {
font-size: 15px;
color: #fffffb73;
line-height: 1.7;
max-width: 280px
}

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

.footer-col-label {
font-size: 15px;
font-weight: 700;
color: #fffffb59;
letter-spacing: .07em;
text-transform: uppercase;
margin-bottom: 8px
}

.footer-nav-link {
font-size: 15px;
color: #fffffb99;
text-decoration: none;
letter-spacing: .02em;
line-height: 1.5;
padding: 4px 0;
border-radius: 3px;
transition: color .2s ease-out;
display: inline-block
}

.footer-nav-link:hover {
color: #04DF8D
}

.footer-nav-link:focus {
outline: none;
position: relative
}

.footer-nav-link:focus::before {
content: 'fokus';
position: absolute;
top: -18px;
left: 0;
font-size: 10px;
color: #04DF8D;
background: #0b1220;
padding: 2px 4px;
border-radius: 3px;
pointer-events: none
}

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

.footer-contact-item {
display: flex;
align-items: center;
gap: 8px;
font-size: 15px;
color: #fffffb8c;
line-height: 1.5;
text-decoration: none;
transition: color .18s ease-out;
padding: 4px 0
}

.footer-contact-item:hover {
color: #FFFFFB
}

.footer-contact-item .typcn {
color: #04DF8D;
font-size: 16px;
flex-shrink: 0
}

.footer-divider-rule {
max-width: 1366px;
margin: 0 auto;
border: none;
border-top: 1px solid #04df8d1a;
display: block
}

.footer-bottom {
max-width: 1366px;
margin: 0 auto;
padding: 20px 40px;
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 20px
}

.footer-copyright {
font-size: 15px;
color: #fffffb59;
letter-spacing: .02em;
line-height: 1.5
}

.footer-policy-links {
display: flex;
align-items: center;
gap: 20px
}

.footer-policy-link {
font-size: 15px;
color: #fffffb66;
text-decoration: none;
letter-spacing: .02em;
transition: color .2s ease-out;
padding: 4px 0;
border-radius: 3px
}

.footer-policy-link:hover {
color: #fffffbbf
}

.footer-policy-link:focus {
outline: none;
position: relative
}

.footer-policy-link:focus::before {
content: 'fokus';
position: absolute;
top: -18px;
left: 0;
font-size: 10px;
color: #04DF8D;
background: #0b1220;
padding: 2px 4px;
border-radius: 3px;
pointer-events: none
}

.footer-cookie-manage {
font-size: 15px;
color: #04df8d8c;
text-decoration: none;
letter-spacing: .02em;
transition: color .22s ease-out;
cursor: pointer;
background: none;
border: none;
padding: 4px 0;
font-family: inherit
}

.footer-cookie-manage:hover {
color: #04DF8D
}

.footer-cookie-manage:focus {
outline: none;
position: relative
}

.footer-cookie-manage:focus::before {
content: 'fokus';
position: absolute;
top: -18px;
left: 0;
font-size: 10px;
color: #04DF8D;
background: #0b1220;
padding: 2px 4px;
border-radius: 3px;
pointer-events: none
}

.consent-bar {
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 1000;
background: #0d1a2e;
border-top: 1px solid #04df8d40;
box-shadow: 0 -4px 25px 0 #04df8d14;
transform: translateY(100%);
transition: transform .42s ease-out
}

.consent-bar.consent-bar--visible {
transform: translateY(0)
}

.consent-bar-inner {
max-width: 1366px;
margin: 0 auto;
padding: 20px 40px;
display: flex;
align-items: center;
flex-wrap: wrap;
gap: 20px
}

.consent-text-block {
flex: 1;
min-width: 260px
}

.consent-headline {
font-size: 16px;
font-weight: 700;
color: #FFFFFB;
line-height: 1.2;
margin: 0 0 8px
}

.consent-desc {
font-size: 15px;
color: #fffffb99;
line-height: 1.5;
margin: 0
}

.consent-desc a {
color: #04DF8D;
text-decoration: none
}

.consent-desc a:hover {
text-decoration: underline
}

.consent-actions {
display: flex;
align-items: center;
gap: 20px;
flex-wrap: wrap
}

.consent-btn-accept {
display: inline-flex;
align-items: center;
padding: 8px 20px;
font-size: 15px;
font-weight: 700;
color: #0b1220;
background: #04DF8D;
border: 1px solid #04DF8D;
border-radius: 6px;
cursor: pointer;
font-family: inherit;
letter-spacing: .02em;
min-height: 44px;
transition: background-color .2s ease-out, border-color .2s ease-out, clip-path .25s ease-out;
clip-path: inset(0 0 0 0 round 6px)
}

.consent-btn-accept:hover {
background: #02c07a;
border-color: #02c07a;
clip-path: inset(0 1px 0 1px round 10px)
}

.consent-btn-accept:focus {
outline: none;
position: relative
}

.consent-btn-accept:focus::before {
content: 'fokus';
position: absolute;
top: -20px;
left: 50%;
transform: translateX(-50%);
font-size: 10px;
color: #04DF8D;
background: #0b1220;
padding: 2px 4px;
border-radius: 3px;
pointer-events: none
}

.consent-btn-decline {
display: inline-flex;
align-items: center;
padding: 8px 20px;
font-size: 15px;
font-weight: 400;
color: #fffffb8c;
background: transparent;
border: 1px solid #fffffb33;
border-radius: 6px;
cursor: pointer;
font-family: inherit;
letter-spacing: .02em;
min-height: 44px;
transition: color .22s ease-out, border-color .22s ease-out
}

.consent-btn-decline:hover {
color: #FFFFFB;
border-color: #fffffb73
}

.consent-btn-decline:focus {
outline: none;
position: relative
}

.consent-btn-decline:focus::before {
content: 'fokus';
position: absolute;
top: -20px;
left: 50%;
transform: translateX(-50%);
font-size: 10px;
color: #04DF8D;
background: #0b1220;
padding: 2px 4px;
border-radius: 3px;
pointer-events: none
}

@media (max-width: 768px) {
.header-upper {
padding: 0 20px;
flex-wrap: wrap;
min-height: auto
}

.header-nav-side {
order: 2;
width: 100%;
padding: 8px 0
}

.header-brand-side {
order: 1;
padding: 20px 0;
width: 100%;
justify-content: flex-end
}

.brand-address {
display: none
}

.header-sub-inner {
padding: 8px 20px;
flex-wrap: wrap
}

.sub-bar-label {
display: none
}

.sub-bar-contact {
margin-left: 0
}

.footer-top {
padding: 0 20px 40px;
flex-direction: column
}

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

.consent-bar-inner {
padding: 20px
}
}

@media (max-width: 480px) {
.primary-nav a {
padding: 8px 12px;
font-size: 15px
}

.footer-policy-links {
flex-wrap: wrap;
gap: 8px
}

.consent-actions {
width: 100%
}

.consent-btn-accept,
.consent-btn-decline {
flex: 1;
justify-content: center
}
}

@media (min-width: 1280px) {
.brand-address-text {
font-size: 15px
}
}

.rules-section {
max-width: 1366px;
margin: 0 auto;
padding: 80px 40px;
color: #FFFFFB;
background: #0b1220
}

.rules-section p {
font-size: 16px;
line-height: 1.7;
margin-bottom: 20px;
letter-spacing: .01em;
color: #d4d8e2
}

.rules-section ul,
.rules-section ol {
margin: 20px 0;
padding-left: 40px
}

.rules-section li {
font-size: 16px;
line-height: 1.7;
color: #d4d8e2;
margin-bottom: 8px;
letter-spacing: .01em
}

.rules-section ul li {
list-style-type: disc
}

.rules-section ol li {
list-style-type: decimal
}

.rules-section ul li::marker,
.rules-section ol li::marker {
color: #04DF8D
}

.rules-section strong,
.rules-section b {
font-weight: 700;
color: #FFFFFB
}

.rules-section a {
color: #04DF8D;
text-decoration: underline;
text-decoration-color: #04df8d66;
text-underline-offset: 3px;
transition: color .2s ease-out, text-decoration-color .25s ease-out
}

.rules-section a:hover {
color: #FFFFFB;
text-decoration-color: #fffffb80
}

.rules-section table {
width: 100%;
border-collapse: collapse;
margin: 40px 0;
font-size: 15px;
box-shadow: 0 4px 25px 0 #04df8d14;
border-radius: 10px;
overflow: hidden
}

.rules-section thead {
background: linear-gradient(135deg, #0d1f35 0%, #0b2a1e 100%)
}

.rules-section thead th {
padding: 20px;
text-align: left;
font-size: 15px;
font-weight: 700;
letter-spacing: .04em;
color: #04DF8D;
border-bottom: 2px solid #04df8d4d
}

.rules-section tbody tr {
border-bottom: 1px solid #fffffb12;
transition: background .2s ease-out
}

.rules-section tbody tr:last-child {
border-bottom: none
}

.rules-section tbody tr:hover {
background: #04df8d0d
}

.rules-section td {
padding: 20px;
font-size: 15px;
line-height: 1.5;
color: #c8cdd8;
vertical-align: top
}

.rules-section hr {
border: none;
height: 1px;
background: linear-gradient(90deg, transparent, #04df8d59, #87080740, transparent);
margin: 40px 0
}

.rules-section div {
margin-bottom: 20px
}

@media (max-width: 768px) {
.rules-section {
padding: 40px 20px
}

.rules-section table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch
}

.rules-section ul,
.rules-section ol {
padding-left: 20px
}
}

@media (max-width: 480px) {
.rules-section {
padding: 40px 8px
}

.rules-section p,
.rules-section li {
font-size: 15px
}

.rules-section thead th,
.rules-section td {
padding: 8px;
font-size: 15px
}
}

.lrn-prog {
background-color: #0a1628;
background-image: linear-gradient(167deg, #0d1f3c 0%, #080f1e 55%, #0f1a2e 100%);
min-height: 100vh;
overflow-x: clip
}

.lrn-prog .pg-wrap {
max-width: 1366px;
margin: 0 auto;
padding: 0 20px
}

.lrn-prog .chevron-div {
width: 100%;
height: 48px;
position: relative;
overflow: hidden
}

.lrn-prog .chevron-div svg {
width: 100%;
height: 100%;
display: block
}

.lrn-prog .title-area {
padding: 80px 20px 40px;
max-width: 1366px;
margin: 0 auto
}

.lrn-prog .img-zone {
display: flex;
flex-direction: column;
align-items: center;
padding: 40px 80px 20px;
position: relative
}

.lrn-prog .img-zone::before {
content: '';
position: absolute;
top: 20px;
left: 50%;
transform: translateX(-50%);
width: 320px;
height: 220px;
background: linear-gradient(167deg, #04df8d12 0%, #8708070d 100%);
border-radius: 18px;
z-index: 0
}

.lrn-prog .img-zone .corner-tl,
.lrn-prog .img-zone .corner-br {
position: absolute;
width: 28px;
height: 28px;
z-index: 1
}

.lrn-prog .img-zone .corner-tl {
top: 12px;
left: calc(50% - 160px);
border-top: 2px solid #04DF8D;
border-left: 2px solid #04DF8D;
border-radius: 3px 0 0 0
}

.lrn-prog .img-zone .corner-br {
bottom: 12px;
right: calc(50% - 160px);
border-bottom: 2px solid #04DF8D;
border-right: 2px solid #04DF8D;
border-radius: 0 0 3px 0
}

.lrn-prog .prog-img {
width: 300px;
height: 190px;
object-fit: cover;
object-position: center;
border-radius: 10px;
opacity: .55;
position: relative;
z-index: 1;
box-shadow: 0 4px 25px 0 #04df8d14
}

.lrn-prog .text-zone {
padding: 20px 80px 40px;
text-align: center
}

.lrn-prog .prog-label {
font-size: 15px;
color: #04DF8D;
letter-spacing: .12em;
text-transform: uppercase;
margin-bottom: 8px;
display: block
}

.lrn-prog .prog-h1 {
font-size: 43px;
line-height: 1.2;
letter-spacing: -.02em;
color: #FFFFFB;
margin: 0 0 8px;
font-weight: 700
}

.lrn-prog .prog-h1 span {
color: #04DF8D
}

.lrn-prog .prog-h1 em {
font-style: normal;
color: #FFFFFB;
font-weight: 900
}

.lrn-prog .prog-sub {
font-size: 19px;
line-height: 1.5;
color: #fffffba6;
max-width: 620px;
margin: 8px auto 20px
}

.lrn-prog .prog-cta-row {
display: flex;
flex-direction: row;
gap: 20px;
justify-content: center;
align-items: center;
flex-wrap: wrap
}

.lrn-prog .btn-primary {
background: linear-gradient(120deg, #04DF8D 0%, #02b872 100%);
color: #080f1e;
font-size: 16px;
font-weight: 700;
border: none;
border-radius: 6px;
padding: 20px 40px;
cursor: pointer;
letter-spacing: .04em;
box-shadow: 0 4px 25px 0 #04df8d1f;
transition: box-shadow .22s ease-out, background .28s ease-out;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}

.lrn-prog .btn-primary:hover {
background: linear-gradient(200deg, #04DF8D 0%, #02b872 100%);
box-shadow: 0 12px 36px 0 #04df8d2e;
clip-path: polygon(2% 0, 100% 0, 98% 100%, 0 100%)
}

.lrn-prog .btn-primary:focus {
outline: 2px solid #04DF8D;
outline-offset: 3px
}

.lrn-prog .btn-secondary {
background: transparent;
color: #FFFFFB;
font-size: 15px;
border: 1px solid #fffffb40;
border-radius: 6px;
padding: 8px 20px;
cursor: pointer;
letter-spacing: .03em;
transition: border-color .18s ease-out, color .18s ease-out
}

.lrn-prog .btn-secondary:hover {
border-color: #04DF8D;
color: #04DF8D
}

.lrn-prog .btn-secondary:focus {
outline: 2px solid #04DF8D;
outline-offset: 3px
}

.lrn-prog .chevron-down-1 {
fill: #0d1f3c
}

.lrn-prog .metrics-section {
background-color: #060e1c;
padding: 80px 20px;
position: relative
}

.lrn-prog .metrics-section::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-image: url(/blog_images/main-file02.jpg);
background-size: cover;
background-position: center;
opacity: .06;
border-radius: 0
}

.lrn-prog .metrics-inner {
max-width: 1366px;
margin: 0 auto;
position: relative;
z-index: 1
}

.lrn-prog .metrics-top {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
align-items: start;
margin-bottom: 80px
}

.lrn-prog .metrics-intro {
padding-right: 40px
}

.lrn-prog .sec-label {
font-size: 15px;
color: #870807;
letter-spacing: .1em;
text-transform: uppercase;
display: block;
margin-bottom: 8px
}

.lrn-prog .metrics-h2 {
font-size: 31px;
line-height: 1.2;
letter-spacing: -.01em;
color: #FFFFFB;
font-weight: 700;
margin: 0 0 20px;
padding-bottom: 8px;
border-bottom: 2px solid #04df8d59;
display: inline-block
}

.lrn-prog .metrics-desc {
font-size: 16px;
line-height: 1.7;
color: #fffffbb3;
margin: 0 0 20px
}

.lrn-prog .metrics-desc+.metrics-desc {
margin-top: 0
}

.lrn-prog .hero-stat-card {
background: linear-gradient(145deg, #0d2040 0%, #091628 100%);
border-radius: 18px;
border-top: 3px solid #04DF8D;
padding: 40px;
box-shadow: 0 12px 36px 0 #04df8d1f;
position: relative;
overflow: hidden
}

.lrn-prog .hero-stat-card::after {
content: '';
position: absolute;
bottom: -20px;
right: -20px;
width: 120px;
height: 120px;
border-radius: 50%;
background: #04df8d0f;
box-shadow: inset 0 0 30px #04df8d1a
}

.lrn-prog .hero-stat-num {
font-size: 58px;
line-height: 1.2;
letter-spacing: -.03em;
color: #04DF8D;
font-weight: 900;
display: block
}

.lrn-prog .hero-stat-unit {
font-size: 23px;
color: #04df8d99;
font-weight: 400;
margin-left: 4px
}

.lrn-prog .hero-stat-label {
font-size: 16px;
line-height: 1.5;
color: #fffffbbf;
margin: 8px 0 20px;
display: block
}

.lrn-prog .hero-stat-context {
font-size: 15px;
line-height: 1.7;
color: #fffffb80;
border-top: 1px solid #fffffb1a;
padding-top: 20px;
margin: 0
}

.lrn-prog .metric-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px
}

.lrn-prog .metric-item {
background: linear-gradient(160deg, #0f1e35 0%, #0a1525 100%);
border-radius: 10px;
border-top: 2px solid #870807;
padding: 20px;
box-shadow: 0 3px 4px 0 #8708070f;
transition: box-shadow .25s ease-out, transform .2s ease-out
}

.lrn-prog .metric-item:hover {
box-shadow: 0 4px 25px 0 #8708071a;
transform: translateY(-2px)
}

.lrn-prog .metric-val {
font-size: 31px;
line-height: 1.2;
letter-spacing: -.02em;
color: #FFFFFB;
font-weight: 700;
display: block
}

.lrn-prog .metric-name {
font-size: 15px;
line-height: 1.5;
color: #fffffb8c;
margin: 4px 0 0;
display: block
}

.lrn-prog .experts-row {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 20px;
margin-top: 0;
padding-top: 40px;
border-top: 1px solid #fffffb14
}

.lrn-prog .expert-card {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 8px
}

.lrn-prog .expert-img-wrap {
width: 100%;
aspect-ratio: 7/9;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 4px 25px 0 #04df8d14
}

.lrn-prog .expert-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: top;
display: block
}

.lrn-prog .expert-name {
font-size: 16px;
line-height: 1.5;
color: #FFFFFB;
font-weight: 600;
margin: 0
}

.lrn-prog .expert-role {
font-size: 15px;
line-height: 1.5;
color: #04DF8D;
margin: 0
}

.lrn-prog .expert-bio {
font-size: 15px;
line-height: 1.7;
color: #fffffb8c;
margin: 0
}

.lrn-prog .expert-no-img {
width: 100%;
aspect-ratio: 7/9;
border-radius: 18px;
background: linear-gradient(145deg, #0f2040 0%, #0a1830 100%);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
box-shadow: 0 4px 25px 0 #04df8d0f
}

.lrn-prog .expert-no-img svg {
opacity: .3
}

.lrn-prog .quote-mark {
color: #04DF8D;
font-size: 23px;
line-height: 1;
font-weight: 900
}

.lrn-prog .expert-quote {
font-size: 15px;
line-height: 1.7;
color: #fffffb99;
margin: 0;
font-style: italic
}

.lrn-prog .draw-line {
width: 0;
height: 2px;
background: linear-gradient(90deg, #04DF8D 0%, #04df8d00 100%);
animation: line-draw .45s ease-out .2s forwards;
margin: 8px 0
}

@keyframes line-draw {
to {
width: 100%
}
}

.lrn-prog .expand-line {
display: block;
height: 2px;
background: #04DF8D;
border-radius: 3px;
animation: expand-contract 2.8s ease-out infinite;
margin-top: 8px
}

@keyframes expand-contract {
0% {
width: 0;
opacity: .8
}

50% {
width: 100%;
opacity: 1
}

100% {
width: 0;
opacity: .8
}
}

.lrn-prog .modules-section {
padding: 80px 20px;
max-width: 1366px;
margin: 0 auto
}

.lrn-prog .modules-h3 {
font-size: 31px;
line-height: 1.2;
letter-spacing: -.01em;
color: #FFFFFB;
font-weight: 700;
margin: 0 0 8px;
padding-bottom: 8px;
border-bottom: 2px solid #87080780;
display: inline-block
}

.lrn-prog .modules-sub {
font-size: 16px;
line-height: 1.7;
color: #fffffb99;
margin: 8px 0 40px;
max-width: 560px
}

.lrn-prog .modules-layout {
display: grid;
grid-template-columns: 2fr 1fr;
gap: 40px;
align-items: start
}

.lrn-prog .module-list {
display: flex;
flex-direction: column;
gap: 8px;
list-style: none;
padding: 0;
margin: 0
}

.lrn-prog .module-list li {
background: linear-gradient(160deg, #0d1e38 0%, #091525 100%);
border-radius: 10px;
border-left: 3px solid #870807;
border-right: 1px solid #fffffb0f;
border-top: 1px solid #fffffb0f !important;
border-bottom: 1px solid #fffffb0f;
padding: 20px;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 20px;
transition: border-left-color .2s ease-out, box-shadow .25s ease-out
}

.lrn-prog .module-list li:hover {
border-left-color: #04DF8D;
box-shadow: 0 4px 25px 0 #04df8d14
}

.lrn-prog .mod-num {
font-size: 23px;
line-height: 1.2;
color: #870807b3;
font-weight: 900;
min-width: 40px;
transition: color .2s ease-out
}

.lrn-prog .module-list li:hover .mod-num {
color: #04DF8D
}

.lrn-prog .mod-body {
flex: 1
}

.lrn-prog .mod-title {
font-size: 16px;
line-height: 1.5;
color: #FFFFFB;
font-weight: 600;
margin: 0 0 4px
}

.lrn-prog .mod-desc {
font-size: 15px;
line-height: 1.7;
color: #fffffb8c;
margin: 0
}

.lrn-prog .sidebar-cards {
display: flex;
flex-direction: column;
gap: 20px
}

.lrn-prog .side-card {
background: linear-gradient(145deg, #0f2040 0%, #091628 100%);
border-radius: 10px;
border-top: 3px solid #04DF8D;
padding: 20px;
box-shadow: 0 3px 4px 0 #04df8d0f
}

.lrn-prog .side-card-title {
font-size: 16px;
line-height: 1.5;
color: #FFFFFB;
font-weight: 600;
margin: 0 0 8px;
padding-bottom: 8px;
border-bottom: 1px solid #fffffb1a
}

.lrn-prog .side-card p {
font-size: 15px;
line-height: 1.7;
color: #fffffb99;
margin: 0
}

.lrn-prog .side-card .tag-row {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
margin-top: 8px
}

.lrn-prog .tag {
font-size: 15px;
color: #04DF8D;
background: #04df8d1a;
border-radius: 6px;
padding: 4px 8px;
letter-spacing: .03em
}

@media (max-width: 1280px) {
.lrn-prog .metrics-top {
grid-template-columns: 1fr 1fr;
gap: 20px
}

.lrn-prog .experts-row {
grid-template-columns: repeat(2, 1fr);
gap: 20px
}
}

@media (max-width: 768px) {
.lrn-prog .text-zone {
padding: 20px 20px 40px
}

.lrn-prog .img-zone {
padding: 40px 20px 20px
}

.lrn-prog .img-zone .corner-tl {
left: 20px
}

.lrn-prog .img-zone .corner-br {
right: 20px
}

.lrn-prog .prog-h1 {
font-size: 31px
}

.lrn-prog .metrics-top {
grid-template-columns: 1fr
}

.lrn-prog .metrics-intro {
padding-right: 0
}

.lrn-prog .metric-grid {
grid-template-columns: repeat(2, 1fr)
}

.lrn-prog .experts-row {
grid-template-columns: repeat(2, 1fr)
}

.lrn-prog .modules-layout {
grid-template-columns: 1fr
}
}

@media (max-width: 480px) {
.lrn-prog .prog-h1 {
font-size: 23px
}

.lrn-prog .hero-stat-num {
font-size: 43px
}

.lrn-prog .metric-grid {
grid-template-columns: 1fr
}

.lrn-prog .experts-row {
grid-template-columns: 1fr
}

.lrn-prog .prog-cta-row {
flex-direction: column;
gap: 8px
}
}

.prm-idx {
background: #080d14;
color: #FFFFFB;
overflow-x: hidden;
position: relative
}

.prm-idx .prm-container {
max-width: 1366px;
margin-left: auto;
margin-right: auto;
padding-left: 40px;
padding-right: 40px
}

@media (max-width: 768px) {
.prm-idx .prm-container {
padding-left: 20px;
padding-right: 20px
}
}

.prm-idx .reveal-el {
animation: colorReveal .45s ease-out forwards
}

@keyframes colorReveal {
0% {
color: #04DF8D;
opacity: 0
}

60% {
color: #04DF8D
}

100% {
color: #FFFFFB;
opacity: 1
}
}

.prm-idx .reveal-accent {
animation: accentReveal .35s ease-out forwards
}

@keyframes accentReveal {
0% {
color: #870807;
opacity: 0
}

50% {
color: #870807
}

100% {
color: #04DF8D;
opacity: 1
}
}

.prm-idx .title-blk {
position: relative;
padding-top: 80px;
padding-bottom: 80px;
overflow: hidden
}

.prm-idx .title-blk::before {
content: "";
position: absolute;
inset: 0;
background: url(/blog_images/container-07.jpg) center/cover no-repeat;
opacity: .18;
pointer-events: none
}

.prm-idx .title-blk::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(160deg, #080d14 0%, #080d148c 50%, #080d14 100%);
pointer-events: none
}

.prm-idx .title-grain {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 1;
background-image: radial-gradient(circle at 1px 1px, #04df8d0f 1px, transparent 0);
background-size: 28px 28px
}

.prm-idx .title-oversized {
position: absolute;
right: -20px;
top: 50%;
transform: translateY(-50%);
font-size: 58px;
font-weight: 900;
color: #04df8d0d;
letter-spacing: -4px;
line-height: 1.2;
pointer-events: none;
z-index: 1;
white-space: nowrap
}

@media (max-width: 768px) {
.prm-idx .title-oversized {
font-size: 43px;
right: -10px
}
}

.prm-idx .title-inner {
position: relative;
z-index: 2;
display: flex;
flex-direction: row;
gap: 80px;
align-items: center
}

@media (max-width: 768px) {
.prm-idx .title-inner {
flex-direction: column;
gap: 40px
}
}

.prm-idx .title-text-col {
flex: 1 1 0
}

.prm-idx .title-img-col {
flex: 0 0 420px;
position: relative
}

@media (max-width: 1280px) {
.prm-idx .title-img-col {
flex: 0 0 320px
}
}

@media (max-width: 768px) {
.prm-idx .title-img-col {
flex: 0 0 auto;
width: 100%
}
}

.prm-idx .title-img-frame {
position: relative;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 12px 36px 0 #04df8d1f
}

.prm-idx .title-img-frame img {
width: 100%;
height: 340px;
object-fit: cover;
object-position: center;
display: block;
filter: blur(0px) saturate(0.9);
transition: filter .25s ease-out
}

.prm-idx .title-img-frame::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 60%;
background: linear-gradient(to top, #080d14b3 0%, transparent 100%);
pointer-events: none
}

.prm-idx .title-eyebrow {
font-size: 15px;
letter-spacing: .12em;
color: #04DF8D;
text-transform: uppercase;
margin-bottom: 20px;
line-height: 1.5
}

.prm-idx .title-h1 {
font-size: 43px;
font-weight: 800;
line-height: 1.2;
letter-spacing: -.02em;
margin-bottom: 20px;
color: #FFFFFB
}

@media (max-width: 768px) {
.prm-idx .title-h1 {
font-size: 31px
}
}

.prm-idx .title-h1 .accent-word {
color: #04DF8D
}

.prm-idx .title-lead {
font-size: 19px;
line-height: 1.7;
color: #fffffbbf;
margin-bottom: 40px
}

.prm-idx .title-metric-row {
display: flex;
flex-direction: row;
gap: 40px;
flex-wrap: wrap
}

.prm-idx .metric-item {
display: flex;
flex-direction: column;
gap: 4px
}

.prm-idx .metric-num {
font-size: 43px;
font-weight: 900;
line-height: 1.2;
color: #04DF8D;
letter-spacing: -.03em
}

.prm-idx .metric-num sup {
font-size: 23px;
vertical-align: super;
color: #870807
}

.prm-idx .metric-label {
font-size: 15px;
color: #fffffb99;
line-height: 1.5
}

.prm-idx .divider-fade {
height: 2px;
background: linear-gradient(90deg, transparent 0%, #04DF8D 30%, #04DF8D 70%, transparent 100%);
opacity: .18;
margin: 0
}

.prm-idx .divider-line {
height: 1px;
background: linear-gradient(90deg, transparent 0%, #870807 50%, transparent 100%);
opacity: .25;
margin: 0
}

.prm-idx .outcomes-blk {
padding-top: 80px;
padding-bottom: 80px;
background: linear-gradient(175deg, #0b1220 0%, #080d14 60%, #0e0b10 100%);
position: relative
}

.prm-idx .outcomes-blk .geo-accent {
position: absolute;
top: 40px;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
overflow: hidden
}

.prm-idx .outcomes-blk .geo-accent::before {
content: "";
position: absolute;
top: 20px;
left: 60px;
width: 6px;
height: 6px;
background: #04df8d1f;
transform: rotate(45deg);
border-radius: 3px
}

.prm-idx .outcomes-blk .geo-accent::after {
content: "";
position: absolute;
bottom: 40px;
right: 80px;
width: 10px;
height: 10px;
border: 1px solid #87080733;
transform: rotate(30deg);
border-radius: 3px
}

.prm-idx .outcomes-head {
text-align: center;
margin-bottom: 40px
}

.prm-idx .outcomes-head h2 {
font-size: 31px;
font-weight: 700;
line-height: 1.2;
letter-spacing: -.01em;
color: #FFFFFB;
margin-bottom: 20px;
display: inline-block;
border-bottom: 2px solid #04DF8D;
padding-bottom: 8px
}

.prm-idx .outcomes-head p {
font-size: 16px;
line-height: 1.7;
color: #fffffbb3;
max-width: 640px;
margin-left: auto;
margin-right: auto
}

.prm-idx .outcomes-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px
}

@media (max-width: 768px) {
.prm-idx .outcomes-grid {
grid-template-columns: 1fr
}
}

@media (min-width: 480px) and (max-width: 768px) {
.prm-idx .outcomes-grid {
grid-template-columns: repeat(2, 1fr)
}
}

.prm-idx .outcome-card {
background: #fffffb08;
border: 1px solid #04df8d1a;
border-radius: 10px;
padding: 40px 20px;
position: relative;
transition: border-color .25s ease-out, box-shadow .25s ease-out;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}

.prm-idx .outcome-card:hover {
border-color: #04df8d59;
box-shadow: 0 4px 25px 0 #04df8d14;
clip-path: polygon(0 0, 100% 0, 100% 96%, 2% 100%)
}

.prm-idx .outcome-card-num {
font-size: 43px;
font-weight: 900;
color: #04df8d1f;
line-height: 1.2;
letter-spacing: -.03em;
margin-bottom: 8px
}

.prm-idx .outcome-card-icon {
width: 32px;
height: 32px;
margin-bottom: 20px
}

.prm-idx .outcome-card h4 {
font-size: 19px;
font-weight: 700;
color: #FFFFFB;
margin-bottom: 8px;
line-height: 1.2;
border-bottom: 1px solid #04df8d40;
padding-bottom: 8px
}

.prm-idx .outcome-card p {
font-size: 15px;
line-height: 1.7;
color: #fffffba6
}

.prm-idx .method-blk {
padding-top: 80px;
padding-bottom: 80px;
position: relative
}

.prm-idx .method-blk-bg {
position: absolute;
inset: 0;
background: linear-gradient(180deg, #080d14 0%, #0a1018 50%, #080d14 100%);
pointer-events: none
}

.prm-idx .method-split {
position: absolute;
inset: 0;
pointer-events: none
}

.prm-idx .method-split-top {
position: absolute;
top: 0;
left: 0;
right: 0;
height: 50%;
background: #0b1220
}

.prm-idx .method-split-bot {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 50%;
background: #080d14
}

.prm-idx .method-inner {
position: relative;
z-index: 2;
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start
}

@media (max-width: 768px) {
.prm-idx .method-inner {
flex-direction: column;
gap: 40px
}
}

.prm-idx .method-text-col {
flex: 1 1 0
}

.prm-idx .method-visual-col {
flex: 0 0 380px
}

@media (max-width: 1280px) {
.prm-idx .method-visual-col {
flex: 0 0 300px
}
}

@media (max-width: 768px) {
.prm-idx .method-visual-col {
flex: 0 0 auto;
width: 100%
}
}

.prm-idx .method-text-col h2 {
font-size: 31px;
font-weight: 700;
line-height: 1.2;
letter-spacing: -.01em;
color: #FFFFFB;
margin-bottom: 20px;
border-bottom: 2px solid #870807;
padding-bottom: 8px;
display: inline-block
}

.prm-idx .method-text-col p {
font-size: 16px;
line-height: 1.7;
color: #fffffbb8;
margin-bottom: 20px
}

.prm-idx .method-quote {
border-left: 3px solid #04DF8D;
border-top: 1px solid #04df8d33;
padding: 20px;
margin-top: 20px;
background: #04df8d0a;
border-radius: 0 10px 10px 0
}

.prm-idx .method-quote p {
font-size: 19px;
line-height: 1.5;
color: #FFFFFB;
margin-bottom: 0
}

.prm-idx .method-quote p::before {
content: "\201C";
color: #04DF8D;
font-size: 23px;
font-weight: 900;
margin-right: 4px
}

.prm-idx .method-quote p::after {
content: "\201D";
color: #04DF8D;
font-size: 23px;
font-weight: 900;
margin-left: 4px
}

.prm-idx .method-img-stack {
position: relative
}

.prm-idx .method-img-primary {
width: 100%;
height: 280px;
object-fit: cover;
object-position: center;
border-radius: 10px;
display: block;
box-shadow: 0 12px 36px 0 #04df8d1f
}

.prm-idx .method-img-secondary {
width: 65%;
height: 180px;
object-fit: cover;
object-position: center;
border-radius: 10px;
display: block;
margin-top: 20px;
margin-left: auto;
box-shadow: 0 4px 25px 0 #87080714
}

.prm-idx .method-steps {
display: flex;
flex-direction: column;
gap: 20px;
margin-top: 40px
}

.prm-idx .method-step {
display: flex;
flex-direction: row;
gap: 20px;
align-items: flex-start
}

.prm-idx .step-num {
flex: 0 0 40px;
width: 40px;
height: 40px;
border-radius: 10px;
background: #04df8d1a;
border: 1px solid #04df8d40;
display: flex;
align-items: center;
justify-content: center;
font-size: 16px;
font-weight: 800;
color: #04DF8D;
line-height: 1.2
}

.prm-idx .step-text h5 {
font-size: 16px;
font-weight: 700;
color: #FFFFFB;
margin-bottom: 4px;
line-height: 1.5
}

.prm-idx .step-text p {
font-size: 15px;
color: #fffffb99;
line-height: 1.7;
margin-bottom: 0
}

.prm-idx .exp-blk {
padding-top: 80px;
padding-bottom: 80px;
background: linear-gradient(165deg, #0e0b10 0%, #0b1220 100%);
position: relative
}

.prm-idx .exp-blk::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, transparent, #870807 40%, #870807 60%, transparent);
opacity: .3
}

.prm-idx .exp-inner {
display: flex;
flex-direction: row;
gap: 80px;
align-items: center
}

@media (max-width: 768px) {
.prm-idx .exp-inner {
flex-direction: column;
gap: 40px
}
}

.prm-idx .exp-img-col {
flex: 0 0 320px;
position: relative
}

@media (max-width: 1280px) {
.prm-idx .exp-img-col {
flex: 0 0 260px
}
}

@media (max-width: 768px) {
.prm-idx .exp-img-col {
flex: 0 0 auto;
width: 100%
}
}

.prm-idx .exp-img-wrap {
position: relative;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 12px 36px 0 #8708071f
}

.prm-idx .exp-img-wrap img {
width: 100%;
height: 360px;
object-fit: cover;
object-position: center;
display: block;
transition: transform .35s ease-out
}

.prm-idx .exp-img-wrap:hover img {
transform: scale(1.04)
}

.prm-idx .exp-img-overlay {
position: absolute;
inset: 0;
background: #080d14d1;
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
transition: opacity .25s ease-out;
padding: 20px;
border-radius: 18px
}

.prm-idx .exp-img-wrap:hover .exp-img-overlay {
opacity: 1
}

.prm-idx .exp-img-overlay p {
font-size: 15px;
line-height: 1.7;
color: #FFFFFB;
text-align: center
}

.prm-idx .exp-portrait-row {
display: flex;
flex-direction: row;
gap: 20px;
align-items: center;
margin-top: 20px
}

.prm-idx .exp-portrait {
width: 80px;
height: 108px;
border-radius: 10px;
overflow: hidden;
flex-shrink: 0;
box-shadow: 0 3px 4px 0 #04df8d0f
}

.prm-idx .exp-portrait img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: top;
display: block
}

.prm-idx .exp-portrait-info {
display: flex;
flex-direction: column;
gap: 4px
}

.prm-idx .exp-portrait-name {
font-size: 16px;
font-weight: 700;
color: #FFFFFB;
line-height: 1.5
}

.prm-idx .exp-portrait-role {
font-size: 15px;
color: #04DF8D;
line-height: 1.5
}

.prm-idx .exp-text-col {
flex: 1 1 0
}

.prm-idx .exp-text-col h2 {
font-size: 31px;
font-weight: 700;
line-height: 1.2;
letter-spacing: -.01em;
color: #FFFFFB;
margin-bottom: 20px;
border-bottom: 2px solid #04DF8D;
padding-bottom: 8px;
display: inline-block
}

.prm-idx .exp-text-col p {
font-size: 16px;
line-height: 1.7;
color: #fffffbb8;
margin-bottom: 20px
}

.prm-idx .exp-pull {
font-size: 23px;
font-weight: 700;
line-height: 1.5;
color: #FFFFFB;
margin-bottom: 20px;
position: relative;
padding-left: 20px
}

.prm-idx .exp-pull::before {
content: "";
position: absolute;
left: 0;
top: 4px;
bottom: 4px;
width: 3px;
background: #870807;
border-radius: 3px
}

.prm-idx .cond-blk {
padding-top: 80px;
padding-bottom: 80px;
background: #080d14;
position: relative
}

.prm-idx .cond-blk::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, transparent, #04df8d4d 50%, transparent)
}

.prm-idx .cond-scatter {
position: absolute;
inset: 0;
pointer-events: none;
overflow: hidden
}

.prm-idx .cond-scatter::before {
content: "";
position: absolute;
top: 15%;
left: 8%;
width: 8px;
height: 8px;
background: #04df8d12;
transform: rotate(45deg);
border-radius: 3px
}

.prm-idx .cond-scatter::after {
content: "";
position: absolute;
bottom: 20%;
right: 12%;
width: 12px;
height: 12px;
border: 1px solid #87080726;
transform: rotate(20deg);
border-radius: 3px
}

.prm-idx .cond-head {
text-align: center;
margin-bottom: 40px
}

.prm-idx .cond-head h2 {
font-size: 31px;
font-weight: 700;
line-height: 1.2;
letter-spacing: -.01em;
color: #FFFFFB;
margin-bottom: 20px;
display: inline-block;
border-bottom: 2px solid #870807;
padding-bottom: 8px
}

.prm-idx .cond-head p {
font-size: 16px;
line-height: 1.7;
color: #fffffbb3;
max-width: 600px;
margin-left: auto;
margin-right: auto
}

.prm-idx .cond-layout {
display: flex;
flex-direction: row;
gap: 40px;
align-items: flex-start
}

@media (max-width: 768px) {
.prm-idx .cond-layout {
flex-direction: column;
gap: 40px
}
}

.prm-idx .cond-tiers {
flex: 1 1 0;
display: flex;
flex-direction: column;
gap: 20px
}

.prm-idx .tier-card {
border-radius: 10px;
padding: 20px;
border: 1px solid #fffffb14;
background: #fffffb05;
transition: border-color .2s ease-out, box-shadow .2s ease-out;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}

.prm-idx .tier-card:hover {
border-color: #04df8d40;
box-shadow: 0 4px 25px 0 #04df8d14;
clip-path: polygon(0 0, 100% 0, 98% 100%, 0 100%)
}

.prm-idx .tier-card.featured-tier {
border-color: #04df8d4d;
background: #04df8d0d;
box-shadow: inset 0 1px 0 #04df8d33 0 4px 25px 0 #04df8d14
}

.prm-idx .tier-badge {
display: inline-block;
font-size: 15px;
font-weight: 700;
color: #04DF8D;
background: #04df8d1a;
border-radius: 6px;
padding: 4px 8px;
margin-bottom: 8px;
letter-spacing: .05em
}

.prm-idx .tier-badge.red {
color: #870807;
background: #8708071a
}

.prm-idx .tier-card h5 {
font-size: 19px;
font-weight: 700;
color: #FFFFFB;
margin-bottom: 8px;
line-height: 1.2
}

.prm-idx .tier-card p {
font-size: 15px;
line-height: 1.7;
color: #fffffba6;
margin-bottom: 8px
}

.prm-idx .tier-feats {
display: flex;
flex-direction: column;
gap: 4px;
margin-top: 8px
}

.prm-idx .tier-feat {
display: flex;
flex-direction: row;
gap: 8px;
align-items: flex-start;
font-size: 15px;
color: #fffffbb3;
line-height: 1.5
}

.prm-idx .feat-dot {
width: 6px;
height: 6px;
border-radius: 3px;
background: #04DF8D;
margin-top: 8px;
flex-shrink: 0
}

.prm-idx .feat-dot.red {
background: #870807
}

.prm-idx .cond-img-col {
flex: 0 0 340px;
display: flex;
flex-direction: column;
gap: 20px
}

@media (max-width: 1280px) {
.prm-idx .cond-img-col {
flex: 0 0 260px
}
}

@media (max-width: 768px) {
.prm-idx .cond-img-col {
flex: 0 0 auto;
width: 100%
}
}

.prm-idx .cond-img-wrap {
position: relative;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 12px 36px 0 #04df8d1f
}

.prm-idx .cond-img-wrap img {
width: 100%;
height: 220px;
object-fit: cover;
object-position: center;
display: block;
transition: transform .35s ease-out
}

.prm-idx .cond-img-wrap:hover img {
transform: scale(1.03)
}

.prm-idx .cond-img-overlay {
position: absolute;
inset: 0;
background: #080d14cc;
display: flex;
align-items: center;
justify-content: center;
opacity: 0;
transition: opacity .25s ease-out;
padding: 20px
}

.prm-idx .cond-img-wrap:hover .cond-img-overlay {
opacity: 1
}

.prm-idx .cond-img-overlay p {
font-size: 15px;
line-height: 1.7;
color: #FFFFFB;
text-align: center
}

.prm-idx .cond-note {
background: #87080714;
border: 1px solid #87080733;
border-radius: 10px;
padding: 20px
}

.prm-idx .cond-note p {
font-size: 15px;
line-height: 1.7;
color: #fffffbbf;
margin-bottom: 0
}

.prm-idx .cond-note strong {
color: #FFFFFB
}

@media (max-width: 480px) {
.prm-idx .title-h1 {
font-size: 31px
}

.prm-idx .metric-num {
font-size: 31px
}

.prm-idx .outcomes-head h2,
.prm-idx .method-text-col h2,
.prm-idx .exp-text-col h2,
.prm-idx .cond-head h2 {
font-size: 23px
}

.prm-idx .title-metric-row {
gap: 20px
}
}

.abt-pg {
background: #0b1120;
overflow-x: clip;
position: relative
}

.abt-pg .divider-line {
width: 100%;
height: 1px;
background: linear-gradient(135deg, transparent 0%, #04DF8D 40%, #870807 60%, transparent 100%);
border: none;
margin: 0
}

.abt-pg .schema-block {
display: none
}

.abt-pg .pg-top {
position: relative;
padding: 80px 20px 40px;
background: #0d1628;
overflow: hidden
}

.abt-pg .pg-top-grain {
position: absolute;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");
background-size: 300px 300px;
pointer-events: none
}

.abt-pg .pg-top-accent {
position: absolute;
top: 0;
right: 0;
width: 340px;
height: 340px;
background: linear-gradient(200deg, #04df8d12 0%, transparent 70%);
pointer-events: none
}

.abt-pg .pg-top-inner {
max-width: 1366px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 40px
}

.abt-pg .pg-top-text {
flex: 1 1 auto
}

.abt-pg .pg-top-label {
font-size: 15px;
letter-spacing: .12em;
color: #04DF8D;
text-transform: uppercase;
margin-bottom: 20px;
display: block
}

.abt-pg .pg-top-h1 {
font-size: 58px;
line-height: 1.2;
letter-spacing: -.02em;
color: #FFFFFB;
font-weight: 700;
margin: 0 0 20px
}

.abt-pg .pg-top-h1 span {
color: #04DF8D
}

.abt-pg .pg-top-sub {
font-size: 19px;
line-height: 1.7;
color: #a8b4c8;
max-width: 560px;
margin: 0
}

.abt-pg .pg-top-img-wrap {
flex: 0 0 220px;
width: 220px;
height: 300px;
border-radius: 18px;
overflow: hidden;
opacity: .45;
box-shadow: 0 12px 36px 0 #04df8d1f
}

.abt-pg .pg-top-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: sepia(0.18) saturate(1.1)
}

.abt-pg .metrics-sec {
padding: 80px 20px;
background: linear-gradient(160deg, #04DF8D08 0%, #0b1120 55%, #87080712 100%)
}

.abt-pg .metrics-inner {
max-width: 1366px;
margin: 0 auto
}

.abt-pg .metrics-top {
display: flex;
flex-direction: row;
gap: 40px;
align-items: flex-start;
margin-bottom: 40px
}

.abt-pg .metrics-heading-col {
flex: 0 0 380px
}

.abt-pg .metrics-h2 {
font-size: 43px;
line-height: 1.2;
letter-spacing: -.015em;
color: #FFFFFB;
font-weight: 700;
margin: 0 0 20px;
text-decoration: underline;
text-decoration-color: #04DF8D;
text-underline-offset: 6px
}

.abt-pg .metrics-lead {
font-size: 16px;
line-height: 1.7;
color: #8fa3bb;
margin: 0
}

.abt-pg .metrics-desc-col {
flex: 1 1 auto;
display: flex;
flex-direction: column;
gap: 20px
}

.abt-pg .metrics-desc-col p {
font-size: 16px;
line-height: 1.7;
color: #a8b4c8;
margin: 0
}

.abt-pg .metrics-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 20px;
margin-top: 40px
}

.abt-pg .metric-card {
background: #111d30;
border: 1px solid #04df8d1f;
border-radius: 10px;
padding: 40px 20px;
text-align: center;
box-shadow: 0 4px 25px 0 #04df8d14;
transition: border-color .22s ease-out, box-shadow .22s ease-out;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}

.abt-pg .metric-card:hover {
border-color: #04df8d59;
box-shadow: 0 12px 36px 0 #04df8d1f inset 0 0 20px 0 #04df8d0a;
clip-path: polygon(0 0, 100% 0, 98% 100%, 2% 100%)
}

.abt-pg .metric-num {
font-size: 43px;
line-height: 1.2;
letter-spacing: -.02em;
font-weight: 700;
color: #04DF8D;
display: block;
margin-bottom: 8px
}

.abt-pg .metric-label {
font-size: 15px;
line-height: 1.5;
color: #7a8fa6;
letter-spacing: .04em
}

.abt-pg .metrics-image-row {
display: flex;
flex-direction: row;
gap: 20px;
margin-top: 40px
}

.abt-pg .metrics-img-wrap {
flex: 1 1 0;
height: 220px;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 3px 4px 0 #04df8d0f
}

.abt-pg .metrics-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: sepia(0.15) saturate(1.08);
transition: transform .38s ease-out
}

.abt-pg .metrics-img-wrap:hover img {
transform: scale(1.04)
}

.abt-pg .team-sec {
padding: 80px 20px;
background: #0d1628;
position: relative
}

.abt-pg .team-sec-glow {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(135deg, transparent 0%, #870807 50%, transparent 100%);
pointer-events: none
}

.abt-pg .team-inner {
max-width: 1366px;
margin: 0 auto
}

.abt-pg .team-header {
margin-bottom: 40px
}

.abt-pg .team-h2 {
font-size: 43px;
line-height: 1.2;
letter-spacing: -.015em;
color: #FFFFFB;
font-weight: 700;
margin: 0 0 20px;
text-decoration: underline;
text-decoration-color: #870807;
text-underline-offset: 6px
}

.abt-pg .team-intro {
font-size: 16px;
line-height: 1.7;
color: #8fa3bb;
max-width: 640px;
margin: 0
}

.abt-pg .team-layout {
display: flex;
flex-direction: row;
gap: 40px;
align-items: flex-start
}

.abt-pg .team-profiles {
flex: 0 0 460px;
display: flex;
flex-direction: column;
gap: 20px
}

.abt-pg .profile-card {
display: flex;
flex-direction: row;
gap: 20px;
align-items: flex-start;
background: #111d30;
border-radius: 10px;
padding: 20px;
border: 1px solid #87080726;
box-shadow: 0 3px 4px 0 #8708070f;
transition: border-color .28s ease-out, box-shadow .35s ease-out;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}

.abt-pg .profile-card:hover {
border-color: #87080766;
box-shadow: 0 12px 36px 0 #8708071f inset 0 0 16px 0 #8708070d;
clip-path: polygon(2% 0, 100% 0, 98% 100%, 0 100%)
}

.abt-pg .profile-img-wrap {
flex: 0 0 80px;
width: 80px;
height: 110px;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 4px 25px 0 #87080714
}

.abt-pg .profile-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: top;
display: block;
filter: sepia(0.12) saturate(1.1)
}

.abt-pg .profile-info {
flex: 1 1 auto
}

.abt-pg .profile-name {
font-size: 19px;
line-height: 1.5;
font-weight: 700;
color: #FFFFFB;
margin: 0 0 4px
}

.abt-pg .profile-role {
font-size: 15px;
line-height: 1.5;
color: #04DF8D;
letter-spacing: .05em;
margin: 0 0 8px
}

.abt-pg .profile-bio {
font-size: 15px;
line-height: 1.7;
color: #8fa3bb;
margin: 0
}

.abt-pg .team-right {
flex: 1 1 auto;
display: flex;
flex-direction: column;
gap: 20px
}

.abt-pg .team-quote-block {
background: linear-gradient(160deg, #04DF8D12 0%, #111d30 80%);
border-radius: 18px;
padding: 40px;
border: 1px solid #04df8d1a;
box-shadow: 0 4px 25px 0 #04df8d14
}

.abt-pg .team-quote-mark {
font-size: 43px;
line-height: 1.2;
color: #04DF8D;
font-weight: 700;
display: block;
margin-bottom: 8px
}

.abt-pg .team-quote-text {
font-size: 19px;
line-height: 1.7;
color: #FFFFFB;
font-style: italic;
margin: 0 0 20px
}

.abt-pg .team-quote-author {
font-size: 15px;
color: #04DF8D;
letter-spacing: .06em;
margin: 0
}

.abt-pg .team-img-feature {
flex: 1 1 auto;
height: 200px;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 12px 36px 0 #04df8d1f
}

.abt-pg .team-img-feature img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: sepia(0.15) saturate(1.08);
transition: transform .42s ease-out
}

.abt-pg .team-img-feature:hover img {
transform: scale(1.05)
}

.abt-pg .team-values {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
margin-top: 40px
}

.abt-pg .val-item {
padding: 20px;
border-radius: 6px;
border-top: 3px solid #04DF8D;
background: #0f1a2b;
box-shadow: 0 3px 4px 0 #04df8d0f;
transition: background .25s ease-out
}

.abt-pg .val-item:nth-child(even) {
border-top-color: #870807
}

.abt-pg .val-item:hover {
background: #131f32
}

.abt-pg .val-h4 {
font-size: 16px;
line-height: 1.5;
font-weight: 700;
color: #FFFFFB;
margin: 0 0 8px
}

.abt-pg .val-text {
font-size: 15px;
line-height: 1.7;
color: #7a8fa6;
margin: 0
}

@media (max-width: 1280px) {
.abt-pg .metrics-grid {
grid-template-columns: repeat(2, 1fr)
}

.abt-pg .team-layout {
flex-direction: column
}

.abt-pg .team-profiles {
flex: 1 1 auto;
width: 100%
}
}

@media (max-width: 768px) {
.abt-pg .pg-top-h1 {
font-size: 43px
}

.abt-pg .pg-top-inner {
flex-direction: column;
align-items: flex-start
}

.abt-pg .pg-top-img-wrap {
display: none
}

.abt-pg .metrics-top {
flex-direction: column
}

.abt-pg .metrics-heading-col {
flex: 1 1 auto
}

.abt-pg .metrics-h2 {
font-size: 31px
}

.abt-pg .metrics-image-row {
flex-direction: column
}

.abt-pg .metrics-img-wrap {
height: 180px
}

.abt-pg .team-h2 {
font-size: 31px
}

.abt-pg .team-values {
grid-template-columns: 1fr
}

.abt-pg .team-quote-block {
padding: 20px
}
}

@media (max-width: 480px) {
.abt-pg .pg-top {
padding: 40px 20px
}

.abt-pg .pg-top-h1 {
font-size: 31px
}

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

.abt-pg .profile-card {
flex-direction: column
}

.abt-pg .profile-img-wrap {
width: 100%;
height: 160px;
flex: none
}
}

.ptfl {
background-color: #0b1120;
overflow-x: clip;
position: relative
}

.ptfl .geo-spin {
position: fixed;
top: 10%;
right: -120px;
width: 340px;
height: 340px;
border: 1px solid #04df8d0f;
transform: rotate(0deg);
animation: geospin 28s linear infinite;
pointer-events: none;
z-index: 0;
border-radius: 3px
}

.ptfl .geo-spin::before {
content: '';
position: absolute;
inset: 24px;
border: 1px solid #87080712;
transform: rotate(22deg);
border-radius: 3px
}

@keyframes geospin {
to {
transform: rotate(360deg)
}
}

.ptfl .reveal-words span {
opacity: 0;
display: inline-block;
animation: wordshow .25s ease-out forwards
}

.ptfl .reveal-words span:nth-child(1) {
animation-delay: .05s
}

.ptfl .reveal-words span:nth-child(2) {
animation-delay: .15s
}

.ptfl .reveal-words span:nth-child(3) {
animation-delay: .25s
}

.ptfl .reveal-words span:nth-child(4) {
animation-delay: .35s
}

.ptfl .reveal-words span:nth-child(5) {
animation-delay: .45s
}

.ptfl .reveal-words span:nth-child(6) {
animation-delay: .55s
}

.ptfl .reveal-words span:nth-child(7) {
animation-delay: .65s
}

@keyframes wordshow {
from {
opacity: 0;
transform: translateY(8px)
}

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

.ptfl .cycling-hl span {
transition: color .2s ease-out, background-color .2s ease-out
}

.ptfl .cycling-hl span.lit {
color: #04DF8D;
background-color: #04df8d1a;
border-radius: 3px;
padding: 0 4px
}

.ptfl .pg-top {
max-width: 1366px;
margin: 0 auto;
padding: 80px 40px 40px;
position: relative;
z-index: 1
}

.ptfl .hero-wrap {
background: linear-gradient(160deg, #0f1e35 0%, #0b1120 55%, #12080a 100%);
position: relative;
overflow: hidden
}

.ptfl .hero-inner {
max-width: 1366px;
margin: 0 auto;
padding: 80px 40px 40px;
display: flex;
flex-direction: row;
gap: 40px;
align-items: flex-start;
position: relative;
z-index: 1
}

.ptfl .hero-text-col {
flex: 1 1 0;
display: flex;
flex-direction: column;
gap: 20px
}

.ptfl .corner-bracket {
position: relative;
display: inline-block
}

.ptfl .corner-bracket::before,
.ptfl .corner-bracket::after {
content: '';
position: absolute;
width: 18px;
height: 18px;
pointer-events: none
}

.ptfl .corner-bracket::before {
top: -8px;
left: -8px;
border-top: 2px solid #04DF8D;
border-left: 2px solid #04DF8D;
border-radius: 3px 0 0 0
}

.ptfl .corner-bracket::after {
bottom: -8px;
right: -8px;
border-bottom: 2px solid #870807;
border-right: 2px solid #870807;
border-radius: 0 0 3px 0
}

.ptfl .hero-label {
font-size: 15px;
letter-spacing: .12em;
color: #04DF8D;
text-transform: uppercase;
line-height: 1.5
}

.ptfl .hero-h1 {
font-size: 58px;
line-height: 1.2;
letter-spacing: -.02em;
color: #FFFFFB;
margin: 0
}

.ptfl .hero-h1 .punct {
color: #04DF8D
}

.ptfl .hero-sub {
font-size: 19px;
line-height: 1.7;
color: #fffffbb8;
max-width: 560px
}

.ptfl .hero-cta-row {
display: flex;
flex-direction: row;
gap: 20px;
align-items: center;
flex-wrap: wrap
}

.ptfl .btn-primary {
font-size: 16px;
font-weight: 700;
color: #0b1120;
background: linear-gradient(120deg, #04DF8D 0%, #02c47d 100%);
border: none;
border-radius: 10px;
padding: 20px 40px;
cursor: pointer;
transition: background .22s ease-out, box-shadow .18s ease-out, clip-path .2s ease-out;
box-shadow: 0 4px 25px 0 #04df8d14;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}

.ptfl .btn-primary:hover {
background: linear-gradient(200deg, #02c47d 0%, #04DF8D 100%);
box-shadow: 0 12px 36px 0 #04df8d1f;
clip-path: polygon(0 0, 100% 0, 98% 100%, 2% 100%)
}

.ptfl .btn-primary:focus {
outline: 2px solid #04DF8D;
outline-offset: 3px
}

.ptfl .btn-secondary {
font-size: 15px;
color: #FFFFFB;
background: transparent;
border: 1px solid #fffffb38;
border-radius: 10px;
padding: 8px 20px;
cursor: pointer;
transition: border-color .2s ease-out, color .2s ease-out
}

.ptfl .btn-secondary:hover {
border-color: #04DF8D;
color: #04DF8D
}

.ptfl .btn-secondary:focus {
outline: 2px solid #04DF8D;
outline-offset: 3px
}

.ptfl .hero-img-col {
flex: 0 0 420px;
position: relative;
align-self: flex-start;
margin-top: 40px
}

.ptfl .hero-img-wrap {
border-radius: 18px;
overflow: hidden;
position: relative;
box-shadow: 0 12px 36px 0 #04df8d1f
}

.ptfl .hero-img-wrap img {
width: 420px;
height: 300px;
object-fit: cover;
object-position: center;
display: block
}

.ptfl .hero-img-wrap::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 60%;
background: linear-gradient(to top, #0b1120d9 0%, transparent 100%);
pointer-events: none
}

.ptfl .hero-stat-row {
display: flex;
flex-direction: row;
gap: 20px;
padding-top: 20px
}

.ptfl .hero-stat {
display: flex;
flex-direction: column;
gap: 4px
}

.ptfl .hero-stat-num {
font-size: 31px;
font-weight: 700;
color: #04DF8D;
line-height: 1.2;
letter-spacing: -.02em
}

.ptfl .hero-stat-label {
font-size: 15px;
color: #fffffb99;
line-height: 1.5
}

.ptfl .divider-band-green {
width: 100%;
height: 4px;
background: linear-gradient(100deg, #04DF8D 0%, #02a868 60%, transparent 100%)
}

.ptfl .divider-band-red {
width: 100%;
height: 4px;
background: linear-gradient(100deg, transparent 0%, #870807 40%, #b00a09 100%)
}

.ptfl .metrics-wrap {
background-color: #0e1828;
position: relative
}

.ptfl .metrics-inner {
max-width: 1366px;
margin: 0 auto;
padding: 80px 40px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
align-items: start
}

.ptfl .metrics-left {
display: flex;
flex-direction: column;
gap: 20px
}

.ptfl .metrics-eyebrow {
font-size: 15px;
letter-spacing: .1em;
text-transform: uppercase;
color: #870807;
line-height: 1.5
}

.ptfl .metrics-h2 {
font-size: 31px;
font-weight: 700;
color: #FFFFFB;
line-height: 1.2;
letter-spacing: -.01em;
margin: 0;
border-bottom: 2px solid #04df8d59;
padding-bottom: 20px
}

.ptfl .metrics-desc {
font-size: 16px;
line-height: 1.7;
color: #fffffbb3
}

.ptfl .metrics-quote {
font-size: 19px;
line-height: 1.7;
color: #fffffbd9;
font-style: italic;
padding: 20px;
border-left: 3px solid #04DF8D;
border-right: 1px solid #04df8d26;
background: #04df8d0a;
border-radius: 0 6px 6px 0
}

.ptfl .metrics-quote .qmark {
color: #04DF8D;
font-style: normal;
font-size: 23px
}

.ptfl .metrics-right {
display: flex;
flex-direction: column;
gap: 20px
}

.ptfl .metric-card {
background: #fffffb08;
border: 1px solid #04df8d1a;
border-radius: 10px;
padding: 20px;
display: flex;
flex-direction: row;
gap: 20px;
align-items: center;
transition: border-color .22s ease-out, box-shadow .22s ease-out, clip-path .18s ease-out;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
box-shadow: 0 3px 4px 0 #04df8d0f
}

.ptfl .metric-card:hover {
border-color: #04df8d59;
box-shadow: 0 4px 25px 0 #04df8d14;
clip-path: polygon(0 0, 100% 0, 97% 100%, 3% 100%)
}

.ptfl .metric-icon {
width: 48px;
height: 48px;
border-radius: 10px;
background: #04df8d14;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.ptfl .metric-icon svg {
width: 24px;
height: 24px
}

.ptfl .metric-text {
display: flex;
flex-direction: column;
gap: 4px
}

.ptfl .metric-val {
font-size: 23px;
font-weight: 700;
color: #04DF8D;
line-height: 1.2;
letter-spacing: -.01em
}

.ptfl .metric-name {
font-size: 15px;
color: #fffffba6;
line-height: 1.5
}

.ptfl .metric-bar-track {
width: 100%;
height: 4px;
background: #fffffb14;
border-radius: 3px;
margin-top: 4px;
overflow: hidden
}

.ptfl .metric-bar-fill {
height: 100%;
border-radius: 3px;
background: linear-gradient(90deg, #04DF8D 0%, #02a868 100%);
transition: width .45s ease-out
}

.ptfl .divider-geo {
width: 100%;
height: 20px;
background: #0b1120;
position: relative;
overflow: hidden
}

.ptfl .divider-geo::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, transparent 0%, #870807 30%, #04DF8D 70%, transparent 100%)
}

.ptfl .timeline-wrap {
background: linear-gradient(170deg, #0b1120 0%, #0f1525 50%, #0b1120 100%);
position: relative
}

.ptfl .timeline-inner {
max-width: 1366px;
margin: 0 auto;
padding: 80px 40px
}

.ptfl .timeline-head {
display: flex;
flex-direction: column;
gap: 8px;
margin-bottom: 40px;
align-items: center;
text-align: center
}

.ptfl .timeline-eyebrow {
font-size: 15px;
letter-spacing: .1em;
text-transform: uppercase;
color: #04DF8D;
line-height: 1.5
}

.ptfl .timeline-h2 {
font-size: 31px;
font-weight: 700;
color: #FFFFFB;
line-height: 1.2;
letter-spacing: -.01em;
margin: 0;
border-bottom: 2px solid #87080773;
padding-bottom: 8px
}

.ptfl .tl-list {
position: relative;
display: flex;
flex-direction: column;
gap: 0
}

.ptfl .tl-list::before {
content: '';
position: absolute;
top: 0;
bottom: 0;
left: 50%;
transform: translateX(-50%);
width: 2px;
background: linear-gradient(180deg, #04DF8D 0%, #04df8d33 100%);
border-radius: 3px
}

.ptfl .tl-item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 40px;
position: relative;
padding: 40px 0
}

.ptfl .tl-item.left-side {
flex-direction: row
}

.ptfl .tl-item.right-side {
flex-direction: row-reverse
}

.ptfl .tl-card {
flex: 1 1 0;
background: #fffffb08;
border: 1px solid #04df8d1a;
border-radius: 10px;
padding: 20px;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: 0 3px 4px 0 #04df8d0f;
transition: border-color .28s ease-out, box-shadow .28s ease-out
}

.ptfl .tl-card:hover {
border-color: #04df8d47;
box-shadow: 0 4px 25px 0 #04df8d14
}

.ptfl .tl-item.right-side .tl-card {
border-color: #8708072e
}

.ptfl .tl-item.right-side .tl-card:hover {
border-color: #87080766;
box-shadow: 0 4px 25px 0 #87080714
}

.ptfl .tl-dot-col {
flex: 0 0 40px;
display: flex;
justify-content: center;
align-items: flex-start;
padding-top: 20px
}

.ptfl .tl-dot {
width: 16px;
height: 16px;
border-radius: 28px;
background: #04DF8D;
border: 3px solid #0b1120;
box-shadow: 0 0 0 2px #04DF8D;
flex-shrink: 0
}

.ptfl .tl-item.right-side .tl-dot {
background: #870807;
box-shadow: 0 0 0 2px #870807
}

.ptfl .tl-phase {
font-size: 15px;
letter-spacing: .08em;
text-transform: uppercase;
color: #04DF8D;
line-height: 1.5
}

.ptfl .tl-item.right-side .tl-phase {
color: #c44
}

.ptfl .tl-card-h {
font-size: 19px;
font-weight: 700;
color: #FFFFFB;
line-height: 1.5;
margin: 0;
border-bottom: 1px solid #fffffb1a;
padding-bottom: 8px
}

.ptfl .tl-card-p {
font-size: 15px;
line-height: 1.7;
color: #fffffbad
}

.ptfl .tl-spacer {
flex: 1 1 0
}

.ptfl .divider-solid-red {
width: 100%;
height: 8px;
background-color: #870807 !important
}

.ptfl .team-wrap {
background: linear-gradient(155deg, #10060a 0%, #0b1120 40%, #0e1828 100%);
position: relative
}

.ptfl .team-inner {
max-width: 1366px;
margin: 0 auto;
padding: 80px 40px;
display: flex;
flex-direction: column;
gap: 40px
}

.ptfl .team-top {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
align-items: start
}

.ptfl .team-head-col {
display: flex;
flex-direction: column;
gap: 8px
}

.ptfl .team-eyebrow {
font-size: 15px;
letter-spacing: .1em;
text-transform: uppercase;
color: #870807;
line-height: 1.5
}

.ptfl .team-h2 {
font-size: 31px;
font-weight: 700;
color: #FFFFFB;
line-height: 1.2;
letter-spacing: -.01em;
margin: 0;
border-bottom: 2px solid #87080766;
padding-bottom: 8px
}

.ptfl .team-desc-col {
padding-top: 40px;
display: flex;
flex-direction: column;
gap: 20px
}

.ptfl .team-desc {
font-size: 16px;
line-height: 1.7;
color: #fffffbb3
}

.ptfl .team-cards {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px
}

.ptfl .expert-card {
background: #fffffb08;
border: 1px solid #fffffb14;
border-radius: 18px;
padding: 20px;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: 0 3px 4px 0 #8708070f;
transition: border-color .35s ease-out, transform .25s ease-out, clip-path .2s ease-out;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}

.ptfl .expert-card:hover {
border-color: #04df8d40;
transform: translateY(-4px);
clip-path: polygon(0 0, 100% 0, 96% 100%, 4% 100%)
}

.ptfl .expert-portrait {
width: 80px;
height: 100px;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 4px 25px 0 #04df8d14;
flex-shrink: 0
}

.ptfl .expert-portrait img {
width: 80px;
height: 100px;
object-fit: cover;
object-position: top;
display: block
}

.ptfl .expert-name {
font-size: 16px;
font-weight: 700;
color: #FFFFFB;
line-height: 1.5
}

.ptfl .expert-role {
font-size: 15px;
color: #04DF8D;
line-height: 1.5
}

.ptfl .expert-bio {
font-size: 15px;
line-height: 1.7;
color: #fffffb9e
}

.ptfl .rating-strip {
display: flex;
flex-direction: row;
gap: 20px;
align-items: center;
background: #04df8d0a;
border: 1px solid #04df8d1f;
border-radius: 10px;
padding: 20px
}

.ptfl .rating-num {
font-size: 43px;
font-weight: 700;
color: #04DF8D;
line-height: 1.2;
letter-spacing: -.02em
}

.ptfl .rating-stars {
display: flex;
flex-direction: row;
gap: 4px
}

.ptfl .star-svg {
width: 20px;
height: 20px
}

.ptfl .rating-label {
font-size: 15px;
color: #fffffba6;
line-height: 1.5
}

@media (max-width: 1280px) {
.ptfl .hero-img-col {
flex: 0 0 320px
}

.ptfl .hero-img-wrap img {
width: 320px;
height: 240px
}

.ptfl .hero-img-wrap {
width: 320px
}

.ptfl .hero-h1 {
font-size: 43px
}
}

@media (max-width: 768px) {
.ptfl .hero-inner {
flex-direction: column;
padding: 40px 20px
}

.ptfl .hero-img-col {
flex: none;
width: 100%
}

.ptfl .hero-img-wrap img {
width: 100%;
height: 220px
}

.ptfl .hero-img-wrap {
width: 100%
}

.ptfl .hero-h1 {
font-size: 31px
}

.ptfl .metrics-inner {
grid-template-columns: 1fr;
padding: 40px 20px
}

.ptfl .tl-list::before {
left: 20px
}

.ptfl .tl-item.left-side,
.ptfl .tl-item.right-side {
flex-direction: row
}

.ptfl .tl-spacer {
display: none
}

.ptfl .tl-dot-col {
flex: 0 0 40px
}

.ptfl .timeline-inner {
padding: 40px 20px
}

.ptfl .team-top {
grid-template-columns: 1fr
}

.ptfl .team-desc-col {
padding-top: 0
}

.ptfl .team-cards {
grid-template-columns: 1fr
}

.ptfl .team-inner {
padding: 40px 20px
}
}

@media (max-width: 480px) {
.ptfl .hero-h1 {
font-size: 23px
}

.ptfl .hero-stat-row {
flex-direction: column;
gap: 8px
}

.ptfl .hero-cta-row {
flex-direction: column;
align-items: flex-start
}

.ptfl .metrics-inner {
padding: 40px 20px
}

.ptfl .rating-strip {
flex-direction: column;
align-items: flex-start
}
}

.cont-us {
background-color: #0b1120;
overflow-x: clip;
position: relative
}

.cont-us .pg-band {
width: 100%;
height: 4px;
background: linear-gradient(120deg, #04DF8D 0%, #870807 60%, #04DF8D 100%)
}

.cont-us .reach-block {
padding: 80px 20px;
position: relative
}

.cont-us .reach-inner {
max-width: 1366px;
margin: 0 auto;
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start
}

.cont-us .reach-left {
flex: 1 1 340px;
min-width: 0;
display: flex;
flex-direction: column;
gap: 40px
}

.cont-us .reach-eyebrow {
font-size: 15px;
letter-spacing: .12em;
color: #04DF8D;
text-transform: uppercase;
line-height: 1.5
}

.cont-us .reach-heading {
font-size: 43px;
font-weight: 800;
line-height: 1.2;
letter-spacing: -.02em;
color: #FFFFFB;
margin: 0
}

.cont-us .reach-heading span {
color: #04DF8D
}

.cont-us .reach-desc {
font-size: 16px;
line-height: 1.7;
color: #a8b4c8;
margin: 0
}

.cont-us .contact-details-list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 20px
}

.cont-us .contact-details-list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 20px
}

.cont-us .cd-icon {
width: 44px;
height: 44px;
border-radius: 10px;
background: linear-gradient(155deg, #04df8d21 0%, #04df8d0a 100%);
border: 1px solid #04df8d38;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
flex-shrink: 0;
box-shadow: 0 3px 4px 0 #04df8d0f
}

.cont-us .cd-icon svg {
width: 20px;
height: 20px
}

.cont-us .cd-text {
display: flex;
flex-direction: column;
gap: 4px
}

.cont-us .cd-label {
font-size: 15px;
color: #04DF8D;
font-weight: 600;
line-height: 1.2;
letter-spacing: .04em
}

.cont-us .cd-value {
font-size: 16px;
color: #FFFFFB;
line-height: 1.5;
text-decoration: none;
transition: color .25s ease-out
}

.cont-us .cd-value:hover {
color: #04DF8D
}

.cont-us .img-frame {
position: relative;
border-radius: 18px;
overflow: hidden;
width: 100%;
max-width: 340px
}

.cont-us .img-frame img {
width: 100%;
height: 260px;
object-fit: cover;
object-position: center;
display: block;
border-radius: 18px;
filter: grayscale(0%);
transition: filter 3.5s ease-out
}

.cont-us .img-frame img:hover {
filter: grayscale(100%)
}

.cont-us .img-vignette {
position: absolute;
inset: 0;
border-radius: 18px;
background: radial-gradient(ellipse at 50% 40%, transparent 38%, #0b11209e 100%);
pointer-events: none
}

.cont-us .reach-right {
flex: 1 1 440px;
min-width: 0
}

.cont-us .form-shell {
background: linear-gradient(155deg, #111c30 0%, #0d1626 100%);
border: 1px solid #04df8d24;
border-radius: 18px;
padding: 40px;
box-shadow: 0 12px 36px 0 #04df8d1f;
position: relative
}

.cont-us .form-shell::before {
content: "";
position: absolute;
top: 0;
left: 40px;
right: 40px;
height: 2px;
background: linear-gradient(90deg, transparent, #04DF8D, transparent);
border-radius: 3px;
pointer-events: none
}

.cont-us .form-heading {
font-size: 23px;
font-weight: 700;
color: #FFFFFB;
line-height: 1.2;
letter-spacing: -.01em;
margin: 0 0 8px;
padding-bottom: 8px;
border-bottom: 2px solid #04df8d40;
display: inline-block
}

.cont-us .form-sub {
font-size: 15px;
color: #7a8fa8;
line-height: 1.5;
margin: 0 0 40px
}

.cont-us .field-row {
display: flex;
flex-direction: column;
gap: 8px;
margin-bottom: 20px
}

.cont-us .field-row label {
font-size: 15px;
color: #a8b4c8;
font-weight: 500;
line-height: 1.2;
letter-spacing: .03em
}

.cont-us .field-row label .req-mark {
color: #870807;
margin-left: 4px
}

.cont-us .f-input {
width: 100%;
background: #0b1120b3;
border: 1px solid #04df8d2e;
border-radius: 10px;
color: #FFFFFB;
font-size: 16px;
line-height: 1.5;
padding: 12px 16px;
outline: none;
box-sizing: border-box;
transition: border-color .2s ease-out, box-shadow .2s ease-out;
box-shadow: inset 0 2px 8px #04df8d0a;
-webkit-appearance: none;
appearance: none
}

.cont-us .f-input::placeholder {
color: #4a5a72
}

.cont-us .f-input:focus {
border-color: #04DF8D;
box-shadow: 0 0 0 3px #04df8d1f inset 0 2px 8px #04df8d0f
}

.cont-us select.f-input {
cursor: pointer;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%2304DF8D' d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 14px center;
padding-right: 40px
}

.cont-us select.f-input option {
background: #111c30;
color: #FFFFFB
}

.cont-us .f-textarea {
resize: vertical;
min-height: 100px
}

.cont-us .privacy-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
margin-bottom: 20px
}

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

.cont-us .privacy-text {
font-size: 15px;
color: #7a8fa8;
line-height: 1.5
}

.cont-us .privacy-text a {
color: #04DF8D;
text-decoration: underline;
text-underline-offset: 3px;
transition: color .2s ease-out
}

.cont-us .privacy-text a:hover {
color: #FFFFFB
}

.cont-us .submit-btn {
width: 100%;
padding: 16px 40px;
background: linear-gradient(120deg, #04DF8D 0%, #03b872 100%);
color: #0b1120;
font-size: 16px;
font-weight: 700;
letter-spacing: .04em;
border: none;
border-radius: 10px;
cursor: pointer;
line-height: 1.2;
transition: background .35s ease-out, clip-path .22s ease-out, box-shadow .22s ease-out;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
box-shadow: 0 4px 25px 0 #04df8d14;
type: submit
}

.cont-us .submit-btn:hover {
background: linear-gradient(200deg, #04DF8D 0%, #03b872 100%);
clip-path: polygon(2% 0, 100% 0, 98% 100%, 0 100%);
box-shadow: 0 12px 36px 0 #04df8d1f
}

.cont-us .submit-btn:focus {
outline: 2px solid #04DF8D;
outline-offset: 3px
}

.cont-us .submit-btn:active {
background: linear-gradient(120deg, #03b872 0%, #04DF8D 100%)
}

.cont-us .decor-circles {
position: absolute;
bottom: -60px;
right: -60px;
width: 220px;
height: 220px;
pointer-events: none;
opacity: .07;
overflow: hidden
}

.cont-us .decor-circles svg {
width: 100%;
height: 100%
}

.cont-us .spin-decor {
position: absolute;
top: 40px;
left: -30px;
width: 80px;
height: 80px;
pointer-events: none;
opacity: .12;
animation: slow-spin 18s linear infinite
}

@keyframes slow-spin {
from {
transform: rotate(0deg)
}

to {
transform: rotate(360deg)
}
}

.cont-us .metrics-band {
background: linear-gradient(120deg, #870807 0%, #5a0505 55%, #870807 100%);
padding: 40px 20px;
position: relative;
overflow: hidden
}

.cont-us .metrics-band-inner {
max-width: 1366px;
margin: 0 auto;
display: flex;
flex-direction: row;
gap: 40px;
align-items: stretch;
justify-content: space-between
}

.cont-us .metric-item {
flex: 1 1 0;
display: flex;
flex-direction: column;
align-items: center;
gap: 8px;
padding: 20px;
border-right: 1px solid #fffffb1f
}

.cont-us .metric-item:last-child {
border-right: none
}

.cont-us .metric-num {
font-size: 43px;
font-weight: 800;
color: #FFFFFB;
line-height: 1.2;
letter-spacing: -.02em
}

.cont-us .metric-num span {
color: #04DF8D
}

.cont-us .metric-label {
font-size: 15px;
color: #fffffbb8;
line-height: 1.5;
text-align: center;
letter-spacing: .03em
}

.cont-us .wave-divider {
display: block;
width: 100%;
line-height: 0;
overflow: hidden
}

.cont-us .wave-divider svg {
display: block;
width: 100%
}

@media (max-width: 1280px) {
.cont-us .reach-inner {
gap: 40px
}

.cont-us .reach-heading {
font-size: 31px
}
}

@media (max-width: 768px) {
.cont-us .reach-inner {
flex-direction: column;
gap: 40px
}

.cont-us .reach-left {
flex: none;
width: 100%
}

.cont-us .reach-right {
flex: none;
width: 100%
}

.cont-us .form-shell {
padding: 20px
}

.cont-us .metrics-band-inner {
flex-direction: column;
gap: 20px
}

.cont-us .metric-item {
border-right: none;
border-bottom: 1px solid #fffffb1f;
padding: 20px 8px
}

.cont-us .metric-item:last-child {
border-bottom: none
}

.cont-us .reach-heading {
font-size: 31px
}
}

@media (max-width: 480px) {
.cont-us .reach-block {
padding: 40px 20px 80px
}

.cont-us .reach-heading {
font-size: 23px
}

.cont-us .metric-num {
font-size: 31px
}

.cont-us .form-shell {
padding: 20px
}
}

.success-page {
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
background: #0b1220;
padding: 80px 20px
}

.success-page .success-wrap {
max-width: 560px;
width: 100%;
background: #0f1a2e;
border: 1px solid #04df8d2e;
border-radius: 18px;
padding: 80px 40px;
text-align: center;
box-shadow: 0 12px 36px 0 #04df8d1f
}

.success-page .success-icon {
width: 64px;
height: 64px;
margin: 0 auto 40px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
background: #04df8d14;
box-shadow: inset 0 0 16px 0 #04df8d2e 0 4px 25px 0 #04df8d14
}

.success-page .success-icon svg {
width: 32px;
height: 32px;
display: block
}

.success-page .success-heading {
font-size: 31px;
font-weight: 700;
line-height: 1.2;
letter-spacing: -.02em;
color: #FFFFFB;
margin: 0 0 20px
}

.success-page .success-heading span {
color: #04DF8D
}

.success-page .success-text {
font-size: 16px;
line-height: 1.7;
color: #a8b8cc;
margin: 0 0 40px
}

.success-page .success-divider {
width: 48px;
height: 2px;
background: linear-gradient(120deg, #04DF8D 0%, #04df8d1f 100%);
border-radius: 3px;
margin: 0 auto 40px
}

.success-page .success-meta {
font-size: 15px;
line-height: 1.5;
color: #6a7f96;
margin: 0 0 40px
}

.success-page .success-meta strong {
color: #FFFFFB;
font-weight: 600
}

.success-page .back-link {
display: inline-block;
font-size: 15px;
font-weight: 600;
line-height: 1.2;
letter-spacing: .02em;
color: #0b1220;
background: #04DF8D;
padding: 20px 40px;
border-radius: 10px;
text-decoration: none;
box-shadow: 0 4px 25px 0 #04df8d14;
transition: background .25s ease-out, box-shadow .2s ease-out, clip-path .18s ease-out;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%)
}

.success-page .back-link:hover {
background: #02c47d;
box-shadow: 0 12px 36px 0 #04df8d1f;
clip-path: polygon(0 0, 100% 0, 98% 100%, 2% 100%)
}

.success-page .back-link:focus {
outline: 2px solid #04DF8D;
outline-offset: 4px
}

.success-page .back-link:active {
background: #01b06e
}

@media (max-width: 480px) {
.success-page {
padding: 40px 20px
}

.success-page .success-wrap {
padding: 40px 20px
}

.success-page .success-heading {
font-size: 23px
}

.success-page .back-link {
padding: 20px;
display: block;
text-align: center
}
}