* {
box-sizing: border-box;
}

html {
scroll-behavior: smooth;
}

body {
margin: 0;
padding: 0;
min-height: 100vh;
font-family: 'IBM Plex Serif', Georgia, serif;
}

.top-strip {
background: linear-gradient(90deg, #9AB135 0%, #b8cc4a 60%, #D7CAA2 100%);
padding: 8px 32px;
}

.top-strip__inner {
max-width: 1100px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
}

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

.top-strip__menu li a {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.4;
color: #2a2a00;
text-decoration: none;
padding: 8px 12px;
border-radius: 6px;
display: inline-block;
transition: background 0.22s ease-out, color 0.18s ease-out;
min-height: 44px;
display: flex;
align-items: center;
}

.top-strip__menu li a:hover {
background: rgba(247, 247, 235, 0.45);
color: #1a2800;
}

.top-strip__menu li a:focus {
outline: 3px solid #2a2a00;
outline-offset: 2px;
}

.top-strip__menu li a.active {
background: rgba(247, 247, 235, 0.6);
font-weight: 700;
}

.top-strip__contacts {
display: flex;
align-items: center;
gap: 20px;
flex-shrink: 0;
}

.contact-link {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.4;
color: #2a2a00;
text-decoration: none;
display: flex;
align-items: center;
gap: 8px;
min-height: 44px;
padding: 4px 8px;
border-radius: 6px;
transition: background 0.25s ease-out;
}

.contact-link:hover {
background: rgba(247, 247, 235, 0.45);
}

.contact-link:focus {
outline: 3px solid #2a2a00;
outline-offset: 2px;
}

.contact-link i {
font-size: 15px;
}

.brand-row {
background: #F7F7EB;
border-bottom: 2px solid #D7CAA2;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
}

.brand-row__inner {
max-width: 1100px;
margin: 0 auto;
padding: 20px 32px;
display: flex;
align-items: center;
justify-content: flex-end;
gap: 32px;
}

.brand-block {
display: flex;
align-items: center;
gap: 20px;
margin-left: auto;
}

.brand-block__tagline {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.6;
color: #4a5200;
max-width: 280px;
text-align: right;
}

.logo-box {
width: 64px;
height: 64px;
background: #9AB135;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
border-radius: 0;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07), 0 7px 20px -2px rgba(154, 177, 53, 0.10);
border: 2px solid #7a9020;
}

.logo-box img {
width: 60px;
height: 60px;
object-fit: contain;
display: block;
}

.brand-name-label {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 22px;
line-height: 1.15;
font-weight: 700;
color: #2a3800;
letter-spacing: 0;
}

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

.brand-ident__sub {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.4;
color: #6a7a30;
}

.ftr-outer {
background: #F7F7EB;
border-top: 2px solid #D7CAA2;
padding: 64px 32px 32px;
}

.ftr-outer__inner {
max-width: 1100px;
margin: 0 auto;
}

.ftr-grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 32px;
margin-bottom: 64px;
}

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

.ftr-logo-box {
width: 60px;
height: 60px;
background: #9AB135;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
border-radius: 0;
border: 2px solid #7a9020;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
}

.ftr-logo-box img {
width: 56px;
height: 56px;
object-fit: contain;
display: block;
}

.ftr-brand__name {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 22px;
line-height: 1.15;
font-weight: 700;
color: #2a3800;
}

.ftr-brand__desc {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.6;
color: #4a5a20;
}

.ftr-col__heading {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 18px;
line-height: 1.4;
font-weight: 700;
color: #2a3800;
margin: 0 0 20px 0;
padding-bottom: 8px;
border-bottom: 2px solid #9AB135;
display: inline-block;
}

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

.ftr-menu li a {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.6;
color: #4a5a20;
text-decoration: none;
display: inline-flex;
align-items: center;
gap: 8px;
padding: 4px 0;
border-radius: 6px;
transition: color 0.2s ease-out;
min-height: 44px;
}

.ftr-menu li a:hover {
color: #9AB135;
}

.ftr-menu li a:focus {
outline: 3px solid #9AB135;
outline-offset: 2px;
}

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

.ftr-contact-list li {
display: flex;
align-items: flex-start;
gap: 12px;
}

.ftr-contact-list li i {
color: #9AB135;
font-size: 15px;
margin-top: 4px;
flex-shrink: 0;
}

.ftr-contact-list li a,
.ftr-contact-list li span {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.6;
color: #4a5a20;
text-decoration: none;
}

.ftr-contact-list li a:hover {
color: #9AB135;
}

.ftr-contact-list li a:focus {
outline: 3px solid #9AB135;
outline-offset: 2px;
}

.ftr-bottom {
border-top: 1px solid #D7CAA2;
padding-top: 32px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;
flex-wrap: wrap;
}

.ftr-copy {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.6;
color: #6a7a30;
}

.ftr-legal {
display: flex;
align-items: center;
gap: 20px;
list-style: none;
margin: 0;
padding: 0;
}

.ftr-legal li a {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.6;
color: #4a5a20;
text-decoration: none;
border-bottom: 1px solid #D7CAA2;
padding-bottom: 2px;
transition: border-color 0.2s ease-out, color 0.18s ease-out;
}

.ftr-legal li a:hover {
color: #9AB135;
border-color: #9AB135;
}

.ftr-legal li a:focus {
outline: 3px solid #9AB135;
outline-offset: 2px;
}

.ck-bar {
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 1000;
background: #F7F7EB;
border-top: 2px solid #9AB135;
box-shadow: 0 -7px 20px -2px rgba(154, 177, 53, 0.10);
padding: 20px 32px;
transform: translateY(100%);
transition: transform 0.38s ease-out;
}

.ck-bar.shown {
transform: translateY(0);
}

.ck-bar__inner {
max-width: 1100px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: 32px;
flex-wrap: wrap;
}

.ck-bar__text {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.6;
color: #2a3800;
flex: 1;
min-width: 200px;
}

.ck-bar__actions {
display: flex;
align-items: center;
gap: 20px;
flex-shrink: 0;
}

.ck-accept {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.4;
color: #2a3800;
background: linear-gradient(90deg, #9AB135 0%, #b8cc4a 100%);
border: none;
border-radius: 18px;
padding: 12px 32px;
cursor: pointer;
font-weight: 700;
min-height: 44px;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07), 0 7px 20px -2px rgba(154, 177, 53, 0.10);
transition: opacity 0.22s ease-out, box-shadow 0.28s ease-out;
}

.ck-accept:hover {
opacity: 0.88;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.ck-accept:focus {
outline: 3px solid #2a3800;
outline-offset: 2px;
}

.ck-reject {
font-family: 'IBM Plex Serif', Georgia, serif;
font-size: 15px;
line-height: 1.4;
color: #4a5a20;
background: none;
border: none;
cursor: pointer;
text-decoration: underline;
text-underline-offset: 3px;
padding: 12px 8px;
min-height: 44px;
transition: color 0.2s ease-out;
}

.ck-reject:hover {
color: #9AB135;
}

.ck-reject:focus {
outline: 3px solid #9AB135;
outline-offset: 2px;
}

@media (max-width: 1366px) {
.top-strip {
padding: 8px 20px;
}

.brand-row__inner {
padding: 20px 20px;
}

.ftr-outer {
padding: 64px 20px 32px;
}
}

@media (max-width: 768px) {
.top-strip__inner {
flex-direction: column;
align-items: flex-start;
gap: 8px;
}

.top-strip__contacts {
gap: 12px;
}

.brand-row__inner {
flex-direction: column;
align-items: flex-end;
gap: 12px;
}

.brand-block {
margin-left: 0;
}

.brand-block__tagline {
text-align: left;
}

.ftr-grid {
grid-template-columns: 1fr 1fr;
gap: 32px;
}

.ftr-brand {
grid-column: 1 / -1;
}

.ftr-bottom {
flex-direction: column;
align-items: flex-start;
gap: 12px;
}

.ck-bar__inner {
flex-direction: column;
align-items: flex-start;
gap: 12px;
}
}

@media (max-width: 375px) {
.top-strip__menu {
gap: 0;
}

.top-strip__menu li a {
padding: 8px 8px;
font-size: 15px;
}

.ftr-grid {
grid-template-columns: 1fr;
}

.ftr-legal {
flex-direction: column;
align-items: flex-start;
gap: 8px;
}

.ck-bar__actions {
flex-direction: column;
align-items: flex-start;
gap: 8px;
}
}

.info-doc {
max-width: 1100px;
margin: 0 auto;
padding: 64px 32px;
color: #2c2c1e;
background: #ffffff;
}

.info-doc h1 {
font-size: 52px;
line-height: 1.15;
color: #2c2c1e;
margin-bottom: 32px;
margin-top: 0;
padding-bottom: 20px;
border-bottom: 2px solid #D7CAA2;
}

.info-doc h2 {
font-size: 38px;
line-height: 1.15;
color: #2c2c1e;
margin-top: 64px;
margin-bottom: 20px;
}

.info-doc h3 {
font-size: 28px;
line-height: 1.4;
color: #3a3a28;
margin-top: 32px;
margin-bottom: 12px;
}

.info-doc h4 {
font-size: 22px;
line-height: 1.4;
color: #3a3a28;
margin-top: 32px;
margin-bottom: 12px;
}

.info-doc h5 {
font-size: 18px;
line-height: 1.4;
color: #4a4a32;
margin-top: 20px;
margin-bottom: 8px;
}

.info-doc h6 {
font-size: 15px;
line-height: 1.4;
color: #4a4a32;
margin-top: 20px;
margin-bottom: 8px;
text-transform: uppercase;
}

.info-doc p {
font-size: 18px;
line-height: 1.6;
color: #2c2c1e;
margin-top: 0;
margin-bottom: 20px;
}

.info-doc ul,
.info-doc ol {
font-size: 18px;
line-height: 1.6;
color: #2c2c1e;
margin-top: 0;
margin-bottom: 20px;
padding-left: 32px;
}

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

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

.info-doc li {
margin-bottom: 8px;
padding-left: 4px;
}

.info-doc li:last-child {
margin-bottom: 0;
}

.info-doc ul ul,
.info-doc ol ol,
.info-doc ul ol,
.info-doc ol ul {
margin-top: 8px;
margin-bottom: 8px;
}

.info-doc a {
color: #6e7f22;
text-decoration: underline;
text-underline-offset: 3px;
transition: color 0.2s ease-out, opacity 0.18s ease-out;
}

.info-doc a:hover {
color: #9AB135;
opacity: 0.85;
}

.info-doc a:focus-visible {
outline: 2px solid #9AB135;
outline-offset: 2px;
border-radius: 6px;
}

.info-doc table {
width: 100%;
border-collapse: collapse;
margin-bottom: 32px;
font-size: 15px;
line-height: 1.6;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
}

.info-doc thead {
background: #9AB135;
color: #ffffff;
}

.info-doc thead th {
padding: 12px 20px;
font-size: 15px;
line-height: 1.4;
text-align: left;
font-weight: 700;
color: #ffffff;
border-bottom: 2px solid #7a8e29;
}

.info-doc tbody tr {
background: #ffffff;
transition: background 0.22s ease-out;
}

.info-doc tbody tr:nth-child(even) {
background: #F7F7EB;
}

.info-doc tbody tr:hover {
background: #eef2d8;
}

.info-doc td {
padding: 12px 20px;
font-size: 15px;
line-height: 1.6;
color: #2c2c1e;
border-bottom: 1px solid #D7CAA2;
vertical-align: top;
}

.info-doc tbody tr:last-child td {
border-bottom: none;
}

.info-doc th {
padding: 12px 20px;
vertical-align: middle;
}

.info-doc div {
font-size: 18px;
line-height: 1.6;
}

@media (max-width: 768px) {
.info-doc {
padding: 32px 20px;
}

.info-doc h1 {
font-size: 38px;
}

.info-doc h2 {
font-size: 28px;
margin-top: 32px;
}

.info-doc h3 {
font-size: 22px;
}

.info-doc h4 {
font-size: 18px;
}

.info-doc table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
}
}

@media (max-width: 375px) {
.info-doc {
padding: 20px 12px;
}

.info-doc h1 {
font-size: 28px;
}

.info-doc h2 {
font-size: 22px;
margin-top: 32px;
}

.info-doc h3 {
font-size: 18px;
}

.info-doc h4,
.info-doc h5,
.info-doc h6 {
font-size: 15px;
}

.info-doc p,
.info-doc ul,
.info-doc ol,
.info-doc div {
font-size: 15px;
}

.info-doc ul,
.info-doc ol {
padding-left: 20px;
}
}

.mcd {
background-color: #F7F7EB;
position: relative;
overflow: hidden;
}

.mcd::before {
content: "∑";
position: absolute;
font-size: 680px;
color: #9AB135;
opacity: 0.04;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
pointer-events: none;
line-height: 1.15;
z-index: 0;
}

.mcd-pulse {
position: fixed;
top: 50%;
left: 50%;
width: 600px;
height: 600px;
background: radial-gradient(circle, rgba(154, 177, 53, 0.09) 0%, rgba(215, 202, 162, 0.06) 55%, transparent 75%);
transform: translate(-50%, -50%);
border-radius: 48px;
pointer-events: none;
z-index: 0;
animation: mcd-breathe 7s ease-out infinite alternate;
}

