.visualization-promo-block {
    padding: 80px 0 0;
}

.visualization-promo-block-content {
    align-items: center;
    gap: 60px;
    max-width: unset;
}

.visualization-promo-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 60px;
}

.visualization-promo-title-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

.visualization-promo-title {
    text-align: center;
    font-size: 60px;
    font-style: normal;
    font-weight: 500;
    line-height: 110%; /* 66px */
    background: linear-gradient(93deg, #FFF 2.06%, #999 72.53%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.visualization-promo-text {
    color: #BABABA;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 100%; /* 18px */
}

.visualization-promo-btn-group {
    display: inline-flex;
    align-items: center;
    gap: 30px;
}

.visualization-promo-btn-group a {
    height: 65px;
}

.visualization-promo-image {
    width: 100%;
    height: 830px;
    align-self: stretch;
    background-image: url("image/visualization/visualization-promo-image.webp");
}

.visualization-promo {
    position: relative;
    width: 100%;
    height: 830px;
    overflow: hidden;
}

.visualization-promo-video {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
    user-select: none;
}

.visualization-about-block {
    padding: 120px 30px 0;
}

.visualization-about-block-content {
    align-items: center;
    gap: 60px;
}

.visualization-about-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
    align-self: stretch;
}

.visualization-about-content i {
    height: 721px;
    align-self: stretch;
    background-image: url("image/visualization/visualization-about-img.webp");
}

.visualization-about-content p {
    align-self: stretch;
    color: #858585;
    text-align: justify;
    font-size: 22px;
    font-style: normal;
    font-weight: 400;
    line-height: 133%; /* 29.26px */
}

.visualization-offer-block {
    padding: 120px 30px 0;
}

.visualization-offer-block-content {
    gap: 60px;
    align-items: center;
}

.visualization-offer-block-content .title-block {
    width: 965px;
}

.visualization-offer-list {
    display: flex;
    align-items: flex-start;
    align-content: flex-start;
    gap: 20px;
    align-self: stretch;
    flex-wrap: wrap;
}

.visualization-offer-list-item {
    display: flex;
    width: calc((100% - 20px) / 2);
    height: 357px;
    padding: 30px;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    background: #292524;
}

.visualization-offer-list-item span {
    width: 80px;
    height: 80px;
    flex-shrink: 0;
    aspect-ratio: 1/1;
    border-radius: 10px;
    background: #332F2E;
    display: flex;
    align-items: center;
    justify-content: center;
}

.visualization-offer-list-item i {
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    aspect-ratio: 1/1;
}

.visualization-offer-list-item:nth-child(1) i {
    width: 45px;
    height: 45px;
    background-image: url("icon/visualization/visualization-offer-list-item-icon-1.svg");
}

.visualization-offer-list-item:nth-child(2) i {
    background-image: url("icon/visualization/visualization-offer-list-item-icon-2.svg");
}

.visualization-offer-list-item:nth-child(3) i {
    background-image: url("icon/visualization/visualization-offer-list-item-icon-3.svg");
}

.visualization-offer-list-item:nth-child(4) i {
    background-image: url("icon/visualization/visualization-offer-list-item-icon-4.svg");
}

.visualization-offer-list-item-text-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    align-self: stretch;
}

.visualization-offer-list-item-title {
    align-self: stretch;
    color: #FFF;
    font-size: 27px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 27px */
}

.visualization-offer-list-item-text {
    align-self: stretch;
    color: #858585;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%; /* 21.6px */
}

.visualization-offer-list-item:nth-child(3) .visualization-offer-list-item-text-container {
    width: 579px;
}

.visualization-offer-swiper-container {
    width: 100%;
    position: relative;
}

.visualization-offer-swiper-img-container {
    width: 100%;
    aspect-ratio: 1380/809;
    overflow: hidden;
    position: relative;
}

