/***FONTS***/
@font-face {
    font-family: 'Inika';
    font-style: normal;
    font-weight: 400;
    src: local(''),
        url('../assets/fonts/inika-v21-latin-regular.woff2') format('woff2'),
        url('../assets/fonts/inika-v21-latin-regular.woff') format('woff');
}

@font-face {
    font-family: 'Inika';
    font-style: normal;
    font-weight: 700;
    src: local(''),
        url('../assets/fonts/inika-v21-latin-700.woff2') format('woff2'),
        url('../assets/fonts/inika-v21-latin-700.woff') format('woff');
}

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 300;
    src: local(''),
        url('../assets/fonts/inter-v12-latin-300.woff2') format('woff2'),
        url('../assets/fonts/inter-v12-latin-300.woff') format('woff');
}

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 400;
    src: local(''),
        url('../assets/fonts/inter-v12-latin-regular.woff2') format('woff2'),
        url('../assets/fonts/inter-v12-latin-regular.woff') format('woff');
}

@font-face {
    font-family: 'Inter';
    font-style: normal;
    font-weight: 700;
    src: local(''),
        url('../assets/fonts/inter-v12-latin-700.woff2') format('woff2'),
        url('../assets/fonts/inter-v12-latin-700.woff') format('woff');
}

:root {
    --background-color: #EDF2EC;
    --nav-links-color: #010201;
    --green-header-color: #499A18;
    --orange-selection-color: #E06733;
    --grey-header-color: #717171;
    --body-text-color: #636060;
    --black-color: #000000;
    --white-color: #FFFFFF;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    font-size: 20px;
    scroll-behavior: smooth;
}

body {
    margin: 0 auto;
    font-family: 'Inter', Verdana, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1rem;
    color: var(--body-text-color);
}

h1 {
    font-weight: 700;
    font-size: 2.25rem;
    line-height: 2.5rem;
    color: var(--grey-header-color);
}

h2 {
    font-family: 'Inika', Verdana, serif;
    font-weight: 400;
    font-size: 2rem;
    line-height: 2.6rem;
    color: var(--green-header-color);
}

h3 {
    font-weight: 700;
    font-size: 1rem;
    line-height: 1rem;
    color: var(--black-color);
}

button {
    cursor: pointer;
}

button:hover,
.service__group.active,
.item__button:hover,
.contacts__call-button:hover {
    background: var(--orange-selection-color);
    color: var(--white-color);
}

li {
    list-style: none;
}

.wrapper {
    max-width: 1222px;
    margin: 0 auto;
}

/***HEADER***/
.header,
.welcome,
.service,
.contacts {
    background-color: var(--background-color);
}

.header__wrapper {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 42px 0;
}

.header__logo {
    color: var(--black-color);
}

.header__logo::before {
    content: url(../assets/icons/logo.svg);
}

.header__logo,
.navigation__link {
    font-family: 'Inika', Verdana, serif;
    font-size: 16px;
}

.navigation {
    display: flex;
}

.navigation__item:not(:last-child) {
    padding-right: 47px;
}

.navigation__link {
    text-decoration: none;
    line-height: 50px;
    color: var(--nav-links-color);
}

.navigation__link:hover {
    font-weight: 700;
    color: var(--orange-selection-color);
}

.header__burger-menu {
    display: none;
    position: relative;
    width: 40px;
    height: 24px;
}

.burger-line {
    display: block;
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: var(--grey-header-color);
}

.burger-line:nth-child(1) {
    top: -2px;
}

.burger-line:nth-child(2) {
    top: 6px;
}

.burger-line:nth-child(3) {
    top: 14px;
}

.burger-line:nth-child(4) {
    top: 22px;
}

/***WELCOME***/
.welcome__wrapper {
    display: flex;
    justify-content: space-between;
    padding: 62px 0 63px;
}

.welcome__image {
    max-width: 448px;
    max-height: 407px;
}

.welcome__content {
    display: flex;
    flex-direction: column;
    max-width: 549px;
    padding: 36px 0 31px;
}

.welcome__word-selection,
.price__word-selection {
    color: var(--green-header-color);
}

.welcome__description {
    margin: 43px 0 48px;
    line-height: 1.75rem;
}

.welcome__button {
    width: 158px;
    height: 44px;
    background: transparent;
    border: 2px solid var(--orange-selection-color);
    border-radius: 10px;
    text-transform: uppercase;
    font-size: 0.8rem;
    line-height: 1rem;
    color: var(--black-color);
}

/***ABOUT***/
.about__wrapper {
    display: flex;
    justify-content: space-between;
    padding: 93px 0 92px;
}

