.site-review__inner {
	gap: 24px;
}
.net-industries__inner {
	gap: 48px;
}
.case-info__review {
	width: 100%;
    min-height: 525px;
    display: flex;    
    flex-direction: column;
}
.case-info__review-rate {
    display: flex;
    align-items: center;
    margin-bottom: 33px;
}
.case-info__review-rate span {
    font-family: PTSans-Bold;
    font-weight: 700;
    font-size: 40px;
    line-height: 1;
    letter-spacing: 0.8px;
    margin-right: 24px;
}
.case-info__author {
	color: #777;
    font-size: 18px;
    line-height: 1.5;
}
.case-info__review-about {
    display: flex;
    gap: 24px;
    margin-bottom: auto;
}
.case-info__review-before {
    width: 100%;
    height: 34px;
    background-image: url(../images/rd-quotes.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    max-width: 46px;
}
.case-info__review-text {
	font-style: italic;
    font-size: 20px;
    line-height: 1.5;
}
.case-info__review-link {
	display: flex;
    align-items: end;
    gap: 16px;
}
.case-info__review-btn {
	max-width: 256px;
}

.net-industries__item {
	padding: 48px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    min-height: 160px;
    text-align: center;
}
.net-industries__item--one {
	background-image:  url(../images/rd-web-industries-6.webp);
}
.net-industries__item--two {
	background-image:  url(../images/rd-web-industries-3.webp);
}
.net-industries__item--three {
	background-image:  url(../images/rd-web-industries-5.webp);
}
.net-industries__item--four {
	background-image:  url(../images/rd-web-industries-1.webp);
}
.net-industries__item--five {
	background-image:  url(../images/rd-net-industries-distribution.webp);
}
.net-industries__item--six {
	background-image:  url(../images/rd-web-industries-7.webp);
}
.net-industries__item--seven {
    background-image:  url(../images/rd-net-industries-business.webp);
}
.net-industries__item--eight {
	background-image:  url(../images/rd-net-industries-education.webp);
}
.net-industries__item--nine {
	background-image:  url(../images/rd-web-industries-9.webp);
}

.app-build__process-block:last-child .app-build__process-text::after {
    width: calc(200% + 48px);
}
.app-build__process-block:last-child .app-build__process-text::after {
    background-image: linear-gradient(90deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent 100%);
    background-color: transparent;
}

.net-stack__block {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 48px;
    border-radius: 32px;
    justify-content: unset;
    background-color: rgba(255,255,255,0.04);
}
.technologies-item {
	width: 174px;
    padding: 36px;
    text-align: center;
    justify-content: unset;
}
.technologies-item--bottom {
	width: 267px;
}
.main-net .net-stack__block .technologies-item:hover,
.main-net .net-stack__block .technologies-item:focus {
	background-color: rgba(0, 0, 0, 0.5);
}
.technologies-name {
    font-size: 18px;
    line-height: 27px;
    white-space: unset;
    transition: unset;
}
.main-net .net-stack__block .technologies-item:hover .technologies-name,
.main-net .net-stack__block .technologies-item:focus .technologies-name {
    color: rgba(255, 255, 255, 0.4);
}


.net-info__img img {
    object-fit: contain;
}
.net-works__example + .net-works__example {
    margin-top: 48px;
}
.net-works__example:nth-child(even) {
    flex-direction: row-reverse;
}
.net-works__example-info,
.net-works__example-image {
    width: 50%;    
}
.net-works__example-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 0 16px 16px 0;
}
.net-works__example-image {
    max-height: 383px;
    border-radius: 0 16px 16px 0;
}
.net-works__example-info {
    border-radius: 16px 0 0 16px;
}
.net-works__example:nth-child(even) .net-works__example-info {
    border-radius: 0 16px 16px 0;
}
.net-works__example:nth-child(even) .net-works__example-image,
.net-works__example:nth-child(even) .net-works__example-image img {
    border-radius: 16px 0 0 16px;
}
.net-works__example-list {
    margin-bottom: 36px;
}
.net-works__example-item::before,
.net-expertise__item-part::before,
.net-about__list-item::before,
.net-details__item-element::before,
.java-slogan__item-element::before,
.java-team__inner-list-element::before {
    top: 4px;
}
.net-works__example-item-main {
    font-family: Roboto-Medium;
    font-weight: 500;
    margin-right: 5px;
}

