@import url('https://fonts.googleapis.com/css2?family=Source+Sans+Pro:ital,wght@0,300;1,300;0,400;1,400;0,700;1,700&display=swap');

html {
box-sizing: border-box;
}

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

body {
margin: 0;
padding: 0;
overflow-x: hidden;
min-height: 100vh;
font-family: 'Source Sans Pro', sans-serif;
background: #FDFCF8;
color: #134150;
}

.topbar {
background: #134150;
padding: 8px 36px;
display: flex;
justify-content: center;
align-items: center;
gap: 36px;
}

.topbar-contact {
display: flex;
align-items: center;
gap: 36px;
}

.topbar-item {
display: flex;
align-items: center;
gap: 8px;
color: #FDFCF8;
font-size: 15px;
line-height: 1.4;
text-decoration: none;
transition: color 0.45s ease-in-out;
}

.topbar-item:hover {
color: #74AD88;
}

.topbar-icon {
width: 16px;
height: 16px;
flex-shrink: 0;
}

.headplate {
background: linear-gradient(160deg, #FDFCF8 60%, rgba(116, 173, 136, 0.12) 100%);
border-bottom: 1px solid rgba(19, 65, 80, 0.1);
box-shadow: 0 1px 4px 0 rgba(19, 65, 80, 0.06);
}

.branddeck {
display: flex;
flex-direction: column;
align-items: center;
padding: 36px 36px 0;
max-width: 1280px;
margin: 0 auto;
}

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

.logoframe {
border-top: 2px solid #134150;
border-bottom: 2px solid #134150;
padding: 16px 36px;
border-radius: 10px 0 10px 0;
background: #FDFCF8;
box-shadow: 0 5px 22px 0 rgba(19, 65, 80, 0.08), inset 0 4px 8px 0 rgba(19, 65, 80, 0.04);
display: flex;
align-items: center;
justify-content: center;
}

.logoframe img {
width: 72px;
height: 72px;
object-fit: contain;
display: block;
}

.brandname {
font-size: 31px;
font-weight: 700;
line-height: 1.15;
letter-spacing: -0.02em;
color: #134150;
text-align: center;
}

.brandtag {
font-size: 15px;
font-weight: 300;
line-height: 1.4;
color: #74AD88;
letter-spacing: 0.06em;
text-transform: uppercase;
text-align: center;
margin-top: 4px;
}

.navpod {
width: 100%;
max-width: 1280px;
margin: 36px auto 0;
border-top: 1px solid rgba(19, 65, 80, 0.12);
}

.navlist {
list-style: none;
margin: 0;
padding: 0;
display: flex;
justify-content: center;
flex-wrap: wrap;
gap: 4px;
}

.navlist li {
position: relative;
}

.navlist li a {
display: block;
padding: 16px 36px;
font-size: 15px;
font-weight: 400;
line-height: 1.4;
color: #134150;
text-decoration: none;
letter-spacing: 0.01em;
position: relative;
transition: color 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.navlist li a::after {
content: '';
position: absolute;
bottom: 0;
left: 36px;
right: 36px;
height: 2px;
background: #74AD88;
transform: scaleX(0);
transform-origin: left center;
transition: transform 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.navlist li a:hover {
color: #74AD88;
clip-path: polygon(4px 0, 100% 0, calc(100% - 4px) 100%, 0 100%);
}

.navlist li a:hover::after {
transform: scaleX(1);
}

.navlist li a:focus {
outline: none;
filter: invert(1);
}

@media (max-width: 768px) {
.topbar {
flex-direction: column;
gap: 8px;
padding: 8px 16px;
}

.topbar-contact {
flex-direction: column;
gap: 8px;
}

.branddeck {
padding: 36px 16px 0;
}

.navlist li a {
padding: 16px 16px;
}
}

@media (max-width: 320px) {
.brandname {
font-size: 23px;
}

.navlist li a {
padding: 16px 8px;
font-size: 15px;
}
}

.footplate {
background: #134150;
padding: 72px 36px 36px;
}

.footcard {
max-width: 1280px;
margin: 0 auto;
background: rgba(253, 252, 248, 0.05);
border-radius: 10px;
padding: 36px;
box-shadow: 0 8px 40px 0 rgba(19, 65, 80, 0.13);
display: flex;
flex-direction: column;
align-items: center;
gap: 36px;
}

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

.footlogoframe {
border-top: 2px solid rgba(116, 173, 136, 0.6);
border-bottom: 2px solid rgba(116, 173, 136, 0.6);
padding: 16px 36px;
border-radius: 0 10px 0 10px;
background: rgba(253, 252, 248, 0.08);
box-shadow: 0 5px 22px 0 rgba(19, 65, 80, 0.08);
display: flex;
align-items: center;
justify-content: center;
}

.footlogoframe img {
width: 72px;
height: 72px;
object-fit: contain;
display: block;
}

.footbrand {
font-size: 23px;
font-weight: 700;
line-height: 1.15;
color: #FDFCF8;
letter-spacing: -0.01em;
text-align: center;
}

.footaddr {
font-size: 15px;
font-weight: 300;
line-height: 1.65;
color: rgba(253, 252, 248, 0.7);
text-align: center;
max-width: 400px;
}

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

.footlinks a {
font-size: 15px;
line-height: 1.4;
color: #74AD88;
text-decoration: none;
transition: color 0.5s ease-in-out;
}

.footlinks a:hover {
color: #FDFCF8;
}

.footlinks a:focus {
outline: none;
filter: invert(1);
}

.footdivider {
width: 100%;
height: 1px;
background: rgba(116, 173, 136, 0.2);
}

.footcopy {
font-size: 15px;
font-weight: 300;
line-height: 1.4;
color: rgba(253, 252, 248, 0.45);
text-align: center;
}

@media (max-width: 768px) {
.footplate {
padding: 36px 16px 36px;
}

.footcard {
padding: 36px 16px;
}
}

.consentpopup {
position: fixed;
top: 36px;
left: 0;
right: 0;
margin: 0 auto;
width: 360px;
max-width: calc(100vw - 72px);
background: #FDFCF8;
border-radius: 10px;
box-shadow: 0 8px 40px 0 rgba(19, 65, 80, 0.13), 0 5px 22px 0 rgba(19, 65, 80, 0.08);
z-index: 8000;
padding: 36px;
display: none;
border-top: 3px solid #74AD88;
transform: translateX(-120%);
transition: transform 0.32s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.consentpopup.visible {
transform: translateX(0);
}

.consenttext {
font-size: 15px;
line-height: 1.65;
color: #134150;
margin-bottom: 16px;
}

.consenttext strong {
font-weight: 700;
}

.consentuses {
list-style: none;
margin: 8px 0 16px;
padding: 0;
display: flex;
flex-direction: column;
gap: 4px;
}

.consentuses li {
font-size: 15px;
line-height: 1.4;
color: #134150;
padding-left: 16px;
position: relative;
}

.consentuses li::before {
content: '';
position: absolute;
left: 0;
top: 8px;
width: 6px;
height: 6px;
border-radius: 0px;
background: #74AD88;
}

.consentbtns {
display: flex;
gap: 8px;
}

.consentbtn {
flex: 1;
padding: 16px 8px;
font-family: 'Source Sans Pro', sans-serif;
font-size: 15px;
font-weight: 700;
line-height: 1.15;
border-radius: 10px;
cursor: pointer;
border: 2px solid #134150;
background: #FDFCF8;
color: #134150;
position: relative;
overflow: hidden;
transition: color 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94), border-color 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.consentbtn::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 0;
background: #134150;
transition: height 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
z-index: 0;
}

.consentbtn:hover::before {
height: 100%;
}

.consentbtn:hover {
color: #FDFCF8;
}

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

.consentbtn:focus {
outline: none;
filter: invert(1);
}

.consentbtn.accept {
background: #134150;
color: #FDFCF8;
border-color: #134150;
}

.consentbtn.accept::before {
background: #74AD88;
}

.consentbtn.accept:hover {
color: #134150;
border-color: #74AD88;
}

.agreement-content {
max-width: 1280px;
margin: 0 auto;
padding: 72px 36px;
color: #134150;
background: #FDFCF8;
}

.agreement-content h1 {
font-size: 58px;
line-height: 1.15;
letter-spacing: -0.02em;
margin-bottom: 36px;
margin-top: 0;
color: #134150;
}

.agreement-content h2 {
font-size: 43px;
line-height: 1.15;
letter-spacing: -0.015em;
margin-top: 72px;
margin-bottom: 16px;
color: #134150;
}

.agreement-content h3 {
font-size: 31px;
line-height: 1.4;
letter-spacing: -0.01em;
margin-top: 36px;
margin-bottom: 16px;
color: #134150;
}

.agreement-content h4 {
font-size: 23px;
line-height: 1.4;
letter-spacing: -0.005em;
margin-top: 36px;
margin-bottom: 8px;
color: #134150;
}

.agreement-content h5 {
font-size: 19px;
line-height: 1.4;
letter-spacing: 0;
margin-top: 16px;
margin-bottom: 8px;
color: #134150;
}

.agreement-content h6 {
font-size: 15px;
line-height: 1.4;
letter-spacing: 0.02em;
text-transform: uppercase;
margin-top: 16px;
margin-bottom: 8px;
color: #74AD88;
}

.agreement-content p {
font-size: 19px;
line-height: 1.85;
margin-top: 0;
margin-bottom: 16px;
color: #134150;
}

.agreement-content strong,
.agreement-content b {
font-weight: 700;
color: #134150;
}

.agreement-content em,
.agreement-content i {
font-style: italic;
color: #134150;
}

.agreement-content a {
color: #74AD88;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
transition: color 0.45s ease-in-out, text-decoration-color 0.2s ease-in-out;
}

.agreement-content a:hover {
color: #134150;
text-decoration-color: #134150;
}

.agreement-content div {
margin-bottom: 16px;
}

@media (max-width: 1024px) {
.agreement-content {
padding: 72px 36px;
}

.agreement-content h1 {
font-size: 43px;
}

.agreement-content h2 {
font-size: 31px;
}

.agreement-content h3 {
font-size: 23px;
}
}

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

.agreement-content h1 {
font-size: 31px;
margin-bottom: 16px;
}

.agreement-content h2 {
font-size: 23px;
margin-top: 36px;
}

.agreement-content h3 {
font-size: 19px;
margin-top: 16px;
}

.agreement-content h4,
.agreement-content h5,
.agreement-content h6 {
font-size: 15px;
}

.agreement-content p {
font-size: 15px;
line-height: 1.65;
}
}

@media (max-width: 320px) {
.agreement-content {
padding: 16px 8px;
}

.agreement-content h1 {
font-size: 23px;
}

.agreement-content h2 {
font-size: 19px;
}

.agreement-content h3,
.agreement-content h4,
.agreement-content h5,
.agreement-content h6 {
font-size: 15px;
}
}

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

.aboutus .band {
display: none;
}

.aboutus .titlestrip {
background: linear-gradient(247deg, #134150 0%, #1d5c70 60%, #74AD88 100%);
padding: 36px 0;
position: relative;
}

.aboutus .titlestrip::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(247deg, rgba(19, 65, 80, 0.95) 0%, rgba(116, 173, 136, 0.15) 100%);
pointer-events: none;
}

.aboutus .titlestrip .tscorner {
position: absolute;
top: 16px;
right: 16px;
width: 60px;
height: 60px;
pointer-events: none;
}

.aboutus .titlestrip .tscorner svg {
width: 100%;
height: 100%;
}

.aboutus .titlestrip .tscornerbottom {
position: absolute;
bottom: 16px;
left: 16px;
width: 40px;
height: 40px;
pointer-events: none;
}

.aboutus .titlestrip .tscornerbottom svg {
width: 100%;
height: 100%;
}

.aboutus .tswrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 36px;
display: flex;
flex-direction: row;
align-items: center;
gap: 36px;
position: relative;
z-index: 1;
}

.aboutus .tstext {
flex: 1;
min-width: 0;
}

.aboutus .tskicker {
display: inline-block;
font-size: 15px;
line-height: 1.4;
color: #74AD88;
letter-spacing: 0.08em;
text-transform: uppercase;
margin-bottom: 8px;
}

.aboutus .tsh1 {
font-size: 43px;
line-height: 1.15;
color: #FDFCF8;
letter-spacing: -0.02em;
margin: 0 0 16px 0;
}

.aboutus .tsh1 .kwmark {
text-decoration: underline;
text-decoration-color: #74AD88;
text-underline-offset: 6px;
text-decoration-thickness: 2px;
}

.aboutus .tsdesc {
font-size: 19px;
line-height: 1.65;
color: rgba(253, 252, 248, 0.82);
margin: 0;
}

.aboutus .tsimgwrap {
flex-shrink: 0;
width: 280px;
height: 200px;
border-radius: 10px;
overflow: hidden;
position: relative;
}

.aboutus .tsimgwrap::after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 50%;
height: 50%;
background: radial-gradient(ellipse at 0% 0%, rgba(116, 173, 136, 0.55) 0%, transparent 70%);
pointer-events: none;
}