.about__content {
    display: flex;
    flex-direction: column;
    max-width: 605px;
    padding: 68px 0 61px;
}

.about__title {
    margin-bottom: 38px;
    max-width: 463px;
}

.about__word-selection {
    color: var(--orange-selection-color);
}

.about__description {
    line-height: 1.5rem;
}

.about__image {
    max-width: 464px;
    max-height: 479px;
}

/***SERVICE***/
.service__wrapper {
    padding-top: 40px;
    padding-bottom: 120px;
}

.service__filter {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 80px;
}

.service__title {
    margin-right: 142px;
    max-width: 306px;
}

.service__groups {
    display: flex;
    flex-wrap: wrap;
    padding: 29px 0 22px;
}

.service__group:not(:last-child) {
    margin-right: 38px;
}

.service__group {
    width: 161px;
    height: 50px;
    background: transparent;
    border: 1px solid var(--orange-selection-color);
    border-radius: 5px;
    font-family: 'Inika', Verdana, serif;
    font-size: 1rem;
    color: var(--orange-selection-color);
}

.service__variants {
    display: grid;
    grid-template-rows: 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 55px 116px;
}

.service__variant {
    transition: 2s;
}

.service__variant.blured {
    filter: blur(4px);
    transition: 2s;
}

.service__image {
    max-width: 330px;
    height: 350px;
    border-radius: 20px 20px 0 0;
    background: transparent no-repeat center center;
    background-size: cover;
}

.gardens-1 {
    background-image: url(../assets/images/service-1.png);
}

.planting-1 {
    background-image: url(../assets/images/service-2.png);
}

.lawn-1 {
    background-image: url(../assets/images/service-3.png);
}

.planting-2 {
    background-image: url(../assets/images/service-4.png);
}

.gardens-2 {
    background-image: url(../assets/images/service-5.png);
}

.planting-3 {
    background-image: url(../assets/images/service-6.png);
}

.service__content {
    border: 1px solid #E3E1D5;
    border-radius: 0 0 20px 20px;
    text-align: center;
}

.service__subtitle {
    margin: 9px 0 14px;
    color: var(--orange-selection-color);
}

.service__description {
    margin-bottom: 36px;
    font-size: 0.8rem;
    color: var(--grey-header-color);
}

/***PRICE***/
.price__wrapper {
    max-height: 557px;
    padding: 38px 0 127px;
}

.price__title {
    margin-bottom: 60px;
    font-family: 'Inter', Verdana, sans-serif;
    font-weight: 700;
    line-height: 2.4rem;
    color: var(--black-color);
}

.price__species {
    display: flex;
    justify-content: space-between;
}

.price__items {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 332px;
    padding: 33px 40px;
    border: 1px solid #E3E1D5;
    border-radius: 20px;
}

.price__item {
    padding: 15px 40px;
    position: relative;
    background-color: var(--background-color);
    border-radius: 20px;
}

.price__item:not(:last-child) {
    margin-bottom: 33px;
}

.price__item:after {
    content: '';
    width: 16px;
    height: 16px;
    position: absolute;
    top: 17px;
    right: 40px;
    background: #D9D9D9 url(../assets/icons/arrow.svg) no-repeat center;
    border-radius: 50%;
}

.price__item:hover {
    cursor: pointer;
}

.price__item:hover::after,
.price__item.active::after {
    background-color: #AEA1A1;
    background-image: url(../assets/icons/white-arrow.svg);
    transform: rotate(180deg);
}

.price__item.active {
    background-color: #D6E7D2;
}

.item__title {
    font-weight: 700;
    color: var(--black-color);
}

.price__item .item__content {
    display: none;
}

.price__item.active .item__content {
    display: block;
}

.item__description {
    margin-top: 12px;
    padding-top: 6px;
    border-top: 0.5px solid #AEA1A1;
    font-weight: 300;
    font-size: 10px;
    line-height: 10px;
    color: var(--grey-header-color);
}

.item__price {
    margin-top: 6px;
    margin-bottom: 12px;
    font-size: 12px;
    color: var(--black-color);
}

.item__button {
    display: block;
    width: 86px;
    height: 25px;
    padding: 3px 0 3px;
    border-style: none;
    border-radius: 10px;
    background-color: var(--white-color);
    text-decoration: none;
    text-align: center;
    font-weight: 700;
    font-size: 14px;
    line-height: 20px;
    color: var(--grey-header-color);
}

.price-selection {
    font-weight: 700;
    font-size: 16px;
    color: var(--orange-selection-color);
}

.price__extra {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    margin-top: -108px;
    position: relative;
}

