@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;700&display=swap');

html,
body {
margin: 0;
padding: 0;
}

body {
min-height: 100dvh;
font-family: 'Roboto', sans-serif;
font-size: 15px;
line-height: 1.5;
background-color: #0f1117;
color: #DDCCBE;
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
}

*:focus-visible {
outline: 2px solid #4E60AA;
outline-offset: 3px;
}

*:focus:not(:focus-visible) {
outline: none;
}

.sitehead {
position: relative;
background: linear-gradient(135deg, #0b0d14 0%, #141826 55%, #1a1f33 100%);
border-bottom: 1px solid rgba(78, 96, 170, 0.22);
z-index: 100;
}

.sitehead-upper {
display: flex;
align-items: center;
justify-content: space-between;
max-width: 1600px;
margin: 0 auto;
padding: 40px 80px 16px 80px;
gap: 80px;
}

.brand-block {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 8px;
flex-shrink: 0;
}

.logobox {
display: flex;
align-items: center;
justify-content: center;
background: rgba(221, 204, 190, 0.08);
border: 1px solid rgba(221, 204, 190, 0.18);
border-radius: 10px;
padding: 8px 16px;
box-shadow: -1px 2px 2px -1px rgba(78, 96, 170, 0.07), -1px 5px 28px -1px rgba(78, 96, 170, 0.09);
width: 160px;
height: 75px;
}

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

.brand-tagline {
font-size: 15px;
font-weight: 300;
color: rgba(221, 204, 190, 0.55);
line-height: 1.2;
letter-spacing: 0.01em;
padding-left: 8px;
}

.headcontact {
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 8px;
flex-shrink: 0;
}

.headcontact-label {
font-size: 15px;
font-weight: 300;
color: rgba(221, 204, 190, 0.45);
line-height: 1.2;
}

.headcontact-phone {
font-size: 20px;
font-weight: 700;
color: #DDCCBE;
text-decoration: none;
line-height: 1.2;
transition: color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.headcontact-phone:hover {
color: #4E60AA;
}

.headcontact-email {
font-size: 15px;
font-weight: 400;
color: rgba(221, 204, 190, 0.7);
text-decoration: none;
line-height: 1.2;
position: relative;
transition: color 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}

.headcontact-email::after {
content: '';
position: absolute;
bottom: -1px;
left: 0;
width: 0;
height: 1px;
background: #4E60AA;
transition: width 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}

.headcontact-email:hover {
color: #DDCCBE;
}

.headcontact-email:hover::after {
width: 100%;
}

.head-divider {
max-width: 1600px;
margin: 0 auto;
height: 1px;
background: linear-gradient(90deg, transparent 0%, rgba(78, 96, 170, 0.35) 30%, rgba(221, 204, 190, 0.15) 70%, transparent 100%);
margin-left: 80px;
margin-right: 80px;
}

.sitehead-nav {
max-width: 1600px;
margin: 0 auto;
padding: 16px 80px 40px 80px;
display: flex;
align-items: center;
justify-content: flex-start;
gap: 8px;
}

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

.navlist li {
display: flex;
align-items: center;
}

.navlist a {
display: inline-block;
font-size: 15px;
font-weight: 400;
color: rgba(221, 204, 190, 0.8);
text-decoration: none;
padding: 8px 16px;
border-radius: 6px;
border: 1px solid transparent;
line-height: 1.5;
position: relative;
transition: color 0.2s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), background 0.25s cubic-bezier(0.0, 0, 0.2, 1);
overflow: hidden;
}

.navlist a::before {
content: '';
position: absolute;
inset: 0;
background: rgba(78, 96, 170, 0.15);
transform: translateX(100%);
transition: transform 0.22s cubic-bezier(0.0, 0, 0.2, 1);
border-radius: 6px;
}

.navlist a:hover::before {
transform: translateX(0);
}

.navlist a:hover {
color: #DDCCBE;
border-color: rgba(78, 96, 170, 0.3);
}

.navlist a[aria-current="page"] {
color: #4E60AA;
border-color: rgba(78, 96, 170, 0.4);
background: rgba(78, 96, 170, 0.1);
}

.navdot {
width: 4px;
height: 4px;
border-radius: 44px;
background: rgba(78, 96, 170, 0.4);
flex-shrink: 0;
}

.sitefooter {
background: #0b0d14;
border-top: 1px solid rgba(78, 96, 170, 0.2);
}

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

.footer-brand {
display: flex;
flex-direction: column;
gap: 16px;
align-items: flex-start;
}

.footer-logobox {
display: flex;
align-items: center;
justify-content: center;
background: rgba(221, 204, 190, 0.07);
border: 1px solid rgba(221, 204, 190, 0.15);
border-radius: 10px;
padding: 8px 16px;
box-shadow: -1px 2px 2px -1px rgba(78, 96, 170, 0.07), -1px 5px 28px -1px rgba(78, 96, 170, 0.09);
width: 150px;
height: 70px;
}

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

.footer-brand-desc {
font-size: 15px;
font-weight: 300;
color: rgba(221, 204, 190, 0.45);
line-height: 1.75;
max-width: 220px;
}

.footer-brand-addr {
font-size: 15px;
font-weight: 300;
color: rgba(221, 204, 190, 0.38);
line-height: 1.75;
}

.footer-links {
display: grid;
grid-template-columns: repeat(2, auto);
gap: 40px;
justify-content: start;
}

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

.footlinkgroup-label {
font-size: 15px;
font-weight: 700;
color: #DDCCBE;
line-height: 1.2;
text-transform: uppercase;
letter-spacing: 0.08em;
}

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

.footlinkgroup ul li a {
font-size: 15px;
font-weight: 400;
color: rgba(221, 204, 190, 0.6);
text-decoration: none;
line-height: 1.5;
position: relative;
transition: color 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}

.footlinkgroup ul li a::after {
content: '';
position: absolute;
bottom: -1px;
left: 0;
width: 0;
height: 1px;
background: #4E60AA;
transition: width 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.footlinkgroup ul li a:hover {
color: #DDCCBE;
}

.footlinkgroup ul li a:hover::after {
width: 100%;
}

.footer-lower {
border-top: 1px solid rgba(78, 96, 170, 0.12);
max-width: 1600px;
margin: 0 auto;
padding: 16px 80px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
flex-wrap: wrap;
}

.footer-copy {
font-size: 15px;
font-weight: 300;
color: rgba(221, 204, 190, 0.35);
line-height: 1.5;
}

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

.footer-legal a {
font-size: 15px;
font-weight: 300;
color: rgba(221, 204, 190, 0.4);
text-decoration: none;
line-height: 1.5;
position: relative;
transition: color 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}

.footer-legal a::after {
content: '';
position: absolute;
bottom: -1px;
left: 0;
width: 0;
height: 1px;
background: rgba(78, 96, 170, 0.6);
transition: width 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.footer-legal a:hover {
color: #DDCCBE;
}

.footer-legal a:hover::after {
width: 100%;
}

@media (max-width: 900px) {
.sitehead-upper {
padding: 40px 40px 16px 40px;
gap: 40px;
flex-wrap: wrap;
}

.head-divider {
margin-left: 40px;
margin-right: 40px;
}

.sitehead-nav {
padding: 16px 40px 40px 40px;
}

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

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

.headcontact {
align-items: flex-start;
}
}

@media (max-width: 600px) {
.sitehead-upper {
padding: 40px 16px 16px 16px;
gap: 16px;
}

.head-divider {
margin-left: 16px;
margin-right: 16px;
}

.sitehead-nav {
padding: 16px 16px 40px 16px;
}

.footer-upper {
padding: 40px 16px 40px 16px;
gap: 40px;
}

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

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

.text-doc {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
color: #d4c9be;
}

.text-doc h1 {
font-size: 68px;
line-height: 1.2;
color: #DDCCBE;
margin-bottom: 40px;
margin-top: 0;
}

.text-doc h2 {
font-size: 50px;
line-height: 1.2;
color: #DDCCBE;
margin-top: 80px;
margin-bottom: 40px;
}

.text-doc h3 {
font-size: 20px;
line-height: 1.5;
color: #EEE1D6;
margin-top: 40px;
margin-bottom: 16px;
text-transform: uppercase;
letter-spacing: 0.08em;
}

.text-doc h4,
.text-doc h5,
.text-doc h6 {
font-size: 20px;
line-height: 1.5;
color: #c8bdb3;
margin-top: 40px;
margin-bottom: 16px;
}

.text-doc p {
font-size: 15px;
line-height: 1.75;
margin-top: 0;
margin-bottom: 16px;
color: #b8aea4;
}

.text-doc ul,
.text-doc ol {
font-size: 15px;
line-height: 1.75;
margin-top: 0;
margin-bottom: 16px;
padding-left: 40px;
color: #b8aea4;
}

.text-doc li {
margin-bottom: 8px;
}

.text-doc li::marker {
color: #4E60AA;
}

.text-doc em,
.text-doc i {
color: #EEE1D6;
font-style: italic;
}

.text-doc a {
color: #7b8fd4;
text-decoration: none;
background-image: linear-gradient(currentColor, currentColor);
background-size: 0% 1px;
background-repeat: no-repeat;
background-position: left bottom;
transition: background-size 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.15s cubic-bezier(0.4, 0, 0.2, 1);
}

.text-doc a:hover {
color: #DDCCBE;
background-size: 100% 1px;
}

.text-doc div {
margin-bottom: 16px;
}

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

.text-doc h1 {
font-size: 50px;
}

.text-doc h2 {
font-size: 50px;
margin-top: 40px;
}
}

@media (max-width: 600px) {
.text-doc h1 {
font-size: 50px;
line-height: 1.2;
}

.text-doc h2 {
font-size: 20px;
}

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

.ctus {
background: #0d0f1a;
color: #DDCCBE;
overflow-x: clip;
position: relative;
}

.ctus .drop-1 {
animation: dropIn 0.45s cubic-bezier(0.4, 0, 0.2, 1) both;
}

.ctus .drop-2 {
animation: dropIn 0.45s cubic-bezier(0.4, 0, 0.2, 1) 0.1s both;
}

.ctus .drop-3 {
animation: dropIn 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.18s both;
}

.ctus .drop-4 {
animation: dropIn 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.26s both;
}

@keyframes dropIn {
from {
opacity: 0;
transform: translateY(-22px);
}

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

.ctus .pill {
display: inline-block;
background: rgba(78, 96, 170, 0.18);
color: #4E60AA;
border: 1px solid rgba(78, 96, 170, 0.35);
border-radius: 44px;
font-size: 15px;
line-height: 1.5;
padding: 8px 16px;
letter-spacing: 0.04em;
text-transform: uppercase;
}

.ctus .topzone {
position: relative;
padding: 80px 40px 80px;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background: radial-gradient(ellipse 70% 60% at 50% 0%, rgba(78, 96, 170, 0.22) 0%, transparent 70%);
overflow: hidden;
}

.ctus .topzone .bgcircle {
position: absolute;
border-radius: 44px;
pointer-events: none;
}

.ctus .topzone .bgcircle.c1 {
width: 320px;
height: 320px;
border: 1px solid rgba(78, 96, 170, 0.1);
border-radius: 50%;
top: -80px;
left: 50%;
transform: translateX(-50%);
}

.ctus .topzone .bgcircle.c2 {
width: 520px;
height: 520px;
border: 1px solid rgba(78, 96, 170, 0.06);
border-radius: 50%;
top: -160px;
left: 50%;
transform: translateX(-50%);
}

.ctus .topzone h1 {
font-size: 68px;
line-height: 1.2;
color: #EEE1D6;
margin: 16px 0 16px;
font-style: italic;
max-width: 700px;
}

.ctus .topzone .sub {
font-size: 20px;
line-height: 1.75;
color: #DDCCBE;
max-width: 520px;
opacity: 0.8;
}

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

.ctus .divider-curve svg {
display: block;
width: 100%;
}

.ctus .formzone {
background: #111320;
padding: 80px 40px;
position: relative;
}

.ctus .formzone::before {
content: '';
display: block;
position: absolute;
top: 0;
left: 0;
right: 0;
height: 120px;
background: linear-gradient(to bottom, rgba(78, 96, 170, 0.08), transparent);
pointer-events: none;
}

.ctus .formgrid {
max-width: 1600px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 80px;
align-items: start;
}

.ctus .formleft h2 {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
font-style: italic;
margin: 0 0 16px;
}

.ctus .formleft .desc {
font-size: 15px;
line-height: 1.75;
color: #DDCCBE;
opacity: 0.75;
margin: 0 0 40px;
}

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

.ctus .infolist li {
display: flex;
flex-direction: column;
gap: 8px;
padding: 16px;
border-radius: 10px;
background: rgba(78, 96, 170, 0.07);
border: 1px solid rgba(78, 96, 170, 0.15);
position: relative;
transition: background 0.2s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.ctus .infolist li:hover {
background: rgba(78, 96, 170, 0.13);
border-color: rgba(78, 96, 170, 0.3);
}

.ctus .infolist .ilab {
font-size: 15px;
line-height: 1.5;
color: #4E60AA;
text-transform: uppercase;
letter-spacing: 0.08em;
}

.ctus .infolist .ival {
font-size: 20px;
line-height: 1.5;
color: #EEE1D6;
}

.ctus .infolist a {
color: #EEE1D6;
text-decoration: none;
position: relative;
display: inline-block;
}

.ctus .infolist a::after {
content: '';
display: block;
position: absolute;
bottom: -1px;
left: 0;
width: 0;
height: 2px;
background: #4E60AA;
transition: width 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}

.ctus .infolist a:hover::after {
width: 100%;
}

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

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

.ctus .fgroup label {
font-size: 15px;
line-height: 1.5;
color: #DDCCBE;
opacity: 0.7;
text-transform: uppercase;
letter-spacing: 0.06em;
}

.ctus .fgroup input,
.ctus .fgroup textarea,
.ctus .fgroup select {
background: rgba(14, 16, 28, 0.9);
border: 1px solid rgba(78, 96, 170, 0.25);
border-radius: 10px;
color: #EEE1D6;
font-size: 15px;
line-height: 1.5;
padding: 16px;
outline: none;
transition: border-color 0.18s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.18s cubic-bezier(0.4, 0, 0.2, 1);
width: 100%;
box-sizing: border-box;
appearance: none;
-webkit-appearance: none;
}

.ctus .fgroup input::placeholder,
.ctus .fgroup textarea::placeholder {
color: rgba(221, 204, 190, 0.35);
font-size: 15px;
}

.ctus .fgroup input:focus,
.ctus .fgroup textarea:focus,
.ctus .fgroup select:focus {
border-color: rgba(78, 96, 170, 0.7);
box-shadow: -1px 5px 28px -1px rgba(78, 96, 170, 0.09);
}

.ctus .fgroup textarea {
min-height: 140px;
resize: vertical;
}

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

.ctus .fgroup select option {
background: #111320;
color: #EEE1D6;
}

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

.ctus .privcheck input[type="checkbox"] {
width: 20px;
height: 20px;
min-width: 20px;
accent-color: #4E60AA;
cursor: pointer;
margin-top: 2px;
border-radius: 6px;
}

.ctus .privcheck span {
font-size: 15px;
line-height: 1.75;
color: #DDCCBE;
opacity: 0.7;
}

.ctus .privcheck a {
color: #4E60AA;
text-decoration: underline;
text-underline-offset: 3px;
}

.ctus .submitbtn {
position: relative;
overflow: hidden;
background: #4E60AA;
color: #EEE1D6;
border: none;
border-radius: 10px;
font-size: 20px;
line-height: 1.5;
padding: 16px 40px;
cursor: pointer;
text-transform: lowercase;
box-shadow: -1px 5px 28px -1px rgba(78, 96, 170, 0.09);
transition: color 0.22s cubic-bezier(0.4, 0, 0.2, 1);
align-self: flex-start;
}

.ctus .submitbtn::before {
content: '';
position: absolute;
inset: 0;
background: #EEE1D6;
transform: translateX(100%);
transition: transform 0.25s cubic-bezier(0.0, 0, 0.2, 1);
border-radius: 10px;
}

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

.ctus .submitbtn:hover {
color: #111320;
}

.ctus .submitbtn span {
position: relative;
z-index: 1;
}

.ctus .submitbtn:focus-visible {
outline: 2px solid #4E60AA;
outline-offset: 3px;
}

.ctus .divider2 {
width: 100%;
overflow: hidden;
line-height: 0;
}

.ctus .divider2 svg {
display: block;
width: 100%;
}

.ctus .detailzone {
background: #0d0f1a;
padding: 80px 40px;
position: relative;
}

.ctus .detailzone::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(90deg, transparent, #4E60AA, transparent);
pointer-events: none;
}

.ctus .detailinner {
max-width: 1600px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 2fr;
gap: 80px;
align-items: start;
}

.ctus .detailleft h3 {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
font-style: italic;
margin: 0 0 16px;
}

.ctus .detailleft p {
font-size: 15px;
line-height: 1.75;
color: #DDCCBE;
opacity: 0.7;
margin: 0;
}

.ctus .detailright {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
}

.ctus .dcard {
border-radius: 16px;
padding: 40px;
background: rgba(78, 96, 170, 0.06);
border: 1px solid rgba(78, 96, 170, 0.12);
position: relative;
overflow: hidden;
transition: border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.ctus .dcard::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 3px;
background: #4E60AA;
transform: scaleX(0);
transform-origin: left;
transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.ctus .dcard:hover {
border-color: rgba(78, 96, 170, 0.3);
}

.ctus .dcard:hover::after {
transform: scaleX(1);
}

.ctus .dcard .dtop {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
margin-bottom: 16px;
}

.ctus .dcard .dicon {
width: 40px;
height: 40px;
border-radius: 10px;
background: rgba(78, 96, 170, 0.18);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

.ctus .dcard .dicon svg {
width: 20px;
height: 20px;
}

.ctus .dcard h4 {
font-size: 20px;
line-height: 1.5;
color: #EEE1D6;
margin: 0;
}

.ctus .dcard p {
font-size: 15px;
line-height: 1.75;
color: #DDCCBE;
opacity: 0.7;
margin: 0;
}

.ctus .moroccan {
position: absolute;
inset: 0;
pointer-events: none;
opacity: 0.025;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56' viewBox='0 0 56 56'%3E%3Cpath d='M28 0 L56 14 L56 42 L28 56 L0 42 L0 14 Z' fill='none' stroke='%234E60AA' stroke-width='1'/%3E%3Cpath d='M28 8 L48 18 L48 38 L28 48 L8 38 L8 18 Z' fill='none' stroke='%234E60AA' stroke-width='0.5'/%3E%3C/svg%3E");
background-size: 56px 56px;
}

.ctus .dcard.wide {
grid-column: span 2;
}

.ctus .hourbadge {
display: inline-flex;
align-items: center;
gap: 8px;
background: rgba(78, 96, 170, 0.12);
border: 1px solid rgba(78, 96, 170, 0.22);
border-radius: 28px;
padding: 8px 16px;
font-size: 15px;
line-height: 1.5;
color: #4E60AA;
margin-top: 16px;
}

.ctus .hourbadge .dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: #4E60AA;
animation: blink 1.8s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}

@keyframes blink {

0%,
100% {
opacity: 1;
}

50% {
opacity: 0.2;
}
}

@media (max-width: 900px) {
.ctus .topzone h1 {
font-size: 50px;
}

.ctus .formgrid {
grid-template-columns: 1fr;
gap: 40px;
}

.ctus .detailinner {
grid-template-columns: 1fr;
gap: 40px;
}

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

.ctus .dcard.wide {
grid-column: span 1;
}

.ctus .formzone,
.ctus .detailzone {
padding: 80px 16px;
}

.ctus .topzone {
padding: 80px 16px;
}
}

@media (max-width: 600px) {
.ctus .topzone h1 {
font-size: 50px;
}

.ctus .formleft h2 {
font-size: 50px;
}

.ctus .detailleft h3 {
font-size: 50px;
}

.ctus .submitbtn {
width: 100%;
text-align: center;
}
}

.opn {
background: #0d0e14;
color: #e8e0d8;
overflow-x: hidden;
position: relative;
}

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

.opn ::selection {
background: #DDCCBE;
color: #0d0e14;
}

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

.opn .titl {
position: relative;
padding: 80px 0 80px;
background: #0d0e14;
}

.opn .titl::before {
content: '';
position: absolute;
inset: 0;
background-image: url("./uploads/UPPER-BG.jpg");
background-size: cover;
background-position: center;
opacity: 0.07;
pointer-events: none;
}

.opn .titl-grid {
display: flex;
flex-direction: row;
align-items: stretch;
gap: 40px;
position: relative;
z-index: 1;
}

.opn .titl-text {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
padding: 40px 0;
}

.opn .titl-eyebrow {
font-size: 15px;
line-height: 1.5;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #4E60AA;
margin-bottom: 16px;
display: block;
}

.opn .titl-h1 {
font-size: 68px;
line-height: 1.2;
color: #EEE1D6;
margin: 0 0 16px;
font-style: italic;
max-width: 760px;
}

.opn .titl-img-strip {
width: 340px;
flex-shrink: 0;
position: relative;
border-radius: 16px;
overflow: hidden;
box-shadow: -1px 8px 36px -1px rgba(78, 96, 170, 0.10);
}

.opn .titl-img-strip img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: filter 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.opn .titl-img-strip img:hover {
filter: saturate(0);
}

.opn .titl-img-strip::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 55%;
background: linear-gradient(to top, #0d0e14 0%, transparent 100%);
pointer-events: none;
}

.opn .titl-noise {
position: absolute;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
pointer-events: none;
z-index: 0;
}

.opn .limits {
padding: 80px 0;
background: #111219;
position: relative;
}

.opn .limits::before {
content: '';
position: absolute;
inset: 0;
background-image: url("./uploads/imag-pending.jpg");
background-size: cover;
background-position: center;
opacity: 0.04;
pointer-events: none;
}

.opn .limits-divider {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
margin-bottom: 40px;
}

.opn .limits-divider span {
display: block;
height: 1px;
width: 48px;
background: #4E60AA;
}

.opn .limits-divider i {
display: block;
width: 6px;
height: 6px;
border-radius: 6px;
background: #DDCCBE;
}

.opn .limits-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
align-items: start;
}

.opn .limits-lead {
position: relative;
z-index: 1;
}

.opn .limits-h2 {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
margin: 0 0 16px;
font-style: italic;
}

.opn .limits-body {
font-size: 20px;
line-height: 1.75;
color: #b8b0a8;
margin: 0 0 16px;
}

.opn .limits-items {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
gap: 16px;
}

.opn .limits-item {
border: 1px solid #23253a;
border-radius: 10px;
padding: 16px;
background: #0d0e14;
box-shadow: -1px 5px 28px -1px rgba(78, 96, 170, 0.09);
transition: border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.opn .limits-item:hover {
border-color: #4E60AA;
}

.opn .limits-item-label {
font-size: 15px;
line-height: 1.5;
color: #4E60AA;
text-transform: uppercase;
letter-spacing: 0.1em;
margin-bottom: 8px;
display: block;
}

.opn .limits-item p {
font-size: 15px;
line-height: 1.75;
color: #b8b0a8;
margin: 0;
}

.opn .appr {
padding: 80px 0;
background: #0d0e14;
}

.opn .appr-wrap {
display: grid;
grid-template-columns: 340px 1fr;
gap: 80px;
align-items: start;
}

.opn .appr-img {
position: relative;
border-radius: 16px;
overflow: hidden;
box-shadow: -1px 8px 36px -1px rgba(78, 96, 170, 0.10);
}

.opn .appr-img img {
width: 100%;
height: 420px;
object-fit: cover;
display: block;
transition: filter 0.28s cubic-bezier(0.0, 0, 0.2, 1);
}

.opn .appr-img img:hover {
filter: saturate(0);
}

.opn .appr-right {
display: flex;
flex-direction: column;
gap: 40px;
}

.opn .appr-h2 {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
margin: 0;
font-style: italic;
}

.opn .appr-steps {
display: flex;
flex-direction: column;
gap: 16px;
}

.opn .appr-step {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
}

.opn .appr-num {
font-size: 50px;
line-height: 1.2;
color: #23253a;
font-style: italic;
flex-shrink: 0;
width: 48px;
text-align: right;
}

.opn .appr-step-body {
flex: 1;
border-top: 1px solid #23253a;
padding-top: 8px;
}

.opn .appr-step-body h4 {
font-size: 20px;
line-height: 1.5;
color: #EEE1D6;
margin: 0 0 8px;
}

.opn .appr-step-body p {
font-size: 15px;
line-height: 1.75;
color: #b8b0a8;
margin: 0;
}

.opn .recog {
padding: 80px 0;
background: #13141e;
}

.opn .recog-inner {
display: flex;
flex-direction: column;
align-items: center;
gap: 40px;
}

.opn .recog-h2 {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
margin: 0;
font-style: italic;
text-align: center;
}

.opn .recog-body {
font-size: 20px;
line-height: 1.75;
color: #b8b0a8;
text-align: center;
max-width: 640px;
}

.opn .recog-cards {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
width: 100%;
}

.opn .recog-card {
border: 1px solid #23253a;
border-radius: 10px;
padding: 40px 16px;
background: #0d0e14;
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
box-shadow: -1px 2px 2px -1px rgba(78, 96, 170, 0.07);
transition: box-shadow 0.22s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}

.opn .recog-card:hover {
box-shadow: -1px 8px 36px -1px rgba(78, 96, 170, 0.10);
border-color: #4E60AA;
}

.opn .recog-icon {
width: 40px;
height: 40px;
border-radius: 10px;
background: linear-gradient(to top, #4E60AA, transparent);
display: flex;
align-items: center;
justify-content: center;
}

.opn .recog-icon svg {
width: 20px;
height: 20px;
fill: none;
stroke: #EEE1D6;
stroke-width: 1.5;
}

.opn .recog-card h5 {
font-size: 15px;
line-height: 1.5;
color: #EEE1D6;
margin: 0;
text-align: center;
}

.opn .recog-card p {
font-size: 15px;
line-height: 1.75;
color: #b8b0a8;
margin: 0;
text-align: center;
}

.opn .recog-img {
width: 100%;
border-radius: 16px;
overflow: hidden;
max-height: 280px;
}

.opn .recog-img img {
width: 100%;
height: 280px;
object-fit: cover;
display: block;
transition: filter 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.opn .recog-img img:hover {
filter: saturate(0);
}

.opn .diff {
padding: 80px 0;
background: #0d0e14;
}

.opn .diff-layout {
display: grid;
grid-template-columns: 1fr 480px;
gap: 80px;
align-items: center;
}

.opn .diff-left {
display: flex;
flex-direction: column;
gap: 40px;
}

.opn .diff-h2 {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
margin: 0;
font-style: italic;
}

.opn .diff-para {
font-size: 20px;
line-height: 1.75;
color: #b8b0a8;
margin: 0;
}

.opn .diff-points {
display: flex;
flex-direction: column;
gap: 16px;
}

.opn .diff-pt {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
padding: 16px;
border-radius: 10px;
background: #111219;
border: 1px solid #23253a;
transition: background 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}

.opn .diff-pt:hover {
background: #13141e;
}

.opn .diff-dot {
width: 8px;
height: 8px;
border-radius: 6px;
background: #4E60AA;
flex-shrink: 0;
margin-top: 6px;
}

.opn .diff-pt-body h5 {
font-size: 20px;
line-height: 1.5;
color: #EEE1D6;
margin: 0 0 8px;
}

.opn .diff-pt-body p {
font-size: 15px;
line-height: 1.75;
color: #b8b0a8;
margin: 0;
}

.opn .diff-right {
position: relative;
}

.opn .diff-right-img {
border-radius: 16px;
overflow: hidden;
box-shadow: -1px 8px 36px -1px rgba(78, 96, 170, 0.10);
}

.opn .diff-right-img img {
width: 100%;
height: 480px;
object-fit: cover;
display: block;
transition: filter 0.26s cubic-bezier(0.4, 0, 0.2, 1);
}

.opn .diff-right-img img:hover {
filter: saturate(0);
}

.opn .team {
padding: 80px 0;
background: #111219;
}

.opn .team-divider {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
margin-bottom: 40px;
}

.opn .team-divider span {
display: block;
height: 1px;
width: 48px;
background: #DDCCBE;
}

.opn .team-divider i {
display: block;
width: 6px;
height: 6px;
border-radius: 6px;
background: #4E60AA;
}

.opn .team-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
}

.opn .team-intro {
display: flex;
flex-direction: column;
gap: 16px;
}

.opn .team-h2 {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
margin: 0;
font-style: italic;
}

.opn .team-lead {
font-size: 20px;
line-height: 1.75;
color: #b8b0a8;
margin: 0;
}

.opn .team-profiles {
display: flex;
flex-direction: column;
gap: 16px;
}

.opn .team-profile {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
padding: 16px;
border-radius: 10px;
border: 1px solid #23253a;
background: #0d0e14;
box-shadow: -1px 2px 2px -1px rgba(78, 96, 170, 0.07);
transition: border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.opn .team-profile:hover {
border-color: #4E60AA;
}

.opn .team-avatar {
width: 44px;
height: 44px;
border-radius: 44px;
background: linear-gradient(to top, #4E60AA, #23253a);
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
}

.opn .team-avatar svg {
width: 20px;
height: 20px;
fill: none;
stroke: #EEE1D6;
stroke-width: 1.5;
}

.opn .team-profile-body h5 {
font-size: 15px;
line-height: 1.5;
color: #EEE1D6;
margin: 0 0 8px;
}

.opn .team-profile-body p {
font-size: 15px;
line-height: 1.75;
color: #b8b0a8;
margin: 0;
}

.opn .prob {
padding: 80px 0;
background: #0d0e14;
position: relative;
}

.opn .prob::before {
content: '';
position: absolute;
inset: 0;
background-image: url("./uploads/2026_03-upper_carousel.jpg");
background-size: cover;
background-position: center;
opacity: 0.05;
pointer-events: none;
}

.opn .prob-inner {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: 1fr 480px;
gap: 80px;
align-items: start;
}

.opn .prob-left {
display: flex;
flex-direction: column;
gap: 40px;
}

.opn .prob-h2 {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
margin: 0;
font-style: italic;
}

.opn .prob-para {
font-size: 20px;
line-height: 1.75;
color: #b8b0a8;
margin: 0;
}

.opn .prob-para-sm {
font-size: 15px;
line-height: 1.75;
color: #b8b0a8;
margin: 0;
}

.opn .prob-sidebar {
background: #13141e;
border-radius: 16px;
border: 1px solid #23253a;
padding: 40px;
box-shadow: -1px 5px 28px -1px rgba(78, 96, 170, 0.09);
display: flex;
flex-direction: column;
gap: 16px;
}

.opn .prob-sidebar h4 {
font-size: 20px;
line-height: 1.5;
color: #EEE1D6;
margin: 0;
}

.opn .prob-sidebar p {
font-size: 15px;
line-height: 1.75;
color: #b8b0a8;
margin: 0;
}

.opn .prob-cta {
display: inline-block;
padding: 16px 40px;
background: #4E60AA;
color: #EEE1D6;
font-size: 15px;
line-height: 1.5;
border-radius: 6px;
text-decoration: none;
position: relative;
overflow: hidden;
transition: color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.opn .prob-cta::after {
content: '';
position: absolute;
inset: 0;
background: #DDCCBE;
transform: translateX(100%);
transition: transform 0.22s cubic-bezier(0.4, 0, 0.2, 1);
z-index: 0;
}

.opn .prob-cta:hover {
color: #0d0e14;
}

.opn .prob-cta:hover::after {
transform: translateX(0);
}

.opn .prob-cta-text {
position: relative;
z-index: 1;
}

@keyframes opnFadeUp {
from {
opacity: 0;
transform: translateY(24px);
}

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

.opn .titl-text,
.opn .titl-img-strip {
animation: opnFadeUp 0.5s cubic-bezier(0.0, 0, 0.2, 1) both;
}

.opn .titl-img-strip {
animation-delay: 0.12s;
}

.opn .recog-card:nth-child(1) {
animation: opnFadeUp 0.4s cubic-bezier(0.0, 0, 0.2, 1) 0.05s both;
}

.opn .recog-card:nth-child(2) {
animation: opnFadeUp 0.4s cubic-bezier(0.0, 0, 0.2, 1) 0.12s both;
}

.opn .recog-card:nth-child(3) {
animation: opnFadeUp 0.4s cubic-bezier(0.0, 0, 0.2, 1) 0.19s both;
}

@media (max-width: 1024px) {
.opn .titl-grid {
flex-direction: column;
}

.opn .titl-img-strip {
width: 100%;
height: 280px;
}

.opn .titl-h1 {
font-size: 50px;
}

.opn .limits-grid {
grid-template-columns: 1fr;
}

.opn .appr-wrap {
grid-template-columns: 1fr;
}

.opn .appr-img img {
height: 260px;
}

.opn .recog-cards {
grid-template-columns: 1fr 1fr;
}

.opn .diff-layout {
grid-template-columns: 1fr;
}

.opn .diff-right-img img {
height: 280px;
}

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

.opn .prob-inner {
grid-template-columns: 1fr;
}
}

@media (max-width: 640px) {
.opn .pg-wrap {
padding: 0 16px;
}

.opn .titl-h1 {
font-size: 50px;
}

.opn .limits-h2,
.opn .appr-h2,
.opn .recog-h2,
.opn .diff-h2,
.opn .team-h2,
.opn .prob-h2 {
font-size: 50px;
}

.opn .recog-cards {
grid-template-columns: 1fr;
}

.opn .titl {
padding: 40px 0;
}

.opn .limits,
.opn .appr,
.opn .recog,
.opn .diff,
.opn .team,
.opn .prob {
padding: 40px 0;
}
}

.abut {
background: #0e0f14;
color: #EEE1D6;
overflow-x: clip;
position: relative;
}

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

.abut ::selection {
background: #DDCCBE;
color: #0e0f14;
}

.abut .pg-schema {
display: none;
}

.abut .titl-blk {
position: relative;
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 80px;
align-items: end;
}

.abut .titl-blk::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(to top, #1a1f3a 0%, transparent 70%);
pointer-events: none;
z-index: 0;
}

.abut .titl-circ {
position: absolute;
border-radius: 44px;
opacity: 0.07;
pointer-events: none;
overflow: hidden;
}

.abut .titl-circ.c1 {
width: 420px;
height: 420px;
background: #4E60AA;
border-radius: 44px;
top: -80px;
right: 10%;
border-radius: 50%;
}

.abut .titl-circ.c2 {
width: 220px;
height: 220px;
background: #DDCCBE;
bottom: 40px;
left: 5%;
border-radius: 50%;
}

.abut .titl-circ.c3 {
width: 140px;
height: 140px;
background: #4E60AA;
top: 40px;
left: 30%;
border-radius: 50%;
}

.abut .titl-img-zone {
position: relative;
z-index: 1;
padding: 40px 16px 40px 40px;
}

.abut .titl-img-wrap {
position: relative;
border-radius: 16px;
overflow: hidden;
box-shadow: -1px 8px 36px -1px rgba(78, 96, 170, 0.10);
}

.abut .titl-img-wrap img {
width: 100%;
height: 480px;
object-fit: cover;
display: block;
filter: saturate(0.7) brightness(0.85);
transition: filter 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.abut .titl-img-wrap img:hover {
filter: saturate(0) brightness(0.75);
}

.abut .titl-img-overlay {
position: absolute;
inset: 0;
background: linear-gradient(160deg, rgba(78, 96, 170, 0.38) 0%, transparent 60%);
pointer-events: none;
}

.abut .titl-txt-zone {
position: relative;
z-index: 1;
padding: 40px 40px 40px 16px;
display: flex;
flex-direction: column;
gap: 40px;
justify-content: flex-end;
}

.abut .titl-eyebrow {
font-size: 15px;
line-height: 1.5;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #4E60AA;
margin: 0;
}

.abut .titl-h1 {
font-size: 68px;
line-height: 1.2;
margin: 0;
color: #EEE1D6;
font-style: italic;
}

.abut .titl-h1 em {
font-style: normal;
color: #4E60AA;
}

.abut .titl-tag {
font-size: 20px;
line-height: 1.5;
color: #DDCCBE;
margin: 0;
max-width: 480px;
}

.abut .titl-links {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
}

.abut .btn-prim {
display: inline-block;
padding: 16px 40px;
background: #4E60AA;
color: #EEE1D6;
border-radius: 10px;
font-size: 15px;
line-height: 1.5;
text-decoration: none;
position: relative;
overflow: hidden;
transition: color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
box-shadow: -1px 5px 28px -1px rgba(78, 96, 170, 0.09);
}

.abut .btn-prim::after {
content: '';
position: absolute;
inset: 0;
background: #DDCCBE;
transform: translateX(100%);
transition: transform 0.22s cubic-bezier(0.0, 0, 0.2, 1);
z-index: 0;
}

.abut .btn-prim:hover::after {
transform: translateX(0);
}

.abut .btn-prim:hover {
color: #0e0f14;
}

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

.abut .btn-sec {
display: inline-block;
padding: 16px 40px;
background: transparent;
color: #DDCCBE;
border-radius: 10px;
font-size: 15px;
line-height: 1.5;
text-decoration: none;
border: 1px solid rgba(221, 204, 190, 0.3);
position: relative;
overflow: hidden;
transition: color 0.18s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}

.abut .btn-sec::after {
content: '';
position: absolute;
inset: 0;
background: rgba(221, 204, 190, 0.1);
transform: translateX(100%);
transition: transform 0.2s cubic-bezier(0.0, 0, 0.2, 1);
z-index: 0;
}

.abut .btn-sec:hover::after {
transform: translateX(0);
}

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

.abut .wave-div {
width: 100%;
line-height: 0;
overflow: hidden;
}

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

.abut .story-blk {
background: #131620;
padding: 80px 40px;
position: relative;
}

.abut .story-inner {
max-width: 1600px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 40px;
align-items: start;
}

.abut .story-col-main {
grid-column: 1 / 3;
display: flex;
flex-direction: column;
gap: 40px;
}

.abut .story-col-side {
display: flex;
flex-direction: column;
gap: 40px;
}

.abut .story-label {
font-size: 15px;
line-height: 1.5;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #4E60AA;
margin: 0;
}

.abut .story-h2 {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
margin: 0;
font-style: italic;
}

.abut .story-lead {
font-size: 20px;
line-height: 1.75;
color: #DDCCBE;
margin: 0;
max-width: 640px;
}

.abut .story-body {
font-size: 15px;
line-height: 1.75;
color: #c5b8ac;
margin: 0;
max-width: 640px;
}

.abut .story-imgs {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
}

.abut .story-img-wrap {
border-radius: 10px;
overflow: hidden;
box-shadow: -1px 2px 2px -1px rgba(78, 96, 170, 0.07);
}

.abut .story-img-wrap img {
width: 100%;
height: 200px;
object-fit: cover;
display: block;
transition: filter 0.28s cubic-bezier(0.4, 0, 0.2, 1);
filter: saturate(0.75);
}

.abut .story-img-wrap img:hover {
filter: saturate(0);
}

.abut .story-img-wrap.tall img {
height: 420px;
}

.abut .story-img-wrap.tall {
grid-column: 1 / 3;
}

.abut .metric-card {
background: #1b1f2e;
border-radius: 16px;
padding: 40px;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: -1px 5px 28px -1px rgba(78, 96, 170, 0.09);
position: relative;
overflow: hidden;
}

.abut .metric-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(to right, #4E60AA, transparent);
}

.abut .metric-num {
font-size: 68px;
line-height: 1.2;
color: #4E60AA;
margin: 0;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
}

.abut .metric-num sup {
font-size: 20px;
line-height: 1.5;
color: #DDCCBE;
margin-top: 16px;
}

.abut .metric-desc {
font-size: 15px;
line-height: 1.5;
color: #DDCCBE;
margin: 0;
}

.abut .team-strip {
background: #0e1018;
border-radius: 28px;
padding: 40px;
display: flex;
flex-direction: column;
gap: 16px;
}

.abut .team-strip-label {
font-size: 15px;
line-height: 1.5;
letter-spacing: 0.08em;
text-transform: uppercase;
color: #DDCCBE;
margin: 0;
opacity: 0.6;
}

.abut .team-person {
display: flex;
flex-direction: row;
gap: 16px;
align-items: center;
padding: 16px 0;
border-bottom: 1px solid rgba(221, 204, 190, 0.1);
}

.abut .team-person:last-child {
border-bottom: none;
padding-bottom: 0;
}

.abut .team-avatar {
width: 44px;
height: 44px;
border-radius: 44px;
background: linear-gradient(to top, #4E60AA, transparent);
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
font-size: 15px;
color: #EEE1D6;
font-style: italic;
}

.abut .team-info {
display: flex;
flex-direction: column;
gap: 8px;
}

.abut .team-name {
font-size: 15px;
line-height: 1.5;
color: #EEE1D6;
margin: 0;
}

.abut .team-role {
font-size: 15px;
line-height: 1.5;
color: #DDCCBE;
margin: 0;
opacity: 0.65;
}

.abut .fill-bar-wrap {
display: flex;
flex-direction: column;
gap: 16px;
}

.abut .fill-bar-item {
display: flex;
flex-direction: column;
gap: 8px;
}

.abut .fill-bar-label {
font-size: 15px;
line-height: 1.5;
color: #DDCCBE;
margin: 0;
display: flex;
flex-direction: row;
justify-content: space-between;
}

.abut .fill-bar-track {
height: 6px;
background: rgba(78, 96, 170, 0.18);
border-radius: 6px;
overflow: hidden;
}

.abut .fill-bar-fill {
height: 100%;
border-radius: 6px;
background: #4E60AA;
transform: scaleX(0);
transform-origin: left;
animation: fillLeft 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.abut .fill-bar-item:nth-child(1) .fill-bar-fill {
animation-delay: 0.1s;
}

.abut .fill-bar-item:nth-child(2) .fill-bar-fill {
animation-delay: 0.22s;
}

.abut .fill-bar-item:nth-child(3) .fill-bar-fill {
animation-delay: 0.34s;
}

.abut .fill-bar-item:nth-child(4) .fill-bar-fill {
animation-delay: 0.46s;
}

@keyframes fillLeft {
to {
transform: scaleX(1);
}
}

@media (max-width: 1024px) {
.abut .titl-blk {
grid-template-columns: 1fr;
gap: 40px;
padding: 40px 16px;
}

.abut .titl-img-zone {
padding: 16px;
}

.abut .titl-txt-zone {
padding: 16px;
gap: 16px;
}

.abut .titl-h1 {
font-size: 50px;
}

.abut .story-inner {
grid-template-columns: 1fr;
}

.abut .story-col-main {
grid-column: 1 / 2;
}

.abut .story-blk {
padding: 40px 16px;
}

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

.abut .story-img-wrap.tall {
grid-column: 1 / 2;
}
}

@media (max-width: 640px) {
.abut .titl-h1 {
font-size: 50px;
}

.abut .metric-num {
font-size: 50px;
}

.abut .story-h2 {
font-size: 50px;
}

.abut .titl-links {
flex-direction: column;
}
}

.prs {
background: #0d0f1a;
color: #DDCCBE;
overflow-x: clip;
position: relative;
}

.prs .bento-grid {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px 80px;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: auto auto;
gap: 16px;
}

.prs .cell {
border-radius: 16px;
overflow: hidden;
position: relative;
}

.prs .cell-img {
grid-column: 1 / 2;
grid-row: 1 / 3;
min-height: 480px;
}

.prs .cell-img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: filter 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.prs .cell-img:hover img {
filter: saturate(0);
}

.prs .img-overlay {
position: absolute;
inset: 0;
background: linear-gradient(to top, #0d0f1a 0%, transparent 55%);
pointer-events: none;
}

.prs .cell-head {
grid-column: 2 / 4;
grid-row: 1 / 2;
background: #131628;
border: 1px solid rgba(78, 96, 170, 0.18);
box-shadow: -1px 5px 28px -1px rgba(78, 96, 170, 0.09);
padding: 40px;
display: flex;
flex-direction: column;
justify-content: flex-end;
position: relative;
}

.prs .cell-head .oversized {
position: absolute;
top: -16px;
right: 40px;
font-size: 140px;
line-height: 1.2;
color: rgba(78, 96, 170, 0.07);
font-weight: 900;
pointer-events: none;
user-select: none;
letter-spacing: -8px;
}

.prs .cell-head .badge {
display: inline-flex;
align-items: center;
gap: 8px;
background: rgba(78, 96, 170, 0.15);
border: 1px solid rgba(78, 96, 170, 0.3);
border-radius: 44px;
padding: 8px 16px;
font-size: 15px;
color: #4E60AA;
margin-bottom: 16px;
width: fit-content;
}

.prs .badge-dot {
width: 8px;
height: 8px;
border-radius: 44px;
background: #4E60AA;
display: inline-block;
}

.prs .cell-head h1 {
font-size: 68px;
line-height: 1.2;
color: #EEE1D6;
margin: 0 0 16px;
font-style: italic;
}

.prs .cell-head p {
font-size: 20px;
line-height: 1.5;
color: #DDCCBE;
margin: 0;
max-width: 560px;
}

.prs .cell-meta {
grid-column: 2 / 3;
grid-row: 2 / 3;
background: #4E60AA;
padding: 40px;
border-radius: 16px;
display: flex;
flex-direction: column;
justify-content: space-between;
}

.prs .cell-meta h4 {
font-size: 15px;
line-height: 1.5;
text-transform: uppercase;
letter-spacing: 0.12em;
color: rgba(238, 225, 214, 0.6);
margin: 0 0 16px;
}

.prs .cell-meta .big-num {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
font-weight: 700;
}

.prs .cell-meta .num-label {
font-size: 15px;
color: rgba(238, 225, 214, 0.75);
line-height: 1.5;
margin-top: 8px;
}

.prs .cell-contact {
grid-column: 3 / 4;
grid-row: 2 / 3;
background: #181b2e;
border: 1px solid rgba(221, 204, 190, 0.1);
padding: 40px;
border-radius: 16px;
display: flex;
flex-direction: column;
justify-content: center;
gap: 16px;
}

.prs .cell-contact h4 {
font-size: 20px;
line-height: 1.5;
color: #EEE1D6;
margin: 0;
font-style: italic;
}

.prs .contact-line {
display: flex;
flex-direction: column;
gap: 8px;
}

.prs .contact-line a {
font-size: 15px;
color: #DDCCBE;
text-decoration: none;
position: relative;
width: fit-content;
transition: color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.prs .contact-line a::after {
content: '';
position: absolute;
bottom: -2px;
left: 0;
width: 0;
height: 1px;
background: #4E60AA;
transition: width 0.22s cubic-bezier(0.4, 0, 0.2, 1);
}

.prs .contact-line a:hover {
color: #EEE1D6;
}

.prs .contact-line a:hover::after {
width: 100%;
}

.prs .divider-band {
height: 4px;
background: linear-gradient(to right, #4E60AA, #DDCCBE, transparent);
max-width: 1600px;
margin: 0 auto;
border-radius: 6px;
}

.prs .media-area {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
position: relative;
}

.prs .media-area::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(135deg, rgba(78, 96, 170, 0.06) 0%, transparent 60%);
pointer-events: none;
}

.prs .media-top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
margin-bottom: 40px;
gap: 40px;
}

.prs .media-top h2 {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
margin: 0;
font-style: italic;
max-width: 600px;
}

.prs .media-top p {
font-size: 15px;
line-height: 1.75;
color: #DDCCBE;
max-width: 400px;
margin: 0;
}

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

.prs .kit-item {
background: #131628;
border: 1px solid rgba(78, 96, 170, 0.15);
border-radius: 10px;
padding: 40px;
position: relative;
transition: border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.25s cubic-bezier(0.4, 0, 0.2, 1);
overflow: hidden;
}

.prs .kit-item::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(to right, #4E60AA, transparent);
border-radius: 10px 10px 0 0;
}

.prs .kit-item:hover {
border-color: rgba(78, 96, 170, 0.4);
box-shadow: -1px 8px 36px -1px rgba(78, 96, 170, 0.10);
}

.prs .kit-num {
font-size: 50px;
line-height: 1.2;
color: rgba(78, 96, 170, 0.2);
font-weight: 900;
margin-bottom: 16px;
}

.prs .kit-item h3 {
font-size: 20px;
line-height: 1.5;
color: #EEE1D6;
margin: 0 0 16px;
font-style: italic;
}

.prs .kit-item p {
font-size: 15px;
line-height: 1.75;
color: #DDCCBE;
margin: 0 0 16px;
}

.prs .kit-tag {
display: inline-block;
font-size: 15px;
color: #4E60AA;
border: 1px solid rgba(78, 96, 170, 0.3);
border-radius: 6px;
padding: 8px 16px;
}

.prs .divider-geo {
max-width: 1600px;
margin: 0 auto;
padding: 0 40px;
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
}

.prs .geo-line {
flex: 1;
height: 1px;
background: linear-gradient(to right, transparent, rgba(221, 204, 190, 0.15), transparent);
}

.prs .geo-shape {
width: 16px;
height: 16px;
border: 1px solid rgba(78, 96, 170, 0.4);
transform: rotate(45deg);
border-radius: 2px;
}

.prs .mentions-area {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px 80px;
position: relative;
}

.prs .mentions-bg {
position: absolute;
inset: 0;
overflow: hidden;
pointer-events: none;
border-radius: 16px;
}

.prs .tri-grid {
position: absolute;
inset: 0;
opacity: 0.04;
background-image:
linear-gradient(60deg, rgba(78, 96, 170, 0.8) 1px, transparent 1px),
linear-gradient(-60deg, rgba(78, 96, 170, 0.8) 1px, transparent 1px),
linear-gradient(0deg, rgba(78, 96, 170, 0.8) 1px, transparent 1px);
background-size: 40px 40px;
}

.prs .split-bg {
position: absolute;
inset: 0;
background: linear-gradient(152deg, #131628 55%, #0d1020 55%);
border-radius: 16px;
}

.prs .mentions-inner {
position: relative;
z-index: 1;
}

.prs .mentions-head {
margin-bottom: 40px;
}

.prs .mentions-head h2 {
font-size: 50px;
line-height: 1.2;
color: #EEE1D6;
margin: 0 0 16px;
font-style: italic;
}

.prs .mentions-head p {
font-size: 20px;
line-height: 1.5;
color: #DDCCBE;
max-width: 640px;
margin: 0;
}

.prs .mentions-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
}

.prs .mention-card {
background: rgba(13, 15, 26, 0.7);
border: 1px solid rgba(221, 204, 190, 0.1);
border-radius: 10px;
padding: 40px;
position: relative;
transition: background 0.2s cubic-bezier(0.0, 0, 0.2, 1), border-color 0.2s cubic-bezier(0.0, 0, 0.2, 1);
}

.prs .mention-card:hover {
background: rgba(78, 96, 170, 0.08);
border-color: rgba(78, 96, 170, 0.3);
}

.prs .mention-card::before {
content: '';
display: block;
width: 32px;
height: 3px;
background: #4E60AA;
border-radius: 6px;
margin-bottom: 16px;
}

.prs .mention-card blockquote {
margin: 0 0 16px;
padding: 0;
font-size: 15px;
line-height: 1.75;
color: #DDCCBE;
font-style: italic;
}

.prs .mention-source {
font-size: 15px;
color: rgba(221, 204, 190, 0.5);
line-height: 1.5;
}

.prs .mention-source strong {
color: #EEE1D6;
display: block;
}

.prs .mention-wide {
grid-column: 1 / 3;
display: flex;
flex-direction: row;
align-items: center;
gap: 40px;
background: rgba(78, 96, 170, 0.06);
}

.prs .mention-wide blockquote {
flex: 1;
font-size: 20px;
}

.prs .mention-wide .mention-source {
min-width: 180px;
text-align: right;
}

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

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

.prs .cell-head {
animation: fadeUp 0.28s cubic-bezier(0.0, 0, 0.2, 1) both;
}

.prs .cell-meta {
animation: fadeUp 0.28s 0.08s cubic-bezier(0.0, 0, 0.2, 1) both;
}

.prs .cell-contact {
animation: fadeUp 0.28s 0.14s cubic-bezier(0.0, 0, 0.2, 1) both;
}

@media (max-width: 1100px) {
.prs .bento-grid {
grid-template-columns: 1fr 1fr;
grid-template-rows: auto;
}

.prs .cell-img {
grid-column: 1 / 3;
grid-row: 1 / 2;
min-height: 300px;
}

.prs .cell-head {
grid-column: 1 / 3;
grid-row: 2 / 3;
}

.prs .cell-meta {
grid-column: 1 / 2;
grid-row: 3 / 4;
}

.prs .cell-contact {
grid-column: 2 / 3;
grid-row: 3 / 4;
}

.prs .kit-grid {
grid-template-columns: 1fr 1fr;
}
}

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

.prs .cell-img {
grid-column: 1;
grid-row: auto;
min-height: 240px;
}

.prs .cell-head {
grid-column: 1;
grid-row: auto;
}

.prs .cell-head h1 {
font-size: 50px;
}

.prs .cell-meta,
.prs .cell-contact {
grid-column: 1;
grid-row: auto;
}

.prs .media-area {
padding: 40px 16px;
}

.prs .media-top {
flex-direction: column;
align-items: flex-start;
}

.prs .kit-grid {
grid-template-columns: 1fr;
}

.prs .mentions-area {
padding: 40px 16px;
}

.prs .mentions-layout {
grid-template-columns: 1fr;
}

.prs .mention-wide {
grid-column: 1;
flex-direction: column;
align-items: flex-start;
}

.prs .mention-wide .mention-source {
text-align: left;
}

.prs .divider-geo {
padding: 0 16px;
}

.prs .media-top h2 {
font-size: 50px;
}
}

.successPage {
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 80px 16px;
background: #111520;
}

.successPage .successCard {
max-width: 560px;
width: 100%;
background: #161b2e;
border-radius: 16px;
padding: 80px 40px;
text-align: center;
box-shadow: -1px 8px 36px -1px rgba(78, 96, 170, 0.10);
}

.successPage .successIcon {
width: 64px;
height: 64px;
margin: 0 auto 40px;
border-radius: 44px;
background: linear-gradient(to top, rgba(78, 96, 170, 0.18), transparent);
border: 1.5px solid rgba(78, 96, 170, 0.35);
display: flex;
align-items: center;
justify-content: center;
}

.successPage .successIcon svg {
display: block;
}

.successPage .successHeading {
font-size: 50px;
line-height: 1.2;
color: #DDCCBE;
font-style: italic;
margin: 0 0 16px;
}

.successPage .successSub {
font-size: 20px;
line-height: 1.5;
color: #a89f96;
margin: 0 0 40px;
}

.successPage .successNote {
font-size: 15px;
line-height: 1.75;
color: #7a7470;
margin: 0 0 40px;
}

.successPage .successBtn {
display: inline-block;
position: relative;
overflow: hidden;
padding: 16px 40px;
border-radius: 10px;
background: #4E60AA;
color: #EEE1D6;
font-size: 15px;
line-height: 1.2;
text-decoration: none;
border: none;
cursor: pointer;
transition: color 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.successPage .successBtn::after {
content: '';
position: absolute;
inset: 0;
background: #3a4a88;
transform: translateX(100%);
transition: transform 0.25s cubic-bezier(0.0, 0, 0.2, 1);
z-index: 0;
}

.successPage .successBtn:hover::after {
transform: translateX(0);
}

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

.successPage .successDivider {
width: 40px;
height: 1px;
background: rgba(78, 96, 170, 0.3);
margin: 40px auto;
}

.successPage .successMeta {
font-size: 15px;
line-height: 1.75;
color: #5a5560;
}

.successPage .successMeta a {
color: #DDCCBE;
text-decoration: none;
border-bottom: 1px solid transparent;
transition: border-color 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}

.successPage .successMeta a:hover {
border-bottom-color: #DDCCBE;
}