.aboutus .tsimgwrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.aboutus .tsimgwrap:hover img {
transform: scale(1.06);
}

.aboutus .tsimgwrap .imgborder {
position: absolute;
inset: 0;
border: 2px solid transparent;
border-radius: 10px;
transition: border-color 0.45s ease-in-out;
pointer-events: none;
}

.aboutus .tsimgwrap:hover .imgborder {
border-color: #74AD88;
}

.aboutus .aboutdetail {
background: #FDFCF8;
padding: 72px 0;
position: relative;
}

.aboutus .aboutdetail::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(247deg, #134150 0%, transparent 38%);
opacity: 0.04;
pointer-events: none;
}

.aboutus .adwrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 36px;
position: relative;
z-index: 1;
}

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

.aboutus .adleft {
display: flex;
flex-direction: column;
gap: 36px;
}

.aboutus .adright {
display: flex;
flex-direction: column;
gap: 36px;
}

.aboutus .adheadblock {
display: flex;
flex-direction: column;
gap: 8px;
}

.aboutus .adheadlabel {
font-size: 15px;
line-height: 1.4;
color: #74AD88;
letter-spacing: 0.06em;
text-transform: uppercase;
}

.aboutus .adh2 {
font-size: 31px;
line-height: 1.15;
color: #134150;
letter-spacing: -0.015em;
margin: 0;
display: inline-block;
position: relative;
}

.aboutus .adh2wrap {
display: inline-block;
position: relative;
}

