/* Auto-generated by APG Safe Snippets (frontend). */

/* 9a833cba39208126ac850b90: base1 */
:root {
  --eco-green: #123d32;
  --eco-green-2: #1f5a48;
  --eco-anthracite: #151817;
  --eco-steel: #eef1ee;
  --eco-muted: #6f7974;
  --eco-white: #ffffff;
  --eco-radius: 1.25rem;
  --eco-shadow: 0 24px 70px rgba(0, 0, 0, 0.12);
  --eco-transition: 180ms ease;
}

.eco-page {
  color: var(--eco-anthracite);
}

.eco-section {
  padding-block: clamp(4rem, 8vw, 8rem);
}

.eco-eyebrow {
  margin-bottom: 1rem;
  color: var(--eco-green-2);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.eco-hero__inner {
  padding-block: clamp(5rem, 10vw, 9rem);
}

.eco-hero__title {
  max-width: 980px;
  color: var(--eco-white);
  font-size: clamp(3rem, 7vw, 6.5rem);
  line-height: 0.92;
  letter-spacing: -0.06em;
}

.eco-hero__text {
  max-width: 720px;
  color: rgba(255, 255, 255, 0.82);
  font-size: clamp(1.1rem, 2vw, 1.35rem);
  line-height: 1.55;
}

.eco-actions {
  margin-top: 2rem;
  gap: 0.85rem;
}

.eco-btn .wp-block-button__link {
  border-radius: 999px;
  padding: 1rem 1.45rem;
  font-weight: 600;
	min-width: 196px;
  transition: transform var(--eco-transition), box-shadow var(--eco-transition), background var(--eco-transition);
}

.eco-btn--primary .wp-block-button__link {
  background: var(--eco-green-2);
  color: var(--eco-white);
  box-shadow: 0 14px 30px rgba(18, 61, 50, 0.25);
}

.eco-btn--ghost .wp-block-button__link {
  border: 1px solid rgba(255, 255, 255, 0.36);
  background: rgba(255, 255, 255, 0.08);
  color: var(--eco-white);
}

.eco-btn .wp-block-button__link:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
}

.eco-metric-card,
.eco-service-card,
.eco-stat {
  border: 1px solid rgba(18, 61, 50, 0.1);
  border-radius: var(--eco-radius);
  background: var(--eco-white);
  box-shadow: var(--eco-shadow);
}

.eco-metric-card {
  padding: clamp(1.5rem, 3vw, 2.25rem);
}

.eco-service-card,
.eco-stat {
  padding: clamp(1.35rem, 3vw, 2rem);
  transition: transform var(--eco-transition), box-shadow var(--eco-transition), border-color var(--eco-transition);
}

.eco-service-card:hover,
.eco-stat:hover {
  transform: translateY(-4px);
  border-color: rgba(31, 90, 72, 0.35);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.14);
}

.eco-card-grid {
  gap: 1.25rem;
}

.eco-section__title {
  max-width: 860px;
  margin-bottom: 2rem;
  font-size: clamp(2.2rem, 5vw, 4.5rem);
  line-height: 0.98;
  letter-spacing: -0.045em;
}

.eco-gallery-section,
.eco-process {
  background: var(--eco-steel);
}

.eco-gallery img {
  aspect-ratio: 4 / 3;
  border-radius: var(--eco-radius);
  object-fit: cover;
  transition: transform var(--eco-transition), filter var(--eco-transition);
}

.eco-gallery img:hover {
  transform: scale(1.025);
  filter: contrast(1.05);
}

.eco-trust__grid {
  gap: 1.25rem;
}

.eco-stat h3 {
  color: var(--eco-green);
  font-size: clamp(2rem, 5vw, 4rem);
  line-height: 1;
}

.eco-cta {
  padding: clamp(3rem, 7vw, 6rem);
  background: var(--eco-green);
  color: var(--eco-white);
  text-align: center;
}

.eco-cta p {
  max-width: 720px;
  margin-inline: auto;
  color: rgba(255, 255, 255, 0.78);
}

.eco-footer {
  padding-block: 3rem;
  background: var(--eco-anthracite);
  color: var(--eco-white);
}

.eco-checklist {
  display: grid;
  gap: 0.65rem;
  padding-left: 1.1rem;
}

.eco-process-list {
  display: grid;
  gap: 1rem;
  counter-reset: process;
  padding-left: 0;
  list-style: none;
}

.eco-process-list li {
  border-radius: var(--eco-radius);
  background: var(--eco-white);
  padding: 1.25rem 1.5rem;
  box-shadow: var(--eco-shadow);
}