.net-expertise__item:first-child .net-expertise__item-text {
    max-width: 447px;
}
.net-expertise__item-title {
    font-size:  var(--subtitle-font-size);
    line-height: 1.3;
    font-family: PTSans-Bold;
    font-weight: 700;
    margin-bottom: 24px;
    padding-bottom: 24px;
    position: relative;
}
.net-expertise__item-title::after {
    position: absolute;
    content: '';
    width: 100%;
    height: 2px;
    left: 0;
    bottom: 0;
    background-color: var(--add-text-bg-color);
}
.net-about__list {
    column-count: 2;
    column-gap: 100px;
}
.net-about__list-item:not(:last-child),
.java-team__inner-list-element:not(:last-child) {
    margin-bottom: 24px;
}
.net-about__list-item,
.java-team__inner-list-element {
    -webkit-column-break-inside: avoid;
            page-break-inside: avoid;
                break-inside: avoid;
}

.java-stack {
    margin-bottom: 98px;
}
.java-stack__block  {
    margin-top: 78px;
    min-height: 730px;
    position: relative;
}
.java-stack__item {
    position: absolute;
    padding: 24px;
    width: 235px;
}
.java-stack__item {
    width: 257px;
}
.java-stack__item-element {
    position: relative;
    padding-left: 28px;
}
.java-stack__item-element + .java-stack__item-element {
    margin-top: 12px;
}
.java-stack__item-element::before {
    position: absolute;
    content: '';
    width: 12px;
    height: 12px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    left: 2px;
    top: 5px;
}
.java-stack__item--database .java-stack__item-element::before {
    background-image: url(../images/rd-rhombus-red.svg);
}
.java-stack__item--server .java-stack__item-element::before {
    background-image: url(../images/rd-rhombus-yellow.svg);
}
.java-stack__item--web .java-stack__item-element::before {
    background-image: url(../images/rd-rhombus-green.svg);
}
.java-stack__item--platforms .java-stack__item-element::before {
    background-image: url(../images/rd-rhombus-blue.svg);
}
.java-stack__item--tool .java-stack__item-element::before {
    background-image: url(../images/rd-rhombus-violet.svg);
}
.java-stack__item--database {
    bottom: 90px;
    left: 92px;
    width: 258px;
}
.java-stack__item--server {
    left: 161px;
    top: 74px;
    width: 253px;
}
.java-stack__item--server {
    left: 160px;
    top: 108px;
}
.java-stack__item--web {
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    width: 252px;
}
.java-stack__item--web {
    top: 36px;
}
.java-stack__item--platforms {
    right: 160px;
    top: 73px;
    width: 250px;
}
.java-stack__item--platforms {
    right: 162px;
    top: 108px;
}
.java-stack__item--tool {
    bottom: 90px;
    right: 92px;
    width: 258px;
}
.java-stack__item--java {
    width: 400px;
    height: 357px;
    border-radius: 50%;
    background: radial-gradient(50% 50% at 50% 50%, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    bottom: 51px;
    left: 50%;
    transform: translateX(-50%);
}
.java-stack__item--java {
    height: 380px;
}
.java-stack__item--java::before {
    position: absolute;
    content: '';
    background: url(../images/rd-net-construction.svg) center / contain no-repeat;
    width: 882px;
    height: 481px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}
.net-details__item {
    background-color: var(--secondary-bg-color);
    padding-top: 48px;
    padding-bottom: 48px;
}
.net-details__item + .net-details__item {
    margin-top: 48px;
}
.net-details__item-info {
    margin-right: 48px;
    max-width: 552px;
    width: 100%;
}
.net-details__item-text,
.net-details__item-list {
    margin-bottom: 36px;
}
.net-details__item-img {
    max-width: 600px;
    width: 100%;
    border-radius: 4px;
}
.net-details__item-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    border-radius: 4px;
}

