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

.companyR1Img {
    width: 100%;
    height: 100%;
    position: absolute;
}

.companyR1Img::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(1, 68, 33, 0.3);
}

.companyFirstRow {
    height: 65vh;
    position: relative;
}

.companyR1Text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: rgba(255, 255, 255, 0.9);
    padding: 10px 0;
    width: 78%;
    text-align: center;
}

.companyR1Text p {
    margin: 0;
    font-family: 'Playfair Display';
    color: rgb(1, 68, 33);
    font-weight: 600;
    font-size: 2.5em;
    line-height: 100%;
}

.companySecondRow {
    display: flex;
    flex-direction: row;
    padding: 60px 11%;
    justify-content: space-between;
}

.companyLeftImg img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border-radius: 20px;
}

.companyLeftImg {
    width: 700px;
    height: 500px;
    filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.6));
}

.companyRightText :is(h3, p) {
    margin: 0;
    font-family: 'Roboto';
    color: rgb(1, 68, 33);
    font-weight: 400;
    font-size: 1em;
}

.companyRightText h3 {
    font-weight: 600;
    margin-bottom: 20px;
    width: 60%;
}

.companyRightText {
    width: 50%;
    margin-left: 50px;
}

.companyThirdRow {
    background-color: rgb(255, 251, 243);
    padding: 0 11%;
    padding-top: 80px;
    padding-bottom: 80px;
    text-align: right;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.companyThirdRow h2 {
    margin: 0;
    color: rgb(1, 68, 33);
    font-family: 'Roboto';
    font-weight: 600;
    font-size: 2.5em;
    margin-bottom: 25px;
}

.companyThirdRow p {
    margin: 0;
    color: rgb(1, 68, 33);
    font-family: 'Roboto';
    font-weight: 500;
    font-size: 0.9em;
    width: 480px;
    margin-bottom: 50px;
}

.propertiesTypeRowContent {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.propertiesTypeRowBlock {
    width: 24%;
    position: relative;
    height: 425px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 20px 1%;
    box-sizing: border-box;
    filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.6));
}

.propertiesTypeRowBlock::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    content: '';
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 65%, rgba(0, 0, 0, 0.3) 75%, rgba(0, 0, 0, 0.5) 85%, rgba(0, 0, 0, 1) 100%);
    border-radius: 15px;
}

.propertiesTypeRowImg img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border-radius: 15px;
    object-position: 0 0;
}

.propertiesTypeRowImg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    border-radius: 15px;
}

.propertiesTypeRowBlock h3 {
    margin: 0;
    color: rgb(255, 251, 243);
    text-align: center;
    font-family: 'Roboto';
    font-weight: 600;
    font-size: 1.6em;
    line-height: 100%;
    position: relative;
    z-index: 2;
    width: 90%;
    margin: 0 auto;
}

@media only screen and (max-width: 1200px) {
    .companyR1Text {
        width: 89%;
    }
    .companySecondRow {
        padding: 60px 5.5%;
    }
    .companyR1Text p {
        font-size: 2em;
    }
    .companyLeftImg {
        width: 450px;
        height: 360px;
    }
    .companyRightText :is(h3, p) {
        font-size: 0.9em;
    }
    .companyThirdRow {
        padding: 0 5.6%;
        padding-top: 80px;
        padding-bottom: 30px;
    }
    .propertiesTypeRowBlock {
        width: 40%;
        margin-bottom: 50px;
    }
    .propertiesTypeRowContent {
        flex-wrap: wrap;
    }
}

@media only screen and (max-width: 1000px) {
    .companyR1Text {
        width: 95%;
    }
    .companySecondRow {
        flex-direction: column;
        padding: 60px 3%;
    }
    .companyLeftImg {
        width: 100%;
        height: 400px;
        margin-bottom: 50px;
    }
    .companyRightText {
        width: 100%;
        margin-left: 0;
    }
    .companyRightText h3 {
        width: 100%;
    }
    .companyRightText :is(h3, p) {
        text-align: center;
    }
    .companyThirdRow {
        padding: 0 3%;
        padding-top: 80px;
        padding-bottom: 30px;
    }
    .propertiesTypeRowBlock {
        width: 45%;
    }
}

@media only screen and (max-width: 800px) {
    .propertiesTypeRowBlock {
        width: 47%;
    }
}

@media only screen and (max-width: 600px) {
    .companyR1Text {
        width: 82%;
    }
    .companySecondRow {
        padding: 60px 9%;
    }
    .companyThirdRow h2 {
        font-size: 2.2em;
    }
    .companyThirdRow {
        padding: 0 9%;
        padding-top: 80px;
        padding-bottom: 30px;
        text-align: center;
    }
    .propertiesTypeRowBlock {
        width: 100%;
    }
    .companyThirdRow p {
        width: 100%;
    }
    .companyThirdRow h2 {
        margin: 0 auto;
        margin-bottom: 25px;
    }
    .propertiesTypeRowBlock:nth-of-type(2) img {
        object-position: 0% 53%;
    }
}

@media only screen and  (max-width: 500px) {
    .companyR1Text {
        width: 95%;
    }
    .companySecondRow {
        padding: 60px 2.5%;
    }
    .companyThirdRow {
        padding: 0 2.5%;
        padding-top: 80px;
        padding-bottom: 30px;
    }
    .companyThirdRow h2 {
        font-size: 1.7em;
    }
    .companyR1Text p {
        font-size: 1.8em;
    }
}