body {
margin: 0;
overflow-x: hidden;
min-height: 100vh;
word-break: break-word;
overflow-wrap: anywhere;
font-family: 'IBM Plex Serif', Georgia, serif;
}

.site_header {
position: relative;
background: #FDFCF7;
border-bottom: 1px solid rgba(0, 198, 139, 0.15);
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08);
z-index: 100;
}

.header_top_band {
background: linear-gradient(135deg, #862430 0%, #6a1c27 100%);
padding: 8px 0;
}

.header_top_inner {
max-width: 1170px;
margin: 0 auto;
padding: 0 40px;
display: flex;
align-items: center;
justify-content: flex-end;
gap: 24px;
}

.header_contact_item {
display: flex;
align-items: center;
gap: 8px;
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.4;
color: #FDFCF7;
text-decoration: none;
transition: color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), opacity 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.header_contact_item:hover,
.header_contact_item:focus {
color: #00C68B;
opacity: 1;
outline: none;
transform: scale(1.02);
}

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

.header_main_row {
max-width: 1170px;
margin: 0 auto;
padding: 24px 40px;
display: flex;
align-items: center;
gap: 40px;
}

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

.brand_logo_ring {
width: 72px;
height: 72px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 5px;
box-shadow:
0 0 0 2px #FDFCF7,
0 0 0 4px rgba(0, 198, 139, 0.5),
0 3px 6px 0 rgba(0, 198, 139, 0.08),
0 6px 25px 0 rgba(0, 198, 139, 0.08);
background: #FDFCF7;
transition: box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.brand_logo_ring:focus-within {
transform: scale(1.02);
}

.brand_logo_ring img {
width: 65px;
height: 65px;
object-fit: contain;
display: block;
}

.brand_name_text {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 30px;
font-weight: 700;
line-height: 1.15;
letter-spacing: -0.02em;
color: #862430;
white-space: nowrap;
}

.brand_name_accent {
color: #00C68B;
}

.header_nav_area {
flex: 1;
display: flex;
align-items: center;
justify-content: flex-end;
min-width: 0;
}

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

.primary_nav_list li {
display: flex;
}

.primary_nav_link {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.4;
font-weight: 400;
color: #2c1a1d;
text-decoration: none;
padding: 8px 16px;
border-radius: 5px;
display: inline-flex;
align-items: center;
white-space: nowrap;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
min-height: 44px;
}

.primary_nav_link:hover {
color: #862430;
background: rgba(134, 36, 48, 0.06);
text-decoration: none;
}

.primary_nav_link:focus {
outline: 2px solid #00C68B;
outline-offset: 2px;
transform: scale(1.02);
}

.primary_nav_link.active_page {
color: #00C68B;
font-weight: 700;
}

.header_divider_accent {
width: 100%;
height: 3px;
background: linear-gradient(90deg, #00C68B 0%, rgba(0, 198, 139, 0.2) 60%, transparent 100%);
}

.site_footer {
background: #2c1a1d;
position: relative;
}

.footer_editorial_bar {
overflow: hidden;
padding: 8px 0 0;
}

.footer_editorial_type {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 72px;
font-weight: 700;
line-height: 1.15;
letter-spacing: -0.04em;
color: rgba(253, 252, 247, 0.04);
white-space: nowrap;
user-select: none;
pointer-events: none;
padding: 0 40px;
}

.footer_main_body {
max-width: 1170px;
margin: 0 auto;
padding: 40px 40px 24px;
}

.footer_grid_row {
display: flex;
flex-wrap: wrap;
gap: 40px;
align-items: flex-start;
}

.footer_brand_col {
flex: 0 0 auto;
min-width: 0;
}

.footer_logo_block {
display: flex;
align-items: center;
gap: 16px;
margin-bottom: 16px;
text-decoration: none;
}

.footer_logo_ring {
width: 65px;
height: 65px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 5px;
box-shadow:
0 0 0 2px #2c1a1d,
0 0 0 3px rgba(253, 252, 247, 0.3),
0 3px 6px 0 rgba(134, 36, 48, 0.08);
background: #FDFCF7;
}

.footer_logo_ring img {
width: 58px;
height: 58px;
object-fit: contain;
display: block;
}

.footer_brand_name {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 23px;
font-weight: 700;
line-height: 1.15;
color: #FDFCF7;
letter-spacing: -0.01em;
}

.footer_brand_name span {
color: #00C68B;
}

.footer_tagline {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.55);
max-width: 260px;
}

.footer_trust_col {
flex: 1;
min-width: 200px;
}

.footer_trust_label {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.4;
font-weight: 700;
color: #00C68B;
margin-bottom: 16px;
letter-spacing: 0.04em;
text-transform: uppercase;
}

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

.footer_contact_list li {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.75);
}

.footer_contact_list a {
color: rgba(253, 252, 247, 0.75);
text-decoration: none;
transition: color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.footer_contact_list a:hover {
color: #00C68B;
}

.footer_contact_list a:focus {
color: #00C68B;
outline: 1px solid #00C68B;
outline-offset: 2px;
transform: scale(1.02);
}

.footer_nav_col {
flex: 0 0 auto;
min-width: 160px;
}

.footer_nav_label {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.4;
font-weight: 700;
color: #00C68B;
margin-bottom: 16px;
letter-spacing: 0.04em;
text-transform: uppercase;
}

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

.footer_policy_list li {
display: flex;
}

.footer_policy_link {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.6);
text-decoration: none;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
display: inline-flex;
align-items: center;
gap: 8px;
}

.footer_policy_link::before {
content: '';
display: inline-block;
width: 4px;
height: 4px;
border-radius: 50%;
background: #862430;
flex-shrink: 0;
}

.footer_policy_link:hover {
color: #FDFCF7;
}

.footer_policy_link:focus {
color: #00C68B;
outline: 1px solid #00C68B;
outline-offset: 2px;
transform: scale(1.02);
}

.footer_bottom_row {
max-width: 1170px;
margin: 0 auto;
padding: 16px 40px 24px;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
gap: 16px;
border-top: 1px solid rgba(253, 252, 247, 0.08);
}

.footer_copyright {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.4;
color: rgba(253, 252, 247, 0.35);
}

.footer_founded_note {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.4;
color: rgba(253, 252, 247, 0.25);
font-style: italic;
}

.cookie_popup {
display: none;
position: fixed;
bottom: 24px;
right: 24px;
max-width: 360px;
width: calc(100vw - 48px);
background: #FDFCF7;
border-radius: 5px;
box-shadow: 0 9px 60px 0 rgba(134, 36, 48, 0.11), 0 6px 25px 0 rgba(0, 198, 139, 0.08);
padding: 24px;
z-index: 1200;
border-top: 3px solid #00C68B;
}

.cookie_popup.sliding_in {
animation: cookie_slide_in 0.18s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

.cookie_popup.sliding_out {
animation: cookie_slide_out 0.18s cubic-bezier(0.68, -0.55, 0.27, 1.55) forwards;
}

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

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

@keyframes cookie_slide_out {
from {
transform: translateY(0);
opacity: 1;
}

to {
transform: translateY(-24px);
opacity: 0;
}
}

.cookie_desc_text {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.6;
color: #2c1a1d;
margin-bottom: 16px;
}

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

.cookie_accept_btn {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.4;
color: #FDFCF7;
background: #862430;
border: none;
border-radius: 5px;
padding: 8px 24px;
cursor: pointer;
text-decoration: underline;
transition: background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
min-height: 44px;
display: inline-flex;
align-items: center;
}

.cookie_accept_btn:hover {
background: #6a1c27;
}

.cookie_accept_btn:focus {
outline: 2px solid #00C68B;
outline-offset: 2px;
transform: scale(1.02);
}

.cookie_accept_btn:active {
transform: scale(0.97);
}

.cookie_decline_link {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 16px;
line-height: 1.4;
color: rgba(44, 26, 29, 0.55);
background: none;
border: none;
cursor: pointer;
text-decoration: underline;
padding: 8px 0;
min-height: 44px;
display: inline-flex;
align-items: center;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.cookie_decline_link:hover {
color: #862430;
}

.cookie_decline_link:focus {
outline: 1px solid #00C68B;
outline-offset: 2px;
transform: scale(1.02);
}

@media (max-width: 1024px) {
.header_main_row {
padding: 24px 24px;
gap: 24px;
}

.header_top_inner {
padding: 0 24px;
}

.footer_main_body {
padding: 40px 24px 24px;
}

.footer_bottom_row {
padding: 16px 24px 24px;
}

.footer_editorial_type {
font-size: 58px;
padding: 0 24px;
}
}

@media (max-width: 640px) {
.header_main_row {
flex-direction: column;
align-items: flex-start;
padding: 16px;
gap: 16px;
}

.header_top_inner {
padding: 0 16px;
flex-wrap: wrap;
gap: 8px;
justify-content: flex-start;
}

.header_nav_area {
width: 100%;
justify-content: flex-start;
}

.primary_nav_list {
justify-content: flex-start;
}

.footer_main_body {
padding: 24px 16px 16px;
}

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

.footer_editorial_type {
font-size: 42px;
padding: 0 16px;
}

.footer_grid_row {
flex-direction: column;
gap: 24px;
}
}

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

.footer_editorial_type {
font-size: 30px;
}

.primary_nav_link {
padding: 8px 8px;
font-size: 16px;
}
}

.terms-text-tgd {
max-width: 1170px;
margin: 0 auto;
padding: 80px 40px;
background: #FDFCF7;
}

.terms-text-tgd h1 {
font-size: 58px;
line-height: 1.15;
letter-spacing: -0.03em;
color: #1b1b1b;
margin-bottom: 40px;
margin-top: 0;
}

.terms-text-tgd h2 {
font-size: 42px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #1b1b1b;
margin-top: 80px;
margin-bottom: 24px;
}

.terms-text-tgd h3 {
font-size: 30px;
line-height: 1.4;
letter-spacing: -0.015em;
color: #1b1b1b;
margin-top: 40px;
margin-bottom: 16px;
}

.terms-text-tgd h4 {
font-size: 23px;
line-height: 1.4;
letter-spacing: -0.01em;
color: #1b1b1b;
margin-top: 40px;
margin-bottom: 16px;
}

.terms-text-tgd h5 {
font-size: 19px;
line-height: 1.4;
letter-spacing: -0.005em;
color: #1b1b1b;
margin-top: 24px;
margin-bottom: 8px;
}

.terms-text-tgd h6 {
font-size: 16px;
line-height: 1.6;
letter-spacing: 0.04em;
text-transform: uppercase;
color: #862430;
margin-top: 24px;
margin-bottom: 8px;
}

.terms-text-tgd p {
font-size: 19px;
line-height: 1.6;
color: #2c2c2c;
margin-top: 0;
margin-bottom: 24px;
max-width: 72ch;
}

.terms-text-tgd ul,
.terms-text-tgd ol {
font-size: 19px;
line-height: 1.6;
color: #2c2c2c;
margin-top: 0;
margin-bottom: 24px;
padding-left: 40px;
}

.terms-text-tgd ul {
list-style-type: disc;
}

.terms-text-tgd ol {
list-style-type: decimal;
}

.terms-text-tgd li {
margin-bottom: 8px;
padding-left: 8px;
}

.terms-text-tgd li:last-child {
margin-bottom: 0;
}

.terms-text-tgd ul ul,
.terms-text-tgd ol ol,
.terms-text-tgd ul ol,
.terms-text-tgd ol ul {
margin-top: 8px;
margin-bottom: 8px;
}

.terms-text-tgd strong,
.terms-text-tgd b {
font-weight: 700;
color: #1b1b1b;
}

.terms-text-tgd hr {
border: none;
border-top: 2px solid rgba(0, 198, 139, 0.18);
margin-top: 80px;
margin-bottom: 80px;
}

.terms-text-tgd table {
width: 100%;
border-collapse: collapse;
font-size: 16px;
line-height: 1.6;
color: #2c2c2c;
margin-bottom: 40px;
border-radius: 5px;
overflow: hidden;
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08);
}

.terms-text-tgd thead {
background: rgba(0, 198, 139, 0.1);
}

.terms-text-tgd thead th {
font-size: 16px;
font-weight: 700;
letter-spacing: 0.04em;
text-transform: uppercase;
color: #1b1b1b;
padding: 16px 24px;
text-align: left;
border-bottom: 2px solid rgba(0, 198, 139, 0.25);
}

.terms-text-tgd tbody tr {
transition: background-color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.terms-text-tgd tbody tr:nth-child(even) {
background: rgba(253, 252, 247, 0.6);
}

.terms-text-tgd tbody tr:hover {
background: rgba(0, 198, 139, 0.06);
}

.terms-text-tgd td {
padding: 16px 24px;
border-bottom: 1px solid rgba(0, 198, 139, 0.12);
vertical-align: top;
}

.terms-text-tgd tbody tr:last-child td {
border-bottom: none;
}

@media (max-width: 1024px) {
.terms-text-tgd {
padding: 80px 40px;
}

.terms-text-tgd h1 {
font-size: 42px;
}

.terms-text-tgd h2 {
font-size: 30px;
}
}

@media (max-width: 640px) {
.terms-text-tgd {
padding: 40px 16px;
}

.terms-text-tgd h1 {
font-size: 30px;
}

.terms-text-tgd h2 {
font-size: 23px;
margin-top: 40px;
}

.terms-text-tgd h3 {
font-size: 19px;
margin-top: 24px;
}

.terms-text-tgd h4,
.terms-text-tgd h5 {
font-size: 16px;
margin-top: 24px;
}

.terms-text-tgd p,
.terms-text-tgd ul,
.terms-text-tgd ol {
font-size: 16px;
}

.terms-text-tgd hr {
margin-top: 40px;
margin-bottom: 40px;
}

.terms-text-tgd table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
}

.terms-text-tgd thead th,
.terms-text-tgd td {
padding: 16px;
}
}

@media (max-width: 360px) {
.terms-text-tgd {
padding: 24px 8px;
}

.terms-text-tgd ul,
.terms-text-tgd ol {
padding-left: 24px;
}
}

.nd_pg {
background-color: #FDFCF7;
overflow-x: clip;
position: relative;
}

.nd_pg .pg_bound {
max-width: 1170px;
margin-left: auto;
margin-right: auto;
padding-left: 24px;
padding-right: 24px;
}

.nd_pg .art_top {
padding-top: 80px;
padding-bottom: 80px;
position: relative;
}

.nd_pg .art_top::before {
content: '';
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 0% 0%, rgba(0, 198, 139, 0.07) 0%, transparent 55%),
radial-gradient(ellipse at 100% 100%, rgba(134, 36, 48, 0.06) 0%, transparent 55%);
pointer-events: none;
}

