


/* =========================
   HERO
========================= */

.hero-section{
    position: relative;
    z-index: 1;
}
.hero-grid {
    display: grid;
    grid-template-columns: 50% 50%;
    min-height: 780px;
}

.hero-content {
    background: #f7f7f7;
    padding: 42px 48px 80px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}
.hero-content::after {
    content: '';
    background: url('/local/templates/fadin_new/img/1стр - паутинка.svg');
    position: absolute;
    left: 20%;
    bottom: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    opacity: .05;
    
}

.hero-title {
    font-size: 70px;
    line-height: 1.08;
    font-weight: 300;
    margin: 28px 0;
    z-index: 100;
}

.hero-description {
    font-size: 22px;
    line-height: 1.8;
    color: #777;
    max-width: 360px;
    margin-bottom: 42px;
    z-index: 100;
}

.hero-image {
    background: #f7f7f7;
    max-height: 100vh;
}

.hero-image img {
    height: 100%;
    object-fit: cover;
}

/* =========================
   ABOUT
========================= */

.about-content {
    background: url('/local/templates/fadin_new/img/2.png');
    min-height: 100vh;
    display: flex;
    justify-content: space-between;
    padding: 0 10vw 80px 48px;
    background-position: 100% 100%;
    background-repeat: no-repeat;
    background-size: 100%;
}

.about-left {
    max-width: 720px;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
}

.about-left .section-label {
    color: rgba(255,255,255,0.45);
}

.about-left .section-line {
    background: rgba(255,255,255,0.15);
}

.about-title {
    font-size: 70px;
    line-height: 1.12;
    font-weight: 300;
    color: #fff;
}

.about-brand {
    color: rgba(255,255,255,0.45);
    letter-spacing: 4px;
    font-size: 16px;
}

.about-right {
    max-width: 18%;
    margin-right: 15%;
    padding-top: 120px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.about-text {
    font-size: 18px;
    line-height: 1.9;
    color: rgba(255,255,255,0.7);
}

.about-divider {
    width: 100%;
    height: 1px;
    background: rgba(255,255,255,0.08);
    margin: 56px 0;
}

.about-note {
    color: rgba(255,255,255,0.4);
    letter-spacing: 3px;
    font-size: 11px;
    line-height: 2;
}

/* =========================
   REPUTATION
========================= */

.reputation-grid {
    display: grid;
    grid-template-columns: 50% 50%;
    min-height: 100vh;
    background-image: url('/local/templates/fadin_new/img/3 + дипломы.png');
    background-repeat: no-repeat;
    background-position: 100% 80%;
    background-size: 100%;
}

.reputation-content {
    padding: 90px 48px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 525px;
}

.section-title {
    font-size: 70px;
    line-height: 1.08;
    font-weight: 300;
    margin: 28px 0;
}

.section-description {
    font-size: 20px;
    line-height: 1.8;
    color: #666;
    max-width: 380px;
    margin-bottom: 42px;
}

.reputation-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.reputation-list ul{
    list-style: none;
    margin-top: 10px;
}

.reputation-list li {
    position: relative;
    padding-left: 26px;
    color: #666;
    line-height: 1.9;
    font-size: 18px;
}

.reputation-list li::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 1px;
    background: #999;
    left: 0;
    top: 13px;
}

/* =========================
   ENVIRONMENT
========================= */

.environment-grid {
    display: grid;
    grid-template-columns: 50% 50%;
    min-height: 800px;
}

.environment-content {
    background: #d8d3cf;
    padding: 90px 48px 90px 68px;
    position: relative;
}
.environment-content:after{
    content: '';
    width: 2px;
    background: rgba(188,182,176,1);
    left: 48px;
    top: 0;
    position: absolute;
    height: stretch;
    margin: 90px 0;
}

.environment-title {
    font-size: 70px;
    line-height: 1.14;
    font-weight: 300;
    margin: 28px 0 60px;
}

.environment-description {
    font-size: 22px;
    line-height: 1.9;
    color: #6e6e6e;
    max-width: 320px;
    position: relative;
    z-index: 2;
}

.environment-background-text {
    position: relative;
    left: 1%;
    top: 60px;
    font-size: 242px;
    line-height: .9;
    color: rgba(188,182,176,1);
    font-weight: 300;
    width: max-content;
}

.environment-background-text span {
    display: block;
    font-size: 162px;
}

.environment-image{
    min-height: 100vh;
}

.environment-image img {
    height: 100%;
    object-fit: cover;
}

/* =========================
   SOLUTIONS
========================= */

.solution-card,
.solution-image {
    max-height: 100vh;
}

.solution-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.solution-dark {
    background: #1b1b1b;
    color: #fff;
    background-image: url('/local/templates/fadin_new/img/5.png');
    background-repeat: no-repeat;
    background-position: 100%;
    background-size: 100%;
    min-height: 100vh;
}

.solution-dark .section-label {
    color: rgba(255,255,255,0.45);
}

.solution-light {
    background: #f7f5f2;
}

