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

body {
margin: 0;
min-height: 100svh;
overflow-x: hidden;
-webkit-text-size-adjust: 100%;
}

.editorialHeader {
position: relative;
background: #FAFAF6;
border-bottom: 2px solid #AFC94F;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
font-family: 'Merriweather', serif;
overflow: hidden;
}

.editorialHeader::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 4px;
background: linear-gradient(90deg, #AFC94F 0%, #CAE1BA 60%, #FAFAF6 100%);
}

.editorialHeader::after {
content: '';
position: absolute;
bottom: 0;
right: -80px;
width: 320px;
height: 320px;
border-radius: 50%;
background: linear-gradient(135deg, rgba(202, 225, 186, 0.18) 0%, rgba(175, 201, 79, 0.08) 100%);
pointer-events: none;
}

.topStrip {
background: linear-gradient(90deg, #AFC94F 0%, #CAE1BA 100%);
padding: 8px 40px;
display: flex;
align-items: center;
justify-content: flex-end;
gap: 24px;
}

.topStripContact {
font-family: 'Merriweather', serif;
font-size: 15px;
font-weight: 300;
color: #2a2a2a;
line-height: 1.3;
text-decoration: none;
transition: color 0.28s ease-in-out;
}

.topStripContact:hover,
.topStripContact:focus {
color: #3a4a10;
outline: 2px solid #3a4a10;
outline-offset: 2px;
border-radius: 0px;
}

.topStripAction {
display: inline-block;
font-family: 'Merriweather', serif;
font-size: 15px;
font-weight: 700;
color: #FAFAF6;
background: #3a4a10;
padding: 8px 24px;
border-radius: 10px;
text-decoration: none;
line-height: 1.3;
box-shadow: -1px 3px 6px -1px rgba(175, 201, 79, 0.05);
transition: background 0.26s cubic-bezier(0.4, 0, 0.2, 1), color 0.26s cubic-bezier(0.4, 0, 0.2, 1);
}

.topStripAction:hover,
.topStripAction:focus {
background: #AFC94F;
color: #2a2a2a;
outline: 2px solid #3a4a10;
outline-offset: 2px;
}

.brandRow {
display: flex;
align-items: center;
justify-content: center;
padding: 40px 40px 24px;
position: relative;
z-index: 2;
}

.brandLogoContainer {
display: flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
border-radius: 10px;
background: #FAFAF6;
box-shadow:
0 0 0 2px #AFC94F,
-1px 3px 6px -1px rgba(175, 201, 79, 0.05),
-1px 5px 18px -1px rgba(175, 201, 79, 0.10);
flex-shrink: 0;
margin-right: 24px;
}

.brandLogoContainer img {
width: 36px;
height: 36px;
object-fit: contain;
display: block;
}

.brandName {
font-family: 'Merriweather', serif;
font-size: 58px;
font-weight: 700;
color: #2a2a2a;
line-height: 1.1;
letter-spacing: 0;
text-decoration: none;
}

.brandTagline {
font-family: 'Merriweather', serif;
font-size: 15px;
font-weight: 300;
color: #5a5a3a;
line-height: 1.6;
margin-left: 24px;
border-left: none;
padding-left: 24px;
position: relative;
}

.brandTagline::before {
content: '';
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
width: 2px;
height: 32px;
background: #AFC94F;
border-radius: 0px;
}

.primaryNav {
display: flex;
align-items: stretch;
justify-content: center;
flex-wrap: wrap;
gap: 8px;
padding: 0 40px 40px;
position: relative;
z-index: 2;
}

.primaryNavDivider {
width: 100%;
height: 1px;
background: linear-gradient(90deg, transparent 0%, #CAE1BA 30%, #AFC94F 50%, #CAE1BA 70%, transparent 100%);
margin-bottom: 24px;
}

.primaryNavItem {
font-family: 'Merriweather', serif;
font-size: 15px;
font-weight: 400;
color: #2a2a2a;
text-decoration: none;
padding: 8px 24px;
border-radius: 22px;
line-height: 1.6;
position: relative;
background: transparent;
transition: background 0.35s cubic-bezier(0.4, 0, 0.2, 1), color 0.35s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.35s cubic-bezier(0.4, 0, 0.2, 1);
min-height: 44px;
display: inline-flex;
align-items: center;
}

.primaryNavItem:hover,
.primaryNavItem:focus {
background: #AFC94F;
color: #2a2a2a;
box-shadow: -1px 3px 6px -1px rgba(175, 201, 79, 0.05), -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
outline: none;
}

.primaryNavItem:focus-visible {
outline: 2px solid #3a4a10;
outline-offset: 2px;
}

.primaryNavItem.active {
background: #CAE1BA;
color: #2a2a2a;
font-weight: 700;
}

.primaryNavSeparator {
display: flex;
align-items: center;
color: #AFC94F;
font-size: 16px;
line-height: 1.1;
pointer-events: none;
user-select: none;
}

.primaryNavSeparator svg {
width: 6px;
height: 6px;
display: block;
}

.siteFooter {
background: linear-gradient(160deg, #2a3010 0%, #3a4a18 60%, #4a5a20 100%);
font-family: 'Merriweather', serif;
position: relative;
overflow: hidden;
}

.siteFooter::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(90deg, #AFC94F 0%, #CAE1BA 50%, #AFC94F 100%);
}

.siteFooter::after {
content: '';
position: absolute;
bottom: -60px;
left: -60px;
width: 280px;
height: 280px;
border-radius: 50%;
background: rgba(175, 201, 79, 0.06);
pointer-events: none;
}

.footerTopRow {
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 24px;
padding: 40px 40px 24px;
max-width: 1600px;
margin: 0 auto;
position: relative;
z-index: 2;
}

.footerBrand {
display: flex;
align-items: center;
gap: 24px;
}

.footerLogoBox {
display: flex;
align-items: center;
justify-content: center;
width: 44px;
height: 44px;
border-radius: 10px;
background: #FAFAF6;
box-shadow:
0 0 0 2px #AFC94F,
-1px 3px 6px -1px rgba(175, 201, 79, 0.05),
-1px 10px 60px -1px rgba(175, 201, 79, 0.14);
flex-shrink: 0;
}

.footerLogoBox img {
width: 34px;
height: 34px;
object-fit: contain;
display: block;
}

.footerBrandName {
font-size: 23px;
font-weight: 700;
color: #FAFAF6;
line-height: 1.3;
}

.footerSlogan {
font-size: 15px;
font-weight: 300;
color: #CAE1BA;
line-height: 1.6;
}

.footerBottomRow {
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 24px;
padding: 24px 40px 40px;
max-width: 1600px;
margin: 0 auto;
border-top: 1px solid rgba(175, 201, 79, 0.22);
position: relative;
z-index: 2;
}

.footerCopyright {
font-size: 15px;
font-weight: 300;
color: #CAE1BA;
line-height: 1.6;
}

.footerLegalLinks {
display: flex;
align-items: center;
gap: 24px;
flex-wrap: wrap;
}

.footerLegalLink {
font-size: 15px;
font-weight: 400;
color: #CAE1BA;
text-decoration: none;
line-height: 1.6;
padding: 8px 8px;
border-radius: 0px;
transition: color 0.27s ease-in-out;
min-height: 44px;
display: inline-flex;
align-items: center;
}

.footerLegalLink:hover,
.footerLegalLink:focus {
color: #AFC94F;
outline: none;
}

.footerLegalLink:focus-visible {
outline: 2px solid #AFC94F;
outline-offset: 2px;
border-radius: 0px;
}

.footerEmail {
font-size: 15px;
font-weight: 300;
color: #CAE1BA;
text-decoration: none;
line-height: 1.6;
transition: color 0.27s ease-in-out;
}

.footerEmail:hover,
.footerEmail:focus {
color: #AFC94F;
outline: none;
}

.footerEmail:focus-visible {
outline: 2px solid #AFC94F;
outline-offset: 2px;
}

.cookieCard {
position: fixed;
top: auto;
bottom: 40px;
right: 40px;
width: 360px;
background: #FAFAF6;
border-radius: 22px;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14), -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
padding: 24px;
z-index: 8000;
font-family: 'Merriweather', serif;
border-top: 3px solid #AFC94F;
transform: translateY(120%);
transition: transform 0.38s cubic-bezier(0.4, 0, 0.2, 1);
}

.cookieCard.sliding {
transform: translateY(0);
}

.cookieDesc {
font-size: 15px;
font-weight: 300;
color: #2a2a2a;
line-height: 1.9;
margin: 0 0 24px;
}

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

.cookieAcceptBtn,
.cookieDeclineBtn {
flex: 1;
font-family: 'Merriweather', serif;
font-size: 15px;
font-weight: 700;
line-height: 1.3;
padding: 8px 24px;
border-radius: 10px;
border: 2px solid #AFC94F;
cursor: pointer;
min-height: 44px;
transition: background 0.28s cubic-bezier(0.4, 0, 0.2, 1), color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}

.cookieAcceptBtn {
background: #AFC94F;
color: #2a2a2a;
}

.cookieAcceptBtn:hover,
.cookieAcceptBtn:focus {
background: #3a4a10;
color: #FAFAF6;
outline: 2px solid #3a4a10;
outline-offset: 2px;
}

.cookieDeclineBtn {
background: transparent;
color: #2a2a2a;
}

.cookieDeclineBtn:hover,
.cookieDeclineBtn:focus {
background: #CAE1BA;
color: #2a2a2a;
outline: 2px solid #AFC94F;
outline-offset: 2px;
}

.consentMiniBanner {
position: fixed;
bottom: 0;
right: 40px;
background: #3a4a10;
color: #CAE1BA;
font-family: 'Merriweather', serif;
font-size: 15px;
font-weight: 300;
line-height: 1.3;
padding: 8px 24px;
border-radius: 10px 10px 0 0;
cursor: pointer;
z-index: 7999;
border: none;
min-height: 44px;
display: none;
align-items: center;
transition: background 0.27s ease-in-out, color 0.27s ease-in-out;
}

.consentMiniBanner:hover,
.consentMiniBanner:focus {
background: #AFC94F;
color: #2a2a2a;
outline: 2px solid #3a4a10;
outline-offset: 2px;
}

.consentMiniBannerVisible {
display: flex;
}

@media (max-width: 1024px) {
.brandName {
font-size: 40px;
}

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

.primaryNav {
padding: 0 24px 40px;
}

.topStrip {
padding: 8px 24px;
}
}

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

.brandTagline {
display: none;
}

.brandRow {
padding: 24px 24px 24px;
justify-content: flex-start;
}

.primaryNav {
padding: 0 24px 24px;
gap: 8px;
}

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

.cookieCard {
right: 8px;
bottom: 8px;
width: calc(100vw - 16px);
border-radius: 22px;
}

.footerTopRow,
.footerBottomRow {
padding: 24px;
}

.consentMiniBanner {
right: 8px;
}
}

@media (max-width: 480px) {
.topStrip {
padding: 8px;
gap: 8px;
}

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

.brandRow {
padding: 24px 8px;
}

.primaryNav {
padding: 0 8px 24px;
}

.footerTopRow,
.footerBottomRow {
padding: 24px 8px;
}

.footerLegalLinks {
gap: 8px;
}
}

.terms-area {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
background: #FAFAF6;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
border-radius: 22px;
}

.terms-area p {
font-size: 16px;
line-height: 1.9;
color: #2c2c2c;
margin-bottom: 24px;
}

.terms-area strong,
.terms-area b {
font-weight: 700;
color: #1e2a00;
}

.terms-area a {
color: #6a7e1f;
text-decoration: underline;
text-underline-offset: 3px;
text-decoration-thickness: 1px;
transition: color 0.28s ease-in-out, text-decoration-color 0.28s ease-in-out;
}

.terms-area a:hover {
color: #AFC94F;
text-decoration-color: #AFC94F;
}

.terms-area hr {
border: none;
border-top: 2px solid #CAE1BA;
margin: 40px 0;
border-radius: 0px;
}

.terms-area div {
margin-bottom: 24px;
}

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

@media (max-width: 768px) {
.terms-area {
padding: 40px 24px;
border-radius: 10px;
}

.terms-area p {
font-size: 15px;
line-height: 1.6;
}
}

@media (max-width: 480px) {
.terms-area {
padding: 24px 8px;
border-radius: 0px;
}

.terms-area p {
font-size: 15px;
line-height: 1.6;
margin-bottom: 24px;
}

.terms-area hr {
margin: 24px 0;
}
}

.blogDet {
background: #FAFAF6;
overflow-x: clip;
}

.blogDet .titleArea {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
display: grid;
grid-template-columns: 1fr 340px;
gap: 80px;
align-items: center;
position: relative;
}

.blogDet .titleArea::before {
content: "∑";
position: absolute;
right: 360px;
top: -40px;
font-size: 420px;
color: #AFC94F;
opacity: 0.05;
line-height: 1.1;
pointer-events: none;
z-index: 0;
overflow: hidden;
}

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

.blogDet .titleLeft {
position: relative;
z-index: 1;
}

.blogDet .titleMeta {
display: flex;
flex-direction: row;
align-items: center;
gap: 24px;
margin-bottom: 24px;
}

.blogDet .tagChip {
background: #AFC94F;
color: #2a2a2a;
font-size: 15px;
font-weight: 700;
padding: 8px 24px;
border-radius: 22px;
display: inline-block;
line-height: 1.3;
}

.blogDet .catChip {
background: transparent;
color: #AFC94F;
font-size: 15px;
font-weight: 600;
border: 2px solid #AFC94F;
padding: 6px 24px;
border-radius: 22px;
display: inline-block;
line-height: 1.3;
}

.blogDet .titleH1 {
font-size: 58px;
font-weight: 800;
line-height: 1.1;
color: #1e2a0e;
margin: 0 0 24px 0;
}

.blogDet .subTitleText {
font-size: 23px;
font-weight: 300;
line-height: 1.6;
color: #3a4a20;
margin: 0 0 40px 0;
}

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

.blogDet .readItem {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 15px;
color: #556030;
line-height: 1.3;
}

.blogDet .readIcon {
width: 18px;
height: 18px;
flex-shrink: 0;
}

.blogDet .titleRight {
position: relative;
z-index: 1;
}

.blogDet .heroImgWrap {
border-radius: 22px;
overflow: hidden;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.blogDet .heroImgWrap img {
width: 100%;
display: block;
filter: grayscale(100%);
object-fit: cover;
aspect-ratio: 3/4;
transition: filter 0.38s cubic-bezier(0.4, 0, 0.2, 1);
}

.blogDet .heroImgWrap:hover img {
filter: grayscale(40%);
}

.blogDet .stripeDivider {
height: 6px;
background: repeating-linear-gradient(90deg,
#AFC94F 0px,
#AFC94F 2px,
transparent 2px,
transparent 18px);
max-width: 1600px;
margin: 0 auto;
}

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

.blogDet .articleBody {
background: #fff;
border-radius: 22px;
padding: 40px;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
box-shadow: inset 0 2px 8px rgba(175, 201, 79, 0.07), -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
}

.blogDet .articleBody p {
font-size: 16px;
line-height: 1.9;
color: #2e3a18;
margin: 0 0 24px 0;
}

.blogDet .articleBody p:first-of-type::first-letter {
font-size: 58px;
font-weight: 800;
color: #AFC94F;
float: left;
line-height: 1.1;
margin-right: 8px;
margin-top: 4px;
}

.blogDet .articleBody h2 {
font-size: 23px;
font-weight: 800;
line-height: 1.3;
color: #1e2a0e;
margin: 40px 0 24px 0;
border-bottom: 2px solid #CAE1BA;
padding-bottom: 8px;
}

.blogDet .articleBody h3 {
font-size: 16px;
font-weight: 700;
line-height: 1.6;
color: #3a4a20;
margin: 24px 0 8px 0;
text-transform: uppercase;
letter-spacing: 0.04em;
}

.blogDet .articleBody mark {
background: #CAE1BA;
color: #1e2a0e;
border-radius: 0px;
padding: 0 4px;
}

.blogDet .articleBody strong {
color: #1e2a0e;
font-weight: 700;
}

.blogDet .articleBody ul {
margin: 0 0 24px 0;
padding: 0;
list-style: none;
}

.blogDet .articleBody ul li {
font-size: 16px;
line-height: 1.9;
color: #2e3a18;
padding-left: 24px;
position: relative;
margin-bottom: 8px;
}

.blogDet .articleBody ul li::before {
content: "";
position: absolute;
left: 0;
top: 10px;
width: 10px;
height: 10px;
border-radius: 0px;
background: #AFC94F;
transform: rotate(45deg);
}

.blogDet .articleBody blockquote {
border-left: 4px solid #AFC94F;
border-top: 1px solid #CAE1BA;
border-bottom: 1px solid #CAE1BA;
background: #FAFAF6;
border-radius: 10px;
padding: 24px 40px;
margin: 40px 0;
font-size: 23px;
font-weight: 300;
line-height: 1.6;
color: #3a4a20;
}

.blogDet .articleBody blockquote cite {
display: block;
font-size: 15px;
color: #AFC94F;
font-style: normal;
font-weight: 700;
margin-top: 8px;
}

.blogDet .articleBody table {
width: 100%;
border-collapse: collapse;
margin: 24px 0 40px 0;
font-size: 15px;
}

.blogDet .articleBody table tr:nth-child(even) {
background: #FAFAF6;
}

.blogDet .articleBody table td {
padding: 8px 24px;
border: 1px solid #CAE1BA;
color: #2e3a18;
line-height: 1.6;
}

.blogDet .articleBody table tr:first-child td {
background: #AFC94F;
color: #1e2a0e;
font-weight: 700;
}

.blogDet .sideCol {
display: flex;
flex-direction: column;
gap: 40px;
position: sticky;
top: 40px;
}

.blogDet .sideCard {
background: #fff;
border-radius: 22px;
padding: 40px;
box-shadow: -1px 3px 6px -1px rgba(175, 201, 79, 0.05), inset 0 1px 4px rgba(175, 201, 79, 0.06);
}

.blogDet .sideCardTitle {
font-size: 15px;
font-weight: 700;
color: #AFC94F;
text-transform: uppercase;
letter-spacing: 0.06em;
margin: 0 0 24px 0;
line-height: 1.3;
}

.blogDet .authorBlock {
display: flex;
flex-direction: column;
gap: 8px;
}

.blogDet .authorName {
font-size: 16px;
font-weight: 700;
color: #1e2a0e;
line-height: 1.3;
}

.blogDet .authorDate {
font-size: 15px;
color: #556030;
line-height: 1.6;
}

.blogDet .statRow {
display: flex;
flex-direction: row;
gap: 24px;
margin-top: 8px;
}

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

.blogDet .statNum {
font-size: 23px;
font-weight: 800;
color: #AFC94F;
line-height: 1.1;
}

.blogDet .statLabel {
font-size: 15px;
color: #556030;
line-height: 1.3;
}

.blogDet .pollCard {
background: #1e2a0e;
border-radius: 22px;
padding: 40px;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
position: relative;
overflow: hidden;
}

.blogDet .pollCard::before {
content: "";
position: absolute;
inset: 0;
background: repeating-linear-gradient(180deg,
rgba(175, 201, 79, 0.04) 0px,
rgba(175, 201, 79, 0.04) 1px,
transparent 1px,
transparent 14px);
pointer-events: none;
}

.blogDet .pollTitle {
font-size: 16px;
font-weight: 700;
color: #CAE1BA;
margin: 0 0 24px 0;
line-height: 1.3;
position: relative;
z-index: 1;
}

.blogDet .pollForm {
display: flex;
flex-direction: column;
gap: 8px;
position: relative;
z-index: 1;
}

.blogDet .pollOpt {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
cursor: pointer;
}

.blogDet .pollOpt input[type="radio"] {
appearance: none;
-webkit-appearance: none;
width: 20px;
height: 20px;
border-radius: 38px;
border: 2px solid #AFC94F !important;
background: transparent;
cursor: pointer;
flex-shrink: 0;
transition: background 0.28s ease-in-out;
}

.blogDet .pollOpt input[type="radio"]:checked {
background: #AFC94F;
box-shadow: 0 0 0 3px rgba(175, 201, 79, 0.25);
}

.blogDet .pollOpt .pollLabel {
font-size: 15px;
color: #FAFAF6;
line-height: 1.6;
cursor: pointer;
transition: color 0.25s ease-in-out;
}

.blogDet .pollOpt input[type="radio"]:checked+.pollLabel {
color: #AFC94F;
font-weight: 700;
}

.blogDet .printBtn {
display: inline-block;
background: transparent;
color: #AFC94F;
border: 2px solid #AFC94F;
border-radius: 10px;
padding: 8px 24px;
font-size: 15px;
font-weight: 700;
cursor: pointer;
line-height: 1.6;
transition: background 0.28s cubic-bezier(0.4, 0, 0.2, 1), color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
width: 100%;
text-align: center;
}

.blogDet .printBtn:hover,
.blogDet .printBtn:focus {
background: #AFC94F;
color: #1e2a0e;
outline: none;
}

.blogDet .printBtn:active {
background: #8fa83a;
border-color: #8fa83a;
color: #1e2a0e;
}

.blogDet .darkBand {
background: #0f1a04;
position: relative;
overflow: hidden;
}

.blogDet .darkBand::before {
content: "";
position: absolute;
inset: 0;
background: repeating-linear-gradient(180deg,
rgba(175, 201, 79, 0.05) 0px,
rgba(175, 201, 79, 0.05) 1px,
transparent 1px,
transparent 12px);
pointer-events: none;
}

.blogDet .darkBandInner {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 40px;
position: relative;
z-index: 1;
}

.blogDet .metricBox {
border-radius: 22px;
border: 1px solid rgba(175, 201, 79, 0.2);
padding: 40px;
background: rgba(175, 201, 79, 0.05);
animation: subtlePulse 5s ease-in-out infinite alternate;
}

.blogDet .metricBox:nth-child(2) {
animation-delay: 1.5s;
}

.blogDet .metricBox:nth-child(3) {
animation-delay: 3s;
}

@keyframes subtlePulse {
from {
background: rgba(175, 201, 79, 0.05);
}

to {
background: rgba(175, 201, 79, 0.10);
}
}

.blogDet .metricNum {
font-size: 58px;
font-weight: 800;
color: #AFC94F;
line-height: 1.1;
margin-bottom: 8px;
}

.blogDet .metricDesc {
font-size: 16px;
color: #CAE1BA;
line-height: 1.6;
}

.blogDet .metricLabel {
font-size: 15px;
color: rgba(202, 225, 186, 0.6);
line-height: 1.3;
margin-bottom: 8px;
text-transform: uppercase;
letter-spacing: 0.05em;
}

.blogDet .svgIcon {
display: inline-block;
vertical-align: middle;
}

.blogDet .iconRotate {
animation: iconSpin 0.7s cubic-bezier(0.4, 0, 0.2, 1) 0.5s 1 forwards;
transform-origin: center;
}

@keyframes iconSpin {
0% {
transform: rotate(0deg);
}

70% {
transform: rotate(380deg);
}

85% {
transform: rotate(350deg);
}

100% {
transform: rotate(360deg);
}
}

.blogDet .lineDivider {
height: 2px;
background: linear-gradient(90deg, transparent, #AFC94F, transparent);
max-width: 1600px;
margin: 0 auto;
}

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

.blogDet .ctaLeft {
padding-right: 40px;
}

.blogDet .ctaHeading {
font-size: 23px;
font-weight: 800;
color: #1e2a0e;
line-height: 1.3;
margin: 0 0 24px 0;
}

.blogDet .ctaText {
font-size: 16px;
color: #3a4a20;
line-height: 1.9;
margin: 0 0 24px 0;
}

.blogDet .ctaLink {
display: inline-block;
background: #AFC94F;
color: #1e2a0e;
border-radius: 10px;
padding: 8px 40px;
font-size: 16px;
font-weight: 700;
text-decoration: none;
line-height: 1.6;
border: 2px solid #AFC94F;
transition: background 0.35s cubic-bezier(0.4, 0, 0.2, 1), color 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.blogDet .ctaLink:hover,
.blogDet .ctaLink:focus {
background: transparent;
color: #AFC94F;
outline: none;
}

.blogDet .ctaRight {
background: #FAFAF6;
border-radius: 22px;
padding: 40px;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10), inset 0 2px 6px rgba(175, 201, 79, 0.07);
}

.blogDet .contactForm {
display: flex;
flex-direction: column;
gap: 24px;
}

.blogDet .formField {
display: flex;
flex-direction: column;
gap: 8px;
}

.blogDet .formLabel {
font-size: 15px;
font-weight: 700;
color: #1e2a0e;
line-height: 1.3;
}

.blogDet .formInput,
.blogDet .formTextarea {
border: 2px solid #CAE1BA;
border-radius: 10px;
padding: 8px 24px;
font-size: 16px;
color: #1e2a0e;
background: #fff;
line-height: 1.6;
outline: none;
transition: border-color 0.28s ease-in-out, box-shadow 0.28s ease-in-out;
}

.blogDet .formInput::placeholder,
.blogDet .formTextarea::placeholder {
color: #8fa83a;
opacity: 1;
transition: opacity 0.35s ease-in-out;
}

.blogDet .formInput:focus::placeholder,
.blogDet .formTextarea:focus::placeholder {
opacity: 0;
}

.blogDet .formInput:focus,
.blogDet .formTextarea:focus {
border-color: #AFC94F;
box-shadow: -1px 3px 6px -1px rgba(175, 201, 79, 0.05);
}

.blogDet .formTextarea {
resize: vertical;
min-height: 120px;
}

.blogDet .formSubmit {
background: #1e2a0e;
color: #AFC94F;
border: 2px solid #1e2a0e;
border-radius: 10px;
padding: 8px 40px;
font-size: 16px;
font-weight: 700;
cursor: pointer;
line-height: 1.6;
transition: background 0.32s cubic-bezier(0.4, 0, 0.2, 1), color 0.32s cubic-bezier(0.4, 0, 0.2, 1);
}

.blogDet .formSubmit:hover,
.blogDet .formSubmit:focus {
background: #AFC94F;
color: #1e2a0e;
border-color: #AFC94F;
outline: none;
}

@media (max-width: 1024px) {
.blogDet .titleArea {
grid-template-columns: 1fr;
gap: 40px;
padding: 40px 24px;
}

.blogDet .titleH1 {
font-size: 23px;
}

.blogDet .titleRight {
display: none;
}

.blogDet .articleArea {
grid-template-columns: 1fr;
padding: 40px 24px;
gap: 40px;
}

.blogDet .sideCol {
position: static;
}

.blogDet .darkBandInner {
grid-template-columns: 1fr;
padding: 40px 24px;
}

.blogDet .ctaArea {
grid-template-columns: 1fr;
padding: 40px 24px;
}

.blogDet .ctaLeft {
padding-right: 0;
}
}

@media (max-width: 768px) {
.blogDet .titleArea {
padding: 24px 24px;
}

.blogDet .titleH1 {
font-size: 23px;
}

.blogDet .subTitleText {
font-size: 16px;
}

.blogDet .articleBody {
padding: 24px;
}

.blogDet .articleBody p:first-of-type::first-letter {
font-size: 23px;
}

.blogDet .sideCard,
.blogDet .pollCard {
padding: 24px;
}

.blogDet .metricNum {
font-size: 23px;
}
}

@media (max-width: 480px) {

.blogDet .titleArea,
.blogDet .articleArea,
.blogDet .darkBandInner,
.blogDet .ctaArea {
padding: 24px 8px;
}

.blogDet .readBar {
flex-direction: column;
align-items: flex-start;
gap: 8px;
}

.blogDet .statRow {
flex-direction: column;
gap: 8px;
}
}

.abtAuth {
background: #FAFAF6;
overflow-x: clip;
position: relative;
}

.abtAuth .titleZone {
background: #2a2e1a;
padding: 80px 40px 40px;
position: relative;
overflow: hidden;
}

.abtAuth .titleZone .tZoneInner {
max-width: 1600px;
margin: 0 auto;
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start;
position: relative;
z-index: 2;
}

.abtAuth .titleZone .tImgCol {
flex: 0 0 340px;
position: relative;
}

.abtAuth .titleZone .tImgCol .tImgFrame {
width: 340px;
height: 340px;
border-radius: 10px;
overflow: hidden;
position: relative;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.abtAuth .titleZone .tImgCol .tImgFrame img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.abtAuth .titleZone .tImgCol .tImgFrame::after {
content: "";
position: absolute;
inset: 0;
background: rgba(175, 201, 79, 0.18);
pointer-events: none;
}

.abtAuth .titleZone .tTextCol {
flex: 1;
position: relative;
}

.abtAuth .titleZone .tQuoteMark {
position: absolute;
top: -24px;
left: -8px;
font-size: 200px;
line-height: 1.1;
color: rgba(175, 201, 79, 0.08);
pointer-events: none;
user-select: none;
font-weight: 900;
z-index: 0;
}

.abtAuth .titleZone .tTextCol .tLabel {
font-size: 15px;
line-height: 1.6;
color: #AFC94F;
letter-spacing: 0.08em;
text-transform: uppercase;
margin-bottom: 24px;
position: relative;
z-index: 1;
}

.abtAuth .titleZone .tTextCol h1 {
font-size: 58px;
line-height: 1.1;
color: #FAFAF6;
font-weight: 700;
margin: 0 0 8px;
position: relative;
z-index: 1;
}

.abtAuth .titleZone .tTextCol .tSubName {
font-size: 23px;
line-height: 1.3;
color: #CAE1BA;
font-weight: 300;
margin: 0 0 40px;
position: relative;
z-index: 1;
}

.abtAuth .titleZone .tTextCol .tAccentLine {
width: 80px;
height: 3px;
background: #AFC94F;
border-radius: 0px;
margin-bottom: 24px;
position: relative;
z-index: 1;
}

.abtAuth .titleZone .tTextCol .tProblem {
font-size: 16px;
line-height: 1.6;
color: rgba(250, 250, 246, 0.75);
margin: 0 0 24px;
position: relative;
z-index: 1;
}

.abtAuth .titleZone .tTextCol .tSolution {
font-size: 16px;
line-height: 1.6;
color: rgba(250, 250, 246, 0.95);
position: relative;
z-index: 1;
margin: 0;
}

.abtAuth .titleZone .tCornerTri {
position: absolute;
top: 0;
right: 0;
width: 0;
height: 0;
border-top: 80px solid rgba(175, 201, 79, 0.12);
border-left: 80px solid transparent;
pointer-events: none;
}

.abtAuth .titleZone .tCornerTriBl {
position: absolute;
bottom: 0;
left: 0;
width: 0;
height: 0;
border-bottom: 60px solid rgba(202, 225, 186, 0.07);
border-right: 60px solid transparent;
pointer-events: none;
}

.abtAuth .waveDiv {
position: relative;
height: 60px;
overflow: hidden;
background: #2a2e1a;
}

.abtAuth .waveDiv svg {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
}

.abtAuth .bioZone {
background: #FAFAF6;
padding: 80px 40px;
border-left: 6px solid #AFC94F;
position: relative;
}

.abtAuth .bioZone .bioInner {
max-width: 1600px;
margin: 0 auto;
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start;
}

.abtAuth .bioZone .bioSidebar {
flex: 0 0 260px;
display: flex;
flex-direction: column;
gap: 40px;
}

.abtAuth .bioZone .bioSideCard {
background: #fff;
border-radius: 10px;
padding: 24px;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
border-top: 3px solid #AFC94F;
}

.abtAuth .bioZone .bioSideCard .bscLabel {
font-size: 15px;
line-height: 1.6;
color: #AFC94F;
text-transform: uppercase;
letter-spacing: 0.06em;
margin-bottom: 8px;
font-weight: 600;
}

.abtAuth .bioZone .bioSideCard .bscVal {
font-size: 16px;
line-height: 1.6;
color: #2a2e1a;
}

.abtAuth .bioZone .bioSideCard .bscList {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 8px;
}

.abtAuth .bioZone .bioSideCard .bscList li {
font-size: 15px;
line-height: 1.6;
color: #2a2e1a;
padding-left: 16px;
position: relative;
}

.abtAuth .bioZone .bioSideCard .bscList li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 7px;
height: 7px;
border-radius: 0px;
background: #AFC94F;
transform: rotate(45deg);
}

.abtAuth .bioZone .bioMain {
flex: 1;
}

.abtAuth .bioZone .bioMain h2 {
font-size: 23px;
line-height: 1.3;
color: #2a2e1a;
font-weight: 700;
margin: 0 0 8px;
}

.abtAuth .bioZone .bioMain .bmAccentLine {
width: 60px;
height: 2px;
background: #AFC94F;
border-radius: 0px;
margin-bottom: 24px;
}

.abtAuth .bioZone .bioMain .bmIntro {
font-size: 23px;
line-height: 1.6;
color: #2a2e1a;
font-weight: 300;
margin: 0 0 40px;
padding-bottom: 40px;
border-bottom: 1px solid #CAE1BA;
}

.abtAuth .bioZone .bioMain .bmIntro::first-letter {
font-size: 58px;
line-height: 1.1;
color: #AFC94F;
font-weight: 700;
float: left;
margin-right: 8px;
margin-top: 4px;
}

.abtAuth .bioZone .bioMain .bmDetail {
display: flex;
flex-direction: column;
gap: 24px;
}

.abtAuth .bioZone .bioMain .bmDetail p {
font-size: 16px;
line-height: 1.9;
color: #3a3e2a;
margin: 0;
}

.abtAuth .bioZone .bioMain .bmImgFloat {
float: right;
margin: 0 0 24px 40px;
width: 260px;
height: 260px;
border-radius: 10px;
overflow: hidden;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.abtAuth .bioZone .bioMain .bmImgFloat img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.abtAuth .bioZone .bioMain .bmImgFloat::after {
content: "";
display: block;
}

.abtAuth .waveDivGreen {
position: relative;
height: 60px;
overflow: hidden;
background: #FAFAF6;
}

.abtAuth .waveDivGreen svg {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 100%;
}

.abtAuth .timelineZone {
background: #2a2e1a;
padding: 80px 40px;
position: relative;
overflow: hidden;
}

.abtAuth .timelineZone .tzCornerTri {
position: absolute;
top: 0;
left: 0;
width: 0;
height: 0;
border-top: 70px solid rgba(175, 201, 79, 0.1);
border-right: 70px solid transparent;
pointer-events: none;
}

.abtAuth .timelineZone .tzCornerTriBr {
position: absolute;
bottom: 0;
right: 0;
width: 0;
height: 0;
border-bottom: 90px solid rgba(202, 225, 186, 0.06);
border-left: 90px solid transparent;
pointer-events: none;
}

.abtAuth .timelineZone .tzInner {
max-width: 1600px;
margin: 0 auto;
position: relative;
z-index: 2;
}

.abtAuth .timelineZone .tzHead {
margin-bottom: 80px;
}

.abtAuth .timelineZone .tzHead h2 {
font-size: 23px;
line-height: 1.3;
color: #FAFAF6;
font-weight: 700;
margin: 0 0 8px;
}

.abtAuth .timelineZone .tzHead .tzAccentLine {
width: 60px;
height: 2px;
background: #AFC94F;
margin-bottom: 24px;
}

.abtAuth .timelineZone .tzHead p {
font-size: 16px;
line-height: 1.6;
color: rgba(250, 250, 246, 0.7);
margin: 0;
max-width: 600px;
}

.abtAuth .timelineZone .tzGroups {
display: flex;
flex-direction: column;
gap: 80px;
}

.abtAuth .timelineZone .tzGroup {
display: flex;
flex-direction: row;
gap: 40px;
}

.abtAuth .timelineZone .tzGroupLabel {
flex: 0 0 160px;
display: flex;
flex-direction: column;
align-items: flex-end;
padding-top: 8px;
}

.abtAuth .timelineZone .tzGroupLabel .tzPeriod {
font-size: 15px;
line-height: 1.3;
color: #AFC94F;
font-weight: 700;
text-align: right;
text-transform: uppercase;
letter-spacing: 0.06em;
}

.abtAuth .timelineZone .tzGroupLine {
flex: 0 0 2px;
background: rgba(175, 201, 79, 0.3);
border-radius: 0px;
position: relative;
}

.abtAuth .timelineZone .tzGroupLine::before {
content: "";
position: absolute;
top: 8px;
left: 50%;
transform: translateX(-50%);
width: 12px;
height: 12px;
background: #AFC94F;
border-radius: 0px;
rotate: 45deg;
}

.abtAuth .timelineZone .tzEvents {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
}

.abtAuth .timelineZone .tzEvent {
background: rgba(255, 255, 255, 0.04);
border-radius: 10px;
padding: 24px;
border-left: 3px solid rgba(175, 201, 79, 0.4);
border-right: 1px solid rgba(202, 225, 186, 0.08);
border-top: 1px solid rgba(202, 225, 186, 0.08);
border-bottom: 1px solid rgba(202, 225, 186, 0.08);
box-shadow: inset 0 2px 8px rgba(175, 201, 79, 0.04);
transition: background 0.28s cubic-bezier(0.4, 0, 0.2, 1), border-left-color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
cursor: default;
}

.abtAuth .timelineZone .tzEvent:active {
background: rgba(175, 201, 79, 0.12);
border-left-color: #AFC94F;
}

.abtAuth .timelineZone .tzEvent h4 {
font-size: 16px;
line-height: 1.3;
color: #CAE1BA;
font-weight: 700;
margin: 0 0 8px;
}

.abtAuth .timelineZone .tzEvent p {
font-size: 15px;
line-height: 1.6;
color: rgba(250, 250, 246, 0.65);
margin: 0;
}

.abtAuth .timelineZone .tzImgRow {
display: flex;
flex-direction: row;
gap: 24px;
margin-top: 80px;
}

.abtAuth .timelineZone .tzImgBox {
flex: 1;
height: 240px;
border-radius: 10px;
overflow: hidden;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.abtAuth .timelineZone .tzImgBox img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform 0.38s ease-in-out;
}

.abtAuth .timelineZone .tzImgBox:hover img {
transform: scale(1.04);
}

.abtAuth .contrastAnim {
animation: contrastBreath 5s ease-in-out infinite;
}

@keyframes contrastBreath {

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

50% {
filter: contrast(1.08);
}
}

@media (max-width: 1024px) {
.abtAuth .titleZone .tZoneInner {
gap: 40px;
}

.abtAuth .titleZone .tImgCol {
flex: 0 0 260px;
}

.abtAuth .titleZone .tImgCol .tImgFrame {
width: 260px;
height: 260px;
}

.abtAuth .bioZone .bioInner {
gap: 40px;
}

.abtAuth .bioZone .bioSidebar {
flex: 0 0 200px;
}

.abtAuth .timelineZone .tzGroup {
gap: 24px;
}

.abtAuth .timelineZone .tzGroupLabel {
flex: 0 0 120px;
}
}

@media (max-width: 768px) {
.abtAuth .titleZone {
padding: 80px 24px 40px;
}

.abtAuth .titleZone .tZoneInner {
flex-direction: column;
gap: 40px;
}

.abtAuth .titleZone .tImgCol {
flex: 0 0 auto;
}

.abtAuth .titleZone .tImgCol .tImgFrame {
width: 100%;
height: 240px;
}

.abtAuth .titleZone .tTextCol h1 {
font-size: 23px;
}

.abtAuth .titleZone .tTextCol .tSubName {
font-size: 16px;
}

.abtAuth .bioZone {
padding: 40px 24px;
}

.abtAuth .bioZone .bioInner {
flex-direction: column;
gap: 40px;
}

.abtAuth .bioZone .bioSidebar {
flex: 0 0 auto;
flex-direction: row;
flex-wrap: wrap;
}

.abtAuth .bioZone .bioSideCard {
flex: 1 1 200px;
}

.abtAuth .bioZone .bioMain .bmImgFloat {
float: none;
margin: 0 0 24px 0;
width: 100%;
height: 200px;
}

.abtAuth .timelineZone {
padding: 40px 24px;
}

.abtAuth .timelineZone .tzGroup {
flex-direction: column;
gap: 24px;
}

.abtAuth .timelineZone .tzGroupLabel {
flex: 0 0 auto;
align-items: flex-start;
}

.abtAuth .timelineZone .tzGroupLine {
display: none;
}

.abtAuth .timelineZone .tzImgRow {
flex-direction: column;
}

.abtAuth .timelineZone .tzImgBox {
height: 180px;
}
}

@media (max-width: 480px) {
.abtAuth .titleZone {
padding: 40px 24px 24px;
}

.abtAuth .titleZone .tTextCol h1 {
font-size: 23px;
}

.abtAuth .bioZone .bioMain .bmIntro {
font-size: 16px;
}

.abtAuth .bioZone .bioMain .bmIntro::first-letter {
font-size: 40px;
}

.abtAuth .timelineZone .tzGroups {
gap: 40px;
}
}

.ld {
background: #FAFAF6;
overflow-x: clip;
}

.ld .postlist-row {
display: flex;
flex-direction: row;
gap: 24px;
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
}

.ld .postcard {
flex: 1;
background: #fff;
border-radius: 22px;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
overflow: hidden;
display: flex;
flex-direction: column;
transition: box-shadow 0.28s ease-in-out;
}

.ld .postcard:hover {
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.ld .postcard-img {
width: 100%;
height: 200px;
object-fit: cover;
display: block;
}

.ld .postcard-body {
padding: 24px;
display: flex;
flex-direction: column;
gap: 8px;
flex: 1;
}

.ld .postcard-tag {
display: inline-block;
background: #AFC94F;
color: #fff;
font-size: 15px;
line-height: 1.3;
padding: 4px 12px;
border-radius: 10px;
font-weight: 600;
align-self: flex-start;
}

.ld .postcard-title {
font-size: 16px;
font-weight: 700;
line-height: 1.3;
color: #2a2d1e;
margin: 0;
}

.ld .postcard-sub {
font-size: 15px;
line-height: 1.6;
color: #4a5230;
margin: 0;
}

.ld .postcard-desc {
font-size: 15px;
line-height: 1.6;
color: #5a5e42;
margin: 0;
}

.ld .postcard-meta {
display: flex;
flex-direction: row;
gap: 8px;
align-items: center;
flex-wrap: wrap;
margin-top: 8px;
}

.ld .postcard-author {
font-size: 15px;
color: #7a8050;
line-height: 1.3;
}

.ld .postcard-readtime {
font-size: 15px;
color: #AFC94F;
font-weight: 600;
line-height: 1.3;
}

.ld .postcard-link {
display: inline-block;
margin-top: 8px;
padding: 8px 24px;
background: #AFC94F;
color: #fff;
border-radius: 10px;
font-size: 15px;
font-weight: 600;
text-decoration: none;
align-self: flex-start;
transition: background 0.26s cubic-bezier(0.4, 0, 0.2, 1);
}

.ld .postcard-link:hover {
background: #8fa83a;
color: #fff;
}

.ld .titleblock {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px 40px;
display: flex;
flex-direction: row;
gap: 40px;
align-items: stretch;
position: relative;
}

.ld .titleblock-imgstrip {
width: 200px;
min-width: 200px;
border-radius: 22px;
overflow: hidden;
position: relative;
flex-shrink: 0;
}

.ld .titleblock-imgstrip img {
width: 200px;
height: 100%;
object-fit: cover;
display: block;
filter: brightness(0.85) saturate(1.1);
}

.ld .titleblock-imgstrip-overlay {
position: absolute;
inset: 0;
background: rgba(175, 201, 79, 0.28);
border-radius: 22px;
pointer-events: none;
}

.ld .titleblock-shapes {
position: absolute;
left: 220px;
top: 40px;
width: 40px;
height: 40px;
pointer-events: none;
}

.ld .titleblock-shape-dot {
width: 16px;
height: 16px;
border-radius: 38px;
background: #AFC94F;
opacity: 0.5;
position: absolute;
top: 0;
left: 0;
}

.ld .titleblock-shape-line {
width: 4px;
height: 32px;
background: #CAE1BA;
border-radius: 10px;
position: absolute;
top: 20px;
left: 6px;
}

.ld .titleblock-text {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
justify-content: center;
}

.ld .titleblock-label {
font-size: 15px;
color: #AFC94F;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
line-height: 1.3;
}

.ld .titleblock-h1 {
font-size: 58px;
line-height: 1.1;
color: #2a2d1e;
margin: 0;
font-weight: 800;
}

.ld .titleblock-h1 span {
color: #AFC94F;
}

.ld .titleblock-lead {
font-size: 16px;
line-height: 1.6;
color: #4a5230;
max-width: 600px;
margin: 0;
}

.ld .titleblock-lead::first-letter {
font-size: 23px;
font-weight: 700;
color: #AFC94F;
line-height: 1.1;
float: left;
margin-right: 4px;
}

.ld .titleblock-cta {
display: inline-block;
padding: 8px 40px;
background: #2a2d1e;
color: #AFC94F;
border-radius: 22px;
font-size: 16px;
font-weight: 700;
text-decoration: none;
align-self: flex-start;
transition: background 0.35s cubic-bezier(0.4, 0, 0.2, 1), color 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.ld .titleblock-cta:hover {
background: #AFC94F;
color: #fff;
}

.ld .attentionblock {
background: linear-gradient(175deg, #CAE1BA 0%, #FAFAF6 100%);
padding: 80px 0;
}

.ld .attentionblock-inner {
max-width: 1600px;
margin: 0 auto;
padding: 0 40px;
display: flex;
flex-direction: row;
gap: 80px;
align-items: center;
}

.ld .attentionblock-left {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
}

.ld .attentionblock-prefix {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
}

.ld .attentionblock-prefix-shape {
width: 22px;
height: 6px;
background: #AFC94F;
border-radius: 10px;
display: inline-block;
}

.ld .attentionblock-h2 {
font-size: 23px;
font-weight: 800;
color: #2a2d1e;
margin: 0;
line-height: 1.3;
}

.ld .attentionblock-body {
font-size: 15px;
line-height: 1.9;
color: #3d4228;
margin: 0;
}

.ld .attentionblock-body::first-letter {
font-size: 23px;
font-weight: 700;
color: #AFC94F;
float: left;
margin-right: 4px;
line-height: 1.1;
}

.ld .attentionblock-right {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
}

.ld .attentionblock-stat {
background: #fff;
border-radius: 22px;
padding: 24px;
box-shadow: -1px 3px 6px -1px rgba(175, 201, 79, 0.05);
display: flex;
flex-direction: row;
gap: 24px;
align-items: center;
border-left: 4px solid #AFC94F;
border-top: 1px solid #CAE1BA;
transition: box-shadow 0.32s ease-in-out;
}

.ld .attentionblock-stat:hover {
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.ld .attentionblock-stat-icon {
width: 40px;
height: 40px;
flex-shrink: 0;
}

.ld .attentionblock-stat-text {
display: flex;
flex-direction: column;
gap: 8px;
}

.ld .attentionblock-stat-num {
font-size: 23px;
font-weight: 800;
color: #AFC94F;
line-height: 1.1;
}

.ld .attentionblock-stat-label {
font-size: 15px;
color: #4a5230;
line-height: 1.3;
}

.ld .convblock {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
display: flex;
flex-direction: row;
gap: 40px;
align-items: flex-start;
}

.ld .convblock-sidebar {
width: 320px;
min-width: 320px;
background: #2a2d1e;
border-radius: 22px;
padding: 40px 24px;
display: flex;
flex-direction: column;
gap: 24px;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.ld .convblock-sidebar-h {
font-size: 23px;
font-weight: 800;
color: #AFC94F;
line-height: 1.3;
margin: 0;
}

.ld .convblock-sidebar-body {
font-size: 15px;
color: #CAE1BA;
line-height: 1.9;
margin: 0;
}

.ld .convblock-sidebar-email {
display: inline-block;
color: #AFC94F;
font-size: 15px;
font-weight: 700;
text-decoration: none;
word-break: break-all;
transition: color 0.26s ease-in-out;
}

.ld .convblock-sidebar-email:hover {
color: #CAE1BA;
}

.ld .convblock-form {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
}

.ld .convblock-form-h {
font-size: 23px;
font-weight: 300;
color: #2a2d1e;
margin: 0;
line-height: 1.3;
}

.ld .convblock-form-row {
display: flex;
flex-direction: row;
gap: 24px;
}

.ld .convblock-field {
display: flex;
flex-direction: column;
gap: 8px;
flex: 1;
}

.ld .convblock-label {
font-size: 15px;
color: #4a5230;
font-weight: 600;
line-height: 1.3;
}

.ld .convblock-input {
padding: 8px 24px;
border: 1.5px solid #CAE1BA;
border-radius: 10px;
font-size: 15px;
color: #2a2d1e;
background: #fff;
outline: none;
line-height: 1.6;
transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}

.ld .convblock-input::placeholder {
color: #b0b88a;
transition: opacity 0.35s ease-in-out;
}

.ld .convblock-input:focus::placeholder {
opacity: 0;
}

.ld .convblock-input:focus {
border-color: #AFC94F;
}

.ld .convblock-textarea {
padding: 8px 24px;
border: 1.5px solid #CAE1BA;
border-radius: 10px;
font-size: 15px;
color: #2a2d1e;
background: #fff;
outline: none;
line-height: 1.6;
resize: vertical;
min-height: 120px;
transition: border-color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}

.ld .convblock-textarea::placeholder {
color: #b0b88a;
transition: opacity 0.35s ease-in-out;
}

.ld .convblock-textarea:focus::placeholder {
opacity: 0;
}

.ld .convblock-textarea:focus {
border-color: #AFC94F;
}

.ld .convblock-submit {
align-self: flex-start;
padding: 8px 40px;
background: #AFC94F;
color: #fff;
border: none;
border-radius: 10px;
font-size: 16px;
font-weight: 700;
cursor: pointer;
transition: background 0.26s cubic-bezier(0.4, 0, 0.2, 1);
}

.ld .convblock-submit:hover {
background: #8fa83a;
}

.ld .convblock-submit:focus {
outline: 2px solid #AFC94F;
outline-offset: 3px;
}

.ld .underratedblock {
background: #2a2d1e;
padding: 80px 0;
}

.ld .underratedblock-inner {
max-width: 1600px;
margin: 0 auto;
padding: 0 40px;
display: flex;
flex-direction: column;
gap: 40px;
}

.ld .underratedblock-heading {
display: flex;
flex-direction: row;
align-items: center;
gap: 24px;
}

.ld .underratedblock-bracket {
font-size: 58px;
color: #AFC94F;
font-weight: 300;
line-height: 1.1;
user-select: none;
}

.ld .underratedblock-h2 {
font-size: 23px;
font-weight: 800;
color: #FAFAF6;
margin: 0;
line-height: 1.3;
}

.ld .underratedblock-grid {
display: flex;
flex-direction: row;
gap: 24px;
}

.ld .underratedblock-item {
flex: 1;
background: rgba(202, 225, 186, 0.07);
border-radius: 22px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 8px;
border-top: 2px solid rgba(175, 201, 79, 0.3);
border-right: 1px solid rgba(202, 225, 186, 0.1);
transition: background 0.32s ease-in-out, border-top-color 0.32s ease-in-out;
}

.ld .underratedblock-item:hover {
background: rgba(175, 201, 79, 0.13);
border-top-color: #AFC94F;
}

.ld .underratedblock-item-tag {
font-size: 15px;
color: #AFC94F;
font-weight: 700;
line-height: 1.3;
}

.ld .underratedblock-item-title {
font-size: 16px;
font-weight: 700;
color: #FAFAF6;
line-height: 1.3;
margin: 0;
}

.ld .underratedblock-item-why {
font-size: 15px;
color: #CAE1BA;
line-height: 1.6;
margin: 0;
}

.ld .underratedblock-item-link {
display: inline-block;
margin-top: 8px;
font-size: 15px;
color: #AFC94F;
font-weight: 600;
text-decoration: none;
align-self: flex-start;
transition: color 0.26s ease-in-out;
}

.ld .underratedblock-item-link:hover {
color: #CAE1BA;
}

.ld .groupblock {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
}

.ld .groupblock-top {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
margin-bottom: 40px;
}

.ld .groupblock-prefix-shape {
width: 10px;
height: 10px;
background: #AFC94F;
border-radius: 0px;
transform: rotate(45deg);
display: inline-block;
flex-shrink: 0;
}

.ld .groupblock-h2 {
font-size: 23px;
font-weight: 300;
color: #2a2d1e;
margin: 0;
line-height: 1.3;
}

.ld .groupblock-clusters {
display: flex;
flex-direction: row;
gap: 24px;
flex-wrap: wrap;
}

.ld .groupblock-cluster {
flex: 1;
min-width: 220px;
border-radius: 22px;
padding: 24px;
background: #fff;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
display: flex;
flex-direction: column;
gap: 8px;
transition: box-shadow 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.ld .groupblock-cluster:hover {
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.ld .groupblock-cluster-icon {
width: 36px;
height: 36px;
flex-shrink: 0;
}

.ld .groupblock-cluster-name {
font-size: 16px;
font-weight: 700;
color: #2a2d1e;
margin: 0;
line-height: 1.3;
}

.ld .groupblock-cluster-desc {
font-size: 15px;
color: #5a5e42;
line-height: 1.6;
margin: 0;
}

.ld .groupblock-cluster-link {
display: inline-block;
margin-top: 8px;
font-size: 15px;
color: #AFC94F;
font-weight: 700;
text-decoration: none;
transition: color 0.26s ease-in-out;
}

.ld .groupblock-cluster-link:hover {
color: #2a2d1e;
}

.ld .connectionsblock {
background: linear-gradient(168deg, #AFC94F 0%, #CAE1BA 100%);
padding: 80px 0;
}

.ld .connectionsblock-inner {
max-width: 1600px;
margin: 0 auto;
padding: 0 40px;
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start;
}

.ld .connectionsblock-left {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
}

.ld .connectionsblock-h2 {
font-size: 23px;
font-weight: 800;
color: #2a2d1e;
margin: 0;
line-height: 1.3;
}

.ld .connectionsblock-intro {
font-size: 15px;
line-height: 1.9;
color: #2a2d1e;
margin: 0;
}

.ld .connectionsblock-intro::first-letter {
font-size: 23px;
font-weight: 700;
color: #2a2d1e;
float: left;
margin-right: 4px;
line-height: 1.1;
}

.ld .connectionsblock-right {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
}

.ld .connectionsblock-pair {
background: rgba(255, 255, 255, 0.72);
border-radius: 22px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: -1px 3px 6px -1px rgba(175, 201, 79, 0.05);
transition: background 0.32s ease-in-out;
}

.ld .connectionsblock-pair:hover {
background: rgba(255, 255, 255, 0.95);
}

.ld .connectionsblock-pair-topics {
display: flex;
flex-direction: row;
gap: 8px;
align-items: center;
}

.ld .connectionsblock-pair-topic {
font-size: 15px;
font-weight: 700;
color: #2a2d1e;
background: rgba(175, 201, 79, 0.22);
border-radius: 10px;
padding: 4px 12px;
line-height: 1.3;
}

.ld .connectionsblock-pair-arrow {
width: 20px;
height: 2px;
background: #2a2d1e;
border-radius: 10px;
position: relative;
flex-shrink: 0;
}

.ld .connectionsblock-pair-connection {
font-size: 15px;
color: #3d4228;
line-height: 1.6;
margin: 0;
}

.ld .rhythmblock {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start;
}

.ld .rhythmblock-left {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
}

.ld .rhythmblock-prefix {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
}

.ld .rhythmblock-prefix-shape {
width: 18px;
height: 18px;
border-radius: 0px;
background: #AFC94F;
display: inline-block;
flex-shrink: 0;
}

.ld .rhythmblock-h2 {
font-size: 23px;
font-weight: 800;
color: #2a2d1e;
margin: 0;
line-height: 1.3;
}

.ld .rhythmblock-body {
font-size: 15px;
line-height: 1.9;
color: #4a5230;
margin: 0;
}

.ld .rhythmblock-body::first-letter {
font-size: 23px;
font-weight: 700;
color: #AFC94F;
float: left;
margin-right: 4px;
line-height: 1.1;
}

.ld .rhythmblock-right {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
}

.ld .rhythmblock-upcoming-h {
font-size: 16px;
font-weight: 700;
color: #2a2d1e;
margin: 0;
line-height: 1.3;
}

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

.ld .rhythmblock-upcoming-item {
display: flex;
flex-direction: row;
gap: 8px;
align-items: flex-start;
padding: 8px 24px;
background: #fff;
border-radius: 10px;
box-shadow: -1px 3px 6px -1px rgba(175, 201, 79, 0.05);
border-left: 3px solid #AFC94F;
border-top: 1px solid #CAE1BA;
transition: box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}

.ld .rhythmblock-upcoming-item:hover {
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
}

.ld .rhythmblock-upcoming-bullet {
width: 8px;
height: 8px;
border-radius: 38px;
background: #AFC94F;
flex-shrink: 0;
margin-top: 6px;
}

.ld .rhythmblock-upcoming-text {
font-size: 15px;
color: #3d4228;
line-height: 1.6;
}

.ld .rhythmblock-img {
width: 100%;
border-radius: 22px;
object-fit: cover;
display: block;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.ld .postlist-heading {
max-width: 1600px;
margin: 0 auto;
padding: 0 40px;
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
}

.ld .postlist-heading-shape {
width: 22px;
height: 22px;
border-radius: 38px;
background: #AFC94F;
flex-shrink: 0;
}

.ld .postlist-heading-h2 {
font-size: 23px;
font-weight: 800;
color: #2a2d1e;
margin: 0;
line-height: 1.3;
}

.ld .postlist-section {
background: #FAFAF6;
}

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

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

.ld .postcard:nth-child(1) {
animation: rowreveal 0.38s cubic-bezier(0.4, 0, 0.2, 1) 0.05s both;
}

.ld .postcard:nth-child(2) {
animation: rowreveal 0.38s cubic-bezier(0.4, 0, 0.2, 1) 0.13s both;
}

.ld .postcard:nth-child(3) {
animation: rowreveal 0.38s cubic-bezier(0.4, 0, 0.2, 1) 0.21s both;
}

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

.ld .titleblock-imgstrip {
width: 100%;
min-width: unset;
height: 220px;
}

.ld .titleblock-imgstrip img {
width: 100%;
height: 220px;
}

.ld .titleblock-h1 {
font-size: 40px;
}

.ld .attentionblock-inner {
flex-direction: column;
gap: 40px;
}

.ld .convblock {
flex-direction: column;
}

.ld .convblock-sidebar {
width: 100%;
min-width: unset;
}

.ld .connectionsblock-inner {
flex-direction: column;
gap: 40px;
}

.ld .rhythmblock {
flex-direction: column;
gap: 40px;
}

.ld .underratedblock-grid {
flex-direction: column;
}

.ld .groupblock-clusters {
flex-direction: column;
}

.ld .postlist-row {
flex-direction: column;
}
}

@media (max-width: 768px) {
.ld .titleblock {
padding: 40px 24px 24px;
}

.ld .titleblock-h1 {
font-size: 30px;
}

.ld .attentionblock {
padding: 40px 0;
}

.ld .attentionblock-inner {
padding: 0 24px;
}

.ld .convblock {
padding: 40px 24px;
}

.ld .convblock-form-row {
flex-direction: column;
}

.ld .underratedblock-inner {
padding: 0 24px;
}

.ld .groupblock {
padding: 40px 24px;
}

.ld .connectionsblock-inner {
padding: 0 24px;
}

.ld .rhythmblock {
padding: 40px 24px;
}

.ld .postlist-row {
padding: 40px 24px;
}

.ld .postlist-heading {
padding: 0 24px;
}
}

@media (max-width: 480px) {
.ld .titleblock-h1 {
font-size: 23px;
}

.ld .attentionblock-stat {
flex-direction: column;
align-items: flex-start;
}

.ld .connectionsblock-pair-topics {
flex-wrap: wrap;
}
}

.srvs {
background: #FAFAF6;
overflow-x: clip;
}

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

.srvs .bento-cell {
border-radius: 22px;
overflow: hidden;
position: relative;
}

.srvs .bento-cell.tag {
background: #AFC94F;
padding: 24px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 22px;
}

.srvs .bento-tag-text {
font-size: 15px;
color: #2a2a2a;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
}

.srvs .bento-cell.imgcell {
border-radius: 22px;
overflow: hidden;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
position: relative;
}

.srvs .bento-cell.imgcell::after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 40%;
height: 40%;
background: radial-gradient(ellipse at 0% 0%, rgba(250, 250, 246, 0.72) 0%, rgba(250, 250, 246, 0) 70%);
pointer-events: none;
border-radius: 22px 0 0 0;
}

.srvs .bento-img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
min-height: 260px;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.srvs .bento-cell.textcell {
background: #fff;
padding: 40px;
border-radius: 22px;
box-shadow: -1px 3px 6px -1px rgba(175, 201, 79, 0.05);
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
}

.srvs .bento-cell.textcell::before {
content: '';
position: absolute;
left: 0;
top: 24px;
bottom: 24px;
width: 3px;
background: linear-gradient(180deg, #AFC94F 0%, #CAE1BA 100%);
border-radius: 0px 10px 10px 0px;
}

.srvs .bento-cell.textcell .pagetitle {
font-size: 58px;
line-height: 1.1;
font-weight: 800;
color: #232323;
margin: 0 0 24px 0;
}

.srvs .bento-cell.textcell .pagelead {
font-size: 16px;
line-height: 1.6;
color: #3a3a3a;
margin: 0 0 24px 0;
}

.srvs .bento-cell.textcell .pagelead .dropcap {
font-size: 23px;
font-weight: 800;
color: #AFC94F;
float: left;
line-height: 1.1;
margin-right: 8px;
margin-top: 2px;
}

.srvs .bento-cell.textcell .sublead {
font-size: 15px;
line-height: 1.6;
color: #555;
margin: 0;
}

.srvs .bento-cell.patternstrip {
background: #FAFAF6;
border: 1.5px solid #CAE1BA;
border-radius: 22px;
padding: 24px;
display: flex;
flex-direction: row;
align-items: center;
gap: 24px;
flex-wrap: wrap;
}

.srvs .pattern-dot {
width: 8px;
height: 8px;
border-radius: 38px;
background: #AFC94F;
flex-shrink: 0;
opacity: 0.7;
}

.srvs .pattern-dot.light {
background: #CAE1BA;
width: 6px;
height: 6px;
}

.srvs .pattern-label {
font-size: 15px;
color: #3a3a3a;
font-weight: 600;
}

.srvs .divider-arrows {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 8px;
padding: 8px 40px;
max-width: 1600px;
margin: 0 auto;
}

.srvs .arr {
width: 0;
height: 0;
border-top: 7px solid transparent;
border-bottom: 7px solid transparent;
border-left: 11px solid #CAE1BA;
opacity: 0.7;
}

.srvs .arr.dark {
border-left-color: #AFC94F;
opacity: 1;
}

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

.srvs .offerings-aside {
position: sticky;
top: 40px;
}

.srvs .aside-label {
font-size: 15px;
color: #AFC94F;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.08em;
margin: 0 0 24px 0;
}

.srvs .aside-heading {
font-size: 23px;
line-height: 1.3;
font-weight: 800;
color: #232323;
margin: 0 0 24px 0;
}

.srvs .aside-body {
font-size: 15px;
line-height: 1.6;
color: #555;
margin: 0 0 24px 0;
}

.srvs .aside-img {
width: 100%;
height: auto;
object-fit: cover;
border-radius: 22px;
display: block;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.srvs .offerings-list {
display: flex;
flex-direction: column;
gap: 24px;
}

.srvs .offering-item {
background: #fff;
border-radius: 22px;
padding: 40px;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
position: relative;
cursor: default;
transition: box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1), transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
overflow: hidden;
}

.srvs .offering-item:hover {
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
transform: translateY(-2px);
}

.srvs .offering-item::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(90deg, #AFC94F 0%, #CAE1BA 100%);
border-radius: 22px 22px 0 0;
}

.srvs .offering-num {
font-size: 58px;
line-height: 1.1;
font-weight: 800;
color: #CAE1BA;
position: absolute;
right: 40px;
top: 24px;
pointer-events: none;
user-select: none;
}

.srvs .offering-title {
font-size: 23px;
line-height: 1.3;
font-weight: 800;
color: #232323;
margin: 0 0 24px 0;
}

.srvs .offering-body {
font-size: 16px;
line-height: 1.6;
color: #3a3a3a;
margin: 0 0 24px 0;
}

.srvs .offering-detail {
font-size: 15px;
line-height: 1.6;
color: #555;
margin: 0;
}

.srvs .offering-tags {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
margin-top: 24px;
}

.srvs .otag {
font-size: 15px;
color: #3a3a3a;
background: #FAFAF6;
border: 1.5px solid #CAE1BA;
border-radius: 10px;
padding: 8px 24px;
font-weight: 600;
transition: background 0.25s ease-in-out, border-color 0.25s ease-in-out;
}

.srvs .offering-item:hover .otag {
background: #CAE1BA;
border-color: #AFC94F;
}

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

.srvs .divider-line-bar {
flex: 1;
height: 1.5px;
background: linear-gradient(90deg, #AFC94F 0%, #CAE1BA 60%, transparent 100%);
border-radius: 10px;
}

.srvs .divider-line-dot {
width: 10px;
height: 10px;
border-radius: 38px;
background: #AFC94F;
flex-shrink: 0;
}

.srvs .imgbg-band {
position: relative;
overflow: hidden;
}

.srvs .imgbg-photo {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
z-index: 0;
opacity: 0.18;
filter: grayscale(30%);
}

.srvs .imgbg-overlay {
position: absolute;
inset: 0;
background: linear-gradient(160deg, rgba(250, 250, 246, 0.97) 0%, rgba(202, 225, 186, 0.82) 100%);
z-index: 1;
pointer-events: none;
}

.srvs .imgbg-inner {
position: relative;
z-index: 2;
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 24px;
}

.srvs .metric-card {
background: rgba(255, 255, 255, 0.82);
border-radius: 22px;
padding: 40px 24px;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 8px;
position: relative;
border-top: 3px solid #AFC94F;
transition: box-shadow 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

.srvs .metric-card:hover {
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.srvs .metric-icon {
width: 36px;
height: 36px;
margin-bottom: 8px;
flex-shrink: 0;
}

.srvs .metric-val {
font-size: 58px;
line-height: 1.1;
font-weight: 800;
color: #AFC94F;
margin: 0;
}

.srvs .metric-label {
font-size: 16px;
line-height: 1.3;
font-weight: 700;
color: #232323;
margin: 0;
}

.srvs .metric-desc {
font-size: 15px;
line-height: 1.6;
color: #555;
margin: 0;
}

.srvs .diagonal-deco {
position: absolute;
top: 0;
right: 0;
width: 60%;
height: 100%;
pointer-events: none;
overflow: hidden;
border-radius: 0 22px 22px 0;
}

.srvs .diagonal-deco::before {
content: '';
position: absolute;
top: -20px;
right: -20px;
width: 2px;
height: 140%;
background: linear-gradient(180deg, #AFC94F 0%, transparent 100%);
transform: rotate(18deg);
transform-origin: top right;
opacity: 0.18;
}

.srvs .approach-band {
max-width: 1600px;
margin: 0 auto;
padding: 80px 40px;
}

.srvs .approach-top {
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 40px;
margin-bottom: 40px;
}

.srvs .approach-heading {
font-size: 23px;
line-height: 1.3;
font-weight: 800;
color: #232323;
margin: 0;
flex: 1;
position: relative;
padding-left: 24px;
}

.srvs .approach-heading::before {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 3px;
background: linear-gradient(180deg, #AFC94F 0%, #CAE1BA 100%);
border-radius: 10px;
}

.srvs .approach-sub {
font-size: 15px;
line-height: 1.6;
color: #555;
flex: 1;
margin: 0;
}

.srvs .steps-row {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px;
}

.srvs .step-card {
background: #fff;
border-radius: 22px;
padding: 24px;
box-shadow: -1px 3px 6px -1px rgba(175, 201, 79, 0.05);
position: relative;
display: flex;
flex-direction: column;
gap: 8px;
border-bottom: 3px solid #CAE1BA;
transition: border-color 0.25s ease-in-out, box-shadow 0.25s ease-in-out;
}

.srvs .step-card:hover {
border-color: #AFC94F;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
}

.srvs .step-num {
font-size: 15px;
font-weight: 800;
color: #AFC94F;
margin: 0;
text-transform: uppercase;
letter-spacing: 0.08em;
}

.srvs .step-title {
font-size: 16px;
line-height: 1.3;
font-weight: 700;
color: #232323;
margin: 0;
}

.srvs .step-body {
font-size: 15px;
line-height: 1.6;
color: #555;
margin: 0;
}

.srvs .step-card .flip-face {
display: none;
}

.srvs .step-card:hover .flip-face {
display: flex;
flex-direction: column;
gap: 8px;
}

.srvs .step-card:hover .step-body {
display: none;
}

.srvs .flip-detail {
font-size: 15px;
line-height: 1.6;
color: #3a3a3a;
margin: 0;
font-style: italic;
}

.srvs .flip-tag {
display: inline-block;
font-size: 15px;
font-weight: 700;
color: #fff;
background: #AFC94F;
border-radius: 10px;
padding: 8px 24px;
margin-top: 8px;
align-self: flex-start;
}

.srvs .fade-in {
opacity: 0;
animation: srvsReveal 0.38s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.srvs .fade-in.d1 {
animation-delay: 0.08s;
}

.srvs .fade-in.d2 {
animation-delay: 0.18s;
}

.srvs .fade-in.d3 {
animation-delay: 0.28s;
}

.srvs .fade-in.d4 {
animation-delay: 0.38s;
}

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

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

@media (max-width: 1024px) {
.srvs .bento-grid {
grid-template-columns: 1fr;
padding: 40px 24px;
}

.srvs .offerings {
grid-template-columns: 1fr;
padding: 40px 24px;
}

.srvs .offerings-aside {
position: static;
}

.srvs .imgbg-inner {
grid-template-columns: 1fr 1fr;
padding: 40px 24px;
}

.srvs .steps-row {
grid-template-columns: 1fr 1fr;
}

.srvs .approach-band {
padding: 40px 24px;
}

.srvs .approach-top {
flex-direction: column;
gap: 24px;
}
}

@media (max-width: 768px) {
.srvs .bento-cell.textcell .pagetitle {
font-size: 23px;
}

.srvs .imgbg-inner {
grid-template-columns: 1fr;
padding: 40px 24px;
}

.srvs .steps-row {
grid-template-columns: 1fr;
}

.srvs .bento-cell.textcell {
padding: 24px;
}

.srvs .offering-item {
padding: 24px;
}

.srvs .offering-num {
font-size: 23px;
right: 24px;
}
}

@media (max-width: 480px) {
.srvs .bento-grid {
padding: 24px 8px;
gap: 8px;
}

.srvs .offerings {
padding: 24px 8px;
gap: 8px;
}

.srvs .approach-band {
padding: 24px 8px;
}

.srvs .imgbg-inner {
padding: 24px 8px;
}

.srvs .divider-arrows {
padding: 8px 8px;
}

.srvs .divider-line {
padding: 0 8px;
}
}

.philntr {
background: #FAFAF6;
overflow-x: clip;
}

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

.philntr .splitscreen {
display: flex;
flex-direction: row;
max-width: 1600px;
margin: 0 auto;
}

.philntr .splitscreen .leftpanel {
background: #AFC94F;
flex: 1;
padding: 80px 40px 80px 80px;
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
}

.philntr .splitscreen .leftpanel::after {
content: '';
display: block;
position: absolute;
top: 40px;
bottom: 40px;
right: 0;
width: 3px;
background: #FAFAF6;
opacity: 0.4;
}

.philntr .splitscreen .rightpanel {
background: #CAE1BA;
flex: 1;
padding: 80px 80px 80px 40px;
display: flex;
flex-direction: column;
justify-content: center;
}

.philntr .splitscreen .leftpanel .pagelabel {
font-size: 15px;
line-height: 1.3;
color: #2d3a0e;
text-transform: uppercase;
letter-spacing: 0.08em;
margin-bottom: 24px;
font-weight: 600;
}

.philntr .splitscreen .leftpanel .mainhead {
font-size: 58px;
line-height: 1.1;
color: #1e2a06;
font-weight: 800;
margin: 0 0 24px 0;
}

.philntr .splitscreen .leftpanel .tagline {
font-size: 16px;
line-height: 1.6;
color: #2d3a0e;
margin: 0 0 40px 0;
max-width: 420px;
}

.philntr .splitscreen .leftpanel .actionlinks {
display: flex;
flex-direction: row;
gap: 24px;
flex-wrap: wrap;
}

.philntr .splitscreen .leftpanel .actionlinks .primarylink {
display: inline-block;
padding: 24px 40px;
background: #1e2a06;
color: #FAFAF6;
font-size: 15px;
line-height: 1.3;
font-weight: 600;
border-radius: 10px;
text-decoration: none;
border: 2px solid #1e2a06;
transition: background 0.28s cubic-bezier(0.4, 0, 0.2, 1), color 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}

.philntr .splitscreen .leftpanel .actionlinks .primarylink:hover {
background: transparent;
color: #1e2a06;
}

.philntr .splitscreen .leftpanel .actionlinks .secondarylink {
display: inline-block;
padding: 24px 40px;
background: transparent;
color: #1e2a06;
font-size: 15px;
line-height: 1.3;
font-weight: 600;
border-radius: 10px;
text-decoration: none;
border: 2px solid #1e2a06;
transition: background 0.35s ease-in-out, color 0.35s ease-in-out;
}

.philntr .splitscreen .leftpanel .actionlinks .secondarylink:hover {
background: #1e2a06;
color: #FAFAF6;
}

.philntr .splitscreen .rightpanel .imgwrap {
width: 100%;
border-radius: 22px;
overflow: hidden;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.philntr .splitscreen .rightpanel .imgwrap img {
width: 100%;
height: 480px;
object-fit: cover;
object-position: center 30%;
display: block;
filter: grayscale(100%);
transition: filter 0.38s ease-in-out;
}

.philntr .splitscreen .rightpanel .imgwrap:hover img {
filter: grayscale(0%);
}

.philntr .dividerline {
display: flex;
flex-direction: row;
align-items: center;
max-width: 1600px;
margin: 0 auto;
padding: 0 80px;
}

.philntr .dividerline .lineleft,
.philntr .dividerline .lineright {
flex: 1;
height: 1px;
background: #AFC94F;
opacity: 0.4;
}

.philntr .dividerline .ornament {
width: 40px;
height: 40px;
margin: 0 24px;
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
}

.philntr .dividerline .ornament svg {
display: block;
}

.philntr .statstrip {
background: #1e2a06;
padding: 80px 0;
}

.philntr .statstrip .stripinner {
max-width: 1600px;
margin: 0 auto;
padding: 0 80px;
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 40px;
}

.philntr .statstrip .statitem {
display: flex;
flex-direction: column;
gap: 8px;
padding: 40px 24px;
border-radius: 22px;
background: rgba(175, 201, 79, 0.08);
box-shadow: inset -1px 3px 6px -1px rgba(175, 201, 79, 0.05);
transition: background 0.32s cubic-bezier(0.4, 0, 0.2, 1);
}

.philntr .statstrip .statitem:hover {
background: rgba(175, 201, 79, 0.16);
}

.philntr .statstrip .statitem .statnum {
font-size: 58px;
line-height: 1.1;
font-weight: 800;
color: #AFC94F;
}

.philntr .statstrip .statitem .statlabel {
font-size: 15px;
line-height: 1.6;
color: #CAE1BA;
font-weight: 500;
}

.philntr .statstrip .statitem .statdesc {
font-size: 15px;
line-height: 1.6;
color: rgba(202, 225, 186, 0.6);
}

.philntr .honeyarea {
padding: 80px 0;
position: relative;
overflow: hidden;
}

.philntr .honeyarea::before {
content: '';
position: absolute;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='100'%3E%3Cpolygon points='28,2 54,16 54,44 28,58 2,44 2,16' fill='none' stroke='%23AFC94F' stroke-width='1' opacity='0.12'/%3E%3Cpolygon points='28,52 54,66 54,94 28,108 2,94 2,66' fill='none' stroke='%23AFC94F' stroke-width='1' opacity='0.12'/%3E%3C/svg%3E");
background-size: 56px 100px;
pointer-events: none;
}

.philntr .honeyarea .honeyinner {
max-width: 1600px;
margin: 0 auto;
padding: 0 80px;
position: relative;
}

.philntr .honeyarea .honeyinner .areatoprow {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 80px;
margin-bottom: 80px;
}

.philntr .honeyarea .honeyinner .areatoprow .areaheadcol {
flex: 0 0 400px;
}

.philntr .honeyarea .honeyinner .areatoprow .areaheadcol .areahead {
font-size: 23px;
line-height: 1.3;
font-weight: 800;
color: #1e2a06;
margin: 0 0 24px 0;
}

.philntr .honeyarea .honeyinner .areatoprow .areaheadcol .areasubhead {
font-size: 15px;
line-height: 1.9;
color: #3a4d12;
font-weight: 400;
}

.philntr .honeyarea .honeyinner .areatoprow .areaheadcol .areasubhead::first-letter {
font-size: 23px;
line-height: 1.1;
font-weight: 800;
color: #AFC94F;
float: left;
margin-right: 4px;
margin-top: 2px;
}

.philntr .honeyarea .honeyinner .areatoprow .areacardscol {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
}

.philntr .honeyarea .honeyinner .areatoprow .areacardscol .areacard {
background: #FAFAF6;
border-radius: 22px;
padding: 40px;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
border-top: 3px solid #AFC94F;
border-right: 1px solid rgba(175, 201, 79, 0.2);
transition: box-shadow 0.26s cubic-bezier(0.4, 0, 0.2, 1);
}

.philntr .honeyarea .honeyinner .areatoprow .areacardscol .areacard:hover {
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.philntr .honeyarea .honeyinner .areatoprow .areacardscol .areacard .cardtitle {
font-size: 16px;
line-height: 1.3;
font-weight: 700;
color: #1e2a06;
margin: 0 0 8px 0;
}

.philntr .honeyarea .honeyinner .areatoprow .areacardscol .areacard .cardtext {
font-size: 15px;
line-height: 1.6;
color: #3a4d12;
margin: 0;
}

.philntr .honeyarea .honeyinner .emptyspacezone {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 40px;
align-items: start;
}

.philntr .honeyarea .honeyinner .emptyspacezone .quotepillar {
grid-column: 1 / 2;
padding: 40px;
background: #AFC94F;
border-radius: 22px;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
}

.philntr .honeyarea .honeyinner .emptyspacezone .quotepillar .quotetext {
font-size: 16px;
line-height: 1.9;
color: #1e2a06;
font-weight: 600;
margin: 0 0 24px 0;
}

.philntr .honeyarea .honeyinner .emptyspacezone .quotepillar .quoteauthor {
font-size: 15px;
line-height: 1.3;
color: #2d3a0e;
font-weight: 400;
}

.philntr .honeyarea .honeyinner .emptyspacezone .voidcol {
grid-column: 2 / 3;
min-height: 200px;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
gap: 24px;
}

.philntr .honeyarea .honeyinner .emptyspacezone .voidcol .voidline {
width: 1px;
height: 80px;
background: linear-gradient(to bottom, #AFC94F, transparent);
}

.philntr .honeyarea .honeyinner .emptyspacezone .voidcol .voidlabel {
font-size: 15px;
line-height: 1.6;
color: rgba(175, 201, 79, 0.6);
text-align: center;
writing-mode: horizontal-tb;
}

.philntr .honeyarea .honeyinner .emptyspacezone .voidcol .voidlinebot {
width: 1px;
height: 80px;
background: linear-gradient(to top, #AFC94F, transparent);
}

.philntr .honeyarea .honeyinner .emptyspacezone .partnerpillar {
grid-column: 3 / 4;
display: flex;
flex-direction: column;
gap: 24px;
}

.philntr .honeyarea .honeyinner .emptyspacezone .partnerpillar .partnertag {
padding: 24px 40px;
background: #CAE1BA;
border-radius: 10px;
font-size: 15px;
line-height: 1.6;
color: #1e2a06;
font-weight: 600;
box-shadow: -1px 3px 6px -1px rgba(175, 201, 79, 0.05);
transition: background 0.29s ease-in-out;
}

.philntr .honeyarea .honeyinner .emptyspacezone .partnerpillar .partnertag:hover {
background: #AFC94F;
}

.philntr .closingrow {
background: linear-gradient(170deg, #AFC94F 0%, #d4e08a 100%);
padding: 80px 0;
}

.philntr .closingrow .closinginner {
max-width: 1600px;
margin: 0 auto;
padding: 0 80px;
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start;
}

.philntr .closingrow .closinginner .closingleft {
flex: 1;
}

.philntr .closingrow .closinginner .closingleft .closinghead {
font-size: 23px;
line-height: 1.3;
font-weight: 800;
color: #1e2a06;
margin: 0 0 24px 0;
}

.philntr .closingrow .closinginner .closingleft .closingtext {
font-size: 16px;
line-height: 1.9;
color: #2d3a0e;
margin: 0 0 24px 0;
}

.philntr .closingrow .closinginner .closingleft .closingtext::first-letter {
font-size: 23px;
line-height: 1.1;
font-weight: 800;
color: #1e2a06;
float: left;
margin-right: 4px;
margin-top: 2px;
}

.philntr .closingrow .closinginner .closingleft .closingsubtext {
font-size: 15px;
line-height: 1.6;
color: #2d3a0e;
margin: 0;
}

.philntr .closingrow .closinginner .closingright {
flex: 0 0 400px;
display: flex;
flex-direction: column;
gap: 24px;
}

.philntr .closingrow .closinginner .closingright .contactcard {
background: #1e2a06;
border-radius: 22px;
padding: 40px;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.philntr .closingrow .closinginner .closingright .contactcard .contactlabel {
font-size: 15px;
line-height: 1.3;
color: #AFC94F;
font-weight: 600;
text-transform: uppercase;
margin-bottom: 8px;
}

.philntr .closingrow .closinginner .closingright .contactcard .contactval {
font-size: 16px;
line-height: 1.6;
color: #FAFAF6;
font-weight: 400;
text-decoration: none;
display: block;
transition: color 0.27s ease-in-out;
}

.philntr .closingrow .closinginner .closingright .contactcard .contactval:hover {
color: #CAE1BA;
}

.philntr .closingrow .closinginner .closingright .initiativelist {
display: flex;
flex-direction: column;
gap: 8px;
}

.philntr .closingrow .closinginner .closingright .initiativelist .inititem {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
padding: 8px 0;
}

.philntr .closingrow .closinginner .closingright .initiativelist .inititem .initbullet {
width: 10px;
height: 10px;
border-radius: 0px;
background: #1e2a06;
flex-shrink: 0;
margin-top: 5px;
transform: rotate(45deg);
}

.philntr .closingrow .closinginner .closingright .initiativelist .inititem .inittext {
font-size: 15px;
line-height: 1.6;
color: #1e2a06;
font-weight: 600;
}

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

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

.philntr .splitscreen .leftpanel {
animation: rowreveal 0.38s cubic-bezier(0.4, 0, 0.2, 1) 0.05s both;
}

.philntr .splitscreen .rightpanel {
animation: rowreveal 0.38s cubic-bezier(0.4, 0, 0.2, 1) 0.15s both;
}

.philntr .statstrip .statitem:nth-child(1) {
animation: rowreveal 0.35s cubic-bezier(0.4, 0, 0.2, 1) 0.1s both;
}

.philntr .statstrip .statitem:nth-child(2) {
animation: rowreveal 0.35s cubic-bezier(0.4, 0, 0.2, 1) 0.18s both;
}

.philntr .statstrip .statitem:nth-child(3) {
animation: rowreveal 0.35s cubic-bezier(0.4, 0, 0.2, 1) 0.26s both;
}

.philntr .statstrip .statitem:nth-child(4) {
animation: rowreveal 0.35s cubic-bezier(0.4, 0, 0.2, 1) 0.34s both;
}

@media (max-width: 1280px) {
.philntr .splitscreen .leftpanel {
padding: 80px 40px 80px 40px;
}

.philntr .splitscreen .rightpanel {
padding: 80px 40px 80px 40px;
}

.philntr .statstrip .stripinner {
grid-template-columns: repeat(2, 1fr);
padding: 0 40px;
}

.philntr .honeyarea .honeyinner {
padding: 0 40px;
}

.philntr .closingrow .closinginner {
padding: 0 40px;
}

.philntr .dividerline {
padding: 0 40px;
}
}

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

.philntr .splitscreen .leftpanel::after {
display: none;
}

.philntr .splitscreen .leftpanel {
padding: 80px 40px;
}

.philntr .splitscreen .rightpanel {
padding: 40px 40px 80px;
}

.philntr .honeyarea .honeyinner .areatoprow {
flex-direction: column;
gap: 40px;
}

.philntr .honeyarea .honeyinner .areatoprow .areaheadcol {
flex: none;
}

.philntr .honeyarea .honeyinner .emptyspacezone {
grid-template-columns: 1fr 1fr;
}

.philntr .honeyarea .honeyinner .emptyspacezone .voidcol {
display: none;
}

.philntr .honeyarea .honeyinner .emptyspacezone .partnerpillar {
grid-column: 2 / 3;
}

.philntr .closingrow .closinginner {
flex-direction: column;
}

.philntr .closingrow .closinginner .closingright {
flex: none;
width: 100%;
}
}

@media (max-width: 768px) {
.philntr .splitscreen .leftpanel .mainhead {
font-size: 40px;
}

.philntr .statstrip .stripinner {
grid-template-columns: 1fr;
padding: 0 24px;
}

.philntr .statstrip {
padding: 40px 0;
}

.philntr .honeyarea .honeyinner {
padding: 0 24px;
}

.philntr .honeyarea {
padding: 40px 0;
}

.philntr .honeyarea .honeyinner .emptyspacezone {
grid-template-columns: 1fr;
}

.philntr .honeyarea .honeyinner .emptyspacezone .partnerpillar {
grid-column: 1 / 2;
}

.philntr .closingrow .closinginner {
padding: 0 24px;
}

.philntr .closingrow {
padding: 40px 0;
}

.philntr .dividerline {
padding: 0 24px;
}

.philntr .splitscreen .leftpanel {
padding: 40px 24px;
}

.philntr .splitscreen .rightpanel {
padding: 24px 24px 40px;
}

.philntr .splitscreen .leftpanel .actionlinks {
flex-direction: column;
}
}

@media (max-width: 480px) {
.philntr .splitscreen .leftpanel .mainhead {
font-size: 32px;
}

.philntr .honeyarea .honeyinner .areatoprow .areacardscol .areacard {
padding: 24px;
}

.philntr .closingrow .closinginner .closingright .contactcard {
padding: 24px;
}
}

.blg {
background: #FAFAF6;
padding: 0;
overflow-x: clip;
}

.blg .pgTop {
background: #2a2e1e;
padding: 40px 24px 80px;
position: relative;
overflow: hidden;
}

.blg .pgTop::before {
content: '';
position: absolute;
top: -60px;
right: -60px;
width: 320px;
height: 320px;
border-radius: 50%;
border: 1px solid rgba(175, 201, 79, 0.12);
pointer-events: none;
}

.blg .pgTop::after {
content: '';
position: absolute;
bottom: 20px;
left: 10%;
width: 180px;
height: 180px;
border-radius: 50%;
border: 1px solid rgba(175, 201, 79, 0.08);
pointer-events: none;
}

.blg .pgTopCircle {
position: absolute;
top: 30px;
left: 5%;
width: 90px;
height: 90px;
border-radius: 50%;
border: 1px solid rgba(202, 225, 186, 0.1);
pointer-events: none;
}

.blg .pgTopInner {
max-width: 1600px;
margin: 0 auto;
position: relative;
z-index: 1;
}

.blg .pgTopLabel {
display: inline-block;
background: rgba(175, 201, 79, 0.18);
color: #AFC94F;
font-size: 15px;
line-height: 1.3;
padding: 8px 24px;
border-radius: 22px;
margin-bottom: 24px;
}

.blg .pgTopHeading {
font-size: 58px;
line-height: 1.1;
color: #FAFAF6;
font-weight: 700;
margin: 0 0 24px;
max-width: 700px;
}

.blg .pgTopSub {
font-size: 16px;
line-height: 1.6;
color: rgba(250, 250, 246, 0.7);
max-width: 520px;
margin: 0;
}

.blg .pgTopSub::first-letter {
font-size: 23px;
color: #AFC94F;
font-weight: 700;
line-height: 1.1;
}

.blg .dividerFade {
height: 2px;
background: linear-gradient(to right, transparent, #AFC94F, transparent);
margin: 0;
}

.blg .postsArea {
max-width: 1600px;
margin: 0 auto;
padding: 80px 24px;
}

.blg .postsGrid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 40px;
}

.blg .postCard {
background: #fff;
border-radius: 22px;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
overflow: hidden;
display: flex;
flex-direction: column;
transition: box-shadow 0.35s cubic-bezier(0.4, 0, 0.2, 1), transform 0.28s cubic-bezier(0.4, 0, 0.2, 1);
position: relative;
}

.blg .postCard:hover {
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
transform: translateY(-4px);
}

.blg .postCard::before {
content: '';
position: absolute;
inset: 0;
border-radius: 22px;
border: 2px solid transparent;
transition: border-color 0.28s ease-in-out;
pointer-events: none;
z-index: 2;
}

.blg .postCard:hover::before {
border-color: #AFC94F;
}

.blg .cardImgWrap {
width: 100%;
height: 200px;
overflow: hidden;
border-radius: 22px 22px 0 0;
flex-shrink: 0;
box-shadow: inset 0 -8px 24px -8px rgba(175, 201, 79, 0.13);
}

.blg .cardImgWrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: saturate(0.85) brightness(0.97);
transition: transform 0.38s cubic-bezier(0.4, 0, 0.2, 1);
}

.blg .postCard:hover .cardImgWrap img {
transform: scale(1.04);
}

.blg .cardBody {
padding: 24px;
display: flex;
flex-direction: column;
flex: 1;
box-shadow: inset 0 4px 12px -8px rgba(175, 201, 79, 0.08);
}

.blg .cardTagRow {
display: flex;
flex-direction: row;
gap: 8px;
flex-wrap: wrap;
margin-bottom: 8px;
}

.blg .cardTag {
font-size: 15px;
line-height: 1.3;
color: #AFC94F;
background: rgba(175, 201, 79, 0.1);
border-radius: 10px;
padding: 4px 12px;
font-weight: 600;
display: inline-block;
}

.blg .cardCatTag {
font-size: 15px;
line-height: 1.3;
color: #5a6e2a;
background: rgba(202, 225, 186, 0.3);
border-radius: 10px;
padding: 4px 12px;
display: inline-block;
}

.blg .cardTitle {
font-size: 16px;
line-height: 1.6;
font-weight: 700;
color: #1e2410;
margin: 8px 0 8px;
}

.blg .cardSubtitle {
font-size: 15px;
line-height: 1.6;
color: #4a5530;
margin: 0 0 8px;
font-weight: 400;
}

.blg .cardDesc {
font-size: 15px;
line-height: 1.6;
color: #5c6645;
margin: 0 0 24px;
flex: 1;
}

.blg .cardMeta {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
flex-wrap: wrap;
margin-bottom: 24px;
padding-top: 8px;
border-top: 1px solid rgba(175, 201, 79, 0.15);
}

.blg .cardAuthor {
font-size: 15px;
line-height: 1.3;
color: #3a4520;
font-weight: 600;
}

.blg .cardDot {
width: 4px;
height: 4px;
border-radius: 50%;
background: #AFC94F;
display: inline-block;
flex-shrink: 0;
}

.blg .cardDate {
font-size: 15px;
line-height: 1.3;
color: #7a8a55;
}

.blg .cardReadtime {
font-size: 15px;
line-height: 1.3;
color: #7a8a55;
margin-left: auto;
}

.blg .cardStats {
display: flex;
flex-direction: row;
gap: 24px;
margin-bottom: 24px;
}

.blg .cardStat {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 15px;
line-height: 1.3;
color: #7a8a55;
}

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

.blg .cardLink {
display: inline-block;
background: #AFC94F;
color: #1e2410 !important;
font-size: 15px;
line-height: 1.3;
font-weight: 700;
padding: 8px 24px;
border-radius: 10px;
text-decoration: none !important;
transition: background 0.25s ease-in-out, color 0.25s ease-in-out;
align-self: flex-start;
}

.blg .cardLink:hover {
background: #2a2e1e;
color: #AFC94F !important;
}

.blg .dividerSlant {
height: 3px;
background: linear-gradient(to right, transparent, #CAE1BA 30%, #AFC94F 50%, #CAE1BA 70%, transparent);
}

.blg .newsletterBand {
background: linear-gradient(170deg, #2a2e1e 0%, #3d4a22 100%);
padding: 80px 24px;
position: relative;
overflow: hidden;
}

.blg .newsletterBand::before {
content: '';
position: absolute;
top: -80px;
right: -40px;
width: 400px;
height: 400px;
border-radius: 50%;
border: 1px solid rgba(175, 201, 79, 0.1);
pointer-events: none;
}

.blg .newsletterBand::after {
content: '';
position: absolute;
bottom: -100px;
left: -60px;
width: 300px;
height: 300px;
border-radius: 50%;
border: 1px solid rgba(202, 225, 186, 0.08);
pointer-events: none;
}

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

.blg .newsletterText {
flex: 1;
}

.blg .newsletterHeading {
font-size: 23px;
line-height: 1.3;
color: #FAFAF6;
font-weight: 700;
margin: 0 0 8px;
}

.blg .newsletterDesc {
font-size: 16px;
line-height: 1.6;
color: rgba(250, 250, 246, 0.72);
margin: 0;
}

.blg .newsletterForm {
flex: 1;
display: flex;
flex-direction: row;
gap: 8px;
align-items: stretch;
}

.blg .newsletterInput {
flex: 1;
background: rgba(250, 250, 246, 0.08);
border: 1px solid rgba(175, 201, 79, 0.3);
border-radius: 10px;
padding: 8px 24px;
font-size: 16px;
line-height: 1.6;
color: #FAFAF6;
outline: none;
transition: border-color 0.28s ease-in-out, background 0.28s ease-in-out;
}

.blg .newsletterInput::placeholder {
color: rgba(250, 250, 246, 0.4);
transition: opacity 0.35s ease-in-out;
}

.blg .newsletterInput:focus::placeholder {
opacity: 0;
}

.blg .newsletterInput:focus {
border-color: #AFC94F;
background: rgba(250, 250, 246, 0.12);
}

.blg .newsletterBtn {
background: #AFC94F;
color: #1e2410;
font-size: 16px;
line-height: 1.3;
font-weight: 700;
padding: 8px 24px;
border-radius: 10px;
border: none;
cursor: pointer;
transition: background 0.25s cubic-bezier(0.4, 0, 0.2, 1), color 0.25s cubic-bezier(0.4, 0, 0.2, 1);
white-space: nowrap;
}

.blg .newsletterBtn:hover {
background: #FAFAF6;
color: #2a2e1e;
}

.blg .dividerFade2 {
height: 2px;
background: linear-gradient(to right, transparent, #CAE1BA, transparent);
}

.blg .editorialBand {
padding: 80px 24px;
background: #FAFAF6;
position: relative;
}

.blg .editorialBandTexture {
position: absolute;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23AFC94F' fill-opacity='0.04'%3E%3Ccircle cx='20' cy='20' r='1'/%3E%3C/g%3E%3C/svg%3E");
pointer-events: none;
}

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

.blg .editorialLeft {
flex: 0 0 420px;
position: relative;
}

.blg .editorialImgFrame {
border-radius: 22px;
overflow: hidden;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
border: 3px solid #CAE1BA;
}

.blg .editorialImgFrame img {
width: 100%;
height: 320px;
object-fit: cover;
display: block;
filter: saturate(0.9) brightness(0.95);
}

.blg .editorialImgCaption {
margin-top: 8px;
font-size: 15px;
line-height: 1.3;
color: #7a8a55;
text-align: center;
}

.blg .editorialRight {
flex: 1;
}

.blg .editorialLabel {
display: inline-block;
background: rgba(175, 201, 79, 0.12);
color: #5a6e2a;
font-size: 15px;
line-height: 1.3;
padding: 8px 24px;
border-radius: 22px;
margin-bottom: 24px;
font-weight: 600;
}

.blg .editorialHeading {
font-size: 23px;
line-height: 1.3;
font-weight: 700;
color: #1e2410;
margin: 0 0 24px;
}

.blg .editorialPara {
font-size: 16px;
line-height: 1.6;
color: #3a4520;
margin: 0 0 24px;
}

.blg .editorialPara::first-letter {
font-size: 23px;
color: #AFC94F;
font-weight: 700;
line-height: 1.1;
}

.blg .editorialPara2 {
font-size: 16px;
line-height: 1.6;
color: #4a5530;
margin: 0 0 24px;
}

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

.blg .editorialList li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
font-size: 16px;
line-height: 1.6;
color: #3a4520;
}

.blg .editorialBullet {
width: 10px;
height: 10px;
border-radius: 50%;
background: #AFC94F;
flex-shrink: 0;
margin-top: 7px;
}

.blg .editorialLink {
display: inline-block;
color: #AFC94F !important;
font-size: 16px;
line-height: 1.6;
font-weight: 700;
text-decoration: none !important;
border-bottom: 2px solid rgba(175, 201, 79, 0.4);
transition: border-color 0.28s ease-in-out, color 0.28s ease-in-out;
}

.blg .editorialLink:hover {
color: #2a2e1e !important;
border-color: #2a2e1e;
}

@media (max-width: 1280px) {
.blg .postsGrid {
grid-template-columns: repeat(2, 1fr);
gap: 24px;
}

.blg .editorialInner {
gap: 40px;
}

.blg .editorialLeft {
flex: 0 0 320px;
}

.blg .newsletterInner {
gap: 40px;
}
}

@media (max-width: 1024px) {
.blg .pgTopHeading {
font-size: 40px;
}

.blg .editorialInner {
flex-direction: column;
gap: 40px;
}

.blg .editorialLeft {
flex: none;
width: 100%;
}

.blg .editorialImgFrame img {
height: 260px;
}

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

.blg .newsletterForm {
width: 100%;
}
}

@media (max-width: 768px) {
.blg .postsGrid {
grid-template-columns: 1fr;
gap: 24px;
}

.blg .pgTopHeading {
font-size: 23px;
}

.blg .postsArea {
padding: 40px 24px;
}

.blg .newsletterBand {
padding: 40px 24px;
}

.blg .editorialBand {
padding: 40px 24px;
}

.blg .newsletterForm {
flex-direction: column;
}
}

@media (max-width: 480px) {
.blg .pgTop {
padding: 24px 24px 40px;
}

.blg .cardMeta {
flex-wrap: wrap;
}

.blg .cardReadtime {
margin-left: 0;
}
}

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

.SuccessPage .SuccessCard {
max-width: 560px;
width: 100%;
background: #fff;
border-radius: 22px;
padding: 80px 40px;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
text-align: center;
position: relative;
}

.SuccessPage .SuccessCard .SuccessIconWrap {
width: 72px;
height: 72px;
margin: 0 auto 40px;
border-radius: 38px;
background: linear-gradient(160deg, #AFC94F, #CAE1BA);
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
}

.SuccessPage .SuccessCard .SuccessIconWrap svg {
display: block;
}

.SuccessPage .SuccessCard .SuccessHeading {
font-size: 23px;
line-height: 1.3;
font-weight: 700;
color: #2a2d1e;
margin: 0 0 24px;
}

.SuccessPage .SuccessCard .SuccessBody {
font-size: 16px;
line-height: 1.6;
color: #3d4228;
margin: 0 0 40px;
}

.SuccessPage .SuccessCard .SuccessDivider {
width: 48px;
height: 3px;
background: #AFC94F;
border-radius: 10px;
margin: 0 auto 40px;
}

.SuccessPage .SuccessCard .SuccessReturnLink {
display: inline-block;
padding: 24px 40px;
background: #AFC94F;
color: #2a2d1e;
font-size: 15px;
font-weight: 700;
line-height: 1.1;
border-radius: 10px;
text-decoration: none;
box-shadow: -1px 3px 6px -1px rgba(175, 201, 79, 0.05);
transition: background 0.28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.35s ease-in-out;
}

.SuccessPage .SuccessCard .SuccessReturnLink:hover {
background: #CAE1BA;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
}

.SuccessPage .SuccessCard .SuccessReturnLink:focus {
outline: 2px solid #AFC94F;
outline-offset: 3px;
}

.SuccessPage .SuccessCard .SuccessNote {
font-size: 15px;
line-height: 1.6;
color: #5a6030;
margin: 24px 0 0;
}

.SuccessPage .SuccessCard .SuccessNote a {
color: #AFC94F;
text-decoration: underline;
transition: color 0.25s ease-in-out;
}

.SuccessPage .SuccessCard .SuccessNote a:hover {
color: #2a2d1e;
}

@media (max-width: 480px) {
.SuccessPage {
padding: 40px 8px;
}

.SuccessPage .SuccessCard {
padding: 40px 24px;
}
}

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

.NotFoundPage .ErrorCodeDisplay {
position: relative;
margin-bottom: 40px;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 24px;
}

.NotFoundPage .ErrorCodeDisplay .CodeNumber {
font-size: 58px;
line-height: 1.1;
font-weight: 800;
color: #2d3a1a;
letter-spacing: -2px;
}

.NotFoundPage .ErrorCodeDisplay .CodeDividerLine {
width: 3px;
height: 64px;
background: linear-gradient(180deg, #AFC94F 0%, #CAE1BA 100%);
border-radius: 10px;
flex-shrink: 0;
}

.NotFoundPage .ErrorCodeDisplay .CodeLabel {
font-size: 23px;
line-height: 1.3;
font-weight: 300;
color: #4a5a2a;
text-align: left;
max-width: 200px;
}

.NotFoundPage .ErrorMainHeading {
font-size: 23px;
line-height: 1.3;
font-weight: 700;
color: #2d3a1a;
margin-bottom: 24px;
max-width: 520px;
}

.NotFoundPage .ErrorDescription {
font-size: 16px;
line-height: 1.6;
color: #4a5a2a;
max-width: 460px;
margin-bottom: 40px;
}

.NotFoundPage .ErrorDescription .DropCapAccent::first-letter {
font-size: 23px;
font-weight: 700;
color: #AFC94F;
line-height: 1;
float: left;
margin-right: 4px;
margin-top: 2px;
}

.NotFoundPage .NavLinksGroup {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 24px;
justify-content: center;
margin-bottom: 40px;
}

.NotFoundPage .NavLinksGroup .PrimaryReturnBtn {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 24px 40px;
background: #AFC94F;
color: #2d3a1a;
font-size: 15px;
font-weight: 700;
line-height: 1.3;
border: none;
border-radius: 10px;
cursor: pointer;
text-decoration: none;
box-shadow: -1px 5px 18px -1px rgba(175, 201, 79, 0.10);
transition: background-color 0.28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.35s ease-in-out;
}

.NotFoundPage .NavLinksGroup .PrimaryReturnBtn:hover {
background: #9ab53e;
box-shadow: -1px 10px 60px -1px rgba(175, 201, 79, 0.14);
}

.NotFoundPage .NavLinksGroup .PrimaryReturnBtn:focus {
outline: 3px solid #AFC94F;
outline-offset: 3px;
}

.NotFoundPage .NavLinksGroup .SecondaryNavLink {
display: inline-flex;
align-items: center;
padding: 24px 40px;
background: transparent;
color: #4a5a2a;
font-size: 15px;
font-weight: 600;
line-height: 1.3;
border: 2px solid #CAE1BA;
border-radius: 10px;
cursor: pointer;
text-decoration: none;
transition: border-color 0.25s ease-in-out, color 0.25s ease-in-out;
}

.NotFoundPage .NavLinksGroup .SecondaryNavLink:hover {
border-color: #AFC94F;
color: #2d3a1a;
}

.NotFoundPage .NavLinksGroup .SecondaryNavLink:focus {
outline: 3px solid #AFC94F;
outline-offset: 3px;
}

.NotFoundPage .SiteBrandNote {
font-size: 15px;
line-height: 1.6;
color: #7a8a5a;
border-top: 1px solid #CAE1BA;
padding-top: 24px;
max-width: 400px;
width: 100%;
text-align: center;
}

.NotFoundPage .SiteBrandNote .BrandAccentWord {
color: #AFC94F;
font-weight: 700;
}

.NotFoundPage .DecorativeDotRow {
display: flex;
flex-direction: row;
gap: 8px;
align-items: center;
justify-content: center;
margin-bottom: 40px;
}

.NotFoundPage .DecorativeDotRow .DotItem {
width: 8px;
height: 8px;
border-radius: 38px;
background: #CAE1BA;
}

.NotFoundPage .DecorativeDotRow .DotItem.active {
background: #AFC94F;
width: 24px;
}

@media (max-width: 480px) {
.NotFoundPage {
padding: 40px 24px;
}

.NotFoundPage .ErrorCodeDisplay .CodeNumber {
font-size: 58px;
}

.NotFoundPage .ErrorCodeDisplay .CodeLabel {
font-size: 16px;
}

.NotFoundPage .NavLinksGroup {
flex-direction: column;
align-items: stretch;
}

.NotFoundPage .NavLinksGroup .PrimaryReturnBtn,
.NotFoundPage .NavLinksGroup .SecondaryNavLink {
justify-content: center;
padding: 24px;
}
}