.net-cloud__inner {
    background-color: rgba(255, 255, 255, 0.04);
    padding: 24px;
    border-radius: 16px;
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: minmax(223px, 1fr);
    gap: 12px;
}
.net-cloud__inner::before {
    position: absolute;
    content: '';
    background: url(../images/rd-horisontal-curve.svg) left top/cover no-repeat;
    width: 998px;
    height: 124px;
    left: 100px;
    top: 60px;
    z-index: 1;
}
.net-cloud__item {
    background-color: var(--secondary-bg-color);
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 48px;
    position: relative;
}
.net-cloud__item:first-child {
    border-radius: 16px 0 0 16px;
}
.net-cloud__item:last-child {
    border-radius: 0 16px 16px 0;
}   
.net-cloud__item-img {
    width: 96px;
    height: 96px;
    margin-top: 2px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.net-cloud__item-img img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.java-info__img {
    width: 54px;
}
.java-slogan__item-title {
    position: relative;
    padding-bottom: 24px;
}
.java-slogan__item-title::after {
    position: absolute;
    content: '';
    width: 100%;
    height: 2px;
    left: 0;
    bottom: 0;
    background-color: var(--add-text-bg-color);
}
.java-slogan__item + .java-slogan__item {
    margin-left: 12px;
}
.java-slogan__item {
    max-width: 594px;
    width: 100%;
}
.java-use__inner {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: minmax(254px, 1fr) minmax(223px, 1fr); 
}
.java-use__inner-item {
    position: relative;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.java-use__inner-item:hover,
.java-use__inner-item:focus {
    background-color: var(--main-text-color);
}
.java-use__inner-item:hover .java-use__inner-title, 
.java-use__inner-item:focus .java-use__inner-title {
    color: var(--secondary-text-color);
}
.java-use__inner-item:nth-child(-n+3) .java-use__inner-title {
    min-height: 62px;
    max-width: 220px;
}
.java-use__inner-img {
    opacity: 1;
    transition: opacity .5s ease;
    width: 72px;
    height: 72px;
    margin-bottom: 24px;
}
.java-use__inner-img-hover {
    transition: opacity .5s ease;
    position: absolute;
    opacity: 0;
    top: 48px;
    left: 50%;
    transform: translateX(-50%);
}
.java-use__inner-item:nth-child(n+4) .java-use__inner-img-hover {
    top: 64px;
}
.java-use__inner-item:hover .java-use__inner-img,
.java-use__inner-item:focus .java-use__inner-img {
    opacity: 0;
}
.java-use__inner-item:hover .java-use__inner-img-hover,
.java-use__inner-item:focus .java-use__inner-img-hover {
    opacity: 1;
}

.java-team__inner-list {
    column-gap: 100px;
    column-count: 2;
}

/* -----------------------------MEDIA STYLES-------------------------------------- */

@media (max-width: 1250px) {
    .net-cloud__inner::before {
        display: none;
    }
    .java-stack__block {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 12px;
        min-height: unset;
    }
    .java-stack__item--java,
    .java-stack__item--java::before {
        display: none;
    }
    .java-stack__item {
        width: 258px;
        flex-shrink: 0;
        position: static;
        left: unset;
        top: unset;
        bottom: unset;
        right: unset;
        transform: unset;
    }
    .site-review__inner {
	    flex-direction: column;
	}
    .case-info__review {
    	min-height: unset;
	}
    .case-info__review-about {
	    margin-bottom: 48px;
	}
    .net-stack__block {
	    justify-content: center;
	}
}

@media (max-width: 1050px) {
    .net-about__list,
    .java-team__inner-list {
        column-gap: 55px;
    }
    .net-cloud__item {   
        padding: 24px;
    }
    .java-stack__block {
        margin-top: 48px;
    }
}

@media (max-width: 880px) {
    .net-details__item-inner {
        flex-direction: column-reverse;
    }
    .net-details__item-info {
        margin-right: unset;
        margin-top: 24px;
    }
    .net-details__item-info {
        max-width: unset;
    }
    .net-details__item-img {
        align-self: center;
    }
    .java-use__inner {
        grid-template-columns: repeat(2,1fr);
        grid-template-rows: repeat(3, minmax(254px,1fr) );
    }
    .java-use__inner-item:nth-child(4) .java-use__inner-title {
        min-height: 62px;
        max-width: 220px;
    }
    .java-use__inner-item:nth-child(4) .java-use__inner-img-hover {
        top: 48px;
    }
}

@media (max-width: 785px) {
    .net-works__example,
    .net-works__example:nth-child(even) {
        flex-direction: column-reverse;
    }
    .net-works__example-info {
        width: 100%;
        border-radius: 0 0 16px 16px;
    }
    .net-works__example:nth-child(even) .net-works__example-info {
        border-radius:  0 0 16px 16px;
    }
    .net-cloud__inner {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(2, minmax(223px,1fr));
    }
    .net-cloud__item:nth-child(1) {
        border-radius: 16px 0 0 0;
    }
    .net-cloud__item:nth-child(2) {
        border-radius: 0 16px 0 0;
    }
    .net-cloud__item:nth-child(3) {
        border-radius: 0 0 0 16px;
    }
    .net-cloud__item:nth-child(4) {
        border-radius: 0 0 16px 0;
    }
    .java-slogan__inner {
        flex-direction: column;
    }
    .java-slogan__item {
        max-width: unset;
    }
    .java-slogan__item + .java-slogan__item {
        margin-left: unset;
        margin-top: 12px;
    }
}

@media (max-width: 720px) {
    .net-about__list,
    .java-team__inner-list {
        column-count: 1;
        column-gap: unset;
    }
    .net-expertise__item:first-child .net-expertise__item-text {
        max-width: unset;
    }
    .net-stack__block {
	    padding: 24px;
	}
}

@media (max-width: 640px) {
    .case-info__review-link {
    	align-items: center;
	    flex-direction: column;
	}
    .case-info__review-rate {
	    margin-bottom: 24px;
	}    
    .app-build__process-block:last-child .app-build__process-text::after {
    	height: calc(100% + 63px);
    	width: 2px;
        background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent 100%);
	}
    .app-build__process-block:first-child::after {
	    top: -25px;
	    height: 30px;
	}
    .net-industries__inner {
    	gap: 24px;
	}
    .technologies-item {
        padding: 24px 12px;
    }
    .technologies-item,
    .technologies-item--bottom {
        width: 145px;
    }
    .technologies-img {
	    max-width: 100%;
	}
    .technologies-img img {
        width: 100%;
    	object-fit: contain;
    }
}

@media (max-width: 590px) {
    .net-cloud__inner {
        border-radius: unset;
        padding: 12px;
        margin-left: -10px;
        margin-right: -10px;
    }
    .java-stack__block {
        margin-top: 24px;
    }
    .java-use__inner {
        grid-template-columns: repeat(1,1fr);
        grid-template-rows: repeat(5, minmax(206px,1fr) );
    }
    .java-use__inner-item .java-use__inner-img-hover,
    .java-use__inner-item:nth-child(n+4) .java-use__inner-img-hover {
        top: 24px;
    }
    .java-use__inner-item:nth-child(n+5) .java-use__inner-img-hover {
        top: 40px;
    }
}

@media (max-width: 540px) {
    .case-info__review-about {
        flex-direction: column;
	}  
}

@media (max-width: 480px) {
    .net-details__item {
        padding-top: 12px;
        padding-bottom: 24px;
    }
    .net-cloud__inner {
        grid-template-columns: repeat(1, 1fr);
        grid-template-rows: repeat(4, minmax(199px,1fr));
    }
    .net-cloud__item:nth-child(1) {
        border-radius: 16px 16px 0 0;
    }
    .net-cloud__item:nth-child(2),
    .net-cloud__item:nth-child(3) {
        border-radius: 0;
    }
    .net-cloud__item:nth-child(4) {
        border-radius: 0 0 16px 16px;
    }
    .java-stack__item {
        width: 100%;
    }
    .java-stack {
        margin-bottom: 64px;
    }
}

@media (max-width: 400px) {
    .case-info__review-rate {
        align-items: flex-start;
        flex-direction: column;
        gap: 24px;
    }
}

@media (max-height: 800px) and (orientation: landscape) {
    .java-stack__item--database,
    .java-stack__item--tool  {
        bottom: 95px;
    }
    .java-stack__item--platforms,
    .java-stack__item--server {
        top: 114px;
    }
    .java-stack__item--web {
        top: 41px;
    }
    .java-stack {
        margin-bottom: 24px;
    }
    .case-info__review {
    	min-height: 440px;
	}
}