.nd_pg .art_top_grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 80px;
align-items: start;
}

.nd_pg .art_img_col {
position: relative;
}

.nd_pg .art_img_frame {
position: relative;
border-radius: 5px;
overflow: hidden;
}

.nd_pg .art_img_frame::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(160deg, rgba(0, 198, 139, 0.12) 0%, transparent 50%, rgba(134, 36, 48, 0.10) 100%);
pointer-events: none;
}

.nd_pg .art_img_frame img {
display: block;
width: 100%;
max-width: 100%;
height: auto;
object-fit: contain;
border-radius: 5px;
filter: contrast(1.04) saturate(0.96);
}

.nd_pg .art_img_deco {
position: absolute;
top: -16px;
left: -16px;
width: 80px;
height: 80px;
pointer-events: none;
z-index: 0;
}

.nd_pg .art_img_deco rect {
fill: none;
}

.nd_pg .art_img_deco rect:nth-child(1) {
stroke: rgba(0, 198, 139, 0.35);
stroke-width: 1px;
}

.nd_pg .art_img_deco rect:nth-child(2) {
stroke: rgba(0, 198, 139, 0.22);
stroke-width: 1px;
}

.nd_pg .art_img_deco rect:nth-child(3) {
stroke: rgba(0, 198, 139, 0.12);
stroke-width: 1px;
}

.nd_pg .art_txt_col {
display: flex;
flex-direction: column;
gap: 24px;
padding-top: 16px;
}

.nd_pg .art_meta_row {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
flex-wrap: wrap;
}

.nd_pg .art_meta_badge {
display: inline-flex;
align-items: center;
gap: 8px;
background-color: rgba(0, 198, 139, 0.10);
border-radius: 38px;
padding: 8px 16px;
}

.nd_pg .art_meta_badge span {
font-size: 16px;
line-height: 1.4;
color: #00C68B;
font-weight: 600;
letter-spacing: 0.04em;
text-transform: uppercase;
}

.nd_pg .art_meta_date {
font-size: 16px;
line-height: 1.4;
color: #5a4a3a;
}

.nd_pg .art_meta_views {
font-size: 16px;
line-height: 1.4;
color: #7a6a5a;
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
}

.nd_pg .art_meta_views svg {
flex-shrink: 0;
}

.nd_pg .art_heading {
font-size: 42px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #1a0f08;
font-weight: 700;
margin: 0;
}

.nd_pg .art_desc_short {
font-size: 19px;
line-height: 1.6;
color: #3d2e22;
margin: 0;
}

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

.nd_pg .art_like_btn {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
background: none;
border: 1.5px solid rgba(134, 36, 48, 0.30);
border-radius: 38px;
padding: 8px 24px;
cursor: pointer;
font-size: 16px;
line-height: 1.4;
color: #862430;
font-weight: 600;
transition: border-color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), background-color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nd_pg .art_like_btn:hover {
background-color: rgba(134, 36, 48, 0.07);
border-color: #862430;
}

.nd_pg .art_like_btn:active {
transform: scale(0.95);
}

.nd_pg .art_like_btn svg {
flex-shrink: 0;
}

