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

h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
li {
    margin: 0;
    padding: 0;
}

ul,
ol {
    margin: 0;
    padding-left: 0;
}

a {
    color: rgba(255, 255, 255, 0.9);
    text-decoration: none;
}

button {
    cursor: pointer;
}

img {
    display: block;
    max-width: 100%;
    height: auto;
    width: 100%;
}

body {
    font-family: 'Montserrat', sans-serif;
    background-color: black;
    color: rgba(255, 255, 255, 0.9);
}

.list {
    list-style: none;
}

.link {
    text-decoration: none;
    display: block;
    height: inherit;
}

.container {
    width: 100%;
    margin: 0 auto;
    padding: 0 15px;
    position: relative;
}

/* @media screen and (min-width: 480px) {
    .container {
        width: 448px;
    }
}

@media screen and (min-width: 768px) {
    .container {
        width: 720px;
    }
} */

@media screen and (min-width: 1200px) {
    .container {
        width: 1200px;
    }
}

/*       HEADER          */
.nav {
    position: absolute;
    top: 50px;
    left: 40%;
    z-index: 1;
    transform: translateX(-35%);

}


.nav__list {
    display: flex;
}

.nav__item {
    width: 100px;
    margin-right: 40px;

}

.nav__item:last-child {
    margin-left: 20px;
}



.nav__link {

    font-weight: 400;
    font-size: 16px;
    line-height: 2.18;
    transition: color 250ms cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
}

.nav__link:hover,
.nav__link:focus {

    opacity: 1;
    font-weight: 600;


}

.title {
    font-weight: 300;
    font-size: 34px;
    line-height: 35px;
    margin-bottom: 22px;
    color: #FFFFFF;
}

.menu-open-btn {
    display: none;
}


/*       HERO          */
.hero {
    background-image: url(./img/hero/bgimg.png);
    background-size: contain;
    background-repeat: no-repeat;
    padding-bottom: 150px;
    position: relative;
}


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

.hero-content__title {
    padding-top: 100px;
    font-weight: 600;
    font-size: 152px;
    line-height: 1.48;
    text-transform: uppercase;
    margin-bottom: 30px;

}

.hero-content__title span img {
    display: inline;
    width: 90px;
    height: 109px;
}


.hero-content__bottom-text {
    font-weight: 500;
    font-size: 32px;
    line-height: 1.09;
    margin-bottom: 30px;
}



.soc__list {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: -14px;
}

.socials__item {
    margin-right: 14px;
    height: 44px;

}

.soc__list .socials__text {
    margin-right: 14px;

}

.link-text {
    font-weight: 700;
    font-size: 19px;
    line-height: 0.89;
    text-transform: uppercase;
    color: #FFFFFF;
    padding-top: 14px;
}



.socials__link:hover {
    border-radius: 25%;
    color: black;
    background-color: white;
}

.socials__icon {

    fill: currentColor;
}

/* ABOUTE-US*/
.about {
    padding-top: 140px;
    padding-bottom: 140px;
    text-align: center;
    margin: 0 auto;
    background-image: url(./img/aboute_us/bgimg.png);
    background-size: 100% 110%;
    background-repeat: no-repeat;
}

.about-content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.about-content__bottom-text {
    font-weight: 400;
    font-size: 21px;
    line-height: 1.23;
    width: 913px;
    text-align: left;
    margin-bottom: 81px;
}

.card-list__item {
    display: flex;
    align-items: center;
    margin-bottom: 25px;
}

.card-list__item:nth-child(2) {
    display: flex;
    flex-direction: row-reverse;
}

.card-list__item img {
    width: 250px;
    height: 250px;
}

.left {
    text-align: left;
    max-width: 740px;
    margin-left: 20px;
}

.left .soc__list {
    justify-content: left;
}

.right .soc__list {
    justify-content: right;
}

.right {
    text-align: right;
    max-width: 740px;
    margin-right: 20px;
}

.card-list__item-title {
    font-weight: 700;
    font-size: 54px;
    line-height: 0.64;
    color: #FFFFFF;
    margin-bottom: 12px;
}

.card-list__item-text {
    font-weight: 400;
    font-size: 24px;
    line-height: 1.3;
    color: #FFFFFF;
    margin-bottom: 12px;
}

.card-list__item p {
    font-weight: 400;
    font-size: 20px;
    line-height: 1.2;
    margin-bottom: 12px;
}


/*SERVICES*/
.services {
    background-image: url(./img/services/bgimg.png);
    background-size: 100% 90%;
    background-repeat: no-repeat;
    padding-top: 140px;
    padding-bottom: 140px;
    text-align: center;
}

.services__title {
    margin-bottom: 95px;
}

.services-bottom__title {
    font-weight: 700;
    font-size: 34px;
    line-height: 1.02;
    color: #FFFFFF;
    margin-bottom: 40px;

}

#container {
    margin: 0 auto;
    width: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
    margin-bottom: 77px;
}

#container input {
    height: 2.5em;
    display: none;
    visibility: hidden;
}

#container label {
    cursor: pointer;
    display: block;
    float: left;
    font-weight: 400;
    font-size: 20px;
    line-height: 1.2;
    width: fit-content;
    margin: 7px auto;
    text-align: center;
}

#container input:hover+label {
    font-weight: 600;
    color: #fff;
}

#container input:checked+label {
    font-weight: 600;
    color: #fff;
    position: relative;
    z-index: 6;
    -webkit-transition: .1s;
    -moz-transition: .1s;
    -o-transition: .1s;
    -ms-transition: .1s;
}

#content,
#content1 {
    border-radius: 10px;
    position: absolute;
    width: 320px;
    height: 190px;
    z-index: 5;
}

#content {
    left: 0;

}

