@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

@font-face {
    font-family: 'Impact LT Std';
    src: url('../fonts/ImpactLTStd.eot');
    src: local('../fonts/Impact LT Std Roman'), local('ImpactLTStd'),
            url('../fonts/ImpactLTStd.eot?#iefix') format('embedded-opentype'),
            url('../fonts/ImpactLTStd.woff2') format('woff2'),
            url('../fonts/ImpactLTStd.woff') format('woff'),
            url('../fonts/ImpactLTStd.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

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

*, *:hover, *:after {
    transition: all .4s ease-in-out;
}

body, input, textarea {
    color: #000;
    font-family: "Open Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "wdth" 100;
}

html, body, h1, h2, h3, h4, h5, p, ul, ol {
    margin: 0;
    padding: 0;
}

ul {
    list-style: none;
}

a {
    text-decoration: none;
}

img {
    max-width: 100%;
}

.overflow-hidden {
    overflow: hidden;
}

.anim {
    opacity: 0;
    transition-delay: .2s;
    transition-duration: .45s;
    transition-timing-function: ease-out;
}

.anim-delay-4 {
    transition-delay: .4s;
}

.anim-delay-6 {
    transition-delay: .6s;
}

.anim-delay-8 {
    transition-delay: .8s;
}

.anim-delay-10 {
    transition-delay: 1s;
}

.animed {
    opacity: 1;
}

.anim-left {
    transform: translateX(100px);
}

.anim-left.animed {
    transform: translateX(0);
}

.anim-right {
    transform: translateX(-100px);
}

.anim-right.animed {
    transform: translateX(0);
}

.anim-top {
    transform: translateY(100px);
}

.anim-top.animed {
    transform: translateX(0);
}

.wrapper {
    margin: 0 auto;
    max-width: 1428px;
    padding: 0 64px;
    position: relative;
    width: 100%;
}

.site-section {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.has-landscape:before {
    background: url(../images/picto-landscape.png) right bottom no-repeat;
    bottom: 0;
    content: '';
    height: 213px;
    position: absolute;
    right: 4px;
    width: 493px;
}

.has-arrow:after {
    align-items: center;
    background-color: #fff;
    border-radius: 50%;
    bottom: -50px;
    color: #0c7037;
    content: '»';
    display: flex;
    font-size: 60px;
    font-weight: 800;
    height: 100px;
    justify-content: center;
    left: 50%;
    padding-bottom: 12px;
    position: absolute;
    transform: translateX(-50%) rotate(90deg);
    width: 100px;
    z-index: 2;
}

.section-title {
    align-items: flex-end;
    color: #0c7037;
    display: flex;
    font-size: 44px;
    font-weight: 300;
    gap: 32px;
    line-height: 44px;
    margin-bottom: 72px;
}

.section-title.text-center {
    font-size: 34px;
    justify-content: center;
    line-height: 42px;
}

.section-title:not(.text-center):after {
    background-color: #ebebeb;
    content: '';
    flex-grow: 1;
    height: 1px;
    margin-bottom: 4px;
}

.page-home .section-title {
    justify-content: center;
    text-align: center;
}

.page-home .section-title:after {
    display: none;
}

.section-grey_back {
    background: linear-gradient(175deg,rgba(241, 241, 241, 1) 0%, rgba(241, 241, 241, 1) 30%, rgba(235, 235, 235, 1) 30%, rgba(235, 235, 235, 1) 100%);
}

.section-green_back {
    background-color: #158143;
}

.columns-2 {
    display: flex;
}

.columns-2 .column {
    flex: 1 0 50%;
}

.columns-2 .column-left {
    padding-right: 66px;
}

.common-text p {
    font-family: "Lato", sans-serif;
    font-size: 16px;
    line-height: 24px;
    margin-top: 1em;
}

.common-text p + p {
    margin-top: 1em;
}

.common-text strong, .common-text b {
    font-weight: 700;
}

.image-boxes {
    display: flex;
    gap: 18px;
}

.image-boxes > div {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 28px;
    justify-content: flex-end;
}

.image-boxes h3 {
    color: #f3943b;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
}

.image-boxes img {
    border-radius: 10px;
    max-width: 100%;
    object-fit: cover;
}

.text-blocks {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.text-blocks > div {
    background-color: #fff;
    border-radius: 5px;
    padding: 32px 36px;
}

.text-blocks h3 {
    color: #f3943b;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 1em;
}

.text-blocks p {
    text-indent: 34px;
}

.text-center {
    text-align: center;
}

.btn-contact {
    align-items: stretch;
    background-color: #158244;
    border-radius: 10px;
    display: flex;
    font-size: 18px;
    height: 60px;
    line-height: 60px;
    overflow: hidden;
    text-transform: uppercase;
    width: 303px;
}

.page-home .hero .btn-contact {
    margin-left: 52px;
}

.btn-contact:hover {
    background-color: #ffab55;
}

.btn-contact span {
    background-color: #0b6f37;
    border-radius: 10px;
    color: #fff;
    flex-grow: 1;
    padding: 0 40px;
}

.btn-contact:hover span {
    background-color: #e9933b;
}

.btn-contact b {
    color: #fff;
    flex: 0 0 51px;
    font-size: 30px;
    font-weight: 800;
    line-height: 56px;
    text-align: center;
}

.btn-regular {
    background-color: #e9933b;
    border-radius: 5px;
    color: #fff;
    display: inline-block;
    font-size: 14px;
    height: 45px;
    line-height: 45px;
    padding: 0 20px;
}

.site-header {
    background-color: #0c7037;
    height: 150px;
    left: 0;
    padding: 50px 0 36px;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 100;
    /*
    overflow: hidden;
    */
}

.site-header:hover {
    overflow: visible;
}

body:has(.hero):not(.page-home) .site-header {
    background-color: #0c6f37cc;
}

.page-home .site-header {
    background-color: transparent;
}

.site-header.sticky, .page-home .site-header.sticky {
    background-color: #0c7037;
    box-shadow: 0 3px 3px #0000003b;
    height: auto;
    padding: 12px 0;
}

.site-header .wrapper {
    align-items: flex-end;
    display: flex;
    justify-content: space-between;
}

.site-header .site-logo img {
    display: block;
}

.site-header.sticky .site-logo img {
    height: 42px;
    width: auto;
}

.site-nav {
    align-items: center;
    display: flex;
    gap: 12px;
}

.main-menu-toggle {
    display: none;
}

.main-menu {
    display: flex;
    gap: 12px;
}

.main-menu:hover {
    overflow: visible;
}

.main-menu a, .page-home .site-header.sticky .main-menu a {
    color: #fff;
    display: block;
    font-size: 16px;
    font-weight: 600;
    padding: 15px 12px;
    position: relative;
    text-transform: uppercase;
}

.page-home .main-menu a {
    color: #000;
}

.main-menu a:after, .page-home .site-header.sticky .main-menu a:after {
    background-color: #fff;
    bottom: 6px;
    content: '';
    height: 2px;
    left: 50%;
    opacity: 0;
    position: absolute;
    right: 50%;
}

.page-home .main-menu a:after {
    background-color: #000;
}

.main-menu a:hover:after, .main-menu .active:after, .page-home .site-header.sticky .main-menu .active:after, .page-home .site-header.sticky .main-menu a:hover:after {
    left: 12px;
    opacity: 1;
    right: 12px;
}

.main-menu-close {
    display: none;
}

.page-home .main-menu .active {
    color: #0c7037;
}

.page-home .main-menu .active:after {
    background-color: #0c7037;
}

.main-menu .has-submenu {
    position: relative;
}

.main-menu .submenu {
    background-color: #0c7037;
    border-radius: 10px;
    filter: drop-shadow(0 4px 14px #00000045);
    left: 50%;
    opacity: 0;
    padding: 16px 12px;
    position: absolute;
    text-align: center;
    top: 100%;
    transform: translate(-50%, 46px);
    transition-duration: .15s;
}

.main-menu .has-submenu:hover .submenu {
    opacity: 1;
    transform: translate(-50%, 6px);
    transition-duration: .3s;
}

.main-menu .submenu:before {
    content: '';
    height: 6px;
    left: 0;
    position: absolute;
    top: -6px;
    width: 100%;
}

.main-menu .submenu:after {
    background-color: #0c7037;
    content: '';
    height: 12px;
    left: 50%;
    position: absolute;
    top: 0;
    transform: rotate(45deg) translate(-50%, -2px);
    width: 12px;
}

.main-menu .submenu a, .page-home .site-header.sticky .main-menu .submenu a {
    color: #fff;
    display: inline-block;
    font-size: 14px;
    padding: 8px 12px;
    white-space: nowrap;
}

.main-menu .submenu a:after, .page-home .main-menu .submenu a:after {
    background-color: #fff;
    height: 1px;
}

.search-toggle {
    border-radius: 50%;
    display: block;
}

.search-toggle:hover, .page-home .site-header.sticky .search-toggle:hover {
    background-color: #158143;
}

.search-toggle span, .page-home .site-header.sticky .search-toggle span {
    background-color: #fff;
    display: block;
    font-size: 0;
    height: 42px;
    mask-image: url(../images/icon-search.png);
    mask-position: center;
    mask-repeat: no-repeat;
    width: 42px;
}

.page-home .search-toggle span {
    background-color: #000;
}

.page-home .search-toggle:hover span {
    background-color: #fff;
}

.site-search {
    position: relative;
}

.search-form {
    background-color: #0c7037;
    border-radius: 10px;
    display: flex;
    filter: drop-shadow(0 4px 14px #00000045);
    opacity: 0;
    padding: 16px;
    position: absolute;
    right: -20px;
    text-align: center;
    top: 100%;
    transform: translateY(46px);
    transition-duration: .15s;
}

.search-form.active {
    opacity: 1;
    transform: translateY(6px);
    transition-duration: .3s;
}

.search-form:before {
    content: '';
    height: 6px;
    left: 0;
    position: absolute;
    top: -6px;
    width: 100%;
}

.search-form:after {
    background-color: #0c7037;
    content: '';
    height: 12px;
    right: 36px;
    position: absolute;
    top: 0;
    transform: rotate(45deg) translate(0, -2px);
    width: 12px;
}

.search-form [type=text] {
    background-color: #fff;
    border: none;
    border-radius: 5px;
    color: #000;
    font-size: 16px;
    padding: 8px;
    position: relative;
    width: 240px;
}

.search-form [type=text]:focus-visible {
    outline: none;
}

.search-form button {
    background-color: #158244;
    border: none;
    border-radius: 5px;
    color: #fff;
    cursor: pointer;
    font-size: 24px;
    font-weight: bold;
    margin-left: -10px;
    padding: 0 12px 4px 22px;
    text-transform: uppercase;
}

.search-form button:hover {
    background-color: #ffab55;
}

.lang-switch {
    margin-left: 12px;
}

.lang-switch a, .page-home .site-header.sticky .lang-switch a {
    align-items: center;
    background-color: #fff;
    border-radius: 50%;
    color: #0c7037;
    display: flex;
    font-size: 16px;
    font-weight: 600;
    height: 40px;
    justify-content: center;
    width: 40px;
}

.lang-switch a:hover, .page-home .site-header.sticky .lang-switch a:hover {
    background-color: #158143;
    color: #fff;
}

.page-home .lang-switch a {
    background-color: #0c7037;
    color: #fff;
}

.page-home .lang-switch a:hover {
    background-color: #fff;
    color: #0c7037;
}

.btn-contact-icon {
    display: none;
}

.site-content {
    margin-top: 148px;
    overflow: hidden;
}

.page-home .site-content, body:has(.hero) .site-content {
    margin-top: 0;
}

.hero {
    color: #fff;
    font-family: "Lato", sans-serif;
    font-size: 22px;
    line-height: 28px;
    min-height: 854px;
    padding-bottom: 78px;
    padding-top: 430px;
    position: relative;
}

.page-home .hero {
    min-height: 1130px;
}

.hero .content {
    max-width: 906px;
    position: relative;
    z-index: 2;
}

.hero h1 {
    color: #fff;
    font-family: "Open Sans", sans-serif;
    font-size: 55px;
    font-weight: 700;
    line-height: 55px;
    margin-bottom: 41px;
}

.hero p {
    color: #fff;
    font-size: 26px;
    line-height: 32px;
    margin-bottom: 46px;
}

.hero li {
    color: #fff;
    font-family: "Lato", sans-serif;
    padding-left: 52px;
    position: relative;
}

.hero li + li {
    margin-top: 1em;
}

.hero li:before {
    background-color: #fff;
    border-radius: 4px;
    content: '';
    height: 8px;
    left: 36px;
    position: absolute;
    top: 9px;
    width: 8px;
}

.hero strong {
    color: #fff;
    font-size: 20px;
    font-weight: 900;
}

.hero ul {
    margin-bottom: 52px;
}

.hero li a {
    background-color: #00000080;
    border-radius: 3px;
    color: #ea943b;
    display: inline-block;
    font-size: 12px;
    line-height: 27px;
    padding: 0 16px;
}

.hero li a:hover {
    background-color: #15824480;
    color: #fff;
}

.hero img {
    height: 100%;
    left: 0;
    object-fit: cover;
    object-position: 50% 8%;
    position: absolute;
    top: 0;
    width: 100%;
}

.section-benefits {
    padding: 158px 0;
}

.section-benefits .section-title {
    margin-bottom: 130px;
}

.section-benefits .items {
    display: flex;
    gap: 64px;
    justify-content: space-between;
    max-width: 100%;
    width: 1480px;
}

.section-benefits .items li {
    align-items: center;
    display: flex;
    flex-direction: column;
    font-size: 22px;
    font-weight: 700;
    line-height: 30px;
    gap: 32px;
    text-align: center;
}

.section-benefits .items img {
    background: url(../images/shape-circle-green-border-glow.png) center no-repeat;
    content: '';
    height: 195px;
    object-fit: scale-down;
    width: 195px;
}

.section-news {
    min-height: 832px;
    padding: 188px 0 172px;
}

.news-item {
    display: flex;
    flex-direction: row;
    gap: 55px;
}

.news-item .pic img {
    border-radius: 10px;
    height: 475px;
    object-fit: cover;
    width: 475px;
}

.news-item .content {
    max-width: 558px;
}

.news-item .content h2:before {
    content: '» ';
}

.news-item .content h2 {
    color: #727271;
    font-size: 44px;
    font-weight: 300;
    margin-bottom: 24px;
}

.news-item .content h3 {
    color: #0c7037;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 6px;
}

.news-item .content time {
    color: #898989;
    display: block;
    font-size: 12px;
    font-weight: 700;
    line-height: 34px;
    margin-bottom: 20px;
}

.news-item .content p {
    font-size: 16px;
    font-weight: 300;
    line-height: 26px;
    margin-bottom: 34px;
}

.news-item .content p a {
    color: #ea943b;
    text-decoration: underline;
}

.news-item .content p a:hover {
    color: #0c7037;
    text-decoration: none;
}

.section-efficiency {
    background: url(../images/roof-sun-panels.jpg) center / 100% auto no-repeat;
    background-attachment: fixed;
    padding: 170px 0 140px;
}

.section-efficiency .content {
    max-width: 1004px;
}

.section-efficiency h2 {
    color: #fff;
    font-size: 36px;
    font-weight: 800;
    line-height: 48px;
    margin-bottom: 20px;
    text-transform: uppercase;
}

.section-efficiency p {
    color: #fff;
    font-size: 16px;
    font-weight: 300;
    line-height: 26px;
    margin-bottom: 30px;
}

.section-feedback {
    padding: 172px 0 134px;
}

.section-feedback .wrapper {
    align-items: center;
    display: flex;
    flex-direction: column;
}

.section-feedback .section-title {
    margin-bottom: 56px;
}

.feedback {
    width: 100%;
}

.feedback .items {
    overflow: hidden;
}

.feedback .owl-item.active + .owl-item.active {
    border-left: 1px solid #c2c2c2;
}

.feedback .item {
    display: flex;
    flex-direction: column-reverse;
    gap: 30px;
}

.feedback .item:first-child {
    padding: 22px 38px 8px 26px;
}

.feedback .item:last-child {
    padding: 22px 26px 8px 38px;
}

.feedback .heading {
    align-items: center;
    display: flex;
    gap: 30px;
    justify-content: flex-end;
}

.feedback .heading h3 {
    font-style: italic;
    font-weight: 300;
}

.feedback .heading h3 span {
    font-style: italic;
    font-weight: 400;
}

.feedback .heading img {
    border-radius: 50%;
    height: 52px;
    object-fit: cover;
    width: 52px;
}

.feedback .text {
    font-style: italic;
    font-weight: 300;
}

.feedback .text:before, .feedback .text:after {
    background: url(../images/quotes.svg) center no-repeat;
    content: '';
    display: inline-block;
    height: 16px;
    width: 18px;
}

.feedback .text:before {
    margin-right: 16px;
    transform: translateY(-14px);
}

.feedback .text:after {
    margin-left: 16px;
    transform: translateY(14px);
}

.feedback .text span {
    font-weight: 400;
}

.owl-carousel .owl-dots {
    display: flex;
    gap: 28px;
    justify-content: center;
    margin-top: 54px;
}

.owl-carousel button.owl-dot {
    background-color: #727271;
    border-radius: 2px;
    height: 3px;
    width: 56px;
}

.owl-dots .owl-dot:hover, .owl-dots .owl-dot.active {
    background-color: #ea943b;
}

.section-about {
    border-top: 40px solid #158143;
    padding: 104px 0 156px;
}

.section-about .column-right {
    margin-top: -46px;
}

.section-mission {
    padding: 124px 0;
}

.section-mission img {
    border-radius: 10px;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.section-licenses {
    padding: 124px 0;
}

.section-licenses .column-right {
    margin-top: -122px;
    text-align: center;
}

.section-description {
    padding: 78px 0 94px;
}

.section-description .wrapper {
    color: #fff;
    font-family: "Lato", sans-serif;
    font-size: 20px;
    line-height: 30px;
    max-width: 984px;
    text-align: center;
}

.section-phases {
    padding: 138px 0 74px;
    text-align: center;
}

.section-phases .wrapper {
    max-width: 1408px;
    padding: 0 24px;
}

.section-phases .phases {
    display: grid;
    gap: 146px;
    grid-template-columns: repeat(3, 1fr);
    margin-bottom: 116px;
}

.section-phases .phases .phase {
    align-items: center;
    display: flex;
    flex-direction: column;
}

.section-phases .phases img {
    height: 114px;
    object-fit: contain;
    width: 98px;
}

.section-phases .analys img {
    object-position: 50% 20px;
}

.section-phases .energy img {
    object-position: 50% 11px;
}

.section-phases .phases h2 {
    border-top: 1px solid #ebebeb;
    color: #ea943b;
    font-size: 24px;
    font-weight: 300;
    margin-bottom: 18px;
    margin-top: 30px;
    padding-top: 34px;
    width: 217px;
}

.section-phases .phases h3 {
    color: #0c7037;
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 30px;
    line-height: 1.3em;
}

.section-phases .phases p {
    line-height: 28px;
}

.section-phases .cto {
    color: #0c7037;
    font-size: 30px;
    font-weight: 300;
    line-height: 42px;
    margin: 0 auto;
    max-width: 482px;
}

.section-services-list {
    padding: 168px 0 164px;
}

.section-services-list .list {
    display: grid;
    gap: 26px;
    grid-template-columns: repeat(4, 1fr);
}

.section-services-list .list a {
    background-color: #fff;
    border-radius: 10px;
    display: block;
    height: 430px;
    padding: 10px 11px;
}

.section-services-list .list a:hover {
    background-color: #0b6f37;
}

.section-services-list .list .pic {
    border-radius: 8px;
    height: 290px;
    margin-bottom: 26px;
    overflow: hidden;
}

.section-services-list .list img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.section-services-list .list a:hover img {
    transform: scale(1.2, 1.2);
}

.section-services-list .list h2 {
    color: #0b6f37;
    font-size: 20px;
    font-weight: normal;
    line-height: 26px;
    text-align: center;
}

.section-services-list .list a:hover h2 {
    color: #fff;
}

.section-service-description {
    padding: 112px 0 154px;
    text-align: center;
}

.section-service-description .wrapper {
    max-width: 1556px;
}

.section-service-description .wrapper:after {
    bottom: -300px;
    content: url(../images/arrow-stars.png);
    left: 328px;
    position: absolute;
}

.section-service-description .section-title {
    margin-bottom: 24px;
}

.section-service-description .wrapper > p {
    font-family: "Lato", sans-serif;
    font-size: 18px;
    line-height: 26px;
    margin: 0 auto;
    max-width: 968px;
}

.section-service-description h2 {
    font-family: "Lato", sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 26px;
    margin-bottom: 26px;
    margin-top: 2em;
}

.section-service-description ol {
    color: #fff;
    counter-reset: item;
    display: grid;
    font-family: "Lato", sans-serif;
    gap: 8px;
    grid-template-columns: repeat(3, 1fr);
    list-style: none;
    text-align: left;
}

.section-service-description ol li {
    border-radius: 5px;
    overflow: hidden;
    padding: 40px 46px 40px 50px;
    position: relative;
}

.section-service-description ol li:nth-child(1) {
    background-color: #0b6f37cc;
}

.section-service-description ol li:nth-child(2) {
    background-color: #0b6f37e6;
}

.section-service-description ol li:nth-child(3) {
    background-color: #0b6f37;
}

.section-service-description ol li:after {
    bottom: 0;
    counter-increment: item;
    content: counter(item);
    font-family: 'Impact LT Std', sans-serif;
    font-size: 150px;
    line-height: 112px;
    position: absolute;
    right: 18px;
}

.section-service-description ol li:nth-child(1):after {
    color: #247e4b;
}

.section-service-description ol li:nth-child(2):after {
    color: #0c7037;
}

.section-service-description ol li:nth-child(3):after {
    color: #07652f;
}

.section-service-description ol li h3 {
    font-size: 22px;
    line-height: 26px;
    margin-bottom: 1em;
    position: relative;
    z-index: 2;
    font-weight: 700;
}

.section-service-description ol li p {
    font-size: 16px;
    line-height: 24px;
    position: relative;
    z-index: 2;
}

.section-service-purpose {
    padding: 86px 0 144px;
}

.section-service-purpose .wrapper {
    max-width: 1556px;
}

.section-service-purpose .wrapper:after {
    bottom: -300px;
    content: url(../images/arrow-pluses.png);
    right: 328px;
    position: absolute;
}

.section-service-purpose ul {
    counter-reset: item;
    display: grid;
    font-family: "Lato", sans-serif;
    gap: 8px;
    grid-template-columns: repeat(3, 1fr);
    list-style: none;
    text-align: left;
}

.section-service-purpose ul li {
    background-color: #fff;
    border-radius: 5px;
    overflow: hidden;
    padding: 40px 46px 40px 50px;
    position: relative;
}

.section-service-purpose ul li h3 {
    color: #0c7037;
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 1em;
}

.section-service-purpose ul li p {
    font-size: 16px;
    line-height: 24px;
}

.section-service-benefits {
    padding: 106px 0 172px;
}

.section-service-benefits .wrapper {
    max-width: 1556px;
}

.section-service-benefits .wrapper:after {
    bottom: -300px;
    content: url(../images/arrow-gears.png);
    left: 328px;
    position: absolute;
}

.section-service-benefits {
    padding: 106px 0 172px;
}

.section-service-benefits .wrapper:after {
    bottom: -300px;
    content: url(../images/arrow-gears.png);
    left: 328px;
    position: absolute;
}

.section-service-benefits ul {
    color: #fff;
    counter-reset: item;
    display: grid;
    font-family: "Lato", sans-serif;
    gap: 8px;
    grid-template-columns: repeat(3, 1fr);
    list-style: none;
    text-align: left;
}

.section-service-benefits ul li {
    border-radius: 5px;
    overflow: hidden;
    padding: 40px 46px 40px 50px;
    position: relative;
}

.section-service-benefits ul li:nth-child(1) {
    background-color: #0b6f37cc;
}

.section-service-benefits ul li:nth-child(2) {
    background-color: #0b6f37e6;
}

.section-service-benefits ul li:nth-child(3) {
    background-color: #0b6f37;
}

.section-service-benefits ul li h3 {
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 1em;
}

.section-service-benefits ul li p {
    font-size: 16px;
    line-height: 24px;
}

.section-service-process {
    padding: 106px 0 172px;
}

.section-service-process .wrapper {
    max-width: 1556px;
}

.section-service-process .section-title {
    margin-bottom: 10px;
}

.section-service-process .section-title + h3 {
    color: #000;
    font-family: "Lato", sans-serif;
    font-size: 18px;
    font-weight: normal;
    line-height: 26px;
    margin-bottom: 84px;
    text-align: center;
}

.section-service-process ul {
    counter-reset: item;
    display: grid;
    font-family: "Lato", sans-serif;
    gap: 8px;
    grid-template-columns: repeat(5, 1fr);
    list-style: none;
    text-align: left;
}

.section-service-process ul li {
    background-color: #fff;
    border-radius: 5px;
    padding: 48px 44px;
    position: relative;
}

.section-service-process ul li:nth-child(1) {
    border-right: 11px solid #92baa3;
    z-index: 5;
}

.section-service-process ul li:nth-child(2) {
    border-right: 11px solid #65a17f;
    z-index: 4;
}

.section-service-process ul li:nth-child(3) {
    border-right: 11px solid #39895b;
    z-index: 3;
}

.section-service-process ul li:nth-child(4) {
    border-right: 11px solid #0c7037;
    z-index: 2;
}

.section-service-process ul li:before {
    border-style: solid;
    border-width: 14.5px 0px 14.5px 15px;
    content: '';
    height: 0;
    position: absolute;
    right: -26px;
    top: 48px;
    width: 0;
    z-index: 2;
}

.section-service-process ul li:nth-child(1):before {
    border-color: transparent transparent transparent #92baa3;
}

.section-service-process ul li:nth-child(2):before {
    border-color: transparent transparent transparent #65a17f;
}

.section-service-process ul li:nth-child(3):before {
    border-color: transparent transparent transparent #39895b;
}

.section-service-process ul li:nth-child(4):before {
    border-color: transparent transparent transparent #0c7037;
}

.section-service-process ul li:nth-child(5):before {
    display: none;
}

.section-service-process ul li:after {
    border-color: transparent transparent transparent #ebebeb;
    border-style: solid;
    border-width: 18px 0px 18px 18px;
    content: '';
    height: 0;
    position: absolute;
    left: 0;
    top: 44px;
    width: 0;
}

.section-service-process ul li:nth-child(1):after {
    display: none;
}

.section-service-process ul li h4 {
    color: #0c7037;
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 1em;
}

.section-service-process ul li p {
    font-size: 16px;
    line-height: 24px;
}

.section-service-faq {
    padding: 72px 0;
}

.section-service-faq a {
    color: #0c7037;
    font-size: 18px;
    line-height: 36px;
    text-decoration: underline;
    text-transform: uppercase;
}

.section-service-faq a:hover {
    text-decoration: none;
}

.section-faq {
    padding: 116px 0 232px;
}

.section-faq .wrapper {
    max-width: 1274px;
}

.faq-list {
    counter-reset: item;
}

.faq-list .topic + .topic {
    margin-top: 10px;
}

.faq-list .topic .topic-title {
    display: flex;
    margin-bottom: 22px;
    position: relative;
}

.faq-list .topic .topic-title:before {
    counter-increment: item;
    content: counter(item) '.';
    flex: 0 0 100px;
    font-family: 'Impact LT Std', sans-serif;
    font-size: 100px;
    line-height: 90px;
    padding-left: 20px;
}

.faq-list .topic:nth-child(1) .topic-title:before {
    color: #3d8d5f;
}

.faq-list .topic:nth-child(2) .topic-title:before {
    color: #247e4b;
}

.faq-list .topic:nth-child(3) .topic-title:before {
    color: #0c7037;
}

.faq-list .topic .topic-title:after {
    border-radius: 3px;
    bottom: -10px;
    content: '';
    height: 5px;
    left: 0;
    position: absolute;
    right: 0;
}

.faq-list .topic:nth-child(1) .topic-title:after {
    background-color: #3d8d5f;
}

.faq-list .topic:nth-child(2) .topic-title:after {
    background-color: #247e4b;
}

.faq-list .topic:nth-child(3) .topic-title:after {
    background-color: #0c7037;
}

.faq-list .topic .topic-title h2 {
    background: calc(100% - 18px) center no-repeat;
    border-radius: 5px;
    color: #fff;
    flex-grow: 1;
    font-family: "Lato", sans-serif;
    font-size: 24px;
    font-weight: normal;
    line-height: 26px;
    padding: 35px 96px 25px 43px;
}

.faq-list .topic:nth-child(1) .topic-title h2 {
    background-color: #3d8d5f;
    background-image: url(../images/icon-certificate-white.png);
}

.faq-list .topic:nth-child(2) .topic-title h2 {
    background-color: #247e4b;
    background-image: url(../images/icon-house-white.png);
}

.faq-list .topic:nth-child(3) .topic-title h2 {
    background-color: #0c7037;
    background-image: url(../images/icon-energy-white.png);
}

.faq-list .topic .topic-content {
    padding-left: 100px;
}

.faq-list .question {
    border-bottom: 1px solid #ebebeb;
    padding: 29px 33px 25px 46px;
}

.faq-list .question:last-child {
    border-bottom: none;
}

.faq-list .question h3 {
    cursor: pointer;
    font-size: 18px;
    font-weight: normal;
    line-height: 28px;
    position: relative;
}

.faq-list .topic:nth-child(1) h3:hover {
    color: #3d8d5f;
}

.faq-list .topic:nth-child(2) h3:hover {
    color: #247e4b;
}

.faq-list .topic:nth-child(3) h3:hover {
    color: #0c7037;
}

.faq-list .question h3:before {
    background-color: #ebebeb;
    border-radius: 15px;
    content: '';
    height: 30px;
    position: absolute;
    right: 0;
    top: 0;
    width: 30px;
}

.faq-list .question h3:hover:before {
    background-color: #e4e4e4;
}

.faq-list .question h3:after {
    border: solid #898989;
    border-width: 0 2px 2px 0;
    content: '';
    height: 10px;
    position: absolute;
    right: 10px;
    top: 7px;
    transform: rotate(45deg);
    width: 10px;
}

.faq-list .question h3:hover:after {
    border-color: #5d5d5d;
}

.faq-list .question h3.active:after {
    top: 12px;
    transform: rotate(225deg);
}

.faq-list .question div {
    font-size: 16px;
    font-weight: 300;
    max-height: 0;
    line-height: 28px;
    overflow: hidden;
    transition-duration: .6s;
}

.faq-list .question .active + div div,
.faq-list .question .active + div {
    max-height: 1000px;
}

.faq-list .question div > :first-child {
    margin-top: 26px;
}

.faq-list .question div > :last-child {
    margin-bottom: 4px;
}



.site-footer {
    border-top: 1px solid #ea943b;
    overflow: hidden;
    padding: 88px 0 132px;
}

.site-footer .wrapper {
    display: flex;
    gap: 64px;
    justify-content: stretch;
}

.site-footer .wrapper > div {
    flex-grow: 1;
}

.site-footer .wrapper .column-right {
    max-width: 396px;
    min-width: 312px;
}

.site-footer .contact {
    background: left center no-repeat;
    font-size: 20px;
    font-weight: 300;
    padding-left: 76px;
}

.site-footer .address {
    background-image: url(../images/icon-pin.png);
}

.site-footer .phone {
    background-image: url(../images/icon-tel.png);
}

.site-footer .contact + .contact {
    margin-top: 58px;
}

.site-footer .contact, .site-footer .contact b {
    color: #727271;
    line-height: 30px;
}

.site-footer .contact b {
    display: block;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
}

.site-footer .btn-contact {
    margin-bottom: 30px;
}

.site-footer .socials {
    display: flex;
    gap: 7px;
    margin-bottom: 22px;
}

.site-footer .socials a {
    background: #717171 center no-repeat;
    border-radius: 50%;
    flex: 0 0 52px;
    font-size: 0;
    height: 52px;
}

.site-footer .socials .fb {
    background-image: url(../images/icon-fb.png);
}

.site-footer .socials .fb:hover {
    background-color: #1877F2;
}

.site-footer .socials .ig {
    background-image: url(../images/icon-ig.png);
}

.site-footer .socials .ig:hover {
    background-color: #833ab4;
}

.site-footer .socials .yt {
    background-image: url(../images/icon-yt.png);
}

.site-footer .socials .yt:hover {
    background-color: #f00;
}

.site-footer .info {
    font-size: 14px;
    line-height: 24px;
}

.site-footer .info, .site-footer .info * {
    color: #b7b7b7;
}

.site-footer .info a {
    text-decoration: underline;
}

.site-footer .info a:hover {
    color: #0c7037;
    text-decoration: none;
}

.site-footer .btn-contact-icon {
    display: none;
}

@media (width <= 1440px) {
    .section-efficiency {
        background-size: auto 100%;
    }
}

@media (width <= 1280px) {  
    .wrapper {
        padding: 0 24px;
    }
    
    .site-nav {
        overflow: hidden;
    }
    
    .site-nav:hover {
        overflow: visible;
    }

    .main-menu-toggle {
        align-items: center;
        background-color: #fff;
        border-radius: 50%;
        color: #0c7037;
        display: flex;
        font-size: 16px;
        font-weight: 600;
        height: 40px;
        justify-content: center;
        order: 3;
        width: 40px;
    }

    .main-menu-toggle span, .main-menu-toggle span:before, .main-menu-toggle span:after {
        background-color: #0b6f37;
        border-radius: 2px;
        height: 4px;
        width: 24px;
    }
    
    .main-menu-toggle span {
        font-size: 0;
        position: relative;
    }
    
    .main-menu-toggle span:before, .main-menu-toggle span:after {
        content: '';
        position: absolute;
    }
    
    .main-menu-toggle span:before {
        top: -6px;
    }
    
    .main-menu-toggle span:after {
        bottom: -6px;
    }
    
    .main-menu {
        align-items: center;
        background-color: #0c6f37cc;
        backdrop-filter: blur(4px);
        bottom: 0;
        box-shadow: 3px 0 3px #0000003b;
        flex-direction: column;
        padding-top: 60px;
        position: fixed;
        right: -360px;
        top: 0;
        width: 360px;
        z-index: 999;
    }
    
    .main-menu.show {
        right: 0;
    }
    
    .main-menu a,.page-home .main-menu a, .page-home .main-menu .active {
        color: #fff;
        text-align: center;
    }
    
    .main-menu a:after, .page-home .main-menu a:after, .page-home .main-menu .active:after {
        background-color: #fff;
    }
    
    .main-menu .submenu, .main-menu .has-submenu:hover .submenu {
        background-color: transparent;
        opacity: 1;
        padding: 0;
        position: static;
        transform: none;
    }
    
    .main-menu .submenu a, .page-home .site-header.sticky .main-menu .submenu a {
        white-space: normal;
    }
    
    .main-menu-close {
        display: block;
        height: 40px;
        position: absolute;
        right: 16px;
        top: 16px;
        width: 40px;
    }

    .main-menu-close:before, .main-menu-close:after {
        background-color: #fff;
        border-radius: 2px;
        content: '';
        height: 4px;
        left: 50%;
        position: absolute;
        top: 50%;
        transform-origin: left top;
        width: 25px;
    }
    
    .main-menu-close:before {
        transform: rotate(45deg) translate(-50%, -50%);
    }
    
    .main-menu-close:after {
        transform: rotate(-45deg) translate(-50%, -50%);
    }
    
    .btn-contact-icon {
        background: #fff url(../images/icon-mail.png) center no-repeat;
        border-radius: 20px;
        display: block;
        height: 40px;
        order: 2;
        overflow: hidden;
        text-indent: -9999px;
        width: 40px;
    }
    
    .lang-switch {
        margin-left: 0;
        order: 4;
    }
    
    .hero {
        padding-top: 180px;
    }
    
    .page-home .hero {
        min-height: auto;
    }
    
    .hero .content {
        margin: 0 auto;
    }
    
    .section-benefits .items {
        flex-wrap: wrap;
        justify-content: center;
        margin: 0 auto;
        width: 580px;
    }
    
    .section-benefits .items li {
        flex-basis: 44%;
        max-width: 50%;
        width: 50%;
    }
    
    .section-service-description .wrapper:after, .section-service-purpose .wrapper:after, .section-service-benefits .wrapper:after {
        display: none;
    }
    
    .section-service-process ul {
        grid-template-columns: repeat(1, 1fr);
    }

    .section-service-process ul li:nth-child(1) {
        border-right: none;
        border-bottom: 11px solid #92baa3;
    }

    .section-service-process ul li:nth-child(2) {
        border-right: none;
        border-bottom: 11px solid #65a17f;
    }

    .section-service-process ul li:nth-child(3) {
        border-right: none;
        border-bottom: 11px solid #39895b;
    }

    .section-service-process ul li:nth-child(4) {
        border-right: none;
        border-bottom: 11px solid #0c7037;
    }

    .section-service-process ul li:before {
        border-width: 15px 14.5px 0px 14.5px;
        right: 50%;
        margin-right: -14.5px;
        top: auto;
        bottom: -22px;
    }

    .section-service-process ul li:nth-child(1):before {
        border-color: #92baa3 transparent transparent transparent;
    }

    .section-service-process ul li:nth-child(2):before {
        border-color: #65a17f transparent transparent transparent;
    }

    .section-service-process ul li:nth-child(3):before {
        border-color: #39895b transparent transparent transparent;
    }

    .section-service-process ul li:nth-child(4):before {
        border-color: #0c7037 transparent transparent transparent;
    }

    .section-service-process ul li:after {
        border-color: #ebebeb transparent transparent transparent;
        border-width: 19px 18.5px 0px 18.5px;
        left: 50%;
        margin-left: -18.5px;
        top: 0;
        bottom: auto;
    }
    
    .section-phases .phases {
        gap: 64px;
    }

    .site-footer .wrapper .column-right {
        max-width: 312px;
    }
}

@media (width <= 1024px) {
    .news-item {
        align-items: center;
        flex-direction: column;
        padding-top: 120px;
        position: relative;
    }
    
    .news-item .pic img {
        max-width: 100%;
        width: 558px;
    }
    
    .news-item .content h2 {
        left: 0;
        position: absolute;
        text-align: center;
        top: 0;
        width: 100%;
    }
    
    .section-about .columns-2 {
        flex-direction: column;
        gap: 64px;
    }
    
    .section-about .columns-2 .column-left {
        padding-right: 0;
    }
    
    .section-about .section-about .column-right {
        margin-top: 0;
    }
    
    .image-boxes {
        justify-content: center;
    }
    
    .section-mission .columns-2 .column-left {
        padding-right: 24px;
    }

    .section-service-description ol, .section-service-purpose ul, .section-service-benefits ul {
        grid-template-columns: repeat(1, 1fr);
    }
    
    .section-phases .phases {
        grid-template-columns: repeat(1, 1fr);
    }
    
    .section-services-list .list {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .site-footer .wrapper {
        flex-wrap: wrap;
    }
    
    .site-footer .wrapper .column-left {
        min-width: 100%;
        text-align: center;
    }
}

@media (width <= 768px) {
    .wrapper {
        padding: 0 18px;
    }
    
    .has-landscape:before {
        display: none;
    }
    
    .btn-regular {
        display: block;
        margin: 0 auto;
        max-width: 302px;
        text-align: center;
        width: 100%;
    }
    
    .has-arrow:after {
        bottom: -30px;
        font-size: 46px;
        height: 70px;
        width: 70px;
    }
    
    .section-title {
        justify-content: center;
        margin-bottom: 28px;
    }
    
    .section-title:not(.text-center):after {
        display: none;
    }
    
    .site-header {
        height: auto;
        overflow: visible;
        padding: 28px 0 34px;
    }
    
    .site-header .site-logo img {
        height: 42px;
        width: auto;
    }

    .site-header.sticky .site-logo img {
        height: 32px;
        width: auto;
    }
    
    .main-menu {
        right: -100%;
        width: 100%;
    }
    
    .main-menu .submenu {
        display: flex;
        flex-direction: column;
    }
    
    .search-form {
        left: 50%;
        right: auto;
        transform: translate(-50%, 46px);
    }
    
    .search-form.active {
        transform: translate(-50%, 6px);
    }
    
    .search-form:after {
        left: 50%;
        right: auto;
        transform: rotate(45deg) translate(-5px, 1px);
    }
    
    .page-home .has-arrow:after {
        display: none;
    }
    
    .site-content {
        margin-top: 94px;
    }
    
    .hero {
        min-height: 390px;
        padding: 112px 0 44px;
    }
    
    .hero h1 {
        font-size: 26px;
        line-height: 26px;
        margin-bottom: 8px;
    }
    
    .hero p {
        font-size: 18px;
        line-height: 24px;
        margin-bottom: 22px;
    }
    
    .hero ul {
        font-size: 14px;
        line-height: 18px;
        margin-bottom: 28px;
    }
    
    .hero li {
        padding-left: 0;
    }
    
    .hero li:before {
        display: inline-block;
        height: 6px;
        margin-right: 8px;
        position: static;
        width: 6px;
    }
    
    .hero strong {
        font-size: 14px;
        line-height: 18px;
    }
    
    .hero li br {
        display: none;
    }
    
    .hero li a {
        background: transparent;
        padding: 0;
    }
    
    .hero li a span {
        display: none;
    }
    
    .hero li a:after {
        content: '... »';
        display: inline-block;
    }
    
    .page-home .hero .btn-contact {
        margin: 0 auto;
    }
    
    .section-title {
        font-size: 26px;
        line-height: 30px;
    }
    
    .section-benefits {
        padding: 38px 0 46px;
    }
    
    .section-benefits .section-title {
        margin-bottom: 36px;
    }
    
    .section-benefits .items li {
        font-size: 18px;
        line-height: 24px;
    }
    
    .section-news {
        padding: 36px 0;
    }
    
    .news-item {
        gap: 24px;
        padding-top: 102px;
    }
    
    .news-item .content h2:before {
        display: none;
    }
    
    .news-item .content h3 {
        font-size: 18px;
        line-height: 24px;
    }
    
    .news-item .content time {
        font-size: 12px;
        line-height: 24px;
    }
    
    .news-item .content p {
        font-size: 14px;
        line-height: 24px;
    }
    
    .section-efficiency {
        padding: 80px 0 60px;
    }
    
    .section-efficiency h2 {
        font-size: 24px;
        line-height: 34px;
    }
    
    .section-efficiency p {
        font-size: 14px;
        line-height: 24px;
        margin-bottom: 52px;
    }
    
    .section-feedback {
        padding: 52px 0 68px;
    }
    
    .section-feedback .section-title {
        margin-bottom: 24px;
    }
    
    .feedback .item:last-child, .feedback .item:first-child {
        padding: 22px 0 8px;
    }
    
    .section-faq {
        padding: 54px 0;
    }
    
    .faq-list .topic .topic-title {
        align-items: center;
        flex-direction: column;
    }
    
    .faq-list .topic .topic-title:before {
        content: counter(item);
        font-size: 60px;
        line-height: 60px;
        max-height: 60px;
    }
    
    .faq-list .topic .topic-title:after {
        margin-bottom: 5px;
        order: 1;
        position: static;
        width: 100%;
    }
    
    .faq-list .topic:nth-child(n) .topic-title h2 {
        align-items: center;
        background-image: none;
        display: flex;
        justify-content: center;
        margin-bottom: 0;
        min-height: 94px;
        order: 2;
        padding: 14px;
        text-align: center;
        width: 100%;
    }
    
    .faq-list .topic .topic-content {
        padding-left: 0;
    }
    
    .faq-list .question {
        padding: 24px 8px;
    }
    
    .faq-list .question h3:before {
        right: 0;
    }
    
    .faq-list .question h3:after {
        right: 10px;
    }
    
    .faq-list .question h3.active:after {
        right: 8px;
    }
    
    .section-title.text-center {
        font-size: 26px;
        line-height: 30px;
    }
    
    .section-service-description {
        padding: 54px 0 72px;
    }
    
    .section-service-description .wrapper > p {
        font-size: 16px;
        line-height: 22px;
    }
    
    .section-service-description h2 {
        font-size: 18px;
        line-height: 22px;
        margin-top: 22px;
    }
    
    .section-service-description ol li, .section-service-purpose ul li, .section-service-benefits ul li, .section-service-process ul li {
        padding: 30px 28px;
    }
    
    .section-service-description ol li h3, .section-service-purpose ul li h3, .section-service-benefits ul li h3, .section-service-process ul li h4 {
        font-size: 18px;
        line-height: 22px;
        margin-bottom: 22px;
    }
    
    .section-service-description ol li p, .section-service-purpose ul li p, .section-service-benefits ul li p, .section-service-process ul li p {
        line-height: 22px;
    }
    
    .section-service-purpose {
        padding: 34px 0 44px;
    }
    
    .section-service-benefits {
        padding: 46px 0 50px;
    }
    
    .section-service-process {
        padding: 48px 0 68px;
    }
    
    .section-service-process .section-title + h3 {
        margin-bottom: 24px;
    }
    
    .section-service-faq {
        padding: 114px 0;
    }
    
    .columns-2 {
        flex-direction: column;
    }
    
    .columns-2 .column {
        flex: 1 1 100%;
    }
    
    .section-mission .columns-2 .column-left, .columns-2 .column-left {
        padding-right: 0;
    }
    
    .section-about .column-right, .section-licenses .column-right {
        margin-top: 0;
    }
    
    .section-about, .section-mission, .section-licenses {
        padding: 52px 0;
    }
    
    .section-about {
        border-top: 20px;
    }
    
    .text-blocks > div {
        padding: 24px;
    }
    
    .text-blocks p {
        text-indent: 0;
    }
    
    .image-boxes {
        flex-direction: column;
        gap: 42px;
    }
    
    .image-boxes > div {
        gap: 16px;
    }
    
    .section-services-list .list {
        grid-template-columns: repeat(1, 1fr);
    }

    .site-footer {
        margin: 0 18px;
        padding: 48px 0 42px;
    }
    
    .site-footer .wrapper {
        flex-direction: column;
    }
    
    .site-footer .wrapper > div {
        flex-grow: 0;
        margin: 0 auto;
        text-align: center;
    }
    
    .site-footer .wrapper .column-right {
        min-width: auto;
        max-width: none;
    }
    
    .site-footer .contact {
        background-position: center top;
        padding-left: 0;
        padding-top: 56px;
    }
    
    .site-footer .contact + .contact {
        margin-top: 28px;
    }
    
    .site-footer .socials {
        justify-content: center;
    }
    
    .site-footer .info p + p {
        margin-top: 2em;
    }
    
    .site-footer .info span {
        display: block;
    }

    .site-footer .btn-contact-icon {
        border: 10px solid #b8b8b8;
        border-radius: 50%;
        bottom: 12px;
        display: block;
        height: 50px;
        position: fixed;
        right: 18px;
        width: 50px;
        z-index: 111;
    }
}

@media (width <= 580px) {
    .site-nav {
        gap: 6px;
    }
    
    .section-benefits .items {
        gap: 0;
    }
    
    .section-benefits .items li {
        flex-basis: 100%;
        max-width: 296px;
        width: 100%;
    }
    
    .section-benefits .items li + li {
        border-top: 1px solid #ebebeb;
        margin-top: 46px;
        padding-top: 41px;
    }
}

@media (width <= 425px) {
    .site-header .wrapper {
        align-items: center;
    }
    
    .site-header .site-logo img {
        height: 32px;
    }
    
    .search-toggle span, .page-home .site-header.sticky .search-toggle span, .btn-contact-icon, .main-menu-toggle, .lang-switch a {
        height: 32px;
        width: 32px;
    }
    
    .main-menu-toggle span, .main-menu-toggle span:before, .main-menu-toggle span:after {
        width: 20px;
    }
    
    .btn-contact {
        max-width: 300px;
        width: 100%;
    }
    
    .btn-contact span {
        padding: 0 6px;
    }
    
    .site-footer .wrapper {
        padding: 0;
    }
}

/* milenishte */
.btn-contact span {
    white-space: nowrap;
}
.hero .content > div {
    color: #fff;
    font-size: 26px;
    line-height: 32px;
    margin-bottom: 46px;
}
.btn-contact {
    display: inline-flex;
    width: auto;
    padding-right: 35px;
}
.btn-contact::after {
    content: '»';
    color: #fff;
    flex: 0 0 51px;
    font-size: 30px;
    font-weight: 800;
    line-height: 56px;
    text-align: center;
}
.section-benefits .items li:hover img {
    transform: scale(1.03);
}
.site-footer .contact a {
    color: #727271;
    transition: color .3s;
}
.site-footer .contact a:hover {
    color: #0c7037;
}
.image-boxes img {
    transition: transform .3s;
}
.image-boxes img:hover {
    transform: translateY(-10px);
}
.site-header.sticky .lang-switch a.active,
.lang-switch .active {
    display: none;
}
.section-service-description .wrapper > div > p {
    margin-bottom: 20px;
}
.section-service-description .wrapper > div > p:last-child {
    margin-bottom: 26px;
}
.section-service-description h3 {
    font-family: "Lato", sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 26px;
    margin-bottom: 26px;
    margin-top: 2em;
}
.question ul,
.section-service-description ul {
    text-align: left;
    margin-top: 26px;
    margin-bottom: 26px;
}
.question ul li + li,
.section-service-description ul li + li {
    margin-top: 12px;
}
.question ul li::before,
.section-service-description ul li::before {
    content: '';
    background-color: #0c7037;
    border-radius: 50%;
    flex: 0 0 8px;
    height: 4px;
    margin-right: 12px;
    width: 4px;
    display: inline-block;
}
.section-service-benefits ul li:nth-child(4) {
    background-color: #0b6f37;
}
.section-service-benefits ul li:nth-child(5) {
    background-color: #0b6f37;
}
.section-service-description ol li:nth-child(4) {
  background-color: #0b6f37;
}
.section-service-description ol li:nth-child(4)::after {
    color: #07652f;
}
.section-service-description ol li:nth-child(5) {
  background-color: #0b6f37;
}
.section-service-description ol li:nth-child(5)::after {
    color: #07652f;
}
h1 {
    font-size: 36px;
    line-height: 40px;
    font-weight: normal;
}
.section-contacts .contact {
    background: left center no-repeat;
    font-size: 20px;
    font-weight: 300;
    padding-left: 76px;
}

.section-contacts .address {
    background-image: url(../images/icon-pin.png);
}

.section-contacts .phone {
    background-image: url(../images/icon-tel.png);
}

.section-contacts .contact, .section-contacts .contact b, .section-contacts .contact a {
    color: #727271;
    line-height: 30px;
}

.section-contacts .contact b {
    display: block;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
}

.section-contacts .btn-contact {
    margin-bottom: 30px;
}
.contact-details {
    margin: 50px auto;
}
.section-title.padded {
    padding-top: 50px;
}
.contact-form {
    margin-bottom: 50px;
}
.contact-form a {
    color: #0c7037;
}
.alert {
  position: relative;
  padding: 1rem 1rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}
.alert-success {
  color: #0f5132;
  background-color: #d1e7dd;
  border-color: #badbcc;
}
.alert-info {
  color: #055160;
  background-color: #cff4fc;
  border-color: #b6effb;
}
.alert-warning {
  color: #664d03;
  background-color: #fff3cd;
  border-color: #ffecb5;
}
.alert-danger {
  color: #842029;
  background-color: #f8d7da;
  border-color: #f5c2c7;
}
.required {
    color: #FF0000;
}
.form-group {
    margin: 0 0 26px;
}
.form-group label {
    padding-left: 0.65rem;
    margin: 0 0 7px 0;
    display: block;
}
.form-control {
  display: block;
  width: 100%;
  padding: 0.75rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #d7d7d7;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control[type=file] {
  overflow: hidden;
}
.form-control[type=file]:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control:focus {
  color: #212529;
  background-color: #fff;
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-control::-webkit-date-and-time-value {
  height: 1.5em;
}
.form-control::-moz-placeholder {
  color: #6c757d;
  opacity: 1;
}
.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}
.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}
.form-control::file-selector-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem 0;
  -webkit-margin-end: 0.75rem;
  margin-inline-end: 0.75rem;
  color: #212529;
  background-color: #e9ecef;
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: 1px;
  border-radius: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control::file-selector-button {
    transition: none;
  }
}
.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
  background-color: #dde0e3;
}
.form-control::-webkit-file-upload-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  -webkit-margin-end: 0.75rem;
  margin-inline-end: 0.75rem;
  color: #212529;
  background-color: #e9ecef;
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: 1px;
  border-radius: 0;
  -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control::-webkit-file-upload-button {
    -webkit-transition: none;
    transition: none;
  }
}
.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
  background-color: #dde0e3;
}
input[type=checkbox] {
    margin: 5px 10px 0 0;
    float: left;
}
.btn {
    cursor: pointer;
}
.buttons {
    margin: 26px 0;
    display: flex;
    gap: 12px;
}
.text-bigger {
    font-size: 18px;
    line-height: 24px;
}
.text-smaller {
    font-size: 14px;
    line-height: 20px;
}
.site-section.content-standard {
    padding-top: 50px;
    padding-bottom: 50px;
}
.site-section.content-standard a {
    color: #0c7037;
    text-decoration: underline;
}
.section-service-description ol li p + p {
    margin-top: 18px;
}
.section-partners {
    position: relative;
}
.section-partners::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.3);
    z-index: 1;
}
.section-partners .wrapper {
    position: relative;
    z-index: 2;
}
.block-partners {
    color: #FFFFFF;
    margin: 30px auto 0 auto;
    max-width: 1000px;
    padding: 0px;
}
.block-partners a {
    color: #FFFFFF;
}
.block-partners .partner-item {
    max-width: 400px;
}
.block-partners .partner-item:hover .partner-logo img {
    transform: scale(1.03);
}
.block-partners .partner-logo {
    background-color: #FFFFFF;
    margin: 0 auto 30px auto;
    text-align: center;
    border: 1px solid #ebebeb;
    padding: 20px;
}
.block-partners .partner-logo img {
    height: 100px;
    max-width: 100%;
    object-fit: contain;
    vertical-align: middle;
    margin: auto;
    transition: transform .3s;
}
.block-partners h3 {
    font-size: 26px;
    line-height: 26px;
    margin: 30px 0 20px 0;
    color: #FFFFFF;
}
.block-partners h3 a {
    border-bottom: 1px solid transparent;
    transition: border-bottom .3s;
}
.block-partners h3 a:hover {
    border-bottom: 1px solid #FFFFFF;
}
.block-partners .partner-item-description p {
    font-weight: normal;
}
.section-efficiency.section-partners {
    padding-top: 50px;
    padding-bottom: 50px;
    text-align: center;
}
button.btn-contact {
    padding-top: 0px;
    border: 0;
}
.btn-contact span {
    padding-left: 20px;
    padding-right: 20px;
}
button.btn-contact {
    padding-left: 0px;
}
button.btn-contact span {
    position: relative;
    margin-top: -2px;
    padding-right: 20px;
}
.page-standard-content {
    padding-top: 50px;
    padding-bottom: 50px;
}
.page-standard-content p {
    margin-bottom: 26px;
}
.question p a {
    color: #0c7037;
}
label.group-label,
.questionnaire-questions .form-group label.form-label {
    padding: 0;
    font-weight: bold;
    margin: 0 0 10px 0;
}
.label-text {
    font-style: italic;
    font-size: 0.85rem;
    max-width: 530px;
}
.questionnaire-questions .form-check-label {
    padding: 0;
}
.form-check {
    display: flex;
    align-items: flex-start;
    margin-bottom: 7px;
}
.form-check-other {
    flex-wrap: wrap;
}
.form-check-other input[type=radio] + label + input[type=text] {
    display: none;
}
.form-check-other input[type=radio]:checked + label + input[type=text] {
    display: block;
}
.form-check input {
    margin: 4px 10px 0 0;
}
.select2-container .select2-selection--single {
    padding: 0.375rem 0.75rem;
    height: auto !important;
}
.is-invalid {
    border-color: #dc3545 !important;
}
.invalid-feedback {
    color: #dc3545;
    font-size: 0.875em;
    margin-top: 0.25rem;
}
.site-section.contact-form {
    min-height: 400px;
}


.select2-container, .select2-dropdown, .select2-search, .select2-results {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    -o-transition: none !important;
    transition: none !important;
}
@media(width <= 768px) {
    h1 {
        font-size: 24px;
        line-height: 28px;
    }
    .hero .content > div {
        font-size: 18px;
        line-height: 24px;
        margin-bottom: 22px;
    }
    .section-service-description h3 {
        font-size: 16px;
        line-height: 20px;
        margin-top: 22px;
    }
    .lang-switch {
        display: block;
    }
    .hero li a {
        background-color: #00000080;
        padding: 0 16px;
    }
    .hero li a span {
        display: inline-block;
    }
    .hero li a::after {
        content: '';
        display: none;
    }
    .contact-details {
        text-align: center;
    }
    .section-contacts .contact {
        background-position: center top;
        padding-left: 0;
        padding-top: 56px;
    }
    .section-contacts .contact + .contact {
        margin-top: 28px;
    }
    .contact-form {
        padding-left: 15px;
        padding-right: 15px;
    }

}
@media(width > 768px) {
    .contact-details {
        display: flex;
        justify-content: center;
        margin: 60px auto;
    }
    .section-contacts .contact:nth-child(1) {
        padding-right: 38px;
        margin-right: 38px;
        border-right: 1px solid #ebebeb;
    }
    .section-title.padded {
        padding-top: 90px;
    }
    .text-bigger {
        font-size: 24px;
        line-height: 36px;
    }
    .section-efficiency.section-partners {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .block-partners {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        margin-top: 60px;
    }
    .block-partners .partner-item {
        flex-basis: 48%;
        flex-shrink: 0;
        flex-grow: 0;
    }
    .page-standard-content {
        padding-top: 90px;
        padding-bottom: 90px;
    }
}