.nd_pg .art_back_lnk {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 16px;
line-height: 1.4;
color: #00C68B;
text-decoration: none;
font-weight: 600;
border: 1.5px solid transparent;
border-radius: 5px;
padding: 8px 0;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nd_pg .art_back_lnk:hover {
color: #007a56;
}

.nd_pg .art_back_lnk svg {
transition: transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nd_pg .art_back_lnk:hover svg {
transform: translateX(-4px);
}

.nd_pg .art_divider {
display: flex;
flex-direction: row;
align-items: center;
gap: 0;
width: 100%;
height: 16px;
position: relative;
overflow: hidden;
}

.nd_pg .art_divider_line {
flex: 1;
height: 1px;
background-color: rgba(0, 198, 139, 0.25);
position: relative;
}

.nd_pg .art_divider_tick {
width: 1px;
height: 8px;
background-color: rgba(0, 198, 139, 0.40);
margin: 0 24px;
flex-shrink: 0;
}

.nd_pg .art_body_sec {
padding-top: 0;
padding-bottom: 80px;
position: relative;
}

.nd_pg .art_body_sec::before {
content: '';
position: absolute;
inset: 0;
background:
radial-gradient(ellipse at 0% 50%, rgba(0, 198, 139, 0.04) 0%, transparent 40%),
radial-gradient(ellipse at 100% 50%, rgba(134, 36, 48, 0.04) 0%, transparent 40%);
pointer-events: none;
}

.nd_pg .art_body_wrap {
display: grid;
grid-template-columns: 1fr 340px;
gap: 80px;
align-items: start;
}

.nd_pg .art_body_text {
font-size: 19px;
line-height: 1.6;
color: #2a1e14;
}

.nd_pg .art_body_text p {
margin-top: 0;
margin-bottom: 24px;
font-size: 19px;
line-height: 1.6;
color: #2a1e14;
}

.nd_pg .art_body_text h2 {
font-size: 30px;
line-height: 1.15;
letter-spacing: -0.015em;
color: #1a0f08;
font-weight: 700;
margin-top: 40px;
margin-bottom: 16px;
text-transform: uppercase;
font-weight: 300;
letter-spacing: 0.06em;
}

.nd_pg .art_body_text h4 {
font-size: 23px;
line-height: 1.4;
color: #1a0f08;
font-weight: 600;
margin-top: 40px;
margin-bottom: 16px;
letter-spacing: 0.02em;
text-transform: uppercase;
font-weight: 300;
}

.nd_pg .art_body_text ins {
text-decoration: none;
color: #00C68B;
font-weight: 700;
}

.nd_pg .art_body_text mark {
background-color: rgba(0, 198, 139, 0.15);
color: #1a0f08;
border-radius: 5px;
padding: 0 4px;
}

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

.nd_pg .art_body_text ul li {
display: flex;
flex-direction: row;
align-items: baseline;
gap: 16px;
font-size: 19px;
line-height: 1.6;
color: #2a1e14;
position: relative;
padding-right: 24px;
}

.nd_pg .art_body_text ul li::after {
content: '';
display: block;
width: 6px;
height: 6px;
background-color: #00C68B;
border-radius: 50%;
flex-shrink: 0;
margin-left: auto;
align-self: center;
order: 1;
}

.nd_pg .art_body_text ol {
margin: 0 0 24px 0;
padding: 0;
list-style: none;
counter-reset: art_ol;
display: flex;
flex-direction: column;
gap: 8px;
}

.nd_pg .art_body_text ol li {
display: flex;
flex-direction: row;
align-items: baseline;
gap: 16px;
font-size: 19px;
line-height: 1.6;
color: #2a1e14;
counter-increment: art_ol;
justify-content: space-between;
}

.nd_pg .art_body_text ol li::after {
content: counter(art_ol, decimal-leading-zero);
font-size: 16px;
color: #00C68B;
font-weight: 700;
flex-shrink: 0;
min-width: 24px;
text-align: right;
}

.nd_pg .art_body_text table {
width: 100%;
border-collapse: collapse;
margin-bottom: 24px;
font-size: 16px;
line-height: 1.4;
}

.nd_pg .art_body_text caption {
font-size: 16px;
line-height: 1.4;
color: #7a6a5a;
text-align: left;
padding-bottom: 8px;
font-style: italic;
}

.nd_pg .art_body_text th {
background-color: rgba(0, 198, 139, 0.10);
color: #1a0f08;
font-weight: 600;
padding: 8px 16px;
text-align: left;
border-bottom: 2px solid rgba(0, 198, 139, 0.25);
}

.nd_pg .art_body_text td {
padding: 8px 16px;
border-bottom: 1px solid rgba(0, 198, 139, 0.12);
color: #2a1e14;
}

.nd_pg .art_body_text tfoot td {
font-weight: 600;
background-color: rgba(0, 198, 139, 0.06);
color: #1a0f08;
}

.nd_pg .art_body_text time {
font-size: 16px;
color: #7a6a5a;
font-style: italic;
}

.nd_pg .art_body_text a {
color: #00C68B;
text-decoration: none;
border-bottom: 1px solid transparent;
transition: border-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nd_pg .art_body_text a:hover {
border-bottom-color: #00C68B;
}

.nd_pg .art_aside {
display: flex;
flex-direction: column;
gap: 40px;
position: sticky;
top: 24px;
}

.nd_pg .art_aside_card {
background-color: #fff;
border-radius: 5px;
padding: 24px;
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
}

.nd_pg .art_aside_card_head {
font-size: 16px;
line-height: 1.4;
color: #1a0f08;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.08em;
margin-bottom: 16px;
padding-bottom: 16px;
border-bottom: 1px solid rgba(0, 198, 139, 0.18);
}

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

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

.nd_pg .art_stat_icon_wrap {
width: 40px;
height: 40px;
border-radius: 50%;
background-color: rgba(0, 198, 139, 0.12);
border: 1.5px solid rgba(0, 198, 139, 0.30);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

.nd_pg .art_stat_icon_wrap.accent_red {
background-color: rgba(134, 36, 48, 0.10);
border-color: rgba(134, 36, 48, 0.25);
}

.nd_pg .art_stat_label {
font-size: 16px;
line-height: 1.4;
color: #7a6a5a;
display: block;
}

.nd_pg .art_stat_val {
font-size: 23px;
line-height: 1.15;
color: #1a0f08;
font-weight: 700;
display: block;
}

.nd_pg .art_cta_lnk {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 8px;
background-color: #00C68B;
border-radius: 5px;
padding: 16px 24px;
text-decoration: none;
color: #fff;
font-size: 16px;
line-height: 1.4;
font-weight: 700;
transition: background-color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
}

.nd_pg .art_cta_lnk:hover {
background-color: #00a877;
}

.nd_pg .art_cta_lnk:active {
transform: scale(0.97);
}

.nd_pg .art_cta_lnk svg {
flex-shrink: 0;
transition: transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nd_pg .art_cta_lnk:hover svg {
transform: translateX(4px);
}

.nd_pg .art_nav_links {
display: flex;
flex-direction: column;
gap: 8px;
}

.nd_pg .art_nav_item {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 8px;
padding: 8px 0;
text-decoration: none;
color: #2a1e14;
font-size: 16px;
line-height: 1.4;
border-bottom: 1px solid rgba(0, 198, 139, 0.10);
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
position: relative;
}

.nd_pg .art_nav_item:last-child {
border-bottom: none;
}

.nd_pg .art_nav_item:hover {
color: #00C68B;
}

.nd_pg .art_nav_item:focus-visible {
outline: 2px solid #00C68B;
outline-offset: 2px;
border-radius: 5px;
}

.nd_pg .art_nav_item svg {
flex-shrink: 0;
opacity: 0.5;
transition: opacity 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nd_pg .art_nav_item:hover svg {
opacity: 1;
transform: translateX(3px);
}

.nd_pg .art_wave_div {
display: block;
width: 100%;
height: 40px;
overflow: hidden;
line-height: 0;
}

.nd_pg .art_wave_div svg {
display: block;
width: 100%;
height: 40px;
}

@keyframes nd_bg_shift {
0% {
background-position: 0% 0%;
}

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

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

.nd_pg .art_aside_wavy {
background:
repeating-linear-gradient(170deg,
transparent 0px,
transparent 14px,
rgba(0, 198, 139, 0.06) 14px,
rgba(0, 198, 139, 0.06) 15px);
background-size: 200% 200%;
animation: nd_bg_shift 12s linear infinite;
border-radius: 5px;
padding: 24px;
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08);
}

.nd_pg .art_aside_wavy .art_aside_card_head {
border-bottom-color: rgba(0, 198, 139, 0.20);
}

@keyframes nd_emerge {
0% {
opacity: 0;
transform: translateY(24px);
}

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

.nd_pg .art_txt_col {
animation: nd_emerge 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.nd_pg .art_img_col {
animation: nd_emerge 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) 0.07s both;
}

.nd_pg .art_back_lnk:focus-visible {
outline: 2px solid #00C68B;
outline-offset: 2px;
border-radius: 5px;
}

.nd_pg .art_like_btn:focus-visible {
outline: 2px solid #862430;
outline-offset: 2px;
}

.nd_pg .art_cta_lnk:focus-visible {
outline: 2px solid #007a56;
outline-offset: 2px;
}

@media (max-width: 1024px) {
.nd_pg .art_top_grid {
grid-template-columns: 1fr;
gap: 40px;
}

.nd_pg .art_body_wrap {
grid-template-columns: 1fr;
gap: 40px;
}

.nd_pg .art_aside {
position: static;
}

.nd_pg .art_heading {
font-size: 30px;
}
}

@media (max-width: 640px) {
.nd_pg .art_top {
padding-top: 40px;
padding-bottom: 40px;
}

.nd_pg .art_body_sec {
padding-bottom: 40px;
}

.nd_pg .art_heading {
font-size: 23px;
}

.nd_pg .art_body_text h2 {
font-size: 23px;
}

.nd_pg .art_body_text h4 {
font-size: 19px;
}

.nd_pg .art_meta_row {
gap: 8px;
}
}

@media (max-width: 360px) {
.nd_pg .pg_bound {
padding-left: 16px;
padding-right: 16px;
}

.nd_pg .art_heading {
font-size: 19px;
}
}

.frst {
overflow-x: hidden;
background-color: #FDFCF7;
}

.frst .pg_wrap {
max-width: 1170px;
margin-left: auto;
margin-right: auto;
padding-left: 40px;
padding-right: 40px;
}

.frst .t_blk {
position: relative;
padding-top: 80px;
padding-bottom: 80px;
background-color: #FDFCF7;
overflow: hidden;
}

.frst .t_blk_noise {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 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.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/feTurbulence%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/svg%3E");
opacity: 0.045;
}

.frst .t_blk_bloom {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0;
background: radial-gradient(ellipse 70% 60% at 50% 50%, rgba(0, 198, 139, 0.09) 0%, rgba(134, 36, 48, 0.05) 55%, transparent 80%);
}

.frst .t_blk_inner {
position: relative;
z-index: 1;
display: flex;
flex-direction: row;
align-items: center;
gap: 40px;
}

.frst .t_blk_text {
flex: 1 1 0;
padding-right: 40px;
padding-top: 40px;
padding-bottom: 40px;
}

.frst .t_blk_img_zone {
flex: 0 0 420px;
max-width: 420px;
padding-left: 16px;
padding-top: 24px;
padding-bottom: 24px;
}

.frst .t_blk_img_wrap {
border-radius: 38px;
overflow: hidden;
position: relative;
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
}

.frst .t_blk_img_wrap img {
display: block;
width: 100%;
max-width: 100%;
height: 460px;
object-fit: cover;
filter: saturate(0.85) contrast(1.04);
transition: filter 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.frst .t_blk_img_wrap:hover img {
filter: saturate(1) contrast(1);
}

.frst .t_blk_img_grain {
position: absolute;
inset: 0;
pointer-events: none;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='turbulence' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/svg%3E");
opacity: 0.06;
border-radius: 38px;
}

.frst .t_label {
display: inline-block;
font-size: 16px;
line-height: 1.4;
letter-spacing: 0.08em;
text-transform: uppercase;
color: #00C68B;
font-weight: 600;
margin-bottom: 24px;
}

.frst .t_h1 {
font-size: 58px;
line-height: 1.15;
letter-spacing: -0.025em;
color: #1b1b1b;
font-weight: 700;
margin-bottom: 24px;
}

.frst .t_h1 .acc_word {
color: #00C68B;
}

.frst .t_h1_pause {
display: block;
}

.frst .t_lead {
font-size: 19px;
line-height: 1.6;
color: #3a3a3a;
max-width: 480px;
margin-bottom: 40px;
}

.frst .t_btn {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 16px;
line-height: 1.4;
font-weight: 600;
color: #FDFCF7;
background-color: #00C68B;
border: none;
border-radius: 5px;
padding: 16px 40px;
cursor: pointer;
text-decoration: none;
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
transition: transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.frst .t_btn:hover {
transform: translateY(-2px);
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
}

.frst .t_btn:active {
transform: scale(0.97);
}

.frst .t_btn_arrow {
display: inline-block;
width: 18px;
height: 18px;
}

.frst .t_btn_arrow svg {
display: block;
}

.frst .t_stat_row {
display: flex;
flex-direction: row;
gap: 40px;
margin-top: 40px;
}

.frst .t_stat_item {
display: flex;
flex-direction: column;
gap: 8px;
}

.frst .t_stat_num {
font-size: 42px;
line-height: 1.15;
font-weight: 700;
color: #862430;
letter-spacing: -0.02em;
}

.frst .t_stat_desc {
font-size: 16px;
line-height: 1.4;
color: #3a3a3a;
}

.frst .t_blk_curve {
position: absolute;
bottom: -1px;
left: 0;
width: 100%;
pointer-events: none;
z-index: 2;
}

.frst .sec_team {
padding-top: 80px;
padding-bottom: 80px;
background-color: #FDFCF7;
position: relative;
}

.frst .sec_team_inner {
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start;
}

.frst .sec_team_sidebar {
flex: 0 0 220px;
padding-top: 8px;
}

.frst .sec_team_sidebar_label {
font-size: 16px;
line-height: 1.4;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #00C68B;
font-weight: 600;
margin-bottom: 16px;
}

.frst .sec_team_sidebar_num {
font-size: 72px;
line-height: 1.15;
font-weight: 700;
color: #862430;
letter-spacing: -0.03em;
}

.frst .sec_team_sidebar_caption {
font-size: 16px;
line-height: 1.6;
color: #3a3a3a;
margin-top: 16px;
}

.frst .sec_team_body {
flex: 1 1 0;
}

.frst .sec_team_h2 {
font-size: 42px;
line-height: 1.15;
letter-spacing: -0.02em;
font-weight: 700;
color: #1b1b1b;
margin-bottom: 24px;
text-transform: uppercase;
font-weight: 300;
letter-spacing: 0.04em;
}

.frst .sec_team_h2 .acc_word {
color: #00C68B;
font-weight: 700;
}

.frst .sec_team_h2 .und_word {
position: relative;
display: inline-block;
}

.frst .sec_team_h2 .und_word::after {
content: '';
position: absolute;
left: 0;
bottom: -4px;
width: 100%;
height: 3px;
background-color: #862430;
border-radius: 5px;
}

.frst .sec_team_txt {
font-size: 19px;
line-height: 1.6;
color: #3a3a3a;
margin-bottom: 24px;
max-width: 560px;
}

.frst .sec_team_pull {
font-size: 23px;
line-height: 1.4;
font-weight: 600;
color: #862430;
float: right;
max-width: 220px;
margin-left: 40px;
margin-bottom: 16px;
}

.frst .sec_team_img {
width: 100%;
max-width: 100%;
height: 320px;
object-fit: cover;
border-radius: 5px;
display: block;
filter: saturate(0.82) contrast(1.03);
transition: filter 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
margin-top: 24px;
}

.frst .sec_team_img:hover {
filter: saturate(1) contrast(1);
}

.frst .sec_env {
padding-top: 80px;
padding-bottom: 80px;
background-color: #f5f3ec;
position: relative;
}

.frst .sec_env::before {
content: '';
position: absolute;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400'%3E%3Cfilter id='t'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/svg%3E");
opacity: 0.04;
pointer-events: none;
z-index: 0;
}

.frst .sec_env_inner {
position: relative;
z-index: 1;
}

.frst .sec_env_top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
margin-bottom: 40px;
}

.frst .sec_env_h2 {
font-size: 42px;
line-height: 1.15;
letter-spacing: 0.03em;
text-transform: uppercase;
font-weight: 300;
color: #1b1b1b;
max-width: 520px;
}

.frst .sec_env_h2 .acc_word {
color: #00C68B;
font-weight: 700;
}

.frst .sec_env_sub {
font-size: 16px;
line-height: 1.6;
color: #3a3a3a;
max-width: 300px;
text-align: right;
}

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

.frst .env_card {
background-color: #FDFCF7;
border-radius: 38px;
padding: 40px;
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08);
transition: box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
position: relative;
overflow: hidden;
}

.frst .env_card:hover {
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
transform: translateY(-4px);
}

.frst .env_card_num {
font-size: 58px;
line-height: 1.15;
font-weight: 700;
color: rgba(0, 198, 139, 0.15);
letter-spacing: -0.03em;
position: absolute;
top: 16px;
right: 24px;
pointer-events: none;
}

.frst .env_card_h4 {
font-size: 19px;
line-height: 1.4;
font-weight: 700;
color: #1b1b1b;
margin-bottom: 16px;
letter-spacing: 0.01em;
}

.frst .env_card_txt {
font-size: 16px;
line-height: 1.6;
color: #3a3a3a;
}

.frst .sec_exp {
padding-top: 80px;
padding-bottom: 80px;
background-color: #FDFCF7;
}

.frst .sec_exp_inner {
display: flex;
flex-direction: row;
gap: 80px;
align-items: center;
}

.frst .sec_exp_img_col {
flex: 0 0 380px;
max-width: 380px;
}

.frst .sec_exp_img_wrap {
border-radius: 38px;
overflow: hidden;
box-shadow: 0 9px 60px 0 rgba(134, 36, 48, 0.11);
position: relative;
}

.frst .sec_exp_img_wrap img {
display: block;
width: 100%;
height: 440px;
object-fit: cover;
filter: saturate(0.8) contrast(1.05);
transition: filter 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.frst .sec_exp_img_wrap:hover img {
filter: saturate(1) contrast(1);
}

.frst .sec_exp_overlay {
position: absolute;
bottom: 0;
left: 0;
right: 0;
padding: 24px;
background: linear-gradient(transparent, rgba(134, 36, 48, 0.72));
border-radius: 0 0 38px 38px;
}

.frst .sec_exp_overlay_name {
font-size: 19px;
line-height: 1.4;
font-weight: 700;
color: #FDFCF7;
}

.frst .sec_exp_overlay_role {
font-size: 16px;
line-height: 1.4;
color: rgba(253, 252, 247, 0.8);
}

.frst .sec_exp_text_col {
flex: 1 1 0;
}

.frst .sec_exp_label {
font-size: 16px;
line-height: 1.4;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #862430;
font-weight: 600;
margin-bottom: 16px;
}

.frst .sec_exp_h2 {
font-size: 42px;
line-height: 1.15;
letter-spacing: 0.03em;
text-transform: uppercase;
font-weight: 300;
color: #1b1b1b;
margin-bottom: 24px;
}

.frst .sec_exp_h2 .acc_word {
color: #862430;
font-weight: 700;
}

.frst .sec_exp_pull {
font-size: 23px;
line-height: 1.4;
font-weight: 600;
color: #00C68B;
float: right;
max-width: 200px;
margin-left: 24px;
margin-bottom: 16px;
}

.frst .sec_exp_txt {
font-size: 19px;
line-height: 1.6;
color: #3a3a3a;
margin-bottom: 24px;
}

.frst .sec_exp_quote {
border-top: 2px solid rgba(0, 198, 139, 0.25);
padding-top: 24px;
margin-top: 24px;
font-size: 19px;
line-height: 1.6;
color: #1b1b1b;
font-style: italic;
}

.frst .sec_fit {
padding-top: 80px;
padding-bottom: 80px;
background: linear-gradient(160deg, rgba(0, 198, 139, 0.06) 0%, #FDFCF7 40%, rgba(134, 36, 48, 0.06) 100%);
position: relative;
}

.frst .sec_fit_inner {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 80px;
align-items: start;
}

.frst .sec_fit_left {
padding-right: 40px;
}

.frst .sec_fit_h2 {
font-size: 42px;
line-height: 1.15;
letter-spacing: 0.03em;
text-transform: uppercase;
font-weight: 300;
color: #1b1b1b;
margin-bottom: 24px;
}

.frst .sec_fit_h2 .acc_word {
color: #00C68B;
font-weight: 700;
}

.frst .sec_fit_txt {
font-size: 19px;
line-height: 1.6;
color: #3a3a3a;
margin-bottom: 24px;
}

.frst .sec_fit_right {
display: flex;
flex-direction: column;
gap: 24px;
}

.frst .fit_row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 24px;
padding: 24px;
border-radius: 5px;
background-color: #FDFCF7;
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08);
transition: box-shadow 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.frst .fit_row:hover {
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
}

.frst .fit_row_marker {
flex: 0 0 40px;
width: 40px;
height: 40px;
border-radius: 5px;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
}

.frst .fit_row_marker.yes {
background-color: rgba(0, 198, 139, 0.12);
}

.frst .fit_row_marker.no {
background-color: rgba(134, 36, 48, 0.1);
}

.frst .fit_row_marker svg {
display: block;
}

.frst .fit_row_body {
flex: 1 1 0;
}

.frst .fit_row_h5 {
font-size: 16px;
line-height: 1.4;
font-weight: 700;
color: #1b1b1b;
margin-bottom: 8px;
}

.frst .fit_row_desc {
font-size: 16px;
line-height: 1.6;
color: #3a3a3a;
}

.frst .sec_journey {
padding-top: 80px;
padding-bottom: 80px;
background-color: #1b1b1b;
position: relative;
overflow: hidden;
}

.frst .sec_journey_bg_edge {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
pointer-events: none;
background: linear-gradient(160deg, rgba(0, 198, 139, 0.07) 0%, transparent 50%, rgba(134, 36, 48, 0.07) 100%);
}

.frst .sec_journey_inner {
position: relative;
z-index: 1;
}

.frst .sec_journey_top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
margin-bottom: 40px;
}

.frst .sec_journey_h2 {
font-size: 42px;
line-height: 1.15;
letter-spacing: 0.04em;
text-transform: uppercase;
font-weight: 300;
color: #FDFCF7;
max-width: 520px;
}

.frst .sec_journey_h2 .acc_word {
color: #00C68B;
font-weight: 700;
}

.frst .sec_journey_sub {
font-size: 16px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.6);
max-width: 260px;
text-align: right;
}

.frst .journey_phases {
display: flex;
flex-direction: column;
gap: 0;
}

.frst .journey_phase {
display: flex;
flex-direction: row;
align-items: stretch;
gap: 40px;
padding-top: 40px;
padding-bottom: 40px;
border-top: 1px solid rgba(253, 252, 247, 0.1);
}

.frst .journey_phase:last-child {
border-bottom: 1px solid rgba(253, 252, 247, 0.1);
}

.frst .journey_phase_idx {
flex: 0 0 80px;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: flex-start;
padding-top: 8px;
}

.frst .journey_phase_num {
font-size: 42px;
line-height: 1.15;
font-weight: 700;
color: rgba(0, 198, 139, 0.3);
letter-spacing: -0.02em;
}

.frst .journey_phase_body {
flex: 1 1 0;
display: flex;
flex-direction: row;
gap: 40px;
align-items: flex-start;
}

.frst .journey_phase_text {
flex: 1 1 0;
}

.frst .journey_phase_h4 {
font-size: 23px;
line-height: 1.4;
font-weight: 700;
color: #FDFCF7;
margin-bottom: 16px;
letter-spacing: 0.01em;
}

.frst .journey_phase_txt {
font-size: 16px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.7);
}

.frst .journey_phase_aside {
flex: 0 0 200px;
padding-top: 8px;
}

.frst .journey_phase_tag {
display: inline-block;
font-size: 16px;
line-height: 1.4;
font-weight: 600;
color: #00C68B;
background-color: rgba(0, 198, 139, 0.1);
border-radius: 5px;
padding: 8px 16px;
}

@keyframes slide_in_right {
from {
opacity: 0;
transform: translateX(48px);
}

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

.frst .t_blk_text {
animation: slide_in_right 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

.frst .t_blk_img_zone {
animation: slide_in_right 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) 0.1s both;
}

.frst .t_stat_item:nth-child(1) {
animation: slide_in_right 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) 0.18s both;
}

.frst .t_stat_item:nth-child(2) {
animation: slide_in_right 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) 0.24s both;
}

.frst .t_stat_item:nth-child(3) {
animation: slide_in_right 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) 0.3s both;
}

.frst .sec_team_hover_group {
display: inline;
}

.frst .sec_team_hover_group:hover .team_ul_word {
text-decoration: underline;
text-decoration-color: #00C68B;
text-underline-offset: 3px;
}

.frst .env_card_h4 .und_word {
position: relative;
display: inline-block;
}

.frst .env_card_h4 .und_word::after {
content: '';
position: absolute;
left: 0;
bottom: -3px;
width: 100%;
height: 2px;
background-color: #00C68B;
border-radius: 5px;
transform: scaleX(0);
transform-origin: left center;
transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.frst .env_card:hover .env_card_h4 .und_word::after {
transform: scaleX(1);
}

.frst a.content_lnk {
color: #862430;
text-decoration: none;
outline: 2px solid transparent;
outline-offset: 2px;
transition: outline-color 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55);
border-radius: 5px;
}

.frst a.content_lnk:hover {
outline-color: #862430;
}

.frst a.content_lnk:focus {
outline-color: #00C68B;
}

@media (max-width: 1024px) {
.frst .t_blk_inner {
flex-direction: column;
}

.frst .t_blk_img_zone {
flex: 0 0 auto;
max-width: 100%;
width: 100%;
padding-left: 0;
}

.frst .t_blk_img_wrap img {
height: 340px;
}

.frst .t_blk_text {
padding-right: 0;
}

.frst .t_h1 {
font-size: 42px;
}

.frst .sec_team_inner {
flex-direction: column;
gap: 40px;
}

.frst .sec_team_sidebar {
flex: 0 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 40px;
}

.frst .sec_env_grid {
grid-template-columns: 1fr 1fr;
}

.frst .sec_exp_inner {
flex-direction: column;
gap: 40px;
}

.frst .sec_exp_img_col {
flex: 0 0 auto;
max-width: 100%;
width: 100%;
}

.frst .sec_exp_img_wrap img {
height: 320px;
}

.frst .sec_fit_inner {
grid-template-columns: 1fr;
gap: 40px;
}

.frst .sec_fit_left {
padding-right: 0;
}

.frst .journey_phase_body {
flex-direction: column;
gap: 16px;
}

.frst .journey_phase_aside {
flex: 0 0 auto;
}

.frst .sec_journey_top {
flex-direction: column;
align-items: flex-start;
gap: 16px;
}

.frst .sec_journey_sub {
text-align: left;
max-width: 100%;
}

.frst .sec_env_top {
flex-direction: column;
align-items: flex-start;
gap: 16px;
}

.frst .sec_env_sub {
text-align: left;
max-width: 100%;
}
}

@media (max-width: 640px) {
.frst .pg_wrap {
padding-left: 16px;
padding-right: 16px;
}

.frst .t_blk {
padding-top: 40px;
padding-bottom: 40px;
}

.frst .t_h1 {
font-size: 30px;
}

.frst .t_lead {
font-size: 16px;
}

.frst .t_stat_row {
flex-direction: column;
gap: 16px;
}

.frst .sec_env_grid {
grid-template-columns: 1fr;
}

.frst .sec_team {
padding-top: 40px;
padding-bottom: 40px;
}

.frst .sec_env {
padding-top: 40px;
padding-bottom: 40px;
}

.frst .sec_exp {
padding-top: 40px;
padding-bottom: 40px;
}

.frst .sec_fit {
padding-top: 40px;
padding-bottom: 40px;
}

.frst .sec_journey {
padding-top: 40px;
padding-bottom: 40px;
}

.frst .sec_team_h2 {
font-size: 30px;
}

.frst .sec_env_h2 {
font-size: 30px;
}

.frst .sec_exp_h2 {
font-size: 30px;
}

.frst .sec_fit_h2 {
font-size: 30px;
}

.frst .sec_journey_h2 {
font-size: 30px;
}

.frst .sec_team_sidebar {
flex-direction: column;
align-items: flex-start;
gap: 16px;
}

.frst .journey_phase {
flex-direction: column;
gap: 16px;
}

.frst .journey_phase_idx {
flex: 0 0 auto;
}

.frst .sec_exp_pull {
float: none;
max-width: 100%;
margin-left: 0;
margin-bottom: 16px;
}

.frst .sec_team_pull {
float: none;
max-width: 100%;
margin-left: 0;
}
}

@media (max-width: 360px) {
.frst .t_h1 {
font-size: 23px;
}

.frst .t_stat_num {
font-size: 30px;
}

.frst .env_card {
padding: 24px;
}
}

.nws_pg {
background: #FDFCF7;
overflow-x: hidden;
width: 100%;
}

.nws_pg .pg_strip {
background: linear-gradient(180deg, #00C68B 0%, #00C68B 60%, transparent 100%);
padding: 40px 24px 80px;
position: relative;
}

.nws_pg .pg_strip::before {
content: '';
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 20% 50%, transparent 40%, rgba(0, 198, 139, 0.18) 100%);
pointer-events: none;
}

.nws_pg .pg_strip_inner {
max-width: 1170px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 40px;
position: relative;
z-index: 1;
}

.nws_pg .pg_strip_text {
flex: 0 0 60%;
max-width: 60%;
}

.nws_pg .pg_strip_label {
display: inline-block;
font-size: 16px;
line-height: 1.4;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #FDFCF7;
opacity: 0.78;
margin-bottom: 16px;
}

.nws_pg .pg_strip_h1 {
font-size: 58px;
line-height: 1.15;
letter-spacing: -0.03em;
color: #FDFCF7;
margin: 0 0 16px;
text-transform: uppercase;
font-weight: 300;
}

.nws_pg .pg_strip_h1 strong {
font-weight: 700;
color: #FDFCF7;
}

.nws_pg .pg_strip_desc {
font-size: 19px;
line-height: 1.6;
color: #FDFCF7;
opacity: 0.88;
margin: 0;
max-width: 480px;
}

.nws_pg .pg_strip_img_wrap {
flex: 0 0 40%;
max-width: 40%;
border-radius: 5px;
overflow: hidden;
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
position: relative;
}

.nws_pg .pg_strip_img_wrap::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(180deg, rgba(0, 198, 139, 0.45) 0%, transparent 60%);
pointer-events: none;
}

.nws_pg .pg_strip_img_wrap img {
width: 100%;
height: 260px;
object-fit: cover;
display: block;
max-width: 100%;
}

.nws_pg .pg_strip_deco {
position: absolute;
left: 58%;
top: 50%;
transform: translateY(-50%);
width: 80px;
height: 80px;
border-radius: 38px;
border: 2px solid rgba(253, 252, 247, 0.18);
pointer-events: none;
animation: nws_spin 9s linear infinite;
z-index: 0;
}

@keyframes nws_spin {
from {
transform: translateY(-50%) rotate(0deg);
}

to {
transform: translateY(-50%) rotate(360deg);
}
}

.nws_pg .posts_area {
max-width: 1170px;
margin: 0 auto;
padding: 80px 24px;
}

.nws_pg .posts_grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 40px;
}

.nws_pg .post_card {
background: #fff;
border-radius: 5px;
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
overflow: hidden;
display: flex;
flex-direction: column;
transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nws_pg .post_card:hover {
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
transform: translateY(-4px);
}

.nws_pg .posts_grid:hover .post_card:not(:hover) {
filter: blur(1.5px);
opacity: 0.82;
transition: filter 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55), opacity 0.22s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.nws_pg .post_img_wrap {
width: 100%;
height: 220px;
overflow: hidden;
position: relative;
}

.nws_pg .post_img_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
max-width: 100%;
transition: transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nws_pg .post_card:hover .post_img_wrap img {
transform: scale(1.04);
}

.nws_pg .post_body {
padding: 24px;
display: flex;
flex-direction: column;
flex: 1;
gap: 16px;
}

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

.nws_pg .post_date {
font-size: 16px;
line-height: 1.4;
color: #862430;
letter-spacing: 0.04em;
}

.nws_pg .post_stats {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
margin-left: auto;
}

.nws_pg .post_stat {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 16px;
line-height: 1.4;
color: #444;
}

.nws_pg .stat_icon {
width: 18px;
height: 18px;
flex-shrink: 0;
}

.nws_pg .post_title_link {
text-decoration: none;
color: #1b1b1b;
display: block;
}

.nws_pg .post_title_link:hover .post_article_title {
color: #00C68B;
}

.nws_pg .post_article_title {
font-size: 23px;
line-height: 1.4;
letter-spacing: -0.01em;
font-weight: 700;
margin: 0;
transition: color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nws_pg .post_excerpt {
font-size: 16px;
line-height: 1.6;
color: #555;
margin: 0;
}

.nws_pg .post_read_link {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 16px;
line-height: 1.4;
color: #00C68B;
text-decoration: none;
font-weight: 600;
letter-spacing: 0.03em;
margin-top: auto;
transition: gap 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nws_pg .post_read_link:hover {
gap: 16px;
}

.nws_pg .post_read_link:focus-visible {
outline: 2px solid #00C68B;
outline-offset: 2px;
border-radius: 5px;
}

.nws_pg .post_read_arrow {
width: 18px;
height: 18px;
flex-shrink: 0;
}

.nws_pg .about_strip {
background: #1b1b1b;
position: relative;
overflow: hidden;
padding: 80px 24px;
}

.nws_pg .about_strip::before {
content: '';
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 10% 90%, rgba(134, 36, 48, 0.18) 0%, transparent 60%),
radial-gradient(ellipse at 90% 10%, rgba(0, 198, 139, 0.10) 0%, transparent 55%);
pointer-events: none;
}

.nws_pg .about_strip_poly {
position: absolute;
right: -40px;
bottom: -40px;
width: 320px;
height: 320px;
opacity: 0.06;
pointer-events: none;
}

.nws_pg .about_inner {
max-width: 1170px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: stretch;
gap: 80px;
position: relative;
z-index: 1;
}

.nws_pg .about_text_col {
flex: 0 0 58%;
max-width: 58%;
display: flex;
flex-direction: column;
gap: 24px;
}

.nws_pg .about_eyebrow {
font-size: 16px;
line-height: 1.4;
letter-spacing: 0.14em;
text-transform: uppercase;
color: #00C68B;
font-weight: 600;
}

.nws_pg .about_h2 {
font-size: 42px;
line-height: 1.15;
letter-spacing: -0.02em;
font-weight: 300;
text-transform: uppercase;
color: #FDFCF7;
margin: 0;
}

.nws_pg .about_h2 strong {
font-weight: 700;
color: #00C68B;
}

.nws_pg .about_body {
font-size: 19px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.78);
margin: 0;
}

.nws_pg .about_link_btn {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 19px;
line-height: 1.4;
color: #FDFCF7;
text-decoration: none;
font-weight: 600;
border-bottom: 2px solid #00C68B;
padding-bottom: 4px;
width: fit-content;
transition: color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), gap 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nws_pg .about_link_btn:hover {
color: #00C68B;
gap: 16px;
}

.nws_pg .about_link_btn:focus-visible {
outline: 2px solid #00C68B;
outline-offset: 3px;
border-radius: 5px;
}

.nws_pg .about_data_col {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
justify-content: center;
}

.nws_pg .about_metric {
display: flex;
flex-direction: column;
gap: 8px;
padding: 24px;
border-radius: 5px;
background: rgba(253, 252, 247, 0.05);
box-shadow: inset 0 3px 6px 0 rgba(0, 198, 139, 0.08);
transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.nws_pg .about_metric:hover {
background: rgba(0, 198, 139, 0.10);
}

.nws_pg .about_metric_num {
font-size: 42px;
line-height: 1.15;
font-weight: 700;
color: #00C68B;
letter-spacing: -0.02em;
}

.nws_pg .about_metric_label {
font-size: 16px;
line-height: 1.4;
color: rgba(253, 252, 247, 0.65);
text-transform: uppercase;
letter-spacing: 0.08em;
}

.nws_pg .contact_strip {
padding: 80px 24px;
background: #FDFCF7;
position: relative;
}

.nws_pg .contact_strip::before {
content: '';
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 80% 50%, rgba(134, 36, 48, 0.05) 0%, transparent 65%);
pointer-events: none;
}

.nws_pg .contact_inner {
max-width: 1170px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 80px;
position: relative;
z-index: 1;
}

.nws_pg .contact_left {
flex: 0 0 42%;
max-width: 42%;
}

.nws_pg .contact_eyebrow {
font-size: 16px;
line-height: 1.4;
letter-spacing: 0.14em;
text-transform: uppercase;
color: #862430;
font-weight: 600;
margin-bottom: 16px;
display: block;
}

.nws_pg .contact_h2 {
font-size: 42px;
line-height: 1.15;
letter-spacing: -0.02em;
font-weight: 300;
text-transform: uppercase;
color: #1b1b1b;
margin: 0 0 24px;
}

.nws_pg .contact_h2 strong {
font-weight: 700;
color: #862430;
}

.nws_pg .contact_img_wrap {
border-radius: 38px;
overflow: hidden;
box-shadow: 0 6px 25px 0 rgba(134, 36, 48, 0.08);
margin-top: 40px;
}

.nws_pg .contact_img_wrap img {
width: 100%;
height: 280px;
object-fit: cover;
display: block;
max-width: 100%;
}

.nws_pg .contact_right {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
}

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

.nws_pg .form_field {
display: flex;
flex-direction: column;
gap: 8px;
}

.nws_pg .form_field label {
font-size: 16px;
line-height: 1.4;
color: #1b1b1b;
font-weight: 600;
letter-spacing: 0.03em;
}

.nws_pg .form_field input,
.nws_pg .form_field textarea {
background: #fff;
border: 1.5px solid #ddd;
border-radius: 5px;
padding: 16px;
font-size: 16px;
line-height: 1.4;
color: #1b1b1b;
width: 100%;
box-sizing: border-box;
transition: border-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: inset 0 2px 4px 0 rgba(0, 198, 139, 0.06);
}

.nws_pg .form_field input::placeholder,
.nws_pg .form_field textarea::placeholder {
color: rgba(0, 198, 139, 0.45);
}

.nws_pg .form_field input:focus,
.nws_pg .form_field textarea:focus {
outline: none;
border-color: #00C68B;
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08), inset 0 2px 4px 0 rgba(0, 198, 139, 0.06);
}

.nws_pg .form_field textarea {
min-height: 120px;
resize: vertical;
}

.nws_pg .form_submit_btn {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
background: #00C68B;
color: #FDFCF7;
border: none;
border-radius: 5px;
padding: 16px 40px;
font-size: 19px;
line-height: 1.4;
font-weight: 700;
cursor: pointer;
letter-spacing: 0.03em;
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
transition: background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
align-self: flex-start;
}

.nws_pg .form_submit_btn:hover {
background: #009e70;
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
}

.nws_pg .form_submit_btn:active {
transform: scale(0.97);
}

.nws_pg .form_submit_btn:focus-visible {
outline: 2px solid #00C68B;
outline-offset: 3px;
}

@media (max-width: 1024px) {
.nws_pg .pg_strip_h1 {
font-size: 42px;
}

.nws_pg .posts_grid {
grid-template-columns: repeat(2, 1fr);
gap: 24px;
}

.nws_pg .about_inner {
gap: 40px;
}

.nws_pg .contact_inner {
gap: 40px;
}
}

@media (max-width: 640px) {
.nws_pg .pg_strip_inner {
flex-direction: column;
}

.nws_pg .pg_strip_text {
flex: 0 0 100%;
max-width: 100%;
}

.nws_pg .pg_strip_img_wrap {
flex: 0 0 100%;
max-width: 100%;
}

.nws_pg .pg_strip_h1 {
font-size: 30px;
}

.nws_pg .posts_grid {
grid-template-columns: 1fr;
}

.nws_pg .about_inner {
flex-direction: column;
gap: 40px;
}

.nws_pg .about_text_col {
flex: 0 0 100%;
max-width: 100%;
}

.nws_pg .contact_inner {
flex-direction: column;
gap: 40px;
}

.nws_pg .contact_left {
flex: 0 0 100%;
max-width: 100%;
}

.nws_pg .about_h2 {
font-size: 30px;
}

.nws_pg .contact_h2 {
font-size: 30px;
}
}

@media (max-width: 360px) {
.nws_pg .pg_strip_h1 {
font-size: 23px;
}

.nws_pg .posts_area {
padding: 40px 16px;
}

.nws_pg .about_strip {
padding: 40px 16px;
}

.nws_pg .contact_strip {
padding: 40px 16px;
}
}

.ct_us {
background: #FDFCF7;
overflow-x: clip;
}

.ct_us .pg_reveal {
animation: reveal_mask 0.28s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

@keyframes reveal_mask {
from {
clip-path: inset(0 50% 0 50%);
}

to {
clip-path: inset(0 0% 0 0%);
}
}

.ct_us .grad_divider {
height: 2px;
background: linear-gradient(90deg, #00C68B 0%, #862430 55%, #FDFCF7 100%);
border: none;
margin: 0;
}

.ct_us .form_panel {
max-width: 1170px;
margin: 0 auto;
padding: 80px 40px;
}

.ct_us .form_split {
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start;
}

.ct_us .form_left {
flex: 1 1 0;
min-width: 0;
}

.ct_us .form_right {
flex: 0 0 420px;
min-width: 0;
}

.ct_us .form_eyebrow {
font-size: 16px;
line-height: 1.4;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #00C68B;
font-weight: 600;
margin-bottom: 16px;
}

.ct_us .form_heading {
font-size: 42px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #1b1412;
font-weight: 700;
margin-bottom: 24px;
}

.ct_us .form_heading .accent_wd {
color: #00C68B;
}

.ct_us .form_desc {
font-size: 19px;
line-height: 1.6;
color: #3a2e2b;
margin-bottom: 40px;
max-width: 480px;
}

.ct_us .contact_detail_stack {
display: flex;
flex-direction: column;
gap: 24px;
margin-bottom: 40px;
}

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

.ct_us .contact_detail_icon {
width: 40px;
height: 40px;
border-radius: 5px;
background: #00C68B;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
}

.ct_us .contact_detail_icon svg {
width: 20px;
height: 20px;
fill: none;
stroke: #FDFCF7;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
}

.ct_us .contact_detail_label {
font-size: 16px;
line-height: 1.4;
letter-spacing: 0.08em;
text-transform: uppercase;
color: #862430;
font-weight: 600;
margin-bottom: 8px;
}

.ct_us .contact_detail_val {
font-size: 19px;
line-height: 1.4;
color: #1b1412;
font-weight: 500;
}

.ct_us .contact_detail_val a {
color: #1b1412;
text-decoration: none;
transition: color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ct_us .contact_detail_val a:hover {
color: #00C68B;
outline: 1px solid #00C68B;
outline-offset: 2px;
}

.ct_us .form_card {
background: #fff;
border-radius: 38px;
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
padding: 40px;
}

.ct_us .field_row {
display: flex;
flex-direction: column;
gap: 8px;
margin-bottom: 24px;
}

.ct_us .field_label {
font-size: 16px;
line-height: 1.4;
color: #3a2e2b;
font-weight: 600;
letter-spacing: 0.04em;
}

.ct_us .field_label .req_mark {
color: #862430;
margin-left: 4px;
}

.ct_us .field_input {
width: 100%;
padding: 16px;
font-size: 16px;
line-height: 1.4;
color: #1b1412;
background: #FDFCF7;
border: 1.5px solid #d6cfc8;
border-radius: 5px;
box-shadow: inset 0 3px 6px 0 rgba(0, 198, 139, 0.08);
transition: border-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
box-sizing: border-box;
appearance: none;
-webkit-appearance: none;
}

.ct_us .field_input::placeholder {
color: rgba(0, 198, 139, 0.45);
}

.ct_us .field_input:focus {
outline: none;
border-color: #00C68B;
box-shadow: inset 0 3px 6px 0 rgba(0, 198, 139, 0.08), 0 0 0 3px rgba(0, 198, 139, 0.14);
}

.ct_us .field_textarea {
resize: vertical;
min-height: 120px;
}

.ct_us .field_select {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2300C68B' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 16px center;
padding-right: 40px;
cursor: pointer;
}

.ct_us .privacy_row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
margin-bottom: 24px;
}

.ct_us .privacy_checkbox {
width: 20px;
height: 20px;
flex-shrink: 0;
margin-top: 2px;
accent-color: #00C68B;
cursor: pointer;
}

.ct_us .privacy_text {
font-size: 16px;
line-height: 1.6;
color: #3a2e2b;
}

.ct_us .privacy_text a {
color: #862430;
text-decoration: underline;
text-underline-offset: 3px;
transition: color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ct_us .privacy_text a:hover {
color: #00C68B;
outline: 1px solid #00C68B;
outline-offset: 2px;
}

.ct_us .submit_btn {
display: inline-flex;
align-items: center;
gap: 8px;
background: #00C68B;
color: #FDFCF7;
font-size: 16px;
line-height: 1.4;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
padding: 16px 40px;
border: none;
border-radius: 5px;
cursor: pointer;
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
transition: background 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55), transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
width: 100%;
justify-content: center;
}

.ct_us .submit_btn:hover {
background: #009e6f;
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
}

.ct_us .submit_btn:active {
transform: scale(0.97);
}

.ct_us .submit_btn:focus-visible {
outline: 3px solid #00C68B;
outline-offset: 3px;
}

.ct_us .submit_btn svg {
width: 18px;
height: 18px;
fill: none;
stroke: #FDFCF7;
stroke-width: 2.5;
stroke-linecap: round;
stroke-linejoin: round;
transition: transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ct_us .submit_btn:hover svg {
transform: translateX(4px);
}

.ct_us .info_strip {
background: #0a3d2e;
padding: 80px 40px;
position: relative;
overflow: hidden;
}

.ct_us .info_strip::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(135deg, #FDFCF7 0%, transparent 40%, transparent 60%, #862430 100%);
opacity: 0.07;
pointer-events: none;
}

.ct_us .info_strip_inner {
max-width: 1170px;
margin: 0 auto;
position: relative;
z-index: 1;
}

.ct_us .info_strip_grid {
display: flex;
flex-direction: row;
gap: 40px;
align-items: stretch;
}

.ct_us .info_col_main {
flex: 1 1 0;
min-width: 0;
}

.ct_us .info_col_img {
flex: 0 0 380px;
min-width: 0;
display: flex;
flex-direction: column;
gap: 24px;
}

.ct_us .info_strip_heading {
font-size: 30px;
line-height: 1.15;
letter-spacing: -0.01em;
color: #FDFCF7;
font-weight: 700;
text-transform: uppercase;
margin-bottom: 24px;
}

.ct_us .info_strip_heading .accent_wd {
color: #00C68B;
}

.ct_us .info_strip_body {
font-size: 19px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.82);
margin-bottom: 40px;
max-width: 520px;
}

.ct_us .pull_quote_block {
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start;
margin-bottom: 40px;
}

.ct_us .pull_quote_body {
flex: 1 1 0;
min-width: 0;
}

.ct_us .pull_quote_body p {
font-size: 16px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.75);
margin: 0;
}

.ct_us .pull_quote_accent {
flex: 0 0 180px;
font-size: 23px;
line-height: 1.4;
color: #00C68B;
font-weight: 700;
font-style: italic;
border-left: none;
padding-left: 16px;
position: relative;
}

.ct_us .pull_quote_accent::before {
content: '';
position: absolute;
left: 0;
top: 8px;
width: 3px;
height: calc(100% - 16px);
background: #00C68B;
border-radius: 5px;
}

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

.ct_us .feature_stack_item {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
padding: 16px 24px;
background: rgba(253, 252, 247, 0.06);
border-radius: 5px;
box-shadow: inset 0 2px 6px 0 rgba(0, 198, 139, 0.08);
transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ct_us .feature_stack_item:hover {
background: rgba(0, 198, 139, 0.12);
}

.ct_us .feature_stack_item:nth-child(odd) .feat_num {
order: 2;
margin-left: 16px;
margin-right: 0;
}

.ct_us .feature_stack_item:nth-child(odd) .feat_label {
order: 1;
}

.ct_us .feature_stack_item:nth-child(even) .feat_num {
order: 1;
margin-right: 16px;
}

.ct_us .feature_stack_item:nth-child(even) .feat_label {
order: 2;
}

.ct_us .feat_num {
font-size: 23px;
line-height: 1.15;
font-weight: 700;
color: #00C68B;
flex-shrink: 0;
}

.ct_us .feat_label {
font-size: 16px;
line-height: 1.4;
color: rgba(253, 252, 247, 0.88);
font-weight: 500;
}

.ct_us .img_float_card {
border-radius: 38px;
overflow: hidden;
box-shadow: 0 9px 60px 0 rgba(134, 36, 48, 0.11);
position: relative;
}

.ct_us .img_float_card img {
width: 100%;
height: 260px;
object-fit: cover;
display: block;
filter: saturate(0.7) brightness(0.88);
}

.ct_us .img_float_card_sm {
border-radius: 5px;
overflow: hidden;
box-shadow: 0 6px 25px 0 rgba(134, 36, 48, 0.08);
}

.ct_us .img_float_card_sm img {
width: 100%;
height: 160px;
object-fit: cover;
display: block;
filter: saturate(0.6) brightness(0.82);
}

.ct_us .corner_accent_tl {
position: absolute;
top: 0;
left: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 48px 48px 0 0;
border-color: #00C68B transparent transparent transparent;
pointer-events: none;
}

.ct_us .corner_accent_br {
position: absolute;
bottom: 0;
right: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 0 0 48px 48px;
border-color: transparent transparent #862430 transparent;
pointer-events: none;
}

@media (max-width: 1024px) {
.ct_us .form_split {
flex-direction: column;
gap: 40px;
}

.ct_us .form_right {
flex: 1 1 auto;
width: 100%;
}

.ct_us .info_strip_grid {
flex-direction: column;
gap: 40px;
}

.ct_us .info_col_img {
flex: 1 1 auto;
flex-direction: row;
gap: 16px;
}

.ct_us .img_float_card {
flex: 1 1 0;
}

.ct_us .img_float_card_sm {
flex: 1 1 0;
}

.ct_us .img_float_card img {
height: 200px;
}

.ct_us .img_float_card_sm img {
height: 200px;
}

.ct_us .pull_quote_block {
flex-direction: column;
gap: 16px;
}

.ct_us .pull_quote_accent {
flex: 1 1 auto;
}
}

@media (max-width: 640px) {
.ct_us .form_panel {
padding: 40px 16px;
}

.ct_us .form_heading {
font-size: 30px;
}

.ct_us .info_strip {
padding: 40px 16px;
}

.ct_us .info_col_img {
flex-direction: column;
}

.ct_us .form_card {
padding: 24px 16px;
}

.ct_us .info_strip_heading {
font-size: 23px;
}
}

@media (max-width: 360px) {
.ct_us .form_heading {
font-size: 23px;
}

.ct_us .submit_btn {
padding: 16px 24px;
}
}

.abt-us {
background-color: #FDFCF7;
overflow-x: clip;
}

.abt-us .schema-data {
display: none;
}

.abt-us .pg-frame {
max-width: 1170px;
margin-left: auto;
margin-right: auto;
padding-left: 40px;
padding-right: 40px;
}

@media (max-width: 640px) {
.abt-us .pg-frame {
padding-left: 16px;
padding-right: 16px;
}
}

.abt-us .identity-block {
padding-top: 80px;
padding-bottom: 80px;
position: relative;
}

.abt-us .identity-block::before,
.abt-us .identity-block::after {
content: '';
position: absolute;
pointer-events: none;
}

.abt-us .identity-block::before {
top: 24px;
left: 50%;
transform: translateX(-50%);
width: min(900px, 90%);
height: calc(100% - 48px);
border: 1px solid rgba(0, 198, 139, 0.22);
border-radius: 5px;
}

.abt-us .identity-block::after {
top: 40px;
left: 50%;
transform: translateX(-50%);
width: min(860px, 86%);
height: calc(100% - 80px);
border: 1px solid rgba(0, 198, 139, 0.10);
border-radius: 5px;
}

.abt-us .id-geo-outline {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: min(700px, 80%);
height: min(700px, 80%);
border: 1px solid rgba(134, 36, 48, 0.06);
border-radius: 38px;
pointer-events: none;
animation: id-outline-breathe 6s cubic-bezier(0.34, 1.56, 0.64, 1) infinite;
}

@keyframes id-outline-breathe {

0%,
100% {
transform: translate(-50%, -50%) scale(1);
opacity: 0.6;
}

50% {
transform: translate(-50%, -50%) scale(1.03);
opacity: 1;
}
}

.abt-us .id-text-area {
text-align: center;
position: relative;
z-index: 1;
max-width: 680px;
margin-left: auto;
margin-right: auto;
padding-bottom: 40px;
}

.abt-us .id-label {
display: inline-block;
font-size: 16px;
line-height: 1.4;
letter-spacing: 0.12em;
text-transform: uppercase;
color: #862430;
font-weight: 600;
margin-bottom: 16px;
}

.abt-us .id-problem {
font-size: clamp(30px, 5vw, 42px);
line-height: 1.15;
letter-spacing: -0.02em;
color: #1b1b1b;
font-weight: 700;
margin-bottom: 24px;
}

.abt-us .id-problem .accent-word {
color: #00C68B;
font-weight: 800;
}

.abt-us .id-solution {
font-size: 19px;
line-height: 1.6;
color: #3a3a3a;
font-weight: 400;
}

.abt-us .id-img-band {
position: relative;
z-index: 1;
margin-top: 40px;
border-radius: 5px;
overflow: hidden;
max-width: 820px;
margin-left: auto;
margin-right: auto;
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
}

.abt-us .id-img-band img {
width: 100%;
max-width: 100%;
height: auto;
display: block;
object-fit: contain;
opacity: 0.82;
}

.abt-us .id-img-overlay {
position: absolute;
inset: 0;
background: linear-gradient(160deg, rgba(253, 252, 247, 0.55) 0%, transparent 55%, rgba(134, 36, 48, 0.08) 100%);
pointer-events: none;
}

.abt-us .detail-block {
padding-top: 80px;
padding-bottom: 80px;
position: relative;
background-color: #00C68B;
animation: bg-brightness-pulse 8s ease-in-out infinite;
}

@keyframes bg-brightness-pulse {

0%,
100% {
filter: brightness(1);
}

50% {
filter: brightness(1.06);
}
}

.abt-us .detail-block .geo-bg-shape {
position: absolute;
top: 50%;
right: -80px;
transform: translateY(-50%);
width: 380px;
height: 380px;
border: 2px solid rgba(253, 252, 247, 0.12);
border-radius: 38px;
pointer-events: none;
animation: shape-drift 9s cubic-bezier(0.68, -0.55, 0.27, 1.55) infinite;
}

@keyframes shape-drift {

0%,
100% {
transform: translateY(-50%) rotate(0deg);
}

50% {
transform: translateY(-50%) rotate(8deg) scale(1.04);
}
}

.abt-us .detail-block .geo-bg-shape-two {
position: absolute;
bottom: -40px;
left: -60px;
width: 260px;
height: 260px;
border: 1px solid rgba(253, 252, 247, 0.09);
border-radius: 38px;
pointer-events: none;
animation: shape-drift-two 11s cubic-bezier(0.34, 1.56, 0.64, 1) infinite;
}

@keyframes shape-drift-two {

0%,
100% {
transform: rotate(0deg);
}

50% {
transform: rotate(-12deg) scale(1.06);
}
}

.abt-us .detail-cols {
display: grid;
grid-template-columns: 1fr 1.4fr 1fr;
gap: 40px;
align-items: start;
position: relative;
z-index: 1;
}

@media (max-width: 1024px) {
.abt-us .detail-cols {
grid-template-columns: 1fr 1fr;
}
}

@media (max-width: 640px) {
.abt-us .detail-cols {
grid-template-columns: 1fr;
}
}

.abt-us .detail-col-left {
display: flex;
flex-direction: column;
gap: 24px;
}

.abt-us .detail-col-center {
display: flex;
flex-direction: column;
gap: 24px;
}

.abt-us .detail-col-right {
display: flex;
flex-direction: column;
gap: 24px;
}

.abt-us .col-heading {
font-size: 23px;
line-height: 1.15;
letter-spacing: 0.06em;
text-transform: uppercase;
font-weight: 300;
color: #FDFCF7;
margin-bottom: 8px;
}

.abt-us .col-body {
font-size: 16px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.88);
}

.abt-us .col-body .accent-word {
color: #FDFCF7;
font-weight: 700;
}

.abt-us .detail-img-card {
border-radius: 5px;
overflow: hidden;
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
position: relative;
}

.abt-us .detail-img-card img {
width: 100%;
max-width: 100%;
height: auto;
display: block;
object-fit: cover;
transition: transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.abt-us .detail-img-card:hover img {
transform: scale(1.04);
}

.abt-us .metric-strip {
display: flex;
flex-direction: column;
gap: 16px;
margin-top: 8px;
}

.abt-us .metric-item {
display: flex;
flex-direction: row;
align-items: baseline;
gap: 8px;
border-bottom: 1px solid rgba(253, 252, 247, 0.18);
padding-bottom: 16px;
}

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

.abt-us .metric-num {
font-size: 42px;
line-height: 1.15;
font-weight: 800;
color: #FDFCF7;
letter-spacing: -0.03em;
}

.abt-us .metric-desc {
font-size: 16px;
line-height: 1.4;
color: rgba(253, 252, 247, 0.78);
font-weight: 400;
}

.abt-us .center-pull-quote {
font-size: clamp(23px, 3.5vw, 30px);
line-height: 1.4;
font-weight: 700;
color: #FDFCF7;
letter-spacing: -0.01em;
padding: 24px;
background: rgba(253, 252, 247, 0.10);
border-radius: 5px;
box-shadow: inset 0 3px 6px 0 rgba(0, 198, 139, 0.08);
backdrop-filter: blur(4px);
-webkit-backdrop-filter: blur(4px);
}

.abt-us .person-cards {
display: flex;
flex-direction: column;
gap: 16px;
}

.abt-us .person-card {
background: rgba(253, 252, 247, 0.12);
border-radius: 5px;
padding: 16px;
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08);
transition: background 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
cursor: default;
}

.abt-us .person-card:hover {
background: rgba(253, 252, 247, 0.22);
transform: translateY(-3px);
}

.abt-us .person-name {
font-size: 19px;
line-height: 1.4;
font-weight: 700;
color: #FDFCF7;
margin-bottom: 8px;
}

.abt-us .person-role {
font-size: 16px;
line-height: 1.4;
color: rgba(253, 252, 247, 0.72);
letter-spacing: 0.05em;
text-transform: uppercase;
font-weight: 400;
margin-bottom: 8px;
}

.abt-us .person-note {
font-size: 16px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.82);
}

.abt-us .right-img-stack {
display: flex;
flex-direction: column;
gap: 16px;
}

.abt-us .right-img-stack .detail-img-card {
box-shadow: 0 6px 25px 0 rgba(134, 36, 48, 0.08);
}

.abt-us .contact-row {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
margin-top: 8px;
flex-wrap: wrap;
}

.abt-us .contact-chip {
display: inline-flex;
align-items: center;
gap: 8px;
background: rgba(253, 252, 247, 0.15);
border-radius: 5px;
padding: 8px 16px;
font-size: 16px;
color: #FDFCF7;
font-weight: 500;
text-decoration: none;
transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08);
}