.solution-content {
    padding: 80px 48px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    min-height: 800px;
}
.solution-content_two {
    padding: 80px 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    min-height: 800px;
}

.solution-title {
    font-size: 70px;
    line-height: 1.14;
    font-weight: 300;
    margin: 28px 0;
    max-width: 820px;
}

.dark-text {
    color: #1d1d1d;
}

.solution-description {
    font-size: 22px;
    line-height: 1.9;
    max-width: 360px;
    margin-bottom: 40px;
}

.solution-dark .solution-description {
    color: rgba(255,255,255,0.7);
}

.light-text {
    color: #666;
}

.solution-row {
    display: grid;
    grid-template-columns: 1.17fr 1fr;
}

@media (max-width: 992px) {

    .solution-row {
        grid-template-columns: 1fr;
    }

    .solution-image {
        height: 500px;
    }

    .solution-content {
        padding: 60px 40px;
    }
}

@media (max-width: 768px) {

    .solution-content {
        padding: 40px 24px;
    }

    .solution-title {
        font-size: 34px;
    }
}
/* =========================
   FACADES
========================= */
.facades-content {
    position: relative;
    min-height: 700px;
    overflow: hidden;
}

.facades-image{
    max-height: 100vh;
}

.facades-image img {
    width: 100%;
    object-fit: cover;
}

.facades-info {
    position: absolute;
    left: 56px;
    top: 50%;
    z-index: 3;
    max-width: 340px;
    transform: translateY(-50%);
}

.facades-info .section-label {
    color: rgba(255,255,255,0.5);
    margin-bottom: 30px;
    display: block;
}

.facades-info .section-line {
    background: rgba(255,255,255,0.2);
}

.facades-title {
    font-size: 100px;
    line-height: 1.08;
    font-weight: 300;
    color: #fff;

}

.facades-description {
    color: rgba(255,255,255,0.7);
    line-height: 1.8;
    margin-bottom: 36px;
    font-size: 22px;
}


/* =========================
   ADAPTIVE
========================= */


@media (max-width: 1440px)
{
    .hero-title{font-size: 56px;}
    .reputation-grid{grid-template-columns: 35% 65%}
    .environment-background-text{font-size: 200px}
    .environment-background-text span{font-size: 140px}
    .solution-content{max-width: 55%;}
    body .contact-title{font-size: 110px;}


}

@media (max-width: 1200px) {
    body .contact-title{font-size: 96px;}
    .about-left{max-width: 60%}
    body .descrip{font-size: 20px;}
    .hero-title,
    .section-title,
    .facades-title {
        font-size: 48px;
    }

    .about-title,
    .solution-title,
    .environment-title {
        font-size: 44px;
    }

    .environment-background-text {
        font-size: 152px;
    }

    .environment-background-text span {
        font-size: 102px;
    }
}

@media (max-width: 992px) {

    .hero-grid,
    .reputation-grid,
    .environment-grid,
    .solutions-grid {
        grid-template-columns: 1fr;
    }

    .about-content {
        flex-direction: column;
    }

    .hero-image,
    .reputation-image,
    .environment-image,
    .solution-image {
        height: 500px;
    }

    .about-content,
    .hero-content,
    .reputation-content,
    .environment-content,
    .solution-content {
        padding: 60px 40px;
    }

    .facades-info {
        left: 40px;
        top: 60px;
    }
}

@media (max-width: 768px)
{

    .container {
        padding: 0 16px;
    }

    .hero-title,
    .section-title,
    .facades-title {
        font-size: 36px;
    }

    .about-title,
    .solution-title,
    .environment-title {
        font-size: 34px;
    }

    .about-content,
    .hero-content,
    .reputation-content,
    .environment-content,
    .solution-content {
        padding: 40px 24px;
    }

    .facades-info {
        left: 24px;
        top: 40px;
    }

    .environment-background-text {
        font-size: 48px;
    }

    .environment-background-text span {
        font-size: 36px;
    }


    /*MAIN*/

    .hero-content::after{display: none;}
    .about-content{background-size: cover;    background-position: 83% 100%;}
    .reputation-grid{background-position: 4% 100%;background-size: cover;}
    .environment-background-text,.solution-image{display: none;}
    .solution-dark{background-position: 34%;background-size: cover;}
    .solution-content_two{min-height: auto;}
    .facades-content{min-height: auto;}

}


/* чисто мобилка */


@media (max-width: 560px)
{
    .container{padding: 0;}
    .about-left,.about-right,.solution-content{max-width: 100%}
    .hero-title{font-size: 28px;}
    .reputation-grid{background-position: 2% 67%;background-size: auto;}
    .environment-content:after{display: none;}
    .environment-image{min-height: auto;}
    .solution-dark{background-position: 25%;min-height: auto;}
    .about-content {background-position: 25% 100%;min-height: unset;}
    .about-right{padding-top: 40px}
    .facades-image img{object-position: left;min-height: 70vh}
    .facades-info{transform: none;}
}