@keyframes mcd-breathe {
0% {
transform: translate(-50%, -50%) scale(0.88);
opacity: 0.6;
}

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

.mcd-frame {
max-width: 1100px;
margin: 0 auto;
padding: 0 20px;
position: relative;
z-index: 1;
}

.mcd-dot-divider {
border: none;
border-top: 2px dotted rgba(154, 177, 53, 0.25);
margin: 0;
}

.mcd-dot-divider-alt {
border: none;
border-top: 2px dotted rgba(215, 202, 162, 0.5);
margin: 0;
}

/* ===================== BLOCK 1: TITLE ===================== */
.mcd-title-blk {
padding: 64px 0 32px;
position: relative;
overflow: hidden;
}

.mcd-title-blk__blob-a {
position: absolute;
width: 340px;
height: 340px;
background: rgba(154, 177, 53, 0.10);
border-radius: 48px;
top: -80px;
left: -80px;
filter: blur(48px);
pointer-events: none;
}

.mcd-title-blk__blob-b {
position: absolute;
width: 280px;
height: 280px;
background: rgba(215, 202, 162, 0.18);
border-radius: 48px;
bottom: -60px;
right: -60px;
filter: blur(40px);
pointer-events: none;
}

.mcd-title-blk__layout {
display: flex;
flex-direction: row;
align-items: center;
gap: 32px;
}

.mcd-title-blk__img {
width: 180px;
min-width: 140px;
max-width: 180px;
flex-shrink: 0;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
}

.mcd-title-blk__img img {
display: block;
width: 100%;
max-width: 100%;
object-fit: contain;
border-radius: 18px;
}

.mcd-title-blk__mid {
flex: 1;
display: flex;
flex-direction: column;
gap: 12px;
align-items: flex-start;
}

.mcd-title-blk__tag {
display: inline-block;
background: linear-gradient(157deg, #9AB135 0%, #D7CAA2 70%, #F7F7EB 100%);
color: #2d3300;
font-size: 15px;
font-weight: 700;
padding: 4px 20px;
border-radius: 48px;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
letter-spacing: 0.04em;
}

.mcd-title-blk__h1 {
font-size: 38px;
font-weight: 900;
line-height: 1.15;
color: #232800;
margin: 0;
}

.mcd-title-blk__h1 .acc {
color: #9AB135;
font-style: italic;
}

.mcd-title-blk__actions {
display: flex;
flex-direction: row;
gap: 12px;
align-items: center;
flex-wrap: wrap;
}

.mcd-title-blk__cta {
display: inline-block;
background: linear-gradient(157deg, #9AB135 0%, #b8cc52 55%, #D7CAA2 100%);
color: #232800;
font-size: 18px;
font-weight: 800;
padding: 12px 32px;
border-radius: 18px;
text-decoration: none;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.14);
transition: box-shadow 0.22s ease-out, transform 0.18s ease-out;
transform-style: preserve-3d;
cursor: pointer;
}

.mcd-title-blk__cta:hover {
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.18);
transform: perspective(600px) rotateX(3deg) rotateY(-2deg) translateY(-2px);
}

.mcd-copy-btn {
display: inline-flex;
align-items: center;
gap: 8px;
background: rgba(215, 202, 162, 0.28);
border: 1.5px solid rgba(154, 177, 53, 0.22);
color: #3a3d00;
font-size: 15px;
font-weight: 600;
padding: 12px 20px;
border-radius: 18px;
cursor: pointer;
transition: background 0.25s ease-out, border-color 0.2s ease-out;
transform-style: preserve-3d;
}

.mcd-copy-btn:hover {
background: rgba(154, 177, 53, 0.14);
border-color: rgba(154, 177, 53, 0.45);
transform: perspective(500px) rotateX(2deg) rotateY(2deg);
}

.mcd-copy-btn:focus {
outline: 2px solid #9AB135;
outline-offset: 2px;
}

.mcd-copy-msg {
font-size: 15px;
color: #9AB135;
font-weight: 700;
opacity: 0;
transition: opacity 0.2s ease-out;
pointer-events: none;
}

.mcd-copy-msg.vis {
opacity: 1;
}

@media (max-width: 768px) {
.mcd-title-blk__layout {
flex-direction: column;
align-items: flex-start;
gap: 20px;
}

.mcd-title-blk__img {
width: 100%;
max-width: 100%;
min-width: 0;
}

.mcd-title-blk__h1 {
font-size: 28px;
}
}

@media (max-width: 375px) {
.mcd-title-blk__h1 {
font-size: 22px;
}

.mcd-title-blk__cta {
font-size: 15px;
padding: 12px 20px;
}
}

/* ===================== BLOCK 2: DESCRIPTION + PRICE ===================== */
.mcd-desc-blk {
background: rgba(247, 247, 235, 0.85);
padding: 64px 0 32px;
position: relative;
}

.mcd-desc-blk__inner {
display: grid;
grid-template-columns: 1fr 340px;
gap: 32px;
align-items: start;
}

.mcd-desc-blk__text {
display: flex;
flex-direction: column;
gap: 20px;
}

.mcd-desc-blk__label {
font-size: 15px;
font-weight: 700;
color: #9AB135;
letter-spacing: 0.06em;
text-transform: uppercase;
}

.mcd-desc-blk__body {
font-size: 18px;
line-height: 1.6;
color: #232800;
}

.mcd-desc-blk__body p {
margin: 0 0 12px;
}

.mcd-desc-blk__body p:last-child {
margin-bottom: 0;
}

.mcd-desc-blk__body h2 {
font-size: 22px;
font-weight: 900;
line-height: 1.15;
color: #232800;
margin: 20px 0 8px;
}

.mcd-desc-blk__body strong {
color: #9AB135;
font-style: italic;
font-weight: 700;
}

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

.mcd-desc-blk__body ul li {
padding-left: 20px;
position: relative;
font-size: 18px;
line-height: 1.6;
color: #232800;
}

.mcd-desc-blk__body ul li::before {
content: "";
position: absolute;
left: 0;
top: 10px;
width: 8px;
height: 8px;
border-right: 2px solid #9AB135;
border-top: 2px solid #9AB135;
transform: rotate(45deg);
}

.mcd-desc-blk__body dl {
display: grid;
grid-template-columns: auto 1fr;
gap: 4px 12px;
margin: 8px 0;
}

.mcd-desc-blk__body dt {
font-weight: 700;
color: #9AB135;
font-size: 15px;
}

.mcd-desc-blk__body dd {
font-size: 15px;
color: #3a3d00;
margin: 0;
}

.mcd-desc-blk__body details {
border: 1.5px solid rgba(154, 177, 53, 0.2);
border-radius: 6px;
padding: 8px 12px;
margin: 8px 0;
}

.mcd-desc-blk__body summary {
font-weight: 700;
color: #232800;
cursor: pointer;
font-size: 18px;
}

.mcd-desc-blk__body abbr {
text-decoration: underline dotted;
cursor: help;
}

.mcd-price-card {
background: linear-gradient(157deg, #232800 0%, #3a4200 60%, #4d5800 100%);
border-radius: 18px;
padding: 32px 20px;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
display: flex;
flex-direction: column;
gap: 20px;
position: sticky;
top: 20px;
}

.mcd-price-card__label {
font-size: 15px;
font-weight: 700;
color: rgba(215, 202, 162, 0.7);
letter-spacing: 0.08em;
text-transform: uppercase;
}

.mcd-price-card__amount {
font-size: 52px;
font-weight: 900;
line-height: 1.15;
color: #9AB135;
}

.mcd-price-card__note {
font-size: 15px;
color: rgba(215, 202, 162, 0.8);
line-height: 1.6;
}

.mcd-price-card__btn {
display: block;
background: linear-gradient(157deg, #9AB135 0%, #b8cc52 55%, #D7CAA2 100%);
color: #232800;
font-size: 18px;
font-weight: 800;
padding: 12px 20px;
border-radius: 18px;
text-align: center;
text-decoration: none;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
transition: box-shadow 0.22s ease-out, transform 0.18s ease-out;
transform-style: preserve-3d;
}

.mcd-price-card__btn:hover {
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.18);
transform: perspective(500px) rotateX(3deg) rotateY(-2deg) translateY(-2px);
}

.mcd-price-card__divider {
border: none;
border-top: 1.5px dotted rgba(215, 202, 162, 0.25);
}

.mcd-price-card__links {
display: flex;
flex-direction: column;
gap: 8px;
}

.mcd-price-card__link {
color: rgba(215, 202, 162, 0.8);
font-size: 15px;
text-decoration: none;
display: flex;
align-items: center;
gap: 8px;
transition: color 0.2s ease-out;
}

.mcd-price-card__link:hover {
color: #9AB135;
}

.mcd-price-card__link i {
font-size: 15px;
color: rgba(154, 177, 53, 0.6);
}

@media (max-width: 768px) {
.mcd-desc-blk__inner {
grid-template-columns: 1fr;
}

.mcd-price-card {
position: static;
}
}

/* ===================== BLOCK 3: PROGRAM ===================== */
.mcd-prog-blk {
padding: 64px 0 64px;
background: rgba(215, 202, 162, 0.12);
position: relative;
}

.mcd-prog-blk__top {
display: flex;
flex-direction: row;
align-items: baseline;
gap: 20px;
margin-bottom: 32px;
flex-wrap: wrap;
}

.mcd-prog-blk__heading {
font-size: 28px;
font-weight: 900;
line-height: 1.15;
color: #232800;
margin: 0;
}

.mcd-prog-blk__heading .acc {
color: #9AB135;
font-style: italic;
}

.mcd-prog-blk__sub {
font-size: 15px;
color: rgba(58, 61, 0, 0.6);
}

.mcd-prog-blk__body {
display: flex;
flex-direction: column;
gap: 4px;
}

.mcd-prog-blk__body p {
font-size: 18px;
line-height: 1.6;
color: #3a3d00;
margin: 0 0 8px;
}

.mcd-prog-blk__body h2 {
font-size: 22px;
font-weight: 900;
line-height: 1.15;
color: #232800;
margin: 20px 0 8px;
}

.mcd-prog-blk__body h3 {
font-size: 18px;
font-weight: 700;
line-height: 1.4;
color: #232800;
margin: 12px 0 4px;
}

.mcd-prog-blk__body abbr {
text-decoration: underline dotted;
cursor: help;
}

.mcd-prog-blk__body small {
font-size: 15px;
color: rgba(58, 61, 0, 0.65);
}

.mcd-prog-blk__body ol {
list-style: none;
padding: 0;
margin: 8px 0;
display: flex;
flex-direction: column;
gap: 8px;
counter-reset: prog-cnt;
}

.mcd-prog-blk__body ol li {
counter-increment: prog-cnt;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
font-size: 18px;
line-height: 1.6;
color: #232800;
background: rgba(247, 247, 235, 0.7);
border-radius: 6px;
padding: 12px 20px;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
transition: background 0.2s ease-out, box-shadow 0.25s ease-out, transform 0.2s ease-out;
transform-style: preserve-3d;
cursor: default;
}

.mcd-prog-blk__body ol li::before {
content: counter(prog-cnt, decimal-leading-zero);
font-size: 15px;
font-weight: 900;
color: #9AB135;
min-width: 28px;
line-height: 1.6;
flex-shrink: 0;
}

.mcd-prog-blk__body ol li:hover {
background: rgba(154, 177, 53, 0.08);
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
transform: perspective(600px) rotateX(1.5deg) rotateY(-1.5deg);
}

.mcd-strip-reveal {
position: relative;
overflow: hidden;
border-radius: 18px;
margin-top: 32px;
}

.mcd-strip-reveal__front {
background: linear-gradient(157deg, #9AB135 0%, #b8cc52 60%, #D7CAA2 100%);
padding: 20px 32px;
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
border-radius: 18px;
cursor: pointer;
transition: opacity 0.2s ease-out;
}

.mcd-strip-reveal__front:focus-within .mcd-strip-reveal__strips {
height: auto;
}

.mcd-strip-reveal__txt {
font-size: 18px;
font-weight: 800;
color: #232800;
flex: 1;
}

.mcd-strip-reveal__icon {
color: #232800;
font-size: 22px;
}

.mcd-strip-reveal__strips {
display: flex;
flex-direction: column;
gap: 0;
max-height: 0;
overflow: hidden;
transition: max-height 0.35s ease-out;
background: rgba(247, 247, 235, 0.95);
border-radius: 0 0 18px 18px;
}

.mcd-strip-reveal__front:hover+.mcd-strip-reveal__strips,
.mcd-strip-reveal__front:focus+.mcd-strip-reveal__strips {
max-height: 400px;
}

.mcd-strip-item {
display: flex;
flex-direction: row;
align-items: center;
gap: 12px;
padding: 12px 32px;
border-top: 1px dotted rgba(154, 177, 53, 0.2);
font-size: 15px;
color: #3a3d00;
transition: background 0.18s ease-out;
}

.mcd-strip-item:hover {
background: rgba(154, 177, 53, 0.07);
}

.mcd-strip-item i {
color: #9AB135;
font-size: 15px;
flex-shrink: 0;
}

@media (max-width: 768px) {
.mcd-prog-blk__top {
flex-direction: column;
gap: 8px;
}

.mcd-prog-blk__body ol li {
padding: 12px;
}
}

@media (max-width: 375px) {
.mcd-prog-blk__heading {
font-size: 22px;
}

.mcd-price-card__amount {
font-size: 38px;
}
}

.rt-pg {
background: #F7F7EB;
overflow-x: clip;
position: relative;
}

.rt-pg ::selection {
background: #9AB135;
color: #2a2a00;
}

.rt-pg .pg-mw {
max-width: 1100px;
margin-left: auto;
margin-right: auto;
padding-left: 32px;
padding-right: 32px;
}

@keyframes mask-reveal {
0% {
clip-path: inset(0 50% 0 50%);
opacity: 0;
}

100% {
clip-path: inset(0 0% 0 0%);
opacity: 1;
}
}

@keyframes fade-up {
0% {
opacity: 0;
transform: translateY(18px);
}

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

@keyframes spin-load {
to {
transform: rotate(360deg);
}
}

.rt-pg .reveal-mask {
animation: mask-reveal 0.45s ease-out both;
}

.rt-pg .reveal-up {
animation: fade-up 0.38s ease-out both;
}

.rt-pg .reveal-up.d1 {
animation-delay: 0.08s;
}

.rt-pg .reveal-up.d2 {
animation-delay: 0.16s;
}

.rt-pg .reveal-up.d3 {
animation-delay: 0.24s;
}

.rt-pg .reveal-up.d4 {
animation-delay: 0.32s;
}

/* ── SECTION 1: TITLE BLOCK ── */
.rt-pg .ttl-blk {
position: relative;
display: grid;
grid-template-columns: 1fr 1fr;
min-height: 0;
}

.rt-pg .ttl-blk__txt {
padding: 64px 32px 64px 0;
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
z-index: 2;
}

.rt-pg .ttl-blk__quote-bg {
position: absolute;
top: 32px;
left: -12px;
font-size: 220px;
line-height: 1.15;
color: #9AB135;
opacity: 0.07;
pointer-events: none;
user-select: none;
font-weight: 900;
z-index: 0;
}

.rt-pg .ttl-blk__eyebrow {
font-size: 15px;
line-height: 1.4;
color: #9AB135;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;
margin-bottom: 12px;
position: relative;
z-index: 1;
}

.rt-pg .ttl-blk__h1 {
font-size: 52px;
line-height: 1.15;
font-weight: 900;
color: #1e2200;
margin-bottom: 20px;
position: relative;
z-index: 1;
}

.rt-pg .ttl-blk__h1 em {
font-style: italic;
background: linear-gradient(157deg, #9AB135 0%, #c8d96a 45%, #D7CAA2 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}

.rt-pg .ttl-blk__lead {
font-size: 18px;
line-height: 1.6;
color: #3a3d1a;
max-width: 420px;
position: relative;
z-index: 1;
margin-bottom: 32px;
}

.rt-pg .ttl-blk__btn {
display: inline-block;
padding: 12px 32px;
border-radius: 6px;
font-size: 15px;
font-weight: 700;
color: #fff;
background: linear-gradient(157deg, #9AB135 0%, #b8d040 55%, #8fa02a 100%);
border: none;
cursor: pointer;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
transition: box-shadow 0.22s ease-out, transform 0.18s ease-out;
position: relative;
z-index: 1;
text-decoration: none;
}

.rt-pg .ttl-blk__btn:hover {
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
transform: perspective(600px) rotateX(2deg) translateY(-2px);
}

.rt-pg .ttl-blk__img-col {
position: relative;
overflow: hidden;
min-height: 480px;
}

.rt-pg .ttl-blk__img-col img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
}

.rt-pg .ttl-blk__img-overlay {
position: absolute;
inset: 0;
background: linear-gradient(157deg, #F7F7EB 0%, rgba(247, 247, 235, 0.55) 38%, rgba(154, 177, 53, 0.18) 100%);
z-index: 1;
}

/* ── SECTION 2: PROFESSIONAL CONTEXT ── */
.rt-pg .ctx-sec {
background: #fff;
padding: 64px 0;
}

.rt-pg .ctx-sec__inner {
display: grid;
grid-template-columns: 340px 1fr;
gap: 64px;
align-items: start;
}

.rt-pg .ctx-sec__img-wrap {
position: relative;
}

.rt-pg .ctx-sec__img-wrap img {
width: 100%;
max-width: 340px;
height: 420px;
object-fit: cover;
object-position: center;
border-radius: 18px;
display: block;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.rt-pg .ctx-sec__img-deco {
position: absolute;
bottom: -20px;
right: -20px;
width: 80px;
height: 80px;
border: 3px dashed #9AB135;
border-radius: 18px;
pointer-events: none;
}

.rt-pg .ctx-sec__body {
padding-top: 8px;
}

.rt-pg .ctx-sec__label {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #9AB135;
text-transform: uppercase;
letter-spacing: 0.06em;
margin-bottom: 12px;
}

.rt-pg .ctx-sec__h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #1e2200;
margin-bottom: 20px;
}

.rt-pg .ctx-sec__p {
font-size: 15px;
line-height: 1.6;
color: #3a3d1a;
margin-bottom: 20px;
}

.rt-pg .ctx-sec__p em {
color: #9AB135;
font-style: italic;
font-weight: 600;
}

.rt-pg .ctx-sec__facts {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px;
margin-top: 32px;
}

.rt-pg .ctx-fact {
background: #F7F7EB;
border-radius: 6px;
padding: 20px;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
}

.rt-pg .ctx-fact__num {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #9AB135;
margin-bottom: 4px;
}

.rt-pg .ctx-fact__desc {
font-size: 15px;
line-height: 1.4;
color: #3a3d1a;
}

/* ── SECTION 3: CLIENT PATTERNS ── */
.rt-pg .ptrn-sec {
background: linear-gradient(157deg, #1e2200 0%, #2e3a05 55%, #1a2200 100%);
padding: 64px 0;
position: relative;
overflow: hidden;
}

.rt-pg .ptrn-sec__deco {
position: absolute;
top: -40px;
right: -40px;
width: 280px;
height: 280px;
border: 2px dashed rgba(154, 177, 53, 0.25);
border-radius: 48px;
pointer-events: none;
}

.rt-pg .ptrn-sec__label {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #9AB135;
text-transform: uppercase;
letter-spacing: 0.06em;
margin-bottom: 12px;
}

.rt-pg .ptrn-sec__h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #F7F7EB;
margin-bottom: 32px;
max-width: 600px;
}

.rt-pg .ptrn-sec__grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 20px;
}

.rt-pg .ptrn-card {
background: rgba(154, 177, 53, 0.08);
border: 1px solid rgba(154, 177, 53, 0.2);
border-radius: 18px;
padding: 32px 20px;
transition: background 0.22s ease-out, transform 0.18s ease-out;
}

.rt-pg .ptrn-card:hover {
background: rgba(154, 177, 53, 0.14);
transform: perspective(800px) rotateY(-2deg) translateY(-3px);
}

.rt-pg .ptrn-card__ico {
width: 40px;
height: 40px;
margin-bottom: 20px;
display: flex;
align-items: center;
justify-content: center;
}

.rt-pg .ptrn-card__ico i {
font-size: 28px;
color: #9AB135;
}

.rt-pg .ptrn-card__quote {
font-size: 15px;
line-height: 1.6;
color: #D7CAA2;
margin-bottom: 20px;
font-style: italic;
}

.rt-pg .ptrn-card__attr {
font-size: 15px;
line-height: 1.4;
color: #9AB135;
font-weight: 700;
}

.rt-pg .ptrn-card__role {
font-size: 15px;
line-height: 1.4;
color: rgba(215, 202, 162, 0.65);
}

.rt-pg .ptrn-portrait {
display: grid;
grid-template-columns: 48px 1fr;
gap: 12px;
align-items: center;
margin-top: 20px;
}

.rt-pg .ptrn-portrait__img {
width: 48px;
height: 48px;
object-fit: cover;
object-position: center;
display: block;
}

/* ── SECTION 4: WHAT THIS DOESN'T DO ── */
.rt-pg .limit-sec {
background: #F7F7EB;
padding: 64px 0;
}

.rt-pg .limit-sec__inner {
display: grid;
grid-template-columns: 1fr 480px;
gap: 64px;
align-items: start;
}

.rt-pg .limit-sec__label {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #9AB135;
text-transform: uppercase;
letter-spacing: 0.06em;
margin-bottom: 12px;
}

.rt-pg .limit-sec__h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #1e2200;
margin-bottom: 20px;
}

.rt-pg .limit-sec__p {
font-size: 15px;
line-height: 1.6;
color: #3a3d1a;
margin-bottom: 20px;
}

.rt-pg .limit-list {
list-style: none;
padding: 0;
margin: 0 0 32px 0;
}

.rt-pg .limit-list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
padding: 12px 0;
border-bottom: 1px solid rgba(154, 177, 53, 0.15);
font-size: 15px;
line-height: 1.6;
color: #3a3d1a;
}

.rt-pg .limit-list li:last-child {
border-bottom: none;
}

.rt-pg .limit-list__arrow {
display: inline-block;
width: 0;
height: 0;
border-top: 5px solid transparent;
border-bottom: 5px solid transparent;
border-left: 8px solid #9AB135;
margin-top: 6px;
flex-shrink: 0;
}

.rt-pg .limit-sec__img-col {
position: relative;
}

.rt-pg .limit-sec__img-col img {
width: 100%;
height: 380px;
object-fit: cover;
object-position: center;
border-radius: 18px;
display: block;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.rt-pg .limit-sec__dashed {
position: absolute;
top: -16px;
left: -16px;
right: 16px;
bottom: 16px;
border: 2px dashed rgba(154, 177, 53, 0.4);
border-radius: 18px;
pointer-events: none;
}

/* ── SECTION 5: WHAT MAKES IT DIFFERENT ── */
.rt-pg .diff-sec {
background: #fff;
padding: 64px 0;
position: relative;
}

.rt-pg .diff-sec__top {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
margin-bottom: 64px;
}

.rt-pg .diff-sec__label {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #9AB135;
text-transform: uppercase;
letter-spacing: 0.06em;
margin-bottom: 12px;
}

.rt-pg .diff-sec__h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #1e2200;
margin-bottom: 0;
}

.rt-pg .diff-sec__body {
padding-top: 8px;
}

.rt-pg .diff-sec__p {
font-size: 15px;
line-height: 1.6;
color: #3a3d1a;
margin-bottom: 20px;
}

.rt-pg .diff-sec__p em {
color: #9AB135;
font-style: italic;
font-weight: 600;
}

.rt-pg .diff-panels {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
}

.rt-pg .diff-panel {
border-radius: 18px;
padding: 32px;
position: relative;
}

.rt-pg .diff-panel.alt {
background: linear-gradient(157deg, #F7F7EB 0%, #eef0d8 55%, #F7F7EB 100%);
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
}

.rt-pg .diff-panel.main {
background: linear-gradient(157deg, #9AB135 0%, #b0cc3a 45%, #8fa02a 100%);
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.rt-pg .diff-panel__num {
font-size: 52px;
line-height: 1.15;
font-weight: 900;
opacity: 0.15;
position: absolute;
top: 20px;
right: 24px;
pointer-events: none;
}

.rt-pg .diff-panel.alt .diff-panel__num {
color: #9AB135;
}

.rt-pg .diff-panel.main .diff-panel__num {
color: #fff;
}

.rt-pg .diff-panel__h {
font-size: 22px;
line-height: 1.4;
font-weight: 900;
margin-bottom: 12px;
}

.rt-pg .diff-panel.alt .diff-panel__h {
color: #1e2200;
}

.rt-pg .diff-panel.main .diff-panel__h {
color: #fff;
}

.rt-pg .diff-panel__p {
font-size: 15px;
line-height: 1.6;
}

.rt-pg .diff-panel.alt .diff-panel__p {
color: #3a3d1a;
}

.rt-pg .diff-panel.main .diff-panel__p {
color: rgba(255, 255, 255, 0.88);
}

/* ── SECTION 6: COMMITMENT ── */
.rt-pg .commit-sec {
background: linear-gradient(157deg, #F7F7EB 0%, #eef0d8 40%, #D7CAA2 100%);
padding: 64px 0;
position: relative;
}

.rt-pg .commit-sec__inner {
display: grid;
grid-template-columns: 1fr 380px;
gap: 64px;
align-items: start;
}

.rt-pg .commit-sec__label {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #9AB135;
text-transform: uppercase;
letter-spacing: 0.06em;
margin-bottom: 12px;
}

.rt-pg .commit-sec__h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #1e2200;
margin-bottom: 20px;
}

.rt-pg .commit-sec__p {
font-size: 15px;
line-height: 1.6;
color: #3a3d1a;
margin-bottom: 20px;
}

.rt-pg .commit-sec__p em {
color: #6a7a1a;
font-style: italic;
font-weight: 600;
}

.rt-pg .commit-steps {
margin-top: 32px;
display: flex;
flex-direction: column;
gap: 12px;
}

.rt-pg .commit-step {
display: grid;
grid-template-columns: 40px 1fr;
gap: 12px;
align-items: start;
}

.rt-pg .commit-step__num {
width: 40px;
height: 40px;
border-radius: 6px;
background: linear-gradient(157deg, #9AB135 0%, #b0cc3a 100%);
display: flex;
align-items: center;
justify-content: center;
font-size: 15px;
font-weight: 900;
color: #fff;
flex-shrink: 0;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
}

.rt-pg .commit-step__txt {
padding-top: 8px;
}

.rt-pg .commit-step__h {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #1e2200;
margin-bottom: 4px;
}

.rt-pg .commit-step__p {
font-size: 15px;
line-height: 1.6;
color: #3a3d1a;
}

.rt-pg .commit-sec__aside {
padding-top: 8px;
}

.rt-pg .commit-aside-box {
background: #fff;
border-radius: 18px;
padding: 32px;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
margin-bottom: 20px;
}

.rt-pg .commit-aside-box__h {
font-size: 18px;
line-height: 1.4;
font-weight: 900;
color: #1e2200;
margin-bottom: 12px;
}

.rt-pg .commit-aside-box__p {
font-size: 15px;
line-height: 1.6;
color: #3a3d1a;
}

.rt-pg .commit-aside-rating {
background: linear-gradient(157deg, #9AB135 0%, #b0cc3a 55%, #8fa02a 100%);
border-radius: 18px;
padding: 32px;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.rt-pg .commit-aside-rating__num {
font-size: 68px;
line-height: 1.15;
font-weight: 900;
color: #fff;
}

.rt-pg .commit-aside-rating__stars {
display: flex;
flex-direction: row;
gap: 4px;
margin-bottom: 8px;
}

.rt-pg .commit-aside-rating__stars i {
color: #fff;
font-size: 18px;
}

.rt-pg .commit-aside-rating__label {
font-size: 15px;
line-height: 1.4;
color: rgba(255, 255, 255, 0.85);
}

/* ── DIAMOND SEPARATOR ── */
.rt-pg .sep-diamond {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 12px;
padding: 20px 0;
background: transparent;
}

.rt-pg .sep-diamond__line {
flex: 1;
height: 1px;
background: linear-gradient(90deg, transparent, rgba(154, 177, 53, 0.3), transparent);
}

.rt-pg .sep-diamond__shape {
width: 10px;
height: 10px;
background: #9AB135;
transform: rotate(45deg);
flex-shrink: 0;
}

/* ── RESPONSIVE ── */
@media (max-width: 1366px) {
.rt-pg .ttl-blk__h1 {
font-size: 38px;
}

.rt-pg .ctx-sec__inner {
grid-template-columns: 280px 1fr;
gap: 32px;
}

.rt-pg .ctx-sec__img-wrap img {
max-width: 280px;
height: 360px;
}
}

@media (max-width: 768px) {
.rt-pg .pg-mw {
padding-left: 20px;
padding-right: 20px;
}

.rt-pg .ttl-blk {
grid-template-columns: 1fr;
}

.rt-pg .ttl-blk__txt {
padding: 64px 0 32px 0;
}

.rt-pg .ttl-blk__img-col {
min-height: 280px;
}

.rt-pg .ttl-blk__h1 {
font-size: 38px;
}

.rt-pg .ttl-blk__quote-bg {
font-size: 140px;
}

.rt-pg .ctx-sec__inner {
grid-template-columns: 1fr;
gap: 32px;
}

.rt-pg .ctx-sec__img-wrap img {
max-width: 100%;
height: 260px;
}

.rt-pg .ctx-sec__facts {
grid-template-columns: 1fr 1fr;
}

.rt-pg .ptrn-sec__grid {
grid-template-columns: 1fr;
gap: 12px;
}

.rt-pg .limit-sec__inner {
grid-template-columns: 1fr;
gap: 32px;
}

.rt-pg .limit-sec__img-col {
display: none;
}

.rt-pg .diff-sec__top {
grid-template-columns: 1fr;
gap: 20px;
}

.rt-pg .diff-panels {
grid-template-columns: 1fr;
}

.rt-pg .commit-sec__inner {
grid-template-columns: 1fr;
gap: 32px;
}
}

@media (max-width: 375px) {
.rt-pg .ttl-blk__h1 {
font-size: 28px;
}

.rt-pg .ctx-sec__h2,
.rt-pg .ptrn-sec__h2,
.rt-pg .limit-sec__h2,
.rt-pg .diff-sec__h2,
.rt-pg .commit-sec__h2 {
font-size: 28px;
}

.rt-pg .ctx-sec__facts {
grid-template-columns: 1fr;
}

.rt-pg .commit-aside-rating__num {
font-size: 52px;
}
}

.cus-pg {
background: #F7F7EB;
overflow-x: clip;
position: relative;
}

.cus-pg .pg-reveal {
animation: revealUp 0.45s ease-out both;
}

@keyframes revealUp {
from {
opacity: 0;
transform: scale(0.96);
}

to {
opacity: 1;
transform: scale(1);
}
}

.cus-pg .reveal-delay-1 {
animation-delay: 0.08s;
}

.cus-pg .reveal-delay-2 {
animation-delay: 0.18s;
}

.cus-pg .reveal-delay-3 {
animation-delay: 0.28s;
}

.cus-pg ::selection {
background: #9AB135;
color: #2a2a00;
}

.cus-pg .pg-band {
max-width: 1100px;
margin: 0 auto;
padding: 0 32px;
}

.cus-pg .geo-notch {
display: inline-block;
width: 4px;
height: 100%;
background: #9AB135;
border-radius: 6px;
position: absolute;
left: 0;
top: 0;
}

.cus-pg .thin-line {
position: absolute;
background: linear-gradient(157deg, #9AB135 0%, #D7CAA2 60%, transparent 100%);
opacity: 0.18;
pointer-events: none;
}

.cus-pg .thin-line.tl {
width: 1px;
height: 80px;
top: 20px;
left: 48px;
}

.cus-pg .thin-line.tl-h {
width: 80px;
height: 1px;
top: 20px;
left: 48px;
}

.cus-pg .thin-line.br {
width: 1px;
height: 60px;
bottom: 20px;
right: 48px;
}

.cus-pg .thin-line.br-h {
width: 60px;
height: 1px;
bottom: 20px;
right: 48px;
}

.cus-pg .title-blk {
position: relative;
background: linear-gradient(157deg, #9AB135 0%, #c8d47a 35%, #D7CAA2 70%, #F7F7EB 100%);
padding: 52px 0 64px;
overflow: hidden;
}

.cus-pg .title-blk::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 64px;
background: linear-gradient(to bottom, transparent, #F7F7EB);
pointer-events: none;
}

.cus-pg .title-inner {
display: flex;
flex-direction: row;
align-items: center;
gap: 64px;
position: relative;
z-index: 1;
}

.cus-pg .title-text {
flex: 1 1 0;
min-width: 0;
}

.cus-pg .title-label {
font-size: 15px;
line-height: 1.4;
color: #3a4a00;
font-weight: 600;
letter-spacing: 0.04em;
text-transform: uppercase;
margin-bottom: 12px;
display: block;
}

.cus-pg .title-h1 {
font-size: 52px;
line-height: 1.15;
font-weight: 900;
color: #1e2800;
margin: 0 0 20px;
}

.cus-pg .title-h1 em {
color: #4a6000;
font-style: italic;
}

.cus-pg .title-desc {
font-size: 18px;
line-height: 1.6;
color: #2e3a00;
max-width: 520px;
margin: 0;
}

.cus-pg .title-img-col {
flex: 0 0 340px;
position: relative;
}

.cus-pg .title-img-wrap {
border-radius: 18px;
overflow: hidden;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
position: relative;
}

.cus-pg .title-img-wrap img {
width: 100%;
height: 240px;
object-fit: cover;
display: block;
filter: saturate(0.7) brightness(0.92) hue-rotate(0deg);
transition: transform 0.35s ease-out;
}

.cus-pg .title-img-wrap:hover img {
transform: scale(1.04);
}

.cus-pg .svg-divider {
display: block;
width: 100%;
height: 40px;
background: transparent;
}

.cus-pg .svg-divider svg {
display: block;
width: 100%;
height: 100%;
}

.cus-pg .form-area {
padding: 64px 0 64px;
background: #F7F7EB;
position: relative;
}

.cus-pg .form-area-inner {
display: flex;
flex-direction: row;
gap: 64px;
align-items: flex-start;
}

.cus-pg .form-side {
flex: 1 1 0;
min-width: 0;
}

.cus-pg .info-side {
flex: 0 0 300px;
display: flex;
flex-direction: column;
gap: 20px;
}

.cus-pg .form-heading {
font-size: 28px;
line-height: 1.15;
font-weight: 900;
color: #1e2800;
margin: 0 0 8px;
}

.cus-pg .form-sub {
font-size: 15px;
line-height: 1.6;
color: #4a5200;
margin: 0 0 32px;
}

.cus-pg .contact-form {
display: flex;
flex-direction: column;
gap: 20px;
}

.cus-pg .field-row {
display: flex;
flex-direction: row;
gap: 20px;
}

.cus-pg .field-group {
display: flex;
flex-direction: column;
gap: 8px;
flex: 1 1 0;
min-width: 0;
}

.cus-pg .field-group label {
font-size: 15px;
line-height: 1.4;
font-weight: 600;
color: #2a3400;
}

.cus-pg .field-group input[type="text"],
.cus-pg .field-group input[type="email"],
.cus-pg .field-group input[type="tel"] {
width: 100%;
padding: 12px 20px;
font-size: 15px;
line-height: 1.6;
color: #1e2800;
background: #fff;
border: 1.5px solid #D7CAA2;
border-radius: 6px;
box-shadow: inset 0 4px 8px -2px rgba(154, 177, 53, 0.07);
transition: border-color 0.25s ease-out, box-shadow 0.2s ease-out;
box-sizing: border-box;
outline: none;
}

.cus-pg .field-group input::placeholder {
color: #9aaa70;
}

.cus-pg .field-group input:focus {
border-color: #9AB135;
box-shadow: inset 0 4px 8px -2px rgba(154, 177, 53, 0.10), 0 0 0 3px rgba(154, 177, 53, 0.15);
}

.cus-pg .chk-group {
display: flex;
flex-direction: column;
gap: 8px;
}

.cus-pg .chk-group-label {
font-size: 15px;
line-height: 1.4;
font-weight: 600;
color: #2a3400;
margin-bottom: 4px;
}

.cus-pg .chk-row {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 12px;
}

.cus-pg .chk-item {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
cursor: pointer;
font-size: 15px;
line-height: 1.4;
color: #2a3400;
}

.cus-pg .chk-item input[type="checkbox"] {
width: 18px;
height: 18px;
accent-color: #9AB135;
cursor: pointer;
flex-shrink: 0;
border-radius: 6px;
}

.cus-pg .privacy-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
padding: 12px 20px;
background: rgba(154, 177, 53, 0.07);
border-radius: 6px;
border: 1px solid rgba(154, 177, 53, 0.2);
}

.cus-pg .privacy-row input[type="checkbox"] {
width: 18px;
height: 18px;
accent-color: #9AB135;
cursor: pointer;
flex-shrink: 0;
margin-top: 2px;
}

.cus-pg .privacy-row .priv-text {
font-size: 15px;
line-height: 1.6;
color: #3a4a00;
}

.cus-pg .privacy-row .priv-text a {
color: #5a7800;
font-weight: 600;
text-decoration: underline;
text-underline-offset: 3px;
transition: color 0.2s ease-out;
}

.cus-pg .privacy-row .priv-text a:hover {
color: #9AB135;
}

.cus-pg .submit-btn {
align-self: flex-start;
padding: 12px 32px;
font-size: 18px;
line-height: 1.4;
font-weight: 700;
color: #fff;
background: linear-gradient(157deg, #9AB135 0%, #b8cc50 55%, #D7CAA2 100%);
border: none;
border-radius: 48px;
cursor: pointer;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.14);
transition: transform 0.2s ease-out, box-shadow 0.25s ease-out, background 0.35s ease-out;
position: relative;
overflow: hidden;
}

.cus-pg .submit-btn:hover {
transform: perspective(600px) rotateX(3deg) rotateY(-2deg);
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.18);
background: linear-gradient(157deg, #b8cc50 0%, #9AB135 55%, #c8d47a 100%);
}

.cus-pg .submit-btn:focus {
outline: 3px solid #9AB135;
outline-offset: 3px;
}

.cus-pg .submit-btn:active {
transform: scale(0.97);
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.10);
}

.cus-pg .info-card {
background: #fff;
border-radius: 18px;
padding: 20px;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
position: relative;
overflow: hidden;
transition: transform 0.28s ease-out, box-shadow 0.22s ease-out;
}

.cus-pg .info-card::before {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 4px;
background: linear-gradient(157deg, #9AB135 0%, #D7CAA2 100%);
border-radius: 6px 0 0 6px;
}

.cus-pg .info-card:hover {
transform: perspective(500px) rotateY(2deg);
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.cus-pg .info-card .ic-icon {
font-size: 22px;
color: #9AB135;
margin-bottom: 8px;
display: block;
}

.cus-pg .info-card .ic-label {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #1e2800;
display: block;
margin-bottom: 4px;
}

.cus-pg .info-card .ic-val {
font-size: 15px;
line-height: 1.6;
color: #4a5200;
display: block;
}

.cus-pg .info-card .ic-val a {
color: #5a7800;
text-decoration: none;
transition: color 0.2s ease-out;
}

.cus-pg .info-card .ic-val a:hover {
color: #9AB135;
text-decoration: underline;
}

.cus-pg .glass-area {
padding: 64px 0;
background: linear-gradient(157deg, rgba(154, 177, 53, 0.12) 0%, rgba(215, 202, 162, 0.18) 60%, rgba(247, 247, 235, 0.08) 100%);
position: relative;
}

.cus-pg .glass-inner {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 20px;
}

.cus-pg .glass-card {
background: rgba(255, 255, 255, 0.55);
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
border: 1px solid rgba(154, 177, 53, 0.18);
border-radius: 18px;
padding: 32px 20px;
text-align: center;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
transition: transform 0.32s ease-out, box-shadow 0.28s ease-out;
position: relative;
overflow: hidden;
}

.cus-pg .glass-card:hover {
transform: perspective(700px) rotateX(-3deg) rotateY(2deg);
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.cus-pg .glass-card .gc-icon {
font-size: 38px;
color: #9AB135;
display: block;
margin-bottom: 12px;
}

.cus-pg .glass-card .gc-num {
font-size: 52px;
line-height: 1.15;
font-weight: 900;
color: #1e2800;
display: block;
margin-bottom: 8px;
}

.cus-pg .glass-card .gc-num em {
color: #9AB135;
font-style: italic;
}

.cus-pg .glass-card .gc-label {
font-size: 15px;
line-height: 1.6;
color: #4a5200;
display: block;
}

.cus-pg .glass-card .gc-desc {
font-size: 15px;
line-height: 1.6;
color: #4a5200;
margin: 8px 0 0;
}

.cus-pg .cycle-cards {
display: flex;
flex-direction: row;
gap: 20px;
margin-top: 32px;
}

.cus-pg .cyc-item {
flex: 1 1 0;
background: rgba(255, 255, 255, 0.7);
border-radius: 18px;
padding: 20px;
border: 1.5px solid rgba(154, 177, 53, 0.15);
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
animation: cycleHighlight 3.6s ease-out infinite;
}

.cus-pg .cyc-item:nth-child(2) {
animation-delay: 1.2s;
}

.cus-pg .cyc-item:nth-child(3) {
animation-delay: 2.4s;
}

@keyframes cycleHighlight {

0%,
100% {
border-color: rgba(154, 177, 53, 0.15);
background: rgba(255, 255, 255, 0.7);
}

20%,
40% {
border-color: #9AB135;
background: rgba(154, 177, 53, 0.10);
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.14);
}
}

.cus-pg .cyc-item .ci-h {
font-size: 18px;
line-height: 1.4;
font-weight: 700;
color: #1e2800;
margin: 0 0 8px;
}

.cus-pg .cyc-item .ci-p {
font-size: 15px;
line-height: 1.6;
color: #4a5200;
margin: 0;
}

.cus-pg .glass-area-heading {
font-size: 28px;
line-height: 1.15;
font-weight: 900;
color: #1e2800;
margin: 0 0 8px;
}

.cus-pg .glass-area-sub {
font-size: 15px;
line-height: 1.6;
color: #4a5200;
margin: 0 0 32px;
max-width: 600px;
}

.cus-pg .area-top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 32px;
margin-bottom: 32px;
}

.cus-pg .area-top-text {
flex: 1 1 0;
}

.cus-pg .area-badge {
flex: 0 0 auto;
background: linear-gradient(157deg, #9AB135 0%, #D7CAA2 100%);
border-radius: 48px;
padding: 8px 20px;
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #1e2800;
white-space: nowrap;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.10);
}

.cus-pg .divider-tri {
width: 100%;
display: block;
overflow: hidden;
line-height: 0;
}

@media (max-width: 1366px) {
.cus-pg .title-img-col {
flex: 0 0 280px;
}

.cus-pg .title-h1 {
font-size: 38px;
}
}

@media (max-width: 768px) {
.cus-pg .pg-band {
padding: 0 20px;
}

.cus-pg .title-inner {
flex-direction: column;
gap: 32px;
}

.cus-pg .title-img-col {
flex: 0 0 auto;
width: 100%;
}

.cus-pg .title-h1 {
font-size: 38px;
}

.cus-pg .title-blk {
padding: 32px 0 52px;
}

.cus-pg .form-area-inner {
flex-direction: column;
gap: 32px;
}

.cus-pg .info-side {
flex: 0 0 auto;
width: 100%;
flex-direction: row;
flex-wrap: wrap;
}

.cus-pg .info-card {
flex: 1 1 200px;
}

.cus-pg .field-row {
flex-direction: column;
gap: 20px;
}

.cus-pg .glass-inner {
grid-template-columns: 1fr 1fr;
}

.cus-pg .cycle-cards {
flex-direction: column;
}

.cus-pg .area-top {
flex-direction: column;
align-items: flex-start;
gap: 12px;
}

.cus-pg .thin-line.tl,
.cus-pg .thin-line.tl-h,
.cus-pg .thin-line.br,
.cus-pg .thin-line.br-h {
display: none;
}
}

@media (max-width: 375px) {
.cus-pg .pg-band {
padding: 0 12px;
}

.cus-pg .title-h1 {
font-size: 28px;
}

.cus-pg .glass-inner {
grid-template-columns: 1fr;
}

.cus-pg .submit-btn {
width: 100%;
text-align: center;
}

.cus-pg .info-side {
flex-direction: column;
}

.cus-pg .chk-row {
flex-direction: column;
}
}

.mstr {
background: #F7F7EB;
overflow-x: clip;
position: relative;
}

.mstr .pg-band {
background: linear-gradient(157deg, #9AB135 0%, #D7CAA2 55%, #F7F7EB 100%);
padding: 64px 20px 32px;
}

.mstr .pg-band__inner {
max-width: 1100px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 32px;
}

.mstr .pg-band__img-col {
flex: 0 0 420px;
position: relative;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.mstr .pg-band__img-col img {
width: 100%;
height: 280px;
object-fit: cover;
display: block;
border-radius: 18px;
}

.mstr .pg-band__img-col::after {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 100% 100%, rgba(30, 30, 20, 0.38) 0%, transparent 60%),
radial-gradient(ellipse at 0% 0%, rgba(30, 30, 20, 0.22) 0%, transparent 50%);
border-radius: 18px;
pointer-events: none;
}

.mstr .pg-band__blob {
position: absolute;
width: 260px;
height: 180px;
background: rgba(154, 177, 53, 0.18);
border-radius: 48px;
filter: blur(48px);
top: -32px;
left: -64px;
pointer-events: none;
z-index: 0;
}

.mstr .pg-band__blob-2 {
position: absolute;
width: 180px;
height: 140px;
background: rgba(215, 202, 162, 0.28);
border-radius: 48px;
filter: blur(36px);
bottom: -20px;
right: -40px;
pointer-events: none;
z-index: 0;
}

.mstr .pg-band__text {
flex: 1;
position: relative;
z-index: 1;
}

.mstr .pg-band__label {
display: inline-block;
font-size: 15px;
line-height: 1.4;
color: #3a4a10;
background: rgba(154, 177, 53, 0.18);
border-radius: 6px;
padding: 4px 12px;
margin-bottom: 12px;
font-style: italic;
}

.mstr .pg-band__h1 {
font-size: 52px;
line-height: 1.15;
font-weight: 900;
color: #232b08;
margin: 0 0 12px;
}

.mstr .pg-band__h1 span {
color: #9AB135;
font-style: italic;
text-decoration: underline;
text-decoration-color: rgba(154, 177, 53, 0.5);
}

.mstr .pg-band__desc {
font-size: 18px;
line-height: 1.6;
color: #3a4a10;
margin: 0;
max-width: 480px;
}

.mstr .pg-band__math {
position: absolute;
font-size: 220px;
line-height: 1.15;
color: transparent;
-webkit-text-stroke: 2px rgba(154, 177, 53, 0.10);
top: -40px;
right: -60px;
pointer-events: none;
z-index: 0;
user-select: none;
}

.mstr .divider-fade {
height: 32px;
background: linear-gradient(to bottom, #D7CAA2 0%, transparent 100%);
}

.mstr .cards-area {
background: linear-gradient(157deg, #F7F7EB 0%, #eef2d8 60%, #F7F7EB 100%);
padding: 64px 20px;
}

.mstr .cards-area__inner {
max-width: 1100px;
margin: 0 auto;
}

.mstr .cards-area__top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 20px;
margin-bottom: 32px;
}

.mstr .cards-area__heading {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #232b08;
margin: 0;
}

.mstr .cards-area__count {
font-size: 15px;
line-height: 1.4;
color: #6b7a30;
background: rgba(154, 177, 53, 0.12);
border-radius: 6px;
padding: 4px 12px;
white-space: nowrap;
}

.mstr .card-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 20px;
}

.mstr .mcard {
background: #fff;
border-radius: 18px;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
display: flex;
flex-direction: column;
overflow: hidden;
transition: transform 0.25s ease-out, box-shadow 0.22s ease-out;
transform-style: preserve-3d;
perspective: 900px;
}

.mstr .mcard:hover {
transform: perspective(900px) rotateX(-2deg) rotateY(2deg) translateY(-4px);
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.mstr .mcard__img-wrap {
position: relative;
height: 180px;
overflow: hidden;
background: #eef2d8;
}

.mstr .mcard__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.38s ease-out;
}

.mstr .mcard:hover .mcard__img-wrap img {
transform: scale(1.04);
}

.mstr .mcard__tag {
position: absolute;
top: 12px;
left: 12px;
font-size: 15px;
line-height: 1.4;
color: #232b08;
background: rgba(247, 247, 235, 0.92);
border-radius: 6px;
padding: 4px 12px;
font-weight: 700;
}

.mstr .mcard__body {
padding: 20px;
display: flex;
flex-direction: column;
gap: 12px;
flex: 1;
}

.mstr .mcard__title {
font-size: 22px;
line-height: 1.4;
font-weight: 900;
color: #232b08;
margin: 0;
}

.mstr .mcard__desc {
font-size: 15px;
line-height: 1.6;
color: #4a5520;
margin: 0;
flex: 1;
}

.mstr .mcard__foot {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 12px;
padding-top: 12px;
border-top: 1px solid rgba(154, 177, 53, 0.18);
}

.mstr .mcard__price-wrap {
display: flex;
flex-direction: column;
gap: 4px;
}

.mstr .mcard__price {
font-size: 22px;
line-height: 1.15;
font-weight: 900;
color: #9AB135;
}

.mstr .mcard__price-note {
font-size: 15px;
line-height: 1.4;
color: #6b7a30;
font-style: italic;
}

.mstr .mcard__btn {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 12px 20px;
border-radius: 48px;
background: linear-gradient(157deg, #9AB135 0%, #b8cc55 55%, #D7CAA2 100%);
color: #232b08;
font-size: 15px;
font-weight: 700;
line-height: 1.4;
text-decoration: none;
border: none;
cursor: pointer;
transition: box-shadow 0.2s ease-out, transform 0.18s ease-out;
white-space: nowrap;
position: relative;
}

.mstr .mcard__btn:hover {
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.22);
transform: translateY(-2px);
}

.mstr .mcard__btn:focus-visible {
outline: 3px solid #232b08 !important;
outline-offset: 3px !important;
}

.mstr .mcard__btn:active {
transform: translateY(0);
}

.mstr .divider-dots {
height: 20px;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 8px;
padding: 32px 0;
}

.mstr .divider-dots__dot {
width: 8px;
height: 8px;
border-radius: 48px;
background: rgba(154, 177, 53, 0.35);
}

.mstr .divider-dots__dot.mid {
background: #9AB135;
width: 20px;
}

.mstr .how-area {
background: linear-gradient(157deg, #eef2d8 0%, #F7F7EB 50%, #f0edd8 100%);
padding: 64px 20px;
}

.mstr .how-area__inner {
max-width: 1100px;
margin: 0 auto;
display: grid;
grid-template-columns: 340px 1fr;
gap: 64px;
align-items: start;
}

.mstr .how-area__left {
position: relative;
}

.mstr .how-area__eyebrow {
font-size: 15px;
line-height: 1.4;
color: #9AB135;
font-style: italic;
font-weight: 700;
margin-bottom: 8px;
}

.mstr .how-area__h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #232b08;
margin: 0 0 20px;
}

.mstr .how-area__p {
font-size: 15px;
line-height: 1.6;
color: #4a5520;
margin: 0 0 20px;
}

.mstr .how-area__p.wide {
font-size: 18px;
}

.mstr .how-area__stat-box {
background: rgba(154, 177, 53, 0.12);
border-radius: 18px;
padding: 20px;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
display: flex;
flex-direction: column;
gap: 8px;
}

.mstr .how-area__stat-num {
font-size: 52px;
line-height: 1.15;
font-weight: 900;
color: #9AB135;
}

.mstr .how-area__stat-label {
font-size: 15px;
line-height: 1.4;
color: #4a5520;
}

.mstr .steps-list {
display: flex;
flex-direction: column;
gap: 20px;
list-style: none;
margin: 0;
padding: 0;
}

.mstr .step-item {
display: flex;
flex-direction: row;
gap: 20px;
align-items: flex-start;
background: #fff;
border-radius: 18px;
padding: 20px;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
transition: box-shadow 0.2s ease-out, transform 0.22s ease-out;
transform-style: preserve-3d;
}

.mstr .step-item:hover {
transform: perspective(800px) rotateY(-2deg) translateX(4px);
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.12);
}

.mstr .step-item__num {
flex: 0 0 44px;
height: 44px;
border-radius: 48px;
background: linear-gradient(157deg, #9AB135 0%, #D7CAA2 100%);
display: flex;
align-items: center;
justify-content: center;
font-size: 18px;
font-weight: 900;
color: #232b08;
}

.mstr .step-item__text {
flex: 1;
}

.mstr .step-item__h {
font-size: 18px;
line-height: 1.4;
font-weight: 900;
color: #232b08;
margin: 0 0 4px;
}

.mstr .step-item__p {
font-size: 15px;
line-height: 1.6;
color: #4a5520;
margin: 0;
}

.mstr .divider-line {
max-width: 1100px;
margin: 0 auto;
height: 1px;
background: linear-gradient(to right, transparent, rgba(154, 177, 53, 0.3), transparent);
}

.mstr .faq-area {
background: linear-gradient(157deg, #F7F7EB 0%, #eef2d8 80%, #F7F7EB 100%);
padding: 64px 20px;
}

.mstr .faq-area__inner {
max-width: 1100px;
margin: 0 auto;
}

.mstr .faq-area__h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #232b08;
margin: 0 0 32px;
max-width: 600px;
}

.mstr .faq-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 20px;
}

.mstr .faq-item {
background: #fff;
border-radius: 18px;
padding: 20px;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
display: flex;
flex-direction: column;
gap: 8px;
transition: box-shadow 0.28s ease-out;
}

.mstr .faq-item:hover {
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.12);
}

.mstr .faq-item__q {
font-size: 18px;
line-height: 1.4;
font-weight: 900;
color: #232b08;
margin: 0;
display: flex;
flex-direction: row;
gap: 12px;
align-items: flex-start;
}

.mstr .faq-item__q-icon {
flex: 0 0 22px;
height: 22px;
border-radius: 6px;
background: rgba(154, 177, 53, 0.18);
display: flex;
align-items: center;
justify-content: center;
font-size: 15px;
font-weight: 900;
color: #9AB135;
margin-top: 2px;
}

.mstr .faq-item__a {
font-size: 15px;
line-height: 1.6;
color: #4a5520;
margin: 0;
padding-left: 34px;
}

.mstr .cta-strip {
background: linear-gradient(157deg, #9AB135 0%, #b8cc55 40%, #D7CAA2 100%);
padding: 64px 20px;
}

.mstr .cta-strip__inner {
max-width: 1100px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 32px;
}

.mstr .cta-strip__text {
flex: 1;
}

.mstr .cta-strip__h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #232b08;
margin: 0 0 12px;
}

.mstr .cta-strip__p {
font-size: 18px;
line-height: 1.6;
color: #3a4a10;
margin: 0;
max-width: 520px;
}

.mstr .cta-strip__actions {
display: flex;
flex-direction: column;
gap: 12px;
align-items: flex-end;
}

.mstr .cta-strip__btn {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 20px 32px;
border-radius: 48px;
background: #232b08;
color: #F7F7EB;
font-size: 18px;
font-weight: 700;
line-height: 1.4;
text-decoration: none;
border: none;
cursor: pointer;
transition: background 0.2s ease-out, box-shadow 0.22s ease-out, transform 0.18s ease-out;
white-space: nowrap;
}

.mstr .cta-strip__btn:hover {
background: #3a4a10;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.22);
transform: translateY(-3px);
}

.mstr .cta-strip__btn:focus-visible {
outline: 3px solid #F7F7EB !important;
outline-offset: 3px !important;
}

.mstr .cta-strip__note {
font-size: 15px;
line-height: 1.4;
color: #3a4a10;
font-style: italic;
}

@keyframes mstr-reveal {
from {
opacity: 0;
transform: scale(0.96) translateY(12px);
}

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

.mstr .pg-band__img-col,
.mstr .pg-band__text {
animation: mstr-reveal 0.42s ease-out both;
}

.mstr .pg-band__text {
animation-delay: 0.12s;
}

.mstr .mcard {
animation: mstr-reveal 0.38s ease-out both;
}

.mstr .mcard:nth-child(1) {
animation-delay: 0.08s;
}

.mstr .mcard:nth-child(2) {
animation-delay: 0.16s;
}

.mstr .mcard:nth-child(3) {
animation-delay: 0.24s;
}

.mstr .mcard:nth-child(4) {
animation-delay: 0.32s;
}

@media (max-width: 1366px) {
.mstr .pg-band__img-col {
flex: 0 0 340px;
}

.mstr .how-area__inner {
grid-template-columns: 280px 1fr;
gap: 32px;
}
}

@media (max-width: 768px) {
.mstr .pg-band__inner {
flex-direction: column;
}

.mstr .pg-band__img-col {
flex: none;
width: 100%;
}

.mstr .pg-band__h1 {
font-size: 38px;
}

.mstr .card-grid {
grid-template-columns: 1fr;
}

.mstr .how-area__inner {
grid-template-columns: 1fr;
gap: 32px;
}

.mstr .faq-grid {
grid-template-columns: 1fr;
}

.mstr .cta-strip__inner {
flex-direction: column;
align-items: flex-start;
}

.mstr .cta-strip__actions {
align-items: flex-start;
}

.mstr .cards-area__top {
flex-direction: column;
align-items: flex-start;
}
}

@media (max-width: 375px) {
.mstr .pg-band__h1 {
font-size: 28px;
}

.mstr .pg-band {
padding: 32px 12px 20px;
}

.mstr .cards-area {
padding: 32px 12px;
}

.mstr .how-area {
padding: 32px 12px;
}

.mstr .faq-area {
padding: 32px 12px;
}

.mstr .cta-strip {
padding: 32px 12px;
}

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

.mstr .cta-strip__h2 {
font-size: 28px;
}

.mstr .faq-area__h2 {
font-size: 28px;
}
}

.srv-pg {
background: #fff;
overflow-x: clip;
position: relative;
}

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

.srv-pg ::selection {
background: #9AB135;
color: #1a2a00;
}

.srv-pg .fr {
max-width: 1100px;
margin-left: auto;
margin-right: auto;
padding-left: 32px;
padding-right: 32px;
}

.srv-pg .fr.narrow {
max-width: 780px;
}

/* ─── SECTION 1: TITLE BLOCK ─── */
.srv-pg .tb {
background: #F7F7EB;
padding-top: 48px;
padding-bottom: 80px;
position: relative;
}

.srv-pg .tb-grid {
display: grid;
grid-template-columns: 1fr 420px;
gap: 64px;
align-items: start;
}

.srv-pg .tb-left {
padding-top: 20px;
}

.srv-pg .tb-label {
display: inline-block;
font-size: 15px;
font-weight: 600;
color: #9AB135;
font-style: italic;
letter-spacing: 0.06em;
text-transform: uppercase;
margin-bottom: 20px;
}

.srv-pg .tb-h1 {
font-size: 52px;
font-weight: 900;
line-height: 1.15;
color: #1e2d00;
margin: 0 0 20px;
}

.srv-pg .tb-sub {
font-size: 18px;
line-height: 1.6;
color: #3a4a1a;
margin: 0 0 32px;
max-width: 480px;
}

.srv-pg .tb-theses {
display: flex;
flex-direction: column;
gap: 12px;
}

.srv-pg .tb-thesis {
display: flex;
align-items: flex-start;
gap: 12px;
font-size: 15px;
line-height: 1.6;
color: #3a4a1a;
}

.srv-pg .tb-thesis-arrow {
width: 18px;
height: 18px;
flex-shrink: 0;
margin-top: 2px;
}

.srv-pg .tb-thesis-arrow svg {
width: 18px;
height: 18px;
}

.srv-pg .tb-right {
position: relative;
}

.srv-pg .tb-img-wrap {
position: relative;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.srv-pg .tb-img-wrap::after {
content: "";
position: absolute;
inset: 0;
background: rgba(154, 177, 53, 0.06);
mix-blend-mode: multiply;
pointer-events: none;
}

.srv-pg .tb-img-grain {
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='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23noise)' opacity='0.06'/%3E%3C/svg%3E");
pointer-events: none;
z-index: 2;
border-radius: 18px;
}

.srv-pg .tb-img-wrap img {
display: block;
width: 100%;
height: 360px;
object-fit: cover;
object-position: center;
}

.srv-pg .tb-bracket {
position: absolute;
width: 28px;
height: 28px;
pointer-events: none;
}

.srv-pg .tb-bracket.tl {
top: -10px;
left: -10px;
border-top: 3px solid #9AB135;
border-left: 3px solid #9AB135;
border-radius: 6px 0 0 0;
}

.srv-pg .tb-bracket.br {
bottom: -10px;
right: -10px;
border-bottom: 3px solid #9AB135;
border-right: 3px solid #9AB135;
border-radius: 0 0 6px 0;
}

/* diagonal divider */
.srv-pg .diag-div {
width: 100%;
height: 48px;
overflow: hidden;
position: relative;
background: #fff;
}

.srv-pg .diag-div svg {
display: block;
width: 100%;
height: 100%;
}

/* ─── SECTION 2: SERVICES DETAIL ─── */
.srv-pg .svc-det {
background: #fff;
padding-top: 64px;
padding-bottom: 64px;
position: relative;
}

.srv-pg .svc-det-grid {
display: grid;
grid-template-columns: 260px 1fr 260px;
gap: 32px;
align-items: start;
}

.srv-pg .svc-sidebar {
display: flex;
flex-direction: column;
gap: 20px;
}

.srv-pg .svc-sidebar-card {
background: #F7F7EB;
border-radius: 18px;
padding: 20px;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
transition: transform 0.25s ease-out, box-shadow 0.2s ease-out;
}

.srv-pg .svc-sidebar-card:hover {
transform: perspective(600px) rotateY(-3deg) rotateX(1deg);
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
}

.srv-pg .svc-sidebar-card .sc-num {
font-size: 38px;
font-weight: 900;
line-height: 1.15;
color: #9AB135;
display: block;
margin-bottom: 8px;
position: relative;
display: flex;
align-items: center;
gap: 12px;
}

.srv-pg .ring-wrap {
position: relative;
width: 48px;
height: 48px;
flex-shrink: 0;
}

.srv-pg .ring-wrap svg {
width: 48px;
height: 48px;
}

.srv-pg .ring-num {
position: absolute;
inset: 0;
display: flex;
align-items: center;
justify-content: center;
font-size: 18px;
font-weight: 900;
color: #1e2d00;
}

.srv-pg .svc-sidebar-card .sc-label {
font-size: 15px;
font-weight: 700;
color: #1e2d00;
margin-bottom: 8px;
display: block;
}

.srv-pg .svc-sidebar-card .sc-desc {
font-size: 15px;
line-height: 1.6;
color: #3a4a1a;
margin: 0;
}

.srv-pg .svc-center {
display: flex;
flex-direction: column;
gap: 32px;
}

.srv-pg .svc-block {
background: #F7F7EB;
border-radius: 18px;
padding: 32px;
position: relative;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
transition: transform 0.35s ease-out, box-shadow 0.28s ease-out;
}

.srv-pg .svc-block:hover {
transform: perspective(800px) rotateX(1.5deg) rotateY(1deg);
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.srv-pg .svc-block-icon {
width: 40px;
height: 40px;
background: linear-gradient(157deg, #9AB135 0%, #D7CAA2 60%, #F7F7EB 100%);
border-radius: 12px;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 20px;
color: #fff;
font-size: 18px;
}

.srv-pg .svc-block h3 {
font-size: 22px;
font-weight: 900;
line-height: 1.15;
color: #1e2d00;
margin: 0 0 12px;
}

.srv-pg .svc-block p {
font-size: 15px;
line-height: 1.6;
color: #3a4a1a;
margin: 0 0 12px;
}

.srv-pg .svc-block p:last-child {
margin-bottom: 0;
}

.srv-pg .svc-block .accent-word {
color: #9AB135;
font-style: italic;
font-weight: 600;
}

.srv-pg .svc-block .arr-list {
list-style: none;
padding: 0;
margin: 12px 0 0;
display: flex;
flex-direction: column;
gap: 8px;
}

.srv-pg .svc-block .arr-list li {
display: flex;
align-items: flex-start;
gap: 8px;
font-size: 15px;
line-height: 1.6;
color: #3a4a1a;
}

.srv-pg .svc-block .arr-list li::before {
content: "";
display: inline-block;
width: 8px;
height: 8px;
border-right: 2px solid #9AB135;
border-top: 2px solid #9AB135;
transform: rotate(45deg);
flex-shrink: 0;
margin-top: 6px;
}

.srv-pg .diamond-acc {
position: absolute;
top: -12px;
right: 24px;
width: 24px;
height: 24px;
background: #9AB135;
transform: rotate(45deg);
border-radius: 4px;
opacity: 0.7;
}

/* right sidebar - comparison */
.srv-pg .svc-right-side {
display: flex;
flex-direction: column;
gap: 20px;
}

.srv-pg .comp-block {
background: #F7F7EB;
border-radius: 18px;
padding: 20px;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
}

.srv-pg .comp-block h5 {
font-size: 15px;
font-weight: 700;
color: #1e2d00;
margin: 0 0 16px;
text-transform: uppercase;
letter-spacing: 0.05em;
}

.srv-pg .comp-opt {
border-radius: 12px;
padding: 12px;
margin-bottom: 8px;
position: relative;
transition: box-shadow 0.2s ease-out;
}

.srv-pg .comp-opt:last-child {
margin-bottom: 0;
}

.srv-pg .comp-opt.basic {
background: #fff;
border: 1px solid #D7CAA2;
}

.srv-pg .comp-opt.standard {
background: #fff;
border: 1px solid #D7CAA2;
}

.srv-pg .comp-opt.full {
background: linear-gradient(157deg, rgba(154, 177, 53, 0.12) 0%, rgba(215, 202, 162, 0.18) 60%, #F7F7EB 100%);
border: 2px solid #9AB135;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
}

.srv-pg .comp-opt .co-badge {
position: absolute;
top: -8px;
right: 10px;
background: #9AB135;
color: #fff;
font-size: 15px;
font-weight: 700;
padding: 2px 10px;
border-radius: 48px;
font-size: 12px;
}

.srv-pg .comp-opt .co-name {
font-size: 15px;
font-weight: 700;
color: #1e2d00;
display: block;
margin-bottom: 4px;
}

.srv-pg .comp-opt .co-desc {
font-size: 15px;
line-height: 1.4;
color: #3a4a1a;
margin: 0;
}

/* ─── SECTION 3: PROCESS + IMAGE (blueprint bg) ─── */
.srv-pg .proc-sec {
background: linear-gradient(157deg, rgba(154, 177, 53, 0.13) 0%, rgba(215, 202, 162, 0.18) 55%, #F7F7EB 100%);
padding-top: 64px;
padding-bottom: 64px;
position: relative;
}

.srv-pg .proc-sec::before {
content: "";
position: absolute;
inset: 0;
background-image:
linear-gradient(rgba(100, 140, 180, 0.07) 1px, transparent 1px),
linear-gradient(90deg, rgba(100, 140, 180, 0.07) 1px, transparent 1px);
background-size: 32px 32px;
pointer-events: none;
}

.srv-pg .proc-inner {
display: grid;
grid-template-columns: 1fr 380px;
gap: 64px;
align-items: start;
position: relative;
z-index: 1;
}

.srv-pg .proc-left h2 {
font-size: 38px;
font-weight: 900;
line-height: 1.15;
color: #1e2d00;
margin: 0 0 20px;
}

.srv-pg .proc-left p {
font-size: 15px;
line-height: 1.6;
color: #3a4a1a;
margin: 0 0 32px;
}

.srv-pg .proc-steps {
display: flex;
flex-direction: column;
gap: 20px;
}

.srv-pg .proc-step {
display: grid;
grid-template-columns: 48px 1fr;
gap: 16px;
align-items: start;
}

.srv-pg .proc-step-num {
width: 48px;
height: 48px;
border-radius: 48px;
background: #fff;
border: 2px solid #9AB135;
display: flex;
align-items: center;
justify-content: center;
font-size: 18px;
font-weight: 900;
color: #9AB135;
flex-shrink: 0;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
position: relative;
}

.srv-pg .proc-step-num .arc-ring {
position: absolute;
inset: -4px;
border-radius: 50%;
}

.srv-pg .proc-step-txt h5 {
font-size: 15px;
font-weight: 700;
color: #1e2d00;
margin: 0 0 4px;
}

.srv-pg .proc-step-txt p {
font-size: 15px;
line-height: 1.6;
color: #3a4a1a;
margin: 0;
}

.srv-pg .proc-right {
display: flex;
flex-direction: column;
gap: 20px;
}

.srv-pg .proc-img-wrap {
border-radius: 18px;
overflow: hidden;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
position: relative;
}

.srv-pg .proc-img-wrap img {
display: block;
width: 100%;
height: 280px;
object-fit: cover;
object-position: center;
}

.srv-pg .proc-img-wrap::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(157deg, rgba(154, 177, 53, 0.08) 0%, transparent 70%);
pointer-events: none;
}

.srv-pg .proc-stat-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px;
}

.srv-pg .proc-stat {
background: #fff;
border-radius: 12px;
padding: 16px;
text-align: center;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
transition: transform 0.2s ease-out;
}

.srv-pg .proc-stat:hover {
transform: perspective(500px) rotateX(3deg);
}

.srv-pg .proc-stat .st-val {
font-size: 28px;
font-weight: 900;
color: #9AB135;
line-height: 1.15;
display: block;
}

.srv-pg .proc-stat .st-lbl {
font-size: 15px;
color: #3a4a1a;
line-height: 1.4;
}

/* word hover highlight */
.srv-pg .word-hl span {
transition: background 0.18s ease-out, color 0.15s ease-out;
border-radius: 4px;
padding: 0 2px;
cursor: default;
}

.srv-pg .word-hl span:hover {
background: rgba(154, 177, 53, 0.18);
color: #1e2d00;
}

/* ─── SECTION 4: TESTIMONIALS + FAQ ─── */
.srv-pg .rev-sec {
background: #fff;
padding-top: 64px;
padding-bottom: 64px;
position: relative;
}

.srv-pg .rev-sec-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
align-items: start;
}

.srv-pg .rev-col h2 {
font-size: 38px;
font-weight: 900;
line-height: 1.15;
color: #1e2d00;
margin: 0 0 32px;
}

.srv-pg .rev-cards {
display: flex;
flex-direction: column;
gap: 20px;
}

.srv-pg .rev-card {
background: #F7F7EB;
border-radius: 18px;
padding: 24px;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
display: grid;
grid-template-columns: 56px 1fr;
gap: 16px;
align-items: start;
transition: transform 0.28s ease-out, box-shadow 0.22s ease-out;
}

.srv-pg .rev-card:hover {
transform: perspective(700px) rotateY(2deg) rotateX(-1deg);
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
}

.srv-pg .rev-portrait {
width: 56px;
height: 84px;
border-radius: 6px;
overflow: hidden;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
flex-shrink: 0;
}

.srv-pg .rev-portrait img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}

.srv-pg .rev-body .rev-name {
font-size: 15px;
font-weight: 700;
color: #1e2d00;
margin-bottom: 4px;
}

.srv-pg .rev-body .rev-role {
font-size: 15px;
color: #9AB135;
font-style: italic;
margin-bottom: 8px;
}

.srv-pg .rev-body .rev-txt {
font-size: 15px;
line-height: 1.6;
color: #3a4a1a;
margin: 0;
}

.srv-pg .faq-col h2 {
font-size: 38px;
font-weight: 900;
line-height: 1.15;
color: #1e2d00;
margin: 0 0 32px;
}

.srv-pg .faq-list {
display: flex;
flex-direction: column;
gap: 12px;
}

.srv-pg .faq-item {
background: #F7F7EB;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
}

.srv-pg .faq-item input[type="checkbox"] {
position: absolute;
opacity: 0;
width: 0;
height: 0;
pointer-events: none;
}

.srv-pg .faq-item label {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
padding: 16px 20px;
font-size: 15px;
font-weight: 700;
color: #1e2d00;
cursor: pointer;
user-select: none;
transition: background 0.18s ease-out;
}

.srv-pg .faq-item label:hover {
background: rgba(154, 177, 53, 0.08);
}

.srv-pg .faq-item label .faq-icon {
width: 20px;
height: 20px;
flex-shrink: 0;
position: relative;
border-radius: 48px;
background: #9AB135;
display: flex;
align-items: center;
justify-content: center;
}

.srv-pg .faq-item label .faq-icon::before,
.srv-pg .faq-item label .faq-icon::after {
content: "";
position: absolute;
background: #fff;
border-radius: 2px;
}

.srv-pg .faq-item label .faq-icon::before {
width: 10px;
height: 2px;
}

.srv-pg .faq-item label .faq-icon::after {
width: 2px;
height: 10px;
transition: transform 0.22s ease-out, opacity 0.18s ease-out;
}

.srv-pg .faq-ans {
max-height: 0;
overflow: hidden;
transition: max-height 0.38s ease-out, padding 0.22s ease-out;
padding: 0 20px;
}

.srv-pg .faq-ans p {
font-size: 15px;
line-height: 1.6;
color: #3a4a1a;
margin: 0 0 16px;
}

.srv-pg .faq-tog:checked~.faq-ans {
max-height: 300px;
padding: 0 20px 16px;
}

.srv-pg .faq-tog:checked~label .faq-icon::after {
transform: rotate(90deg);
opacity: 0;
}

.srv-pg .faq-item-inner {
display: flex;
flex-direction: column;
}

/* diag top of rev-sec */
.srv-pg .diag-div-inv {
width: 100%;
height: 48px;
overflow: hidden;
background: #F7F7EB;
}

.srv-pg .diag-div-inv svg {
display: block;
width: 100%;
height: 100%;
}

/* CTA strip */
.srv-pg .cta-strip {
background: linear-gradient(157deg, #9AB135 0%, #b8cc55 45%, #D7CAA2 100%);
padding-top: 48px;
padding-bottom: 48px;
position: relative;
overflow: hidden;
}

.srv-pg .cta-strip-inner {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 32px;
}

.srv-pg .cta-strip h3 {
font-size: 28px;
font-weight: 900;
line-height: 1.15;
color: #1e2d00;
margin: 0;
max-width: 520px;
}

.srv-pg .cta-strip p {
font-size: 15px;
line-height: 1.6;
color: #2a3d00;
margin: 8px 0 0;
}

.srv-pg .cta-btn {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 16px 32px;
border-radius: 48px;
background: #1e2d00;
color: #F7F7EB;
font-size: 15px;
font-weight: 700;
text-decoration: none;
border: none;
cursor: pointer;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.14);
transition: transform 0.22s ease-out, box-shadow 0.2s ease-out, background 0.25s ease-out;
white-space: nowrap;
flex-shrink: 0;
}

.srv-pg .cta-btn:hover {
transform: perspective(500px) rotateX(3deg) translateY(-2px);
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
background: #2a3d00;
}

.srv-pg .cta-btn:focus-visible {
outline: 3px solid #fff;
outline-offset: 3px;
}

/* ─── RESPONSIVE ─── */
@media (max-width: 1366px) {
.srv-pg .tb-h1 {
font-size: 38px;
}

.srv-pg .svc-det-grid {
grid-template-columns: 200px 1fr 200px;
gap: 20px;
}
}

@media (max-width: 768px) {
.srv-pg .tb-grid {
grid-template-columns: 1fr;
gap: 32px;
}

.srv-pg .tb-h1 {
font-size: 38px;
}

.srv-pg .svc-det-grid {
grid-template-columns: 1fr;
gap: 20px;
}

.srv-pg .svc-sidebar {
flex-direction: row;
flex-wrap: wrap;
}

.srv-pg .svc-sidebar-card {
flex: 1 1 200px;
}

.srv-pg .proc-inner {
grid-template-columns: 1fr;
gap: 32px;
}

.srv-pg .rev-sec-grid {
grid-template-columns: 1fr;
gap: 32px;
}

.srv-pg .cta-strip-inner {
flex-direction: column;
align-items: flex-start;
}
}

@media (max-width: 375px) {
.srv-pg .fr {
padding-left: 20px;
padding-right: 20px;
}

.srv-pg .tb-h1 {
font-size: 28px;
}

.srv-pg .proc-left h2,
.srv-pg .rev-col h2,
.srv-pg .faq-col h2 {
font-size: 28px;
}

.srv-pg .proc-stat-row {
grid-template-columns: 1fr;
}

.srv-pg .svc-sidebar {
flex-direction: column;
}
}

/* bounce animation for proc steps */
@keyframes settle-bounce {
0% {
transform: translateY(12px);
opacity: 0;
}

60% {
transform: translateY(-4px);
opacity: 1;
}

80% {
transform: translateY(2px);
}

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

.srv-pg .proc-step {
animation: settle-bounce 0.42s ease-out both;
}

.srv-pg .proc-step:nth-child(1) {
animation-delay: 0.05s;
}

.srv-pg .proc-step:nth-child(2) {
animation-delay: 0.13s;
}

.srv-pg .proc-step:nth-child(3) {
animation-delay: 0.21s;
}

.srv-pg .proc-step:nth-child(4) {
animation-delay: 0.29s;
}

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

.abt-pg .pg-limiter {
max-width: 1100px;
margin-left: auto;
margin-right: auto;
padding-left: 32px;
padding-right: 32px;
}

.abt-pg .divider-cross {
display: flex;
align-items: center;
justify-content: center;
gap: 12px;
padding: 20px 0;
}

.abt-pg .divider-cross .d-line {
height: 1px;
width: 80px;
background: #9AB135;
opacity: 0.45;
}

.abt-pg .divider-cross .d-cross {
position: relative;
width: 10px;
height: 10px;
flex-shrink: 0;
}

.abt-pg .divider-cross .d-cross::before,
.abt-pg .divider-cross .d-cross::after {
content: "";
position: absolute;
background: #9AB135;
opacity: 0.7;
}

.abt-pg .divider-cross .d-cross::before {
width: 10px;
height: 1px;
top: 50%;
left: 0;
transform: translateY(-50%);
}

.abt-pg .divider-cross .d-cross::after {
width: 1px;
height: 10px;
left: 50%;
top: 0;
transform: translateX(-50%);
}

.abt-pg .acnt-italic {
color: #9AB135;
font-style: italic;
}

.abt-pg .arr-list {
list-style: none;
padding: 0;
margin: 0;
}

.abt-pg .arr-list li {
padding-left: 20px;
position: relative;
font-size: 15px;
line-height: 1.6;
color: #2d3220;
margin-bottom: 8px;
}

.abt-pg .arr-list li::before {
content: "";
position: absolute;
left: 0;
top: 8px;
width: 7px;
height: 7px;
border-right: 2px solid #9AB135;
border-top: 2px solid #9AB135;
transform: rotate(45deg);
}

.abt-pg .lbl-tag {
display: inline-block;
font-size: 15px;
font-weight: 700;
letter-spacing: 0.04em;
text-transform: uppercase;
color: #9AB135;
margin-bottom: 12px;
}

/* ── SECTION 1: TITLE BAND ── */
.abt-pg .ttl-band {
position: relative;
padding: 32px 0;
background: #2d3220;
overflow: hidden;
}

.abt-pg .ttl-band .grain-layer {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0;
opacity: 0.055;
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='1'/%3E%3C/svg%3E");
background-size: 200px 200px;
}

.abt-pg .ttl-band .diag-deco {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0;
overflow: hidden;
}

.abt-pg .ttl-band .diag-deco::before {
content: "";
position: absolute;
top: -40px;
right: -60px;
width: 340px;
height: 340px;
border: 1px solid #9AB135;
opacity: 0.09;
transform: rotate(157deg);
border-radius: 6px;
}

.abt-pg .ttl-band .diag-deco::after {
content: "";
position: absolute;
bottom: -20px;
left: 15%;
width: 1px;
height: 140%;
background: linear-gradient(157deg, #9AB135 0%, #D7CAA2 60%, transparent 100%);
opacity: 0.08;
}

.abt-pg .ttl-band .band-inner {
position: relative;
z-index: 1;
display: flex;
flex-direction: row;
align-items: center;
gap: 32px;
}

.abt-pg .ttl-band .band-txt {
flex: 1 1 0;
min-width: 0;
}

.abt-pg .ttl-band .band-txt .pg-label {
font-size: 15px;
font-weight: 700;
text-transform: uppercase;
color: #9AB135;
letter-spacing: 0.06em;
margin-bottom: 8px;
display: block;
}

.abt-pg .ttl-band .band-txt h1 {
font-size: 52px;
line-height: 1.15;
font-weight: 900;
color: #F7F7EB;
margin: 0 0 12px 0;
}

.abt-pg .ttl-band .band-txt .band-sub {
font-size: 18px;
line-height: 1.6;
color: #D7CAA2;
max-width: 560px;
margin: 0;
}

.abt-pg .ttl-band .band-img-wrap {
flex: 0 0 260px;
height: 180px;
border-radius: 18px;
overflow: hidden;
position: relative;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
}

.abt-pg .ttl-band .band-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
opacity: 0.38;
}

.abt-pg .ttl-band .band-img-wrap .img-tint {
position: absolute;
inset: 0;
background: linear-gradient(157deg, rgba(154, 177, 53, 0.38) 0%, rgba(215, 202, 162, 0.22) 55%, rgba(47, 50, 32, 0.55) 100%);
border-radius: 18px;
}

/* ── SECTION 2: STORY + SIDEBAR ── */
.abt-pg .story-sec {
background: #F7F7EB;
padding: 64px 0;
position: relative;
}

.abt-pg .story-sec .diag-bg {
position: absolute;
inset: 0;
pointer-events: none;
overflow: hidden;
z-index: 0;
}

.abt-pg .story-sec .diag-bg::before {
content: "";
position: absolute;
top: 0;
right: 0;
width: 38%;
height: 100%;
background: linear-gradient(157deg, #D7CAA2 0%, rgba(215, 202, 162, 0.45) 60%, transparent 100%);
clip-path: polygon(18% 0, 100% 0, 100% 100%, 0% 100%);
}

.abt-pg .story-sec .story-grid {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: 1fr 320px;
gap: 32px;
align-items: start;
}

.abt-pg .story-sec .story-main h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #2d3220;
margin: 0 0 20px 0;
}

.abt-pg .story-sec .story-main .lead-p {
font-size: 18px;
line-height: 1.6;
color: #2d3220;
margin: 0 0 20px 0;
}

.abt-pg .story-sec .story-main .body-p {
font-size: 15px;
line-height: 1.6;
color: #3a3f28;
margin: 0 0 20px 0;
}

.abt-pg .story-sec .story-main .narrow-p {
font-size: 15px;
line-height: 1.6;
color: #3a3f28;
max-width: 480px;
margin: 0 0 20px 0;
}

.abt-pg .story-sec .story-main .val-table {
width: 100%;
border-collapse: collapse;
margin-top: 20px;
border-radius: 6px;
overflow: hidden;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
}

.abt-pg .story-sec .story-main .val-table th {
background: #2d3220;
color: #F7F7EB;
font-size: 15px;
font-weight: 700;
padding: 12px 20px;
text-align: left;
}

.abt-pg .story-sec .story-main .val-table td {
font-size: 15px;
padding: 12px 20px;
border-bottom: 1px solid rgba(154, 177, 53, 0.12);
}

.abt-pg .story-sec .story-main .val-table tr:last-child td {
border-bottom: none;
}

.abt-pg .story-sec .story-main .val-table .cell-hi {
background: rgba(154, 177, 53, 0.18);
color: #2d3220;
font-weight: 700;
}

.abt-pg .story-sec .story-main .val-table .cell-mid {
background: rgba(215, 202, 162, 0.28);
color: #2d3220;
}

.abt-pg .story-sec .story-main .val-table .cell-lo {
background: rgba(247, 247, 235, 0.8);
color: #3a3f28;
}

.abt-pg .story-sec .story-main .val-table tr:hover td {
background: rgba(154, 177, 53, 0.09);
transition: background 0.22s ease-out;
}

.abt-pg .story-sec .side-bar {
background: #2d3220;
border-radius: 18px;
padding: 32px 20px;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
display: flex;
flex-direction: column;
gap: 20px;
}

.abt-pg .story-sec .side-bar .sb-head {
font-size: 18px;
font-weight: 900;
color: #F7F7EB;
line-height: 1.4;
margin: 0;
}

.abt-pg .story-sec .side-bar .sb-stat {
display: flex;
flex-direction: column;
gap: 4px;
padding: 12px 0;
border-bottom: 1px solid rgba(215, 202, 162, 0.15);
}

.abt-pg .story-sec .side-bar .sb-stat:last-of-type {
border-bottom: none;
}

.abt-pg .story-sec .side-bar .sb-num {
font-size: 38px;
font-weight: 900;
line-height: 1.15;
color: #9AB135;
}

.abt-pg .story-sec .side-bar .sb-desc {
font-size: 15px;
line-height: 1.4;
color: #D7CAA2;
}

/* ── SECTION 3: TEAM + PROCESS (COMPLEX MULTI-LEVEL) ── */
.abt-pg .team-proc {
background: #fff;
padding: 64px 0 32px;
position: relative;
}

.abt-pg .team-proc .tp-inner {
display: flex;
flex-direction: column;
gap: 32px;
}

.abt-pg .team-proc .tp-top {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
align-items: start;
}

.abt-pg .team-proc .tp-top h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #2d3220;
margin: 0 0 12px 0;
}

.abt-pg .team-proc .tp-top .tp-desc {
font-size: 15px;
line-height: 1.6;
color: #3a3f28;
margin: 0 0 20px 0;
}

.abt-pg .team-proc .tp-top h3 {
font-size: 22px;
line-height: 1.4;
font-weight: 900;
color: #2d3220;
margin: 0 0 12px 0;
}

.abt-pg .team-proc .tp-top .tp-sub-desc {
font-size: 15px;
line-height: 1.6;
color: #3a3f28;
margin: 0 0 12px 0;
}

.abt-pg .team-proc .portraits-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
}

.abt-pg .team-proc .portrait-card {
background: #F7F7EB;
border-radius: 18px;
padding: 20px;
display: flex;
flex-direction: row;
gap: 20px;
align-items: flex-start;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
transition: box-shadow 0.25s ease-out, transform 0.2s ease-out;
transform-style: preserve-3d;
}

.abt-pg .team-proc .portrait-card:hover {
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
transform: perspective(600px) rotateY(-2deg) rotateX(1deg);
}

.abt-pg .team-proc .portrait-card .p-img-wrap {
flex: 0 0 80px;
width: 80px;
height: 80px;
border-radius: 48px;
overflow: hidden;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
}

.abt-pg .team-proc .portrait-card .p-img-wrap img {
width: 80px;
height: 80px;
object-fit: cover;
object-position: center;
display: block;
}

.abt-pg .team-proc .portrait-card .p-info {
flex: 1 1 0;
min-width: 0;
}

.abt-pg .team-proc .portrait-card .p-info h4 {
font-size: 18px;
font-weight: 900;
color: #2d3220;
margin: 0 0 4px 0;
line-height: 1.4;
}

.abt-pg .team-proc .portrait-card .p-info .p-role {
font-size: 15px;
color: #9AB135;
font-weight: 700;
margin: 0 0 8px 0;
}

.abt-pg .team-proc .portrait-card .p-info .p-bio {
font-size: 15px;
line-height: 1.6;
color: #3a3f28;
margin: 0;
}

.abt-pg .team-proc .proc-flow {
position: relative;
padding: 32px 0;
}

.abt-pg .team-proc .proc-flow h3 {
font-size: 22px;
font-weight: 900;
color: #2d3220;
margin: 0 0 32px 0;
line-height: 1.4;
}

.abt-pg .team-proc .proc-flow .steps-row {
display: flex;
flex-direction: row;
gap: 0;
align-items: flex-start;
position: relative;
}

.abt-pg .team-proc .proc-flow .step-item {
flex: 1 1 0;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
position: relative;
padding: 0 12px;
}

.abt-pg .team-proc .proc-flow .step-item .step-dot {
width: 44px;
height: 44px;
border-radius: 48px;
background: linear-gradient(157deg, #9AB135 0%, #D7CAA2 80%, #F7F7EB 100%);
display: flex;
align-items: center;
justify-content: center;
font-size: 18px;
font-weight: 900;
color: #2d3220;
position: relative;
z-index: 1;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
flex-shrink: 0;
}

.abt-pg .team-proc .proc-flow .step-connector {
flex: 0 0 auto;
align-self: flex-start;
margin-top: 22px;
height: 2px;
width: 40px;
position: relative;
overflow: hidden;
}

.abt-pg .team-proc .proc-flow .step-connector .conn-line {
position: absolute;
top: 0;
left: 0;
height: 2px;
width: 100%;
background: linear-gradient(90deg, #9AB135 0%, #D7CAA2 100%);
transform-origin: left center;
animation: drawLine 0.45s ease-out both;
}

.abt-pg .team-proc .proc-flow .step-connector:nth-child(2) .conn-line {
animation-delay: 0.08s;
}

.abt-pg .team-proc .proc-flow .step-connector:nth-child(4) .conn-line {
animation-delay: 0.18s;
}

.abt-pg .team-proc .proc-flow .step-connector:nth-child(6) .conn-line {
animation-delay: 0.28s;
}

@keyframes drawLine {
from {
transform: scaleX(0);
}

to {
transform: scaleX(1);
}
}

.abt-pg .team-proc .proc-flow .step-item h5 {
font-size: 15px;
font-weight: 900;
color: #2d3220;
margin: 12px 0 4px 0;
line-height: 1.4;
}

.abt-pg .team-proc .proc-flow .step-item .step-note {
font-size: 15px;
line-height: 1.6;
color: #3a3f28;
margin: 0;
}

/* ── SECTION 4: APPROACH - DIAGONAL SPLIT ── */
.abt-pg .approach-sec {
position: relative;
padding: 64px 0;
overflow: hidden;
}

.abt-pg .approach-sec .split-bg {
position: absolute;
inset: 0;
z-index: 0;
pointer-events: none;
}

.abt-pg .approach-sec .split-bg .bg-left {
position: absolute;
top: 0;
left: 0;
width: 58%;
height: 100%;
background: linear-gradient(157deg, #2d3220 0%, #3a4a1a 55%, #2d3220 100%);
clip-path: polygon(0 0, 100% 0, 82% 100%, 0 100%);
}

.abt-pg .approach-sec .split-bg .bg-right {
position: absolute;
top: 0;
right: 0;
width: 55%;
height: 100%;
background: linear-gradient(157deg, #D7CAA2 0%, #F7F7EB 60%, #D7CAA2 100%);
}

.abt-pg .approach-sec .split-bg .diag-line {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.abt-pg .approach-sec .split-bg .diag-line::before {
content: "";
position: absolute;
top: 0;
left: 48%;
width: 2px;
height: 100%;
background: linear-gradient(157deg, transparent 0%, #9AB135 40%, transparent 100%);
opacity: 0.3;
transform: rotate(8deg);
transform-origin: top center;
}

.abt-pg .approach-sec .ap-inner {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
align-items: start;
}

.abt-pg .approach-sec .ap-left h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #F7F7EB;
margin: 0 0 20px 0;
}

.abt-pg .approach-sec .ap-left .ap-p {
font-size: 15px;
line-height: 1.6;
color: #D7CAA2;
margin: 0 0 20px 0;
}

.abt-pg .approach-sec .ap-left .ap-p-wide {
font-size: 15px;
line-height: 1.6;
color: #D7CAA2;
margin: 0 0 20px 0;
}

.abt-pg .approach-sec .ap-left .ap-arr-list {
list-style: none;
padding: 0;
margin: 0;
}

.abt-pg .approach-sec .ap-left .ap-arr-list li {
padding-left: 20px;
position: relative;
font-size: 15px;
line-height: 1.6;
color: #D7CAA2;
margin-bottom: 8px;
}

.abt-pg .approach-sec .ap-left .ap-arr-list li::before {
content: "";
position: absolute;
left: 0;
top: 8px;
width: 7px;
height: 7px;
border-right: 2px solid #9AB135;
border-top: 2px solid #9AB135;
transform: rotate(45deg);
}

.abt-pg .approach-sec .ap-right {
padding-left: 20px;
}

.abt-pg .approach-sec .ap-right h3 {
font-size: 22px;
font-weight: 900;
color: #2d3220;
margin: 0 0 20px 0;
line-height: 1.4;
}

.abt-pg .approach-sec .ap-right .feat-card {
background: #fff;
border-radius: 18px;
padding: 20px;
margin-bottom: 12px;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
display: flex;
flex-direction: row;
gap: 12px;
align-items: flex-start;
transition: box-shadow 0.2s ease-out, transform 0.18s ease-out;
transform-style: preserve-3d;
}

.abt-pg .approach-sec .ap-right .feat-card:hover {
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
transform: perspective(700px) rotateX(1.5deg) rotateY(1deg);
}

.abt-pg .approach-sec .ap-right .feat-card .fc-icon {
flex: 0 0 36px;
width: 36px;
height: 36px;
border-radius: 6px;
background: linear-gradient(157deg, #9AB135 0%, #D7CAA2 100%);
display: flex;
align-items: center;
justify-content: center;
color: #2d3220;
font-size: 18px;
}

.abt-pg .approach-sec .ap-right .feat-card .fc-body {
flex: 1 1 0;
min-width: 0;
}

.abt-pg .approach-sec .ap-right .feat-card .fc-body h6 {
font-size: 15px;
font-weight: 900;
color: #2d3220;
margin: 0 0 4px 0;
line-height: 1.4;
}

.abt-pg .approach-sec .ap-right .feat-card .fc-body p {
font-size: 15px;
line-height: 1.6;
color: #3a3f28;
margin: 0;
}

.abt-pg .approach-sec .ap-right .img-tex-wrap {
border-radius: 18px;
overflow: hidden;
height: 120px;
position: relative;
margin-top: 20px;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
}

.abt-pg .approach-sec .ap-right .img-tex-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
opacity: 0.13;
display: block;
}

.abt-pg .approach-sec .ap-right .img-tex-wrap .tex-overlay {
position: absolute;
inset: 0;
background: linear-gradient(157deg, rgba(154, 177, 53, 0.55) 0%, rgba(215, 202, 162, 0.4) 100%);
display: flex;
align-items: center;
justify-content: center;
}

.abt-pg .approach-sec .ap-right .img-tex-wrap .tex-overlay span {
font-size: 15px;
font-weight: 700;
color: #2d3220;
text-align: center;
padding: 0 20px;
line-height: 1.6;
}

/* ── RESPONSIVE ── */
@media (max-width: 1366px) {
.abt-pg .ttl-band .band-txt h1 {
font-size: 38px;
}
}

@media (max-width: 768px) {
.abt-pg .pg-limiter {
padding-left: 20px;
padding-right: 20px;
}

.abt-pg .ttl-band .band-inner {
flex-direction: column;
gap: 20px;
}

.abt-pg .ttl-band .band-txt h1 {
font-size: 38px;
}

.abt-pg .ttl-band .band-img-wrap {
flex: 0 0 auto;
width: 100%;
height: 140px;
}

.abt-pg .story-sec .story-grid {
grid-template-columns: 1fr;
}

.abt-pg .story-sec .side-bar {
flex-direction: row;
flex-wrap: wrap;
gap: 12px;
}

.abt-pg .story-sec .side-bar .sb-stat {
flex: 1 1 120px;
border-bottom: none;
padding: 8px 0;
}

.abt-pg .team-proc .tp-top {
grid-template-columns: 1fr;
gap: 20px;
}

.abt-pg .team-proc .portraits-row {
grid-template-columns: 1fr;
}

.abt-pg .team-proc .proc-flow .steps-row {
flex-direction: column;
gap: 20px;
}

.abt-pg .team-proc .proc-flow .step-connector {
display: none;
}

.abt-pg .team-proc .proc-flow .step-item {
flex-direction: row;
text-align: left;
align-items: flex-start;
gap: 12px;
}

.abt-pg .team-proc .proc-flow .step-item h5 {
margin-top: 0;
}

.abt-pg .approach-sec .ap-inner {
grid-template-columns: 1fr;
gap: 20px;
}

.abt-pg .approach-sec .split-bg .bg-left {
width: 100%;
height: 50%;
clip-path: polygon(0 0, 100% 0, 100% 82%, 0 100%);
}

.abt-pg .approach-sec .split-bg .bg-right {
top: 50%;
width: 100%;
height: 50%;
}

.abt-pg .approach-sec .ap-left h2 {
font-size: 28px;
}

.abt-pg .approach-sec .ap-right {
padding-left: 0;
}
}

@media (max-width: 375px) {
.abt-pg .ttl-band .band-txt h1 {
font-size: 28px;
}

.abt-pg .story-sec .story-main h2 {
font-size: 28px;
}

.abt-pg .team-proc .tp-top h2 {
font-size: 28px;
}

.abt-pg .story-sec {
padding: 32px 0;
}

.abt-pg .team-proc {
padding: 32px 0 20px;
}

.abt-pg .approach-sec {
padding: 32px 0;
}
}

.suc-page {
min-height: 80vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 64px 20px;
background: #F7F7EB;
}

.suc-page .suc-card {
max-width: 1100px;
width: 100%;
background: #ffffff;
border-radius: 18px;
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
padding: 64px;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
position: relative;
}

.suc-page .suc-card .suc-icon-wrap {
width: 80px;
height: 80px;
border-radius: 48px;
background: linear-gradient(157deg, #9AB135 0%, #c8d97a 55%, #D7CAA2 100%);
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 32px;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
}

.suc-page .suc-card .suc-icon-wrap .suc-checkmark {
width: 36px;
height: 36px;
}

.suc-page .suc-card .suc-label {
font-size: 15px;
line-height: 1.4;
color: #9AB135;
font-style: italic;
font-weight: 600;
letter-spacing: 0.08em;
text-transform: uppercase;
margin-bottom: 12px;
}

.suc-page .suc-card .suc-heading {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #2a2d1a;
margin-bottom: 20px;
}

.suc-page .suc-card .suc-desc {
font-size: 18px;
line-height: 1.6;
color: #4a4d38;
max-width: 560px;
margin-bottom: 32px;
}

.suc-page .suc-card .suc-divider {
width: 64px;
height: 3px;
border-radius: 6px;
background: linear-gradient(157deg, #9AB135 0%, #D7CAA2 100%);
margin-bottom: 32px;
}

.suc-page .suc-card .suc-info-row {
display: flex;
flex-direction: row;
gap: 20px;
margin-bottom: 32px;
flex-wrap: wrap;
justify-content: center;
}

.suc-page .suc-card .suc-info-row .suc-info-item {
background: #F7F7EB;
border-radius: 6px;
padding: 12px 20px;
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
}

.suc-page .suc-card .suc-info-row .suc-info-item .suc-info-icon {
color: #9AB135;
font-size: 15px;
}

.suc-page .suc-card .suc-info-row .suc-info-item .suc-info-text {
font-size: 15px;
line-height: 1.4;
color: #3a3d28;
}

.suc-page .suc-card .suc-actions {
display: flex;
flex-direction: row;
gap: 12px;
flex-wrap: wrap;
justify-content: center;
}

.suc-page .suc-card .suc-actions .suc-btn {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 12px 32px;
border-radius: 6px;
font-size: 15px;
line-height: 1.4;
font-weight: 700;
text-decoration: none;
border: none;
cursor: pointer;
transition: transform 0.22s ease-out, box-shadow 0.18s ease-out;
}

.suc-page .suc-card .suc-actions .suc-btn:focus-visible {
outline: 2px solid #9AB135;
outline-offset: 3px;
}

.suc-page .suc-card .suc-actions .suc-btn.primary {
background: linear-gradient(157deg, #9AB135 0%, #b8cc50 60%, #c8d97a 100%);
color: #1e2108;
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
}

.suc-page .suc-card .suc-actions .suc-btn.primary:hover {
transform: perspective(600px) rotateX(3deg) rotateY(-2deg);
box-shadow: 0 12px 36px -2px rgba(154, 177, 53, 0.14);
}

.suc-page .suc-card .suc-actions .suc-btn.secondary {
background: #F7F7EB;
color: #3a3d28;
box-shadow: 0 2px 5px -2px rgba(154, 177, 53, 0.07);
}

.suc-page .suc-card .suc-actions .suc-btn.secondary:hover {
transform: perspective(600px) rotateX(-2deg) rotateY(3deg);
box-shadow: 0 7px 20px -2px rgba(154, 177, 53, 0.10);
background: #eeeedd;
}

.suc-page .suc-card .suc-note {
margin-top: 32px;
font-size: 15px;
line-height: 1.6;
color: #6a6d58;
max-width: 480px;
}

.suc-page .suc-card .suc-note .suc-note-accent {
color: #9AB135;
font-style: italic;
font-weight: 600;
}

.suc-page .suc-card .suc-corner-deco {
position: absolute;
top: 0;
right: 0;
width: 120px;
height: 120px;
border-radius: 0 18px 0 0;
overflow: hidden;
pointer-events: none;
}

.suc-page .suc-card .suc-corner-deco svg {
width: 100%;
height: 100%;
}

@media (max-width: 768px) {
.suc-page {
padding: 32px 12px;
}

.suc-page .suc-card {
padding: 32px 20px;
}

.suc-page .suc-card .suc-heading {
font-size: 28px;
}

.suc-page .suc-card .suc-desc {
font-size: 15px;
}

.suc-page .suc-card .suc-actions {
flex-direction: column;
align-items: stretch;
}

.suc-page .suc-card .suc-actions .suc-btn {
justify-content: center;
}
}

@media (max-width: 375px) {
.suc-page .suc-card {
padding: 20px 12px;
}

.suc-page .suc-card .suc-heading {
font-size: 22px;
}

.suc-page .suc-card .suc-info-row {
flex-direction: column;
gap: 8px;
}
}