.abt-us .contact-chip:hover {
background: rgba(253, 252, 247, 0.28);
transform: translateY(-2px);
color: #FDFCF7;
}

.abt-us .contact-chip:active {
transform: scale(0.97);
}

.abt-us .chip-icon {
width: 16px;
height: 16px;
flex-shrink: 0;
}

@media (max-width: 1024px) {
.abt-us .detail-col-right {
grid-column: 1 / -1;
}
}

@media (max-width: 640px) {
.abt-us .identity-block {
padding-top: 40px;
padding-bottom: 40px;
}

.abt-us .detail-block {
padding-top: 40px;
padding-bottom: 40px;
}

.abt-us .id-problem {
font-size: 30px;
}
}

.prt {
background-color: #FDFCF7;
overflow-x: clip;
position: relative;
}

.prt .pg_intro {
position: relative;
padding: 80px 24px;
overflow: hidden;
}

.prt .pg_intro::before {
content: "";
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.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
background-size: 200px 200px;
pointer-events: none;
z-index: 0;
}

.prt .pg_intro_blob_a {
position: absolute;
width: 420px;
height: 420px;
border-radius: 38px;
background: rgba(0, 198, 139, 0.13);
filter: blur(72px);
top: -80px;
left: -120px;
pointer-events: none;
z-index: 0;
}