#content1 {
    right: 0;
}

#content div,
#content1 div {
    opacity: 0;
    width: 100%;
    height: auto;
    position: absolute;
    z-index: -100;
    transition: all linear 0.1s;

}

.content p.column-right {
    margin-left: 3%;
}

.content img {
    border-radius: 10px;
    width: 100%;
    height: 190px;
    background-color: red;
    display: block;
    margin: 0 auto 1em auto;
}



#container input#tab-1:checked~#content #content-1,
#container input#tab-2:checked~#content #content-2,
#container input#tab-3:checked~#content #content-3,
#container input#tab-4:checked~#content #content-4,
#container input#tab-5:checked~#content #content-5,
#container input#tab-1:checked~#content1 #content-6,
#container input#tab-2:checked~#content1 #content-7,
#container input#tab-3:checked~#content1 #content-8,
#container input#tab-4:checked~#content1 #content-9,
#container input#tab-5:checked~#content1 #content-10 {
    opacity: 1;
    z-index: 100;
}

input.visible {
    visibility: visible !important;
}

.benefits-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-around;
}

.benefits-list__item {
    width: 450px;
    display: flex;
    flex-direction: column;
    text-align: left;
    margin-bottom: 25px;
}

.benefits-item__title {
    font-weight: 500;
    font-size: 25px;
    line-height: 1.4;
    color: #FFFFFF;
    margin-bottom: 14px;

}

.benefits-text {
    font-weight: 300;
    font-size: 17px;
    line-height: 1;
}



.services .socials__icon {
    margin-right: 15px;
    fill: #652C8B;
}

/* PORTFOLIO*/
.portfolio {
    padding-top: 180px;
    padding-bottom: 140px;
    text-align: center;
    background-image: url(./img/portfolio/bgimg.png);
    background-size: 100% 110%;
    background-repeat: no-repeat;
}

.portfolio__title {
    margin-bottom: 90px;
}

.portfolio__list {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.portfolio__item {
    width: 100%;
    width: calc((100% - 60px) / 3);
}

.portfolio .item__img {
    position: relative;
    overflow: hidden;
}

.portfolio .item__hover-text {
    position: absolute;
    top: 0;
    color: #fff;
    background-color: #141414c9;
    line-height: 1.5;
    padding: 40px;
    height: 100%;
    transform: translateY(-100%);
    transition: transform 300ms linear;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}

.portfolio .portfolio__item:hover .item__hover-text,
.portfolio .portfolio__item:focus .item__hover-text {
    transform: translateY(0);
}

/*BACKSTAGE*/
.backstage {
    padding-top: 180px;
    padding-bottom: 140px;
    text-align: center;
    background-image: url(./img/backstage/bgimg.png);
    background-size: 100% 110%;
    background-repeat: no-repeat;
}


.backstage__title {
    margin-bottom: 90px;
}

.backstage__list {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.backstage__item {
    width: 100%;
    width: calc((100% - 60px) / 3);

}

.backstage .item__img {
    position: relative;
    overflow: hidden;

}

.backstage .item__hover-text {
    position: absolute;
    top: 0;
    color: #fff;
    background-color: #141414c9;
    line-height: 1.5;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    transform: translateY(-100%);
    transition: transform 300ms linear;
    z-index: 1;
}

.backstage .item__img:hover .item__hover-text,
.backstage .item__img:focus .item__hover-text {
    transform: translateY(0);
}

/*  FOOTER  */
.contacts-wrap {
    text-align: center;
    padding-top: 140px;
    padding-bottom: 140px;
}

.container-contacts {
    display: flex;
}

.address {
    text-align: left;
    width: 600px;
    margin-right: 10px;
}

.address-title {
    font-weight: 600;
    font-size: 28px;
    line-height: 1;
    letter-spacing: 0.025em;
    text-transform: uppercase;
    color: #FFFFFF;
    margin-bottom: 48px;
}

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



.socials__item-title {
    font-weight: 500;
    font-size: 20px;
    line-height: 0.85;
    letter-spacing: 0.025em;
    text-transform: uppercase;
    color: #FFFFFF;
    margin-bottom: 22px;
}

.contacts-list .socials__link,
.contacts-list .contacts-item-link {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.06;
    letter-spacing: 0.025em;
    display: flex;
    align-items: center;
    flex-direction: row;
}

.contacts-list .socials__item {
    width: unset;
    height: unset;
}

.contacts-list .socials__item:hover {
    border-radius: unset;
    color: unset;
    background-color: unset;
}




.contacts-item {
    margin-bottom: 12px;
}

.contacts-item .socials__icon {
    margin-right: 10px;
}

.online {
    text-align: left;
}

.online-title {
    font-weight: 600;
    font-size: 28px;
    line-height: 1;
    letter-spacing: 0.025em;
    text-transform: uppercase;
    color: #FFFFFF;
    margin-bottom: 5px;
}

.online-text {
    font-weight: 400;
    font-size: 20px;
    line-height: 0.85;
    margin-bottom: 25px;
}



.input {
    width: 510px;
    height: 60px;
    margin-bottom: 15px;
    border: 4px solid #D9D9D9;
    border-radius: 10px;
    background-color: transparent;
    color: #FFFFFF;
    padding-left: 10px;
}


.textarea {
    height: 140px;

}

.textarea::placeholder {
    padding-top: 50px;
}

textarea {
    resize: none;
}


.online-btn {
    width: 220px;
    height: 50px;
    background-color: transparent;
    border: 4px solid #D9D9D9;
    border-radius: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.06;
    letter-spacing: 0.025em;
    color: #FFFFFF;
}


.create-by {
    height: 20px;
    color: #fff;
    font-size: 8px;
    text-decoration: none;
    width: 100%;
    text-align: center;
}