@media (max-width: 781px) {
  .eco-hero__title {
    font-size: clamp(2rem, 10vw, 3.5rem);
  }

  .eco-section {
    padding-block: 3.5rem;
  }

  .eco-card-grid,
  .eco-trust__grid {
    gap: 1rem;
  }
}

/* fa2eac519ea04e33b7242e40: for jsbase */
.eco-reveal {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity 420ms ease, transform 420ms ease;
}

.eco-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* af961cb2078e17ffc8228772: additional styles */
.eco-service-card p {
	word-break: keep-all;
    overflow-wrap: normal;
}    

.eco-process-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  padding: 2rem 0;
}

.eco-process-card {
  background: #ffffff;
  border: 1px solid rgba(18, 61, 50, 0.1);
  border-radius: 10px;
  overflow: hidden;
	box-shadow: var(--eco-shadow);
	transition: transform var(--eco-transition), box-shadow var(--eco-transition), border-color var(--eco-transition);
}
.eco-process-card:hover {
  transform: translateY(-4px);
  border-color: rgba(31, 90, 72, 0.35);
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.14);
}

.eco-process-card__bar {
  height: 5px;
  background: #658F2D;
}

.eco-process-card__bar--last {
  background: #085041;
}

.eco-process-card__body {
  padding: 30px 32px 32px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.eco-process-card__num {
  font-size: 28px;
  font-weight: 700;
  color: #658F2D;
  line-height: 1;
}

.eco-process-card__num--last {
  color: #085041;
}

.eco-process-card__title {
  font-size: 22px;
  font-weight: 600;
  color: #1a1a1a;
  line-height: 1.35;
  display: block;
}

.eco-process-card__sub {
  font-size: 18px;
  color: #1a1a1a;
  line-height: 1.4;
  display: block;
}

/* Mobile: left-border card list */
@media (max-width: 768px) {
  .eco-process-grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .eco-process-card {
    border-radius: 8px;
    display: flex;
    flex-direction: row;
    overflow: hidden;
  }

  .eco-process-card__bar {
    width: 5px;
    height: auto;
    min-height: 100%;
    flex-shrink: 0;
  }

  .eco-process-card__body {
    padding: 14px 16px;
    gap: 4px;
  }

  .eco-process-card__num {
    font-size: 20px;
  }

  .eco-process-card__title {
    font-size: 14px;
  }
	
	.benefits_grid {
			grid-template-columns: 1fr;
        	gap: 10px;
	}
}

/* kontant page */
.kontakt_section, .services_section, .projects_section {
	background: var(--eco-steel);	
}

.services_section .eco-service-card {
	background: none;
    border: none;
    box-shadow: none;
}


/* 3aa8da6a8f829140fdfd6218: Navigation */
/* Force hamburger below 1080px */
@media (max-width: 1089px) {
  .wp-block-navigation__responsive-container-open {
    display: flex !important;
  }
  .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none !important;
  }
}

/* Force full nav above 1080px */
@media (min-width: 1090px) {
  .wp-block-navigation__responsive-container-open {
    display: none !important;
  }
  .wp-block-navigation__responsive-container {
    display: block !important;
    position: static !important;
    background: transparent !important;
  }
  .wp-block-navigation__responsive-container .wp-block-navigation__container {
    display: flex !important;
    flex-direction: row !important;
  }
}

@media (max-width: 600px) {
	header .wp-block-site-logo img.custom-logo {
    	width: 100px; !important
	}
}

.wp-block-navigation .wp-block-navigation-item.current-menu-item {
	font-weight: 600;
}

/* 02952716bb187d331f002c3a: Page Projects */
.eco-page.projects ul.wp-block-list {
	padding-left: 20px !important;
}

/* 61c5bd6b4dbf96909fe66810: Form */
.cfcf7-block-container .cfcf7-block {
	padding: 0 !important;
}
.cfcf7-block-container .cfcf7-block form p {
	margin: 0 !important;
}

.cfcf7-block-container .cfcf7-block form p label br:last-of-type {
  display: none !important;
} 

.cfcf7-block-container .cfcf7-block form p label {
	padding-bottom: 1rem;
}

.cfcf7-block-container .cfcf7-block form p label.privacy-policy br {
	display: none !important;
}
.cfcf7-block-container .cfcf7-block form p label span.wpcf7-form-control-wrap .wpcf7-form-control {
	color: #ffffff !important;
}

/* dc1177dd6cba84e739336015: CookieYes */
.cky-btn-accept {
   border-color: #658f2d !important;
   background-color: #658f2d !important;
}

.cky-btn-preferences, .cky-btn-reject, .cky-btn-customize {
   color: #658f2d !important;
   border-color: #658f2d !important;
}

.cky-revisit-bottom-left {
   background-color: #658f2d !important;
}

button {
	border-radius: 8px !important;
}