.prt .pg_intro_blob_b {
position: absolute;
width: 320px;
height: 320px;
border-radius: 38px;
background: rgba(134, 36, 48, 0.09);
filter: blur(60px);
bottom: -60px;
right: -80px;
pointer-events: none;
z-index: 0;
}

.prt .pg_intro_inner {
position: relative;
z-index: 1;
max-width: 1170px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 80px;
}

.prt .pg_intro_text {
flex: 1 1 0;
min-width: 0;
}

.prt .pg_intro_eyebrow {
display: inline-block;
font-size: 16px;
line-height: 1.4;
letter-spacing: 0.08em;
text-transform: uppercase;
color: #00C68B;
font-weight: 700;
margin-bottom: 16px;
}

.prt .pg_intro_h1 {
font-size: clamp(42px, 5.5vw, 72px);
line-height: 1.15;
letter-spacing: -0.03em;
color: #1b1b1b;
font-weight: 800;
margin: 0 0 24px 0;
}

.prt .pg_intro_h1 .accent_word {
color: #00C68B;
font-weight: 900;
}

.prt .pg_intro_desc {
font-size: 19px;
line-height: 1.6;
color: #3a3a3a;
max-width: 520px;
margin: 0 0 40px 0;
}

.prt .pg_intro_cta {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 16px;
font-weight: 700;
color: #FDFCF7;
background: #00C68B;
border: none;
border-radius: 5px;
padding: 16px 40px;
cursor: pointer;
text-decoration: none;
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.prt .pg_intro_cta:hover {
transform: translateY(-2px);
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
}

.prt .pg_intro_cta:active {
transform: scale(0.97);
}

.prt .pg_intro_cta_arrow {
display: inline-block;
width: 18px;
height: 18px;
flex-shrink: 0;
}

.prt .pg_intro_img_col {
flex: 0 0 420px;
max-width: 420px;
position: relative;
}

.prt .pg_intro_img_frame {
border-radius: 5px;
overflow: hidden;
position: relative;
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
}

.prt .pg_intro_img_frame img {
display: block;
width: 100%;
height: 340px;
object-fit: cover;
max-width: 100%;
}

.prt .pg_intro_img_tint {
position: absolute;
inset: 0;
background: rgba(0, 198, 139, 0.14);
pointer-events: none;
}

.prt .pg_intro_dashed_ring {
position: absolute;
inset: -16px;
border: 2px dashed rgba(0, 198, 139, 0.35);
border-radius: 5px;
pointer-events: none;
}

.prt .prt_grid_sec {
padding: 80px 24px;
background: #FDFCF7;
position: relative;
}

.prt .prt_grid_sec_bg {
position: absolute;
inset: 0;
background: linear-gradient(to right, rgba(134, 36, 48, 0.04) 0%, transparent 40%, transparent 60%, rgba(0, 198, 139, 0.05) 100%);
pointer-events: none;
}

.prt .prt_grid_inner {
max-width: 1170px;
margin: 0 auto;
position: relative;
z-index: 1;
}

.prt .prt_grid_header {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 40px;
margin-bottom: 80px;
}

.prt .prt_grid_h2 {
font-size: clamp(30px, 3.5vw, 42px);
line-height: 1.15;
letter-spacing: -0.02em;
font-weight: 700;
color: #1b1b1b;
text-transform: uppercase;
margin: 0;
max-width: 480px;
}

.prt .prt_grid_h2 .accent_word {
color: #862430;
font-weight: 800;
}

.prt .prt_grid_header_note {
font-size: 16px;
line-height: 1.6;
color: #4a4a4a;
max-width: 320px;
text-align: right;
}

.prt .prt_cards {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
grid-template-rows: auto auto;
gap: 24px;
}

.prt .prt_card {
border-radius: 5px;
background: #fff;
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08);
padding: 40px;
display: flex;
flex-direction: column;
gap: 16px;
transition: box-shadow 0.28s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
position: relative;
overflow: hidden;
}