.visualization-offer-swiper-img-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.lf-swiper-button {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    background-color: #2A2625;
    border-radius: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lf-swiper-button i {
    width: 13px;
    height: 19px;
    flex-shrink: 0;
    background-image: url("icon/home-services-info-swiper-btn-nav-icon.svg");
}

.lf-swiper-button.swiper-button-next {
    right: -74px;
}

.lf-swiper-button.swiper-button-next i {
    transform: rotate(180deg);
}

.lf-swiper-button.swiper-button-prev {
    left: -74px;
}

.lf-swiper-button.full-screen {
    position: absolute;
    z-index: 10;
    top: 20px;
    right: 20px;
}

.lf-swiper-button.full-screen i {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    background-image: url("icon/home-services-info-swiper-btn-icon.svg");
}

a.visualization-offer-list-item {
    display: flex;
    flex-direction: row;
    height: 357px;
    padding: 30px;
    align-items: flex-end;
    justify-content: space-between;
    background: #17A6BC;
}

a.visualization-offer-list-item:hover {
    background: #18C0DA;
}

a.visualization-offer-list-item p {
    color: #FFF;
    font-size: 27px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 27px */
    text-transform: uppercase;
}

a.visualization-offer-list-item i {
    align-self: flex-start;
    width: 33px !important;
    height: 33px !important;
    background-image: url("icon/home/home-services-info-content-video-list-item-icon.svg") !important;
}

a.visualization-offer-list-item:nth-child(2) {
    display: flex;
    height: 357px;
    padding: 29px;
    align-items: flex-end;
    justify-content: space-between;
    background: transparent;
    border: 1px solid #999;
}

a.visualization-offer-list-item:nth-child(2):hover {
    background: #2A2625;
}

a.visualization-offer-list-item:nth-child(2) p {
    color: #D9D9D9;
}

.visualization-process-block i {
    height: 911px;
}

.visualization-image-block {
    aspect-ratio: 1920/905;
    background-position: center;
    background-size: cover;
    background-image: url("image/visualization/visualization-image.webp");
}

.visualization-video-block {
    padding: 120px 30px 0;
}

.visualization-video-block-content {
    gap: 40px;
    align-items: center;
}

.visualization-video-content {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    align-self: stretch;
    gap: 30px;
}

.visualization-video-row {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
}

.visualization-video-row i {
    width: 650px;
    height: 274px;
    background-image: url("image/visualization/visualization-video-row-img.webp");
}

.visualization-video-row p {
    width: 690px;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%; /* 26px */
    background: linear-gradient(200deg, #FFF 13.4%, #999 83.18%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.visualization-video-list {
    display: flex;
    align-items: flex-start;
    align-content: flex-start;
    gap: 20px;
    flex-wrap: wrap;
}

.visualization-video-list-item {
    width: calc((100% - 20px) / 2);
    height: 357px;
    position: relative;
    background-position: center;
    background-size: cover;
}

.visualization-video-list-item:nth-child(1) {
    background-image: url("image/visualization/visualization-video-list-item-image-1.webp");
}

.visualization-video-list-item:nth-child(2) {
    background-image: url("image/visualization/visualization-video-list-item-image-2.webp");
}

.visualization-video-list-item:nth-child(3) {
    background-image: url("image/visualization/visualization-video-list-item-image-3.webp");
}

.visualization-video-list-item:nth-child(4) {
    background-image: url("image/visualization/visualization-video-list-item-image-4.webp");
}

.visualization-video-list-item-text-container {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 16px;
    height: 76px;
    padding: 12px 20px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    display: flex;
    background: rgba(61, 188, 207, 0.19);
    backdrop-filter: blur(27px);
}

.visualization-video-list-item-text-container p {
    width: 588px;
    flex-shrink: 0;
    color: #EBEBEB;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%; /* 23.4px */
    text-transform: uppercase;
}

.visualization-swiper-block {
    padding: 120px 30px 0;
}

.visualization-swiper-block-content {
    gap: 60px;
    align-items: center;
}

.visualization-swiper-content {
    width: 100%;
    position: relative;
}

.visualization-swiper-img-container {
    width: 100%;
    aspect-ratio: 1380/804;
    overflow: hidden;
    position: relative;
}

.visualization-swiper-img-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.visualization-render-block {
    padding: 120px 30px 0;
}

.visualization-render-block-content {
    gap: 60px;
    align-items: center;
}

.visualization-render-block .title-block {
    width: 954px;
}

.visualization-render-list {
    display: flex;
    align-items: stretch;
    gap: 20px;
    align-self: stretch;
}

.visualization-render-list i {
    width: calc((100% - 20px) / 2);
    height: 776px;
}

.visualization-render-list i:nth-child(1) {
    background-image: url("image/visualization/visualization-render-list-image-1.webp");
}

.visualization-render-list i:nth-child(2) {
    background-image: url("image/visualization/visualization-render-list-image-2.webp");
}

.visualization-ideas-block {
    padding: 140px 30px 0;
}

.visualization-ideas-block-content {
    gap: 60px;
}

.visualization-ideas-row {
    display: flex;
    align-self: stretch;
    align-items: flex-start;
    justify-content: space-between;
}

.visualization-ideas-row h2 {
    width: 470px;
    flex-shrink: 0;
    font-size: 50px;
    font-style: normal;
    font-weight: 500;
    line-height: 110%; /* 55px */
    background: linear-gradient(93deg, #FFF 2.06%, #999 72.53%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.visualization-ideas-row p {
    width: 690px;
    flex-shrink: 0;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%; /* 26px */
    background: linear-gradient(200deg, #FFF 13.4%, #999 83.18%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.visualization-ideas-list {
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    align-self: stretch;
    flex-wrap: wrap;
    padding: 60px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.24);
    border-bottom: 1px solid rgba(255, 255, 255, 0.24);
}

.visualization-ideas-list-item {
    display: flex;
    width: 291px;
    flex-direction: column;
    align-items: center;
    gap: 14px;
}

.visualization-ideas-list-item strong {
    color: #FFF;
    font-size: 100px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 100px */
}

.visualization-ideas-list-item p {
    align-self: stretch;
    color: #858585;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%; /* 21.6px */
}

.visualization-ideas-list-item:nth-child(2) p {
    width: 241px;
    align-self: center;
}

.visualization-panel-block {
    padding: 120px 30px 207px;
}

.visualization-panel-block-content {
    align-items: center;
    gap: 122px;
}

.visualization-panel-block .title-block {
    width: 700px;
}

.visualization-panel-row {
    display: flex;
    align-self: stretch;
    align-items: center;
    justify-content: flex-end;
    position: relative;
}

.visualization-panel-row div {
    display: flex;
    padding: 116px 89px 115px 90px;
    justify-content: center;
    align-items: center;
    border: 1px solid #5B5B5B;
}

.visualization-panel-row p {
    width: 632px;
    flex-shrink: 0;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%; /* 26px */
    background: linear-gradient(200deg, #FFF 13.4%, #999 83.18%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.visualization-panel-row i {
    z-index: 1;
    width: 720px;
    height: 582px;
    flex-shrink: 0;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background-image: url("image/visualization/visualization-panel-row-image.webp");
}

@media (min-width: 990px) and (max-width: 1439px) {
    .visualization-promo-block {
        padding: 40px 0 0;
    }

    .visualization-promo-title {
        width: 920px;
    }

    .visualization-promo-title-container {
        gap: 43px;
    }

    .visualization-promo-text {
        font-size: 16px;
    }

    .visualization-promo-btn-group a {
        height: 52px;
        padding: 26px 30px;
    }

    .visualization-about-block {
        padding: 100px 40px 0;
    }

    .visualization-about-block .title-block {
        width: 700px;
    }

    .visualization-about-content i {
        height: 607px;
    }

    .visualization-offer-block {
        padding: 100px 40px 0;
    }

    .visualization-offer-list-item-title {
        font-size: 22px;
    }

    .visualization-offer-list-item-text {
        font-size: 16px;
    }

    .visualization-offer-list-item:nth-child(3) .visualization-offer-list-item-text-container {
        width: 100%;
    }

    .visualization-offer-swiper-container {
        margin-top: -20px;
    }

    .visualization-offer-swiper-img-container {
        aspect-ratio: 910/607;
        cursor: pointer;
    }

    .lf-swiper-button {
        display: none;
    }

    .lf-swiper-pagination {
        bottom: 20px !important;
        height: 16px;
    }

    .lf-swiper-pagination .swiper-pagination-bullet {
        width: 16px;
        height: 16px;
    }

    .visualization-offer-list {
        margin-top: -20px;
    }

    a.visualization-offer-list-item {
        height: 233px !important;
    }

    a.visualization-offer-list-item p {
        font-size: 22px;
    }

    .visualization-video-block {
        padding: 100px 40px 0;
    }

    .visualization-video-block .title-block {
        width: 910px;
    }

    .visualization-video-block-content {
        gap: 60px;
    }

    .visualization-video-row i {
        width: 320px;
        height: 135px;
        flex-shrink: 0;
    }

    .visualization-video-row p {
        width: auto;
        flex: 1 0 0;
        font-size: 16px;
    }

    .visualization-video-row {
        gap: 40px;
    }

    .visualization-video-content {
        gap: 40px;
    }

    .visualization-video-list-item {
        height: auto;
        aspect-ratio: 445/233;
    }

    .visualization-video-list-item-text-container {
        bottom: 10px;
        height: auto;
    }

    .visualization-video-list-item-text-container p {
        width: 405px;
        font-size: 14px;
    }

    .visualization-swiper-block {
        padding: 100px 40px 0;
    }

    .visualization-swiper-img-container {
        cursor: pointer;
        aspect-ratio: 910/607;
    }

    .visualization-render-block {
        padding: 100px 40px 0;
    }

    .visualization-render-block .title-block {
        width: 910px;
    }

    .visualization-render-list i {
        height: 605px;
        width: calc((100% - 10px) / 2);
    }

    .visualization-render-list {
        gap: 10px;
    }

    .visualization-ideas-block {
        padding: 100px 20px 0;
    }

    .visualization-ideas-row {
        flex-direction: column;
        align-items: center;
        gap: 40px;
    }

    .visualization-ideas-row h2 {
        font-size: 50px;
        text-align: center;
        width: 732px;
    }

    .visualization-ideas-row p {
        width: 768px;
        font-size: 18px;
        text-align: center;
    }

    .visualization-ideas-list {
        padding: 32px 0;
    }

    .visualization-ideas-list-item strong {
        font-size: 80px;
    }

    .visualization-ideas-list-item p {
        font-size: 16px;
    }

    .visualization-ideas-list-item {
        width: 200px;
    }

    .visualization-ideas-list-item:nth-child(2) p {
        width: 100%;
    }

    .visualization-panel-block {
        padding: 100px 40px;
    }

    .visualization-panel-block-content {
        gap: 60px;
    }

    .visualization-panel-row div {
        padding: 80px 30px;
    }

    .visualization-panel-row p {
        width: 580px;
        font-size: 18px;
    }

    .visualization-panel-row i {
        width: 520px;
        height: 420px;
        flex-shrink: 0;
        left: -126px;
    }
}

@media (max-width: 990px) {
    .visualization-promo-block {
        padding: 24px 0 0;
    }

    .visualization-promo-title {
        width: 345px;
        font-size: 40px;
    }

    .visualization-promo-text {
        font-size: 14px;
        line-height: 120%;
        width: 345px;
        text-align: left;
    }

    .visualization-promo-content {
        gap: 40px;
    }

    .visualization-promo-btn-group {
        flex-direction: column;
        gap: 20px;
        width: 345px;
        align-items: stretch;
    }

    .visualization-promo-btn-group a {
        height: 52px;
    }

    .visualization-promo-image {
        height: 433px;
    }

    .visualization-promo {
        position: relative;
        width: 100%;
        height: 433px;
        overflow: hidden;
    }

    .visualization-promo-block-content {
        gap: 30px;
    }

    .visualization-about-block {
        padding: 80px 20px 0;
    }

    .visualization-about-block-content {
        gap: 40px;
    }

    .visualization-about-block .title-block {
        width: 345px;
    }

    .visualization-about-content i {
        height: auto;
        aspect-ratio: 345 / 219;
    }

    .visualization-about-content p {
        font-size: 18px;
        text-align: unset;
    }

    .visualization-offer-block {
        padding: 100px 20px 0;
    }

    .visualization-offer-block-content {
        gap: 40px;
    }

    .visualization-offer-block-content .title-block {
        width: 345px;
    }

    .visualization-offer-list-item {
        width: 100%;
        gap: 20px;
        height: 330px;
    }

    .visualization-offer-list-item-title {
        font-size: 22px;
    }

    .visualization-offer-list-item-text {
        font-size: 16px;
    }

    .visualization-offer-list-item:nth-child(3) .visualization-offer-list-item-text-container {
        width: 100%;
    }

    .lf-swiper-button {
        display: none;
    }

    .visualization-offer-swiper-img-container {
        aspect-ratio: 345 / 219;
    }

    .visualization-offer-swiper {
        padding-bottom: 34px;
    }

    .lf-swiper-pagination {
        bottom: 0 !important;
    }

    a.visualization-offer-list-item {
        height: 200px !important;
    }

    a.visualization-offer-list-item i {
        margin-top: -10px;
        margin-right: -10px;
    }

    a.visualization-offer-list-item p {
        font-size: 22px;
    }

    .panorama-process-content-container {
        height: 883px;
    }

    .visualization-video-block {
        padding: 100px 20px 0;
    }

    .visualization-video-block .title-block {
        width: 345px;
    }

    .visualization-video-row {
        flex-direction: column;
        align-items: stretch;
        gap: 20px;
    }

    .visualization-video-row i {
        width: 100%;
        height: auto;
        aspect-ratio: 345 / 145;
    }

    .visualization-video-row p {
        width: 100%;
        font-size: 16px;
    }

    .visualization-video-content {
        gap: 40px;
    }

    .visualization-video-list-item {
        width: 100%;
        aspect-ratio: 345 / 233;
        height: auto;
    }

    .visualization-video-list-item-text-container {
        bottom: 10px;
        height: auto;
        padding: 10px 20px;
    }

    .visualization-video-list-item-text-container p {
        width: 305px;
        font-size: 12px;
    }

    .visualization-swiper-block {
        padding: 80px 20px 0;
    }

    .visualization-swiper-block-content {
        gap: 40px;
    }

    .visualization-swiper {
        padding-bottom: 34px;
    }

    .visualization-swiper-img-container {
        aspect-ratio: 345 / 219;
    }

    .visualization-render-block {
        padding: 80px 20px 0;
    }

    .visualization-render-block-content {
        gap: 40px;
    }

    .visualization-render-block .title-block {
        width: 345px;
    }

    .visualization-render-list {
        flex-direction: column;
        gap: 10px;
    }

    .visualization-render-list i {
        width: 100%;
        height: auto;
        aspect-ratio: 345 / 298;
    }

    .visualization-ideas-block {
        padding: 80px 20px 0;
    }

    .visualization-ideas-row {
        flex-direction: column;
        align-items: center;
        gap: 20px;
        width: 345px;
        align-self: center;
    }

    .visualization-ideas-row h2 {
        width: 100%;
        font-size: 26px;
        text-align: center;
    }

    .visualization-ideas-row p {
        width: 100%;
        font-size: 18px;
        text-align: center;
    }

    .visualization-ideas-block-content {
        gap: 40px;
    }

    .visualization-ideas-list {
        padding: 50px 0;
    }

    .visualization-ideas-list {
        flex-direction: column;
        gap: 30px;
    }

    .visualization-ideas-list-item strong {
        font-size: 80px;
    }

    .visualization-ideas-list-item p {
        font-size: 16px;
    }

    .visualization-ideas-list-item {
        width: 249px !important;
    }

    .visualization-ideas-list-item:nth-child(2) p {
        width: 227px;
    }

    .visualization-panel-block {
        padding: 80px 20px;
        overflow: hidden;
    }

    .visualization-panel-block .title-block {
        width: 345px;
    }

    .visualization-panel-block-content {
        gap: 420px;
    }

    .visualization-panel-row i {
        left: 50%;
        top: -420px;
        transform: translateX(-50%);
        width: 520px;
        height: 420px;
    }

    .visualization-panel-row div {
        width: 345px;
        padding: 30px 20px;
        height: auto;
    }

    .visualization-panel-row p {
        width: 100%;
        font-size: 18px;
    }

    .visualization-panel-row {
        justify-content: center;
    }
}
