:root {
--green:#14884a;
--green2:#0a6738;
--brown:#7a4b22;
--ink:#17211b;
--muted:#68746d;
--soft:#f4f7f4;
--line:#dce5df;
--white:#fff;
--shadow:0 22px 60px rgba(20, 45, 31, 0.12);
--shadow-soft:0 14px 40px rgba(20, 45, 31, 0.08);
--radius:16px;
--radius-sm:10px;
--radius-lg:24px;
--container:1240px;
--cloud-navy:#07172f;
--cloud-navy-2:#0a2452;
--cloud-blue:#146ef5;
--cloud-blue-2:#0052d9;
--cloud-cyan:#22b8cf;
--cloud-violet:#7767f6;
--cloud-sky:#eef6ff;
--cloud-cyan-soft:#ecfbff;
--cloud-lilac:#f3f0ff;
--cloud-mint:#edf9f3;
--cloud-surface:rgba(255, 255, 255, 0.92);
--cloud-shadow:0 24px 70px rgba(31, 67, 135, 0.12);
--cloud-shadow-soft:0 14px 42px rgba(31, 67, 135, 0.08);
--logo-green:#07913a;
--logo-green-dark:#045d28;
--logo-green-deep:#073c20;
--logo-green-soft:#edf8f0;
--logo-green-pale:#f6fbf7;
--logo-brown:#804e21;
--logo-brown-dark:#4f2d13;
--logo-brown-soft:#f6eee5;
--logo-brown-pale:#fcf8f3;
--logo-ink:#17231b;
--logo-muted:#68746c;
--logo-line:rgba(87, 105, 92, 0.16);
--green:var(--logo-green);
--green2:var(--logo-green-dark);
--brown:var(--logo-brown);
--ink:var(--logo-ink);
--muted:var(--logo-muted);
--soft:#f4f8f5;
--line:#dce7df;
--shadow:0 24px 65px rgba(32, 68, 44, 0.13);
--shadow-soft:0 14px 42px rgba(32, 68, 44, 0.08);
--cloud-navy:#071f13;
--cloud-navy-2:#0d3a22;
--cloud-blue:#07913a;
--cloud-blue-2:#045d28;
--cloud-cyan:#169b4b;
--cloud-violet:#804e21;
--cloud-sky:#edf8f0;
--cloud-cyan-soft:#f1faf3;
--cloud-lilac:#f6eee5;
--cloud-mint:#edf8f0;
--cloud-shadow:0 24px 65px rgba(32, 68, 44, 0.13);
--cloud-shadow-soft:0 14px 42px rgba(32, 68, 44, 0.08);
--v7-green:#07913a;
--v7-green-dark:#045d28;
--v7-brown:#804e21;
--v7-brown-dark:#5e3718;
--v7-cream:#faf7f1;
--v7-green-soft:#edf8f0;
--v7-brown-soft:#f5ede4
}
*{box-sizing:border-box}
html {
	scroll-behavior:smooth
}
body {
	margin:0;
	font-family:"Microsoft YaHei", "PingFang SC", Arial, sans-serif;
	line-height:1.75;
	background:#f5f8fd;
	letter-spacing:.01em;
	color:#16243f;
	background:radial-gradient(circle at 8%0, rgba(7, 145, 58, .055), transparent 25%), radial-gradient(circle at 96% 14%, rgba(128, 78, 33, .05), transparent 22%), linear-gradient(180deg, #fbfdfb 0, #f5f9f6 48%, #faf8f4 100%);
	color:var(--logo-ink)
}
img {
	max-width:100%;
	display:block
}
a {
	color:inherit;
	text-decoration:none
}
button, input, select, textarea {
	font:inherit
}
.container {
	width:min(var(--container), calc(100% - 48px));
	margin:auto
}
.topbar {
	background:#0f1c15;
	color:#c9d4cc;
	font-size:13px
}
.topbar-inner {
	height:38px;
	display:flex;
	align-items:center;
	justify-content:space-between
}
.topbar a:hover {
	color:#fff
}
.topbar-sep {
	margin:0 8px;
	color:#526158
}
.site-header {
	height:86px;
	border-bottom:1px solid rgba(20, 40, 28, .08);
	position:sticky;
	top:0;
	z-index:1000;
transition:.25s
}
.site-header.scrolled {
	height:74px;
	box-shadow:0 8px 30px rgba(13, 34, 22, .08)
}
.brand, .header-inner {
	display:flex;
	align-items:center
}
.header-inner {
	height:100%
}
.brand {
	gap:13px;
	margin-right:auto
}
.brand img {
	width:120px;
	height:auto
}
.main-nav, .nav-link {
	display:flex;
	align-items:center
}
.main-nav {
	height:100%;
	gap:4px
}
.nav-link {
	padding:0 18px;
	font-size:15px;
	position:relative
}
.nav-link:after {
	content:"";
	position:absolute;
	left:18px;
	right:18px;
	bottom:0;
	height:3px;
	background:var(--green);
	transform:scaleX(0);
transition:.25s
}
.nav-link.active, .nav-link:hover {
	color:var(--green)
}
.nav-link.active:after {
	transform:scaleX(1)
}
.header-cta {
	margin-left:22px;
	background:var(--green);
	color:#fff;
	padding:12px 23px;
	font-size:14px
}
.header-cta:hover {
	background:var(--green2)
}
.menu-toggle {
	display:none;
	border:0;
	background:0 0;
	width:42px;
	height:42px;
	padding:8px
}
.menu-toggle span {
	display:block
}
.hero-slider {
	height:min(720px, calc(100vh - 124px));
	min-height:590px;
	position:relative;
	overflow:hidden;
	background:#13241a
}
.hero-slide {
	position:absolute;
	inset:0;
	background-image:var(--bg);
	background-size:cover;
	background-position:center;
	opacity:0;
	visibility:hidden;
	transform:scale(1.05);
transition:opacity .9s, visibility .9s, transform 7s
}
.hero-slide.active {
	opacity:1;
	visibility:visible;
	transform:scale(1)
}
.hero-overlay {
	position:absolute;
	inset:0;
	background:linear-gradient(90deg, rgba(7, 20, 12, .84), rgba(7, 20, 12, .48) 52%, rgba(7, 20, 12, .08))
}
.hero-content {
	position:relative;
	z-index:2;
	color:#fff;
	height:100%;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:flex-start;
	padding-bottom:30px
}
.hero-content h1, .hero-content h2 {
	font-size:clamp(42px, 5vw, 52px);
	line-height:1.4;
	letter-spacing:0px;
	margin:15px 0 22px;
	max-width:900px
}
.hero-content p {
	font-size:18px;
	max-width:740px;
	color:#e1e9e3;
	margin:0 0 34px
}
.eyebrow {
	display:inline-flex;
	align-items:center;
	gap:10px;
	color:var(--green);
	font-size:16px;
	font-weight:700;
	letter-spacing:1.0px;
	text-transform:capitalize;
}
.eyebrow:before {
	content:"";
	width:34px;
	height:2px;
	background:currentColor
}
.eyebrow.light {
	color:#bce3c8
}
.hero-actions {
	display:flex;
	gap:12px
}
.btn, .category-strip>a {
	align-items:center;
transition:.25s
}
.btn {
	display:inline-flex;
	justify-content:center;
	min-height:48px;
	padding:10px 28px;
	border:1px solid transparent;
	cursor:pointer
}
.btn-primary {
	background:var(--green);
	color:#fff
}
.btn-primary:hover {
	background:var(--green2);
	transform:translateY(-2px)
}
.btn-dark {
	background:#17211b;
	color:#fff
}
.btn-dark:hover {
	background:var(--green)
}
.btn-light {
	background:#fff;
	color:#17211b
}
.btn-light:hover {
	background:#eaf4ed
}
.btn-outline-light {
	border-color:rgba(255, 255, 255, .65);
	color:#fff
}
.btn-outline-light:hover {
	background:#fff;
	color:#17211b
}
.hero-dots {
	position:absolute;
	z-index:4;
	bottom:42px;
	left:50%;
	transform:translateX(-50%);
	display:flex;
	gap:10px
}
.hero-dots button {
	width:34px;
	border:0;
	padding:0;
	background:rgba(255, 255, 255, .42);
	cursor:pointer
}
.hero-dots button.active {
	background:#fff;
	width:52px
}
.quick-categories {
	position:relative;
	z-index:5;
	box-shadow:0 10px 32px rgba(16, 45, 29, .08)
}
.category-strip {
	display:grid;
	grid-template-columns:repeat(4, 1fr)
}
.category-strip>a {
	padding:30px 26px;
	display:flex;
	gap:16px;
	border-right:1px solid var(--line)
}
.category-strip>a:first-child {
	border-left:1px solid var(--line)
}
.category-strip>a:hover {
	background:var(--green);
	color:#fff
}
.category-strip>a:hover b {
	color:#b9e8c9
}
.category-strip h3 {
	font-size:18px;
	margin:0
}
.category-strip p {
	font-size:10px;
	letter-spacing:1px;
	color:var(--muted);
	margin:2px 0 0
}
.category-strip>a:hover p {
	color:#d5eadd
}
.category-strip>a>span {
	margin-left:auto;
	width:30px;
	height:30px;
	border-radius:50%;
	display:grid;
	place-items:center;
	background:rgba(20, 136, 74, .08);
transition:.25s
}
.section {
	padding:60px 0;
}
.section-soft {
	background:var(--soft)
}
.section-head {
	display:flex;
	justify-content:space-between;
	align-items:end;
	margin-bottom:42px
}
.about-copy h2, .contact-form h2, .contact-info h2 {
	font-size:clamp(32px, 4vw, 32px);
	line-height:1.25;
	margin:12px 0
}
.custom-copy h2 {
	margin:12px 0
}
.section-head h2, .showcase-copy h2 {
	font-size:clamp(32px, 4vw, 48px);
	line-height:1.25;
	margin:12px 0
}
.section-head p {
	color:var(--muted);
	max-width:660px
}
.section-head.centered {
	text-align:center;
	justify-content:center
}
.section-head.centered .eyebrow {
	justify-content:center
}
.about-copy h4 {
	color:var(--green);
	font-size:15px;
	font-weight:600;
	margin:0 0 28px
}
.text-link {
	font-size:14px;
	font-weight:700;
	color:var(--green)
}
.text-link b {
	display:inline-block;
transition:.25s
}
.text-link:hover b {
	transform:translateX(5px)
}
.split-about {
	display:grid;
grid-template-columns:1.04fr .96fr;
	gap:80px;
	align-items:center
}
.split-about.reverse {
grid-template-columns:.96fr 1.04fr
}
.about-media {
	position:relative
}
.about-media>img {
	width:100%;
	min-height:500px;
	object-fit:cover
}
.media-badge {
	position:absolute;
	right:-28px;
	bottom:-30px;
	background:var(--green);
	color:#fff;
	width:190px;
	height:150px;
	padding:28px;
	display:flex;
	flex-direction:column;
	justify-content:center
}
.media-badge strong {
	font-size:44px;
	line-height:1
}
.media-badge span {
	font-size:14px;
	margin-top:10px
}
.media-caption {
	background:#122118;
	color:#dbe8df;
	padding:13px 18px;
	font-size:13px
}
.about-copy p {
	color:var(--muted);
	margin:0 0 20px
}
.about-copy .btn {
	margin-top:15px
}
.product-grid {
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:24px
}
.product-card {
	background:#fff;
	border:1px solid var(--line);
transition:.3s;
	min-width:0
}
.product-card:hover {
	box-shadow:var(--shadow);
	border-color:transparent
}
.product-image {
	height:270px;
	background:#f5f7f5;
	display:block;
	position:relative;
	overflow:hidden
}
.product-image img {
	width:100%;
	height:100%;
	object-fit:contain;
	padding:18px;
transition:.45s
}
.product-card:hover .product-image img {
	transform:scale(1.06)
}
.product-image>span {
	position:absolute;
	left:14px;
	top:14px;
	background:rgba(20, 136, 74, .92);
	color:#fff;
	font-size:11px;
	padding:5px 10px
}
.product-card-body {
	padding:24px
}
.product-card-body small {
	font-size:11px;
	letter-spacing:1.5px;
	color:var(--green)
}
.product-card-body h3 {
	font-size:18px;
	line-height:1.45;
	margin:7px 0 10px
}
.product-card-body p {
	font-size:14px;
	color:var(--muted);
	margin:0 0 18px;
	min-height:48px
}
.custom-home {
	background:#14251b;
	color:#fff;
	padding:100px 0;
	overflow:hidden
}
.custom-grid {
	display:grid;
	grid-template-columns:1fr 1fr;
	align-items:center;
	gap:80px
}
.custom-copy h2 {
	font-size:clamp(34px, 4vw, 36px);
	line-height:1.5;
}
.custom-copy p {
	color:#b9c8be
}
.tag-cloud {
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin:28px 0 34px
}
.tag-cloud span {
	border:1px solid rgba(255, 255, 255, .22);
	padding:6px 13px;
	font-size:14px;
	color:#dbe7df
}
.custom-visual {
	position:relative
}
.custom-visual:before {
	content:"";
	position:absolute;
	inset:-24px 24px 24px -24px;
	border:1px solid rgba(255, 255, 255, .2)
}
.custom-visual img {
	position:relative;
	width:100%;
	height:520px;
	object-fit:cover
}
.case-grid {
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:20px
}
.case-card {
	height:420px;
	position:relative;
	overflow:hidden;
	background:#17211b;
	color:#fff
}
.case-card img {
	width:100%;
	height:100%;
	object-fit:cover;
transition:.55s
}
.case-card:after {
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(0deg, rgba(4, 15, 8, .86), rgba(4, 15, 8, 0) 65%)
}
.case-card>div {
	position:absolute;
	z-index:2;
	left:24px;
	right:24px;
	bottom:22px
}
.case-card span {
	font-size:11px;
	color:#bce3c8;
	letter-spacing:1px
}
.case-card h3 {
	font-size:21px;
	margin:5px 0
}
.case-card p {
	font-size:12px;
	color:#d5ddd7;
	margin:0;
	opacity:0;
	max-height:0;
transition:.35s
}
.case-card:hover img {
	transform:scale(1.08)
}
.case-card:hover p {
	opacity:1;
	max-height:80px
}
.strength-section {
	background:#0f1d14;
	color:#fff;
	padding:60px 0;
}
.light-head h2 {
	color:#fff
}
.strength-grid {
	display:grid;
	grid-template-columns:repeat(3, 1fr)
}
.strength-grid article {
	padding:42px;
	min-height:330px
}
.strength-grid article>b {
	color:#78c991
}
.cta-band h2 {
	font-size:28px;
	line-height:1.4;
	margin:8px 0 0
}
.strength-grid h3 {
	font-size:28px;
	margin:18px 0
}
.strength-grid p {
	color:#b8c7bd;
	min-height:84px
}
.numbers {
	border-top:1px solid rgba(255, 255, 255, .15);
	padding-top:24px;
	display:flex;
	flex-direction:column
}
.numbers strong {
	font-size:30px;
	color:#9bdeb0
}
.numbers span {
	font-size:12px;
	color:#9eada3
}
.cta-band {
	background:var(--green);
	color:#fff;
	padding:48px 0
}
.cta-band-inner {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:30px
}
.site-footer {
	background:#0d1610;
	color:#aebbb2;
	padding:50px 0 22px;
}
.footer-grid {
	display:grid;
	grid-template-columns:1.5fr .6fr .6fr 1.4fr;
	gap:60px
}
.footer-brand img {
	width:145px;
	filter:brightness(0) invert(1);
	opacity:.85;
	margin-bottom:20px
}
.footer-brand p {
	max-width:360px
}
.footer-grid h3 {
	color:#fff;
	font-size:16px;
	margin:0 0 18px
}
.footer-grid>div>a {
	display:block
}
.footer-grid a:hover {
	color:#8cd4a3
}
.footer-grid p, .footer-grid>div>a {
	font-size:14px;
	margin:7px 0
}
.footer-bottom {
	border-top:1px solid rgba(255, 255, 255, .09);
	margin-top:30px;
	padding-top:20px;
	display:flex;
	justify-content:space-between;
	font-size:12px
}
.back-top {
	position:fixed;
	right:25px;
	bottom:25px;
	width:46px;
	height:46px;
	border:0;
	background:var(--green);
	color:#fff;
	z-index:50;
	opacity:0;
	visibility:hidden;
transition:.25s;
	cursor:pointer
}
.back-top.show {
	opacity:1;
	visibility:visible
}
.page-hero {
	height:420px;
	background-image:linear-gradient(90deg, rgba(7, 20, 12, .84), rgba(7, 20, 12, .28)), var(--hero);
	background-size:cover;
	background-position:center;
	display:flex;
	align-items:center;
	color:#fff
}
.page-hero-inner h1 {
	font-size:58px;
	margin:12px 0 5px
}
.page-hero-inner p {
	color:#d6e0d9;
	max-width:660px
}
.breadcrumb {
	border-bottom:1px solid var(--line);
	font-size:14px;
	color:var(--muted)
}
.breadcrumb .container {
	height:54px;
	display:flex;
	align-items:center;
	gap:12px
}
.breadcrumb a:hover, .value-grid span {
	color:var(--green)
}
.value-grid {
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:20px
}
.value-grid article {
	padding:34px;
	background:#fff;
	border:1px solid var(--line)
}
.value-grid span {
	font-size:12px;
	font-weight:700
}
.value-grid h3 {
	font-size:24px;
	margin:18px 0 8px
}
.stats-grid span, .value-grid p {
	color:var(--muted);
	font-size:13px
}
.value-grid p {
	font-size:14px
}
.timeline-section {
	padding:100px 0;
	background:#14251b;
	color:#fff
}
.process-line, .stats-grid {
	display:grid;
	grid-template-columns:repeat(5, 1fr)
}
.stats-grid {
	grid-template-columns:repeat(3, 1fr)
}
.process-line>div {
	padding:32px 24px
}
.process-line b {
	color:#7bd09a;
	font-size:12px
}
.process-line h3 {
	font-size:20px
}
.process-line p {
	font-size:14px;
	color:#afbeb4
}
.stats-grid>div {
	padding:38px;
	border-right:1px solid var(--line);
	border-bottom:1px solid var(--line);
	display:flex;
	flex-direction:column
}
.stats-grid strong {
	font-size:40px;
	color:var(--green)
}
.product-browser {
	padding-top:70px
}
.filter-panel {
	border:1px solid var(--line);
	padding:32px;
	background:#fff
}
.filter-top, .search-box {
	display:flex;
	align-items:center
}
.filter-top {
	justify-content:space-between;
	padding-bottom:24px;
	border-bottom:1px solid var(--line)
}
.filter-top h2 {
	margin:5px 0;
	font-size:30px
}
.search-box {
	width:min(420px, 45%);
	height:48px;
	background:var(--soft);
	padding:0 16px
}
.search-box input {
	border:0;
	background:0 0;
	outline:0;
	width:100%;
	padding:0 10px
}
.filter-row {
	display:grid;
	grid-template-columns:90px 1fr;
	gap:20px;
	padding:18px 0;
	border-bottom:1px dashed var(--line);
	align-items:start
}
.filter-row:last-child {
	border-bottom:0;
	padding-bottom:0
}
.filter-row>strong {
	font-size:14px;
	padding-top:7px
}
.filter-buttons {
	display:flex;
	flex-wrap:wrap;
	gap:7px
}
.case-filter button, .filter-buttons button {
	border:1px solid var(--line);
	background:#fff;
	padding:7px 13px;
	font-size:14px;
	cursor:pointer
}
.case-filter button.active, .case-filter button:hover, .filter-buttons button.active, .filter-buttons button:hover {
	background:var(--green);
	border-color:var(--green);
	color:#fff
}
.filter-buttons.compact button {
	padding:5px 10px;
	font-size:12px
}
.product-result-head {
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin:32px 0 22px
}
.reset-btn {
	border:0;
	background:0 0;
	color:var(--green);
	cursor:pointer
}
.empty-state {
	text-align:center;
	padding:70px;
	background:var(--soft)
}
.detail-layout {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:70px;
	min-height:500px
}
.detail-gallery {
	background:#f4f6f4;
	display:flex;
	align-items:center;
	justify-content:center;
	min-height:520px
}
.detail-gallery img {
	width:100%;
	height:520px;
	object-fit:contain;
	padding:45px
}
.detail-copy .product-category {
	display:inline-block;
	color:var(--green);
	font-size:12px;
	letter-spacing:1px
}
.detail-copy h1 {
	font-size:44px;
	line-height:1.25;
	margin:12px 0
}
.detail-model {
	font-size:14px;
	color:var(--muted);
	border-bottom:1px solid var(--line);
	padding-bottom:22px
}
.detail-summary {
	font-size:17px;
	color:var(--muted)
}
.detail-tags {
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin:22px 0
}
.detail-tags span {
	background:var(--soft);
	padding:7px 12px;
	font-size:13px
}
.detail-info {
	border-top:1px solid var(--line);
	margin:30px 0
}
.check-list li, .detail-info>div {
	border-bottom:1px solid var(--line)
}
.detail-info>div {
	display:grid;
	grid-template-columns:100px 1fr;
	padding:14px 0;
	font-size:14px
}
.detail-info strong {
	color:var(--muted)
}
.related-wrap {
	margin-top:100px
}
.custom-steps {
	display:grid;
	grid-template-columns:repeat(4, 1fr);
	gap:20px;
	margin-top:50px
}
.custom-steps article {
	background:var(--soft);
	padding:34px;
	min-height:260px
}
.custom-steps b {
	color:var(--green)
}
.custom-steps h3 {
	font-size:22px;
	margin:28px 0 12px
}
.custom-steps p {
	font-size:14px
}
.custom-selector {
	display:grid;
	gap:34px
}
.selector-block {
	background:#fff;
	padding:36px;
	border:1px solid var(--line);
	display:grid;
	grid-template-columns:230px 1fr;
	gap:40px
}
.selector-title {
	display:flex;
	gap:18px
}
.selector-title span {
	font-size:10px;
	letter-spacing:1.5px;
	color:var(--muted)
}
.selector-title h2 {
	margin:0;
	font-size:25px
}
.chip-list {
	display:flex;
	flex-wrap:wrap;
	gap:8px
}
.chip-list span {
	background:var(--soft);
	padding:7px 12px;
	font-size:13px
}
.custom-showcase {
	display:grid;
grid-template-columns:1.1fr .9fr;
	gap:70px;
	align-items:center
}
.showcase-img img {
	height:570px;
	width:100%;
	object-fit:cover
}
.custom-steps p, .showcase-copy p {
	color:var(--muted)
}
.check-list {
	list-style:none;
	padding:0;
	margin:25px 0 35px
}
.check-list li {
	padding:10px 0
}
.check-list li:before {
	content:"✓";
	color:var(--green);
	margin-right:10px
}
.case-filter {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	gap:8px;
	margin-bottom:40px
}
.case-page-grid {
	grid-template-columns:repeat(3, 1fr)
}
.case-card.full {
	height:460px
}
.news-contact {
	background:#17251c;
	color:#fff;
	padding:26px;
	margin-top:30px
}
.news-contact p {
	font-size:14px;
	color:#b9c7bd
}
.article-list {
	display:grid;
	gap:30px
}
.article-card {
	padding:45px;
	border:1px solid var(--line);
	scroll-margin-top:110px
}
.article-meta {
	display:flex;
	justify-content:space-between;
	color:var(--muted);
	font-size:12px
}
.article-meta span {
	color:var(--green)
}
.article-card h2 {
	font-size:30px;
	margin:20px 0 12px
}
.article-card>p {
	font-size:16px
}
.article-body {
	border-top:1px solid var(--line);
	margin-top:24px;
	padding-top:20px;
	color:#4f5c54
}
.contact-grid {
	display:grid;
grid-template-columns:.85fr 1.15fr;
	gap:70px
}
.article-card>p, .contact-info>p {
	color:var(--muted)
}
.contact-cards {
	display:grid;
	gap:10px;
	margin-top:35px
}
.contact-cards>a, .contact-cards>div {
	background:var(--soft);
	padding:18px 22px;
	display:flex;
	flex-direction:column
}
.contact-cards span {
	font-size:16px;
	color:var(--green);
	letter-spacing:1px;
	font-weight:bold;
}
.contact-cards strong {
	font-size:17px
}
.contact-form {
	border:1px solid var(--line);
	padding:42px
}
.form-grid {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:20px;
	margin:28px 0
}
.form-grid label {
	display:flex;
	flex-direction:column;
	gap:7px
}
.form-grid label.full {
	grid-column:1/-1
}
.form-grid span {
	font-size:13px
}
.form-grid input, .form-grid select, .form-grid textarea {
	border:1px solid var(--line);
	padding:5px 10px;
	outline:0;
	background:#fff
}
.form-grid input:focus, .form-grid select:focus, .form-grid textarea:focus {
	border-color:var(--green)
}
.form-note {
	font-size:12px;
	color:var(--muted)
}
.map-placeholder {
	background:linear-gradient(110deg, #112219, #1e5633);
	padding:80px 0
}
.map-card {
	display:flex;
	justify-content:space-between;
	align-items:center;
	color:#fff
}
.map-card h2 {
	font-size:42px;
	margin:8px 0
}
.map-card p {
	color:#c6d7cb
}
.reveal {
	opacity:0;
	transform:translateY(28px);
transition:opacity .7s, transform .7s
}
.reveal.visible {
	opacity:1;
	transform:none
}
@media (max-width:1100px) {
.nav-link {
padding:0 10px
}
.header-cta {
margin-left:10px;
padding:10px 16px
}
.product-grid {
grid-template-columns:repeat(3, 1fr)
}
.case-grid, .category-strip {
grid-template-columns:repeat(2, 1fr)
}
.custom-grid, .custom-showcase, .split-about {
gap:45px
}
.footer-grid {
grid-template-columns:1.2fr .7fr .8fr
}
.footer-grid>div:last-child {
grid-column:1/-1
}
.process-line {
grid-template-columns:repeat(3, 1fr)
}
.custom-steps {
grid-template-columns:repeat(2, 1fr)
}
}
@media (max-width:860px) {
.container {
width:min(100% - 32px, var(--container))
}
.topbar-inner>span {
display:none
}
.topbar-inner {
justify-content:center
}
.site-header, .site-header.scrolled {
height:72px
}
.brand img {
width:105px
}
.menu-toggle {
display:block
}
.header-cta, .nav-link:after {
display:none
}
.main-nav {
position:fixed;
left:0;
right:0;
top:110px;
background:#fff;
height:auto;
display:flex;
flex-direction:column;
align-items:stretch;
padding:15px 24px 30px;
box-shadow:0 20px 35px rgba(0, 0, 0, .13);
transform:translateY(-130%);
opacity:0;
transition:.3s;
z-index:-1
}
.site-header.scrolled .main-nav {
top:110px
}
.main-nav.open {
transform:none;
opacity:1
}
.nav-link {
height:48px;
border-bottom:1px solid var(--line)
}
.hero-slider {
height:650px;
min-height:650px
}
.hero-content h1, .hero-content h2 {
font-size:45px
}
.category-strip {
grid-template-columns:1fr 1fr
}
.contact-grid, .custom-grid, .detail-layout, .split-about, .split-about.reverse {
grid-template-columns:1fr
}
.about-media>img {
min-height:360px
}
.media-badge {
right:0
}
.product-grid {
grid-template-columns:repeat(2, 1fr)
}
.strength-grid {
grid-template-columns:1fr
}
.strength-grid article {
min-height:auto
}
.case-page-grid, .stats-grid, .value-grid {
grid-template-columns:repeat(2, 1fr)
}
.footer-grid {
grid-template-columns:1fr 1fr
}
.footer-grid>div:last-child {
grid-column:auto
}
.selector-block {
grid-template-columns:1fr
}
.page-hero-inner h1 {
font-size:46px
}
.page-hero {
height:350px
}
.filter-top {
align-items:flex-start;
gap:20px
}
.search-box {
width:52%
}
.cta-band-inner {
align-items:flex-start
}
.detail-layout {
gap:35px
}
.contact-grid {
gap:45px
}
}
@media (max-width:580px) {
.container {
width:calc(100% - 28px)
}
.section {
padding:30px 0
}
.topbar {
font-size:11px
}
.hero-slider {
height:620px;
min-height:620px
}
.hero-content h1, .hero-content h2 {
font-size:36px;
letter-spacing:-1px
}
.hero-content p {
font-size:15px
}
.hero-actions {
flex-wrap:wrap
}
.category-strip {
grid-template-columns:1fr
}
.category-strip>a {
border-left:1px solid var(--line)
}
.section-head {
align-items:flex-start;
gap:18px;
flex-direction:column
}
.split-about {
gap:45px
}
.about-media>img {
min-height:300px
}
.media-badge {
width:155px;
height:125px
}
.product-grid {
grid-template-columns:1fr
}
.product-image {
height:300px
}
.custom-visual img {
height:360px
}
.case-grid, .case-page-grid {
grid-template-columns:1fr
}
.case-card {
height:390px
}
.custom-steps, .process-line, .stats-grid, .value-grid {
grid-template-columns:1fr
}
.process-line>div {
border-bottom:1px solid rgba(255, 255, 255, .15)
}
.cta-band-inner, .map-card {
align-items:flex-start;
flex-direction:column
}
.footer-grid {
grid-template-columns:1fr
}
.footer-bottom {
gap:10px;
flex-direction:column
}
.page-hero {
height:310px
}
.page-hero-inner h1 {
font-size:38px
}
.filter-top {
flex-direction:column
}
.search-box {
width:100%
}
.filter-row {
grid-template-columns:1fr;
gap:8px
}
.detail-gallery, .detail-gallery img {
height:360px;
min-height:360px
}
.detail-copy h1 {
font-size:34px
}
.selector-block {
padding:24px
}
.showcase-img img {
height:390px
}
.article-card {
padding:28px
}
.article-card h2 {
font-size:25px
}
.contact-form {
padding:27px
}
.form-grid {
grid-template-columns:1fr
}
.form-grid label.full {
grid-column:auto
}
.map-card h2 {
font-size:34px
}
}
::selection {
background:rgba(20, 136, 74, .18);
color:var(--ink)
}
.site-header {
	background:rgba(255, 255, 255, .9);
	backdrop-filter:blur(18px);
	-webkit-backdrop-filter:blur(18px)
}
.site-header.scrolled {
	background:rgba(255, 255, 255, .96)
}
.nav-link {
	height:46px;
	margin:auto 1px
}
.nav-link:hover {
	background:rgba(20, 136, 74, .07)
}
.nav-link::after {
left:24px;
right:24px;
bottom:5px;
height:2px
}
.btn, .header-cta, .hero-dots button, .nav-link, .nav-link::after {
border-radius:999px
}
.header-cta {
	box-shadow:0 10px 24px rgba(20, 136, 74, .2)
}
.btn:hover, .header-cta:hover {
	transform:translateY(-2px)
}
.header-cta:hover {
	box-shadow:0 14px 30px rgba(20, 136, 74, .25)
}
.btn {
	gap:8px;
	box-shadow:0 8px 24px rgba(20, 45, 31, .08)
}
.btn:hover {
	box-shadow:0 13px 30px rgba(20, 45, 31, .14)
}
.btn-soft {
	background:var(--soft);
	border-color:var(--line);
	color:var(--ink)
}
.btn-soft:hover {
	background:#e8f2eb;
	border-color:#c8ddce;
	color:var(--green2)
}
.hero-slider {
	box-shadow:0 20px 60px rgba(8, 25, 14, .12)
}
.hero-overlay {
	background:radial-gradient(circle at 76% 30%, rgba(37, 133, 77, .16), transparent 32%), linear-gradient(90deg, rgba(7, 20, 12, .86), rgba(7, 20, 12, .5) 52%, rgba(7, 20, 12, .08))
}
.hero-dots button {
	height:5px;
transition:width .25s, background .25s
}
.quick-categories {
	background:0 0;
	box-shadow:none;
	margin-top:-28px
}
.category-strip {
	position:relative;
	background:rgba(255, 255, 255, .97);
	border:1px solid rgba(220, 229, 223, .9);
	border-radius:var(--radius-lg);
	overflow:hidden;
	box-shadow:0 22px 58px rgba(20, 45, 31, .13)
}
.category-strip>a {
	min-height:116px;
	border-color:var(--line)
}
.category-strip>a:first-child {
	border-left:0
}
.category-strip>a:last-child {
	border-right:0
}
.category-strip>a:hover {
	background:linear-gradient(135deg, var(--green), var(--green2))
}
.category-strip>a:hover>span {
	background:rgba(255, 255, 255, .18);
	transform:translateX(3px)
}
.section-soft {
	background:radial-gradient(circle at 10% 10%, rgba(20, 136, 74, .045), transparent 30%), linear-gradient(180deg, #f7f9f7, #f2f6f3)
}
.section-head {
	gap:30px
}
.section-head>div>p {
	margin:10px 0 0
}
.article-links a, .text-link {
	display:inline-flex;
	align-items:center
}
.text-link {
	gap:7px;
	position:relative
}
.text-link::after {
content:"";
position:absolute;
left:0;
right:0;
bottom:-4px;
height:1px;
background:currentColor;
transform:scaleX(0);
transform-origin:right;
transition:transform .28s
}
.text-link:hover::after {
transform:scaleX(1);
transform-origin:left
}
.link-pill {
	padding:11px 18px;
	border:1px solid rgba(20, 136, 74, .2);
	border-radius:999px;
	background:rgba(255, 255, 255, .75)
}
.link-pill::after {
display:none
}
.link-pill:hover {
	background:var(--green);
	color:#fff;
	border-color:var(--green);
	box-shadow:0 10px 26px rgba(20, 136, 74, .18)
}
.about-media>img, .showcase-img img {
	border-radius:var(--radius-lg);
	box-shadow:var(--shadow-soft)
}
.media-badge {
	border-radius:var(--radius);
	box-shadow:0 18px 42px rgba(20, 136, 74, .24)
}
.media-caption {
	margin-top:-12px;
	position:relative;
	border-radius:0 0 var(--radius-lg) var(--radius-lg)
}
.product-card {
	border-radius:var(--radius);
	overflow:hidden;
	box-shadow:0 9px 28px rgba(20, 45, 31, .045)
}
.product-card:hover {
	transform:translateY(-7px);
	box-shadow:0 24px 56px rgba(20, 45, 31, .13)
}
.product-image {
	background:radial-gradient(circle at 50% 35%, #fff, #f3f6f3 72%)
}
.product-image>span {
	border-radius:999px;
	box-shadow:0 8px 20px rgba(20, 136, 74, .22)
}
.product-card-body h3 a {
	background-image:linear-gradient(var(--green), var(--green));
	background-repeat:no-repeat;
	background-position:0 100%;
	background-size:0 1px;
transition:color .25s, background-size .25s
}
.product-card-body h3 a:hover {
	color:var(--green2);
	background-size:100% 1px
}
.product-card-attrs {
	display:flex;
	flex-wrap:wrap;
	gap:7px;
	margin:-1px 0 12px
}
.article-links a {
	padding:5px 10px;
	font-size:12px;
	min-height:29px;
	border-radius:999px;
	border:1px solid var(--line);
	background:#f8faf8;
	color:#5f6c64;
	line-height:1.25;
transition:.22s
}
.chip-list a, .detail-tags a, .product-card-attrs a {
	color:#5f6c64
}
.chip-list a, .detail-tags a, .product-card-attrs a, .tag-cloud a {
	display:inline-flex;
	align-items:center;
	min-height:29px;
	border-radius:999px;
	border:1px solid var(--line);
	background:#f8faf8;
	line-height:1.25;
transition:.22s
}
.product-card-attrs a, .tag-cloud a {
	padding:5px 10px;
	font-size:12px
}
.tag-cloud a {
	border-color:rgba(255, 255, 255, .2);
	background:rgba(255, 255, 255, .05);
	color:#dbe7df
}
.article-links a:hover, .chip-list a:hover, .detail-tags a:hover, .product-card-attrs a:hover {
	border-color:rgba(20, 136, 74, .34);
	background:#eaf4ed;
	color:var(--green2);
	transform:translateY(-1px)
}
.custom-home, .strength-section {
	margin-left:18px;
	margin-right:18px;
	border-radius:30px
}
.custom-home {
	background:radial-gradient(circle at 16% 20%, rgba(86, 181, 116, .15), transparent 33%), linear-gradient(135deg, #13261b, #0d1c13)
}
.tag-cloud a:hover {
	border-color:rgba(255, 255, 255, .48);
	background:rgba(255, 255, 255, .12);
	color:#fff;
	transform:translateY(-2px)
}
.custom-visual img, .custom-visual::before {
border-radius:var(--radius-lg)
}
.custom-visual img {
	box-shadow:0 30px 70px rgba(0, 0, 0, .2)
}
.case-card {
	border-radius:var(--radius);
	box-shadow:var(--shadow-soft)
}
.case-card::after {
border-radius:inherit
}
.strength-section {
	background:radial-gradient(circle at 90% 15%, rgba(38, 137, 76, .18), transparent 30%), #0f1d14
}
.strength-grid {
	gap:18px;
	background:0 0
}
.strength-grid article {
	border:1px solid rgba(255, 255, 255, .09);
	border-radius:var(--radius);
	background:rgba(20, 39, 27, .82);
transition:transform .28s, background .28s, border-color .28s
}
.strength-grid article:hover {
	transform:translateY(-6px);
	background:rgba(25, 52, 35, .94);
	border-color:rgba(123, 208, 154, .28)
}
.home-news-layout {
	display:grid;
grid-template-columns:minmax(0, 1.25fr) minmax(330px, .75fr);
	gap:28px;
	align-items:stretch
}
.featured-news-grid, .news-page-featured {
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	gap:22px
}
.featured-news-card {
	background:rgba(255, 255, 255, .95);
	border:1px solid var(--line);
	border-radius:var(--radius);
	overflow:hidden;
	box-shadow:var(--shadow-soft);
transition:transform .3s, box-shadow .3s, border-color .3s
}
.featured-news-card:hover {
	transform:translateY(-6px);
	box-shadow:var(--shadow);
	border-color:transparent
}
.featured-news-image {
	display:block;
	height:245px;
	position:relative;
	overflow:hidden
}
.featured-news-image::after {
content:"";
position:absolute;
inset:0;
background:linear-gradient(180deg, transparent 45%, rgba(8, 24, 14, .36))
}
.featured-news-image img {
	width:100%;
	height:100%;
	object-fit:cover;
transition:transform .55s
}
.featured-news-card:hover .featured-news-image img {
	transform:scale(1.055)
}
.featured-news-image>span {
	position:absolute;
	z-index:2;
	left:18px;
	top:18px;
	padding:6px 11px;
	border-radius:999px;
	background:rgba(255, 255, 255, .92);
	color:var(--green2);
	font-size:11px;
	font-weight:700;
	box-shadow:0 8px 20px rgba(8, 24, 14, .12)
}
.featured-news-body {
	padding:25px 25px 27px
}
.news-meta-line {
	display:flex;
	justify-content:space-between;
	gap:15px;
	color:var(--muted);
	font-size:12px
}
.news-meta-line span, .news-panel-head span, .news-text-item>div span {
	color:var(--green);
	font-weight:700
}
.featured-news-body h2, .featured-news-body h3 {
	line-height:1.42;
	margin:12px 0 10px
}
.featured-news-body h3 {
	font-size:21px
}
.article-list-modern .article-card h2, .featured-news-body h2 {
	font-size:26px
}
.featured-news-body h2 a, .featured-news-body h3 a {
transition:color .22s
}
.featured-news-body h2 a:hover, .featured-news-body h3 a:hover {
	color:var(--green)
}
.featured-news-body p {
	margin:0 0 18px;
	color:var(--muted);
	font-size:14px
}
.news-text-panel {
	background:rgba(255, 255, 255, .96);
	border:1px solid var(--line);
	border-radius:var(--radius);
	padding:12px 28px 8px;
	box-shadow:var(--shadow-soft)
}
.news-panel-head, .news-text-item {
	border-bottom:1px solid var(--line)
}
.news-panel-head {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:15px;
	padding:16px 0 13px
}
.news-panel-head span {
	font-size:10px;
	letter-spacing:1.5px
}
.news-panel-head strong {
	font-size:18px
}
.news-text-item {
	position:relative;
	display:block;
	padding:10px 42px 10px 0;
transition:padding-left .25s, color .25s;
}
.news-text-item:last-child {
	border-bottom:0
}
.news-text-item:hover {
	padding-left:8px;
	color:var(--green2)
}
.news-text-item>div {
	display:flex;
	gap:12px;
	color:var(--muted);
	font-size:11px
}
.news-text-item h3 {
	margin:5px 0 3px;
	font-size:17px;
	line-height:1.45
}
.news-text-item p {
	margin:0;
	color:var(--muted);
	font-size:12px;
	line-height:1.6
}
.news-text-item>b {
	position:absolute;
	right:0;
	top:50%;
	width:28px;
	height:28px;
	border-radius:50%;
	display:grid;
	place-items:center;
	transform:translateY(-50%);
	background:var(--soft);
	color:var(--green);
transition:.25s
}
.news-text-item:hover>b {
	background:var(--green);
	color:#fff;
	transform:translateY(-50%) rotate(8deg)
}
.cta-band {
	margin:0px;
	border-radius:var(--radius-lg);
	background:radial-gradient(circle at 80% 20%, rgba(255, 255, 255, .2), transparent 28%), linear-gradient(120deg, var(--green), var(--green2));
	box-shadow:0 22px 54px rgba(20, 136, 74, .18)
}
.site-footer {
	background:radial-gradient(circle at 15% 10%, rgba(44, 120, 72, .12), transparent 30%), #0d1610
}
.back-top {
	border-radius:50%;
	box-shadow:0 10px 28px rgba(20, 136, 74, .25)
}
.page-hero {
	overflow:hidden;
	box-shadow:0 20px 52px rgba(8, 25, 14, .1)
}
.article-card, .contact-cards>a, .contact-cards>div, .contact-form, .custom-steps article, .detail-gallery, .empty-state, .filter-panel, .news-contact, .selector-block, .value-grid article {
	border-radius:var(--radius)
}
.contact-cards>a, .contact-cards>div, .custom-steps article, .selector-block, .value-grid article {
transition:transform .25s, box-shadow .25s, border-color .25s
}
.contact-cards>a:hover, .custom-steps article:hover, .selector-block:hover, .value-grid article:hover {
	transform:translateY(-4px);
	box-shadow:var(--shadow-soft);
	border-color:rgba(20, 136, 74, .2)
}
.stats-grid {
	border:1px solid var(--line);
	border-radius:var(--radius);
	overflow:hidden;
	background:#fff
}
.stats-grid>div {
transition:background .25s
}
.stats-grid>div:hover {
	background:#f5faf6
}
.process-line {
	gap:12px;
	border-top:0
}
.process-line>div {
	border:1px solid rgba(255, 255, 255, .12);
	border-radius:var(--radius-sm);
	background:rgba(255, 255, 255, .025)
}
.filter-panel {
	box-shadow:var(--shadow-soft)
}
.case-filter button, .filter-buttons button, .form-grid input, .form-grid select, .form-grid textarea, .search-box {
	border-radius:999px
}
.search-box {
	border:1px solid transparent;
transition:border-color .2s, background .2s
}
.search-box:focus-within {
border-color:rgba(20, 136, 74, .38);
background:#fff
}
.detail-info>div:hover, .form-grid textarea {
	border-radius:var(--radius-sm)
}
.case-filter button, .filter-buttons button {
transition:.22s
}
.case-filter button.active, .case-filter button:hover, .filter-buttons button.active, .filter-buttons button:hover {
	box-shadow:0 8px 20px rgba(20, 136, 74, .15);
	transform:translateY(-1px)
}
.detail-gallery {
	overflow:hidden;
	box-shadow:var(--shadow-soft)
}
.detail-copy .product-category {
	display:inline-flex;
	align-items:center;
	gap:5px;
	padding:6px 11px;
	border-radius:999px;
	background:#edf6ef;
transition:.22s
}
.detail-copy .product-category:hover {
	background:var(--green);
	color:#fff
}
.detail-tags a {
	padding:7px 13px;
	font-size:13px
}
.detail-info>div {
transition:background .2s, padding .2s
}
.detail-info>div:hover {
	background:#f7faf7;
	padding-left:10px;
	padding-right:10px
}
.detail-info a, .inline-attribute-links a {
	color:var(--green2);
	text-decoration:underline;
	text-decoration-color:rgba(20, 136, 74, .2);
	text-underline-offset:4px;
transition:.2s
}
.detail-info a:hover, .inline-attribute-links a:hover {
	color:var(--green);
	text-decoration-color:currentColor
}
.inline-attribute-links em {
	color:#9aa59e;
	font-style:normal
}
.detail-actions {
	display:flex;
	flex-wrap:wrap;
	gap:12px
}
.chip-list a {
	padding:8px 13px;
	font-size:13px
}
.selector-block {
	box-shadow:0 10px 32px rgba(20, 45, 31, .04)
}
.case-filter {
	padding:9px;
	width:fit-content;
	max-width:100%;
	margin-left:auto;
	margin-right:auto;
	background:var(--soft);
	border-radius:999px
}
.contact-form {
	box-shadow:var(--shadow-soft)
}
.map-placeholder {
	margin:18px;
	border-radius:var(--radius-lg)
}
.news-page-section {
	background:radial-gradient(circle at 92% 6%, rgba(20, 136, 74, .05), transparent 26%), #fcfdfc
}
.news-page-top {
	display:grid;
grid-template-columns:minmax(0, 1.35fr) minmax(310px, .65fr);
	gap:28px;
	align-items:start
}
.news-page-featured .featured-news-image {
	height:270px
}
.news-index-card {
	position:sticky;
	top:100px;
	padding:34px;
	border-radius:var(--radius-lg);
	color:#fff;
	background:radial-gradient(circle at 80% 10%, rgba(109, 205, 140, .18), transparent 28%), linear-gradient(145deg, #172b1e, #0f1d14);
	box-shadow:0 24px 60px rgba(10, 30, 17, .18)
}
.news-index-card h2 {
	margin:10px 0 2px;
	font-size:32px
}
.news-index-card>p {
	margin:0 0 23px;
	color:#b9c8be;
	font-size:13px
}
.news-index-card nav a {
	display:grid;
	grid-template-columns:28px 1fr 24px;
	gap:12px;
	align-items:center;
	padding:15px 0;
	border-bottom:1px solid rgba(255, 255, 255, .11);
transition:padding-left .22s, color .22s
}
.news-index-card nav a:hover {
	padding-left:7px;
	color:#8bd5a2
}
.news-index-card nav span {
	color:#70bd88;
	font-size:11px
}
.news-index-card nav strong {
	font-size:14px;
	font-weight:500
}
.news-index-card nav b {
	width:24px;
	height:24px;
	border-radius:50%;
	display:grid;
	place-items:center;
	background:rgba(255, 255, 255, .08)
}
.news-index-card .news-contact {
	background:rgba(255, 255, 255, .06);
	border:1px solid rgba(255, 255, 255, .1);
	margin-top:26px
}
.news-archive-head {
	display:flex;
	justify-content:space-between;
	gap:30px;
	align-items:end;
	margin:90px 0 34px
}
.news-archive-head h2 {
	margin:8px 0 0;
	font-size:42px
}
.news-archive-head>p {
	max-width:420px;
	margin:0;
	color:var(--muted)
}
.article-list-modern {
	grid-template-columns:repeat(2, minmax(0, 1fr));
	gap:24px
}
.article-list-modern .article-card {
	display:flex;
	flex-direction:column;
	min-height:390px;
	background:#fff;
	box-shadow:0 10px 34px rgba(20, 45, 31, .055);
transition:transform .3s, box-shadow .3s, border-color .3s
}
.article-list-modern .article-card:hover {
	transform:translateY(-5px);
	box-shadow:var(--shadow);
	border-color:transparent
}
.article-list-modern .article-body {
	flex:1
}
.article-links {
	display:flex;
	flex-wrap:wrap;
	gap:8px;
	margin-top:22px
}
@media (max-width:1100px) {
.home-news-layout, .news-page-top {
grid-template-columns:1fr
}
.news-index-card {
position:static
}
}
@media (max-width:860px) {
.nav-link {
border-radius:var(--radius-sm)
}
.quick-categories {
margin-top:-18px
}
.category-strip {
border-radius:var(--radius)
}
.cta-band, .custom-home, .map-placeholder, .strength-section {
margin-left:10px;
margin-right:10px;
border-radius:22px
}
.article-list-modern, .featured-news-grid, .news-page-featured {
grid-template-columns:1fr
}
.featured-news-image, .news-page-featured .featured-news-image {
height:330px
}
}
@media (max-width:580px) {
.hero-slider, .page-hero {
border-radius:0 0 20px 20px
}
.quick-categories {
margin-top:-12px
}
.category-strip>a {
min-height:auto
}
.cta-band, .custom-home, .map-placeholder, .strength-section {
margin-left:6px;
margin-right:6px;
border-radius:18px
}
.featured-news-image, .news-page-featured .featured-news-image {
height:230px
}
.featured-news-body, .news-index-card, .news-text-panel {
padding:22px
}
.news-text-item {
padding-right:34px
}
.news-archive-head {
align-items:flex-start;
margin-top:65px
}
.news-archive-head h2 {
font-size:34px
}
.article-list-modern .article-card {
min-height:auto
}
.detail-actions, .news-archive-head {
flex-direction:column
}
.detail-actions .btn {
width:100%
}
}
.cloud-hero {
	background:var(--cloud-navy)
}
.cloud-hero .btn-primary, .cloud-tone-deep .btn-primary {
	background:linear-gradient(135deg, var(--cloud-blue), var(--cloud-blue-2));
	box-shadow:0 14px 34px rgba(20, 110, 245, .28)
}
.cloud-hero .btn-primary:hover, .cloud-tone-deep .btn-primary:hover {
	background:linear-gradient(135deg, #2a7cff, #0048c7)
}
.cloud-floating .category-strip {
	background:rgba(255, 255, 255, .94);
	backdrop-filter:blur(22px);
	-webkit-backdrop-filter:blur(22px)
}
.cloud-floating .category-strip>a::before {
content:"";
position:absolute;
left:22px;
right:22px;
top:0;
height:3px;
border-radius:0 0 999px 999px;
opacity:.9
}
.cloud-floating .category-strip>a:first-child::before {
background:var(--cloud-blue)
}
.cloud-floating .category-strip>a:nth-child(2)::before {
background:var(--cloud-cyan)
}
.cloud-floating .category-strip>a:nth-child(3)::before {
background:var(--cloud-violet)
}
.cloud-floating .category-strip>a:nth-child(4)::before {
background:var(--green)
}
.cloud-floating .category-strip>a:first-child:hover {
	background:linear-gradient(135deg, #146ef5, #0052d9)
}
.cloud-floating .category-strip>a:nth-child(2):hover {
background:linear-gradient(135deg, #18aec5, #087ea1)
}
.cloud-floating .category-strip>a:nth-child(3):hover {
background:linear-gradient(135deg, #7767f6, #5143c8)
}
.cloud-floating .category-strip>a:nth-child(4):hover {
background:linear-gradient(135deg, var(--green), var(--green2))
}
.cloud-section {
	isolation:isolate
}
.cloud-section::before {
width:520px;
height:520px;
right:-250px;
top:-260px;
border-radius:50%;
filter:blur(2px)
}
.cloud-section::after {
background-image:linear-gradient(rgba(69, 112, 176, .09) 1px, transparent 1px), linear-gradient(90deg, rgba(69, 112, 176, .09) 1px, transparent 1px);
background-size:42px 42px;
mask-image:linear-gradient(90deg, transparent, #000 18%, #000 82%, transparent);
-webkit-mask-image:linear-gradient(90deg, transparent, #000 18%, #000 82%, transparent)
}
.cloud-tone-sky {
	background:radial-gradient(circle at 8% 12%, rgba(34, 184, 207, .1), transparent 26%), linear-gradient(135deg, #fbfdff 0, #eef6ff 54%, #edf9f4 100%)
}
.cloud-tone-sky::before {
background:radial-gradient(circle, rgba(20, 110, 245, .16), transparent 68%)
}
.cloud-tone-blue {
	background:radial-gradient(circle at 88% 18%, rgba(119, 103, 246, .12), transparent 28%), linear-gradient(140deg, #edf4ff 0, #f7faff 52%, #eef9ff 100%)
}
.cloud-tone-blue::before {
background:radial-gradient(circle, rgba(20, 110, 245, .17), transparent 68%)
}
.cloud-tone-lilac {
	background:radial-gradient(circle at 12% 18%, rgba(119, 103, 246, .13), transparent 30%), linear-gradient(135deg, #fbfaff 0, #f2efff 48%, #eef6ff 100%)
}
.cloud-tone-lilac::before {
background:radial-gradient(circle, rgba(119, 103, 246, .18), transparent 68%)
}
.cloud-tone-cyan {
	background:radial-gradient(circle at 86% 20%, rgba(34, 184, 207, .14), transparent 30%), linear-gradient(135deg, #f7fdff 0, #eafaff 48%, #f1f4ff 100%)
}
.cloud-tone-cyan::before {
background:radial-gradient(circle, rgba(34, 184, 207, .2), transparent 68%)
}
.cloud-tone-deep::after {
opacity:.15;
background-image:linear-gradient(rgba(135, 184, 255, .13) 1px, transparent 1px), linear-gradient(90deg, rgba(135, 184, 255, .13) 1px, transparent 1px)
}
.section-about .split-about {
	padding:38px;
	border-radius:32px;
	box-shadow:var(--cloud-shadow)
}
.section-about .about-media>img {
	box-shadow:0 24px 55px rgba(31, 67, 135, .16)
}
.cloud-tone-blue .filter-panel, .cloud-tone-blue .selector-block {
	box-shadow:var(--cloud-shadow-soft)
}
.cloud-tone-cyan .article-card, .cloud-tone-lilac .article-card {
	border-color:rgba(103, 142, 198, .18);
	box-shadow:var(--cloud-shadow-soft)
}
.cloud-tone-sky .contact-form {
	box-shadow:var(--cloud-shadow-soft)
}
.cloud-tone-sky .detail-gallery, .cloud-tone-sky .value-grid article {
	border-color:rgba(103, 142, 198, .18);
	box-shadow:var(--cloud-shadow-soft)
}
.section-products .product-card {
	box-shadow:var(--cloud-shadow-soft)
}
.cloud-tone-blue .product-card:hover, .cloud-tone-cyan .article-card:hover, .cloud-tone-lilac .article-card:hover, .section-products .product-card:hover {
	box-shadow:var(--cloud-shadow)
}
.cloud-tone-blue .product-image, .cloud-tone-sky .detail-gallery, .section-products .product-image {
	background:radial-gradient(circle at 50% 34%, #fff 0, #f3f7fd 58%, #eaf2fc 100%)
}
.section-cases .case-card {
	box-shadow:0 18px 46px rgba(65, 63, 139, .14)
}
.cloud-tone-deep .custom-copy p {
	color:#c7d6ec
}
.cloud-tone-deep .tag-cloud a {
	background:rgba(255, 255, 255, .07);
	border-color:rgba(151, 200, 255, .22);
	color:#e5f0ff
}
.cloud-tone-deep .tag-cloud a:hover {
	background:rgba(34, 184, 207, .2);
	border-color:rgba(91, 220, 239, .5)
}
.news-page-section .article-list-modern .article-card:nth-child(3n+1) {
border-top:3px solid var(--cloud-blue)
}
.news-page-section .article-list-modern .article-card:nth-child(3n+2) {
border-top:3px solid var(--cloud-cyan)
}
.news-page-section .article-list-modern .article-card:nth-child(3n+3) {
border-top:3px solid var(--cloud-violet)
}
.cloud-page-hero {
	background-color:var(--cloud-navy)
}
.cloud-tone-blue .filter-panel, .cloud-tone-sky .contact-form, .cloud-tone-sky .detail-layout {
	border-radius:24px
}
.cloud-tone-sky .detail-layout {
	padding:32px;
	box-shadow:var(--cloud-shadow)
}
.cloud-tone-blue .chip-list a, .cloud-tone-blue .search-box, .cloud-tone-sky .detail-tags a {
	background:#f0f6ff;
	border-color:rgba(103, 142, 198, .18)
}
.cloud-tone-blue .filter-buttons button, .cloud-tone-lilac .case-filter button {
	border-radius:999px;
	border-color:rgba(103, 142, 198, .2);
	background:rgba(255, 255, 255, .82)
}
.cloud-tone-blue .filter-buttons button.active, .cloud-tone-blue .filter-buttons button:hover {
	background:linear-gradient(135deg, var(--cloud-blue), var(--cloud-blue-2));
	border-color:transparent
}
.cloud-tone-lilac .case-filter button.active, .cloud-tone-lilac .case-filter button:hover {
	background:linear-gradient(135deg, var(--cloud-violet), #5546ce);
	border-color:transparent
}
.timeline-section.cloud-tone-deep .process-line>div {
	background:rgba(255, 255, 255, .035);
transition:background .25s, transform .25s
}
.timeline-section.cloud-tone-deep .process-line>div:hover {
	background:rgba(34, 184, 207, .1);
	transform:translateY(-3px)
}
.timeline-section.cloud-tone-deep .process-line b {
	color:#91ddf2
}
.cloud-map {
	box-shadow:0 28px 74px rgba(7, 23, 47, .2)
}
.cloud-cta::after {
content:"";
position:absolute;
inset:0;
opacity:.14;
background-image:linear-gradient(rgba(255, 255, 255, .18) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .18) 1px, transparent 1px);
background-size:38px 38px;
pointer-events:none
}
.cloud-cta .container {
	position:relative;
	z-index:2
}
body .site-footer {
	background:radial-gradient(circle at 85%0, rgba(20, 110, 245, .13), transparent 25%), linear-gradient(135deg, #050f22, #071a35 62%, #0a2442)
}
body .back-top {
	background:linear-gradient(135deg, var(--cloud-blue), var(--cloud-violet));
	border-radius:14px
}
@media (max-width:860px) {
.section-about .split-about {
padding:26px;
border-radius:24px
}
.cloud-tone-blue::before, .cloud-tone-cyan::before, .cloud-tone-lilac::before, .cloud-tone-sky::before {
width:360px;
height:360px;
right:-220px;
top:-180px
}
.cloud-tone-sky .detail-layout {
padding:22px
}
}
@media (max-width:580px) {
.cloud-cta::after, .cloud-section::after {
background-size:30px 30px
}
.section-about .split-about {
padding:18px;
border-radius:20px
}
.cloud-hero, .cloud-page-hero {
border-radius:0 0 22px 22px
}
.cloud-tone-sky .detail-layout {
padding:15px;
border-radius:20px
}
}
body .site-footer, body main {
	position:relative
}
.cloud-section, .cta-band.cloud-cta, .custom-home.cloud-tone-deep, .map-placeholder.cloud-map, .news-page-section, .timeline-section.cloud-tone-deep {
--tech-line:rgba(20, 110, 245, 0.08);
--tech-dot:rgba(20, 110, 245, 0.12);
--tech-ring:rgba(34, 184, 207, 0.12);
--tech-glow:rgba(119, 103, 246, 0.1);
--block-border:rgba(108, 145, 197, 0.18);
	position:relative;
	overflow:hidden;
	border:1px solid var(--block-border);
	box-shadow:0 20px 60px rgba(31, 67, 135, .09)
}
.news-page-section, .section.cloud-section, .timeline-section.cloud-tone-deep {
	margin:18px;
	border-radius:34px
}
.cta-band.cloud-cta, .custom-home.cloud-tone-deep, .map-placeholder.cloud-map {
	border-radius:34px
}
.cloud-section::before, .cta-band.cloud-cta::before, .custom-home.cloud-tone-deep::before, .map-placeholder.cloud-map::before, .news-page-section::before, .timeline-section.cloud-tone-deep::before {
background:radial-gradient(circle at 90% 16%, var(--tech-glow), transparent 22%), radial-gradient(circle at 14% 84%, var(--tech-ring), transparent 20%), linear-gradient(135deg, transparent 0 36%, var(--tech-line) 36% 36.5%, transparent 36.5% 100%), linear-gradient(0deg, transparent 0 87%, rgba(255, 255, 255, .14) 87% 88%, transparent 88% 100%)
}
.cloud-section::after, .cta-band.cloud-cta::after, .custom-home.cloud-tone-deep::after, .map-placeholder.cloud-map::after, .news-page-section::after, .timeline-section.cloud-tone-deep::after {
background:radial-gradient(circle at 16% 18%, var(--tech-dot)0 1.5px, transparent 1.6px) 0 0/26px 26px, radial-gradient(circle at 85% 76%, var(--tech-dot)0 1.2px, transparent 1.3px) 0 0/22px 22px, radial-gradient(circle at 78% 22%, transparent 0 44px, var(--tech-ring) 45px 46px, transparent 47px), radial-gradient(circle at 76% 22%, transparent 0 82px, var(--tech-line) 83px 84px, transparent 85px), radial-gradient(circle at 12% 72%, transparent 0 30px, var(--tech-line) 31px 32px, transparent 33px), linear-gradient(90deg, transparent 0 10%, rgba(255, 255, 255, .14) 10% 10.25%, transparent 10.25% 89.75%, rgba(255, 255, 255, .12) 89.75% 90%, transparent 90% 100%)
}
.cloud-section>.container, .cta-band.cloud-cta>.container, .custom-home.cloud-tone-deep>.container, .map-placeholder.cloud-map>.container, .news-page-section>.container, .timeline-section.cloud-tone-deep>.container {
	position:relative;
	z-index:2
}
.cloud-tone-sky, .news-page-section.cloud-tone-sky {
--tech-line:rgba(20, 110, 245, 0.07);
--tech-dot:rgba(20, 110, 245, 0.15);
--tech-ring:rgba(34, 184, 207, 0.14);
--tech-glow:rgba(119, 103, 246, 0.1);
--block-border:rgba(111, 149, 202, 0.22)
}
.cloud-tone-blue {
--tech-line:rgba(20, 110, 245, 0.08);
--tech-dot:rgba(34, 184, 207, 0.14);
--tech-ring:rgba(119, 103, 246, 0.12);
--tech-glow:rgba(20, 110, 245, 0.11);
--block-border:rgba(111, 149, 202, 0.22)
}
.cloud-tone-lilac {
--tech-line:rgba(119, 103, 246, 0.09);
--tech-dot:rgba(119, 103, 246, 0.14);
--tech-ring:rgba(20, 110, 245, 0.1);
--tech-glow:rgba(34, 184, 207, 0.08);
--block-border:rgba(137, 127, 212, 0.2)
}
.cloud-tone-cyan {
--tech-line:rgba(34, 184, 207, 0.09);
--tech-dot:rgba(34, 184, 207, 0.16);
--tech-ring:rgba(20, 110, 245, 0.11);
--tech-glow:rgba(119, 103, 246, 0.08);
--block-border:rgba(102, 175, 194, 0.22)
}
.cloud-cta, .cloud-map, .cloud-tone-deep {
--tech-line:rgba(162, 211, 255, 0.16);
--tech-dot:rgba(189, 227, 255, 0.22);
--tech-ring:rgba(34, 184, 207, 0.18);
--tech-glow:rgba(119, 103, 246, 0.16);
--block-border:rgba(153, 199, 245, 0.14)
}
.cloud-tone-blue .filter-panel, .cloud-tone-blue .selector-block, .cloud-tone-sky .contact-cards>a, .cloud-tone-sky .contact-cards>div, .cloud-tone-sky .contact-form, .cloud-tone-sky .detail-layout, .home-news-section .featured-news-card, .home-news-section .news-text-panel, .news-page-section .article-card, .news-page-section .featured-news-card {
	border:1px solid rgba(108, 145, 197, .16);
	backdrop-filter:blur(14px);
	-webkit-backdrop-filter:blur(14px)
}
.section-about .split-about {
	border:1px solid rgba(108, 145, 197, .16);
	backdrop-filter:blur(12px);
	-webkit-backdrop-filter:blur(12px)
}
.home-news-section::before, .news-page-section::before, .section-about::before, .section-cases::before, .section-products::before {
transform:translate3d(0, 0, 0)
}
.home-news-section::after, .news-page-section::after, .section-about::after, .section-cases::after, .section-products::after {
background-position:0 0, 0 0, 78% 20%, 76% 22%, 12% 72%, 0 0
}
.cloud-hero::before, .cloud-page-hero::before {
background:radial-gradient(circle at 86% 20%, rgba(34, 184, 207, .26), transparent 22%), radial-gradient(circle at 72% 74%, rgba(119, 103, 246, .16), transparent 28%), linear-gradient(90deg, transparent 0 72%, rgba(255, 255, 255, .12) 72% 72.12%, transparent 72.12% 100%), linear-gradient(0deg, transparent 0 78%, rgba(255, 255, 255, .08) 78% 78.12%, transparent 78.12% 100%)
}
.cloud-hero .hero-content, .cloud-page-hero .page-hero-inner {
	position:relative;
	z-index:2
}
.section.cloud-section+.section.cloud-section, .section.cloud-section+.timeline-section.cloud-section, .timeline-section.cloud-section+.section.cloud-section {
	margin-top:22px
}
@media (max-width:860px) {
.cta-band.cloud-cta, .custom-home.cloud-tone-deep, .map-placeholder.cloud-map, .news-page-section, .section.cloud-section, .timeline-section.cloud-tone-deep {
margin-left:10px;
margin-right:10px;
border-radius:24px
}
.cloud-section::after, .cta-band.cloud-cta::after, .custom-home.cloud-tone-deep::after, .map-placeholder.cloud-map::after, .news-page-section::after, .timeline-section.cloud-tone-deep::after {
background-size:24px 24px, 20px 20px, auto, auto, auto, auto
}
}
@media (max-width:580px) {
.cta-band.cloud-cta, .custom-home.cloud-tone-deep, .map-placeholder.cloud-map, .news-page-section, .section.cloud-section, .timeline-section.cloud-tone-deep {
margin-left:6px;
margin-right:6px;
border-radius:18px
}
.cloud-section::before, .cta-band.cloud-cta::before, .custom-home.cloud-tone-deep::before, .map-placeholder.cloud-map::before, .news-page-section::before, .timeline-section.cloud-tone-deep::before {
background:radial-gradient(circle at 86% 16%, var(--tech-glow), transparent 24%), radial-gradient(circle at 14% 84%, var(--tech-ring), transparent 22%), linear-gradient(135deg, transparent 0 44%, var(--tech-line) 44% 44.5%, transparent 44.5% 100%)
}
.cloud-section::after, .cta-band.cloud-cta::after, .custom-home.cloud-tone-deep::after, .map-placeholder.cloud-map::after, .news-page-section::after, .timeline-section.cloud-tone-deep::after {
background:radial-gradient(circle at 16% 18%, var(--tech-dot)0 1.35px, transparent 1.45px) 0 0/22px 22px, radial-gradient(circle at 84% 74%, transparent 0 34px, var(--tech-ring) 35px 36px, transparent 37px), radial-gradient(circle at 12% 72%, transparent 0 24px, var(--tech-line) 25px 26px, transparent 27px);
opacity:.8
}
}
body .topbar {
	background:linear-gradient(90deg, #10271a 0, #173923 54%, #3a2819 100%);
	color:#d5e2d8
}
body .site-header, body .site-header.scrolled {
	border-bottom-color:rgba(58, 85, 67, .09);
	box-shadow:0 9px 30px rgba(35, 67, 45, .07)
}
body .nav-link.active, body .nav-link:hover {
	color:var(--logo-green)
}
body .btn-primary, body .header-cta {
	background:linear-gradient(135deg, var(--logo-green), #057a32);
	box-shadow:0 12px 30px rgba(7, 145, 58, .22)
}
body .btn-primary:hover, body .header-cta:hover {
	background:linear-gradient(135deg, #087f36, var(--logo-green-dark));
	box-shadow:0 16px 36px rgba(7, 145, 58, .27)
}
body .btn-dark {
	background:linear-gradient(135deg, var(--logo-brown), var(--logo-brown-dark));
	box-shadow:0 12px 28px rgba(128, 78, 33, .2)
}
body .btn-dark:hover {
	background:linear-gradient(135deg, #95602c, #5d3517)
}
.cloud-hero {
	background:#0b2416;
	box-shadow:0 26px 72px rgba(18, 49, 29, .2)
}
.cloud-hero .hero-overlay {
	background:radial-gradient(ellipse at 78% 20%, rgba(7, 145, 58, .24), transparent 34%), radial-gradient(ellipse at 88% 82%, rgba(128, 78, 33, .2), transparent 32%), linear-gradient(90deg, rgba(7, 24, 14, .9), rgba(10, 46, 24, .64) 54%, rgba(55, 35, 20, .2))
}
.cloud-hero::before, .cloud-page-hero::before {
content:"";
position:absolute;
inset:0;
z-index:1;
pointer-events:none;
background:radial-gradient(circle at 88% 42%, transparent 0 90px, rgba(255, 255, 255, .12) 91px 92px, transparent 93px), radial-gradient(circle at 88% 42%, transparent 0 168px, rgba(255, 255, 255, .075) 169px 170px, transparent 171px), radial-gradient(circle at 88% 42%, transparent 0 246px, rgba(255, 255, 255, .045) 247px 248px, transparent 249px), radial-gradient(ellipse at 78% 26%, rgba(28, 181, 79, .14), transparent 34%), radial-gradient(ellipse at 92% 82%, rgba(170, 105, 48, .12), transparent 30%);
opacity:.98
}
.cloud-hero::after, .cloud-page-hero::after {
content:"";
position:absolute;
right:8%;
bottom:16%;
width:180px;
height:180px;
z-index:1;
pointer-events:none;
opacity:.32;
background:radial-gradient(circle, rgba(255, 255, 255, .75)0 1.25px, transparent 1.5px) 0 0/20px 20px;
mask-image:radial-gradient(circle, #000 0 45%, transparent 72%);
-webkit-mask-image:radial-gradient(circle, #000 0 45%, transparent 72%)
}
.cloud-page-hero {
	background-image:radial-gradient(ellipse at 82% 18%, rgba(7, 145, 58, .22), transparent 30%), radial-gradient(ellipse at 88% 86%, rgba(128, 78, 33, .18), transparent 32%), linear-gradient(90deg, rgba(7, 24, 14, .91), rgba(13, 57, 31, .62) 58%, rgba(67, 41, 21, .18)), var(--hero);
	background-color:#0b2416;
	box-shadow:0 24px 64px rgba(19, 52, 30, .17)
}
.cloud-hero .eyebrow.light, .cloud-page-hero .eyebrow.light, .cloud-tone-deep .eyebrow.light {
	color:#a6e0b8
}
.cloud-tone-sky {
	background:radial-gradient(circle at 10% 14%, rgba(7, 145, 58, .095), transparent 27%), radial-gradient(circle at 88% 82%, rgba(128, 78, 33, .065), transparent 26%), linear-gradient(135deg, #fbfdfb 0, #edf8f0 58%, #fbf7f1 100%)
}
.cloud-tone-blue {
	background:radial-gradient(circle at 88% 14%, rgba(7, 145, 58, .1), transparent 29%), radial-gradient(circle at 14% 88%, rgba(128, 78, 33, .06), transparent 24%), linear-gradient(140deg, #f4fbf6 0, #fff 52%, #f8f1e8 100%)
}
.cloud-tone-lilac {
	background:radial-gradient(circle at 12% 18%, rgba(128, 78, 33, .095), transparent 29%), radial-gradient(circle at 89% 84%, rgba(7, 145, 58, .075), transparent 27%), linear-gradient(135deg, #fcf8f3 0, #f7efe5 48%, #eff8f1 100%)
}
.cloud-tone-cyan {
	background:radial-gradient(circle at 86% 18%, rgba(7, 145, 58, .11), transparent 29%), radial-gradient(circle at 12% 84%, rgba(128, 78, 33, .065), transparent 25%), linear-gradient(135deg, #f4fbf6 0, #eaf7ee 50%, #fbf7f1 100%)
}
.cloud-tone-deep {
	color:#fff;
	background:radial-gradient(circle at 16% 20%, rgba(24, 176, 76, .18), transparent 31%), radial-gradient(circle at 88% 82%, rgba(155, 94, 40, .22), transparent 34%), linear-gradient(135deg, #092818 0, #103e24 54%, #442b18 100%)!important
}
.cloud-section::before, .cta-band.cloud-cta::before, .custom-home.cloud-tone-deep::before, .map-placeholder.cloud-map::before, .news-page-section::before, .timeline-section.cloud-tone-deep::before {
content:"";
position:absolute;
inset:0;
z-index:0;
pointer-events:none;
background:radial-gradient(circle at 88% 18%, transparent 0 74px, rgba(7, 145, 58, .085) 75px 76px, transparent 77px), radial-gradient(circle at 88% 18%, transparent 0 138px, rgba(128, 78, 33, .065) 139px 140px, transparent 141px), radial-gradient(ellipse at 13% 82%, rgba(7, 145, 58, .075), transparent 26%), radial-gradient(ellipse at 94% 86%, rgba(128, 78, 33, .06), transparent 24%);
opacity:1
}
.cloud-section::after, .cta-band.cloud-cta::after, .custom-home.cloud-tone-deep::after, .map-placeholder.cloud-map::after, .news-page-section::after, .timeline-section.cloud-tone-deep::after {
content:"";
position:absolute;
inset:0;
z-index:0;
pointer-events:none;
opacity:.75;
background:radial-gradient(circle, rgba(7, 145, 58, .18)0 1.25px, transparent 1.5px) 0 0/24px 24px;
mask-image:radial-gradient(circle at 12% 78%, #000 0 110px, transparent 210px);
-webkit-mask-image:radial-gradient(circle at 12% 78%, #000 0 110px, transparent 210px)
}
.cloud-cta::before, .cloud-map::before, .cloud-tone-deep::before {
background:radial-gradient(circle at 88% 18%, transparent 0 78px, rgba(183, 235, 198, .14) 79px 80px, transparent 81px), radial-gradient(circle at 88% 18%, transparent 0 146px, rgba(205, 169, 133, .11) 147px 148px, transparent 149px), radial-gradient(ellipse at 13% 82%, rgba(7, 145, 58, .13), transparent 27%), radial-gradient(ellipse at 94% 86%, rgba(128, 78, 33, .14), transparent 25%)
}
.cloud-cta::after, .cloud-map::after, .cloud-tone-deep::after {
background:radial-gradient(circle, rgba(225, 243, 230, .26)0 1.2px, transparent 1.5px) 0 0/24px 24px;
mask-image:radial-gradient(circle at 12% 78%, #000 0 100px, transparent 205px);
-webkit-mask-image:radial-gradient(circle at 12% 78%, #000 0 100px, transparent 205px)
}
.cloud-tone-blue .filter-panel, .cloud-tone-blue .selector-block, .cloud-tone-sky .contact-cards>a, .cloud-tone-sky .contact-cards>div, .cloud-tone-sky .contact-form, .cloud-tone-sky .detail-layout, .home-news-section .featured-news-card, .home-news-section .news-text-panel, .news-page-section .article-card, .news-page-section .featured-news-card, .section-about .split-about, .section-products .product-card {
	background:rgba(255, 255, 255, .9);
	border-color:rgba(76, 107, 84, .15);
	box-shadow:0 18px 50px rgba(35, 73, 47, .085)
}
.cloud-floating .category-strip {
	border-color:rgba(76, 107, 84, .15);
	box-shadow:0 25px 68px rgba(34, 70, 45, .13)
}
.cloud-floating .category-strip>a {
	position:relative;
	border-color:rgba(76, 107, 84, .12);
	background:linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(249, 251, 249, .98))
}
.cloud-floating .category-strip>a:first-child::before, .cloud-floating .category-strip>a:nth-child(3)::before {
background:var(--logo-green)
}
.cloud-floating .category-strip>a:nth-child(2)::before, .cloud-floating .category-strip>a:nth-child(4)::before {
background:var(--logo-brown)
}
.cloud-floating .category-strip>a:first-child:hover, .cloud-floating .category-strip>a:nth-child(3):hover {
background:linear-gradient(135deg, var(--logo-green), var(--logo-green-dark))
}
.cloud-floating .category-strip>a:nth-child(2):hover, .cloud-floating .category-strip>a:nth-child(4):hover {
background:linear-gradient(135deg, #95602d, var(--logo-brown-dark))
}
.cloud-floating .category-strip>a:nth-child(2) b, .cloud-floating .category-strip>a:nth-child(4) b {
color:var(--logo-brown)
}
.cloud-floating .category-strip>a:hover b {
	color:rgba(255, 255, 255, .76)
}
body .eyebrow, body .news-meta-line span, body .news-panel-head span, body .news-text-item>div span, body .product-card-body small, body .text-link {
	color:var(--logo-green)
}
body .media-badge, body .product-image>span {
	background:linear-gradient(135deg, var(--logo-green), var(--logo-green-dark))
}
body .footer-grid a:hover, body .news-index-card nav span, body .numbers strong, body .strength-grid article>b, body .timeline-section.cloud-tone-deep .process-line b {
	color:#a5ddb6
}
body .strength-grid article:first-child {
	background:linear-gradient(145deg, rgba(7, 145, 58, .18), rgba(255, 255, 255, .04))
}
body .strength-grid article:nth-child(2) {
background:linear-gradient(145deg, rgba(128, 78, 33, .2), rgba(255, 255, 255, .04))
}
body .strength-grid article:nth-child(3) {
background:linear-gradient(145deg, rgba(7, 145, 58, .12), rgba(128, 78, 33, .1))
}
.news-page-section .article-list-modern .article-card:nth-child(odd) {
border-top-color:var(--logo-green)
}
.news-page-section .article-list-modern .article-card:nth-child(2n) {
border-top-color:var(--logo-brown)
}
.news-page-section .news-index-card {
	background:radial-gradient(circle at 82% 12%, rgba(7, 145, 58, .24), transparent 31%), radial-gradient(circle at 10% 90%, rgba(128, 78, 33, .2), transparent 34%), linear-gradient(145deg, #082517, #124127 60%, #432a18);
	box-shadow:0 26px 70px rgba(22, 54, 31, .22)
}
.cloud-map {
	background:radial-gradient(circle at 82% 18%, rgba(7, 145, 58, .22), transparent 30%), radial-gradient(circle at 15% 85%, rgba(128, 78, 33, .2), transparent 35%), linear-gradient(135deg, #082417, #104127 58%, #452b18)!important
}
.cloud-cta {
	position:relative;
	overflow:hidden;
	background:radial-gradient(circle at 84% 10%, rgba(255, 255, 255, .2), transparent 25%), radial-gradient(circle at 10% 100%, rgba(128, 78, 33, .22), transparent 31%), linear-gradient(110deg, #078d39 0, #087333 48%, #805023 100%)!important;
	box-shadow:0 24px 68px rgba(35, 78, 46, .18)
}
.cloud-cta .btn-light {
	color:#0b3e85;
	box-shadow:0 14px 34px rgba(43, 42, 28, .16)
}
body .site-footer {
	background:radial-gradient(circle at 86%0, rgba(7, 145, 58, .13), transparent 25%), radial-gradient(circle at 10% 100%, rgba(128, 78, 33, .11), transparent 28%), linear-gradient(135deg, #071c11, #0c2d1b 62%, #2b1d13)
}
body .back-top {
	background:linear-gradient(135deg, var(--logo-green), var(--logo-brown));
	box-shadow:0 12px 28px rgba(43, 83, 51, .25)
}
body .breadcrumb {
	background:linear-gradient(90deg, #fbfdfb, #eef8f1, #faf5ef);
	border-bottom-color:rgba(77, 106, 84, .14)
}
.custom-visual::before {
inset:18px -18px -18px 18px;
border:0;
background:linear-gradient(135deg, rgba(7, 145, 58, .28), rgba(128, 78, 33, .2));
filter:blur(0);
opacity:.62
}
@media (max-width:860px) {
.cloud-hero::after, .cloud-page-hero::after {
width:130px;
height:130px;
right:4%
}
.cloud-section::before, .cta-band.cloud-cta::before, .custom-home.cloud-tone-deep::before, .map-placeholder.cloud-map::before, .news-page-section::before, .timeline-section.cloud-tone-deep::before {
background:radial-gradient(circle at 90% 16%, transparent 0 58px, rgba(7, 145, 58, .08) 59px 60px, transparent 61px), radial-gradient(circle at 90% 16%, transparent 0 108px, rgba(128, 78, 33, .06) 109px 110px, transparent 111px), radial-gradient(ellipse at 12% 85%, rgba(7, 145, 58, .065), transparent 24%)
}
}
@media (max-width:580px) {
.cloud-hero::before, .cloud-page-hero::before {
background:radial-gradient(circle at 90% 38%, transparent 0 64px, rgba(255, 255, 255, .1) 65px 66px, transparent 67px), radial-gradient(circle at 90% 38%, transparent 0 114px, rgba(255, 255, 255, .06) 115px 116px, transparent 117px), radial-gradient(ellipse at 86% 20%, rgba(7, 145, 58, .14), transparent 30%)
}
.cloud-hero::after, .cloud-page-hero::after {
display:none
}
}
body .cloud-tone-blue .filter-buttons button.active, body .cloud-tone-blue .filter-buttons button:hover {
	background:linear-gradient(135deg, var(--logo-green), var(--logo-green-dark));
	border-color:transparent
}
body .cloud-tone-lilac .case-filter button.active, body .cloud-tone-lilac .case-filter button:hover {
	background:linear-gradient(135deg, var(--logo-brown), var(--logo-brown-dark));
	border-color:transparent
}
body .cloud-tone-blue .chip-list a, body .cloud-tone-blue .search-box, body .cloud-tone-sky .detail-tags a {
	background:#f1f8f3;
	border-color:rgba(7, 145, 58, .15)
}
body .cloud-tone-deep .tag-cloud a:hover {
	background:rgba(7, 145, 58, .2);
	border-color:rgba(172, 222, 187, .48)
}
.cloud-cta .btn-light, body .featured-news-image>span {
	color:var(--logo-green-dark)
}
.cloud-hero, .cloud-page-hero, .hero-slider, .page-hero {
	border-radius:0!important
}
.cloud-cta, .cta-band, .site-footer {
	margin-left:0!important;
	margin-right:0!important;
	border-radius:0!important
}
.site-footer {
	margin-top:0!important
}
.category-strip b, .custom-steps article>b, .selector-title>b, .strength-grid article>b {
	position:relative;
	flex:0 0 auto;
	width:50px;
	height:50px;
	border-radius:50%;
	display:grid;
	place-items:center;
	color:var(--v7-green);
	font-size:14px;
	font-weight:800;
	letter-spacing:.08em;
	background:linear-gradient(145deg, #fff, var(--v7-green-soft));
	border:1px solid rgba(7, 145, 58, .18);
	box-shadow:0 10px 26px rgba(36, 83, 49, .1), inset 0 1px 0 rgba(255, 255, 255, .9);
transition:transform .3s, color .3s, background .3s, border-color .3s
}
.category-strip b:after, .custom-steps article>b:after, .selector-title>b:after, .strength-grid article>b:after {
	content:"";
	position:absolute;
	inset:-5px;
	border:1px dashed rgba(7, 145, 58, .18);
	border-radius:inherit;
transition:.3s
}
.category-strip>a:nth-child(2n) b, .custom-steps article:nth-child(2n)>b, .strength-grid article:nth-child(2n)>b {
color:var(--v7-brown);
background:linear-gradient(145deg, #fff, var(--v7-brown-soft));
border-color:rgba(128, 78, 33, .18)
}
.category-strip>a:nth-child(2n) b:after, .custom-steps article:nth-child(2n)>b:after, .strength-grid article:nth-child(2n)>b:after {
border-color:rgba(128, 78, 33, .18)
}
.category-strip>a:hover b {
	color:var(--v7-green-dark);
	background:#fff;
	border-color:rgba(255, 255, 255, .7);
	transform:rotate(-5deg) scale(1.04)
}
.category-strip>a:nth-child(2n):hover b {
color:var(--v7-brown-dark)
}
.category-strip>a:hover b:after {
	transform:rotate(18deg);
	border-color:rgba(255, 255, 255, .58)
}
.case-head-actions {
	display:flex;
	align-items:center;
	gap:14px
}
.case-carousel-nav {
	display:flex;
	gap:8px
}
.case-scroll-btn {
	border-radius:50%;
	color:var(--v7-green);
	font-size:20px;
	line-height:1;
	cursor:pointer
}
.case-scroll-btn:hover {
	background:var(--v7-green);
	color:#fff;
	border-color:var(--v7-green)
}
.case-scroll-btn:last-child {
	color:var(--v7-brown)
}
.case-scroll-btn:last-child:hover {
	background:var(--v7-brown);
	color:#fff;
	border-color:var(--v7-brown)
}
.case-scroll-btn:disabled {
	cursor:not-allowed;
	transform:none
}
.case-carousel-shell {
	position:relative;
	min-width:0
}
.case-carousel-track {
	display:grid;
	grid-auto-flow:column;
	grid-auto-columns:calc((100% - 44px)/ 3);
	overflow-x:auto;
	overscroll-behavior-inline:contain;
	scrollbar-width:none
}
.case-carousel-track::-webkit-scrollbar {
display:none
}
.case-carousel-track .case-card {
	height:440px;
	min-width:0
}
.case-carousel-track .case-card>div {
	bottom:26px
}
.case-carousel-track .case-card p {
	opacity:1;
	max-height:70px;
	transform:translateY(8px);
transition:opacity .3s, transform .3s
}
.case-carousel-track .case-card:hover p {
	transform:none
}
.case-carousel-progress {
	height:3px;
	background:rgba(7, 145, 58, .1);
	border-radius:999px;
	overflow:hidden;
	margin-top:8px
}
.case-carousel-progress span {
	display:block;
	width:100%;
	height:100%;
	background:linear-gradient(90deg, var(--v7-green), var(--v7-brown));
	transform:scaleX(.15);
	transform-origin:left center
}
.strength-section.strength-light {
	color:var(--ink);
	background:radial-gradient(circle at 88% 8%, rgba(7, 145, 58, .09), transparent 24%), radial-gradient(circle at 8% 92%, rgba(128, 78, 33, .08), transparent 26%), linear-gradient(135deg, #eef8f1 0, #fbfaf5 52%, #f5eee6 100%)!important;
	border-color:rgba(70, 103, 78, .14);
	box-shadow:0 20px 60px rgba(40, 75, 49, .09)
}
.strength-light .light-head h2 {
	color:var(--ink)
}
.strength-light .eyebrow.light, .strength-light .numbers strong, .strength-light .strength-grid article>b {
	color:var(--v7-green)
}
.strength-light .strength-grid {
	gap:22px;
	background:0 0
}
.strength-light .strength-grid article {
	position:relative;
	overflow:hidden;
	color:var(--ink);
	background:rgba(255, 255, 255, .91)!important;
	border:1px solid rgba(66, 101, 76, .14)!important;
	border-radius:20px;
	box-shadow:0 16px 42px rgba(43, 75, 51, .085);
transition:transform .3s, box-shadow .3s, border-color .3s
}
.strength-light .strength-grid article:before {
	content:"";
	position:absolute;
	left:0;
	right:0;
	top:0;
	height:4px;
	background:linear-gradient(90deg, var(--v7-green), #62b97b)
}
.strength-light .strength-grid article:nth-child(2):before {
background:linear-gradient(90deg, var(--v7-brown), #bd8b59)
}
.strength-light .strength-grid article:nth-child(3):before {
background:linear-gradient(90deg, var(--v7-green), var(--v7-brown))
}
.strength-light .strength-grid article:hover {
	transform:translateY(-7px);
	box-shadow:0 24px 58px rgba(43, 75, 51, .13);
	border-color:rgba(7, 145, 58, .22)!important
}
.strength-light .strength-grid h3 {
	color:var(--ink);
	margin-top:24px
}
.strength-light .strength-grid p {
	color:var(--muted)
}
.strength-light .numbers {
	border-top-color:rgba(65, 96, 73, .13)
}
.strength-light .strength-grid article:nth-child(2) .numbers strong, .strength-light .strength-grid article:nth-child(2n)>b {
color:var(--v7-brown)
}
.strength-light .strength-grid article:nth-child(3) .numbers strong {
background:linear-gradient(90deg, var(--v7-green), var(--v7-brown));
-webkit-background-clip:text;
background-clip:text;
color:transparent
}
.strength-light .numbers span {
	color:#738077
}
.section-head h2 {
	letter-spacing:-.035em
}
.case-card, .featured-news-card, .news-text-panel, .product-card {
	border-radius:18px
}
.link-pill {
	box-shadow:0 8px 22px rgba(42, 78, 51, .06)
}
@media (max-width:980px) {
.case-carousel-track {
grid-auto-columns:calc((100% - 22px)/ 2)
}
}
@media (max-width:860px) {
.case-head-actions {
width:100%;
justify-content:space-between
}
.strength-light .strength-grid {
grid-template-columns:1fr
}
}
@media (max-width:580px) {
.case-head-actions {
align-items:center
}
.case-head-actions .link-pill {
padding:9px 13px
}
.case-scroll-btn {
width:40px;
height:40px
}
.case-carousel-track {
grid-auto-columns:88%;
gap:16px
}
.case-carousel-track .case-card {
height:400px
}
.category-strip b, .custom-steps article>b, .selector-title>b, .strength-grid article>b {
width:46px;
height:46px
}
}
.cloud-floating .category-strip>a:hover b {
	color:var(--v7-green-dark)!important;
	background:rgba(255, 255, 255, .96)!important;
	border-color:rgba(255, 255, 255, .78)!important
}
.cloud-floating .category-strip>a:nth-child(2n):hover b {
color:var(--v7-brown-dark)!important
}
.cloud-floating .category-strip>a:hover b::after {
border-color:rgba(255, 255, 255, .62)!important
}
.case-scroll-btn {
	width:42px;
	height:42px;
	display:grid;
	place-items:center;
	border:1px solid rgba(75, 108, 84, .14);
	background:rgba(255, 255, 255, .72);
	color:#4e6655;
	box-shadow:0 8px 24px rgba(39, 76, 49, .065);
	backdrop-filter:blur(10px);
	-webkit-backdrop-filter:blur(10px)
}
.case-scroll-btn svg {
	width:19px;
	height:19px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.65;
	stroke-linecap:round;
	stroke-linejoin:round;
transition:transform .24s
}
.case-scroll-btn:hover {
	color:var(--v7-green-dark);
	background:rgba(239, 248, 242, .94);
	border-color:rgba(7, 145, 58, .2);
	box-shadow:0 10px 28px rgba(39, 76, 49, .09);
	transform:translateY(-1px)
}
.case-scroll-btn:last-child {
	color:#705943;
	border-color:rgba(128, 78, 33, .13)
}
.case-scroll-btn:last-child:hover {
	color:var(--v7-brown-dark);
	background:rgba(249, 244, 238, .96);
	border-color:rgba(128, 78, 33, .2)
}
.case-scroll-btn:first-child:hover svg {
	transform:translateX(-1.5px)
}
.case-scroll-btn:last-child:hover svg {
	transform:translateX(1.5px)
}
.case-scroll-btn:disabled {
	background:rgba(255, 255, 255, .58);
	color:#8c9990
}
.case-card[hidden], .product-card[hidden] {
	display:none!important
}
.detail-data-grid {
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	gap:12px;
	margin:28px 0 22px
}
.detail-data-card {
	min-height:104px;
	padding:18px 20px;
	border:1px solid rgba(7, 145, 58, .14);
	border-radius:14px;
	background:linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(244, 249, 245, .9));
	display:flex;
	flex-direction:column;
	justify-content:center;
transition:border-color .22s, transform .22s, box-shadow .22s
}
.detail-data-card:nth-child(2n) {
border-color:rgba(128, 78, 33, .15);
background:linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(250, 246, 241, .92))
}
.detail-data-card:hover {
	transform:translateY(-2px);
	border-color:rgba(7, 145, 58, .3);
	box-shadow:0 12px 28px rgba(31, 67, 45, .08)
}
.detail-data-card span {
	margin-bottom:7px;
	color:var(--muted);
	font-size:11px;
	letter-spacing:1px
}
.detail-data-card a {
	color:var(--ink);
	font-size:15px;
	font-weight:700;
	line-height:1.5
}
.detail-data-card a:hover {
	color:var(--green)
}
@media (max-width:580px) {
.detail-data-grid {
grid-template-columns:1fr
}
}
.desktop-service-bar {
	position:fixed;
	right:18px;
	top:52%;
	z-index:1250;
	display:flex;
	flex-direction:column;
	gap:10px;
	transform:translateY(-50%)
}
.desktop-service-item {
	position:relative
}
.desktop-service-item::before {
content:"";
position:absolute;
right:100%;
top:0;
width:16px;
height:100%
}
.desktop-service-button {
	width:58px;
	min-height:62px;
	padding:8px 5px;
	border:1px solid rgba(55, 93, 65, .14);
	border-radius:16px;
	background:rgba(255, 255, 255, .92);
	color:#395441;
	box-shadow:0 10px 30px rgba(33, 70, 43, .1);
	backdrop-filter:blur(14px);
	-webkit-backdrop-filter:blur(14px);
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	gap:4px;
	cursor:pointer;
transition:transform .24s, color .24s, background .24s, border-color .24s, box-shadow .24s
}
.desktop-service-button svg, .mobile-dock-item svg {
	width:22px;
	height:22px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.7;
	stroke-linecap:round;
	stroke-linejoin:round
}
.desktop-service-button svg circle, .mobile-dock-item svg circle {
	fill:currentColor;
	stroke:none
}
.desktop-service-button span {
	font-size:12px;
	line-height:1
}
.desktop-service-item:focus-within .desktop-service-button, .desktop-service-item:hover .desktop-service-button {
transform:translateX(-2px);
color:var(--v7-green-dark, #056c2c);
background:rgba(245, 252, 247, .98);
border-color:rgba(7, 145, 58, .22);
box-shadow:0 14px 34px rgba(33, 70, 43, .14)
}
.desktop-qr-item .desktop-service-button {
	color:var(--v7-brown-dark, #68401b)
}
.desktop-qr-item:focus-within .desktop-service-button, .desktop-qr-item:hover .desktop-service-button {
color:var(--v7-brown-dark, #68401b);
background:rgba(252, 248, 243, .98);
border-color:rgba(128, 78, 33, .2)
}
.desktop-service-pop {
	position:absolute;
	right:calc(100% + 14px);
	top:50%;
	transform:translate(8px, -50%);
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	border:1px solid rgba(57, 91, 66, .13);
	border-radius:18px;
	background:rgba(255, 255, 255, .98);
	box-shadow:0 18px 48px rgba(31, 66, 41, .14);
transition:opacity .22s, transform .22s, visibility .22s
}
.desktop-service-item:focus-within .desktop-service-pop, .desktop-service-item:hover .desktop-service-pop {
transform:translate(0, -50%);
opacity:1;
visibility:visible;
pointer-events:auto
}
.desktop-phone-pop {
	width:160px;
	padding:15px 15px
}
.desktop-phone-pop small {
	display:block;
	margin-bottom:0px;
	color:var(--muted);
	font-size:16px;
	letter-spacing:0.08em;
	font-weight:bold;
}
.desktop-phone-pop a {
	display:block;
	color:var(--ink);
	font-size:17px;
	font-weight:600;
	line-height:1.7
}
.desktop-phone-pop a:hover {
	color:var(--v7-green, #07913a)
}
.desktop-qr-pop {
	width:206px;
	padding:15px;
	text-align:center
}
.desktop-qr-pop img {
	width:176px;
	height:176px;
	margin:0 auto 10px;
	border-radius:12px
}
.desktop-qr-pop small, .desktop-qr-pop strong {
	display:block
}
.desktop-qr-pop strong {
	font-size:14px
}
.desktop-qr-pop small {
	margin-top:3px;
	color:var(--muted);
	font-size:11px
}
.mobile-service-dock, .service-modal {
	display:none
}
.service-modal-open {
	overflow:hidden
}
@media (max-width:860px) {
.back-top, .desktop-service-bar {
display:none!important
}
.mobile-service-dock {
position:fixed;
left:0;
right:0;
bottom:0;
z-index:1400;
border-top:1px solid rgba(55, 93, 65, .12);
background:rgba(255, 255, 255, .96);
box-shadow:0-10px 34px rgba(31, 66, 41, .1);
backdrop-filter:blur(18px);
-webkit-backdrop-filter:blur(18px);
display:grid;
grid-template-columns:repeat(3, 1fr)
}
.mobile-dock-item {
min-width:0;
border:0;
background:0 0;
color:#425b49;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
gap:3px;
cursor:pointer;
transition:color .2s, background .2s
}
.mobile-dock-item:nth-child(2) {
color:var(--v7-green-dark, #056c2c)
}
.mobile-dock-item:nth-child(3) {
color:var(--v7-brown-dark, #68401b)
}
.mobile-dock-item:active, .mobile-dock-item:focus-visible {
background:rgba(7, 145, 58, .08)
}
.service-modal {
position:fixed;
inset:0;
z-index:1600;
display:grid;
place-items:center;
padding:22px;
opacity:0;
visibility:hidden;
transition:opacity .22s, visibility .22s
}
.service-modal.open {
opacity:1;
visibility:visible
}
.service-modal-mask {
position:absolute;
inset:0;
width:100%;
height:100%;
border:0;
background:rgba(10, 24, 14, .48);
backdrop-filter:blur(5px);
-webkit-backdrop-filter:blur(5px)
}
.service-modal-panel {
position:relative;
z-index:2;
width:min(330px, 100%);
padding:25px 24px 22px;
border:1px solid rgba(55, 93, 65, .12);
border-radius:24px;
background:#fff;
box-shadow:0 24px 70px rgba(12, 42, 21, .24);
text-align:center;
transform:translateY(14px) scale(.98);
transition:transform .24s
}
.service-modal.open .service-modal-panel {
transform:none
}
.service-modal-close {
position:absolute;
right:13px;
top:11px;
width:34px;
height:34px;
padding:0;
border:0;
border-radius:50%;
background:#f2f6f3;
color:#53665a;
font-size:23px;
line-height:1;
cursor:pointer
}
.service-modal-panel>img {
width:190px;
height:190px;
margin:2px auto 14px;
border-radius:14px
}
.service-modal-panel h3 {
margin:0 0 6px;
font-size:22px
}
.service-modal-panel p {
margin:0;
color:var(--muted);
font-size:13px
}
.service-modal-actions {
display:grid;
grid-template-columns:1fr 1fr;
gap:8px;
margin-top:18px
}
.service-modal-actions a {
padding:10px 7px;
border-radius:12px;
background:#eef8f1;
color:var(--v7-green-dark, #056c2c);
font-size:14px;
font-weight:600
}
.service-modal-actions a:last-child {
background:#f8f1e9;
color:var(--v7-brown-dark, #68401b)
}
.topbar {
display:none
}
.site-header, .site-header.scrolled {
height:60px
}
.brand img {
width:94px
}
.menu-toggle {
width:36px;
height:36px;
padding:7px
}
.menu-toggle span {
margin:5px 0
}
.main-nav, .site-header.scrolled .main-nav {
top:60px;
padding:10px 18px 20px
}
.nav-link {
height:44px
}
body {
padding-bottom:calc(56px + env(safe-area-inset-bottom))
}
.mobile-service-dock {
min-height:56px;
padding:3px 8px calc(3px + env(safe-area-inset-bottom))
}
.mobile-dock-item {
min-height:46px;
padding:3px 6px;
gap:2px;
border-radius:11px
}
.mobile-dock-item svg {
width:19px;
height:19px
}
.mobile-dock-item span {
line-height:1;
font-size:10px
}
.site-footer {
padding:48px 0 18px
}
.footer-grid {
gap:30px
}
.footer-bottom {
margin-top:30px
}
.cta-band {
padding:38px 0
}
}
.case-scroll-btn:hover:not(:disabled) {
transform:translateY(-1px)
}
.case-scroll-btn:disabled {
	opacity:.34;
	box-shadow:none
}
.case-carousel-progress span {
transition:transform .28s cubic-bezier(.22, 1, .36, 1)
}
@media (max-width:580px) {
.site-header, .site-header.scrolled {
height:58px
}
.main-nav, .site-header.scrolled .main-nav {
top:58px
}
.brand img {
width:90px
}
body {
padding-bottom:calc(54px + env(safe-area-inset-bottom))
}
.mobile-service-dock {
min-height:54px;
padding-top:2px;
padding-bottom:calc(2px + env(safe-area-inset-bottom))
}
.mobile-dock-item {
min-height:44px
}
}
.nav-item {
	position:relative
}
.nav-item, .nav-product-head {
	height:100%;
	display:flex;
	align-items:center
}
.nav-product-head .nav-link {
	padding-right:8px
}
.nav-dropdown-toggle {
	width:28px;
	height:28px;
	margin-right:5px;
	padding:0;
	border:0;
	border-radius:50%;
	display:grid;
	place-items:center;
	background:0 0;
	color:#66736b;
	cursor:pointer;
transition:background .28s, color .28s, transform .45s cubic-bezier(.16, 1, .3, 1)
}
.nav-dropdown-toggle svg {
	width:15px;
	height:15px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.8;
	stroke-linecap:round;
	stroke-linejoin:round;
transition:transform .55s cubic-bezier(.16, 1, .3, 1)
}
.nav-products.open .nav-dropdown-toggle, .nav-products:focus-within .nav-dropdown-toggle, .nav-products:hover .nav-dropdown-toggle {
color:var(--green);
background:rgba(7, 145, 58, .08)
}
.nav-products.open .nav-dropdown-toggle svg, .nav-products:focus-within .nav-dropdown-toggle svg, .nav-products:hover .nav-dropdown-toggle svg {
transform:rotate(180deg)
}
.products-dropdown {
	position:absolute;
	z-index:1200;
	top:calc(100% - 4px);
	left:50%;
	width:min(760px, calc(100vw - 40px));
	padding-top:15px;
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transform:translate(-50%, 14px) scale(.985);
	transform-origin:top center;
transition:opacity .28s, visibility .28s, transform .52s cubic-bezier(.16, 1, .3, 1)
}
.nav-products.open .products-dropdown, .nav-products:focus-within .products-dropdown, .nav-products:hover .products-dropdown {
opacity:1;
visibility:visible;
pointer-events:auto;
transform:translate(-50%, 0) scale(1)
}
.products-dropdown-inner {
	display:grid;
grid-template-columns:.82fr 1.7fr;
	gap:22px;
	padding:26px;
	border:1px solid rgba(76, 116, 84, .16);
	border-radius:22px;
	background:radial-gradient(circle at 8% 12%, rgba(7, 145, 58, .08), transparent 30%), radial-gradient(circle at 96% 90%, rgba(128, 78, 33, .07), transparent 34%), rgba(255, 255, 255, .97);
	box-shadow:0 26px 70px rgba(26, 60, 35, .16);
	backdrop-filter:blur(18px);
	-webkit-backdrop-filter:blur(18px)
}
.dropdown-intro {
	padding:8px 20px 8px 4px;
	border-right:1px solid rgba(76, 116, 84, .13)
}
.dropdown-intro>span {
	color:var(--green);
	font-size:10px;
	font-weight:700;
	letter-spacing:1.8px
}
.dropdown-intro h3 {
	margin:10px 0 9px;
	font-size:23px;
	line-height:1.35
}
.dropdown-intro p {
	margin:0 0 20px;
	color:var(--muted);
	font-size:13px
}
.dropdown-intro>a {
	color:var(--green2);
	font-size:14px;
	font-weight:700
}
.dropdown-intro>a b {
	display:inline-block;
transition:transform .28s
}
.dropdown-intro>a:hover b {
	transform:translateX(5px)
}
.dropdown-product-links {
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	gap:8px
}
.dropdown-product-links>a {
	min-height:72px;
	padding:11px 13px;
	border:1px solid transparent;
	border-radius:15px;
	display:flex;
	align-items:center;
	gap:12px;
transition:transform .35s cubic-bezier(.16, 1, .3, 1), background .28s, border-color .28s, box-shadow .28s
}
.dropdown-product-links>a:hover {
	transform:translateY(-2px);
	border-color:rgba(7, 145, 58, .13);
	background:rgba(241, 249, 243, .9);
	box-shadow:0 10px 26px rgba(38, 78, 47, .07)
}
.dropdown-product-links .round-number {
	position:relative;
	flex:0 0 38px;
	width:38px;
	height:38px;
	border-radius:50%;
	display:grid;
	place-items:center;
	color:#fff;
	background:linear-gradient(145deg, #07913a, #056c2c);
	font-size:11px;
	letter-spacing:.5px;
	box-shadow:0 8px 18px rgba(7, 145, 58, .18)
}
.dropdown-product-links>a:nth-child(2n) .round-number {
background:linear-gradient(145deg, #8b592c, #68401b);
box-shadow:0 8px 18px rgba(128, 78, 33, .17)
}
.dropdown-product-links small, .dropdown-product-links strong {
	display:block
}
.dropdown-product-links strong {
	font-size:14px
}
.dropdown-product-links small {
	margin-top:2px;
	color:var(--muted);
	font-size:11px
}
.filter-top {
	flex-wrap:wrap
}
.filter-toggle {
	min-height:43px;
	padding:8px 15px;
	border:1px solid rgba(76, 116, 84, .17);
	border-radius:999px;
	display:inline-flex;
	align-items:center;
	gap:8px;
	background:rgba(247, 251, 248, .95);
	color:var(--green2);
	cursor:pointer;
transition:background .28s, border-color .28s, transform .32s cubic-bezier(.16, 1, .3, 1), box-shadow .28s
}
.filter-toggle:hover {
	transform:translateY(-1px);
	background:#eef8f1;
	border-color:rgba(7, 145, 58, .25);
	box-shadow:0 9px 24px rgba(32, 75, 42, .08)
}
.filter-toggle svg {
	width:16px;
	height:16px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.8;
	stroke-linecap:round;
	stroke-linejoin:round;
transition:transform .55s cubic-bezier(.16, 1, .3, 1)
}
.filter-toggle.open svg {
	transform:rotate(180deg)
}
.filter-collapse {
	max-height:0;
	overflow:hidden;
	opacity:0;
	transform:translateY(-8px);
transition:max-height .72s cubic-bezier(.16, 1, .3, 1), opacity .34s, transform .58s cubic-bezier(.16, 1, .3, 1)
}
.filter-collapse.open {
	opacity:1;
	transform:none
}
.case-carousel-shell {
	overflow:hidden;
	touch-action:pan-y
}
.case-carousel-track {
	display:flex;
	width:100%;
	gap:22px;
	overflow:visible;
	padding:3px 2px 20px;
	scroll-snap-type:none;
	scroll-behavior:auto;
	cursor:grab;
	user-select:none;
	will-change:transform;
	transform:translate3d(0, 0, 0)
}
.case-carousel-track:active {
	cursor:grabbing
}
.case-carousel-track .case-card {
	flex:0 0 calc((100% - 44px)/ 3);
	scroll-snap-align:none;
transition:transform .55s cubic-bezier(.16, 1, .3, 1), box-shadow .4s, filter .4s
}
.case-carousel-track .case-card:hover {
	transform:translateY(-5px)
}
.case-scroll-btn {
transition:transform .45s cubic-bezier(.16, 1, .3, 1), background .3s, color .3s, border-color .3s, box-shadow .3s, opacity .3s
}
.case-scroll-btn:hover:not(:disabled) {
transform:translateY(-2px) scale(1.025)
}
.case-scroll-btn:active:not(:disabled) {
transform:translateY(0) scale(.96)
}
body:not([data-page=home]) .round-number {
position:relative;
width:50px;
height:50px;
flex:0 0 50px;
border-radius:50%;
display:inline-grid;
place-items:center;
color:#fff;
background:linear-gradient(145deg, #07913a, #056c2c);
font-size:12px;
font-weight:700;
letter-spacing:.7px;
box-shadow:0 10px 24px rgba(7, 145, 58, .18);
isolation:isolate
}
body:not([data-page=home]) .round-number::after {
content:"";
position:absolute;
inset:-5px;
z-index:-1;
border:1px dashed rgba(7, 145, 58, .22);
border-radius:50%;
transition:transform .65s cubic-bezier(.16, 1, .3, 1)
}
body:not([data-page=home]):is(.value-grid article, .process-line>div, .custom-steps article, .selector-block, .news-index-card nav a):nth-child(2n) .round-number {
background:linear-gradient(145deg, #8b592c, #68401b);
box-shadow:0 10px 24px rgba(128, 78, 33, .17)
}
body:not([data-page=home]):is(.value-grid article, .process-line>div, .custom-steps article, .selector-block, .news-index-card nav a):nth-child(2n) .round-number::after {
border-color:rgba(128, 78, 33, .23)
}
body:not([data-page=home]):is(.value-grid article, .process-line>div, .custom-steps article, .selector-block, .news-index-card nav a):hover .round-number::after {
transform:rotate(22deg) scale(1.04)
}
.news-index-card nav a .round-number {
	width:34px;
	height:34px;
	flex-basis:34px;
	color:#fff
}
.news-index-card nav a .round-number::after {
inset:-3px
}
body:not([data-page=home]) .page-hero {
height:360px
}
body:not([data-page=home]) .page-hero-inner h1 {
font-size:clamp(40px, 4.5vw, 54px)
}
body:not([data-page=home]) .section {
padding-top:76px;
padding-bottom:76px
}
body:not([data-page=home]) .news-page-section, body:not([data-page=home]) .section.cloud-section, body:not([data-page=home]) .timeline-section.cloud-section {
margin-top:10px;
margin-bottom:10px;
border-radius:28px;
box-shadow:0 16px 46px rgba(38, 74, 47, .075)
}
body:not([data-page=home]) .section-head {
margin-bottom:32px
}
body:not([data-page=home]) .about-copy h2, body:not([data-page=home]) .contact-form h2, body:not([data-page=home]) .contact-info h2, body:not([data-page=home]) .section-head h2, body:not([data-page=home]) .showcase-copy h2 {
letter-spacing:-.045em
}
body:not([data-page=home]) .article-card, body:not([data-page=home]) .contact-cards>a, body:not([data-page=home]) .contact-cards>div, body:not([data-page=home]) .contact-form, body:not([data-page=home]) .custom-steps article, body:not([data-page=home]) .selector-block, body:not([data-page=home]) .value-grid article {
border-color:rgba(76, 116, 84, .13);
box-shadow:0 12px 34px rgba(39, 77, 48, .055)
}
body:not([data-page=home]) .custom-steps article, body:not([data-page=home]) .value-grid article {
padding:30px;
background:radial-gradient(circle at 95% 8%, rgba(7, 145, 58, .055), transparent 28%), rgba(255, 255, 255, .9)
}
body:not([data-page=home]) .custom-steps article:nth-child(2n), body:not([data-page=home]) .value-grid article:nth-child(2n) {
background:radial-gradient(circle at 95% 8%, rgba(128, 78, 33, .055), transparent 28%), rgba(255, 255, 255, .9)
}
body:not([data-page=home]) .selector-block {
padding:30px;
border-radius:20px
}
body:not([data-page=home]) .process-line {
gap:10px
}
body:not([data-page=home]) .process-line>div {
min-height:235px;
padding:27px 22px;
background:rgba(255, 255, 255, .055);
transition:transform .4s cubic-bezier(.16, 1, .3, 1), background .3s, border-color .3s
}
body:not([data-page=home]) .process-line>div:hover {
transform:translateY(-4px);
background:rgba(255, 255, 255, .09)
}
body:not([data-page=home]) .related-wrap {
margin-top:68px
}
body:not([data-page=home]) .news-archive-head {
margin-top:66px
}
body:not([data-page=home]) .custom-steps {
margin-top:38px
}
@media (max-width:1100px) {
.products-dropdown {
width:min(700px, calc(100vw - 28px))
}
.case-carousel-track .case-card {
flex-basis:calc((100% - 22px)/ 2)
}
}
@media (max-width:860px) {
.nav-item, .nav-product-head {
width:100%;
height:auto
}
.nav-product-head .nav-link {
flex:1;
margin:0;
padding-right:10px
}
.nav-dropdown-toggle {
width:42px;
height:42px;
margin:0;
border-radius:12px
}
.products-dropdown {
position:static;
width:100%;
max-height:0;
padding:0;
opacity:1;
visibility:visible;
pointer-events:auto;
overflow:hidden;
transform:none;
transition:max-height .72s cubic-bezier(.16, 1, .3, 1), padding .5s cubic-bezier(.16, 1, .3, 1)
}
.nav-products.open .products-dropdown {
max-height:630px;
padding:8px 0 12px
}
.products-dropdown-inner {
grid-template-columns:1fr;
gap:14px;
padding:18px;
border-radius:16px;
box-shadow:inset 0 0 0 1px rgba(76, 116, 84, .08)
}
.dropdown-intro {
padding:0 0 13px;
border-right:0;
border-bottom:1px solid rgba(76, 116, 84, .12)
}
.dropdown-intro h3 {
font-size:19px
}
.dropdown-intro p {
display:none
}
.dropdown-product-links {
gap:6px
}
.dropdown-product-links>a {
min-height:62px;
padding:8px 10px
}
body:not([data-page=home]) .section {
padding-top:64px;
padding-bottom:64px
}
body:not([data-page=home]) .page-hero {
height:330px
}
}
@media (max-width:680px) {
.filter-top {
display:grid;
grid-template-columns:1fr auto;
align-items:end
}
.filter-top .search-box {
grid-column:1/-1;
grid-row:2;
width:100%;
margin-top:14px
}
.filter-toggle {
align-self:center
}
.filter-panel {
padding:24px
}
}
@media (max-width:580px) {
.dropdown-product-links {
grid-template-columns:1fr
}
.dropdown-product-links>a {
min-height:56px
}
.case-carousel-track {
gap:16px
}
.case-carousel-track .case-card {
flex-basis:88%
}
body:not([data-page=home]) .section {
padding-top:54px;
padding-bottom:54px
}
body:not([data-page=home]) .news-page-section, body:not([data-page=home]) .section.cloud-section, body:not([data-page=home]) .timeline-section.cloud-section {
margin-top:6px;
margin-bottom:6px;
border-radius:18px
}
body:not([data-page=home]) .page-hero {
height:295px
}
body:not([data-page=home]) .round-number {
width:44px;
height:44px;
flex-basis:44px
}
body:not([data-page=home]) .custom-steps article, body:not([data-page=home]) .selector-block, body:not([data-page=home]) .value-grid article {
padding:24px
}
}
@media (max-width:860px) {
.nav-products {
flex-direction:column;
align-items:stretch
}
.nav-products .nav-product-head {
order:0
}
.nav-products .products-dropdown {
order:1
}
.main-nav {
max-height:calc(100dvh - 60px - 56px);
overflow-y:auto;
overscroll-behavior:contain
}
.nav-products.open .products-dropdown, .nav-products:focus-within .products-dropdown, .nav-products:hover .products-dropdown {
left:auto;
transform:none
}
}
body .dropdown-product-links .round-number {
	width:38px;
	height:38px;
	flex-basis:38px;
	font-size:11px
}
body .dropdown-product-links .round-number::after {
display:none
}
.footer-links a {
transition:color .2s, transform .2s
}
.footer-links a:hover {
	transform:translateX(3px)
}
@media (max-width:580px) {
.main-nav {
max-height:calc(100dvh - 58px - 54px)
}
.site-footer {
padding:42px 0 72px
}
.footer-grid {
grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
gap:24px 18px
}
.footer-brand, .footer-contact {
grid-column:1/-1
}
.footer-brand {
padding-bottom:2px
}
.footer-brand img {
width:124px;
margin-bottom:13px
}
.footer-brand p {
margin:0;
font-size:12px;
line-height:1.65
}
.footer-contact h3, .footer-links h3 {
margin-bottom:10px;
font-size:14px
}
.footer-contact p, .footer-links>a {
margin:5px 0;
font-size:12px;
line-height:1.55
}
.footer-contact {
padding-top:2px
}
.footer-contact p {
margin:4px 0
}
.footer-bottom {
margin-top:28px;
padding-top:15px;
font-size:11px
}
}
.menu-toggle {
	position:relative;
	overflow:hidden
}
.menu-toggle span {
	position:absolute;
	left:8px;
	right:8px;
	top:50%;
	height:2px;
	margin:0;
	border-radius:999px;
	background:#183126;
	transform-origin:center;
transition:transform .42s cubic-bezier(.16, 1, .3, 1), opacity .22s, width .3s
}
.menu-toggle span:first-child {
	transform:translateY(-7px)
}
.menu-toggle span:nth-child(2) {
transform:translateY(0)
}
.menu-toggle span:nth-child(3) {
transform:translateY(7px)
}
.menu-toggle[aria-expanded=true] span:first-child {
	transform:rotate(45deg)
}
.menu-toggle[aria-expanded=true] span:nth-child(2) {
opacity:0;
transform:scaleX(.25)
}
.menu-toggle[aria-expanded=true] span:nth-child(3) {
transform:rotate(-45deg)
}
.footer-contact-list {
	display:grid;
	gap:2px
}
.footer-contact-item {
	display:grid;
	grid-template-columns:38px minmax(0, 1fr);
	gap:12px;
	align-items:start;
	padding:0px 0 10px;
	border-bottom:1px solid rgba(255, 255, 255, .08);
	color:#d6e1d9;
transition:color .22s, transform .22s
}
.footer-contact-item:last-child {
	border-bottom:0
}
a.footer-contact-item:hover {
	color:#fff;
	transform:translateX(3px)
}
.footer-contact-icon {
	width:36px;
	height:36px;
	border:1px solid rgba(160, 210, 175, .16);
	border-radius:12px;
	display:grid;
	place-items:center;
	background:rgba(255, 255, 255, .055);
	color:#9ed1ae;
	margin-top:10px;
}
.footer-contact-icon svg {
	width:18px;
	height:18px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.7;
	stroke-linecap:round;
	stroke-linejoin:round
}
.footer-contact-copy {
	min-width:0;
	display:block;
	padding-top:1px
}
.footer-contact-copy small {
	display:block;
	margin-bottom:2px;
	color:#8fa59a;
	font-size:16px;
	font-weight:bold;
}
.footer-contact-copy a, .footer-contact-copy strong {
	color:#edf4ef;
	font-size:14px;
	font-weight:500;
	overflow-wrap:anywhere
}
.footer-contact-copy p {
	margin:0!important;
	color:#c3d0c7;
	font-size:14px!important;
	line-height:1.65
}
.footer-contact-phone-links {
	display:flex;
	flex-wrap:wrap;
	gap:2px 12px
}
@media(max-width:860px) {
body.nav-open {
overflow:hidden
}
.site-header {
z-index:1500
}
.menu-toggle {
width:38px;
height:38px;
padding:0;
border-radius:10px;
transition:background .25s
}
.menu-toggle[aria-expanded=true] {
background:rgba(7, 145, 58, .08)
}
.main-nav, .site-header.scrolled .main-nav {
position:fixed;
left:0;
right:0;
top:60px;
bottom:calc(56px + env(safe-area-inset-bottom));
width:auto;
height:auto;
max-height:none;
padding:10px 18px 18px;
background:rgba(255, 255, 255, .985);
box-shadow:0 24px 50px rgba(21, 57, 31, .12);
overflow-y:auto;
overscroll-behavior:contain;
-webkit-overflow-scrolling:touch;
z-index:1501;
opacity:0;
visibility:hidden;
pointer-events:none;
transform:translateY(-10px);
transition:opacity .25s, transform .4s cubic-bezier(.16, 1, .3, 1), visibility .25s
}
.main-nav.open {
opacity:1;
visibility:visible;
pointer-events:auto;
transform:none
}
.main-nav>.nav-link, .nav-product-head {
width:100%;
min-height:48px;
border-bottom:1px solid rgba(65, 107, 76, .16);
border-radius:0
}
.main-nav>.nav-link {
height:48px;
margin:0;
padding:0 10px;
justify-content:flex-start;
background:0 0
}
.main-nav>.nav-link.active, .main-nav>.nav-link:hover {
background:rgba(7, 145, 58, .035)
}
.nav-products {
width:100%;
flex-direction:column;
align-items:stretch
}
.nav-product-head {
height:auto;
display:grid;
grid-template-columns:minmax(0, 1fr) 42px;
align-items:center
}
.nav-product-head .nav-link {
width:100%;
height:48px;
margin:0;
padding:0 10px;
border:0;
border-radius:0;
justify-content:flex-start
}
.nav-dropdown-toggle {
width:36px;
height:36px;
margin:0 3px 0 0;
justify-self:end;
border:1px solid rgba(65, 107, 76, .1);
border-radius:11px;
background:#f6faf7;
color:#52695a
}
.nav-products.open .nav-dropdown-toggle {
background:#edf7f0;
border-color:rgba(7, 145, 58, .18);
color:var(--green)
}
.nav-products:not(.open) .nav-dropdown-toggle svg {
transform:none!important
}
.nav-products:not(.open) .products-dropdown {
max-height:0!important;
padding:0!important
}
.nav-products.open .products-dropdown {
max-height:640px;
padding:8px 0 12px
}
.products-dropdown-inner {
margin-top:2px
}
}
@media(max-width:580px) {
.main-nav, .site-header.scrolled .main-nav {
top:58px;
bottom:calc(54px + env(safe-area-inset-bottom));
padding:8px 16px 16px
}
.main-nav>.nav-link, .nav-product-head {
min-height:46px
}
.main-nav>.nav-link, .nav-product-head .nav-link {
height:46px;
padding-left:10px
}
.nav-dropdown-toggle {
width:34px;
height:34px
}
.footer-contact {
grid-column:1/-1;
padding:17px 16px 14px;
border:1px solid rgba(255, 255, 255, .08);
border-radius:17px;
background:linear-gradient(145deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .025))
}
.footer-contact h3 {
margin-bottom:7px!important
}
.footer-contact-item {
grid-template-columns:34px minmax(0, 1fr);
gap:10px;
padding:9px 0
}
.footer-contact-icon {
width:32px;
height:32px;
border-radius:10px
}
.footer-contact-icon svg {
width:16px;
height:16px
}
.footer-contact-copy small {
font-size:9px
}
.footer-contact-copy a, .footer-contact-copy strong {
font-size:12px
}
.footer-contact-copy p {
font-size:11px!important;
line-height:1.6
}
}
@media(max-width:860px) {
.site-header, .site-header.scrolled {
backdrop-filter:none!important;
-webkit-backdrop-filter:none!important;
overflow:visible!important
}
.site-header .main-nav, .site-header.scrolled .main-nav {
position:fixed!important;
left:0!important;
right:0!important;
top:60px!important;
bottom:calc(56px + env(safe-area-inset-bottom))!important;
width:100%!important;
height:auto!important;
max-height:none!important;
margin:0!important;
padding:10px 18px 18px!important;
display:flex!important;
flex-direction:column!important;
align-items:stretch!important;
background:rgba(255, 255, 255, .99)!important;
box-shadow:0 24px 54px rgba(21, 57, 31, .14)!important;
overflow-y:auto!important;
overscroll-behavior:contain!important;
-webkit-overflow-scrolling:touch!important;
z-index:1600!important;
opacity:0!important;
visibility:hidden!important;
pointer-events:none!important;
transform:translate3d(0, -12px, 0)!important;
transition:opacity .24s ease, transform .38s cubic-bezier(.16, 1, .3, 1), visibility 0s linear .38s!important
}
body.nav-open .site-header .main-nav, body.nav-open .site-header.scrolled .main-nav, .site-header .main-nav.open, .site-header.scrolled .main-nav.open {
opacity:1!important;
visibility:visible!important;
pointer-events:auto!important;
transform:translate3d(0, 0, 0)!important;
transition:opacity .24s ease, transform .38s cubic-bezier(.16, 1, .3, 1), visibility 0s!important
}
.menu-toggle {
position:relative!important;
z-index:1700!important
}
}
@media(max-width:580px) {
.site-header .main-nav, .site-header.scrolled .main-nav {
top:58px!important;
bottom:calc(54px + env(safe-area-inset-bottom))!important;
padding:8px 14px 16px!important
}
.site-footer .footer-grid {
width:100%!important;
max-width:none!important;
margin:0!important;
padding-left:14px!important;
padding-right:14px!important;
box-sizing:border-box!important
}
.site-footer .footer-contact {
grid-column:1/-1!important;
width:100%!important;
max-width:100%!important;
margin:0!important;
justify-self:stretch!important;
align-self:stretch!important;
padding:16px 14px 14px!important;
box-sizing:border-box!important
}
.site-footer .footer-contact h3 {
text-align:center!important;
margin:0 0 10px!important
}
.site-footer .footer-contact-list {
width:100%!important;
gap:7px!important
}
.site-footer .footer-contact-item {
width:100%!important;
min-width:0!important;
margin:0!important;
padding:10px 11px!important;
border:1px solid rgba(255, 255, 255, .075)!important;
border-radius:12px!important;
background:rgba(255, 255, 255, .035)!important;
box-sizing:border-box!important
}
.site-footer .footer-contact-item:last-child {
border-bottom:1px solid rgba(255, 255, 255, .075)!important
}
.site-footer .footer-contact-copy {
width:100%!important;
min-width:0!important
}
.site-footer .footer-contact-phone-links {
display:grid!important;
grid-template-columns:repeat(2, minmax(0, 1fr))!important;
gap:3px 8px!important;
width:100%!important
}
.site-footer .footer-contact-phone-links a {
white-space:nowrap!important
}
}
@media(max-width:390px) {
.site-footer .footer-contact-phone-links {
grid-template-columns:1fr!important
}
}
/* V17: 新闻详情与定制页垂直居中扩展 */
@media(min-width:861px){body[data-page=custom] .selector-block{align-items:stretch}body[data-page=custom] .selector-title{align-self:stretch;min-height:100%;display:flex;align-items:center;justify-content:flex-start;padding:8px 0}body[data-page=custom] .selector-title>div{display:flex;min-width:0;flex-direction:column;justify-content:center}} .article-card h2 a{transition:color .22s}.article-card h2 a:hover{color:var(--green)}.article-read-more{display:inline-flex;align-items:center;gap:7px;margin:20px 0 0;color:var(--green);font-size:14px;font-weight:700}.article-read-more b{transition:transform .22s}.article-read-more:hover b{transform:translateX(5px)} .news-detail-page{background:#f7faf7}.news-detail-hero{position:relative;min-height:470px;display:flex;align-items:flex-end;overflow:hidden;background:#12351e;color:#fff}.news-detail-hero-bg,.news-detail-hero-overlay{position:absolute;inset:0}.news-detail-hero-bg{background-size:cover;background-position:center;transform:scale(1.02)}.news-detail-hero-overlay{background:linear-gradient(90deg,rgba(9,35,18,.88),rgba(20,56,30,.62) 58%,rgba(55,35,20,.22)),linear-gradient(0deg,rgba(5,21,11,.65),transparent 58%)}.news-detail-hero-inner{position:relative;z-index:2;padding-top:110px;padding-bottom:64px}.news-detail-category{display:inline-flex;padding:7px 13px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.1);font-size:12px;letter-spacing:.08em}.news-detail-hero h1{max-width:900px;margin:19px 0 22px;font-size:clamp(36px,4.8vw,64px);line-height:1.18;letter-spacing:-.025em}.news-detail-meta{display:flex;flex-wrap:wrap;gap:11px 26px;color:rgba(255,255,255,.78);font-size:13px}.news-detail-meta span{position:relative}.news-detail-meta span:before{content:"";position:absolute;left:-14px;top:50%;width:3px;height:3px;border-radius:50%;background:#b7d9bf}.news-detail-wrap{position:relative;padding:72px 0 80px;background:linear-gradient(135deg,#f8fcf9,#f5f8f3 54%,#fbf7f2)}.news-detail-wrap:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 7% 10%,rgba(7,145,58,.07),transparent 24%),radial-gradient(circle at 92% 18%,rgba(128,78,33,.065),transparent 24%)}.news-detail-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:42px;align-items:start}.news-detail-content{padding:52px 58px;border:1px solid rgba(70,112,78,.13);border-radius:26px;background:rgba(255,255,255,.94);box-shadow:0 22px 64px rgba(31,69,39,.08)}.news-detail-lead{margin:0 0 32px;padding:23px 25px;border-left:4px solid var(--green);border-radius:0 14px 14px 0;background:#f0f8f2;color:#405448;font-size:18px;line-height:1.9}.news-detail-cover{margin:0 0 44px}.news-detail-cover img{width:100%;max-height:480px;object-fit:cover;border-radius:20px}.news-detail-cover figcaption{padding:10px 4px 0;color:var(--muted);font-size:12px}.news-detail-section{padding:8px 0 28px}.news-detail-section+.news-detail-section{padding-top:28px;border-top:1px solid var(--line)}.news-detail-section-head{display:flex;align-items:center;gap:15px;margin-bottom:17px}.news-detail-section-head>b{width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:linear-gradient(145deg,var(--green),#087432);color:#fff;font-size:12px;box-shadow:0 9px 22px rgba(7,145,58,.18)}.news-detail-section:nth-of-type(even) .news-detail-section-head>b{background:linear-gradient(145deg,#8c5a2e,#6b401b);box-shadow:0 9px 22px rgba(128,78,33,.17)}.news-detail-section h2{margin:0;font-size:26px;line-height:1.45}.news-detail-section p{margin:0 0 15px;color:#48594f;font-size:16px;line-height:2}.news-detail-tips{margin-top:16px;padding:32px;border-radius:20px;background:linear-gradient(135deg,#edf8f0,#fbf8f1);border:1px solid rgba(69,119,78,.12)}.news-detail-tips h2{margin:8px 0 20px;font-size:27px}.news-detail-tips ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}.news-detail-tips li{display:flex;align-items:center;gap:11px;padding:13px 14px;border:1px solid rgba(76,116,84,.11);border-radius:13px;background:rgba(255,255,255,.76);font-size:14px}.news-detail-tips li b{color:var(--green);font-size:11px}.news-detail-aside{position:sticky;top:94px;display:grid;gap:18px}.news-detail-aside-card{padding:27px;border:1px solid rgba(70,112,78,.13);border-radius:20px;background:rgba(255,255,255,.94);box-shadow:0 16px 46px rgba(31,69,39,.07)}.news-detail-aside-card h3{margin:9px 0 18px;font-size:23px}.news-detail-aside-card nav{display:grid}.news-detail-aside-card nav a{display:grid;grid-template-columns:26px 1fr 20px;gap:10px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}.news-detail-aside-card nav a:last-child{border-bottom:0}.news-detail-aside-card nav span{color:var(--green);font-size:10px}.news-detail-aside-card nav b{color:var(--brown);transition:transform .2s}.news-detail-aside-card nav a:hover b{transform:translateX(4px)}.news-detail-aside-card.contact{background:linear-gradient(145deg,#103d21,#1b5130);color:#fff}.news-detail-aside-card.contact .eyebrow{color:#bfdec6}.news-detail-aside-card.contact p{color:#d2e1d5;font-size:14px}.news-detail-aside-card.contact .btn{width:100%;margin:8px 0 13px}.news-detail-phone{display:block;text-align:center;color:#fff;font-size:18px;font-weight:700}.news-sibling-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}.news-sibling{display:flex;min-height:92px;flex-direction:column;justify-content:center;padding:17px 19px;border:1px solid var(--line);border-radius:15px;background:#fff;transition:.25s}.news-sibling:hover{transform:translateY(-3px);border-color:rgba(7,145,58,.25);box-shadow:0 13px 34px rgba(31,69,39,.08)}.news-sibling small{color:var(--green);font-size:11px}.news-sibling strong{margin-top:5px;font-size:14px;line-height:1.55}.news-sibling.next{text-align:right}.news-related-strip{padding:72px 0 84px;background:#fff}.news-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.news-related-grid>a{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;transition:.28s}.news-related-grid>a:hover{transform:translateY(-5px);box-shadow:0 18px 48px rgba(31,69,39,.1)}.news-related-grid img{width:100%;height:190px;object-fit:cover}.news-related-grid a>div{padding:20px}.news-related-grid small{color:var(--green);font-size:11px}.news-related-grid h3{margin:8px 0 14px;font-size:18px;line-height:1.5}.news-related-grid a span{color:var(--brown);font-size:13px;font-weight:700} @media(max-width:1000px){.news-detail-layout{grid-template-columns:1fr}.news-detail-aside{position:static;grid-template-columns:1fr 1fr}.news-detail-aside-card.contact{display:flex;flex-direction:column}.news-detail-aside-card.contact .btn{margin-top:auto}} @media(max-width:700px){.news-detail-hero{min-height:390px}.news-detail-hero-inner{padding-top:75px;padding-bottom:42px}.news-detail-hero h1{font-size:34px}.news-detail-wrap{padding:38px 0 48px}.news-detail-content{padding:27px 20px;border-radius:20px}.news-detail-lead{padding:18px;font-size:16px}.news-detail-cover{margin-bottom:32px}.news-detail-section h2{font-size:22px}.news-detail-section p{font-size:15px;line-height:1.9}.news-detail-tips{padding:23px 18px}.news-detail-tips ul{grid-template-columns:1fr}.news-detail-aside{grid-template-columns:1fr}.news-sibling-nav{grid-template-columns:1fr}.news-sibling.next{text-align:left}.news-related-strip{padding:48px 0 65px}.news-related-grid{grid-template-columns:1fr}.news-related-grid img{height:220px}} 