.prt .prt_card:hover {
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
transform: translateY(-3px);
}

.prt .prt_card:active {
transform: scale(0.98);
}

.prt .prt_card.featured {
grid-row: 1 / 3;
grid-column: 1 / 2;
background: #00C68B;
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
}

.prt .prt_card.featured:hover {
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
}

.prt .prt_card_icon_wrap {
display: inline-flex;
flex-direction: row;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
border-radius: 5px;
background: rgba(0, 198, 139, 0.12);
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08);
flex-shrink: 0;
}

.prt .prt_card.featured .prt_card_icon_wrap {
background: rgba(253, 252, 247, 0.2);
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08);
}

.prt .prt_card_icon_wrap svg {
width: 24px;
height: 24px;
}

.prt .prt_card_h4 {
font-size: 19px;
line-height: 1.4;
font-weight: 700;
color: #1b1b1b;
text-transform: uppercase;
letter-spacing: 0.04em;
margin: 0;
}

.prt .prt_card.featured .prt_card_h4 {
color: #FDFCF7;
font-size: 23px;
}

.prt .prt_card_body {
font-size: 16px;
line-height: 1.6;
color: #4a4a4a;
margin: 0;
}

.prt .prt_card.featured .prt_card_body {
color: rgba(253, 252, 247, 0.88);
font-size: 19px;
}