.price__subtitle {
    width: 452px;
    text-align: right;
    font-size: 2rem;
    line-height: 2.5rem;
}

.price__contact {
    width: 162px;
    height: 50px;
    margin: 40px 0 38px;
    background: transparent;
    border: 1px solid var(--orange-selection-color);
    border-radius: 5px;
    font-weight: 700;
    font-size: 1rem;
    line-height: 2.5rem;
    color: var(--orange-selection-color);
}

.price__image {
    max-width: 152px;
    max-height: 175px;
    position: absolute;
    top: 230px;
}

/***CONTACTS***/
.contacts__wrapper {
    position: relative;
    max-height: 549px;
    padding: 60px 0 350px;
}

.contacts__title {
    margin-bottom: 37px;
    text-align: center;
    font-weight: 700;
}

.contacts__content {
    display: flex;
    justify-content: flex-end;
}

.contacts__image {
    position: absolute;
    max-width: 400px;
    left: 0;
    bottom: 0;
}

.contacts__location {
    display: flex;
    flex-direction: column;
    width: 450px;
}

.contacts__city {
    padding: 5px 35px 5px 20px;
}

.contacts__city:after {
    content: '';
    width: 16px;
    height: 16px;
    position: absolute;
    top: 17px;
    right: 35px;
    background: #AEA1A1 url(../assets/icons/white-arrow.svg) no-repeat center;
    border-radius: 50%;
}

.contacts__city:hover,
.contacts__location.active .contacts__city {
    cursor: pointer;
    background-color: #C1E698;
}

.contacts__city:hover::after,
.contacts__location.active .contacts__city::after {
    background-color: #8BA07E;
    transform: rotate(180deg);
}

.contacts__locacontacts__citytion.active {
    filter: none;
}

.contacts__city {
    background-color: #D6E7D2;
    filter: drop-shadow(0 4px 3px var(--grey-header-color));
    line-height: 2rem;
    letter-spacing: 1px;
    color: var(--grey-header-color);
}

.contacts__city-list {
    display: none;
}

.contacts__location.active .contacts__city-list {
    display: flex;
    flex-direction: column;
    padding: 27px 35px 31px;
    background-color: #DCE9D9;
}

.city-list__item {
    cursor: pointer;
    border-bottom: 1px solid #D9D9D9;
    font-size: 16px;
    line-height: 40px;
    letter-spacing: 0.05em;
    color: var(--green-header-color);
}

.city-list__item:hover {
    border-bottom: 1px solid var(--grey-header-color);
    color: var(--grey-header-color);
}

.contacts__location.active .contacts__city-content.active {
    display: none;
}

.contacts__location .contacts__city-content.active {
    display: flex;
    flex-direction: column;
    width: 448px;
    height: 214px;
    margin-top: 61px;
    padding: 17px 79px 31px 33px;
    background: var(--background-color);
    border: 1px solid var(--black-color);
    border-radius: 20px;
}

.contacts__city-info {
    display: flex;
    column-gap: 15px;
}

.city-info__title {
    font-size: 16px;
    line-height: 40px;
    letter-spacing: 0.05em;
    color: var(--black-color);
}

.city-info__value {
    font-size: 16px;
    line-height: 40px;
    letter-spacing: 0.05em;
    color: var(--grey-header-color);
}

.contacts__call-button {
    width: 122px;
    height: 26px;
    margin: 0 auto;
    margin-top: 24px;
    padding: 7px 29px;
    border: 1px solid var(--orange-selection-color);
    border-radius: 5px;
    text-decoration: none;
    font-family: 'Inika';
    font-weight: 700;
    font-size: 10px;
    line-height: 13px;
    text-align: center;
    color: var(--grey-header-color);
}

/***FOOTER***/
.footer__wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 40px 0;
}

.footer__info {
    display: flex;
}

.footer__item:not(:last-child) {
    margin-right: 20px;
}

.footer__copyright,
.footer__year,
.footer__github,
.footer__school {
    line-height: 2.5rem;
    color: var(--black-color);
}

.header__link,
.footer__github,
.footer__school {
    text-decoration: none;
}

.footer__socials {
    display: flex;
    align-items: center;
}

.footer__social-icon {
    max-width: 32px;
    max-height: 32px;
    box-sizing: content-box;
    background: no-repeat center;
}

.footer__social-icon:not(:last-child) {
    margin-right: 28px;
}

.footer__social-icon-image {
    display: block;
}

.header__link:hover,
.footer__github:hover,
.footer__school:hover {
    transform: scale(1.05, 1.05);
}

.footer__social-icon:hover {
    transform: scale(1.1, 1.1);
}