@import url('https://cdn.jsdelivr.net/npm/@fontsource/bitter@latest/400.css');
@import url('https://cdn.jsdelivr.net/npm/@fontsource/bitter@latest/700.css');

html {
box-sizing: border-box;
}

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

body {
margin: 0;
padding: 0;
overflow-x: hidden;
min-height: 100vh;
font-family: 'Bitter', Georgia, serif;
}

.pg_head {
background: linear-gradient(160deg, #F3F7ED 0%, #e8eedd 55%, #d4dfc0 100%);
border-bottom: 2px solid #B2BD92;
position: relative;
z-index: 100;
}

.pg_head_top {
max-width: 1024px;
margin: 0 auto;
padding: 24px 24px 12px;
display: flex;
align-items: center;
justify-content: center;
gap: 52px;
}

.brand_mount {
display: flex;
flex-direction: column;
align-items: center;
gap: 6px;
flex-shrink: 0;
}

.brand_logo_shell {
width: 72px;
height: 72px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 10px;
border: 1px solid #B2BD92;
box-shadow: inset 1px 3px 3px 1px rgba(129, 162, 82, 0.06), 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
background: #fff;
padding: 6px;
}

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

.brand_name {
font-size: 22px;
font-weight: 700;
line-height: 1.1;
color: #2d3a1e;
letter-spacing: 0;
white-space: nowrap;
}

.brand_since {
font-size: 14px;
line-height: 1.1;
color: #5a6e3a;
}

.head_contact_strip {
display: flex;
flex-direction: column;
gap: 6px;
align-items: flex-end;
}

.head_contact_item {
display: flex;
align-items: center;
gap: 6px;
font-size: 14px;
line-height: 1.6;
color: #3a4a22;
text-decoration: none;
transition: color 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.head_contact_item:hover {
color: #81A252;
}

.head_contact_item .material-icons {
font-size: 17px;
color: #81A252;
}

.pg_head_nav_bar {
background: #81A252;
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
}

.pg_head_nav_inner {
max-width: 1024px;
margin: 0 auto;
padding: 0 24px;
display: flex;
align-items: stretch;
flex-wrap: wrap;
}

.nav_link {
display: flex;
align-items: center;
padding: 12px 24px;
font-size: 14px;
font-weight: 700;
line-height: 1.1;
color: #F3F7ED;
text-decoration: none;
white-space: nowrap;
position: relative;
transition: color 0.45s cubic-bezier(0.22, 1, 0.36, 1), background 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.nav_link::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 0;
height: 2px;
background: #F3F7ED;
transition: width 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.nav_link:hover::after {
width: 100%;
}

.nav_link:hover {
color: #fff;
background: rgba(255, 255, 255, 0.1);
}

.nav_link:focus {
outline: none;
background: rgba(255, 255, 255, 0.18);
color: #fff;
}

.nav_link:focus::before {
content: attr(data-label);
position: absolute;
top: -22px;
left: 50%;
transform: translateX(-50%);
font-size: 14px;
background: #2d3a1e;
color: #F3F7ED;
padding: 2px 6px;
border-radius: 2px;
white-space: nowrap;
pointer-events: none;
z-index: 200;
}

@media (max-width: 900px) {
.pg_head_top {
gap: 24px;
padding: 24px 12px 12px;
}

.head_contact_strip {
display: none;
}

.nav_link {
padding: 12px 12px;
}
}

@media (max-width: 600px) {
.brand_name {
font-size: 17px;
}

.pg_head_nav_inner {
padding: 0 6px;
}

.nav_link {
padding: 12px 6px;
font-size: 14px;
}
}

.pg_foot {
background: #F3F7ED;
border-top: 2px solid #B2BD92;
}

.foot_upper {
background: #eaf0df;
padding: 52px 24px 24px;
}

.foot_upper_inner {
max-width: 1024px;
margin: 0 auto;
display: flex;
align-items: flex-start;
gap: 52px;
flex-wrap: wrap;
}

.foot_brand_col {
display: flex;
flex-direction: column;
align-items: center;
gap: 12px;
flex-shrink: 0;
}

.foot_logo_shell {
width: 65px;
height: 65px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 10px;
border: 1px solid #B2BD92;
box-shadow: 1px 3px 3px 1px rgba(178, 189, 146, 0.06);
background: #fff;
padding: 6px;
}

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

.foot_brand_name {
font-size: 17px;
font-weight: 700;
line-height: 1.1;
color: #2d3a1e;
text-align: center;
}

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

.foot_links_label {
font-size: 14px;
font-weight: 700;
color: #5a6e3a;
line-height: 1.1;
margin-bottom: 12px;
text-transform: uppercase;
letter-spacing: 0;
}

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

.foot_nav_list li a {
font-size: 14px;
line-height: 1.6;
color: #3a4a22;
text-decoration: none;
display: inline-block;
position: relative;
transition: color 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.foot_nav_list li a::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 0;
height: 1px;
background: #81A252;
transition: width 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.foot_nav_list li a:hover {
color: #81A252;
}

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

.foot_contact_col {
min-width: 200px;
}

.foot_contact_label {
font-size: 14px;
font-weight: 700;
color: #5a6e3a;
line-height: 1.1;
margin-bottom: 12px;
text-transform: uppercase;
}

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

.foot_contact_list li {
display: flex;
align-items: flex-start;
gap: 6px;
}

.foot_contact_list li .material-icons {
font-size: 17px;
color: #81A252;
flex-shrink: 0;
margin-top: 2px;
}

.foot_contact_list li a,
.foot_contact_list li span {
font-size: 14px;
line-height: 1.6;
color: #3a4a22;
text-decoration: none;
transition: color 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.foot_contact_list li a:hover {
color: #81A252;
}

.foot_lower {
background: #d4dfc0;
padding: 12px 24px;
}

.foot_lower_inner {
max-width: 1024px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 6px;
}

.foot_copy {
font-size: 14px;
line-height: 1.6;
color: #3a4a22;
}

.foot_domain {
font-size: 14px;
line-height: 1.6;
color: #5a6e3a;
font-weight: 700;
}

@media (max-width: 900px) {
.foot_upper_inner {
gap: 24px;
}
}

@media (max-width: 600px) {
.foot_upper {
padding: 24px 12px 12px;
}

.foot_lower {
padding: 12px;
}

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

.consent_mount {
display: none;
position: fixed;
top: 24px;
right: 24px;
z-index: 8000;
max-width: 360px;
width: calc(100vw - 48px);
background: #fff;
border: 1px solid #B2BD92;
border-radius: 10px;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
font-family: 'Bitter', Georgia, serif;
transform: translateX(-420px);
transition: transform 0.42s cubic-bezier(0.22, 1, 0.36, 1);
}

.consent_mount.consent_visible {
transform: translateX(0);
}

.consent_body {
padding: 24px;
display: flex;
flex-direction: column;
gap: 12px;
}

.consent_desc {
font-size: 14px;
line-height: 1.6;
color: #2d3a1e;
}

.consent_desc a {
color: #81A252;
text-decoration: underline;
}

.consent_headline {
font-size: 17px;
font-weight: 700;
line-height: 1.1;
color: #2d3a1e;
}

.consent_panel_toggle {
background: none;
border: none;
padding: 0;
font-family: 'Bitter', Georgia, serif;
font-size: 14px;
color: #81A252;
cursor: pointer;
text-decoration: underline;
text-align: left;
transition: color 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.consent_panel_toggle:hover {
color: #5a6e3a;
}

.consent_prefs {
display: none;
flex-direction: column;
gap: 12px;
padding-top: 6px;
}

.consent_prefs.prefs_open {
display: flex;
}

.consent_toggle_row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
}

.consent_toggle_label {
font-size: 14px;
line-height: 1.6;
color: #3a4a22;
}

.consent_switch {
position: relative;
width: 40px;
height: 22px;
flex-shrink: 0;
}

.consent_switch input {
opacity: 0;
width: 0;
height: 0;
position: absolute;
}

.consent_track {
position: absolute;
inset: 0;
background: #B2BD92;
border-radius: 10px;
cursor: pointer;
transition: background 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.consent_track::after {
content: '';
position: absolute;
left: 2px;
top: 2px;
width: 18px;
height: 18px;
background: #fff;
border-radius: 10px;
transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.consent_switch input:checked+.consent_track {
background: #81A252;
}

.consent_switch input:checked+.consent_track::after {
transform: translateX(18px);
}

.consent_switch input:focus+.consent_track {
box-shadow: 0 0 0 2px #81A252;
}

.consent_btn_row {
display: flex;
gap: 12px;
flex-wrap: wrap;
}

.consent_accept {
flex: 1;
padding: 12px 24px;
background: #81A252;
color: #fff;
border: none;
border-radius: 2px;
font-family: 'Bitter', Georgia, serif;
font-size: 14px;
font-weight: 700;
cursor: pointer;
transition: background 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.consent_accept:hover {
background: #5a6e3a;
}

.consent_accept:focus {
outline: 2px solid #2d3a1e;
outline-offset: 2px;
}

.consent_decline {
padding: 12px 12px;
background: none;
color: #5a6e3a;
border: 1px solid #B2BD92;
border-radius: 2px;
font-family: 'Bitter', Georgia, serif;
font-size: 14px;
cursor: pointer;
transition: border-color 0.45s cubic-bezier(0.22, 1, 0.36, 1), color 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.consent_decline:hover {
border-color: #81A252;
color: #81A252;
}

.consent_decline:focus {
outline: 2px solid #2d3a1e;
outline-offset: 2px;
}

.policy-info {
max-width: 1024px;
margin: 0 auto;
padding: 52px 24px;
color: #2a2e1f;
}

.policy-info p {
font-size: 17px;
line-height: 1.6;
margin-bottom: 24px;
color: #2a2e1f;
}

.policy-info ul,
.policy-info ol {
margin: 0 0 24px 24px;
padding: 0;
}

.policy-info li {
font-size: 17px;
line-height: 1.6;
margin-bottom: 12px;
color: #2a2e1f;
}

.policy-info ul li {
list-style-type: disc;
}

.policy-info ol li {
list-style-type: decimal;
}

.policy-info ul ul,
.policy-info ol ol,
.policy-info ul ol,
.policy-info ol ul {
margin-top: 12px;
margin-bottom: 6px;
}

.policy-info strong,
.policy-info b {
font-weight: 700;
color: #1e2612;
}

.policy-info em,
.policy-info i {
font-style: italic;
color: #3a4a22;
}

.policy-info a {
color: #81A252;
text-decoration: none;
background-image: linear-gradient(#81A252, #81A252);
background-size: 0% 1px;
background-repeat: no-repeat;
background-position: left bottom;
transition: background-size 0.5s cubic-bezier(0.22, 1, 0.36, 1), color 0.45s ease-in-out;
}

.policy-info a:hover {
color: #5a7a35;
background-size: 100% 1px;
}

.policy-info div {
margin-bottom: 24px;
}

@media (max-width: 600px) {
.policy-info {
padding: 24px 12px;
}

.policy-info p,
.policy-info li {
font-size: 14px;
}

.policy-info ul,
.policy-info ol {
margin-left: 12px;
}
}

@media (min-width: 601px) and (max-width: 900px) {
.policy-info {
padding: 52px 24px;
}
}

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

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

.intv .intv_inner {
max-width: 1024px;
margin: 0 auto;
padding: 0 24px;
}

@keyframes slide_up {
from {
opacity: 0;
transform: translateY(36px);
}

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

.intv .animate_up {
animation: slide_up 0.6s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.intv .animate_up.delay_1 {
animation-delay: 0.1s;
}

.intv .animate_up.delay_2 {
animation-delay: 0.2s;
}

.intv .animate_up.delay_3 {
animation-delay: 0.3s;
}

.intv .animate_up.delay_4 {
animation-delay: 0.4s;
}

.intv .pg_lead {
background: linear-gradient(135deg, #81A252 0%, #B2BD92 45%, #F3F7ED 100%);
position: relative;
padding: 96px 0 52px;
overflow: hidden;
}

.intv .pg_lead::before {
content: "";
position: absolute;
top: -60px;
right: -80px;
width: 340px;
height: 340px;
border: 52px solid rgba(243, 247, 237, 0.18);
border-radius: 50%;
pointer-events: none;
}

.intv .pg_lead::after {
content: "";
position: absolute;
bottom: -40px;
left: 10%;
width: 180px;
height: 180px;
border: 28px solid rgba(129, 162, 82, 0.13);
border-radius: 50%;
pointer-events: none;
}

.intv .lead_grid {
display: flex;
flex-direction: row;
align-items: stretch;
gap: 52px;
}

.intv .lead_text {
flex: 1 1 0;
padding: 24px 0 24px 24px;
display: flex;
flex-direction: column;
justify-content: center;
}

.intv .lead_img_col {
flex: 0 0 380px;
position: relative;
display: flex;
align-items: center;
}

.intv .lead_img_wrap {
width: 100%;
height: 420px;
overflow: hidden;
clip-path: polygon(0 0, 88% 0, 100% 12%, 100% 100%, 12% 100%, 0 88%);
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
transition: box-shadow 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.intv .lead_img_wrap:hover {
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.28);
}

.intv .lead_img_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.intv .label_tag {
display: inline-flex;
align-items: center;
gap: 6px;
background: rgba(255, 255, 255, 0.55);
border: 1px solid rgba(129, 162, 82, 0.3);
border-radius: 2px;
padding: 6px 12px;
font-size: 14px;
color: #3a5220;
font-weight: 600;
letter-spacing: 0.04em;
margin-bottom: 24px;
width: fit-content;
}

.intv .label_tag .material-icons {
font-size: 16px;
color: #81A252;
}

.intv .lead_h1 {
font-size: 55px;
line-height: 1.1;
color: #1e3008;
margin: 0 0 24px;
font-weight: 800;
}

.intv .lead_h1 span {
color: #81A252;
}

.intv .lead_sub {
font-size: 17px;
line-height: 1.6;
color: #2e4010;
max-width: 480px;
margin: 0 0 24px;
}

.intv .lead_meta {
display: flex;
flex-direction: row;
gap: 24px;
flex-wrap: wrap;
}

.intv .meta_chip {
display: flex;
align-items: center;
gap: 6px;
background: rgba(255, 255, 255, 0.7);
border-radius: 2px;
padding: 6px 12px;
font-size: 14px;
color: #2e4010;
font-weight: 500;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
}

.intv .meta_chip .material-icons {
font-size: 16px;
color: #81A252;
}

.intv .shape_deco {
position: absolute;
top: 24px;
right: -12px;
width: 64px;
height: 64px;
border: 3px solid rgba(129, 162, 82, 0.35);
border-radius: 10px;
pointer-events: none;
}

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

.intv .lead_img_col {
display: none;
}

.intv .lead_text {
padding: 12px 0;
}

.intv .lead_h1 {
font-size: 40px;
}
}

@media (max-width: 600px) {
.intv .lead_h1 {
font-size: 29px;
}

.intv .pg_lead {
padding: 52px 0 24px;
}
}

.intv .interview_body {
background: #F3F7ED;
padding: 96px 0;
position: relative;
}

.intv .interview_body::before {
content: '"';
position: absolute;
top: 24px;
right: 52px;
font-size: 220px;
line-height: 1.1;
color: rgba(129, 162, 82, 0.08);
font-weight: 900;
pointer-events: none;
user-select: none;
overflow: hidden;
max-width: 220px;
}

.intv .ib_grid {
display: grid;
grid-template-columns: 260px 1fr;
gap: 52px;
align-items: start;
}

.intv .sidebar {
position: sticky;
top: 24px;
}

.intv .speaker_card {
background: #fff;
border-radius: 10px;
padding: 24px;
box-shadow: 1px 5px 22px 1px rgba(178, 189, 146, 0.11);
margin-bottom: 24px;
}

.intv .speaker_name {
font-size: 17px;
line-height: 1.1;
font-weight: 700;
color: #1e3008;
margin: 0 0 6px;
}

.intv .speaker_role {
font-size: 14px;
line-height: 1.6;
color: #4a6030;
margin: 0 0 12px;
}

.intv .speaker_org {
font-size: 14px;
color: #81A252;
font-weight: 600;
margin: 0;
}

.intv .topic_list {
background: #fff;
border-radius: 10px;
padding: 24px;
box-shadow: 1px 5px 22px 1px rgba(178, 189, 146, 0.11);
}

.intv .topic_list h4 {
font-size: 14px;
font-weight: 700;
color: #1e3008;
margin: 0 0 12px;
text-transform: uppercase;
letter-spacing: 0.06em;
}

.intv .topic_item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 6px;
margin-bottom: 12px;
font-size: 14px;
line-height: 1.6;
color: #2e4010;
}

.intv .topic_item:last-child {
margin-bottom: 0;
}

.intv .topic_num {
font-weight: 700;
color: #81A252;
min-width: 20px;
text-align: right;
}

.intv .qa_stream {
display: flex;
flex-direction: column;
gap: 52px;
}

.intv .qa_pair {
border-radius: 10px;
overflow: hidden;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
transition: box-shadow 0.5s ease-in-out;
}

.intv .qa_pair:hover {
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.intv .qa_q {
background: linear-gradient(to right, #81A252, rgba(178, 189, 146, 0.3));
padding: 24px;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
}

.intv .qa_q_icon {
width: 32px;
height: 32px;
border: 2px solid rgba(255, 255, 255, 0.6);
border-radius: 2px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
background: rgba(255, 255, 255, 0.2);
}

.intv .qa_q_icon .material-icons {
font-size: 17px;
color: #fff;
}

.intv .qa_q_text {
font-size: 17px;
line-height: 1.6;
color: #fff;
font-weight: 600;
margin: 0;
}

.intv .qa_a {
background: #fff;
padding: 24px;
}

.intv .qa_a_text {
font-size: 17px;
line-height: 1.6;
color: #2a3a18;
margin: 0 0 12px;
}

.intv .qa_a_text:last-child {
margin: 0;
}

.intv .qa_a_accent {
border-left: none;
background: #F3F7ED;
border-radius: 2px;
padding: 12px 24px;
margin: 12px 0;
font-size: 17px;
line-height: 1.6;
color: #2a3a18;
font-style: italic;
}

.intv .milestone_track {
background: #fff;
border-radius: 10px;
padding: 24px;
margin-top: 52px;
box-shadow: 1px 5px 22px 1px rgba(178, 189, 146, 0.11);
}

.intv .milestone_track h4 {
font-size: 17px;
font-weight: 700;
color: #1e3008;
margin: 0 0 24px;
padding-left: 12px;
border-left: 3px solid #81A252;
}

.intv .milestones {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 0;
overflow-x: auto;
padding-bottom: 6px;
}

.intv .ms_item {
flex: 1 1 0;
display: flex;
flex-direction: column;
align-items: center;
position: relative;
min-width: 120px;
transition: opacity 0.4s ease-in-out;
}

.intv .milestones:hover .ms_item {
opacity: 0.45;
}

.intv .milestones:hover .ms_item:hover {
opacity: 1;
}

.intv .ms_item::after {
content: "";
position: absolute;
top: 20px;
left: 50%;
width: 100%;
height: 2px;
background: #B2BD92;
z-index: 0;
}

.intv .ms_item:last-child::after {
display: none;
}

.intv .ms_dot {
width: 40px;
height: 40px;
border-radius: 10px;
background: #81A252;
display: flex;
align-items: center;
justify-content: center;
position: relative;
z-index: 1;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
flex-shrink: 0;
}

.intv .ms_dot .material-icons {
font-size: 20px;
color: #fff;
}

.intv .ms_date {
font-size: 14px;
font-weight: 700;
color: #81A252;
margin: 6px 0 0;
text-align: center;
}

.intv .ms_label {
font-size: 14px;
line-height: 1.6;
color: #2e4010;
text-align: center;
padding: 0 6px;
}

@media (max-width: 900px) {
.intv .ib_grid {
grid-template-columns: 1fr;
gap: 24px;
}

.intv .sidebar {
position: static;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
}

.intv .interview_body {
padding: 52px 0;
}
}

@media (max-width: 600px) {
.intv .sidebar {
grid-template-columns: 1fr;
}

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

.intv .ms_item::after {
display: none;
}

.intv .ms_item {
flex-direction: row;
gap: 12px;
align-items: flex-start;
min-width: unset;
}

.intv .ms_date,
.intv .ms_label {
text-align: left;
}
}

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

.lp_prog .lp_inner {
max-width: 1024px;
margin-left: auto;
margin-right: auto;
padding-left: 24px;
padding-right: 24px;
}

.lp_prog ::selection {
background: #B2BD92;
color: #1a2a0a;
}

.lp_prog .accent_line {
display: inline-block;
width: 4px;
background: #81A252;
border-radius: 2px;
margin-right: 12px;
flex-shrink: 0;
align-self: stretch;
min-height: 100%;
}

.lp_prog .two_tone em {
font-style: normal;
color: #81A252;
}

.lp_prog .wave_div {
display: block;
width: 100%;
overflow: hidden;
line-height: 0;
}

.lp_prog .wave_div svg {
display: block;
width: 100%;
}

.lp_prog .btn_primary {
display: inline-block;
background: #81A252;
color: #fff;
font-size: 17px;
font-weight: 700;
padding: 12px 52px;
border-radius: 2px;
border: none;
cursor: pointer;
text-decoration: none;
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
transition: background 0.5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.5s cubic-bezier(0.22, 1, 0.36, 1);
position: relative;
overflow: hidden;
}

.lp_prog .btn_primary::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 0%;
height: 3px;
background: rgba(255, 255, 255, 0.5);
transition: width 0.08s linear;
}

.lp_prog .btn_primary:hover {
background: #6a8a42;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.lp_prog .btn_primary:active::after {
width: 100%;
transition: width 2s linear;
}

.lp_prog .btn_secondary {
display: inline-block;
background: transparent;
color: #81A252;
font-size: 14px;
font-weight: 600;
padding: 6px 24px;
border-radius: 2px;
border: 2px solid #81A252;
cursor: pointer;
text-decoration: none;
transition: background 0.45s cubic-bezier(0.22, 1, 0.36, 1), color 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.lp_prog .btn_secondary:hover {
background: #81A252;
color: #fff;
}

.lp_prog .tag_pill {
display: inline-block;
background: #F3F7ED;
color: #81A252;
font-size: 14px;
font-weight: 600;
padding: 6px 12px;
border-radius: 2px;
border: 1px solid #B2BD92;
}

.lp_prog .block_heading {
display: flex;
flex-direction: row;
align-items: stretch;
gap: 12px;
margin-bottom: 24px;
}

.lp_prog .block_heading h2,
.lp_prog .block_heading h3 {
margin: 0;
line-height: 1.1;
}

.lp_prog .fade_img {
position: relative;
display: block;
}

.lp_prog .fade_img img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
border-radius: 10px;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.lp_prog .fade_img::after {
content: '';
position: absolute;
inset: 0;
border-radius: 10px;
background: linear-gradient(to right, transparent, #F3F7ED 95%);
pointer-events: none;
}

.lp_prog .img_hover_grid {
position: relative;
display: block;
border-radius: 10px;
overflow: hidden;
}

.lp_prog .img_hover_grid img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
border-radius: 10px;
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
transition: filter 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.lp_prog .img_hover_grid:hover img {
filter: brightness(0.72) saturate(1.2);
}

.lp_prog .img_hover_grid .grid_overlay {
position: absolute;
inset: 0;
opacity: 0;
pointer-events: none;
transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1);
background-image:
linear-gradient(rgba(129, 162, 82, 0.35) 1px, transparent 1px),
linear-gradient(90deg, rgba(129, 162, 82, 0.35) 1px, transparent 1px);
background-size: 40px 40px;
border-radius: 10px;
}

.lp_prog .img_hover_grid:hover .grid_overlay {
opacity: 1;
}

.lp_prog .portrait_thumb {
width: 80px;
height: 80px;
border-radius: 50%;
object-fit: cover;
object-position: center;
flex-shrink: 0;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
}

.lp_prog .animate_offset>* {
opacity: 0;
transform: translateY(18px);
animation: lp_rise 0.6s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.lp_prog .animate_offset>*:nth-child(1) {
animation-delay: 0.05s;
}

.lp_prog .animate_offset>*:nth-child(2) {
animation-delay: 0.15s;
}

.lp_prog .animate_offset>*:nth-child(3) {
animation-delay: 0.25s;
}

.lp_prog .animate_offset>*:nth-child(4) {
animation-delay: 0.35s;
}

.lp_prog .animate_offset>*:nth-child(5) {
animation-delay: 0.45s;
}

.lp_prog .animate_offset>*:nth-child(6) {
animation-delay: 0.55s;
}

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

.lp_prog .num_list {
list-style: none;
margin: 0;
padding: 0;
}

.lp_prog .num_list li {
display: flex;
flex-direction: row;
align-items: flex-start;
justify-content: space-between;
gap: 12px;
padding: 12px 0;
border-bottom: 1px solid #B2BD92;
font-size: 17px;
line-height: 1.6;
}

.lp_prog .num_list li:last-child {
border-bottom: none;
}

.lp_prog .num_list .n_label {
flex: 1;
color: #2a3a1a;
}

.lp_prog .num_list .n_num {
font-size: 22px;
font-weight: 700;
color: #81A252;
text-align: right;
flex-shrink: 0;
min-width: 40px;
}

.lp_prog .underline_link {
color: #81A252;
text-decoration: none;
position: relative;
font-weight: 600;
}

.lp_prog .underline_link::after {
content: '';
position: absolute;
bottom: -2px;
left: 0;
width: 0%;
height: 2px;
background: #81A252;
transition: width 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.lp_prog .underline_link:hover::after {
width: 100%;
}

.lp_prog .left_strip {
border-left: none;
padding-left: 0;
position: relative;
}

.lp_prog .left_strip::before {
content: '';
position: absolute;
left: -24px;
top: 0;
bottom: 0;
width: 4px;
background: #81A252;
border-radius: 2px;
}

.lp_prog .dashed_path {
position: absolute;
pointer-events: none;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: hidden;
}

.lp_prog .dashed_path svg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.lp_prog .funnel_wrap {
display: flex;
flex-direction: column;
align-items: center;
gap: 6px;
padding: 24px 0;
}

.lp_prog .funnel_step {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
width: 100%;
}

.lp_prog .funnel_bar {
height: 44px;
border-radius: 2px;
background: linear-gradient(to right, #81A252, #B2BD92);
display: flex;
align-items: center;
padding-left: 12px;
flex-shrink: 0;
transition: box-shadow 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.lp_prog .funnel_bar:hover {
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
}

.lp_prog .funnel_bar span {
color: #fff;
font-size: 14px;
font-weight: 700;
white-space: nowrap;
}

.lp_prog .funnel_label {
font-size: 14px;
color: #2a3a1a;
line-height: 1.6;
flex: 1;
}

.lp_prog .four_col {
display: grid;
grid-template-columns: 2fr 1fr 1fr 1fr;
gap: 24px;
}

.lp_prog .four_col .col_accent {
background: #81A252;
color: #fff;
border-radius: 10px;
padding: 24px;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
display: flex;
flex-direction: column;
gap: 12px;
}

.lp_prog .four_col .col_accent h3 {
color: #fff;
font-size: 22px;
line-height: 1.1;
margin: 0;
}

.lp_prog .four_col .col_accent p {
font-size: 14px;
line-height: 1.6;
margin: 0;
color: rgba(255, 255, 255, 0.9);
}

.lp_prog .stat_col {
background: #fff;
border-radius: 10px;
padding: 24px 12px;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 6px;
text-align: center;
}

.lp_prog .stat_col .stat_val {
font-size: 40px;
font-weight: 700;
color: #81A252;
line-height: 1.1;
}

.lp_prog .stat_col .stat_desc {
font-size: 14px;
color: #2a3a1a;
line-height: 1.6;
}

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

.lp_prog .faq_item {
background: #fff;
border-radius: 10px;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
overflow: hidden;
}

.lp_prog .faq_item summary {
list-style: none;
cursor: pointer;
padding: 24px;
font-size: 17px;
font-weight: 600;
color: #2a3a1a;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 12px;
transition: color 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.lp_prog .faq_item summary::-webkit-details-marker {
display: none;
}

.lp_prog .faq_item summary::marker {
display: none;
}

.lp_prog .faq_item summary:hover {
color: #81A252;
}

.lp_prog .faq_icon {
width: 24px;
height: 24px;
flex-shrink: 0;
color: #81A252;
transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.lp_prog .faq_item[open] .faq_icon {
transform: rotate(45deg);
}

.lp_prog .faq_body {
padding: 0 24px 24px 24px;
font-size: 17px;
line-height: 1.6;
color: #3a4a2a;
}

@media (max-width: 900px) {
.lp_prog .four_col {
grid-template-columns: 1fr 1fr;
}

.lp_prog .four_col .col_accent {
grid-column: 1 / -1;
}

.lp_prog .prog_hero_layout {
flex-direction: column !important;
}

.lp_prog .prog_hero_img {
display: none;
}
}

@media (max-width: 600px) {
.lp_prog .four_col {
grid-template-columns: 1fr;
}

.lp_prog .funnel_wrap {
padding: 12px 0;
}

.lp_prog .modules_grid {
grid-template-columns: 1fr !important;
}
}

.lp_prog .prog_hero {
background: #81A252;
padding: 96px 0 0 0;
position: relative;
}

.lp_prog .prog_hero_layout {
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 52px;
}

.lp_prog .prog_hero_text {
flex: 1;
padding-bottom: 52px;
}

.lp_prog .prog_hero_text h1 {
font-size: 55px;
line-height: 1.1;
color: #fff;
margin: 0 0 24px 0;
}

.lp_prog .prog_hero_text h1 em {
font-style: normal;
color: #F3F7ED;
opacity: 0.85;
}

.lp_prog .prog_hero_text p {
font-size: 17px;
line-height: 1.6;
color: rgba(255, 255, 255, 0.92);
margin: 0 0 24px 0;
max-width: 520px;
}

.lp_prog .prog_hero_tags {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 12px;
margin-bottom: 24px;
}

.lp_prog .prog_hero_tags .tag_pill {
background: rgba(255, 255, 255, 0.15);
color: #fff;
border-color: rgba(255, 255, 255, 0.3);
}

.lp_prog .prog_hero_img {
width: 340px;
flex-shrink: 0;
align-self: flex-end;
}

.lp_prog .prog_hero_img img {
display: block;
width: 340px;
height: 360px;
object-fit: cover;
object-position: center;
border-radius: 10px 10px 0 0;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
filter: contrast(1.08) saturate(1.1);
}

.lp_prog .hero_shape_a {
position: absolute;
top: 24px;
right: 420px;
width: 80px;
height: 80px;
border: 3px dashed rgba(255, 255, 255, 0.2);
border-radius: 10px;
pointer-events: none;
}

.lp_prog .hero_shape_b {
position: absolute;
top: 52px;
left: 52px;
width: 40px;
height: 40px;
background: rgba(255, 255, 255, 0.1);
border-radius: 50%;
pointer-events: none;
}

.lp_prog .hero_shape_c {
position: absolute;
bottom: 52px;
right: 400px;
width: 20px;
height: 20px;
background: rgba(243, 247, 237, 0.25);
border-radius: 2px;
transform: rotate(30deg);
pointer-events: none;
}

.lp_prog .structure_sec {
background: #F3F7ED;
padding: 96px 0;
position: relative;
}

.lp_prog .structure_sec .left_edge {
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 6px;
background: linear-gradient(to bottom, #81A252, #B2BD92);
border-radius: 0 2px 2px 0;
}

.lp_prog .modules_grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-top: 52px;
}

.lp_prog .module_card {
background: #fff;
border-radius: 10px;
padding: 24px;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
display: flex;
flex-direction: column;
gap: 12px;
transition: box-shadow 0.5s cubic-bezier(0.22, 1, 0.36, 1);
position: relative;
}

.lp_prog .module_card:hover {
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.lp_prog .module_card h4 {
font-size: 17px;
font-weight: 700;
color: #2a3a1a;
margin: 0;
line-height: 1.1;
}

.lp_prog .module_card p {
font-size: 14px;
line-height: 1.6;
color: #3a4a2a;
margin: 0;
}

.lp_prog .module_num {
font-size: 40px;
font-weight: 700;
color: #F3F7ED;
line-height: 1;
position: absolute;
top: 12px;
right: 12px;
}

.lp_prog .module_dur {
display: flex;
flex-direction: row;
align-items: center;
gap: 6px;
font-size: 14px;
color: #81A252;
font-weight: 600;
}

.lp_prog .module_dur .material-icons {
font-size: 17px;
}

.lp_prog .outcomes_sec {
background: #fff;
padding: 96px 0;
position: relative;
}

.lp_prog .outcomes_layout {
display: flex;
flex-direction: row;
gap: 52px;
align-items: flex-start;
}

.lp_prog .outcomes_left {
flex: 1;
}

.lp_prog .outcomes_right {
width: 340px;
flex-shrink: 0;
}

.lp_prog .outcomes_img_wrap {
width: 340px;
height: 400px;
}

.lp_prog .outcomes_img_wrap img {
width: 340px;
height: 400px;
object-fit: cover;
object-position: center;
border-radius: 10px;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
filter: contrast(1.06) saturate(1.1);
}

.lp_prog .funnel_sec_label {
font-size: 14px;
font-weight: 700;
color: #81A252;
text-transform: uppercase;
letter-spacing: 0.04em;
margin-bottom: 12px;
}

.lp_prog .instructors_sec {
background: #2a3a1a;
padding: 96px 0;
position: relative;
}

.lp_prog .instructors_sec .left_edge_dark {
position: absolute;
right: 0;
top: 0;
bottom: 0;
width: 6px;
background: linear-gradient(to bottom, #B2BD92, #81A252);
border-radius: 2px 0 0 2px;
}

.lp_prog .instructors_sec h2 {
color: #fff;
}

.lp_prog .instructors_sec h2 em {
font-style: normal;
color: #B2BD92;
}

.lp_prog .instructors_grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr;
gap: 24px;
margin-top: 52px;
}

.lp_prog .instr_card {
background: rgba(255, 255, 255, 0.05);
border: 1px solid rgba(178, 189, 146, 0.2);
border-radius: 10px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 12px;
transition: background 0.5s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.lp_prog .instr_card:hover {
background: rgba(129, 162, 82, 0.12);
border-color: rgba(129, 162, 82, 0.4);
}

.lp_prog .instr_card h5 {
font-size: 17px;
font-weight: 700;
color: #fff;
margin: 0;
line-height: 1.1;
}

.lp_prog .instr_card .instr_role {
font-size: 14px;
color: #B2BD92;
line-height: 1.6;
}

.lp_prog .instr_card .instr_bio {
font-size: 14px;
color: rgba(255, 255, 255, 0.75);
line-height: 1.6;
margin: 0;
}

.lp_prog .offer_strip {
margin-top: 52px;
background: rgba(129, 162, 82, 0.15);
border-radius: 10px;
padding: 24px;
display: flex;
flex-direction: row;
align-items: center;
gap: 24px;
flex-wrap: wrap;
}

.lp_prog .offer_strip .offer_price {
font-size: 40px;
font-weight: 700;
color: #B2BD92;
line-height: 1.1;
}

.lp_prog .offer_strip .offer_desc {
font-size: 14px;
color: rgba(255, 255, 255, 0.8);
line-height: 1.6;
flex: 1;
}

.lp_prog .offer_strip .btn_primary {
background: #B2BD92;
color: #2a3a1a;
}

.lp_prog .offer_strip .btn_primary:hover {
background: #81A252;
color: #fff;
}

.lp_prog .faq_sec {
background: #F3F7ED;
padding: 96px 0;
}

.lp_prog .faq_layout {
display: grid;
grid-template-columns: 1fr 2fr;
gap: 52px;
align-items: flex-start;
}

.lp_prog .faq_intro p {
font-size: 17px;
line-height: 1.6;
color: #3a4a2a;
margin: 0;
}

.lp_prog .faq_intro h2 {
font-size: 40px;
line-height: 1.1;
color: #2a3a1a;
margin: 0 0 24px 0;
}

.lp_prog .faq_intro h2 em {
font-style: normal;
color: #81A252;
}

@media (max-width: 900px) {
.lp_prog .faq_layout {
grid-template-columns: 1fr;
}

.lp_prog .outcomes_layout {
flex-direction: column;
}

.lp_prog .outcomes_right {
display: none;
}

.lp_prog .instructors_grid {
grid-template-columns: 1fr 1fr;
}
}

@media (max-width: 600px) {
.lp_prog .instructors_grid {
grid-template-columns: 1fr;
}

.lp_prog .prog_hero_text h1 {
font-size: 40px;
}

.lp_prog .offer_strip {
flex-direction: column;
align-items: flex-start;
}
}

.cont-pg {
max-width: 100%;
overflow-x: clip;
}

.cont-pg .pg-body {
max-width: 1024px;
margin: 0 auto;
padding: 0 24px;
}

.cont-pg .reach-split {
background: linear-gradient(to bottom, #F3F7ED 52%, #fff 52%);
padding: 96px 0 52px;
}

.cont-pg .reach-split .pg-body {
display: grid;
grid-template-columns: 1fr 2fr;
gap: 52px;
align-items: start;
}

.cont-pg .sidebar-col {
display: flex;
flex-direction: column;
gap: 24px;
}

.cont-pg .sidebar-label {
font-size: 14px;
color: #81A252;
letter-spacing: 0.08em;
text-transform: uppercase;
font-weight: 700;
}

.cont-pg .sidebar-heading {
font-size: 40px;
line-height: 1.1;
color: #2a2e1f;
margin: 0;
}

.cont-pg .sidebar-heading span {
color: #81A252;
}

.cont-pg .sidebar-sub {
font-size: 17px;
line-height: 1.6;
color: #3d4230;
margin: 0;
}

.cont-pg .contact-items {
display: flex;
flex-direction: column;
gap: 12px;
margin: 0;
padding: 0;
list-style: none;
}

.cont-pg .contact-items li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
font-size: 17px;
line-height: 1.6;
color: #2a2e1f;
}

.cont-pg .contact-items .c-icon {
color: #81A252;
font-size: 22px;
flex-shrink: 0;
margin-top: 2px;
}

.cont-pg .contact-items a {
color: #2a2e1f;
text-decoration: none;
border-bottom: 1px solid #B2BD92;
transition: color 0.5s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.cont-pg .contact-items a:hover {
color: #81A252;
border-color: #81A252;
}

.cont-pg .form-card {
background: #fff;
border-radius: 10px;
padding: 52px;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.cont-pg .form-section-head {
font-size: 22px;
line-height: 1.1;
color: #2a2e1f;
margin: 0 0 24px;
padding-left: 12px;
border-left: 3px solid #81A252;
}

.cont-pg .form-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-bottom: 24px;
}

.cont-pg .form-field {
display: flex;
flex-direction: column;
gap: 6px;
}

.cont-pg .form-field.full {
grid-column: 1 / -1;
}

.cont-pg .field-label {
font-size: 14px;
font-weight: 700;
color: #2a2e1f;
}

.cont-pg .field-input {
font-size: 17px;
line-height: 1.6;
padding: 12px;
border: 1.5px solid #B2BD92;
border-radius: 2px;
background: #F3F7ED;
color: #2a2e1f;
outline: none;
box-shadow: inset 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
transition: border-color 0.45s cubic-bezier(0.22, 1, 0.36, 1), background 0.45s cubic-bezier(0.22, 1, 0.36, 1);
width: 100%;
text-overflow: ellipsis;
}

.cont-pg .field-input::placeholder {
color: #8a9470;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

.cont-pg .field-input:focus {
border-color: #81A252;
background: #fff;
}

.cont-pg .radio-group-label {
font-size: 14px;
font-weight: 700;
color: #2a2e1f;
margin-bottom: 6px;
display: block;
}

.cont-pg .radio-options {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 12px;
}

.cont-pg .radio-opt {
display: flex;
flex-direction: row;
align-items: center;
gap: 6px;
cursor: pointer;
}

.cont-pg .radio-opt input[type="radio"] {
accent-color: #81A252;
width: 18px;
height: 18px;
cursor: pointer;
}

.cont-pg .radio-opt-text {
font-size: 17px;
color: #2a2e1f;
line-height: 1.6;
}

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

.cont-pg .privacy-row input[type="checkbox"] {
accent-color: #81A252;
width: 18px;
height: 18px;
flex-shrink: 0;
margin-top: 3px;
cursor: pointer;
}

.cont-pg .privacy-text {
font-size: 14px;
line-height: 1.6;
color: #3d4230;
}

.cont-pg .privacy-text a {
color: #81A252;
text-decoration: none;
border-bottom: 1px solid #B2BD92;
transition: border-color 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.cont-pg .privacy-text a:hover {
border-color: #81A252;
}

.cont-pg .submit-btn {
display: inline-flex;
align-items: center;
gap: 6px;
font-size: 17px;
font-weight: 700;
color: #fff;
background: #81A252;
border: none;
border-radius: 2px;
padding: 12px 52px;
cursor: pointer;
position: relative;
overflow: hidden;
transition: background 0.5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.cont-pg .submit-btn:hover {
background: #6a8a42;
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
}

.cont-pg .submit-btn:focus {
outline: 2px solid #81A252;
outline-offset: 3px;
}

.cont-pg .submit-btn::after {
content: "";
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 0%;
background: rgba(255, 255, 255, 0.18);
transition: width 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.cont-pg .submit-btn:active::after {
width: 100%;
}

.cont-pg .diagram-band {
padding: 96px 0;
background: #fff;
}

.cont-pg .diagram-band .pg-body {
display: flex;
flex-direction: column;
gap: 52px;
}

.cont-pg .band-head {
display: flex;
flex-direction: column;
gap: 12px;
max-width: 640px;
}

.cont-pg .band-title {
font-size: 29px;
line-height: 1.1;
color: #2a2e1f;
margin: 0;
padding-left: 12px;
border-left: 3px solid #81A252;
}

.cont-pg .band-title span {
color: #81A252;
}

.cont-pg .band-desc {
font-size: 17px;
line-height: 1.6;
color: #3d4230;
margin: 0;
}

.cont-pg .connect-diagram {
display: grid;
grid-template-columns: 1fr auto 1fr auto 1fr;
align-items: center;
gap: 0;
}

.cont-pg .diag-node {
display: flex;
flex-direction: column;
align-items: center;
gap: 12px;
padding: 24px 12px;
background: #F3F7ED;
border-radius: 10px;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
text-align: center;
position: relative;
}

.cont-pg .diag-node .node-icon {
color: #81A252;
font-size: 40px;
}

.cont-pg .diag-node .node-label {
font-size: 14px;
font-weight: 700;
color: #2a2e1f;
line-height: 1.1;
}

.cont-pg .diag-node .node-detail {
font-size: 14px;
color: #3d4230;
line-height: 1.6;
}

.cont-pg .diag-connector {
display: flex;
flex-direction: column;
align-items: center;
padding: 0 6px;
}

.cont-pg .conn-line {
width: 60px;
height: 2px;
background: linear-gradient(to right, #81A252, transparent);
position: relative;
animation: draw-line 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.cont-pg .conn-line.rev {
background: linear-gradient(to right, transparent, #81A252);
}

@keyframes draw-line {
from {
width: 0;
opacity: 0;
}

to {
width: 60px;
opacity: 1;
}
}

.cont-pg .conn-dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: #81A252;
margin: -5px auto 0;
}

.cont-pg .sub-grid-wrap {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px;
}

.cont-pg .sub-grid-inner {
display: grid;
grid-template-rows: auto auto;
gap: 12px;
}

.cont-pg .sub-card {
background: #F3F7ED;
border-radius: 10px;
padding: 24px;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
display: flex;
flex-direction: column;
gap: 6px;
}

.cont-pg .sub-card-title {
font-size: 17px;
font-weight: 700;
color: #2a2e1f;
line-height: 1.1;
}

.cont-pg .sub-card-body {
font-size: 14px;
color: #3d4230;
line-height: 1.6;
}

.cont-pg .sub-card.accent {
background: #81A252;
}

.cont-pg .sub-card.accent .sub-card-title,
.cont-pg .sub-card.accent .sub-card-body {
color: #fff;
}

.cont-pg .img-node {
border-radius: 10px;
overflow: hidden;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.cont-pg .img-node img {
width: 100%;
height: 220px;
object-fit: cover;
display: block;
opacity: 0.88;
}

@media (max-width: 900px) {
.cont-pg .reach-split .pg-body {
grid-template-columns: 1fr;
gap: 24px;
}

.cont-pg .form-row {
grid-template-columns: 1fr;
}

.cont-pg .form-card {
padding: 24px;
}

.cont-pg .connect-diagram {
grid-template-columns: 1fr;
gap: 12px;
}

.cont-pg .diag-connector {
display: none;
}

.cont-pg .sub-grid-wrap {
grid-template-columns: 1fr;
}
}

@media (max-width: 600px) {
.cont-pg .reach-split {
padding: 52px 0 24px;
}

.cont-pg .sidebar-heading {
font-size: 29px;
}

.cont-pg .diagram-band {
padding: 52px 0;
}

.cont-pg .radio-options {
flex-direction: column;
}

.cont-pg .img-node img {
display: none;
}
}

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

.abt_us .pg_wrap {
max-width: 1024px;
margin: 0 auto;
padding: 0 24px;
}

.abt_us .reveal_up {
animation: lift_in 0.6s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes lift_in {
from {
opacity: 0;
transform: translateY(28px);
}

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

.abt_us .btn_primary {
display: inline-block;
background: #81A252;
color: #fff;
font-size: 17px;
font-weight: 700;
padding: 12px 52px;
border-radius: 2px;
border: none;
cursor: pointer;
text-decoration: none;
position: relative;
overflow: hidden;
transition: background 0.5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.5s cubic-bezier(0.22, 1, 0.36, 1);
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
}

.abt_us .btn_primary:hover {
background: #6a8c42;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.abt_us .btn_primary:active {
transform: scale(0.97);
transition: transform 0.08s ease-in-out;
}

.abt_us .btn_primary::after {
content: '';
position: absolute;
left: 0;
top: 0;
width: 0%;
height: 100%;
background: rgba(255, 255, 255, 0.13);
transition: width 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.abt_us .btn_primary:focus-visible {
outline: 2px solid #81A252;
outline-offset: 3px;
}

.abt_us .ident_block {
padding: 52px 0 96px;
position: relative;
background: #fff;
border-bottom: 1px solid #B2BD92;
}

.abt_us .ident_block::before {
content: '';
position: absolute;
left: 0;
top: 0;
right: 0;
bottom: 0;
pointer-events: none;
overflow: hidden;
}

.abt_us .curved_deco {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
overflow: hidden;
z-index: 0;
}

.abt_us .curved_deco svg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: 0.13;
}

.abt_us .ident_inner {
position: relative;
z-index: 1;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 52px;
}

.abt_us .ident_text {
flex: 1 1 0;
min-width: 0;
}

.abt_us .ident_img_col {
flex: 0 0 340px;
width: 340px;
position: relative;
}

.abt_us .ident_img_wrap {
width: 100%;
height: 420px;
border-radius: 10px;
overflow: hidden;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
position: relative;
}

.abt_us .ident_img_wrap::after {
content: '';
position: absolute;
inset: 0;
background: rgba(129, 162, 82, 0.18);
pointer-events: none;
transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.abt_us .ident_img_wrap:hover::after {
opacity: 0;
}

.abt_us .ident_img_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: grayscale(30%);
transition: filter 0.5s cubic-bezier(0.22, 1, 0.36, 1), brightness 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.abt_us .ident_img_wrap:hover img {
filter: grayscale(0%) brightness(1.08);
}

.abt_us .grain_overlay {
position: absolute;
inset: 0;
border-radius: 10px;
pointer-events: none;
z-index: 2;
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%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.08'/%3E%3C/svg%3E");
opacity: 0.6;
}

.abt_us .eyebrow {
font-size: 14px;
font-weight: 700;
letter-spacing: 0.08em;
color: #81A252;
text-transform: uppercase;
margin-bottom: 12px;
display: block;
line-height: 1.1;
}

.abt_us .ident_h1 {
font-size: 55px;
line-height: 1.1;
color: #1e2b12;
margin-bottom: 24px;
}

.abt_us .ident_h1 .accent {
color: #81A252;
}

.abt_us .ident_lead {
font-size: 17px;
line-height: 1.6;
color: #2e3a1f;
margin-bottom: 24px;
max-width: 540px;
}

.abt_us .ident_body {
font-size: 17px;
line-height: 1.6;
color: #3a4a28;
margin-bottom: 24px;
max-width: 540px;
}

.abt_us .stat_row {
display: flex;
flex-direction: row;
gap: 24px;
margin-top: 52px;
flex-wrap: wrap;
}

.abt_us .stat_item {
flex: 1 1 120px;
min-width: 0;
border-top: 2px solid #81A252;
padding-top: 12px;
}

.abt_us .stat_num {
font-size: 40px;
font-weight: 800;
color: #81A252;
line-height: 1.1;
display: block;
}

.abt_us .stat_label {
font-size: 14px;
color: #3a4a28;
line-height: 1.6;
}

.abt_us .ident_img_caption {
margin-top: 12px;
font-size: 14px;
color: #6a7a54;
line-height: 1.6;
text-align: left;
border-right: 2px solid #B2BD92;
padding-right: 12px;
}

.abt_us .team_block {
padding: 96px 0 52px;
background: #F3F7ED;
position: relative;
}

.abt_us .team_block::before {
content: '';
display: block;
width: 100%;
height: 18px;
background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='18' viewBox='0 0 40 18'%3E%3Cpolyline points='0,18 5,2 10,18 15,2 20,18 25,2 30,18 35,2 40,18' fill='none' stroke='%23B2BD92' stroke-width='1.5'/%3E%3C/svg%3E") repeat-x top;
position: absolute;
top: 0;
left: 0;
right: 0;
}

.abt_us .team_h2 {
font-size: 40px;
line-height: 1.1;
color: #1e2b12;
margin-bottom: 12px;
}

.abt_us .team_h2 .accent {
color: #81A252;
}

.abt_us .team_intro {
font-size: 17px;
line-height: 1.6;
color: #3a4a28;
max-width: 620px;
margin-bottom: 52px;
}

.abt_us .team_grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 24px;
margin-bottom: 52px;
}

.abt_us .expert_card {
background: #fff;
border-radius: 10px;
box-shadow: 1px 3px 3px 1px rgba(178, 189, 146, 0.06);
padding: 24px;
display: flex;
flex-direction: column;
gap: 12px;
transition: box-shadow 0.5s cubic-bezier(0.22, 1, 0.36, 1), transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
position: relative;
}

.abt_us .expert_card:active {
transform: scale(0.98);
transition: transform 0.09s ease-in-out;
}

.abt_us .expert_card:hover {
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.abt_us .expert_card.featured {
grid-column: 1 / 2;
grid-row: 1 / 2;
}

.abt_us .card_head_line {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
}

.abt_us .portrait_wrap {
width: 64px;
height: 90px;
border-radius: 10px;
overflow: hidden;
flex-shrink: 0;
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
}

.abt_us .portrait_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
transition: filter 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.abt_us .portrait_wrap:hover img {
filter: brightness(1.1);
}

.abt_us .person_meta {
flex: 1 1 0;
min-width: 0;
}

.abt_us .person_name {
font-size: 17px;
font-weight: 700;
color: #1e2b12;
line-height: 1.1;
margin-bottom: 6px;
}

.abt_us .person_role {
font-size: 14px;
color: #81A252;
line-height: 1.6;
}

.abt_us .card_accent_line {
width: 3px;
height: 100%;
background: linear-gradient(to bottom, #81A252, transparent);
position: absolute;
left: 0;
top: 0;
border-radius: 2px 0 0 2px;
}

.abt_us .card_body {
font-size: 14px;
line-height: 1.6;
color: #3a4a28;
}

.abt_us .card_tag_row {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 6px;
}

.abt_us .card_tag {
font-size: 14px;
background: #F3F7ED;
color: #3a4a28;
border-radius: 2px;
padding: 6px 12px;
line-height: 1.1;
}

.abt_us .pull_quote_wrap {
grid-column: 2 / 4;
grid-row: 1 / 2;
background: linear-gradient(to right, #81A252, transparent);
border-radius: 10px;
padding: 52px;
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
overflow: hidden;
}

.abt_us .pull_quote_wrap::after {
content: '';
position: absolute;
inset: 0;
background: rgba(243, 247, 237, 0.82);
border-radius: 10px;
pointer-events: none;
}

.abt_us .pull_q_text {
font-size: 22px;
line-height: 1.6;
color: #1e2b12;
font-style: italic;
font-weight: 600;
position: relative;
z-index: 1;
margin-bottom: 12px;
}

.abt_us .pull_q_attr {
font-size: 14px;
color: #6a7a54;
position: relative;
z-index: 1;
line-height: 1.6;
}

.abt_us .approach_row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-top: 52px;
}

.abt_us .approach_img_wrap {
width: 100%;
height: 260px;
border-radius: 10px;
overflow: hidden;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
position: relative;
}

.abt_us .approach_img_wrap::after {
content: '';
position: absolute;
inset: 0;
background: rgba(129, 162, 82, 0.2);
pointer-events: none;
transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.abt_us .approach_img_wrap:hover::after {
opacity: 0;
}

.abt_us .approach_img_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: grayscale(40%);
transition: filter 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.abt_us .approach_img_wrap:hover img {
filter: grayscale(0%) brightness(1.08);
}

.abt_us .approach_text_col {
display: flex;
flex-direction: column;
justify-content: center;
gap: 12px;
}

.abt_us .approach_h3 {
font-size: 29px;
line-height: 1.1;
color: #1e2b12;
margin-bottom: 6px;
}

.abt_us .approach_h3 .accent {
color: #81A252;
}

.abt_us .approach_body {
font-size: 17px;
line-height: 1.6;
color: #3a4a28;
}

.abt_us .num_list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 6px;
}

.abt_us .num_list li {
display: flex;
flex-direction: row;
align-items: baseline;
justify-content: space-between;
gap: 12px;
font-size: 14px;
line-height: 1.6;
color: #3a4a28;
border-bottom: 1px solid #B2BD92;
padding-bottom: 6px;
}

.abt_us .num_list li .li_num {
font-size: 22px;
font-weight: 800;
color: #B2BD92;
line-height: 1.1;
flex-shrink: 0;
margin-left: auto;
padding-left: 12px;
}

.abt_us .img_pair_row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-top: 24px;
}

.abt_us .img_pair_item {
width: 100%;
height: 200px;
border-radius: 10px;
overflow: hidden;
box-shadow: 1px 5px 22px 1px rgba(178, 189, 146, 0.11);
position: relative;
}

.abt_us .img_pair_item::after {
content: '';
position: absolute;
inset: 0;
background: rgba(129, 162, 82, 0.18);
pointer-events: none;
transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.abt_us .img_pair_item:hover::after {
opacity: 0;
}

.abt_us .img_pair_item img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: grayscale(30%);
transition: filter 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.abt_us .img_pair_item:hover img {
filter: grayscale(0%) brightness(1.08);
}

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

.abt_us .ident_img_col {
flex: 0 0 auto;
width: 100%;
display: none;
}

.abt_us .team_grid {
grid-template-columns: 1fr 1fr;
}

.abt_us .pull_quote_wrap {
grid-column: 1 / 3;
grid-row: auto;
}

.abt_us .approach_row {
grid-template-columns: 1fr;
}

.abt_us .approach_img_wrap {
display: none;
}
}

@media (max-width: 600px) {
.abt_us .ident_h1 {
font-size: 40px;
}

.abt_us .team_grid {
grid-template-columns: 1fr;
}

.abt_us .pull_quote_wrap {
grid-column: 1 / 2;
padding: 24px;
}

.abt_us .pull_q_text {
font-size: 17px;
}

.abt_us .stat_row {
gap: 12px;
}

.abt_us .img_pair_row {
grid-template-columns: 1fr;
}

.abt_us .ident_img_col {
display: none;
}
}

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

.rt_page .rt_inner {
max-width: 1024px;
margin-left: auto;
margin-right: auto;
padding-left: 24px;
padding-right: 24px;
}

.rt_page ::selection {
background: #B2BD92;
color: #1a1a1a;
}

.rt_page .wavy_line {
width: 100%;
overflow: hidden;
line-height: 0;
height: 24px;
}

.rt_page .scallop_divider {
width: 100%;
overflow: hidden;
line-height: 0;
}

.rt_page .title_blk {
background: linear-gradient(135deg, #F3F7ED 0%, #e8eede 60%, #d4dcbf 100%);
padding-top: 52px;
padding-bottom: 52px;
position: relative;
}

.rt_page .title_blk .wavy_btm {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
overflow: hidden;
height: 20px;
}

.rt_page .title_grid {
display: grid;
grid-template-columns: 340px 1fr;
gap: 52px;
align-items: start;
}

.rt_page .title_img_col {
position: relative;
}

.rt_page .title_img_wrap {
width: 100%;
aspect-ratio: 3/4;
overflow: hidden;
clip-path: polygon(0 0, 88% 0, 100% 12%, 100% 100%, 12% 100%, 0 88%);
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
animation: clip_expand 0.6s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes clip_expand {
from {
clip-path: polygon(44% 44%, 56% 44%, 56% 56%, 44% 56%, 44% 56%, 44% 44%);
opacity: 0;
}

to {
clip-path: polygon(0 0, 88% 0, 100% 12%, 100% 100%, 12% 100%, 0 88%);
opacity: 1;
}
}

.rt_page .title_img_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
}

.rt_page .geo_shape {
position: absolute;
top: -12px;
right: -12px;
width: 80px;
height: 80px;
background: #81A252;
opacity: 0.12;
border-radius: 2px;
transform: rotate(18deg);
pointer-events: none;
}

.rt_page .geo_shape2 {
position: absolute;
bottom: 24px;
left: -18px;
width: 48px;
height: 48px;
border: 3px solid #81A252;
opacity: 0.18;
border-radius: 0px;
transform: rotate(-8deg);
pointer-events: none;
}

.rt_page .title_txt_col {
display: flex;
flex-direction: column;
gap: 24px;
padding-top: 12px;
}

.rt_page .badge_row {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
}

.rt_page .topic_badge {
background: #81A252;
color: #fff;
font-size: 14px;
padding: 6px 12px;
border-radius: 2px;
font-weight: 600;
letter-spacing: 0.04em;
}

.rt_page .count_badge {
background: #fff;
color: #81A252;
font-size: 14px;
font-weight: 700;
padding: 6px 12px;
border-radius: 2px;
border: 1.5px solid #B2BD92;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
}

.rt_page .title_h1 {
font-size: 55px;
line-height: 1.1;
color: #2a3518;
margin: 0;
}

.rt_page .title_h1 .accent_half {
color: #81A252;
}

.rt_page .title_sub {
font-size: 17px;
line-height: 1.6;
color: #3d4a28;
margin: 0;
}

.rt_page .title_cta_row {
display: flex;
flex-direction: row;
gap: 12px;
align-items: center;
flex-wrap: wrap;
}

.rt_page .btn_primary {
background: #81A252;
color: #fff;
font-size: 17px;
font-weight: 700;
padding: 12px 24px;
border: none;
border-radius: 2px;
cursor: pointer;
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
transition: background-color 0.5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.5s cubic-bezier(0.22, 1, 0.36, 1);
position: relative;
overflow: hidden;
}

.rt_page .btn_primary:hover {
background: #6b8a42;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.rt_page .btn_primary:focus {
outline: 2px solid #2a3518;
outline-offset: 2px;
}

.rt_page .btn_secondary {
background: transparent;
color: #81A252;
font-size: 14px;
font-weight: 600;
padding: 12px 24px;
border: 1.5px solid #81A252;
border-radius: 2px;
cursor: pointer;
transition: background-color 0.45s ease-in-out, color 0.45s ease-in-out;
}

.rt_page .btn_secondary:hover {
background: #F3F7ED;
color: #2a3518;
}

.rt_page .btn_secondary:focus {
outline: 2px solid #2a3518;
outline-offset: 2px;
}

.rt_page .conditions_blk {
background: #fff;
padding-top: 96px;
padding-bottom: 96px;
}

.rt_page .conditions_grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 52px;
align-items: start;
}

.rt_page .conditions_txt {
display: flex;
flex-direction: column;
gap: 24px;
}

.rt_page .sec_label {
font-size: 14px;
font-weight: 700;
color: #81A252;
text-transform: uppercase;
letter-spacing: 0.08em;
}

.rt_page .sec_h2 {
font-size: 40px;
line-height: 1.1;
color: #2a3518;
margin: 0;
padding-left: 12px;
border-left: 3px solid #81A252;
}

.rt_page .sec_h2 .accent_half {
color: #81A252;
}

.rt_page .body_p {
font-size: 17px;
line-height: 1.6;
color: #3a4520;
margin: 0;
}

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

.rt_page .conditions_list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
font-size: 17px;
line-height: 1.6;
color: #3a4520;
padding: 12px;
background: #F3F7ED;
border-radius: 2px;
}

.rt_page .conditions_list li .mat_ic {
color: #81A252;
font-size: 22px;
flex-shrink: 0;
margin-top: 2px;
}

.rt_page .img_float {
width: 100%;
border-radius: 0px;
overflow: hidden;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.rt_page .img_float img {
width: 100%;
height: 320px;
object-fit: cover;
display: block;
}

.rt_page .hesitation_blk {
background: linear-gradient(90deg, #81A252 0%, #B2BD92 100%);
padding-top: 52px;
padding-bottom: 52px;
position: relative;
}

.rt_page .hesitation_inner {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 52px;
align-items: center;
}

.rt_page .hesitation_q {
font-size: 29px;
line-height: 1.1;
color: #fff;
margin: 0;
font-weight: 700;
}

.rt_page .hesitation_body {
display: flex;
flex-direction: column;
gap: 24px;
}

.rt_page .hesitation_p {
font-size: 17px;
line-height: 1.6;
color: #F3F7ED;
margin: 0;
}

.rt_page .hesitation_note {
background: rgba(255, 255, 255, 0.15);
border-radius: 2px;
padding: 12px 24px;
font-size: 17px;
line-height: 1.6;
color: #fff;
border-left: 3px solid #fff;
}

.rt_page .longval_blk {
background: #F3F7ED;
padding-top: 96px;
padding-bottom: 96px;
}

.rt_page .longval_head {
display: flex;
flex-direction: column;
gap: 24px;
margin-bottom: 52px;
max-width: 600px;
}

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

.rt_page .val_card {
background: #fff;
border-radius: 2px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 12px;
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
border-top: 3px solid #81A252;
animation: border_glow 0.7s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes border_glow {
from {
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
}

to {
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
}
}

.rt_page .val_card:nth-child(2) {
animation-delay: 0.1s;
}

.rt_page .val_card:nth-child(3) {
animation-delay: 0.2s;
}

.rt_page .val_icon {
color: #81A252;
font-size: 29px;
}

.rt_page .val_h4 {
font-size: 22px;
line-height: 1.1;
color: #2a3518;
margin: 0;
}

.rt_page .val_p {
font-size: 17px;
line-height: 1.6;
color: #3a4520;
margin: 0;
}

.rt_page .longval_img_row {
margin-top: 52px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
align-items: center;
}

.rt_page .longval_img_wrap {
overflow: hidden;
border-radius: 0px;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.rt_page .longval_img_wrap img {
width: 100%;
height: 280px;
object-fit: cover;
display: block;
transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.rt_page .longval_img_wrap:hover img {
transform: scale(1.03);
}

.rt_page .longval_aside_txt {
display: flex;
flex-direction: column;
gap: 24px;
}

.rt_page .testimonials_blk {
background: #2a3518;
padding-top: 96px;
padding-bottom: 96px;
}

.rt_page .test_head {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 52px;
}

.rt_page .test_h2 {
font-size: 40px;
line-height: 1.1;
color: #F3F7ED;
margin: 0;
padding-left: 12px;
border-left: 3px solid #81A252;
}

.rt_page .test_h2 .accent_half {
color: #B2BD92;
}

.rt_page .test_label {
font-size: 14px;
color: #B2BD92;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.08em;
}

.rt_page .test_grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
}

.rt_page .test_card {
background: rgba(178, 189, 146, 0.1);
border-radius: 2px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 24px;
border: 1px solid rgba(178, 189, 146, 0.2);
transition: border-color 0.5s ease-in-out;
}

.rt_page .test_card:hover {
border-color: rgba(178, 189, 146, 0.5);
}

.rt_page .test_person {
display: flex;
flex-direction: row;
gap: 12px;
align-items: center;
}

.rt_page .test_portrait {
width: 64px;
height: 80px;
object-fit: cover;
object-position: center;
display: block;
flex-shrink: 0;
}

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

.rt_page .test_name {
font-size: 17px;
font-weight: 700;
color: #F3F7ED;
margin: 0;
}

.rt_page .test_role {
font-size: 14px;
color: #B2BD92;
margin: 0;
}

.rt_page .test_quote {
font-size: 17px;
line-height: 1.6;
color: #c8d4a8;
margin: 0;
font-style: italic;
}

.rt_page .test_result {
font-size: 14px;
color: #81A252;
font-weight: 600;
padding: 6px 12px;
background: rgba(129, 162, 82, 0.12);
border-radius: 2px;
align-self: flex-start;
}

.rt_page .community_blk {
background: #fff;
padding-top: 96px;
padding-bottom: 96px;
}

.rt_page .community_layout {
display: grid;
grid-template-columns: 1fr 420px;
gap: 52px;
align-items: start;
}

.rt_page .community_txt {
display: flex;
flex-direction: column;
gap: 24px;
}

.rt_page .community_stats {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px;
}

.rt_page .stat_item {
background: #F3F7ED;
border-radius: 2px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 6px;
position: relative;
}

.rt_page .stat_num {
font-size: 40px;
line-height: 1.1;
color: #81A252;
font-weight: 700;
}

.rt_page .stat_desc {
font-size: 14px;
line-height: 1.6;
color: #3a4520;
}

.rt_page .stat_badge {
position: absolute;
top: 6px;
right: 6px;
background: #81A252;
color: #fff;
font-size: 14px;
font-weight: 700;
width: 24px;
height: 24px;
border-radius: 10px;
display: flex;
align-items: center;
justify-content: center;
}

.rt_page .community_img_col {
display: flex;
flex-direction: column;
gap: 24px;
}

.rt_page .community_img_wrap {
overflow: hidden;
border-radius: 0px;
box-shadow: 1px 9px 40px 1px rgba(129, 162, 82, 0.14);
}

.rt_page .community_img_wrap img {
width: 100%;
height: 260px;
object-fit: cover;
display: block;
}

.rt_page .peer_note {
background: #F3F7ED;
border-radius: 2px;
padding: 24px;
font-size: 17px;
line-height: 1.6;
color: #3a4520;
}

.rt_page .distinction_blk {
background: linear-gradient(90deg, #F3F7ED 0%, #e4ecda 100%);
padding-top: 96px;
padding-bottom: 96px;
position: relative;
}

.rt_page .distinction_head {
display: flex;
flex-direction: column;
gap: 12px;
margin-bottom: 52px;
}

.rt_page .distinction_h2 {
font-size: 40px;
line-height: 1.1;
color: #2a3518;
margin: 0;
padding-left: 12px;
border-left: 3px solid #81A252;
}

.rt_page .distinction_h2 .accent_half {
color: #81A252;
}

.rt_page .distinction_rows {
display: flex;
flex-direction: column;
gap: 24px;
}

.rt_page .dist_row {
display: grid;
grid-template-columns: 48px 1fr;
gap: 24px;
align-items: start;
background: #fff;
border-radius: 2px;
padding: 24px;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
transition: box-shadow 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

.rt_page .dist_row:hover {
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
}

.rt_page .dist_num {
font-size: 29px;
line-height: 1.1;
color: #B2BD92;
font-weight: 700;
text-align: right;
}

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

.rt_page .dist_h5 {
font-size: 22px;
line-height: 1.1;
color: #2a3518;
margin: 0;
}

.rt_page .dist_p {
font-size: 17px;
line-height: 1.6;
color: #3a4520;
margin: 0;
}

@media (max-width: 900px) {
.rt_page .title_grid {
grid-template-columns: 1fr;
gap: 24px;
}

.rt_page .title_img_col {
display: none;
}

.rt_page .title_h1 {
font-size: 40px;
}

.rt_page .conditions_grid {
grid-template-columns: 1fr;
gap: 24px;
}

.rt_page .hesitation_inner {
grid-template-columns: 1fr;
gap: 24px;
}

.rt_page .longval_grid {
grid-template-columns: 1fr;
}

.rt_page .longval_img_row {
grid-template-columns: 1fr;
}

.rt_page .longval_img_wrap {
display: none;
}

.rt_page .test_grid {
grid-template-columns: 1fr;
}

.rt_page .community_layout {
grid-template-columns: 1fr;
}

.rt_page .community_img_col {
display: none;
}
}

@media (max-width: 600px) {
.rt_page .title_h1 {
font-size: 29px;
}

.rt_page .sec_h2 {
font-size: 29px;
}

.rt_page .test_h2 {
font-size: 29px;
}

.rt_page .distinction_h2 {
font-size: 29px;
}

.rt_page .longval_grid {
grid-template-columns: 1fr;
}

.rt_page .community_stats {
grid-template-columns: 1fr;
}

.rt_page .conditions_blk {
padding-top: 52px;
padding-bottom: 52px;
}

.rt_page .longval_blk {
padding-top: 52px;
padding-bottom: 52px;
}

.rt_page .testimonials_blk {
padding-top: 52px;
padding-bottom: 52px;
}

.rt_page .community_blk {
padding-top: 52px;
padding-bottom: 52px;
}

.rt_page .distinction_blk {
padding-top: 52px;
padding-bottom: 52px;
}
}

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

.success_page .success_card {
background: #fff;
max-width: 1024px;
width: 100%;
padding: 52px;
border-radius: 10px;
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 24px;
}

.success_page .icon_wrap {
width: 56px;
height: 56px;
border-radius: 10px;
background: #81A252;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
flex-shrink: 0;
}

.success_page .icon_wrap svg {
display: block;
}

.success_page .success_heading {
font-size: 40px;
line-height: 1.1;
color: #2a3a1a;
margin: 0;
}

.success_page .success_heading span {
color: #81A252;
}

.success_page .success_body {
font-size: 17px;
line-height: 1.6;
color: #3a4a2a;
margin: 0;
max-width: 580px;
}

.success_page .divider_line {
width: 100%;
height: 1px;
background: #B2BD92;
border: none;
margin: 0;
}

.success_page .meta_row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 52px;
width: 100%;
}

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

.success_page .meta_label {
font-size: 14px;
line-height: 1.1;
color: #6a7a5a;
text-transform: uppercase;
letter-spacing: 0.04em;
}

.success_page .meta_value {
font-size: 17px;
line-height: 1.6;
color: #2a3a1a;
}

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

.success_page .btn_primary {
display: inline-block;
padding: 12px 24px;
background: #81A252;
color: #fff;
font-size: 17px;
line-height: 1.1;
border-radius: 2px;
text-decoration: none;
border: none;
cursor: pointer;
transition: background-color 0.5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.4s ease-in-out;
box-shadow: 1px 3px 3px 1px rgba(129, 162, 82, 0.06);
}

.success_page .btn_primary:hover {
background: #6a8f42;
box-shadow: 1px 5px 22px 1px rgba(129, 162, 82, 0.11);
}

.success_page .btn_primary:focus {
outline: 2px solid #2a3a1a;
outline-offset: 2px;
}

.success_page .btn_secondary {
display: inline-block;
padding: 12px 24px;
background: transparent;
color: #81A252;
font-size: 14px;
line-height: 1.1;
border-radius: 2px;
text-decoration: none;
border: 1px solid #B2BD92;
cursor: pointer;
transition: border-color 0.6s cubic-bezier(0.22, 1, 0.36, 1), color 0.5s ease-in-out;
}

.success_page .btn_secondary:hover {
border-color: #81A252;
color: #4a6a2a;
}

.success_page .btn_secondary:focus {
outline: 2px solid #2a3a1a;
outline-offset: 2px;
}

.success_page .notice_strip {
width: 100%;
background: #F3F7ED;
border-radius: 2px;
padding: 12px 24px;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
}

.success_page .notice_strip .notice_icon {
color: #81A252;
font-size: 22px;
line-height: 1.1;
flex-shrink: 0;
margin-top: 2px;
}

.success_page .notice_text {
font-size: 14px;
line-height: 1.6;
color: #3a4a2a;
margin: 0;
}

@media (max-width: 600px) {
.success_page {
padding: 52px 12px;
}

.success_page .success_card {
padding: 24px;
gap: 24px;
}

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

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

.success_page .action_row {
flex-direction: column;
align-items: flex-start;
gap: 12px;
}

.success_page .btn_primary,
.success_page .btn_secondary {
width: 100%;
text-align: center;
}
}