.prt .prt_card_tag {
display: inline-block;
font-size: 16px;
font-weight: 700;
color: #00C68B;
border: 2px solid rgba(0, 198, 139, 0.3);
border-radius: 5px;
padding: 8px 16px;
align-self: flex-start;
margin-top: auto;
}

.prt .prt_card.featured .prt_card_tag {
color: #FDFCF7;
border-color: rgba(253, 252, 247, 0.4);
}

.prt .prt_card_corner_dec {
position: absolute;
bottom: -24px;
right: -24px;
width: 80px;
height: 80px;
border-radius: 38px;
background: rgba(253, 252, 247, 0.12);
pointer-events: none;
}

.prt .collab_sec {
padding: 80px 24px;
position: relative;
background: #1b1b1b;
overflow: hidden;
}

.prt .collab_sec_anim_bg {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0;
animation: prt_bg_shift 8s ease-in-out infinite alternate;
background: radial-gradient(ellipse 60% 50% at 20% 50%, rgba(0, 198, 139, 0.13) 0%, transparent 70%),
radial-gradient(ellipse 50% 40% at 85% 60%, rgba(134, 36, 48, 0.12) 0%, transparent 65%);
}

@keyframes prt_bg_shift {
0% {
background: radial-gradient(ellipse 60% 50% at 20% 50%, rgba(0, 198, 139, 0.13) 0%, transparent 70%),
radial-gradient(ellipse 50% 40% at 85% 60%, rgba(134, 36, 48, 0.12) 0%, transparent 65%);
}

50% {
background: radial-gradient(ellipse 60% 50% at 50% 30%, rgba(0, 198, 139, 0.10) 0%, transparent 70%),
radial-gradient(ellipse 50% 40% at 60% 80%, rgba(134, 36, 48, 0.10) 0%, transparent 65%);
}

100% {
background: radial-gradient(ellipse 60% 50% at 80% 50%, rgba(0, 198, 139, 0.13) 0%, transparent 70%),
radial-gradient(ellipse 50% 40% at 15% 40%, rgba(134, 36, 48, 0.12) 0%, transparent 65%);
}
}