.aboutus .adh2wrap::after {
content: '';
display: block;
width: 100%;
height: 3px;
background: linear-gradient(247deg, #134150, #74AD88);
margin-top: 8px;
border-radius: 0;
}

.aboutus .adpara {
font-size: 15px;
line-height: 1.65;
color: #134150;
margin: 0;
}

.aboutus .adpara .pnum {
font-size: 15px;
color: #74AD88;
font-weight: 700;
margin-right: 8px;
}

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

.aboutus .adimgwrap {
width: 100%;
height: 220px;
border-radius: 10px;
overflow: hidden;
position: relative;
box-shadow: 0 5px 22px 0 rgba(19, 65, 80, 0.08);
}

.aboutus .adimgwrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.aboutus .adimgwrap:hover img {
transform: scale(1.06);
}

.aboutus .adimgwrap .imgborder {
position: absolute;
inset: 0;
border: 2px solid transparent;
border-radius: 10px;
transition: border-color 0.45s ease-in-out;
pointer-events: none;
}

.aboutus .adimgwrap:hover .imgborder {
border-color: #74AD88;
}

.aboutus .admetrics {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
}

.aboutus .admetric {
background: linear-gradient(247deg, rgba(19, 65, 80, 0.06) 0%, transparent 100%);
border-radius: 10px;
padding: 16px;
display: flex;
flex-direction: column;
gap: 4px;
box-shadow: 0 1px 4px 0 rgba(19, 65, 80, 0.06);
transition: box-shadow 0.45s ease-in-out, clip-path 0.45s ease-in-out;
clip-path: inset(0px 0px 0px 0px round 10px);
}

.aboutus .admetric:hover {
box-shadow: 0 5px 22px 0 rgba(19, 65, 80, 0.08);
clip-path: inset(-1px -1px -1px -1px round 10px);
}

.aboutus .admetricnum {
font-size: 43px;
line-height: 1.15;
letter-spacing: -0.02em;
background: linear-gradient(247deg, #134150, #74AD88);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
font-weight: 700;
}

.aboutus .admetriclabel {
font-size: 15px;
line-height: 1.4;
color: #134150;
}

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

.aboutus .adteamh {
font-size: 23px;
line-height: 1.15;
color: #134150;
letter-spacing: -0.01em;
margin: 0;
display: inline-block;
background: linear-gradient(247deg, rgba(116, 173, 136, 0.22) 0%, transparent 100%);
padding: 4px 8px;
border-radius: 0;
}

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

.aboutus .adteamitem {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
padding: 16px;
border-radius: 10px;
background: #FDFCF8;
box-shadow: 0 1px 4px 0 rgba(19, 65, 80, 0.06);
transition: box-shadow 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), clip-path 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
clip-path: inset(0px 0px 0px 0px round 10px);
}

.aboutus .adteamitem:hover {
box-shadow: 0 8px 40px 0 rgba(19, 65, 80, 0.13);
clip-path: inset(-2px -2px -2px -2px round 10px);
}

.aboutus .adteamavatar {
width: 44px;
height: 44px;
border-radius: 10px;
background: linear-gradient(247deg, #134150, #74AD88);
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

.aboutus .adteamavatar svg {
width: 22px;
height: 22px;
}

.aboutus .adteaminfo {
display: flex;
flex-direction: column;
gap: 4px;
min-width: 0;
}

.aboutus .adteamname {
font-size: 15px;
line-height: 1.4;
color: #134150;
font-weight: 700;
}

.aboutus .adteamrole {
font-size: 15px;
line-height: 1.4;
color: rgba(19, 65, 80, 0.65);
}

.aboutus .adimgwrap2 {
width: 100%;
height: 200px;
border-radius: 10px;
overflow: hidden;
position: relative;
box-shadow: 0 5px 22px 0 rgba(116, 173, 136, 0.08);
}

.aboutus .adimgwrap2 img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.aboutus .adimgwrap2:hover img {
transform: scale(1.06);
}

.aboutus .adimgwrap2 .imgborder {
position: absolute;
inset: 0;
border: 2px solid transparent;
border-radius: 10px;
transition: border-color 0.5s ease-in-out;
pointer-events: none;
}

.aboutus .adimgwrap2:hover .imgborder {
border-color: #74AD88;
}

.aboutus .advaluesblock {
display: flex;
flex-direction: column;
gap: 8px;
}

.aboutus .advaluesh {
font-size: 23px;
line-height: 1.15;
color: #134150;
letter-spacing: -0.01em;
margin: 0;
display: inline-block;
background: linear-gradient(247deg, rgba(19, 65, 80, 0.09) 0%, transparent 100%);
padding: 4px 8px;
border-radius: 0;
}

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

.aboutus .advalueitem {
display: flex;
flex-direction: row;
gap: 8px;
align-items: flex-start;
font-size: 15px;
line-height: 1.65;
color: #134150;
}

.aboutus .advaluedot {
width: 8px;
height: 8px;
border-radius: 0;
background: #74AD88;
flex-shrink: 0;
margin-top: 6px;
}

.aboutus .adcontactrow {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
}

.aboutus .adcontactitem {
display: flex;
flex-direction: row;
gap: 8px;
align-items: center;
font-size: 15px;
line-height: 1.4;
color: #134150;
text-decoration: none;
padding: 8px 16px;
border-radius: 10px;
border: 2px solid #134150;
transition: background 0.45s ease-in-out, color 0.45s ease-in-out, border-color 0.45s ease-in-out;
position: relative;
overflow: hidden;
}

.aboutus .adcontactitem::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 0%;
background: #134150;
transition: height 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
z-index: 0;
}

.aboutus .adcontactitem:hover::before {
height: 100%;
}

.aboutus .adcontactitem:hover {
color: #FDFCF8;
border-color: #134150;
}

.aboutus .adcontactitem span {
position: relative;
z-index: 1;
}

.aboutus .adcontactitem svg {
position: relative;
z-index: 1;
flex-shrink: 0;
}

@keyframes gradshift {
0% {
background-position: 0% 50%;
}

50% {
background-position: 100% 50%;
}

100% {
background-position: 0% 50%;
}
}

@media (max-width: 1024px) {
.aboutus .tswrap {
padding: 0 36px;
gap: 36px;
}

.aboutus .tsimgwrap {
width: 220px;
height: 160px;
}

.aboutus .adgrid {
grid-template-columns: 1fr;
}

.aboutus .adright {
order: -1;
}
}

@media (max-width: 768px) {
.aboutus .tswrap {
flex-direction: column;
padding: 0 16px;
gap: 16px;
}

.aboutus .tsimgwrap {
width: 100%;
height: 180px;
}

.aboutus .tsh1 {
font-size: 31px;
}

.aboutus .adwrap {
padding: 0 16px;
}

.aboutus .aboutdetail {
padding: 36px 0;
}

.aboutus .admetrics {
grid-template-columns: 1fr 1fr;
}

.aboutus .adcontactrow {
flex-direction: column;
}
}

@media (max-width: 320px) {
.aboutus .tsh1 {
font-size: 23px;
}

.aboutus .admetrics {
grid-template-columns: 1fr;
}

.aboutus .adteamitem {
flex-direction: column;
}
}

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

.crpg .split-top {
display: grid;
grid-template-columns: 1fr 1fr;
min-height: 600px;
position: relative;
}

.crpg .split-left {
background: #134150;
padding: 72px 36px 72px 72px;
display: flex;
flex-direction: column;
justify-content: flex-end;
position: relative;
overflow: hidden;
}

.crpg .split-left::before {
content: '';
position: absolute;
top: -80px;
left: -80px;
width: 400px;
height: 400px;
background: radial-gradient(ellipse at 30% 30%, rgba(116, 173, 136, 0.18) 0%, transparent 70%);
pointer-events: none;
animation: bgshift 8s ease-in-out infinite alternate;
}

@keyframes bgshift {
0% {
transform: translate(0, 0);
}

100% {
transform: translate(40px, 30px);
}
}

.crpg .dot-path {
display: flex;
flex-direction: row;
gap: 8px;
margin-bottom: 36px;
align-items: center;
}

.crpg .dot-path span {
width: 6px;
height: 6px;
border-radius: 0px;
background: #74AD88;
display: block;
opacity: 0.5;
}

.crpg .dot-path span:nth-child(2) {
opacity: 0.7;
width: 8px;
height: 8px;
}

.crpg .dot-path span:nth-child(4) {
opacity: 0.4;
}

.crpg .dot-path span:nth-child(6) {
opacity: 0.6;
width: 10px;
height: 10px;
}

.crpg .dot-path span:nth-child(8) {
opacity: 0.3;
}

.crpg .pre-label {
font-size: 15px;
line-height: 1.4;
color: #74AD88;
letter-spacing: 0.08em;
margin-bottom: 16px;
text-transform: uppercase;
}

.crpg .split-heading {
font-size: 58px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #FDFCF8;
margin-bottom: 36px;
background: linear-gradient(247deg, #74AD88, transparent);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.crpg .split-body {
font-size: 19px;
line-height: 1.65;
color: rgba(253, 252, 248, 0.78);
max-width: 420px;
}

.crpg .split-body p {
margin-bottom: 16px;
}

.crpg .split-body p:last-child {
margin-bottom: 0;
}

.crpg .split-right {
background: #FDFCF8;
position: relative;
display: flex;
align-items: stretch;
}

.crpg .img-wrap {
width: 100%;
height: 100%;
min-height: 500px;
overflow: hidden;
position: relative;
}

.crpg .img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.crpg .img-wrap:hover img {
transform: scale(1.04);
}

.crpg .img-wrap::after {
content: '';
position: absolute;
inset: 0;
border: 3px solid rgba(116, 173, 136, 0.25);
pointer-events: none;
}

.crpg .img-wrap::before {
content: '';
position: absolute;
inset: 8px;
border: 1px solid rgba(116, 173, 136, 0.15);
z-index: 1;
pointer-events: none;
}

.crpg .roles-band {
background: #0d2e3a;
padding: 72px 0;
}

.crpg .roles-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 36px;
}

.crpg .band-top {
display: flex;
flex-direction: row;
align-items: flex-start;
justify-content: space-between;
gap: 36px;
margin-bottom: 72px;
}

.crpg .band-label {
display: inline-block;
background: #74AD88;
color: #134150;
font-size: 15px;
line-height: 1.4;
padding: 4px 16px;
border-radius: 0px;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
margin-bottom: 16px;
}

.crpg .band-heading {
font-size: 43px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #FDFCF8;
max-width: 480px;
}

.crpg .band-desc {
font-size: 19px;
line-height: 1.65;
color: rgba(253, 252, 248, 0.7);
max-width: 380px;
padding-top: 36px;
}

.crpg .band-desc p {
margin-bottom: 16px;
}

.crpg .band-desc p:last-child {
margin-bottom: 0;
}

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

.crpg .role-card {
background: rgba(253, 252, 248, 0.04);
border: 1px solid rgba(116, 173, 136, 0.18);
border-radius: 10px;
padding: 36px;
display: flex;
flex-direction: column;
gap: 16px;
position: relative;
overflow: hidden;
transition: background 0.45s ease-in-out, border-color 0.45s ease-in-out;
clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.crpg .role-card:hover {
background: rgba(116, 173, 136, 0.09);
border-color: rgba(116, 173, 136, 0.45);
clip-path: polygon(0 0, 98% 0, 100% 2%, 100% 100%, 0 100%);
}

.crpg .role-icon {
width: 48px;
height: 48px;
background: #134150;
border-radius: 10px;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 8px 40px 0 rgba(19, 65, 80, 0.13);
flex-shrink: 0;
}

.crpg .role-icon svg {
width: 24px;
height: 24px;
}

.crpg .role-title {
font-size: 23px;
line-height: 1.4;
color: #FDFCF8;
letter-spacing: -0.01em;
}

.crpg .role-type {
font-size: 15px;
line-height: 1.4;
color: #74AD88;
letter-spacing: 0.04em;
}

.crpg .role-detail {
font-size: 15px;
line-height: 1.65;
color: rgba(253, 252, 248, 0.62);
max-height: 0;
overflow: hidden;
transition: max-height 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.45s ease-in-out;
opacity: 0;
}

.crpg .role-card:hover .role-detail {
max-height: 200px;
opacity: 1;
}

.crpg .role-loc {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 15px;
line-height: 1.4;
color: rgba(253, 252, 248, 0.5);
margin-top: auto;
}

.crpg .role-loc svg {
flex-shrink: 0;
}

.crpg .apply-row {
margin-top: 16px;
}

.crpg .apply-btn {
display: inline-block;
font-size: 15px;
line-height: 1.4;
color: #74AD88;
border: 2px solid #74AD88;
border-radius: 0px;
padding: 8px 16px;
text-decoration: none;
background: transparent;
position: relative;
overflow: hidden;
transition: color 0.45s ease-in-out;
z-index: 0;
}

.crpg .apply-btn::after {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 0%;
background: #74AD88;
z-index: -1;
transition: height 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.crpg .apply-btn:hover {
color: #134150;
}

.crpg .apply-btn:hover::after {
height: 100%;
}

.crpg .img-secondary-wrap {
position: relative;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 5px 22px 0 rgba(19, 65, 80, 0.08);
margin-top: 36px;
}

.crpg .img-secondary-wrap img {
width: 100%;
height: 220px;
object-fit: cover;
display: block;
transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.crpg .img-secondary-wrap:hover img {
transform: scale(1.04);
}

.crpg .img-secondary-wrap::before {
content: '';
position: absolute;
inset: 6px;
border: 1px solid rgba(253, 252, 248, 0.15);
z-index: 1;
pointer-events: none;
border-radius: 10px;
}

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

.crpg .split-left {
padding: 72px 36px;
}

.crpg .split-heading {
font-size: 43px;
}

.crpg .img-wrap {
min-height: 320px;
}

.crpg .roles-grid {
grid-template-columns: repeat(2, 1fr);
}

.crpg .band-top {
flex-direction: column;
}
}

@media (max-width: 768px) {
.crpg .split-left {
padding: 36px 16px;
}

.crpg .split-heading {
font-size: 31px;
}

.crpg .roles-inner {
padding: 0 16px;
}

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

.crpg .band-heading {
font-size: 31px;
}

.crpg .roles-band {
padding: 36px 0;
}

.crpg .band-top {
margin-bottom: 36px;
}
}

@media (max-width: 320px) {
.crpg .split-heading {
font-size: 23px;
}

.crpg .band-heading {
font-size: 23px;
}

.crpg .role-card {
padding: 16px;
}
}

.studproj {
background: #FDFCF8;
overflow-x: clip;
}

.studproj .projlist {
max-width: 1280px;
margin: 0 auto;
padding: 72px 36px;
}

.studproj .projlist .toprow {
display: flex;
flex-direction: row;
gap: 36px;
align-items: flex-start;
margin-bottom: 72px;
}

.studproj .projlist .sidebar {
flex: 0 0 calc(33.333% - 18px);
position: sticky;
top: 36px;
}

.studproj .projlist .sidebar .labelstrip {
display: inline-block;
background: #134150;
padding: 4px 16px;
margin-bottom: 16px;
}

.studproj .projlist .sidebar .labelstrip h1 {
font-size: 15px;
line-height: 1.4;
color: #FDFCF8;
letter-spacing: 0.08em;
text-transform: uppercase;
margin: 0;
}

.studproj .projlist .sidebar h2 {
font-size: 43px;
line-height: 1.15;
color: #134150;
letter-spacing: -0.02em;
margin: 0 0 16px 0;
}

.studproj .projlist .sidebar .gradtext {
background: linear-gradient(247deg, #134150, transparent);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.studproj .projlist .sidebar .desc {
font-size: 15px;
line-height: 1.65;
color: #134150;
margin: 0 0 16px 0;
opacity: 0.85;
}

.studproj .projlist .sidebar .statrow {
display: flex;
flex-direction: row;
gap: 16px;
margin-top: 36px;
flex-wrap: wrap;
}

.studproj .projlist .sidebar .stat {
border: 2px solid #74AD88;
border-radius: 10px;
padding: 16px;
flex: 1 1 calc(50% - 8px);
min-width: 80px;
box-shadow: 0 1px 4px 0 rgba(19, 65, 80, 0.06);
}

.studproj .projlist .sidebar .stat .num {
font-size: 31px;
line-height: 1.15;
color: #134150;
letter-spacing: -0.02em;
display: block;
}

.studproj .projlist .sidebar .stat .lbl {
font-size: 15px;
line-height: 1.4;
color: #134150;
opacity: 0.7;
}

.studproj .projlist .grid {
flex: 1 1 0;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
}

.studproj .projlist .grid .card {
border: 2px solid rgba(19, 65, 80, 0.12);
border-radius: 10px;
padding: 36px 16px 16px 16px;
background: #FDFCF8;
box-shadow: 0 1px 4px 0 rgba(19, 65, 80, 0.06);
transition: box-shadow 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94), border-color 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94), clip-path 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
clip-path: inset(0px round 10px);
position: relative;
display: flex;
flex-direction: column;
gap: 8px;
}

.studproj .projlist .grid .card:hover {
box-shadow: 0 8px 40px 0 rgba(19, 65, 80, 0.13);
border-color: #74AD88;
clip-path: inset(-2px round 10px);
}

.studproj .projlist .grid .card .tag {
font-size: 15px;
line-height: 1.4;
color: #74AD88;
letter-spacing: 0.06em;
text-transform: uppercase;
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
}

.studproj .projlist .grid .card .tag::before {
content: '';
display: inline-block;
width: 6px;
height: 6px;
background: #74AD88;
transform: rotate(45deg);
flex-shrink: 0;
}

.studproj .projlist .grid .card h3 {
font-size: 19px;
line-height: 1.4;
color: #134150;
letter-spacing: -0.01em;
margin: 0;
}

.studproj .projlist .grid .card .author {
font-size: 15px;
line-height: 1.4;
color: #134150;
opacity: 0.6;
margin: 0;
}

.studproj .projlist .grid .card .body {
font-size: 15px;
line-height: 1.65;
color: #134150;
opacity: 0.82;
margin: 0;
flex: 1;
}

.studproj .projlist .grid .card .para {
counter-increment: para;
display: flex;
flex-direction: row;
gap: 8px;
align-items: flex-start;
}

.studproj .projlist .grid .card .para .pnum {
font-size: 15px;
line-height: 1.65;
color: #74AD88;
flex-shrink: 0;
font-variant-numeric: tabular-nums;
}

.studproj .projlist .grid .card .rating {
margin-top: 4px;
}

.studproj .projlist .grid .card .outcome {
background: rgba(116, 173, 136, 0.1);
border-radius: 0px;
padding: 8px 16px;
font-size: 15px;
line-height: 1.4;
color: #134150;
border-top: 2px dashed rgba(116, 173, 136, 0.5);
margin-top: 4px;
}

.studproj .projlist .grid .card.featured {
grid-column: span 2;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 36px;
padding: 36px;
background: linear-gradient(247deg, rgba(19, 65, 80, 0.04), transparent);
}

.studproj .projlist .grid .card.featured .featcol {
display: flex;
flex-direction: column;
gap: 8px;
}

.studproj .projlist .grid .card.featured .featstats {
display: flex;
flex-direction: column;
gap: 16px;
justify-content: center;
}

.studproj .projlist .grid .card.featured .featstats .fstat {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
border-radius: 10px;
padding: 16px;
background: #FDFCF8;
box-shadow: 0 5px 22px 0 rgba(19, 65, 80, 0.08);
}

.studproj .projlist .grid .card.featured .featstats .fstat .fnum {
font-size: 31px;
line-height: 1.15;
color: #134150;
letter-spacing: -0.02em;
flex-shrink: 0;
min-width: 60px;
}

.studproj .projlist .grid .card.featured .featstats .fstat .fdesc {
font-size: 15px;
line-height: 1.4;
color: #134150;
opacity: 0.75;
}

.studproj .projlist .grid .card.featured .testimq {
font-size: 19px;
line-height: 1.65;
color: #134150;
font-style: italic;
margin: 0;
padding: 16px;
border-radius: 10px;
background: rgba(116, 173, 136, 0.08);
box-shadow: inset 0 4px 10px 0 rgba(116, 173, 136, 0.1);
}

.studproj .projlist .grid .card.featured .attrib {
font-size: 15px;
line-height: 1.4;
color: #134150;
opacity: 0.65;
margin: 0;
}

.studproj .imgblock {
position: relative;
background: linear-gradient(180deg, rgba(19, 65, 80, 0.07) 0%, transparent 60%);
overflow: hidden;
}

.studproj .imgblock::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 0;
border-left: 100vw solid transparent;
border-bottom: 36px solid #FDFCF8;
pointer-events: none;
}

.studproj .imgblock .imginner {
max-width: 1280px;
margin: 0 auto;
padding: 72px 36px 108px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 36px;
align-items: center;
}

.studproj .imgblock .imgwrap {
border-radius: 10px;
overflow: hidden;
box-shadow: 0 8px 40px 0 rgba(19, 65, 80, 0.13);
position: relative;
}

.studproj .imgblock .imgwrap img {
width: 100%;
height: 340px;
object-fit: cover;
display: block;
transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.studproj .imgblock .imgwrap:hover img {
transform: scale(1.04);
}

.studproj .imgblock .imgwrap .overlay {
position: absolute;
inset: 0;
background: linear-gradient(247deg, rgba(19, 65, 80, 0.35), transparent);
pointer-events: none;
}

.studproj .imgblock .textside {
display: flex;
flex-direction: column;
gap: 16px;
}

.studproj .imgblock .textside .labelstrip {
display: inline-block;
background: #74AD88;
padding: 4px 16px;
align-self: flex-start;
}

.studproj .imgblock .textside .labelstrip span {
font-size: 15px;
line-height: 1.4;
color: #FDFCF8;
letter-spacing: 0.08em;
text-transform: uppercase;
}

.studproj .imgblock .textside h2 {
font-size: 31px;
line-height: 1.15;
color: #134150;
letter-spacing: -0.02em;
margin: 0;
}

.studproj .imgblock .textside .para {
display: flex;
flex-direction: row;
gap: 8px;
align-items: flex-start;
}

.studproj .imgblock .textside .para .pnum {
font-size: 15px;
line-height: 1.65;
color: #74AD88;
flex-shrink: 0;
}

.studproj .imgblock .textside .para p {
font-size: 15px;
line-height: 1.65;
color: #134150;
opacity: 0.85;
margin: 0;
}

.studproj .imgblock .textside .diamond {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
}

.studproj .imgblock .textside .diamond::before {
content: '';
display: block;
width: 8px;
height: 8px;
background: #134150;
transform: rotate(45deg);
flex-shrink: 0;
}

.studproj .imgblock .textside .diamond span {
font-size: 15px;
line-height: 1.4;
color: #134150;
opacity: 0.7;
}

.studproj .projlist .grid .card .dashedbox {
border: 2px dashed rgba(116, 173, 136, 0.6);
border-radius: 10px;
padding: 8px 16px;
margin-top: 4px;
}

.studproj .projlist .grid .card .dashedbox .dbtxt {
font-size: 15px;
line-height: 1.4;
color: #134150;
margin: 0;
opacity: 0.8;
}

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

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

.studproj .projlist .grid .card {
animation: fadeup 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.studproj .projlist .grid .card:nth-child(1) {
animation-delay: 0.1s;
}

.studproj .projlist .grid .card:nth-child(2) {
animation-delay: 0.2s;
}

.studproj .projlist .grid .card:nth-child(3) {
animation-delay: 0.3s;
}

.studproj .projlist .grid .card:nth-child(4) {
animation-delay: 0.4s;
}

.studproj .projlist .grid .card:nth-child(5) {
animation-delay: 0.5s;
}

@media (max-width: 1024px) {
.studproj .projlist .toprow {
flex-direction: column;
}

.studproj .projlist .sidebar {
flex: none;
width: 100%;
position: static;
}

.studproj .imgblock .imginner {
grid-template-columns: 1fr;
}
}

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

.studproj .projlist .grid .card.featured {
grid-column: span 1;
grid-template-columns: 1fr;
}

.studproj .projlist {
padding: 36px 16px;
}

.studproj .imgblock .imginner {
padding: 36px 16px 72px;
}

.studproj .projlist .sidebar h2 {
font-size: 31px;
}
}

@media (max-width: 320px) {
.studproj .projlist .sidebar .statrow {
flex-direction: column;
}

.studproj .projlist .sidebar .stat {
flex: none;
width: 100%;
}
}

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

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

.bse a {
color: inherit;
text-decoration: none;
}

.bse .pg-wrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 36px;
}

@keyframes borderGlow {

0%,
100% {
box-shadow: 0 0 0 2px rgba(19, 65, 80, 0.18), 0 5px 22px 0 rgba(19, 65, 80, 0.08);
}

50% {
box-shadow: 0 0 0 3px rgba(116, 173, 136, 0.45), 0 8px 40px 0 rgba(116, 173, 136, 0.22);
}
}

@keyframes glowPulse {

0%,
100% {
box-shadow: 0 0 0 2px rgba(116, 173, 136, 0.15), 0 5px 22px 0 rgba(19, 65, 80, 0.08);
}

50% {
box-shadow: 0 0 0 4px rgba(116, 173, 136, 0.38), 0 8px 40px 0 rgba(116, 173, 136, 0.18);
}
}

.bse .titleblk {
position: relative;
background: linear-gradient(247deg, #134150 0%, transparent 70%), #FDFCF8;
padding: 72px 0;
overflow: hidden;
}

.bse .titleblk::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 180px;
height: 2px;
background: linear-gradient(247deg, #134150, #74AD88);
pointer-events: none;
}

.bse .titleblk::after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 2px;
height: 120px;
background: linear-gradient(180deg, #134150, transparent);
pointer-events: none;
}

.bse .titleblk-corner {
position: absolute;
bottom: 0;
right: 0;
width: 120px;
height: 2px;
background: linear-gradient(247deg, transparent, #74AD88);
pointer-events: none;
}

.bse .titleblk-corner2 {
position: absolute;
bottom: 0;
right: 0;
width: 2px;
height: 80px;
background: linear-gradient(0deg, #74AD88, transparent);
pointer-events: none;
}

.bse .titleblk-inner {
display: flex;
flex-direction: row;
align-items: center;
gap: 36px;
max-width: 1280px;
margin: 0 auto;
padding: 0 36px;
}

.bse .titleblk-text {
flex: 1;
z-index: 1;
}

.bse .titleblk-label {
display: inline-block;
font-size: 15px;
line-height: 1.4;
color: #74AD88;
letter-spacing: 0.08em;
text-transform: uppercase;
margin-bottom: 16px;
border: 1.5px solid rgba(116, 173, 136, 0.4);
padding: 4px 16px;
border-radius: 0px;
}

.bse .titleblk-h1 {
font-size: 58px;
line-height: 1.15;
letter-spacing: -0.03em;
color: #134150;
margin: 0 0 16px;
}

.bse .titleblk-h1 .accent {
background: linear-gradient(247deg, #134150, #74AD88);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.bse .titleblk-img-wrap {
flex: 0 0 480px;
height: 360px;
border-radius: 0px;
overflow: hidden;
position: relative;
}

.bse .titleblk-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.bse .titleblk-img-wrap:hover img {
transform: scale(1.04);
}

.bse .titleblk-img-wrap::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(to right, #FDFCF8 0%, transparent 45%);
pointer-events: none;
}

.bse .fitblk {
background: #134150;
padding: 72px 0;
}

.bse .fitblk-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 36px;
display: flex;
flex-direction: row;
gap: 72px;
align-items: flex-start;
}

.bse .fitblk-left {
flex: 1;
}

.bse .fitblk-hdg {
font-size: 31px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #FDFCF8;
margin: 0 0 36px;
background: rgba(116, 173, 136, 0.18);
display: inline-block;
padding: 4px 16px;
}

.bse .fitblk-cols {
display: flex;
flex-direction: row;
gap: 36px;
}

.bse .fitcol {
flex: 1;
}

.bse .fitcol-label {
font-size: 15px;
line-height: 1.4;
color: #74AD88;
text-transform: uppercase;
letter-spacing: 0.07em;
margin-bottom: 16px;
display: block;
}

.bse .fitcol-item {
font-size: 15px;
line-height: 1.65;
color: rgba(253, 252, 248, 0.82);
padding: 8px 0;
border-bottom: 1px solid rgba(116, 173, 136, 0.2);
}

.bse .fitcol-item:last-child {
border-bottom: none;
}

.bse .fitblk-img {
flex: 0 0 340px;
height: 400px;
border-radius: 0px;
overflow: hidden;
animation: borderGlow 3.5s ease-in-out infinite;
}

.bse .fitblk-img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.bse .fitblk-img:hover img {
transform: scale(1.05);
clip-path: polygon(0 0, 100% 0, 97% 100%, 3% 100%);
}

.bse .envblk {
background: #FDFCF8;
padding: 72px 0;
position: relative;
}

.bse .envblk-bg {
position: absolute;
inset: 0;
background: linear-gradient(247deg, rgba(116, 173, 136, 0.08) 0%, transparent 60%);
pointer-events: none;
}

.bse .envblk-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 36px;
}

.bse .envblk-hdg {
font-size: 43px;
line-height: 1.15;
letter-spacing: -0.025em;
color: #134150;
text-align: center;
margin: 0 0 8px;
}

.bse .envblk-hdg span {
background: rgba(116, 173, 136, 0.25);
padding: 0 8px;
}

.bse .envblk-sub {
font-size: 19px;
line-height: 1.65;
color: #134150;
text-align: center;
margin: 0 0 36px;
opacity: 0.7;
}

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

.bse .envcard {
background: #fff;
border-radius: 10px;
padding: 36px 16px;
text-align: center;
border: 1.5px solid rgba(19, 65, 80, 0.1);
transition: box-shadow 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), border-color 0.45s ease-in-out;
animation: glowPulse 4s ease-in-out infinite;
}

.bse .envcard:nth-child(2) {
animation-delay: 1.3s;
}

.bse .envcard:nth-child(3) {
animation-delay: 2.6s;
}

.bse .envcard:hover {
border-color: #74AD88;
clip-path: polygon(0 0, 100% 0, 98% 98%, 2% 100%);
}

.bse .envcard-icon {
width: 44px;
height: 44px;
margin: 0 auto 16px;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
}

.bse .envcard-icon svg {
width: 36px;
height: 36px;
}

.bse .envcard-hdg {
font-size: 19px;
line-height: 1.4;
color: #134150;
margin: 0 0 8px;
letter-spacing: -0.01em;
}

.bse .envcard-txt {
font-size: 15px;
line-height: 1.65;
color: #134150;
opacity: 0.72;
}

.bse .valblk {
background: linear-gradient(247deg, #134150 60%, #1d5a6e 100%);
padding: 72px 0;
position: relative;
}

.bse .valblk-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 36px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 72px;
align-items: center;
}

.bse .valblk-text {
color: #FDFCF8;
}

.bse .valblk-hdg {
font-size: 31px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #FDFCF8;
margin: 0 0 36px;
background: rgba(116, 173, 136, 0.2);
display: inline-block;
padding: 4px 16px;
}

.bse .valblk-para {
font-size: 15px;
line-height: 1.65;
color: rgba(253, 252, 248, 0.82);
margin: 0 0 16px;
}

.bse .valblk-para strong {
color: #74AD88 !important;
}

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

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

.bse .valgraph-label {
font-size: 15px;
line-height: 1.4;
color: rgba(253, 252, 248, 0.7);
flex: 0 0 120px;
text-align: right;
}

.bse .valgraph-bar-wrap {
flex: 1;
height: 28px;
background: rgba(253, 252, 248, 0.08);
border-radius: 0px;
overflow: hidden;
position: relative;
}

.bse .valgraph-bar {
height: 100%;
background: linear-gradient(247deg, #74AD88, rgba(116, 173, 136, 0.5));
border-radius: 0px;
transition: width 0.65s cubic-bezier(0.25, 0.46, 0.45, 0.94);
display: flex;
flex-direction: row;
align-items: center;
justify-content: flex-end;
padding-right: 8px;
}

.bse .valgraph-bar span {
font-size: 15px;
line-height: 1.4;
color: #134150;
}

.bse .valgraph-row:nth-child(1) .valgraph-bar {
width: 30%;
}

.bse .valgraph-row:nth-child(2) .valgraph-bar {
width: 52%;
}

.bse .valgraph-row:nth-child(3) .valgraph-bar {
width: 71%;
}

.bse .valgraph-row:nth-child(4) .valgraph-bar {
width: 88%;
}

.bse .valgraph-caption {
font-size: 15px;
line-height: 1.4;
color: rgba(253, 252, 248, 0.45);
text-align: center;
margin-top: 8px;
}

.bse .invblk {
background: #FDFCF8;
padding: 72px 0;
}

.bse .invblk-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 36px;
display: flex;
flex-direction: row;
gap: 36px;
align-items: flex-start;
}

.bse .invblk-img {
flex: 0 0 400px;
height: 340px;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 8px 40px 0 rgba(19, 65, 80, 0.13);
}

.bse .invblk-img img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.bse .invblk-img:hover img {
transform: scale(1.05);
}

.bse .invblk-text {
flex: 1;
}

.bse .invblk-hdg {
font-size: 31px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #134150;
margin: 0 0 16px;
background: rgba(116, 173, 136, 0.2);
display: inline-block;
padding: 4px 16px;
}

.bse .invblk-para {
font-size: 15px;
line-height: 1.65;
color: #134150;
opacity: 0.8;
margin: 0 0 16px;
}

.bse .invblk-tiers {
display: flex;
flex-direction: column;
gap: 8px;
margin-top: 16px;
}

.bse .invtier {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
padding: 16px;
border: 1.5px solid rgba(19, 65, 80, 0.12);
border-radius: 10px;
transition: border-color 0.45s ease-in-out, box-shadow 0.45s ease-in-out;
}

.bse .invtier:hover {
border-color: #74AD88;
box-shadow: 0 5px 22px 0 rgba(116, 173, 136, 0.13);
clip-path: polygon(0 0, 100% 0, 99% 97%, 1% 100%);
}

.bse .invtier-name {
font-size: 15px;
line-height: 1.4;
color: #134150;
flex: 1;
}

.bse .invtier-detail {
font-size: 15px;
line-height: 1.4;
color: #74AD88;
font-weight: 600;
}

.bse .scaleblk {
background: #134150;
padding: 36px 0;
}

.bse .scaleblk-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 36px;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px;
}

.bse .scalestat {
text-align: center;
padding: 36px 16px;
border-right: 1px solid rgba(253, 252, 248, 0.1);
}

.bse .scalestat:last-child {
border-right: none;
}

.bse .scalestat-num {
font-size: 43px;
line-height: 1.15;
letter-spacing: -0.03em;
background: linear-gradient(247deg, #FDFCF8, #74AD88);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
display: block;
margin-bottom: 8px;
}

.bse .scalestat-label {
font-size: 15px;
line-height: 1.4;
color: rgba(253, 252, 248, 0.65);
}

.bse .ratingrow {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 16px;
margin-top: 36px;
padding-top: 36px;
border-top: 1px solid rgba(253, 252, 248, 0.1);
}

.bse .ratingrow-label {
font-size: 15px;
line-height: 1.4;
color: rgba(253, 252, 248, 0.65);
}

.bse .ratingrow-score {
font-size: 31px;
line-height: 1.15;
color: #74AD88;
letter-spacing: -0.02em;
}

.bse .starability-slot {
display: inline-block;
}

.bse .expblk {
background: #FDFCF8;
padding: 72px 0;
position: relative;
}

.bse .expblk-divider {
position: absolute;
top: 0;
left: 0;
right: 0;
height: 4px;
background: linear-gradient(247deg, #134150, #74AD88, transparent);
pointer-events: none;
}

.bse .expblk-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 36px;
}

.bse .expblk-hdg {
font-size: 43px;
line-height: 1.15;
letter-spacing: -0.025em;
color: #134150;
margin: 0 0 8px;
background: rgba(116, 173, 136, 0.18);
display: inline-block;
padding: 4px 16px;
}

.bse .expblk-sub {
font-size: 19px;
line-height: 1.65;
color: #134150;
opacity: 0.65;
margin: 0 0 36px;
max-width: 600px;
}

.bse .expphases {
display: flex;
flex-direction: row;
gap: 0;
position: relative;
}

.bse .expphases::before {
content: '';
position: absolute;
top: 32px;
left: 36px;
right: 36px;
height: 2px;
background: linear-gradient(247deg, #134150, #74AD88);
pointer-events: none;
z-index: 0;
}

.bse .expphase {
flex: 1;
padding: 0 16px;
position: relative;
z-index: 1;
}

.bse .expphase-dot {
width: 16px;
height: 16px;
border-radius: 0px;
background: #74AD88;
margin: 0 auto 16px;
border: 3px solid #FDFCF8;
box-shadow: 0 1px 4px 0 rgba(19, 65, 80, 0.18);
transition: background 0.45s ease-in-out, transform 0.45s ease-in-out;
}

.bse .expphase:hover .expphase-dot {
background: #134150;
transform: scale(1.4);
}

.bse .expphase-num {
font-size: 15px;
line-height: 1.4;
color: #74AD88;
text-align: center;
display: block;
margin-bottom: 4px;
}

.bse .expphase-title {
font-size: 19px;
line-height: 1.4;
color: #134150;
text-align: center;
margin: 0 0 8px;
letter-spacing: -0.01em;
}

.bse .expphase-desc {
font-size: 15px;
line-height: 1.65;
color: #134150;
opacity: 0.72;
text-align: center;
}

.bse .expblk-reviews {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 16px;
margin-top: 36px;
}

.bse .revcard {
background: #fff;
border-radius: 10px;
padding: 16px;
border: 1.5px solid rgba(19, 65, 80, 0.08);
box-shadow: 0 1px 4px 0 rgba(19, 65, 80, 0.06);
transition: box-shadow 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.bse .revcard:hover {
box-shadow: 0 8px 40px 0 rgba(19, 65, 80, 0.13);
clip-path: polygon(0 0, 100% 0, 98% 100%, 2% 98%);
}

.bse .revcard-name {
font-size: 15px;
line-height: 1.4;
color: #134150;
margin-bottom: 4px;
}

.bse .revcard-role {
font-size: 15px;
line-height: 1.4;
color: #74AD88;
margin-bottom: 8px;
opacity: 0.85;
}

.bse .revcard-txt {
font-size: 15px;
line-height: 1.65;
color: #134150;
opacity: 0.75;
}

@media (max-width: 1024px) {
.bse .titleblk-inner {
flex-direction: column;
}

.bse .titleblk-img-wrap {
flex: 0 0 auto;
width: 100%;
height: 260px;
}

.bse .titleblk-h1 {
font-size: 43px;
}

.bse .fitblk-inner {
flex-direction: column;
}

.bse .fitblk-img {
flex: 0 0 auto;
width: 100%;
height: 240px;
}

.bse .valblk-inner {
grid-template-columns: 1fr;
gap: 36px;
}

.bse .invblk-inner {
flex-direction: column;
}

.bse .invblk-img {
flex: 0 0 auto;
width: 100%;
height: 240px;
}

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

.bse .expphases {
flex-direction: column;
gap: 36px;
}

.bse .expphases::before {
display: none;
}

.bse .expblk-reviews {
grid-template-columns: 1fr;
}
}

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

.bse .titleblk {
padding: 36px 0;
}

.bse .titleblk-inner {
padding: 0 16px;
}

.bse .titleblk-h1 {
font-size: 31px;
}

.bse .fitblk {
padding: 36px 0;
}

.bse .fitblk-inner {
padding: 0 16px;
gap: 36px;
}

.bse .fitblk-cols {
flex-direction: column;
gap: 16px;
}

.bse .envblk {
padding: 36px 0;
}

.bse .envblk-inner {
padding: 0 16px;
}

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

.bse .envblk-hdg {
font-size: 31px;
}

.bse .valblk {
padding: 36px 0;
}

.bse .valblk-inner {
padding: 0 16px;
}

.bse .invblk {
padding: 36px 0;
}

.bse .invblk-inner {
padding: 0 16px;
}

.bse .scaleblk-inner {
padding: 0 16px;
grid-template-columns: 1fr 1fr;
}

.bse .scalestat {
border-right: none;
border-bottom: 1px solid rgba(253, 252, 248, 0.1);
}

.bse .expblk {
padding: 36px 0;
}

.bse .expblk-inner {
padding: 0 16px;
}

.bse .expblk-hdg {
font-size: 31px;
}

.bse .expblk-reviews {
grid-template-columns: 1fr;
}

.bse .ratingrow {
flex-direction: column;
gap: 8px;
}
}

@media (max-width: 320px) {
.bse .titleblk-h1 {
font-size: 23px;
}

.bse .scaleblk-inner {
grid-template-columns: 1fr;
}

.bse .fitblk-hdg,
.bse .invblk-hdg,
.bse .valblk-hdg {
font-size: 23px;
}
}

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

.ctus .reveal {
opacity: 0;
transform: translateY(28px);
animation: slideUp 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
}

.ctus .reveal:nth-child(1) {
animation-delay: 0.08s;
}

.ctus .reveal:nth-child(2) {
animation-delay: 0.18s;
}

.ctus .reveal:nth-child(3) {
animation-delay: 0.26s;
}

.ctus .reveal:nth-child(4) {
animation-delay: 0.34s;
}

.ctus .reveal:nth-child(5) {
animation-delay: 0.42s;
}

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

.ctus .topband {
background: #134150;
width: 100%;
padding: 72px 36px;
box-sizing: border-box;
}

.ctus .topband .bandinner {
max-width: 1280px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: stretch;
gap: 72px;
}

.ctus .imgcol {
flex: 0 0 340px;
position: relative;
}

.ctus .imgcol .imgwrap {
width: 100%;
height: 100%;
min-height: 320px;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 8px 40px 0 rgba(19, 65, 80, 0.13);
}

.ctus .imgcol .imgwrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: sepia(0.3) saturate(1.2) brightness(0.9);
transition: transform 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.ctus .imgcol .imgwrap:hover img {
transform: scale(1.04);
}

.ctus .imgcol .geodeco {
position: absolute;
top: -16px;
left: -16px;
width: 80px;
height: 80px;
border: 2px solid rgba(116, 173, 136, 0.25);
border-radius: 0px;
pointer-events: none;
}

.ctus .imgcol .geodeco2 {
position: absolute;
bottom: -12px;
right: -12px;
width: 48px;
height: 48px;
background: rgba(116, 173, 136, 0.12);
border-radius: 0px;
pointer-events: none;
}

.ctus .txtcol {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
gap: 16px;
}

.ctus .txtcol .tagline {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
}

.ctus .txtcol .dot {
width: 8px;
height: 8px;
border-radius: 0px;
background: #74AD88;
flex-shrink: 0;
}

.ctus .txtcol .tagline span {
font-size: 15px;
color: rgba(253, 252, 248, 0.65);
letter-spacing: 0.08em;
text-transform: uppercase;
line-height: 1.4;
}

.ctus .txtcol .pagehd {
font-size: 58px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #FDFCF8;
margin: 0;
padding: 0;
}

.ctus .txtcol .pagehd .gradtext {
background: linear-gradient(247deg, #74AD88, transparent);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.ctus .txtcol .subdesc {
font-size: 19px;
line-height: 1.65;
color: rgba(253, 252, 248, 0.78);
margin: 0;
max-width: 520px;
}

.ctus .txtcol .infopills {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
margin-top: 8px;
}

.ctus .txtcol .infopills .pill {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
padding: 8px 16px;
border: 1.5px solid rgba(116, 173, 136, 0.35);
border-radius: 10px;
background: rgba(116, 173, 136, 0.08);
position: relative;
overflow: hidden;
transition: border-color 0.45s ease-in-out, background 0.45s ease-in-out;
}

.ctus .txtcol .infopills .pill::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 0;
background: rgba(116, 173, 136, 0.18);
transition: height 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.ctus .txtcol .infopills .pill:hover::before {
height: 100%;
}

.ctus .txtcol .infopills .pill:hover {
border-color: rgba(116, 173, 136, 0.7);
}

.ctus .txtcol .infopills .pill svg {
flex-shrink: 0;
position: relative;
z-index: 1;
}

.ctus .txtcol .infopills .pill span {
font-size: 15px;
color: rgba(253, 252, 248, 0.85);
line-height: 1.4;
position: relative;
z-index: 1;
}

.ctus .txtcol .infopills .pill a {
font-size: 15px;
color: #74AD88 !important;
text-decoration: none;
line-height: 1.4;
position: relative;
z-index: 1;
transition: color 0.2s ease-in-out;
}

.ctus .txtcol .infopills .pill a:hover {
color: #FDFCF8 !important;
}

.ctus .formsec {
background: #FDFCF8;
padding: 72px 36px;
box-sizing: border-box;
position: relative;
}

.ctus .formsec::before {
content: '';
position: absolute;
top: 36px;
left: 36px;
right: 36px;
bottom: 36px;
border: 1px solid rgba(19, 65, 80, 0.07);
border-radius: 10px;
pointer-events: none;
}

.ctus .formsec .forminner {
max-width: 1280px;
margin: 0 auto;
display: flex;
flex-direction: row;
gap: 72px;
align-items: flex-start;
}

.ctus .formsec .sidebar {
flex: 0 0 300px;
display: flex;
flex-direction: column;
gap: 36px;
}

.ctus .formsec .sidebar .sidhd {
font-size: 31px;
line-height: 1.15;
letter-spacing: -0.01em;
color: #134150;
margin: 0;
padding: 4px 16px;
background: rgba(116, 173, 136, 0.15);
border-radius: 0px;
display: inline-block;
}

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

.ctus .formsec .sidebar .sidcard {
background: #134150;
border-radius: 10px;
padding: 16px;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: 0 5px 22px 0 rgba(19, 65, 80, 0.08);
transition: box-shadow 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), clip-path 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
clip-path: inset(0px round 10px);
}

.ctus .formsec .sidebar .sidcard:hover {
box-shadow: 0 8px 40px 0 rgba(19, 65, 80, 0.13);
clip-path: inset(-2px round 10px);
}

.ctus .formsec .sidebar .sidcard .cardlabel {
font-size: 15px;
color: rgba(253, 252, 248, 0.55);
line-height: 1.4;
text-transform: uppercase;
letter-spacing: 0.07em;
}

.ctus .formsec .sidebar .sidcard .cardval {
font-size: 15px;
color: #FDFCF8;
line-height: 1.65;
word-break: break-word;
}

.ctus .formsec .sidebar .sidcard.wide {
grid-column: 1 / -1;
}

.ctus .formsec .sidebar .sidcard .cardval a {
color: #74AD88;
text-decoration: none;
transition: color 0.2s ease-in-out;
}

.ctus .formsec .sidebar .sidcard .cardval a:hover {
color: #FDFCF8;
}

.ctus .formsec .sidebar .proscons {
display: flex;
flex-direction: column;
gap: 8px;
}

.ctus .formsec .sidebar .proscons .pchd {
font-size: 19px;
color: #134150;
line-height: 1.4;
font-weight: 600;
margin: 0;
padding: 4px 16px;
background: rgba(116, 173, 136, 0.12);
border-radius: 0px;
}

.ctus .formsec .sidebar .proscons .pcrow {
display: flex;
flex-direction: row;
gap: 8px;
}

.ctus .formsec .sidebar .proscons .pccol {
flex: 1;
display: flex;
flex-direction: column;
gap: 4px;
}

.ctus .formsec .sidebar .proscons .pcitem {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
padding: 8px;
border-radius: 10px;
background: rgba(19, 65, 80, 0.04);
}

.ctus .formsec .sidebar .proscons .pcitem .pcicon {
flex-shrink: 0;
width: 16px;
height: 16px;
border-radius: 0px;
display: flex;
align-items: center;
justify-content: center;
margin-top: 1px;
}

.ctus .formsec .sidebar .proscons .pcitem .pcicon.yes {
background: rgba(116, 173, 136, 0.25);
}

.ctus .formsec .sidebar .proscons .pcitem .pcicon.no {
background: rgba(19, 65, 80, 0.12);
}

.ctus .formsec .sidebar .proscons .pcitem .pctxt {
font-size: 15px;
color: #134150;
line-height: 1.65;
}

.ctus .formsec .formarea {
flex: 1;
}

.ctus .formsec .formarea .formhd {
font-size: 43px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #134150;
margin: 0 0 36px 0;
padding: 4px 16px;
background: rgba(116, 173, 136, 0.12);
border-radius: 0px;
display: inline-block;
}

.ctus .formsec .formarea .formhd .gradtext {
background: linear-gradient(247deg, #134150, #74AD88);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

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

.ctus .formsec .formarea .frow {
display: flex;
flex-direction: row;
gap: 16px;
}

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

.ctus .formsec .formarea .fgroup label {
font-size: 15px;
color: #134150;
line-height: 1.4;
letter-spacing: 0.03em;
}

.ctus .formsec .formarea .fgroup input,
.ctus .formsec .formarea .fgroup select,
.ctus .formsec .formarea .fgroup textarea {
padding: 16px;
border: 1.5px solid rgba(19, 65, 80, 0.2);
border-radius: 10px;
background: rgba(253, 252, 248, 0.9);
font-size: 15px;
color: #134150;
line-height: 1.4;
box-shadow: inset 0 4px 10px 0 rgba(19, 65, 80, 0.06);
transition: border-color 0.45s ease-in-out, box-shadow 0.45s ease-in-out;
width: 100%;
box-sizing: border-box;
appearance: none;
-webkit-appearance: none;
}

.ctus .formsec .formarea .fgroup input::placeholder,
.ctus .formsec .formarea .fgroup textarea::placeholder {
color: rgba(19, 65, 80, 0.4);
}

.ctus .formsec .formarea .fgroup input:focus,
.ctus .formsec .formarea .fgroup select:focus,
.ctus .formsec .formarea .fgroup textarea:focus {
outline: none;
border-color: #74AD88;
box-shadow: inset 0 4px 10px 0 rgba(19, 65, 80, 0.06), 0 1px 4px 0 rgba(116, 173, 136, 0.18);
}

.ctus .formsec .formarea .fgroup .selectwrap {
position: relative;
}

.ctus .formsec .formarea .fgroup .selectwrap select {
padding-right: 36px;
cursor: pointer;
}

.ctus .formsec .formarea .fgroup .selectwrap .arrowico {
position: absolute;
right: 16px;
top: 50%;
transform: translateY(-50%);
pointer-events: none;
width: 10px;
height: 6px;
}

.ctus .formsec .formarea .fgroup textarea {
resize: vertical;
min-height: 120px;
}

.ctus .formsec .formarea .privrow {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
padding: 16px;
background: rgba(19, 65, 80, 0.04);
border-radius: 10px;
}

.ctus .formsec .formarea .privrow input[type="checkbox"] {
width: 20px;
height: 20px;
flex-shrink: 0;
accent-color: #74AD88;
margin-top: 2px;
cursor: pointer;
}

.ctus .formsec .formarea .privrow .privtxt {
font-size: 15px;
color: rgba(19, 65, 80, 0.75);
line-height: 1.65;
}

.ctus .formsec .formarea .privrow .privtxt a {
color: #134150;
text-decoration: underline;
text-underline-offset: 3px;
transition: color 0.2s ease-in-out;
}

.ctus .formsec .formarea .privrow .privtxt a:hover {
color: #74AD88;
}

.ctus .formsec .formarea .submitbtn {
align-self: flex-start;
padding: 16px 36px;
border: 2.5px solid #134150;
border-radius: 10px;
background: transparent;
font-size: 19px;
color: #134150;
line-height: 1.4;
cursor: pointer;
position: relative;
overflow: hidden;
transition: color 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), border-color 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
clip-path: inset(0px round 10px);
}

.ctus .formsec .formarea .submitbtn::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 0;
background: #134150;
transition: height 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
z-index: 0;
}

.ctus .formsec .formarea .submitbtn:hover::before {
height: 100%;
}

.ctus .formsec .formarea .submitbtn:hover {
color: #FDFCF8;
border-color: #134150;
}

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

.ctus .formsec .formarea .submitbtn:focus {
outline: 2.5px solid #74AD88;
outline-offset: 3px;
}

.ctus .glassdivider {
background: linear-gradient(247deg, #134150, rgba(116, 173, 136, 0.6));
height: 8px;
width: 100%;
}

@media (max-width: 1024px) {
.ctus .topband .bandinner {
gap: 36px;
}

.ctus .imgcol {
flex: 0 0 260px;
}

.ctus .txtcol .pagehd {
font-size: 43px;
}

.ctus .formsec .forminner {
gap: 36px;
}

.ctus .formsec .sidebar {
flex: 0 0 240px;
}
}

@media (max-width: 768px) {
.ctus .topband {
padding: 36px 16px;
}

.ctus .topband .bandinner {
flex-direction: column;
gap: 36px;
}

.ctus .imgcol {
flex: none;
width: 100%;
}

.ctus .imgcol .imgwrap {
min-height: 220px;
}

.ctus .txtcol .pagehd {
font-size: 31px;
}

.ctus .txtcol .subdesc {
font-size: 15px;
}

.ctus .formsec {
padding: 36px 16px;
}

.ctus .formsec::before {
top: 16px;
left: 16px;
right: 16px;
bottom: 16px;
}

.ctus .formsec .forminner {
flex-direction: column;
gap: 36px;
}

.ctus .formsec .sidebar {
flex: none;
width: 100%;
}

.ctus .formsec .sidebar .sidgrid {
grid-template-columns: 1fr;
}

.ctus .formsec .sidebar .sidcard.wide {
grid-column: auto;
}

.ctus .formsec .formarea .frow {
flex-direction: column;
}

.ctus .formsec .formarea .formhd {
font-size: 31px;
}

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

@media (max-width: 320px) {
.ctus .txtcol .pagehd {
font-size: 23px;
}

.ctus .formsec .formarea .formhd {
font-size: 23px;
}

.ctus .txtcol .infopills {
flex-direction: column;
}
}

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

.successPage .successWrap {
max-width: 560px;
width: 100%;
text-align: center;
padding: 72px 36px;
background: #ffffff;
border-radius: 10px;
box-shadow: 0 8px 40px 0 rgba(19, 65, 80, 0.13);
}

.successPage .iconRing {
width: 72px;
height: 72px;
border-radius: 10px;
background: linear-gradient(247deg, #134150, #74AD88);
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 36px;
clip-path: polygon(10% 0%, 90% 0%, 100% 10%, 100% 90%, 90% 100%, 10% 100%, 0% 90%, 0% 10%);
transition: clip-path 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.successPage .iconRing:hover {
clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.successPage .iconRing svg {
width: 36px;
height: 36px;
display: block;
}

.successPage .successTitle {
font-size: 31px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #134150;
margin: 0 0 16px;
background: linear-gradient(247deg, #134150, #74AD88);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.successPage .successMsg {
font-size: 19px;
line-height: 1.65;
color: #134150;
margin: 0 0 36px;
opacity: 0.85;
}

.successPage .successMsg span {
display: block;
margin-top: 8px;
font-size: 15px;
opacity: 0.7;
}

.successPage .backBtn {
display: inline-block;
padding: 16px 36px;
font-size: 15px;
line-height: 1.4;
color: #134150;
background: transparent;
border: 2px solid #134150;
border-radius: 10px;
text-decoration: none;
position: relative;
overflow: hidden;
transition: color 0.45s ease-in-out, border-color 0.45s ease-in-out;
clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.successPage .backBtn::before {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 0%;
background: #134150;
transition: height 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
z-index: 0;
}

.successPage .backBtn:hover::before {
height: 100%;
}

.successPage .backBtn:hover {
color: #FDFCF8;
border-color: #134150;
}

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

.successPage .backBtn:focus-visible {
outline: 2px solid #74AD88;
outline-offset: 4px;
}

@media (max-width: 768px) {
.successPage {
padding: 36px 16px;
}

.successPage .successWrap {
padding: 36px 16px;
}

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