.prt .collab_inner {
max-width: 1170px;
margin: 0 auto;
position: relative;
z-index: 1;
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start;
}

.prt .collab_left {
flex: 0 0 380px;
max-width: 380px;
}

.prt .collab_eyebrow {
display: inline-block;
font-size: 16px;
line-height: 1.4;
letter-spacing: 0.1em;
text-transform: uppercase;
color: #00C68B;
font-weight: 700;
margin-bottom: 16px;
}

.prt .collab_h2 {
font-size: clamp(30px, 3.2vw, 42px);
line-height: 1.15;
letter-spacing: -0.02em;
font-weight: 800;
color: #FDFCF7;
text-transform: uppercase;
margin: 0 0 24px 0;
}

.prt .collab_h2 .accent_word {
color: #00C68B;
}

.prt .collab_desc {
font-size: 16px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.72);
margin: 0 0 40px 0;
}

.prt .collab_link {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 16px;
font-weight: 700;
color: #FDFCF7;
text-decoration: none;
border-bottom: 2px solid rgba(0, 198, 139, 0.5);
padding-bottom: 4px;
transition: border-color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.prt .collab_link:hover {
color: #00C68B;
border-color: #00C68B;
}

.prt .collab_right {
flex: 1 1 0;
min-width: 0;
}

.prt .collab_list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 24px;
}

.prt .collab_item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 24px;
padding: 24px;
border-radius: 5px;
background: rgba(253, 252, 247, 0.04);
border: 1px solid rgba(253, 252, 247, 0.08);
backdrop-filter: blur(6px);
-webkit-backdrop-filter: blur(6px);
transition: background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.prt .collab_item:hover {
background: rgba(0, 198, 139, 0.08);
border-color: rgba(0, 198, 139, 0.25);
}

.prt .collab_item_num {
font-size: 30px;
line-height: 1.15;
font-weight: 900;
color: rgba(0, 198, 139, 0.35);
flex-shrink: 0;
min-width: 40px;
text-align: right;
}

.prt .collab_item_text {
flex: 1 1 0;
min-width: 0;
}

.prt .collab_item_h5 {
font-size: 16px;
line-height: 1.4;
font-weight: 700;
color: #FDFCF7;
text-transform: uppercase;
letter-spacing: 0.05em;
margin: 0 0 8px 0;
}

.prt .collab_item_p {
font-size: 16px;
line-height: 1.6;
color: rgba(253, 252, 247, 0.65);
margin: 0;
}

.prt .collab_pull {
font-size: 23px;
line-height: 1.4;
font-weight: 700;
color: #FDFCF7;
margin: 40px 0 0 0;
padding: 24px;
border-radius: 5px;
background: rgba(0, 198, 139, 0.1);
border: 1px solid rgba(0, 198, 139, 0.2);
}

.prt .collab_pull .accent_word {
color: #00C68B;
}

@media (max-width: 1024px) {
.prt .pg_intro_inner {
flex-direction: column;
gap: 40px;
}

.prt .pg_intro_img_col {
flex: 0 0 auto;
max-width: 100%;
width: 100%;
}

.prt .prt_grid_header {
flex-direction: column;
align-items: flex-start;
gap: 16px;
}

.prt .prt_grid_header_note {
text-align: left;
max-width: 100%;
}

.prt .prt_cards {
grid-template-columns: 1fr 1fr;
grid-template-rows: auto;
}

.prt .prt_card.featured {
grid-row: auto;
grid-column: 1 / 3;
}

.prt .collab_inner {
flex-direction: column;
gap: 40px;
}

.prt .collab_left {
flex: 0 0 auto;
max-width: 100%;
width: 100%;
}
}

@media (max-width: 640px) {
.prt .pg_intro {
padding: 40px 16px;
}

.prt .pg_intro_h1 {
font-size: 42px;
}

.prt .prt_grid_sec {
padding: 40px 16px;
}

.prt .prt_cards {
grid-template-columns: 1fr;
}

.prt .prt_card.featured {
grid-column: 1 / 2;
}

.prt .prt_grid_h2 {
font-size: 30px;
}

.prt .collab_sec {
padding: 40px 16px;
}

.prt .collab_h2 {
font-size: 30px;
}

.prt .collab_item {
flex-direction: column;
gap: 8px;
}

.prt .collab_item_num {
text-align: left;
}
}

@media (max-width: 360px) {
.prt .pg_intro_h1 {
font-size: 30px;
}

.prt .prt_card {
padding: 24px;
}

.prt .prt_grid_h2 {
font-size: 23px;
}
}

.success_page {
min-height: 80vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 80px 24px;
background-color: #FDFCF7;
}

.success_page .success_card {
max-width: 560px;
width: 100%;
background: #ffffff;
border-radius: 38px;
padding: 80px 40px;
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
}

.success_page .success_icon_wrap {
width: 80px;
height: 80px;
border-radius: 38px;
background: #FDFCF7;
box-shadow: inset 0 4px 6px 0 rgba(0, 198, 139, 0.08);
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
margin-bottom: 40px;
flex-shrink: 0;
}

.success_page .success_icon_wrap svg {
display: block;
}

.success_page .success_heading {
font-size: 42px;
line-height: 1.15;
letter-spacing: -0.02em;
color: #1b1b1b;
margin-bottom: 16px;
font-weight: 700;
text-transform: uppercase;
}

.success_page .success_heading span {
color: #00C68B;
}

.success_page .success_body {
font-size: 19px;
line-height: 1.6;
color: #3a3a3a;
margin-bottom: 40px;
max-width: 400px;
}

.success_page .success_divider {
width: 40px;
height: 3px;
background: linear-gradient(135deg, #00C68B 0%, transparent 100%);
border-radius: 5px;
margin-bottom: 40px;
}

.success_page .success_detail {
font-size: 16px;
line-height: 1.6;
color: #555555;
margin-bottom: 40px;
}

.success_page .success_detail strong {
color: #862430;
font-weight: 600;
}

.success_page .success_btn {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 16px;
line-height: 1.4;
font-weight: 600;
color: #FDFCF7;
background: #00C68B;
border: none;
border-radius: 5px;
padding: 16px 40px;
cursor: pointer;
text-decoration: none;
box-shadow: 0 6px 25px 0 rgba(0, 198, 139, 0.08);
transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.success_page .success_btn:hover {
box-shadow: 0 9px 60px 0 rgba(0, 198, 139, 0.11);
transform: translateY(-2px);
}

.success_page .success_btn:active {
transform: scale(0.97);
box-shadow: 0 3px 6px 0 rgba(0, 198, 139, 0.08);
}

.success_page .success_btn:focus-visible {
outline: 2px solid #862430;
outline-offset: 3px;
}

.success_page .success_btn_arrow {
display: inline-block;
width: 16px;
height: 16px;
flex-shrink: 0;
}

@media (max-width: 640px) {
.success_page {
padding: 40px 16px;
}

.success_page .success_card {
padding: 40px 24px;
border-radius: 38px;
}

.success_page .success_heading {
font-size: 30px;
}

.success_page .success_body {
font-size: 16px;
}
}

@media (max-width: 360px) {
.success_page .success_heading {
font-size: 23px;
}

.success_page .success_card {
padding: 40px 16px;
}
}